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