ABSTRACT FOR RENUMB.BAS ======================= RENUMB WILL RE-NUMBER THE LINES OF ANY RT-11 SINGLE USER BASIC PROGRAM. VARIOUS ERROR CONDITIONS ARE DETECTED AND FLAGGED; THE PROGRAM CAN THEREFORE BE USED FOR DIAGNOSING SIMPLE PROGRAM ERRORS. WRITE-UP FOR RENUMB.BAS ======================= RENUMB.BAS, WRITTEN IN SINGLE USER RT-11 BASIC, IS A PROGRAM TO RE-NUMBER THE LINES OF ANY PROGRAM WRITTEN IN THE SAME LANGUAGE. THE USER MUST SPECIFY THE NAME OF THE FILE TO BE RE-NUMBERED, THE NAME OF THE NEW FILE TO STORE THE RE-NUMBERED PROGRAM, THE FIRST LINE NUMBER OF THE RE-NUMBERED PROGRAM AND THE STEP SIZE BETWEEN LINES. ANY LEGAL RT-11 FILE NAMES ARE PERMISSIBLE; THE DEFAULT DEVICE (DK:) AND THE FILE EXTENSION .BAS ARE ASSUMED IF NOT SPECIFIED. THE OLD AND NEW FILE NAMES MAY BE THE SAME. A COPY OF THE ORIGINAL PROGRAM IS STORED IN THE FILE DK:RENUMB.COP; THIS SAFEGUARDS AGAINST UNINTENTIONAL INTERRUPTIONS OF THE POGRAM WHILE RE-NUMBERING IS IN PROGRESS. RENUMB CHANGES ALL LINE NUMBER REFERENCES EXCEPT THOSE WITHIN REM STATEMENTS. THE FOLLOWING ERROR CONDITIONS ARE DETECTED: 1. REFERENCE TO AN UNDEFINED LINE NUMBER. THE OFFENDING LINE NUMBER IS REPLACED BY *???*, AN ERROR MESSAGE IS TYPED AND RE-NUMBERING CONTINUES. 2. LINE NUMBER WITH NO STATEMENT. A WARNING MESSAGE IS TYPED AND RE-NUMBERING CONTINUES. 3. LINE LONGER THAN 72 CHARACTERS (AFTER RE-NUMBERING). THE LINE IS TRUNCATED TO 72 CHARACTERS, AN ERROR MESSAGE TYPED AND RE-NUMBERING CONTINUES. 4. LAST LINE NUMBER IS LARGER THAN THE LEGAL BASIC MAXIMUM. A WARNING MESSAGE IS TYPED. 5. PROGRAM IS TOO LONG TO BE RE-NUMBERED. RUN IS ABORTED AND AN ERROR MESSAGE TYPED; SEE PROGRAM LISTING TO ALTER MAXIMUM LENGTH. NOTE: IF OLD AND NEW PROGRAM NAMES WERE THE SAME, THE FILE WILL HAVE BEEN CORRUPTED AND THE ORIGINAL PROGRAM WILL BE STORED IN RENUMB.COP. 6. LINE NUMBERS IN ORIGINAL PROGRAM NOT IN ASCENDING ORDER. RUN IS ABORTED AND AN ERROR MESSAGE PRINTED. SEE NOTE FOR ERROR CONDITION 5 ABOVE. RUNNING RENUMB ============== RENUMB IS RUN AS A STANDARD BASIC PROGRAM UNDER ANY VERSION OF BASIC WITH STRING SUPPORT. E.G:- .R BASIC BASIC V01-05.2 * READY OLD OLD FILE NAME--RENUMB READY RUN NOTES: 1. RENUMB EXPECTS ALL LINE NUMBER REFERENCES TO BE DELIMITED ===== BY SPACES. FOR EXAMPLE GO TO100 WILL NOT BE DETECTED AS A LINE REFERENCE. THIS PROBLEM CAN BE OVERCOME IF THE PROGRAM IS STORED (OR REPLACED) FROM THE BASIC COMMAND LEVEL BEFORE RUNNING RENUMB, AS ANY MISSING SPACES WILL BE INSERTED BY BASIC. 2. IF THE LAST LINE OF THE ORIGINAL PROGRAM IS NOT TERMINATED WITH A , BASIC WILL TYPE ?OOD AND THE RUN WILL BE ABORTED. THE ORIGINAL PROGRAM WILL BE SAVED IN RENUMB.COP. NICK HAMMOND, NEUROPSYCHOLOGY RESEARCH UNIT, FRIERN HOSPITAL, FRIERN BARNET RD., LONDON N11 3BP, ENGLAND