comparison defs/coco.d @ 2624:b8c7b7fbf3c9

Major changes: o os9defs, rbfdefs, scfdefs now os9.d, rbf.d, and scf.d o vtiodefs now broken into cocovtio.d (for coco and dragon) and atarivtio.d o systype now broken into coco.d, dragon.d and atari.d o all references to the above in other files have changed
author Boisy Pitre <boisy.pitre@nuance.com>
date Fri, 24 Feb 2012 08:51:08 -0600
parents
children ca65720ee373
comparison
equal deleted inserted replaced
2623:b00ba2e2f691 2624:b8c7b7fbf3c9
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