comparison CoCoOS9/defs/l51.defs @ 31:bd2b07db8917 cocoos9lv2v3

CoCoOS9 version
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 14 Jul 2018 15:16:13 +0900
parents
children
comparison
equal deleted inserted replaced
30:7b1b25ff010a 31:bd2b07db8917
1
2 * miscellaneous definitions
3 HResMaxX equ 639 high resolution X limit
4 HResMaxY equ 191 high resolution Y limit
5 MousData equ $0008 arbitrary choice for mouse data area ($0008-$000F)
6 PcktSize equ 5 number of bytes in mouse data packet
7 SyncData equ %10000000 initial mouse data byte pattern
8 SyncMask equ %11111000 mask for initial mouse data byte pattern
9
10 * 6551 register definitions
11 org 0
12 DataReg rmb 1 receive/transmit data
13 StatReg rmb 1 IRQ/DSR/DCD/error status (read only)
14 PRstReg equ StatReg programmed reset (write only)
15 CmdReg rmb 1 command (parity/echo/Tx IRQ/Rx IRQ/DTR)
16 CtrlReg rmb 1 control (stop bits/word length/Rx clock/baud rate)
17
18 * Status bit definitions
19 Stat.IRQ equ %10000000 IRQ occurred
20 Stat.DSR equ %01000000 current DSR input level (0=enabled, 1=disabled)
21 Stat.DCD equ %00100000 current DCD input level (0=enabled, 1=disabled)
22 Stat.TxE equ %00010000 Tx register empty
23 Stat.RxF equ %00001000 Rx register full
24 Stat.Ovn equ %00000100 overrun error
25 Stat.Frm equ %00000010 framing error
26 Stat.Par equ %00000001 parity error
27
28 Stat.Err equ Stat.Ovn!Stat.Frm!Stat.Par status error bits
29 Stat.Flp equ $00 all status bits active when set
30 Stat.Msk equ Stat.RxF!Stat.Ovn!Stat.Frm!Stat.Par active IRQ bits
31
32 * Command bit definitions
33 Cmd.Par equ %11100000 see parity table below
34 Cmd.Echo equ %00010000 Rx echo (0=disabled, 1=enabled)
35 Cmd.TxIC equ %00001100 see Tx IRQ control table below
36 Cmd.RxIE equ %00000010 Rx IRQ enable (0=enabled, 1=disabled)
37 Cmd.DTR equ %00000001 DTR output (0=disabled, 1=enabled)
38
39 * parity table
40 Par.None equ %00000000
41 Par.Odd equ %00100000
42 Par.Even equ %01100000
43 Par.Mark equ %10100000
44 Par.Spac equ %11100000
45
46 * Tx IRQ control table
47 TIC.Off equ %00000000 RTS disabled, Tx IRQ disabled
48 TIC.On equ %00000100 RTS enabled, Tx IRQ enabled
49 TIC.RTS equ %00001000 RTS enabled, Tx IRQ disabled
50 TIC.Brk equ %00001100 RTS enabled, Tx line break
51
52 * Control bit definitions
53 Ctl.Stop equ %10000000 stop bits (clear=1, set=2)
54 Ctl.DBit equ %01100000 see data bit table below
55 Ctl.RClk equ %00010000 Rx clock source (0=external, 1=internal)
56 Ctl.Baud equ %00001111 see baud rate table below
57
58 * data bit table
59 DB.5 equ %01100000 five data bits per character
60 DB.6 equ %01000000 six data bits per character
61 DB.7 equ %00100000 seven data bits per character
62 DB.8 equ %00000000 eight data bits per character
63
64 * baud rate table
65 org 0
66 BR.ExClk rmb 1 16x external clock
67 BR.00050 rmb 1 50 baud
68 BR.00075 rmb 1 75 baud
69 BR.00110 rmb 1 109.92 baud
70 BR.00135 rmb 1 134.58 baud
71 BR.00150 rmb 1 150 baud
72 BR.00300 rmb 1 300 baud
73 BR.00600 rmb 1 600 baud
74 BR.01200 rmb 1 1200 baud
75 BR.01800 rmb 1 1800 baud
76 BR.02400 rmb 1 2400 baud
77 BR.03600 rmb 1 3600 baud
78 BR.04800 rmb 1 4800 baud
79 BR.07200 rmb 1 7200 baud
80 BR.09600 rmb 1 9600 baud
81 BR.19200 rmb 1 19200 baud
82
83 * Btn.Cntr bit definitions
84 BC.Butn1 equ %00100000 button #1 (left, 1 = pressed)
85 BC.Butn2 equ %00010000 button #2 (middle, 1 = pressed)
86 BC.Butn3 equ %00001000 button #3 (right, 1 = pressed)
87 BC.RxCnt equ %00000111 Rx data counter
88
89 BC.Butns equ BC.Butn1!BC.Butn2!BC.Butn3 mask for all buttons
90
91
92 * mouse static data area definitions
93 org 0
94 Btn.Cntr rmb 1 mouse button status and Rx data counter
95 Buffer rmb 3 Rx buffer for 1st 3 bytes of XY mouse data (must start at 1,u)
96 CrntXPos rmb 2 mouse X position (0 to HResMaxX)
97 CrntYPos rmb 2 mouse Y position (0 to HResMaxY*2)
98