diff --git a/src/libsrc/apple/jit.pla b/src/libsrc/apple/jit.pla
index 356f791..263d645 100644
--- a/src/libsrc/apple/jit.pla
+++ b/src/libsrc/apple/jit.pla
@@ -18,6 +18,15 @@ end
 const jitcomp     = $03E2
 const jitcodeptr  = $03E4
 const codemax     = $BEE0
+const estkh8      = $C000
+const estkh       = $00C0
+const estkl8      = $D000
+const estkl       = $00D0
+const ifpl8       = $E000
+const ifph8       = $E100
+const jmptmp      = $00E6
+const tmpl8       = $E700
+const tmph8       = $E800
 //
 // Bytecode interpreter entrypoints
 //
diff --git a/src/libsrc/apple/jit16.pla b/src/libsrc/apple/jit16.pla
index 7b0c39c..837abfb 100644
--- a/src/libsrc/apple/jit16.pla
+++ b/src/libsrc/apple/jit16.pla
@@ -18,6 +18,15 @@ end
 const jitcomp     = $03E2
 const jitcodeptr  = $03E4
 const codemax     = $BEE0
+const estkh8      = $C000
+const estkh       = $00C0
+const estkl8      = $D000
+const estkl       = $00D0
+const ifpl8       = $E000
+const ifph8       = $E100
+const jmptmp      = $00E6
+const tmpl8       = $E700
+const tmph8       = $E800
 //
 // Bytecode interpreter entrypoints
 //
diff --git a/src/libsrc/jitcore.pla b/src/libsrc/jitcore.pla
index 2b0aa13..be2bcea 100644
--- a/src/libsrc/jitcore.pla
+++ b/src/libsrc/jitcore.pla
@@ -183,7 +183,7 @@ def compiler(defptr)#0
             //
             codeptr, VX = resolveX(codeptr, VX)
             if A_IS_TOSL & TOS_DIRTY
-                *codeptr = $D095//+(VX<<8) // STA ESTKL,X
+                *codeptr = estkl8+$95//+(VX<<8) // STA ESTKL,X
                 codeptr  = codeptr + 2
             fin
             VY        = UNKNOWN
@@ -226,7 +226,7 @@ def compiler(defptr)#0
         if opcode < $20 // CONSTANT NYBBLE
             //puts("CN $"); putb(opcode/2)
             if A_IS_TOSL & TOS_DIRTY
-                *codeptr = $D095+(VX<<8)            // STA ESTKL,X
+                *codeptr = estkl8+$95+(VX<<8)       // STA ESTKL,X
                 codeptr  = codeptr + 2
             fin
             VX--                                    // DEX
@@ -235,7 +235,7 @@ def compiler(defptr)#0
                 codeptr  = codeptr + 2
                 VY       = 0
             fin
-            *codeptr  = $C094+(VX<<8)               // STY ESTKH,X
+            *codeptr  = estkh8+$94+(VX<<8)          // STY ESTKH,X
             codeptr   = codeptr + 2
             if opcode == 0
                 ^codeptr = $98; codeptr++           // TYA -> LDA #$00
@@ -249,38 +249,38 @@ def compiler(defptr)#0
                 is $20 // MINUS ONE
                     //puts("MINUS_ONE")
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                         // DEX
-                    codeptr=>0 = $FFA9           // LDA #$FF
-                    codeptr=>2 = $C095+(VX<<8)   // STA ESTKH,X
+                    VX--                              // DEX
+                    codeptr=>0 = $FFA9                // LDA #$FF
+                    codeptr=>2 = estkh8+$95+(VX<<8)   // STA ESTKH,X
                     codeptr    = codeptr + 4
-                    A_IS_TOSL  = TOS_DIRTY       // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY            // STA ESTKL,X
                     break
                 is $22 // BREQ
                 is $24 // BRNE
                     i++
                     dest = i + *(bytecode+i)
                     i++
-                    codeptr, VX = resolveX(codeptr, VX + 2) // INX; INX
+                    codeptr, VX = resolveX(codeptr, VX + 2)   // INX; INX
                     if not A_IS_TOSL
-                        *codeptr = $D0B5-$0200//+(VX<<8)    // LDA ESTKL-2,X
+                        *codeptr = estkl8+$B5-$0200//+(VX<<8) // LDA ESTKL-2,X
                         codeptr  = codeptr + 2
                     fin
                     if opcode == $22
                         //puts("BREQ "); puti(dest)
-                        codeptr=>2  = $09D0                 // BNE +9
-                        codeptr=>8  = $03D0                 // BNE +3
+                        codeptr=>2  = $09D0                   // BNE +9
+                        codeptr=>8  = $03D0                   // BNE +3
                     else
                         //puts("BRNE "); puti(dest)
-                        codeptr=>2  = $06D0                 // BNE +6
-                        codeptr=>8  = $03F0                 // BEQ +3
+                        codeptr=>2  = $06D0                   // BNE +6
+                        codeptr=>8  = $03F0                   // BEQ +3
                     fin
-                    codeptr=>0  = $D0D5-$0100//+(VX<<8)     // CMP ESTKL-1,X
-                    codeptr=>4  = $C0B5-$0200//+(VX<<8)     // LDA ESTKH-2,X
-                    codeptr=>6  = $C0D5-$0100//+(VX<<8)     // CMP ESTKH-1,X
-                    codeptr->10 = $4C                       // JMP abs
+                    codeptr=>0  = estkl8+$D5-$0100//+(VX<<8)  // CMP ESTKL-1,X
+                    codeptr=>4  = estkh8+$B5-$0200//+(VX<<8)  // LDA ESTKH-2,X
+                    codeptr=>6  = estkh8+$D5-$0100//+(VX<<8)  // CMP ESTKH-1,X
+                    codeptr->10 = $4C                         // JMP abs
                     codeptr=>11 = addrxlate=>[dest]
                     if not (codeptr->12 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 11 - *jitcodeptr
@@ -294,44 +294,43 @@ def compiler(defptr)#0
                     i    = i + 2
                     //puts("LA/CW $"); puth(dest)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)  // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)  // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                          // DEX
-                    codeptr=>0 = $A9+(dest&$FF00) // LDA #<VAL
-                    codeptr=>2 = $C095+(VX<<8)    // STA ESTKH,X
-                    codeptr=>4 = $A9+(dest<<8)    // LDA #>VAL
+                    VX--                               // DEX
+                    codeptr=>0 = $A9+(dest&$FF00)      // LDA #<VAL
+                    codeptr=>2 = estkh8+$95+(VX<<8)    // STA ESTKH,X
+                    codeptr=>4 = $A9+(dest<<8)         // LDA #>VAL
                     codeptr    = codeptr + 6
-                    A_IS_TOSL = TOS_DIRTY         // STA ESTKL,X
+                    A_IS_TOSL = TOS_DIRTY              // STA ESTKL,X
                     break
                 is $28 // LLA
                     i++
                     j = ^(bytecode+i)
                     //puts("LLA "); puti(^(bytecode+i))
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)  // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)  // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                          // DEX
+                    VX--                               // DEX
                     if VY == j
-                        ^codeptr = $98; codeptr++ // TYA -> LDA #imm
-
+                        ^codeptr = $98; codeptr++      // TYA -> LDA #imm
                     else
-                        *codeptr = $A9+(j<<8)     // LDA #imm
+                        *codeptr = $A9+(j<<8)          // LDA #imm
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $18              // CLC
-                    codeptr=>1 = $E065            // ADC IFPL
-                    codeptr=>3 = $D095+(VX<<8)    // STA ESTKL,X
+                    codeptr->0 = $18                   // CLC
+                    codeptr=>1 = ifpl8+$65             // ADC IFPL
+                    codeptr=>3 = estkl8+$95+(VX<<8)    // STA ESTKL,X
                     if VY == 0
-                        codeptr->5 = $98          // TYA -> LDA #00
+                        codeptr->5 = $98               // TYA -> LDA #00
                         codeptr    = codeptr + 6
                     else
-                        codeptr=>5 = $00A9        // LDA #$00
+                        codeptr=>5 = $00A9             // LDA #$00
                         codeptr    = codeptr + 7
                     fin
-                    codeptr=>0 = $E165            // ADC IFPH
-                    codeptr=>2 = $C095+(VX<<8)    // STA ESTKH,X
+                    codeptr=>0 = ifph8+$65             // ADC IFPH
+                    codeptr=>2 = estkh8+$95+(VX<<8)    // STA ESTKH,X
                     codeptr    = codeptr + 4
                     A_IS_TOSL  = FALSE
                     break
@@ -339,28 +338,28 @@ def compiler(defptr)#0
                 is $5E // CFFB
                     i++
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)        // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)        // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                                // DEX
+                    VX--                                     // DEX
                     if opcode == $2A
                         //puts("CB $"); putb(^(bytecode+i))
                         if VY <> 0
-                            *codeptr = $00A0            // LDY #$00
+                            *codeptr = $00A0                 // LDY #$00
                             codeptr  = codeptr + 2
                             VY       = 0
                         fin
-                        codeptr=>0 = $C094+(VX<<8)      // STY ESTKH,X
+                        codeptr=>0 = estkh8+$94+(VX<<8)      // STY ESTKH,X
                         codeptr    = codeptr + 2
                     else
                         //puts("CFFB $FF"); putb(^(bytecode+i))
-                        codeptr=>0 = $FFA9              // LDA #$FF
-                        codeptr=>2 = $C095+(VX<<8)      // STA ESTKH,X
+                        codeptr=>0 = $FFA9                   // LDA #$FF
+                        codeptr=>2 = estkh8+$95+(VX<<8)      // STA ESTKH,X
                         codeptr    = codeptr + 4
                     fin
-                    *codeptr  = $A9+(^(bytecode+i)<<8)  // LDA #imm
+                    *codeptr  = $A9+(^(bytecode+i)<<8)       // LDA #imm
                     codeptr   = codeptr + 2
-                    A_IS_TOSL = TOS_DIRTY               // STA ESTKL,X
+                    A_IS_TOSL = TOS_DIRTY                    // STA ESTKL,X
                     break
                 is $2E // CS
                     i++
