Mercurial > hg > Members > kono > nitros9-code
comparison defs/mc09.d @ 3202:04f3ef62b7bb
mc09: revise defs file to remove stuff that's not needed by this port
author | Neal Crook <foofoobedoo@gmail.com> |
---|---|
date | Sun, 04 Jun 2017 17:52:41 +0100 |
parents | f248546159b7 |
children |
comparison
equal
deleted
inserted
replaced
3201:e20add280253 | 3202:04f3ef62b7bb |
---|---|
51 ENDC | 51 ENDC |
52 ENDC | 52 ENDC |
53 ENDC | 53 ENDC |
54 | 54 |
55 | 55 |
56 ********************** | 56 ******************************************************************** |
57 * CPU Type Definitions | 57 * CPU Type Definitions |
58 * | 58 * |
59 Color SET 1 | 59 Color SET 1 |
60 Color3 SET 2 | 60 Color3 SET 2 |
61 IFEQ Level-1 | 61 IFEQ Level-1 |
63 ELSE | 63 ELSE |
64 CPUType SET Color3 | 64 CPUType SET Color3 |
65 ENDC | 65 ENDC |
66 | 66 |
67 | 67 |
68 ****************************** | 68 ******************************************************************** |
69 * Clock Speed Type Definitions | 69 * Clock Speed Type Definitions |
70 * | 70 * |
71 OneMHz EQU 1 | 71 OneMHz EQU 1 |
72 TwoMHz EQU 2 | 72 TwoMHz EQU 2 |
73 IFEQ CPUType-Color | 73 IFEQ CPUType-Color |
75 ELSE | 75 ELSE |
76 CPUSpeed SET TwoMHz | 76 CPUSpeed SET TwoMHz |
77 ENDC | 77 ENDC |
78 | 78 |
79 | 79 |
80 ********************************** | 80 ******************************************************************** |
81 * Power Line Frequency Definitions | 81 * Power Line Frequency Definitions |
82 * Multicomp09 has no dependency on power line frequency but setting | 82 * Multicomp09 has no dependency on power line frequency but setting |
83 * it to Hz50 is the simplest way to make TkPerSec 50, which is important | 83 * it to Hz50 is the simplest way to make TkPerSec 50, which is important |
84 * [NAC HACK 2015Aug31] actually no need to change it - gets applied at | 84 * [NAC HACK 2015Aug31] actually no need to change it - gets applied at |
85 * command line in modules/makefile to generate a 50Hz and 60Hz version. | 85 * command line in modules/makefile to generate a 50Hz and 60Hz version. |
89 IFNDEF PwrLnFrq | 89 IFNDEF PwrLnFrq |
90 PwrLnFrq SET Hz50 Set to Appropriate freq | 90 PwrLnFrq SET Hz50 Set to Appropriate freq |
91 ENDC | 91 ENDC |
92 | 92 |
93 | 93 |
94 ********************************** | 94 ******************************************************************** |
95 * Ticks per second | 95 * Ticks per second |
96 * | 96 * |
97 IFNDEF TkPerSec | 97 IFNDEF TkPerSec |
98 IFEQ PwrLnFrq-Hz50 | 98 IFEQ PwrLnFrq-Hz50 |
99 TkPerSec SET 50 | 99 TkPerSec SET 50 |
101 TkPerSec SET 60 | 101 TkPerSec SET 60 |
102 ENDC | 102 ENDC |
103 ENDC | 103 ENDC |
104 | 104 |
105 | 105 |
106 ****************** | 106 ******************************************************************** |
107 * ACIA type set up | |
108 * | |
109 * [NAC HACK 2015Sep06] is this used anywhere? | |
110 ORG 1 | |
111 ACIA6850 RMB 1 MC6850 acia. | |
112 ACIA6551 RMB 1 SY6551 acia. | |
113 ACIA2661 RMB 1 SC2661 acia. | |
114 ACIATYPE SET ACIA6551 | |
115 | |
116 | |
117 **************************************** | |
118 * Special character Bit position equates | 107 * Special character Bit position equates |
119 * | 108 * |
109 * [NAC HACK 2017Jun04] used in level1/modules/sysgo.asm | |
120 SHIFTBIT EQU %00000001 | 110 SHIFTBIT EQU %00000001 |
121 CNTRLBIT EQU %00000010 | |
122 ALTERBIT EQU %00000100 | |
123 UPBIT EQU %00001000 | |
124 DOWNBIT EQU %00010000 | |
125 LEFTBIT EQU %00100000 | |
126 RIGHTBIT EQU %01000000 | |
127 SPACEBIT EQU %10000000 | |
128 | 111 |
129 | 112 |
130 ******************************************************************** | 113 ******************************************************************** |
131 * Multicomp09 Interrupts: | 114 * Multicomp09 Interrupts: |
132 * | 115 * |
241 MMU_TR0FRT EQU (MMUADR_MMUEN) | 224 MMU_TR0FRT EQU (MMUADR_MMUEN) |
242 MMU_TR1FRT EQU (MMUADR_MMUEN|MMUADR_TR) | 225 MMU_TR1FRT EQU (MMUADR_MMUEN|MMUADR_TR) |
243 | 226 |
244 | 227 |
245 ******************************************************************** | 228 ******************************************************************** |
246 ******************************************************************** | |
247 * Coco stuff that's needed to allow other files to compile | 229 * Coco stuff that's needed to allow other files to compile |
248 * [NAC HACK 2015Oct17] need to get rid of this eventually. | 230 |
249 | 231 * [NAC HACK 2017Jun04] needed by level1/modules/boot_sdc.asm |
250 A.AciaP SET $FF68 Aciapak Address | |
251 A.ModP SET $FF6C ModPak Address | |
252 DPort SET $FF40 Disk controller base address | 232 DPort SET $FF40 Disk controller base address |
253 MPI.Slct SET $FF7F Multi-Pak slot select | 233 * [NAC HACK 2017Jun04] needed by level1/modules/sysgo.asm |
254 MPI.Slot SET $03 Multi-Pak default slot | |
255 PIA0Base EQU $FF00 | 234 PIA0Base EQU $FF00 |
256 PIA1Base EQU $FF20 | 235 PIA1Base EQU $FF20 |
257 | 236 |
258 | 237 |
259 ****************** | 238 ******************************************************************** |
260 * VDG Devices | 239 * Needed for building generic tools (eg cobbler.asm) |
261 * | |
262 A.TermV SET $FFC0 VDG Term | |
263 A.V1 SET $FFC1 Possible additional VDG Devices | |
264 A.V2 SET $FFC2 | |
265 A.V3 SET $FFC3 | |
266 A.V4 SET $FFC4 | |
267 A.V5 SET $FFC5 | |
268 A.V6 SET $FFC6 | |
269 A.V7 SET $FFC7 | |
270 | |
271 *********************************** | |
272 * Needed for building generic tools | |
273 Bt.Size EQU $1080 Maximum size of bootfile | 240 Bt.Size EQU $1080 Maximum size of bootfile |
274 Bt.Track EQU 34 Boot track | 241 Bt.Track EQU 34 Boot track |
275 Bt.Sec EQU 0 Start LSN of boot area on boot track | 242 Bt.Sec EQU 0 Start LSN of boot area on boot track |
276 | 243 |
277 | 244 |
278 IFEQ Level-1 | 245 IFEQ Level-1 |
279 | 246 |
280 ************************************************* | 247 ******************************************************************** |
281 * | 248 * |
282 * NitrOS-9 Level 1 Section | 249 * NitrOS-9 Level 1 Section |
283 * | 250 * |
284 ************************************************* | 251 ******************************************************************** |
285 | 252 |
286 * Needed for boot | 253 * Needed for boot |
287 Bt.Start EQU $EE00 Address of boot track in memory | 254 Bt.Start EQU $EE00 Address of boot track in memory |
288 | 255 |
289 HW.Page SET $FF Device descriptor hardware page | 256 HW.Page SET $FF Device descriptor hardware page |
290 | 257 |
291 ELSE | 258 ELSE |
292 | 259 |
293 ************************************************* | 260 ******************************************************************** |
294 * | 261 * |
295 * NitrOS-9 Level 2 Section | 262 * NitrOS-9 Level 2 Section |
296 * | 263 * |
297 ************************************************* | 264 ******************************************************************** |
298 | 265 |
299 * Needed for boot | 266 * Needed for boot |
300 Bt.Start EQU $ED00 Address of boot track in memory | 267 Bt.Start EQU $ED00 Address of boot track in memory |
301 | 268 |
302 **************************************** | 269 ******************************************************************** |
303 * Dynamic Address Translator Definitions | 270 * Dynamic Address Translator Definitions |
304 * | 271 * |
305 DAT.BlCt EQU 8 D.A.T. blocks/address space | 272 DAT.BlCt EQU 8 D.A.T. blocks/address space |
306 DAT.BlSz EQU (256/DAT.BlCt)*256 D.A.T. block size | 273 DAT.BlSz EQU (256/DAT.BlCt)*256 D.A.T. block size |
307 DAT.ImSz EQU DAT.BlCt*2 D.A.T. Image size | 274 DAT.ImSz EQU DAT.BlCt*2 D.A.T. Image size |
313 DAT.BlMx EQU $3F Maximum Block number | 280 DAT.BlMx EQU $3F Maximum Block number |
314 DAT.BMSz EQU $40 Memory Block Map size | 281 DAT.BMSz EQU $40 Memory Block Map size |
315 DAT.WrPr EQU 0 no write protect | 282 DAT.WrPr EQU 0 no write protect |
316 DAT.WrEn EQU 0 no write enable | 283 DAT.WrEn EQU 0 no write enable |
317 SysTask EQU 0 Coco System Task number | 284 SysTask EQU 0 Coco System Task number |
318 IOBlock EQU $3F | |
319 ROMBlock EQU $3F | |
320 IOAddr EQU $7F | 285 IOAddr EQU $7F |
321 ROMCount EQU 1 number of blocks of ROM (High RAM Block) | 286 ROMCount EQU 1 number of blocks of ROM (High RAM Block) |
322 RAMCount EQU 1 initial blocks of RAM | 287 RAMCount EQU 1 initial blocks of RAM |
323 MoveBlks EQU DAT.BlCt-ROMCount-2 Block numbers used for copies | 288 MoveBlks EQU DAT.BlCt-ROMCount-2 Block numbers used for copies |
324 BlockTyp EQU 1 chk only first bytes of RAM block | 289 BlockTyp EQU 1 chk only first bytes of RAM block |
327 UnLimitd EQU 2 chk all NotRAM for modules | 292 UnLimitd EQU 2 chk all NotRAM for modules |
328 * NOTE: this check assumes any NotRAM with a module will | 293 * NOTE: this check assumes any NotRAM with a module will |
329 * always start with $87CD in first two bytes of block | 294 * always start with $87CD in first two bytes of block |
330 RAMCheck EQU BlockTyp chk only beg bytes of block | 295 RAMCheck EQU BlockTyp chk only beg bytes of block |
331 ROMCheck EQU Limited chk only upper few blocks for ROM | 296 ROMCheck EQU Limited chk only upper few blocks for ROM |
332 LastRAM EQU IOBlock maximum RAM block number | 297 |
333 | 298 ******************************************************************** |
334 *************************** | |
335 * Color Computer 3 Specific | |
336 * | |
337 MappedIO EQU true (Actually False but it works better this way) | |
338 | |
339 ******************** | |
340 * Hardware addresses | 299 * Hardware addresses |
341 * | 300 * |
342 GIMERegs EQU $FF00 Base address of GIME registers | |
343 IrqEnR EQU $FF92 GIME IRQ enable/status register | |
344 BordReg EQU $FF9A Border color register | |
345 PalAdr EQU $FFB0 Palette registers | |
346 | 301 |
347 HW.Page SET $07 Device descriptor hardware page | 302 HW.Page SET $07 Device descriptor hardware page |
348 | 303 |
349 * KrnBlk defines the block number of the 8K RAM block that is mapped to | 304 * KrnBlk defines the block number of the 8K RAM block that is mapped to |
350 * the top of CPU address space ($E000-$FFFF) for the system process, and | 305 * the top of CPU address space ($E000-$FFFF) for the system process, and |