extrn ff.init,ff.ist,ff.in,ff.ost,ff.out\r
extrn as0init,as0ista,as0inp,as0osta,as0out\r
extrn as1init,as1ista,as1inp,as1osta,as1out\r
-\r
+ extrn _b0call\r
\r
include config.inc\r
include z180reg.inc\r
\r
max$devices equ 3\r
\r
- cseg\r
\r
;--------------------------------------------------------------\r
; Init character device\r
; c: device\r
\r
+ cseg\r
?cinit: ; init devices\r
+ b0call _cinit\r
+ ret\r
+\r
+ dseg\r
+_cinit:\r
ld b,c\r
call vector$io\r
dw ff.init\r
dw as1init\r
dw rret\r
\r
+\r
;--------------------------------------------------------------\r
; Character input\r
; b: device\r
; return:\r
; a: input char\r
\r
+ cseg\r
?ci: ; character input\r
+ b0call _ci\r
+ ret\r
+\r
+ dseg\r
+_ci:\r
call vector$io\r
dw ff.in\r
dw as0inp\r
; return:\r
; a: 0ffh if char available, else 0\r
\r
-?cist: ; character input status\r
+ cseg\r
+?cist: ; character input\r
+ b0call _cist\r
+ ret\r
+\r
+ dseg\r
+_cist: ; character input status\r
call vector$io\r
dw ff.ist\r
dw as0ista\r
; return:\r
; a: output char\r
\r
-?co: ; character output\r
+ cseg\r
+?co: ; character input\r
+ b0call _co\r
+ ret\r
+\r
+ dseg\r
+_co: ; character output\r
call vector$io\r
dw ff.out\r
dw as0out\r
; a: 0ffh if device ready for next output char, else 0\r
\r
\r
-?cost: ; character output status\r
+ cseg\r
+?cost: ; character input\r
+ b0call _cost\r
+ ret\r
+\r
+ dseg\r
+_cost: ; character output status\r
call vector$io\r
dw ff.ost\r
dw as0osta\r
\r
;--------------------------------------------------------------\r
\r
+ dseg\r
vector$io:\r
pop hl\r
push de\r
\r
;--------------------------------------------------------------\r
\r
+ cseg\r
@ctbl:\r
- db 'AVRCON' ; device 0\r
+ db 'USB0 ' ; device 0\r
db mb$in$out\r
db baud$none\r
\r
- db 'ASCI0 ' ; device 1\r
+ db 'ASCI0 ' ; device 1\r
db mb$in$out+mb$serial+mb$soft$baud\r
- db baud$9600\r
+ db baud$19200\r
\r
- db 'ASCI1 ' ; device 2\r
+ db 'ASCI1 ' ; device 2\r
db mb$in$out+mb$serial+mb$soft$baud\r
db baud$19200\r
\r
- db 0 ; table terminator\r
-\r
-;--------------------------------------------------------------\r
-\r
-\r
-\r
+ db 0 ; table terminator\r
\r
\r
end\r