@@ -369,21 +368,21 @@ def compiler(defptr)#0
                     //puts("CS "); //puts(bytecode+i); //puts("-->"); puti(dest)
                     if isule(dest, codemax)
                         if A_IS_TOSL & TOS_DIRTY
-                            *codeptr = $D095+(VX<<8)         // STA ESTKL,X
+                            *codeptr = estkl8+$95+(VX<<8)         // STA ESTKL,X
                             codeptr  = codeptr + 2
                         fin
-                        VX--                                 // DEX
-                        codeptr=>0 = $A9+((codeptr+9)&$FF00) // LDA #>STRING
-                        codeptr=>2 = $C095+(VX<<8)           // STA ESTKH,X
-                        codeptr=>4 = $A9+((codeptr+9)<<8)    // LDA #<STRING
-                        codeptr->6 = $4C                     // JMP abs
+                        VX--                                      // DEX
+                        codeptr=>0 = $A9+((codeptr+9)&$FF00)      // LDA #>STRING
+                        codeptr=>2 = estkh8+$95+(VX<<8)           // STA ESTKH,X
+                        codeptr=>4 = $A9+((codeptr+9)<<8)         // LDA #<STRING
+                        codeptr->6 = $4C                          // JMP abs
                         dest       = codeptr + 10 + j
                         codeptr=>7 = dest
                         strcpy(codeptr + 9, bytecode + i)
                         i = i + j
                     fin
                     codeptr   = dest
-                    A_IS_TOSL = TOS_DIRTY                    // STA ESTKL,X
+                    A_IS_TOSL = TOS_DIRTY                         // STA ESTKL,X
                     break
                 is $32 // DROP2
                     //puts("DROP2")
@@ -396,18 +395,18 @@ def compiler(defptr)#0
                 is $34 // DUP
                     //puts("DUP")
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8) // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8) // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     elsif A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $C0B4+(VX<<8)   // LDY ESTKH,X
-                    VX--                         // DEX
-                    codeptr=>2 = $C094+(VX<<8)   // STY ESTKH,X
+                    codeptr=>0 = estkh8+$B4+(VX<<8)   // LDY ESTKH,X
+                    VX--                              // DEX
+                    codeptr=>2 = estkh8+$94+(VX<<8)   // STY ESTKH,X
                     codeptr    = codeptr + 4
                     VY         = UNKNOWN
-                    A_IS_TOSL  = TOS_DIRTY       // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY            // STA ESTKL,X
                     break
                 //is $36
                     //puts("DIVMOD")
@@ -425,15 +424,15 @@ def compiler(defptr)#0
                         j = 1
                     fin
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8) // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8) // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $18             // CLC
-                    codeptr=>1 = $69+(j<<8)      // ADC #imm
-                    codeptr=>3 = $0290           // BCC +2
-                    codeptr=>5 = $C0F6+(VX<<8)   // INC ESTKH,X
+                    codeptr->0 = $18                  // CLC
+                    codeptr=>1 = $69+(j<<8)           // ADC #imm
+                    codeptr=>3 = $0290                // BCC +2
+                    codeptr=>5 = estkh8+$F6+(VX<<8)   // INC ESTKH,X
                     codeptr    = codeptr + 7
-                    A_IS_TOSL  = TOS_DIRTY       // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY            // STA ESTKL,X
                     break
                 is $3A // SUBI
                     i++
@@ -445,151 +444,151 @@ def compiler(defptr)#0
                         j = 1
                     fin
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8) // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8) // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $38             // SEC
-                    codeptr=>1 = $E9+(j<<8)      // SBC #imm
-                    codeptr=>3 = $02B0           // BCS +2
-                    codeptr=>5 = $C0D6+(VX<<8)   // DEC ESTKH,X
+                    codeptr->0 = $38                  // SEC
+                    codeptr=>1 = $E9+(j<<8)           // SBC #imm
+                    codeptr=>3 = $02B0                // BCS +2
+                    codeptr=>5 = estkh8+$D6+(VX<<8)   // DEC ESTKH,X
                     codeptr    = codeptr + 7
-                    A_IS_TOSL  = TOS_DIRTY       // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY            // STA ESTKL,X
                     break
                 is $3C // ANDI
                     i++
                     //puts("ANDI $"); putb(^(bytecode+i))
                     if VY <> 0
-                        *codeptr = $00A0                // LDY #$00
+                        *codeptr = $00A0                     // LDY #$00
                         codeptr  = codeptr + 2
                         VY       = 0
                     fin
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)        // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)        // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $29+(^(bytecode+i)<<8) // AND #imm
-                    codeptr=>2 = $C094+(VX<<8)          // STY ESTKH,X
+                    codeptr=>0 = $29+(^(bytecode+i)<<8)      // AND #imm
+                    codeptr=>2 = estkh8+$94+(VX<<8)          // STY ESTKH,X
                     codeptr    = codeptr + 4
-                    A_IS_TOSL  = TOS_DIRTY              // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY                   // STA ESTKL,X
                     break
                 is $3E // ORI
                     i++
                     //puts("ORI $"); putb(^(bytecode+i))
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)       // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)       // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    *codeptr  = $09+(^(bytecode+i)<<8) // ORA #imm
+                    *codeptr  = $09+(^(bytecode+i)<<8)      // ORA #imm
                     codeptr   = codeptr + 2
-                    A_IS_TOSL = TOS_DIRTY              // STA ESTKL,X
+                    A_IS_TOSL = TOS_DIRTY                   // STA ESTKL,X
                     break
                 is $40 // ISEQ
                 is $42 // ISNE
                     if VY <> 0
-                        *codeptr = $00A0              // LDY #$00
+                        *codeptr = $00A0                   // LDY #$00
                         codeptr  = codeptr + 2
                     fin
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)      // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)      // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if opcode == $40
                         //puts("ISEQ")
-                        codeptr=>2  = $07D0           // BNE +7
-                        codeptr=>8  = $01D0           // BNE +1
+                        codeptr=>2  = $07D0                // BNE +7
+                        codeptr=>8  = $01D0                // BNE +1
                     else
                         //puts("ISNE")
-                        codeptr=>2  = $06D0           // BNE +6
-                        codeptr=>8  = $01F0           // BEQ +1
+                        codeptr=>2  = $06D0                // BNE +6
+                        codeptr=>8  = $01F0                // BEQ +1
                     fin
-                    codeptr=>0  = $D0D5+$0100+(VX<<8) // CMP ESTKL+1,X
-                    codeptr=>4  = $C0B5+(VX<<8)       // LDA ESTKH,X
-                    codeptr=>6  = $C0D5+$0100+(VX<<8) // CMP ESTKH+1
-                    codeptr=>10 = $9888               // DEY; TYA
-                    codeptr=>12 = $C094+$0100+(VX<<8) // STY ESTKH+1,X
+                    codeptr=>0  = estkl8+$D5+$0100+(VX<<8) // CMP ESTKL+1,X
+                    codeptr=>4  = estkh8+$B5+(VX<<8)       // LDA ESTKH,X
+                    codeptr=>6  = estkh8+$D5+$0100+(VX<<8) // CMP ESTKH+1
+                    codeptr=>10 = $9888                    // DEY; TYA
+                    codeptr=>12 = estkh8+$94+$0100+(VX<<8) // STY ESTKH+1,X
                     codeptr     = codeptr + 14
-                    VX++                              // INX
+                    VX++                                   // INX
                     VY          = UNKNOWN
-                    A_IS_TOSL   = TOS_DIRTY           // STA ESTKL,X
+                    A_IS_TOSL   = TOS_DIRTY                // STA ESTKL,X
                     break
                 is $44 // ISGT
                 is $4A // ISLE
                     if VY <> 0
-                        *codeptr = $00A0              // LDY #$00
+                        *codeptr = $00A0                   // LDY #$00
                         codeptr  = codeptr + 2
                     fin
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)      // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)      // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $D0D5+$0100+(VX<<8) // CMP ESTKL+1,X
-                    codeptr=>2  = $C0B5+(VX<<8)       // LDA ESTKH,X
-                    codeptr=>4  = $C0F5+$0100+(VX<<8) // SBC ESTKH+1
-                    codeptr=>6  = $0250               // BVC +2
-                    codeptr=>8  = $8049               // EOR #$80
+                    codeptr=>0  = estkl8+$D5+$0100+(VX<<8) // CMP ESTKL+1,X
+                    codeptr=>2  = estkh8+$B5+(VX<<8)       // LDA ESTKH,X
+                    codeptr=>4  = estkh8+$F5+$0100+(VX<<8) // SBC ESTKH+1
+                    codeptr=>6  = $0250                    // BVC +2
+                    codeptr=>8  = $8049                    // EOR #$80
                     if opcode == $44
                         //puts("ISGT")
-                        codeptr=>10 = $0110           // BPL +1
+                        codeptr=>10 = $0110                // BPL +1
                     else
                         //puts("ISLE")
-                        codeptr=>10 = $0130           // BMI +1
+                        codeptr=>10 = $0130                // BMI +1
                     fin
-                    codeptr=>12 = $9888               // DEY TYA
-                    codeptr=>14 = $C094+$0100+(VX<<8) // STY ESTKH+1,X
+                    codeptr=>12 = $9888                    // DEY TYA
+                    codeptr=>14 = estkh8+$94+$0100+(VX<<8) // STY ESTKH+1,X
                     codeptr     = codeptr + 16
-                    VX++                              // INX
+                    VX++                                   // INX
                     VY          = UNKNOWN
