REL. ASSEMBLER PART 4 7-2-63 /ROUTINE TO PUNCH START BLOCK PSTART, 0 JMS PUNSTA LAC SECO#ND SZA JMP PSTA5 LAC (JMP FUNBEG JMS P1B LAC INPUT SNA JMP PFUN PSTR1, LAM -20 JMS FEED JMS PTITLE LAM -400 JMS FEED JMP I PSTART /INITIALIZE PUNCH INITP, 0 LAM -200 JMS FEED CLA JMS P1B LAC (SKP JMS P1B LAM -6 JMS FEED DZM CNT DZM CKS JMP I INITP PUNSTA, 0 ISZ DCNT JMS PBK LAM -6 JMS FEED LAC CAI SZA TAD (777777 XOR RELABS JMS P1B LAM -6 JMS FEED JMP I PUNSTA PSTA5, LAC (JMP FUNSEC JMS P1B JMP PSTR1 /START COMES HERE PPAUSE, PSTAR, LAC (JMP INIT1 DAC INIT CLC DAC RON RRB CLC!HLT JMS APSYM JMS PSTART PSTA4, JMS WAIT LAC (JMP INIT0 DAC INIT CLC!HLT PSTA2, LAT RAR SNL JMP . 3 JMS TCR JMS PRALP LAT RTR SNL JMP . 3 JMS TCR JMS PRNUM PSTA2A, LAT AND (4 SNA JMP PSTA3 LAC (NOP DAC INIT PSTA3, LAC FSYM CMA DAC LSYM HLT!CLA LAC (NOP DAC INIT LAC (400000 JMP CONTIN 1 /PUNCH THE WORD REQUESTED PPUNCH, JMS PBK JMS NWD LAC UNC SZA JMP PUNCHE LAM -6 JMS FEED LAC CON JMS P1B LAM -6 JMS FEED JMP GO PUNCHE, JMS ERRA FLEX UPN LAC UNDT JMS PSYM JMS TCR JMP GO /DISPATCH TABLE FOR LOADER TO READ SYMBOL DEFS SDSP, NOP NOP NOP NOP NOP NOP JMS PCODE0 DAC I INDEX DAC I INDEX NOP NOP NOP NOP NOP NOP NOP SETLOD, 0  /SET LOADER TO READ SYMBOLS LAC (SDSP DAC FUNCDS LAC I SETLOD DAC FUNDON ISZ SETLOD JMP I SETLOD /RESTORE LOADER FOR PUNCHING RESLOD, 0 LAC (FUNDSP DAC FUNCDS LAC (FUNCEN DAC FUNDON JMP I RESLOD /READ TITLE AND PRINT RTITLE, 0 JMS TSET LAC (STITLE-1 DAC INDEX JMS GCT JMS SCRO JMP . 4 JMP .-3 RT1, JMS TSET JMS GCT LAC TC#HR RAR JMS TY1 LAC RTITLE RAL JMS SCRO JMP RT2 SML JMP . 5 LAC NUM DAC I INDEX LAC INDEX DAC ETITLE JMS TCR JMP I RTITLE RT2, SML JMP RT1 1 LAC FCHR AND (77 JMS DOCHAR JMP RT1 1 DAC I INDEX JMP RT1 /PUNCH TITLE PTITLE, 0 LAM -2 DAC C#NT2 LAC I ET#ITLE JMP . 3 PT1, LAC T#EM2 JMS RR6 DAC TEM2 AND (77 RCL ADD (LAC TITLE DAC . 3 LAC (-1 DAC CNT#1 PT2, XX DAC TEM#1 LAC (-2 DAC CNT PT3, LAC TEM1 JMS RL6 DAC TEM1 RAL AND (77 JMS IPB ISZ CNT JMP PT3 ISZ PT2 ISZ CNT1 JMP PT2 ISZ CNT2 JMP PT1 LAC ETITLE ADD (-1 DAC ETITLE SAD (STITLE-1 JMP I PTITLE JMP PTITLE 1 /PUNCH FUNNY LOADER PFUN, LAM FUNBEG-FUNEND-1 DAC FUNCNT DAC CNT LAC (DAC FUNBEG-1 DAC FUNDAC JMS RESLOD ISZ CNT LAW FUNEND-1 PFUN1, DAC TEM2 LAC I TEM2 JMS P1B LAC TEM2 ADD (-1 ISZ CNT JMP PFUN1 LAC (DAC FUNLOD-1 DAC INDEX LAM -5 DAC CNT LAC (JMP FUNLDS JMS P1B PFUN2, LAC I INDEX JMS P1B LAC INDEX JMS P1B ISZ CNT JMP PFUN2 JMS SETLOD JMP BEGIN1 JMP PSTR1 /PSEUDO NOINPUT PNOINP, ISZ INPUT JMP RETC /PSEUDO-OP SHIFT SHFT, LAC CON JMS RL9 AND (777000 DAC CON JMP RETC /FIX THE PRESENT SYMBOL TABLE PFIX, LAC FSYM DAC NLSYM JMP RETC /DECIMAL AND OCTAL PSUEDO INSTS DECIM, LAC (ADD NUM DAC DOC JMP RETC OCTA, LAC (NOP JMP DECIM 1 /DISPATCH DSP, 0 ADD DSP DAC DSP JMP I DSP /SKIP ON CARRIAGE RETURN SCRO, 0 LAC FCHR SAD (277 ISZ SCRO JMP I SCRO SCR, 0 LAC FCHR SAD (277 ISZ SCR SAD (236 ISZ SCR JMP I SCR /INPUT PSEUDO INSTRUCTION DOCHAR, 0 XCT RTBLE ADD NUM DAC NUM ISZ DOCHAR 1 ISZ CC#NT JMP I DOCHAR ISZ DOCHAR JMP I DOCHAR RTBLE, JMS RR7 JMS RL6 NOP TSET, 0 DZM NUM LAC (XCT RTBLE DAC DOCHAR+1 LAM -2 DAC CCNT JMP I TSET /PSEUDO-INSTS FOR MODE CONTROL PTELE, DZM ENDCOD /ALL CHARACTERS TO TELETYPE CODE LAC (GCT JMP PFIO 3 PANA, DZM ENDCOD /ALL CHARACTERS TO ANELEX CODE LAC (GCA JMP PFIO 3 PFIO, LAC (13  /ALL AS THEIR FIO-DEC CODE DAC ENDCOD LAC (GCC DAC GCI JMP RETC ENDCOD, 0 GCI, GCT START