Mercurial > hg > Members > kono > nitros9-code
annotate defs/coco.d @ 2989:5944d79e3fe5
sysgo: Update copyright year
author | Tormod Volden <debian.tormod@gmail.com> |
---|---|
date | Sun, 13 Apr 2014 21:19:25 +0200 |
parents | ca65720ee373 |
children | 1c75a05d3304 |
rev | line source |
---|---|
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 | |
2834
ca65720ee373
Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents:
2624
diff
changeset
|
80 IFNDEF PwrLnFrq |
2624 | 81 PwrLnFrq SET Hz60 Set to Appropriate freq |
2834
ca65720ee373
Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents:
2624
diff
changeset
|
82 ENDC |
2624 | 83 |
84 | |
85 ********************************** | |
86 * Ticks per second | |
87 * | |
2834
ca65720ee373
Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents:
2624
diff
changeset
|
88 IFNDEF TkPerSec |
2624 | 89 IFEQ PwrLnFrq-Hz50 |
90 TkPerSec SET 50 | |
91 ELSE | |
92 TkPerSec SET 60 | |
93 ENDC | |
2834
ca65720ee373
Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents:
2624
diff
changeset
|
94 ENDC |
2624 | 95 |
96 | |
97 ****************** | |
98 * ACIA type set up | |
99 * | |
100 ORG 1 | |
101 ACIA6850 RMB 1 MC6850 acia. | |
102 ACIA6551 RMB 1 SY6551 acia. | |
103 ACIA2661 RMB 1 SC2661 acia. | |
104 ACIATYPE SET ACIA6551 | |
105 | |
106 | |
107 **************************************** | |
108 * Special character Bit position equates | |
109 * | |
110 SHIFTBIT EQU %00000001 | |
111 CNTRLBIT EQU %00000010 | |
112 ALTERBIT EQU %00000100 | |
113 UPBIT EQU %00001000 | |
114 DOWNBIT EQU %00010000 | |
115 LEFTBIT EQU %00100000 | |
116 RIGHTBIT EQU %01000000 | |
117 SPACEBIT EQU %10000000 | |
118 | |
119 | |
120 ****************** | |
121 * Device addresses for miscellaneous hardware | |
122 * | |
123 A.AciaP SET $FF68 Aciapak Address | |
124 A.ModP SET $FF6C ModPak Address | |
125 DPort SET $FF40 Disk controller base address | |
126 MPI.Slct SET $FF7F Multi-Pak slot select | |
127 MPI.Slot SET $03 Multi-Pak default slot | |
128 PIA0Base EQU $FF00 | |
129 PIA1Base EQU $FF20 | |
130 | |
131 | |
132 ****************** | |
133 * VDG Devices | |
134 * | |
135 A.TermV SET $FFC0 VDG Term | |
136 A.V1 SET $FFC1 Possible additional VDG Devices | |
137 A.V2 SET $FFC2 | |
138 A.V3 SET $FFC3 | |
139 A.V4 SET $FFC4 | |
140 A.V5 SET $FFC5 | |
141 A.V6 SET $FFC6 | |
142 A.V7 SET $FFC7 | |
143 | |
144 | |
145 IFEQ Level-1 | |
146 | |
147 ************************************************* | |
148 * | |
149 * NitrOS-9 Level 1 Section | |
150 * | |
151 ************************************************* | |
152 | |
153 HW.Page SET $FF Device descriptor hardware page | |
154 | |
155 ELSE | |
156 | |
157 ************************************************* | |
158 * | |
159 * NitrOS-9 Level 2 Section | |
160 * | |
161 ************************************************* | |
162 | |
163 **************************************** | |
164 * Dynamic Address Translator Definitions | |
165 * | |
166 DAT.BlCt EQU 8 D.A.T. blocks/address space | |
167 DAT.BlSz EQU (256/DAT.BlCt)*256 D.A.T. block size | |
168 DAT.ImSz EQU DAT.BlCt*2 D.A.T. Image size | |
169 DAT.Addr EQU -(DAT.BlSz/256) D.A.T. MSB Address bits | |
170 DAT.Task EQU $FF91 Task Register address | |
171 DAT.TkCt EQU 32 Number of DAT Tasks | |
172 DAT.Regs EQU $FFA0 DAT Block Registers base address | |
173 DAT.Free EQU $333E Free Block Number | |
174 DAT.BlMx EQU $3F Maximum Block number | |
175 DAT.BMSz EQU $40 Memory Block Map size | |
176 DAT.WrPr EQU 0 no write protect | |
177 DAT.WrEn EQU 0 no write enable | |
178 SysTask EQU 0 Coco System Task number | |
179 IOBlock EQU $3F | |
180 ROMBlock EQU $3F | |
181 IOAddr EQU $7F | |
182 ROMCount EQU 1 number of blocks of ROM (High RAM Block) | |
183 RAMCount EQU 1 initial blocks of RAM | |
184 MoveBlks EQU DAT.BlCt-ROMCount-2 Block numbers used for copies | |
185 BlockTyp EQU 1 chk only first bytes of RAM block | |
186 ByteType EQU 2 chk entire block of RAM | |
187 Limited EQU 1 chk only upper memory for ROM modules | |
188 UnLimitd EQU 2 chk all NotRAM for modules | |
189 * NOTE: this check assumes any NotRAM with a module will | |
190 * always start with $87CD in first two bytes of block | |
191 RAMCheck EQU BlockTyp chk only beg bytes of block | |
192 ROMCheck EQU Limited chk only upper few blocks for ROM | |
193 LastRAM EQU IOBlock maximum RAM block number | |
194 | |
195 *************************** | |
196 * Color Computer 3 Specific | |
197 * | |
198 MappedIO EQU true (Actually False but it works better this way) | |
199 | |
200 ******************** | |
201 * Hardware addresses | |
202 * | |
203 GIMERegs EQU $FF00 Base address of GIME registers | |
204 IrqEnR EQU $FF92 GIME IRQ enable/status register | |
205 BordReg EQU $FF9A Border color register | |
206 PalAdr EQU $FFB0 Palette registers | |
207 | |
208 HW.Page SET $07 Device descriptor hardware page | |
209 | |
210 ENDC | |
211 | |
212 ENDC | |
213 |