Consolidate license copies
[its.git] / system / rm80.defs4
1 ; -*- Midas -*-
2 ;;; Copyright (c) 1999 Massachusetts Institute of Technology
3 ;;;
4 ;;; This program is free software; you can redistribute it and/or
5 ;;; modify it under the terms of the GNU General Public License as
6 ;;; published by the Free Software Foundation; either version 3 of the
7 ;;; License, or (at your option) any later version.
8 ;;;
9 ;;; This program is distributed in the hope that it will be useful,
10 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 ;;; General Public License for more details.
13 ;;;
14 ;;; You should have received a copy of the GNU General Public License
15 ;;; along with this program; if not, write to the Free Software
16 ;;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18 .AUXIL
19
20 ; Canonical symbol definition macro, FOO==BAR with error check.
21 IFNDEF DEFSYM,[ 
22 DEFINE DEFSYM X/
23 IRPS Z,,[X]
24 IFNDEF Z,X
25 .ELSE [ $$TEM1==Z
26         X
27         IFN Z-$$TEM1,.ERR Z MULTIPLY .QUOTE`.QUOTE/DEFINED/`
28       ]
29 .ISTOP
30 TERMIN TERMIN
31 $$TEMP==1
32 ] ;IFNDEF DEFSYM
33 .ELSE, $$TEMP==0
34
35 ; Disk Physical Parameters for RM80
36
37 ; The RM80 actually has 561 cylinders, but it appears that the onboard
38 ; microprocessor diagnostics may scribble on the last two cylinders, so
39 ; we just leave them out of this.
40
41 DEFSYM  NCYLS==556.             ; # CYLINDERS NORMALLY USED
42 DEFSYM  XCYLS==559.-NCYLS       ; # EXTRA CYLINDERS FOR SPARES, HACKS, ETC.
43 DEFSYM  NHEDS==14.              ; # TRACKS/CYLINDER
44 DEFSYM  NSECS==30.              ; # SECTORS/TRK
45 DEFSYM  SECBLK==8               ; # SECTORS/BLOCK
46 DEFSYM  NBLKSC==NHEDS*NSECS/SECBLK      ; # BLKS/CYL
47 DEFSYM  NBLKS==NCYLS*NBLKSC     ; TOTAL # REG BLKS
48 DEFSYM  XBLKS==XCYLS*NBLKSC     ; # XTRA BLKS
49 DEFSYM  TBLKS==NBLKS+XBLKS      ; TOTAL BLKS
50
51 ; TUTs are 3 bits per disk block, or 12*1024=12288 disk blocks per TUT
52 ; block.  TBLKS works out to be 29172, so it takes 3 blocks to TUT an
53 ; RM80.  This leaves plenty of room for the extra words at the beginning of
54 ; the TUT.
55 DEFSYM  NTUTBL==3               ; 3 BLOCKS PER TUT
56
57 ; Allocate whole cylinders at a time.
58 DEFSYM  DECADE==NBLKSC          ; NUMBER OF BLOCKS TO ALLOCATE AT A TIME.
59                                 ; QSWAPA AND QLASTB MUST BE MULTIPLES OF THIS.
60
61 IFN $$TEMP,EXPUNG DEFSYM