•
••
ZeD
ASSEMBLER
88-7201
PAGE
01
01
0000
02
0000
03
0000
04
0000
05
0000
P
06
0000
P
07
0000
O~:
0000
09
0000
10
0000
11
0000
12
0000
13
0000
14
0000
15
0000
16 0000,
17
0000
18
0000
F5
19
0001
3EOO
CD1600
Fl
D3FF
20
21
22
0003
0006
0007
23
0009
24
OOOB
25
OOOD
26
OOOF
27
0012
28
0013
3E80
D3FE
3EOl
CD1600
AF
D3FE
29
0015
C9
30
0016
31
0016
32
0016
3~:
0016
34
0016
35
0016
36
0016
37
0016
38
001b
39
0016
40
0016
41
0017
42
0018
43
0019
44
0018
45
001 E
46
0020
47
0022
48
0023
49
0025
50
0026
C5
D5
57
lEoe
010000
DBFE
E60D
BA
200:3
Dl
Cl
51
0027
(:9
52
0028
OB
53
0029
7B
54
002A
81
55
002B
20F1
56
0020
10
57
002E 20EE
58
0030
01
59
0031
Cl
60
00:32 C:30000
61
0035
E
·
.........................
. '
............
.
1 1 • 1 , • 1 , , , 1 , 1 , , , , , , , I , , r r I I , , I 1 , , 1 1 1 1 1 1 ,
PRINTER
MZ-80P4
CONTROL
SUBROUTINE
·
......................................
.
, , 1 1 I I I , , , 1 , • , ,
•••
, • , , ,
••
, ,
••
1 1 , • 1 1 • 1 • 1 •
PORT I I:
EQU
FEH
PORTIO:
EQU
FFH
, JP
ABNML:NO
POWER,NO
PAPER,DISELECT
OR
MECHANICAL
TROUBLE
· ........................ , ..... ,
...
, ..... , ............ .
• , , , 1 1 , 1 , , , , , 1 , • , , , , , , , , , , , , , , , , , 1 , , • , , 1 , ,
••
, ,
•••
, , , I • 1
DATA
CODE
TRANSFER
SUBROUTINE
,
BEFORE
CALL
"PRINT",SET
TRANSFERED
PRINT
CODE
IN
ACC
:
ALL
REGISTOR
RESERVED
ON
NORMAL
RETURN
~
; ; ; ; ;
;: ;:
i i ; i
;:
i j i i i ; ; j i j j j j j j i j j i j ; ; l ; ; i i ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;
PRINT:
ENT
PUSH
LD
CALL
POP
OUT
LD
OUT
LD
CALL
XOR
(JUT
RET
AF
A,OOH
BUSY/C
AF
(PORTIO)
,A
A,80H
(PORTI!)
,A
A,OIH
BIJSY/C
A
(PORT/I)
,A
lBUSY
SIGNAL
IS
LOW'
,DATA
TRANSFER
,IT
MAKES
DATA
STB
HIGH
lBUSY
SIGNAL
IS HIGH'
lIT
MAKES
DATA
STa
LOW
.......................................................
1 , 1 1 , , , , , 1 , , 1 1 , 1 , , , 1 • 1 • , 1 1 1 , , , , 1 ,
••
, , , 1 1 , , , , • , I I 1 J 1 , 1 , 1
BUSY
SIGNAL
CHECK
SUBROUTINE
ONLY
ACC.
IS
BROKEN
ON
NORMAL
RETURN
RESURVED
EXCEPT
ACCUMULATION
(A)
BEFORE
CALL
"BU8Y/C",SET
FOLLOWING
CODE
IN
ACC.
A'O:CHECKS IF
BUSY
IS
LOW
LEVEL
A·l:CHECKS IF
BUSY
IS
HIGH
LEVEL
;;
; ; i
;; ; ;;
i ; j ; ; ; ; ; ; ; ; ; ; ; j ; ; j ; ; ; ; ; j ;
j:j ; jj
; ;
j:j
; ; ; ; ; ;
;;
; ; ;
BUSY
le:
PU:3H
PUSH
LO
LD
LD
LOOP:
IN
AND
CP
.JR
POP
POP
RET
DEC
LD
OR
JR
DEC
JR
POP
POP
,JP
END
BC
DE
D,A
E,QCH
BC,OOOOH
A,
(PORT
I!
)
(IDH
D
NZ,+5
DE
BC
BC
A,B
c
NZ,LOOP
E
NZ,LOOF'
DE
BC
ABNML
30
,FOR
TIME
DELAY
;CHECKS
BUSY
SIGNAL
,REPEAT
lNORMAL
RETURN
lPRINTER IS
NOT
ON
LINE