File MSTPAR.PA (PAL assembler source file)

Directory of image this file is from
This file as a plain text file

/ PARAMETERS FOR   M A S T     (V2B-B)          29-MAY-90
	XLIST 1
/
/
/
	IFNDEF	LSTFLG	<LSTFLG=1>
		XLIST LSTFLG

/	VERS=	3


/
/EDIT HISTORY:
/
/01-AUG-77: (LHN)
/	1)  CREATED THIS DATE FROM PARAM.PA FOR RTS/8 V2B.
/	2)  ADDED "PDP8A" AND "MQ" PARAMETERS.


/RTS/8 V2B EXEC PARAMETERS - EDITED BY USER


PDP8A=	0	/1 IF PDP-8/A, ELSE 0
PDP8E=	1	/1 IF PDP-8/E, ELSE 0
PDP12=	0	/1 IF PDP-12, ELSE 0

MQ=	1	/1 FOR SYSTEM TO SAVE MQ REGISTER, ELSE 0
EAE=	0	/1 FOR SYSTEM TO SAVE STEP COUNTER, ELSE 0
FULEAE= 0	/1 TO SAVE ALL EAE STATUS ON POWERFAIL.
PWRFAL=	1	/1 IF POWER FAIL/AUTO RESTART ENABLED IN
		/ THE HARDWARE, ELSE 0
KL8A=	0	/1, 2 OR 3 IF KL8A SUPPORT ROUTINES SHOULD
		/ BE LOADED, ELSE 0. THE 1, 2 OR 3 IS THE
		/ NUMBER OF KL8A INTERFACES TO BE SUPPORTED.
HGHFLD=	50	/HIGHEST FIELD USED BY RTS-8 (EG 30 FOR A
		/ 16K MACHINE)

NTASKS= 70	/NUMBER OF TASKS IN THE SYSTEM
CHECKP= 0	/1 IF ANY NON-RESIDENT TASK IS CHECK-
		/ POINTABLE, ELSE 0
PARTNS= 0	/NUMBER OF MEMORY PARTITIONS DEFINED (THE N
		/ PARTITIONS ARE NUMBERED FROM 0 TO N-1)





/	COMMON TASK NAMES AND NUMBERS

/ IT IS ADVISABLE TO DEFINE ALL TASKS IN THIS FILE.  NAMES
/ GIVEN BELOW ARE USED BY SOME SYSTEM TASKS AND MAY BE
/ DELETED FROM THE LIST ON THE FOLLOWING PAGES, IF THE
/ CORRESPONDING TASK IS NOT TO BE INCLUDED IN THE SYSTEM.