-                    A_IS_TOSL   = TOS_DIRTY           // STA ESTKL,X
+                    A_IS_TOSL   = TOS_DIRTY                // STA ESTKL,X
                     break
                 is $46 // ISLT
                 is $48 // ISGE
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)      // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)      // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> 0
-                        *codeptr = $00A0              // LDY #$00
+                        *codeptr = $00A0                   // LDY #$00
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $D0B5+$0100+(VX<<8) // LDA ESTKL+1,X
-                    codeptr=>2  = $D0D5+(VX<<8)       // CMP ESTKL,X
-                    codeptr=>4  = $C0B5+$0100+(VX<<8) // LDA ESTKH+1,X
-                    codeptr=>6  = $C0F5+(VX<<8)       // SBC ESTKH
-                    codeptr=>8  = $0250               // BVC +2
-                    codeptr=>10 = $8049               // EOR #$80
+                    codeptr=>0  = estkl8+$B5+$0100+(VX<<8) // LDA ESTKL+1,X
+                    codeptr=>2  = estkl8+$D5+(VX<<8)       // CMP ESTKL,X
+                    codeptr=>4  = estkh8+$B5+$0100+(VX<<8) // LDA ESTKH+1,X
+                    codeptr=>6  = estkh8+$F5+(VX<<8)       // SBC ESTKH
+                    codeptr=>8  = $0250                    // BVC +2
+                    codeptr=>10 = $8049                    // EOR #$80
                     if opcode == $46
                         //puts("ISLT")
-                        codeptr=>12 = $0110           // BPL +1
+                        codeptr=>12 = $0110                // BPL +1
                     else
                         //puts("ISGE")
-                        codeptr=>12 = $0130           // BMI +1
+                        codeptr=>12 = $0130                // BMI +1
                     fin
-                    codeptr=>14 = $9888               // DEY; TYA
-                    codeptr=>16 = $C094+$0100+(VX<<8) // STY ESTKH+1,X
+                    codeptr=>14 = $9888                    // DEY; TYA
+                    codeptr=>16 = estkh8+$94+$0100+(VX<<8) // STY ESTKH+1,X
                     codeptr     = codeptr + 18
-                    VX++                              // INX
+                    VX++                                   // INX
                     VY          = UNKNOWN
-                    A_IS_TOSL   = TOS_DIRTY           // STA ESTKL,X
+                    A_IS_TOSL   = TOS_DIRTY                // STA ESTKL,X
                     break
                 is $4C // BRFLS
                 is $4E // BRTRU
                     i++
                     dest = i + *(bytecode+i)
                     i++
-                    codeptr, VX = resolveX(codeptr, VX + 1) // INX
+                    codeptr, VX = resolveX(codeptr, VX + 1)      // INX
                     if not A_IS_TOSL
-                        *codeptr = $D0B5-$0100//+(VX<<8)    // LDA ESTKL-1,X
+                        *codeptr = estkl8+$B5-$0100//+(VX<<8)    // LDA ESTKL-1,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $C015-$0100//+(VX<<8)      // ORA ESTKH-1,X
+                    codeptr=>0 = estkh8+$15-$0100//+(VX<<8)      // ORA ESTKH-1,X
                     if opcode == $4C
                         //puts("BRFLS "); puti(dest)
-                        codeptr=>2 = $03D0                  // BNE +3
+                        codeptr=>2 = $03D0                       // BNE +3
                     else
                         //puts("BRTRU "); puti(dest)
-                        codeptr=>2 = $03F0                  // BEQ +3
+                        codeptr=>2 = $03F0                       // BEQ +3
                     fin
-                    codeptr->4 = $4C                        // JMP abs
+                    codeptr->4 = $4C                             // JMP abs
                     codeptr=>5 = addrxlate=>[dest]
                     if not (codeptr->6 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 5 - *jitcodeptr
@@ -604,10 +603,10 @@ def compiler(defptr)#0
                     //puts("BRNCH "); puti(dest)
                     codeptr, VX = resolveX(codeptr, VX)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $4C               // JMP abs
+                    codeptr->0 = $4C                    // JMP abs
                     codeptr=>1 = addrxlate=>[dest]
                     if not (codeptr->2 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 1 - *jitcodeptr
@@ -626,23 +625,23 @@ def compiler(defptr)#0
                         ^(bytecode+case) = $FE // Flag as NOP
                         case++
                         if not A_IS_TOSL
-                            *codeptr = $D0B5+(VX<<8)                // LDA ESTKL,X
+                            *codeptr = estkl8+$B5+(VX<<8)                // LDA ESTKL,X
                             codeptr  = codeptr + 2
                         fin
-                        codeptr=>0 = $C0B4+(VX<<8)                  // LDY ESTKH,X
-                        codeptr, VX = resolveX(codeptr + 2, VX + 1) // INX
+                        codeptr=>0 = estkh8+$B4+(VX<<8)                  // LDY ESTKH,X
+                        codeptr, VX = resolveX(codeptr + 2, VX + 1)      // INX
                         repeat
                             dest = *(bytecode+case)
                             //puts("    $"); puth(dest)
-                            codeptr=>0 = $C9+(dest<<8)              // CMP #imm
-                            codeptr=>2 = $07D0                      // BNE +7
-                            codeptr=>4 = $C0+(dest&$FF00)           // CPY #imm
-                            codeptr=>6 = $03D0                      // BNE +3
+                            codeptr=>0 = $C9+(dest<<8)                   // CMP #imm
+                            codeptr=>2 = $07D0                           // BNE +7
+                            codeptr=>4 = $C0+(dest&$FF00)                // CPY #imm
+                            codeptr=>6 = $03D0                           // BNE +3
                             *(bytecode+case) = $FEFE
                             case = case + 2
                             dest = case + *(bytecode+case)
                             //puts("-->"); puti(dest); putln
-                            codeptr->8 = $4C                        // JMP abs
+                            codeptr->8 = $4C                             // JMP abs
                             codeptr=>9 = addrxlate=>[dest]
                             if not (codeptr->10 & $80) // Unresolved address list
                                 addrxlate=>[dest] = codeptr + 9 - *jitcodeptr
@@ -652,7 +651,7 @@ def compiler(defptr)#0
                             case = case + 2
                             j--
                         until not j
-                        codeptr->0 = $4C                            // JMP abs
+                        codeptr->0 = $4C                                 // JMP abs
                         codeptr=>1 = addrxlate=>[case]
                         if not (codeptr->2 & $80) // Unresolved address list
                             addrxlate=>[case] = codeptr + 1 - *jitcodeptr
@@ -671,10 +670,10 @@ def compiler(defptr)#0
                     //
                     codeptr, VX = resolveX(codeptr, VX)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $20               // JSR abs
+                    codeptr->0 = $20                    // JSR abs
                     codeptr=>1 = *(bytecode+i+1)
                     codeptr    = codeptr + 3
                     VY         = UNKNOWN
@@ -687,18 +686,18 @@ def compiler(defptr)#0
                     // Pull address off stack
                     //
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)                // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)                // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $E785                          // STA $E7:TMPL
-                    codeptr=>2 = $C0B5+(VX<<8)                  // LDA ESTKH,X
-                    codeptr=>4 = $E885                          // STA $E8:TMPH
-                    codeptr, VX = resolveX(codeptr + 6, VX + 1) // INX
+                    codeptr=>0 = tmpl8+$85                           // STA $E7:TMPL
+                    codeptr=>2 = estkh8+$B5+(VX<<8)                  // LDA ESTKH,X
+                    codeptr=>4 = tmph8+$85                           // STA $E8:TMPH
+                    codeptr, VX = resolveX(codeptr + 6, VX + 1)      // INX
                     //
                     // Call through TMP
                     //
-                    codeptr->0 = $20                            // JSR abs
-                    codeptr=>1 = $00E6                          // $E6:JMPTMP
+                    codeptr->0 = $20                             // JSR abs
+                    codeptr=>1 = jmptmp                          // $E6:JMPTMP
                     codeptr    = codeptr + 3
                     VY         = UNKNOWN
                     A_IS_TOSL  = FALSE
@@ -711,12 +710,12 @@ def compiler(defptr)#0
                     //
                     codeptr, VX = resolveX(codeptr, VX)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8)        // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8)        // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $20                      // JSR abs
-                    codeptr=>1 = directentry              // INTERP
-                    codeptr=>3 = $5A + (^(bytecode+i)<<8) // LEAVE CODE AND OPERAND
+                    codeptr->0 = $20                           // JSR abs
+                    codeptr=>1 = directentry                   // INTERP
+                    codeptr=>3 = $5A + (^(bytecode+i)<<8)      // LEAVE CODE AND OPERAND
                     codeptr    = codeptr + 5
                     A_IS_TOSL  = FALSE
                     break
@@ -724,43 +723,43 @@ def compiler(defptr)#0
                     //puts("RET")
                     codeptr, VX = resolveX(codeptr, VX)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    ^codeptr  = $60; codeptr++     // RTS
+                    ^codeptr  = $60; codeptr++          // RTS
                     A_IS_TOSL = FALSE
                    break
                 is $60 // LB
                     //puts("LB")
                     if VY <> 0
-                        *codeptr = $00A0              // LDY #$00
+                        *codeptr = $00A0                  // LDY #$00
                         codeptr  = codeptr + 2
                         VY       = 0
                     fin
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)     // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)     // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $C095-$0100+(VX<<8) // STA ESTKH-1,X
-                    codeptr=>2 = $C0A1-$0100+(VX<<8) // LDA (ESTKH-1,X)
-                    codeptr=>4 = $C094+(VX<<8)       // STY ESTKH,X
+                    codeptr=>0 = estkh8+$95-$0100+(VX<<8) // STA ESTKH-1,X
+                    codeptr=>2 = estkh8+$A1-$0100+(VX<<8) // LDA (ESTKH-1,X)
+                    codeptr=>4 = estkh8+$94+(VX<<8)       // STY ESTKH,X
                     codeptr    = codeptr + 6
