*5242 NOP /FORCE USE OF GENERALIZED I/O /ASSEMBLE AT 2600 /RUNS AT 7600 ORIGIN=2600 SYSIO=ORIGIN+42 DTCODE=ORIGIN+151 /RESIDENT PAGE OF MONITOR (7600-7777 AND BLOCK 0) /DECTAPE VERSION /FUNCTION: SAVE CORE 7200-7577 IN SCRATCH / READS REST OF MONITOR INTO / CORE 7200-7577 JUMPS TO / MONITOR PAGE 2 (7400) *ORIGIN D0070, 70 /CONSTANT ACTS AS NOP JMS SYSIO /SAVE CORE 7200-7377 5 5 7200 0 HLT JMS SYSIO /SAVE CORE 7400-7577 5 6 /SCRATCH BLOCK 2 7400 0 HLT JMS SYSIO /READ IN PAGE 1 OF SAVE 3 1 7200 DTCORE, 0 HLT JMS SYSIO /READ IN MONITOR PAGE 2 3 2 DTSTRT, 7400 0 HLT JMP I DTSTRT /ENTER MONITOR PAGE 2 DTHOLD, 0 DTLINK, 0 PLINK, 0 LNHOLD, 0 TD8E0, 7400 TD8E1, 7404 /**MUST FOLLOW TD8E0*** JMST8, JMS I TD8E0 P700, 700 /TD8E DECTAPE AS SYSTEM DEVICE *ORIGIN+42 DTSYS, 0 /SYSTEM I/O CLA TAD I DTSYS /GET FCN WORD ISZ DTSYS DCA DTCODE TAD DTCODE /FIND FIELD BITS AND D0070 DCA ARG1 TAD PCDF /SET TRANSFER FIELD CDF'S TAD ARG1 DCA XCDF TAD XCDF DCA XCDF1 TAD DTCODE /MOVE WRITE BIT TO BIT 0 CLL RTR RTR /CLEAR JUNK AND D4000 TAD D0100 /WRITE/READ ONLY 1 BLOCK TAD ARG1 /ADD TO FIELD BITS DCA ARG1 TAD I DTSYS /GET BLOCK ISZ DTSYS DCA ARG3 TAD I DTSYS /GET CORE ADDR ISZ DTSYS /BUMP TO LINK WORD ADDR. DCA ARG2 TAD ARG2 /FORM ADDRESS OF 201TH WORD TAD D0200 DCA PLINK TAD DTSYS /SAVE LINK WORD ADDR DCA DTLINK TAD I DTSYS /GET LINK WORD ISZ DTSYS /BUMP TO ERROR ADDRESS DCA LNHOLD /SAVE LINK XCDF, CDF 0 /POINT TO TRANSFER FIELD TAD I PLINK /SAVE ENDANGERED WORD DCA DTHOLD TAD LNHOLD /PUT LINK WORD IN XFER FIELD DCA I PLINK CDF 0 /BACK TO FIELD 0 TAD DTCODE /IS THIS AN INDIRECT RETURN AND D1000 SNA CLA JMP .+5 /NO TAD I DTSYS /YES, ERROR HOLDS RETURN ADDR -1 DCA DTSYS CMA /PREPARE TO DUMP LINK AT 7777 DCA DTLINK DTTRY, TAD JMST8 /SET UNIT 0 ENTRY DCA .+6 TAD DTCODE /GET UNIT CODE AND P700 /ANYTHING BUT 0 IS UNIT 1 SZA CLA ISZ .+2 /BUMP TO UNIT 1 ADDRESS CIF 10 JMS I TD8E0 ARG1, 0 /FUNCT ARG2, 0 /CORE ARG3, 0 /BLOCK SKP CLA /ERROR ISZ DTSYS /OK, BUMP TO NORMAL RETURM XCDF1, CDF 0 /SET XFER FIELD TAD I PLINK /SAVE LINK WORD DCA LNHOLD TAD DTHOLD /RESTORE ENDANGERED WORD DCA I PLINK PCDF, CDF 0 /BACK TO 0 TAD LNHOLD /PUT AWAY LINK WORD (OR DUMP AT 7777) DCA I DTLINK JMP I DTSYS *ORIGIN+156 D4000, 4000 D1000, 1000 D0200, 200 D0100, 100 $