
Replica 1 TE Users Manual
© Briel Computers 2007 page
31
FF5F: B9 00 02
NEXTHEX
LDA IN,Y
Get character for hex test.
FF62: 49 B0
EOR #$B0
Map digits to $0-9.
FF64: C9 0A
CMP #$0A
Digit?
FF66: 90 06
BCC DIG
Yes.
FF68: 69 88
ADC #$88
Map letter “A”-“F” to $FA-FF.
FF6A: C9 FA
CMP #$FA
Hex letter?
FF6C: 90 11
BCC NOTHEX
No, character not hex.
FF6E: 0A
DIG
ASL
FF6F: 0A
ASL
Hex digit to MSD of A.
FF70: 0A
ASL
FF71: 0A
ASL
FF72: A2 04
LDX #$04
Shift count.
FF74: 0A
HEXSHIFT
ASL
Hex digit left, MSB to carry.
FF75: 26 28
ROL L
Rotate into LSD.
FF77: 26 29
ROL H
Rotate into MSD’s.
FF79: CA
DEX
Done 4 shifts?
FF7A: D0 F8
BNE HEXSHIFT
No, loop.
FF7C: C8
INY
Advance text index.
FF7D: D0 E0
BNE NEXTHEX
Always taken. Check next char for hex.
FF7F: C4 2A
NOTHEX
CPY YSAV
Check if L, H empty (no hex digits).
FF81: F0 97
BEQ ESCAPE
Yes, generate ESC sequence.
FF83: 24 2B
BIT MODE
Test MODE byte.
FF85: 50 10
BVC NOTSTOR
B6=0 STOR 1 for XAM & BLOCK XAM
FF87: A5 28
LDA L
LSD’s of hex data.
FF89: 81 26
STA (STL,X)
Store at current ‘store index’.
FF8B: E6 26
INC STL
Increment store index.
FF8D: D0 B5
BNE NEXTITEM
Get next item. (no carry).
FF8F: E6 27
INC STH
Add carry to ‘store index’ high order.
FF91: 4C 44 FF
TONEXTITEM
JMP NEXTITEM
Get next command item.
FF94: 6C 24 00
RUN
JMP (XAML)
Run at current XAM index.
FF97: 30 2B
NOTSTOR
BMI XAMNEXT
B7=0 for XAM, 1 for BLOCK XAM.
FF99: A2 02
LDX #$02
Byte count.
FF9B: B5 27
SETADR
LDA L-1,X
Copy hex data to
FF9D: 95 25
STA STL-1,X
‘store index’.
FF9F: 95 23
STA XAML-1,X
And to ‘XAM index’.
FFA1: CA
DEX
Next of 2 bytes.
FFA2: D0 F7
BNE SETADR
Loop unless X=0.
FFA4: D0 14
NXTPRNT
BNE PRDATA
NE means no address to print.
FFA6: A9 8D
LDA #$8D
CR.
FFA8: 20 EF FF
JSR ECHO
Output it.
FFAB: A5 25
LDA XAMH
‘Examine index’ high-order byte.
FFAD:20 DC FF
JSR PRBYTE
Output it in hex format.
FFB0: A5 24
LDA XAML
Low-order ‘examine index’ byte.
FFB2: 20 DC FF
JSR PRBYTE
Output it in hex format.
FFB5: A9 BA
LDA #$BA
“:”.
FFB7: 20 EF FF
JSR ECHO
Output it.
FFBA: A9 A0
PRDATA
LDA #$A0
Blank.
FFBC: 20 EF FF
JSR ECHO
Output it.
FFBF: A1 24
LDA (XAML,X)
Get data byte at ‘examine index’.