d1e7a8f7a98277b78dae6373e4502d25d1c54d3b
[its.git] / system / rp10.defs16
1 ;;; Copyright (c) 1999 Massachusetts Institute of Technology
2 ;;;
3 ;;; This program is free software; you can redistribute it and/or
4 ;;; modify it under the terms of the GNU General Public License as
5 ;;; published by the Free Software Foundation; either version 2 of the
6 ;;; License, or (at your option) any later version.
7 ;;;
8 ;;; This program is distributed in the hope that it will be useful,
9 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
10 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 ;;; General Public License for more details.
12 ;;;
13 ;;; You should have received a copy of the GNU General Public License
14 ;;; along with this program; if not, write to the Free Software
15 ;;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
16
17 .AUXIL
18
19 IFNDEF DEFSYM,[ ;ALLOW USER TO USE SYMBOLS IN OTHER WAYS IF HE WISHES.
20                 ;BUT NORMALLY, DEFSYM FOO==BAR DOES FOO==BAR WITH ERROR CHECK.
21 DEFINE DEFSYM X/
22 IRPS Z,,[X]
23 IFNDEF Z,X
24 .ELSE [
25    $$TEM1==Z
26    X
27    IFN Z-$$TEM1,.ERR Z MULTIPLY .QUOTE`.QUOTE/DEFINED/`
28 ]
29 .ISTOP
30 TERMIN TERMIN
31
32 IFLE .MLLIT,.ERR .MLLIT MUST BE 1; SETTING IT TO 1.
33 .MLLIT==1
34 $$TEMP==1
35 ]
36 .ELSE $$TEMP==0
37 \f
38
39 ;DISK PHYSICAL PARAMETERS
40
41 DEFSYM  NCYLS==200.     ;# CYLINDERS NORMALLY USED (RP02)
42 DEFSYM  MCYLS==400.     ;# CYLINDERS NORMALLY USED (RP03)
43 DEFSYM  XCYLS==3        ;# EXTRA CYLINDERS FOR SPARES, HACKS, ETC.
44 DEFSYM  NHEDS==20.      ;# TRACKS/CYLINDER
45 DEFSYM  NSECS==10.      ;# SECTORS/TRK
46 DEFSYM  SECBLK==8       ;# SECTORS/BLOCK
47 DEFSYM  NBLKSC==NHEDS*NSECS/SECBLK      ;# BLKS/CYL
48 DEFSYM  NBLKS==NCYLS*NBLKSC     ;TOTAL # REG BLKS (RP02)
49 DEFSYM  MBLKS==MCYLS*NBLKSC     ;TOTAL # REG BLKS (RP03)
50 DEFSYM  XBLKS==XCYLS*NBLKSC     ;# XTRA BLKS
51 DEFSYM  TBLKS==MBLKS+XBLKS      ;TOTAL BLKS
52
53 DEFSYM  NTUTBL==1               ;1 BLOCK PER TUT
54 DEFSYM  DECADE==20.             ;NUMBER OF BLOCKS TO ALLOCATE AT A TIME
55                                 ;QSWAPA AND QLASTB MUST BE MULTIPLES OF THIS
56 DEFSYM  DPC==250                ;I/O DEVICE NUMBER
57
58 ;DISK COMMANDS
59
60 DEFSYM  DREADC==000000,,        ;READ DATA
61 DEFSYM  DWRITC==100000,,        ;WRITE DATA
62                                 ;OP CODE 2 UNUSED
63 DEFSYM  DWRITH==300000,,        ;WRITE HEADER AND DATA (FORMAT PACK)
64 DEFSYM  DSEEKC==400000,,        ;POSITION HEADS
65 DEFSYM  DEASEC==500000,,        ;CLEAR ATTENTIONS
66 DEFSYM  DNOOPC==600000,,        ;SELECT DRIVE
67 DEFSYM  DRCALC==700000,,        ;RECALIBRATE DRIVE
68
69 ;BYTE POINTERS FOR ABOVE COMMANDS
70
71 DEFSYM  DUNFLD==360300,,        ;UNIT FIELD (ALL COMMANDS)
72 DEFSYM  DCYL==261000,,          ;CYLINDER FIELD (READ,WRIT,WRITH,SEEK)
73 DEFSYM  DCYLXB==200100,,        ;EXTRA BIT OF CYLINDER FIELD FOR RP03
74 DEFSYM  DSURF==210500,,         ;SURFACE FIELD (READ,WRIT,WRITH)
75 DEFSYM  DSECT==140400,,         ;SECTOR FIELD (READ,WRIT,WRITH)
76
77 \f;DATAI FIELDS
78
79
80 DEFSYM  DUNFLI==410300,,        ;UNIT FIELD
81 DEFSYM  DCYLI==311000,,         ;CYLINDER FIELD
82 DEFSYM  DCYLXI==130100,,        ;EXTRA BIT OF CYLINDER FIELD
83
84 DEFSYM  SKINC==100,,            ;SEEK INCOMPLETE
85 DEFSYM  ONCYL==40,,             ;ON CYLINDER
86 DEFSYM  ONLINE==20,,            ;ON LINE
87 DEFSYM  FUNSAF==10,,            ;FILE UNSAFE
88 DEFSYM  NSCHDR==4,,             ;NO SUCH DRIVE
89 DEFSYM  RDONLY==2,,             ;READ ONLY
90 DEFSYM  NOWRIH==1,              ;WRITE HEADER LOCKOUT
91
92 DEFSYM  RP03BT==2000            ;SELECTED DRIVE IS AN RP03
93 DEFSYM  SECTI==140500,,
94
95 DEFSYM  ALLATT==776
96
97 ;CONO INFORMATION
98
99 DEFSYM  DCLEAR==175710          ;CLEAR ALL ERROR CONDITIONS
100
101
102 ;CONI INFORMATION
103
104 DEFSYM  PARER==  4000
105 DEFSYM  SRCER== 40000
106 DEFSYM  HRDER==130000
107 DEFSYM  PROER==402300
108 DEFSYM  WRTER==  1000
109 DEFSYM  ALLER==577300
110 DEFSYM  DONE==10
111 DEFSYM  BUSY==20
112
113 ;DF10 CHANNEL INFORMATION
114
115 DEFSYM  $DFCAD==002600,,        ;CURRENT ADDRESS - 1 (IN CONTROL WORD)
116                                 ;ALSO BITS 4.7-4.9 HAVE 1'S COMPLEMENT OF MA 3.1-3.3
117 DEFSYM  $DFWC==261600,,         ;- WORD COUNT (IN CONTROL WORD)
118 DEFSYM  $DFLAD==002600,,        ;LAST DATA ADDRESS (IN STORED CONTROL WD)
119 DEFSYM  $DFCWA==261600,,        ;LAST CONTROL WORD ADDRESS (IN STORED CONTROL WORD)
120
121
122 IFN $$TEMP,EXPUNG DEFSYM