*20 / FOCLDR2 ROUTINE / / KEITH WHITTLE / DEC,1971 / / MODIFIED BY ED RAPOPORT / MARCH 1973 / /READING IN FOCAL-RT / /ASSUME FOCAL-RT IS THE FIRST BINARY /SAVED ON TAPE UNIT 0. / / /PUT PROGRAM NAME IN QUOTES ON LINE /MARKED "CODE", THEN ASSEMBLE, AND SAVE / /CORE POISTION OF BINARY IS CRITICAL. /SUGGEST STARTING AT 4000 OR 4020. / / SEGMNT 2 *20 STC CHOICE AXO /CLEAR EX. ADDR. / / /MAKE SURE DIAL-MS I/O ROUTINES ARE /PRESENT IN FIELD1 7000-7777 / / LDF 7 RDC 6322 RDC 7323 / /READ IN FOCAL-RT / PDP PMODE CLA 6201 IN, 6212 JMS I PREAD /POINTER IS SET INITIALLY FOR FIRST /SECTION OF FOCAL-RT. PTR / /UPDATE TAPE BLOCK / TAD PTR+3 TAD PTR+2 DCA PTR+2 / TAD I POINT /DATA ADDRESS DCA PTR+1 /STORE MBLK. ISZ POINT /MOVE DOWN LIST. TAD I POINT DCA PTR+3 /STORE NBLK. ISZ POINT /MOVE DOWN LIST. ISZ LOOP /COUNT LOOPS. JMP IN / / /MAKE APPROPRIATE CHANGES TO FOCAL /TO ALLOW INITIALIZATION. / TAD P5616 /JMP I 216 DCA I 77 /STORE IN 215 /THE NEXT VALUE VARIES ACCORDING TO /PROGRAMS LOCATION IN CORE.IT IS /USED TO RETURN FROM FOCAL INITIALIZ- /ATION TO THE CORRECT POSITION IN /THE FOCLDR ROUTINE. TAD PRTN /RETURN ADDR. DCA I P216 JMP I 13 /INITIALIZE. / / /LOAD CORRECT INSTRUCTION INTO COMMAND /BUFFER. / RTN, TAD I ADD2 ISZ ADD2 DCA I 10 ISZ COUNT /VARIES WITH JMP .-4 /NAME LENGTH. / / /JAM CR INTO "CHAR" REGISTER TO ALLOW /EXECUTION OF COMMAND. TAD 77 DCA 66 / / /RESTORE LOCATIONS IN FOCAL. / TAD P1132 DCA I 77 TAD P3027 DCA I P216 JMP I P227 /START PROGRAM. PREAD, 7774 POINT, DATA /MBLK AND NBLK INFORMATION TO READ IN /FOCAL-RT. DATA, 11 7 20 1 22 3 30 2 LOOP, -5 ADD2, CODE P216, 216 PRTN, RTN P3027, 3027 P227, 227 P5616, 5616 P1132, 1132 COUNT, -10 CHOICE, 0 PTR, 0 0 243 /1ST BINARY BLK. 10 CODE, TEXT "L G,;" /INSERT NAME OF PROGRAM,UNIT BETWEEN /COMMA AND SEMICOLON OF LAST LINE