annotate defs/dragon.d @ 2945:582b5b7232c0

pacos9: Rename assembler files to .as and port makefile to lwtools And build pacos9 by default again. Nowadays .a files are library archive files. According to rules.mak, as. files are to be built as object files for later linking with lwlink, similar to old RMA/RLINK.
author Tormod Volden <debian.tormod@gmail.com>
date Sat, 08 Feb 2014 01:03:26 +0100
parents 69c2fc49b5fb
children 1c75a05d3304
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
1 IFNE DRAGON.D-1
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
2 DRAGON.D set 1
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
3
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
4 ********************************************************************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
5 * DgnDefs - Dragon I/O Definitions
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
6 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
7 * $Id$
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
8 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
9 * Edt/Rev YYYY/MM/DD Modified by
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
10 * Comment
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
11 * ------------------------------------------------------------------
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
12 * 2004/11/16 P.Harvey-Smith.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
13 * Fixed the stupid error I made in the defines below that made all the
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
14 * non DPxxxxx defines equal to FF00 !!!
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
15 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
16 * 2005/04/14 P.Harvey-Smith
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
17 * Added non DP defines for ACIA on Dragon 64/Alpha
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
18 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
19 * 2005/04/21 P.Harvey-Smith
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
20 * Fixed errors in defines for WD2797 non-DP registers.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
21 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
22
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
23 nam DgnDefs
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
24 ttl Dragon I/O Definitions
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
25
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
26 *************************************************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
27 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
28 * NitrOS-9 Level 1 Section
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
29 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
30 *************************************************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
31
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
32 HW.Page SET $FF Device descriptor hardware page
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
33
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
34 **********************************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
35 * Power Line Frequency Definitions
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
36 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
37 Hz50 EQU 1 Assemble clock for 50 hz power
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
38 Hz60 EQU 2 Assemble clock for 60 hz power
2834
ca65720ee373 Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents: 2690
diff changeset
39 IFNDEF PwrLnFrq
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
40 PwrLnFrq SET Hz60 Set to Appropriate freq
2834
ca65720ee373 Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents: 2690
diff changeset
41 ENDC
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
42
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
43
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
44 **********************************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
45 * Ticks per second
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
46 *
2834
ca65720ee373 Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents: 2690
diff changeset
47 IFNDEF TkPerSec
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
48 IFEQ PwrLnFrq-Hz50
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
49 TkPerSec SET 50
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
50 ELSE
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
51 TkPerSec SET 60
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
52 ENDC
2834
ca65720ee373 Fix support for 50Hz setting
Tormod Volden <debian.tormod@gmail.com>
parents: 2690
diff changeset
53 ENDC
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
54
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
55
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
56 ****************************************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
57 * Special character Bit position equates
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
58 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
59 SHIFTBIT EQU %00000001
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
60 CNTRLBIT EQU %00000010
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
61 ALTERBIT EQU %00000100
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
62 UPBIT EQU %00001000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
63 DOWNBIT EQU %00010000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
64 LEFTBIT EQU %00100000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
65 RIGHTBIT EQU %01000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
66 SPACEBIT EQU %10000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
67
2690
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
68 ******************
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
69 * VDG Devices
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
70 *
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
71 A.TermV SET $FFC0 VDG Term
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
72 A.V1 SET $FFC1 Possible additional VDG Devices
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
73 A.V2 SET $FFC2
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
74 A.V3 SET $FFC3
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
75 A.V4 SET $FFC4
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
76 A.V5 SET $FFC5
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
77 A.V6 SET $FFC6
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
78 A.V7 SET $FFC7
6e40b043d3e0 Removed coco port, added coco1 and coco2 ports.
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2670
diff changeset
79
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
80 ********************
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
81 * VTIO Static Memory
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
82 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
83 * Definitions for ports on Dragon 32/64/Alpha.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
84 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
85 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
86 IO equ $ff00 IO page on Dragon
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
87
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
88 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
89 * Most of these symbols will be defined twice, as some
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
90 * of the Dragon code, sets DP=$FF, and uses direct page
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
91 * addressing to access the io ports, whilst some of it
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
92 * uses absolute addressing.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
93 * The versions starting DP must be used with DP=$FF.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
94 *
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
95
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
96 * PIA 0 and 1 standard on all Dragons.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
97 DPPIA0DA EQU $00 Side A Data/DDR
2932
69c2fc49b5fb defs/dragon.d: Correct PIA0Base and PIA1Base
Tormod Volden <debian.tormod@gmail.com>
parents: 2834
diff changeset
98 PIA0Base EQU DPPIA0DA+IO
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
99 DPPIA0CRA EQU $01 Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
100 DPPIA0DB EQU $02 Side B Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
101 DPPIA0CRB EQU $03 Side B Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
102
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
103 PIA0DA EQU DPPIA0DA+IO Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
104 PIA0CRA EQU DPPIA0CRA+IO Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
105 PIA0DB EQU DPPIA0DB+IO Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
106 PIA0CRB EQU DPPIA0CRB+IO Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
107
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
108 DPPIA1DA EQU $20 Side A Data/DDR
2932
69c2fc49b5fb defs/dragon.d: Correct PIA0Base and PIA1Base
Tormod Volden <debian.tormod@gmail.com>
parents: 2834
diff changeset
109 PIA1Base EQU DPPIA1DA+IO
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
110 DPPIA1CRA EQU $21 Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
111 DPPIA1DB EQU $22 Side B Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
112 DPPIA1CRB EQU $23 Side B Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
113
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
114 PIA1DA EQU DPPIA1DA+IO Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
115 PIA1CRA EQU DPPIA1CRA+IO Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
116 PIA1DB EQU DPPIA1DB+IO Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
117 PIA1CRB EQU DPPIA1CRB+IO Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
118
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
119 * Dragon Alpha has a third PIA at $FF24.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
120 DPPIA2DA EQU $24 Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
121 DPPIA2CRA EQU $25 Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
122 DPPIA2DB EQU $26 Side B Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
123 DPPIA2CRB EQU $27 Side B Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
124
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
125 PIA2DA EQU DPPIA2DA+IO Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
126 PIA2CRA EQU DPPIA2CRA+IO Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
127 PIA2DB EQU DPPIA2DB+IO Side A Data/DDR
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
128 PIA2CRB EQU DPPIA2CRB+IO Side A Control.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
129
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
130 * WD2797 Floppy disk controler, used in Alpha Note registers in reverse order !
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
131 DPCmdRegA EQU $2F command/status
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
132 DPTrkRegA EQU $2E Track register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
133 DPSecRegA EQU $2D Sector register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
134 DPDataRegA EQU $2C Data register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
135
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
136 CmdRegA EQU DPCMDREGA+IO command/status
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
137 TrkRegA EQU DPTRKREGA+IO Track register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
138 SecRegA EQU DPSECREGA+IO Sector register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
139 DataRegA EQU DPDATAREGA+IO Data register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
140
2670
020e7592f7f2 Fix build with lwasm
William Astle <lost@l-w.ca>
parents: 2624
diff changeset
141 DPort SET DataRegA Disk controller base address
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
142
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
143 * Constants for Alpha AY-8912 sound chip, which is used to control
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
144 * Drive select and motor on the Alpha
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
145 AYIOREG EQU $0E AY-8912, IO Register number.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
146 AYIdle EQU $00 Make AY Idle.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
147 AYWriteReg EQU $01 Write AY Register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
148 AYReadReg EQU $02 Read AY Register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
149 AYREGLatch EQU $03 Latch register into AY
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
150
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
151 DSMask EQU $03 Drive select mask.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
152 MotorMask EQU $04 Motor enable mask
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
153 DDENMask EQU $08 DDEN Mask
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
154 ENPMask EQU $10 Enable Precomp mask
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
155 NMIMask EQU $20 NMI enable Mask
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
156
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
157 * Dragon 64/Alpha Serial port.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
158 DPAciaData EQU $04 ACIA Rx/Tx Register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
159 DPAciaStat EQU $05 ACIA status register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
160 DPAciaCmd EQU $06 ACIA command register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
161 DPAciaCtrl EQU $07 ACIA control register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
162
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
163 AciaData EQU DPAciaData+IO ACIA Rx/Tx Register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
164 AciaStat EQU DPAciaStat+IO ACIA status register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
165 AciaCmd EQU DPAciaCmd+IO ACIA command register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
166 AciaCtrl EQU DPAciaCtrl+IO ACIA control register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
167
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
168 * DragonDos Cartrage IO for WD2797
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
169 * WD2797 Floppy disk controler, used in DragonDos.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
170 DPCmdRegD EQU $40 command/status
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
171 DPTrkRegD EQU $41 Track register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
172 DPSecRegD EQU $42 Sector register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
173 DPDataRegD EQU $43 Data register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
174
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
175 CmdRegD EQU DPCMDREGD+IO command/status
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
176 TrkRegD EQU DPTRKREGD+IO Track register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
177 SecRegD EQU DPSECREGD+IO Sector register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
178 DataRegD EQU DPDATAREGD+IO Data register
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
179
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
180 DPDSKCTL EQU $48 Disk DS/motor control reg
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
181 DSKCTL EQU DPDSKCTL+IO
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
182
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
183 * Disk IO bitmasks (DragonDos).
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
184 NMIEnD EQU %00100000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
185 WPCEnD EQU %00010000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
186 SDensEnD EQU %00001000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
187 MotorOnD EQU %00000100
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
188 Drive0D EQU %00000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
189 Drive1D EQU %00000001
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
190 Drive2D EQU %00000010
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
191 Drive3D EQU %00000011
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
192 DDosDriveMask EQU %00000011 Mask out all non drive select bits
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
193 DDosCtrlMask EQU %11111100 Mask in all non drive select bits
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
194
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
195
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
196 * Disk IO bitmasks (Dragon Alpha).
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
197 PIANMIEnA EQU %00001000 PIA2, CA2, used to enable/disable NMI
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
198 PIANMIDisA EQU %11110111 Bitmask to force CA2 off, and disable NMI
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
199
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
200 NMIEnA EQU %10000000 Flag to enable disable NMI, passed to AlphaDskCtl
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
201 WPCEnA EQU %01000000 According to circuit trace by R.Harding.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
202 SDensEnA EQU %00100000 DDen, from circuit trace on R.Harding's machine.
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
203 MotorOnA EQU %00010000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
204 Drive0A EQU %00000001
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
205 Drive1A EQU %00000010
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
206 Drive2A EQU %00000100
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
207 Drive3A EQU %00001000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
208 AlphaDrvMask EQU %00001111 Mask out all non drive select bits
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
209 AlphaCtrlMask EQU %11110000 Mask in all non drive select bits
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
210
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
211 Mask58 EQU %01111111 And mask to make sure 5.25" clock selected by WD2797
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
212
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
213 NMICA2En EQU $3C Value for PIA CRA to enable NMI
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
214 NMICA2Dis EQU $34 Value for PIA CRA to disable NMI
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
215
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
216 * Disk Commands
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
217 FrcInt EQU %11010000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
218 ReadCmnd EQU %10001000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
219 RestCmnd EQU %00000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
220 SeekCmnd EQU %00010000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
221 StpICmnd EQU %01000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
222 WritCmnd EQU %10101000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
223 WtTkCmnd EQU %11110000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
224 Sid2Sel EQU %00000010
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
225
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
226 * Disk Status Bits
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
227 BusyMask EQU %00000001
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
228 LostMask EQU %00000100
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
229 ErrMask EQU %11111000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
230 CRCMask EQU %00001000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
231 RNFMask EQU %00010000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
232 RTypMask EQU %00100000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
233 WPMask EQU %01000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
234 NotRMask EQU %10000000
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
235
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
236 DensMask EQU %00000001
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
237 T80Mask EQU %00000010
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
238
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents:
diff changeset
239 ENDC