-                    A_IS_TOSL  = TOS_DIRTY           // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY                // STA ESTKL,X
                     break
                 is $62 // LW
                     //puts("LW")
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)      // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)      // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $C095-$0100+(VX<<8) // STA ESTKH-1,X
-                    codeptr=>2  = $C0A1-$0100+(VX<<8) // LDA (ESTKH-1,X)
-                    codeptr=>4  = $D095+(VX<<8)       // STA ESTKL,X
-                    codeptr=>6  = $C0F6-$0100+(VX<<8) // INC ESTKH-1,X
-                    codeptr=>8  = $02D0               // BNE +2
-                    codeptr=>10 = $C0F6+(VX<<8)       // INC ESTKH,X
-                    codeptr=>12 = $C0A1-$0100+(VX<<8) // LDA (ESTKH-1,X)
-                    codeptr=>14 = $C095+(VX<<8)       // STA ESTKH,X
+                    codeptr=>0  = estkh8+$95-$0100+(VX<<8) // STA ESTKH-1,X
+                    codeptr=>2  = estkh8+$A1-$0100+(VX<<8) // LDA (ESTKH-1,X)
+                    codeptr=>4  = estkl8+$95+(VX<<8)       // STA ESTKL,X
+                    codeptr=>6  = estkh8+$F6-$0100+(VX<<8) // INC ESTKH-1,X
+                    codeptr=>8  = $02D0                    // BNE +2
+                    codeptr=>10 = estkh8+$F6+(VX<<8)       // INC ESTKH,X
+                    codeptr=>12 = estkh8+$A1-$0100+(VX<<8) // LDA (ESTKH-1,X)
+                    codeptr=>14 = estkh8+$95+(VX<<8)       // STA ESTKH,X
                     codeptr     = codeptr + 16
                     A_IS_TOSL   = FALSE
                     break
@@ -769,100 +768,100 @@ def compiler(defptr)#0
                     j = ^(bytecode+i)
                     //puts("LLB "); puti(j)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)  // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)  // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                          // DEX
+                    VX--                               // DEX
                     if VY <> j
-                        *codeptr = $A0+(j<<8)     // LDY #imm
+                        *codeptr = $A0+(j<<8)          // LDY #imm
                         codeptr  = codeptr + 2
                     fin
-                    *codeptr = $E0B1              // LDA (IFP),Y
+                    *codeptr = ifpl8+$B1               // LDA (IFP),Y
                     codeptr  = codeptr + 2
                     if j <> 0
-                        *codeptr = $00A0          // LDY #$00
+                        *codeptr = $00A0               // LDY #$00
                         codeptr  = codeptr + 2
                     fin
-                    *codeptr  = $C094+(VX<<8)     // STY ESTKH,X
+                    *codeptr  = estkh8+$94+(VX<<8)     // STY ESTKH,X
                     codeptr   = codeptr + 2
                     VY        = 0
-                    A_IS_TOSL = TOS_DIRTY         // STA ESTKL,X
+                    A_IS_TOSL = TOS_DIRTY              // STA ESTKL,X
                     break
                 is $66 // LLW
                     i++
                     j = ^(bytecode+i)
                     //puts("LLW "); puti(j)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)  // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)  // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                          // DEX
+                    VX--                               // DEX
                     if VY <> j
-                        *codeptr = $A0+((j+1)<<8) // LDY #imm
+                        *codeptr = $A0+((j+1)<<8)      // LDY #imm
                         codeptr  = codeptr + 2
                         VY       = j
                     else
-                        ^codeptr = $C8; codeptr++ // INY
+                        ^codeptr = $C8; codeptr++      // INY
                     fin
-                    codeptr=>0 = $E0B1            // LDA (IFP),Y
-                    codeptr=>2 = $C095+(VX<<8)    // STA ESTKH,X
-                    codeptr->4 = $88              // DEY
-                    codeptr=>5 = $E0B1            // LDA (IFP),Y
+                    codeptr=>0 = ifpl8+$B1             // LDA (IFP),Y
+                    codeptr=>2 = estkh8+$95+(VX<<8)    // STA ESTKH,X
+                    codeptr->4 = $88                   // DEY
+                    codeptr=>5 = ifpl8+$B1             // LDA (IFP),Y
                     codeptr    = codeptr + 7
-                    A_IS_TOSL  = TOS_DIRTY        // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY             // STA ESTKL,X
                     break
                 is $68 // LAB
                 is $6A // LAW
                     dest = *(bytecode+i+1)
                     i    = i + 2
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)   // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)   // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    VX--                           // DEX
+                    VX--                                // DEX
                     if opcode == $68
                         //puts("LAB $"); puth(dest)
                         if VY <> 0
-                            *codeptr = $00A0       // LDY #$00
+                            *codeptr = $00A0            // LDY #$00
                             codeptr  = codeptr + 2
                             VY       = 0
                         fin
-                        *codeptr = $C094+(VX<<8)   // STY ESTKH,X
+                        *codeptr = estkh8+$94+(VX<<8)   // STY ESTKH,X
                         codeptr  = codeptr + 2
                     else
                         //puts("LAW $"); puth(dest)
-                        codeptr->0 = $AD           // LDA abs+1
+                        codeptr->0 = $AD                // LDA abs+1
                         codeptr=>1 = dest+1
-                        codeptr=>3 = $C095+(VX<<8) // STA ESTKH,X
+                        codeptr=>3 = estkh8+$95+(VX<<8) // STA ESTKH,X
                         codeptr    = codeptr + 5
                     fin
-                    codeptr->0 = $AD               // LDA abs
+                    codeptr->0 = $AD                    // LDA abs
                     codeptr=>1 = dest
                     codeptr    = codeptr + 3
-                    A_IS_TOSL  = TOS_DIRTY         // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY              // STA ESTKL,X
                     break
                 is $6C // DLB
                     i++
                     j = ^(bytecode+i)
                     //puts("DLB "); puti(j)
                    if not A_IS_TOSL
-                        *codeptr  = $D0B5+(VX<<8) // LDA ESTKL,X
+                        *codeptr  = estkl8+$B5+(VX<<8) // LDA ESTKL,X
                         codeptr   = codeptr + 2
                         A_IS_TOSL = TOS_CLEAN
                     fin
                     if VY <> j
-                        *codeptr = $A0+(j<<8)     // LDY #imm
+                        *codeptr = $A0+(j<<8)          // LDY #imm
                         codeptr  = codeptr + 2
                         VY       = j
                     fin
-                    *codeptr = $E091              // STA (IFP),Y
+                    *codeptr = ifpl8+$91               // STA (IFP),Y
                     codeptr  = codeptr + 2
                     if VY <> 0
-                        *codeptr = $00A0          // LDY #$00
+                        *codeptr = $00A0               // LDY #$00
                         codeptr  = codeptr + 2
                         VY       = 0
                     fin
-                    *codeptr = $C094+(VX<<8)      // STY ESTKH,X
+                    *codeptr = estkh8+$94+(VX<<8)      // STY ESTKH,X
                     codeptr  = codeptr + 2
                  break
                 is $6E // DLW
@@ -870,46 +869,46 @@ def compiler(defptr)#0
                     j = ^(bytecode+i)
                     //puts("DLW "); puti(j)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)  // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)  // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> j
-                        *codeptr = $A0+((j+1)<<8) // LDY #imm
+                        *codeptr = $A0+((j+1)<<8)      // LDY #imm
                         codeptr  = codeptr + 2
                         VY       = j
                     else
-                        ^codeptr = $C8; codeptr++ // INY
+                        ^codeptr = $C8; codeptr++      // INY
                     fin
-                    codeptr=>0 = $C0B5+(VX<<8)    // LDA ESTKH,X
-                    codeptr=>2 = $E091            // STA (IFP),Y
-                    codeptr->4 = $88              // DEY
-                    codeptr=>5 = $D0B5+(VX<<8)    // LDA ESTKL,X
-                    codeptr=>7 = $E091            // STA (IFP),Y
+                    codeptr=>0 = estkh8+$B5+(VX<<8)    // LDA ESTKH,X
+                    codeptr=>2 = ifpl8+$91             // STA (IFP),Y
+                    codeptr->4 = $88                   // DEY
+                    codeptr=>5 = estkl8+$B5+(VX<<8)    // LDA ESTKL,X
+                    codeptr=>7 = ifpl8+$91             // STA (IFP),Y
                     codeptr    = codeptr + 9
                     A_IS_TOSL  = TOS_CLEAN
                     break
                 is $70 // SB
                 is $72 // SW
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)          // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)          // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $C095-$0100+(VX<<8)      // STA ESTKH-1,X
-                    codeptr=>2 = $D0B5+$0100+(VX<<8)      // LDA ESTKL+1,X
-                    codeptr=>4 = $C081-$0100+(VX<<8)      // STA (ESTKH-1,X)
+                    codeptr=>0 = estkh8+$95-$0100+(VX<<8)      // STA ESTKH-1,X
+                    codeptr=>2 = estkl8+$B5+$0100+(VX<<8)      // LDA ESTKL+1,X
+                    codeptr=>4 = estkh8+$81-$0100+(VX<<8)      // STA (ESTKH-1,X)
                     if opcode == $70
                         //puts("SB")
                         codeptr     = codeptr + 6
                     else
                         //puts("SW")
-                        codeptr=>6  = $C0B5+$0100+(VX<<8) // LDA ESTKH+1,X
-                        codeptr=>8  = $C0F6-$0100+(VX<<8) // INC ESTKH-1,X
-                        codeptr=>10 = $02D0               // BNE +2
-                        codeptr=>12 = $C0F6+(VX<<8)       // INC ESTKH,X
-                        codeptr=>14 = $C081-$0100+(VX<<8) // STA (ESTKH-1,X)
+                        codeptr=>6  = estkh8+$B5+$0100+(VX<<8) // LDA ESTKH+1,X
+                        codeptr=>8  = estkh8+$F6-$0100+(VX<<8) // INC ESTKH-1,X
+                        codeptr=>10 = $02D0                    // BNE +2
+                        codeptr=>12 = estkh8+$F6+(VX<<8)       // INC ESTKH,X
+                        codeptr=>14 = estkh8+$81-$0100+(VX<<8) // STA (ESTKH-1,X)
                         codeptr     = codeptr + 16
                     fin
-                    VX        = VX + 2                    // INX; INX
+                    VX        = VX + 2                         // INX; INX
                     A_IS_TOSL = FALSE
                     break
                 is $74 // SLB
@@ -917,27 +916,27 @@ def compiler(defptr)#0
                     i++
                     j = ^(bytecode+i)
                     if not A_IS_TOSL
-                        *codeptr  = $D0B5+(VX<<8)  // LDA ESTKL,X
+                        *codeptr  = estkl8+$B5+(VX<<8)  // LDA ESTKL,X
                         codeptr   = codeptr + 2
                     fin
                     if VY <> j
