5 extrn f_cpu,add_hla,div32_r
12 ;--------------------------------------------------------------
13 ; TC = (f PHI /(2*baudrate*Clock_mode)) - 2
16 ; TC = (f PHI / (32 * baudrate)) - 2
18 ; br150 = baudrate/150
19 ; TC = (f PHI / (32 * 150 * br150)) - 2
20 ; TC = (f PHI / (32 * 150 * br150)) - 2
23 ;--------------------------------------------------------------
24 ; Init Serial I/O for console input and output (ASCI1)
26 ; b: device number (0..15)
27 ; c: asci channel number (0/1)
38 ld hl,@ctbl+7 ;get baudrate index
78 ; factor index baudrate orig. cp/m
79 dw 19200/150 ; 0 19200 -
80 dw 28800/150 ; 1 28800 50
81 dw 38400/150 ; 2 38400 75
82 dw 57600/150 ; 3 57600 110
83 dw 11520/15 ; 4 115200 134.5
94 dw 19200/150 ;15 19200
100 db 1,stat0,0 ;Disable rx/tx interrupts
101 ;Enable baud rate generator
102 db 1,asext0,M_BRGMOD+M_DCD0DIS ; +M_CTS0DIS
104 init_br_off equ $ - initab0
106 db 1,cntlb0,M_MPBT ;No MP Mode, X16
107 db 1,cntla0,M_RE+M_TE+M_MOD2 ;Rx/Tx enable, 8N1
111 db 1,stat1,0 ;Disable rx/tx ints, disable CTS1
112 db 1,asext1,M_BRGMOD ;Enable baud rate generator
113 db 2,astc1l,low 3, high 3
114 db 1,cntlb1,M_MPBT ;No MP Mode, X16
115 db 1,cntla1,M_RE+M_TE+M_MOD2 ;Rx/Tx enable, 8N1