2624
|
1 IFNE COCO.D-1
|
|
2 COCO.D SET 1
|
|
3
|
|
4 ********************************************************************
|
|
5 * CoCoDefs - NitrOS-9 System Definitions for the Tandy Color Computer
|
|
6 *
|
|
7 * $Id$
|
|
8 *
|
|
9 * Edt/Rev YYYY/MM/DD Modified by
|
|
10 * Comment
|
|
11 * ------------------------------------------------------------------
|
|
12 * 1998/10/13 Boisy G. Pitre
|
|
13 * Added defs by Bruce Isted from his Eliminator archive.
|
|
14 *
|
|
15 * 1998/10/31 Boisy G. Pitre
|
|
16 * Merged cc3global.defs into this file.
|
|
17 *
|
|
18 * 2002/04/30 Boisy G. Pitre
|
|
19 * Merged Level One and Level Two sysdefs.
|
|
20 *
|
|
21 * 2002/06/22 Boisy G. Pitre
|
|
22 * Removed PIA.U4 and PIA.U8, improved comments
|
|
23 *
|
|
24 * 2003/11/05 Robert Gault
|
|
25 * Made changes in window globals and grfdrv memory to handle regW
|
|
26 * in 6809 systems.
|
|
27 *
|
|
28 * 2003/11/30 Boisy G. Pitre
|
|
29 * Statics now are prefaced with V. to identify them easier in source.
|
|
30 *
|
|
31 * 2004/07/18 Boisy G. Pitre
|
|
32 * Moved CoCo 3 Window stuff into cc3iodefs
|
|
33 *
|
|
34 * 2012/02/24 Boisy G. Pitre
|
|
35 * Consolidated all CoCo-specific defs files into here.
|
|
36
|
|
37 NAM CoCoDefs
|
|
38 IFEQ Level-1
|
|
39 TTL NitrOS-9 System Definitions for the Tandy Color Computer
|
|
40 ELSE
|
|
41 IFEQ Level-2
|
|
42 TTL NitrOS-9 Level 2 System Type Definitions
|
|
43 ELSE
|
|
44 IFEQ Level-3
|
|
45 TTL NitrOS-9 Level 3 System Type Definitions
|
|
46 ENDC
|
|
47 ENDC
|
|
48 ENDC
|
|
49
|
|
50
|
|
51 **********************
|
|
52 * CPU Type Definitions
|
|
53 *
|
|
54 Color SET 1
|
|
55 Color3 SET 2
|
|
56 IFEQ Level-1
|
|
57 CPUType SET Color
|
|
58 ELSE
|
|
59 CPUType SET Color3
|
|
60 ENDC
|
|
61
|
|
62
|
|
63 ******************************
|
|
64 * Clock Speed Type Definitions
|
|
65 *
|
|
66 OneMHz EQU 1
|
|
67 TwoMHz EQU 2
|
|
68 IFEQ CPUType-Color
|
|
69 CPUSpeed SET OneMHz
|
|
70 ELSE
|
|
71 CPUSpeed SET TwoMHz
|
|
72 ENDC
|
|
73
|
|
74
|
|
75 **********************************
|
|
76 * Power Line Frequency Definitions
|
|
77 *
|
|
78 Hz50 EQU 1 Assemble clock for 50 hz power
|
|
79 Hz60 EQU 2 Assemble clock for 60 hz power
|
|
80 PwrLnFrq SET Hz60 Set to Appropriate freq
|
|
81
|
|
82
|
|
83 **********************************
|
|
84 * Ticks per second
|
|
85 *
|
|
86 IFEQ PwrLnFrq-Hz50
|
|
87 TkPerSec SET 50
|
|
88 ELSE
|
|
89 TkPerSec SET 60
|
|
90 ENDC
|
|
91
|
|
92
|
|
93 ******************
|
|
94 * ACIA type set up
|
|
95 *
|
|
96 ORG 1
|
|
97 ACIA6850 RMB 1 MC6850 acia.
|
|
98 ACIA6551 RMB 1 SY6551 acia.
|
|
99 ACIA2661 RMB 1 SC2661 acia.
|
|
100 ACIATYPE SET ACIA6551
|
|
101
|
|
102
|
|
103 ****************************************
|
|
104 * Special character Bit position equates
|
|
105 *
|
|
106 SHIFTBIT EQU %00000001
|
|
107 CNTRLBIT EQU %00000010
|
|
108 ALTERBIT EQU %00000100
|
|
109 UPBIT EQU %00001000
|
|
110 DOWNBIT EQU %00010000
|
|
111 LEFTBIT EQU %00100000
|
|
112 RIGHTBIT EQU %01000000
|
|
113 SPACEBIT EQU %10000000
|
|
114
|
|
115
|
|
116 ******************
|
|
117 * Device addresses for miscellaneous hardware
|
|
118 *
|
|
119 A.AciaP SET $FF68 Aciapak Address
|
|
120 A.ModP SET $FF6C ModPak Address
|
|
121 DPort SET $FF40 Disk controller base address
|
|
122 MPI.Slct SET $FF7F Multi-Pak slot select
|
|
123 MPI.Slot SET $03 Multi-Pak default slot
|
|
124 PIA0Base EQU $FF00
|
|
125 PIA1Base EQU $FF20
|
|
126
|
|
127
|
|
128 ******************
|
|
129 * VDG Devices
|
|
130 *
|
|
131 A.TermV SET $FFC0 VDG Term
|
|
132 A.V1 SET $FFC1 Possible additional VDG Devices
|
|
133 A.V2 SET $FFC2
|
|
134 A.V3 SET $FFC3
|
|
135 A.V4 SET $FFC4
|
|
136 A.V5 SET $FFC5
|
|
137 A.V6 SET $FFC6
|
|
138 A.V7 SET $FFC7
|
|
139
|
|
140
|
|
141 IFEQ Level-1
|
|
142
|
|
143 *************************************************
|
|
144 *
|
|
145 * NitrOS-9 Level 1 Section
|
|
146 *
|
|
147 *************************************************
|
|
148
|
|
149 HW.Page SET $FF Device descriptor hardware page
|
|
150
|
|
151 ELSE
|
|
152
|
|
153 *************************************************
|
|
154 *
|
|
155 * NitrOS-9 Level 2 Section
|
|
156 *
|
|
157 *************************************************
|
|
158
|
|
159 ****************************************
|
|
160 * Dynamic Address Translator Definitions
|
|
161 *
|
|
162 DAT.BlCt EQU 8 D.A.T. blocks/address space
|
|
163 DAT.BlSz EQU (256/DAT.BlCt)*256 D.A.T. block size
|
|
164 DAT.ImSz EQU DAT.BlCt*2 D.A.T. Image size
|
|
165 DAT.Addr EQU -(DAT.BlSz/256) D.A.T. MSB Address bits
|
|
166 DAT.Task EQU $FF91 Task Register address
|
|
167 DAT.TkCt EQU 32 Number of DAT Tasks
|
|
168 DAT.Regs EQU $FFA0 DAT Block Registers base address
|
|
169 DAT.Free EQU $333E Free Block Number
|
|
170 DAT.BlMx EQU $3F Maximum Block number
|
|
171 DAT.BMSz EQU $40 Memory Block Map size
|
|
172 DAT.WrPr EQU 0 no write protect
|
|
173 DAT.WrEn EQU 0 no write enable
|
|
174 SysTask EQU 0 Coco System Task number
|
|
175 IOBlock EQU $3F
|
|
176 ROMBlock EQU $3F
|
|
177 IOAddr EQU $7F
|
|
178 ROMCount EQU 1 number of blocks of ROM (High RAM Block)
|
|
179 RAMCount EQU 1 initial blocks of RAM
|
|
180 MoveBlks EQU DAT.BlCt-ROMCount-2 Block numbers used for copies
|
|
181 BlockTyp EQU 1 chk only first bytes of RAM block
|
|
182 ByteType EQU 2 chk entire block of RAM
|
|
183 Limited EQU 1 chk only upper memory for ROM modules
|
|
184 UnLimitd EQU 2 chk all NotRAM for modules
|
|
185 * NOTE: this check assumes any NotRAM with a module will
|
|
186 * always start with $87CD in first two bytes of block
|
|
187 RAMCheck EQU BlockTyp chk only beg bytes of block
|
|
188 ROMCheck EQU Limited chk only upper few blocks for ROM
|
|
189 LastRAM EQU IOBlock maximum RAM block number
|
|
190
|
|
191 ***************************
|
|
192 * Color Computer 3 Specific
|
|
193 *
|
|
194 MappedIO EQU true (Actually False but it works better this way)
|
|
195
|
|
196 ********************
|
|
197 * Hardware addresses
|
|
198 *
|
|
199 GIMERegs EQU $FF00 Base address of GIME registers
|
|
200 IrqEnR EQU $FF92 GIME IRQ enable/status register
|
|
201 BordReg EQU $FF9A Border color register
|
|
202 PalAdr EQU $FFB0 Palette registers
|
|
203
|
|
204 HW.Page SET $07 Device descriptor hardware page
|
|
205
|
|
206 ENDC
|
|
207
|
|
208 ENDC
|
|
209
|