-                        *codeptr = $A0+(j<<8)      // LDY #imm
+                        *codeptr = $A0+(j<<8)           // LDY #imm
                         codeptr  = codeptr + 2
                         VY       = j
                     fin
-                    codeptr=>0 = $E091             // STA (IFP),Y
+                    codeptr=>0 = ifpl8+$91              // STA (IFP),Y
                     if opcode == $74
                         //puts("SLB "); puti(j)
                         codeptr    = codeptr + 2
                     else
                         //puts("SLW "); puti(j)
-                        codeptr->2 = $C8           // INY
-                        codeptr=>3 = $C0B5+(VX<<8) // LDA ESTKH,X
-                        codeptr=>5 = $E091         // STA (IFP),Y
+                        codeptr->2 = $C8                // INY
+                        codeptr=>3 = estkh8+$B5+(VX<<8) // LDA ESTKH,X
+                        codeptr=>5 = ifpl8+$91          // STA (IFP),Y
                         codeptr    = codeptr + 7
                         VY++
                     fin
-                    VX++                           // INX
+                    VX++                                // INX
                     A_IS_TOSL  = FALSE
                     break
                 is $78 // SAB
@@ -945,22 +944,22 @@ def compiler(defptr)#0
                     dest = *(bytecode+i+1)
                     i    = i + 2
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)   // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)   // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $8D               // STA abs
+                    codeptr->0 = $8D                    // STA abs
                     codeptr=>1 = dest
                     if opcode ==  $78
                         //puts("SAB $"); puth(dest)
                         codeptr    = codeptr + 3
                     else
                         //puts("SAW $"); puth(dest)
-                        codeptr=>3 = $C0B5+(VX<<8) // LDA ESTKH,X
-                        codeptr->5 = $8D           // STA abs+1
+                        codeptr=>3 = estkh8+$B5+(VX<<8) // LDA ESTKH,X
+                        codeptr->5 = $8D                // STA abs+1
                         codeptr=>6 = dest+1
                         codeptr    = codeptr + 8
                     fin
-                    VX++                           // INX
+                    VX++                                // INX
                     A_IS_TOSL = FALSE
                     break
                 is $7C // DAB
@@ -968,26 +967,26 @@ def compiler(defptr)#0
                     dest = *(bytecode+i+1)
                     i    = i + 2
                     if not A_IS_TOSL
-                        *codeptr  = $D0B5+(VX<<8)  // LDA ESTKL,X
+                        *codeptr  = estkl8+$B5+(VX<<8)  // LDA ESTKL,X
                         codeptr   = codeptr + 2
                         A_IS_TOSL = TOS_CLEAN
                     fin
-                    codeptr->0 = $8D               // STA abs
+                    codeptr->0 = $8D                    // STA abs
                     codeptr=>1 = dest
                     if opcode == $7C
                         //puts("DAB $"); puth(dest)
                         codeptr    = codeptr + 3
                         if VY <> 0
-                            *codeptr = $00A0       // LDY #$00
+                            *codeptr = $00A0            // LDY #$00
                             codeptr  = codeptr + 2
                             VY       = 0
                         fin
-                        *codeptr = $C094+(VX<<8)   // STY ESTKH,X
+                        *codeptr = estkh8+$94+(VX<<8)   // STY ESTKH,X
                         codeptr  = codeptr + 2
                     else
                         //puts("DAW $"); puth(dest)
-                        codeptr=>3 = $C0B4+(VX<<8) // LDY ESTKH,X
-                        codeptr->5 = $8C           // STY abs+1
+                        codeptr=>3 = estkh8+$B4+(VX<<8) // LDY ESTKH,X
+                        codeptr->5 = $8C                // STY abs+1
                         codeptr=>6 = dest+1
                         codeptr    = codeptr + 8
                         VY         = UNKNOWN
@@ -996,48 +995,48 @@ def compiler(defptr)#0
                 is $80 // NOT
                     //puts("NOT")
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8) // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8) // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $C015+(VX<<8)   // ORA ESTKH,X
-                    codeptr=>2 = $02F0           // BEQ +2
-                    codeptr=>4 = $FFA9           // LDA #$FF
-                    codeptr=>6 = $FF49           // EOR #$FF
-                    codeptr=>8 = $C095+(VX<<8)   // STA ESTKH,X
+                    codeptr=>0 = estkh8+$15+(VX<<8)   // ORA ESTKH,X
+                    codeptr=>2 = $02F0                // BEQ +2
+                    codeptr=>4 = $FFA9                // LDA #$FF
+                    codeptr=>6 = $FF49                // EOR #$FF
+                    codeptr=>8 = estkh8+$95+(VX<<8)   // STA ESTKH,X
                     codeptr    = codeptr + 10
-                    A_IS_TOSL  = TOS_DIRTY       // STA ESTKL,X
+                    A_IS_TOSL  = TOS_DIRTY            // STA ESTKL,X
                     break
                 is $82 // ADD
                     //puts("ADD")
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)     // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)     // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0 = $18                 // CLC
-                    codeptr=>1 = $D075+$0100+(VX<<8) // ADC ESTKL+1,X
-                    codeptr=>3 = $D095+$0100+(VX<<8) // STA ESTKL+1,X
-                    codeptr=>5 = $C0B5+(VX<<8)       // LDA ESTKH,X
-                    codeptr=>7 = $C075+$0100+(VX<<8) // ADC ESTKH+1,X
-                    codeptr=>9 = $C095+$0100+(VX<<8) // STA ESTKH+1,X
+                    codeptr->0 = $18                      // CLC
+                    codeptr=>1 = estkl8+$75+$0100+(VX<<8) // ADC ESTKL+1,X
+                    codeptr=>3 = estkl8+$95+$0100+(VX<<8) // STA ESTKL+1,X
+                    codeptr=>5 = estkh8+$B5+(VX<<8)       // LDA ESTKH,X
+                    codeptr=>7 = estkh8+$75+$0100+(VX<<8) // ADC ESTKH+1,X
+                    codeptr=>9 = estkh8+$95+$0100+(VX<<8) // STA ESTKH+1,X
                     codeptr    = codeptr + 11
-                    VX++                             // INX
+                    VX++                                  // INX
                     A_IS_TOSL  = FALSE
                     break
                 is $84 // SUB
                     //puts("SUB")
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)      // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)      // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $D0B5+$0100+(VX<<8) // LDA ESTKL+1,X
-                    codeptr->2  = $38                 // SEC
-                    codeptr=>3  = $D0F5+(VX<<8)       // SBC ESTKL,X
-                    codeptr=>5  = $D095+$0100+(VX<<8) // STA ESTKL+1,X
-                    codeptr=>7  = $C0B5+$0100+(VX<<8) // LDA ESTKH+1,X
-                    codeptr=>9  = $C0F5+(VX<<8)       // SBC ESTKH,X
-                    codeptr=>11 = $C095+$0100+(VX<<8) // STA ESTKH+1,X
+                    codeptr=>0  = estkl8+$B5+$0100+(VX<<8) // LDA ESTKL+1,X
+                    codeptr->2  = $38                      // SEC
+                    codeptr=>3  = estkl8+$F5+(VX<<8)       // SBC ESTKL,X
+                    codeptr=>5  = estkl8+$95+$0100+(VX<<8) // STA ESTKL+1,X
+                    codeptr=>7  = estkh8+$B5+$0100+(VX<<8) // LDA ESTKH+1,X
+                    codeptr=>9  = estkh8+$F5+(VX<<8)       // SBC ESTKH,X
+                    codeptr=>11 = estkh8+$95+$0100+(VX<<8) // STA ESTKH+1,X
                     codeptr     = codeptr + 13
-                    VX++                              // INX
+                    VX++                                   // INX
                     A_IS_TOSL   = FALSE
                     break
                 is $86 // MUL
@@ -1063,7 +1062,7 @@ def compiler(defptr)#0
                     //
                     codeptr, VX = resolveX(codeptr, VX)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     codeptr->0 = $20               // JSR INTERP
@@ -1076,34 +1075,34 @@ def compiler(defptr)#0
                 is $90 // NEG
                     //puts("NEG")
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> 0
-                        *codeptr = $00A0         // LDY #$00
+                        *codeptr = $00A0              // LDY #$00
                         codeptr  = codeptr + 2
                         VY       = 0
                     fin
-                    codeptr=>0 = $3898           // TYA -> LDA #$00; SEC
-                    codeptr=>2 = $D0F5+(VX<<8)   // SBC ESTKL,X
-                    codeptr=>4 = $D095+(VX<<8)   // STA ESTKL,X
-                    codeptr->6 = $98             // TYA -> LDA #00
-                    codeptr=>7 = $C0F5+(VX<<8)   // SBC ESTKH,X
-                    codeptr=>9 = $C095+(VX<<8)   // STA ESTKH,X
+                    codeptr=>0 = $3898                // TYA -> LDA #$00; SEC
+                    codeptr=>2 = estkl8+$F5+(VX<<8)   // SBC ESTKL,X
+                    codeptr=>4 = estkl8+$95+(VX<<8)   // STA ESTKL,X
+                    codeptr->6 = $98                  // TYA -> LDA #00
+                    codeptr=>7 = estkh8+$F5+(VX<<8)   // SBC ESTKH,X
+                    codeptr=>9 = estkh8+$95+(VX<<8)   // STA ESTKH,X
                     codeptr    = codeptr + 11
                     A_IS_TOSL  = FALSE
                     break
                 is $92 // COMP
                     //puts("COMP")
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8) // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8) // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $FF49           // EOR #$FF
-                    codeptr=>2 = $D095+(VX<<8)   // STA ESTKL,X
-                    codeptr=>4 = $C0B5+(VX<<8)   // LDA ESTKH,X
-                    codeptr=>6 = $FF49           // EOR #$FF
-                    codeptr=>8 = $C095+(VX<<8)   // STA ESTKH,X
+                    codeptr=>0 = $FF49                // EOR #$FF
+                    codeptr=>2 = estkl8+$95+(VX<<8)   // STA ESTKL,X
+                    codeptr=>4 = estkh8+$B5+(VX<<8)   // LDA ESTKH,X
+                    codeptr=>6 = $FF49                // EOR #$FF
+                    codeptr=>8 = estkh8+$95+(VX<<8)   // STA ESTKH,X
                     codeptr    = codeptr + 10
                     A_IS_TOSL  = FALSE
                     break
