]> cloudbase.mooo.com Git - z180-stamp.git/blame - z180/console.180
Version 0.6.8.2
[z180-stamp.git] / z180 / console.180
CommitLineData
a16ba2b0
L
1 ;page 255\r
2 .z80\r
3 \r
4\r
64cc2207
L
5; iobyte:\r
6; 0 = console on AVR-System\r
7; 1 = console on SIO/ASCI\r
a16ba2b0
L
8\r
9\r
64cc2207 10 extrn iobyte\r
30d1329e
L
11 extrn ff.init,ff.i.st,ff.in\r
12 extrn ff.o.st,ff.out\r
64cc2207
L
13 if CPU_Z180\r
14 extrn as0init,as0ista,as0inp,as0osta,as0out\r
15 extrn as1init,as1ista,as1inp,as1osta,as1out\r
16 else\r
17 extrn ser.init,ser.ist,ser.in,ser.ost,ser.out\r
18 endif\r
a16ba2b0 19 \r
64cc2207
L
20 public charini\r
21 public ?const,?conin\r
22 public ?conos,?cono\r
a16ba2b0
L
23\r
24 include config.inc\r
64cc2207 25 if CPU_Z180\r
a16ba2b0 26 include z180reg.inc\r
64cc2207 27 endif\r
a16ba2b0
L
28\r
29 cseg\r
a16ba2b0 30\r
64cc2207
L
31 if CPU_Z180\r
32charini:\r
33 call ff.init\r
34 call as0init\r
35 jp as1init\r
36\r
37?const:\r
38 ld a,(iobyte)\r
39 and 03h\r
40 jp z,ff.i.st\r
41 dec a\r
42 jp z,as0ista\r
43 dec a\r
44 jp z,as1ista\r
45 jr nullstatus\r
46\r
47?conin:\r
48 ld a,(iobyte)\r
49 and 03h\r
50 jp z,ff.in\r
51 dec a\r
52 jp z,as0inp\r
53 dec a\r
54 jp z,as1inp\r
55 jr nullinput\r
56\r
57?conos:\r
58 ld a,(iobyte)\r
59 and 03h\r
60 jp z,ff.o.st\r
61 dec a\r
62 jp z,as0osta\r
63 dec a\r
64 jp z,as1osta\r
65 jr rettrue\r
66\r
67?cono:\r
68 ld a,(iobyte)\r
69 and 03h\r
70 jp z,ff.out\r
71 dec a\r
72 jp z,as0out\r
73 dec a\r
74 jp z,as1out\r
75 jr nulloutput\r
76\r
77 else\r
78\r
79charini:\r
6a4e9540 80 call ff.init\r
64cc2207 81 ld c,0\r
a16ba2b0 82 call ser.init\r
64cc2207
L
83 ld c,1\r
84 jp ser.init\r
85\r
86?const:\r
87 ld a,(iobyte)\r
88 and 03h\r
89 jp z,ff.i.st\r
90 dec a\r
91 ld b,a\r
92 jp ser.ist\r
93\r
94?conin:\r
95 ld a,(iobyte)\r
96 and 03h\r
97 jp z,ff.in\r
98 dec a\r
99 ld b,a\r
100 jp ser.in\r
101\r
102?conos:\r
103 ld a,(iobyte)\r
104 and 03h\r
105 jp z,ff.o.st\r
106 dec a\r
107 ld b,a\r
108 jp ser.ost\r
109\r
110?cono:\r
111 ld a,(iobyte)\r
112 and 03h\r
113 jp z,ff.out\r
114 dec a\r
115 ld b,a\r
116 jp ser.out\r
117 endif\r
118\r
119\r
120nullinput:\r
121 ld a,1Ah\r
a16ba2b0 122 ret\r
64cc2207
L
123\r
124nulloutput:\r
125 ld a,c\r
a16ba2b0 126 ret\r
64cc2207
L
127\r
128rettrue:\r
129 or 0FFh\r
130 ret\r
131\r
132nullstatus:\r
133 xor a\r
134 ret\r
135\r
a16ba2b0
L
136 end\r
137\r