-
Notifications
You must be signed in to change notification settings - Fork 82
/
romtbl.sf
81 lines (81 loc) · 1.78 KB
/
romtbl.sf
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
.PAGE 'ROMTBL'
DIRTRK .BYT 18 ;DIRECTORY TRACK #
BAMSIZ .BYT 4 ;# BYTES/TRACK IN BAM
MAPOFF .BYT 4 ;OFFSET OF BAM IN SECTOR
DSKNAM .BYT $90 ;OFFSET OF DISK NAME IN BAM SECTOR
;
; COMMAND SEARCH TABLE
CMDTBL .BYT 'VIDMBUP&CRSN'
; 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 <UTLODR
.BYT <DSKCPY
.BYT <RENAME,<SCRTCH,<NEW
*=CJUMPL+NCMDS
; JUMP TABLE HIGH
CJUMPH .BYT >VERDIR,>INTDRV,>DUPLCT
.BYT >MEM,>BLOCK,>USER
.BYT >RECORD
.BYT >UTLODR
.BYT >DSKCPY
.BYT >RENAME,>SCRTCH,>NEW
*=CJUMPH+NCMDS
VAL=0 ;VALIDATE (VERIFY) CMD #
.SKIP
; STRUCTURE IMAGES FOR CMDS
PCMD =9
.BYT %01010001 ; DSKCPY
STRUCT =*-PCMD ; CMDS NOT PARSED
.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'
LEDMSK .BYT LED0,LED1
;
; ERROR FLAG VARS FOR BIT
;
ER00 .BYT 0
ER0 .BYT $3F
ER1 .BYT $7F
ER2 .BYT $BF
ER3 .BYT $FF
;
NUMSEC ;(4) SECTORS/TRACK
.BYTE 17,18,19,21
VERNUM .BYT FM4040 ;FORMAT TYPE
NZONES .BYT 4 ;# OF ZONES
MAXTRK ;MAXIMUM TRACK # +1
TRKNUM ;ZONE BOUNDARIES TRACK NUMBERS
.BYTE 36,31,25,18
OFFSET ;FOR RECOVERY
.BYTE 1,$FF,$FF,1,0
;
BUFIND
.BYTE $03,$04,$05,$06,$07,$07
;
.SKIP
.END