annotate defs/rbsuper.d @ 3277:33d539c123cf

d64: Add mb.ddisk script for making Dragon boot floppy At least it works in XRoar when running off a 80d floppy and preparing a new 40d boot floppy in the second drive. The "format" must be run manually for now since there is not enough memory to run it from inside the script...
author Tormod Volden <debian.tormod@gmail.com>
date Sat, 07 Mar 2020 23:15:05 +0100
parents 6bd6e348665d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2590
diff changeset
1 IFNE RBSUPER.D-1
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2590
diff changeset
2 RBSUPER.D SET 1
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2590
diff changeset
3
2590
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
4 ********************************************************************
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
5 * rbsuper.d - rbsuper definitions
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
6 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
7 * $Id$
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
8 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
9 * (C) 2004 Boisy G. Pitre - Licensed to Cloud-9
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
10 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
11 * These definitions make up the static storage environment for the
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
12 * rbsuper driver. Low level drivers share these variables with
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
13 * rbsuper, and also have an area reserved exclusively for their use.
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
14 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
15 * Edt/Rev YYYY/MM/DD Modified by
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
16 * Comment
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
17 * ------------------------------------------------------------------
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
18 * 2004/04/10 Boisy G. Pitre
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
19 * Created.
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
20 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
21 * 2005/11/27 Boisy G. Pitre
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
22 * Moved SCSI base addresses and I/O offsets to here.
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
23 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
24 * 2005/12/13 Boisy G. Pitre
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
25 * Employed a "trick" whereby driver's U is pointed UOFFSET bytes
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
26 * into the static storage for faster, smaller code generation.
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
27 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
28 * 2005/12/13 Boisy G. Pitre
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
29 * Rearranged order of driver statics for smaller code size
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
30
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
31 * Interface Address
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
32 SDAddr SET $FF00
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
33 SDMPI SET $FF
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
34
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
35 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
36 * IT.DNS Definitions for all Low Level Drivers
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
37 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
38 DNS.HDB EQU %00001000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
39
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
40 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
41 * IT.DNS Definitions for Low Level SCSI Driver
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
42 *
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
43 DNS.TURBO EQU %00010000
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
44
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
45 maxcache SET 2048
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
46 DrvCount EQU 8
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
47 llreserve EQU 64
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
48
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
49 UOFFSET EQU DRVBEG+(DRVMEM*DrvCount)
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
50
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
51 ORG 0
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
52 V.LLSema RMB 1 low-level semaphore variable
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
53 V.LastDrv RMB 1 last drive to access cache
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
54 V.PhysSect RMB 3 physical (HW) sector
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
55 V.LogSect RMB 3 logical (256 byte) sector
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
56 V.SectSize RMB 1 sector size
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
57 V.SectCnt RMB 1 number of hw sectors to read from interface
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
58 V.Log2Phys RMB 1 number of logical (256) byte sectors to 1 physical sector
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
59 V.CchAddr RMB 2 address of cache in system memory
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
60 V.CchSize RMB 2 size of cache in bytes
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
61 V.CchPSpot RMB 2 pointer to target physical sector in cache
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
62 V.CchLSpot RMB 2 pointer to target logical sector in cache
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
63 V.CchDirty RMB 1 cache dirty flag (0 = cache is stable, !0 = cache is dirty)
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
64 V.CchBase RMB 3 logical sector at start of cache
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
65 V.HDBDrive RMB 1 IT.STP (used as HDB-DOS drive number if HDB-DOS partition)
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
66 V.HDBPart RMB 1 HDB-DOS partition flag (0 = not HDB-DOS partition, !0 = is)
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
67 V.SSCache RMB DrvCount sector size cache table for each drive
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
68 V.LLAddr RMB 2 low level module address
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
69 V.LLInit RMB 2 low level init entry point
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
70 V.LLRead RMB 2 low level read entry point
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
71 V.LLWrite RMB 2 low level write entry point
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
72 V.LLGtSt RMB 2 low level getstat entry point
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
73 V.LLStSt RMB 2 low level setstat entry point
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
74 V.LLTerm RMB 2 low level term entry point
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
75 * Low Level Driver Memory starts here
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
76 V.LLMem EQU . start of low level driver memory
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
77 RMB llreserve reserved area... low level driver uses this as it wants
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
78 V.LLMemSz EQU .-V.LLMem
2730
6bd6e348665d Working on cloned default branch, pulled 2012/11/03
gheskett@wdtv.com
parents: 2624
diff changeset
79 * Note: we trick rbsuper too so that it thinks its static storage starts at
2590
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
80 * zero when it really starts beyond DRVBEG+(DRVMEM*DrvCount).
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
81 RMB UOFFSET
17d43fd29ee2 Integration of SuperDriver
boisy
parents:
diff changeset
82 V.RBSuper EQU . end of RBSuper's (and ll driver's) memory requirements
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2590
diff changeset
83
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2590
diff changeset
84 ENDC
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2590
diff changeset
85