Instruction manual

"-
. )
--
,,",
IT
EMULATES
SYM
PROGRAM
USES
X
IRESTORE
BIT
CTR
IDi;CREHDlT 1T
IFF
SHIFTED
8x-ee
IRESTORE X.Y,DATA BYTE
ICOUNT
HALf
CYCS
Of
Hf
IASSUME
BIT
IS
ONE
I--~DUMHY
I---INVERT
OUTPUT
IPAUSE fOR
218
USEC
ICOUNT HALf
CYCS
IBIT
IS
ZERO
;---DUMMY.
REALLY
1---
INVERT
OUTPUT
BIT
IPAUSE
fOR
138
USEC
I
---RESTORE
X
1---
AND
Y
I
BUMP
HI BYTE
I RESTORE
ACC
IZERO
CHECKSUM
SOME
UNECESSARY
JUNCK
;Z.ERO
CHECKSUM
I
---THATS
WHAT
THEY
NAHED
IT
I---TURN
ON
TAPE
RECORDER
HfPl
LfPI
LF2e
Hf
Sl8
Lf'2e
SIC
S27
TPBIT
TAPOUT
KlMBlT
TEMPI
TEMP2
SI9
TPBIT
TAPOUT
see
CHKL
CHKH
CHKL
CHKL
CHKTle
CHKH
LOOPI
Loope
TEMPI
TEMP2
LOY'
EaR'
STA
DEY
BNE
DEX
BNE
LOX'
BCS
LOX'
LOY'
EOR,
STA
DEY
BNE
OEX
BNE
PLA
ASLA
BNE
LOX
LOY
TYA
RTS
UPDATE
CHECKSUM
FROM
BYTE
IN
ACC
TAY
ISAVE
ACC
CLC
ADC
STA
BCC
INC
TYA
RTS
LEAVING
OUT
JSR
ZERCK
JSR
P2SCR
LDAI
see
STA
TAP
EON
RTS
LOA'
STA
STA
RTS
THIS
MOVES
THE STARTING
ADDRESS
TO
THE
RUNNING
BUffER
ADDRESS.
THE
WEIRD
NAME
IS
DUE
TO
THE
NAMES
Of
THE
LOCATIONS
WHICH
WE
ARE
MOVING
IN
THE
SYM
BOOK
CHKTle.
ZERCK.
1---
VE
NEED
A
OEL.AY
FUNCTION.
BECAUSE
THE
SYM
PROG
USES
THE
KIM
I
CHAROUT
ROUTINE
WITH
OUTPUT
DISABLED
TO
DELAY
(&
WE
CAN'T>
I
I-~-
THIS
ONE
SHOULD
BE
1/21
SEC,
SINCE
1---
THE
KIM
CHAR
OUT
ROUTINE,
WHICH
THE
8E
E311
DEL.AY.
STX
TEMPI
I---PRESERVE
8C E411
STY
TDfP2
I-~-
AND
Y
A2
Ie
LOX'
see
1---00
OUTER
LOOP
256
TIMES
Ae IA
LOOPI.
LOY'
TlME99
I---LOOP
88
LOOPI.
DEY
oe
FD
BNE
CA
DEX
De
F8 BNE
AE
E311
LOX
AC
E411
LOY
6e
RTS
I
,~--
CHKT
•••
A8
CHKT.
18
60
Elll
80
EIII
91
13
EE
E211
98
61
1---
START
•••
21
e1T!
START.
2e
De
II
At
lie
80
5tCI
6e
A9
ee
80
EIII
80
E211
611
1---
P2SCR
•••
I
I
I
1169
Ae 19
Hf:
116B
49
£5
1160
80
21ce
117e
88
HFPI.
1171
DI
FD
1173
CA
1174
01
F3
1176
A2
18
I.,f.
1178
BI
12
II7A
A2
IC
117C
Ae
27
LF21l.
117E
49
E5
1181
80
alCI
1'183
88
LFPI.
1184
08
FD
1186
CA
1187
01
F3
1189
68
118A
IA
118B
01
01
1180AEE311
1191
AC
£411
1193
98
1194
61
1195
1198
119B
1190
119F
IIAe
IIA2
11A3
IIA5
IIA8
liAS
IIAC
I1AD
IIAE
IIBI
IIB4
11B6
IIB9
IIBA
IIBB
11
BE
I1CI
IIC3
II
C6
IIC7
IIC9
II
CC
IICf
Bl
TS
I--~
GO
UPDATE
CHECKSUM
TIME fOR
THIS
LOOP
15
5Y-1
IBIT
IS
ZERO
I
HS
OR
KIM?
;KIM TAKES
BRANCH
18
BITS+START
BIT
ITlI!I1NG
I
(ALVAYS>
IGET
NEXT
BIT
(LAST
IS
e
START
BIT
I
(BY
9
BIT
LSR>
I---SHIfT
HI NIBBLE
INTO
PLACE
I
AND
OUTPUT
HI NIBBLE
fIRST
ICONVERT
LO
NIBBLE
TO
ASCII
;SAVE X " Y
IUSE
ff
W/SHlfTS
TO
COUNT
ISAVE
BIT
COUNTER
;---DUMMY
fOR
TIMING
;GET
DATA
BIT
IN
CARRY
IASSUME
ONE
HODE
OUTCHT
TEMPI
TEMP2
CHAR
Sff
TEMP2
CHAR
Sl2
Hf
S24
B416B
B416
GETBIT
TEMP2
HEXOUT
SlIf
SeA
S9
TEMP2
CHAR
ON
APPLE,
SO
NEXT
INSTRUCTION
IS
DUMMY
TEMPI
1---
fOR TIMING
CHAR
TPBIT
TAPOUT
I INVERT LEVEL
416
USEC
PERIOD
TMI5el
A416
NOFLIP INOFLIP
If
BIT
e
TPBIT
IBIT
IS
I - INVERT
OUTPUT
TAPOUT
USEC
PERIOD
TMI5Ie-1
ILENGTH
Of
LOOP
IS
5Y-1
A416
OUTBTH.
LOX'
STY
STA
LEVEL.
LOA
GE1'BIT. LSR
EOR'
STA
fIRST
LDYI
DEY
BNE
BCC
EORI
STA
OF
FIRST
416
8416.
LOYI
B416B.
DEY
BalE
DD:
SIIIE
LOY
RTS
NOFLlP.
NOP
BCC
I~--
START
Of
VARIOUS
CHARACTER
OUT
ROUTINES
I
I
IIe7
2C
Eell
OUTCTX.
BIT
IleA
Ie
47
BPL
I
10UTBTH
-NO
CLOCK
I
~
X
DESTROYED
I
MUST
RESIDE
ON
ONE
PAGE
- TIMING CRITICAL
I
II
ec
A2
e9
lleE
8C
E411
1111
85
EA
I
-~-CANT
READ
1113
AD
£311
111646
EA
1118
49 E5
IliA
80
2ece
I
HERE
STARTS
IIIDAI47
III
f
88
1121
De
fD
1122
91
II
112449
t5
1126
80
21ce
I
END
1129
AI
46
112B
88
112C
Dfl
FD
112E
CA
112fOI£5
1131
AC£411
1134
61
1135
i:A
113691
fI
I
1138
28
ACII
OUTBCX.
JSR
CHKT
113B
2C
EIII
OUTBTX.
BIT
MODE
113E
31
CC
BtU
OUTBTH
I
HS
10UTBTC
~
OUTPUT
ONE
KIM
BYTE
1141
A8
OUTBTC,
TAY
ISAVE
DATA
BYTE
1141
4A
LSRA
IIAla 4A LSRA
1143
AlA
LSRA
1144
AlA
LSRA
1145
21
4811
JSR
1148
29
IF
HEXOUT.
AND'
I I
AlA
C9
IA
CMP,
114C
18
CLC
1140
3e
12
BMI
HEXI
114F
69
117
ADC,
se7
1151
69
3e
HEXI.
ADC'
S3e
I
OUTCHT.
OUTPUTS
AN
ASCII
CHAR
IN
KIM
fORMAT
I
(MUST
RESIDE
ON
ONE
PAGE. fOR TIMING>
I
1153
8E
E31/
OUTCHT.
STX
1156
8C 1:411
STY
1159
85
EA
STA
115B
A9
ff
LOA'
115048
KIMBIT.
PHA
liSE
AD
E411
LOA
116146
EA
LSR
1163
A2
12
LOX'
I I
65
BI
e2
BCS
1167
A2
24
LOX'
.....
co
U,
c.>
c
CD
o
CD
3
0-
1Il
0'"
.....
co
~
co
3:
(5
:Jl
o
I
I
-l
:::T
CD
en
~
c-
o
c
3
III