1
0
mirror of https://github.com/PDP-10/its.git synced 2026-03-08 03:49:36 +00:00
Files
PDP-10.its/src/system/t300.defs7

96 lines
3.6 KiB
Plaintext
Executable File
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
;;; Copyright (c) 1999 Massachusetts Institute of Technology
;;; See the COPYING file at the top-level directory of this project.
.AUXIL
;ALLOW USER TO USE SYMBOLS IN OTHER WAYS IF HE WISHES.
;BUT NORMALLY, DEFSYM FOO==BAR DOES FOO==BAR WITH ERROR CHECK.
IFNDEF DEFSYM,[
DEFINE DEFSYM X/
IRPS Z,,[X]
IFNDEF Z,X
.ELSE [
$$TEM1==Z
X
IFN Z-$$TEM1,.ERR Z MULTIPLY .QUOTE`.QUOTE/DEFINED/`
]
.ISTOP
TERMIN TERMIN
IFLE .MLLIT,.ERR .MLLIT MUST BE 1; SETTING IT TO 1.
.MLLIT==1
$$TEMP==1
];IF Not DEFined DEFSYM
.ELSE $$TEMP==0
;DISK PHYSICAL PARAMETERS (CENTURY DATA T-300 AND 2561 CONTROLLER)
;SINCE WE HAVE ALSO AN RH10 CONTROLLER, THESE ARE SUFFIXED WITH A 1
DEFSYM NCYLS1==812. ;# CYLINDERS NORMALLY USED
DEFSYM XCYLS1==815.-NCYLS1 ;# CYLINDERS FOR SPARES, HACKS, ETC.
DEFSYM NHEDS1==19. ;# TRACKS/CYLINDER
DEFSYM NSECS1==32. ;# SECTORS/TRACK (256. 16-BIT WORDS)
DEFSYM SECBL1==12. ;# SECTORS/BLOCK
DEFSYM NBLKC1==NHEDS1*NSECS1/SECBL1 ;# BLOCKS/CYLINDER
DEFSYM NBLKS1==NCYLS1*NBLKC1 ;# BLOCKS NORMALLY USED
DEFSYM XBLKS1==XCYLS1*NBLKC1 ;# BLOCKS FOR HACKS
DEFSYM TBLKS1==NBLKS1+XBLKS1 ;TOTAL BLOCKS
DEFSYM NTUTB1==4 ;4 BLOCKS PER TUT HERE
DEFSYM TUTBL1==MFDBLK-NTUTB1 ;TUT ALSO STARTS AT A DIFFERENT PLACE
;TAKE DECADE FROM RH1O DEFS
;DEFSYM DECADE==NBLKSC ;NUMBER OF BLOCKS TO ALLOCATE AT A TIME
; ;QSWAPA AND QLASTB MUST BE MULTIPLES OF THIS.
; ;DECADE SIZE = CYLINDER SIZE FOR KLFEDR'S SAKE
;10/11 COMMUNICATION AREA IS 14. WORDS STARTING 48. WORDS INTO THE 64.-WORD DL10 AREA
DEFSYM DSCCHK=DL10AR+60 ;MUST BE 2561 OCTAL
DEFSYM DSCREQ=DL10AR+61 ;SET NON-ZERO BY 10 TO SIGNAL REQUEST TO 11
DEFSYM DSCDON=DL10AR+62 ;SET NON-ZERO BY 11 TO SIGNAL DONE TO 10
DEFSYM DSCFLT=DL10AR+63 ;0 NO FAULT
DEFSYM %DFRST==100000 ;POWER CYCLED OR BROKEN, SO CONTROLLER WAS RESET
DEFSYM %DFCQE==10000 ;CONSISTENCY ERROR IN COMMAND QUEUE
DEFSYM %DFNXM==4000 ;NXM ERROR IN COMMAND QUEUE
DEFSYM %DFPAR==2000 ;PARITY ERROR IN COMMAND QUEUE
; IF ONE OF THESE BITS IS ON, BITS 1-0 AND DSCSTS
; ARE THE ERROR ADDRESS
;BITS 7-0 SYSTEM FAULT CODE IF LEFT BYTE IS ZERO
; SEE THE 2561 OEM MANUAL FOR MEANING OF FAULT CODES
DEFSYM DSCSTS=DL10AR+64 ;STATUS BITS AS FOLLOWS
DEFSYM %DSRTR==100000 ;COMMAND WAS RETRIED
DEFSYM %DSECH==40000 ;UNCORRECTABLE DATA ERROR (ECC HARD)
DEFSYM %DSECC==20000 ;CORRECTED DATA ERROR
DEFSYM %DSIDE==10000 ;ID ERROR
DEFSYM %DSHCE==4000 ;ADDRESS ERROR (HEADER COMPARE ERROR)
DEFSYM %DSPRT==2000 ;WRITE-PROTECT STATUS OF SECTOR (ABORTS WRITE COMMAND)
DEFSYM %DSALT==1000 ;ALTERNATE-SECTOR STATUS (ABORTS READ, WRITE, AND CHECK)
DEFSYM %DSOVR==400 ;FIFO OVER-RUN, NOT CORRECTED BY 1 RETRY
DEFSYM %DSSKE==200 ;SEEK ERROR FROM DRIVE
DEFSYM %DSOFL==100 ;DRIVE OFF-LINE OR FAULT
DEFSYM %DSFLT==20 ;DRIVE FAULT
DEFSYM %DSNXM==10 ;NXM ON PDP11 MEMORY
DEFSYM %DSPAR==4 ;PARITY ERROR IN PDP11 MEMORY
DEFSYM %DSSFL==2 ;SYSTEM FAULT, SEE LOW BYTE OF DSCFLT
DEFSYM %DSWLK==1 ;DRIVE WRITE-LOCKED, WRITE ABORTED
DEFSYM DSCCMD=DL10AR+65 ;COMMAND CODE AS FOLLOWS
DEFSYM %DMSNS==2 ;SENSE DRIVE STATE. DSCSTS GETS CODE FOR DRIVE TYPE IN
; BITS 14-8 (10 FOR T-300), AND %DSWLK, %DSFLT, %DSOFL, %DSSKE
DEFSYM %DMTST==3 ;TEST SPECIFIED DRIVE (RUNS DIAGNOSTICS)
DEFSYM %DMREC==4 ;RECALIBRATE
DEFSYM %DMSEK==5 ;SEEK
DEFSYM %DMWRT==6 ;WRITE DATA
DEFSYM %DMRED==20 ;READ DATA. ADD 1-10 FOR VARIOUS RECOVERY FEATURES AS
; DOCUMENTED IN THE 2561 OEM MANUAL.
DEFSYM DSCDRV=DL10AR+66 ;DRIVE NUMBER (0 IS FIRST DRIVE ON 11)
DEFSYM DSCCYL=DL10AR+67 ;CYLINDER NUMBER
DEFSYM DSCHED=DL10AR+70 ;HEAD NUMBER
DEFSYM DSCSEC=DL10AR+71 ;SECTOR NUMBER
DEFSYM DSCPNT=DL10AR+72 ;4 12-BIT BYTE POINTERS TO DATA TO TRANSFER
IFN $$TEMP,EXPUNG DEFSYM