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