0JZKER JAL:ASCNUM.TECA0JZXUZK0JZKERI1X3.TTTA0JX4MU(Q5)UN The user input the number "N" = QN 0JXS0KZK:GS0JHK0JZKERI1X1.TTTA0JXAZK0JHK0JZKERI1X2.TTTA0JXS0KZKGS 0JIERZJ27I27I0JXFZKMFA "Start_string" the user input 0JXS0KZK:GS0JXT0KZK:GT EXTN Macro Created: 0JHKI<I!A!I<I0UJ27II1:A27II ZU227IIQ2-0"E@O/T/'27II0UH27II SGS27II:;27II 0JZK>27IIZV0J0,ZPW27IIZK!D!I 0UJ27II(QN)<1:A27II>27II ZU227IIQ2-0"E@O/V/'27II0UH27II ZV0J0,ZPW27IIZK>27II@O/B/'27II!T!27II QH-3"L1%H27II@O/A/'27II@O/B/'27II!V!27II !B!27I27I0JZVZXY0JHK0JZKGA0JS.KIEXT0J27IIEWZJ27I27I0JXEZKME0JHK0JZKGA0J0J27IIERZJ27I27I0JXEZKME0JHK^A EXTN.TEC - Please Be Patient As This May Take A While.  Results EXTRACed MYEC0JZKEWEXT.TTTGYEG@ZZZZZZ.ZZZ ! EXTN ! 0JZKER JAL:ASCNUM.TECA0JZXUZK0JZKERI1X3.TTT! GET "n" THE USER DESIRES TO USE ! A 0JX4MU(Q5)UN The user input the number "N" = QN 0JXS0KZK:GS 0JHK0JZKERI1X1.TTTA 0JXAZK0JHK0JZKERI1X2.TTTA 0JXS0KZKGS 0JIERZJ27I27I0JXFZKMFA  "Start_string" the user input 0JXS0KZK:GS 0JXT0KZK:GT  EXTN Macro Created: 0JHKI <I !A!I<I0UJ27II1:A27II ZU227IIQ2-0"E@O/T/'27II0UH27II SGS27II:;27II 0JZK >27II ZV 0J0,ZPW27IIZK !D!I 0UJ27II(QN)<1:A27II>27II ZU227IIQ2-0"E@O/V/'27II 0UH27II ZV 0J0,ZPW27IIZK > 27II@O/B/'27II!T!27II QH-3"L1%H27II@O/A/'27II@O/B/'27II !V!27II !B!27I27I0J ZV ZXY 0JHK0JZKGA0J S.KIEXT0J27IIEWZJ27I27I0JXEZKME0JHK0JZKGA0J 0J27IIERZJ27I27I0JXEZKME0JHK^A EXTN.TEC - Please Be Patient As This May Take A While.   Results EXTRACed MY EC0JZKEWEXT.TTTGYEG@ZZZZZZ.ZZZ ! EXTN ! ! THIS COMMAND LINE WILL EXTN LINES FROM A FILE BASED UPON ! ! A STARTING STRING AND A NUMBER OF FOLLOWING LINES. ! ! ! ! THE ORIGIONAL FILES WILL REMAIN UNMODIFIED ! ! ! ! THE RESULTS WILL BE PLACED IN "FILENAME.EXT" ! ! ! ! GET THE MACRO FOR DOING THE ASCII NUMBER TO TECO NUMBER CONVERSION ! ! PUT IT IN BUFFER "U" ! ! THE NUMBER IT CONVERTS TO IS IN BUFFER "5" ! ! THE NUMBER IT CONVERTS FROM IS IN BUFFER "4" ! 0JZKER JAL:ASCNUM.TECA0JZXUZK0JZKERI1X3.TTT! GET "n" THE USER DESIRES TO USE ! ! ELIMINATE ANY CARRIAGE RETURNS! A  ! CONVERT THE NUMBER FROM ASCII TO THE TECO EQIVALENT ! 0JX4MU! LOAD BUFFER "N" WITH THE VALUE OF THE CHARACTER ! (Q5)UN ! SHOW THE USER THE "n" !  The user input the number "N" = QN 0JXS0KZK:GS 0JHK 0JZKERI1X1.TTT! GET THE NAME OF THE FILE ! ! ELIMINATE ANY CARRIAGE RETURNS! A ! SAVE IT IN "A" BUFFER! 0JXAZK0JHK 0JZKERI1X2.TTT! GET START STRING THE USER DESIRES TO USE ! ! ELIMINATE ANY CARRIAGE RETURNS! A ! SAVE THE START STRING FILE NAME IN THE "S" BUFFER ! 0JXS0KZK! GET THE ACTUAL "START_STRING" ! ! OUT OF THE "F" BUFFER ! GS 0JIERZJ27I27I0JXFZKMF! ELIMINATE ANY CARRIAGE RETURNS! A ! SAVE THE START STRING IN THE "S" BUFFER !  "Start_string" the user input 0JXS0KZK:GS 0JXT0KZK:GT ! SHOW THE USER THE CREATED MACRO !  EXTN Macro Created:  ! BUILD THE EXTN MACRO ! ! READ IN A LINE AT A TIME ! ! KILL TILL START STRING FOUND ! ! WRITE OUT EACH TILL STOP STRING FOUND ETC. ! ! ! ! THE WAY TO DO THIS IS TO HAVE TWO SECTIONS IN THE MAIN LOOP THAT ! ! EXECUTE "START" STRING MACRO TO KILL TILL "START" FOUND THEN GO TO ! ! SECOND MACRO TO SAVE TILL "STOP" FOUND ! 0JHK ! CREATE THE "EXTN" MACRO STRING MARO ! !~ ! ! TOP OF LOOP ! I <I !A!I<! ZERO ZERO PAGE TEST BUFFER ! I0UJ27I! READ A LINE ! I1:A27I!PUT BUFFER LENGTH IN BUFFER 2 ! I ZU227I! IF NO MORE LEFT IN THIS FILE DONT TRY TO EXTN ANY MORE ! IQ2-0"E@O/T/'27I! RESET THE BUFFER LENGTH TEST ! I0UH27I! SEARCH FOR THE "START_STRING" & KILL TILL ITS FOUND ! I SGS27I! ON SEARCH SUCESS EXIT LOOP ! I:;27I! KILL THE INPUT LINE BECAUSE "START_STRING" NOT FOUND YET ! I 0JZK >27I ! END OF FIRST LOOP ! ! "START_STRING" FOUND SO START SAVING TILL "STOP_STRING FOUND ! ! ! ! TOP OF SECOND LOOP ! ! ! ! SHOW THE USER WHAT WAS SAVED - SAVE THE "START_STRING" LINE ALSO ! I ZV 0J0,ZPW27IIZK !D!I 0UJ27I! READ "N" LINES ! I(QN)<1:A27II>27I!PUT BUFFER LENGTH IN BUFFER 2 ! I ZU227I! IF NO MORE LEFT IN THIS FILE DONT TRY TO EXTN ANY MORE ! IQ2-0"E@O/V/'27I! RESET THE BUFFER LENGTH TEST ! I 0UH27I! SAVE "N" LINES ! I ZV 0J0,ZPW27IIZK > 27I! GO TO END OF MACRO TO CLOSE FILE ! I@O/B/'27I I!T!27I! NOT 3 EMPTY BUFFERS YET SO NOT DONE ! I QH-3"L1%H27II@O/A/'27I! GO TO END OF MACRO TO CLOSE FILE ! I@O/B/'27II !V!27I ! NOT 3 EMPTY BUFFERS YET SO NOT DONE GO BACK TO TOP OF SECOND LOOP ! !I QH-3"L1%H27II@O/D/'27I! ! ALL DONE THIS FILE BECAUSE EMPTY PAGE WAS READ IN ! I !B!27I27I ! SAVE THE CREATED "EXTN" MACRO IN BUFFER "Y" ! 0J ZV ZXY 0JHK ! OPEN THE OUTPUT FILE FROM BUFFER "A" USE BUFFER "E" ! 0JZKGA0J S.KIEXT0J27IIEWZJ27I27I0JXEZKME0JHK! OPEN THE INPUT FILE FROM BUFFER "A" USE BUFFER "E" ! 0JZKGA0J 0J27IIERZJ27I27I0JXEZKME0JHK ! NOW READ IN INPUT FILE A LINE AT A TIME "FILE A" ! ! AND OUTPUT TO FILE "C" ! ^A EXTN.TEC - Please Be Patient As This May Take A While.  ! SHOW THE USER WHAT HE GOT !  Results EXTRACed ! EXECUTE THE "EXTN" MACRO ! MY ! CLOSE THE OUTPUT FILE ! EC ! TEMP SAVE THE CREATED "EXTN MACRO ! 0JZKEWEXT.TTTGY EG@ZZZZZZ.ZZZ