/ RTS/8 TASKS SUPPLIED BY DEC IN VERSION 2B / CLOCK CLOCK HANDLER - SHOULD BE HIGH PRIORITY / CSA CASSETTE DRIVER TASK / CSAF CASSETTE FILE SUPPORT TASK / DF32 DF32 DISK DRIVER TASK / DTA DECTAPE DRIVER TASK / EXIT EXIT RTS/8 TO OS/8 TASK / ICS INDUSTRIAL CONTROLLER TASK / LPT LINE PRINTER DRIVER TASK / LTA LINCTAPE DRIVER TASK / MCR MONITOR CONSOLE ROUTINE / NULL8A NULL TASK / OS8 OS/8 SUPPORT - NORMALLY LOWEST PRIORITY / OS8F OS/8 FILE SUPPORT / PWRF POWER FAIL HANDLING TASK / RF08 RF08 DISK DRIVER TASK / RK08 RK08 DISK DRIVER TASK / RK8E RK8E DISK DRIVER TASK / RX8A,B,C,D FLOPPY DISK CONTROLLER (0 TO 3) / SWAPPER NONRESIDENT TASK SWAPPER TASK / TTY TELETYPE DRIVER TASK / UDC UNIVERSAL DIGITAL CONTROLLER TASK / DECNET/8 TASKS / DDCMP DDCMP TASK FOR DECNET / LSN NETWORK TERMINAL LISTENER TASK / NIP NETWORK INFORMATION TASK / NSP NETWORK SERVICE PROTOCOL TASK / TLK NETWORK TERMINAL TRANSMITTER TASK
/ / / TASK NAMES IN ORDER OF PRIORITY / / /TASK TASK TASK FUNCTION /NAME NUMBER / MEMORY= 1 /MOTION PULSE PROCESSOR CLOCK= 2 /REAL TIME CLOCK HANDLER PWRF= 3 /POWER FAIL - AUTO RESTART INLOCK= 4 /OPEN MACHINE INTERLOCKS LINESP= 5 /COMPUTE GATE TIMING DELAY CH1DEF= 6 /CHANNEL 1 DEFECT ROUTINE CH1RES= 7 /CHANNEL 1 RESOLUTION ROUTINE CH2DEF= 10 /CHANNEL 2 DEFECT ROUTINE CH2RES= 11 /CHANNEL 2 RESOLUTION ROUTINE CH3DEF= 12 /CHANNEL 3 DEFECT ROUTINE CH3RES= 13 /CHANNEL 3 RESOLUTION ROUTINE SMGATE= 14 /SAMPLE TRAY GATE HANDLER RAGATE= 15 /REJECT A TRAY GATE HANDLER RBGATE= 16 /REJECT B TRAY GATE HANDLER PAGATE= 17 /PRODUCT A TRAY GATE HANDLER PBGATE= 20 /PRODUCT B TRAY GATE HANDLER PCGATE= 21 /PRODUCT C TRAY GATE HANDLER SMARKR= 22 /FIRE THE SAMPLE MARKER CHOP= 23 /CHOP TIME PROCESSOR SAMPLE= 24 /SAMPLING CONTROL TALLEY= 25 /GENERATE THE SAMPLE TALLEY SMARKQ= 26 /LOAD THE SAMPLE MARKER QUEUE TRAYCK= 27 /STACKER TRAY CHECK MISC1= 30 /MISC PROCESS TASK CRTMSG= 31 /CRT MESSAGE OUTPUT CRTCTR= 32 /INCREMENT THE DATA COUNTERS CRT= 33 /CRT HANDLER FORMAT= 34 /TEXT FORMATTER ENDROL= 35 /END OF ROLL PROCESSOR EORSUM= 36 /END OF ROLL SUMMARY LPT= 37 /LINE PRINTER HANDLER / 40 /
/ / / TASK NAMES IN ORDER OF PRIORITY - CONTINUED / / /TASK TASK TASK FUNCTION /NAME NUMBER / / MOPDEC= 41 /MOP PUSHBUTTON DECODE RT01= 42 /RT01 INTERRUPT TASK ROLLDT= 43 /RT01 INPUT DECODE TASK DIGINP= 44 /DIGITAL INPUT PROCESSOR BELL= 45 /RING ALERT ALARM LOGNAM= 46 /LOG PROGRAM NAME AND VERSION TTYST= 47 /CONSOLE TERMINAL STARTUP TTY= 50 /CONSOLE TERMINAL HANDLER MCR= 51 /MONITOR CONSOLE ROUTINE USERCD= 52 /USER COMMAND DECODE SLFRST= 53 /SELF CHECK RESET RFRESH= 54 /CRT DISPLAY REFRESH LIST= 55 /MAINTENANCE LIST BUILD= 56 /SET UP MEMORY DISPATCH TABLE PRESF2= 57 /PRESET FIELD 2 PRESF3= 60 /PRESET FIELD 3 PRESF4= 61 /PRESET FIELD 4 PRESF5= 62 /PRESET FIELD 5 ODT= 63 /DEBUGGER TASK INITZE= 64 /SYSTEM INITIALIZE SCREEN= 65 /REFRESH CRT ROLL DATA AREAES EXIT= 66 /EXIT TO OS/8 / 67 / SELFCK= 70 /SELF CHECK TASK NULL= NTASKS+1 /NULL TASK AND MQ DISPLAY MSTVERSION= "3&77^100+"A-300 /SOFTWARE VERSION LEVEL /EPLTEST=1 /GENERATES EPL TEST CODE IF DEFINED. IFDEF EPLTEST <HGHFLD=60> /FOR ODT
/ / / RTS-8 SYSTEM TASK ASSEMBLY PARAMETERS. / / THE FOLLOWING PARAMETERS CONTROL THE MEMORY FIELD / AND CORE ORIGIN OF THE RTS-8 SYSTEM TASKS. AN / ORIGIN FOR PAGE ZERO VARIABLES AND PARAMETERS FOR / NON-RESIDENT TASKS ARE ALSO INCLUDED WHEN NEEDED. / / ORIGINS FOR "RTS8", "SWAPPER", AND "CLOCK" REMAIN / IN THEIR TASK CODE (THEY ALL LOAD IN FIELD 0). / / / THE DEFINITION FORMAT IS: (.... IS THE TASK NAME) / / ....FLD MEMORY FIELD FOR THE TASK. / ....LOC CORE ORIGIN FOR THE TASK. / ....PGZ ORIGIN FOR PAGE ZERO VARIABLES. / ....PRT PARTITION NUMBER FOR THE TASK. / / / IFDEF CLOCK < CLKTYP= 0 /0(DK8EA/DK8EC) OR 1(KW12) OR 2(PDP8/A) OR /3(DK8EP) CLKQLN= 17 /MINIMUM NUMBER OF ENTRY SLOTS IN THE CLOCK /QUEUE. MAY BE CHANGED BY USER. DECIMAL HERTZ= 100 /NUMBER OF HARDWARE TICKS PER SECOND SHERTZ= HERTZ /NUMBER OF SYSTEM TICKS PER SECOND IFNZRO CLKTYP&1 <HERTZ=1750> /FORCE DK8EP,KW12 TO 1 KHZ OCTAL > IFDEF PWRF < /POWERFAIL - AUTO RESTART PWRFFLD= 00 PWRFLOC= 3400 /1 OR 2 PAGES PWRCLR= EFWT!EORMWT!RUNWT /WHICH BITS TO CLEAR ON RESTART > IFDEF TTY < /CONSOLE TERMINAL HANDLER TTYFLD= 40 TTYLOC= 200 /2 OR 3 PAGES IFNDEF EPLTEST < TTDEV= 04 /PRINTER DEVICE CODE - DEFAULT IS 04. KBDEV= 03 /KEYBOARD DEVICE CODE - DEFAULT IS TTDEV-1. > IFDEF EPLTEST < TTDEV= 33 KRBDEV= 32 > >
/ IFDEF NULL < /NULL TASK NULLFLD= 00 NULLLOC= 4000 > IFDEF MCR < /MONITOR CONTROL ROUTINE MCRFLD= 00 MCRLOC= 4400 /5 TO 12. PAGES MCRPGZ= 150 /15. LONG MCRCLK= 1 /1 FOR MCR CLOCK RELATED FEATURES MCRSYS= 1 /1 IF MCR SYSTAT FACILITY IS DESIRED MCR6CN= 1 /1 FOR MCR TO USE 6 CHARACTER TASK NAMES MCRDMP= 1 /1 IF MCR DUMP OPTION IS DESIRED MCRCDV= TTY /CONSOLE TO BE USED BY MCR, TTY IS DEFAULT MCRTTY= 1 /1 FOR MESSAGE DRIVEN MCR /MCRPRT= /PARTITION NUMBER IF NON-RESIDENT > / IFDEF EXIT < /EXIT TASK /EXITFLD= /EXITLOC= / > IFDEF ODT < /ODT DEBUGGING TASK ODTFLD=60 ODTLOC=200 / XX PAGES > IFDEF SNAP < /SNAP TASK SNAPFLD=50 SNAPLOC=6000 > IFDEF LPT < /LINE PRINTER HANDLER LPTFLD= 40 LPTLOC= 2000 /1 PAGE >
/ / / USER TASK ORIGINS - EDITED BY THE USER / / THE FOLLOWING PARAMETERS SPECIFY THE MEMORY FIELD / AND THE CORE ORIGIN FOR THE USER TASKS. AN ORIGIN / FOR PAGE ZERO STORAGE IS ALSO INCLUDED WHEN NEEDED. / / / FIELD 1 / MEMRYFLD= 10 /MOTION PULSE PROCESSOR MEMRYLOC= 1200 DEF1FLD= 10 /CHANNEL 1&3 DEFECT ROUTINES DEF1LOC= 2600 DEF2FLD= 10 /CHANNEL 2 DEFECT ROUTINE DEF2LOC= 3000 SGATEFLD= 10 /SAMPLE TRAY GATE HANDLER SGATELOC= 3200 RGATEFLD= 10 /REJECT TRAY GATE HANDLERS RGATELOC= 3400 PGATEFLD= 10 /PRODUCT TRAY GATE HANDLERS PGATELOC= 3600 TRYCKFLD= 10 TRYCKLOC= 4200 DIGINFLD= 10 /DIGITAL INUT PROCESSOR DIGINLOC= 4400 BLDFLD= 10 /MEMORY DISPATCH TABLE SETUP BLDLOC= 6400
/ / FIELD 2 / LPTXFLD= 20 /LPT TEXT AREA LPTXLOC=4000 TALLYFLD= 20 /SAMPLE TALLEY TALLYLOC= 200 TALLYPGZ= 170 SAMPLFLD= 20 /SAMPLE SAMPLLOC= 2400 PREF2FLD= 20 /PRESET FIELD 2 PREF2LOC= 7000 EORSMFLD= 20 /END OF ROLL SUMMARY CONTROL EORSMLOC= 3400 / / / FIELD 3 / / ROLDTFLD= 30 /DATA TERMINAL INPUT DECODE ROLDTLOC= 400 ROLLPGZ= 140 CRTCTFLD= 30 /UPDATE THE CRT DATA COUNTERS CRTCTLOC= 2200 FRMFLD= 30 /TEXT FORMATTER FRMLOC= 2600 FRMNUL= "& /NULL CHARACTER DEFINE MARKFLD= 30 /SAMPLE MARKER MARKLOC= 4200 MISC1FLD= 30 /MISC CRT MESSAGE MISC1LOC= 4600 ENDRLFLD= 30 /RUNNING END OF ROLL SUMMARY ENDRLLOC= 5200 PREF3FLD= 30 /PRESET FIELD 3 PREF3LOC= 6000 CRTXTLOC= 6400 /CRT TEXT AREA
/ / FIELD 4 / TTYSTFLD= 40 /TELETYPE POWER CONTROL TASK TTYSTLOC= 1400 RT01FLD= 40 /RT01 DATA TERMINAL HANDLER RT01LOC= 2200 CRTFLD= 40 /CRT DISPLAY AND MESSAGE TASK CRTLOC= 2400 PRES4FLD= 40 /FIELD 4 PRESET TASK PRES4LOC= 3400 STUF1FLD= 40 /STUFF #1 PACKAGE STUF1LOC= 3600 MOPFLD= 40 /PROCESS MOP PUSHBUTTONS MOPLOC= 4200 USERFLD= 40 /USER COMMAND DECODE USERLOC= 4600 / / FIELD 5 / SLFCKFLD= 50 /SELF CHECK SLFCKLOC= 200
/ / / USER TASK G L O B A L C O M M O N DEFINITIONS / / FIELD 1 *40 CHOPSV, 0 /DETAILS OF CURRENT CHOP CH1FLR, 0 /CHANNEL 1 FAILURE FLAG CH2FLR, 0 /CHANNEL 2 FAILURE FLAG CH3FLR, 0 /CHANNEL 3 FAILURE FLAG CTHOLD, 0 /COUNT/HOLD FLAG CTSAVE, 0 /COUNT/HOLD PRODUCT COUNT SAVER MANRJF, 0 /MANUAL REJECT REQUEST FLAG MANSMF, 0 /MANUAL SAMPLE REQUEST FLAG MCHECK, 0 /MACHINE CHECK FLAG MEMPTR, 0 /CURRENT DEFECT MEMORY POINTER PROCNT, -175 /PRODUCT TRAY SHEET COUNTER PROFLG, 0 /ACTIVE PRODUCT TRAY PUTUP1, -175 /THE CURRENT PUTUP. RAGEJC, 0 /REJECT A TRAY EJECT DELAY RBGEJC, 0 /REJECT B TRAY EJECT DELAY REJCNT, -226 /REJECT TRAY SHEET COUNTER SHUTDY, 0 /SHUTTER OPEN DELAY FLAG SMGEJC, 0 /SAMPLE TRAY EJECT DELAY SMRLOC, 0 /SAMPLE MARKER LOCATION SMTLKD, 0 /SAMPLE TRAY UNLOCK DELAY SMTLKF, 0 /SAMPLE TRAY LOCK SPLFLG, 0 /SPLICE DETECTED MESSAGE SRODNF, 0 /STACKER RUN OUT COMPLETED FLAG SROFLG, 0 /STACKER RUNOUT FLAG STAKFG, 0 /STACKER MAINTENANCE TEST FLAG STAKWD, 0 /STACKER TRAY DESTINATION WORD. SWPPRO, 0 /SWAP PRODUCT TRAYS FLAG SWPREJ, 0 /SWAP REJECT TRAYS FLAG
/ FIELD 2 *40 CHOPFG, 0 /CHOP OCCURRED FLAG CRTDEF, 0 /CRT DATA INCREMENT EVENT FLAG DWLINE, 0 /TALLEY LINE COUNTER EMFMGF, 0 /EMULSION MISS MESSAGE FLAG EORSFG, 0 /END OF ROLL SUMMARY FLAG MCKMGF, 0 /MACHINE CHECK MESSAGE FLAG MROLLF, 0 /MOVE NEXT ROLL HEADING FLAG MEORLN, -25 /- # OF SHEETS TO WAIT BEFORE STARTING / END OF ROLL SAMPLES MEORRJ, -17 /- # OF REJECTS AT START/END OF ROLL MEORSM, -2 /- # OF SAMPLES AT START/END OF ROLL MINRRJ, -4 /- # OF REJECTS AROUND INROLL SPLICE MINRSM, -2 /- # OF SAMPLES AROUND INROLL SPLICE NEWBOX, 0 /NEW BOX FLAG NPCODE, 0 /PUTUP CODE NSCODE, 0 /NEW SAMPLE CODE PATCON, 1 /# OF BOXES BETWEEN SAMPLES PTRCH3, 0 /CHANNEL 3 RELATIVE LOCATION (BUILD) SAMTYP, 0 /SAMPLE TYPE SAMNAD, 0 /ADDRESS OF THE SAMPLE NUMBER STPMGF, 0 /MACHINE STOP MESSAGE FLAG / / / BINARY PRODUCT COUNTERS / / THIS ORDER IS IMPORTANT !! / / BINSAM, 0 /BINARY SAMPLE COUNTER 0 BINBOX, 1 /BINARY BOX COUNTER 0 BINSHT, 0 /BINARY SHEETS IN BOX COUNTER BINCHP, 0 /BINARY CHOP COUNTER 0 BINREJ, 0 /BINARY REJECT COUNTER 0 BINMTR, 0 /BINARY METER COUNTER 0 BINSHR, 0 /BINARY SHIFT ROLL BINSSM, 0 /BINARY SPLICE SAMPLE COUNTER 0
/ FIELD 3 *40 CHOPC, 6 /THE CURRENT CHOP LENGTH CURCUT, 0 /THE CURRENT CUT NUMBER SLITC, 0 /THE CURRENT SLIT WIDTH NCHOPC, 0 /NEXT ROLL CHOP LENGTH CODE NEWRNF, 0 /NEW ROLL NUMBER ENTERED FLAG NSLITC, 0 /NEXT ROLL SLIT WIDTH INCRMC, 0 /INCREMENT FOR MACHINE CHECK INCRSR, 0 /INCREMENT FOR THE CRT SHIFT ROLL COUNTER INCRST, 0 /INCREMENT FOR THE CRT SHEETS COUNTER INCRTB, 0 /INCREMENT FOR THE CRT BOX COUNTER INCRTC, 0 /INCREMENT FOR THE CRT CHOP COUNTER INCRTM, 0 /INCREMENT FOR THE CRT METERS COUNTER INCRTR, 0 /INCREMENT FOR THE CRT REJECT COUNTER INCRTS, 0 /INCREMENT FOR THE CRT SAMPLE COUNTER INCRSS, 0 /INCREMENT SPLICE SAMPLE COUNTER MCKDSP, 0 /MACHINE CHECK MESSAGE DISPLAY PARBMG, 0 /PARTIAL BOX MESSAGE SHEARC, 0 /SHEAR CUT DIGIT SHFTRL, 0 /NEW SHIFT FLAG SISRLF, 0 /SISTER ROLL FLAG FIELD 4 *40
/ FIELD 5 *40 ADERRF, 1 /A/D ERROR DISABLE FLAG CH1ERF, 1 /CHANNEL 1 ERROR DISABLE FLAG CH2ERF, 1 /CHANNEL 2 ERROR DISABLE FLAG CH3ERF, 1 /CHANNEL 3 ERROR DISABLE FLAG DIGREC, 0 /RECAL FLAG DIGITAL SELF CHECK / / / USER TASK COMMON EQUATES / / CRTXDF= 30 /FIELD OF CRT TEXT MOPNUM= 13 /NUMBER OF CRT MESSAGES MEMTBL= 400 /MEMORY TABLE LOCATION / / / CRT TEXT POINTERS / / MOPM01= 1 /MAST IN TEST MODE MOPM02= 2 /RT01 INPUT DATA ERROR MOPM03= 3 /PRINTER PAPER LOW MOPM04= 4 /STACKER TRAY IS OUT MOPM05= 5 /EMULSION FAULT MOPM06= 6 /STACKER IS CLEAR MOPM07= 7 /CLEAR STACKER MOPM08= 10 /ENTER ROLL DATA MOPM09= 11 /SPEED LIMIT MOPM10= 12 /PRINTER FAILURE MOPM11= 13 /PARTIAL BOX
/ / /%RX DR8-EA DIGITAL I/O REGISTER COMMANDS / / DBDI50= 6500 /DISABLE INTERRUPT ON INPUT DBEI50= 6501 /ENABLE INTERRUPT ON INPUT DBSK50= 6502 /SKIP ON INPUT FLAG DBCI50= 6503 /CLEAR SELECTED BITS IN THE INPUT REGISTER DBRI50= 6504 /CLEAR AC TRANSFER INPUT REGISTER TO THE AC DBCO50= 6505 /CLEAR SELECTED BITS IN THE OUTPUT REGISTER DBSO50= 6506 /SET SELECTED BITS IN THE OUTPUT REGISTER DBRO50= 6507 /JAM TRANSFER OUTPUT REGISTER TO THE AC DBDI51= 6510 /DISABLE INTERRUPT ON INPUT DBEI51= 6511 /ENABLE INTERRUPT ON INPUT DBSK51= 6512 /SKIP ON INPUT FLAG DBCI51= 6513 /CLEAR SELECTED BITS IN THE INPUT REGISTER DBRI51= 6514 /CLEAR AC TRANSFER INPUT REGISTER TO THE AC DBCO51= 6515 /CLEAR SELECTED BITS IN THE OUTPUT REGISTER DBSO51= 6516 /SET SELECTED BITS IN THE OUTPUT REGISTER DBRO51= 6517 /JAM TRANSFER OUTPUT REGISTER TO THE AC DBDI52= 6520 /DISABLE INTERRUPT ON INPUT DBEI52= 6521 /ENABLE INTERRUPT ON INPUT DBSK52= 6522 /SKIP ON INPUT FLAG DBCI52= 6523 /CLEAR SELECTED BITS IN THE INPUT REGISTER DBRI52= 6524 /CLEAR AC TRANSFER INPUT REGISTER TO THE AC DBCO52= 6525 /CLEAR SELECTED BITS IN THE OUTPUT REGISTER DBSO52= 6526 /SET SELECTED BITS IN THE OUTPUT REGISTER DBRO52= 6527 /JAM TRANSFER OUTPUT REGISTER TO THE AC DBDI54= 6540 /DISABLE INTERRUPT ON INPUT DBEI54= 6541 /ENABLE INTERRUPT ON INPUT DBSK54= 6542 /SKIP ON INPUT FLAG DBCI54= 6543 /CLEAR SELECTED BITS IN THE INPUT REGISTER DBRI54= 6544 /CLEAR AC TRANSFER INPUT REGISTER TO THE AC DBCO54= 6545 /CLEAR SELECTED BITS IN THE OUTPUT REGISTER DBSO54= 6546 /SET SELECTED BITS IN THE OUTPUT REGISTER DBRO54= 6547 /JAM TRANSFER OUTPUT REGISTER TO THE AC DBDI55= 6550 /DISABLE INTERRUPT ON INPUT DBEI55= 6551 /ENABLE INTERRUPT ON INPUT DBSK55= 6552 /SKIP ON INPUT FLAG DBCI55= 6553 /CLEAR SELECTED BITS IN THE INPUT REGISTER DBRI55= 6554 /CLEAR AC TRANSFER INPUT REGISTER TO THE AC DBCO55= 6555 /CLEAR SELECTED BITS IN THE OUTPUT REGISTER DBSO55= 6556 /SET SELECTED BITS IN THE OUTPUT REGISTER DBRO55= 6557 /JAM TRANSFER OUTPUT REGISTER TO THE AC
/ DBDI56= 6560 /DISABLE INTERRUPT ON INPUT DBEI56= 6561 /ENABLE INTERRUPT ON INPUT DBSK56= 6562 /SKIP ON INPUT FLAG DBCI56= 6563 /CLEAR SELECTED BITS IN THE INPUT REGISTER DBRI56= 6564 /CLEAR AC TRANSFER INPUT REGISTER TO THE AC DBCO56= 6565 /CLEAR SELECTED BITS IN THE OUTPUT REGISTER DBSO56= 6566 /SET SELECTED BITS IN THE OUTPUT REGISTER DBRO56= 6567 /JAM TRANSFER OUTPUT REGISTER TO THE AC
/ SOME USEFUL EQUATES FOR TTY AND LPT MESSAGES: NOPACK= 4000 /TEXT IS NOT PACKED IN 6-BIT NOCRLF= 2000 /OUTPUT SHOULD NOT BE FOLLOWED BY CR/LF IND= 1000 /OUTTXT PTS TO FIRST WORD OF TEXT NOLINE= 400 /INPUT IS IN CHARACTER MODE ASSGN= 200 /ASSIGNS DEVICE KL8ALINE=100 /USED TO SPECIFY A LINE OF A KL8A / SOME USEFUL EQUATES FOR STANDARD CLOCK MESSAGES: MARKTIME= 0 /POST EVENT FLAG AFTER SPECIFIED / INTERVAL SCHEDULE= 1000 /RUN TASK AFTER SPECIFIED INTERVAL TIMOUT= 2000 /DERAIL TASK AFTER SPECIFIED / INTERVAL PERIODICALLY= 2000 /USED AS MODIFIER TO 'SCHEDULE' /RE-QUEUES RUN REQUEST AFTER / SPECIFIED INTERVAL. /E.G. 'SCHEDULE FOO PERIODICALLY' CANCEL= 7000 /DELETE ALL REQUESTS FROM SPECIFIED / TASK FROM QUEUE / MORE USEFUL EQUIVALENCES: AC7777= CLL CLA CMA AC7776= CLL STA RAL AC7775= CLL STA RTL AC4000= CLA STL RAR AC2000= CLA STL RTR AC3777= CLL STA RAR AC5777= CLL STA RTR AC0002= CLA STL RTL AC0001= CLA CLL IAC CDI= CDF CIF CLB= CLL CLA IFNZRO PDP8E+PDP8A < ACL= 7701 CAM= 7621 >
/ EXTENDED ARITHMETIC INSTRUCTIONS: IFNZRO EAE < SCL= 7403 SCA= 7441 MUY= 7405 DVI= 7407 NMI= 7411 SHL= 7413 ASR= 7415 LSR= 7417 IFNZRO PDP8E+PDP8A < SWAB= 7431 SWBA= 7447 SKB= 7471 ACS= 7403 DAD= 7443 DLD= 7663 DST= 7445 DPSZ= 7451 DPIC= 7573 DCM= 7575 SAM= 7457 > > / UDC/ICS OPERATION CODES IFDEF UDC <AO=0; DO=1; DI=2; GC=3; EC=4; RC=5 DC=6; ECT=7; CS=10; DCT=11; AI=12> IFDEF ICS <AO=0; DO=1; DI=2; GC=3; EC=4; RC=5 DC=6; ECT=7; CS=10; DCT=11; AI=12>
/ MONITOR CALL VALUES: CAL= JMS 20 /CALL THE EXECUTIVE POSTDS= JMP I 24 /DISMISS AN INTERRUPT WAITM= JMS I 25 /WAIT FOR MULTIPLE EVENTS CALODT= JMS 33 /PUT THE TASK IN DEBUG WAIT AND /RUN THE ODT DEBUGGING TASK / NOTE: "**" MEANS CRITICAL VALUE MAY NOT BE / CHANGED WITHOUT MODIFYING SYSTEM CODE!! SEND= 0 /SEND MESSAGE RECEIV= 1 /RECEIVE MESSAGE WAITE= 2 /WAIT FOR EVENT FLAG RUN= 3 /CONTINUE TASK EXECUTION SUSPND= 4 /SUSPEND TASK EXECUTION POST= 5 /POST AN EVENT FLAG SKPINS= 6 /INSERT CODE INTO INTERRUPT SKIP CHAIN DERAIL= 7 /INITIATE END-ACTION BLKARG= 10 /BLOCK TASK FOR REASON SPECIFIED IN ARG SENDW= 11 /SEND MESSAGE AND WAIT UNBARG= 12 /UNBLOCK TASK FOR REASON SPECIFIED IN ARG RESCHD= 13 /FORCE A TASK RESCHEDULE NOW WAITX= 14 /WAIT FOR EXACTLY THIS EVENT FLAG DEBUG= 15 /DEBUGGER WAIT FREE= 4000 /**FREE PARTITION / TASK STATUS FLAGS: NONRWT= 4000 /**NONRESIDENT TASK WAIT EFWT= 2000 /EVENT FLAG WAIT RUNWT= 1000 /SCHEDULE WAIT SWPWT= 0400 /**SWAPPER WAIT EORMWT= 0200 /EVENT FLAG OR MESSAGE WAIT USERWT= 0100 /USER SPECIFIED WAIT ENABWT= 0040 /ENABLE WAIT MSGWT= 0020 /MESSAGE WAIT NETWT= 0010 /NETWORK WAIT (RESERVED FOR FUTURE USE) DEBWT= 0004 /DEBUG WAIT DNEWT= 0001 /**DOES NOT EXIST WAIT
/ SYSTEM LOCATIONS: MSGTBL= 1400-2 /TASK MESSAGE TABLE IFZERO EAE < TSTABL= NTASKS+2^2+MSGTBL-4 /TASK STATE TABLE - HOLDS /TASK LINK,UM,DF,IF,PC,AC,MQ TFTABL= NTASKS+2^4+TSTABL-1 /TASK FLAGS TABLE - HOLDS > /THE TASK STATUS FLAGS IFNZRO EAE < TSTABL= NTASKS+2^2+MSGTBL-5 /FOR EAE, ENLARGE TSTABL TO TFTABL= NTASKS+2^5+TSTABL-1 /INCLUDE THE STEP COUNTER > IFDEF SWAPPER < RESTBL= TFTABL+NTASKS+2 /RESIDENCY TABLE. PARTBL= NTASKS-SWAPPER^2+RESTBL+3&7774 /PARTITION TABLE. > TSWFLG= 44 /TASK SW INHIBIT FLAG IN FIELD 0 TODL= 45 /LOW ORDER TIME OF DAY IN FIELD 0 TODH= 46 /HIGH ORDER TIME OF DAY IN FIELD 0 DATE= 47 /DATE IN OS8 FORMAT IN FIELD 0 YEAR= 50 /YEAR-1970 IN BINARY IN FIELD 0 COMMAND=51 /SWAPPER COMMAND BUFFER IN FIELD 0 / FLAGS USED TO CONNECT SYSTEM TASKS MCREF= 70 /MCR START EVENT FLAG IN FIELD 0 OS8HPR= 71 /TABLE OF DEVICES FOR IN FIELD 0 / OS/8 SUPPLIED BY RTS/8 ODTBKF= 72 /ODT BREAKPOINT FLAG IN FIELD 0 OWNTTY= 73 /CONSOLE OWNERSHIP FLAG IN FIELD 0 FIMQDY= 74 /CDF FOR MQ DISPLAY IN FIELD 0 IFDEF CUR <IFNZRO HGHFLD-CUR&4000 <CURBIG,_ERROR->> /WARNING IF UNDEFINED FIELD IS SEEN !! IFNZRO EAE <IFNZRO PDP8A <8AEAE,_ERROR->> IFNZRO PDP8A <MQ=1> IFNZRO PDP8E <MQ=1> IFNZRO EAE <MQ=1> IFNDEF INIWT <INIWT= 0> IFNDEF INIWT2 <INIWT2=0> IFNDEF INIWT3 <INIWT3=0> IFNDEF INIWT4 <INIWT4=0> IFNDEF VERS <VERS= 0> IFNDEF VERS2 <VERS2=0> IFNDEF VERS3 <VERS3=0> IFNDEF VERS4 <VERS4=0>
/ FIELD 0 /FOLLOWING MUST LOAD IN FIELD 0 !! XLIST 0 /FORCE LISTING ON /TASK TABLE SETUP - "TASK", "CUR", "INIWT", AND "START" / MUST BE DEFINED BY TASK. XLIST 1 /FORCE LISTING OFF IFDEF TASK < XLIST *TASK^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER IS INITIALLY CLEAR XLIST 1 IFZERO EAE < XLIST *TASK^4+TSTABL CUR%10+CUR /INITIAL FLAGS #1 START /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS /INITIAL MQ IS THE VERSION NUMBER XLIST > IFNZRO EAE < XLIST *TASK^5+TSTABL CUR%10+CUR /INITIAL FLAGS #1 START /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS /INITIAL MQ IS THE VERSION NUMBER 0 /INITIAL STEP COUNTER IS 0 XLIST > XLIST 0 *TASK+TFTABL INIWT /INITIAL BLOCKING BITS XLIST > / / TASK 2 / IFDEF TASK2 < XLIST *TASK2^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER IS INITIALLY CLEAR XLIST 1 IFZERO EAE < XLIST *TASK2^4+TSTABL CUR2%10+CUR2 /INITIAL FLAGS #2 START2 /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS2 /INITIAL MQ IS THE VERSION NUMBER XLIST > IFNZRO EAE < XLIST *TASK2^5+TSTABL CUR2%10+CUR2 /INITIAL FLAGS #2 START2 /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS2 /INITIAL MQ IS THE VERSION NUMBER 0 /INITIAL STEP COUNTER IS 0 XLIST > XLIST 0 *TASK2+TFTABL INIWT2 /INITIAL BLOCKING BITS XLIST > / / TASK 3 / IFDEF TASK3 < XLIST *TASK3^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER IS INITIALLY CLEAR XLIST 1 IFZERO EAE < XLIST *TASK3^4+TSTABL CUR3%10+CUR3 /INITIAL FLAGS #3 START3 /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS3 /INITIAL MQ IS THE VERSION NUMBER XLIST > IFNZRO EAE < XLIST *TASK3^5+TSTABL CUR3%10+CUR3 /INITIAL FLAGS #3 START3 /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS3 /INITIAL MQ IS THE VERSION NUMBER 0 /INITIAL STEP COUNTER IS 0 XLIST > XLIST 0 *TASK3+TFTABL INIWT3 /INITIAL BLOCKING BITS XLIST > / / TASK 4 / IFDEF TASK4 < XLIST *TASK4^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER IS INITIALLY CLEAR XLIST 1 IFZERO EAE < XLIST *TASK4^4+TSTABL CUR4%10+CUR4 /INITIAL FLAGS #4 START4 /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS4 /INITIAL MQ IS THE VERSION NUMBER XLIST > IFNZRO EAE < XLIST *TASK4^5+TSTABL CUR4%10+CUR4 /INITIAL FLAGS #4 START4 /INITIAL STARTING ADDRESS 0 /INITIAL AC IS 0 VERS4 /INITIAL MQ IS THE VERSION NUMBER 0 /INITIAL STEP COUNTER IS 0 XLIST > XLIST 0 *TASK4+TFTABL INIWT4 /INITIAL BLOCKING BITS XLIST > IFDEF TASK < IFDEF PARTNO < XLIST /RESIDENCY TABLE (RESTBL) ENTRY: /INITIALIZED FOR NONRESIDENT TASKS ONLY *TASK-SWAPPER-1^2+RESTBL PARTNO^4+PARTBL+CPABLE+CPABLE+WRITE XLIST IFNDEF SWAPPER <NOSWAP,_ERROR_> /SWAPPER MISSING IFNZRO TASK-SWAPPER&4000 <SWPRIO,_ERROR_> / NON-RESIDENT TASK HAS PRIORITY HIGHER THAN SWAPPER >> IFDEF PARTNO < IFNDEF TASK <NOTASK,_ERROR_> /PARTITION BUT NO TASK IFNDEF SWAPPER <NOSWAP,_ERROR_> /PARTITION BUT NO SWAPPER IFNDEF PARTNS <NOPART,_ERROR_> /MISSING PARTITIONS IFZERO PARTNO-PARTNS&4000 <PRTERR,_ERROR_> /PARTNO.GE.PARTNS > XLIST 0 /TURN LISTING BACK ON FOR TASK CODE.



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search