@@ -1124,36 +1123,36 @@ def compiler(defptr)#0
                             j = $55
                     wend
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)      // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)      // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0  = j                   // OP
-                    codeptr->1  = $D0+$01+VX          //     ESTKL+1,X
-                    codeptr=>2  = $D095+$0100+(VX<<8) // STA ESTKL+1,X
-                    codeptr=>4  = $C0B5+(VX<<8)       // LDA ESTKH,X
-                    codeptr->6  = j                   // OP
-                    codeptr->7  = $C0+$01+VX          //     ESTKH+1,X
-                    codeptr=>8  = $C095+$0100+(VX<<8) // STA ESTKH+1,X
+                    codeptr->0  = j                        // OP
+                    codeptr->1  = estkl+$01+VX             //     ESTKL+1,X
+                    codeptr=>2  = estkl8+$95+$0100+(VX<<8) // STA ESTKL+1,X
+                    codeptr=>4  = estkh8+$B5+(VX<<8)       // LDA ESTKH,X
+                    codeptr->6  = j                        // OP
+                    codeptr->7  = estkh+$01+VX             //     ESTKH+1,X
+                    codeptr=>8  = estkh8+$95+$0100+(VX<<8) // STA ESTKH+1,X
                     codeptr     = codeptr + 10
-                    VX++                              // INX
+                    VX++                                   // INX
                     A_IS_TOSL   = FALSE
                     break
                 is $9E // IDXW
                     //puts("IDXW")
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)      // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)      // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0  = $0A                 // ASL
-                    codeptr=>1  = $C036+(VX<<8)       // ROL ESTKH,X
-                    codeptr->3  = $18                 // CLC
-                    codeptr=>4  = $D075+$0100+(VX<<8) // ADC ESTKL+1,X
-                    codeptr=>6  = $D095+$0100+(VX<<8) // STA ESTKL+1,X
-                    codeptr=>8  = $C0B5+(VX<<8)       // LDA ESTKH,X
-                    codeptr=>10 = $C075+$0100+(VX<<8) // ADC ESTKH+1,X
-                    codeptr=>12 = $C095+$0100+(VX<<8) // STA ESTKH+1,X
+                    codeptr->0  = $0A                      // ASL
+                    codeptr=>1  = estkh8+$36+(VX<<8)       // ROL ESTKH,X
+                    codeptr->3  = $18                      // CLC
+                    codeptr=>4  = estkl8+$75+$0100+(VX<<8) // ADC ESTKL+1,X
+                    codeptr=>6  = estkl8+$95+$0100+(VX<<8) // STA ESTKL+1,X
+                    codeptr=>8  = estkh8+$B5+(VX<<8)       // LDA ESTKH,X
+                    codeptr=>10 = estkh8+$75+$0100+(VX<<8) // ADC ESTKH+1,X
+                    codeptr=>12 = estkh8+$95+$0100+(VX<<8) // STA ESTKH+1,X
                     codeptr     = codeptr + 14
-                    VX++                              // INX
+                    VX++                                   // INX
                     A_IS_TOSL   = FALSE
                     break
                 is $A0 // BRGT - FOR/NEXT SPECIFIC TEST & BRANCH
@@ -1163,17 +1162,17 @@ def compiler(defptr)#0
                     //puts("BRGT "); puti(dest)
                     codeptr, VX = resolveX(codeptr, VX)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8)      // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8)      // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $D0B5+$0100//+(VX<<8) // LDA ESTKL+1,X
