/BREAKPOINT MODULE MAINTENANCE PROGRAM / /BPMOD (VERSION 2) / /COPYRIGHT 1974 COMPUTER INTERFACE SYSTEMS, INC. / / MQL=7421 CLC=7240 / *200 / /DETERMINE SIZE OF CPU MEMORY / CLA CLL TAD (-10 DCA FLD DCA CURFLD DCA CDFLOC TAD (CDF JMP .+2 CRLOOP, ISZ FLD JMP .+3 CLC JMP INIT TAD (10 TAD CDFLOC DCA CDFLOC TAD (2525 CDFLOC, 0 DCA I 377 TAD I 377 TAD (-2525 SNA CLA JMP CRLOOP / /INITIALIZE / INIT, TAD FLD TAD (10 DCA FLD CDF 0 TAD (JMP I 1 DCA 0 / /INITIALIZE FOR UPPER TEST / UPPER, DCA FLG /CLEAR FLAG TAD (RET /SET UP LOCATION 1 DCA 1 TAD (7600 DCA FROM /END TEST AT 7600 TAD (4000 DCA TO /START OF TEST / /DO THE TEST / TEST, TAD TO /GET CURRENT CORE LOCATION MQL /PUT IT IN MQ TAD (JMP 0 DCA I TO /STORE WORD OUT THERE JMP I TO /THEN GO THERE RET, ISZ TO /INCREMENT LOCATION TAD TO /COMPARE INDEX WITH END CIA TAD FROM SZA CLA /WE DONE YET JMP TEST /NO / /DONE WITH TEST, CHANGE BANK LOCATION / TAD FLG /GET THE FLAG SZA CLA /WE IN LOWER HALF JMP UPMOV /NO, WE ARE IN UPPER / /CHANGING TO TEST LOWER BANK / TAD (200 DCA FROM TAD (4000 DCA TO JMS MOVE /MOVE THE PROGRAM / /INITIALIZE FOR LOWER TEST / JMP I .+1 /GO TO NEW PROGRAM AREA .+1+3600 CLC DCA FLG /SET FLAG TAD (RET+3600 DCA 1 TAD (4000 /END TEST=4000 DCA FROM TAD (2 /START AT LOCATION 2 DCA TO JMP TEST /AND DO THE TEST / /CHANGING TO TEST UPPER BANK IN NEXT FIELD / UPMOV, ISZ CURFLD /INCREMENT CURRENT FIELD TAD CURFLD /COMPARE TO MAX FIELD CIA TAD FLD SPA CLA /WE GONE TOO FAR DCA CURFLD /YES, BACK TO FIELD 0 TAD CURFLD /GET CURRENT FIELD RTL CLL /MAKE CDF RAL TAD (CDF DCA CF2 TAD CF2 /MAKE CIF IAC DCA MCIF TAD (4000 DCA FROM TAD (200 DCA TO JMS MOVE /MOVE PROGRAM MCIF, 0 /DO RIGHT CIF JMP I .+1 /GO TO NEW PROGRAM LOCATION .+1 TAD CF2 /ADJUST MOVE SUBROUTINE DCA CF1 JMP UPPER-2 /AND CONTINUE / /MOVE SUBROUTINE / MOVE, 0 /ENTRANCE TAD (-200 DCA COUNT /SET UP COUNT LOOP, TAD FROM /SET UP FROM LOCATION MQL CF1, CDF /DO RIGHT CDF TAD I FROM /GET LOCATION CONTENTS DCA FLG /SAVE TAD TO /SET UP TO LOCATION MQL TAD FLG /RETRIEVE CONTENTS CF2, CDF /RIGHT CDF AGAIN DCA I TO /AND STORE IN NEW PLACE ISZ FROM /INDEX ISZ TO ISZ COUNT /AND SEE IF THROUGH JMP LOOP /NO JMP I MOVE /YES / /VARIABLE STORAGE / FROM, 0 TO, 0 COUNT, 0 FLG, 0 FLD, 0 CURFLD, 0 / /LITERALS *0 / /END OF PROGRAM $