9 22FL #LIS K0EDIT>K0ALLGEO>0 12 22K9 ... SEG EDIT,867,COMM,,G505,G571 4 22NS ...[ 15 22SC ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 13 22Y2 ...[ THIS EXCLUDES CODE UNDER #SKI G505 13 233K ...[ AND UNDER #SKI G571 4 2378 ...[ 7 23=R ...#OPT G505 = 0 6 23BB ...#SKI G505&1 19 23F_ ...# WITH UGUG EDIT M505 (3-SHIFT FOR ONLINE PROGRAMS AND EDITOR) 7 23KJ ...#OPT G571 = 0 6 23P7 ...#SKI G571&1 16 23SQ ...# WITH UGUG EDIT M571 (IMPROVED EDIT AMORPHOUS FILE) 4 23YG # 21 24D6 # THIS SEGMENT OPENS THE FILES FOR THE EDIT COMMAND. IT IS ENTERED 21 24XQ # FROM THE COMMAND PROCESSOR AT K1EDIT AND IF ALL IS WELL IT EXISTS 18 25CB # TO K1EDITOR. DESCRIPTION IS IN THE USER SPECIFICATION. 4 25X2 # 20 26BL SEGENTRY K1EDIT,N1EDIT [MODULAR ENTRY POINT FOR 'EDIT' 18 26W= SEGENTRY K2EDIT,N2EDIT [ENTRY POINT FOR 'GEDIT' 4 27*W # 13 27TG READY 15HEDITOR IS READY [HI 10 282N MANAGER 12HMANAGER 9 287W UBTEST 12HBTEST 4 28*6 # 14 28SQ N2EDIT ['GEDIT' 4 29#B # 13 29S2 # PARAMETERS AS FOR KIEDIT - PLUS 21 2=?L # PARAMETER FOUR =ONLY INSERTING DEVELOPMENT CODE (MUST BE ^D^) 4 2=R= # 8 2?=W LDCT 0 #001 17 2?QG ORS 0 EXT+11(2) [SET 'GEDIT' MARKER 8 2#=6 BRN PAR1 4 2#PQ # 21 2*9B N1EDIT [ENTRY POINT FROM COMMAND PROCESSOR 4 2*P2 # 12 2B8L # PARAMETER ONE =OLDFILE NAME 12 2BN= # PARAMETER TWO =NEWFILE NAME 13 2C7W # PARAMETER THREE =EDITFILE NAME 4 2CMG # 4 2D76 [ 14 2DLQ [ ****** PARAMETER ONE ****** 4 2F6B [ 8 2FL2 LDCT 0 #001 9 2G5L ORS 0 EXT+11(2) 17 2GK= ERS 0 EXT+11(2) [UNSET 'GEDIT' MARKER 4 2H4W PAR1 20 2HJG CALL 6 PARA [READ FIRST PARAMETER OF EDIT AND 19 2J46 BPZ 7 XER7 [IF NULL GIVE COMMAND ERROR 21 2JHQ CALL 6 RNAME [CONVERT INTO FILE/FABSNB 18 2K3B TESTREP2 NAMEFORM,XER3 [J IF CONVERSION FAILED 20 2KH2 [OPEN OLD FILE AND LEAVE FILE/ENT 18 2L2L USEROPEN XER6,READ,LEAVE,NOERREP[DON'T REPORT ERRORS 17 2LG= TESTRPN2 OK,XRE3 [J IF OPEN FAILED 18 2L_W CALL 5 TESTMULT [HUNT FILE/ENT AND TEST 18 2MFG BRN XRE2 [MULTI-FILES - J IF SO 15 2M_6 LDX 5 ETM(3) [TYPE/MODE 15 2NDQ LDX 1 EUSE1(3) [TERMINAL? 14 2NYB LDX 0 EINF1(3) [SERIAL? 17 2PD2 BNZ 1 XER8 [J IF NOT TERMINAL 16 2PXL BPZ 0 XER8 [J IF NOT SERIAL 18 2QC= SLC 5 8 [TEST FOR TP TYPE(O/S) 18 2QWW BNG 5 XER8 [J IF SO : NOT ALLOWED 7 2RBG SRC 5 8 16 2RW6 FREECORE 3 [FREE FILE/ENT 8 2S*Q VFREE CPB,CUNI 16 2STB CREATEB 3 [GET FILE/CREATE 8 2T*2 LDCT 6 #400 15 2W#= STO 6 CEINF1(3) [SERIAL FILE 15 2WRW STO 5 CETM(3) [TYPE/NODE 6 2W_4 #UNS FTS1 4 2X6= #SKI 15 2X?G STO 6 CEINF2(3) [TO BE DUMPED 7 2XDN ...#SKI G571&1$1 4 2XKW ...( 17 2XR6 BNG 5 R0 [J IF NOT AMORPHOUS 19 2Y=Q EDCOMERR AFNA [^AMORPHOUS O/F NOT ALLOWED^ 8 2YQB BRN XER2 4 2_28 ...) 18 2_=2 R0 STO 5 AWORK1(2) [STORE SIMPLIFIED TYPE 18 2_PL LDN 3 #3720 [MAX. NO. CHARS ALLOWED 17 329= LDX 7 AZVOLUME [DEFAULT O/P LIMIT 15 32NW STO 3 AWORK2(2) [AND STORE 19 338G STO 7 AWORK3(2) [DEFAULT RECORD LIMIT OF FILE 20 33N6 STO 3 AWORK4(2) [PRECAUTION IN CASE NO ADJUNCTS 16 347Q WHATBACK [GET BSTS/FULLB 4 349# # 4 34=W # 16 34#D STEP [READ OLD FILE 16 34B2 BNZ 3 RAZ [J IF NOT EMPTY 17 34CJ EDCOMERR IPMT ['INPUT FILE EMPTY 16 34F6 EDCOMERR EDAB ['EDIT ABANDONED' 8 34GN BRN XER2 4 34J= RAZ 15 34KS BACKSPACE [AS YOU WERE 4 34MB [ 14 3572 [ ****** PARAMETER TWO ****** 4 35LL [ 20 366= CALL 6 PARA [READ SECOND PARAMETER OF EDIT 18 36KW BPZ 7 NFRIG [J IF NULL TO FRIG NAME 18 375G VFREE FILE,FABSNB [REMOVE OLD FILE/FABSNB 6 37=N #UNS FTS1 15 37CW VFREE FILE,ADJUNCTS [OLDFILE'S 13 37K6 PHOTO 6 [SNAP 19 384Q NAMETOP 3,FILE,FNAME [PERFORM CONVERSION OF SECOND 20 38JB FNORM 3 [PARAMETER (MAY HAVE ADJUNCTS) 18 3942 TESTREP2 NAMEFORM,XER2 [J IF CONVERSION FAILED 18 39HL TESTMOVE 6,T1 [J IF NOTHING HAS MOVED 18 3=3= MHUNT 3,FILE,FNAME [FIND NAME BLOCK AGAIN 20 3=GW T1 NAMETOP 3,CPB,CUNI [RENAME IN CASE OF ERROR IN OPEN 21 3?2G SETMODE 7,GENERAL,EMPTY,CREATE,LEAVE,NOERREP [DEFAULT OPEN MODES 17 3?G6 TESTRPN2 ADJUNCTS,T6 [J IF NO ADJUNCTS 16 3?_Q MHUNTW 3,FILE,ADJUNCTS [ELSE FIND BLOCK 6 3#33 ...#SKI G571&1 4 3#4# ...( 9 3#5K ... LDX 0 AWORK1(2) 20 3#6W ... BNZ 0 T1X [ NORMAL PATH UNLESS AMORPHOUS 9 3#87 ... LDX 6 A1+2(3) 18 3#9D ... BZE 6 T1X [ NO NEW TYPE SPECIFIED 10 3#=P ... MHUNTW 1,FILE,CREATE 18 3##2 ... STO 6 CETM(1) [ SET FOR FILE CREATION 19 3#*? ... DEX 6 AWORK1(2) [ B0 ZERO IF O/F AMORPHOUS 4 3#BJ ...T1X 4 3#CT ...) 15 3#FB LDCT 1 #400 [AND PICK UP 16 3#_2 ORS 3 1 [THE MAIN MODES 13 3*DL LDCH 5 A1+1(1) [BITS 16 3*Y= ANDN 5 #30 [TEST FOR APPEND 13 3BCW ERN 5 #30 [MODE 16 3BXG STO 5 AWRK4(2) [REMEMBER THEN 16 3CC6 BNZ 5 T2 [J IF NO APPEND 21 3CWQ SETMODE 7,APPEND,EMPTY,CREATE,LEAVE,NOERREP [APPEND OPEN MODES 18 3DBB T2 LDX 5 ALOGLEN(3) [GET LENGTH OF EXTENSION 18 3DW2 LDN 1 ADPAIR(3) [AND SET UP LOOP INDEX 9 3F*L SBN 5 ADPAIR-A1 7 3FT= SRL 5 1 6 3FYB #UNS FTS1 8 3G3G BZE 5 T6 6 3G6L #UNS FTS1 4 3G9Q #SKI 16 3G#W BZE 5 T5 [J NO QUALIFIER 17 3GSG T3 LDX 6 0(1) [GO DOWN THE ADJUNCTS 21 3H#6 ERN 6 #22 [BLOCK LOOKING FOR LIMIT QUALIFIER 15 3HRQ BZE 6 T4 [J IF FOUND 7 3J?B BDX 1 / 8 3JR2 BCT 5 T3 15 3K=L BRN T6 [J NO LIMIT 17 3KQ= T4 LDX 6 1(1) [GET LIMIT IN BINARY 19 3L9W SBN 6 1 [CONVERT TO EDITOR'S COUNTING 15 3LPG STO 6 AWORK3(2) [STORE LIMIT 6 3LWN #UNS FTS1 4 3M3W #SKI 18 3M96 T5 FREECORE 3 [FREE FILE/ADJUNCTS BLOCK 16 3MNQ T6 USEROPEX XER5,7 [OPEN 6 3MTY #UNS FTS1 10 3N36 VFREE FILE,ADJUNCTS 17 3N8B TESTRPN2 OK,XRE2 [J IF OPEN FAILED 4 3N8F P1 16 3N8J CALL 5 TESTMULT [J IF MULTI-FILE 8 3N8Q BRN XRE1 6 3N92 #SKI JDIAG1 4 3N9L ( 8 3N9N LDCT 4 #001 9 3N9Q ANDX 4 EXT+11(2) 16 3N9S BZE 4 NOG [J IF NOT GEDIT 15 3N9W MHUNT 3,FILE,FABSNB [NEWFILE'S 9 3N9Y LDX 7 ATYPE(3) 8 3N=2 ANDN 7 #200 19 3N=4 BNZ 7 NOG [J IF WORKFILE - NO CAN DO 18 3N== OPENDIR XER4,GENERAL,CAREFUL [NEEDS FILE/FABSNB OF NF 19 3N=W VFREE FILE,ENT [FREE DIRECTORY'S FILE/ENT 11 3N?G SETNCORE 5,3,FILE,FTRAP 16 3N#6 LDN 4 5 [RECORD HEADER 10 3N#Q STO 4 ETRAPRH(3) 10 3N*B LDN 5 MANAGER(1) 10 3NB2 LDN 6 ETRUSER1(3) 7 3NBL MOVE 5 3 15 3NC= LDCT 5 #400 [GROUP TRAP 15 3NCW ADN 5 #2 [READ TRAP 18 3NDG STO 5 ETRAPMODES(3) ['TG :MANAGER,GROUP,READ' 17 3NF6 SETNCORE 5,3,FILE,FAPB [RENAMED FILE/FTRAP 16 3NFQ STO 4 ETRAPRH(3) [RECORD HEADER 9 3NGB LDN 5 UBTEST(1) 10 3NH2 LDN 6 ETRUSER1(3) 7 3NHL MOVE 5 3 15 3NJ= LDN 5 #20 [ERASE TRAP 16 3NJW STO 5 ETRAPMODES(3) ['TG BTEST,ERASE' 16 3NKG TRAPADD [SET THE TRAPS 17 3NL6 CLOSETOP [CLOSE THE DIRECTORY 4 3NLQ ) 15 3P6B NOG MHUNTW 3,FILE,ENT [NEWFILE'S 15 3PM= LDX 5 AWORK4(2) [APPENDING? 17 3Q6W LDX 6 AWORK1(2) [O/F BASIC FILE TYPE 16 3QLG BNZ 5 P0 [J IF NO APPEND 6 3QNP ...#SKI G571&1 4 3QQY ...( 18 3QT7 ... ORX 6 BITS22LS [ GET NEWFILE TYPE WITH 17 3QXB ... ANDX 6 ETM(3) [ SAME B0 AS AWORK1 4 3Q_K ...) 7 3R3S ...#SKI G571&1$1 20 3R66 LDX 6 ETM(3) [FILE TYPE OF APPENDED NEWFILE 8 3RKQ P0 FREECORE 3 17 3S5B VFREE CPB,CUNI [FREE PARAMETER BLOCK 18 3SK2 VFREE FILE,FABSNB [REMOVE NEW FILE/FABSNB 20 3T4L BXU 6 AWORK1(2),TYPDF [ERROR IF NOT SAME TYPE AS O/F 9 3TJ= LDX 5 AWRK4(2) 16 3W3W BNZ 5 S7 [J IF NOT APPEND 17 3WHG WIND [WIND FILE UP TO END 4 3X36 [ 14 3XGQ [ ****** PARAMETER THREE ****** 4 3Y2B [ 19 3YG2 S7 CALL 6 PARA [READ THIRD PARAMETER OF EDIT 20 3Y_L LDCT 5 #400 [SET ONLINE SWITCH THE IF THIRD 19 3_F= BPZ 7 P5 [PARAMETER NULL J FOR ONLINE 21 3_YW CALL 6 RNAME [CONVERT INTO FILE/FABSNB 18 42DG TESTREP2 NAMEFORM,XER1 [J IF CONVERSION FAILED 19 42Y6 USEROPEN XER4,READ,LEAVE,NOERREP [OPEN 6 435# #UNS FTS1 10 43=G VFREE FILE,ADJUNCTS 17 43CQ TESTRPN2 OK,XRE1 [J IF OPEN FAILED 9 43XB VFREE FILE,FABSNB 16 44C2 CALL 5 TESTMULT [HUNT FILE/ENT 19 44WL BRN XRE0 [J IF MULTI-FILE OR COMPONENT 17 45B= LDX 6 ETM(3) [TYPE OF EDITING FILE 6 45CS ...#SKI G571&1 4 45FB ...( 19 45GY ... BPZ 6 TPED [ AMORPHOUS EDIT FILE ILLEGAL 9 45JG ... LDX 0 AWORK1(2) 20 45L4 ... BZE 0 S7X [ AMORPHOUS N/F - ALLOW ANY E/F 19 45ML ... BNG 0 S7Y [ TYPED O/F - E/F MUST MATCH 17 45P8 ... ANDX 6 BITS22LS [ ELSE MUST MATCH N/F 4 45QQ ...S7Y 4 45S# ...) 11 45TW BXU 6 AWORK1(2),TPED 6 4634 ...#SKI G571&1 4 468= ...S7X 7 46*G FREECORE 3 17 46T6 FILEMOVE 0,2 [CLEVER STACK SHUFFLE 17 47#Q LDN 5 0 [UNSET ONLINE SWITCH 15 47SB P2 VFREE CPB,CUNI [FREE BLOCK 6 48#2 #SKI JDIAG1 4 48RL ( 4 49?= [ 14 49QW [ ****** PARAMETER FOUR ****** 4 4==G [ 9 4=Q6 STOZ AWORK4(2) 6 4=W3 ...#SKI G505&1 20 4=_Y ... PARUNACC [ 1ST UNACCESSED PARAM (4 OR 5) 7 4?5T ...#SKI G505&1$1 7 4?9Q PARAPASS 10 4?PB MHUNT 3,CPB,CUNI 9 4#92 NGX 7 ANUM(3) 17 4#NL BPZ 7 P4 [J IF NO PAPARAMETER 8 4*8= LDCT 7 #001 9 4*MW ANDX 7 EXT+11(2) 17 4B7G BZE 7 XIVP [NOT DOING A GEDIT 9 4BM6 LDX 7 ANUM(3) 8 4C6Q ANDN 7 #7777 7 4CLB SBN 7 1 18 4D62 BNZ 7 XIVP [MORE THAN ONE CHARACTER 9 4DKL LDCH 7 APARA(3) 8 4F5= SBN 7 #44 14 4FJW BNZ 7 XIVP [NOT [D^ 8 4G4G LDN 7 #020 19 4GJ6 STO 7 AWORK4(2) [SET SPECIAL INSERT MARKER 9 4H3Q P4 VFREE CPB,CUNI 4 4HHB ) 18 4J32 ALTLEND FX2,CPATLEN+IEXT [STRETCH ACTIVITY BLOCK 18 4JGL STOZ CPATLEN+A1(2) [THEN WE HAVE TO ZEROISE 16 4K2= LDN 6 CPATLEN+A1(2) [THE EXTENSION 17 4KFW LDN 7 CPATLEN+A1+1(2) [THIS INITIALISES ALL 15 4K_G MOVE 6 IEXT-1 [THE POINTERS 16 4LF6 STO 5 IEFT(2) [ONLINE SWITCH 7 4LYQ LDN 4 1 17 4MDB STO 4 IEFS(2) [ONE EDIT FILE AND 17 4MY2 STO 4 IEON(2) [ONE OLD FILE SO FAR 8 4NCL LDCT 4 #400 17 4NX= STO 4 IEVS(2) [NO VISIBLE SPACE YET 17 4PBW STO 4 IEDS(2) [NO DUMMY SYMBOL YET 15 4PWG STO 4 IEPF(2) [NO PFCC YET 9 4QB6 LDX 4 AWORK3(2) 18 4QTQ STO 4 IENL(2) [NEW FILE RECORD LIMIT 9 4R*B LDX 5 AWORK2(2) 6 4RT2 #SKI JDIAG1 4 4S#L ( 8 4SS= LDN 4 A1+2 19 4T?W STO 4 IEIG(2) [EDIT FILE RECORD HDDR SIZE 8 4TRG LDCT 6 #001 9 4W?6 ANDX 6 EXT+11(2) 16 4WQQ BZE 6 NOTG [J IF NOT GEDIT 7 4X=B ADN 4 2 8 4XQ2 LDN 6 #4 17 4Y9L ADX 6 AWORK4(2) [FOURTH PAPARAMETER 16 4YP= ORS 6 IESW(2) [SET GEDIT MARKER 19 4_8W SBN 5 8 [DON'T COUNT SPECIAL WORDS 19 4_NG NOTG STO 4 IEOG(2) [OLD FILE RECORD HDDR SIZE 19 5286 STO 4 IENG(2) [NEW FILE RECORD HDDR SIZE 4 52MQ ) 19 537B STO 5 IENH(2) [MAX CHAR FOR NEW FILE RECORD 17 53M2 SETNCORE 32,3,FILE,FAPB [GET AN OUTPUT BLOCK 7 546L LDN 0 0 18 54L= LDX 5 AWORK1(2) [GET OLD FILE TYPE/MODE 18 555W STO 5 IEOT(2) [SET OLDFILE TYPE/MODE 6 55?4 ...#SKI G571&1 17 55D= ... BZE 5 Q1 [ NEWFILE AMORPHOUS 8 55KG ANDN 5 #10 16 5656 BNZ 5 Q1 [J IF TR GRAPHIC 19 56JQ ADN 0 #7400 [ELSE SET MODE CHAR = ALPHA 14 574B Q1 ADN 0 #41 [SET PFCC 17 57J2 STO 0 A1+1(3) [SETTING FOR O/P FRLE 6 583L #SKI JDIAG1 4 58H= ( 19 592W STOZ A1+2(3) [NULL INITIAL SEQUENCE WORD 7 59GG LDN 5 0 9 5=26 LDX 4 AWORK4(2) 18 5=FQ BZE 4 NOTD [J IF NO 'D' PARAMETER 8 5=_B LDCT 5 #400 8 5?F2 NOTD ADX 5 ACES 18 5?YL STO 5 A1+3(3) [INITIAL SECOND KEY WORD 4 5#D= ) 20 5#XW DOWN EDITPT,10 [READ FIRST RECORD OF OLD FILE 17 5*CG ... BRN T63A [J TO CLEAR BREAKIN 15 5D*= T73 LDN 0 8 [EXAMINE THE 17 5DSW ANDX 0 CONTEXT(2) [CONTEXT IN WHICH THE 9 5F#G LDX 5 IEFT(2) 18 5FS6 BZE 5 P3 [EDIT COMMAND WAS ISSUED 18 5G?Q BZE 0 P3 [AND J IF NOT MOP ONLINE 10 5GRB SETNCORE 4,3,CPB,CUNI 9 5H?2 LDN 2 READY(1) 8 5HQL LDN 3 A1(3) 7 5J== MOVE 2 4 7 5JPW LDN 5 0 16 5K9G LDN 6 15 [IF MOP ONLINE 18 5KP6 LDN 7 #40 [OUTPUT 'EDITOR IS READY' 15 5L8Q OUTMON 5,A1,7 [ 17 5LNB OUTMON 6,A1,7,CPB,CUNI [IN COMMENT CATEGORY 15 5M82 OUTMON 5,A1,7 [ 9 5MML VFREE CPB,CUNI 21 5MS4 FIXTRA ESP1 [****EDITOR SPECIAL FOR PLESSEY**** 4 5MYG P3 8 5N4Y BRN SP1 11 5N9B OUTPAR TIMENOW,JOBMILL 9 5N*S MONOUT EDSTART 16 5NCL SP1 ACROSS EDITOR,1 [START EDITING 16 5ND4 ...T63A DOWN EDITET,4 [CLEAR BREAKIN 19 5NDG ... BRN T73 [IGNORE BREAKIN & CONTINUE 8 5NDY ... BRN T73 4 5NFD # 4 5NH= T63 15 5NK4 ACROSS EDITOR,2 [CLOSE DOWN 4 5NLW # 18 5P6G TESTMULT [TEST FOR MULTIFILE OR COMPONENT OF MULTIFILE 19 5PL6 TREP STREAM,TMCER [DOES SUBREPLY INDICATE M-F 17 5Q5Q MHUNTW 3,FILE,ENT [USEROPEN MUST LEAVE 14 5QKB LDCT 0 #20 [CHECK B4 20 5R52 ANDX 0 EINF1(3) [INDICATES MULTIFILE COMPONENT 14 5RJL BNZ 0 TMCER [J IF SO 15 5S4= EXIT 5 1 [NORMAL EXIT 4 5SHW # 20 5WGB TMCER SETREP NOSTRMS [M-F NOT ALLOWED FOR THIS COM. 15 5X22 EXIT 5 0 [ERROR EXIT 4 5XFL # 18 5X_= PARA SBX 6 FX1 [OBTAIN NEXT PARAMETER 7 5YDW SPARAPASS 10 5YYG MHUNT 3,CPB,CUNI 8 5_D6 ADX 6 FX1 9 5_XQ NGX 7 ANUM(3) 7 62CB EXIT 6 0 4 62X2 # 17 63BL RNAME SBX 6 FX1 [NORMALISE 7 63W= PHOTO 7 10 64*W NAMETOP 3,FILE,FNAME 6 64F2 #UNS FTS1 7 64J6 FNORM 3 6 64M= #UNS FTS1 4 64QB #SKI 7 64TG FNORM 2 9 65*6 TESTMOVE 7,RNAM1 10 65SQ MHUNT 3,FILE,FNAME 8 66#B RNAM1 ADX 6 FX1 10 66S2 NAMETOP 3,CPB,CUNI 7 67?L EXIT 6 0 4 67R= # 8 68=W XCLSE SBX 6 FX1 6 68QG CLOSE 8 69=6 ADX 6 FX1 7 69PQ EXIT 6 0 4 6=9B # 8 6=P2 XCLAB SBX 6 FX1 8 6?8L CLOSEABANDON 8 6?N= ADX 6 FX1 7 6#7W EXIT 6 0 4 6#MG # 7 6#P9 P5 LDN 6 8 10 6#QY ANDX 6 CONTEXT(2) 6 6#R* ...#SKI G505&1 18 6#RQ ... BNZ 6 RU1 [J IF MOP & TEST IF SHIFT 7 6#S7 ...#SKI G505&1$1 14 6#SM BNZ 6 P2 [J IF MOP 9 6#WB LDX 6 CPLEV(2) 16 6#Y5 BNZ 6 P2 [J IF CPLEVEL>0 16 6#_S EDCOMERR IEYJ [NO JOB SOURCE 8 6*3H BRN XER1 4 6*5= # 6 6*5? ...#SKI G505&1 4 6*5# ...( 17 6*5* ...# A CHOICE OF TWO OPTIONS IS OFFERED AT COMPILE TIME. 19 6*5B ...# BY DEFAULT, ACTION IS STANDARD UNLESS 'SHIFT' IS SPECIFIED 19 6*5C ...# AS PARAMETER %D OR LATER, IN WHICH CASE INPUT IS TAKEN IN 17 6*5D ...# THE SHIFT MODE AND W/L OUTPUT APPEARS IN SHIFT FORM. 20 6*5F ...# TO MAKE SHIFT ACTION THE DEFAULT FOR NORMAL OR ALLCHAR FILES, 20 6*5G ...# THE LINE '#ALT G505ED = 1' SHOULD BE INCLUDED IN THE RESTORE 20 6*5H ...# PACK BEFORE THE CALL OF USERMODS. DEFAULT SHIFT ACTION CAN BE 19 6*5J ...# OVERRIDDEN BY 'GRAPHIC' AS %D OR LATER. EITHER PARAMETER 16 6*5K ...# CAN BE ABBREVIATED TO THE FIRST TWO CHARACTERS. 7 6*5L ...#OPT G505ED = 0 4 6*5M ...# 7 6*5N ...#SKI G505ED<1$1 4 6*5P ...( 9 6*5Q ...ZSH 2,2HSH 21 6*5R ...RU1 BNZ 7 P2 [ NO MORE PARAMS - AVOID PARABEG IF 21 6*5S ... VFREE CPB,CUNI [ ADDITIONAL PARAM CAN'T BE THERE 10 6*5T ... PARABEG 1,ZSH(1),,,0 10 6*5W ... MHUNT 3,CPB,CUNI 9 6*5X ... LDX 0 ANUM(3) 18 6*5Y ... BNG 0 P2 [ 'SHIFT' NOT SPECIFIED 4 6*5_ ...) 6 6*62 ...#SKI G505ED 4 6*63 ...( 9 6*64 ...RUGR 2,4HGR 15 6*65 ...RU1 LDXC 0 AWORK1(2) [FILE TYPE 18 6*66 ... BCC P2 [B0 CLEAR SO AMORPHOUS 15 6*67 ... ANDN 0 #10 [GRAPHIC MASK 15 6*68 ... BNZ 0 P2 [GRAPHIC FILE 16 6*69 ... BNZ 7 RU2 [ NO MORE PARAMS 9 6*6= ... VFREE CPB,CUNI 10 6*6? ... PARABEG 1,RUGR(1),,,0 10 6*6# ... MHUNT 3,CPB,CUNI 9 6*6* ... LDX 0 ANUM(3) 19 6*6B ... BPZ 0 P2 [PARAMETER FOUND - NOT SHIFT 4 6*6C ...) 16 6*6D ...RU2 BS 2,G502SHIFT [SET BIT IN CPAT 8 6*6F ... BRN P2 4 6*6G ...) 18 6*76 NFRIG MHUNT 3,FILE,FABSNB [INVENT OUTPUT FILENAME 9 6*LQ LDX 7 ATYPE(3) 19 6B6B ANDN 7 #200 [TEST IF OLDFILE IS WORKFILE 14 6BL2 BZE 7 NOTWF [J IF NOT 17 6C5L CALL 6 XCLSE [ELSE CLOSE OLDFILE 17 6D4W MHUNT 3,CPB,CUNI [GET NULL PARAMETER 19 6DJG LDN 4 2 [BLOCK AND FORCE PARAMETER 16 6F46 STO 4 JPARNUM(3) [NUMBER TO BE 2 9 6FHQ COMERR EDSHRIEK 17 6G3B NOTWF SMO HDREC(3) [GET FGN OF OLDFILE 9 6GH2 LDX 4 A1-2(3) 16 6H2L ADN 4 1 [INCREMENT BY ONE 18 6KDQ NOTW1 SMO HDREC(3) [PUT FGN BACK IN FABSNB 16 6KYB STO 4 A1-2(3) [AND OPEN FILE 17 6L=R USEROPEN XER5,GENERAL,EMPTY,CREATE,NOERREP,LEAVE 6 6LK8 #UNS FTS1 18 6LQB VFREE FILE,ADJUNCTS [LEFT OVER FROM OLDFILE 16 6LXL LDX 6 AWORK1(2) [PICK UP O/F TYPE 21 6MC= TESTREP2 OK,P1 [J IF OPEN WAS OK OTHERWISE REPORT 9 6MM4 VFREE FILE,ENT 19 6MWW SETNCORE 17,3,ADATA,CREADL [ERROR. FIRST DO AN UNNORM. 7 6NBG LDN 7 0 7 6NW6 PHOTO 6 8 6P*Q STO 7 A1(3) 20 6PTB UNNORM TWO [CONVERT TO A TWO-COMPONENT NAME 9 6Q*2 TESTMOVE 6,NFRG1 11 6QSL MHUNTW 3,ADATA,CREADL 14 6R#= NFRG1 SBX 7 A1(3) [-LENGTH 7 6RRW LDN 4 2 14 6S?G NGS 7 ANUM(3) [+LENGTH 20 6SR6 STO 4 JPARNUM(3) ['..IN PARAMETER 2 IN EDIT...' 9 6T=Q NAME 3,CPB,CUNI 15 6TQB BRN XRE2 [REPORT ERROR 20 6W=2 TYPDF EDCOMERR ITON [TYPES INCOMPATIBLE FOR O/F & N/F 8 6WPL BRN XER1 18 6X9= TPED EDCOMERR TPEF [TAPE PUNCH EDITING FILE 8 6XNW XER0 CALL 6 XCLSE 8 6Y8G XER1 CALL 6 XCLAB 8 6YN6 XER2 CALL 6 XCLSE 6 6_7Q XER3 ENDCOM 8 6_MB XER4 CALL 6 XCLAB 8 7272 XER5 CALL 6 XCLSE 7 72LL XER6 COMBRKIN 17 736= XER7 COMERR JPARMIS ['PARAMETER MISSING' 8 73KW XER8 CALL 6 XCLSE 20 745G COMERR JNOEDIT ['Z IS NOT SUITABLE FOR EDITING' 7 74K6 XRE0 REPALLER 7 773= BRN XER0 7 77GW XRE1 REPALLER 8 782G CALL 6 XCLAB 8 78G6 CALL 6 XCLSE 6 78_Q ENDCOM 7 79FB XRE2 REPALLER 8 79_2 CALL 6 XCLSE 6 7=DL ENDCOM 7 7=Y= XRE3 REPALLER 6 7?CW ENDCOM 6 7?XG #SKI JDIAG1 4 7#C6 ( 17 7#WQ XIVP CALL 6 XCLAB [CLOSEABANDON NEWFILE 16 7*BB CALL 6 XCLSE [CLOSE OLDFILE 16 7*W2 BNZ 5 XIVP1 [J IF NO EDITFILE 16 7B*L CALL 6 XCLSE [CLOSE EDITFILE 9 7BT= XIVP1 COMERR APFERR 4 7C#W ) 4 7CSG # 9 7D#6 MENDAREA 50,K100EDIT 4 7DRQ #END 8 ____ ...35772313000400000000