-                    codeptr=>2  = $D0D5//+(VX<<8)       // CMP ESTKL,X
-                    codeptr=>4  = $C0B5+$0100//+(VX<<8) // LDA ESTKH+1,X
-                    codeptr=>6  = $C0F5//+(VX<<8)       // SBC ESTKH
-                    codeptr=>8  = $0250                 // BVC +2
-                    codeptr=>10 = $8049                 // EOR #$80
-                    codeptr=>12 = $0310                 // BPL +3
-                    codeptr->14 = $4C                   // JMP abs
+                    codeptr=>0  = estkl8+$B5+$0100//+(VX<<8) // LDA ESTKL+1,X
+                    codeptr=>2  = estkl8+$D5//+(VX<<8)       // CMP ESTKL,X
+                    codeptr=>4  = estkh8+$B5+$0100//+(VX<<8) // LDA ESTKH+1,X
+                    codeptr=>6  = estkh8+$F5//+(VX<<8)       // SBC ESTKH
+                    codeptr=>8  = $0250                      // BVC +2
+                    codeptr=>10 = $8049                      // EOR #$80
+                    codeptr=>12 = $0310                      // BPL +3
+                    codeptr->14 = $4C                        // JMP abs
                     codeptr=>15 = addrxlate=>[dest]
                     if not (codeptr->16 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 15 - *jitcodeptr
@@ -1188,19 +1187,19 @@ def compiler(defptr)#0
                     //puts("BRLT "); puti(dest)
                     codeptr, VX = resolveX(codeptr, VX)
                     if not A_IS_TOSL
-                        *codeptr = $D0B5//+(VX<<8)      // LDA ESTKL,X
+                        *codeptr = estkl8+$B5//+(VX<<8)      // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     elsif A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8)      // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8)      // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $D0D5+$0100//+(VX<<8) // CMP ESTKL+1,X
-                    codeptr=>2  = $C0B5//+(VX<<8)       // LDA ESTKH,X
-                    codeptr=>4  = $C0F5+$0100//+(VX<<8) // SBC ESTKH+1
-                    codeptr=>6  = $0250                 // BVC +2
-                    codeptr=>8  = $8049                 // EOR #$80
-                    codeptr=>10 = $0310                 // BPL +3
-                    codeptr->12 = $4C                   // JMP abs
+                    codeptr=>0  = estkl8+$D5+$0100//+(VX<<8) // CMP ESTKL+1,X
+                    codeptr=>2  = estkh8+$B5//+(VX<<8)       // LDA ESTKH,X
+                    codeptr=>4  = estkh8+$F5+$0100//+(VX<<8) // SBC ESTKH+1
+                    codeptr=>6  = $0250                      // BVC +2
+                    codeptr=>8  = $8049                      // EOR #$80
+                    codeptr=>10 = $0310                      // BPL +3
+                    codeptr->12 = $4C                        // JMP abs
                     codeptr=>13 = addrxlate=>[dest]
                     if not (codeptr->14 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 13 - *jitcodeptr
@@ -1214,7 +1213,7 @@ def compiler(defptr)#0
                     dest = i + *(bytecode+i)
                     i++
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)                     // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)                     // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if opcode == $A4
@@ -1222,36 +1221,36 @@ def compiler(defptr)#0
                         // INCR
                         //
                         //puts("INCBRLE "); puti(dest)
-                        codeptr->0 = $18                             // CLC
-                        codeptr=>1 = $0169                           // ADC #$01
-                        codeptr=>3 = $D095+(VX<<8)                   // STA ESTKL,X
-                        codeptr=>5 = $0290                           // BCC +2
-                        codeptr=>7 = $C0F6+(VX<<8)                   // INC ESTKH,X
+                        codeptr->0 = $18                                  // CLC
+                        codeptr=>1 = $0169                                // ADC #$01
+                        codeptr=>3 = estkl8+$95+(VX<<8)                   // STA ESTKL,X
+                        codeptr=>5 = $0290                                // BCC +2
+                        codeptr=>7 = estkh8+$F6+(VX<<8)                   // INC ESTKH,X
                         codeptr, VX = resolveX(codeptr + 9, VX)
                     else
                         //
                         // ADD
                         //
                         //puts("ADDBRLE "); puti(dest)
-                        codeptr->0 = $18                             // CLC
-                        codeptr=>1 = $D075+$0100+(VX<<8)             // ADC ESTKL+1,X
-                        codeptr=>3 = $D095+$0100+(VX<<8)             // STA ESTKL+1,X
-                        codeptr=>5 = $C0B5+(VX<<8)                   // LDA ESTKH,X
-                        codeptr=>7 = $C075+$0100+(VX<<8)             // ADC ESTKH+1,X
-                        codeptr=>9 = $C095+$0100+(VX<<8)             // STA ESTKH+1,X
-                        codeptr, VX = resolveX(codeptr + 11, VX + 1) // INX
+                        codeptr->0 = $18                                  // CLC
+                        codeptr=>1 = estkl8+$75+$0100+(VX<<8)             // ADC ESTKL+1,X
+                        codeptr=>3 = estkl8+$95+$0100+(VX<<8)             // STA ESTKL+1,X
+                        codeptr=>5 = estkh8+$B5+(VX<<8)                   // LDA ESTKH,X
+                        codeptr=>7 = estkh8+$75+$0100+(VX<<8)             // ADC ESTKH+1,X
+                        codeptr=>9 = estkh8+$95+$0100+(VX<<8)             // STA ESTKH+1,X
+                        codeptr, VX = resolveX(codeptr + 11, VX + 1)      // INX
                     fin
                     //
                     // BRLE
                     //
-                    codeptr=>0  = $D0B5+$0100//+(VX<<8) // LDA ESTKL+1,X
-                    codeptr=>2  = $D0D5//+(VX<<8)       // CMP ESTKL,X
-                    codeptr=>4  = $C0B5+$0100//+(VX<<8) // LDA ESTKH+1,X
-                    codeptr=>6  = $C0F5//+(VX<<8)       // SBC ESTKH
-                    codeptr=>8  = $0250                 // BVC +2
-                    codeptr=>10 = $8049                 // EOR #$80
-                    codeptr=>12 = $0330                 // BMI +3
-                    codeptr->14 = $4C                   // JMP abs
+                    codeptr=>0  = estkl8+$B5+$0100//+(VX<<8) // LDA ESTKL+1,X
+                    codeptr=>2  = estkl8+$D5//+(VX<<8)       // CMP ESTKL,X
+                    codeptr=>4  = estkh8+$B5+$0100//+(VX<<8) // LDA ESTKH+1,X
+                    codeptr=>6  = estkh8+$F5//+(VX<<8)       // SBC ESTKH
+                    codeptr=>8  = $0250                      // BVC +2
+                    codeptr=>10 = $8049                      // EOR #$80
+                    codeptr=>12 = $0330                      // BMI +3
+                    codeptr->14 = $4C                        // JMP abs
                     codeptr=>15 = addrxlate=>[dest]
                     if not (codeptr->16 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 15 - *jitcodeptr
@@ -1265,7 +1264,7 @@ def compiler(defptr)#0
                     dest = i + *(bytecode+i)
                     i++
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8)                     // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8)                     // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if opcode == $A8
@@ -1274,14 +1273,14 @@ def compiler(defptr)#0
                         //
                         //puts("DECBRGE "); puti(dest)
                         if not A_IS_TOSL
-                            *codeptr = $D0B5+(VX<<8)                 // LDA ESTKL,X
+                            *codeptr = estkl8+$B5+(VX<<8)                 // LDA ESTKL,X
                             codeptr  = codeptr + 2
                         fin
-                        codeptr->0 = $38                             // SEC
-                        codeptr=>1 = $01E9                           // SBC #$01
-                        codeptr=>3 = $D095+(VX<<8)                   // STA ESTKL,X
-                        codeptr=>5 = $02B0                           // BCS +2
-                        codeptr=>7 = $C0D6+(VX<<8)                   // DEC ESTKH,X
+                        codeptr->0 = $38                                  // SEC
+                        codeptr=>1 = $01E9                                // SBC #$01
+                        codeptr=>3 = estkl8+$95+(VX<<8)                   // STA ESTKL,X
+                        codeptr=>5 = $02B0                                // BCS +2
+                        codeptr=>7 = estkh8+$D6+(VX<<8)                   // DEC ESTKH,X
                         codeptr, VX = resolveX(codeptr + 9, VX)
                     else
                         //
@@ -1289,30 +1288,30 @@ def compiler(defptr)#0
                         //
                         //puts("SUBBRGE "); puti(dest)
                         if A_IS_TOSL & TOS_DIRTY
-                            *codeptr = $D095+(VX<<8)                 // STA ESTKL,X
+                            *codeptr = estkl8+$95+(VX<<8)                 // STA ESTKL,X
                             codeptr  = codeptr + 2
                         fin
-                        codeptr=>0  = $D0B5+$0100+(VX<<8)            // LDA ESTKL+1,X
-                        codeptr->2  = $38                            // SEC
-                        codeptr=>3  = $D0F5+(VX<<8)                  // SBC ESTKL,X
-                        codeptr=>5  = $D095+$0100+(VX<<8)            // STA ESTKL+1,X
-                        codeptr=>7  = $C0B5+$0100+(VX<<8)            // LDA ESTKH+1,X
-                        codeptr=>9  = $C0F5+(VX<<8)                  // SBC ESTKH,X
-                        codeptr=>11 = $C095+$0100+(VX<<8)            // STA ESTKH+1,X
-                        codeptr, VX = resolveX(codeptr + 13, VX + 1) // INX
-                        *codeptr    = $D0B5//+(VX<<8)                // LDA ESTKL,X
+                        codeptr=>0  = estkl8+$B5+$0100+(VX<<8)            // LDA ESTKL+1,X
+                        codeptr->2  = $38                                 // SEC
+                        codeptr=>3  = estkl8+$F5+(VX<<8)                  // SBC ESTKL,X
+                        codeptr=>5  = estkl8+$95+$0100+(VX<<8)            // STA ESTKL+1,X
+                        codeptr=>7  = estkh8+$B5+$0100+(VX<<8)            // LDA ESTKH+1,X
+                        codeptr=>9  = estkh8+$F5+(VX<<8)                  // SBC ESTKH,X
+                        codeptr=>11 = estkh8+$95+$0100+(VX<<8)            // STA ESTKH+1,X
+                        codeptr, VX = resolveX(codeptr + 13, VX + 1)      // INX
+                        *codeptr    = estkl8+$B5//+(VX<<8)                // LDA ESTKL,X
                         codeptr     = codeptr + 2
                     fin
                     //
                     // BRGE
                     //
-                    codeptr=>0  = $D0D5+$0100//+(VX<<8) // CMP ESTKL+1,X
-                    codeptr=>2  = $C0B5//+(VX<<8)       // LDA ESTKH,X
-                    codeptr=>4  = $C0F5+$0100//+(VX<<8) // SBC ESTKH+1,X
-                    codeptr=>6  = $0250                 // BVC +2
-                    codeptr=>8  = $8049                 // EOR #$80
-                    codeptr=>10 = $0330                 // BMI +3
-                    codeptr->12 = $4C                   // JMP abs
+                    codeptr=>0  = estkl8+$D5+$0100//+(VX<<8) // CMP ESTKL+1,X
+                    codeptr=>2  = estkh8+$B5//+(VX<<8)       // LDA ESTKH,X
+                    codeptr=>4  = estkh8+$F5+$0100//+(VX<<8) // SBC ESTKH+1,X
+                    codeptr=>6  = $0250                      // BVC +2
+                    codeptr=>8  = $8049                      // EOR #$80
+                    codeptr=>10 = $0330                      // BMI +3
+                    codeptr->12 = $4C                        // JMP abs
                     codeptr=>13 = addrxlate=>[dest]
                     if not (codeptr->14 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 13 - *jitcodeptr
@@ -1327,27 +1326,27 @@ def compiler(defptr)#0
                     i++
                     codeptr, VX = resolveX(codeptr, VX)
                     if not A_IS_TOSL
-                        *codeptr = $D0B5//+(VX<<8) // LDA ESTKL,X
+                        *codeptr = estkl8+$B5//+(VX<<8) // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     elsif A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095//+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95//+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $C015//+(VX<<8)   // ORA ESTKH,X
+                    codeptr=>0 = estkh8+$15//+(VX<<8)   // ORA ESTKH,X
                     if opcode == $AC
                         //puts("BRAND "); puti(dest)
-                        codeptr=>2 = $03D0         // BNE +3
+                        codeptr=>2 = $03D0              // BNE +3
                     else
                         //puts("BROR "); puti(dest)
-                        codeptr=>2 = $03F0         // BEQ +3
+                        codeptr=>2 = $03F0              // BEQ +3
                     fin
-                    codeptr->4 = $4C               // JMP abs
+                    codeptr->4 = $4C                    // JMP abs
                     codeptr=>5 = addrxlate=>[dest]
                     if not (codeptr->6 & $80) // Unresolved address list
                         addrxlate=>[dest] = codeptr + 5 - *jitcodeptr
                     fin
                     codeptr   = codeptr + 7
-                    VX++                           // INX
+                    VX++                                // INX
                     A_IS_TOSL = FALSE
                     break
                 is $B0 // ADDLB
@@ -1355,29 +1354,29 @@ def compiler(defptr)#0
                     i++
                     j = ^(bytecode+i)
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)    // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)    // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> j
-                        *codeptr = $A0+(j<<8)       // LDY #imm
+                        *codeptr = $A0+(j<<8)            // LDY #imm
                         codeptr  = codeptr + 2
                         VY       = j
                     fin
-                    codeptr->0 = $18                // CLC
-                    codeptr=>1 = $E071              // ADC (IFP),Y
+                    codeptr->0 = $18                     // CLC
+                    codeptr=>1 = ifpl8+$71               // ADC (IFP),Y
                     if opcode == $B0
                         //puts("ADDLB "); puti(j)
-                        codeptr=>3  = $0290         // BCC +2
-                        codeptr=>5  = $C0F6+(VX<<8) // INC ESTKH,X
+                        codeptr=>3  = $0290              // BCC +2
+                        codeptr=>5  = estkh8+$F6+(VX<<8) // INC ESTKH,X
                         codeptr     = codeptr + 7
-                        A_IS_TOSL   = TOS_DIRTY     // STA ESTKL,X
+                        A_IS_TOSL   = TOS_DIRTY          // STA ESTKL,X
                     else
                         //puts("ADDLW "); puti(j)
-                        codeptr=>3  = $D095+(VX<<8) // STA ESTKL,X
-                        codeptr=>5  = $C0B5+(VX<<8) // LDA ESTKH,X
-                        codeptr->7  = $C8           // INY
-                        codeptr=>8  = $E071         // ADC (IFP),Y
-                        codeptr=>10 = $C095+(VX<<8) // STA ESTKH,X
+                        codeptr=>3  = estkl8+$95+(VX<<8) // STA ESTKL,X
+                        codeptr=>5  = estkh8+$B5+(VX<<8) // LDA ESTKH,X
+                        codeptr->7  = $C8                // INY
+                        codeptr=>8  = ifpl8+$71          // ADC (IFP),Y
+                        codeptr=>10 = estkh8+$95+(VX<<8) // STA ESTKH,X
                         codeptr     = codeptr + 12
                         VY++
                         A_IS_TOSL   = FALSE
@@ -1388,24 +1387,24 @@ def compiler(defptr)#0
                     dest = *(bytecode+i+1)
                     i    = i + 2
                     if not A_IS_TOSL
-                        *codeptr = $D0B5+(VX<<8)    // LDA ESTKL,X
+                        *codeptr = estkl8+$B5+(VX<<8)    // LDA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0 = $6D18              // CLC; ADC abs
+                    codeptr=>0 = $6D18                   // CLC; ADC abs
                     codeptr=>2 = dest
                     if opcode == $B4
                         //puts("ADDAB $"); puth(dest)
-                        codeptr=>4  = $0290         // BCC +2
-                        codeptr=>6  = $C0F6+(VX<<8) // INC ESTKH,X
+                        codeptr=>4  = $0290              // BCC +2
+                        codeptr=>6  = estkh8+$F6+(VX<<8) // INC ESTKH,X
                         codeptr     = codeptr + 8
-                        A_IS_TOSL   = TOS_DIRTY     // STA ESTKL,X
+                        A_IS_TOSL   = TOS_DIRTY          // STA ESTKL,X
                     else
                         //puts("ADDAW $"); puth(dest)
-                        codeptr=>4  = $D095+(VX<<8) // STA ESTKL,X
-                        codeptr=>6  = $C0B5+(VX<<8) // LDA ESTKH,X
-                        codeptr->8  = $6D           // ADC abs
+                        codeptr=>4  = estkl8+$95+(VX<<8) // STA ESTKL,X
+                        codeptr=>6  = estkh8+$B5+(VX<<8) // LDA ESTKH,X
+                        codeptr->8  = $6D                // ADC abs
                         codeptr=>9  = dest+1
-                        codeptr=>11 = $C095+(VX<<8) // STA ESTKH,X
+                        codeptr=>11 = estkh8+$95+(VX<<8) // STA ESTKH,X
                         codeptr     = codeptr + 13
                         A_IS_TOSL   = FALSE
                     fin
@@ -1415,27 +1414,27 @@ def compiler(defptr)#0
                     j = ^(bytecode+i)
                     //puts("IDXLB "); puti(j)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> j
-                        *codeptr = $A0+(j<<8)    // LDY #imm
+                        *codeptr = $A0+(j<<8)         // LDY #imm
                         codeptr  = codeptr + 2
                     fin
-                    *codeptr = $E0B1             // LDA (IFP),Y
+                    *codeptr = ifpl8+$B1              // LDA (IFP),Y
                     codeptr  = codeptr + 2
                     if j <> 0
-                        *codeptr = $00A0         // LDY #$00
+                        *codeptr = $00A0              // LDY #$00
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0  = $0A            // ASL
-                    codeptr=>1  = $0290          // BCC +2
-                    codeptr=>3  = $18C8          // INY; CLC
-                    codeptr=>5  = $D075+(VX<<8)  // ADC ESTKL,X
-                    codeptr=>7  = $D095+(VX<<8)  // STA ESTKL,X
-                    codeptr->9  = $98            // TYA
-                    codeptr=>10 = $C075+(VX<<8)  // ADC ESTKH,X
-                    codeptr=>12 = $C095+(VX<<8)  // STA ESTKH,X
+                    codeptr->0  = $0A                 // ASL
+                    codeptr=>1  = $0290               // BCC +2
+                    codeptr=>3  = $18C8               // INY; CLC
+                    codeptr=>5  = estkl8+$75+(VX<<8)  // ADC ESTKL,X
+                    codeptr=>7  = estkl8+$95+(VX<<8)  // STA ESTKL,X
+                    codeptr->9  = $98                 // TYA
+                    codeptr=>10 = estkh8+$75+(VX<<8)  // ADC ESTKH,X
+                    codeptr=>12 = estkh8+$95+(VX<<8)  // STA ESTKH,X
                     codeptr     = codeptr + 14
                     VY          = UNKNOWN
                     A_IS_TOSL   = FALSE
@@ -1445,26 +1444,26 @@ def compiler(defptr)#0
                     j = ^(bytecode+i)
                     //puts("IDXLW "); puti(j)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> j
-                        *codeptr = $A0+(j<<8)    // LDY #imm
+                        *codeptr = $A0+(j<<8)         // LDY #imm
                         codeptr  = codeptr + 2
                     fin
-                    codeptr=>0  = $E0B1          // LDA (IFP),Y
-                    codeptr->2  = $0A            // ASL
-                    codeptr=>3  = $E785          // STA $E7:TMPL
-                    codeptr->5  = $C8            // INY
-                    codeptr=>6  = $E0B1          // LDA (IFP),Y
-                    codeptr=>8  = $A82A          // ROL; TAY
-                    codeptr=>10 = $E7A5          // LDA $E7:TMPL
-                    codeptr->12 = $18            // CLC
-                    codeptr=>13 = $D075+(VX<<8)  // ADC ESTKL,X
-                    codeptr=>15 = $D095+(VX<<8)  // STA ESTKL,X
-                    codeptr->17 = $98            // TYA
-                    codeptr=>18 = $C075+(VX<<8)  // ADC ESTKH,X
-                    codeptr=>20 = $C095+(VX<<8)  // STA ESTKH,X
+                    codeptr=>0  = ifpl8+$B1           // LDA (IFP),Y
+                    codeptr->2  = $0A                 // ASL
+                    codeptr=>3  = tmpl8+$85           // STA $E7:TMPL
+                    codeptr->5  = $C8                 // INY
+                    codeptr=>6  = ifpl8+$B1           // LDA (IFP),Y
+                    codeptr=>8  = $A82A               // ROL; TAY
+                    codeptr=>10 = tmpl8+$A5           // LDA $E7:TMPL
+                    codeptr->12 = $18                 // CLC
+                    codeptr=>13 = estkl8+$75+(VX<<8)  // ADC ESTKL,X
+                    codeptr=>15 = estkl8+$95+(VX<<8)  // STA ESTKL,X
+                    codeptr->17 = $98                 // TYA
+                    codeptr=>18 = estkh8+$75+(VX<<8)  // ADC ESTKH,X
+                    codeptr=>20 = estkh8+$95+(VX<<8)  // STA ESTKH,X
                     codeptr     = codeptr + 22
                     VY          = UNKNOWN
                     A_IS_TOSL   = FALSE
@@ -1474,23 +1473,23 @@ def compiler(defptr)#0
                     i    = i + 2
                     //puts("IDXAB $"); puth(*(bytecode+i))
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
                     if VY <> 0
-                        *codeptr = $00A0         // LDY #$00
+                        *codeptr = $00A0              // LDY #$00
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0  = $AD            // LDA abs
+                    codeptr->0  = $AD                 // LDA abs
                     codeptr=>1  = dest
-                    codeptr->3  = $0A            // ASL
-                    codeptr=>4  = $0290          // BCC +2
-                    codeptr=>6  = $18C8          // INY; CLC
-                    codeptr=>8  = $D075+(VX<<8)  // ADC ESTKL,X
-                    codeptr=>10 = $D095+(VX<<8)  // STA ESTKL,X
-                    codeptr->12 = $98            // TYA
-                    codeptr=>13 = $C075+(VX<<8)  // ADC ESTKH,X
-                    codeptr=>15 = $C095+(VX<<8)  // STA ESTKH,X
+                    codeptr->3  = $0A                 // ASL
+                    codeptr=>4  = $0290               // BCC +2
+                    codeptr=>6  = $18C8               // INY; CLC
+                    codeptr=>8  = estkl8+$75+(VX<<8)  // ADC ESTKL,X
+                    codeptr=>10 = estkl8+$95+(VX<<8)  // STA ESTKL,X
+                    codeptr->12 = $98                 // TYA
+                    codeptr=>13 = estkh8+$75+(VX<<8)  // ADC ESTKH,X
+                    codeptr=>15 = estkh8+$95+(VX<<8)  // STA ESTKH,X
                     codeptr     = codeptr + 17
                     VY          = UNKNOWN
                     A_IS_TOSL   = FALSE
@@ -1500,23 +1499,23 @@ def compiler(defptr)#0
                     i    = i + 2
                     //puts("IDXAW $"); puth(dest)
                     if A_IS_TOSL & TOS_DIRTY
-                        *codeptr = $D095+(VX<<8) // STA ESTKL,X
+                        *codeptr = estkl8+$95+(VX<<8) // STA ESTKL,X
                         codeptr  = codeptr + 2
                     fin
-                    codeptr->0  = $AD            // LDA abs
+                    codeptr->0  = $AD                 // LDA abs
                     codeptr=>1  = dest
-                    codeptr->3  = $0A            // ASL
-                    codeptr=>4  = $E785          // STA $E7:TMPL
-                    codeptr->6  = $AD            // LDA abs+1
+                    codeptr->3  = $0A                 // ASL
+                    codeptr=>4  = tmpl8+$85           // STA $E7:TMPL
+                    codeptr->6  = $AD                 // LDA abs+1
                     codeptr=>7  = dest+1
-                    codeptr=>9  = $A82A          // ROL; TAY
-                    codeptr=>11 = $E7A5          // LDA $E7:TMPL
-                    codeptr->13 = $18            // CLC
-                    codeptr=>14 = $D075+(VX<<8)  // ADC ESTKL,X
-                    codeptr=>16 = $D095+(VX<<8)  // STA ESTKL,X
-                    codeptr->18 = $98            // TYA
-                    codeptr=>19 = $C075+(VX<<8)  // ADC ESTKH,X
-                    codeptr=>21 = $C095+(VX<<8)  // STA ESTKH,X
+                    codeptr=>9  = $A82A               // ROL; TAY
+                    codeptr=>11 = tmpl8+$A5           // LDA $E7:TMPL
+                    codeptr->13 = $18                 // CLC
+                    codeptr=>14 = estkl8+$75+(VX<<8)  // ADC ESTKL,X
+                    codeptr=>16 = estkl8+$95+(VX<<8)  // STA ESTKL,X
+                    codeptr->18 = $98                 // TYA
+                    codeptr=>19 = estkh8+$75+(VX<<8)  // ADC ESTKH,X
+                    codeptr=>21 = estkh8+$95+(VX<<8)  // STA ESTKH,X
                     codeptr     = codeptr + 23
                     VY          = UNKNOWN
                     A_IS_TOSL   = FALSE
diff --git a/src/vmsrc/apple/soscmd.pla b/src/vmsrc/apple/soscmd.pla
index f370a2b..6150543 100755
--- a/src/vmsrc/apple/soscmd.pla
+++ b/src/vmsrc/apple/soscmd.pla
@@ -23,6 +23,15 @@ const jitcodeptr  = $A0F4
 const sinterp     = $A0F6
 const xinterp     = $A0F8
 const jitinterp   = $A0FA
+const estkh8      = $C000
+const estkh       = $00C0
+const estkl8      = $D000
+const estkl       = $00D0
+const ifpl8       = $E000
+const ifph8       = $E100
+const jmptmp      = $00E6
+const tmpl8       = $E700
+const tmph8       = $E800
 word  directentry, indirectentry
 //
 // COPY FROM EXT MEM TO MAIN MEM.