-
Notifications
You must be signed in to change notification settings - Fork 84
/
romtbl
86 lines (86 loc) · 2.02 KB
/
romtbl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
.PAGE 'ROMTBL'
DIRTRK .BYT 39 ;DIRECTORY TRACK #
BAMSIZ .BYT 5 ;# BYTES/TRACK IN BAM
MAPOFF .BYT 6 ;OFFSET OF BAM IN SECTOR
DSKNAM .BYT 6 ;OFFSET OF DISK NAME IN BAM SECTOR
BAMTRK .BYT 38,38,39 ;BAM LINK TABLE
BAMSEC .BYT 0,3,1 ;BAM LINK TABLE
;
;
; COMMAND SEARCH TABLE
CMDTBL .BYT 'VIDMBUPC&RSN'
; VALIDATE-DIR INIT-DRIVE DUPLICATE
; MEMORY-OP BLOCK-OP USER
; POSITION DSKCPY UTLODR RENAME SCRATCH NEW
NCMDS =*-CMDTBL
; JUMP TABLE LOW
CJUMPL .BYT <VERDIR,<INTDRV,<DUPLCT
.BYT <MEM,<BLOCK,<USER
.BYT <RECORD
.BYT <DSKCPY
.BYT <UTLODR,<RENAME,<SCRTCH,<NEW
*=CJUMPL+NCMDS
; JUMP TABLE HIGH
CJUMPH .BYT >VERDIR,>INTDRV,>DUPLCT
.BYT >MEM,>BLOCK,>USER
.BYT >RECORD
.BYT >DSKCPY
.BYT >UTLODR,>RENAME,>SCRTCH,>NEW
*=CJUMPH+NCMDS
VAL=0 ;VALIDATE (VERIFY) CMD #
.SKIP
; STRUCTURE IMAGES FOR CMDS
PCMD =8
.BYT %01010001 ; DSKCPY
STRUCT =*-PCMD ; CMDS NOT PARSED
.BYT 0 ; UTLODR
.BYT %11011101 ; RENAME
.BYT %00011100 ; SCRATCH
.BYT %10011110 ; NEW
LDCMD =*-STRUCT ; LOAD CMD IMAGE
.BYT %00011100 ; LOAD
; --- ---
; PGDRPGDR
; FS1 FS2
.SKIP
; BIT REPS: NOT PATTERN
; NOT GREATER THAN ONE FILE
; NOT DEFAULT DRIVE(S)
; REQUIRED FILENAME
.SKIP
MODLST .BYT 'RWAM' ; MODE TABLE
NMODES =*-MODLST
;FILE TYPE TABLE
TPLST .BYT 'DSPUL'
TYPLST .BYT 'DSPUR' ;DEL, SEQ, PROG, USER, RELATIVE
NTYPES =*-TYPLST
TP1LST .BYT 'EERSE'
TP2LST .BYT 'LQGRL'
;
; ERROR FLAG VARS FOR BIT
;
ER00 .BYT 0
ER0 .BYT $3F
ER1 .BYT $7F
ER2 .BYT $BF
ER3 .BYT $FF
;
IPBM .BYTE $41,$42
DRIVER
;NUMSEC (TAB1): (4) SECTORS/TRACK
.BYTE 23,25,27,29
;GAP1: HEADER GAP, GAP2: TAIL GAP (FORMAT), VERNUM: FORMAT TYPE
.BYTE 20, 11, FM8050
;ACTJOB, PHASE(2), STPTRK, NZONES
.BYTE 0, 0,0, 4, 4
;SYNDLY, WPSW(2), LWPT(2), PBI, CFLG2, NSIDES
.BYTE 3, 1,1, 0,0, 7, 0, 1
;UNUSED(3)
.BYTE 0,0,0
;TRKNUM (TAB3): ZONE BOUNDARIES TRACK NUMBERS
.BYTE 78,65,54,40, 0,0,0,0
;OFFSET: FOR RECOVERY
.BYTE 1,$FF,$FF,1,2,$FE,$FE,2,0
CTBSIZ =*-DRIVER
.SKIP
.END