(GIN Macro)
Defined in: MACINTLUDES
Used in:
3TJ= [??? PRINTSEG SECT DIAG FGN 9 DOC 3W3W #MAC PRINTSEG [M.C.D. MANN AND J.T. WIFFEN 3WHG [ 3X36 [ 3XGQ [ ************** 3Y2B [ * PRINTSEG * 3YG2 [ ************** 3Y^L [ 3^F= [ 3^YW [ THE PARAMETERS OF THE MACRO PRINTSEG ARE - 42DG [ 42Y6 [ %A - THE SEGMENT NAME 43CQ [ 43XB [ %B - THE SEGMENT VERSION NO. - OPTIONAL 44C2 [ 44WL [ %C - THE LISTING LEVEL FOR THE INTERLUDE COMPILATION 45B= [ 45TW [ DEPENDENCIES - THE COMPILER VARIABLES - COMPILER SUBROUTINES 46*G [ AND CERTAIN GEORGE UNIVERSALS WHEN PRINTING GEORGE 46T6 [ SEGMENTS 47#Q [ 47SB #DEF 19?+7=1? 48#2 #STR %C 48RL #LIS %C 49?= #STR %C 49QW #STR 4==G #LIS 0 4=Q6 #DEF 19?+0=18?+1]+20] 4?9Q #DEF 19?+1=18?+1]+21] 4?PB #DEF 19?+4=37? 4#92 #DEF 19?+6=18?+1]+2] 4#NL #DEF 19?+8=3? 4*8= #FRL 4*MW #DEF MINBUFF=18?+1]+33] [INBUFF ADDRESS IS 18?+1]+33] 4B7G #ORD 4BM6 #INT 4C6Q [ MOVE INTERLUDE 640 WORDS DOWN 4CLB START CALL 2 SKIPDATA 4D62 SKIPDATA 4DKL STO 0 X0SAVE 4F5= LDN 3 639(2) 4FJW SBN 2 1 4G4G MOVE 2 0 4GJ6 BRN NEXT+640 [ENTER MAIN CODE 4H3Q [ GENERAL DATA CONSTANTS 4HHB PRINTHDR 8HSEGMENT 4J32 PRNAME 8H%A 4JGL 4H%B 4K2= 8H D.ADDR 4KFW 8H 4K^G 8H LENGTH 4LF6 4H 4LYQ PRINTGEORGE 12HG3MARK [MUST EXIST AS IDENTIFIER IF GEORGE 4MDB X0SAVE +0 4MY2 PRADSAVE +D%A 4NCL PRLGSAVE +L%A 4NX= SEGMAX +513 [CAN'T DO MORE THAN HALF AT A TIME 4PBW SEGBUF +0 [ADDRESS OF SEGMENT BUFFER 4PWG SEGCUR +0 [CURRENT POSITION IN SEGMENT 4QB6 SPACES #20202020 4QTQ PRINTGSW +0 [SWITCH FOR CHECKING GEORGE MNEMONICS 4R*B SAVREL +0 [SAVED RELATIVISOR 4RT2 STRUCTTYPE +0 [INSTRUCTION TYPE 4S#L SAVFUNCT +0 [FOR SAVING THE FUNCTION NO. 4SS= SAVACCU +0 [SAVE ACCUMULATOR IN CASE BRANCH 4T?W SAVEX +0 [CHARACTER MODIFIER SAVE 4TRG REPLADDR +0 [FOR SAVING MASKED CALL ADDRESS 4W?6 POSSDATA 12HPOSS. DATA [LDXC TYPE ORDERS, OR FLOATING POINT 4WQQ SPECBRNCH #03601200 4X=B SUGGESTD #00000046 [F IN FUNCTION IS POSS. DATA 4XQ2 #00000043 [C AT END IS POSS. DATA 4Y9L REPLMASK #00017777 [FOR MASKING REPLACE CALLS 4YP= NEGFORCE #77740000 4^8W STRISK 4H *+ 4^NG NORMI 4HNORM 5286 MODIFS 4H (0) 52MQ TIXE #35 537B [ VARIOUS MNEMONICS 53M2 RANCHDATA 546L 4HBRN 54L= 4HBVS 555W 4HBVSR 55KG 4HBVC 5656 4HBVCR 56JQ 4HBCS 574B 4HBCC 57J2 4HBVCI 583L THEGEO 4HGEO 58H= THISBY 4HISBY 592W THEGERR 4HGERR 59GG #177 5=26 #153 5=FQ #150 5=^B STRUCTS 5?F2 4HLDX 5?YL 4HADX 5#D= 4HNGX 5#XW 4HSBX 5*CG 4HLDXC 5*X6 4HADXC 5BBQ 4HNGXC 5BWB 4HSBXC 5CB2 4HSTO 5CTL 4HADS 5D*= 4HNGS 5DSW 4HSBS 5F#G 4HSTOC 5FS6 4HADSC 5G?Q 4HNGSC 5GRB 4HSBSC 5H?2 4HANDX 5HQL 4HORX 5J== 4HERX 5JPW 4HOBEY 5K9G 4HLDCH 5KP6 4HLDEX 5L8Q 4HTXU 5LNB 4HTXL 5M82 4HANDS 5MML 4HORS 5N7= 4HERS 5NLW 4HSTOZ 5P6G 4HDCH 5PL6 4HDEX 5Q5Q 4HDSA 5QKB 4HDLA 5R52 4HMPY 5RJL 4HMPR 5S4= 4HMPA 5SHW 4HCDB 5T3G 4HDVD 5TH6 4HDVR 5W2Q 4HDVS 5WGB 4HCBD 5X22 4HBZE 5XFL 4HRRRR 5X^= 4HBNZ 5YDW 4HRRRR 5YYG 4HBPZ 5^D6 4HRRRR 5^XQ 4HBNG 62CB 4HRRRR 62X2 4HBUX 63BL 4HRRRR 63W= 4HBDX 64*W 4HRRRR 64TG 4HBCHX 65*6 4HRRRR 65SQ 4HBCT 66#B 4HRRRR 66S2 4HCALL 67?L 4HRRRR 67R= 4HEXIT 68=W 4HRRRR 68QG +RANCHES 69=6 4HRRRR 69PQ 4HBFP 6=9B 4HRRRR 6=P2 4HLDN 6?8L 4HADN 6?N= 4HNGN 6#7W 4HSBN 6#MG 4HLDNC 6*76 4HADNC 6*LQ 4HNGNC 6B6B 4HSBNC 6BL2 +SHIFTS 6C5L +SHIFTS 6CK= +SHIFTS 6D4W +SHIFTS 6DJG +NORM 6F46 +NORM 6FHQ 4HMVCH 6G3B 4HSMO 6GH2 4HANDN 6H2L 4HORN 6HG= 4HERN 6H^W 4HNULL 6JFG 4HLDCT 6J^6 4HMODE 6KDQ 4HMOVE 6KYB 4HSUM 6LD2 4HFLOA 6LXL 4HFIX 6MC= 4HFAD 6MWW 4HFSB 6NBG 4HFMPY 6NW6 4HFDVD 6P*Q 4HLFP 6PTB 4HSFP 6Q*2 4H???? 6QSL 4H???? 6R#= 4H???? 6RRW 4H???? 6S?G 4H???? 6SR6 4H???? 6T=Q 4H???? 6TQB 4H???? 6W=2 4HSUSB 6WPL 4HREL 6X9= 4HDIS 6XNW 4H???? 6Y8G 4HCONT 6YN6 4HSUSD 6^7Q 4HALLO 6^MB 4HPERI 7272 +SUSTYS 72LL +SUSWTS 736= 4HSUSM 73KW 4HAUTO 745G 4HSUSA 74K6 4HGIVE 754Q 4HRRQ 75JB 4H???? 7642 4H???? 76HL 4H???? 773= 4H???? 77GW 4H???? 782G 4H???? 78G6 4H???? 78^Q 4H???? 79FB 4H???? 79^2 [ END OF MAIN INSTRUCTION TABLE 7=DL SHIFTY [SHIFT INSTRUCTIONS 7=Y= 4HSLC 7?CW 4HSLL 7?XG 4HSLA 7#C6 4HSLA 7#WQ 4HSRC 7*BB 4HSRL 7*W2 4HSRA 7B*L 4HSRAV 7BT= SUST 7C#W 4HSUST 7CSG 4HDIST 7D#6 4HDELT 7DRQ SUSW 7F?B 4HSUSW 7FR2 4HDISP 7G=L 4HDEL 7GQ= RJUMPSGEO 7H9W +CHAPK [ACROSS OR ACCROSSVAR 7HPG +CHAPDOWNK [DOWN 7J96 +GCORE [CORE OF SOME KIND 7JNQ +JTRACE [TRACE 7K8B +0 7KN2 MNEMGEO 7L7L 4HACRO 7LM= 4HDOWN 7M6W 4HCORE 7MLG 4HTRAC 7N66 #DEF POUND=MNEMGEO-RJUMPSGEO 7NKQ #DEF TRUESAVE=MINBUFF+3-640 7P5B #DEF QUESTMK=STRUCTS+#140 7PK2 #DEF RRRR=STRUCTS+#71 7Q4L #DEF ORGCALL=RRRR-1 7QJ= #DEF RIGHTJUST=STRUCTS 7R3W [ SPECIAL GEORGE MACROS OR EXTRACODES 7RHG QSPECIAL 7S36 LDX 4 TRUESAVE+640 [INSERT PROPER INST 7SGQ TXU 4 ORGCALL+640 7T2B BCC PRAPSCALL+640 7TG2 LDN 7 3 7T^L LDN 3 THEGEO+640 7WF= POOL LDX 4 0(3) 7WYW LDX 6 3(3) 7XDG TXU 6 SAVFUNCT+640 7XY6 BCC RESET+640 7YCQ ADN 3 1 7YXB '066 7 POOL+640 [[BCT NOT IN #ORD MODE IN GIN503 7^C2 BRN NOTGEORGE+640 7^WL PRAPSCALL 82B= LDN 6 #071 [CHECK REPGACED CALL 82TW TXU 6 SAVFUNCT+640 83*G BCS NOTGEORGE+640 83T6 LDX 4 18?+1]+54 [CHECK GEORGE CALLS 84#Q ANDX 4 REPLMASK+640 84SB STO 4 REPLADDR+640 85#2 LDN 3 RJUMPSGEO+640 85RL TRYNXTGEO 86?= LDX 4 0(3) 86QW BZE 4 NOTGEORGE+640 87=G TXU 4 REPLADDR+640 87Q6 BCC REPMAC+640 889Q ADN 3 1 88PB BRN TRYNXTGEO+640 8992 REPMAC 89NL ADN 3 POUND 8=8= LDX 4 0(3) 8=MW RESET 8?7G STO 4 TRUESAVE+640 8?M6 BRN MOVEON+640 8#6Q [ HANDLE SHIFT INSTRUCTIONS 8#LB SHIFTS 8*62 LDX 4 SAVFUNCT+640 8*KL ANDN 4 #1 8B5= BZE 4 NOTDOUBLE+640 8BJW LDX 4 SAVACCU+640 8C4G LDX 3 SAVEX+640 8CJ6 BCHX 3 XHCB1+640 8D3Q XHCB1 8DHB ADN 4 1 8F32 ANDN 4 #7 8FGL DCH 4 4(3) 8G2= NOTDOUBLE 8GFW LDX 4 SAVFUNCT+640 8G^G ANDN 4 2 8HF6 SLL 4 1 8HYQ ADN 4 SHIFTY+640 8JDB LDX 3 18?+1]+54 [GET STORED WORD 8JY2 SRL 3 10 8KCL ANDN 3 #3 8KX= ADX 3 4 8LBW LDX 4 0(3) 8LWG BRN RESET+640 8MB6 [ HANDLE NORM INSTRUCTIONS 8MTQ NORM 8N*B LDX 4 SAVFUNCT+640 8NT2 ANDN 4 #1 8P#L BZE 4 NORM2+640 8PS= LDX 4 SAVACCU+640 8Q?W ADN 4 1 8QRG ANDN 4 #7 8R?6 LDX 3 SAVEX+640 8RQQ BCHX 3 XHCB1A+640 8S=B XHCB1A 8SQ2 DCH 4 4(3) 8T9L NORM2 8TP= LDX 4 NORMI+640 8W8W STO 4 TRUESAVE+640 8WNG BRN POSSD+640 8X86 [ SUSTY, DISTY,DELTY 8XMQ SUSTYS 8Y7B LDX 3 SAVACCU+640 8YM2 ADN 3 SUST+640 8^6L LDX 4 0(3) 8^L= BRN RESET+640 925W [ SUSWT, DISP, DEL 92KG SUSWTS 9356 LDX 3 SAVACCU+640 93JQ ADN 3 SUSW+640 944B LDX 4 0(3) 94J2 BRN RESET+640 953L [ FOR MARKING POSSIBLE DATA - FLOATING POINT, NORMALISE, LDXC ETC. 95H= [ ALSO LDX AND SUBPROGRAMMING INSTRUCTIONS 962W POSSD 96GG LDN 2 POSSDATA+640 [SHOW INST. AS POSSIBLE DATA 9726 LDN 3 MINBUFF 97FQ MOVE 2 3 97^B BRN MOVEON+640 [BACK INTO REGULAR CODE 98F2 [ GENERATES IDENTIFIER LENGTH FOR FINDIT ROUTINE 98YL Z0X LDN 5 12 99D= LDN 3 0 99XW Z0Y LDCH 7 18?+1]+7(3) 9=CG SBN 7 #20 9=X6 BZE 7 Z0Z+640 9?BQ BCHX 3 Z0RSD+640 9?WB Z0RSD '066 5 Z0Y+640 9#B2 Z0Z SLC 3 3 9#TL ADN 3 #6 9**= ANDN 3 #30 9*SW LDCT 6 0(3) 9B#G STO 6 18?+1]+55 [SAVE ROUNDED LENGTH IN B0-B5 9BS6 SRL 3 3 9C?Q STO 3 18?+1]+56 [SAVE ROUNDED LENGTH IN B0-B23 9CRB EXIT 4 0 9D?2 [ HANDLES BRANCH INSTRUCTIONS 9DQL RANCHES 9F== LDN 4 #20 9FPW LDX 3 SAVEX+640 9G9G DCH 4 4(3) 9GP6 LDN 2 RANCHDATA+640 9H8Q ADX 2 SAVACCU+640 9HNB LDX 4 0(2) 9J82 BRN RESET+640 9JML [ ENTRY POINT AFTER MOVING INTERLUDE DOWN 9K7= NEXT 9KLW [ RESET MODE 9L6G LDX 3 19?+8 [RESTORE REMEMBERED DEVICE TYPE 9LL6 STO 3 18?+3]+3 9M5Q LDN 3 3 [SIMULATE CARD READER IMAGE 9MKB STO 3 18?+1]+2 9N52 NGN 4 1 9NJL STO 4 18?+1]+20 9P4= STOZ 18?+1]+21 9PHW [ SET SEGMENT NAME UP FOR SEARCH 9Q3G LDN 2 PRNAME+640 9QH6 LDN 3 18?+1]+4 9R2Q MOVE 2 3 9RGB [ SET UP SEGMENT NAME IN THE HEADER LINE AND VERSION NO. 9S22 LDN 3 18?+3]+64 [ADDRESS OF SEGMENT NAME 9SFL MOVE 2 3 9S^= [ SEARCH SEGMENT CHAIN 9TDW LDN 1 0 9TYG CALL 0 18?+2]+0] 9WD6 BRN NOTFOUND+640 9WXQ [ SAVE RELATIVISOR 9XCB LDX 4 4(2) 9XX2 STO 4 SAVREL+640 9YBL LDN 2 PRINTGEORGE+640 [LOOK FOR GEORGE SIGN 9YW= LDN 3 18?+1]+7 [ADDRESS OF NAME FOR IDENTIFIER SEARCH 9^*W MOVE 2 3 9^TG STO 3 18?+1]+57 [INDICATE UNIVERSAL =2*6 CALL 4 Z0X+640 =2SQ LDN 5 0 [ASSUME GEORGE =3#B CALL 0 18?+2]+1] [FINDIT SUBROUTINE =3S2 LDN 5 1 [NOT FOUND SO NOT GEORGE =4?L LDX 4 2(3) =4R= ANDX 4 18?+4]+23 =5=W BZE 4 OKGEORGE+640 =5QG LDN 5 1 [POSS. 2 PRINTS FROM NON-GEORGE PROGRAM =6=6 OKGEORGE =6PQ STO 5 PRINTGSW+640 [SAVE FOR LATER CHECK =79B CALL 3 18?+2]+5] =7P2 LDN 1 PRINTHDR+647 [SET UP HEADER LINE =88L LDX 5 PRADSAVE+640 =8N= CALL 2 18?+2]+9] =97W LDN 1 PRINTHDR+651 =9MG LDX 5 PRLGSAVE+640 ==76 CALL 2 18?+2]+9] ==LQ CALL 5 18?+2]+20] =?6B LDN 2 PRINTHDR+640 =?L2 LDX 3 18?+1]+62 =#5L MOVE 2 12 =#K= CALL 3 18?+2]+19] =*4W CALL 3 18?+2]+10] [PRINT BLANKLINE =*JG [ CHECK ZERO LENGTH =B46 LDX 2 PRLGSAVE+640 =BHQ BZE 2 ZEROLEN+640 =C3B [ RESET 0? =CH2 LDN 5 1 =D2L DLA 5 18?+3]+0 [KEEP BIT 0 =DG= [ INITIALISE FOR READ =D^W SECONDPASS =FFG LDN 5 34? =F^6 STO 5 SEGBUF+640 =GDQ LDX 6 PRADSAVE+640 =GYB [ CHECK LENGTH =HD2 LDX 2 PRLGSAVE+640 [GET LENGTH =HXL TXL 2 SEGMAX+640 =JC= BCS Z2A+640 =JWW LDN 2 512 [MUST DO IT IN 2 HALVES =KBG Z2A =KW6 STO 2 SEGCUR+640 [SAVE FIRST PASS LENGTH =L*Q SBS 2 PRLGSAVE+640 [DECREMENT LENGTH TO GO =LTB ADS 2 PRADSAVE+640 [INCREMENT DRUM ADDRESS =M*2 CALL 0 18?+2]+2] =MSL BRN Z1A+640 =N#= [ ROUND AS NECESSARY =NRW LDN 7 127 =P?G ANDX 7 6 =PR6 BZE 7 Z1A+640 =Q=Q ADS 7 SEGBUF+640 =QQB LDX 0 18?+3]+11 [IF 5? DIFFERS FROM 11? THE COMP IS =R=2 TXU 0 18?+3]+5 [ON DRUM SIMULATING DA =RPL BCC PRIN1+640 [IF REAL DA INCREASE READ LENDGTH =S9= ADX 5 7 [IF SIMULATED INCREASE CORE ADDRESS =SNW BRN Z1A+640 =T8G PRIN1 =TN6 ADX 2 7 =W7Q Z1A =WMB [ READ SEGMENT DOWN OR PART OF IT =X72 CALL 0 18?+2]+3] =XLL LDX 5 SAVREL+640 =Y6= [ RESET RELATIVISOR =YKW STO 5 18?+3]+37 =^5G [ RESET WORD TYPE =^K6 STOZ 18?+1]+32 ?24Q [ FETCH FIRST WRD ?2JB Z1 LDX 3 SEGBUF+640 ?342 LDX 3 0(3) ?3HL [ AND SAVE IT ?43= STO 3 18?+1]+54 ?4GW CALL 6 18?+2]+8] [FIND FUNCTION TYPE ?52G [ ZERO IF NORMAL. NEGATIVE IF SHIFT. PSITIVE NON-ZERO IF BRANCH ?5G6 [ SAVE FUNCTION TYPE ?5^Q STO 7 STRUCTTYPE+640 ?6FB [ SET IMAGE SIZE ?6^2 LDN 4 18 ?7DL STO 4 18?+1]+25 ?7Y= [ AND CLEAR CARD LINE ?8CW LDX 6 SPACES+640 ?8XG STO 6 MINBUFF [SPACEFILL ?9C6 LDN 2 MINBUFF ?9WQ LDN 3 MINBUFF+1 ?=BB MOVE 2 17 ?=W2 [ DUMP ACCUMULATOR IN LINE ??*L LDCT 3 256 ??T= ORN 3 MINBUFF ?##W LDN 2 STRUCTS+640 ?#SG LDX 5 18?+1]+54 ?*#6 LDN 4 0 ?*RQ SLL 45 3 ?B?B DCH 4 4(3) ?BR2 STO 4 SAVACCU+640 [SAVE ACCUMULATOR ?C=L STO 3 SAVEX+640 [SAVE IN CASE OF DOUBLE SHIFT ?CQ= SRL 5 17 ?D9W STO 5 SAVFUNCT+640 [SAVE OCTAL FUNOTFON ?DPG ADX 2 5 ?F96 LDX 4 0(2) ?FNQ STO 4 TRUESAVE+640 ?G8B RETEST ?GN2 BNG 4 NOTSPECIAL+640 ?H7L TXU 4 QUESTMK+640 ?HM= BCC TRUEMNEM+640 ?J6W ADN 4 #1200 ?JLG DLA 4 SPECBRNCH+640 ?K66 BRN SPECBRNCH+640 [GO AND DEAL WITH IT ?KKQ NOTSPECIAL ?L5B TXU 4 RRRR+640 [IS IT A REPLACER ?LK2 BCS TRUEMNEM+640 [WE HAVE TRUE MNEMONIC ?M4L SBN 2 1 [BACK OFF ONE ?MJ= LDX 4 0(2) ?N3W BRN RETEST+640 ?NHG TRUEMNEM ?P36 STO 4 TRUESAVE+640 [SAVE FINAL OUTPUT MNEMONIC ?PGQ LDX 4 PRINTGSW+640 [CHECK IF COMP IS GEORGE ?Q2B [ COMPILATION IS GEORGE IF G3MARK IS AN IDENTIFIER ?QG2 BZE 4 QSPECIAL+640 ?Q^L NOTGEORGE ?RF= LDN 3 0 [CLEAR MODIFIER ?RYW LDCH 6 TRUESAVE+640(3) ?SDG TXU 6 SUGGESTD+640 ?SY6 BCC POSSD+640 ?TCQ SBN 6 #17 ?TXB BZE 6 POSSD+640 ?WC2 BCHX 3 XHCB2+640 ?WWL XHCB2 ?XB= LDCH 6 TRUESAVE+640(3) ?XTW TXU 6 SUGGESTD+640 ?Y*G BCC POSSD+640 ?YT6 BCHX 3 XHCB3+640 ?^#Q XHCB3 ?^SB BCHX 3 XHCB4+640 #2#2 XHCB4 #2RL LDCH 6 TRUESAVE+640(3) #3?= TXU 6 SUGGESTD+641 #3QW BCC POSSD+640 #4=G LDX 6 TRUESAVE+640 #4Q6 TXU 6 RIGHTJUST+640 #59Q BCC POSSD+640 #5PB LDX 6 SAVFUNCT+640 #692 SBN 6 #162 #6NL BNG 6 MOVEON+640 #78= SBN 6 #3 #7MW BNG 6 POSSD+640 #87G [ FINISH LINE #8M6 MOVEON #96Q LDN 1 MINBUFF+6 #9LB LDX 7 STRUCTTYPE+640 #=62 LDX 5 18?+1]+54 [GET STORED WORD #=KL BZE 7 PRI16+640 [NON-BRANCH #?5= BNG 7 PRI16A+640 [IT'S A SHIFT #?JW SLL 5 3 [RID OF X ##4G LDN 4 0 ##J6 SLL 45 6 #*3Q TXU 4 TIXE+640 [IS IT AN EXIT #*HB BCC PRI17+640 #B32 LDX 6 18?+3]+3 [FIND CURRENT MODE #BGL BNZ 6 PRI17+640 #C2= [ EXTENDED MODE AND MAY BE GEORGE #CFW BNG 5 PRI18+640 #C^G [ NOT A REPLACED JUMP #DF6 SLL 5 1 #DYQ LDX 6 STRISK+640 #FDB STO 6 MINBUFF+5 #FY2 BPZ 5 PRI19+640 #GCL [ NEGATIVE RELATIVE #GX= SRL 5 10 #HBW ORX 5 NEGFORCE+640 #HWG NGX 5 5 #JB6 LDN 6 #200 [CHANGE + TO - #JTQ ADS 6 MINBUFF+5 #K*B BRN PRI20+640 #KT2 PRI19 #L#L SRL 5 10 #LS= BRN PRI20+640 #M?W PRI16 #MRG ANDN 5 #7777 #N?6 BRN PRI16B+640 #NQQ PRI16A #P=B ANDN 5 #1777 #PQ2 PRI16B #Q9L [ GET MODIFIER #QP= LDX 6 18?+1]+54 #R8W SRL 6 12 #RNG ANDN 6 #3 #S86 BZE 6 PRI20+640 #SMQ SLL 6 6 #T7B ORX 6 MODIFS+640 #TM2 STO 6 MINBUFF+8 #W6L BRN PRI20+640 #WL= PRI17 #X5W SRL 5 9 #XKG BRN PRI20+640 #Y56 PRI18 #YJQ ADN 1 2 #^4B SLL 5 1 #^J2 SRL 5 10 *23L LDX 6 SPACES+640 *2H= ADN 6 #10 *32W STO 6 MINBUFF+7 *3GG ADN 6 #1 *426 SRC 6 12 *4FQ STO 6 MINBUFF+9 *4^B PRI20 *5F2 CALL 2 18?+2]+9] *5YL STOZ 18?+1]+26 [FORCE PRINT *6D= STOZ 18?+1]+27 *6XW [ FORCE PRINT *7CG CALL 4 18?+2]+4] *7X6 [ UPDATE POSITION *8BQ LDN 3 1 *8WB ADS 3 18?+3]+0 *9B2 ADS 3 SEGBUF+640 *9TL ADS 3 18?+1]+21 [INCREMENT LINE NUMBER *=*= SBS 3 SEGCUR+640 *=SW LDX 3 SEGCUR+640 *?#G BNZ 3 Z1+640 *?S6 LDX 2 PRLGSAVE+640 [GET LENGTH TO GO *#?Q BNZ 2 SECONDPASS+640 [GO ROUND ONCE MORE TO COMPLETE *#RB ZEROLEN **?2 NOTFOUND **QL LDN 3 19?+0 [RESET LINE NUMBERS AS BEFORE *B== LDN 4 18?+1]+20 *BPW MOVE 3 2 *C9G [ RESET INPUT TYPE *CP6 LDX 3 19?+6 *D8Q STO 3 18?+1]+2 *DNB [ RESET 0? *F82 LDX 0 X0SAVE+640 *FML EXIT 0 0 *G7= #SKI 77?>512$512 [SKIP IF BEFORE GIN513 *GLW #DEF 18?+1]+31=1 [LIST AS IF NOT MACRO *H6G #JUM START *HL6 #SKI 77?>512$512 [SKIP IF BEFORE GIN513 *J5Q #DEF 18?+1]+31=0 [LIST AS MACRO *JKB #FRL *K52 #DEF 0?=0 *KJL #DEF 37?=19?+4] *L4= #DEF 3?=19?+8] *LHW #SKI 19?+8]-2 *M3G ( *MH6 #SKI 19?+8]-1 *N2Q #EXT *NGB #SKI 19?+8] *P22 #COM *PFL ) *P^= #LIS 19?+7] *QDW #NOR