diff --git a/projects/nibble-dice-tracker.tal b/projects/nibble-dice-tracker.tal index 5e3bc6d..dc143eb 100644 --- a/projects/nibble-dice-tracker.tal +++ b/projects/nibble-dice-tracker.tal @@ -361,23 +361,24 @@ RTN ,&start JMP &num $1 &start + #00 .ptr-register-nibbles LDZ ( get register address ) - #01 SFT #00 SWP ;registers ADD2 ( calculate register address+offset ) + #01 SFT ;registers ADD2 ( calculate register address+offset ) STH2k ( store and keep address+offset ) LDA ( get register contents ) DUP ( duplicate byte ) - #04 SFT #0f AND .high-nibble STZ ( store high nibble ) + #04 SFT .high-nibble STZ ( store high nibble ) #0f AND .low-nibble STZ ( store low nibble ) .ptr-register-nibbles LDZ #01 AND ( are we in high 1 or low 0 nibble? ) ,&inc-high-nibble JCN &inc-low-nibble - .low-nibble LDZ ,&num LDR ADD #0f AND ( increment and mask low nibble ) - .low-nibble STZ + .low-nibble STHk LDZ ,&num LDR ADD #0f AND ( increment and mask low nibble ) + STHr STZ ,&finish JMP &inc-high-nibble - .high-nibble LDZ ,&num LDR ADD #0f AND ( increment and mask low nibble ) - .high-nibble STZ + .high-nibble STHk LDZ ,&num LDR ADD #0f AND ( increment and mask low nibble ) + STHr STZ &finish .high-nibble LDZ #40 SFT .low-nibble LDZ ORA ( reassemble byte ) STH2r ( recover byte address ) diff --git a/roms/nibble-dice-tracker.rom b/roms/nibble-dice-tracker.rom index e6d42b5..c9543a9 100644 Binary files a/roms/nibble-dice-tracker.rom and b/roms/nibble-dice-tracker.rom differ