A00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 3070A/B TERMINAL UTILITIES SUBROUTINES **REVISION? YES **PACKAGE: 1 **CATEGORY: 1 **KEYWORDS: TERMINAL HP-IB **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THESE SUBROUTINES PROVIDE AN EASY METHOD TO PERFORM INPUT/OUTPUT OPERATION ON THE 3070A/B TERMINAL AND ON ANY HP-IB DEVICES ATTACHED TO IT. THESE SUBROUTINES ARE FORTRAN AND BASIC CALLABLE. THEY REQUIRE RTE II/ III HARDWARE AND 9200A SUBSYSTEM OPTION 422. ADDITIONAL 3070/B TERMINALS MAY BE REQUIRED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DESCRIPTION OF FILES 3-10 FILE# 3: %3070B : BIN.RELOC.3070 A/B TERMINAL UTILITIES FILE# 4: $TEST : BASIC TEST PROGRAM FILE# 5: $TEST : FTN4 TEST PROGRAM FILE# 6: &3070B : 3070 A/B TERMINAL UTILITIES FILE# 7: #LUN : LIBRARY FOR 5 FILE# 8: ERMES : LIBRARY FOR 5 FILE# 9: #BYTSC : LIBRARY FOR 5 FILE# 10: $NPT78 : HP-IB DEMO 3070 AND 2240. FILE# 11: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **INPUT/OUTPUT EXAMPLES: SEE EXTENDED DOCUMENTATION FILE. **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTAION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION FILE. **MISCELLANEOUS: A00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DECIMAL ARITHMETIC AND MOVE/COMPARE ROUTINES **REVISION? YES **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: DECIMAL CHARACTER COMPARE MOVE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE BCS DOS **MEMORY REQUIREMENTS: 1129 FOR CHARACTER MOVE/COMPARE; 999 FOR DECIMAL ARITHMETIC **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE DECIMAL ARITHMETIC ROUTINES PERFORM ADDITION, SUBTRACTION, AND MULTIPLICATION OF ASCII NUMERIC CHARACTER STRINGS OF UP TO 64 CHARAC- TERS. MIXING OF SIGNED, UNSIGNED, FIXED POINT AND REAL STRINGS ARE ALLOWED IN THE SAME OPERATION. LEADING, TRAILING, AND INTERSPERSED NON-NUMERIC CHARACTERS ARE IGNORED, WHILE DECIMAL-POINT PLACEMENT AND SIGN HANDLING ARE AUTOMATIC. THE MOVE/COMPARE ROUTINES CALL THE DECIMAL ARITHMETIC TO MOVE OR COM- PARE CHARACTER STRINGS. CHARACTERS ARE MOVED FROM LEFT TO RIGHT, AND OVERLAPPING IS PERMITTED. CHARACTERS ARE COMPARED FROM LEFT TO RIGHT, AND THE FIRST MISMATCH DETERMINES THE RELATION. A CONDITION CODE IS RETURNED TO INDICATE THAT THE SOURCE STRING IS LESS THAN, EQUAL TO, OR GREATER THAN THE COMPARISON STRING, TOGETHER THESE ROUTINES ALLOW TOTAL MANIPULATION OF ALPHA-NUMERIC CHARACTER STRINGS. THESE ROUTINES ARE ALGOL OR FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES **LOAD INSTRUCTIONS: LOAD INSTRUCTIONS FOR MOVE/COMPARE ROUTINES: STANDARD ASSEMBLE/COMPILE AND LOAD PROCEDURES LOAD INSTRUCTIONS FOR DECIMAL ARITHMETIC ROUTINES: 1. ASSEMBLE THE DECIMAL ARITHMETIC ROUTINES. 2. PREPARE THE VERIFICATION PROGRAM(S) PROVIDED: A. TO RUN IN A BCS ENVIRONMENT, ASSEMBLE THE PROGRAM "TEST." B. TO RUN IN A DOS ENVIRONMENT, COMPILE THE PROGRAM "VERFY." 3. IF RUNNING IN A DOS ENVIRONMENT, ASSEMBLE THE ".ERRR" ROUTINE SUPPLIED USING THE DOS ASSEMBLER. 4. LOAD THE TEST PROGRAM, FOLLOW THE LOADING SEQUENCE BELOW: BCS A. "TEST" B. DECIMAL ARITHMETIC ROUTINES (NAM = "STLIB") C. RELOCATABLE PROGRAM LIBRARY DOS/RTE A. "VERFY" B. "STLIB" C. ".ERRR" D. RELOCATABLE PROGRAM LIBRARY **RUN INSTRUCTIONS: MOVE/COMPARE ROUTINES AFTER COMPLETION OF LOADING ("*RUN" IS TYPED BY BCS), PRESS RUN TO EXECUTE THE TEST PROGRAM. THE PROGRAM WILL REQUEST THAT THE OPERATOR TYPE A SENTENCE TERMINATED BY A PERIOD (.) AND A RETURN, LINEFEED. THE PROGRAM WILL DELETE ALL SPACED FROM THE SENTENCE (USING SUBROUTINES "MVC" AND "ICLC") AND PRINT OUT THE REQUEST. THE PROGRAM WILL THEN REQUEST ANOTHER SENTENCE. DECIMAL ARITHMETIC ROUTINES EXECUTE THE PROGRAM: A. BCS - AFTER BCS TYPES "*RUN," PRESS "RUN." SET THE SWITCH REGISTER SO AS TO EXECUTE THE REQUIRED SUBROUTINE: SW0 = 0 ADDITION SW0 = 1,SW15=1 SUBTRACTION SW0 = 1,SW15=0 MULTIPLICATION ENTER TWO NUMBERS ON THE TTY, EACH TERMINATED BY A "RETURN" AND "LINEFEED." THE RESULT WILL THEN BE PRINTED AND THE PROGRAM WILL WAIT FOR ANOTHER PAIR OF NUMBERS. B. DOS/RTE - AFTER "LOADING COMPLETE" IS PRINTED, TYPE ":RUN,VERFY". THE PROGRAM WILL PRINT OUT INSTRUCTIONS. **INPUT/OUTPUT EXAMPLES: TWO TEST PROGRAMS ARE INCLUDED IN THIS PACKAGE. **PROGRAM DESCRIPTION: CALLING SEQUENCES FOR MVC AND ICLC --- MVC: CALLING SEQUENCE (ASSEMBLY LANGUAGE) EXT MVC JSB MVC DEF *+6 RETURN ADDRESS DEF ISORC ADDRESS OF SOURCE STRING DEF ISOF ADDRESS OF SOURCE STRING OFFSET (IN CHARACTERS, 0 - 32767) DEF IDEST ADDRESS OF DESTINATION STRING DEF IDOF ADDRESS OF DESTINATION STRING OFFSET DEF LGTH LENGTH (NO. OF CHARACTERS TO BE MOVED) CALLING SEQUENCE (FORTRAN) CALL MVC (ISORC, ISOF, IDEST, IDOF, LGTH) ICLC: CALLING SEQUENCE (ASSEMBLY LANGUAGE) EXT ICLC JSB ICLC DEF *+6 RETURN ADDRESS DEF ISORC ADDRESS OF SOURCE STRING DEF ISOF ADDRESS OF SOURCE STRING OFFSET DEF ICOMP ADDRESS OF COMPARISON STRING DEF ICOF ADDRESS OF COMPARISON STRING OFFSET DEF LGTH NO. CHARACTERS TO BE COMPARED STA CCODE (A)=CONDITION CODE: A>0 SOURCE > COMPARISON A=0 SOURCE = COMPARISON A<0 SOURCE < COMPARISON FORTRAN: ICODE = ICLC (ISORC,ISOF,ICOMP,ICOF,LGTH) CALLING SEQUENCES FOR IADD,ISUB,IMULT IADD - ADDITION ISUB - SUBTRACTION IMULT- MULTIPLICATION CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT IADD (OR ISUB OR IMULT) JSB IADD (OR ISUB OR IMULT) DEF *+7 DEF IX ADDRESS OF 1ST ARGUMENT STRING ARRAY/RESULT STRING STORED HERE DEF IXOF 1ST ARGUMENT STRING OFFSET IN CHARACTERS (TWO ASCII CHARACTERS/WORD) DEF IXLEN 1ST ARGUMENT STRING LENGTH DEF IY ADDRESS OF 2ND ARGUMENT STRING ARRAY DEF IYOF 2ND ARGUMENT STRING OFFSET IN CHARACTERS (TWO ASCII CHARACTERS/WORD) DEF IYLEN 2ND ARGUMENT STRING LENGTH STA LRES LENGTH OF RESULT STRING IS RETURNED IN A-REGISTER IN CHARACTERS CALLING SEQUENCE - FORTRAN ILRES = IADD (IX, IXOF, IXLEN, IY, IYOF, IYLEN) WHERE ILRES IS THE LENGTH (CHARACTERS) OF THE RESULT STRING. THE RESULT STRING REPLACES THE FIRST ARGUMENT STRING (IX) IN ALL CASES. EXAMPLE: IF ARRAY IX = 12345.9 452189.LLKO 5.6 48.213, THEN IXOF=25 AND IXLEN=6. ARRAY IX MUST BE DIMENSIONED AT LEAST 16 WORDS SINCE THERE ARE 31 ASCII CHARACTERS IN THIS STRING. REMEMBER THAT THE RESULTANT STRING IS ALSO STORED IN THIS ARRAY; HENCE, IF IT IS GREATER THAN 31 CHARACTERS, IX MUST BE DIMENSIONED ACCORDINGLY. SIMILARLY, IF ARRAY IY=5.6 48.213 32.1, THEN IYOF=11 AND IXLEN=5. EFFECTIVELY, THIS ISOLATES THE FIRST VARIABLE TO "48.213" AND THE SECOND VARIABLE TO "32.1." **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ADDITIONAL EXITS FOR DECIMAL ARITHMETIC ROUTINES ON CERTAIN ERRORS, CALLS TO .ERRR ARE MADE: 1. A NULL ARGUMENT STRING: (A) BCS: "E-11 NS" IS PRINTED AND THE COMPUTER HALTS. (B) DOS: "11 NS" IS PRINTED AND THE PROGRAM IS TERMINATED. 2. RESULT STRING LENGTH EXCEEDS 64 CHARACTERS: (A) ADD: "E-11 OV" IS PRINTED (B) MULTIPLY: "E-12 OV" IS PRINTED **MISCELLANEOUS: THE MOVE/COMPARE ROUTINES REQUIRE ROUTINES "GETCR" AND "OUTCR" WHICH ARE PART OF THE "DECIMAL ARITHMETIC ROUTINES". THESE ROUTINES USE COMMON STORAGE (TOTAL DECLARATION = 80 WORDS). THUS, ANY USER PROGRAMS WHICH REQUIRE COMMON STORAGE MUST INCLUDE A DUMMY COMMON STATEMENT OF 80 WORDS. IN THE DOS/RTE ENVIRONMENTS, A COMPATIBLE ERROR ROUTINE .ERRR IS PROVIDED. THIS ROUTINE MAKES A CORRECT CALL TO THE DOS/RTE ERROR ROUTINE ERR0 AND THEN TERMINATES THE PROGRAM. SINCE THE RESULT STRING REPLACES THE FIRST ARGUMENT STRING, AMPLE SPACE MUST BE PROVIDED, THEREFORE, THE FIRST ARGUMENT STRING SHOULD BE PADDED ON THE RIGHT WITH BLANKS SO THAT THE TOTAL LENGTH CAN HOLD THE RESULT STRING. THE LENGTH SPECIFIED IN THE CALLING SEQUENCE FOR THE FIRST ARGUMENT STRING SHOULD BE THE ACTUAL LENGTH, NOT INCLUDING THE PADDING. THE CHOICE OF 63 CHARACTERS MAXIMUM WAS ARBITRARY AND CAN BE INCREASED TO ANY PRACTICAL NUMBER OF CHARACTERS AS FOLLOWS: EXAMPLE: TO INCREASE THE MAXIMUM NUMBER OF DIGITS TO 256, THE FOLLOWING EDITS ARE NEEDED: SOURCE #1 /CR,8,21,22 256 /E SOURCE #2 /R,460 SIZE EQU 256 /E A00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SORT **PROGRAM TITLE: FAST CORE SORT OF INTEGERS, REALS, AND DOUBLE PRECISION NUMBERS **REVISION? YES **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: SORT **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE BCS DOS **MEMORY REQUIREMENTS: 12808 W/EXTERNAL SUBPROGRAMS (5080 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THERE ARE THREE SUBROUTINES IN THIS PACKAGE FOR A FAST "IN-CORE" SORT OF INTEGERS, REALS, AND DOUBLE PRECISION NUMBERS. REQUIRES A MINIMUM OF 8K CORE, FTN4 CALLLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: ENCLOSED IS A PROGRAM PROVA AND SUBROUTINE READ THAT INPUTS UP TO 3000 INTEGERS, LISTS THEM, SORTS THEM, LISTS THE INDEXES AND THE ORDERED ARRAY. THE READ SUBROUTINE ALLOWS THE USER TO CREATE TEST ARRAYS FROM THE TELETYPE AND THE SORT SUBROUTINE. THE ROUTINE READS VALUES AS FOLLOWS: READ(1,*) IFST,ILST,ISEQ,IVAL --WHERE-- IFST = FIRST ITEM TO BE ASSIGNED ILST = LAST ITEM TO BE ASSIGNED ISEQ = SEQUENCE DESIRED (=9 TO END) IVAL = STARTING VALUE **PROGRAM DESCRIPTION: ENTRY POINT(S) SORT(ITEM,IPOS,NIT) --SORTS INTEGERS ITEM = BUFFER ADDRESS OF ITEMS TO BE SORTED IPOS = BUFFER ADDRESS FOR INDEXES IN ASCENDING ITEMS' VALUE ORDER NIT = NUMBER OF ITEMS TO BE SORTED SORT2(BITEM,IPOS,NIT) --SORTS REALS SORT3(DITEM,IPOS,NIT) --SORTS DOUBLE PRECISION VALUES NTENT(N) --(USED BY SORT) DETERMINES THE NUMBER OF TRIES BEFORE SEQUENTIAL SORTING **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: IPICK **PROGRAM TITLE: ASCII/INTEGER CONVERSION ROUTINE **REVISION? NO **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: ASCII CONVERSION CODE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS RTE DOS **MEMORY REQUIREMENTS: 201 WITH/WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FUNCTION CONVERTS A SUBSTRING OF ASCII CHARACTERS INTO AN INTEGER VALUE OR INTO A NAME OF FIVE CHARACTERS. THE SOURCE STRING IS WRITTEN IN A1 FORMAT, TERMINATED BY A SPACE AND DIVIDED INTO SUBSTRINGS BY COMMAS. THE DESTINATION, FOR INTEGER CONVERSION, IS AN INTEGER OR, FOR ASCII CONVERSION, AN INTEGER ARRAY OF THREE WORDS, WHERE THE FIRST FIVE CHARACTERS OF THE INPUT ARE PACKED IN THE FORMAT 2A2,A1. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: NORMAL ASSEMBLY PROCEDURES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: TO VERIFY THE CAPABILITIES OF THE FUNCTION IPICK, A PROGRAM IS EN- CLOSED WHICH ASKS INPUT A STRING OF UP TO 72 CHARACTERS AND THE VALUE OF NUM, AND TYPES THE CONTENTS OF IDEST AND THE VALUE OF IPICK. FURTHER ASSIGNMENTS FOR NUM ARE AVAILABLE WITHIN THE SAME STRING, AS LONG AS ZERO IS NOT ENTERED. TO END PROGRAM ENTER END. **PROGRAM DESCRIPTION: CALLING SEQUENCE - FORTRAN IPICK (ISOUR,NUM,IDEST) IPICK = 0 FOR CONVERSION COMPLETED IPICK = -1 SELECTED SUBSTRING IS EMPTY OR DOES NOT EXIST IPICK = 1 NON NUMERICAL CHARACTERS, OR NUMBER EXCEEDING THE RANGE -32768 TO 32767, IN SUBSTRING REFERED TO WITH A NEGATIVE NUMBER. ISOUR IS THE BUFFER ADDRESS OF THE SOURCE STRING NUM INDICATES THE POSITION OF THE SELECTED SUBSTRING, AND THE TYPE OF CONVERSION: POSITIVE FOR ASCII CONVERSION, NEGATIVE FOR INTEGER CONVERSION. IDEST IS THE BUFFER ADDRESS OF THE DESTINATION OF THE CONVERTED SUBSTRING. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QSORT **PROGRAM TITLE: RTE QUICK CORE SORT **REVISION? NO **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: SORT **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'QSORT' IS AN EXTERNAL SUBROUTINE WHICH SORTS AN ARRAY OF RECORDS IN CORE. THE SUBROUTINES USE A PARTITION-EXCHANGE SORT TECHNIQUE (QUICKSORT) WHICH IS A VERY FAST METHOD OF SORTING UNORDERED ITEMS. THE ARRAY IS SORTED IN PLACE INTO ASCENDING ORDER; AND IT CAN BE SORTED ON ONLY ONE FIELD. THIS SUBROUTINE OPERATES IN A MINIMUM RTE ENVIRONMENT AND IS CALLABLE FROM ASSEMBLY LANGUAGE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: DATA **LOAD INSTRUCTIONS: STANDARD ASSEMBLE/COMPILE PROCEDURES. **RUN INSTRUCTIONS: CALLING SEQUENCE - ASSEMBLY LANGUAGE JSB QSORT DEF RUNAD ADDRESS OF ARRAY IN CORE DEF LRECL RECORD LENGTH IN WORDS DEF RECNO NUMBER OF RECORDS IN ARRAY DEF SRTOF OFFSET OF SORT FIELD FROM START OF RECORD DEF SRTLN LENGTH OF SORT FIELD IN WORDS DEF SKIP SKIP IS EQUATED TO 1 IF SORTING IS TO BEGIN ON LOW-ORDER BYTE OF FIRST WORD; SKIP IS EQUATED TO 0 OTHERWISE. (RETURN) RECORDS TO BE SORTED MUST BE CONTIGUOUS IN CORE AT THE ADDRESS POINTED TO BY RUNAD. THE SUBROUTINE WILL SORT THE ARRAY IN PLACE INTO ASCENDING ORDER. **INPUT/OUTPUT EXAMPLES: ASSEMBLE THE TEST PROGRAM AND SUBROUTINE. LOAD TESTQ AND QSORT IN THAT ORDER. READY PAPER TAPE READER WITH TAPE OF TEST DATA SUPPLIED. BEGIN PROGRAM WITH: *ON,TESTQ, LOGICAL UNIT # OF PAPER TAPE READER, LOGICAL UNIT # OF LINE PRINTER. IF LU # OF PAPER TAPE READER IS 4, AND LU # OF LINE PRINTER IS 6, THE COMMAND WOULD BE: *ON,TESTQ,4,6 **PROGRAM DESCRIPTION: QSORT WILL SORT A MAXIMUM OF 8191 RECORDS IN CORE. THIS NUMBER MAY BE INCREASED BY EXPANDING TWO STACKS IN THE PROGRAM: LAD AND UAD. THE MAXIMUM IS CALCULATED AS LOG(BASE 2)N, WHERE N IS THE LENGTH OF EACH TABLE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A00601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DSORT **PROGRAM TITLE: RTE DISC FILE SORT **REVISION? YES **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: SORT FILES MERGE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'DSORT' IS AN EXTERNAL SUBROUTINE DESIGNED TO SORT LARGE FILES ON DISC IN OPTIMUM TIME. INPUT TO 'DSORT' CAN BE FROM DISC, PAPER TAPE, MAGNETIC TAPES, OR CARDS; AND THE MAXIMUM INPUT RECORD LENGTH MUST BE LESS THAN OR EQUAL TO 64 WORDS. AN OPTION IS AVAILABLE TO WRITE THE SORTED OUTPUT FILE OVER THE INPUT FILE. FILES ARE SORTED IN ASCENDING ORDER ON ONLY ONE FIELD. 'DSORT' LINKS TO A CORE SORT SUBROUTINE, 'QSORT', TO SORT SEGMENTS OF THE INPUT FILE, AND PERFORMS TWO-WAY MERGES ON THE SORTED SEGMENTS. 'QSORT' IS INCLUDED IN THIS PACKAGE AND IS ALSO AVAILABLE SEPARATELY. THE ONLY HARDWARE REQUIREMENTS ARE A MINIMUM RTE SYSTEM WITH A DISC OR VRC DRUM. 'DSORT' IS CALLABLE FROM ASSEMBLY LANGUAGE. 'DSORT' MAKES EXEC CALLS TO THE OPERATING SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES **LOAD INSTRUCTIONS: 1. ASSEMBLE DSORT AND QSORT SUBROUTINES 2. ASSEMBLE CALLING PROGRAM 3. LOAD CALLING PROGRAM AND THE TWO SUBROUTINES TOGETHER **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: AN EXAMPLE TEST PROGRAM, 'TESTD' IS ENCLOSED. LOAD TESTD, DSORT, AND QSORT IN THAT ORDER INTO THE BACKGROUND PARTITION. READY PAPER TAPE READER WITH TESTD TEST DATA. BEGIN PROGRAM WITH: *ON,TESTD, PAPER TAPE READER LOGICAL UNIT #, LINE PRINTER LOGICAL UNIT # IF LU # OF PAPER TAPE READER IS 4, AND LU # OF LINE PRINTER IS 6, THE COMMAND WOULD BE: *ON,TESTD,4,6 **PROGRAM DESCRIPTION: RECORD LENGTH MUST BE LESS THAN OR EQUAL TO 64 WORDS. FOR DISC OR CARD FILES, END OF FILE MUST BE INDICATED BY $$ AFTER THE LAST RECORD. FOR MAGNETIC TAPE INPUT, EITHER THE $$ OR AN END-OF-FILE MARK MAY BE USED. BLOCK SIZE ON TAPE CANNOT BE GREATER THAN 2000 WORDS. THE PROGRAM EXECUTION TIME IS OPTIMIZED IF, 1) THE SORTED OUTPUT FILE IS NOT WRITTEN OVER THE INPUT FILE, AND, 2) RECORDS DO NOT RESPECT SECTOR AND TRACK BOUNDARIES ON INPUT. THE MAXIMUM RECORD COUNT POINTED TO BY PARM6 DETERMINES THE NUMBER OF TRACKS DSORT WILL ALLOCATE FOR SORTING, AND SHOULD BE APPROXIMATELY EQUAL TO, BUT NOT LESS THAN, THE ACTUAL NUMBER OF RECORDS. DSORT WILL NOT READ MORE THAN THE NUMBER OF RECORDS GIVEN BY PARM6. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DSORT GLOBALLY ALLOCATES DISC TRACKS TO SORT THE NUMBER OF RECORDS GIVEN IN PARM6. THE NUMBER OF TRACKS REQUIRED FOR SORTING IS AT LEAST TWICE THE NUMBER OF TRACKS REQUIRED TO HOLD THE FILE, SINCE TWO WORK AREAS ARE USED. IF THE TRACKS ARE UNAVAILABLE, DSORT WILL SUSPEND, WAITING FOR ALLOCATION. **MISCELLANEOUS: A00701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SORT **PROGRAM TITLE: RTE-II/III FMGR FILE TYPE 2 ASCII, INTEGER AND REAL SORT PROGRAM PACKAGE **REVISION? YES **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: SORT ASCII FILES **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: 2116 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SORT PACKAGE WILL SORT A FILE FMGR TYPE 2 FILE OF ANY SIZE AND ANY MIX OF ASCII, INTEGER, AND/OR REAL FIELDS IN MIXED COMBINATIONS OF ASCENDING AND DESCENDING ORDERS. THE SORT PROGRAM MAY BE RUN INTERACTIVELY OR SCHEDULED PROGRAM- MATICALLY. THE DESTINATION FILE MAY BE THE SOURCE, A NEW OR EXISTING FILE. IF THE DESTINATION FILE IS NEW, IT WILL AUTOMATICALLY BE CREATED. CALCULATED SORT TIME FOR A 132 CHARACTER (66 WORD) RECORD AND 32000 RECORD FILE IN WORST CASE ORDER IS LESS THAN 45 MINUTES ON A 7900/21MX RTE SYSTEM. ACTUAL MEASURED SORT TIME FOR A 20 CHARACTER RECORD AND 2236 RECORD FILE IS 2 MINUTES, 21 SECONDS. TYPICAL APPLICATION IS IN CONJUNCTION WITH IMAGE/QUERY. A FORTRAN PROGRAM CAN ACCESS THE DATA BASE AND CONSTRUCT A TYPE 2 FILE IN WHICH EACH RECORD IS A LINE OF A REPORT. THE PROGRAM THEN SCHEDULES THE SORT WITH WAIT AND PASSES THE KEY FIELD DESCRIPTIONS. UPON RETURN THE PROGRAM INSERTS THE PROPER REPORT HEADERS WHILE PRINTING THE REPORT FROM THE SORTED FILE. THE SORT PACKAGE CONSISTS OF PROGRAMS SORT WITH ASSOCIATED SUPPORT SUBROUTINES, AND MSORT. SORT EXTRACTS THE KEY FIELDS FROM THE SOURCE FILE, WRITES THE KEYS TO SYSTEM TRACKS AND SCHEDULES MSORT WITH WAIT. MSORT PERFORMS A DISC/MEMORY SORT. WHEN THE KEYS ARE IN SORTED ORDER, SORT READS THE RECORD TAGS FROM THE SYSTEM TRACKS AND REWRITES THE SOURCE FILE IN SORTED ORDER TO THE DESTINATION FILE. THIS PACKAGE MAKES FMP AND EXEC CALLS. IT REQUIRES 7900, 7905, AND/OR 7920 DISC DRIVES. THIS PACKAGE MAY ALSO BE USED IN 2116/2100 CPU'S IF THE 21MX WORD PROCESSING AND INDEX REGISTER INSTRUCTIONS ARE RECODED IN PROGRAM MSORT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES FILE# 5: SOURCES **LOAD INSTRUCTIONS: ASSEMBLE SUBROUTINES AND SAVE RELOCATABLES. MOVE THE RELOCATABLES TO THE LOAD AND GO TRACKS AND LOAD SORT AS A BACKGROUND DISC RESIDENT PROGRAM. ASSEMBLE MSORT AND LOAD IT AS A BACKGROUND DISC RESIDENT PROGRAM. IF RTE-III, LOAD MSORT INTO THE LARGEST PARTITION AVAILABLE AND GIVE IT THE WHOLE PARTITION. **RUN INSTRUCTIONS: A. INTERACTIVELY - RU,SORT,LU WHERE LU IS THE LOGICAL UNIT OF THE INTERACTIVE CONSOLE. B. PROGRAMMATICALLY - CALL EXEC (ICODE,SORT,-LU,ICLASS) REFER TO SORT LISTING FOR INTERACTIVE AND PROGRAMMATIC SORT FIELD DEFINITIONS AND PARAMETER DESCRIPTIONS. **INPUT/OUTPUT EXAMPLES: SORT IS INTERACTIVE AND SELF-EXPLANATORY. **PROGRAM DESCRIPTION: A. THE MAXIMUM NUMBER OF SORT FIELDS AND THE MAXIMUM RECORD LENGTH IS 10 FIELDS AND 66 WORDS (132 CHARACTERS). THESE MAXIMUMS MAY BE INCREASED BY INCREASING THE EQUATE VARIABLES BLEN AND FMAX RESPECTIVELY IN PROGRAM SORT. B. DISC'S OTHER THAN 7900, 7905 OR 7920 MAY BE USED IF THE WORDS/ TRACK AND WORDS/SECTOR EQUATE VARIABLES ARE CHANGED IN PROGRAM SORT. C. PROGRAM MSORT USES ALL OF AVAILABLE MEMORY FOR SORTING. THEREFORE WHEN LOADING MSORT IN A RTE-III SYSTEM, THE LOADER SIZE OPTION MUST BE USED. THE MORE MEMORY MSORT HAS THE FASTER THE SORT. D. THERE MUST BE ENOUGH SYSTEM TRACKS TO CONTAIN THE KEY FIELDS. (TOTAL WORDS IN KEY FIELDS + 1)*RECORDS TOTAL SYSTEM TRACKS = --------------------------------------- + 1 WORDS/TRACK E. IF A BUG REPORT IS SUBMITTED, PLEASE INCLUDE A PAPER TAPE, TERMINAL CARTRIDGE OR MAG TAPE OF THE SOURCE FILE TO BE SORTED AND A DESCRIPTION OF THE SORT KEY FIELDS. F. LIBRARY ROUTINE PRTN MUST BE MEMORY RESIDENT OR LOADED IN LG TRACKS BEFORE MSORT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A00801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FSORT **PROGRAM TITLE: SORT ALL ASCII FMGR FILES WITHOUT EXTENTS **REVISION? NO **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: SORT ASCII FILES **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 15K PARTITIONS (FITS IN PARTITIONS FROM 11-16K W/MINOR MODIFICATIONS) **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: FSORT IS A VERY QUICK SINK-OR-SWIM CORE SORT WHICH CAN SORT UP TO 80 FIELDS WITH A MAXIMUM OF 40 WORDS (80 CHARACTERS) TOTAL. FSORT WILL SORT ALL ASCII FMGR FILE TYPES IN ASCENDING SEQUENCE. THE FILES MUST BE WITHOUT EXTENTS OR TRUNCATION WILL OCCUR. THE PROGRAM CAN BE SCHEDULED FROM FMGR, OPERATOR, OR ANOTHER PROGRAM AND WILL ACCEPT STRING PASSAGE OF REQUIRED INPUT. A MAXIMUM OF 32767 RECORDS CAN BE SORTED WITH A MAXIMUM LENGTH AS WRITTEN OF 128 WORDS, HOWEVER THE USER CAN EASILY MODIFY THE LENGTH REQUIREMENTS TO FIT HIS NEED. MINIMUM SYSTEM REQUIRES ONE 7905 DISC AND ONE 21MX OR 2100 HP SYSTEM WITH AT LEAST 11K PARTITIONS. FSORT IS SET UP FOR 15K PARTITIONS BUT WITH MINOR MODIFICATIONS WILL FIT IN PARTITIONS FROM 11-16K. DECIMAL STRING ARITHMETIC PACKAGE IS ALSO REQUIRED. FSORT MAKES FMP AND EXEC CALLS. EXECUTION TIME VARIES WITH SIZE OF FILE AND LENGTH OF SORT. 4000 RECORDS OF 72 CHARACTERS WERE SORTED ON 18 COLUMNS IN APPROXIMATELY 6 MINUTES. TIME IS DEPENDENT ON SYSTEM CONFIGURATION. DETAILED INFORMATION ON MODIFICATIONS AND EXECUTION ARE INCLUDED WITHIN THE PROGRAM COMMENTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: FSORT SOURCE FILE# 3: FSORT SOURCE (CONTINUED) FILE# 4: ASC2I SOURCE FILE# 5: I2ASC SOURCE **LOAD INSTRUCTIONS: GIVEN IN PROGRAM LISTING. **RUN INSTRUCTIONS: GIVEN IN PROGRAM LISTING. **INPUT/OUTPUT EXAMPLES: AFTER LOADING THE SORT PROGRAM, RUN THE SORT BY THE FOLLOWING INSTRUCTIONS: RU,FSORT,LU NAME? (NAME OF FILE STORED ABOVE) SECURITY? (SECURITY CODE IF ANY) SORT FIELDS? STARTING COLUMN. (1) IN THE TEST CASE. NUMBER OF COLUMNS. (1) IN THE TEST CASE. SAME AS ABOVE FOR AS MANY FIELDS AS YOU HAVE. -1 TERMINATES THE INPUT LIST. SAMPLE DATA FILE: 0001 1 THE 0002 2 QUICK 0003 3 BROWN 0004 4 FOX 0005 5 JUMPED 0006 6 OVER 0007 7 THE 0008 8 LAZY 0009 9 DOG. 0010 4 FOX 0011 1 THE 0012 7 THE 0013 9 DOG. 0014 2 QUICK 0015 5 JUMPED 0016 8 LAZY 0017 3 BROWN 0018 6 OVER **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR MESSAGES FROM BOTH FMGR AND THE PROGRAM ARE SENT TO THE USER'S TERMINAL. **MISCELLANEOUS: FILES TO BE SORTED MUST BE WITHOUT EXTENTS. A00901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: STRNG **PROGRAM TITLE: STRING CONVERSION SUBROUTINE **REVISION? NO **PACKAGE: 1 **CATEGORY: 2 **KEYWORDS: CONVERSION ASCII CODE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: SUBROUTINE STRNG WILL CONVERT FROM AN ASCII STRING, MIXED GROUPS OF INTEGER AND REAL VALUES WHICH MAY BE PREFIXED BY ONE OR TWO ASCII CHARACTERS. THE PREFIX, A REAL VALUE, AN INTEGER VALUE, AND ERROR INDICATOR ARE RETURNED TO THE USER. THE PACKAGE CONTAINS THREE DEMON- STRATION PROGRAMS USING STRNG, ONE OF WHICH ILLUSTRATES A PSEUDO- NAMELIST CAPABILITY. STRNG CAN REPLACE THE ASTERISK FORMAT WHERE THE FORTRAN FORMATTER IS NOT PRESENT (157 WORDS). STRNG USES FIRMWARE LBT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: STRNG SOURCE - ASMB FILE# 3: IADRS SOURCE - ASMB FILE# 4: DEMOA SOURCE - FTN4 FILE# 5: DEMOB SOURCE - FTN4 FILE# 6: DEMOC SOURCE - FTN4 **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: THREE DEMONSTRATION PROGRAMS ARE INCLUDED: DEMOA, DEMOB, DEMOC. (FIRST PARAMETER OF RUN STRING IS LU OF INTERACTIVE DEMONSTRATION DEVICE.) DEMOA AND DEMOB WILL EXIT AFTER 10 STRINGS. DEMOC WILL EXIT ON RECEIPT OF A DOUBLE COLON IN THE STRING. **PROGRAM DESCRIPTION: INPUT VALUES MAY NOT EXCEED 32767 IN MAGNITUDE AND REAL HAS 4 DECIMAL PLACES. USES FIRMWARE LBT. GROUPS IN INPUT STRING CAN BE SEPARATED BY SPACES OR COMMA. EQUAL SIGN IS DISCARDED. PREFIXES CAN INCLUDE MOST SPECIAL CHARACTERS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A01001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PROTK **PROGRAM TITLE: RTE CHECK PROTECT SUBROUTINE **REVISION? NO **PACKAGE: 1 **CATEGORY: 4 **KEYWORDS: PAYROLL ACCOUNTING **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: CHECK PROTECT SUBROUTINE. USEFUL IN PAYROLL AND ACCOUNTS PAYABLE PROGRAMS WHERE CHECKS ARE COMPUTER GENERATED AND OUTPUT TO A LINE PRINTER. INPUT IS EIGHT CHARACTER DECIMAL STRING, AND OUTPUT IS SIXTY-EIGHT CHARACTERS. PROTK USES THE DECIMAL STRING ARITHMETIC ROUTINES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: TRANSFER FILE & SOURCES **LOAD INSTRUCTIONS: SEE TRANSFER FILE /DEMO. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: A DEMONSTRATION PROGRAM DEMO IS ENCLOSED. **PROGRAM DESCRIPTION: EDITING OF INPUT STRING IS LEFT TO USER. INPUT GREATER THAN 09999999 RESULTS IN OUTPUT OF "ZERO*DOLLARS-00-CENTS". **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A01101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TMATT **PROGRAM TITLE: NON-DATACAP/1000 TIME-&-ATTENDANCE APPLICATION PGM. OPTIMIZED FOR SPEED **REVISION? NO **PACKAGE: 1 **CATEGORY: 3 **KEYWORDS: TERMINAL I/O TIME **LANGUAGES: FTN4 **COMPUTER TYPE: F-SERIES **OPERATING SYSTEMS: RTE-IVA RTE-IVB **MEMORY REQUIREMENTS: 1*10K PARTITION **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: SYS.S/W DEPENDANCE: EXEC & FMP CALLS SYS.H/W DEPENDANCE: MULTIPOINT/1000 I/F CARD (SUBSYS. HP P/N 91730A) DRIVERS: DVR 07 (INCL. IN MULTIPOINT/1000 SUBSYSTEM) DVR 32 OR SOME OTHER DRIVER TO HANDLE DISC STORAGE MANUALS: HP 3075A/6A/7A REF. MAN. (HP P/N 03075-90011) MULTIPOINT TERM. USER'S GUIDE (HP P/N 91730-90002) RTE-IV P'GM'RS. REF. MANUAL (FOR RTE-4A OR -4B) SPECIAL ROUTINES: SEVERAL ROUTINES IN $GPLB4 -- DATACAP UTILITY LIBRARY 'TMATT' IS A NON-DATACAP/1000 APPLICATIONS PROGRAM DESIGNED TO MONITOR UP TO 20 HP 3077 TIME-REPORTING TERMINALS IN A RESPONSE-TIME-CRITICAL TIME-AND-ATTENDANCE APPLICATION. TERMINAL LU#'S ARE PASSED THRU THE RUN STRING (I.E. :RU,TMATT,LU#1,LU#2,...,LU#20). 'TMATT' HAS BEEN DESIGNED WITH A MINIMUM AMOUNT OF OVERHEAD -- ALL IT DOES IS READ DATA FROM THE HP 3077 TERMINALS AND LOG IT TO A DISC FILE. NO VALIDATION IS DONE ON THE DATA (VALIDATION CAN BE ADDED IF THE USER DESIRES -- COMMENTS IN THE CODE INFORM THE USER WHERE). THE CODE HAS MANY COMMENTS IN IT TO LEAD THE USER IN THE DIRECTION OF MODIFICATIONS REQUIRED FOR HIS OWN SITU- ATION. 'TMATT' IS VERY FAST (RESPONSE TIME = 1.0 SEC. FOR 10 TERMINALS) AND UTILIZES THE CPU AT MAX 10%. 'TMATT' USES CLASS I/O FOR ALL TERM- INAL COMMUNCATION -- THUS DERIVING ITS SPEED. 'TMATT' USES ROUTINES IN A UTILITY LIBRARY FOR RTE-4 (CALLED $GPLB4) THAT IS AVAILABLE AS PART OF DATACAP 1000. THESE ROUTINES ALLOW STRING, CHARACTER, AND BIT MAN- IPULATION TO BE PERFORMED MORE EASILY THAN WITH ROUTINES IN THE DECIMAL STRING ARITHMETIC PACKAGE SUPPLIED WITH RTE-4 GRANDFATHERS (%DECAR). 'TMATT' IS SOMEWHAT CONVERSATIONAL ALREADY BUT THIS CAN BE CHANGED OR NOT DEPENDING ON THE USERS NEED. AGAIN, THE COMMENTS IN THE CODE POINT THE USER IN THIS DIRECTION. TO USE 'TMATT' ON A SYSTEM, ONE NEEDS HP 3077A TERMINALS, A MULTIPOINT/1000 SUBSYSTEM (DVR 07 INCLUDED HERE), A DISC DEVICE OF SOME SORT TO SUPPORT DATA STORAGE, AND $GPLB4. MEMORY REQUIREMENTS ARE NEGLIGIBLE SINCE THE PROGRAM-PLUS-LIBRARY ONLY TAKES UP 10 PAGES. IF SO DESIRED, THE USER MAY ALSO EMPLOY THE HP FACTORY DATA LINK AND DATA LINK CONVERTERS CONNECTED IN A CONFIGURATION SHOWN IN THE HP 3075A/6A/7A REF. MANUAL PP. 2-5. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: >TMATT--LOADR COMMAND FILE FILE# 3: &TMATT--PROGRAM PLUS DUMMY STORAGE ROUTINE **LOAD INSTRUCTIONS: PROGRAM CAN EITHER BE BACKGROUND OR REAL-TIME **RUN INSTRUCTIONS: RU,TMATT,LU#1,LU#2,...,LU#20 LU#1...LU#20 = HP 3077A TERMINAL LU#'S **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A01201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LIST2 **PROGRAM TITLE: MULTI-RECORD FORMATTED OUTPUT LISTER **REVISION? NO **PACKAGE: 1 **CATEGORY: 6 **KEYWORDS: FORMATTING REPORTS TEXT **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: RTE BCS DOS **MEMORY REQUIREMENTS: 6185 WORDS WITH EXTERNAL SUBPROGRAMS, 3192 WITHOUT. **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PROVIDES USER CAPABILITY TO OUTPUT MULTI-RECORD FORMATTED DATA STREAMS TO ONE OR MORE LIST DEVICES VIA USER COMMAND CONTROL UNDER DOS. OSTENSIBLY FOR LINE PRINTER LISTINGS OF PUNCHED CARDS, THE USER COMMAND SET ALLOWS SELECTIVE INPUT FROM SEVERAL DEVICES AND JUXTA- POSITION OF THESE INPUT FIELDS, THE COMMAND SET ALSO CONTROLS INSERTIONS OF SPACES, CHARACTERS, PORTIONS OF A CORE-SAVED RECORD, PAGE NUMBERS, PAGE HEADINGS, TOP-OF-FORM LINE SPACES, AND LINEFEEDS INTO THE DATA STREAM. THE USER MAY VARY OUTPUT RECORD LENGTH BY STRIPPING TRAILING BLANKS, OR PARTIALLY SUPPRESS A LISTING OF THE OUTPUT DATA STREAM VIA COMMAND CONTROL. THE COMMAND SET ITSELF MAY BE PARTIALLY INPUT THROUGH THE TERMINAL IN A CONVERSTAIONAL MODE OR MIXED WITH THE INPUT DATA STREAM IN A CARD READER, PHOTOREADER, OR OTHER INPUT DEVICE. LIST2 USES EXEC CALLS TO THE OPERATING SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **INPUT/OUTPUT EXAMPLES: THE ROUTING SLIP BRINGS UP ONE OF THE PROGRAM'S APPLICATIONS, NAMELY DISTRIBUTION LISTS. THIRTY CARD COLUMNS ARE ALLOCATED TO NAME AND MAIL STOP. THE REMAINING 50 COLUMNS REPRESENT DIFFERENT DISTRIBUTION LISTS THAT A PERSON MIGHT BE ON, THIS BEING INDICATED BY PUNCHING A CHARACTER IN THE PROPER COLUMN. IN SOME CASES THE CHARACTER WAS THE NUMBER OF COPIES AND IN A FEW CASES, BECAUSE OF QUANTITIES, TWO COLUMNS WERE ASSOCIATED WITH ONE LIST. A //SUP N 1 500 COMMAND (DON'T PRINT IF THE COLUMN IS BLANK) CONTROLS THE LISTING, AN APPROPRIATE JCL INSTRUCTION PICKS UP THE QUANTITIES WHEN DESIRED. CONSECUTIVE PAGES ARE OVERLAPPED IN THE COPY MACHINE TO PRODUCE A MULTICOLUMNAR FORMAT. THE FOLLOWING RECORDS WILL NOW BE LISTED TO DEMONSTRATE USE OF THE BUFFER AND JCL INSTRUCTIONS. //SKP SKIP TO A NEW PAGE, //SPC 5 //BUF LOAD THE BUFFER (601 THRU 680) WITH THE FOLLOWING RECORD, ............................ //JCL JUXTAPOSITION INSTRUCTIONS FOLLOW. 1,, 1,30 501,,ONE ! FOR TRIM ,5SPACES & REPEAT 1,30 501,, PLEASE ROUTE AS INDICATED //JCL 1,2, 321,2SPACES 601,5DOTS ,,2SPACES 1,20NAME ,,9SPACES 601,5 ,,2 1,20 //LFD 2 LINEFEEDS, //SPC 2 WOULD GIVE 4 SINCE LSP = 2 FROM LAST JCL. HERB SHEAR ADDRESS CITY,STATE,ZIP PHONE JOHN DOE OR OTHER DEPARTMENTAL DATA AS DESIRED IN THESE MARY DOUGH FIELDS. WITH FIELD SELECTION AND JUXTAPOSITION BILL SMITH ONE FILE SERVES SEVERAL FUNCTIONS. //JCL 1,, 1,30 ,,6 1,30 IF COPIES ARE DESIRED INDICATE QUANTITY BY YOUR NAME, BE SURE DISCARD CONDITION DOES NOT EXIST. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>&g //SPC @12 10 SPACES, NOTE OCTAL NUMBERS MAY BE USED. --------------------------------------------- //JCL 1 //HED 0 0 //SPC 5 TEST CASE COMPLETED. (NOT REALLY) //END PLEASE ROUTE AS INDICATED ! PLEASE ROUTE AS INDICATED ! ..... HERB SHEAR ..... HERB SHEAR ..... JOHN DOE ..... JOHN DOE ..... MARY DOUGH ..... MARY DOUGH ..... BILL SMITH ..... BILL SMITH IF COPIES ARE DESIRED IF COPIES ARE DEISRED INDICATE QUANTITY BY YOUR INDICATE QUANTITY BY YOUR NAME, BE SURE DISCARD NAME, BE SURE DISCARD CONDITION DOES NOT EXIST. CONDITION DOES NOT EXIST. .... DISCARD WHEN ROUTED .... DISCARD WHEN ROUTED RTN TO SECRETARY FOR RTN TO SECRETARY FOR .... COPIES AND/OR FILING .... COPIES AND/OR FILING FILE TO:................. FILE TO:................. COMMENTS: COMMENTS: ---------------------------- ------------------------------- TEST CASE COMPLETED. (REALLY) **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A01301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RTDMO **PROGRAM TITLE: PAGE ORIENTED TEXT DISPLAY **REVISION? NO **PACKAGE: 1 **CATEGORY: 6 **KEYWORDS: TEXT DISPLAY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ILLUSTRATES HOW TO UTILIZE THE FILE MANAGER CALL AND PROGRAM THE 2640 SERIES TERMINALS. SINCE THE NATURE OF THE PROGRAM LENDS ITSELF TOWARD A GENERAL ASCII MESSAGE PROCESSOR (PAGE ORIENTED), IT CAN BE USED TO IMPLEMENT AND DISPLAY ANY DESIRED DATA CASE WITH LIMITS TAILORED TO THE 2640 SERIES SCREEN FOR 23 LINES WITH 132 CHARACTERS PER LINE. THE CURSOR IS RESERVED FOR LINE 24. THE PROGRAM ACCESSES ANY ONE OF 100 FILES OF TEXT AND DISPLAYS THE TEXT ON THE TERMINAL DISPLAY. IT USES EXEC AND FMP CALLS. HARDWARE REQUIREMENTS INCLUDE A 2640 OR 2644 TERMINAL FOR DISPLAY PURPOSES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RTE-3 SOURCE AND SAMPLE ASCII DATA **LOAD INSTRUCTIONS: 1. COMPILE AND LOAD THE PROGRAM 'RTE3' 2. STORE SAMPLE ASCII DATA ON ASCII (TYPE 3 OR 4) DATA FILES USING THE "ST" COMMAND IN THE FOLLOWING FORMAT: RTE3XX, WHERE XX IS ANY TWO LETTERS YOU CHOOSE. **RUN INSTRUCTIONS: :RU,RTE3[,LU] WHERE LU = DISPLAY TERMINAL LU. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERRORS ARE SELF-EXPLANATORY. **MISCELLANEOUS: IT IS SUGGESTED THAT THE 2640 OR 2644 TERMINAL HAVE AT LEAST 4K MEMORY. A01401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FORMT **PROGRAM TITLE: AUTOMATIC TEXT REPORT FORMATTER **REVISION? NO **PACKAGE: 1 **CATEGORY: 6 **KEYWORDS: FORMATTING TEXT **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-II RTE-III RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE RTE-II,-III, OR -M USER TO PRODUCE A FORMATTED LISTING OF AN FMP FILE WITH AUTOMATIC PAGE NUMBERING AND TITLES. THE PROGRAM ACCEPTS A FILE NAME (NAMR) AND PROMPTS THE USER FOR PRINT CONTROL INFORMATION TO PRODUCE THE LISTING. FOR EDITING PURPOSES, THERE IS AN OPTION TO PRODUCE LINE NUMBERS FOR EACH LINE OF TEXT. THE PROGRAM HAS EXTENSIVE ERROR CHECKING, CAN BE RUN UNDER BATCH OR SPOOLING, AND TEXT INPUT CAN BE FROM EXTERNAL DEVICES THROUGH FMP TYPE 0 FILES. FORMT USES EXEC AND FMP CALLS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: FTN4 PROGRAM SOURCE OF FORMT **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERROR MESSAGES ARE SELF-EXPLANATORY. **MISCELLANEOUS: A01501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: WOLF **PROGRAM TITLE: AUTOMATIC TYPING PROGRAM **REVISION? YES **PACKAGE: 1 **CATEGORY: 6 **KEYWORDS: FORMATTING TEXT REPORTS **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: A FORTRAN IV PROGRAM FOR THE HEWLETT-PACKARD 2100 SERIES COMPUTER PROVIDES FOR AUTOMATIC TYPING OPERATIONS AND CAN, WHEN EMPLOYED WITH MANUFACTURER'S TEXT EDITOR, PROVIDE A SYSTEM TO GREATLY FACILITATE PREPARATION OF REPORTS, LETTERS AND OTHER TEXT. THE INPUT TEXT AND IMBEDDED CONTROL DATA CAN PERFORM NEARLY ALL OF THE FUNCTIONS OF A TYPIST. A FEW OF THE FEATURES AVAILABLE ARE CENTERING, TITLES, FOOTNOTES, INDENTATION, PAGE NUMBERING (INCLUDING ROMAN NUMERALS), AUTOMATIC PARAGRAPHING, AND TWO FORMS OF TAB OPERATIONS. THE DOCUMENTA- TION CONTAINS BOTH USER AND TECHNICAL DESCRIPTION OF THE PROGRAM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: TRANSFER FILE TO LOAD WOLF OFF TAPE FILE# 3: &WOLF MAIN SEGMENT FILE# 4: &MAINC THE FOLLOWING ARE WOLF SUBPROGRAMS FILE# 5: &IPARS FILE# 6: &IGETC FILE# 7: &IWORD FILE# 8: &ILINE FILE# 9: &ILINO FILE# 10: &IDSWP FILE# 11: &IOUTP FILE# 12: &$.OVY FILE# 13: &$$WLF FILE# 14: &IFIGC FILE# 15: &WLF.0 FILE# 16: &IINIT FILE# 17: &IOPEN FILE# 18: &WLF.1 FILE# 19: &IPAGC FILE# 20: &IPAUS FILE# 21: &IPAGP FILE# 22: &ROMAN FILE# 23: &DECIM FILE# 24: &IPARC FILE# 25: &ICMDH FILE# 26: &ITTLP FILE# 27: &IFTLP FILE# 28: &WLF.2 FILE# 29: &IFTHC FILE# 30: &IFILE FILE# 31: &IALPX FILE# 32: &WLF.3 FILE# 33: &IERRM FILE# 34: &CFILE FILE# 35: &CMOVE FILE# 36: &WLF.4 FILE# 37: &ICMDA FILE# 38: &ITIFT FILE# 39: &INUMX FILE# 40: %WOLF RELOCATABLE FILES FILE# 41: %MAINC FILE# 42: %IPARS FILE# 43: %IGETC FILE# 44: %IWORD FILE# 45: %ILINE FILE# 46: %ILINO FILE# 47: %IDSWP FILE# 48: %IOUTP FILE# 49: %$.OVY FILE# 50: %$$WLF FILE# 51: %IFIGC FILE# 52: %WLF.0 FILE# 53: %IINIT FILE# 54: %IOPEN FILE# 55: %WLF.1 FILE# 56: %IPAGC FILE# 57: %IPAUS FILE# 58: %IPAGP FILE# 59: %ROMAN FILE# 60: %DECIM FILE# 61: %IPARC FILE# 62: %ICMDH FILE# 63: %ITTLP FILE# 64: %IFTLP FILE# 65: %WLF.2 FILE# 66: %IFTHC FILE# 67: %IFILE FILE# 68: %IALPX FILE# 69: %WLF.3 FILE# 70: %IERRM FILE# 71: %CFILE FILE# 72: %CMOVE FILE# 73: %WLF.4 FILE# 74: %ICMDA FILE# 75: %ITIFT FILE# 76: %INUMX FILE# 77: *WOLFL TRANSFER FILE TO LOAD WOLF PROGRAM FILE# 78: "APPXA SOURCE TEXT FOR APPENDIX A FILE# 79: &HASHT HASH TABLE PROGRAM FILE# 80: HASHT CURRENT COMMANDRNO. LIST FOR PROG. HASHT **LOAD INSTRUCTIONS: CONTACT CONTRIBUTOR FOR WOLF REFERENCE MANUAL. **RUN INSTRUCTIONS: CONTACT CONTRIBUTOR FOR WOLF REFERENCE MANUAL. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE REFERENCE MANUAL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A01601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: JFORM **PROGRAM TITLE: CRT FORMS CREATION **REVISION? NO **PACKAGE: 1 **CATEGORY: 6 **KEYWORDS: FORMATTING TERMINAL DISPLAY REPORTS **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ALLOWS THE 264X HP TERMINAL USER TO INTERACTIVELY CREATE FORMS AND STORE THE RESULT IN AN FMP FILE. THE PROGRAM LOADS SOFT KEYS WITH VARIOUS ENHANCEMENT OPTIONS THAT ARE USED TO CREATE THE DESIRED FORM. THE PROGRAM IS SELF-INSTRUCTIONAL AND PERFORMS EXTENSIVE ERROR CHECKING. THE PROGRAM IS COMPLETELY CONVERSATIONAL, USES ESCAPE SEQUENCES, AND SHOULD BE RUN ON A CRT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: JFORM SOURCE **LOAD INSTRUCTIONS: COMPILE AND LOAD AS USUAL WITH NO SPECIAL CONSIDERATIONS. **RUN INSTRUCTIONS: :RU,JFORM[,TERMINAL-LU] THE REST IS SELF-INSTRUCTIONAL. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: B00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: HPCG **PROGRAM TITLE: SYSTEMS OF ORDINARY DIFFERENTIAL EQUATIONS **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: DIFF.EQ. **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS **MEMORY REQUIREMENTS: 2688 WITH EXTERNAL SUBPROGRAMS (2572 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: USED BY THE RTE OR DOS OPERATING SYSTEM, THIS FORTRAN CALLABLE ROUTINE SOLVES A SYSTEM OF FIRST-ORDER ORDINARY GENERAL DIFFERENTIAL EQUATIONS WITH GIVEN INITIAL VALUES. A FOURTH ORDER METHOD, HAMMINGS MODIFIED PREDICTOR-CORRECTOR METHOD IS USED. THIS PROCEDURE REQUIRES FOUR PRE- CEDING POINTS FOR COMPUTATION OF A NEW VECTOR (Y) OF THE DEPENDENT VARIABLES. THE FOURTH-ORDER RUNGE-KUTTA METHOD IS USED FOR ADJUSTMENT OF THE INITIAL INCREMENT AND FOR COMPUTATION OF STARTING VALUES. DURING THE ENTIRE ROUTINE, THE INCREMENT IS AUTOMATICALLY ADJUSTED BY HALVING OR DOUBLING. FOR MAXIMUM FLEXIBILITY IN OUTPUT, AN OUTPUT SUBROUTINE MUST BE SUPPLIED BY THE USER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: NORMAL LOAD AND GO PROCEDURES. **RUN INSTRUCTIONS: NORMAL LOAD AND GO PROCEDURES. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SUBROUTINE HPCG SOLVES A SYSTEM OF FIRST ORDER ORDINARY GENERAL DIF- FERENTIAL EQUATIONS WITH GIVEN INITIAL VALUES. EVALUATION IS DONE USING HAMMINGS MODIFIED PREDICTOR-CORRECTOR METHOD. IT IS A FOURTH ORDER METHOD, USING FOUR PRECEEDING POINTS FOR COM- PUTATION OF A NEW VECTOR Y OF THE DEPENDENT VARIABLES. FOURTH ORDER RUNGE-KUTTA METHOD SUGGESTED BY RALSTON IS USED FOR AD- JUSTMENT OF THE INITIAL INCREMENT AND FOR COMPUTATION OF STARTING VALUES. SUBROUTINE HPCG AUTOMATICALLY ADJUSTS THE INCREMENT DURING THE WHOLE COMPUTATION BY HALVING OR DOUBLING. TO GET FULL FLEXIBILITY IN OUTPUT, AN OUTPUT SUBROUTINE MUST BE CODED BY THE USER. HPCG IS WRITTEN WITH EXTENDED FORTRAN II CAPABILITY. RTE OR DOS FORTRAN CALLABLE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: TERMINATES AND RETURNS IF: (1) MORE THAN 10 BISECTIONS OF THE INITIAL INCREMENT ARE NECESSARY TO GET SATISFACTORY ACCURACY (ERROR MESSAGE IHLF=LL); (2) INITIAL INCREMENT IS EQUAL TO 0 OR HAS WRONG SIGN (ERROR MESSAGES IHLF=12 OR IHLF=13); (3) THE WHOLE INTEGRATION INTERVAL IS WORKED THROUGH.; (4) SUBROUTINE OUTP HAS CHANGED PRMT (5) TO NON-ZERO. **MISCELLANEOUS: LITERATURE REFERENCE (1) RALSTON/WILF, MATHEMATICAL METHODS FOR DIGITAL COMPUTERS, WILEY, NEW YORK,1960, PP. 95-109. (2) RALSTON, RUNGE-DUTTA METHODS WITH MINIMUM ERROR BOUNDS, MTAC. VOL. 16, ISS. 80, 1962, PP. 431-437. B00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EULT3 **PROGRAM TITLE: 3-D TRANSFORMATIONS USING EULER'S ANGLES **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: TRANSFORM EULER GEOMETRY **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE BCS **MEMORY REQUIREMENTS: 954 WITH EXTERNAL SUBPROGRAMS (392 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN CALLABLE SUBROUTINE TRANSFORMS THE COORDINATES (X, Y, Z) OF A DATA SET TO (X', Y', Z') USING EULER'S ANGLES. IT IS PARTICULARLY USEFUL IN OBTAINING PLANAR PROJECTIONS OF CRYSTAL STRUCTURES. RE- FERENCES CITED IN THE DOCUMENTATION GIVE A DETAILED EXPLANATION OF THE METHOD OF EULER'S ANGLES. ONLY 8K OF CORE AND AN HP2752 TELEPRINTER ARE REQUIRED, BUT THE ROUTINE IS PARTICULARLY USEFUL IN CONJUNCTION WITH AN HP1300A DISPLAY SYSTEM. TWO TEST PROGRAMS DEMONSTRATE OUTPUT ON A TELEPRINTER AND AN HP1300A SCOPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE PURPOSE OF THIS SUBROUTINE IS THE TRANSFORMATION OF CO-ORDINATES OF A SET OF DATA (X,Y,Z) TO (X',Y',Z') USING EULER'S ANGLES. IT IS PARTICULARLY USEFUL IN OBTAINING PLANAR PROJECTIONS OF CRYSTAL STRUC- TURES. A MORE DETAILED EXPLANATION OF THE METHOD OF EULER'S ANGLES CAN BE OBTAINED FROM THE REFERENCES CITED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE H. GOLSTEIN, CLASSICAL MECHANICS. READING, MASSACHUSETTS: ADDISON- WESLEY (1950) G. ARFKEN, MATHEMATICAL METHODS FOR PHYSICISTS. NEW YORK: ACADEMIC PRESS (1966) B00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ASICO **PROGRAM TITLE: INVERSE SIN AND COS ROUTINE (SINGLE PRECISION) **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: TRIGONOMETRY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M RTE **MEMORY REQUIREMENTS: 407 WITH EXTERNAL SUBPROGRAMS (94 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE TWO ENTRY POINTS OF THIS ROUTINE, 'ASINE' AND 'ACOS', WILL RETURN, AS A NORMAL PRECISION REAL VALUE, THE INVERSE 'SIN' AND 'COS' OF AN ARGUMENT. THE FUNCTION IS CALLABLE FROM FORTRAN AND ASSEMBLY LANGUAGE AND WILL OPERATE IN A DOS, DOS-M, OR RTE ENVIRONMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: GIVEN IS A LISTING OF A TEST PROGRAM FTN,L PROGRAM ATEST DO 1 I=1,50 X=I-10 X=X/10 P=COS(X) Y=ACOS(P) Q=SIN(X) Z=ASIN(Q) WRITE(6,6) X,P,Y,Q,Z 6 FORMAT(X5F10.5) 1 CONTINUE END CALLING SEQUENCE - FORTRAN ANGLE=ASIN(X) ANGLE=ACOS(X) CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT ASIN OR ACOS JSB ASIN OR ACOS DEF *+2 DEF X (ARGUMENT) VALUE IN A & B **PROGRAM DESCRIPTION: THE TWO ENTRY POINTS OF THIS ROUTINE, ASIN AND ACOS, WILL RETURN, AS A NORMAL PRECISION REAL VALUE, THE INVERSE SIN AND COS OF AN ARGUMENT. THE FUNCTION IS CALLABLE FROM FORTRAN AND ASSEMBLY LANGUAGE AND WILL OPERATE IN A DOS, DOS-M, OR RTE ENVIRONMENT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF ARGUMENT GT 1 OR LT -1, MESSAGE 03 UN IS PRINTED (VIA ERRO) AND ZERO IS RETURNED. **MISCELLANEOUS: ALGORITHM FROM HASTINGS, APPROXIMATIONS FOR DIGITAL COMPUTERS, SHEET 30. B00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SNCOS **PROGRAM TITLE: M-SERIES MICROCODED SIN-COS-TAN **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: TRIGONOMETRY MICROCODE **LANGUAGES: ASMB MICROASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: BCS DOS RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS 21MX ASSEMBLER/MICROCODE ROUTINE COMPUTES THE SINE AND COSINE FIVE TIMES FASTER THAN THE STANDARD DOS/RTE LIBRARY ROUTINES. THE TANGENT FUNCTION RUNS THREE TIMES FASTER. EXECUTION TIMES ARE: SINE 302-340 MICROSECONDS COSINE 297-335 MICROSECONDS TANGENT 685-715 MICROSECONDS EQUIPMENT REQUIREMENT IS A 21MX. THE PROGRAM OPERATES IN A BCS, DOS, OR RTE ENVIRONMENT WITH RESPECTIVE MINIMUM CORE REQUIREMENTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SNCOS SOURCE (ASSEMBLER) FILE# 3: SNCOS SOURCE (MICROCODE) FILE# 4: TRIG SOURCE (FTN4 TEST PROGRAM) **LOAD INSTRUCTIONS: THE NORMAL CALL TO SIN, COS OR TAN IN A USER PROGRAM WILL INVOKE THE MICROCODE, PROVIDED THE ASSEMBLER ROUTINE (SNCOS): 1. HAS REPLACED THE STANDARD SINE, COSINE, AND TANGENT LIBRARY ROUTINES AT SYSGEN TIME, OR 2. IS LINKED IN WHEN THE RELOCATING LOADER LINKS THE USER PROGRAM. THE MICROCODE MUST BE IN PROM CHIPS OR IN WCS AT EXECUTION TIME. THE MICROCODE CONTAINS 2 ORIGIN STATEMENTS. THESE ARE SET FOR MODULE 12. IF A DIFFERENT MODULE IS USED, THESE ORIGIN STATEMENTS MUST BE CHANGED. THE ASSEMBLER ROUTINE REQUIRES 293 FEWER MEMORY LOCATIONS THAN THE STANDARD LIBRARY ROUTINES. THE MICROCODE USES 233 CONTROL STORE LOCATIONS. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS 21MX ASSEMBLY/MICROCODE ROUTINE COMPUTES SINE AND COSINE 5 TIMES FASTER THAN THE STANDARD DOS/RTE LIBRARY ROUTINES. TANGENT IS COM- PUTED 3 TIMES FASTER. EXECUTION TIMES ARE AS FOLLOWS: SINE 302-340 MICROSECONDS COSINE 297-335 MICROSECONDS TANGENT 685-715 MICROSECONDS THE ROUTINES ARE CALLABLE FROM ASSEMBLY LANGUAGE, FORTRAN, OR ALGOL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: COMPUTER APPROXIMATIONS BY JOHN F. HART. B00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FFT **PROGRAM TITLE: M-SERIES FFT WITH AUTOMATIC SCALING ON OVERFLOW **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: FOURIER MICROCODE TRANSFORM **LANGUAGES: ASMB MICROASMB **COMPUTER TYPE: 21MX **OPERATING SYSTEMS: RTE BCS DOS-M **MEMORY REQUIREMENTS: COMPLEX TRANSFORM SIZE N REQUIRES 2*N LOCATIONS, REAL - N LOCATIONS. **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS SUBROUTINE PERFORMS A MICROCODE ENHANCED FFT (FAST FOURIER TRANSFORM) WITH AUTOMATIC SCALING ON OVERFLOW. DATA TO BE TRANSFORMED MUST BE PRESENTED AS A SINGLE INTEGER ARRAY. THE DATA MAY BE COMPLEX OR REAL. IF COMPLEX, THE ODD SUBSCRIPTED ELEMENTS ARE THE "REALS", AND THE EVEN SUBSCRIPTED ELEMENTS ARE THE "IMAGINARIES". IF REAL, THE "REALS ARE CONTIGOUS. A COMPLEX TRANSFOM OF SIZE N REQUIRES 2*N MEMORY LOCATIONS. A REAL TRANSFORM OF SIZE N REQUIRES N MEMORY LOCATIONS. EXECUTION TIME FOR 1024 COMPLEX POINT IS ABOUT 300MS (MILLISECONDS). EXECUTION TIME FOR 1024 (ALL IMAGINARIES = 0) POINTS OR 1024 REAL POINTS IS ABOUT 160 MS. EACH OVERFLOW INCREASES EXECUTION TIME BY 6 MS FOR COMPLEX TRANSFORMS; EACH OVERFLOW INCREASES ESECUTION TIME BY 3 MS FOR COMPLEX (ALL IMAGINARIES = 0) OR REAL TRANSFORMS. THE ASSEMBLY LANGUAGE PORTION OF THE SUBROUTINE REQUIRES 269 MEMORY LOCATIONS. THE MICROCODED PORTION REQUIRES 512 WORDS OF CONTROL STORE. THE SUBROUTINE HAS 3 ENTRY POINTS: FFT, CMPRS, XPAND. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: 1. FFTC COMPLEX FFT MICROCODE MICMX,L 2. FFTR REAL FFT MICROCODE MICMX,L 3. FFTIF ASSEMBLER FFT SUBROUTINE ASMB,L 4. FFTT TEST PROGRAM FTNR,L MICROASSEMBLE TAPE 1 AND SAVE OBJECT. MICROASSEMBLE TAPE 2 AND SAVE OBJECT. ASSEMBLE TAPE 3 AND SAVE RELOCATABLE. COMPILE TAPE 4 AND LOAD WITH TAPE 3 RELOCATABLE . LOAD WCS CARD(S) WITH OBJECT FROM TAPES 1 AND 2. RUN FFTT. THE PROGRAMS ARE SET UP FOR RTE OPERATION AND MUST BE MODIFIED FOR OPERATION FOR OPERATING IN DOS OR BCS EINVIRONMENTS. **RUN INSTRUCTIONS: REQUIRES RTE OPERATING SYSTEM FOR UNMODIFIED OPERATION. ALSO, REQUIRES RTE MICROSOFTWARE (92061). MICROCODE SET FOR MODULES 12 AND 13, AND MUST BE MODIFIED IF LOCATED ELSEWHERE IN CONTROL STORE. THIS ROUTINE WILL RUN ONLY ON A 21MX! IF ARRAYS GREATER THAN 1024 POINTS ARE USED, THEN THE FOLLOWING MODIFICATIONS MUST BE MADE. 1. THE SINE TABLE MUST BE ADJUSTED SO THAT IT IS 1/4 THE ARRAY SIZE. 2. THE MICROINSTRUCTION LABELED SETNMAX IN THE COMPLEX MICROCODE MUST BE ADJUSTED. FOR EXAMPLE, SUPPORT ARRAYS OF UP TO 4096 POINTS WERE TO BE TRANSFORMED. LINE 157 IN FFTC, TAPE 1 , SHOULD BE CHANGED TO SETNMAX IMM RES2 CMHI S7 367B S7=2048-NMAX/3=NH LINE 76 IN FFTR, TAPE 2, SHOULD BE CHANGED TO COS.SIN IMM COV CMHI S7 367B S7=2048=NMAX/2 NO CHANGES ARE REQUIRED FOR FFTT, TAPE 3. LINES 3,4,12 IN FFTT, TAPE 4, SHOULD BE CHANGED TO DIMENSION IDATA (8192) DIMENSION ITABL (1024) ... NMAX = 4096 NOTE THAT NO CHANGES ARE REQUIRED FOR SMALLER ARRAYS. **INPUT/OUTPUT EXAMPLES: THERE ARE 3 CALLING SEQUENCES: 1. COMPLEX 2. COMPLEX (ALL IMAGINARIES = 0) 3. REAL 1. COMPLEX CALLING SEQUENCE. CALL FFT (IDATA,N,ITABL,ISIGN,IEXP) WHERE IDATA IS THE INTEGER ARRAY TO BE TRANSFORMED; IDATA MUST BE IN NORMAL SEQUENCE. AT THE END OF THE TRANSFORM IDATA WILL ALSO BE IN NORMAL SEQUENCE. N IS THE NUMBER OF DATA POINTS, AND MUST BE AN INTEGRAL POWER OF 2, E.G. 64, 128, 256, ... ITABLE IS A TABLE OF 256 SINE VALUES USED BY ALL TRANSFORMS OF 1024 POINTS OR LESS. ITABL MAY BE GENERATED AS FOLLOWS: K = NMAX/4 DO 10 I = 1,K ARG = 3.1415926536*(I-1)/(NMAX/2) 10 ITABL(I) = SIN(ARG)*32768. + .5 C NMAX = 1024. IF ARRAYS GREATER THAN 1024 POINTS C ARE TO BE TRANSFORMED, NMAX MUST BE CHANGED. ISIGN = (-1 = FORWARD TRANSFORM, +1 = REVERSE TRANSFORM) IEXP IS THE MAGNITUDE OF IDATA. FOR FORWARD TRANSFORMS, IEXP MUST BE INITIALIZED TO CORRECTLY INDICATE THE MAGNITUDE OF IDATA. SETTING IEXP TO 0 INDICATES THAT IDATA IS NOT SCALED. FOR EXAMPLE, IF AFTER A FORWARD TRANSFORM IEXP = +3, AND A PARTICULAR ELEMENT VALUE IS 5, THE TRUE VALUE OF THAT ELEMENT IS 5 * 2**3. FOR REVERSE TRANSFORMS, IEXP SHOULD BE INITIALIZED TO THE VALUE RETURNED WHEN IDATA WAS ORIGINALLY FORWARD TRANSFORMED. 2. COMPLEX (ALL IMAGINARIES = 0) CALLING SEQUENCE. CALL CMPRS (IDATA,N,ISIGN,IEXP) CALL FFT (IDATA,N,ITABL,ISIGN,IEXP) CALL XPAND (EDATA,N,ISIGN,IEXP) WHERE IDATA,N, AND IEXP ARE AS PREVIOUSLY DEFINED ISIGN = (-1 = FORWARD TRANSFORM, +1 = REVERSE TRANSFORM) CMPRS IS A SECTION OF CODE THAT COMPRESSES N COMPLEX (ALL IMAGINARIES = 0) POINTS OCCUPYING 2*N MEMORY LOCATIONS TO N REAL POINTS OCCUPYING N MEMORY LOCATIONS. XPAND IS A SECTION OF CODE THAT EXPANDS N REAL POINTS OCCUPYING N MEMORY LOCATIONS TO N COMPLEX (ALL IMAGINARIES = 0) POINTS OCCUPYING 2*N MEMORY LOCATIONS. 3. REAL CALLING SEQUENCE. CALL FFT (IDATA,N,ITABL,ISIGN,IEXP) WHERE IDATA,N, AND IEXP ARE AS PREVIOUSLY DEFINED. ISIGN = (-1 = FORWARD TRANSFORM, +1 = REVERSE TRANSFORM) AT THE END OF A FORWARD TRANSFORM, IDATA(1) AND IDATA(2) REPRESENT THE DC LEVEL AND 1/2 THE SAMPLING FREQUENCY, RESPECTIVELY, AS FOLLOWS: DC LEVEL = IDATA(1) + IDATA (2) 1/2 SAMPLING FREQUENCY = IDATA(1) - IDATA(2) FOR REVERSE TRANSFORMS, IDATA(1) AND IDATA(2) MUST BE AS RETURNED AFTER THE ORIGINAL FORWARD TRANSFORM. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE 1. IEEE TRANSACTIONS ON AUDIO AND ELECTROACOUSTICS, VOL AU-15, JUNE 1967 PAGES 45-55. 2. THE FFT ALGORITHM AND ITS APPLICATIONS, IBM RESEARCH PAPER RC-1743, FEBRUARY 9, 1967, PAGES 30-33. B00601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SQRT **PROGRAM TITLE: MICROCODED SQRT AND BIT/WORD MICROCODE FOR 21MX-M **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: BIT MICROCODE WORD **LANGUAGES: MICROASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE CONSISTS OF THIRTEEN MICROCODED ROUTINES; THESE COM- PREHEND A SQUARE ROOT SUBROUTINE FOR FLOATING POINT NUMBERS (INDE- PENDENT FROM THE PRESENCE OF THE FLOATING POINT FIRMWARE PACKAGE), VARIOUS SUBROUTINES TO MOVE WORDS AND TO TEST, CLEAR AND SET ANY BIT IN A 16 BIT WORD. A DETAILED DESCRIPTION FOLLOWS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1) ASSEMBLE SQRT SUBROUTINE. 2)LOAD THE RELOCATABLE SQRT ROUTINE WITH YOUR OWN PROGRAM TO SUBSTITUTE THE PROGRAM LIBRARY ROUTINE WITH THE SAME ENTRY POINT. 3) COMPILE THE MICROPROGRAMMED ROUTINE AND LOAD THE MICROCODE IN THE WCS. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: ALL THESE MACROS ARE CONFIGURED FOR THE WCS MODULE NUMBER THREE AND CAN BE EASILY ADAPTED FOR ANOTHER MODULE. TO TEST THE MICROPROGRAMMED SQRT, WE TAKE THE DIFFERENCE BETWEEN THE VALUE X AND THE VALUE SQRT (X) ** 2 FOR ALL THE APPROXIMATELY 8.4 X (10**6) DIFFERENT BITS COMBINATIONS FOR REAL NUMBERS FROM 1. TO 4. IN ALL CASES THIS DIFFERENCE WAS 0 OR 1 ON THE LAST SIGNIFICANT BIT. **PROGRAM DESCRIPTION: SUBROUTINES OR MICROPROGRAMS 1) SQRT SUBSTITUTES WITH THE MACRO 105143 THE JSB SQRT 2) MICROPORGRAMMED MODULE 1: MACRO 105143 MACRO SQUARE ROOT.NORMAL RETURN IN P+2. ERROR RETURN JMP ERROR IN P+1 WITH IN A-B REGISTERS THE 03UN CODE. 105144 MACRO SET THE N(TH)(,I) BIT IN WORD X(,I) DEF N(,I) DEF X(,I) 105145 IDEM CLEAR THE N(TH)(,I) BIT IN WORD X(,I). 105146 IDEM TEST THE N(TH)(,I) BIT IN WORD X(,I) AND SKIP IF SET (P+3 NORMAL RETURN, P+4 SKIP RETURN). 105147 IDEM IDEM BUT SKIP IF BUT IS CLEARED. 105150 IDEM TEST THE N(TH)(,I) BIT IN WORD X(,I) SKIP IF SET AND CLEAR. 105151 IDEM TEST THE N(TH)(,I) BIT IN WORD X(,I) SKIP IF CLEARED AND SET. 105152 IDEM COMPLEMENT THE N(TH)(,I) BIT IN WORD X(I) 105153 MACRO DECREMENT THE WORD X(,I) AND SKIP (P+3) IF DEF X(,I) THE CONTENT RESULTS ZERO. 105154 MACRO MOVE N(,I) WORDS TO END(,I) STARTING FROM DEF END(,I) START(,I) THE VECTORS WHICH FIRST LOCATION IS DEF START(,I) IN END(,I) AND START(,I) CAN BE LOCATED ELSE- DEF N(,I) WHERE IN THE MEMORY AND CAN RECOVER ONE ANOTHER IN ANY WAY. 105155 MACRO MOVE THREE WORDS IN MEMORY FROM START(,I) TO DEF END(,I) END(,I) DEF START(,I) 105156 IDEM IDEM FOR TWO WORDS 105157 IDEM IDEM FOR ONE WORD. FOR THE MACRO 105155 AND 105156 THE VECTORS CANNOT RECOVER ONE ANOTHER. ALL THE MACRO FROM 105144 TO 105157 ARE FREE FROM MEMORY PROTECT CONTROL. ALL THE MACRO PRESERVE THE A-B REGISTERS CONTENTS (EXCLUDING OB- VIOUSLY THE SQRT MACRO). FINALLY, THE A-B REGISTER CAN BE USED IN ANY WAY (DIRECT OR INDIRECT) TO DEFINE N,X,END,START LOCATIONS. N IS A LOCATION (D/I) WHICH CONTAIN THE ORDER NUMBER OF THE N(TH) BIT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: B00701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 21MX-E MICROCODED SIN-COS-TAN **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: TRIGONOMETRY MICROCODE **LANGUAGES: ASMB MICROASMB **COMPUTER TYPE: E-SERIES **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS IS THE 22681-90090 MICROCODED SIN-COS-TAN PROGRAM CONVERTED TO RUN ON THE MX-E. THE SIN AND COS ARE ABOUT 1.5 FASTER AND THE TAN ABOUT 2.5 TIMES FASTER THAN THE STANDARD FORTRAN LIBRARY ROUTINES. THE EXECUTION TIMES ARE: SIN - ABOUT 200-220 MICRO-SECONDS COS - ABOUT 200-220 MICRO-SECONDS TAN - ABOUT 450 MICRO-SECONDS THE ROUTINES ARE CALLABLE FROM ASSEMBLY LANGUAGE, FORTRAN, OR ALGOL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE **LOAD INSTRUCTIONS: &SCMXE MICRO SIN/COS/TAN FOR MX-E &SNCOS ASSEMBLY LANG. CALLS TO MICRO-CODED ROUTINES &TRIG FORTRAN TEST PROGRAM &SNCOZ SPECIAL ASSEMBLY ROUTINE FOR COMPARISION TEST &SCTST FORTRAN TEST PROGRAM COMPARES MICRO TO REGULAR SIN/COS/TAN LOG SAMPLE INPUT-OUTPUT OPERATIONAL: ASSEMBLE &SCMXE, PUT IN WCS OR PROM. EITHER REPLACE LIBRARY ROUTINES WITH SNCOS OR LOAD SNCOS WITH CALLING ROUTINE. CALLING ROUTINES USE NORMAL CALLS TO SIN, COS, TAN. TEST: ASSEMBLE &SCMXE, PUT IN WCS. COMPILE &SCTST, ASSEMBLE &SNC02, LOAD. &SNC02 IS A SPECIAL TEST PROGRAM TO ALLOW THE REGULAR AND MICRO-CODED SIN/COS/TAN TO BE CALLED FROM ONE PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: PRELIMINARY TESTS SHOW THAT THE MICRO-CODED ROUTINES HAVE THE SAME ACCURACY AS THE REGULAR LIBRARY ROUTINES. THE ROUTINES &SCTST AND &SNC02 SHOULD BE USED TO VERIFY THAT THE ACCURACY IS ADEQUATE FOR YOUR APPLICATION. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: COMPUTER APPROXIMATIONS BY JOHN F. HART. B00801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CNVMN **PROGRAM TITLE: COORDINATE TRANSFORMATION PACKAGE **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: GEOMETRY TRANSFORM **LANGUAGES: FTN4 **COMPUTER TYPE: 21MX **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: MINIMUM 8K PARTITION & AT LEAST 138 WORDS OF BACKGROUND COMMON. **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: CNVMN - A FORTRAN SUBROUTINE WHICH DRIVES TWO BACKGROUND DISC RESIDENT PROGRAMS, AND ALLOWS THE USER TO HAVE LARGE APPLICATIONS PRO- GRAMS AND STILL PERFORM COORDINATE TRANSFORMATIONS FOR A WIDE RANGE OF X,Y PROJECTIONS. CNVMN PERFORMS LAT-LON TO X,Y AND THE INVERSE. CONV8 - IS A FORTRAN BACKGROUND DISC RESIDENT PROGRAM WHICH IS SCHEDULED BY CNVMN WHEN PROJECTION OR SPHEROID CONSTANTS NEED TO BE ES- TABLISHED. CONV9 - IS A FORTRAN BACKGROUND DISC RESIDENT PROGRAM WHICH IS SCHEDULED BY CNVMN TO PERFORM ACTUAL TRANSFORMATIONS. RCONV - IS A SAMPLE MAIN, PERFORMING SINGLE POINT COORDINATE TRANS- FORMATIONS VIA INTERACTIVE KEYBOARD DIALOG. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: TRANSFER **LOAD INSTRUCTIONS: 1. CNVMN - THE RELOCATABLE %CNVMN SHOULD BE LINKED WITH THE MAIN DESIRING COORDINATE TRANSFORMATIONS: EXAMPLE: (USING RCONV) :LG :LG,6 :MR,%RCONV :MR,%CNVMN :RU,LOADR,99,,10 :SP,RCONV :OF,RCONV 2. CONV8 - TO LOAD CONV8 USE THE FOLLOWING PROCEDURE: :LG :LG,6 :MR,%CONV8 :RU,LOADR,99,,10 :SP,CONV8 :OF,CONV8 3. CONV9 - TO LOAD CONV9 USE THE FOLLOWING PROCEDURE: :LG :LG,6 :MR,%CONV9 :RU,LOADR,99,,10 :SP,CONV9 :OF,CONV9 **RUN INSTRUCTIONS: IRCONV - A TRANSFER FILE HAS BEEN INCLUDED TO 'RP' THE TYPE 6 FILES RCONV, CONV8 AND CONV9 REQUIRED TO RUN RCONV. TO EXECUTE FROM FMGR OR BATCH THE COMMAND TO EXECUTE !RCONV IS :RU,!RCONV,LUIN WHERE LUIN IS THE LOGICAL UNIT NUMBER OF THE INTERACTIVE TERM- INAL TO BE USED. UPON COMPLETION !RCONV WILL AUTOMATICALLY 'OF' THE PROGRAMS. **INPUT/OUTPUT EXAMPLES: CARD INPUT CONSIDERATIONS: 1. CONV8 - SHOULD CONV8 BE SCHEDULED WITH A PROJECTION TYPE CODE OF 3 (LAMBERT) OR 4 (TRANSVERSE MERCATOR) AND A STATE CODE OF 99 (CARD INPUT), CONV8 WILL ATTEMPT TO READ THE STATE PLANE CONSTANTS ACCORDING TO THE CARD FORMATS IN- CLUDED HERE. THE COMPLETE LIST OF CONSTANTS AND THEIR DEFINITIONS MAY BE OBTAINED FROM #2 UNDER TECHNICAL REFERENCES. (AVAILABLE FROM THE GOVERNMENT PRINTING OFFICE.) **PROGRAM DESCRIPTION: PURPOSE: THE COORDINATE TRANSFORMATION PACKAGE IS AN ADPATATION OF THE COORDINATE TRANSFORMATION ROUTINES CONTAINED IN TECHNICAL REFERENCE #1. REVISIONS HAVE BEEN MADE TO INCLUDE THE FOLLOWING CAPABILITIES OR REQUIREMENTS. 1. X,Y PROJECTION AND SPHEROID CONSTANTS EITHER CONTAINED IN OR GENERATED BY THE PROGRAMS. 2. METHOD OF SELECTION BASED ON A PRE-DEFINED SET OF CODES. 3. THE INCORPORATION OF THE MERCATOR PROJECTION. 4. THE ABILITY TO ACCESS THE COORDINATE TRANSFORMATION ROUTINES FROM ANOTHER PROGRAM. 5. ALLOW FULL TRANSFORMATION CAPABILITY WITH MINIMUM STORAGE RE- QUIREMENTS ON THE APPLICATION PROGRAM. SOFTWARE DEFINITIONS: 1. CNVMN - THIS SUBROUTINE WHEN LINKED WITH ANY APPLICATION PRO- GRAM ALLOWS FULL TRANSFORMATION CAPABILITIES. FROM 1 - N POINTS MAY BE TRANSFORMED PER CALL. N IS LIMITED BY THE SIZE OF THE BACKGROUND COMMON AREA. 2. CONV8 - THIS IS A BACKGROUND DISC RESIDENT PROGRAM SCHEDULED BY CNVMN TO ESTABLISH PROJECTION AND SPHEROID CON- STANTS BASED ON CODES PASSED TO CNVMN. THE FOLLOWING SUBROUTINES ARE CALLED BY CONV8 BASED ON THOSE SAME CODES: A) UTMGP - CALCULATES SHPEROID CONSTANTS USED IN TRANSFORMATION TO AND FROM GEODETIC COORDINATES. B) RMINV - GENERAL PURPOSE MATRIX INVERSION ROUTINE USED BY UTMGP. C) TMCNT - ESTABLISHES TRANSVERSE MERCATOR PROJECTION CONSTANTS. D) LCNST - ESTABLISHES LAMBERT PROJECTION CONSTANTS. 3. CONV9 - THIS IS A BACKGROUND DISC RESIDENT PROGRAM SCHEDULED BY CNVMN TO PERFORM COORDINATE TRANSFORMATIONS. THE FOLLOWING SUBROUTINES ARE CALLED BY CONV9 BASED ON CODES AND CONSTANTS ESTABLISHED BY CNVMN AND CONV8. A) TMGPN - PERFORMS COORDINATE TRANSFORMATIONS TO AND FROM TRANSVERSE MERCATOR. B) LMGPN - PERFORMS COORDINATE TRANSFORMATIONS TO AND FROM LAMBERT STATE PLANE. C) MCGPN - PERFORMS COORDINATE TRANSFORMATIONS TO AND FROM AN ARBITRARY MERCATOR PROJECTION WITH A PRE- DEFINED RECTIFYING LATITUDE. THE X,Y'S GENERATED SHOULD BE USED FOR GRAPHIC REPRESENTATION ONLY AND ARE NOT INTENDED TO CORRESPOND TO ANY KNOWN GEO- GRAPHIC POSITION. D) UTGPN - PERFORMS COORDINATE TRANSFORMATIONS TO AND FROM A UTM ZONE AS WELL AS ALASKA UTM BASED ZONES 2 - 9. 4. RCONV - MAIN PROGRAM PERFORMING SINGLE POINT COORDINATE TRANS- FORMATIONS VIA INTERACTIVE KEYBOARD DIALOG. RCONV IS RESPONSIBLE FOR QUESTIONING THE USER FOR ALL NECESSARY CONVERSION CONTROL. RCONV PASSES THESE CONTROLS TO CNVMN IN THE FOLLOWING CALL SEQUENCE: CALL CNVMN (ITYP,IPC,ISP,IDIR,IPTS,XX,YY,LAT,LON, IU,RL) (SEE SOURCE LISTINGS FOR PARAMETER EXPLANATIONS.) ALL CONVERSION CONTROLS ARE TAKEN FROM THE #CODES LISTING INCLUDED IN THIS DOCUMENTATION. THE FOLLOWING SUBROUTINES ARE CALLED BY RCONV BASED UPON USER REQUESTS: A) LLXY - PERFORMS ALL LAT., LON. TO XY CONVERSIONS B) XYLL - PERFORMS ALL XY TO LAT., LON. CONVERSIONS C) DMS - CONVERTS DECIMAL DEGREES TO DEGREES, MINUTES AND SECONDS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: RCONV: "INVALID CONVERSION CODES, ABORT NN,NN,NN" (WHERE NN,NN,NN=ITYP,IPC,ISP AS INPUT) **MISCELLANEOUS: 1. IN ORDER TO ACCOMPLISH THE DESIRED PURPOSE OF THE TRANSFORMATION ROUTINES, EXECUTION TIME HAS BEEN DEEMED SECONDARY. HOWEVER, IN- CREASED EXECUTION TIME MAY BE ACCOMPLISHED BY TRANSFORMING AS MANY POINTS AS POSSIBLE AT ONE TIME. THIS ELIMINATES MULTIPLE SCHEDULE CALLS FOR CONV9. IF SEVERAL LARGE BACKGROUND PARTITIONS ARE AVAIL- ABLE, THE USER MAY ALSO DESIRE TO LOCK CONV8 AND CONV9 OR AT LEAST CONV9 TO ELIMINATE SWAP TIME. 2. SINCE THESE ROUTINES REQUIRE A MINIMUM OF 138 WORDS OF BACKGROUND COMMON FOR A SINGLE POINT CONVERSION, THE CONSIDERATIONS LISTED IN #1 ARE DEPENDENT ON THE AVAILABILITY OF COMMON. SHOULD THE USER LACK ADEQUATE COMMON, IT WOULD BE RELATIVELY EASY TO MODIFY THE ROUTINES TO USE SAM AS A COMMUNICATION MEDIA VIA CLASS I/O. SIZE REQUIREMENTS: 1. CNVMN - 344 WORDS + 138 WORDS BACKGROUND COMMON *2. CONV8 - 8 PAGES + 126 WORDS BACKGROUND COMMON *3. CONV9 - 7 PAGES + 138 WORDS BACKGROUND COMMON *NOTE: PARTITION SIZE REQUIREMENTS CAN BE REDUCED BY OVERLAYING IN- DIVIDUAL SUBROUTINES. TECHNICAL REFERENCES: 1. COAST AND GEODETIC SURVEY. TECHNICAL REPORT 34. AUGUST 1967 "AEROTRIANGULATION: TRANSFORMATION OF SURVEYING AND MAPPING COORDINATE SYSTEMS". MELVIN J. UMBACH 2. COAST AND GEODETIC SURVEY. SPECIAL PUBLICATION 62-4. 1968 "STATE PLANE COORDINATES BY AUTOMATIC DATA PROCESSING". CHARLES N. CLAIRE 3. DEPARTMENT OF THE ARMY. TECHNICAL MANUAL 5-241-8. APRIL 1973 "UNIVERSAL TRANSVERSE MERCATOR GRID" 4. GEODESY - BONFORD OXFORD PRESS 1975. B00901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FFTIF **PROGRAM TITLE: E-SERIES MICRODED FAST FOURIER TRANSFORM WITH AUTO. SCALING ON OVERFLOW. **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: MICROCODE FOURIER TRANSFORM **LANGUAGES: ASMB MICROASMB **COMPUTER TYPE: E-SERIES **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: COMPLEX TRANSFORM SIZE REQUIRES 2*N. REAL REQUIRES N LOCATIONS. **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS SUBROUTINE PERFORMS A MICROCODE ENHANCED FFT (FAST FOURIER THIS SUBROUTINE PERFORMS A MICROCODE ENHANCED FFT (FAST FOURIER DATA TO BE TRANSFORMED MUST BE PRESENTED AS A SINGLE INTEGER ARRAY. THE DATA MAY BE COMPLES OR REAL. IF COMPLEX, THE ODD SUBSCRIPTED ELEMENTS ARE THE "REALS", AND THE EVEN SUBSCRIPTED ELEMENTS ARE THE "IMAGINARIES". IF REAL, THE "REALS" ARE CONTIGUOS. A COMPLEX TRANSFORM OF SIZE N REQUIRES 2*N MEMORY LOCATIONS. A REAL TRANSFORM OF SIZE N REQUIRES N MEMORY LOCATIONS. USES DVR36 - THE WCS DRIVER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: MICROASSEMBLE THE TWO MICROPROGRAMS, THEY WILL BE STORED INTO 'FFTC AND 'FFTR, THEN LOAD THESE INTO WCS. ASSEMBLE THE ASSEMBLY LANGUAGE SUBROUTINE INTO THE RELOCATABLE FILE %FFT1F. COMPILE THE FORTRAN PROGRAM INTO THE RELOCATABLE FILE %FFTT. LOAD THE RELOCATABLE FILES TOGETHER, THEN RUN FFTT. :RU,FFTT,,LIST **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE 1. IEEE TRANSACTIONS ON AUDIO AND ELECTROACOUSTICS, VOL. AU-15, JUNE 1967, PAGES 45-55. 2. "THE FAST FOURIER TRANSFORM ALGORITHM AND ITS APPLICATIONS," IBM RESEARCH PAPER RC-1743, FEBRUARY 9, 1967, PAGES 30-33. SPECIAL CONSIDERATIONS DATA MUST BE IN AN INTEGER ARRAY OF LENGTH N WHERE N IS AN INTEGER POWER OF TWO. B01001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: IMBUI **PROGRAM TITLE: IMBUI-B, SCATTERER INTEGRAL, ONE INTERACTION, DISC. **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: PHYSICS **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 16K SYSTEM **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: SEVERAL FUNCTIONS AND PARAMETERS ARE NEEDED IN FAST NEUTRON TIME-OF- FLIGHT SPECTROSCOPY; THEY ARE REFERRED TO AS SCATTERER INTEGRALS. THE FOLLOWING QUANITIES ARE COMPUTED BY IMBUI FOR A DISC SCATTERER: 1. THE NEUTRON TIME OF FLIGHT SPECTRUM 2. THE DISTRIBUTION OF SCATTERING ANGLES 3. THE DISTRIBUTION OF PRIMARY NEUTRON ENERGIES 4. THE SCATTERING PROBABILITY AND 5. THE INTEGRAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: DATA **LOAD INSTRUCTIONS: 1. ASSEMBLE IMBUI 2. LOAD IMBUI **RUN INSTRUCTIONS: 1. READY INPUT ON LOGICAL UNIT 5, OUTPUT COMES TO LU 6. 2. RUN IMBUI. CONTROL RETURNS TO THE SYSTEM AT THE END OF IMBUI. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DUE TO THE TECHNICAL CONTENT OF THE DOCUMENTATION AND THE USE OF SPECIAL SYMBOLS IN THE EQUATIONS, THE PROGRAM DESCRIPTION AND OTHER IMPORTANT IMFORMATION ON HOW TO USE THE PROGRAM IS NOT INCLUDED IN THIS DOCUMENTATION. DOCUMENTATION DOES EXIST ON PAPER. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE: L.E. BEGHIAN, B.K. BARNES, G.P. COUCHELL, J.J. EGAN, P. HARIHAR, G.H. KEGAL, T. MARCELLA, A. MITTLER, D.J. PULLEN, AND W.A. SCHIER, "NEURTRON SCATTERING CROSS SECTIONS OF (238)U", NUCLEAR SCIENCE AND ENGINEERING., 69 191 (1979). B01101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 7210 PLOTTER DRIVER FOR RTE **REVISION? YES **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: DRIVER PLOTTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: 1. THIS PROGRAM IS A DRIVER FOR THE HP 7210 PLOTTER. THE DRIVER DOES NOT REQUIRE DMA AND IS SHORT SO THAT IT MAY BE MADE CORE RESIDENT WITHOUT SIGNIFICANTLY DECREASING THE USER AREA OF AN RTE SYSTEM. THE PROGRAM WHICH CALLS THE DRIVER IS RESPONSIBLE FOR GENERATING THE PROPER COMMAND WORD SEQUENCE SINCE THE DRIVER DOES NOT CHECK THE SEQUENCE FOR LEGALITY. THE DRIVER RETURNS STATUS AT THE COM- PLETION OF EACH CALL. 2. LITERATURE REFERENCE 1. 17210A INTERFACE KIT MANUAL 2. 7210A INTERFACE MANUAL 3. 7210A OPERATORS GUIDE **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: STORE THE TEST PROGRAM SOURCE ON AN RTE FILE. LIST THE SOURCE AND EDIT IT SO THAT THE LOGICAL UNIT REFERENCE IS CORRECT. ASSEMBLE AND LOAD THE PROGRAM. SET THE LOWER LEFT AND UPPER RIGHT LIMIT ON THE PLOTTER AND LEAVE PEN AT THE UPPER RIGHT. RUN THE PROGRAM. THE PEN SHOULD MOVE TO THE LOWER LEFT (PEN UP) AND SHOULD DRAW A LINE TO THE UPPER RIGHT (PEN DOWN). THIS PROGRAM CHECKS OUT BOTH ABSOLUTE AND RELATIVE MODE PEN MOVES AND PEN UP/DOWN. **PROGRAM DESCRIPTION: SUBPROGRAM INFORMATION ENTRY POINT(S) THE FOLLOWING EXEC CALL SHOULD BE MADE TO USE THE PLOTTER: FORMAT CALL EXEC (2, IDRT, IBUF, N) WHERE IDRT = PLOTTER LOGICAL UNIT NUMBER IBUF = INTEGER ARRAY OF COMMAND WORDS N = NUMBER OF COMMAND WORDS IN IBUF THE COMMAND WORDS IN IBUF ARE SENT DIRECTLY TO THE PLOTTER. FOUR WORDS ARE REQUIRED TO MOVE THE PEN AND ONE WORD IS REQUIRED FOR A PEN UP/DOWN. SEE THE 17210A INTERFACE KIT MANUAL FOR ACTUAL BIT CONFIGURATION OF THE COMMAND WORDS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SPECIAL CONSIDERATIONS 1. THE DRIVER RETURNS THE LOWER 8 BITS FROM THE INPUT REGISTER OF THE PLOTTER INTERFACE CARD IN THE A REGISTER AND THE NUMBER OF COMMAND POINTS OUTPUT IN THE B REGISTER UPON COMPLETION OF THE REQUEST. 2. ONLY A WRITE CALL WILL BE ACCEPTED BY THE DRIVER. B01201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 7210 PLOTTING ROUTINES **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: PLOTTER CALCOMP GRAPHIC **LANGUAGES: FTN2 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M RTE **MEMORY REQUIREMENTS: 4222 LOCATIONS WITH EXTERNAL SUBPROGRAMS (2681 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THESE PROGRAMS WHEN USED WITH THE DOS-M, OR RTE 7210 PLOTTER DRIVER, (HP 22471 AND HP 22473 RESPECTIVELY), GREATLY SIMPLIFY THE PROGRAMMING REQUIRED TO DO THE FOLLOWING: 1. PLOT LINES OR POINTS 2. SCALE AND PLOT DATA 3. AXIS GENERATION 4. PLOT CHARACTERS AND NUMBERS LITERATURE REFERENCE 1. HP RELOCATABLE SUBROUTINES MANUAL (HP 02116-91780) 2. HP 7210 OPERATOR'S GUIDE **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: THE SUBPROGRAMS CAN EITHER BE LOADED AS TYPE 7 RELOCATABLE LIBRARY MODULES AT GENERATION TIME, OR, THEY CAN BE STORED AS RELOCATABLE MODULES AND LINKED WITH THE MAIN PROGRAM AT LOAD TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: LOAD THE TEST PROGRAM INTO A SOURCE FILE. EDIT THE SOURCE SO THAT THE CALL PLTLU (-) REFERS TO THE LOGICAL UNIT OF THE PLOTTER. COMPILE AND LOAD THE PROGRAM. PLACE A PIECE OF 15X10 INCH PLOTTER PAPER ON THE PLOTTER AND SET UP THE PLOT LIMITS. RUN THE PROGRAM. THE RESULTS SHOULD BE A GRAPH OF A SINE WAVE WITH AXES LABELED "PSI" AND "POWER". **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: CALLS TO THE ROUTINES PLOT,LINE,SCALE,AXIS,NUMB, AND SYMB DO NOT REQUIRE LARGER THAN THE 10 WORD INTERNAL BUFFER (IN THE PLOT ROUTINE) SINCE THEY CALL THE PLOTTER DRIVER FOR EACH PEN MOVEMENT. B01301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR47 **PROGRAM TITLE: RTE 1331C STORAGE SCOPE DRIVER - DVR47 **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: DRIVER GRAPHIC SCOPE DISPLAY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 55 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS RTE DRIVER ALLOWS POINTS TO BE OUTPUT AND ERASED ON THE HP 1331C STORAGE SCOPE. THE DRIVER DOES NOT WORK UNDER INTERRUPT, THEREFORE, THE NUMBER OF POINTS OUTPUT SHOULD BE KEPT SMALL IN ORDER NOT TO BLOCK HIGHER PRIORITY DEVICES. THE CONTRIBUTED PACKAGE HP 22506 IS A SET OF SUBROUTINES DESIGNED TO WORK WITH THIS DRIVER. THE ONLY EQUIPMENT RE- QUIRED BESIDES THE SCOPE IS THE HP 12555A/B INTERFACE. SEE "RTE HP 1331C STORAGE SCOPE LIBRARY", HP 22506, A CONTRIBUTED SET OF SUBROUTINES WHICH USE THIS DRIVER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE THE DRIVER. 2. GENERATE A RTE SYSTEM, AND LOAD THE DRIVER TOGETHER WITH THE OTHER DRIVERS. 3. THE EQUIPMENT TABLE ENTRY IS: SC,DVR47 WHERE: SC = SELECT CODE OF DUAL D/A INTERFACE. THE DRIVER DOES NOT USE DMA, AND BUFFERING OR TIME-OUT HAS NO SENSE, SINCE IT DOES NOT WORK UNDER INTERRUPT. 4. GIVE THE DESIRED LOGICAL UNIT NUMBER. 5. DO NOT MENTION THE DRIVER IN THE INTERRUPT TABLE (DOES NOT WORK UNDER INTERRUPT). **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. WRITE CALLING SEQUENCE: JSB EXEC DEF *+5 DEF IRC DEF IFUN DEF BUF DEF LEN WHERE: IRC DEC 2 NORMAL WRITE REQUEST IFUN OCT XX LOGICAL UNIT NUMBER BUF BSS N CONTAINS THE POINTS TO OUTPUT: THE Y-COORDINATE IN THE UPPER 8 BITS, THE X-COORDINATE IN THE LOWER 8 BITS. LEN DEC N NUMBER OF POINTS TO OUTPUT (POSITIVE N INDICATES WORDS, NEGATIVE N INDICATES CHARACTERS) THE OUTPUT IS NOT DONE UNDER INTERRUPT. IN ORDER NOT TO TIE-UP THE SYSTEM, KEEP THE NUMBER OF POINTS SMALL. 2. ERASE CALLING SEQUENCE: JSB EXEC DEF *+3 DEF IRC DEF IFUN WHERE: IRC DEC 3 NORMAL CONTROL REQUEST IFUN OCT 20XX WHERE XX IS THE LOGICAL UNIT NUMBER (20 IS THE SUB-FUNCTION) THE DRIVER DOES THE ERASE, AND RETURNS IMMEDIATELY TO THE USER. THE CALLING PROGRAM MUST TAKE CARE NOT TO USE THE DRIVER DURING 1 SECOND. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE DRIVER DOES NOT WORK UNDER INTERRUPT: - KEEP THE BUFFER LENGTH SMALL - THE DRIVER STARTS THE ERASE, AND RETURNS IMMEDIATELY: THE CALLING PROGRAM HAS TO SUSPEND ITSELF DURING 1 SECOND. B01401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE 1331C STORAGE SCOPE LIBRARYRTE 1331C STORAGE SCOPE LIBRARY **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: DISPLAY SCOPE GRAPHIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 759 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE CONSISTS OF FIVE FORTRAN CALLABLE SUBROUTINES DESIGNED TO USE AN HP 1331C STORAGE SCOPE DISPLAY IN AN RTE ENVIROMENT. THE SUBROUTINES PERMIT THE USER TO OUTPUT POINTS, LINES, AND CHARACTERS ON THE DISPLAY, AND ALSO TO DO AN ERASE WITH AUTOMATIC SUSPENSION OF THE PROGRAM. THE PACKAGE REQUIRES THE HP 12555A DUAL D/A INTERFACE AND THE CONTRIBUTED RTE HP 1331C SCOPE DRIVER, HP 22505. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: USUAL ASSEMBLY AND LOAD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE HP 1331C DRIVER DOES NOT WORK UNDER INTERRUPT. IT WILL START AN ERASE AND RETURN IMMEDIATELY; THEREFORE, IT IS NECESSARY FOR THE CALLING PROGRAM TO SUSPEND ITSELF FOR 1 SECOND. B01501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: TEKTRONIX T4002 PLOTTER LIBRARY FOR RTE **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: PLOTTER TEKTRONIX SCOPE GRAPHIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE ALLOWS BASIC PLOT FUNCTIONS TO BE PERFORMED ON THE TEKTRONIX T4002 GRAPHIC COMPUTER TERMINAL IN AN RTE ENVIROMENT. IT IS A MODIFIED AND EXTENDED VERSION OF A PACKAGE DEVELOPED BY TEKTRONIX,INC. FOR THE HP BCS OPERATING SYSTEM. THE FUNCTIONS PROVIDED BY THIS RTE PLOTTER LIBRARY ALLOWS THE USER TO PLOT POINTS, LINES, AND CHARACTERS; OUTPUT IN ITALICS, DOUBLE SIZED, OR DOUBLE INTENSIFIED; AND USE THE GRAPHIC CURSOR. MEMORY REQUIREMENTS FOR THE LIBRARY ARE 334 OCTAL WORDS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: AS A DEFAULT OPTION, THIS PACKAGE AUTOMATICALLY SETS THE LOGICAL UNIT NUMBER FOR THE TEKTRONIX TERMINAL EQUAL TO 16 (DECIMAL). THE USER MAY CHANGE THIS NUMBER BY USING THE TPTLU CALL. COORDINATES OF THE SCREEN: X (HORIZONTAL) 0-1023 INCLUSIVE Y (VERTICLE) 0-760 INCLUSIVE SCREEN SIZE: 8.25 INCH X 6.5 INCH ORIGIN (0,0): LOWER LEFT CORNER CHARACTER SPECIFICATIONS: SIZE: 7 X 9 COORDINATES (NORMAL SIZE) 14 X 18 COORDINATES (DOUBLE SIZE) SPACE: 12 HORIZONTAL COORDINATES LINE FEED: 16 VERTICAL COORDINATES # OF NORMAL SIZE CHARACTERS PER LINE: 85 CURSOR: THE ELECTRONIC BEAM THAT WRITES ON THE SCREEN COMPARABLE TO THE PEN OF A CALCOMP PLOTTER. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: B01601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE CALCOMP/TEKTRONIX PLOT LIBRARY **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: PLOTTER GRAPHIC DISPLAY TEKTRONIX SCOPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS SET OF SUBROUTINES, USED IN AN RTE ENVIROMENT, GENERATES PLOT CODES AND SYMBOLS FOR THE CALCOMP 565 PLOTTER OR THE TEKTRONIX T4002 GRAPHIC COMPUTER TERMINAL. AT PROGRAMMING AND/OR EXECUTION TIME THE USER IS ABLE TO DETERTMINE TO WHICH DEVICE THE GRAPH IS TO BE SENT. THIS MAKES IT POSSIBLE TO REPRODUCE A PLOT, MADE ORIGINALLY ON THE TEKTRONIX SCREEN, ON THE CALCOMP PLOTTER OR VICE VERSA. THIS PACKAGE IS REVISED AND EXTENDED VERSION OF THE STANDARD CALCOMP PLOTTER LIBRARY, HP 20810. ONLY THE SUBROUTINES PLOT AND SYMB HAVE BEEN CHANGED AND ARE INCLUDED IN THE SOURCE TAPES PROVIDED. THE SUBROUTINES SCALE, AXIS, AND LINE HAVE NOT BEEN MODIFIED AND MUST BE OBTAINED FROM THE STANDARD LIBRARY HP- 20810. BESIDES THE PLOTTERS, THE ONLY NECESSARY EQUIPMENT IS A MINIMUM RTE SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: THIS PACKAGE CONSISTS OF 6 UTILITY SUBROUTINES DESCRIBED IN THE ATTACHED PAGES. THE USER MAY CALL ONE OR MORE OF THESE IN HIS MAIN PROGRAM. THE FIRST CALL, HOWEVER, MUST BE A PLTLU CALL TO SET THE LOGICAL UNIT # OF THE DESIRED PLOTTING DEVICE. THERE ARE TWO PLOT MODES: --CALCOMP MODE --TEKTRONIX MODE DURING EXECUTION TIME THIS MODE IS DETERMINED BY THE PLTLU ROUTINE FROM THE EQUIPMENT TABLE NUMBER ASSIGNED TO THE GIVEN LU NUMBER. IN ORDER TO REPRODUCE A PLOT MADE ON THE TEKTRONIX SCREEN ON THE CALCOMP PLOTTER OR VICE VERSA, THE USER NEEDS TO CHANGE THE DEVICE REFERENCE TABLE OF THE RTE USING AN OPERATOR LU REQUEST AND TO RUN THE PROGRAM AGAIN. THE SAME EFFECT MAY BE OBTAINED BY RESETTING THE LOGICAL UNIT # OF THE DESIRED PLOTTING DEVICE WITHIN THE PROGRAM. COORDINATES: CALCOMP MODEL 565 Y: 0 - 11 INCHES X: UNLIMITED TEKTRONIX GCT : ASSUMING SCALING FACTORS = 1 ORIGIN: Y : 0 - 7.60 INCLUSIVE X : 0 - 10.23 INCLUSIVE MAXIMUM ACCURACY : .01 INCH (CALCOMP) OR .01 (TEKTRONIX) ORIGIN: CALCOMP: TO BE SET THE USER. (SEE PLOT CALL) TEKTRONIX - LOWER LEFT CORNER IS (0,0) UNLESS CHANGED BY THE USER CURSOR: THE ELECTRONIC BEAM THAT WRITES INFORMATION ON THE SCREEN OF THE TEKTRONIX TERMINAL, COMPARABLE TO THE PEN OF THE CALCOMP PLOTTER. UNIT: CALCOMP MODE : 1 INCH TEKTRONIX MODE : 1 COORDINATE HOWEVER, IF THE FACT-ROUTINE IS USED TO CHANGE THE SCALING FACTORS, THEN THIS MUST BE TAKEN INTO ACCOUNT. EXAMPLE: 1 "UNIT" AFTER THE CALL CALL FACT (0.5,20) IS: CALCOMP MODE: X-DIRECTION: 0.5 INCH Y-DIRECTION: 2.0 INCH TEKTRONIX MODE: X-DIRECTION: 0.5 COORDINATES Y-DIRECTION: 2.0 COORDINATES **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: B01701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: UPPER/LOWER CASE CHARACTER GENERATOR FOR HP 7210 PLOTTER. **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: PLOTTER CHARACTER TEXT **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M BCS RTE **MEMORY REQUIREMENTS: 1209 WITH EXTERNAL SUBPROGRAMS (304 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE OF ROUTINES PROVIDES THE CAPABILITY TO PLOT CHARACTERS IN UPPER OR LOWER CASE, AND FLOATING POINT NUMBERS IN F FORMAT ON THE HP 7210 PLOTTER. THE ROUTINE ZPLOT GENERATES SINGLE CAPITAL AND SMALL CHARACTERS AND HANDLES THE TRANS- FORMATION OF FLOATING POINT NUMBERS. IT CAN BE USED ALONE OR IN CONJUNCTION WITH THE ROUTINE TPLOT. TPLOT TRANSLATES THE TEXT CONTAINED IN A FORMAT STATEMENT OR IN THE DIMENSION OR COMMON AREA OF A PROGRAM TO A FORM USABLE BY ZPLOT, AND THEN CALLS ZPLOT TO GENERATE THE CHARACTERS. THE TEXT CAN BE IN UPPER OR LOWER CASE WITH LEFT ARROWS AND UP ARROWS SIGNIFYING WHICH CHARACTERS ARE TO BE PLOTTED AS SMALL LETTERS AND CAPITALS RESPECTIVELY. TPLOT WAS WRITTEN TO BYPASS THE FORMATTER AND THEREBY SAVE A LARGE AREA OF CORE. ALSO INCLUDED IN THIS PACKAGE ARE THREE ROUTINES WHICH LINK ZPLOT TO THE CORRESPONDING STANDARD PLOTTER DRIVER OF THE OPERATING SYSTEM BEING USED. THE SYSTEMS ALLOWED ARE BCS,MTS, DOS,DOS-M,RTE, AND RTE-C WITH A MINIMUM OF 4K CORE REQUIRED FOR BCS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: USUAL ASSEMBLY PROCEDURES. LOAD ZPLOT WITH THE APPROPRIATE LINK ROUTINE. BCSPL FOR A BCS OR MTS ENVIROMENT DOSPL FOR A DOS OR DOS-M ENVIROMENT RTEPL FOR AN RTE OR RTE-C ENVIROMENT TPLOT MUST BE LOADED WITH ZPLOT PLUS THE APPROPRIATE LINK ROUTINE. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: B01801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DRAFT **PROGRAM TITLE: CERTIFICATE DRAFTING PROGRAM **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: PLOTTER DISPLAY GRAPHIC **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M DOS-III **MEMORY REQUIREMENTS: COMPILATION - 24K MINIMUN, EXECUTION - 24K MINIMUM **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: OPERATING IN A DOS-M, DOS-III, OR RTE ENVIRONMENT WITH AN HP7210 PLOTTER, THIS PROGRAM ALLOWS THE USER TO DESIGN AND PLOT COURSE GRADUATION CERTIFICATES, SIGNS, POSTERS, AND PROPOSALS. THE PROGRAM IS COMPLETELY OPERATOR ORIENTED, REQUIRING NO PRIOR KNOWLEDGE OF PROGRAM- MING. A TOTAL OF 30 CONVERSATIONAL COMMANDS ARE AVAILABLE. THE PROGRAM CAN BE USED TO DRAW STRAIGHT LINES AS WELL AS TO PRINT CHARAC- TERS AT ANY ANGLE AND OFFSET. OTHER CAPABILITIES INCLUDE: AUTOMATIC HEADER CENTERING; FLOWCHART SYMBOL PLOTTING; VARIABLE CHARACTER HEIGHT; CHARACTER STRING PLOTTING; CHARACTER SHADING, TRACING, ANGLING, AND ROTATING; ALL COORDINATES ARE EXPRESSED IN INCHES OR METRIC UNITS; CONSOLE SESSION ACCOUNT; CMND BATCHING; UNLIMITED DESIGN APPLICATIONS DYNAMIC LOGICAL UNIT ASSIGNMENT; PLOTTER VARIABLE FORMS. ADDITIONAL REQUIRED SOFTWARE IS THE PLOTTER LIBRARY (20810B). THE DOS PLOTTER DRIVE DVR 10 (20581A) OR RTE PLOTTER DRIVER DVR 10 (20581A) OR RTE PLOTTER DRIVER DVR 10 (72009A). FOR COMPILATION AND EXECUTION 24K WORDS ARE REQUIRED. TWO DMA CHANNELS MUST BE AVAILABLE AND THE HP2767 LINE PRINTER IS RECOMMENDED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE PRIMARY FUNCTION OF THIS PROGRAM IS TO PRINT THREE MESSAGES OF ANY SIZE ON A STANDARD HP CERTIFICATE FORM USING THE HP 7210A PLOTTER. THE PROGRAM IS SPECIFICALLY DESIGNED AROUND A 9 X 7 INCH FORM, ALTHOUGH THIS AND OTHER FEATURES CAN BE TEMPORARILY OR PERMANENTLY DYNAMICALLY ALTERED WITH PROGRAM COMMANDS DURING RUN TIME. THERE ARE A TOTAL OF 30 FUNCTIONAL OPERATOR COMMANDS AVAILABLE FOR RIGID AND FLEXIBLE PLOTTING CONTROL. AS EACH COMMAND IS ENTERED, IT AND ASSOCIATED VALUES (IF ANY) ARE PRINTED ON THE LIST OUTPUT DEVICE WHICH CAN ALSO BE CHANGED AT ANY POINT DURING RUN TIME. UNDER NORMAL CIRCUMSTANCES, THE PROGRAM IS COM- PLETELY SELF-CONTAINED WITH LITTLE OR NO SYSTEM RELATED ACTIVITIES. THE ORIGINAL VERSION WAS DESIGNED AND WRITTEN BY LARRY W. SMITH, DATA SYSTEMS, CUPERTINO FOR THE SOLE PURPOSE OF FINDING A FLEXIBLE MEANS TO DESIGN COURSE GRADUATION CERTIFICATES INTERNALLY, THUS ELIMINATING ALL OUTSIDE COSTS. THE PROGRAM IS COMPLETELY OPERATOR ORIENTED, REQUIRING NO PRIOR KNOWLEDGE OF PROGRAMMING OR SYSTEM RELATED ACTIVITIES. WITH THE SIMPLE PROGRAM STRUCTURE, THE USER IS GIVEN AN EASY MEANS OF CON- VERSATIONALLY DESIGNING FORMS WITH THE 7210 PLOTTER. FEATURES: SIMPLE OPERATOR COMMANDS AUTOMATIC HEADER CENTERING FLOWCHART SYMBOL PLOTTING VARIABLE CHARACTER HEIGHT CHARACTER STRING PLOTTING CHARACTER SHADING CHARACTER TRACING CHARACTER ANGLING CHARACTER ROTATING ALL COORDINATES ARE EXPRESSED IN INCHES CONSOLE SESSION ACCOUNTING LIST OUTPUT ACCOUNTING COMMAND BATCHING UNLIMITED DESIGN APPLICATIONS DYNAMIC LOGICAL UNIT ASSIGNMENT PLOTTER VARIABLE FORMS DUE TO THE LOGICAL AND SIMPLISTIC STRUCTURE OF THE PROG, THE USER CAN SIT AT A CONSOLE AND CONVERSATIONALLY DESIGN WHAT HE/SHE WISHES ON THE PLOTTER. SINCE ALL CMNDS THAT EITHER INSTRUCT THE PLOTTER TO PERFORM AN ACTION OR SIMPLY DETERMINE THE STATUS OF SOMETHING ARE ALL 2 LETTER, THE USER IS NOT BURDENED WITH LEARNING THE O.S. (DOS OR RTE) UNDER WHICH IT RUNS, NOT A COMPLICATED INSTRUCTION SET. FURTHERMORE, ONCE THE USER IS UNDER CONTROL OF THE PROGRAM, THE FORMAT AND USE OF ALL COMMANDS ARE LOGICAL AND STRAIGHTFORWARD AS TO THEIR INDIVIDUAL FUNCTION AND RELATIONSHIP FOR OTHER COMMANDS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: OPERATING ENVIRONMENT LANGUAGE: FORTRAN IV OPERATING SYSTEM: DOS-M, DOS-III, OR RTE LOGICAL UNIT ASSIGNMENTS: COMPLETELY PROGRAM INDEPENDENT ADDITIONAL SOFTWARE: PLOTTER LIBRARY (20810B), DOS PLOTTER DRIVER DVR10 (20581A) OR RTE PLOTTER DRIVER DVR10 (72009A). NOTE:THE AUTHOR HAS MODIFIED THE PLOTTER LIB. (20810B) TO INCREASE PLOT SPEED. IT IS RECOMMENDED THAT THE MODIFIED VERSION BE USED FOR PLOTTING CLARITY. HARDWARE REQUIREMENTS CPU: 2100 OR 2116 PERIPHERAL DEVICES: REQUIRED RECOMMENDED 1. 7210A PLOTTER 1. LINE PRINTER (2767) 2. 2600A CRT OR 2. MOVING HEAD - 7900A 2752 TTY 3. DISC (FIXED 3. 2600A CRT HEAD OR MH) DMA: 2 CHANNELS MEMORY: COMPILATION - 24K MINIMUM EXECUTION - 24K MINIMUM FLOATING POINT HARDWARE IS RECOMMENDED TO INCREASE PLOT SPEED. PROGRAM OPERATING INSTRUCTIONS THE DRAFTING PROG MUST BE COMPILED UNDER FORTRAN IV AND STORED ON A DISC FILE CALLED "DRAFT" IN ABSOLUTE FORM READY FOR EXECUTION. THIS WAY, THE USER CAN INSERT HIS/HER DISC PACK CONTAINING THE PROG AND RETRIEVE IT EASILY UNDER THE APPROPRIATE OPERATING SYSTEM. B01901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: JGL **PROGRAM TITLE: JIM'S GRAPHICS LIBRARY **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: GRAPHIC LIBRARY INTERFACE TERMINAL **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: JGL IS A LIBRARY OF FORTRAN ROUTINES WHICH PROVIDE A SIMPLE INTERFACE TO THE GRAPHICS CAPABILITIES OF THE 2648 TERMINAL. THE USER MUST HAVE A 2648 HP GRAPHICS TERMINAL TO USE JGL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: SUBMITT FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: PLEASE SEE EXAMPLE SOURCE PROGRAM FILE &JGL2. **INPUT/OUTPUT EXAMPLES: SEE EXAMPLE PROGRAM &JGL3. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: USER MUST HAVE A 2648 HP GRAPHICS TERMINAL TO USE JGL PACKAGE. B02001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PENNY **PROGRAM TITLE: COMPUTER AIDED SCHEMATIC DRAWING PROGRAM WITH DATA BASE. **REVISION? NO **PACKAGE: 2 **CATEGORY: 2 **KEYWORDS: GRAPHIC DISPLAY DATA BASE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: E-SERIES **OPERATING SYSTEMS: RTE-IVB **MEMORY REQUIREMENTS: 101 PAGE MOTHER PARTITION **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PENNY IS A COMPUTER AIDED SCHEMATIC DRAWING PROGRAM THAT CAN INCREASE THE PRODUCTIVITY OF ENGINEERING OR DESIGN PERSONNEL. PENNY CAPABILITIES ALLOW USERS TO INTERACTIVELY CREATE DRAWINGS. A POWERFUL HIERARCHICAL DATA BASE STRUCTURE ALLOWS THE DESIGNER TO USE PREDEFINED STANDARDIZED FIGURES; ELIMINATING DRAFTING AND DESIGN ERRORS. WITH SUITABLE PLOTTERS, THE HARDCOPY OUTPUT IS OF GOOD DRAFTING QUALITY ELIMINATING THE NEED TO RE-DRAFT DESIGNER SKETCHES. THE PENNY PROGRAM WAS ORIGINALLY WRITTEN TO HELP WITH DIGITAL SCHEMATIC DESIGN. HOWEVER, IT IS BASICALLY A LINE DRAWING PROGRAM AND THUS HAS BEEN USED FOR OTHER APPLICATIONS, SUCH AS FLOOR LAYOUTS, PIPING DIAGRAMS AND OTHERS. PENNY USES IMAGE/1000,PROD#92069A,REV.1912; GRAPHICS/1000,PROD# 92840A, REV.1901; AND OPERATES UNDER RTE-IVB. IT REQUIRES A GRAPHICS TERMINAL, EITHER A 2647A OR 2648A. PENNY CAN OUTPUT HARD COPY TO THE 7221A OR 9872A FOUR COLOR PLOTTERS BUT,THEY ARE NOT NECESSARY FOR THE OPERATION OF PENNY. HIGH SPEED MEMORY AND A 7905/6/20 DISK ARE RECOM- MENDED TO GET GOOD REAL TIME RESPONSE. A 101 PAGE MOTHER PARTITION IS ALSO REQUIRED TO OPERATE PENNY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: LOAD - PENNY LOAD TRANSFER FILE:TR,LOAD,LISTLU# FILE# 3: DLOD - LOADR COMMAND FILE FILE# 4: CREATE - DATA BASE CREATE TRANSFER FILE FILE# 5: SAVEIT - TRANSFER FILE TO "SP" PENNY AND SEGMENTS FILE# 6: OFPEN - TRANSFER FILE TO OF,PENNY AND SEGMENTS FILE# 7: PURGIT - TRANSFER FILE TO PURGE PENNY AND SEGMENTS FILE# 8: &PMAIN - PENNY MAIN PROGRAM SOURCE FILE# 9: &PENY0 - PENNY SEGMENT 0 SOURCE FILE# 10: &PENY1 - PENNY SEGMENT 1 SOURCE FILE# 11: &PENY2 - PENNY SEGMENT 2 SOURCE FILE# 12: &PENY3 - PENNY SEGMENT 3 SOURCE FILE# 13: &PENY4 - PENNY SEGMENT 4 SOURCE FILE# 14: &PENY5 - PENNY SEGMENT 5 SOURCE FILE# 15: &PSUBS - PENNY SUBROUTINES SOURCE FILE# 16: &DELAY - PENNY SUBROUTINE ASMB SOURCE FILE# 17: &DLTBL - GRAPHICS DEVICE LINK TABLE ASMB SOURCE FILE# 18: &PENPL - IMAGE DATA BASE SCHEMA SOURCE FILE# 19: !REPOR - QUERY REPORT FILE FOR DETAIL RECORDS FILE# 20: !LINES - QUERY REPORT FILE FOR DETAIL RECORDS FILE# 21: !DRWGS - QUERY REPORT FILE FOR MASTER RECORDS FILE# 22: MANUAL - PENNY PROGRAMMING AND REFERENCE MANUAL FILE# 23: %PMAIN - PENNY MAIN PROGRAM BIN RELOC FILE# 24: %PENY1 - PENNY SEGMENT 1 BIN RELOC FILE# 25: %PENY2 - PENNY SEGMENT 2 BIN RELOC FILE# 26: %PENY3 - PENNY SEGMENT 3 BIN RELOC FILE# 27: %PENY4 - PENNY SEGMENT 4 BIN RELOC FILE# 28: %PENY5 - PENNY SEGMENT 5 BIN RELOC FILE# 29: %PSUBS - PENNY SUBROUTINES BIN RELOC FILE# 30: %DELAY - PENNY SUBROUTINE BIN RELOC FILE# 31: %ZAP - PENNY SUBROUTINE BIN RELOC FILE# 32: %DLTBL - GRAPHICS DEVICE LINK TABLE BIN RELOC FILE# 33: %LDSEG - PENNY SUBROUTINE BIN RELOC FILE# 34: %OLY.E - PENNY SUBROUTINE BIN RELOC FILE# 35: %PADCR - DRAWING TABLET DRIVER FOR 2648A FILE# 36: CPENNY - TRANSFER FILE TO COMPILE PENNY ROUTINES FILE# 37: DTBASE - PRE-PREPARED DATA BASE: PENNY"AN"FORMAT FILE# 38: %PENY0 - PENY SEGMENT **LOAD INSTRUCTIONS: TR,LOAD,P1 P1 = LIST LU# **RUN INSTRUCTIONS: RU,PENNY,P1,P2 P1 = INTERACTIVE INPUT LU#, DEFAULT = SCHEDULING TERMINAL P2 = HARD COPY PLOTTER LU#, DEFAULT = NO HARD COPY ALLOWED **INPUT/OUTPUT EXAMPLES: SEE MANUAL **PROGRAM DESCRIPTION: SEE MANUAL **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE MANUAL **MISCELLANEOUS: TO CREATE PENNY DATA BASE: TR,CREATE,P1 P1 = LIST LU# [CREATES DATA BASE WITH NAME: PENJM:7500:PW] COMPILE ALL PENNY SOURCES: TR,CPENNY,P1 P1 = LIST LU# PRINT THE PENNY MANUAL: DU,MANUAL,P1 P1 = LINE PRINTER LU# PRINT THE PENNY MANUAL WITH THE SPOOL SYSTEM: SL,P1,MANUAL,,P1 CS,P1 P1 = LINE PRINTER LU# B02101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: HP45 **PROGRAM TITLE: HP CALCULATOR SIMULATOR W/ OCTAL FUNCTIONS FOR 2645+ TERMINAL **REVISION? NO **PACKAGE: 2 **CATEGORY: 1 **KEYWORDS: CALCULATOR FLOATING POINT TERMINAL DISPLAY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IVB **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: HP45 SETS UP A 2645 (OR GREATER) TERMINAL TO SIMULATE AN HP POCKET CAL- CULATOR WITH RPN LOGIC. THE CALCULATOR HAS A 4 LEVEL STACK AND 10 ADDRESSABLE MEMORIES. IT HAS ABOUT 20 SCIENTIFIC FUNCTIONS INCLUDING THE STANDARD STACK AND MEMORY FUNCTIONS. THE PROGRAM ALSO INCLUDES A 'BINARY CALCULATOR' MODE WHICH PERFORMS OPERATIONS ON OCTAL NUMBERS. NUMBERS READ IN IN THIS MODE ARE INTERPRETED AS OCTAL WITHOUT THE USUAL '@' CHARACTER PRECEEDING THE NUMBER. ONE FUNCTION IN THIS MODE IS TO DISPLAY THE INTEGER, OCTAL, & ASCII EQUIVALENTS OF THE NUMBER INPUT. THE PROGRAM TURNS ON & OFF 'DISPLAY FUNCTIONS' AROUND THE ASCII EQUI- VALENT TO ALLOW OUTPUTTING OF SPECIAL CHARACTERS. THE PROGRAM SETS UP THE TERMINAL IN FORMAT MODE AND PERFORMS BLOCK READS. THIS MEANS THAT THE 'ENTER' BUTTON ON THE TERMINAL MUST BE USED INSTEAD OF THE CARRIAGE RETURN TO INPUT TO THE COMPUTER. HP45 USES EXEC AND REIO CALLS TO THE SYSTEM, AND REQUIRES AT LEAST AN HP 2645 TERMINAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &HP45 - MAIN SOURCE W/ BINC & DISP SUBROUTINES FILE# 3: &SET FILE# 4: &BLKRD FILE# 5: &RESET FILE# 6: *HP45 - LOADR COMMAND FILE **LOAD INSTRUCTIONS: NOTHING UNUSUAL. COMPILE &HP45 & THE 3 TERMINAL ROUTINES (&SET, &BLKRD, &RESET) AND RUN THE LOADER USING *HP45. **RUN INSTRUCTIONS: THE PROGRAM IS COMPLETELY INTERACTIVE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: NUMBERS ARE PASSED BACK AND FORTH BETWEEN THE REGULAR CALCULATOR AND THE BINARY CALCULATOR VIA MEMORY NUMBER ZERO. THE CALCULATOR RUNS VERY MUCH LIKE A TYPICAL HP CALCULATOR. INPUTTING A NUMBER CAUSES IT TO BE PUSHED UP INTO THE STACK, OPERATIONS ARE PER- FORMED ON THE X & Y REGISTERS IN THE STACK, THE TOP OF THE STACK DUPLI- CATES AS IT DROPS DOWN, ETC. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: C00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CONVC **PROGRAM TITLE: 4221 BCD TO FLOATING POINT CONVERSION ROUTINE **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: CONVERSION BCD FLOATING POINT **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 534 WITH EXTERNAL SUBPROGRAMS (84 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THESE TWO ROUTINES CONVERT 4-2-2-1 BCD DATA TO BINARY. THE DATA IS READ BY THE SUPPORTED DRIVER, DVR40 FROM A DSI CARD CONNECTED TO A FIVE-DIGIT COUNTER. INPUT IS FIVE DIGITS, TWENTY BITS, STORED IN TWO WORDS; OUTPUT IS A TWO-WORD FLOATING POINT NUMBER. THE RANGE AND FUNCTION RETURNED BY SOME INSTRUMENTS ARE IGNORED. IT CAN BE EASILY MODIFIED TO CONVERT DATA FROM AN EIGHT-DIGIT COUNTER. THESE ROUTINES ARE FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: FOLLOW THE STANDARD RTE PROCEDURE TO ASSEMBLE THESE SUBROUTINES. THE SUBROUTINES ARE CONFIGURED INTO THE LIBRARY AT SYSTEM GENERATION TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALLING SEQUENCE: FORTRAN: ASSEMBLY LANGUAGE: CALL CONVC(DATA) JSB CONVC DEF *+2 DEF DATA WHERE: DATA IS A TWO WORD COUNTER READING ON ENTRY AND A FLOATING POINT NUMBER ON EXIT WITH NO DIGITS TO THE RIGHT OF THE DECIMAL POINT. TO CHANGE THIS ROUTINE TO BE USED WITH AN 8 DIGIT COUNTER, OMIT LINE NR. 44 "AND =B17". THIS WILL ALLOW CONVERSION ON THE UPPER THREE SIGNIFICANT DIGITS. INCLUDED ALSO WITH THIS PACKAGE IS A ROUTINE TO CONVERT A 4221 CODED NUMBER TO A BINARY NUMBER. CALLING SEQUENCE: FORTRAN: ASSEMBLY LANGUAGE: CALL F4221(DATA) JSB F4221 DEF *+2 DEF IDATA IDATA=4221 NUMBER ON ENTRY TO THE ROUTINE AND BINARY ON EXIT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: C00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR42 **PROGRAM TITLE: DVR42 RTE CROSSBAR SCANNER DVR & CHANNEL CODE CONVERSION ROUTINES **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: DRIVER SCANNER CONVERSION CODE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 197 WITH EXTERNAL SUBPROGRAMS (145 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DVR42 OPERATES UNDER THE I/O CONTROL MODULE OF RTE TO CONTROL THE HP2911 CROSSBAR SCANNER. THIS DRIVER IS RESPONSIBLE FOR CONTROLLING OUTPUT TO ANY NUMBER OF SCANNER CARDS SIMULTANEOUSLY. IT ACCEPTS BINARY WRITE AND CLEAR REQUESTS. IT IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: FOLLOW STANDARD TECHNIQUES TO ASSEMBLE THESE PROGRAMS. THIS DRIVER MUST BE CONFIGURED INTO THE SYSTEM AT RTE SYSTEM GENERATION TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: A SIMPLE FORTRAN PROGRAM TO TEST THIS DRIVER FOLLOWS: FTN PROGRAM TEST(3,60) 5 WRITE(1,10) 10 FORMAT(//"ENTER CHANNEL NUMBER & PROGRAM CODE"//) READ(1,*)ICHAN,IPROG C (NOTE: FOR A 4221 SCANNER USE THIS LINE OF CODING): CALL T4221(ICHAN) C (NOTE: FOR A 8421 SCANNER USE THIS LINE OF CODING): CALL BTBCD(ICHAN) WRITE(13)ICHAN,IPROG WRITE(1,20) 20 FORMAT(//"CHECK TO SEE THAT SCANNER IS"/" ON RIGHT CHANNEL"//) GO TO 5 END END$ **PROGRAM DESCRIPTION: TWO WORDS OF DATA ARE REQUIRED TO OPERATE THE SCANNER. 1. CHANNEL NUMBER - - (0-999) 8421 OR 4221 CODE, DEPENDING ON THE SCANNER USED. 2. SCANNER PROGRAM BITS 15...0 FUNCTIONS: OHM/FREQ. OR DELAY WHERE: BITS. 5- - - - - - - - - - 3 2- - - - - - - - - - - - 0 0 = AC/DC VOLTS 0 = 15.0 MSEC 1 = FREQUENCY 1 = 17.5 MSEC 2 = RESISTANCE 2 = 22.0 MSEC 3 = 27.0 MSEC 4 = 42.0 MSEC 5 = 62.0 MSEC 6 = 145.0 MSEC 7 = 500.0 MSEC THERE IS NO CONTINUATOR SECTION FOR THE DRIVER AND THE CONTENTS OF THE INTERRUPT CELL SHOULD BE OCTAL 1067SC--WHERE SC = SELECT CODE OF THE SCANNER. ENTRY POINT(S) FORTRAN USE INFORMATION: FOR A 4221 CONTROLLED SCANNER: CALL T4221(ICHAN) (ICHAN IS BINARY IN ENTRY AND 4221 CODE ON EXIT) WRITE(IEQT) ICHAN,IPROG (IPROG IS THE PROGRAM CONTROL WORD DESCRIBED IN SECTION 4.0) FOR A 8421 CONTROLLED SCANNER: CALL BTBCD(ICHAN) (ICHAN IS BINARY IN ENTRY AND 8421 CODE ON EXIT) WRITE (IEQT) ICHAN,IPROG (IEQT IN BOTH THE ABOVE IS THE DEVICE REFERENCE NUMBER ASSIGNED TO THE SCANNER AT SYSTEM GENERATION TIME) THE SCANNER IS THEN SET TO THE INDICATED CHANNEL. BTBCD (BINARY TO BCD (8421) CONVERSION ROUTINE) FORTRAN CALLING SEQUENCE: ASSEMBLY LANGUAGE CALLING SEQUENCE: CALL BTBCD(INUMB) JSB BTBCD (JUMP TO ROUTINE) DEF *+2 (DEFINES RETURN PT) DEF INUMB (DEFINES NUMBER TO CONVERT) INUMB IS BINARY AND BCD (8421) ON EXIT. T4221 (BINARY TO 4221 CONVERSION ROUTINE) FORTRAN CALLING SEQUENCE: ASSEMBLY LANGUAGE CALLING SEQUENCE: CALL T4221(INUMB) JSB T4221 (JUMP TO ROUTINE) DEF *+2 (DEFINES RETURN PT) DEF INUMB (DEFINES NUMBER TO CONVERT) INUMB IS BINARY ON ENTRY AND 4221 CODE ON EXIST. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: C00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS/DOS-M/RTE 3480 DVM DVR AND BCD CONVERSION **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: DRIVER BCD CONVERSION **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M RTE **MEMORY REQUIREMENTS: 138 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: 1. THIS DRIVER INPUTS BCD DATA FROM THE HP3480 DVM, AND (BCD) CONVERTS IT TO FLOATING POINT. THE INITIATOR WILL TEST FOR THE CORRECT CALL- ING SEQUENCE AND THEN START THE MEASUREMENT. THE CONTINUATOR RETURNS THE RAW DATA INTO A TWO-WORD ARRAY WHERE THE CONVERSION ROUTINE CON- VERTS IT TO FLOATING POINT FORMAT. THE DRIVER IS FORTRAN CALLABLE. 2. HARDWARE REQUIREMENTS 3480 DVM 11146A INTERFACE MINIMUM RTE, DOS OR DOS-M CONFIGURATION **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. SELECT PROPER CONTROL STATEMENT 'N' = RTE 'Z' = DOS, DOS-M 2. COMPILE/ASSEMBLE THE TEST DRIVER AND SUBROUTINE BCD 3. INCORPORATE DRIVER INTO SYSTEM AT SYSTEM CONFIGURATION TIME. USE STANDARD LOADING PROCEDURE OF YOUR SYSTEM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS DRIVER ALLOWS DOS, DOS-M AND RTE USERS TO INPUT BCD DATA FROM THE 3480 DVM AND CONVERT IT TO FLOATING POINT. WHEN THE DRIVER IS CALLED, THE INITIATOR WILL TEST FOR THE CORRECT CALLING-SEQUENCE AND THEN START THE MEASUREMENT. THE CONTINUATOR RETURNS THE RAW DATA INTO A FLOATING POINT ARRAY. FROM THERE THE USER CAN CONVERT THE DATA TO FLOATING POINT FORMAT USING THE ROUTINE "BCD". FORTRAN-CALLABLE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: WHEN USING EXEC-CALLS: CALL EXEC (1,LU,ARRAY,LEN) 'LEN' MUST BE # OF WORDS IN THE FLOATING POINT ARRAY *2. FOR EXAMPLE: DIMENSION A(100) . . . CALL EXEC (1,LU,A,200) NOTE: THE DRIVER WILL ONLY RETURN RAW DATA INTO THE ARRAY! THIS DRIVER DOES NOT USE DMA. C00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ADCIN **PROGRAM TITLE: RTE HP 2310 ANALOG TO DIGITAL CONVERTER DISC STORAGE ROUTINE. **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: DISC STORAGE ANALOG/DIGITAL **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 2939 WITH EXTERNAL SUBPROGRAMS, (327 WITHOUT). **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS FORTRAN CALLABLE SUBROUTINE ALLOWS RTE TO USE MOST OF MEMORY AS A BUFFER TO INPUT DATA FROM THE HP2310 ANALOG-TO- DIGITAL CONVERTER AND OUTPUT IT TO THE DISC AT THE FULL SPEED OF THE MULTIVERTER WITH NO BREAK IN DATA. ALL SAMPLES ARE EVENLY SPACED AND THE NUMBER OF DATA POINTS TAKEN IS LIMITED ONLY BY THE SIZE OF THE DISC. THE MAXIMUM POSSIBLE THROUGHPUT RATE IS 80 KHZ. EQUIPMENT REQUIRED IS A MINIMUM RTE SYSTEM, AN HP2310 ANALOG- TO-DIGITAL CONVERTER, AND AN HP2770 60 HZ OR 50 HZ DISC. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: TERMINAL READY **INPUT/OUTPUT EXAMPLES: LOAD PROGRAM "TESTA", FOLLOWED BY SUBROUTINE "DREAD" THEN DO A LIBRARY LOAD AND WHEN THE LOADER ASKS FOR "ADCIN" LOAD IT. BE SURE "ADCIN" RESIDES ABOVE 30401B. IF NOT, ADD A LARGER DUMMY BUFFER IN LINE 3 OF "TESTA". PROGRAM "TESTA" PLOTS THE DATA ON A CALCOMP MODEL 565 PLOTTER. IF THIS PLOTTER IS NOT AVAILABLE, THEN THE FOLLOWING EDIT FILE MUST BE APPLIED TO "TESTA" TO PRINT THE DATA ON THE TTY. /R,62,72 190 NTRAK=NTRAK-3 /R,74 INDAT=1 /R,81,83 IC=II-1 Y=FLOAT(-IDATA)/3276.8 WRITE(1,500)INDAT,Y,IC 500 FORMAT("POINT #"15"="E12.5" VOLTS ON CHAN #"15) INDAT=INDAT+1 /D,95,98 /E A PLOT OF THE DATA IS MORE USEFUL AS IT ALLOWS THE USER TO SPOT DATA BREAKS ON THE PLOT. THESE BREAKS MAY OCCUR WHEN THE MAXIMUM SPEED OF THE ROUTINE OF 80K IS EXCEEDED. THE MAIN PURPOSE OF "TESTA" IS TO SHOW THE USER HOW TO EXTRACT THE DATA FROM THE DISC IN A FASHION EASY TO ANALYZE. THE DISC CHANNELS USED ARE 12 & 13B. IF THE USER OF THIS ROUTINE WISHES TO CHANGE THIS ASSIGNMENT TO SOMETHING ELSE, HE MUST CHANGE LINES 413,435 & 436 IN "ADCIN" TO THE APPROPRIATE SETTING. # OF DATA TRACKS? 3 CHAN & MODE (6,7)#? 0,7 ADC SC(@)? @16 (RTE IS SWAPPED TO DISC, 3 TRACKS OF DATA ARE TAKEN AND RTE IS SWAPPED BACK) # OF SEQUENTIAL CHANNELS? 16 (CALCOMP MODEL 565 PLOTTER BEGINS PLOTTING HERE AND USER JUST EXAMINE THE DATA FOR CORRECTNESS. IT IS RECOMMENDED THE USER PUT A SINE WAVE INTO CHANNELS 0,2,4,6,8,10,12,14,16, AND A SHORT INTO CHANNELS 1,3,5,7,9,11,13,15). THIS MAKES DATA RETRIEVAL PROBLEMS MORE OBVIOUS. **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: BE SURE THIS SUBROUTINE RESIDES ABOVE LOCATION 30401(OCTAL) IN MEMORY AS DESCRIBED IN SECTIONS 2.0,4.0, & 4.2.1. C00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR75 **PROGRAM TITLE: PRIVILEGED RTE DRIVER FOR HP8054 AUDIO ANALYZER. **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: DRIVER PRIVILEGED AUDIO ANALYZER ANALYZER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 204 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PRIVILEGED RTE DRIVER, DVR75, CONTROLS THE HP8054A AUDIO ANALYZER ON READ/WRITE REQUESTS. IT REQUIRES THE HP15163A DATA SOURCE INTERFACE CARD WITH CABLE AND THE HP12620A BREADBOARD INTERFACE CARD. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DVR75 SOURCE **LOAD INSTRUCTIONS: USUAL ASSEMBLY PROCEDURES. DRIVER MUST BE CONFIGURED AT SYSTEM GENERATION TIME. IT IS TO BE LOADED WITH THE FOLLOWING SUBROUTINE. ASMB,R,B,L NAM $JP75 ENT $JP75, $JT75 $JB75 JSB P.55 $JT75 JSB T.55 END **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE DRIVER IS SENT A CONTROL WORD BY MEANS OF A WRITE REQUEST. THE DRIVER SENDS THE CONTROL WORD TO THE 3RD OCTAVE ANALYZER AND RETURNS WITH AN IMMEDIATE COMPLETION. AT THIS POINT, THE CALLING PROGRAM MUST SUSPEND ITSELF OR WAIT FOR TIME INDICATED BY THE DELAY CONTROL PART OF THE CONTROL WORD. THE DRIVER IS THEN SENT A READ REQUEST AND AN INPUT BUFFER OF EVEN LENGTH AND AT LEAST 48 WORDS LONG. UNDER INTERRUPT THE THE DATA IS TAKEN AND RETURNED TO THE INPUT BUFFER INTERFACED WITH THE CHANNEL NUMBERS UPON WHICH THE DATA WAS TAKEN. WHEN ALL 24 CHANNELS ARE READ, THE TBG IS FOOLED INTO COMPLETING THE DRIVER AS IN ALL PRIVILEGED DRIVERS USING ONE DUMMY CARD. ENTRY POINT(S) I.75, P.75, T.75, C.75 I.75 ENTRY/EXIT FOR INITIATOR P.75 ENTRY/EXIT FOR PRIVILEGED SECTION T.75 ENTRY/EXIT FOR TIMER INTERRUPT C.75 ENTRY/EXIT OF COMPLETION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: C00601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: R3485 **PROGRAM TITLE: CONVERSION ROUTINE FOR HP 2058E SUBSYSTEM RTE DRIVER **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: CONVERSION FLOATING POINT DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 97 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS SUBROUTINE DOES A SERIES OF MEASUREMENTS ON AN HP 2058E OPTION 167 SUBSYSTEM (HP 3480A VOLTMETER/3485A SCANNER), AND THEN DOES THE CON- VERSION OF THE DATA TO FLOATING POINT. THE SUBROUTINE USES THE HP 2058E SCANNER SUBSYSTEM RTE DRIVER (DVR57), CONTRIBUTED PROGRAM HP 22508. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALLING SEQUENCE: - ASSEMBLER: EXT R3485 JSB R3485 DEF *+5 DEF IFUN DEF DATA DEF INUM DEF IPW FORTRAN: CALL R3485 (IFUN, DATA, INUM, IPW) WHERE: IFUN = FUNCTION BITS 0-5: LOGICAL UNIT NUMBER BITS 6: = 0 = SEQUENTIAL = 1 = DIGITISE DATA = BUFFER WHERE DATA IS TO BE STORED INUM = NUMBER OF MEASUREMENTS IPW = PROGRAM WORD BITS 0-5: CHANNEL NUMBER BITS 6-7: RANGE = 0 = 100MV = 1 = 1 VOLT = 2 = 10 VOLTS BIT 9: FILTER= 0 = OUT = 1 = IN WHEN RETURNING FROM THE ROUTINE, THE FLOATING POINT DATA WILL BE STORED IN DATA. IF THERE WAS AN OVERLOAD, THE NUMBER 1E+30 WILL BE STORED. **INPUT/OUTPUT EXAMPLES: FTN,L PROGRAM TRY2 DIMENSION X(10) C C C THIS SAMPLE PROGRAM WILL DO 10 MEASUREMENTS ON CHANNEL 3 C OF A 3480A-3485A SUBSYSTEM (DIGITISE). THE RANGE IS C 10 VOLT, AND THE FILTER IS OUT. C THE LOGICAL UNIT NUMBER OF THE SUBSYSTEM IS 8. C C CALL R3485(110B,X,10,203B) WRITE(6,100)X 100 FORMAT(X,"THE DATA IS:",/,5F12.3) END RESULTS THE DATA IS: -7.380 4.000 5.799 6.000 -1.999 THE DATA IS: -7.200 2.009 5.999 5.000 -3.799 **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IN CASE OF OVERLOAD, THE NUMBER 1E+30 IS RETURNED. SEE ALSO THE SPECIAL CONSIDERATIONS FOR THE DRIVER DVR57 (HP22508). **MISCELLANEOUS: C00701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: 7 **PROGRAM TITLE: HP 2058E SCANNER SUBSYSTEM RTE DRIVER **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: DRIVER SCANNER METER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 238 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS IS AN RTE DRIVER FOR THE HP2058E OPTION 167 SCANNER SUBSYSTEM (HP3480A VOLTMETER WITH HP3485A SCANNER). THE DRIVER PERMITS YOU TO DO A SERIES OF MEASUREMENTS ON THE SAME (DIGITISE) OR DIFFERENT (SEQUENTIAL) CHANNELS. THE DRIVER WORKS UNDER DMA TO OBTAIN THE MAXIMUM SPEED OF THE SUBSYSTEM (1000 MEASUREMENTS/SEC.). THIS PROGRAM REQUIRES A MINIMUM RTE SYSTEM (16K, DMA, EAU) AND 2058E OPT. 167 SUBSYSTEM (3480A VM - 3485A SCANNER) LITERATURE REFERENCE RTE MANUAL, HP2058E SCANNER SUBSYSTEM OPTION 167 MANUAL **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE THE DRIVER WITH A DOS OR RTE SYSTEM. 2. GENERATE A RTE SYSTEM, AND INCLUDE THE DRIVER WITH THE OTHER DRIVERS. 3. WHEN THE GENERATOR ASKS: *EQUIPMENT TABLE ENTRY TYPE AT THE APPROPRIATE PLACE: SC, DVR57, D, (T) WHERE: SC = SELECT CODE OF DSI OF SUBSYSTEM (HIGHEST PRIORITY INTERFACE) 4. GIVE THE DESIRED LOGICAL UNIT NUMBER 5. WHEN THE GENERATOR ASKS: *INTERRUPT TABLE TYPE: S1, EQU, N S2, EQT, N WHERE: S1 = SELECT CODE OF DSI S2 = SELECT CODE OF PROGRAM CARD (MUST BE S1 + 1) 6. DO REST OF GENERATION AS USUAL. **RUN INSTRUCTIONS: CALLING PROCEDURE: 1. ASSEMBLER: EXT EXEC JSB EXEC DEF *+6 DEF IRC DEF IFUN DEF BUF DEF INUM DEF IPW 2. FORTRAN: CALL EXEC (IRC, IFUN, BUF, INUM, IPW) WHERE: IRC = REQUEST CODE FOR RTE: MUST BE 1 (READ) IFUN = FUNCTION: BITS 0-5: LOGICAL UNIT NUMBER OF SUBSYSTEM BIT 6 : = 0: SEQUENTIAL (DIFFERENT CHANNELS) = 1: DIGITISE (SAME CHANNEL) BUF - BUFFER WHICH HAS TO CONTAIN THE MEASUREMENTS (LENGTH MUST BE AT LEAST INUM*2) INUM = NUMBER OF MEASUREMENTS IPW = PROGRAM WORD: BITS 0-5: CHANNEL NUMBER (STARTING CHANNEL FOR SEQUENTIAL) BITS 6-7: RANGE = 0 = 100 MV = 1 = 1 VOLT = 2 = 10 VOLT BIT 9: FILTER = 0 = FILTER OUT = 1 = FILTER IN STATUS INFO: STATUS BIT 0 IN EQT CONTAINS FILTER INFORMATION: IF = 0: FILTER WAS OUT IF = 1: FILTER WAS IN **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. THE DRIVER CAN BE USED FOR SEVERAL SUBSYSTEMS. 2. IN THE CASE OF SEQUENTIAL, IF STARTING FROM A CHANNEL OTHER THAN 1, AND IN THE CASE OF DIGITISE, THE DRIVER DOES ONE DUMMY MEASUREMENT TO INITIATE THE CHANNEL NUMBER. 3. IF THE FILTER IS PROGRAMMED "OUT" AND IT WAS PREVIOUSLY PROGRAMMED "IN", THEN THE DRIVER DOES 2 DUMMY MEASUREMENTS TO GIVE THE 2 MS DELAY (SEE 2058 OPT. 167 MANUAL). 4. ALL REAL MEASUREMENTS ARE DONE AT MAXIMUM SPEED (THE TIME BETWEEN TWO MEASUREMENTS IS ALWAYS THE SAME!) 5. TO MEASURE RANDOMLY, DO THE CALL FOR 1 MEASUREMENT. 6. THE RETURNED DATA IS THE ORIGINAL HP 3480 DATA WITHOUT ANY CON- VERSION. THE CONTRIBUTED PROGRAM HP 22507, CONVERSION ROUTINE FOR HP 2058E SUBSYSTEM RTE DRIVER, WILL DO THE CONVERSION OF THE DATA TO FLOATING POINT. C00801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR62 **PROGRAM TITLE: RTE 4271A 1 MHZ DIGITAL LCR METER DRIVER **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: DRIVER METER **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: RTE DRIVER 62 (DVR62) OPERATES THE 4271A 1MHZ DIGITAL LCR METER CON- FIGURED WITH OPTIONS 1 AND 5. THE DRIVER OPERATES UNDER CONTROL OF THE I/O MODULE OF THE REAL TIME EXECUTIVE (RTE). DVR62 IS LINKED TO BY MEANS OF THE FORTRAN CALLS SETLC AND MEALC, WHICH CONTROL THE 4271A. THESE CALLS PERFORM AUTOMATIC PROGRAMMING OF THE RANGE, FUNCTION, AND BIAS VOLTAGE AND AUTOMATIC MEASURING OF THE CAPACITANCE-INDUCTANCE AND CONDUCTANCE-RESISTANCE-DISSIPATION FACTOR VALUES. THIS DRIVER HAS BEEN USED IN CONJUNCTION WITH TEST PROGRAMS TO CONTROL I/C PROCESSING BY DETERMINATION OF THE DOPING PROFILE DENSITIES IN SEMICONDUCTOR DEVICES. THE 12566B MICROCIRCUIT INTERFACE KIT WITH NO OPTIONS IS REQUIRED TO INTERFACE THE 4271A TO THE HP 2100. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: RTE SYSTEM GENERATION (RTGEN) PROCEDURES: 1. PROGRAM INPUT PHASE A. THE DRIVER RELOCATABLE IS LOADED WITH THE OTHER RTE SYSTEM DVRS. B. THE L4271 TYPE 7 RELOCATABLE LIBRARY ROUTINE WHICH CONTAINS THE SETLC AND MEALC FORTRAN CALLS FOR DVR62 IS LOADED WITH THE OTHER LIBRARY MODULES. C. FORTRAN OR FORTRAN IV AND THE FORTRAN LIBRARY MUST BE PART OF THE RTE SYSTEM. 2. DISC LOADING PHASE A. THE EQUIPMENT TABLE ENTRY FOR DVR62 IS, SC,DVR62 WHERE, SC=THE COMPUTER SELECT CODE NUMBER OF THE 4271A 1MHZ DIGITAL LCR METER. DMA IS NOT USED BY THE DRIVER. A TIMEOUT VALUE AND BUFFERING CAN BE DECLARED IF DEEMED NECESSARY BY THE USER. 3. THE NORMAL PROCEDURES ARE UTILIZED TO CONFIGURE THE REMAINDER OF THE RTE SYSTEM GENERATION. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: LCR TEST PROGRAM PROCEDURE 1. CALIBRATE THE 4271A USING THE CALIBRATION PROCEDURE IN THE 4271A OPERATORS MANUAL 2. MAKE SURE ALL THE CABLES ARE CORRECTLY WIRED AND CONNECTED TO INTERFACE THE 4271A TO THE MODIFIED 12566B MICROCIRCUIT CARD. 3. PLACE THE FRONT PANEL SWITCHES OF THE 4271A IN THE "REM" POSITIONS AND THE REAR PANEL SWITCH TO OPT 001 (INT). 4. CONNECT A LOAD TO THE TERMINALS OF THE 4271A. 5. LOAD THE RELOCATABLE OF THE LCR TEST PROGRAM WITH THE RTE LOADER AND SCHEDULE LCR. 6. PROGRAM STEPS (KEYBOARD INTERRACTION) A. CHECK FRONT AND REAR PANEL SWITCHES OF 4271A. B. INPUT LOGICAL UNIT # OF 4271A. C. INPUT RANGE SETTING OF 4271A. D. INPUT FUNCTION SETTING OF 4271A. E. INPUT BIAS SETTING OF 4271A. F. OUTPUT OF CAPACITANCE-INDUCTANCE AND CONDUCTANCE-RESISTANCE- DISSIPATION FACTOR VALUES. G. CONTINUE MEASUREMENTS (YES OR NO). **PROGRAM DESCRIPTION: RTE DRIVER 62 (DVR62) OPERATES THE 4271A 1MHZ DIGITAL LCR METER CON- FIGURED WITH OPTIONS 1 AND 5. THE DRIVER OPERATES UNDER CONTROL OF THEI/O MODULE OF THE REAL TIME EXECUTIVE (RTE). DVR62 IS LINKED TO BY MEANS OF THE FORTRAN CALLS SETLC AND MEALC, WHICH CONTROL THE 4271A. THESE CALLS PERFORM AUTOMATIC PROGRAMMING OF THE RANGE, FUNCTION, AND BIAS VOLTAGE AND AUTOMATIC MEASURING OF THE CAPACITANCE-INDUCTANCE AND CONDUCTANCE-RESISTANCE-DISSIPATION FACTOR VALUES. THIS DRIVER HAS BEEN USED IN CONJUNCTION WITH TEST PROGRAMS TO CONTROL I/C PROCESSING BY DETERMINATION OF THE DOPING PROFILE DENSITIES IN SEMICONDUCTOR DEVICES. DIRECT CALLS TO ENTER THE DRIVER ARE AS FOLLOWS: A. CALL SETLC(ILU,IRNG,IFCM,V) --ILU(INTEGER)--LOGICAL UNIT # OF 4271A SET UP IN DEVICE REF. TABLE. --IRNG(INTEGER)--RANGE OF 4271A (0-4). --IFCM(INTEGER)--FUNCTION OF 4271A (0-3). --V(FLOATING POINT)--VOLTAGE BIAS (0-399 VOLTS). NOTE: SEE 4271A OPERATORS MANUAL FOR COMPLETE EXPLANATION OF IRNG, IFCM, AND V INPUT VALUES. B. CALL MEALC(ILU,CL,GR,IERR) --ILU(INTEGER)--SAME AS SETLC CALL. --CL(FLOATING POINT)--RETURNED CAPACITANCE (F) OR INDUCTANCE (H) VALUE. --GR(FLOATING POINT)--RETURNED CONDUCTANCE (MHOS), RESISTANCE (OHMS), OR DISSIPATION FACTOR VALUE. --IERR(INTEGER)<>0, NON-FATAL ERROR DETECTED. =0, NO ERROR NOTE: IF AN ERROR IS DETECTED THE RETURNED CL AND GR VALUES MAY BE INVALID. ALWAYS BEWARE OF NEGATIVE VALUES. THE SETLC AND MEALC CALLS ARE ENTRY POINTS CONTAINED IN THE L4271 LIBRARY PROGRAM. L4271 REFERENCES THE FOLLOWING EXTERNALS: .ENTR,EXEC,IFIX,ERR0,.STOP,FLOAT, AND .RTOI **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR CODES: A. FATAL ERRORS--PROGRAM STOPS EXECUTION LC1--INVALID RANGE (CHECK SETLC CALL) LC2--INVALID FUNCTION (CHECK SETLC CALL) LC3--INVALID BIAS (CHECK SETLC CALL) LC4--NO (-) RECEIVED ON EXPONENT OF DATA VALUE (CHECK 4271A OPERATION) LC5--NO (,) RECEIVED AFTER C/L DATA (CHECK 4271A OPERATION) LC6--NO (;) RECEIVED AFTER G/R DATA (CHECK 4271 OPERATION) B. NON-FATAL ERRORS--PROGRAM EXECUTION CONTINUES AND ERROR CODE (IERR) RETURNED TO CALLING PROGRAM LC20--"UNBAL" DETECTED (CHECK 4271A PANEL SWITCHES OR SETLC CALL) LC21--EXPONENT -38 RECEIVED (CHECK CONNECTION AND 4271 OPERATIONS) LC22--"OUT OF RANGE" (CHECK 4271A PANEL SWITCHES OR STELC CALL) LC23--"D-G,R" (RESET FUNCTION SWITCH IN SETLC CALL) **MISCELLANEOUS: SPECIAL CONSIDERATIONS THE PROGRAMMED VALUES (SETLC) AREN'T SENT TO THE 4271A UNTIL A MEASURING 9MEALC) COMMAND IS RECEIVED BY DVR62. THE FRONT PANEL SWITCHES MUST BE SET IN THE "REM" POSITIONS FOR CORRECT OPERATION WITH DVR62. THE BACK PANEL SWITCH OF THE 4271A MUST BE SET TO THE OPT 001 (INT) POSITION. HARDWARE REQUIREMENTS RTE SYSTEM WITH FORTRAN -- HP2100. 4271A 1MHZ DIGITAL LCR METER WITH OPTIONS 1 AND 5. THE 4271A 1MHZ DIGITAL LCR METER REQUIRES THE 12566B MICROCIRCUIT. INTERFACT KIT, WITH NO OPTIONS, TO INTERFACE THE 4271A TO THE HP 2100. NOTE HOWEVER, THAT CIRCUIT MODIFICATIONS ARE NEEDED TO DELAY THE I00 SIGNAL AN ADDITIONAL APPROX. 150 NS TO BE COMPATIBLE WITH AN HP 2100. THE PURPOSE OF THIS EXTRA DELAY IS TO ALLOW THE DATA TO ARRIVE AT THE DATA BUSS BEFORE I00 ARRIVES. THE DETAILS OF THE MODIFICATION ARE ILLUSTRATED IN FIGURE 1. PIN 3 OF U67A IS DISCONNECTED FROM THE PC BOARD AND THE DIODE (1910-0022), RESISTOR (2K), AND CAPACITOR (470PF) ARE CONNECTED AS SHOWN. THE DELAY IS INCREASED FROM APPROX. 38 NS TO APPROX. 180 NS WITH THE CIRCUIT MODIFICATION. ALSO, THE INTERFACE CABLE THAT CONNECTS THE 12566B MICROCIRCUIT CARD TO THE 4271A 1MHZ DIGITAL LCR METER MUST BE WIRED AS SHOWN IN FIGURE 2 TO BE COMPATIBLE WITH THE SYNTAX OF DVR62. LITERATURE REFERENCE RTE SOFTWARE SYSTEM PROGRAM AND OPERATING MANAUL. 12566B, 12566B-001, 002, 003 MICROCIRCUIT INTERFACE KITS AND OPERATING AND SERVICE MANUAL. 1MHZ DIGITAL LCR METER 4271A OPERATING AND SERVICE MANUAL. CALCULATOR INTERFACE MODEL 4271A OPT 005 1MHZ DIGITAL LCR METER OPERATING NOTE. SUBPROGRAMS USED TO LINE TO DVR62 SETLC AND MEALC CALLS WHICH ARE CONTAINED IN THE L4271 LIBRARY UTILITY PROGRAM. L4271 IS SUPPLIED WITH DVR62 SOFTWARE. C00901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BIBCD **PROGRAM TITLE: BINARY TO BCD CONVERSION **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: BCD CONVERSION **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M BCS RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ALLOWS AN ASSEMBLY LANGUAGE, OR FORTRAN PROGRAM, TO CONVERT ANY POSITIVE INTEGER FROM 0 TO 9999 TO A 4 DIGIT BCD NUMBER CONTAINED IN A 16-BIT WORD RETURNED TO THE CALLING PROGRAM. DOS-M, BCS, MTS, RTE, SIO. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: 1) COMPILE THE FORTRAN TEST PROGRAM. ASSEMBLE THE CONVERSION SUB- ROUTINE. 2) LOAD BOTH PROGRAMS AND THE RELOCATABLE PROGRAM LIBRARY. 3) ENTER THE BINARY NUMBER IN FREE FORMAT (INTEGER DECIMAL) ON THE SYSTEM TTY. THE PROGRAM WILL PRINT THE BINARY INTEGER, NUMBER AND THE BCD CONVERTED NUMBER. **PROGRAM DESCRIPTION: CALLING SEQUENCE - ASSEMBLY LANGUAGE. EXT BIBCD . . . . JSB BIBCD DEF * +3 DEF I ADDRESS OF BINARY NUMBER DEF J ADDRESS OF BCD NUMBER CALLING SEQUENCE - FORTRAN CALL BIBCD (I,J) WHERE I IS THE BINARY NUMBER IN INTEGER FORMAT TO BE CONVERTED AND J IS THE BCD VALUE RETURNED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF THE INPUT NUMBER IS OUTSIDE THE RANGE 0 TO 9999, THE SUBROUTINE MERELY RETURNS WITHOUT ATTEMPTING A CONVERSION. **MISCELLANEOUS: C01001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 3437A SYSTEM VOLTMETER DEVICE SUBROUTINE **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: METER HP-IB ATS **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE 3437A DEVICE SUBROUTINES ARE HIGH LEVEL INTERFACE ROUTINES WHICH CONVERT SIMPLE CALL STATEMENTS IN FORTRAN OR BASIC INTO RTE CALLS TO THE HP-IB DRIVER. PROGRAMMING THE 3437A IS DIVIDED INTO A SETUP CALL (DSVSU) AND A MEASUREMENT CALL (DSVMS). ALL FRONT PANEL SWITCHES OF THE 3437A ARE PROGRAMMABLE FOR RANGE, TRIGGER-SOURCE, AND DELAY. UP TO 100 READING MAY BE MADE IN THE DIRECT MODE AND 1250 READING IN A SECOND MODE WHERE THE READINGS ARE PUT INTO A DISC FILE. USAGE IS MADE OF SOFTWARE FROM THE MULTI-TERMINAL INTERFACE SOFTWARE, HP PART NO. 92425A TO BE COMPATABLE IN A MULTI-TERMINAL ENVIRONMENT. MINOR MODIFICATIONS ARE NECESSARY IF THAT SOFTWARE IS NOT USED. SEE HP-ATS APPLICATION NOTE AN 237-1. HARDWARE REQUIREMENTS COMPUTER SYSTEM WITH RTE-II OR RTE-III HP3437A SYSTEM VOLTMETER HP 59310B INTERFACE BUSS I/O KIT **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: 1. COMPILE BOTH MODULES AND SAVE THE RELOCATABLES. 2. THESE RELOCATABLE FILES MAY NOW BE USED LIKE ANY OTHER SUBROUTINE WHEN LOADING A PROGRAM. OTHER ROUTINES ARE NEEDED FROM THE MULTI- TERMINAL SOFTWARE (MTIS) PACKAGE HP 9245A. THE FILES WHICH CON- TAIN THE NEEDED ROUTINES ARE: %LUDV %GTLU# %IBLU0 %PAK %UNPAK %A2F %ERROR THEY MAY BE SPECIFIED AT LOAD TIME, OR IF INCLUDED DURING SYSTEM GENERATION, WILL BE IN THE RTE SYSTEM LIBRARY. NOTE THAT %ERROR REPLACES THE ERROR MODULE OF BASIC 1000/D. 3. THERE IS ALSO AN EXTERNAL REFERENCE TO DRTXX WHICH IS A MEMORY RESIDENT MODULE FROM MTIS AND MUST BE INCLUDED AT SYSTEM GENERATION. REFER TO THE MTIS MANUAL HP PART NO. 92425-93001 FOR FURTHER IN- FORMATION. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALLING SEQUENCES SUBROUTINE DSVSU FORTRAN - CALL DSVSU(IUNIT,R,IT,DD1) CALL XSVSU(LU1,LU2,IERMS,IUNIT,R,IT,DD1) BASIC - CALL DSVSU(U,R,T,D) CALL XSVSU(L1,L2,I(1),U,R,T,D) IUNIT = U = UNIT NUMBER OF THE HP 3437A R = R = VOLTAGE RANGE: .1, 1, 10 VOLTS IT = T = TRIGGER SOURCE 1 - INTERNAL 2 - EXTERNAL DD1 = D = DELAY SETTING: 175 MICROSECONDS TO 999,999 MICROSECONDS IN 0.1 MICROSECOND STEPS LU1 =L1 = LU NUMBER OF THE HP-IB INTERFACE CARD LU2 = L2 = LU NUMBER OF THE 3437A IERMS = L(1) = FIVE-ELEMENT INTEGER ARRAY, IN WHICH: IERR(1) = ERROR CODE: 0 - NO ERROR 1 - PARAMETER ERROR, REPORTED IF: VOLTAGE RANGE (R) < 0.1 OR >10 TRIGGER SOURCE (IT) <1 OR > 2 DELAY SETTING (DD1) < 175 OR > 999,999 IERR(2) = CHARACTER COUNT OF MNEMONIC NAME (5 IN THIS CASE) IERR(3-5) = THE PACKED ASCII OF THE MNEMONIC NAME IF IERR(1) > 0 BASIC CONFIGURATION INFORMATION DSVSU(I,R,I,R) SUBROUTINE DSVMU FORTRAN - CALL DSVMU(IUNIT,ABUF,IN,IMODE) CALL XSVMU(LU1,LU2,IERMS,IUNIT,ABUF,IN,IMODE) BASIC - CALL DSVMU(U,B(1),N,M) CALL XSVMU(L1,L2,I(1),U,B(1),N,M) IUNIT = U = UNIT NUMBER OF HP 3437A ABUF = B(1) = NAME OF BUFFER WHERE DATA IS STORED IN = N = NUMBER OF READINGS: MAXIMUM = 100 IF IMODE = 0 MAXIMUM = 1250 IF IMODE = 1 IMODE = M = MODE OF DATA TRANSFER: 0 - DIRECT TRANSFER VIA SPACE AVAILABLE MEMORY (SAM) 1 - TRANSFER DATA TO DISC (FILE NAME = VMOUT) LU1 = L1 = LU NUMBER OF HP-IB INTERFACE CARD LU2 = L2 = LU NUMBER OF HP 3437A IERMS = I(1) = FIVE-ELEMENT INTEGER ARRAY, IN WHICH: IERR(1) = ERROR CODE: 0 - NO ERROR 1 - PARAMETER ERROR, REPORTED IF: NUMBER OF READINGS (IN) < 0 OR > 1250 MODE OF DATA TRANSFER (IMODE) < 0 OR > 1 MODE OF DATA TRANSFER (IMODE) = 0 AND NUMBER OF READINGS (IN) > 100 4 - BAD DATA FROM HP 3437A, REPORTED IT: ANY NON-ASCII CHARACTER IS RETURNED AS DATA FROM HP 3437A SYSTEM VOLT- METER IERR(2) = CHARACTER COUNT OF MNEMONIC NAME (5 IN THIS CASE) IERR(3-5) = THE PACKED ASCII OF THE MNEMONIC NAME IF IERR(1) > 0 BASIC CONFIGURATION INFORMATION DSVMU(I,RA,I,I) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR MESSAGES WHICH PERTAIN TO THE HP-IB: 9 - I/O CALL REJECTED 10 - LU1 OR LU2 NOT ASSIGNED TO STATION 11 - DMA INPUT REQUEST PREMATURELY TERMINATED 12 - I/O DEVICE TIME OUT 13 - IFC (INTERFACE CLEAR) DETECTED DURING I/O REQUEST 14 - SRQ SERVICE ABORTED 15 - NON-EXISTENT ALARM PROGRAM 16 - ILLEGAL CONTROL REQUEST 17 - EQT EXTENSION AREA FULL, NO NEW DEVICE MAY BE ADDED ON LINE ERROR MESSAGE WHICH PERTAINS TO THE DISC: 18 - DISC WRITE ERROR **MISCELLANEOUS: SPECIAL CONSIDERATIONS THE 3437A HAS A BURST MODE CAPABILITY WHERE UP TO 9999 READINGS MAY BE TAKEN WITH ONE CALL. THE DEVICE SUBROUTINE ALLOWS UP TO 100 READINGS (MAY BE LIMITED BY SAM) IN THE DIRECT MODE (READING STORED IN MEMORY) AND UP TO 1250 READINGS IF STORED IN A DISC FILE (MODE = 1). WHEN USING MODE 1, A TYPE 1 FILE CALLED "VMOUT" WITH SECURITY CODE "OP" AND 20 BLOCKS IN SIZE MUST BE CREATED. A SEPARATE PROGRAM MUST BE WRITTEN TO ACCESS THE DATA WRITTEN IN THE DISC FILE. C01101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RDWRT **PROGRAM TITLE: RDWRT -- MASS STORAGE PROGRAM **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: FILES ANALYZER STORAGE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE PROGRAM "RDWRT" DEMONSTRATES THE MASS STORAGE AND FILE HANDLING CAPABILITIES OF THE HP 1000 WHEN USED WITH THE 3582A SPECTRUM ANALYZER. (THIS IS A USER PROGRAM WHICH PROMPTS THE OPERATOR TO RESPOND TO COM- MANDS. RDWRT ALLOWS THE RAW TIME WAVEFORM OR THE TRANSFORMED FREQUENCY DOMAIN WAVEFORM FROM THE 3582A TO BE STORED IN AN HP 1000 DISC FILE. AT SOME TIME LATER THESE FILES MAY BE RESTORED TO THE INSTRUMENT FOR COMPARISON OR THEY CAN BE RE-ANALYZED. THE PROGRAM ALLOWS: 1. STORAGE AND RETRIEVAL OF FREQUENCY SPECTRA. 2. STORAGE AND RETRIEVAL OF THE ORIGINAL TIME WAVEFORMS FOR: A. LATER ANALYSIS, B. LATER ANALYSIS OF THE EXPERIMENT USING DIFFERENT TRANSFER FUNCTIONS (FLAT TOP, HANNING, OR UNIFORM) OR, C. MODIFICATION OR PREPROCESSING OF THE TIME WAVEFORM (I.E., PASSING IT THROUGH A SIMULATED FILTER) BEFORE SPECTRUM ANALYSIS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RDWRT2 - SOURCE FILE# 3: RDWRT3 - SOURCE (INPRM) **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE PROGRAM RDWRT ALSO CONTAINS INFORMATION ABOUT HP 1000 SYSTEM SUBROUTINES AND HOW THEY CAN BE USED IN MEASUREMENT SITUATIONS AS WELL AS I/O INFORMATION ABOUT THE 3582A. RDWRT CAN, 1. ACCESS 3582A MEMORY DIRECTLY (DISPLAY MEMORY IN LINES 194 THROUGH 197, TIME MEMORY IN LINES 206 THROUGH 208), 2. ANALYZE BINARY DATA RECEIVED FROM THE 3582A (SUBROUTINE "SENSI" STARTING IN LINE 305) AND, 3. WRITE BINARY DATA TO 3582A MEMORY (DISPLAY MEMORY IN LINES 249 THROUGH 252 AND LINE 259, TIME MEMORY IN LINES 255 THROUGH 257 AND LINE 259). HP 1000 "EXEC" REQUESTS ARE USED TO OUTPUT MESSAGES TO THE USER TERMINAL INSTEAD OF INCURRING THE ADDED MEMORY OVERHEAD REQUIRED FOR THE FORTRAN FORMATTER. (THE FORMATTER IS USED IN THE SUBROUTINE "SENSI" BUT CAN BE EXCLUDED BY CONVERTING THESE "WRITE" STATEMENTS TO EXEC CALLS ALSO.) THERE ARE TWO OPERATION TYPES USED REPEATEDLY IN THE PROGRAM: SD OR ST SAVE 3582A MEMORY IN A DISC FILE. RD OR RT RESTORE DISC FILE TO 3582A MEMORY. THE 3582A TIME AND DISPLAY MEORIES ARE TRANSFERRED USING BINARY EXEC REQUESTS IN THE HP 1000 (LINE 208, FIGURE 12-3). THESE I/O REQUESTS ALLOW THE COMPUTER TO IGNORE DATA WHICH MAY OTHERWISE BE INTERPRETED AS AN END-OF-RECORD (EOR). THIS WAY, 3582A MEMORY CAN BE TRANSMITTED DIRECTLY TO THE HP 1000 AT HIGH SPEED IN LARGE BUFFERS, WITH NO BINARY TO ASCII CONVERSION IN THE PROCESS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THIS PACKAGE REQUIRES A 3582A SPECTRUM ANALYZER. ALSO SEE 'APPLICATION NOTE' 401-12 FOR A COMPLETE AND DETAILED DOCUMENTATION 'RDWRT'. C01201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: P1640 **PROGRAM TITLE: P1640 - TO EXPAND CAPABILITIES OF 1640 SERIAL LOGIC ANALYZER **REVISION? NO **PACKAGE: 3 **CATEGORY: 1 **KEYWORDS: STORAGE ANALYZER FORMATTING **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: REQUIRES 17 PAGES OF MEMORY **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: P1640 IS A PROGRAM TO EXPAND THE CAPABILITIES OF THE 1640 SERIAL LOGIC ANALYZER BY PROVIDING: - STORAGE OF DATA FROM THE 1640 ON MEMORY, DISK, TAPE, ETC. - ALTERABLE FORMATTING OF SAVED DATA FOR ANY TYPE OF CODE. - FORMATTED OUTPUT TO THE LINE PRINTER OR A FILE. - AUTOMATIC INITIALIZATION OF THE 1640 THROUGH TRANSFER FILE. - USER DOESN'T NEED TO KNOW HP-IB BUT MUST HAVE THE HARDWARE AND SOFTWARE IN THE SYSTEM. THE PROGRAM IS DESIGNED TO BE USED INTERACTIVELY BUT COULD BE RUN BY BATCH. ALSO: REQUIRES HP-IB INTERFACE CARD, TERMINAL INTERFACE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: TRANSFER FILE USED TO SAVE THE OTHER FILES ON TAPE FILE# 3: THE SOURCE FILE FOR THE PROGRAM FILE# 4: AN ASSEMBLY LANGUAGE SUBROUTINE USED BY P1640 FILE# 5: A LISTING OF SOME EXAMPLES **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: SEE EXAMPLE LISTINGS IN FILE #5 **INPUT/OUTPUT EXAMPLES: SEE EXAMPLE LISTINGS IN FILE #5 **PROGRAM DESCRIPTION: SEE DOCUMENTATION IN SOURCE CODE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: USES 'FMGR' ERROR CODES, OTHER ERRORS ARE PRINTED ON THE LOG LU (TERMINAL). **MISCELLANEOUS: NOTE: P1640 CALLS EXEC, REIO NEED HP-IB DRIVER GENERATED INTO RTE. NEED TO DEFINE AN LU FOR EACH DEVICE ON THE HP-IB BUS. D00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR52 **PROGRAM TITLE: RTE MULTIPLEXOR DRIVER (12920A) **REVISION? NO **PACKAGE: 4 **CATEGORY: 1 **KEYWORDS: DRIVER PRIVILEGED **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-C **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ROUTINE IS AN INPUT/OUTPUT DRIVER (DVR 52) WHICH OPERATES UNDER CONTROL OF THE REAL TIME EXECUTIVE (RTE) OPERATING SYSTEM. DATA TRANS- MISSION IS POSSIBLE WITH ANY EIA RS-232 COMPATIBLE TERMINAL CONNECTED TO THE 12920A ASYNCHRONOUS MULTIPLEXOR. THE (SYSTEM CONSOLE) CAN BE CONNECTED TO THIS INTERFACE. SPEED DETECTION IS POSSIBLE AT SPEEDS OF 10, 15, 30, 60, 120, AND 240 CHARACTERS/SECOND. THIS DRIVER DOES NOT USE THE FULL CAPABILITY OF THE MODEM CONTROL CARD. THIS ROUTINE IS A PRIVELEGED DRIVER AND IS COMPATIBLE WITH RTE, RTE-C, RTE-II, AND RTE-III OPERATING SYSTEMS. HARDWARE REQUIREMENTS FOR THE RTE MULTIPLEXOR DRIVER, REQUIRED BY ANY MEMBER OF THE FAMILY OF THE RTE SYSTEMS, ARE A 12920A OR 12920B ASYN- CHRONOUS MULTIPLEXOR, AND A 12620A OR 12936A PRIVILEGED I/O BOARD. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: SEE SOURCE **RUN INSTRUCTIONS: SEE SOURCE **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: D00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: OPTIONAL DVR51 - RTE AUTO DIAL DRIVER FOR 12589A INTERFACE KIT. **REVISION? YES **PACKAGE: 4 **CATEGORY: 1 **KEYWORDS: DRIVER INTERFACE DATA COMM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS RTE AUTO DIAL DRIVER USES 12589A INTERFACE KIT TO OPERATE ON AUTOMATIC CALLING UNIT (ACU). USE OF THIS, ALONG WITH COMPLEMENTARY AUTO ANSWER UNITS IN A DISTRIBUTED COMMUNICATION SYSTEM, ALLOWS LINE CONNECTIONS AND DISCONNECTIONS TO BE MADE AUTOMATICALLY UNDER PROGRAM CONTROL. THE DRIVER SUPPORTS (WRITE) REQUEST TO ENABLE DIALING AND (CONTROL) REQUEST TO DO A DISCONNECT. LINE SELECTION FROM 1 TO 4 IS PERMITTED BY SOFTWARE ALTHOUGH THE CURRENT CABLE ASSEMBLY OF 12589A ALLOWS FOR ONE LINE ONLY (WITH REFERENCE TO MULTIPLE ACU'S BEING CONNECTED TO THE SAME INTERFACE BOARD). THE DRIVER HANDLES ITS OWN TIME OUT AND THE STATUS WORD REFLECTS (ON-LINE) AND (OFF-LINE) CON- DITION ON COMPLETION OF REQUEST. (END-OF-NUMBER) OPTION IS ALSO SUP- PORTED IN SOFTWARE, ALLOWING LINE TO BE HANDED OVER TO THE MODEM WHILE IT IS RINGING. APPROPRIATE TIME OUT VALUES (NEGATIVE DIGITS) MAY BE INSERTED IN THE DIAL BUFFER AT PLACES WHERE DIAL TONES ARE EXPECTED. THIS IS IMPORTANT IN CASE OF A MULTIPLE DIAL SEQUENCE OVER AN ACU WHICH DOES NOT SUPPORT (POSITIVE DIAL TONE IDENTIFICATION); E.G., BELL 801A. IF AN ACU DOES SUPPORT THIS FEATURE (E.G., VADIC CORP'S ACU), ILLEGAL DIGITS SHOULD BE INSERTED IN THE WRITE BUFFER AT DIAL TONE POINTS. THE OVERALL DRIVER TIME OUT VALUE (IN EQT14) SET AT SYSTEM GENERATION TIME IS IN- DEPENDENT OF THE TIME OUT VALUES SPECIFIED WITHIN THE DIAL SEQUENCE IN CASE OF TANDOM DIALING, AND SHOULD PREFERABLY BE GREATED THAN THE ACU'S TIMER. HARDWARE REQUIREMENTS: 12589A INTERFACE KIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE DRIVER ONLY ENTERTAINS WRITE AND CONTROL REQUESTS. REFER TO SOURCE LISTING FOR DETAILS ON ALLOWABLE CALLING SEQUENCE. DURING RTE SYSTEM GENERATION, BE AWARE THAT THIS DRIVER HANDLES ITS OWN TIMEOUT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: D00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE ASYNCHRONOUS DATA SET INTERFACE DRIVER **REVISION? NO **PACKAGE: 4 **CATEGORY: 1 **KEYWORDS: INTERFACE DATA COMM ASYNCHRONOUS **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DVR72 IS A RTE DRIVER WHICH CONTROLS AN HP 12587 ASYNCHRONOUS DATA SET INTERFACE. THE TERMINALS EXPECTED BY DVR72 ARE AN HP7260 CARD READER AND/OR A GENERAL ELECTRIC TERMINET 1200 PRINTER. EACH HP 12587 INTER- FACE HAS ONE BELL SYSTEM TYPE 103 OR 202 DATA SET (OR EQUIVALENT) CONNECTED TO IT. USING DVR72, THE USER PROGRAM CAN ISSUE COMMAND SEQUENCES TO THE 7260 CARD READER TO RETURN CARD DATA AND/OR STATUS INFORMATION. THE DRIVER SUPPORTS ONLY PRINTING CAPABILITY FOR THE GE 1200 AND DOES AN IMMEDIATE COMPLETION IF KEYBOARD INPUT IS PROGRAMMED. HARDWARE REQUIREMENTS: MINIMUM RTE HARDWARE CONFIGURATION PLUS AN HP 12587 ASSEMBLY I/F, AND EITHER OR BOTH HP7260 MARK SENSE CARD READER, GE TERMINET 1200 PRINTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: DVR72 MUST BE GENERATED INTO RTE DURING SYSTEM GENERATION AS FOLLOWS: *EQUIPMENT TABLE ENTRY SC,DVR72,D THE DRIVER USES DMA FOR THE 7620 CARD READER INPUT AND DEALLOCATES DMA FOR ALL OTHER I/O. THE DRIVER ALSO PROCESSES ITS OWN TIME-OUTS AND SHOULD BE NON-BUFFERED. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE: OPERATING MANUAL FOR HP 7260 (PART NUMBER 07260-90000). D00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UTERM **PROGRAM TITLE: CDC-200 USER TERMINAL SIMULATOR FOR HP 1000 **REVISION? YES **PACKAGE: 4 **CATEGORY: 1 **KEYWORDS: TERMINAL DRIVER CDC SIMULATOR **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IV **MEMORY REQUIREMENTS: 7 PAGES **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: UTERM SIMULATES A CDC 200 USER TERMINAL (200UT) ON A HEWLETT-PACKARD SERIES-1000 MINICOMPUTER RUNNING UNDER THE RTE-IV OPERATING SYSTEM AT SPEEDS UP TO 4800 BAUD. THIS DOCUMENT DESCRIBES VERSION 3.1E (25MAY79); RELATIVE TO EARLIER VERSIONS OF THIS PROGRAM WHICH WERE CONTRIBUTED TO LOCUS, THIS VERSION CONTAINS IMPROVEMENTS/MODIFICATIONS. UTERM REQUIRES AN HP SERIES-1000 MINICOMPUTER RUNNING UNDER THE RTE-IV OPERATING SYSTEM. A SYNCHRONOUS MODEM UTILIZING AN HP 12618A SYNCHRONOUS DATA SET INTERFACE KIT IS NEEDED. THE 12936A PRIVILEGED INTERRUPT FENCE MUST BE UTILIZED TO OBTAIN GOOD PERFORMANCE FROM THIS PROGRAM. TO EFFECT A PROPER SIMULATION, UTERM CONTAINS ITS OWN AUTONOMOUS DRIVER FOR THE DATA SET INTERFACE. THE ONLY (AND HENCE THE BEST) DOCUMENTATION OF THE CDC 200UT IS THE CONTROL DATA HARDWARE REFERENCE MANUAL FOR THE 200 USER TERMINAL (CDC PUBLICATION #82128000). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE AND DOCUMENTATION FILE# 3: SOURCE AND DOCUMENTATION **LOAD INSTRUCTIONS: SEE $UTERM FOR COMPLETE LOADER DIRECTIONS. **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **INPUT/OUTPUT EXAMPLES: SEE EXTENDED DOCUMENTATION **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION **MISCELLANEOUS: D00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: ASCII/IBM-360 CONVERSION ROUTINE **REVISION? NO **PACKAGE: 4 **CATEGORY: 3 **KEYWORDS: CONVERSION ASCII IBM CODE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE BCS DOS **MEMORY REQUIREMENTS: 215 WITH EXTERNAL SUBPROGRAMS (178 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE READS IBM 8-LEVEL CHARACTERS FROM 9-TRACK MAGNETIC TAPE, CONVERTS THE CHARACTERS TO ASCII FORM, AND LISTS OR PUNCHES THE ASCII CHARACTERS ON THE TELEPRINTER. THE PROGRAM ALSO READS ASCII CHARACTERS FROM PUNCH CARDS, CONVERTS THE CHARACTERS TO IBM 8-LEVEL CODE, AND RECORDS THE 8-LEVEL CHARACTERS ON MAGNETIC TAPE. CONVERSION TIME IS APPROXIMATELY 100 MICROSECONDS TIMES LENGTH OF ARRAY IN WORDS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: INCLUDED ARE PROGRAMS TLIST, MLIST AND CWRIT WHICH USE THE CON- VERSION SUBROUTINES ASTOI AND ITOAS. PROGRAM TLIST LISTS FROM MAG TAPE USING THE FIRST CHARACTER PER RECORD AS A CARRIAGE CONTROL CHARACTER. PROGRAM MLIST LISTS FROM MAG TAPE ASSUMING EACH MAG TAPE RECORD IS MADE UP OF TEN CARD IMAGES. PROGRAM CWRIT READS CARDS AND PUTS THEM ONTO MAG TAPE WITH A BLOCKING FACTOR OF TEN. THE CARD DECK IS TERMINATED BY A CARD WITH A /* IN THE FIRST TWO COLUMNS. MAG TAPE GENERATED BY CWRIT MAY BE READ ON THE 360, AND THE MAG TAPE USED BY TLIST AND MLIST IS PRODUCED ON THE 360. **PROGRAM DESCRIPTION: CALLING SEQUENCES CALLED AS CALL ITOAS (IA(1),LEN) WHERE IA = NAME OF ARRAY DIMENSIONED TO AT LEAST "LEN" LEN = INTEGER VARIABLE NAME OR CONSTANT SET TO THE NUMBER OF WORDS TO BE CONVERTED. ROUTINE CONVERTS FROM IBM TO ASCII CODE - THE RESULT IS LEFT IN ARRAY IA. CALL ASTOI (IA(1),LEN) SAME AS ABOVE - BUT CONVERTS ASCII TO IBM CODE. SPECIAL CONSIDERATION ONLY THE LAST SIX BITS OF EACH CHARACTER ARE EXAMINED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: D00601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EBC2A **PROGRAM TITLE: EBCDIC TO ASCII TRANSLATOR **REVISION? YES **PACKAGE: 4 **CATEGORY: 3 **KEYWORDS: ASCII EBCDIC CONVERSION CODE CHARACTER **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 5 PAGES **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM EBC2A CONVERTS VARIABLE-LENGTH EBCDIC-CODED RECORDS FROM AN INPUT DEVICE (OR DISC FILE) TO ASCII CODE, AND STORE THE TRANSLATED RECORDS TO AN OUTPUT DEVICE (OR DISC FILE). THE LENGTH OF THE OUTPUT RECORD IS IDENTICAL TO THE LENGTH OF THE INPUT RECORD. IF DISC FILES ARE USED FOR INPUT OR OUTPUT, THEN THE SPOOL MONITOR PROGRAM (SMP) MUST BE ACTIVE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: EBC2A SOURCE FILE# 3: EBCDIC TEST DATA **LOAD INSTRUCTIONS: 1. RUN ALGOL COMPILER ON SOURCE FILE (&EBC2A) 2. RUN LOADR ON CODE PRODUCED BY COMPILER. **RUN INSTRUCTIONS: TO RUN: *RU,EBC2A,P1,P2,P3,P4,P5 WHERE THE OPTIONAL PARAMETERS ARE DEFINED AS FOLLOWS: P1 - TERMINAL LU (DEFAULT=VALUE RETURNED BY MTM) P2 - INPUT LU (DEFAULT=LU2) P3 - OUTPUT LU (DEFAULT=LU2) P4 - FIRST RECORD TO BE TRANSLATED (DEFAULT=1) P5 - NUMBER OF RECORDS TO BE TRANSLATED (DEFAULT=ALL) **INPUT/OUTPUT EXAMPLES: A DISC FILE CONTAINING DATA IN EBCDIC CODE, &EBCDC, IS USED AS INPUT TO THE PROGRAM EBC2A. THE OUTPUT FILE, &ASCII, DOES NOT EXIST BUT IS CREATED BY THE PROGRAM, AND THE TRANSLATED DATA IS WRITTEN TO THIS FILE. FILE LISTING OF BOTH FILES ARE ON THE FOLLOWING PAGES. THE TERMINAL CONVERSATION IS AS FOLLOWS: *RU,EBC2A INPUT FILE NAME? &EBCDC OUTPUT FILE NAME? &ASCII ** END EBC2A A SECOND TRANSLATION IS PLACED IN THE FILE &ASCJJ, BEGINNING THE TRANSLATION AT RECORD NUMBER 5 AND CONTINUING FOR 5 RECORDS: *RU,EBC2A,,,,5,5 INPUT FILE NAME? &EBCDC OUTPUT FILE NAME? &ASCJJ ** END EBC2A **PROGRAM DESCRIPTION: MAXIMUM ALLOWABLE RECORD LENGTH IS 1024 WORDS, BUT CAN BE MODIFIED AS REQUIRED BY SETTING THE VARIABLE BUFLEN TO BE 1+MAXIMUM RECORD LENGTH. OPTIONS ARE SET THROUGH THE RUN PARAMETERS. THE OPTIONS ALLOW YOU TO BEGIN TRANSLATION AT A SPECIFIED RECORD, AND TRANSLATE A GIVEN NUMBER OF RECORDS. DEFAULTS FOR THE PROGRAM ARE INPUT AND OUTPUT FROM THE DISC, BEGINNING AT RECORD 1, AND TRANSLATING THE EN- TIRE FILE. IF INPUT OR OUTPUT IS FROM THE DISC, THE PROGRAM WILL INTERACTIVELY PROMPT FOR THE INPUT OR OUTPUT FILE NAME. IF THE OUTPUT FILE DOES NOT EXIST, EBC2A WILL CREATE IT, WITH A DEFAULT SIZE OF 24 BLOCKS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: INPUT FILE ERROR: - XX WHERE XX IS ERROR CODE OUTPUT FILE ERROR: - XX WHERE XX IS ERROR CODE **END EBC2A MESSAGE ON END OF PROGRAM **MISCELLANEOUS: D00701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: A2EBC **PROGRAM TITLE: ASCII TO EBCDIC TRANSLATOR **REVISION? YES **PACKAGE: 4 **CATEGORY: 3 **KEYWORDS: ASCII EBCDIC CONVERSION CODE CHARACTER **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 5 PAGES BACKGROUND MEMORY **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM A2EBC CONVERTS VARIABLE-LENGTH ASCII CODED RECORDS FROM AN INPUT DEVICE (OR DISC FILE) TO EBCDIC CODE, AND STORES THE TRANSLATED RECORDS TO AN OUTPUT DEVICE (OR DISC FILE). THE LENGTH OF THE OUTPUT RECORD IS IDENTICAL TO THE LENGTH OF THE INPUT RECORD. IF DISC FILES ARE USED FOR INPUT OR OUTPUT, THEN THE SPOOL MONITOR PROGRAM (SMP) MUST BE ACTIVE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: A2EBC SOURCE **LOAD INSTRUCTIONS: RUN ALGOL COMPILER ON SOURCE PROGRAM (&A2EBC). RUN LOADR ON CODE PRODUCED BY COMPILER. **RUN INSTRUCTIONS: TO RUN: *RU,A2EBC,P1,P2,P3,P4,P5, WHERE THE OPTIONAL PARAMETERS ARE DEFINED AS FOLLOWS: P1-TERMINAL LU (DEFAULT=VALUE RETURNED BY MTM) P2-INPUT LU (DEFAULT=LU2) P3-OUTPUT LU (DEFAULT=LU2) P4-FIRST RECORD TO BE TRANSLATED (DEFAULT=1) P5-NUMBER OF RECORDS TO BE (DEFAULT=ALL) TRANSLATED **INPUT/OUTPUT EXAMPLES: A DISC FILE CONTAINING TEST DATA IS TRANSLATED TO EBDIC CODE, AND LISTED ON THE LINE PRINTER: *TU,A2EBC,,,6 INPUT FILE NAME? ==TEST ** END A2EBC A SECOND TRANSLATION IS PERFORMED ON A FILE THAT IS ON CARTRIDGE TAPE ON LU8, AND STORED IN A DISC FILE, TOUT, WHICH IS CREATED BY THIS PROGRAM: *RU,A2EBC,,8 OUTPUT FILE NAME? TOUT **END A2EBC **PROGRAM DESCRIPTION: MAXIMUM ALLOWABLE RECORD LENGTH IS 1024 WORDS, BUT CAN BE MODIFIED AS REQUIRED BY SETTING THE VARIABLE BUFLEN TO BE 1+MAXIMUM RECORD LENGTH. OPTIONS ARE SET THROUGH THE RUN PARAMETERS. THE OPTIONS ALLOW YOU TO BEGIN TRANSLATION AT A SPECIFIED RECORD, AND TRANSLATE A GIVEN NUMBER OF RECORDS. DEFAULTS AT RECORD 1, AND TRANSLATING THE ENTIRE FILE. IF INPUT OR OUTPUT IS FROM THE DISC, THE PROGRAM WILL INTERACTIVELY PROMPT FOR THE INPUT OR OUTPUT FILE NAME. IF THE OUTPUT FILE DOES NOT EXIST, A2EBC WILL CREATE IT, WITH A DEFAULT SIZE OF 24 BLOCKS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ANY ERROR MESSAGES ARE SENT TO THE TERMINAL. ALSO THERE IS AN END OF PROGRAM MESSAGE SENT TO THE TERMINAL. **MISCELLANEOUS: E00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DCODE **PROGRAM TITLE: DOS-M ABSOLUTE OBJECT DECODER **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: ASSEMBLER ABSOLUTE INVERSE **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS DOS-M **MEMORY REQUIREMENTS: 10532 WITH EXTERNAL SUBPROGRAMS (7933 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: DOS ABSOLUTE OBJECT DECODER IS A DOS VERSION OF HP22292 BCS ABSOLUTE OBJECT DECODER. IT IS AN ALGOL PROGRAM DESIGNED TO PRODUCE A PSUEDO SOURCE FROM AN ABSOLUTE BINARY TAPE, COMPLETE WITH LABELS, WHICH WILL ASSEMBLE BACK TO THE ORIGINAL ABSOLUTE. SUCH A TAPE WOULD BE RELATIVELY EASY TO DECIPHER AND EDIT INTO A FUNCTIONAL EQUIVALENT OF THE ORIGINAL SOURCE. DECODING IS BY WORD COMPARISON WITH THE CONSOLIDATED CODING SHEET. A PROGRAMMER MAY GENERATE A BINARY WORD BY ANY OF SEVERAL METHODS, DEPENDING ON HIS PURPOSE. DCODE TRIES TO CONVERT TO MACHINE INSTRUCTIONS IF POSSIBLE, OTHERWISE TO AN (OCT) CONSTANT. THE GENERATION OF DEF, ABS, ASC, DEC, DEX, AND BSS PSUEDO INSTRUCTIONS, EXPRESSION OPERANDS AND (OCT) OTHER THAN BY DEFAULT ARE NOT WITHIN THE SCOPE OF THIS PROGRAM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: COMPILE THE PROGRAM AND THE PROCEDURES, AND ASSEMBLE THE SUBROUTINE. USE LOADR TO GENERATE OBJECT PROGRAM, AND :STORE,P DIRECTIVE TO STORE THE PROGRAM ON THE DISC. **RUN INSTRUCTIONS: TO EXECUTE PROGRAM: TYPE :PROG,DCODE ON SYSTEM TTY. PROGRAM WILL ASK: "LISTING?" TYPE "YES" OR "NO" "PUNCH OUTPUT?" TYPE "YES" OR "NO" "MAGTAPE OUTPUT?" TYPE "YES" OR "NO" "EAU INSTRUCTIONS?" TYPE "YES" IF DECODING OF EAU INSTRUCTIONS IS DESIRED, OTHERWISE "NO". THE PHOTOREADER WILL READ THE BINARY TAPE, STORE THE CODE ON THE DISC FOR THE SECOND PASS. DURING THE SECOND PASS, THE PSUEDO SOURCE WILL BE OUTPUTTED TO THE SELECTED PERIPHERALS. **INPUT/OUTPUT EXAMPLES: EXPERIMENT WITH YOUR OWN ABSOLUTE OBJECT TAPE. THE PROGRAM WAS TESTED IN THE FOLLOWING WAY: A BINARY TAPE CONTAINING ALL BIT COMBINATIONS FROM 000000 TO 007777 AND FROM 100000 TO 107777 WAS GENERATED. THIS TAPE WAS DECODED, AND PSUEDO SOURCE OUTPUT ON MAG TAPE. THE PSUEDO SOURCE WAS REASSEMBLED USING THE DOS ASSEMBLER. THE BINARY TAPE GENERATED BY THE ASSEMBLER WAS COMPARED TO THE ORIGINAL. DECODING OF MEMORY REFERENCE INSTRUCTIONS WAS CHECKED IN A SIMILAR WAY. **PROGRAM DESCRIPTION: IF AN INSTRUCTION CAN BE DECODED AS TWO ASCII CHARACTERS, THESE WILL APPEAR IN THE COMMENT FIELD ON THE LISTING ONLY. THIS PROGRAM AS WRITTEN HAS CAPABILITY FOR HANDLING UP TO 4096 LABELS. IF TABLE OVERFLOW OCCURS, PROGRAM HALTS AFTER DIAGNOSTIC MESSAGE. AMAX IN LINE 28 CAN BE INCREASED TO APPROXIMATELY 7500 IN A 32K MACHINE FOR INCREASED CAPACITY. IF THE COMPUTER HAS ONLY 16K OF CORE MEMORY, AMAX MUST BE SET TO 3000. DECODING THE ENTIRE ALGOL COMPILER GENERATED 1130 LABELS. IN INTERPRETING THE RESULTS OF A DCODE PROGRAM LISTING, ONE MUST BE AWARE IF SEVERAL POSSIBILITIES AND PITFALLS. CERTAIN EAU INSTRUCTIONS, FOR EXAMPLE, CREATE A WORD IN THE NEXT LOCATION WHICH CONTAINS THE OPERAND ADDRESS. THEREFORE, A CONSTANT WHICH DECODED INTO A TWO-WORD EAU INSTRUCTION WOULD USE THE SECOND WORD FOR THE OPERAND ADDRESS USING BITS 14-0 TO DETERMINE ITS VALUE, AND BIT 15, IF SET, DETERMINES THAT IT IS AN INDIRECT REFERENCE. THUS, ALL INFORMATION REQUIRED TO RECONSTRUCT BOTH WORDS AS CONSTANTS IS AVAILABLE. IT SHOULD ALSO BE NOTED THAT DEF, ASC AND CONSTANTS OF ANY TYPE CAN GENERATE FALSE LABELS. SUITABLE EDITING OF THE CONSTANT SECTIONS OF THE PROGRAM AND ANY ASC BUFFERS WILL ELIMINATE MANY OF THE FALSE LABELS. IT IS VERY IMPORTANT THAT ANY DEF INSTRUCTIONS BE PROPERLY RECONSTRUCTED PRIOR TO ANY EDITING WHICH WOULD RELOCATE ANY PORTION OF THE PROGRAM. IT IS LEFT TO THE USER TO MAKE FINAL DETERMINATIONS OF ACTUAL CODING, AND TO RESOLVE SUCH DILEMMAS AS NOTED. CERTAIN BIT COMBINATIONS FORM VARIATIONS ON STANDARD MACHINE CODES THAT CAN BE EXECUTED BY THE COMPUTER. EXAMPLE: CLE IS BY THE HP ASSEMBLER CODED TO 000040. HOWEVER THE FOLLOWING CODES WILL ALSO BE EXECUTED AS CLE: 004040, 002100, 006100. SUCH VARIATIONS ON STANDARD MACHINE CODES WILL NOT BE DECODED, SINCE A REASSEMBLY OF THE PSUEDO SOURCE WOULD PRODUCE A DIFFERENT OBJECT CODE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE/DOS ALGOL COMPILER **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: COMPILER ALGOL **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS DOS-M **MEMORY REQUIREMENTS: 15527 WITH EXTERNAL SUBPROGRAMS, 6165 WITHOUT **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE PROVIDES THE USER WITH A MODIFIED HP24129 ALGOL COMPILER. THE MODIFICATION OUTPUTS A MORE READABLE OBJECT CODE LISTING THAN THE UNMODIFIED ALGOL COMPILER. FOR ANY GIVEN OPERATING SYSTEM THE ALGOL COMPILER REQUIRES AT LEAST 8K MORE OF CORE THAN THE MINIMUM FOR THAT SYSTEM. THUS, THE CODE FOR OBJECT LISTING IS MINIMIZED. FOR USERS WITH MORE CORE, THIS VERSION OF THE COMPILER WILL GIVE A PSEUDO-ASSEMBLY LANGUAGE FORMATTED OBJECT CODE LISTING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: SOURCE FILE# 10: SOURCE FILE# 11: SOURCE FILE# 12: SOURCE FILE# 13: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **INPUT/OUTPUT EXAMPLES: A TEST PROGRAM GRAPH IS INCLUDED. NOTE: NO REPRESENTATION IS MADE AS TO THE WORKABILITY OF THE TEST PROGRAM GRAPH. IT IS INCLUDED HERE SOLELY AS A TEST PROGRAM FOR THE OBJECT CODE LISTING ROUTINES OF THE SUBMITTED ALGOL COMPILER. CHANGE THE CONTROL OF GRAPH TO HPAL,A,"GRAPH". COMPILE WITH HP 22443 ALGOL COMPILER AND THE SUPPORTED HP 24129 ALGOL COMPILER. COMPARE LISTINGS. **PROGRAM DESCRIPTION: ANYONE WHO HAS EVER HAD TO OBTAIN AN OBJECT CODE LISTING FROM THE ALGOL COMPILER (EITHER DOS/RTE OR MTS (STANDALONE)) KNOWS WHAT A FRUSTRATING EXPERIENCE IT CAN BE. ALL REQUIRED INFORMATION IS THERE, BUT IT IS VIRTUALLY UNREADABLE UNLESS: 1. THE USER KNOWS THE OCTAL CODES FOR ALL THE REGISTER-REFERENCE AND OTHER ABSOLUTE INSTRUCTIONS, OR DOES NOT MIND LOOKING THEM UP INDIVIDUALLY WHEN ENCOUNTERED. 2. HE CAN EASILY SPOT THE CODE WHICH IS EMITTED OUT-OF-LINE (A NECESSARY FEATURE OF A SINGLE-PASS COMPILER). 3. HE CAN TELL THE DIFFERENCE (FROM CONTEXT) BETWEEN ABSOLUTE INSTRUCTIONS (E.G., REGISTER-REFERENCE) AND DATA WORDS (CONSTANTS, ASCII CHARACTER PAIRS IN FORMAT STRINGS, ETC.). 4. AT A MEMORY-REFERENCE INSTRUCTION, HE DOES NOT MIND TRANSLATING THE GIVEN OCTAL OPERAND ADDRESS INTO THE PARTICULAR SYMBOL BEING REFERENCED AT THE TIME. THE REASON FOR THIS SITUATION IS SIMPLY THE AMOUNT OF CORE AVAILABLE. FOR ANY GIVEN OPERATING SYSTEM, THE ALGOL COMPILER IS SO LARGE THAT IT REQUIRES AT LEAST 8K MORE CORE THAN THE MINIMUM FOR THAT SYSTEM. CORE CANNOT BE SAVED BY SEGMENTING, SINCE THE RECURSIVE ROUTINES (AND THEIR SUPPORTING STACKS) CANNOT BE SWAPPED IN AND OUT DURING COMPILER EXECU- TION. THUS, THE CODE FOR OBJECT LISTING MUST BE MINIMIZED. FOR USERS WITH EXTRA CORE, THIS PACKAGE PROVIDES THE HP 24129 ALGOL COMPILER WITH "A MODIFIED" ROUTINE TO PRINT A MORE READABLE OBJECT CODE LISTING. THIS VERSION OF THE COMPILER PROVIDES A PSEUDO-ASSEMBLY LANGUAGE FORMATTED OBJECT CODE LISTING. ALL REGISTER-REFERENCE MNEUMONICS ARE PRINTED, AS ARE MEMORY-REFERENCE MNEUMONICS. RELOCATABLE ADDRESSES ARE LISTED AS DEF'S. IF THE CONTENTS OF THE OPERAND FIELD OF A MEMORY-REFERENCE OR DEF INSTRUCTION HAVE A SYMBOLIC REFERENCE IN THE SYMBOL TABLE, THAT REFERENCE IS PRINTED IN THE OPERAND FIELD. DOUBLE LOAD/STORE INSTRUCTIONS HAVE "+1" APPENDED TO THE LDB/STB OPERAND (E.G., LDB SYMBOL+1). ALL OPERANDS WHICH HAVE NO SYMBOLIC REFERENCES ARE PRINTED AS OCTAL ADDRESSES. ALL OPERANDS (SYMBOLIC OR NUMERIC) HAVE ",I" APPENDED IF THE INSTRUCTION IS INDIRECT. CERTAIN ASSEMBLE PSEUDO-OPS AID READABILITY OF THE LISTING. OCT IS USED WHEREVER CONSTANTS ARE INSERTED IN THE CODE. THE ORG-ORR PAIR IS USED WHENEVER CODE IS EMITTED OUT OF LINE (A BLANK LINE PRECEDES THE ORG AND FOLLOWS THE ORR). THE BSS IS USED WHEREVER SPACE IS TO BE RESERVED BUT NOT LOADED (THE DOS RELOCATING LOADER CHANGES ALL SUCH LOCATIONS TO NOP). THE OPERAND FIELD OF THE BSS IS THE ONLY FIELD CONTAINING A DECIMAL (INSTEAD OF OCTAL) NUMBER, IN THE OBJECT CODE LISTING. MEMORY-REFERENCE OPERANDS AND DEF OPERANDS WHICH CANNOT BE MATCHED SYMBOLICALLY WILL BE LISTED IN "*+N" FORMAT IF N <=7. THE SWITCH REGISTER OPTION OF MTS ALGOL HAS BEEN RE-INSTATED INTO THIS VERSION OF THE COMPILER. THE ABOVE MODIFICATIONS HAVE BEEN MADE TO THE HP CUPERTINO-SUPPORTED HP 24129 DOS/RTE ALGOL COMPILER. THE COST IN ADDITIONAL CORE IS 555 (DECIMAL) WORDS OF PROGRAM AND (APPROXIMATELY) 20 WORDS OF BASE PAGE LINKS. THE LATTER QUANTITY WILL DEPEND ON THE FIRST WORD OF USER AREA (OR BACKGROUND PARTITION) SPECIFIED AT SYSTEM GENERATION TIME. CONTROL AND SYNTAX REQUIREMENTS OF THIS COMPILER ARE UNCHANGED FROM THAT OF THE HP 24129. THE SOURCE LISTING IS UNCHANGED. THE ALGOL USER'S MANUAL REMAINS APPLICABLE EXCEPT FOR THE ADDITION OF THE ,S OPTION TO DOS/RTE ALGOL. THE OBJECT CODE PRODUCED FOR LOADING AND EXECUTION IS UNCHANGED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ASM1 **PROGRAM TITLE: INTEL 8008 ASSEMBLER FOR THE HP 2100 **REVISION? NO **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: INTEL ASSEMBLER **LANGUAGES: ALGOL **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE DOS-M BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM. 'ASMI', RUNS ON AN HP2100 SERIES COMPUTER AND ASSEMBLES 'INTEL' 8008 MICRO-COMPUTER SOURCE CODE. IT IS A TWO PASS ASSEMBLER WHICH WILL RUN IN A DOS-M, RTE, OR BCS ENVIRONMENT. AN 8K COMPUTER IS REQUIRED FOR BCS, 12K FOR DOS-M. THE INPUT TO 'ASMI' IS A PAPER TAPE SOURCE CONTAINING SYMBOLIC LANGUAGE INSTRUCTIONS. THE OUTPUT IS A LINE PRINTER (OR TELETYPE) LISTING OF THE SYMBOL TABLE, THE CODE GENERATED BY THE ASSEMBLER, AND THE SOURCE CODE. IT WOULD BE EASY TO MODIFY THE PROGRAM TO PUNCH THE OUTPUT CODE IN (INTEL) 'BNPF' FORMAT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: TWO SAMPLE INTEL SOURCE PROGRAMS ARE INCLUDED. **PROGRAM DESCRIPTION: SEE SOURCE LISTING. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: AMWCS **PROGRAM TITLE: RTE MICROASSEMBLER FOR WRITEABLE CONTROL STORE **REVISION? NO **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: MICROCODE ASSEMBLER WCS **LANGUAGES: ALGOL **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 8.5K BACKGROUND **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'AMWCS' IS A WRITEABLE CONTROL STORE, MICROCODE ASSEMBLER WHICH OPERATES UNDER CONTROL OF THE REAL-TIME EXECUTIVE OPERATION SYSTEM. MICROCODE ASSEMBLY SOURCE MAY BE INPUT FROM ANY LOGICAL UNIT NUMBER (PAPER TAPE, CARDS, ETC.), LOGICAL SOURCE (LS) TRACKS OR FROM A FILE MANAGER PACKAGE (FMP) FILE. MICROCODE OUTPUT FROM THE ASSEMBLER MAY BE TO ANY OUTPUT LOGICAL UNIT OR TO AN FMP FILE VIA FMP CALLS. SOURCE LANGUAGE INPUT FORMAT, LIST FORMAT AND MICROCODE OUTPUT FORMAT ARE HP STANDARD AS OUTLINED IN THE HP MICRO-PROGRAMMING MANUALS HARDWARE REQUIREMENTS FOR 'AMWCS' INCLUDE: STANDARD RTE CONFIGURATION WITH A MINIMUM OF 8.5K BACKGROUND. LITERATURE REFERENCE RTE PROGRAMMING AND OPERATING MANUAL #HP 02005-90001 MICROPROGRAMMING SOFTWARE MANUAL #HP 02100-90133 MICROPROGRAMMING GUIDE MANUAL #HP 5951- 3028 DOS MICROPROGRAMMNG SOFTWARE MANUAL #HP 02100-90146 **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES FILE# 5: SOURCES **LOAD INSTRUCTIONS: COMPILE AND ASSEMBLE PROGRAM AND SUPPORTING SUB-ROUTINES. LOAD INTO SYSTEM AS A BACKGROUND DISC-RESIDENT PROGRAM. **RUN INSTRUCTIONS: TO SCHEDULE AMWCS: *ON,AMWCS, A, B, C, D WHERE: A = LOGICAL UNIT OF SOURCE INPUT DEVICE. DEFAULT = 5. 2 = LS TRACKS. B = LOGICAL UNIT OF LIST DEVICE. DEFAULT = 6. C = LOGICAL UNIT OF PUNCH DEVICE. DEFAULT = 4. D = MAXIMUM NUMBER OF LINES/PAGE FOR SOURCE MICROPROGRAM LISTING. DEFAULT = 56. NOTE: IF 100 IS ADDED TO A KYBD/DISPLAY LOGICAL UNIT NUMBER AND SUPPLIED FOR PARAMETERS A AND/OR C, THE MICROASSEMBLER WILL REQUEST A FMP FILE NAME TO BE ENTERED THRU THAT DEVICE. THE FMP FILE(S) WILL THEN BE USED FOR SOURCE AND/OR OBJECT MICROCODE RESPECTIVELY. **INPUT/OUTPUT EXAMPLES: NOT SUPPLIED - SUGGEST USING ANY LAB EXERCISE IN 2100 MICROPROGRAMMING STUDENT'S MANUAL **PROGRAM DESCRIPTION: THE RTE MICROASSEMBLY INCORPORATES ALL OF THE FEATURES OF THE HP DOS MICROASSEMBLER AS OUTLINED IN THE HP MICROPROGRAMMING SOFTWARE MANUAL (HP # 02100-90146). ALL REFERENCES TO FILES IN THE DOS MANUAL ARE CHANGED TO RTE FMP FILES. SOURCE FILES ARE TYPE 0 OR 4. OBJECT MICROCODE FILES ARE TYPE 0 OR 7. THE CONTROL STATEMENT $NAME = XXXXXX, WHERE XXXXXX IS ANY 1 TO 6 SIX CHARACTER NAME, HAS BEEN INCORPORATED TO PERMIT THE PROGRAM NAME TO BE LISTED AT THE TOP OF EACH LISTING PAGE. SPECIAL CONSIDERATIONS AMWCS ASSUMES THE RTE FILE MANAGER PACKAGE OPTION TO BE PRESENT IN THE SYSTEM. THE FMP IS NOT ESSENTIAL TO THE OPERATION OF THE ASSEMBLER AND MAY BE ELIMINATED BY: 1. DELETED ALL STATEMENTS IN THE MAIN PROGRAM THAT REFERENCES FMP ROUTINES. 2. SUPPLY DUMMY ENTRY POINTS FOR ALL HP ROUTINES UTILIZED AND NOT INVOKING FMP FEATURES. 3. FORCE END OF LOAD WITH OUT SATISFYING FMP EXTERNALS AND NOT INVOKING FMP FEATURES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DIAGNOSTIC MESSAGES AND ERROR CODES ARE IDENTICAL TO THOSE CONTAINED IN THE HP MICROPROGRAMMING SOFTWARE MANUAL # 02190-90133 AND THE DOS MICRO- PROGRAMMING SOFTWARE MANUAL # 02100-90146. **MISCELLANEOUS: E00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MACRO **PROGRAM TITLE: RTE MACRO PROCESSOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: MACRO ASSEMBLER **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: MACRO IS A GENERALIZED MACRO PROCESSOR WHICH PROVIDES FACILITIES FOR DEFINING, INVOKING, AND PURGING MACRO-DEFINITIONS. IT MAY BE USED TO EXTEND EXISTING PROGRAMMING LANGUAGES BY ADDING MACRO STATEMENTS, OR TO TRANSLATE SIMILIAR LANGUAGES. HARDWARE REQUIREMENTS: 2100 SERIES WITH 64K, A CONSOLE, I/O DEVICES, AND DISC. RTE-II/III WITH FMP. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: MACRO SOURCE FILE# 3: LBBLD SOURCE FILE# 4: TEST SOURCE FILE# 5: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FOR DETAILS. 1) COMPILE, LOAD, AND RUN LBBLD TO CONSTRUCT MACRO LIBRARY (MACLIB). 2) COMPILE AND LOAD MACRO. **RUN INSTRUCTIONS: AFTER PREPARING SOURCE INPUT AS DESCRIBED IN EXTENDED DOCUMENTATION, RUN MACRO WITH THE COMMAND; RU,MACRO,LSU,LOU,LLU LSU = LOGICAL UNIT NUMBER OF THE SOURCE INPUT DEVICE (DEFAULT IS 1) LOU = LOGICAL UNIT NUMBER OF THE SOURCE OUTPUT DEVICE (DEFAULT IS 6) LLU = LOGICAL UNIT NUMBER OF THE LOG DEVICE (DEFAULT IS 1) **INPUT/OUTPUT EXAMPLES: A TEST SOURCE IS PROVIDED WITH MACRO. THE EXPECTED OUTPUT AND LOG CONTENTS ARE SHOWN IN THE EXTENDED DOCUMENTATION. THE APPEARANCE OF THE OUTPUT MAY VARY SLIGHTLY DEPENDING ON THE TYPE OF PRINTER OR TERMIN- AL TO WHICH OUTPUT IS DUMPED. **PROGRAM DESCRIPTION: DUE TO SPACE LIMITATIONS, MACRO IS DESIGNED TO PERFORM I/O ON DEVICES ONLY (WITH THE EXCEPTION OF THE LIBRARY). THE CODE COULD EASILY BE MODIFIED, HOWEVER, TO MAKE FMGR READ AND WRITE CALLS, AND ALLOW DIRECT PROCESSING OF FILES. AN ALTERNATE METHOD OF ACCESSING FILES IS TO ASSIGN THEM LOGICAL UNIT NUMBERS VIA A BATCH-SPOOL MONITOR (IF IT IS AVAILABLE) LITERATURE REFERENCE: AHO, ALFRED V. AND CORASICK, MARGARET J., "EFFICIENCY STRING MATCHING: AN AID TO BIBLIOGRAPHIC SEARCH," COMMUNICATIONS OF THE ACM, VOL 18, #6. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: NUMERIC ERROR MESSAGES ARE PROVIDED BY MACRO TO INDICATE INVALID INPUT OR FILE MANAGER ERRORS. A COMPLETE TABLE OF ERROR MESSAGES IS GIVEN IN APPENDIX A OF THE MACRO MANUAL. **MISCELLANEOUS: E00601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MINV **PROGRAM TITLE: INVERSE ASSEMBLER FOR 2100 MICROCODE **REVISION? NO **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: ASSEMBLER MICROCODE INVERSE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'MINV' IS AN INVERSE ASSEMBLER FOR 2100 MICROCODE. IT WILL PRODUCE A LISTING FROM A BINARY TAPE GENERATED BY THE MICRO ASSEMBLER. 'MINV' WILL ALSO PRODUCE SOURCE CODE THAT CAN BE DIRECTLY INCORPORATED IN ASSEMBLY LANGUAGE PROGRAMS. IT GENERATES 'OCT' STATEMENTS WITH THE PROPER MICRO INSTRUCTION CODES AND PUTS THE CORRESPONDING INVERSE ASSEMBLY IN THE COMMENTS FIELD. THIS CAN BE PUT INTO A PROGRAM SO THAT THE PROGRAM CAN WRITE IT TO WCS, MAKING THE PROGRAM MORE SELF CONTAINED. 'MINV' MAKES EXEC CALLS TO THE OPERATING SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: MINV SOURCE **LOAD INSTRUCTIONS: ASSEMBLE AND LOAD. NO SUBROUTINES OTHER THAN SYSTEM LIBRARY ARE REQUIRED. **RUN INSTRUCTIONS: :ON,MINV,I,O,F WHERE I = INPUT UNIT. (DEFAULT = 5). CANNOT BE A DISC FILE. O = OUTPUT UNIT. (DEFAULT = 6). CANNOT BE A DISC FILE. F = FLAG. 0 TO INVERSE ASSEMBLE. NON - 0 TO GENERATE PROGRAM CODE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: MICROCODE BINARY FORMAT DOES NOT HAVE A 4 FRAME INTER-RECORD GAP LIKE STANDARD VARIABLE LENGTH BINARY FORMAT. THEREFORE, IF THE PHOTOREADER BRAKE IS WEAK OR THE TAPE IS SLIPPERY, THE READER WILL STOP THE TAPE PART WAY INTO THE NEXT FRAME. THIS WILL CAUSE A CHECKSUM ERROR ON THE NEXT BLOCK OF CODE. USE CLEAN TAPE AND HAVE THE BRAKES CHECKED EVERY 12000 MILES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: A CHECKSUM ERROR WILL CAUSE MINV TO PAUSE. EXECUTION CONTINUES WITH A GO,MINV COMMAND. **MISCELLANEOUS: E00701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: M8080 **PROGRAM TITLE: INTEL 8080 ABSOLUTE PROGRAM ASSEMBLER **REVISION? NO **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: ASSEMBLER INTEL ABSOLUTE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: M8080 ASSEMBLES ABSOLUTE PROGRAMS WRITTEN IN THE ASSEMBLY LANGUAGE DESCRIBED IN THE "INTEL 8080 ASSEMBLY LANGUAGE PROGRAMMING MANUAL," WITH THE FOLLOWING EXCEPTIONS: 1) MACROS ARE NOT SUPPORTED, BECAUSE MORE POWERFUL MACRO FACILITIES ARE ALREADY AVAILABLE. 2) ONLY THE OPERANDS + AND - ARE ALLOWED WITHIN EXPRESSIONS. (OTHERS SEEMED UNNECESSARY.) 3) STATEMENT LABELS ARE LIMITED TO 5 CHARACTERS. HARDWARE REQUIREMENTS: RTE SYSTEM WITH A MINIMUM OF 32K AND A PAPER- TAPE PUNCH (OR OTHER MICRO-PROCESSOR SUPPORTED MEDIA). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: M8080 SOURCE FILE# 3: TEST INPUT **LOAD INSTRUCTIONS: 1. COMPILE THE SOURCE PROGRAM M8080, USING FTN4. 2. LOAD THE RESULTING RELOCATABLE PROGRAM, USING LOADR. **RUN INSTRUCTIONS: TO RUN M8080, ENTER: *RU,M8080,AB,CD,EF,LLU,PLU WHERE: "ABCDEF" IS THE NAME OF THE INTEL 8080 SOURCE FILE, "LLU" IS THE LOGICAL UNIT NUMBER OF A LIST DEVICE, AND, "PLU" IS THE LOGICAL UNIT NUMBER OF A PUNCH (BINARY OUTPUT) DEVICE. **INPUT/OUTPUT EXAMPLES: M8080 MAY BE TESTED TO VERIFY CORRECT LOADING BY STORING THE TEST DATA INTO A DISC FILE, AND RUNNING M8080 USING THE FILE AS SOURCE INPUT. **PROGRAM DESCRIPTION: LITERATURE REFERENCE INTEL 8080 ASSEMBLY LANGUAGE PROGRAMMING MANUAL, INTEL PART NUMBER 98-004C REV C. SPECIAL CONSIDERATIONS M8080'S SYMBOL TABLE SPACE IS LIMITED TO 200 SYMBOLS, 10 OF WHICH ARE PRE-DEFINED BY THE ASSEMBLER. THIS SPACE MAY BE EXPANDED BY CHANGING THE FIRST DIMENSION OF THE ARRAY ISMTAB IN LINES 83, 839, AND 908, AND CHANGING THE VALUE OF ISMLIM IN LINE 148 TO MATCH THE NEW DIMENSION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: INVALID SOURCE STATEMENTS AND EXPRESSIONS IN THE USER'S PROGRAMS WILL BE FLAGGED WITH SELF-EXPLANATORY ERROR MESSAGES, KEYED TO LINE NUMBERS IN THE USER'S PROGRAM. **MISCELLANEOUS: E00801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: COMP **PROGRAM TITLE: COMPILING FROM A FILE WITHOUT LS AND LG AREAS **REVISION? NO **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: COMPILER **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'COMP' PERMITS COMPILING FROM A FILE, BYPASSING THE LS AND LG AREAS. THE LISTING AND THE RELOCATABLE ELEMENT ARE DIRECTED TO OUTPUT FILES OR TO LOGICAL UNITS. 'COMP' REQUIRES ANOTHER PROGRAM FROM THE CONTRIBUTED LIBRARY, "USER SPOOL POOL ACCESS OR SPOOLING MADE EASIER". COMP USES EXEC CALLS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: COMP SOURCE FILE# 3: DATE SOURCE **LOAD INSTRUCTIONS: 1)THE COMP PROGRAM IS COMPILED IN THE USUAL MANNER USING THE FORTRAN IV COMPILER. TO LOAD, COMP REQUIRES SUBROUTINE GETST FROM THE CURRENT RTE LIBRARY, NAMR FROM THE CURRENT RELOCATABLE LIBRARY, AND SFILL, SMOVE, SGET, AND JSCOM FROM THE DECIMAL STRING ARITHMETIC LIBRARY. SOME OLDER SYSTEMS MAY NOT INCLUDE THESE. IT ALSO REQUIRES SUBROUTINES SPOLU AND IFMGR FROM THE LOCUS CONTRIBUTION "USER SPOOL POOL ACCESS OR SPOOLING MADE EASIER" (OLD PART 22682-28931). 2)PROGRAM DATE IS USED BY COMP TO PRINT THE CURRENT DATE AND TIME (FR0M THE SYSTEM CLOCK) AT THE START OF THE COMPILER LISTINGS. IT MUST BE KNOWN TO THE SYSTEM (RP'ED) FOR COMP TO WORK. IT IS STARTED BY THE EXEC CALL ON LINE 132 OF THE COMP SOURCE CODE. ANOTHER CALL OR CONTINUE MAY BE SUBSTITUTED HERE TO ELIMINATE THE NEED FOR DATE. 3)PROGRAM SPLUM FROM "USER SPOOL POOL ACCESS OR SPOOLING MADE EASIER" IS USED BY COMP. IT MUST ALSO BE KNOWN TO THE SYSTEM FOR COMP TO WORK PROPERLY. 4)THE SYSTEM OUTSPOOL LOGICAL UNITS ARE IDENTIFIED TO COMP BY ARRAY OSLST IN SUBROUTINE ASG. THE DATA STATEMENT ON LINE 208 OF THE COMP SOURCE CODE LISTS THE OUTSPOOL LOGICAL UNITS. THE FIRST NUMBER IN THE ARRAY IS THE NUMBER OF OUTSPOOL LOGICAL UNITS; SUCCEEDING NUMBERS ARE THE LOGICAL UNIT NUMBERS. OUTSPOOL LU'S 6 AND 8 ARE SPECIFIED IN THE SUPPLIED CODE. THESE SHOULD BE CHANGED TO THE APPROPRIATE NUMBERS FOR YOUR SYSTEM. 5)THE SUPPLIED CODE PRODUCES LISTINGS WITH 50 LINES PER PAGE. THIS CAN BE CHANGED BY CHANGING THE SIXTH PARAMETER IN THE EXEC CALL THAT STARTS THE COMPILER (LINE 133 IN THE COMP SOURCE CODE). 6)COMP USES THE FORTRAN ASSIGN STATEMENT AND FORMAT STATEMENTS TO INITIALIZE CERTAIN ASCII STRINGS. THIS IS A NON-STANDARD USE OF FTN. WHILE IT WORKS WELL WITH H-P FORTRAN IV (PART 24177-60001 REV. 1442), IT CANNOT BE GUARANTEED WHEN USING OTHER FORTRAN COMPILERS. **RUN INSTRUCTIONS: 1.COMP REQUIRES THE USER TO SUPPLY PARAMETERS DESIGNATING THE LANGUAGE PROCESSOR TO BE USED AND THE SOURCE, RELOCATABLE, AND LIST FILES OR LU'S. THESE CAN BE SUPPLIED AS A PARAMETER STRING IN THE :RUN STATEMENT OR AS RESPONSES TO PROMPTS FROM THE PROGRAM. 2)THE GENERAL FORM FOR THE :RUN STATEMENT TO START COMP IS: :RU,COMP[,TERMINAL,PROCESSOR,SOURCE[,RELOCATABLE [,LIST]]] IF THE PROCESSOR PARAMETER IS OMITTED, COMP PROMPTS FOR ALL ENTRIES. THE TERMINAL PARAMETER DEFAULTS TO THE USER'S TERMINAL. THE SOURCE, RELOCATABLE, AND LIST PARAMETERS CAN BE EITHER FMGR FILES OR LU'S. IF A FILE SPECIFIED FOR THE RELOCATABLE OR LIST PARAMETER DOES NOT EXIST, IT WILL BE CREATED, IF POSSIBLE. 3)THE CHARACTER "-" CAN BE USED FOR THE RELOCATABLE AND THE LIST PARAMETERS. WHEN USED FOR THE RELOCATABLE PARAMETER, THE PROGRAM SUBSTITUTES "%" FOR THE FIRST CHARACTER IN THE SOURCE FILE NAMR AND USES THE RESULT AS THE NAMR FOR THE RELOCATABLE FILE. THE ACTION IS SIMILAR WHEN USED AS THE LIST PARAMETER, BUT CHARACTER "'" IS USED TO FORM THE LIST FILE NAMR. 4)THE CHARACTER "/" CAN BE USED FOR THE SOURCE, RELOCATABLE, OR LIST PARAMETER, BUT ONLY FOR ONE AT A TIME. IT MEANS THE TERMINAL IS USED FOR THE PARAMETER. 5)WHEN THE PROGRAM IS PROMPTING FOR INPUT, RESPONDING TO A PROMPT WITH TWO EXCLAMATION POINTS (!!) WILL CAUSE THE PROGRAM TO ABORT. 6)IF THE RELOCATABLE PARAMETER IS NULL, NO RELOCATABLE ELEMENT IS PRODUCED. IF THE LIST PARAMETER IS OMITTED, NO LISTING IS PRODUCED. THIS FEATURE DEPENDS ON AN UNDEFINED LU EXISTING IN THE SYSTEM. IF AN UNDEFINED LOGICAL UNIT CANNOT BE FOUND, LU 1 IS USED FOR THE PARAMETER. 7)WHEN THE RELOCATABLE OR LIST PARAMETER IS AN LU NUMBER, OUTPUT IS SPOOLED TO THE LU IF AN OUTSPOOL LU IS SPECIFIED. TO AVOID THE SPOOLING, THE USER CAN SPECIFY THE NEGATIVE OF THE LU NUMBER. 8)WHEN A FILE IS SPECIFIED FOR THE LIST PARAMETER, THE OUTPUT TO THE FILE WILL BE IN SPOOL FORMAT. 9)WHEN THE PROG CREATES A FILE, IT USES 24 BLOCKS FOR THE LENGTH. WHEN OUTPUT IS COMPLETE, THE PROG CHECKS THE ACTUAL LENGTH OF THE CREATED FILES. IF ANY EXTENTS WERE CREATED FOR A FILE, NO ACTION IS TAKEN. OTHERWISE THE CREATED FILE IS TRUNCATED TO THE LENGTH OF THE DATA IT CONTAINS. 10)IF THE PROGRAM ABORTS THROUGH ITS INTERNAL ERROR HANDLING MECHANISM, ALL FILES WILL BE CLOSED AND CREATED FILES WILL BE PURGED. IF THE PROGRAM IS ABORTED BY SOME OTHER MEANS, THESE ACTIONS MAY NOT HAPPEN. IN PARTICULAR, CREATED FILES WILL NO BE PURGED AND SPOOL FILES MAY BE LEFT OPEN. GASP CAN BE USED TO CHECK THE SPOOL FILES. 11)EXAMPLE OF A ONE LINE INITIATION FOR COMP: :RU,COMP,,FTN4,&SOURCE:SC:12,-,/ THIS CALLS THE FORTRAN COMPILER TO COMPILE THE SOURCE PROGRAM &SOURCE WITH SECURITY CODE SC ON CARTRIDGE 12. THE RELOCATABLE ELEMENT WILL BE ON FILE %SOURCE:SC:12. THIS FILE WILL BE CREATED IF IT DOES NOT ALREADY EXIST. THE LISTING WILL GO TO THE USER'S TERMINAL. 12)ANY STANDARD LANGUAGE PROCESSOR (FTN4,ALGOL,ASMB) CAN BE CALLED USING THIS PROGRAM. **INPUT/OUTPUT EXAMPLES: ANY SOURCE PROGRAM CAN BE USED TO TEST COMP. TESTS SHOULD INCLUDE ALL APPLICABLE FEATURES AND ERROR MODES. **PROGRAM DESCRIPTION: 1.THE PROGRAM REQUIRES A 5 PAGE PARTITION. 2.THE PROGRAM DATE AND THE LANGUAGE PROCESSOR ARE SCHEDULED WITH WAIT IN QUEUE. THEREFORE, MULTIPLE COPIES OF COMP CAN BE USED. 3.COMP USES THE "PUNCH" PARAMETER OF THE LANG. PROCESSOR TO OUTPUT THE RELOCATABLE ELEMENT. THE "B" OPTION MUST BE SPECIFIED IN THE CONTROL LINE FOR ANY SOURCE PROGRAM TO BE COMPILED OR ASSEMBLED USING COMP. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE PROGRAM WILL ABORT IF: 1.THE PARAMETERS ARE INCORRECT. 2.A FILE CANNOT BE OPENED. 3.THE USER RESPONDS TO A PROMPT WITH "!!". THE MESSAGE "ABEND COMP ABORTED" WILL BE DISPLAYED ON THE TERMINAL IN THESE CASES. A FILE ERROR WILL CAUSE A FMGR ERROR TO BE DISPLAYED. A FMGR ERROR THAT OCCURS WHEN THE PROGRAM IS CHECKING OR TRIMMING THE LENGTH OF A CREATED FILE WILL NOT CAUSE THE PROGRAM TO ABORT. **MISCELLANEOUS: E00901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: F8 **PROGRAM TITLE: FAIRCHILD F-8 ASSEMBLER FOR THE HP2100-21MX **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: ASSEMBLER FAIRCHILD **LANGUAGES: ALGOL **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE BCS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM, F8, RUNS ON AN HP 2100, 21MX SERIES COMPUTER AND ASSEMBLES FAIRCHILD F-8 MICROPROCESSOR SOURCE CODE. IT IS TWO-PASS ASSEMBLER WHICH WILL RUN IN A DOS,RTE OR BCS ENVIRONMENT. AN 8K COMPUTER IS REQUIRED FOR BCS,16K FOR DOS. THE INPUT TO F8 IS A PAPER TAPE SOURCE CONTAINING SYMBOLIC LANGUAGE INSTRUCTIONS. THE OUTPUT IS A LINE PRINTER (OR TTY) LISTING OF THE SYMBOL TABLE THE CODE GENERATED BY THE ASSEMBLER, AND THE SOURCE CODE. THE TAPE PUNCH OUTPUT (FORMATTED OUTPUT) IS READY FOR FAIR-BUG LOADER. IT IS A MODIFIED VERSION OF PREVIOUSLY CONTRIBUTED ASSEMBLER OF THE INTEL 8080 MICROPROCESSOR. FOR FULL DETAILS SEE SOURCE LISTING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: F8 SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: TO USE F8, LOAD THE PAPER TAPE CONTAINING THE SOURCE CODE, AND THEN RUN F8 (METHOD DEPEND ON OPERATING SYSTEM). AFTER THE END STATEMENT IS REACHED, THE PROGRAM WILL PAUSE. REWIND THE TAPE RELOAD, AND RESTART THE ASSEMBLER FOR PASS TWO. THE PROGRAM PRODUCES LISTINGS AND PUNCHES BINARY TAPES. LU 5 = SOURCE CODE INPUT LU 6 = LISTING OUTPUT LU 4 = PUNCH OUTPUT **INPUT/OUTPUT EXAMPLES: FILE 2 CONTAINS THE SOURCE OF EXAMPLE FAIRCHILD PROGRAMS. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ASSEMBLER ERRORS AND DIAGNOSTICS ARE OUTPUT ON LINE PRINTER (OR TTY). **MISCELLANEOUS: A GUIDE TO PROGRAMMING THE FAIRCHILD F-8 MICROCOMPUTER. FAIRCHILD SEMICONDUCTOR (1975). (LITERATURE REFERENCE) E01001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PASCS **PROGRAM TITLE: PASCAL-S COMPILER AND RUN-TIME LIBRARY **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: PASCAL COMPILER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: A PARTITION OF AT LEAST 12 PAGES. **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PASCS TRANSLATES SOURCE PROGRAMS WRITTEN IN PASCAL-S (A SUBSET OF THE PROGRAMMING LANGUAGE PASCAL) INTO RELOCATABLE BINARY CODE. THIS CODE MUST THEN BE LOADED ALONG WITH A RUN-TIME LIBRARY OF SUBROUTINES (ALSO PROVIDED WITH THE SYSTEM), WHICH PROVIDES SUPPORT FOR THE EXECUTION. IT IS POSSIBLE TO DECLARE, IN THE PASCAL SOURCE PROGRAMS, THAT SOME ROUTINES (PROCEDURES OR FUNCTIONS) ARE EXTERNAL (WRITTEN SEPERATELY, E.G. IN FORTRAN). THEY ARE LINKED TO THE CODE BY THE RELOCATING LOADER. A FULL INSTALLATION AND USER MANUAL IS PROVIDED ALONG WITH THE SYSTEM, IN MACHINE-READABLE FORM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: PASCS - PASCAL COMPILER FILE# 3: PARUN - RUN-TIME LIBRARY FILE# 4: WRITEUP - INSTALLATION AND USER'S MANUAL **LOAD INSTRUCTIONS: THE FILE WRITEUP SHOULD FIRST BE LISTED. IT CONTAINS A FULL MANUAL FOR INSTALLATION AND FOR THE USE OF THE COMPILER. IF LOGICAL UNIT 6 IS A LINE-PRINTER, ONE SHOULD USE THE COMMAND :ST,WRITEUP,6, TO OBTAIN A PROPERLY PAGINATED TEXT. ASSEMBLE, LOAD AND SAVE PACCC (THIS PRODUCES THE ABSOLUTE PROGRAM PASCS). ASSEMBLE PADDD, AND SAVE THE RESULTING RELOCATABLE CODE IN A FILE PARUN. CREATE A BINARY FILE PASBIN, WHERE THE COMPILER WILL STORE THE RELOCATABLE CODE IT WILL PRODUCE. REFER TO THE WRITEUP MANUAL FOR ALL DETAILS ABOUT COMPILING, LOADING AND RUNNING PASCAL SOURCE PROGRAMS. **RUN INSTRUCTIONS: REFER TO REFERENCE MANUAL. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE REFERENCE MANUAL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E01101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: SPL/2100 COMPILER **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: SPL COMPILER **LANGUAGES: ASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: PARTITION OF 15 PAGES. **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: SYSTEM PROGRAMMING LANGUAGE (SPL) IS A HIGH-LEVEL LANGUAGE FOR WRITING PROGRAMS SUCH AS COMPILERS, DEVICE DRIVERS AND OPERATING SYSTEMS. SPL/2100 IS THE VERSION DESIGNED FOR USE WITH THE 21MX SERIES OF COMPUTERS. THE SPL/2100 COMPILER CAN BE USED WITH AN RTE2,3,4 SYSTEM. A PROGRAM SIZE OF 15 PAGES SHOULD BE SPECIFIED WHEN THE COMPILER IS LOADED. THE COMPILER TRANSLATES PROGRAMS WRITTEN IN SPL/2100 TO HP ASSEMBLY LANGUAGE. THE SPL PROGRAM IS INPUT FROM THE LS AREA AND THE RESULTING ASSEMBLY LANGUAGE PROGRAM IS OUTPUT BACK TO THE LS AREA. THE COMPILER THEN SCHEDULES THE HP ASSEMBLER TO PROCESS THE ASSEMBLY LANGUAGE PROGRAM AND GENERATE THE OBJECT CODE. SINCE THE RTE4 ASSEMBLER DOES NOT ACCEPT SOURCE PROGRAMS FROM THE LS AREA, THE USER MUST FIRST SAVE THE LS AREA AS A DISC FILE AND THEN SCHEDULE THE ASSEMBLER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: TRANSFER FILE FILE# 3: RELOCATABLE OF SPL/2100 COMPILER FILE# 4: EXAMPLE SPL SOURCE PROGRAM **LOAD INSTRUCTIONS: LOADING THE SPL/2100 COMPILER. ============================== USE THE FOLLOWING TO LOAD THE SPL/2100 COMPILER: IN A RTE2/3 SYSTEM: ------------------- :LG,16 :MR,MAG TAPE LU :RU,LOADR,99,LIST LU,... (SPECIFY A 15 PAGE PARTITION AND SEGMENTED PROGRAMS IN A RTE4 SYSTEM: ----------------- :ST,MAG TAPE LU,%SPL:SC:CRN:5:750,BR :RU,LOADR LOADR: S2,15 LOADR: RE,%SPL LOADR: EN THE SPL COMPILER HAS 10 SEGMENTS, SG01C TO SG10C. **RUN INSTRUCTIONS: COMPILING A SPL PROGRAM. ======================== SUPPOSE THE FMGR FILE "SOURCE" CONTAINS A SPL PROGRAM. USE THE FOLLOWING TO COMPILE THIS PROGRAM AND STORE THE RELOCATABLE BINARY IN A FMGR FILE CALLED "OBJECT". IN A RTE2/3 SYSTEM: ------------------- :LG,N N SHOULD BE SUFFICIENT TRACKS FOR THE PROGRAM :MS,SOURCE :RU,SPL,2,LIST LU,99 THE SPL COMPILER 1. ACCEPTS THE SOURCE PROGRAM IN THE LS AREA, 2. TRANSLATES IT TO ASSEMBLY LANGUAGE, 3. STORES THE ASSEMBLY VERSION BACK IN THE LS AREA, 4. SCHEDULES THE ASSEMBLER TO PRODUCE THE OBJECT CODE. :SA,LG,OBJECT THE OBJECT CODE NOW RESIDES IN THE FILE "OBJECT". IN A RTE4 SYSTEM: ----------------- :MS,SOURCE :RU,SPL,2,LIST LU,99 THE SPL COMPILER 1. ACCEPTS THE SOURCE PROGRAM IN THE LS AREA, 2. TRANSLATES IT TO ASSEMBLY LANGUAGE, 3. STORES THE ASSEMBLY VERSION BACK IN THE LS AREA, 4. SCHEDULES THE ASSEMBLER TO PRODUCE THE OBJECT CODE. HOWEVER, SINCE THE RTE4 ASSEMBLER DOES NOT USE THE LS/LG AREA THE ASSEMBLER DOES NOT RECOGNIZE THE PROGRAM CREATED BY THE SPL COMPILER. THE ASSEMBLER ABORTS WITH A "NO INPUT SOURCE FILE" ERROR. ASMB: $END NPRG ASMB: $END THE SOLUTION IS FOR THE USER TO SAVE THE LS AREA AS A FMGR FILE AND THEN RUN THE ASSEMBLER WITH THIS FILE AS THE INPUT SOURCE FILE. SUPPOSE THIS FILE IS CALLED "ASMB-SOURCE". :SA,LS,ASMB-SOURCE :RU,ASMB,ASMB-SOURCE,LIST LU,OBJECT THE OBJECT CODE NOW RESIDES IN THE FILE "OBJECT" AND CAN BE LOADED. **INPUT/OUTPUT EXAMPLES: A SAMPLE SPL SOURCE PROGRAM IS INCLUDED. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ADDITIONAL CONSIDERATIONS. ---------- SINCE THE ASSEMBLER IS SCHEDULED BY THE SPL COMPILER, THE ASSEMBLER'S MAIN AND ALL OF ITS SEGMENTS MUST HAVE ID SEGMENTS(I.E. MUST HAVE BEEN RP'D) WHEN THE SPL COMPILER IS RUN. IN ADDITION, IF A CROSS REFERENCE LISTING IS DESIRED, THE CROSS REFERENCE PROGRAM (XREF) MUST ALSO HAVE BEEN RP'D. FOR EXAMPLE, IF THE ASSEMBLER'S MAIN PROGRAM DOES NOT HAVE AN ID SEGMENT, THE USER WILL SEE THIS MESSAGE AT HIS TERMINAL WHEN HE RUNS SPL: ABEND SPL ABORTED THE SYSTEM CONSOLE WILL SOON SHOW THIS MESSAGE: SPL: ASMB SCHEDULED SC05 SPL XXXXX SPL ABORTED **MISCELLANEOUS: E01201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UNBLK **PROGRAM TITLE: DEC RT-11 TO HP RTE SOURCE CONVERTER **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: DEC CONVERSION TRANSLATOR **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM CONVERTS DIGITAL EQUIPMENT CORP. (DEC) RT-11 SOURCE FILES ON MAGNETIC OR PAPER TAPE INTO HP RTE DISC FILES. THE ORIGINAL SOURCE CAN BE FORTRAN, RT11 ASSEMBLER, TEXT, DATA, OR RESULTS. THE PROGRAM CONVERTS CARRIAGE RETURNS, LINE FEEDS, TABS, NULLS, AND APOSTROPHES INTO ACCEPTABLE RTE SYNTAX. HOWEVER, THERE ARE OTHER RT-11 PECULIARS THAT THE PROGRAM CANNOT RESOLVE INTO ACCEPTABLE RTE FORMAT. THEREFORE, THE USER MUST FURTHER MODIFY THE RESULTING DISC FILE AS REQUIRED. HOWEVER, MUCH TIME IS SAVED BY AUTOMATICALLY CONVERTING MOST OF THE SOURCE FIRST WITH THIS PROGRAM. THIS CONVERSION ALSO INCLUDES SUGGESTION OF AN APPROPRIATE RTE DISC FILE NAME BASED ON THE RTE-11 FILE NAME AND EXTENSION (TYPE). FOR FORTRAN FILES, THE CONTROL STATEMENTS FTN4, L,C AND END$ ARE PLACED AT THE BEGINNING AND END OF THE FILE RESPECTIVELY. LITERATURE REFERENCE: RT-11 SOFTWARE SUPPORT MANUAL DEC-11-ORGPA-B-D, DNI FOR MAGNETIC TAPE FILE STRUCTURE PP. 3-11, 3-12. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: UNBLK SOURCE **LOAD INSTRUCTIONS: :ST,5,&UNBLK :RU,FTN4,&UNBLK,1,%UNBLK :LG :LG, 3 :MR,%UNBLK :RU,LOADR,99,1,,,3 **RUN INSTRUCTIONS: :RU,UNBLK,A,B,C,D,E WHERE A - TERMINAL LU NUMBER (1 IS DEFAULT) B - LIST DEVICE LU NUMBER (6 IS DEFAULT) C - DISC CARTRIDGE NUMBER (2 IS DEFAULT) D - INPUT DEVICE LU NUMBER (POSITIVE FOR MAG TAPE, NEGATIVE FOR PAPER TAPE, 8 IS DEFAULT) :RU,UNBLK,A,B,C,D,E WHERE E - PROGRAM CONTROL PARAMETER 0 FOR DISC FILE NAMING REQUESTS (DEFAULT), 1 FOR NO NAMING REQUESTS. CONVERTS ENTIRE MAG TAPE WITHOUT INTERRUPTION (SAME EFFECT AS 0 WITH PAPER TAPE). INTERRUPTION IS POSSIBLE WITH THE FOLLOWING COMMAND: *BR, UNBLK 2 FOR FILE NAMING REQUESTS WITH SPECIAL DEBUGGING OUTPUT. SCATTERED THROUGHOUT THE PROGRAM ARE WRITE STATEMENTS THAT OUTPUT THE VALUES OF VARIOUS VARIABLES AT CERTAIN KEY LOCATIONS. *DIGITS 2,7,9, AND 13 WERE DESIRED,THE CORRESPONDING OCTAL DEBUG CODE WOULD BE: BIT LOCATION 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 BINARY NUMBER 0 0 1 0 0 0 1 0 1 0 0 0 0 1 0 OCTAL NUMBER 1 0 5 0 2 AS THE PROG RUNS, SEVERAL QUESTIONS MUST BE ANSWERED FROM THE TERMINAL. THESE INCLUDE SELF-EXPLANATORY REQUESTS FOR THE OCTAL DEBUG CODE IF E=2, WHICH TAPE FILES ARE TO BE TRANSFERRED IF E IS NOT EQUAL TO 1, AND HOW THE DISC FILES SHOULD BE NAMED IF E IS NOT EQUAL TO 1. * DURING "NORMAL" RUNS WHEN PROG DEBUGGING IS NOT NEEDED (E IS NOT EQUAL TO 2), THESE WRITE STATEMENTS ARE TRANSPARENT(INACTIVE). WHEN DUBUGGING IS NEEDED (E=2), ANY SINGLE OR COMBINATION OF DEBUGGING WRITE'S CAN BE ACTIVATED BY INPUT OF THE CORRESPONDING DEBUG CODE IN OCTAL. THERE IS A 1 TO 1 CORRESPONDENCE BETWEEN EACH DEBUGGING WRITE AND THE BITS OF THE OCTAL NUMBER. THEREFORE, IN A 5 DIGIT OCTAL NUMBER, THERE ARE 15 BINARY DIGITS AND UP TO 15 DIFFERENT WRITE STATEMENTS THAT CAN BE ASSOCIATED WITH AND SELECTED FROM THAT 15 DIGIT NUMBER. **INPUT/OUTPUT EXAMPLES: EXAMPLE INPUT/OUTPUT (TEST CASE) IT IS NOT POSSIBLE TO INCLUDE A SAMPLE DEC SOURCE FOR TEST PURPOSES DUE TO PROPRIETARY AND COPYRIGHT RESTRAINTS. FOR DEMO PURPOSES, ASSUME THE USER HAS A MAG AND A PAPER TAPE, EACH WITH THE FOLLOWING FILES NAME1 .FOR (FORTRAN) NAME2 .FOR (FORTRAN) NAME3 .MAC (ASSEMBLER) NAME4 .MAC (ASSEMBLER) NAME5 .TXT (TEXT) NAME6 .DAT (DATA) NAME7 .RES (RESULTS) NAMER8.FOR (FORTRAN) WHILE RTE USES A SPECIAL CHARACTER INDICATING FILE TYPE AND 5 FOLLOWING ALPHANUMERICS, RT-11 USES SIX ALPHANUMERICS FOR THE NAME AND THREE ALPHANUMERICS FOR THE TYPE. **PROGRAM DESCRIPTION: LITERATURE REFERENCE RTE11 SOFTWARE SUPPORT MANUAL DEC-11-ORPGA-B-D, DNI FOR MAG TAPE FILE STRUCTURE, PP. 3-11, 3-12. SPECIAL CONSIDERATIONS WITH PAPER TAPE, THE USER SHOULD NOT REQUEST FURTHER CONVERSION AT THE EOT OR A "RUN AWAY" CONDITION WILL OCCUR (THE PROGRAM AUTOMATICALLY REWINDS THE MAG TAPE WHEN THE LOGICAL END-OF-TAPE IS ENCOUNTERED.) "BSM ERR-11" AFTER A *BR, UNBLK COMMAND INDICATES THAT THE MAG OR PAPER TAPE IS NOT POSITIONED CORRECTLY. REPOSITION THE TAPE AT THE START AND RERUN THE PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DIAGNOSTIC MESSAGES/ADDITIONAL EXITS THE PROG HAS EXTENSIVE ERROR CHECKING. ANY DETECTED ANOMALY RESULTS IN A "BSM ERROR - XXX" ON THE TERMINAL. THE "-XXX". NUMBER COMES FROM THE STANDARD HP2100 RTE/FMGR ERROR CODES. **MISCELLANEOUS: E01301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CAMP **PROGRAM TITLE: MOTOROLA M6800 ASSEMBLER FOR THE 2100/21MX **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: ASSEMBLER MOTOROLA **LANGUAGES: ALGOL **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE BCS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM, CAMP, RUNS ON AN HP 2100, 21MX SERIES COMPUTER AND ASSEMBLES MOTOROLA M-6800 MICROPROCESSOR SOURCE CODE. IT IS TWO-PASS ASSEMBLER WHICH WILL RUN IN A DOSM,RTE OR BCS ENVIRONMENT. AN 8K COMPUTER IS REQUIRED FOR BCS, 16K FOR DOS. THE INPUT TO CAMP IS A PAPER TAPE SOURCE CONTAINING SYMBOLIC LANGUAGE INSTRUCTIONS. THE OUTPUT IS A LINE PRINTER (OR TTY) LISTING OF THE SYMBOL TABLE THE CODE GENERATED BY THE ASSEMBLER, AND THE SOURCE CODE. THE TAPE PUNCH OUTPUT (FORMATTED OUTPUT) IS READY FOR MIKBUG LOADER. CAMP IS A MODIFIED VERSION OF PREVIOUSLY CONTRIBUTED ASSEMBLER OF THE INTEL 8080 MICROPROCESSOR. FOR FULL DETAILS SEE SOURCE LISTING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: CAMP SOURCE FILE# 3: EXAMPLE MOTOROLA SOURCE PROGRAMS **LOAD INSTRUCTIONS: STANDARD **RUN INSTRUCTIONS: CAMP (METHOD DEPEND ON OPERATING WILL SYSTEM). AFTER THE END STATEMENT IS REACHED, THE PROGRAM WILL PAUSE. REWIND THE TAPE RELOAD, AND RESTART THE ASSEMBLER FOR PASS TWO. THE PROGRAM PRODUCES LISTING AND PUNCHES BINARY TAPES. LU 4 - PUNCH OUTPUT LU 5 - SOURCE CODE INPUT LU 6 - LISTING OUTPUT **INPUT/OUTPUT EXAMPLES: FILE 2 CONTAINS THE SOURCE OF EXAMPLE MOTOROLA PROGRAMS. **PROGRAM DESCRIPTION: LITERATURE REFERENCE M6800 MICROCOMPUTER SYSTEM DESIGN DATA. MOTOROLA INC.,1976 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ASSEMBLER ERRORS AND DIAGNOSTICS ARE OUTPUT ON LINE PRINTER (OR TTY). **MISCELLANEOUS: E01401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE HP2020 MAG TAPE DRIVER **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER MAGNETIC TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS RTE DRIVER CONTROLS I/O OPERATIONS WITH THE HP2020 MAGNETIC TAPE UNIT. WHEN WRITING ON TAPE, THE ROUTINE CONVERTS ASCII DATA TO ALPHANUMERIC BCD FORM; THE ROUTINE THEN RECORDS THE BCD CHARACTERS ON TAPE WITH EVEN PARITY. WHEN READING TAPE, THE ROUTINE ACQUIRES ALPHANUMERIC BCD CHARACTERS WITH EVEN PARITY, AND CONVERTS THE CHARACTERS TO ASCII. NO PROVISION IS MADE FOR WRITING OR READING WITHOUT ASCII-BCD CONVERSION. EQUIPMENT REQUIRED IS ONE HP2020 MAGNETIC TAPE UNIT WITH INTERFACE KIT, AND THE DIRECT MEMORY ACCESS OPTION FOR THE COMPUTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: USUAL PROCEDURES FOR CONFIGURATING A DRIVER INTO THE RTE SYSTEM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: A TEST PROGRAM IS INCLUDED. USUAL COMPILE,LOAD, AND RUN PROCEDURES. **PROGRAM DESCRIPTION: ENTRY POINTS: I.21 C.21 SEE SECTION 4.0 OF RTE MANUAL **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E01501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR61 **PROGRAM TITLE: RTE MULTIPROGRAMMER DRIVER 6936A **REVISION? YES **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER MULTIPROGRAM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: MINIMUM RTE SYSTEM. **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DVR61 IS AN RTE DRIVER TO OPERATE THE HP 6936A MULTIPROGRAMMER. THE DRIVER PERFORMS THREE SEPARATE FUNCTIONS. A RESET WILL RESET ALL CARDS IN THE 6936 SYSTEM. READING FROM THE DEVICE WILL INPUT A WORD FROM THE SWITCH REGISTER OF THE 6936 TO THE CALLING PROGRAM. THIS ALLOWS REMOTE CONTROL OF THE USERS SYSTEM. FINALLY, THE WRITE ROUTINE WILL OUTPUT CONTROL AND DATA WORDS FOR CONTROL OF DEVICES CONNECTED TO THE 6936A. FORTRAN-CALLABLE. DVR61 REQUIRES A MINIMUM RTE SYSTEM AND A 6936A WITH MICROCIRCUIT INTERFACE KIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: USUAL ASSEMBLY PROCEDURES. DRIVER MUST BE CONFIGURED INTO USER'S RTE SYSTEM AT SYSTEM GENERATION TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: A SAMPLE FORTRAN TEST PROGRAM IS INCLUDED. **PROGRAM DESCRIPTION: ENTRY POINTS THE DRIVER REQUIRES THE "B" VERSION OF RTE. FORTRAN CALL STATEMENT: CALL EXEC (N,IDRT,IUAD,IDB,ISAD,IDATA) N 1-READ OUTPUTS A SIGNAL WORD TO THE SWITCH REGISTER OF THE 6936A. WHEN A MANUAL FLAG IS RETURNED THE DRIVER CHANGES THE VALUE OF IUAD TO THE VALUE READ. 2-WRITE OUTPUT IUAD AND ICB AS A CONTROL WORD AND ISAD WITH IDATA AS A DATA WORD. 3-RESET 0'S ARE OUTPUT TO ALL CARDS OF THE USERS UNITS. IDRT FOR READ OR WRITE USE THE MULTIPROGRAMMER DEVICE REFERENCE NUMBER. FOR RESET USE AN OCTAL 1XX. WHERE XX IS THE MP DEVICE REFERENCE NUMBER. IUAD READ ACTUAL SIGNAL WORD OUTPUT TO MP. WRITE THE OCTAL UNIT NUMBER YOU WISH TO TALK TO (0 TO 17) FOR THE 16 UNITS. RESET THE NUMBER OF UNITS IN THE SYSTEM (1 TO 16). ICB WRITE OCTAL NUMBER REFERING TO BITS 4,5,6 OF THE CONTROL WORD. SEE BELOW. ICB DTE SYE TME 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 READ VALUE READ FROM MP AFTER RETURN DATA BUTTON IS SET BY THE OPERATOR. ISAD WRITE ONLY SLOT ADDRESS (0 TO 14). IDATA WRITE ONLY DATA WORD (4 OCTAL DIGITS). NOTE: MAKE SURE THAT ALL UNITS ARE TURNED ON BEFORE PROGRAMMING STARTS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E01601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR54 **PROGRAM TITLE: RTE NON-DMA DRIVER FOR HP 5401B MULTICHANNEL ANALYZER **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER ANALYZER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS RTE DRIVER HANDLES INPUT AND OUTPUT FOR THE HP5401B MULTI- CHANNEL ANALYZER, OPTION 08. IT IS A NON-BUFFERED, NON-DMA DRIVER WHICH WILL WRITE ASCII CODE AND READ ASCII OR BINARY CODE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DVR54 SOURCE (ASMB,R,B,L,C) **LOAD INSTRUCTIONS: CONFIGURATION DIRVER IS CONFIGURED AS A NON-BUFFERED, NON-DMA RTE DRIVER. IT REQUIRES ON I/O SLOT CONFIGURED FOR INTERRUPTS. I.E. . . . 14 , DVR 54 . . . IN EQT ENTRY AND . . 14 , EQT, N IN INTERRUPT TABLE . . . **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: EXAMPLE INPUT/OUTPUT (TEST CASE) READ: FORMAT (14, 10I7) E.G. READ (IAN,2) N, (A(J), J = 1, 10) WRITE: FORMAT (10I7) E.G. WRITE (IAN,3) (A(J), J = 1, 10) **PROGRAM DESCRIPTION: WRITE REQUEST ALL OUTPUT REQUESTS ARE TREATED ALIKE. THE EXACT NUMBER OF CHARACTERS OR WORDS ARE TRANSMITTED. THE NATURE OF THE STRING IS THE RESPONSIBILITY OF THE USER PROGRAM. READ REQUESTS THIS CAN BE IN TWO FORMS: ASCII OR BINARY ASCII INPUT IN THIS MODE, DATA IS READ IN RECORD FORMAT I.E., 'LF' IS ON END OF RECORD. 'CR' IS IGNORED. THE NUMBER OF CHARACTERS TRANSMITTED TO THE USER BUFFER IS THE REQUESTED NUMBER OR THE NUMBER OF CHARACTERS IN THE RECORD WHICHEVER IS THE SMALLER. IF THE NUMBER OF CHARACTERS OR WORDS REQUESTED IS LESS THAN THE LENGTH OF THE RECORD, THEN BEFORE THE DRIVER COMPLETES, CHARACTERS ARE SKIPPED UNTIL AN END OF RECORD CHARACT- ER IS FOUND. CR AND LF ARE NOT TRANSFERRED TO THE USER BUFFER. TIME OUT IS USED IN THIS MODE AND IS HANDLED BY THE DRIVER TO GIVE A SIMULATED EOT RETURN. BINARY INPUT THE EXACT NUMBER OF CHARACTERS OR WORDS ARE RETURNED TO THE USER IR- RESPECTIVE OF THE NATURE OF THE DATA. NO CHECK IS MADE FOR END OF RECORD MARKS. NO TIME OUT IS SET FOR THIS MODE OF INPUT. ENTRY POINTS I.54 INITIATOR ENTRY C.54 CONTINUATOR ENTRY LITERATURE REFERENCE REAL-TIME EXECUTIVE SOFTWARE SYSTEM, 02005-90001 SPECIAL CONSIDERATIONS DRIVER TIMES-OUT WHEN ANALYZER IS SWITCHED OFF IN THE MIDDLE OF A TRANSFER. THE RETURN TO A PROGRAM IS THE SAME AS THAT WHEN AN "EOT" CHARACTER IS ENCOUNTERED. NO "RTE-TYPE" ERROR RETURNS ARE MADE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E01701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR57 **PROGRAM TITLE: SPECIAL PRIVILEGED RTE DRIVER FOR HP 2313 SUBSYSTEM **REVISION? YES **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER PRIVILEGED ANALOG/DIGITAL **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DRIVER ENABLES THE HP 2313 DATA ACQUISITION SUBSYSTEM TO BE USED UNDER RTE FOR CONTINUOUS FAST DATA ACQUISITION. READINGS ARE TAKEN IN GROUPS OF THREE OR MORE RANDOM HIGH LEVEL MULTIPLEXOR (+/-10 VOLTS) CHANNELS. THE TIME BETWEEN TWO READINGS IN ONE GROUP IS FIXED AT 30 MICROSECONDS. ALL THE READINGS WITHIN A GROUP ARE REPEATED AFTER A PRECISE PROGRAMMABLE DELAY (T) WHICH MAY BE BETWEEN 500 AND 2550 *MICROSECONDS WITH A 10 MICROSECOND RESOLUTION. FOR SPEED REASONS, THE DRIVER REQUIRES DOUBLE BUFFERS WITHIN THE CALLING PROGRAM. THESE BUFFERS NEED TO BE APPROXIMATELY 1000 WORDS EACH FOR CONTINUOUS THROUGHPUT TO MAGNETIC TAPE AT ABOUT 4 X 2000=8 KHZ. THE DRIVER DOES NOT USE DMA OR THE LAST ADDRESS DETECTOR CARD IN THE HP 2313. THE ONLY NECESSARY HARDWARE REQUIREMENTS ARE A MINIMUM RTE SYSTEM AND THE HP 2313 WITH PROGRAMMABLE PACER. *THERE IS A VERSION OF THIS DRIVER FROM 500 TO 25960 MICROSECONDS AVAILABLE ON SPECIAL REQUEST FROM THE AUTHOR. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: COMPILE DRIVER AND ITS LINKING ROUTINE, THEN INCLUDE THEM AT GENERATION TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: A TEST PROGRAM IS INCLUDED ON TAPE. THE OUTPUT WILL DEPEND ON THE ANALOG INPUT VALUES. **PROGRAM DESCRIPTION: CALLING SEQUENCE TO THE DRIVER IS NON-STANDARD TO ALLOW FOR DOUBLE BUFFERING OF THE OUTPUT. CALL IS AS FOLLOWS: EXT EXEC JSB EXEC DEF *+5 DEF RCODE WHERE RCODE IS A 1 FOR READ DEF CONND CONND IS THE LOGICAL UNIT# DEF BUFF BUFF IS ADD. OF PRAM BLOCK DEF BLNTH BLNTH IS LENGTH OF BLOCK FORMAT OF PRAM BLOCK IS * WORD 1*TIME INTERVAL IN 10'S OF MICROSECONDS DEC X <255 2*BUFFER 1 FULL/EMPTY FLAG(ALL 1'S S/O) OCT O 3*BUFFER 2 FULL/EMPTY FLAG(ALL 1'S S/O) OCT O 4*ADDRESS OF BUFFER 1 DEF B1 5*ADDRESS OF BUFFER 2 DEF B2 6*# OF SCANS PER BUFFER DEC M 7*# OF READINGS PER SCAN DEC N 8*CHAN # OF FIRST READING FOR SCAN OCT 9*CHAN # OF 2ND READING FOR SCAN OCT 10*CHAN # OF 3RD READING FOR SCAN OCT *ETC - MUST BE AT LEAST 3 CHANS *CHAN # OF NTH READING FOR SCAN OCT *BUFFER 1 B1 BSS M*N *BUFFER 2 B2 BSS M*N FORMAT OF WORD CHAN# IS THE SAME AS SHOWN ON PAGE 3-12 OF DAS CONTROL CARD MANUAL FOR "B. DATA WORD-LAST ADDRESS DETECTOR" WITH BIT 12=0. NOTES ON OPERATION OF DRIVER: THE DRIVER SETS THE FLAGS IN WORDS 2 AND 3 OF PRAM BLOCK WHEN A BUFFER IS FULL. THE PROGRAM MUST CLEAR THESE FLAGS AS THE DATA IS PROCESSED. IF FLAG IS NOT CLEAR WHEN THE DRIVER REQUIRES TO USE A BUFFER, THEN DRIVER STOPS AND SETS WORD 1 OF PRAM BLOCK TO ZERO. THUS TO STOP DRIVER, LEAVE FLAG IN WORD 2 OR 3 SET. PROGRAM LOOKS FOR WORD 1 TO GO ZERO TO INDICATE DRIVER HAS INPUT LAST BLOCK. AS THIS DRIVER SETS WORD 1 OF PRAM BLOCK TO ZERO WHEN IT STOPS, THE USER MUST RESET WORD 1 BEFORE ANOTHER CALL IS MADE TO THIS DRIVER, I.E., ALWAYS SET UP WORD 1 AT THE START OF THE USER CALLING PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: 1. EXIT BACK TO USER WITH B REGISTER ALL 1'S INDICATES DRIVER ALREADY IN USE. 2. IO07 RESULTS IF A REQUEST IS MADE FOR READINGS AT SPEEDS IN EXCESS OF THAT CAPABLE BY THE DRIVER OR THE HARDWARE. 3. WORD ONE OF PRAM BLOCK IS SET TO ZERO IF INPUT TO DOUBLE BUFFERS IS FASTER THAN USER PROGRAM OUTPUTS THE DATA. **MISCELLANEOUS: IF CALLING PROGRAM IS DISC RESIDENT, THE "OFF" COMMAND MUST NOT BE USED TO STOP THE PROGRAM. THE REASON FOR THIS IS THAT THE CALLING PROGRAM IS NEVER I/O SUSPEND ON THE HP 2313, AND SO IT WILL CONTINUE TO TRANSFER DATA INTO BUFFERS (AND POSSIBLY OVER THE TOP OF THE NEXT PROGRAM THAT COMES IN.) THE CALLING PROGRAM MUST NEVER BE ALLOWED TO SWAP OUT; I.E., IT MUST HAVE PRIORITY 1 AND NEVERY GO OPERATOR SUSPEND OR MEMORY SUSPEND, AND NEVER I/O SUSPEND ON A BUFFER IN R.T COMMON. ALL SPECIAL CONSIDERATIONS RESULT FROM THE AUTHOR'S INTENT TO ATTAIN THE HIGHEST POSSIBLE SPEED FOR THE HP 2313 PRIVILEGED DRIVER. OVERHEADS: APPROXIMATELY 200 MICROSECONDS PER GROUP IS REQUIRED TO MAKE SURE THE DRIVER IS READY TO TAKE THE READINGS ON TIME AND A FURTHER 30 MICROSECONDS PER READING IS REQUIRED TO TAKE THE SAMPLE. THE COM- PLETION SECTION OF THE DRIVER RUNS WITH THE INTERRUPT SYSTEM OFF. AT FAST DATA RATES, THE UTILIZATION OF THE CPU CAN BE VERY HIGH (OVER 50%!) E01801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR44 **PROGRAM TITLE: RTE DVR FOR INTERMEDIA SYS 4406/4416 GRAPHIC VIDEO GENERATORS (HP 5662B) **REVISION? YES **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER GRAPHIC DISPLAY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-C RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DVR 44 IS AN RTE DRIVER FOR THE INTERMEDIA SYSTEMS 4406 GRAPHIC VIDEO GENERATOR. AN RTE PROGRAM CAN CALL THE DRIVER TO DISPLAY GRAPHICAL INFORMATION VIA THE 4406/4416 GVG ON A VIDEO MONITOR. THE BASIC FUNCTIONS AVAILABLE IN THE DRIVER ARE: SET POINTS, CLEAR POINTS, ERASE SCREEN, AND SELECT VIDEO POLARITY. ** HARDWARE ** INTERMEDIA SYSTEMS 4406 OR 4416 GRAPHIC VIDEO GENERATOR (HP PART NO. 5662B) CONNECTOR AND 75 OHM COAXIAL CABLE ASSEMBLY VIDEO MONITOR DMA (OPTIONAL) **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DVR 44 SOURCE (ASMB, R,B,L,T) **LOAD INSTRUCTIONS: DURING THE RTE SYSTEM CONFIGURATION PROCEDURE, DVR 44 SHOULD BE LOADED IN THE PROGRAM INPUT PHASE AT THE SAME TIME THAT ALL OTHER I/O DRIVERS ARE LOADED. FOR THE EQUIPMENT TABLE ENTRY, THE "D" PARAMETER MUST BE SPECIFIED FOR DMA OPERATION. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: CONTACT THE FACTORY FOR TEST CASE. **PROGRAM DESCRIPTION: FUNCTIONS AND CALLING SEQUENCES WRITE FUNCTION: CALL EXEC (2, ICON, IBA, IBL) ICON - CONTROL PARAMETER, DETAILED BELOW (NN = LOGICAL UNIT NUMBER): OCTAL VALUE FUNCTION ----------- -------- NN SET POINTS VIA DMA. 1NN CLEAR POINTS VIA DMA. 2NN SET POINTS VIA INTERRUPT. 3NN CLEAR POINTS VIA INTERRUPT. IBA - BUFFER CONTAINING POINTS TO BE SET OR CLEARED. EACH 16 BIT WORD IN THE BUFFER CONTAINS THE X AND Y COORDINATES OF ONE POINT, AS SHOWN BELOW: BIT 15 8 7 0 VALUE Y COORDINATE X COORDINATE NOTE THAT THE POINT (Y = 0, X = 0) IS AT THE LOWER LEFT CORNER OF THE DISPLAY MATRIX. IBL - NUMBER OF POINTS TO BE PLOTTED. THIS MUST BE A POSITIVE NUMBER. CONTROL FUNCTION: CALL EXEC (3, IFLU) IFLU: CONTROL PARAMETER, DETAILED BELOW (NN = LOGICAL UNIT NUMBER): OCTAL VALUE FUNCTION ----------- -------- 30NN CLEAR SCREEN. 31NN SET VIDEO POLARITY TO WHITE DOTS ON A BLACK BACKGROUND. 32NN SET VIDEO POLARITY TO BLACK DOTS ON A WHITE BACKGROUND. NOTES: 1. VIDEO POLARITY SELECTION ONLY APPLIES TO THE 4416 GRAPHIC VIDEO GENERATOR. 2. THE TERMINATION PROCEDURE FOR A DATA TRANSFER AUTOMATICALLY SETS THE VIDEO POLARITY TO WHITE DOTS ON BLACK BACKGROUND. 3. PHYSICAL STATUS FOR THE DEVICE IS ALWAYS ZERO. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E01901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR33 **PROGRAM TITLE: RTE WRITEABLE CONTROL STORE DRIVER **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER WCS MICROCODE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DVR33 OPERATOR UNDER CONTROL OF THE I/O CONTROL MODULE OF THE REAL- TIME-EXECUTIVE. THIS DRIVER PERFORMS THE FOLLOWING FUNCTIONS BETWEEN A USER'S PROGRAM AND A WRITEABLE CONTROL STORE (WCS) MODULE: 1. WRITE UNCONDITIONALLY (BIT 10 SET IN CONTROL WORD OF THE EXEC CALL) AND SET "IN USE" FLAG. 2. WRITE ONLY IF "IN USE" FLAG IS NOT SET AND SET "IN USE" FLAG. IF "IN USE" FLAG IS SET, REJECT REQUEST. 3. READ FROM WCS MODULE INTO USER'S BUFFER. 4. RESET "IN USE" FLAG. WRITE REQUESTS MAY BE MADE UNDER DMA CONTROL. READ REQUESTS ARE ALWAYS NON DMA. HARDWARE REQUIREMENTS STANDARD RTE WITH WRITEABLE CONTROL STORE (WCS) MODULE(S). LITERATURE REFERENCE RTE PROGRAMMING AND OPERATING MANUAL - HP #02005-90001 MICROPROGRAMMING GUIDE - HP #5951-3028 MICROPROGRAMMING SOFTWARE - HP #02100-90133 DOS MICROPROGRAMMING SOFTWARE - HP #02100-90146 **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DVR33 SOURCE (ASMB,R,B,L,C) **LOAD INSTRUCTIONS: CONFIGURE INTO SYSTEM AT GENERATION TIME IN THE SAME MANNER AS ANY OTHER STANDARD DRIVER. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: A THOROUGH CHECK OUT OF DVR33 CAN BE ACCOMPLISHED BY USE OF THE CONTRIBUTED RTE MICRO-DEBUG-EDITOR. **PROGRAM DESCRIPTION: SPECIAL CONSIDERATIONS THE FOLLOWING GROUND RULES SHOULD BE FOLLOWED, IF SWAPPING IS ALLOWED AND DIFFERENT MICROPROGRAMS ARE REQUIRED BY FOREGROUND AND/OR BACK- GROUND PROGRAMS. 1. ALL PROGRAMS REQUEST STATUS AND SUSPEND THEMSELVES UNTIL THE "IN USE FLAG" IS CLEAR. 2. IF "IN USE" FLAG IS CLEAR PROGRAM LOADS WCS MODULE WITH MICROCODE AND CONTINUES EXECUTION. 3. WHEN MICROCODE IS NO LONGER NEEDED AND BEFORE PROGRAM TERMINATION, PROGRAMS CLEARS "IN USE" FLAG. BUG REPORT THIS DRIVER APPEARS TO BE NAMED INCORRECTLY FOR RTE, AS DVR30 TO DVR33 ARE RESERVED FOR DISC DRIVERS. AS A RESULT, WHEN THE DRIVER IS REFERENCED IT RETURNS ERROR IO01 (NOT ENOUGH PARAMETERS). RENAMING THE DRIVER TO DVR37 WORKS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: INITIATION SECTION RETURN STATUS: A REG. = 0 = OPERATION INITIATED A REG. = 1 = ILLEGAL REQUEST OR ZERO LENGTH READ/WRITE: A REG. = 3 = WRITE REQUESTED BUT IN USE FLAG SET. REQUEST IS REJECTED. **MISCELLANEOUS: E02001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR56 **PROGRAM TITLE: RTE HP 2310C SPECIAL SUBSYSTEM DRIVER **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DRIVER (56) IS A SPECIAL APPLICATIONS DRIVER FOR THE 2310 MINIVERTER, WHICH OPERATES UNDER CONTROL OF THE I/O MODULE OF THE REAL TIME EXECU- TIVE. THIS DRIVER ALLOWS DATA TO BE SAMPLED FROM A GIVEN MINIVERTER CHANNEL (ICHAN) A SPECIFIED NUMBER (N) OF TIMES. THE RANDOM ADVANCE OR SEQUENTIAL MODES ARE NOT ALLOWED WITH THIS DRIVER. THIS DRIVER OPERATES ONLY IN THE RANDOM START MODE. THE STRUCTURING OF THIS DRIVER IN THIS MANNER SAVES A SIGNIFICANT NUMBER (ABOUT 1/2) OF THE MEMORY LOCATIONS REQUIRED OF THE 2310/2311 SUBSYSTEM RTE DRIVER. THIS DRIVER DOESN'T CONVERT THE MINIVERTER DATA. THE MCONV CALL MUST BE UTILIZED FOR THE CONVERSION. I.56 AND C.56 ARE THE ENTRY POINTS OF THE INITIATOR AND CONTINUATOR SECTIONS OF D.56 ARE THE ENTRY POINTS OF THE INITIATOR AND CONTINUATOR SECTIONS OF D.56 RESPECTIVELY. LITERATURE REFERENCE 1. HIGH SPEED DAT ACQUISITION SUBSYSTEM 2310C OPERATING AND SERVICE MANUAL (HP PART NO. 02310-90005) 2. RTE HP 2310/2311 SUBSYSTEM DRIVER (DVR56). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: TEST PROGRAM **LOAD INSTRUCTIONS: 1. LOAD DVR56 WITH THE DRIVERS WHEN GENERATING AN RTE SYSTEM USING THE FIXED HEAD OR MOVING HEAD RTE GENERATOR (FH RTGEN OR MH RTGEN). 2. CONFIGURE THE DEVICE REFERENCE TABLE, EQUIPMENT TABLE, AND INTERRUPT TABLE TO REFERENCE THE MINIVERTER DRIVER (DVR56) AND THE COMPUTER SELECT CODE OF THE MINIVERTER. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: PROGRAM MINI ALLOWS THE USER TO SAMPLE A CHANNEL OF THE MINIVERTER A SPECIFIED NUMBER OF TIMES. IT THEN PRINTS OUT THE AVERAGE, RANGE, MINIMUM, AND MAXIMUM IN MILLIVOLTS OF THE SAMPLED DATA. 1. LOAD TEST PROGRAM (MINI) AND SUBROUTINE (MCONV) WITH THE RTE LOADER. 2. APPLY A VOLTAGE TO CHANNEL OF MINIVERTER TO BE MEASURED. 3. SCHEDULE MINI; ON,MINI **PROGRAM DESCRIPTION: I.56 - INITIATOR SECTION C.56 - CONTINUATOR SECTION DVR 56 IS CONTROLLED BY THE RTE EXEC CALLING SEQUENCE: A. FORTRAN CALL EXEC(1,IDRT,IBUFF,N,ICHAN) B. ASSEMBLY LANGUAGE EXT EXEC . . . JSB EXEC DEF *+6 DEF 1 DEF IDRT DEF IBUFF DEF N DEF ICHAN WHERE; IDRT - DEVICE REF. TABLE NUMBER (LU#) IBUFF - INTEGER ARRAY (DATA STORAGE BUFFER) N - NUMBER OF TIMES TO SAMPLE ICHAN ICHAN - CHANNEL NUMBER (1-256) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERRORS: A REGISTER SET = 1 WHEN, 1. ILLEGAL REQUEST CODE, ONLY READ REQUEST ALLOWED. 2. INVALID NUMBER OF DATA SAMPLES 3. INVALID CHANNEL NUMBER **MISCELLANEOUS: E02101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVP10 **PROGRAM TITLE: RTE DRIVER PACKAGE FOR XYNETICS AND CALCOMP PLOTTERS **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER PLOTTER XYNETICS CALCOMP GRAPHIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: WITHOUT EXTERNAL SUBPROGRAMS, 280 DRIVER, 459 PLOT ROUTINE **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DRIVER ALLOWS XYNETICS 1100,1200, & 2000 SERIES PLOTTERS EQUIPPED WITH SG-50 SLOPE GENERATORS TO OPERATE AS STANDARD SYSTEM PERIPHERAL EQUIPMENT. STANDARD EXEC CALLS MAY BE MADE TO OUTPUT DATA AND CHECK STATUS OF PLOTTER. STANDARD SYSTEM FEATURES SUCH AS BUFFERED OUTPUT, EQUIPMENT TIMEOUT, ETC ARE AVAILABLE. THIS DRIVER ALLOWS PROGRAMMABLE PEN COLOR CHANGES WITH AUTOMATIC OFFSETTING SO THAT ALL COLORS LINE UP. DRIVER ALSO SUPPORTS CALCOMP 560 SERIES INCREMENTAL PLOTTERS. TYPE OF PLOTTER TO BE USED IS SPECIFIED BY SUBCHANNEL AT SYSTEM GENERATION TIME. SEE XYNETICS MANUAL P/N TM-1038 "BASIC OPERATION MANUAL, MODEL SG50 FOR HP 2100 COMPUTER." PLOT MODULE REPLACES PLOT PORTION OF STANDARD HP PLOTTER LIBRARY. THESE ROUTINES FORMAT DATA FOR THE XYNETICS FLATBED PLOTTERS, MODELS 1100,1200, & 2000 EQUIPPED WITH SG50 SLOPE GENERATORS AND HP INTERFACES. EACH LINE DRAWN REQUIRES 8 WORDS OF DATA. ROUTINE UPDATES CURRENT PEN COORDINATES, HANDLES PEN UP/DOWN COMMANDS, AND NEW ORIGIN COMMANDS SAME AS STANDARD PLOT MODULE. THIS IS A UTILITY SUBROUTINE, TYPE 7, TO BE APPENDED TO USERS PROGRAM WHICH GENERATES DATA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: DRIVER 1. ASSEMBLE RTE DRIVER DVP10. (NOTE THAT SOURCE MAY BE EDITTED TO DELETE SUBCHANNEL SWITCHING FOR CALCOMP PLOTTER; IF THIS IS DONE, IGNORE FOLLOWING COMMENTS ABOUT SUBCHANNELS AND CALCOMP REFERENCES) 2. INSTALL RELOCATABLE OF DRIVER AT SYSTEM GENERATION TIME: A. EQUIPMENT TABLE ENTRIES EQT N? FOR XYNETICS, RESPOND: SCI,DVP10,B,T=1000 EQT M? FOR CALCOMP, RESPOND: SC2,DVP10,B,T=100 (B AND T ENTRIES OPTIONAL) B. DEVICE REFERENCE TABLE: P = EQT #? FOR XYNETICS, RESPOND: N,1 Q = EQT #? FOR CALCOMP, RESPOND: M,0 C. INTERRUPT TABLE SC1,EQT,N FOR XYNETICS SC2,EQT,M FOR CALCOMP PLOT SUBROUTINE 1. ASSEMBLE PLOT MODULE SOURCE AND STORE AS RELOCATABLE SUB- ROUTINE. 2. APPEND PLOT SUBROUTINES TO EACH USER PROGRAM THAT USES XYNETICS PLOTTER. LOAD THIS PLOT MODULE BEFORE SCANNING HP PLOT LIBRARY. OTHER PLOTTER ROUTINES SUCH AS SYMB, LINE, AXIS, ETC, MUST BE SUPPLIED FROM THE HP PLOT LIBRARY. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: 1. COMPILE TEST PROGRAM AND LOAD ALONG WITH PLOT MODULE. SYSTEM MUST HAVE DVP10 CONFIGURED IN AND SYNETICS PLOTTER CONNECTED UP. 2. TURN ON TEST PROGRAM: *ON,TEST,P1,P2,P3,P4,(SEE BELOW FOR PARAMETER DEFINITION) 3. IF PLOTTER IS NOT SET TO AUTO (ALL 3 BUTTONS), SYSTEM WILL RESPOND: I/O ERR NR EQT #_ SET ALL BUTTONS TO AUTO AND ENTER *UP,EQT# 4. PLOTTER WILL DRAW 4 SQUARES IN 4 COLORS AND LETTER "TEST COMPLETE" AND THEN PROGRAM WILL TERMINATE. PARAMETERS: P1-LU OF TERMINAL P2-LU OF PLOTTER P3-VALUE FOR ISPD DEFAULT 28 P4-VALUE FOR IAC DEFAULT 11 **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DRIVER DRIVER PROVIDES ALL NORMAL TYPES OF EXITS TO SYSTEM--SEE RTE MANUAL. DRIVER WILL REJECT READ CALLS AND I/O CONTROL CALLS WITH FUNCTIONS NOT EQUAL TO 0,1,2,3, OR 4. PLOTTER IN MANUAL MODE WILL CAUSE A NOT READY I/O ERROR. PLOT ROUTINE NO ERROR EXITS PROVIDED. PLOT ROUTINE RETURNS TO USER PROGRAM WHEN DATA HAS BEEN PASSED TO PLOTTER; IF PLOTTER IS BUFFERED, NEXT DATA POINT MAY BE FORMATTED WHILE CURRENT LINE IS BEING DRAWN. IF A ZERO LENGTH LINE IS REQUESTED, CONTROL RETURNS IMMEDIATELY; NO I/O CALL IS MADE. **MISCELLANEOUS: E02201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR55 **PROGRAM TITLE: DRIVER FOR 12555B D-TO-A CONVERTER INTERFACE CARD **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER CONVERSION GRAPHIC ANALOG/DIGITAL PLOTTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-M RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DVR55 IS A RTE-I,II,III AND M DRIVER FOR THE 12555B DIGITAL-TO- ANALOG CONVERTER INTERFACE CARD. DVR55 PROCESSES FOUR WRITE REQUESTS AND TWO CONTROL REQUEST. DVR55 DOES NOT PERFORM THE REFRESH FUNCTION AND IS NOT INTENDED FOR GRAPHICS ON A NON-STORAGE-TYPE SCOPE. DVR55 IS INTENDED FOR D TO A OPERATIONS (INCLUDING STAIR STEP IN 10MS INCREMENTS), DRIVING X-Y PLOTTERS OR FOR GRAPHICS ON STORAGE-TYPE SCOPES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DVR55 DOCUMENTATION AND SOURCE FILE# 3: CKD2A SOURCE (CHECK-OUT PROGRAM) **LOAD INSTRUCTIONS: SEE DOCUMENTATION FILE **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: SEE DOCUMENTATION FILE. **PROGRAM DESCRIPTION: SEE DOCUMENTATION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE DOCUMENTATION FILE. **MISCELLANEOUS: E02301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVC12 **PROGRAM TITLE: CENTRONICS COMPATIBLE PRINTER DRIVER **REVISION? YES **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: CENTRONICS PRINTER DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-IV RTE-III RTE-II **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: DVC 12 IS A STANDARD PRINTER DRIVER AND PERFORMS ESSENTIALLY THE SAME FUNCTIONS. AN EXTENTION OF THE FEATURE OF PRINTER CONTROLS BY THE FIRST CHARACTER OF THE USER'S BUFFER IS INCLUDED. SEVERAL PARAMETERS CAN BE DEFINED BY CHANGING THE SUBCHANNEL NUMBER OF EACH DEVICE'S EQT. PARAMETERS SUCH AS: 1. NO. LINES/PAGE 2. NO. CHAR.S/LINE 3. SIMULATE DISPLAY FUNCTIONS 4. IGNORE CONTROL WORD BIT 8 (PRINT FIRST COLUMN) **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DRIVER SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE INTO A FILE. 2. GENERATE INTO A SYSTEM. **RUN INSTRUCTIONS: SEE SOURCE LISTING. **INPUT/OUTPUT EXAMPLES: TRY IT! **PROGRAM DESCRIPTION: SEE DRIVER LISTING. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: USES 21MX MICROCODE IF APPROPRIATE (ASSEMBLED WITH Z IN CONTROL STATEMENT). E02401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DUPL **PROGRAM TITLE: RTE/DOS DUPLICATOR PROGRAM **REVISION? NO **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: COPY SAVE/RESTORE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS **MEMORY REQUIREMENTS: 966 WITH EXTERNAL SUBPROGRAMS (640 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS RTE AND DOS PROGRAM DUPLICATES PUNCHED TAPES. THE DATA FROM THE MASTER TAPE IS STORED ON DISC, AND ONE OR MORE COPY TAPES ARE THEN PERFORMED, AND EACH COPY TAPE CAN BE REREAD AND COMPARED WITH THE DISC FILE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DUPL SOURCE **LOAD INSTRUCTIONS: USUAL ASSEMBLY AND LOAD PROCEDURES. **RUN INSTRUCTIONS: AN EXAMPLE OF AN OPERATING PROCEDURE IN A RTE ENVIRONMENT IS GIVEN BELOW: START WITH: ON,DUPL,A,B,C,D,E WHERE: A=0 RELOCATABLE TAPES ELSE ABSOLUTE TAPES B=0 VERIFY CHECKSUM ONLY B=1 VERIFY CHECKSUM AND PUNCH B=2 PUNCH A COPY AND ASK FOR THE COMPARE PHASE IN A SECOND PASS C (USEFUL ONLY FOR RELOCATABLE TAPES) C=0 STOP DUPLICATION ON END RECORD ELSE DO NOT STOP ON END RECORD (FOR LIBRARIES USE) D NUMBER OF TRACKS FOR DISC ALLOC- ATION (ONLY IF B=0) E DISC AVAILABILITY INDICATOR E=0 WAIT FOR DISC AVAILABLE ELSE DO NOT WAIT FOR DISC IF ANY PARAMETER IS NOT PRESENT, IT IS AUTOMATICALLY SET TO ZERO. **INPUT/OUTPUT EXAMPLES: ON,DUPL,,2,1,4,1 DUPLICATE A RELOCATABLE TAPE CONTAINING THE RELOCATABLE BCS LIBRARY, WITH THE COMPARE PHASE IN A SECOND PASS, NOT WAITING FOR END RECORD, USING A MAXIMUM NUMBER OF FOUR TRACKS AND DO NOT WAIT FOR DISC AVAILABILITY. UP,N WHERE N IS THE EQT OF INPUT UNIT GO,DUPL,1 /DUPL: ENTER "GO" PARAMETERS! GO,DUPL,1 COMPARE PHASE WITHOUT PUNCHING ANOTHER COPY. UP,N GO,DUPL,1 /DUPL: ENTER "GO" PARAMETERS! GO,DUPL,0 TERMINATE THE PROGRAM END DUPL **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DURING THE JOB YOU MAY GET THE FOLLOWING MESSAGES! 1. END DUPL - PROGRAM TERMINATED AND TRACKS RELEASED 2. /DUPL: ENTER "GO" PARAMETERS! - REPLY WITH: GO,DUPL,X X=0 TERMINATES PROGRAM X=1 COMPARE PHASE X=2 COMPARE AND PUNCH ANOTHER COPY 3. /DUPL : CHECKSUM ERROR! /DUPL : COMPARE ERROR - REPOSITION TAPE AT THE BEGINNING OF THE LAST RECORD AND REPLY WITH: GO,DUPL 4. /DUPL : DISC OVERFLOW! DISC NOT AVAILABLE! - IRRECOVERABLE CONDITION REPOSITION THE TAPE AT THE BEGINNING AND REPLY WITH: GO,DUPL,A,B,C,D,E 5. IF END OF TAPE CONDITION IS DETECTED ON THE INPUT UNIT REPLY WITH: GO,DUPL,Y Y = 0 GO AHEAD READING ELSE TERMINATE **MISCELLANEOUS: E02501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BEDIT **PROGRAM TITLE: RTE BINARY TAPE/FILE UTILITY **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: FILES PAPER TAPE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: AT LEAST 6105 OF BACKGROUND **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE RTE UTILITY PROGRAM 'BEDIT' IS DESIGNED TO TAKE BINARY RELOCATABLE PROGRAMS AND SUBROUTINES FROM PAPER TAPES OR FILE MANAGER FILES AND REARRANGE THEM. THE NEW ARRANGEMENT CAN BE DIRECTED TO PAPER TAPE OR A FILE MANAGER FILE. 'BEDIT' WILL ALSO LIST THE NAME AND, OPTIONALLY, THE 'ENT' AND 'EXT' POINTS OF ALL RELOCATABLES ON A PAPER TAPE OR IN A RELOCATABLE FILE MANAGER FILE. A MINIMUM RTE SYSTEM IS REQUIRED TO RUN THIS UTILITY. IT WILL EXECUTE AS IS WITHOUT THE RTE FILE MANAGER, IF DUMMY SUBROUTINES ARE SUPPLIED TO SATISFY THE REFERENCES TO THE FILE MANAGER LIBRARY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: BEDIT SOURCE FILE# 3: BEDIT SOURCE (CONTINUED) **LOAD INSTRUCTIONS: COMPILE AND ASSEMBLE SOURCE TAPES, THEN LOAD AS A BACKGROUND, DISC RESIDENT PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: CONTACT CONTRIBUTOR FOR EXTENDED INPUT/OUTPUT EXAMPLES **PROGRAM DESCRIPTION: A CHECKSUM IS PERFORMED DURING LISTINGS OF PROGRAMS AND/OR ENT, EXT POINTS; THEREFORE, THIS FEATURE MAY BE USED TO VERIFY THAT TYPES AND/OR DISC FILES ARE CHECKSUM FREE. INPUT COMMANDS ARE AS FOLLOWS: 1. /C = CHANGE INPUT COMMAND DEVICE OR FILE NAME. /D = CHANGE LIST DEVICE /E = TERMINATE PROGRAM. /I = CHANGE PROGRAM INPUT DEVICE OR FILE NAME. /L = LABEL PAPER TAPE. /M = CHANGE MESSAGE LOGICAL UNIT. /N = LIST ALL PROGRAM NAMES AND THEIR ENTRY/EXTERNAL NAMES. /O = CHANGE PROGRAM OUTPUT DEVICE OR FILE NAME. /S = SEARCH INPUT FOR A PROGRAM AND COPY IT ONTO THE OUTPUT UNIT. /T = GENERATE TAPE LEADER OR AN EOF MARK IN FILE. NOTE: AN INPUT COMMAND IS ALWAYS PRECEEDED BY A SLASH WHEREAS A FILE NAME OR PROGRAM NAME IS NOT. THE INPUT COMMAND DEVICE, OPERATOR MESSAGE DEVICE AND LIST DEVICE MAY BE DESIGNATED AS INPUT PARAMETERS WHEN BEDIT IS ON'ED. DEFAULT IS 1,1,6 RESPECTIVELY. THE PROGRAM IS INTUITIVELY TUTORIAL AND ITS FLEXIBILITY IS LIMITED ONLY BY THE USER AND HIS KNOWLEDGE OF THE RTE FILE MANAGER. EXPECTED REPLIES TO A "?" (INPUT REQUEST) MAY BE EXPANDED BY TYPING A "?". **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E02601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MEMORY TO PAPER TAPE ABL FORMAT **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: PAPER TAPE DUMP MEMORY **LANGUAGES: ASMB **COMPUTER TYPE: 2114 **OPERATING SYSTEMS: RTE BCS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS 79 WORD ROUTINE DUMPS SELECTIVE POSITIONS OF CORE TO A PAPER TAPE DEVICE IN STANDARD ABL FORMAT. RECORDS ARE DUMPED IN FULL RECORD LENGTH (RL=377B) WITH NO BLANK FEED FRAMES BETWEEN RECORDS. THUS, NO TAPE IS WASTED AND PUNCHING SPEED IS INCREASED. THE ROUTINE IS SELF-CONFIGURING AND CAN FIT INTO THE ABL REGION IF THE SELF- CONFIGURATION PART IS OMITTED. EQUIPMENT REQUIREMENT IS A 2100 SERIES COMPUTER WITH 4K CORE OF STORAGE AND A TELETYPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE (ASMB,R,L,B) **LOAD INSTRUCTIONS: 1) ASSEMBLE SOURCE TAPE 2) LOAD ABSOLUTE TAPE WITH ABL **RUN INSTRUCTIONS: 1. P=72100B 2. A=FWA OF MEMORY TO BE DUMPED. 3. B=LWA OF MEMORY TO BE DUMPED. 4. S=SELECT CODE OF PUNCH DEVICE. 5. INTERNAL PRESET. 6. RUN 7. MEMORY WILL BE DUMPED WITH THE CURRENT ADDRESS DISPLAYED IN THE DISPLAY REGISTER. 8. AFTER A "HLT 77B" OCCURS, GO TO STEP 2 IF MORE MEMORY IS TO BE PUNCHED. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THE ACCOMPANIED VERSION STARTS AT ADDRESS 72100B, THE SOURCE TAPE MUST BE RE-ASSEMBLED IF A DIFFERENT REGION OM MEMORY IS TO BE SELECTED FOR THE ROUTINE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E02701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DUPER **PROGRAM TITLE: RTE FILE MANAGER DUMP **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: DISC FILES MAGNETIC TAPE DUMP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 6.5K BACKGROUND **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS BACKGROUND PROGRAM WILL DUMP SELECTED RTE FILE MANAGER FILES. THE SOURCE AND DESTINATION OF THE DUMP MAY BE ANY COMBINATION OF DISC AND MAGNETIC TAPE. THE FILES TO BE DUMPED ARE SELECTED BY NAME, SECURITY CODE OR TYPE OR BY A COMBINATION OF THESE. WITH THIS SAME METHOD, ALSO SELECTED DIRECTORY LISTINGS CAN BE MADE. FILES ON MAGNETIC TAPE CONSIST OF RECORDS OF ABOUT 2560 WORDS. THIS DENSELY PACKED TAPE ASSURES A LATER QUICK FILE RETRIEVAL. FILES MAY BE DUMPED FROM SEVERAL DISCS TO ONE MAGNETIC TAPE, THEREFORE WHEN MAGNETIC TAPE IS THE DESTINATION, A TEMPORARY DIRECTORY IS CREATED ON A SYSTEM TRACK TO AVOID DUPLICATE NAMES. INSTRUCTIONS ARE CODED INTO THE PROGRAM WHICH WILL PRINT ALL THE LEGAL ANSWERS TO A QUESTION IF THE USER IS IN DOUBT. ALL DISC FILE ACCESSES AND DISC DIRECTORY CHANGES ARE MADE VIA THE FILE MANAGER INTERFACE ROUTINES. 6.5K BACKGROUND, DISC (MAGNETIC TAPE WILL VASTLY INCREASE THE UTILITY) ARE THE HARDWARE REQUIREMENTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES FILE# 5: SOURCES **LOAD INSTRUCTIONS: THIS PROGRAM CONSISTS OF A MAIN PROGRAM (DUPER) WITH 3 SEGMENTS (DUPSA,DUPSB,DUPSC). THERE ARE ALSO 3 SUBROUTINES (CHECK,CONVT,CHARC). LOAD THE SUBROUTINES CHECK AND CONVT WITH THE MAIN PROGRAM DUPER. LOAD THE SUBROUTINE CHARC WITH THE SEGMENT DUPSA. ASSEMBLE WITH LG OPTION THE MAIN PROGRAM THE 3 SEGMENTS AND THE 3 SUBROUTINES IN THE FOLLOWING SEQUENCE: DUPER,CHECK,CONVT,DUPSA,CHARC, DUPSB,DUPSC. IF A LOADER REVISION D OR LATER IS AVAILABLE, LOAD FROM LG WITH PARAMETER 4=1. IF ONLY A LOADER OF OLDER VINTAGE THAN REVISION D IS AVAILABLE, THEN LOAD FROM PAPER TAPE. **RUN INSTRUCTIONS: SCHEDULE WITH *ON,DUPER,P1,P2 WHERE: P1 = LU SYSTEM TTY, DEFAULT = 1 P2 = LU LIST DEVICE, DEFUALT = 6 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. A SERIES OF QUESTIONS WILL BE PRINTED TO WHICH THE USER ANSWERS VIA THE CONSOLE. EACH ANSWER MAY BE "ABORT" WHICH WILL ABORT DUPER, OR THE ANSWER MAY BE "??" WHICH WILL RESULT IN A SHORT DESCRIPTION OF THE VALID ANSWERS TO BE PRINTED. IF THE ANSWER IS TO CONSIST OF MORE THAN ONE ELEMENT, THEN THE ELEMENTS MUST BE SEPARATED BY ONE OR MORE COMMAS AND/OR SPACES. QUESTIONS FOR EXECUTION COMMANDS, SOURCE AND DESTINATION. Q. EXECUTE WHAT? A. DUMP DLIST PURGE PRINT A COMBINATION OF THESE COMMANDS MAY BE GIVEN IN ANY ORDER. "DUMP" WILL DUMP SELECTED FILES, "DLIST" WILL PRINT A DIRECTORY LISTING ONLY OF SELECTED FILES. IF "DLIST" IS GIVEN WITH "DUMP" THEN A DIRECTORY LISTING WILL BE MADE AFTER THE DUMP OF THE WHOLE DESTINATION. "PURGE" WILL PURGE A FILE AFTER IT HAS BEEN DUMPED, ONLY LEGAL WHEN GIVEN WITH A DUMP COMMAND AND WITH DISC AS SOURCE. "PRINT" WILL LIST THE FILES WHICH ARE DUMPED. QUESTIONS CONCERNING THE SOURCE AND DESTINATION ARE THEN ASKED TO WHICH THE ANSWERS ARE SELF-EVIDENT. ("??" MAY ALWAYS BE GIVEN FOR MORE INFORMATION). IF "MTAPE" IS GIVEN AS DESTINATION THEN "UPDATE DESINATION TAPE?" WILL BE ASKED. ANSWERING "YES" WILL CONNECT NEW FILES AFTER OLD, "NO" WILL START THE FILES FROM THE BEGINNING OF THE TAPE. CHECKS FOR DUPLICATE NAMES ARE MADE IN BOTH CASES. IF "NO" WAS GIVEN HERE AS ANSWER, THE WARNING WILL BE PRINTED THAT MAG. TAPE FILES MAY BE OVERWRITTEN, ANSWER "YES" TO THE QUESTION "CONTINUE?" IF THIS IS PERMITTED, OTHERWISE TYPE "NO". IF "DLIST" AND/OR "PRINT" HAS BEEN SPECIFIED THEN "MASTER SECURITY CODE?" WILL BE ASKED. GIVING THE CORRECT CODE WILL RESULT IN THE LISTINGS INCLUDING FILE SECURITY CODES. NOTE: ALL ANSWERS IN ASCII MAY BE ABBREVIATED TO THE TWO FIRST CHARACTERS. QUESTIONS FOR FILE SELECTION HERE THE ELEMENTS OF AN ANSWER MAY CONTINUE ON A NEXT LINE IF & IS GIVEN AS LAST ELEMENT. ANY OF THE FOLLOWING THREE QUESTIONS MAY BE ANSWERED WITH THE EXCEPT OPTION WHICH WILL EXCLUDE SELECTED FILES. PRECEDE ELEMENTS WHICH ARE TO BE EXCLUDED WITH "EXCEPT". IF ALL FILES WITH THE ASKED SPECIFICATION ARE TO BE TAKEN TYPE "ALL" AS ANSWER. Q. FILE NAME (S)? A FILTER MAY BE USED HERE TO SELECT NAMES WITH SIMILAR CHARACTERS. EACH CHARACTER SPECIFIED IN THE FILTER MUST BE MATCHED BY VALUE AND POSITION WITH A CHARACTER IN THE FILE NAME E.G. AB**** SPECIFIES ALL NAMES STARTING WITH AB. Q. SECURITY CODE (S)? EITHER ASCII CHARACTERS OR NUMERIC, OR A COMBINATION OF BOTH MAY BE GIVEN. Q. TYPE (S)? ONLY NUMERIC. 2. THE DUMP AND/OR DIRECTORY LISTING WILL NOW BE EXECUTED. THE PROGRAM TERMINATES WITH THE MESSAGE "END DUPER" OR AFTER AN IRRECOVERABLE ERROR WITH "DUPER ABORTED". **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE FOLLOWING ERROR MSG'S MAY OCCUR DURING THE EXECUTION OF DUPER. ***MESSAGE*** ***EXPLANATION*** OVERFLOW TOO MANY SELECTIONS IN STACK. NOT LEGAL ENTRY CARTRIDGE LABEL OR LU OR FILE TYPE NOT NUMERIC. INPUT ERROR ERROR IN A FILE OR SOURCE OR DESTINATION SPECIFICATION. PURGE WITHOUT DUMP NOT LEGAL SELF EVIDENT NOT MOUNTED N CARTRIDGE N NOT MOUNTED MTAPE WON'T BE PURGED A WARNING ONLY LOCKED N CARTRIDGE N LOCKED INPUT = OUTPUT DISC SELF EVIDENT INPUT = OUTPUT MT,GIVE NEW LU SELF EVIDENT OUTPUT MAKE READY MTAPE MAG. TAPE PROBABLY OFF-LINE NOT A MTAPE UNIT MAG. TAPE DRIVER NOT 20 SERIES MTAPE DOWN SELF EVIDENT MTAPE ERROR PARITY OR TIMING ERROR END OF TAPE END OF MAG. TAPE BUG! FMGR ERR-NNN NNNNN FILE MANAGER ERROR NUMBER AND ADDRESS GIVEN DUPLICATE NAME FILENAME SELF EVIDENT FILE TOO LONG NO ROOM FILENAME SELF EVIDENT DIRECTORY FULL SELF EVIDENT OPEN FILENAME OPENED FILES ARE NOT DUMPED TEMP DIREC FULL MAX. OF 16X(NUMBER OF SECTOR/TRACK) FILES ON 1 MAG. TAPE DISC I/O ERROR SELF EVIDENT **MISCELLANEOUS: SPECIAL CONSIDERATIONS ZERO TYPE FILES ARE NEVER DUMPED. FILES WHICH ARE OPENED TO ANOTHER PROG OR WHICH ARE ON A LOCKED DISC ARE NOT DUMPED. E02801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DLU **PROGRAM TITLE: DLU FOR RTE **REVISION? NO **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: DUMP MAGNETIC TAPE SAVE/RESTORE CARTRIDGE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 30K OCTAL PARTITION **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: DLU IS A PROGRAM TO DUMP, RESTORE AND VERIFY WHOLE 7900 CARTRIDGES TO AND FROM MAGNETIC TAPE. IT IS COMPATIBLE WITH THE STAND-ALONE DLU HP 25123-60030 BUT RUNS UNDER RTE. HARDWARE REQUIREMENTS: 30K OCTAL PARTITION, 7900 AND MAGNETIC TAPE DRIVE. RTE OPERATING SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: COMPILE AND LOAD USING NORMAL PROCEDURES. DLU IS NOT SEGMENTED. **RUN INSTRUCTIONS: TO RUN: RU,DLU[,TERMINAL[,INPUT[OUTPUT]]] TERMINAL LU OF TERMINAL FROM WHICH DLU IS BEING RUN. USED FOR ERROR MESSAGES AND "END DLU" MESSAGE. DEFAULT IS 1. INPUT LU FOR INPUT OF COMMANDS. DEFAULT IS TERMINAL. OUTPUT LU FOR OUTPUT OF PROMPTS. DEFAULT IS TERMINAL. THE SEPARATION OF INPUT & OUTPUT IS FOR EASE OF RUNNING IN BATCH - THE PROMPTS CAN BE SENT TO A SUITABLE DRAIN. **INPUT/OUTPUT EXAMPLES: EXAMPLE TERMINAL SESSION: *RU,DLU (NO PARAMETERS NEEDED IF ON LU1) RTE DISC DUMP/LOAD MT FILE NAME? UNIT 10 TASK? COPY COPY FROM? DISC DISC LU? 12 MT FILE NO? 1 ID? CR 12 19676-09-21 TASK? V (ONLY 1ST LETTER OF COMMAND NEEDED) DISC LU? 12 MT FILE NO? 1 CR 12 1976-09-21? YES VERIFY COMPLETE TASK? /E END DLU **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ON DETECTION OF FMP ERRORS, DLU HALTS WITH THE ERROR & LOCATION REPORTED ON THE TERMINAL. **MISCELLANEOUS: THE CORE REQUIREMENT COULD BE REDUCED A LITTLE BY SHORTENING THE VERIFY BUFFER, AT THE EXPENSE OF RUNNING TIME. E02901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FMP-UTILITIES **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: FILES MAGNETIC TAPE SAVE/RESTORE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 2116 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THESE THREE PROGRAMS ALLOW THE USER TO RESTORE, SAVE, OR RETRIEVE FILE MANAGER FILES ON 7970 OR 3030 MAG TAPE TRANSPORTS AND A 7900 OR 7905 DISC. ALL UTILITIES ARE COMPLETELY CONVERSATIONAL AND SELF- CONFIGURING WITH ELABORATE ERROR CHECKING. CHECKS ARE MADE TO ENSURE FILE MANAGER DIRECTORY COMPATABILITY. THESE UTILITIES OPERATE ON A 2116 OR LATER COMPUTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: COMPILE AND LOAD TAPES 1 AND 2 SEPARATELY. ASSEMBLE TAPES 3 AND 4 SEPARATELY AND LOAD TOGETHER. THE ASCII SUBROUTINE IS CALLED FGETR. **RUN INSTRUCTIONS: RUN WITH NO PARAMETERS OR RU, JRSTR ,LU JSAVE LU= TERMINAL LUN. **INPUT/OUTPUT EXAMPLES: J R S T R RU,JRSTR /JRSTR: REV 4-24-76 /JRSTR: MAG TAPE LU: 8 /JRSTR: MAG TAPE FILE: (<0 = DIRECTORY, 0 = END)1 CR=15: LWS SEICUS JSAVE @ 800 BPI 4/JAN/77 ?YES /JRSTR: DISC LU: 15 /JRSTR: CR 'MASTER' DIRECTORY ON TRACK 202 /JRSTR: MAG TAPE FILE: 0 /JRSTR: DONE! : J S A V E RU,JSAVE /JSAVE: REV 5-04-76 /JSAVE: MAG TAPE LU: 8 /JSAVE: DISC LU: ([,LAST TRACK] LU= 0 => END) 15 /JSAVE: MAG TAPE FILE: 1 /JSAVE: HEADER: CR=15: LWS SEICUS JSAVE @ 800 BPI 4/JAN/77 /JSAVE: DISC LU: 0 /JSAVE: DONE! : F G E T R RU,FGETR MAG TAPE LU: 8 DO YOU WISH A DIRECTORY ?NO FILE NAME: &FGETR WHAT SECURITY CODE?LS MAG TAPE FILE: 1 CR=15: LWS SEICUS JSAVE @ 800 BPI 4/JAN/77 ? YES NO FILE ANY MORE ? YES DO YOU WISH A DIRECTORY ?NO FILE NAME: &SMUT WHAT SECURITY CODE?LS MAG TAPE FILE: 1 CR=15: LWS SEICUS JSAVE @ 800 BPI 4/JAN/77 ?YES FILE CREATION ERROR00- 02 ANY MORE ? NO : **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERROR MESSAGES ARE SELF-EXPLANATORY **MISCELLANEOUS: E03001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCOPY **PROGRAM TITLE: RTE 7900/7905 TO MULTIPLE FLEXIBLE DISCS **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: DISC CARTRIDGE COPY FILES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: GCOPY COPIES ONE 7900/7905, 96 SECTOR/TRACK, DISC LU, TO MULTIPLE FLEXIBLE DISCS (60 SECTORS/TRACKS) IN FILE MANAGER FORMAT. IN OTHER WORDS, ONE 7900/7905 DISC LOGICAL UNIT MAPS TO MULTIPLE FLEXIBLE DISC CARTRIDGES. GCOPY STARTS AT THE TOP OF THE 7900/7905 DIRECTORY AND COPIES AS MANY FILES AS IT CAN TO THE FIRST FLEXIBLE DISC. IT THEN ASKS FOR THE NEXT DISC. THIS CONTINUES UNTIL ALL DISCS ARE COPIED. THE USER ALSO HAS THE OPTION OF SKIPPING A DISC OR NUMBER OF DISCS. BY SKIPPING THROUGH ALL THE DISCS THE FIRST TIME, THE USER MAY DETERMINE THE NUMBER OF FLEXIBLE DISCS NEEDED FOR THE COPY. A DIRECTORY LIST MAY BE OBTAINED FOR EACH FLEXIBLE DISC. NOTE: ONLY ONE 7900/7905 DIRECTORY TRACK IS ALLOWED. NO EXTENTS ARE ALLOWED ON SOURCE DISCS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: GCOPY SOURCE (FTN4,L) **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: :RU,LOADR,99,LU#,,,3 :OR * RU,GCOPY,INPUT,LIST GCOPY: ENTER SOURCE (7900/7905) DISC LU#: (YOU ENTER THE DISC LOGICAL UNIT THAT YOU WANTED COPIED TO THE FLEXIBLE DISCS, IN FILE MANAGER FORMAT.). GCOPY: ENTER DESTINATION (9885) DISC LU#: (YOU ENTER THE FLEXIBLE DISC LOGICAL UNIT NUMBER THAT YOU WANT COPIED TO). GCOPY: DISC #1 GCOPY: DISC #? (YOU ENTER 1 IF YOU WANT TO EITHER LOOK AT THE NAMES OF FILES WHICH WILL GO ON THE FIRST FLEXIBLE DISC OR IF YOU ACTUALLY WANT TO COPY THE 1ST DISC. LIKEWISE, ENTER N FOR THE NTH DISC YOU DESIRE. GCOPY: SKIP ? RETURN OR YES RETURN WILL CAUSE THE NEXT CONSECUTIVE DISC TO BE SELECTED. OTHERWISE: GCOPY: INSERT THE RIGHT DISC THE USER NOW PHYSICALLY INSERTS THE PROPER DISC AND ENTERS: *GO,GCOPY GCOPY: CARTRIDGE #? AT THIS POINT THE USER CREATES A CARTRIDGE NUMBER FOR THE NEW FLEXIBLE DISC CARTRIDGE ABOUT TO BE COPIED. AFTER RETURN THE DISC IS COPIED. GCOPY THEN RETURNS AND ASKS FOR THE NEXT DISC. GCOPY: DISC # X GCOPY: DISC # ? NOTE: A /E AFTER 'DISC#?' TERMINATES THE PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E03101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: JOB3M **PROGRAM TITLE: TAPE CARTRIDGE SAVE AND RESTORE **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: FILES CARTRIDGE MAGNETIC TAPE SAVE/RESTORE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE CONSISTS OF A MAIN PROGRAM JOB3M WRITTEN IN FORTRAN, TWO FORTRAN SUBROUTINES AND AN ASSEMBLY LANGUAGE SUBROUTINE DESIGNED TO OPERATE IN THE RTE-II -III ENVIRONMENT USING THE FILE MANAGER PACKAGE (FMP) CALLS AND INTERACTS WITH MAGNETIC TAPE CARTRIDGES. THIS PERMITS THE USER TO SAVE AND RESTORE FILE MANAGER FILES IN 128 WORD RECORDS, THUS INCREASING THE STORAGE CAPACITY OF THE TAPE TO ABOUT 468 BLOCKS. A HEADER IS WRITTEN WHICH PROVIDES A MEANS TO RECREATE THE FILE MANAGER FILE ON RECOVERY. A LIST OF FILES IS INPUT FROM EITHER KEYBOARD OR A FILE MANAGER FILE. ANY EXTENTS IN THE INPUT FILES WILL BE PACKED OUT UPON RECOVERY. RECOVERY CAN BE SELECTED FILES FROM THE CARTRIDGE OR ALL FILES ON THE CARTRIDGE. MEANS ARE PROVIDED TO COPY THE DIRECTORY AND USER INFORMATION. HARDWARE REQUIREMENTS ARE: AN HP2100, 21MX, OR 21MX E-SERIES COMPUTER, A 7900, 7905, OR 7920 DISC FILE SYSTEM, AND A CRT WITH MAGNETIC TAPE CARTRIDGE OPTION DIRECTLY CONNECTED TO 12966 BUFFERED ASYNCHRONOUS DATA SET INTERFACE KIT WITH OPTION 001. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: LOAD THE THREE FORTRAN FILES, JOB3M, COMPA, DATE, AND IGET/IXGET WITH THE FOLLOWING CONSIDERATIONS: IF YOUR SYSTEM IS RTE-II AND DOES NOT HAVE IGET, ASSEMBLE AND LOAD THE ONE SUPPLIED. IF YOUR SYSTEM IS RTE-III, REPLACE THE CALL TO IGET WITH A CALL TO IXGET, ASSEMBLE AND LOAD THE ONE SUPPLIED. **RUN INSTRUCTIONS: :RU, JOB3M [,LU] WHERE LU IS THE LOGICAL UNIT OF THE INTERACTIVE DEVICE, TYPICALLY A CRT **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE PROGRAM REQUESTS THE TASK. ENTER CK TO CHECK A LIST, WR WRITE A TAPE, RE RECOVER A FILE, RA RECOVER ALL FILES, (EN WILL TERMINATE). NEXT ENTER CARTRIDGE NUMBER (POSITIVE) OR CARTRIDGE NUMBER LU (NEGATIVE), (RECOVERY CANNOT BE TO SYSTEM LU). NEXT THE PROGRAM REQUESTS AN LU FOR A RECORD COPY OF THE DIRECTORY, WHICH IS TYPICALLY A LINE PRINTER, IF NO RECORD LIST IS DESIRED, ENTER 0, BIT BUCKET OR JUST A C/R. FOR CASE CK AND WR THE PROGRAM NEXT REQUESTS A SOURCE LIST, WHICH MAY BE A FILE MANAGER FILE NAME OR MAY BE ENTERED INTERACTIVELY BY ENTERING ::. IF ENTERED INTERACTIVELY, THE PROGRAM CREATES THE SOURCE LIST ON A FILE JOB3MM. THE INTERACTIVE LIST IS TERMINATED BY ENTERING ::. THE FILE MANAGER FILE SHOULD BE AN ASCII LIST OF THE FILES TO BE SAVED, ONE PER LINE. THE PROGRAM THEN REQUESTS THE LU OF THE MAGNETIC TAPE CARTRIDGE UNLESS THE TASK IS CK. FOR RE AND RA SEE BELOW. THE FILES ON THE SOURCE LIST ARE OPENED IN SEQUENCE AND CHECKED FOR ERRORS AND TYPE, ONLY TYPE 3, 4, OR 5 CAN BE USED. A TABLE IS OUTPUT ON THE CRT WITH A HEADING FILE NUMBER, NAME, TYPE AND INTERNAL IDENTIFIER CODE IF PRESENT (SEE DISCUS- SION IN SOURCE LISTING), NUMBER OF BLOCKS, RECORD NUMBER ON THE TAPE OF THE FIRST BLOCK OF THIS FILE AND THE NUMBER OF BLOCKS REMAINING ON THE TAPE. A TABLE IS BUILT BY THE PROGRAM, POINTING TO THE TRACK NUMBER AND SECTORS REQUIRED FOR WRITING THE TAPE. THE PROGRAM THEN REQUESTS THE USER'S INITIALS, ENTER UP TO 4 CHARACTERS, THE PROGRAM THEN REQUESTS A CARTRIDGE I.E., ENTER 6 CHARACTERS OR A C/R IN WHICH CASE THE SOURCE FILE NAME WILL BE USED. THE PROGRAM THEN REQUESTS UP TO 40 CHARACTERS OF IDENTIFYING TEXT. THE PROGRAM THEN WRITES THE TAPE AND WHEN COMPLETE ASKS IF THE SOURCE FILES ARE TO BE PURGE. REPLY YE TO PURGE THE FILES, ANY OTHER REPLY INCLUDING C/R IS ASSUMED TO MEAN NO. THE PROGRAM THEN OUTPUTS A SUMMARY LINE OF NUMBER OF BLOCKS WRITTEN AND EXITS. FOR TASK RE AND RA, THE DIRECTORY IS DISPLAYED ON THE INTERACTIVE DEVICE, AND IF RE, AN ADDITIONAL LINE REQUESTING THE FILE NUMBER TO BE RECOVERED. ENTER THE FILE NUMBER FROM THE DIRECTORY LISTING OR ZERO TO TERMINATE PROGRAM. THE PROGRAM CREATES A FILE NAME JOB3MM AND WRITES THE APPROPRIATE BLOCK TO THIS FILE. THIS FILE IS THEN CHECKED FOR ERRORS AND RENAMED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: 1. CARTRIDGE (NUMBER) NOT FOUND THE PROGRAM CHECKED THE CARTRIDGE LIST AND DID NOT FIND THE CARTRIDGE. CHECK CARTRIDGE LIST, MOUNT CARTRIDGE CORRECT NUMBER. PROGRAM WILL NOT RECOVER FILES TO SYSTEM CARTRIDGE (LU2). 2. FILE SLFILE NOT FOUND THE FILE SLFILE THE SOURCE LIST FILE NOT FOUND ON ANY MOUNTED CARTRIDGE. CORRECT NAME OR ENTER /E TO TERMINATE PROGRAM. 3. LU LU NOT READY THE TAPE CARTRIDGE IS NOT READY, MAKE READY AND TRY AGAIN. 4. LU LU NOT A 3M CARTRIDGE DEVICE THE DRIVER FOR THIS LU IS NOT DVR 05. RE-ENTER THE PROPER LU. 5. LINE N FILE SLFILE ERROR M ERROR M WAS FOUND WHEN CHECKING THE FILE ON LINE N OF SOURCE LIST FILE SLFILE. ONLY 7, RECORD LENGTH ERROR, 8 BUSY SHOULD BE ENCOUNTERED. 6. NNN NAMES ON FILE LIST LIMIT 125 THE DIRECTORY HAS A CAPACITY FOR 125 FILE NAMES, SHORTEN LIST. 7. TABLE OVERFLOW - OVERFLOW OF PROGRAM'S INTERNAL WORK TABLES REMOVE EXTENTS FROM SOURCE FILES AND TRY AGAIN OR REDUCE NUMBER OF NAMES ON FILE LIST. 8. EXTENT OUT OF ORDER FILE NAME THIS SHOULD NOT NORMALLY OCCUR. HOWEVER, IF YOU HAVE BEEN USING SMUT OR CMM3 OR A SIMILAR PROGRAM TO TRY TO RECOVER A DAMAGED DISC, DON'T GIVE UP YET. EACH EXTENT MUST BE ENCOUNTERED IN ORDER OF INCREASING DIRECTORY SEARCH SEQUENCE IN ORDER UP TO AN EXTENT CONTAINING AN END OF FILE WORD. DIRECTORY SECTORS ARE SEARCHED (0,1) (14,15) (28,29) (42,43) (56,57) (70,71) (84,85) THEN (2,3) (16,17).......(82,83). 9. TOO MANY BLOCKS NNN LIMIT MMM THE LIMIT MMM WAS GUESED AT TO LEAVE A FEW INCHES OF TAPE BEFORE DVR 05 BOMBS OUT. A DATA STATEMENT MBLOX SETS THIS PARAMETER IN THE SOURCE PROGRAM. 10. N ERRORS IN PASS ONE TAPE CANNOT BE WRITTEN IF ANY ERRORS FOUND. TAKE CORRECTIVE ACTION AND TRY AGAIN. 11. CREATE ERROR N ON RECOVERY THE PROGRAM TRIED TO CREATE FILE JOB3MM. LOOK FOR A FILE BY THIS NAME AND PURGE, CHECK AVAILABLE DISC SPACE. 12. ERROR N IN RECOVERED FILE THIS ERROR WAS DISCOVERED BY READING THE RECOVERED FILE WHICH WAS MADE BY COPYING THE REQUISITE NUMBER OF BLOCKS FROM THE TAPE TO FILE JOB3MM. 13. DUPLICATE FILE NAME FILNM THE PROGRAM TRIED TO RENAME JOB3MM FILNM. THE OPERATOR IS GIVEN A CHOICE OF RENAMING THE FILE, PURGING THE CURRENT FILE FILNM AND RENAMING THE NEW FILE OR SKIPPING THIS FILE. 14. ERROR N ON PURGE OF FILNM FROM 13 ABOVE PURGE WAS CHOSEN BUT FILNM CANNOT BE PURGED BECAUSE OF REASON N. ENTER EN TO TERMINATE PROGRAM. 15. PURGE ERROR N FILE FILNM THE OPTION TO PURGE THE FILES WRITTEN TO TAPE WAS TAKEN BUT FILNM CANNOT BE PURGED BECAUSE OF REASON N. 16. PURGE FILE FILNM FROM LU LU PROGRAM COULD NOT PURGE THIS FILE. 17. TAPE FORMAT ERROR ON RECOVERY THE TAPE SUPPLIED DOES NOT HAVE THE PROPER CHECK WORD. THERE IS AN ASCII CHECK WORD IN THE FIRST DIRECTORY RECORD WHICH IS CHECKED. **MISCELLANEOUS: E03201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TCMPR **PROGRAM TITLE: TAPE CASSETTE COMPARE **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: COMPARE CASSETTE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPARES THE DATA ON TWO TAPE CASSETTES, RECORD BY RECORD, LISTING THE DIFFERENCES BY WORD NUMBER. A SUMMARY OF THE COMPARISON IS OUTPUT. TCMPR REQUIRES THE 2645 TAPE CASSETTE OPTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: TCMPR SOURCE (FTN4,L) **LOAD INSTRUCTIONS: LOAD AS RTE BACKGROUND. **RUN INSTRUCTIONS: :ON,TCMPR,LISTLU,LUCARTI,LUCARTZ[,NOERS] WHERE NOERS IS THE LIMIT OF THE NUMBER OF ERROR RECORDS TO BE LISTED. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IF LISTING LU IS 6, LONGER LINES ARE WRITTEN. USER POSITIONS TAPE FOR BEGINNING OF TEST. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: BAD LU DEF. **MISCELLANEOUS: E03301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LIBRN **PROGRAM TITLE: LIBRN: SEPARATE/COMBINE BINARY RELOCATABLE PROGRAMS **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: RELOCATABLE FILES LIBRARY MERGE **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IV RTE-III RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: LIBRN IS A RTE UTILITY PROGRAM FOR SEPARATING AND COMBINING BINARY RELOCATABLE PROGRAMS AND SUBROUTINES. LIBRN ALSO MAY BE USED TO LIST THE NAMES AND OPTIONALLY THE ENTRY AND EXTERNAL DECLARATIONS OF RELOCATABLE PROGRAMS/SUBROUTINES. LIBRN PROCESSES RELOCATABLE PROGRAMS FROM ANY INPUT/OUTPUT DEVICE SUPPORTING RELOCATABLE READ/WRITE AND/OR RTE FMP TYPE 5 DISC FILES. INPUT COMMANDS MAY BE ISSUED FROM A KEYBOARD DEVICE. ANY ASCII INPUT DEVICE OR FROM A FMP TYPE 4 FILE. THE USER WILL FIND LIBRN EXTREMELY USEFUL IN UPDATING LIBRARY PAPER TAPES, MAGNETIC TAPES AND DISC FILES. LIBRN MAY ALSO BE USED TO RETRIEVE SUBROUTINES FROM THE SYSTEM DISC LIBRARY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: LIBRN SOURCE (MAIN) FILE# 3: NUM SOURCE (SUBROUTINE) FILE# 4: OCTAL SOURCE (SUBROUTINE) FILE# 5: RDLIB SOURCE (SUBROUTINE) FILE# 6: ALPHA SOURCE (SUBROUTINE) FILE# 7: ASCIN SOURCE (SUBROUTINE) FILE# 8: BINRY SOURCE (SUBROUTINE) FILE# 9: FETCH SOURCE (SUBROUTINE) FILE# 10: IFMGR SOURCE (SUBROUTINE) FILE# 11: PRINT SOURCE (SUBROUTINE) **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: SEE SOURCE LISTING OF LIBRN **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE LIBRN SOURCE LISTING. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SHOULD BE SELF-EXPLANATORY **MISCELLANEOUS: E03401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DBCPY **PROGRAM TITLE: IMAGE DATA BASE COPY UTILITY **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: DATA BASE IMAGE SAVE/RESTORE COPY **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: COPIES AN IMAGE/1000 DATA BASE TO AN EMPTY BASE. DBCPY CAN BE USED FOR BACK-UP, RECOVERY, AND RESTRUCTURING WITHOUT A MAG TAPE. IT CAN BE USEFUL EVEN IF A MAG TAPE IS PRESENT SINCE IT DOES NOT ABORT THE COPY ON FINDING AN ERROR IN THE DESTINATION DATA BASE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: "DBCPY - EDITED CONSOLE LOG FILE# 3: &DBCPY - SOURCE FILE# 4: &WHOMI - SOURCE SUBROUTINES USED BY DBCPY. FILE# 5: &DBCP2 - SOURCE (USES NO ADDITIONAL SUBROUTINES) **LOAD INSTRUCTIONS: SEE &DBCPY SOURCE FOR COMPLETE INSTRUCTIONS **RUN INSTRUCTIONS: SEE FILE "DBCPY FOR A SAMPLE RUN AND THE HEADING COMMENT OF &DBCPY FOR COMPLETE OPERATING INSTRUCTIONS. **INPUT/OUTPUT EXAMPLES: SEE "DBCPY FILE FOR SAMPLE RUN. **PROGRAM DESCRIPTION: WHOMI - RETURNS NAME OF CURRENTLY EXECUTING PROGRAMS FROM I.D. SEGMENT (RTE-II,III,IV) DBCPY MUST BE STOPPED WITH THE BR COMMAND, NOT BY ABORTING IT. IF DBCPY IS ABORTED TWO CLASS NUMBERS WILL BE LOST. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL IMAGE/1000 ERRORS ARE REPORTED ON THE LOG DEVICE. **MISCELLANEOUS: E03501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: GSAVE/GRSTR DISC LU SAVE AND RESTORE **REVISION? YES **PACKAGE: 5 **CATEGORY: 3 **KEYWORDS: CARTRIDGE DISC SAVE/RESTORE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: GSAVE, GSAV2, GRSTR, GRST2 ARE RTE UTILITY PROGRAMS WHICH SAVE (VERIFY) AND RESTORE (VERIFY) ANY FILE MANAGER DISC CARTRIDGES. GSAVE (GSAV2) ALLOW FROM 1 TO 20 DISC LU'S TO BE SAVED TO MAG TAPE WITH A MINIMUM OF OPERATOR ENTRY. THE OPERATOR ENTERS THE STRING OF DISC LU'S AND THE STARTING MAGTAPE FILE# ONLY. THE PROGRAM THEN SAVES AND VERIFIES EACH DISC LU, PRINTS APPROPRIATE MESSAGES TO THE TTY, AND IN THE EVENT OF A VERIFY ERROR IT WILL AUTOMATICALLY PROCEED TO THE NEXT LU (AFTER PRINTING A MESSAGE TO THAT EFFECT). IT ALSO CREATES ITS OWN HEADER WITH TBG TIME, DATE, LU#, CR#, CR LABEL, 1ST FMGR TRACK, AND THE NEXT AVAILABLE TRACK. GRSTR (GRST2) WILL SELECTIVELY RETRIEVE A GSAVE FILE FROM TAPE AND RESTORE IT TO ANY DISC LU#. IT WILL RESTORE A DIFFERENT LU, DIFFERENT SIZE LU, OR A DIFFERENT SYSTEM (RTE). IN THE EVENT THAT THE DESTINATION DISC LU IS NOT LARGE ENOUGH, GRSTR WILL PRINT A MESSAGE AND ABORT. THE DIFFERENCE BETWEEN GSAVE-GSAV2, AND GRSTR-GRST2 IS BUFFER SIZE AND THEREFORE THE REQUIRED PARTITION SIZE. GSAVE USES A 6144 WORD BUFFER AND GSAV2 USES A 2048 WORD BUFFER. NOTE: THESE PROGRAMS DO NOT WORK ON LU 2 OR 3. HARDWARE REQUIREMENTS ARE: A 7900,7905,7906,OR 7920 DISC DRIVE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: LTRAK SOURCE FILE# 3: GSAVE SOURCE FILE# 4: GRSTR SOURCE FILE# 5: GSAV2 SOURCE FILE# 6: GRST2 SOURCE FILE# 7: DATE SOURCE **LOAD INSTRUCTIONS: 1. STORE <RAK, &GSAVE, &GRSTR, &GSAV2, &GRST2, AND &DATE ON DISK 2. A. RU, FTN4, &GSAVE, TTY,- B. RU, FTN4, &GRSTR, TTY,- C. RU, FTN4, &DATE, TTY,- 3. RU, ASMB, <RAK, TTY,- 4. RU, LOADR GSAV2 REQUIRES 10 PAGES RE,%GSAVE RE,%LTRAK REQUIRES 18 PAGES RE,%DATE END 5. RU, LOADR RE,%GRSTR RE,%LTRAK REQUIRES 18 PAGES RE,%DATE **RUN INSTRUCTIONS: RU, GSAVE, TTY, TAPE LU# (IF NOT EQUAL TO 8) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE ABSTRACT **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: LU 2(3) CANNOT BE GSAVED (GRSTR'D)! USE SAVE, VERFY LU M IS NOT MOUNTED VERIFY BAD! ERROR ON TRACK# MMMM #TRKS REQUIRED = NNNN, #TRKS ON LU#NN = NNNN (THIS ERROR MESSAGE IS IN GRSTR ONLY) **MISCELLANEOUS: E03601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CHAR **PROGRAM TITLE: PAPER TAPE TITLER **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: LABEL PAPER TAPE CHARACTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 389 WITH SUBPROGRAMS (251 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS FORTRAN-CALLABLE SUBROUTINE ALLOWS THE USER TO LABEL HIS PAPER TAPES UNDER PROGRAM CONTROL. CHARACTER SIZE IS EQUIVALENT TO THE WIDTH OF EIGHT-LEVEL PUNCHED PAPER TAPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: STANDARD ASSEMBLY AND LOAD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT CHAR . . . . . JSB CHAR DEF *+3 IF COUNT = 1 ONLY ONE CHAR/16 BIT-WORD (RIGHT HALF) DEF COUNT = 2 TWO CHAR/16-BIT WORD DEF WORD . . . . COUNT DEC 2 WORD ASC 1,AB . . . END CALLING SEQUENCE - FORTRAN . . DIMENSION I(5) . . . READ (5,10)I 10 FORMAT (5A1) . . . DO 20 J = 1,5 20 CALL CHAR (1,I(J)) . . END SPECIAL CONSIDERATIONS WHEN PUNCHING 1 CHARACTER PER 16-BIT WORD WITH FTN4, CARE MUST BE TAKEN TO INSURE THAT A CALL TO "OLDIO" (AS IN TEST CASE) IS MADE PRIOR TO CALL TO CHAR. ANOTHER FIX FOR THIS IS TO REPLACE LINE 25 OF SUBROUTINE CHAR WITH A "NOP". EITHER OF THESE FIXES WILL ALLOW THE USER TO RUN UNDER "NEWIO" OR "OLDIO", WHICHEVER IS DESIRABLE TO HIM. THE SOURCE TAPE FOR CHAR IS SET FOR "OLDIO". WITH VERY LITTLE CHANGE IN THE EXEC CALL, THIS PROGRAM CAN RUN WITH THE DOS/DOS-M SYSTEM. ALSO THERE SHOULD NOT BE ANY PROBLEM IN CONVERTING THE OUTPUT PORTION FOR A BCS SYSTEM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E03701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: ALGOL ARRAY TRANSFER FOR SEGMENTATION **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: ARRAY ALGOL SEGMENTATION **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS DOS-M **MEMORY REQUIREMENTS: 3560 WITH EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE ALLOWS THE TRANSFER OF ARRAY DATA BETWEEN ALGOL MAIN AND SEGMENTS UNDER DOS, DOS-M, OR RTE. SINCE COMMON IS NOT NORMALLY AVAILABLE IN ALGOL, THIS ROUTINE ACCEPTS THE ADDRESSED OF UP TO 10 ALGOL ARRAYS AND SAVES THE ADDRESSES OF THE ARRAY TABLES. ANOTHER CALL ALLOWS THE SEGMENTS TO GET THESE ADDRESSES SO THAT IT MAY USE THE ORIGINAL ARRAY DIRECTLY. THUS, COMMON IS ESTABLISHED BETWEEN A MAIN PROGRAM AND ITS SEGMENTS BY COPYING THE ORIGINAL ARRAY TABLE OF MAIN INTO A DUMMY ARRAY TABLE OF THE SEGMENT. REQUIRES ALGOL COMPILER HP24129B. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: USUAL COMPILE/ASSEMBLE AND LOAD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ENTRY POINTS ITATA AND RTATA TWO ENTRY POINTS ARE PROVIDED ONLY TO ALLOW ALGOL TO CALL WITH THE NAME OF REAL AND INTEGER ARRAYS. THERE IS NO FUNCTIONAL DIFFERENCE BETWEEN ITATA AND RTATA. 0004* TRANSFERS ALGOL ARRAYS FOR USE IN ALGOL SEGMENTED SYSTEMS. 0005* TATA HAS ROOM FOR A CERTAIN NUMBER OF ARRAY TABLE ADDRESSES, 0006* (THE NUMBER IS EQUAL TO SIZE) 0007* AND EXPECTS TO BE CALLED TO REMEMBER A CERTAIN ARRAY. 0008* THIS CALL IS : ITATA(-N,A) OR RTATA(-N,A) 0009* WITH - TO SAY "THIS IS THE CALL TO SET THE ADDRESS" 0010* N THE SEQUENCE NUMBER ( 1 TO MAXIMUM SIZE ) 0011* A (WITHOUT INDEX) THE NAME OF THE ARRAY 0012* USE ITATA FOR INTEGER ARRAYS AND RTATA FOR REAL ARRAYS. 0013* 0014* THE CALLING SEQUENCE TO GET THE ARRAY IS : 0015* ITATA(+N,A) OR RTATA(+N,A) 0016* WITH + TO SAY "GIVE ME THE ARRAY" 0017* N THE SEQUENCE NUMBER ( 1 TO MAXIMUM SIZE ) 0018* A (WITHOUT INDEX) THE NAME OF THE ARRAY. THIS ARRAY 0019* HAS TO BE DECLARED IN THE CALLING PROGRAM IN THIS 0020* WITH CORRECT TYPE INTEGER OR REAL AND WITH 0021* CORRECT NUMBER OF INDICES, BUT SHOULD BE MINIMUM IN 0022* SIZE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: PRINTOUT OF TA 00 NO -N CALL BEFORE +N CALL, I.E. NO ARRAY SAVED, BUT ARRAY REQUESTED TA 01 N = 0 OR \N\>10 TA 02 ARRAY TYPE OF GRANTED ARRAY AND OF REQUEST ARRAY DIFFERS OR # OF INDICES DIFFERS **MISCELLANEOUS: THE SEGMENT REQUESTING AN ARRAY SHOULD DECLARE IT WITH SAME TYPE AND SAME NUMBER OF INDICES AS THE ORIGINAL ARRAY, BUT SHOULD GIVE MINIMUM DIMENSIONS, 1:1, TO SAVE CORE SPACE. BE SURE TO HAVE THE ARRAY ALWAYS CORE RESIDENT, I.E., DON'T HAVE IT IN A SEGMENT. E03801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FORTRAN IV CORE SAVER **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: FORMATTING FORTRAN **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE DOS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ALLOWS THE FORTRAN IV PROGRAM THAT USES ONLY FORTRAN II I/O FUNCTIONS TO USE THE FORTRAN II FORMATTER AND THUS SAVE A CONSIDERABLE NUMBER OF WORDS. THE SAVINGS IN RTE/DOS ARE A MAXIMUM OF 882 WORDS. IN BCS THE SAVINGS ARE A MAXIMUM OF 651 WORDS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: IN MTS, DOS, DOS-M AND RTE, LOAD RELOCATABLE TAPE GENERATED BY ASSEMBLING THIS PROGRAM, PRIOR TO THE FORMATTER AND THE REST OF THE LIBRARY. DO NOT LOAD THE FORTRAN IV FORMATTER; HOWEVER, IF FORTRAN IV FEATURES SUCH AS DOUBLE PRECISION OR COMPLEX NUMBERS ARE TO BE USED, THE FORTRAN IV LIBRARY, EXCLUSIVE OF THE FORMATTER, SHOULD BE LOADED. IN ANY CASE, SINCE THE FORTRAN IV ARRAYS ARE DIFFERENT, THE ..MAP ROUTINE FROM THE FORTRAN IV LIBRARY MUST BE LOADED IF ARRAYS ARE USED. IN BCS, NON-MTS, LOAD THE RELOCATABLE TAPE, IF NEEDED (I.E., IF REAL OR INTEGER I/O IS BEING DONE WITH FORTRAN IV), JUST BEFORE LOADING THE FORTRAN FORMATTER. AFTER THE FORMATTER IS LOADED, THE LIBRARY SWITCH IS TURNED ON AND THE APPROPRIATE LIBRARIES ARE LOADED. IN BCS, IT IS OKAY TO SUBMIT THE FORTRAN IV FORMATTER AT THIS TIME (IT WILL NOT BE LOADED HOWEVER). **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ENTRY POINT(S) .RIO. REAL VARIABLE I/O CALLING SEQUENCE JSB .RIO. DEF REAL CAUSES A CALL TO .RAR. FOR AN ARRAY LENGTH OF 1. .RAY. REAL ARRAY I/O CALLING SEQUENCE JSB .RAY. DEF ADDRESS DEC LENGTH CAUSES A CALL TO .RAR. .IIO. INTEGER VARIABLE I/O CALLING SEQUENCE JSB .IIO. DEF INTEGER CAUSES A CALL TO .IAR. FOR AN ARRAY LENGTH OF 1. IAY. INTEGER ARRAY I/O CALLING SEQUENCE JSB .IAY. DEF ADDRESS DEC LENGTH CAUSES A CALL TO .IAR. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E03901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RTEM **PROGRAM TITLE: ON-LINE SYSTEM LOAD FOR MOVING-HEAD RTE. **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DISC BOOT-UP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 97 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE USER TO START UP A MOVING-HEAD RTE SYSTEM FROM ANOTHER RTE SYSTEM (WITH A FIXED-HEAD OR MOVING-HEAD DISC) WITHIN THE SAME HARDWARE CONFIGURATION WITHOUT HALTING THE COMPUTER AND LOADING A PAPER TAPE BOOTSTRAP. THE I/O CHANNELS OF THE MOVING-HEAD DISC, THE SUBCHANNEL NUMBER AND THE STARTING TRACK NUMBER OF THE SYSTEM TO BE STARTED ARE SPECIFIED IN THE PROGRAM DIRECTIVE. A TYPICAL DIRECTIVE MIGHT BE "ON,RTEM,22,1,100" **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RTEM SOURCE **LOAD INSTRUCTIONS: ASSEMBLE AND LOAD THE PROGRAM IN AN RTE SYSTEM IN WHICH IT IS DESIRABLE TO TRANSFER TO A MOVING-HEAD RTE SYSTEM WITHIN THE SAME HARDWARE CONFIGURATION. **RUN INSTRUCTIONS: CALL THE PROGRAM WITH THE DIRECTIVE ON,RTEM,CHAN,SUBCH,TRACK WHERE: "CHAN" IS THE HIGHER PRIORITY I/O CHANNEL NUMBER (IN DECIMAL) OF THE MOVING-HEAD DISC. "SUBCH" IS THE SUBCHANNEL NUMBER OF THE DISC ON WHICH THE SYSTEM RESIDES. "TRACK" IS THE STARTING TRACK NUMBER OF THE RTE. **INPUT/OUTPUT EXAMPLES: IF THE SYSTEM IS ON SUBCHANNEL 1 AND THE DISC I/O CHANNELS ARE 26 AND 27 (OCTAL) AND THE SYSTEM STARTS AT TRACK 100, THE DIRECTIVE IS ON,RTEM,22,1,100 (DECIMAL NUMBERS) THE SYSTEM SHOULD START UP JUST AS IT NORMALLY DOES WITH THE PAPER TAPE BOOTSTRAP. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E04001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DOSM **PROGRAM TITLE: DOS-M BOOTSTRAP PROGRAM FROM RTE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DISC BOOT-UP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M **MEMORY REQUIREMENTS: 138 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE USER TO START UP A DOS-M SYSTEM FROM AN RTE SYSTEM HARDWARE CONFIGURATION WITHOUT HALTING THE COMPUTER AND LOADING A PAPER TAPE BOOTSTRAP. THE I/O CHANNELS OF THE MOVING-HEAD DISC AND THE SUBCHANNEL NUMBER ARE SPECIFIED IN THE PROGRAM DIRECTIVE. A TYPICAL DIRECTIVE MIGHT BE: "ON,DOSM,22,1" **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DOSM SOURCE **LOAD INSTRUCTIONS: ASSEMBLE AND LOAD THE PROGRAM IN AN RTE SYSTEM IN WHICH IT IS DESIRABLE TO TRANSFER TO A DOS-M SYSTEM WITHIN THE SAME HARDWARE CONFIGURATION. **RUN INSTRUCTIONS: CALL THE PROGRAM WITH THE DIRECTIVE ON,DOSM,CHAN,SUBCH WHERE: "CHAN" IS THE HIGHER PRIORITY I/O CHANNEL NUMBER (IN DECIMAL) OF THE MOVING-HEAD DISC. "SUBCH" IS THE SUBCHANNEL NUMBER OF THE DISC ON WHICH THE SYSTEM RESIDES. **INPUT/OUTPUT EXAMPLES: IF THE SYSTEM IS ON SUBCHANNEL 1 AND THE DISC I/O CHANNELS ARE 26 AND 27 (OCTAL) THE DIRECTIVE IS ON,DOSM,22,1 (DECIMAL NUMBERS) THE SYSTEM SHOULD START UP JUST AS IT NORMALLY DOES WITH THE PAPER TAPE BOOTSTRAP. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E04101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MTU **PROGRAM TITLE: EASY MAGNETIC TAPE I/O AND STATUS INFORMATION **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: STATUS MAGNETIC TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M RTE **MEMORY REQUIREMENTS: 280 WITH EXTERNAL SUBPROGRAMS (260 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS UTILITY IS USED IN A DOS/DOS-M OR RTE ENVIRONMENT TO ELIMINATE THE TEDIOUS PROGRAMMING REQUIRED TO ACHIEVE MAGNETIC TAPE DATA TRANSFER OR STATUS INFORMATION. IT CHECKS FOR ON-LINE CONDITION, WRITE RING PRESENT, END OF TAPE, AND CALLS EXEC FOR DATA TRANSFERS AND STATUS. BY CHECKING THE INDICATORS RETURNED BY THIS ROUTINE THE USER MAINTAINS THE FLEXIBILITY OF BRANCHING IN HIS OWN PROGRAM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: MTU SOURCE **LOAD INSTRUCTIONS: ASSEMBLE PROGRAM AND STORE (OR SAVE) RELOCATABLE FOR USE AS A LIBRARY ROUTINE. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE LISING **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E04201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE LOGIN AND LOGBOOK **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: STATUS REPORTS ACCOUNTING **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: WITH EXTERNAL SUBPROGRAMS, 3494 FOR LOGIN AND 9579 FOR LOGBOOK **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE TWO FORTRAN PROGRAMS IN THIS PACKAGE ALLOW A USER TO (LOG): TIME-IN OF JOB, DESCRIPTION OF JOB, DAY, TIME-OUT OF JOB; AND GENERATE A PERIODIC SUMMARY REPORT WHICH INCLUDES THE NUMBER OF WORKING DAYS, THE NUMBER OF COMPUTER HOURS AVAILABLE, ONE-LINE PRINTOUTS OF EACH JOB RUN ALONG WITH ITS RUN-TIME, TOTAL USER HOURS, TOTAL COMPUTER HOURS, AND OTHER INFORMATION PERTINENT TO AN RTE ENVIRONMENT. THIS PACKAGE REQUIRES AN ASR-35 TELETYPE, TIME BASE GENERATOR, PHOTO- READER, TTY AND 16K CORE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES **LOAD INSTRUCTIONS: 1. USE STANDARD PROCEDURES TO COMPILE, LOAD, AND STORE THE LOG BOOK PROGRAM UNDER THE NAME OF LBOOK. 2. USE STANDARD PROCEDURES AS DEFINED BY THE RTE OPERATING MANUAL TO COMPILE, LOAD, AND STORE LOGIN AS A BACKGROUND DISC RESIDENT PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: 1. SET THE TIME CORRECTLY WITH A "TM" COMMAND. 2. TURN THE ASR-35 SELECTOR SWITCH TO THE "T" POSITION TO PUNCH AND PRINT, FOR TEST CASE ONLY. 3. TYPE "ON, LOGIN, 3". 4. THE PROGRAM WILL ASK FOR A JOB NAME. 5. TYPE A JOB NAME OF 5 OR LESS CHARACTERS. 6. THE PROGRAM WILL PUNCH AND PRINT THE FOLLOWING MESSAGE: **ON!XXXX/0YYY/0ZZ/0WW/0SYSTEM SOFTWARE MAINTENANCE XXXXX - JOB NAME YYY - DAY OF YEAR ZZ - HOUR (24 HOUR CLOCK) WW - MINUTES 7. THIS COMPLETES A LOG IN ENTRY. PROCEED AS USUAL. 8. TO LOG OFF (TERMINATE THE TIME OF YOUR JOB), TYPE "ON, LOG, 1". 9. THE PROGRAM WILL ASK FOR THE JOB NAME GIVEN IS STEP 5. TYPE IT. 10. THIS CREATES AN ENTRY TO TERMINATE YOUR JOB. 11. SINCE RTE IS REAL TIME, ANY NUMBER OF JOBS MAY BE SCHEDULED DURING ANY TIME AND TERMINATED IN ANY ORDER. 12. ON, LOG, 2 IS USED FOR THE SELDOM USED JOBS. THE PROCEDURE IS TO TYPE THE L.U. OF THE DEVICE WHICH SERVES AS JOB DESCRIPTION INPUT, NORMALLY THE CARD READER. 13. AFTER A GENERAL IDEA OF OPERATION IS GAINED, TURN THE SELECTOR SWITCH TO THE "KT" POSITION. 14. FOR USER'S CONVENIENCE HAVE A MEMO TYPED TO IDENTIFY NUMBERS WITH JOB DESCRIPTIONS. THESE NUMBERS ARE RESERVED: 1 - TERMINATE A JOB. 2 - SPECIAL JOB INPUT OPTION 3 - SOFTWARE MAINTENANCE 4 - PERSONAL USE 5 - DEMONSTRATION PROGRAMS 10 - THIS DELETES A JOB ENTRY 12 - HARDWARE MAINTENANCE ON (DEVICE) 15. BY TYPING "ON, LOG, (JOB#), 1" THE PROGRAM WILL BY-PASS STEP 4'S QUESTION AND WAIT FOR INPUT (STEP 5). LBOOK 1. LOAD DATA TAPE IN PHOTOREADER. 2. TYPE "ON, LBOOK". 3. TYPE "APRIL" CR.LF., THEN "4" CR.LF. 4. COMPARE YOUR OUTPUT LISTING AGAINST LISTING ENCLOSED. **PROGRAM DESCRIPTION: LOGIN 1. USE STANDARD PROCEDURES AS DEFINED BY THE RTE OPERATING MANUAL TO COMPILE, LOAD, AND STORE LOGIN AS A BACKGROUND DISC RESIDENT PROGRAM. 2. TO GAIN ACCURATE TIME INFORMATION WITH EACH JOB, IT IS IMPERATIVE TO SET THE DAY OF YEAR AND TIME CORRECTLY. CONSULT RTE'S SYSTEM CMNDS FOR CORRECT TIME SET. 3. THE I/O IS CONVERSATIONAL. 4. REFER TO SECTION 7.0 (TEST CASE) FOR NORMAL OPERATION OF LOGIN. 5. AFTER THE USER IS FAMILIAR WITH THE OUTPUT, HE SHOULD LOOK AT THE SOURCE LISTING, IN PARTICULAR, THE COMMENTS AND STATEMENT NUMBER 855 (NOTING THAT THE VALUE OF I IS EQUAL TO THE PARAMETER PASSED WHEN TYPING "ON, LOG, NUMBER"). 6. TO ADD A NEW JOB DESCRIPTION SET LASTJ TO THE NEXT AVAILABLE NUMBER (6). THIS NUMBER WILL BE THE NEW JOB DESCRIPTION'S NUMBER. NOTE: 1 THRU 5, 10 AND 12 ARE USED. 7. CHECK STATEMENT 855 (A COMPUTED GO-TO) TO SEE WHICH LINE # THE "I" WILL POINT TO. 8. THEN FOLLOW THE PROGRAM LOGIC (LINE NUMBER PLUS 2) TO THE 2ND LINE OF THE FORMAT STATEMENT. EDIT THIS LINE WITH THE NEW JOB DESCRIPTION LEAVING THE QUOTE FIELD LENGTH UNCHANGED. 9. GO TO STEP 1. NOTE: TO TERMINATE A GROUP OF ENTRIES (THE LOG BOOK PROGRAM REQUIRES IT) TYPE "ON, LOGIN, 101". THIS COMMAND PUNCHES A "/EE", CR.LF., THEN LEADER. LBOOK 1. I/O IS CONVERSATIONAL. 2. USE STANDARD PROCEDURES TO COMPILE, LOAD, AD STORE THE LOG BOOK PROGRAM UNDER THE NAME OF LBOOK. 3. LBOOK REQUIRES A LARGE AMOUNT OF STORAGE FOR THE DATA INPUT. REFER TO THE SOURCE LISTING COMMENTS FOR INSTRUCTIONS ON CHANGING ARRAY SIZES TO RETAIN AS MUCH DATA STORAGE AS POSSIBLE. 4. PLACE THE "LOGIN" TAPE IN THE PHOTOREADER. 5. TYPE "ON, LBOOK". 6. LBOOK WILL ASK FOR THE MONTH OF THIS REPORT AND HOW MANY WORKING DAYS DURING THE MONTH OR PERIOD. 7. TYPE MONTH ON ONE LINE, THE NUMBER OF WORKING DAYS ON THE NEXT. 8. PROGRAM OPERATION IS AUTOMATIC FROM THIS POINT. 9. THE TERMINATION OF THE DATA IS RECOGNIZED WHEN A "/EE" RECORD IS READ. THIS RECORD IS PUNCHED BY TYPING "ON, LOGIN, 101" (REFER TO LOGIN DOCUMENTATION.) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LOGIN SET THE SELECTOR SWITCH OF THE ASR-35 TTY TO THE "KT" POSITION FOR NORMAL OPERATION OF LOGIN. LOGIN'S EXEC CALLS WILL THEN PUNCH DATA ON THE ASR-35 PAPER TAPE, ALL OTHER RTE COMMANDS AND NORMAL WRITES AND READS TO THE TTY WILL NOT TURN ON THE PUNCH. LBOOK IF THE USER FINDS THE ARRAY TOO SMALL WITH NO CORE AVAILABLE, LBOOK CAN RUN UNDER DOS WITH NO CHANGES EXCEPT EXPANDING THE ARRAY SIZES. E04301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: JOBPR **PROGRAM TITLE: RTE JOB CONTROL LANGUAGE FOR BATCH PROCESSING. **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: BATCH **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 880 WITH EXTERNAL SUBPROGRAMS (791 WITHOUT EXTERNAL SUBPROGRAMS). **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: RTE JOB PROCESSOR IS A FOREGROUND DISC RESIDENT ROUTINE FOR THE HP2005A, 2005B, OR 2005C REAL TIME EXECUTIVE WHICH PROVIDES A PRIMITIVE JOB CONTROL LANGUAGE FOR CONTROLLING THE EXECUTION OF PROGRAMS FROM A BATCH DEVICE SUCH AS A CARD READER, MAG TAPE OR TAPE READER. THE PROGRAM ACCEPTS DIRECTIVES FOR JOB, STATEMENT, END JOB, PAUSE, COMMENT, LOGICAL SOURCE DECLARATION, LOAD AND GO ASSIGNMENT, SCHEDULE REQUEST, AND JOB PROCESSOR TERMINATE. TYPICAL USES OF THIS PROGRAM MIGHT INCLUDE COMPILING, LOADING, AND EXECUTING A FORTRAN OR ASSEMBLY LANGUAGE PROGRAM IN THE BACKGROUND OF RTE, OR RUNNING A SERIES OF PROGRAMS TO PERFORM A SPECIFIC TASK (EITHER FOREGROUND OR BACKGROUND). HARDWARE REQUIREMENTS HP2005A, 2005B, 0R 2005C REAL TIME EXECUTIVE SYSTEM (MINIMUM SYSTEM) 16K 2100 SERIES COMPUTER, EAU, DMA DISC MEMORY (2766 OR 7900) TELETYPE (ASR33, ASR35) TAPE READER (2761A CARD READER IMPROVES OPERATION) **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: JOBPR SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE JOBPR SOURCE 2. USING THE RTE RELOCATING LOADER (EDIT OPERATION, ON-LINE PROGRAM ADDITION) ADD THE JOB PROCESSOR TO THE SYSTEM. THE PROGRAM TYPE IS REAL TIME, DISC RESIDENT (TYPE 2). **RUN INSTRUCTIONS: 1. PLACE BATCH DECK IN BATCH INPUT DEVICE. 2. TYPE ON, JOBPR, P1, P2 WHERE P1 = LOGICAL UNIT OF BATCH INPUT DEVICE P2 = LOGICAL UNIT OF HIGH-SPEED LIST DEVICE (OR 0 IF NOT AVAILABLE) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: JOB CONTROL LANGUAGE SYNTAX THE FIRST CARD IN THE JCL DECKS SHOULD BE A JOB CARD: JO,NAME "NAME" IS ANY 1-5 CHARACTER JOB NAME. WHEN THE JO CARD IS ENCOUNTERED, A JOB MESSAGE IS PRINTED ON THE SYSTEM CONSOLE, INDICATING THE JOB NAME AND CURRENT TIME OF DAY. A JOB CARD MUST APPEAR BEFORE ANY OTHER JCL DIRECTIVES CAN BE ACCEPTED. NOTE: JO APPEARS IN COLUMNS 1 AND 2. IF A LIST DEVICE IS SPECIFIED WHEN THE JOB PROCESSOR IS SCHEDULED, THE JOB INFORMATION IS PRINTED ON THE LIST DEVICE IN ADDITION. IF ANOTHER JOB CARD IS ENCOUNTERED BEFORE AN EJOB OR /& CARD, THE EJOB SEQUENCE WILL BE EXECUTED, THEN THE NEW JOB WILL BE LOGGED ON. EJ [OB) END OF JOB CARD (COLUMNS 1-4). [ ]= OPTIONAL THE EJOB CARD CAUSES AN END OF JOB MESSAGE TO BE PRINTED ON THE SYSTEM CONSOLE AND LIST DEVICE, IF PRESENT. THE TOTAL ELAPSED TIME FOR THE JOB WILL BE PRINTED IN MINUTES AND SECONDS. THIS CARD IS USED TO INDICATE THE END OF A JOB. THE JOB PROCESSOR WILL IGNORE ALL FOLLOWING JCL CARDS EXCEPT "/&" OR A "JOB" STATEMENT. PA[CHARACTER STRING] PAUSE CARD. SUSPEND JOB PROCESSOR FOR MANUAL INTERVENTION. THE OPTIONAL CHARACTER STRING MAY BE USED FOR MESSAGES TO THE OPERATOR. TYPE "GO, JOBPR" TO RESUME BATCH PROCESSING. CO CHARACTER STRING COMMENT CARD. THE SPECIFIED CHARACTER STRING IS PRINTED ON THE SYSTEM TTY. /& END OF BATCH OPERATIONS. THE JOB PROCESSOR IS TERMINATED. IF INSIDE A JOB, THE EJOB SEQUENCE IS EXECUTED FIRST. LS,U,T LOGICAL SOURCE DIRECTIVE (SAME AS RTE LS DIRECTIVE). U=DISC LOGICAL UNIT, 2 OR 3. T=DISC TRACK OF SOURCE FILE. LG,N SAME RTE LG (LOAD AND GO) DIRECTIVE. IF N=0, RELEASE PREVIOUS LOAD AND GO TRACKS, ELSE N=NO. OF TRACKS TO ALLOCATE. ON,PNAME,P1,P2,P3,P4,P5 PROGRAM SCHEDULE (WITH WAIT). PNAME IS 1-5 CHARACTER PROGRAM NAME. P1-P5 ARE DECIMAL CONSTANTS IN THE RANGE OF 0-32767 WHICH ARE PASSED TO THE SCHEDULED PROGRAM. EG: ON,FTN,5,99. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: WHEN LOAD AND GO TRACKS ARE RELEASED USING THE LG DIRECTIVE, THE TRACK ASSIGNMENT TABLE IS UPDATED, BUT NO CHECK IS MADE TO SEE IF ANY PROGRAMS ARE WAITING FOR DISC SPACE. E04401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SUSP **PROGRAM TITLE: RTE SELF-SUSPEND ROUTINE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TIME STATUS SCHEDULING **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE ALLOWS A USER TO (PROGRAM) A SUSPEND FOR A SPECIFIED LENGTH OF TIME IN HIS APPLICATIONS PROGRAM. IF THE CALLING ROUTINE WAS IN THE TIME LIST BEFORE SUSPENSION, IT WILL BE REINSTATED AND RESCHEDULED IN THE TIME LIST. SUSP SUSPENDS USING EXEC CALLS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SUSP SOURCE **LOAD INSTRUCTIONS: USUAL ASSEMBLY AND LOAD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: CALL SUSP (1,20) WOULD EFFECTIVELY SUSPEND THE CALLING PROGRAM FOR 200 MILLISECONDS. CALL SUSP (3,4) WOULD SUSPEND FOR FOUR MINUTES. **PROGRAM DESCRIPTION: SEE SOURCE LISTING **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF THE SCHEDULED TIME OF THE PROGRAM OCCURS DURING SUSPENSION, THE PROGRAM WILL NOT BE EXECUTED AGAIN FOR 24 HOURS. E04501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LABEL **PROGRAM TITLE: RTE ALPHANUMERIC TAPE LABEL GENERATOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: LABEL PAPER TAPE CHARACTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 523 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: OPERATING IN A RTE ENVIRONMENT, THIS PROGRAM PROVIDES A MEANS OF LABELING A PAPER TAPE BY GENERATING A BLOCK-LETTERING LEADER OR TRAILER ON THE TAPE. LABEL MAKES EXEC I/O CALLS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: LABEL SOURCE **LOAD INSTRUCTIONS: USUAL ASSEMBLY AND LOAD PROCEDURES. **RUN INSTRUCTIONS: TO USE: ON, LABEL, I, N CR,LF WHERE: I = INPUT LOGICAL UNIT DEVICE NUMBER (USUALLY KEYBOARD) N = PUNCH LOGICAL UNIT DEVICE NUMBER **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THIS PROGRAM MAY BE CONVERTED TO BCS BY: 1. HARD CODING THE LOGICAL UNITS OR USING .ENTR TO GET THEM AS PARAMETERS. 2. REPLACING THE EXEC I/O CALLS WITH CALLS TO .IOC.. 3. REPLACING THE TERMINATING EXEC CALL WITH THE PROPER TERMINATION. E04601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVR67 **PROGRAM TITLE: MAKE RTE DRIVERS DISC RESIDENT **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DRIVER DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS LINKING DRIVER, DVR67, ENABLES STANDARD HP OR USER WRITTEN RTE DRIVERS TO BE DISC RESIDENT, AND THUS IT CAN SAVE VALUABLE CORE STORAGE. THE LINKING DRIVER IS INCORPORATED INTO A STANDARD RTE AT GENERATION TIME. DRIVERS NEED NO MODIFICATION TO USE DVR67; HOWEVER, THEY MUST BE LOADED AFTER AN ASSEMBLY LANGUAGE SUBROUTINE WHICH PROVIDES THE LINK TO DVR67. DVR67 IS DEVICE INDEPENDENT AND SO PROVIDES THE USEFUL FACILITY OF ALLOWING NEW PERIPHERALS AND THEIR DRIVERS TO BE ADDED WITHOUT GENERATING A NEW SYSTEM. PROTOTYPE PERIPHERAL DRIVERS CAN BE TESTED; AND IF ERROR IS FOUND, THE DRIVER CAN BE CORRECTED, COMPILED, AND LOADED WITHOUT REGENERATING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DVR67 SOURCE **LOAD INSTRUCTIONS: COMPILE LINKING DRIVER DVR67 AND INCORPORATED BINARY IN A STANDARD RTE AT GENERATION TIME. DEVICES WHICH NEED TO BE RUN WITH DISC RESIDENT DRIVERS ARE LINKED TO DVR67 AS IF THIS WAS THE REAL DRIVER FOR THAT DEVICE. SEE ALSO PROGRAM DESCRIPTION. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: THE FOLLOWING LINKING SUBROUTINE WAS USED TO RUN THE RTE EDITOR WITH DISC RESIDENT CARD READER AND LINE PRINTER DRIVERS. NAM LINK,7 EXT I.11,C.11,I.12,C.12 DEC 9 CARD READER LU # DEF I.11 CARD READER DRIVER DEF C.11 ENTRY POINTS DEC 6 LINE PRINTER LU # DEF I.12 LINE PRINTER DRIVER DEF C.12 ENTRY POINTS THIS SUBROUTINE WAS COMPILED ONTO THE LOAD AND GO TRACKS AND THEN THE EDITOR, DVR11 AND DVR12 RELOCATABLES WERE ADDED USING THE FMGR. THE LOADER WAS THEN USED TO LOAD THE REPLACEMENT EDITOR FROM THE LOAD AND GO. THIS RESULTED IN THE SUBROUTINE LINK BEING LOADED FIRST, FOLLOWED BY THE DVR11 AND DVR12. NB. THAT THE EDITOR WAS NOT MODIFIED. *ON,EDIT,9,6,1 THEN LISTED FROM THE CARD READER TO THE LINE PRINTER VIA THE LINKING DRIVER. THE FOLLOWING INFORMATION WAS SUPPLIED AT GENERATION TIME. * EQUIPMENT TABLE ENTRY . . . . . . 14,DVR67 LINE PRINTER EQT#6 . . . . . . 12,DVR67,D CARD READER EQT,#9 . . . . . . *DEVICE REFERENCE TABLE . . . . . . 6=EQT#? 6 . . . . . . 9=EQT#? 9 . . . . . . *INTERRUPT TABLE . . . . . . 12,EQT,9 . . . . . . 14,EQT,6 N.B. DVR67 IS THE LINKING DRIVER **PROGRAM DESCRIPTION: THE PROGRAM USING THE LINKING DRIVER MUST BE LOADED WITH A SUBROUTINE OF THE FORM: ASMB,R,L NAM LINK EXT I.XX,C.XX,I.YY,C.YY DEC N LOGICAL UNIT NUMBER FOR DEVICE X DEF I.XX DRIVER ENTRY POINTS FOR DEF C.XX DEVICE X DEC P LOGICAL UNIT NUMBER FOR DEVICE Y DEF I.YY DRIVER ENTRY POINTS FOR DEF C.YY DEVICE Y .. .. .. DEC 1000 TERMINATES ANY NUMBER OF DRIVERS CAN BE USED VIA THE LINKING DRIVER AS LONG AS THE RELEVENT LU AND ENTRY POINT ADDRESSES APPEAR IN THE LINKING SUB- ROUTINE. N.B. LINKING SUBROUTINE MUST BE LOADED FIRST. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: 1007 RESULTS IF: 1. LINKING DRIVER IS HANDLING BUFFERED DEVICE. 2. FOR READ/WRITE CALLS IF I/O BUFFER IS IN COMMON. 3. IF LINKING SUBROUTINE CONTAINS LU WHICH CANNOT BE FOUND AT BEGINNING OF PROGRAM. **MISCELLANEOUS: LITERATURE REFERENCE RTE SYSTEMS ANALYST NOTE OF FEBRUARY 15, 1972 BY SAME AUTHOR. SPECIAL CONSIDERATIONS TO MAKE SURE THE CALLING PROGRAM IS NOT SWAPPED, THE LINKING DRIVER CHECKS THAT: 1. THE DEVICE IS NOT BUFFERED. 2. THE DATA IS NOT IN REAL TIME COMMON. E04701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PMOD **PROGRAM TITLE: RTE DISC PROGRAM PATCH UTILITY **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 1512 (OCTAL) WITH LIBRARY (INPUT, RMPAR, GETAD, .ENTR), 1340 WITHOUT **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'PMOD' ALLOWS PATCHES TO BE MADE TO DISC-RESIDENT (FOREGROUND OR BACKGROUN) PROGRAMS. INFORMATION SUPPLIED TO 'PMOD' IS READILY OBTAINED FROM THE CORE MAP; TRACK AND SECTOR ADDRESSES ARE COMPUTED FROM THE NAME OF THE PROGRAM (OR SEGMENT) AND THE STARTING DISC ADDRESS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: PMOD SOURCE **LOAD INSTRUCTIONS: STANDARD ASSEMBLE AND LOAD **RUN INSTRUCTIONS: ON,PMOD,P WHERE P=0 TO OBTAIN PRINTOUT OF LEGAL COMMANDS OTHERWISE SUPPRESS PRINTOUT **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: PMOD (RTE BACKGROUND DISC-RESIDENT, PRIORITY 90) USE: ON, PMOD, OPTION OPTION = 0 TO PRINT COMMAND EXPLANATION OTHERWISE INHIBIT PRINT PROG NAME? ENTER PROGRAM (OR SEGMENT) NAME COMMAND? M OCTAL ADDRESS OF MODULE TO BE PATCHED (NOT NECESSARILY THE FIRST ADDRESS OF THE SEGMENT) COMMAND? OTHER COMMANDS: D D1 [,D2] DUMPS LOCATIONS D1 THRU D2 IN OCTAL AND ASCII S S1 D1 [,D2, ...DN] STORED DATA ITEMS D1 THRU DN IN LOCATIONS STARTING AT S1 E QUIT (EXIT) ALL NUMBERS ARE OCTAL PMOD CAN OPTIONALLY BE MADE A FOREGROUND DISC-RESIDENT PROGRAM WITHOUT CHANGES IN CODING. RESTRICTIONS: PROGRAMS TO BE PATCHED MUST HAVE AN ID SEGMENT (OR THE ERROR MESSAGE "PROG NOT FOUND" IS PRINTED) AND MUST BE DISC-RESIDENT (TYPES 2, 3 OR 5; THE ERROR MESSAGE "PROG NOT DISC RES." IS PRINTED). BASE PAGE LOCATIONS START ON THE NEXT SECTOR BOUNDARY AFTER THE LAST PROGRAM DATA ON THE DISC. THEREFORE, TO GET AT THE BASE PAGE AREA SET M TO THE HIGH MAIN ADDRESS OF YOUR PROGRAM AND ROUND IT UP TO THE NEXT SECTOR; I.E. M <- ENTER ([HIGH MAIN + 63]/64) THIS PROGRAM MODIFIES THE TRACK ASSIGNMENT TABLE BEFORE WRITING ON THE DISC; TRACKS ARE ASSIGNED "GLOBALLY" AND THEN RESTORED AFTERWARDS. THEREFORE, ANY PROGRAM KNOWN TO THE SYSTEM (I.E., HAS AN ID SEGMENT) CAN BE PATCHED; HOWEVER, COCKPIT ERRORS CAN POTENTIALLY DESTROY THE SYSTEM PERMANENTLY SO BE CAREFUL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: 1. IF THE PROGRAM NAME GIVEN IS NOT DISC-RESIDENT, "PROG NOT DISC RES." IS PRINTED, AND "PROG NAME?" IS REPEATED. 2. IF THE PROGRAM IS NOT PRESENT (HAS NO ID SEGMENT), "PROG NOT FOUND" IS PRINTED, AND "PROG NAME?" REPEATED 3. IF A COMMAND OTHER THAN "M" OR "E" IS ENTERED AND M IS 0, "NO MEMORY BASE 'M'" IS PRINTED, AND "COMMAND?" REPEATED. 4. NO CHECKING THAT THE ADDRESS GIVEN IS CONTAINED IN THE PROGRAM IS PERFORMED. **MISCELLANEOUS: 1. PMOD COMPUTES THE TRACK AND SECTOR IT IS READING/WRITING TO ITSELF, READS OR WRITES IT, AND THEN RESTORES THE ASSIGNMENT. A MISTAKE IN AN "S" COMMAND COULD WRITE DATA IN AN UNWANTED PLACE. DO NOT PURGE PMOD WITH AN OF,PMOD COMMAND WHILE IT IS RUNNING. 2. USE "E". E04801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MFORM **PROGRAM TITLE: FORMATTER FOR ASCII **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: FORMATTING ASCII DECIMAL CONVERSION FORTRAN **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE IS INTENDED TO BE A REPLACEMENT FOR THE FORMATTER IN THOSE APPLICATIONS WHERE AN INTEGER IS TO BE CONVERTED INTO ASCII (DECIMAL) AND OUTPUT WITHIN A MESSAGE, SUCH AS AN ERROR CODE. MINIMUM DOS OR RTE IS THE HARDWARE REQUIREMENTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: 1. USING THE HP FTN4 COMPILER, COMPILE THE TEST PROGRAM "TEST9". 2. ASSEMBLE "MFORM". 3. LOAD THE TEST PROGRAM IN EITHER DOS-M OR RTE. **RUN INSTRUCTIONS: TURN ON THE PROGRAM: DOS-M :PR,TEST9 RTE *ON,TEST9 ENTER THE NUMBER YOU WANT FORMATTED, THE SIZE OF THE FORMAT FIELD, AND THE CHARACTER POSITION OF THE LEFT MOST PART OF THE FIELD. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS ROUTINE IS INTENDED TO BE A REPLACEMENT FOR THE FORMATTER IN THOSE APPLICATIONS WHERE AN INTEGER IS TO BE CONVERTED INTO ASCII (DECIMAL) AND OUTPUT WITHIN A MESSAGE, SUCH AS AN ERROR CODE. THE MESSAGE ITSELF IS GENERATED BY FORMAT STATEMENTS. THE ADDRESS OF THE FORMAT IS OBTAINED BY EXECUTING AN ASSIGN XXX TO III, WHERE XXX IS THE FORMAT STATEMENT NUMBER AND III IS ANY INTEGER. III IS THEN PASSED TO THE MINIFORMATTER AS ITS FIRST PARAMETER. WHEN GENERATING THE FORMAT STATEMENTS, LEAVE ROOM FOR THE CONVERSION, INCLUDING SIGN IF NECESSARY. FOR EXAMPLE: IE = ERROR CODE, NUMST = STATEMENT NUMBER 100 FORMAT ("ERROR XXXXXIN STATEMENT YYYYY") ASSIGN 100 TO I CALL MFORM (I, IEN, 5, 6, 0) CALL MFORM (I, NUMST, 5, 23, 6) THE FIRST CALL TO MFORM WILL CONVERT IERR INTO DECIMAL ASCII CHARACTERS, STORING THEM IN THE XXXXX CHARACTERS OF THE FORMAT (ANY CHARACTERS MAY BE USED. IF THE CONVERSION DOES NOT REQUIRE ALL THE CHARACTERS, BLANKS WILL BE USED). THE SECOND CALL CONVERTS NUMST INTO THE YYYYY CHARACTERS, AND WILL PRINT THE WHOLE LINE ON LU = 6. THE GENERAL FORM OF THE CALL IS: CALL MFORM (I, NUMBR, MAXCH, IPOSN, LU) WHERE: I HAS BEEN ASSIGNED THE ADDRESS OF THE DESIRED FORMAT STATEMENT. IN ASSEMBLY LANGUAGE CODE, I SHOULD CONTAIN A DEF TO THE MESSAGE BUFFER -2 (SEE THE NOTE ON FTN-IV OVERHEAD BELOW). NUMBR = NUMBER TO BE CONVERTED. MAXCH = NUMBER OF CHARACTERS TO USE IN THE CONVERSION. IF FEWER CHARACTERS ARE USED, THE REST WILL BE BLANK-FILLED. IF MAXCH = 0, NO CONVERSION IS DONE, THE MESSAGE BUFFER IS MERELY OUTPUT. THIS IS USEFUL FOR OUTPUTTING QUESTION MESSAGES. IPOSN = CHARACTER POSITION OF THE LEFT-MOST CHARACTER IN THE CONVERSION, STARTING FROM THE SECOND CHARACTER AFTER THE LEFT PAREND [(]. IN THIS CASE, IPOSN = # OF CHARACTERS IN MESSAGE +1. LU = LOGICAL UNIT TO OUTPUT THE MESSAGE. USE 0 IF NO OUTPUT IS DESIRED, AS IN THE CASE WHEN SEVERAL NUMBERS MUST BE CONVERTED (SEE THE EXAMPLE). NOTE ON FTN-IV OVERHEAD: EACH FORMAT STATEMENT IN HP FTN-IV GENERATES TWO WORDS OF OVERHEAD: A JMP INSTRUCTION AND THE ASCII CODE FOR THE LEFT PAREND [(] AND QUOTE (") CHARACTERS. THIS SPACE CAN BE USED BY CALLING MFORM WITH IPOSN = 0. HOWEVER, SINCE MFORM ASSUMES THAT THE MESSAGE BUFFER ADDRESS + IPOSN + MAXCH -1 SPECIFY THE END OF THE BUFFER, TWO CALLS ARE REQUIRED. FOR EXAMPLE, TO CONVERT IERR INTO 6 CHARACTERS USING THE 4 OVERHEAD CHAR- ACTERS PLUS THE FIRST TWO IN THE FORMAT: 105 FORMAT ("XX ERROR") ASSIGN 105 TO I CALL MFORM (I, IERR, 6, 0, 0) CALL MFORM (I, IERR, 0, 13, 6) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: NONE. NO ERROR CHECKING OF LOGICAL UNITS OR DATA BUFFER ADDRESSES IS DONE. **MISCELLANEOUS: E04901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GTIME **PROGRAM TITLE: READ TIME FROM HP 5666A CLOCK **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TIME DATE SCHEDULING **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS IS A FORTRAN CALLABLE SUBROUTINE WHICH ALLOWS READING THE MONTH, DAY, HOUR, MINUTE AND SECOND FROM AN HP 5666A CLOCK. THE SELECT CODE OF THE CLOCK INTERFACE IS A CONSTANT DECLARED IN THE SOURCE CODE. THIS ROUTINE REQUIRES THAT MEMORY PROTECT IF PRESENT BE TURNED OFF. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: TEST PROGRAM **LOAD INSTRUCTIONS: 1. USE EDITOR TO ESTABLISH SELECT FOR CLOCK IN LINE 8 OF SOURCE CODE. GTIME SELECT CODE IS CURRENTLY EQUAL TO 11. 2. STANDARD ASSEMBLE AND LOAD WITH CALLING PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALLING SEQUENCE: DIMENSION ITIME(5) . . . CALL GTIME (ITIME) . . . OR: CALL GTIME (ITIME,LGTH) LGTH INDICATES THE NUMBER OF WORDS TO BE RETURNED, THIS IS A NUMBER BETWEEN 1 AND 5. THE INTEGER VALUES RETURNED ARE ALWAYS IN THE SEQUENCE: MONTH, DAY, HOUR, MINUTE, SECOND. IF FEWER THAN FIVE TIMES ARE REQUESTED, THE VALUES ARE RETURNED IN THIS SEQUENCE ALWAYS STARTING WITH MONTH. IF LGTH IS NOT SPECIFIED, ALL FIVE VALUES ARE RETURNED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF THIS ROUTINE IS USED IN AN OPERATING SYSTEM WHICH USES MEMORY PROTECT, A CALL SHOULD BE MADE TO TURN OFF MEMORY PROTECT BEFORE CALLING THIS ROUTINE. THIS REQUIREMENT APPLIES TO RTE, AND SOME DOS-M SYSTEMS. E05001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE LIBRARY SPEED IMPROVEMENTS **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: LIBRARY PERFORMANCE **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE CONSISTS OF TWO SUBROUTINES WHICH TOGETHER RESULT IN VAST IMPROVEMENTS TO THE EXECUTION TIMES OF TYPE 6 RTE LIBRARY SUBROUTINES. ON FLOATING POINT HP2100 COMPUTERS MANY OF THE ARITHMETIC SUBROUTINES (E.G., SIN, COS) RUN UP TO TWICE AS FAST, AND ON NON FLOATING POINT MACHINES THE IMPROVEMENT IS UP TO THREE TIMES AS FAST. TO BE EFFECTED, THE TYPE 6 SUBROUTINES MUST NOT BE IN THE CORE RESIDENT LIBRARY AREA, AND THEY MUST BE LOADED ON-LINE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: A. ASSEMBLE DUMRX TO LOAD AND GO. B. ASSEMBLE .ZRLP TO LOAD AND GO. C. COMPILE OR ASSEMBLE USER PROGRAM TO LOAD AND GO. D. LOAD PROGRAM TO REQUIRED AREA. NOTE: DO NOT INTERCHANGE A. WITH B. AS SYSTEM WILL CRASH. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: FTN,L PROGRAM BENCH DO 10 I=1,100 A=SIN(1.99) * COS(1.99) 10 CONTINUE WRITE(6,100) 100 FORMAT("STOP") END END$ ON A NON FLOATING POINT 2100 COMPUTER THE ABOVE BENCHMARK TOOK 50 SECONDS. WHEN LOADED WITH DUMRX AND .ZRLP IT TOOK 18 SECONDS. ON A FLOATING POINT 2100 COMPUTER THE BENCHMARK TOOK 7 SECONDS WITHOUT THE MODIFICATIONS AND 3.5 SECONDS WITH THEM. **PROGRAM DESCRIPTION: NOTE DUMRX AND .ZRLP MUST BE LOADED BEFORD THE DISC LIBRARY IS SCANNED. IF DUMRX AND .ZRLP ARE LOADED THEN: 1. REENTRANT ROUTINES MUST BE RECURSIVE. 2. PRIVILEGED ROUTINES MUST NOT ASSUME THE FENCE IS SWITCHED OFF. I.E. THEY MUST NOT TRY AND WRITE BELOW THE FENCE (BECAUSE THEY WILL REALLY RUN AS UTILITY). 3. THE FILE MANAGER MUST NOT BE LOADED ON-LINE FOR REASON 2 ABOVE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E05101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 2100 BYTE MANIPULATION ROUTINES **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: BYTE ASSEMBLER COMPARE CHARACTER ARRAY **LANGUAGES: ASMB **COMPUTER TYPE: 2116 **OPERATING SYSTEMS: RTE DOS-M BCS **MEMORY REQUIREMENTS: 185 (DECIMAL) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SET OF 8 FORTRAN, ALGOL OR ASSEMBLY CALLABLE ROUTINES PROVIDE THE USER WITH STRING OR BYTE OPERATION CAPABILITY ON AN ARRAY. THEY PARALLEL MOST OF THE HP3000 HARDWARE INSTRUCTION CAPABILITIES AND OFFER THE USER MAXIMUM BYTE MANIPULATION. ALL ROUTINES ARE COMPLETELY MODULARIZED AND COMPRISE ONLY 295 DECIMAL WORDS OF STORAGE. THE ROUTINES INCLUDE LDB (LOAD BYTE), STB (STORE BYTE), SCU (SCAN BYTE UNTIL), SCW (SCAN BYTE WHILE), MVBU (MOVE BYTE UNTIL), MVBW (MOVE BYTES WHILE), AND CMPB (COMPARE BYTES). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: CHECK SOFTWARE BREAKDOWN DESCRIPTION FOR PACKAGE ENTRY POINTS IN SOURCE LISTING. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE PROGRAM **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E05201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ALPHA **PROGRAM TITLE: PAPER TAPE IDENTIFICATION **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: PAPER TAPE LABEL CHARACTER ASCII **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS RTE AND DOS-M PAPER TAPE UTILITY PUNCHES LARGE BLOCK LETTERS ON PAPER TAPE. ALPHA MAKES EXEC I/O CALLS. THE USER MAY CHANGE THE INTERNALLY REPRESENTED ASCII CHARACTERS. HARDWARE REQUIREMENTS: SYSTEM CONSOLE AND A PAPER TAPE PUNCH. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: ALPHA SOURCE **LOAD INSTRUCTIONS: STANDARD ASSEMBLE AND LOAD. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: PATCH: PROGRAM ALPH SYMPTOM - WON'T WORK WITH BUFFERED PUNCH. FIX; SUBROUTINE (LEADR) CALLS PUNIT THREE TIMES, BUT LOAD A SPACE ONLY ON THE FIRST CALL. TO FIX A SPACE MUST BE LOADED BEFORE EACH CALL TO PUNIT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E05301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RTEIF **PROGRAM TITLE: MESSAGE PROCESSOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: BATCH MULTITERMINAL TERMINAL TEXT MESSAGE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PASSES OPERATOR INPUTS FROM THE KEYBOARD TO THE RTE-II MESSAGE PROCESSOR AND PRINTS SYSTEM RESPONSE FOR THE OPERATOR. THUS ALL RTE OPERATOR REQUESTS ARE AVAILABLE FROM WITHIN THE FILE MANAGER, VIA THIS PROGRAM. FURTHERMORE, RTE COMMAND CAN BE STACKED AND EXECUTED FROM (BATCH) FILES, WHICH CAN CALL OTHER FILES TO A NESTING OF 10 DEEP. RECURSIVE CALLING IS ALLOWED. RTEIF ACCESSES THE FILES VIA FMP CALLS. THE PROGRAM WILL OPERATE IN A MULTI-TERMINAL MODE. ALL I/O IS DONE VIA RE-ENTRANT ROUTINE ON THE LOGICAL UNIT PROVIDED AS THE FIRST RMPAR PARAMETER. IT IS SMALL ENOUGH TO OPERATE IN A FOREGROUND SINCE THE FORMATTER IS NOT USED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RTEIF SOURCE **LOAD INSTRUCTIONS: STANDARD PROCEDURE **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E05401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MDE **PROGRAM TITLE: RTE 2100 MICROPROGRAMMING SOFTWARE **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: MICROCODE ASSEMBLER WCS DEBUG EDITOR **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE CONTAINS THE RTE VERSIONS OF THE HP MICROASSEMBLER, THE HP MICRO DEBUG EDITOR, AND THE WRITABLE CONTROL STORE DRIVER (33). THESE PROGRAMS ARE DIRECT MODIFICATIONS OF THE HP SUPPORTED DOS/DOS-M VERSIONS. THE DOS/DOS-M VERSION OF THE HP WRITABLE CONTROL STORE UTILITY ROUTINE CAN BE USED UNDER RTE WITHOUT MODIFICATIONS. HARDWARE REQUIREMENTS: MINIMUM RTE SYSTEM WITH FILE MANAGER AND WRITABLE CONTROL STORE SUBSYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: MICRO ASSEMBLER FILE# 3: MICROASSEMBLER FILE# 4: MICRO DEBUG EDITOR FILE# 5: MICRO DEBUG EDITOR FILE# 6: MICRO DEBUG EDITOR FILE# 7: WCS DRIVER AND FMGR ERROR **LOAD INSTRUCTIONS: REFER TO HP REFERECE MANUALS **RUN INSTRUCTIONS: :ON, MICRO, P1, P2, P3, P4 :ON, MDE **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IN ORDER TO PERFORM DISC FILE OPERATIONS THROUGH THE MICROASSEMBLER AND/OR THE MICRO DEBUG EDITOR, THE ASSIGNED FILE(S) MUST PREVIOUSLY BE CREATED WITH A FILE MANAGER CREATE TYPE 5 FILE COMMAND WITH SECURITY CODE MA. FOR EXAMPLE: :CR,HPMIC:MA::5:1:1 FILE SPACE WILL ALWAYS BE SUFFICIENT AS LONG AS THE FILE MANAGER CAN FIND ENOUGH ROOM FOR EXTENSIONS ON THE DISC WHERE THE FILE NAME RESIDES. THE FILE NAMES USED BY THE MICROASSEMBLER AND THE MICRO DEBUG EDITOR MAY CONTAIN SIX CHARACTERS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERROR MESSAGES WITH RELATION TO DISC FILE OPERATIONS ARE ACCOMPANIED BY FMGR ERROR CODES. REFER PRIMARILY TO THESE ERROR-CODES INSTEAD OF THE MESSAGES ISSUED BY THE MICROASSEMBLER OR THE MICRO DEBUG EDITOR. **MISCELLANEOUS: E05501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SMUT **PROGRAM TITLE: RTE SYSTEM MAINTENANCE UTILITY **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DISC DEBUG SYSTEM TABLES HP-IB **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 21MX **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE ALLOWS, THE RTE-II OR III USER TO PERFORM USEFULL DISC AND MEMORY RELATED FUNCTIONS FOR BOTH 7900 AND 7905 DISCS. THE ROUTINE USES SEVERAL SYSTEM INTRINSICS, AND CAN RUN IN A 5K OR 12K ENVIRONMENT. IT HAS A BUILT IN CALCULATOR FOR PERFORMING ARITHMETIC AND BIT MANIPULA- TION CALCULATIONS. THE FOLLOWING ARITHMETIC CAPABILITIES ARE OFFERED BY THE ROUTINE: 1. DISPLAY AND ALTER MEMORY. 2. REPLACE, COPY, SUM, AND INITIALIZE BLOCKS OF MEMORY. 3. DISPLAY AND ALTER ANY DISC. 4. MODIFY CORRESPONDING DISC BY ADDRESS MEMORY. 5. LIST SYMBOLIC CONTENTS OF TRACK ASSIGNMENT TABLE. 6. LIST ADDRESS OF ALL SYSTEM TABLES. 7. LIST ENTIRE EQT, LU, INT, AND I/O TABLES. 8. LIST CONTENTS OF ANY PROGRAMS ID SEGMENT. 9. LIST COMPACT TABLE OF HP-IB DEVICE TALK/LISTEN ADDRESSES. 10. INTERROGATE THE BUS. 11. SMUT COMMAND FILES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE (SMUT) FILE# 3: SOURCE (SMUT) FILE# 4: SOURCE (SCB) FILE# 5: SOURCE (ASSEMBLY) FILE# 6: SOURCE (SHELP) FILE# 7: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: 1. COMBINE FILES 1 AND 2 WITH EDITOR OR WITH FMP STORE COMMAND. 2. COMPILE FILES 1 AND 2 3. ASSEMBLE FILE 3. 4. ON FILE 4, INDIVIDUALLY ASSEMBLE ALL 15 ASSEMBLY ROUTINES. 5. LOAD THE SYSTEM LOADR AND THE RESULTING PROGRAM NAME SHOULD BE SMUT. 6. COMPILE FILE 5 (HELP PROCESSOR). 7. LOAD WITH SYSTEM LOADR, THE RESULTING PROG NAME SHOUD BE "SHELP". 8. TO RUN SMUT OR SHELP, SEE ATTATCHED USERS GUIDE. **RUN INSTRUCTIONS: SMUT CAN BE EXECUTED IN ONE OF TWO WAYS. FROM A NON-DISC DEVICE SUCH AS A TERMINAL OR FROM A PREVIOUSLY PREPARED FMP COMMAND INPUT TRANSFER FILE. TERMINAL SCHEDULE: RU,SMUT[,COMND[,LOG[,LIST[,MODE[,HPIB]]]]] COMND -- COMMAND INPUT DEVICE LU (DEFAULT IS TERMINAL) LOG -- COMMAND OUTPUT LOG LU (DEFAULT IS 0) LIST -- COMMAND LIST LU (DEFAULT IS COMND) MODE -- ASCII DISPLAY MODE (DEFAULT IS PARTIAL) HPIB -- HP-IB IBI LU (DEFAULT IS 0) COMMAND INPUT FILE SCHEDULE: RU,SMUT,FI,LE,X[,COMND[,LIST]] FI,LE,X -- FMP COMMAND FILE NAME (DEFAULT IS COMND) COMND -- COMMAND INPUT LU (DEFAULT IS 1) LIST -- COMMAND LIST LU (DEFAULT IS 1) WHEN SCHEDULING FROM A COMMAND INPUT FILE, THE FILE IS OPENED NON- EXCLUSIVELY AND ACCORDING TO ITS FILE TYPE. CARE MUST BE TAKEN SUCH THAT THE FILE EXISTS AND DOES NOT CONTAIN NON-ASCII DATA. IF THE COMMAND FILE CANNOT BE LOCATED, A RESULTING ERROR WILL BE ISSUED AND SMUT ABORT- ED. UPON COMPLETION OF THE COMMAND FILE, COMMAND TRANSFER WILL BE GIVEN TO COMND OR TO LU 1 IF NOT SPECIFIED. A TRANSFER TO ANOTHER FILE WITHIN A COMMAND FILE WILL RESULT IN CLOSING THE CURRENT FILE AND TRANSFERRING CONTROL TO THE SECOND FILE AS FOLLOWS: TR,FILE[,REC#[,COMND]] FILE -- FILE NAME REC# -- RECORD NUMBER TO BEGIN PROCESSING (DEFAULT IS 1) COMND -- COMMAND INPUT LU (DEFAULT IS 1) IF A REC# LESS THAN OR EQUAL TO ZERO WILL START WITH THE FIRST RECORD. IF ANY ERRORS OCCUR DURING THE INPUT OF A COMMAND, I.E. AN ERROR OCCURRED WHILE EXECUTING THE "READF" SUBROUTINE, WILL RESULT IN CLOSING THE FILE, REPORTING THE ERROR NUMBER, AND TRANSFERRING THE COMMAND INPUT CONTROL TO THE LU SPECIFIED BY "COMND". **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: 1. HP-IB NOT INSTALLED - IN RESPONSE TO "LI,HPIB". **MISCELLANEOUS: SYSTEM LOADR MUST BE ABLE TO HANDLE EXTERNAL REFERENCES WITH OFFSETS. E05601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SPLUM **PROGRAM TITLE: USER SPOOL POOL FILE ACCESS OR SPOOLING MADE EASIER **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: SPOOLING FILES **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: SPLUM ENABLES A USER PROGRAM TO SPOOL A LOGICAL UNIT VIA A SPOOL POOL FILE. I.E. SPLUM OVERCOMES NOT BEING ABLE TO UTILIZE THE INTERFACE SUBROUTINE TO CLOSE AND PASS THE SPOOL POOL FILE SET UP BY SPOLU AND SPLUM. THE USE OF THESE SUBROUTINES PERMITS EASY ACCESS TO THE SPOOL FEATURES OF RTE BY THE NON-EXPERIENCED SYSTEMS PROGRAMMER. YOU MAY NOW SPOOL TO SUCH THINGS AS THE LINE PRINTER TO AVOID INTERLEAVING WITHOUT HAVING TO PLAY GAMES WITH SMP AND CREATING YOU OWN SPOOL FILES. HARDWARE REQUIREMENTS: STANDARD RTE II/III CONFIGURATION WITH BATCH- SPOOL SOFTWARE OPTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: SPOLU, SPLOT AND IFMGR, ALTHOUGH NOT REQUIRED, SHOULD BE ADDED TO THE SYSTEM LIBRARY ON THE NEXT RTGEN. LOAD SPLUM AS A DISC RESIDENT OR CORE RESIDENT FOREGROUND PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: NORMAL CONFIGURATION IS TO HOLD SPOOL FILES UNTIL CLOSED. THIS PREVENTS SLOW RUNNING PROGRAMS FROM TYING UP THE SPOOLED LOGICAL UNIT. LINE 331 "DFLAG OCT 413" MAY BE CHANGED TO "DFLAG OCT 411" IF IT IS DESIRED TO START THE OUT SPOOLS IMMEDIATELY AND NOT HOLD THEM UNTIL THEY ARE CLOSED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: "FMGR OPEN ERROR 6 IN FILE JOBFIL" - YOU FORGOT TO INITIALIZE SPOOLING VIA GASP. "SPOOL FILE DID NOT SET UP!" - LOGICAL UNIT WAS NOT SET UP AS A SPOOL LOGICAL UNIT BY GASP. **MISCELLANEOUS: IFMGR - FILE MANAGER ERROR REPORTING FUNCTION. ENCLOSED WITH PACKAGE. VERY HANDY - SEE ITS LISTING FOR OTHER GENERAL USES. E05701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 12 X 12 CHARACTER GENERATOR SUBROUTINE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: CHARACTER LABEL FORMATTING DISPLAY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS-M DOS-III **MEMORY REQUIREMENTS: MINIMUM 2K FOR SUBROUTINE **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE 12 X 12 CHARACTER GENERATOR ALLOWS THE USER TO CREATE BLOCK LETTERS FROM THE FOLLOWING CHARACTER SET: ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$#:"/+!'()*?.-%\^[] THE SUBROUTINE IS CALLED WITH THE DESIRED CHARACTER, A 12 X 12 MATRIX, AND THE DESIRED PATTERN CHARACTER. THE MATRIX IS THEN FILLED IN AI FORMAT, WITH THE DESIRED CHARACTER USING THE PATTERN CHARACTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES **LOAD INSTRUCTIONS: STANDARD COMPILE AND LOAD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TO CALL THE PROGRAM IN FORTRAN: CALL CHAR (LETTER,MATRIX,OK,PATTERN) WHERE: LETTER - DESIRED CHARACTER IN "AI" FORMAT MATRIX - 12 BY 12 INTEGER MATRIX OR EQUIVALENT OK - ERROR/SUCCESS INDICATOR - SEE 4.4 PATTRN - THE LETTER THAT IS USED TO CREATE THE BLOCK CHARACTER. (IN "AI" FORMAT) NOTE: ALL VARIABLES ARE INTEGER. EXAMPLE: CALL CHAR (IHA,MATRIX,OK,IH$) MATRIX WILL CONTAIN THE LETTER "A". THE BLOCK LETTER "A" IS MADE UP OF SPACES AND DOLLAR SIGNS. UPON RETURN, "OK" WILL EQUAL I SINCE "A" IS A VALID CHARACTER. TO CALL THE PROGRAM IN ASSEMBLY LANGUAGE: JSB CHAR DEF *+5 DEF LETTER ADDRESS OF DESIRED CHARACTER - AI FORMAT DEF MATRIX ADDRESS OF 12 BY 12 MATRIX DEF OK ADDRESS OF ERROR/SUCCESS INDICATOR DEF PATTERN ADDRESS OF PATTERN CHARACTER - AI FORMAT (NORMAL RETURN) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE SUBROUTINE IS CALLED WITH THE INTEGER VARIABLE "OK". UPON RETURN, OK EQUALS I; NORMAL RETURN OK EQUALS O; ILLEGAL CHARACTER REQUESTED. THE MATRIX IS FILLED WITH SPACES. **MISCELLANEOUS: NONE (JUST A CORE HOG) E05801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: PROGRAMMING FOR HP2645 TERMINAL SOFTKEYS **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: SOFTKEYS TERMINAL DISPLAY FORMATTING **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: JKEYS OPERATES INTERACTIVELY, PROMPTING AND RECEIVING FROM THE OPERATOR THE DATA REQUIRED TO CREATE OR EDIT A DISC FILE CONTAINING PROGRAMMING INFORMATION FOR HP2645 TERMINAL (SOFTKEYS). DUMPING THE FILE (:DU, FMGR COMMAND) TO A 2645: A. PROGRAMS THE 8 SOFT KEYS AS SPECIFIED. B. WRITES A (MENU) ACROSS THE TOP OF THE CRT SCREEN, IN A PROTECTED FIELD, USING INVERSE VIDEO CAPABILITIES OF THE TERMINAL. HARDWARE REQUIREMENTS: MINIMAL RTE-II/III OPERATING SYSTEM WITH 2645 TERMINAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: JKEYS AND COLON ARE COMPILED AND LOADED SAME AS ANY RTE BACKGROUND DISC- RESIDENT PROGRAM AND SUBROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: - ENTERING A "/A" AT MOST PROMPTS RESULTS IN CLEAN UP AND TERMINATION. - WHEN UPDATING, DEFAULT INPUT (SPACE, RETURN) LEAVES CURRENT VALUES UNCHANGED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E05901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 21MX MICROCODED .PACK AND .FLUN **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: MICROCODE **LANGUAGES: MICROASMB **COMPUTER TYPE: 21 MX **OPERATING SYSTEMS: RTE BCS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THESE TWO ROUTINES ARE DIRECT REPLACEMENTS FOR THE STANDARD LIBRARY SUBROUTINES. A TOTAL OF 17 WORDS OF MICROCODE REPLACES MORE THAN 100 WORDS OF ASSEMBLY LANGUAGE. HARDWARE REQUIREMENTS INCLUDE A 21MX CPU AND USER CONTROL STORE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: REFER TO 21MX MICROPROGRAMMING MANUAL FOR DIRECTIONS IN THE USE OF MICROASSEMBLER AND MICRODEBUG. **RUN INSTRUCTIONS: REFER TO 21MX MICROPROGRAMMING MANUAL FOR DIRECTIONS IN THE USE OF MICROASSEMBLER AND MICRODEBUG. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: .PACK USES SOME OF THE CODE IN THE STANDARD 21MX CONTROL STORE. THE TEST PROGRAMS WERE RUN WITH 21MX MICRO DEBUG EDITOR ON A DOS-II SYSTEM. IF THIS MICROCODE IS INSTALLED IN A MODULE OTHER THAN 12 OR IF THE JMP TABLE IS MODIFIED, THE OP CODES IN THE TEST PROGRAMS MUST BE CHANGED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: TEST PROGRAMS HALT IF MICROCODE RESULTS DO NO AGREE WITH LIBRARY SUBROUTINE RESULTS. **MISCELLANEOUS: E06001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TIMES **PROGRAM TITLE: TIME AND DATE **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TIME DATE **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: RTE-II **OPERATING SYSTEMS: RTE-II RTE-III RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM TIMES PROVIDES AN EASY METHOD TO SET THE RTE SYSTEM DATE AND TIME AND TO AUTOMATICALLY SCHEDULE PROGRAMS. TIME PRINTS THE CURRENT DATE AND TIME AND THEN REQUESTS THE OPERATOR TO ENTER THE DATE AND TIME. IF THE DATE AND TIME ARE CORRECT, THE OPERATOR MERELY PRESSES THE RETURN KEY. IF THEY ARE INCORRECT, THE OPERATOR MAY ENTER THE CORRECT DATE AND TIME IN ANY OF THE FOLLOWING FORMATS OR COMBINATIONS THEREOF. FORMAT EXAMPLES ARE FOR MARCH 10, 1977 2:15:20 P.M. FORMAT EXAMPLES 3/10/77 14:15:20 MAR 10,1977 14,15,20 MARCH 10,77 14:15,20 3/10/1977,14,15,20 3,10,77,14,15,20 ETC. PROGRAM TIME WILL THEN UPDATE THE SYSTEM CLOCK AND SCHEDULE (PLACE IN THE TIME LIST) ANY PROGRAMS CONTAINED IN A TYPE 4 FMGR FILE NAMED PSHED. IF AN ABSOLUTE STARTING TIME IS NOT SPECIFIED FOR A PROGRAM, THEN IT WILL BE SCHEDULED TO START AT THE NEXT RESOLUTION CODE MULTIPLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: ON,TIME,LU OR :RU,TIME,OG WHERE LU = LOGICAL UNIT OF OPERATOR'S CONSOLE. NOTE: TIME MAY BE INCLUDED IN THE "WELCOM" FILE. CALL DATE (ITIME) WHERE ITIME IS A 7 WORD INTEGER BUFFER. SEE LISTING FOR FORMAT. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SUBROUTINE DATE RETURNS THE MONTH, DAY, YEAR, HOUR, MINUTE, AND SECOND TO THE CALLING PROGRAM. DATE CALLS THE SYSTEM CLOCK AND CONVERTS IT TO THE FOLLOWING ARRAY FORMAT. WORDS FORMAT 1 & 2 ASCII MONTH 3 INTEGER DAY 4 INTEGER YEAR 5 INTEGER HOUR 6 INTEGER MINUTE 7 INTEGER SECOND **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E06101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 21MX EXTENDED INSTRUCTION SET SIMULATOR **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: SIMULATOR **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE BCS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS GROUP OF SUBROUTINES SIMULATES ALL BIT, BYTE, WORD, AND INDEX INSTRUCTIONS OF THE 21MX. THE CALLING SEQUENCE AND RESULTS ARE IDENTICAL. THESE ROUTINES MAKE THE COMPLETE LINE OF 21XX COMPUTERS DOWNWARD COMPATIBLE. TOTAL MEMORY REQUIRED APPROXIMATELY 500 WORDS. SEE 21MX COMPUTER SERIES REFERENCE MANUAL, #02108-90002. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: USE IN ADDITION TO REGULAR LIBRARY. **RUN INSTRUCTIONS: USE IN ADDITION TO REGULAR LIBRARY. **INPUT/OUTPUT EXAMPLES: NONE **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: NONE **MISCELLANEOUS: E06201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SYSTK **PROGRAM TITLE: INTER-TTY MESSAGE PROCESSOR **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TERMINAL TEXT MULTITERMINAL MESSAGE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: ENABLES MESSAGE COMMUNICATION BETWEEN TWO TERMINALS IN A MTM EN- VIRONMENT. UP TO 10/80 CHARACTER MESSAGE LINES MAY BE SENT FROM ONE TERMINAL TO ANOTHER. CONTROL MAY BE MAINTAINED AT ONE TERMINAL OR PASSED ALONG WITH/OR WITHOUT A MESSAGE TO THE SECOND TERMINAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: LOAD SYSTK AS FOREGROUND DISC OR CORE RESIDENT - 2 PAGES REQURED. :RU,LOADR,99,,009,, **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: FUNCTIONS ARE DETERMINED THROUGH 4 COMMANDS PRECEEDED BY A PROGRAM PROMPT (?): 1. TEST - READ THE CURRENT CONTROL TTY'S MESSAGE (?? AT THE START OF A LINE RETURNS TO PROMPT OR 10 LINES, WHICHEVER COMES FIRST) 2. SEND - OUTPUT THE CURRENT MESSAGE BUFFER AND RETAIN CONTROL. 3. GIVE - OUTPUT THE CURRENT MESSAGE BUFFER (IF ANY) AND PASS CONTROL TO NEXT USER. 4. END - TERMINATE SYSTK **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: INVALID COMMANDS PASS CONTROL TO PROMPT CHARACTER (?) **MISCELLANEOUS: NO MORE THAN 10 LINES OF TEXT AT ONE PASS. E06301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UPIT **PROGRAM TITLE: UPIT - RTE DEVICE LOGICAL UNIT UP ROUTINE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: STATUS SCHEDULING MONITOR **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: ALLOWS THE RTE USER TO ENSURE THAT A RANGE OF DEVICE LU'S ARE ALWAYS UP. IT CAN BE TIME-SCHEDULED OR SCHEDULED ONCE. IT COULD BE CALLED A LINE MONITOR. THE ROUTINE IS OPTIMIZED FOR REAL-TIME AND REQUIRES LITTLE RESOURCES OF RTE. THIS ROUTINE IS A MUST IF YOU CANNOT AFFORD OPERATOR INTERVENTION SIMPLY TO MAKE A DEVICE AVAILABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: UPIT SOURCE **LOAD INSTRUCTIONS: NORMAL LOAD **RUN INSTRUCTIONS: RU,UPIT,START-LU,END-LU FOR TIME SCHEDULE, ENTER: IT,UPIT,RES,MULT,HR,MIN,SEC,MS ON,UPIT,NOW,START-LU,END-LU **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: NO PRINTABLE MESSAGES **MISCELLANEOUS: E06401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE READABLE PUNCH ROUTINE WITH SYSTEM DATE AND TIME **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TIME DATE PAPER TAPE LABEL **LANGUAGES: ASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: RDBLP - DOES A LOOK-UP TABLE CONVERSION OF AN ASCII INPUT BUFFER TO A BINARY OUTPUT BUFFER. THE WORDS IN THE OUTPUT BUFFER ARE READABLE CHARACTERS WHEN PUNCHED ON PAPER TAPE. CONVERTS 64 CHARACTER ASCII SUBSET OF UPPER CASE,NUMERALS, AND SYMBOLS. JULIA/JULIS - RETURNS SYSTEM TIME AS A STRING: FORMAT---- JULIA JULIS 1234 10DEC77 01:23:15 25JAN77 THE DAY OF THE MONTH IS RETURNED IN THE A-REGISTER AND THE MONTH IN THE B-REGISTER. TITLE - PUTS A READABLE TITLE, OPTIONALLY CONTAINING THE TIME/ DATE, ON A PAPER TAPE. THE INPUT IS EITHER FROM THE RUN STRING IN THE SCHEDULE CALL, OR INTERACTIVELY FROM A TERMINAL. FOR REFERENCE, SEE NATIONAL SEMICONDUCTOR MM4240AA ROM DATA SHEET. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE RDBLP AND SAVE RELOCATABLE. ASSEMBLE AND SAVE AS RELOCATABLE. PUT THE RELOCATABLE IN THE LIBRARY AT GENERATION OR MOVE IT INTO L.G. AT LOAD. ENTRIES : JULIA OR JULIS (ASSEMBLY OPTION) EXTERNALS: EXEC, .ENTR ASSEMBLE, TITLE, AND LOAD ALONG WITH %JULIA AND %RDBLP. :RU,TITLE,-1,TI,STRING ------ PUTS THE STRING IN READABLE FORM ON THE PAPER TAPE, FOLLOWED BY THE SYSTEM TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: JULIA/JULIS INCLUDED AS COMMENT IN SOURCE. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: HARDWARE REQUIREMENTS 21MX OR 21MX-E SPECIAL CONSIDERATIONS 1. RDBLP OUTPUT BUFFER MUST BE 6 TIMES THE LENGTH OF THE INPUT BUFFER. 2. USER MUST PROVIDE A BUFFER OF: 6 WORDS (12 CHAR) FOR JULIA OR 8 WORDS (16 CHAR) FOR JULIS 3. TITLE ASSUMES TAPE PUNCH IS LU 4. E06501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: IDLE **PROGRAM TITLE: IDLE - RTE SYSTEM ACTIVITY VISUALIZER **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: PERFORMANCE **LANGUAGES: ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-II RTE-III RTE-M **MEMORY REQUIREMENTS: 26 DECIMAL WORDS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM RUNS WITH THE LOWEST PRIORITY FOR PURPOSES OF VISUALLY INDICATING HOW BUSY THE SYSTEM IS. THE SWITCH REGISTER IS USED FOR GIVING A ROCKING EFFECT OF ACTIVITY. THE PROGRAM IS ONLY 26 DECIMAL WORDS LONG AND CAN BE PUT MEMORY RESIDENT INTO THE SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE AND CREATE A RELOCATABLE FILE. PUT IN, IN PROGRAM PHASE DURING SYSTEM GENERATION TIME. **RUN INSTRUCTIONS: TO EXECUTE: ON,IDLE[,BIT PATTERN[,COUNT]] **INPUT/OUTPUT EXAMPLES: NONE - THE SWITCH REGISTER IS USED AS A CONTINOUS OUTPUT DEVICE. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E06601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DBLIST **PROGRAM TITLE: RTE-II/III DBLIST - IMAGE DATA BASE INFORMATION LISTER **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: IMAGE DATA BASE **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SHORT PROGRAM ALLOWS THE IMAGE USER TO LIST INFORMATION ABOUT ALL DATA SETS OF ANY GIVEN DATA BASE. THE OUTPUT CONSISTS OF A NICE COMPACT TABLE INDICATING THE SET, ENTRY, FMP BLOCKS, NAME, TYPE, CAPACITY, RECORD LENGTH, AND TOTAL NUMBER OF FMP BLOCKS REQUIRED. THE OUTPUT LISTING CAN BE DIRECTED TO ANY OUTPUT DEVICE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: TO EXECUTE ENTER: RU,DBLIST[,LIST LU] **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: /DBLST: DBOPN ERROR N -DATA BASE COULD NOT BE OPENED. /DBLST: DBCLS ERROR N -DATA BASE COULD NOT BE CLOSED. **MISCELLANEOUS: E06701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PWCP **PROGRAM TITLE: RTE-II/III PROM WRITER CONTROL PROGRAM **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: PROM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ALLOWS TO BURN PROM ON THE HP 12909B PROM WRITER UNDER RTE II/III SYSTEM. THE PROM MASK TAPE MUST BE IN A FMGR FILE (ASCII), ONE FILE PER MASK TAPE, OR ON PAPER TAPE BUT IN THAT CASE THE USER MUST CREATE A TYPE O FILE FOR THE PAPER TAPE READER. REFER TO PROM WRITER OPERATING AND REFERENCE MANUAL (PN 12909-90009) **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: ALL ACTIVITIES ON THE SYSTEM MUST BE STOPPED BECAUSE THE PROGRAM TURNS OFF THE MEMORY PROTECT AND THE INTERRUPT SYSTEM. TO RUN THE PROGRAM THE USER TYPES: *RU,PWCP AT THAT POINT PWCP WILL REQUEST SOME INITIAL PARAMETERS. **INPUT/OUTPUT EXAMPLES: :RU,PWCP PROM WRITER CONTROL PROGRAM TYPE SC OF PROM WRITER CARD? 25 PROM BURN PARAMETERS CHIP INITIAL STATE (0 OR 1)? 1 MINIMUM BURN TIME (MILLISECONDS)? 1 MAXIMUM BURN TIME (MILLISECONDS)? 21 MAXIMUM NUMBER OF RETRIES? 5 WAIT TIME RATIO? 10 TIMING CONSTANT? 220 COMMAND? LOAD TYPE FILENAME? MCARD:RT:-2 ID LINE 1 THREE LINES FOR THE TAPE IDENTIFICATION ID LINE 2 ID LINE 3 456 CHECKSUM COMMAND? VFILE CONTENTS VERIFIED O-K COMMAND? VCHIP CHIP READY COMMAND? BURN CHIP PROGRAMMING COMPLETED COMMAND? VBURN CHIP CONTENTS VERIFIED O-K COMMAND? STOP END OF PROGRAM TEST: INSTALL THE TEST PROM (PN 12909-90009) WHICH IS PART OF THE PROM WRITER KIT. RUN PWCP, AND AFTER THE REPLIES FOR INITIAL PARMETERS PWCP WILL TYPE: COMMAND? CREAD THAT LOAD THE CONTENT OF THE PROM INTO THE MEMORY BUFFER COMMAND? SHOW ON WHICH LU? 6 DISPLAYS THE BUFFER CONTENTS ON THE L.P. COMMAND? PTAPE PUNCH LU? 4 PUNCHES A MASK TAPE FROM THE MAIN MEMORY BUFFER. COMMAND? LOAD TYPE FILENAME? PR PR IS A 0 TYPE FILE FOR THE PAPER TAPE READER COMMAND? SHOW ON WHICH LU? 6 DISPLAYS THE BUFFER CONTENTS ON THE L.P. AND THE PRINTOUT MUST BE THE SAME AS THE FIRST ONE, AND MUST AGREE WITH THE LISTING BELOW. COMMAND? STOP END OF PROGRAM **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: REFER PROM WRITER OPERATING AND REFERENCE MANUAL (PN 12909-90009) PAGE 5-1. **MISCELLANEOUS: ALL ACTIVITIES ON THE RTE SYSTEM MUST BE STOPPED BEFORE RUNNING PWCP FOR BURNING PROM. E06801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ABDMP **PROGRAM TITLE: ABORTING PROGRAM FREEZER **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DUMP DEBUG **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE ALLOWS YOU TO FIX UP RTE SO THAT IT WILL "FREEZE" THE PROGRAM IN ITS PARTITION AND DUMP THE PROGRAM TO SOME DEVICE FOR ANALYSIS, OR, BETTER YET, USE A DEBUGGING UTILITY TO DETERMINE WHAT IT WAS DOING, WITHOUT HAVING TO DECODE INSTRUCTIONS. THE MAIN PROGRAM IS ABDMP. YOU RUN IT, AND SPECIFY THE NAME OF ONE OR MORE PROGRAMS WHICH ARE TO BE "FROZEN" FOR YOUR EXAMINATION, SHOULD THEY BE ABORTED BY RTE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE **LOAD INSTRUCTIONS: SPATC MUST BE GENERATED INTO THE SYSTEM TABLE AREA I. COMPILE AND ASSEMBLE THE OTHERS (ABDMP, ABRSV, DMPRN, CMDIN, MSGFR) AND LOAD THEM ON-LINE (MAY BE GENERATED INTO SYSTEM, IF THERE ARE NO ENTRY-POINT CONFLICTS). PROGRAM MUST BE BACKGROUND DIS-RESIDENT, TYPE 3. ASSEMBLE AND LOAD THE TEST PROGRAM (TEST). RUN ABDMP, ADD PROGRAM TEST TO ITS LIST. EXIT ABDMP. SET TESTS "BREAK" BIT (*BR,TEST) ABDMP WILL BE SCHEDULED. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: REQUIRES RTE-IV DBUGR MODULE. E06901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MTMXX **PROGRAM TITLE: RTE-II/III MULTI-TERMINAL PROGRAM DEVELOPMENTS & EXECUTION INTERFACE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: MULTITERMINAL MULTIPROGRAM SPOOLING **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE RTE-II/III MULTI-TERMINAL (MTMXX) PROGRAM DEVELOPMENT INTERFACE ESTABLISHES A TRUE MULTI-TERMINAL, MULTI-PROGRAM DEVELOPMENT AND EX- ECUTION ENVIRONMENT WITH AUTOMATIC SPOOLING. THAT IS LS/LG BOTTLENECKS ARE ELIMINATED AND ANY LISTINGS, REPORTS, ETC., CONTENDING FOR THE SAME PERIPHERALS ARE AUTOMATICALLY SPOOLED INSTEAD OF INTERLEAVED. FURTHER- MORE, NO COOPERATION IS REQUIRED AMONG USERS THAT ARE EDITING, COM- PILING LOADING AND EXECUTING PROGRAMS CONCURRENTLY. (MTMXX), ASSEMBLES /COMPILES PROGRAMS EITHER FROM LOGICAL UNITS AND/OR FILES. LISTINGS AND THE OBJECT CODE MAY BE DIRECTED TO EITHER LOGICAL UNITS OR FILES. IF AN OUTPUT LOGICAL UNIT IS A SPOOLED DEVICE, A SPOOL POOL FILE IS AUTOMATICALLY SET-UP. THE SPOOL FILE IS CLOSED AND PASSED AT THE END OF THE OPERATION. IN THE CASE OF OUTPUT FILES, DUPLICATE FILES ARE PURGED AND RECREATED. IF THE FILE DOES NOT EXIST IT WILL BE CREATED. MTMXX LOADS PROGRAMS FROM LOGICAL UNIT DEVICES AND/OR FILES AND THEN PERFORMS A LIBRARY SEARCH. BOTH COMPILE AND LOAD OPERATIONS MAY BE FROM MULTIPLE FILES AND/OR LOGICAL UNITS. IN THE CASE OF MULTIPLE SOURCES, TAPE NUMBERS WILL IDENTIFY EACH SOURCE IN THE LISTING. STANDARD NAMR PARAMETERS ARE USED FOR FILE NAMES I.E., NAME:SC:C#. ALL MESSAGES ARE DIRECTED TO THE USER'S CONSOLE INSTEAD OF THE SYSTEM CONSOLE, I.E., LOADER UNDEFINED EXTERNALS, NO SOURCE, ETC.,. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. EDIT LIBRARY ROUTINE MTMRN LINE #3 FOR THE PROPER PROGRAM TYPE. I.E., TYPE 14 FOR RTE II OR TYPE 30 FOR RTE III. 2. COMPILE AND ASSEMBLE ALL SOURCES. NOTE: THE SPECIAL RTE II AND III LOADERS ARE PROVIDED IN RELOCATABLE FORM. 3. GENERATE A NEW SYSTEM WHICH INCLUDES MTMRN AS A MEMORY RESIDENT, SPULU AND SPLOT AS LIBRARY ROUTINES AND THE SPECIAL LOADER IN LIEU OF THE STANDARD RTE LOADER. MTMXX REQUIRES 10 RESOURCE NUMBERS. BE SURE TO INCLUDE ENOUGH RESOURCE NUMBERS IN THE GENERATION AND ENOUGH SPOOL LOGICAL UNITS TO HANDLE YOUR TERMINALS. YOU WILL REQUIRE AT LEAST TWO SPOOL LOGICAL UNITS PER TERMINAL. 4. LOAD MTMXX AND ITS SUPPORTING SUBROUTINES ON-LINE AS A TEMPORARY BACKGROUND PROGRAM. 5. SAVE MTMXX, OFF MTMXX, MAKE MULTIPLE COPIES OF MTMXX AND CREATE THE TRANSFER FILES AS OUTLINED IN MTMXX'S LISTING. 6. RUN GASP AND INITIALIZED SPOOLING. AS A RULE OF THUMB, USE TWO SPOOL POOL FILES PER TERMINAL. 7 . FOR 2645/2648 TERMINALS USE THE "KEYS" PROGRAM TO CREATE SOFTKEY "DUMP" FILES. THESE FILES CAN THEN BE INCLUDED IN "DO" COMMANDS IN THE WELCOM FILE. SUGGESTED SOFTKEY SET-UP IS: RU,ALGXX RU,ASBXX RU,BSCXX RU,EDRXX RU,FTNXX RU,FMGXX RU,LDRXX EX WHERE XX = THE LOCAL TERMINAL LOGICAL UNIT. SUGGESTED SOFTKEY LABELING IS: ALGOL ASSEMBLER BASIC EDITOR FORTRAN FMGR LOADER EXIT 8 . ESTABLISH THE FOLLOWING GROUND RULES: A. ALL USERS MUST RUN FROM THEIR OWN COPY OF THE FILE MANAGER. B. ALL USER PROGRAMS UTILIZING COMMON OUTPUT PERIPHERALS (I.E. LINE PRINTER, PAPER TAPE PUNCH, ETC.) MUST MAKE CALLS TO SPOLU AND SPLOT FOR SPOOLING. SEE SPOLU AND SPLOT LISTINGS FOR CALLING SEQUENCE. C. ALL USERS, WHERE POSSIBLE, LOAD THEIR PROGRAMS AS TEMPORARY, DO A FMGR SAVE AND THEN AN "OF,PROG". THIS WILL SAVE ID SEGMENTS. 9. CREATE TRANSFER FILES TO MAKE MULTIPLE COPIES OF THE EDITOR, BASIC MAIN, QUERY MAIN, ETC., AS REQUIRED FOR YOUR SYSTEM CONFIGURATION. 10.SAVE A COPY OF ALL THE ABOVE WORK AND FILES ON A GENERATION CARTRIDGE AND MAKE-UP A TRANSFER FILE SO THAT YOU DON'T HAVE TO DO IT ALL MANUALLY AGAIN AT YOUR NEXT GENERATION. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SHOULD HAVE A GOOD WORKING KNOWLEDGE OF THE BATCH-SPOOL MONITOR AND TRANSFER FILES IN ORDER TO IMPLEMENT. ASSEMBLER AND COMPILER CONTROL STATEMENTS MUST CONTAIN THE "B" OPTION IN ORDER TO PRODUCE RELOCATABLE CODE. E07001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: STATUS DECODING FUNCTIONS **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: STATUS **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THESE 4 SUBPROGRAMS TEST THE STATUS OF A LOGICAL UNIT FOR END OF FILE. END OF MEDIUM, AND ERROR CONDITIONS. THEY CAN BE CALLED AS LOGICAL FUNCTIONS. SEE RTE III SOFTWARE SYSTEM PROGRAMMING AND OPERATING MANUAL, MARCH 1977, PG 3-17. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: FOR GENERALITY, THE END, ERR, AND EOT ROUTINES CONTAIN MASKS FOR ALL 64 POSSIBLE DRIVERS. MOST INSTRUMENT DRIVERS DO NOT RETURN A STATUS CODE, HOWEVER. THE EXTRA MASKS CAN BE DELETED TO MAKE THE ROUTINES SHORTER. IF THIS IS DONE, A TEST SHOULD BE INSERTED AT AROUND LINE 19 OF THE SOURCE CODE TO DETECT INQUIRIES FOR THE UNUSED DRIVERS AND TO RETURN .FALSE. FOR THESE CALLS. THE MASKS ARE BASED ON THE CODES LISTED IN THE REAL TIME EXECUTIVE III SOFTWARE SYSTEM PROGRAMMING AND OPERATING MANUAL, MARCH 1977, PG 3-17 THE TEST PROGRAM ET SHOULD BE RUN WITH A VARIETY OF LOGICAL UNITS. ANY PROBLEMS WILL PROBABLY BE DUE TO AN INCORRECT MASK FOR THE SPECIFIC EQUIPMENT BEING USED. IT IS DIFFICULT TO SIMULATE AN I/O ERROR TO TEST THE ERR ROUTINE. PROGRAM ET CAN TELL YOU THAT AN ERROR INDICATION IS NOT GIVEN WHEN NO ERROR EXISTS, HOWEVER. PROGRAM SPET IS SET UP TO READ THE &SPEND SOURCE FILE FROM THE DISC. (SEE THE COMMENTS IN &SPEND.) **INPUT/OUTPUT EXAMPLES: THE TEST PROGRAMS WRITE THEIR OUTPUT TO LOGICAL UNIT 1. THE EXAMPLES SHOW NORMAL OUTPUT WITH A PAPER TAPE SOURCE FILE FOR INPUT TO PROGRAM ET AND WITH A DISC SOURCE FILE FOR SPOOL INPUT TO PROGRAM SPET. :RU,ET EOF AT RECORD 205 EOT AT RECORD 205 EQT5 IS 000440 RECORD NUMBER IS 205 :RU,SPET EOF AT RECORD 27 EXIT AT RECORD NUMBER 27 **PROGRAM DESCRIPTION: 1. CALLING SEQUENCE: END, ERR, EOT, AND SPEND ARE ALL LOGICAL FUNCTIONS AND MUST BE DECLARED AS LOGICAL IN FORTRAN OR BOOLEAN IN ALGOL. LOGICAL L,END,ERR,EOT,SPEND C...TEST FOR END OF FILE ON LU L=END(LU) C...TEST FOR ERROR ON LU L=ERR(LU) C...TEST FOR END OF MEDIUM ON LU L=EOT(LU) C...TEST FOR END OF SPOOL FILE L=SPEND(LUSP) 2. ARGUMENTS: IN THE ABOVE EXAMPLE, LU IS THE NUMBER OF THE LOGICAL UNIT TO BE TESTED. THE SPEND FUNCTION TESTS FOR END OF FILE ON A SPOOL LOGICAL UNIT, SHOWN AS LUSP IN THE EXAMPLE. 3. THE FOLLOWING TABLE SHOWS HOW THE END, ERR AND IOT ROUTINES WORK WITH THE VARIOUS DRIVERS USING THE MASKS SUPPLIED. IF THE LU HAS A DRIVER OTHER THAN THOSE SHOWN, THE ROUTINES ALL RETURN .FALSE. FOR ALL CON- DITIONS ON THE LU. AN X IN THE TABLE SHOWS THE TEST IS MADE; A - SHOWS THAT NO TEST IS MADE AND THE ROUTINE ALWAYS RETURNS .FALSE. FOR THAT DRIVER. DVR END ERR EOT 00 NOTE 1 - X 01 NOTE 1 - X 02 NOTE 1 - X 05 TERMINAL NOTE 2 - NOTE 2 05 TAPE X X X 11 NOTE 3 X NOTE 3 15 X X NOTE 4 22 X X X 23 X X X 24 X X X 30 - X - 31 - X NOTE 5 32 - X - 37 - X - NOTES: 1. END OF TAPE SETS .TRUE. 2. CONTROL D SETS .TRUE. 3. HOPPER EMPTY SETS .TRUE 4. HOPPER EMPTY OR STACKER FULL SETS .TRUE. 5. END OF TRACK SETS .TRUE. 4. SPOOL FILES USE THE EQT TABLE DIFFERENTLY THAN ORDINARY LOGICAL UNITS. THE FUNCTION SPEND TESTS THE END OF FILE FLAG IN THE EX- TENSION OF A SPOOL EQT ENTRY. IT SHOULD BE USED INSTEAD OF END FOR SPOOL LOGICAL UNITS. 5. THESE ROUTINES MAY BE USED AT ANY POINT IN A PROGRAM. THEY DO NOT HAVE TO BE ADJACENT TO THE I/O CALL, AND MORE THAN 1 TEST CAN BE MADE ON A DEVICE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E07101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TMSHR **PROGRAM TITLE: RTE PROGRAM TIME-SHARE PROCESSOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: PERFORMANCE TIME MULTIPROGRAM **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE RTE USER TO TIME-SHARE UP TO 64 COMPUTE-BOUND PROGRAMS, I.E. IT SERVES AS AN ON-LINE REAL-TIME EXECUTION MONITOR. THE USER RUNS THE PROGRAM WITH THE RU OR ON COMMAND TO PASS IT CON- FIGURATION INFORMATION OR PLACE IT IN THE TIME-LIST FOR PERIODIC EX- ECUTION TO PERFORM THE TIME-SHARING FUNCTION RESPECTIVELY. WHILE IN TIME-SHARE MODE OF OPERATION, THE PROGRAM TIME-SLICES PROGRAM EXECUTION OF ALL ENTERED PROGRAM NAMES ACCORDING TO EACH PROGRAM'S CONFIGURATION INFORMATION. THE PROGRAM TAKES ONLY 2K WORDS OF MEMORY AND CAN RUN IN ANY AREA OF RTE, ALTHOUGH MEMORY RESIDENT IS SUGGESTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. COMPILE WITH FORTRAN IV COMPILER AND CREATE RELOCATABLE MODULE: RTE-III RTE-IV :MS,&TMSHR :RU,FTN4,&TMSHR,6,- :LG,1 :RU,FTN4,2,99 2. PROGRAM IS DISTRIBUTED AS RT DISC RESIDENT WITH PRIORITY OF 25. YOU MIGHT WISH TO CHANGE BEFORE STEP 1 IS DONE. 3. LOAD WITH APPROPRIATE LOADR. NO SPECIAL LIBRARIES, ETC. REQUIRED. **RUN INSTRUCTIONS: TO RUN, ENTER THE FOLLOWING: CONFIGURATION MODE RU,TMSHR,PR[,OG][,A][,NTIME][,LUN] PR,OG,A ----------NAME OF RTE PROGRAM TO ENTER INTO TIME-SHARE TABLE NTIME-------------NUMBER OF TIMES A PROGRAM CAN BE CAUGHT AT THE TOP OF THE SCHEDULED LIST BEFORE SUSPENDED AND FORCED TO THE BOTTOM OF THE LIST. LUN---------------LUN FOR MY ERROR REPORTING PRINT STATUS MODE RU,TMSHR,-N -N ---------------ANY NEGATIVE NUMBER PRINTS ALL TIME-SHARE PROGRAM ENTRIES AND THE CURRENT TIME-SHARE STATUS. SEE EXAMPLE INPUT/OUTPUT. TIME-SHARE MODE *IT,TMSHR, RESOLUTION, MULTIPLE *ON,TMSHR, NOW THIS INITIATES PROGRAM TIME-SHARING. RECALL, AN RTE RU COMMAND WITH AND FIRST PARAMETER NEGATIVE PRINTS STATUS (SEE ABOVE). **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ?? -------- PROGRAM NAME NOT DEFINED NONE------- NO PROGRAMS TO TIME-SHARE FULL ------ TIME-SHARE TABLE FULL **MISCELLANEOUS: E07201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RTEM **PROGRAM TITLE: RTEM **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: CONVERSION FILES BOOT-UP **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE PROGRAM RTEM CONVERTS A TYPE 7 FILE (ABSOLUTE BINARY) INTO A TYPE 1 FILE WHICH IS A MEMORY IMAGE. IN ADDITION, IT SUPPLIES A BOOT- STRAP IN THE FIRST RECORD SUCH THAT, IF THE TYPE 1 FILE BEGINS ON CYLINDER 0, THEN THE MEMORY IMAGE MAY BE BOOTED INTO PHYSICAL MEMORY WITH THE ROM BOOT (OR EQUIVALENT) SUPPLIED WITH THE HP-1000 SYSTEM. THIS PROGRAM IS OF GREATEST USE IN DEVELOPING APPLICATIONS (USING THE RESOURCES OF A LARGE SYSTEM) WHICH WILL LATER BE TRANSPORTED TO A MINIMAL HARDWARE CONFIGURATION. THE PROGRAM IS INTERACTIVE - THE ONLY PARAMETER IN THE RU OR ON COMMAND IS THE TERMINAL LOGICAL UNIT, WHICH WILL DEFAULT TO 1. ONE WOULD NORMALLY USE THE HP PROGRAM RTMLG, A COMBINATION LOADER/ GENERATOR FOR RTE-M WHICH IS A PART OF DS-1000, PRODUCT 91740A. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: FMP ERRORS ARE REPORTED. **MISCELLANEOUS: SPECIAL CONSIDERATIONS REMEMBER THAT THE ROM BOOT WILL WORK ONLY IF THE TYPE 1 FILE IS INSTALLED AT CYLINDER ZERO AND THE STARTING HEAD IS NOT GREATER THAN 3. ANY HP-1000 SYSTEM WITH 7905, 7906, 7920, 7925 DISC. E07301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TIME **PROGRAM TITLE: TIME **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TIME BOOT-UP DATE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: 'TIME' IS A USER PROGRAM WRITTEN IN FORTRAN WHICH ACCESSES THE 59309A HP-IB CLOCK TO SET THE TIME IN AN RTE-M (II-III), RTE-II, RTE-III, OR RTE-IV SYSTEM. THE PRIMARY PURPOSE OF 'TIME' IS TO AUTO- MATICALLY SET THE SYSTEM TIME IN THE WELCOM FILE DURING RTE BOOT-UP. 'TIME' IS FULLY DOCUMENTED IN APPLICATION NOTE 401-8, ((PART # 5959-2807(22)) **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 'TIME' IS A USER PROGRAM WRITTEN IN FORTRAN WHICH ACCESSES THE 59309A HP-IB CLOCK TO SET THE TIME IN AN RTE-M (II AND III), RTE-II, RTE-III, OR RTE-IV SYSTEM. ACTUALLY, FOUR COMMANDS CAN BE USED WHEN THE PROGRAM IS RUN INTERACTIVELY: 'CS' ACCESSES THE CLOCK, OBTAINS THE TIME AND SETS THE SYSTEM TIME; 'SC' OBTAINS THE SYSTEM TIME AND THEN ACCESSES THE 59309A AND UPDATES IT; 'OS' ALLOWS AN OPERATOR AT A USER TERMINAL TO UPDATE THE 59309A FROM THE PROGRAM (WITHOUT TOUCHING THE CLOCK), SIMULTANEOUSLY THE SYSTEM TIME IS UPDATED. 'OC' IS SIMILAR TO 'OS' EXCEPT THAT ONLY THE 59309A IS UPDATED. THE PRIMARY PURPOSE OF 'TIME' IS TO AUTOMATICALLY SET THE SYSTEM TIME IN THE WELCOM FILE DURING RTE BOOT-UP. SIMPLY ENTER: "RU,TIME,1,1978,50 IF, 1) THE INPUT LU IS 1 2) THE YEAR IS 1978 3) THE 59309A LU IS 50 4) AND YOU WISH TO SET THE SYSTEM TIME (CS). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: REQUIRES HP-IB 59309A HP CLOCK E07401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TODAY **PROGRAM TITLE: TODAY **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DATE TIME **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: "TODAY" SUBROUTINE PURPOSE IS: TO BUILD CALLERS 14 WORD BUFFER INTO A DATE/TIME MESSAGE IN THE FOLLOWING FORM: "FRI 26 MAR 1976 18:24:30.9" WHERE: TODAY'S DATE IS FRIDAY, MARCH 26, 1976 AND THE TIME IS 6:24 PM & 30.09 SECONDS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE COMMENTS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E07501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: POWER **PROGRAM TITLE: POWER **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: SPOOLING PRINTER **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: POWER REQUIRES 7K CORE STORAGE **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: POWER WILL ADD VERSATILITY TO YOUR OUTSPOOL APPLICATIONS. POWER OFFERS FORWARD AND BACKWARD POSITIONING, LINE AND PAGE COUNTS, MULTIPLE COPIES, SPOOL OR STANDARD FORMAT, AND RUN COST BASED ON CPU TIME WHEN THE STANDARD JOB HEADERS ARE PRESENT IN THE OUTSPOOL FILE. POWER HAS MANY DEFINITE ADVANTAGES OVER GASP IN THAT SPOOLING CAN BE SHUT DOWN AND POWER CAN HANDLE THE PRINTING. A FILE MAY BE RESTARTED FROM ANY PAGE OR LINE IN THE EVENT OF PRINTER MALFUNCTION. THE FILE REMAINS INTACT AFTER PRINTING UNTIL THE OPERATOR ISSUES THE "KS" COMMAND. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CREATE AN OUTSPOOL FILE AND RUN POWER. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: POWER WILL ADD VERSATILITY TO YOUR OUTSPOOL APPLICATIONS. POWER OFFERS FORWARD AND BACKWARD POSITIONING, LINE AND PAGE COUNTS, MULTIPLE COPIES, SPOOL OR STANDARD FORMAT, AND RUN COST BASED ON CPU TIME WHEN THE STANDARD JOB HEADERS ARE PRESENT IN THE OUTSPOOL FILE. POWER HAS MANY DEFINITE ADVANTAGES OVER GASP IN THAT SPOOLING CAN BE SHUT DOWN AND POWER CAN HANDLE THE PRINTING. A FILE MAY BE RESTARTED FROM ANY PAGE OR LINE IN THE EVENT OF PRINTER MALFUNCTION. THE FILE REMAINS INTACT AFTER PRINTING UNTIL THE OPERATOR ISSUES THE "KS" COMMAND. ALL I/O IS DONE THROUGH EXEC CALLS EXCEPT FOR THE MESSAGES TO THE OPERATOR WHICH USE THE FORTRAN FORMATTER. POWER USES THE "@" AS A PROMPT CHARACTER AND WHEN ?? IS ENTERED IT WILL LIST ALL AVAILABLE FUNCTIONS. POWER LOCKS THE LINE PRINTER WITH A CALL TO "LURQ" AND WILL RESPOND TO THE BREAK FLAG WHILE PRINTING. THE SOURCE FILE IS WELL COMMENTED GIVING THE USER EASY READING FOR ON SITE MODIFICATIONS IF REQUIRED. POWER REQUIRES 7K CORE STORAGE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL SPOOL ERROR MESSAGES AS WELL AS FILE MANAGER MESSAGES ARE DIRECTED TO THE USER'S TERMINAL. **MISCELLANEOUS: REQUIRES LINE PRINTER AND 7905 DISC. E07601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE/DOS FTN4 COMPILER WITH CROSS REFERENCE GENERATOR **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: COMPILE FORTRAN **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS DOS-M **MEMORY REQUIREMENTS: 10K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE RTE/DOS FORTRAN IV COMPILER (10K COMPILER AREA) WITH CROSS REFERENCE GENERATOR IS ADAPTED FROM THE HP SUPPORTED RTE/DOS FORTRAN IV COMPILER, HP PROGRAM NUMBER 24177B. IT COMPILES EXACTLY THE SAME SOURCE CODE (AS SPECIFIED BY THE HP FORTRAN IV REFERENCE MANUAL) AND PRODUCES EXACTLY THE SAME OBJECT CODE AS THE HP24177B COMPILER. HOWEVER, THE PRESENCE OF A 'C' ON THE FTN4 (OR FTN) CONTROL STATEMENT WILL CAUSE A CROSS REFERENCE LIST TO BE PRODUCED FOR EACH PROGRAM UNIT (PROGRAM, SUBROUTINE, OR FUNCTION) IN THE COMPILATION. THE CROSS REFERENCE LISTING SERVES AS A USEFUL PROGRAMMING AND DEBUGGING AID, PARTICULARY IN ANALYZING LOGIC PATHS IN A PROGRAM. THIS VERSION OF THE HP FORTRAN IV COMPILER GIVES FORTRAN IV PROGRAMMERS THE SAME TOOL ALREADY AVAILABLE FOR HP ASSEMBLY LANGUAGE PROGRAMMERS. THE HARDWARE REQUIREMENTS ARE THE SAME AS FOR THE HP24177B COMPILER, THAT IS, A DOS, DOS-M OR RTE CONFIGURATION WITH A MINIMUM 10K USER AREA (DOS) OR BACKGROUND (RTE). THE COMPILER IS APPROXIMATELY 150 WORDS LARGER THAN 24177B SINCE MOST OF THE PROGRAMMING IS IN THE ADDITIONAL SEGMENT, F4.3. COMPILATION SPEED REMAINS THE SAME. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: 1. ASSEMBLE MAIN PROGRAM FTN4. A SINGLE BINARY TAPE IS PRODUCED, OF THE MAIN SIZE ABLE TO FIT IN THE PHOTOREADER HOPPER. 2. ASSEMBLE ALL FOUR SEGMENTS. ALL FOUR RELOCATABLE BINARY TAPES CAN FIT TOGETHER ON ONE TAPE, WHICH WILL BE ABOUT THE SAME SIZE AS FOR THE MAIN PROGRAM. 3. LOAD THE BINARIES IN THE USUAL WAY, MAIN FOLLOWED BY SEGMENTS. **RUN INSTRUCTIONS: COMPILE YOUR FORTRAN IV PROGRAMS. A 'C' ON THE FTN4 OR FTN CONTROL STATEMENT WILL PRODUCE THE CROSS REFERENCE LISTINGS. BECAUSE HP FORTRAN II PROGRAMS CAN BE COMPILED BY THE FORTRAN IV COMPILER, IT IS ALSO POSSIBLE TO PRODUCE CROSS REFERENCE LISTINGS FOR FORTRAN II PROGRAMS. THE PRESENCE OF A 'C' ON THE FTN CONTRTOL STATEMENT IS IGNORED BY THE FORTRAN II COMPILER, SO IT IS UNNECESSARY TO CHANGE THE CONTROL STATEMENT WHEN SWITCHING BACK AND FORTH BETWEEN COMPILERS. **INPUT/OUTPUT EXAMPLES: ANY FORTRAN OR FORTRAN IV PROGRAM CAN BE COMPILED AFTER LOADING THE COMPILER TO SEE IF IT IS (FUNCTIONING PROPERLY). **PROGRAM DESCRIPTION: THE CROSS REFERENCE LISTING IS THE LAST LISTING PRODUCED FOR EACH PROGRAM UNIT'S COMPILATION. IT FOLLOWS ALL LISTINGS PRODUCED BY THE 'L', 'M', 'A', AND 'T' OPTIONS. CROSS REFERENCE INFORMATION, I.E. A LIST OF ALL REFERENCES TO PROGRAM SYMBOLS, IS PRODUCED FOR ALL STATEMENT NUMBERS, SIMPLE AND SUBSCRIPTED VARIABLES, SUBROUTINE AND FUNCTION NAMES IN EACH PROGRAM UNIT. EACH SYMBOL IS PRINTED FOLLOWED BY THE LINE NUMBERS IN WHICH IT OCCURS. MULTIPLE REFERENCES TO A SYMBOL IN ONE LINE ARE ALL ACCOUNTED FOR IN THE CROSS REFERENCE LISTING. STATEMENT LABELS ARE PRECEDED BY THE '@' CHARACTER, AS IN THE SYMBOL TABLE LISTING. UP TO EIGHT LINE NUMBERS ARE PRINTED PER LINE OF THE CROSS REFERENCE LISTING. THEY ARE GENERALLY IN ASCENDING ORDER EXCEPT FOR OCCURENCES IN EQUIVALENCE STATEMENTS. FOR EXAMPLE, 0099 COMMON N 0100 EQUIVALENCE (N(1),M(1)) 0101 DIMENSION N(50),M(50) 0102 N(1) = 1 PRODUCES, FOR THE SYMBOL N, THE FOLLOWING CROSS REFERENCE INFORMATION: N 0099 0101 0100 0102 THE ONLY "LIMITATION" ON THE CROSS REFERENCE GENERATOR'S CAPABILTIES IS THAT CROSS REFERENCE INFORMATION IS PRODUCED FOR ONLY THE FIRST 275 LINES OF EQUIVALENCE STATEMENTS PER PROGRAM UNIT. SINCE THIS IS OVER FIVE PAGES OF EQUIVALENCE STATEMENTS, THIS IS HARDLY A SERIOUS LIMITATION. THE LIMIT OF 275 CAN BE INCREASED BY INCREASING THE SIZE OF A TABLE IN SEGMENT F4.0, THEREBY INCREASING THE SIZE OF THE COMPILER. LARGE CORE CONFIGURATION SYSTEMS (24-32K) CAN INCREASE THE SPEED OF CROSS REFERENCE GENERATION FOR LARGE PROGRAMS. FOR EXAPLE, A CROSS REFERENCE FOR A 2400 LINE PROGRAM WHICH WAS 35 PAGES LONG TOOK 12 MINUTES ON A 16K MACHINE BUT ONLY 3 MINUTES ON A 24K COMPUTER. THE REASON IS THAT THE DISC IS NOT USED WHEN ENOUGH CORE IS AVAILABLE TO HOLD THE NECESSARY TABLES. FOR MOST PROGRAMS, CROSS REFERENCE LISTINGS ARE PRODUCED VERY QUICKLY, EVEN IN THE MINIMUM CORE CONFIGURATION. IN ADDITION TO THE CROSS REFERENCE, THE COMPILER HAS BEEN MODIFIED TO PRINT THE PROGRAM OBJECT CODE SIZE AND ITS COMMON BLOCK SIZE (IF ANY). THEY ARE PRINTED ON THE SAME LINE WHERE THE NUMBER OF ERRORS IS REPORTED, IN DECIMAL. THE FORM IS **NO ERRORS* PROGRAM = XXXXX COMMON = YYYYY **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IN THE UNLIKELY EVENT THAT A PROGRAM IS TOO LARGE (I.E. HAS TOO MANY SYMBOLS) TO HAVE A CROSS REFERENCE PRODUCED, THE MESSAGE PROGRAM TOO LARGE - CROSS REFERENCE ABORTED IS PRINTED AND THE COMPILER PROCEEDS TO THE NEXT SUBROUTINE. SINCE A CROSS REFERENCE IS GUARANTEED FOR ALL PROGRAMS HAVING LESS THAN APPROXIMATELY 2000 UNIQUE SYMBOLS IN THEM (AND AN UNLIMITED NUMBER OF REFERENCES ON THESE) THIS MESSAGE SHOULD NEVER OCCUR SINCE THE COMPILER WILL RUN OUT OF SYMBOL TABLE SPACE FIRST. THE CROSS REFERENCE IS GUARANTEED COMPLETE AND ACCURATE FOR PROGRAMS WHICH HAVE NO COMPILATION ERRORS. THE PRODUCTION OF CROSS REFERENCE INFORMATION PROCEEDS ONLY AS FAR AS THE COMPILATION OF THAT LINE PRO- CEEDS. IF THE COMPILATION OF A LINE IS TERMINATED BECAUSE OF A "STATEMENT TERMINATED TYPE ERROR, THEN SYMBOLS WHICH ARE BEYOND THE ERROR DETECTION POINT GENERALLY WILL NOT APPEAR IN THE LISTING. **MISCELLANEOUS: OBJECT CODE GENERATED BY BY THE COMPILER ALSO OPERATES ON BCS AND MTS, IN ADDITION TO RTE, DOS, AND DOS-M. E07701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EXC **PROGRAM TITLE: INTERCHANGE FORMAT PROGRAM **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: FLOPPY DISC DISC FORMATTING **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM WILL WRITE A FILE TO A FLOPPY IN THE HP INTERCHANGE FORMAT. DATA IS READ FROM A NON-DISC DEVICE (SUCH AS MAG TAPE OR 2645 TAPE CARTRIDGE). THE DATA MAY BE BLOCKED OR UNBLOCKED ON TAPE. THE PROGRAM WILL CREATE A VOLUME LABEL AND DIRECTORY ON THE FLOPPY, DE-BLOCK THE INPUT DATA IF REQUIRED AND WRITE THE RECORDS TO THE FLOPPY IN THE INTERCHANGE FORMAT. THIS PROGRAM DOES NOT READ THE INTERCHANGE FORMAT AT THIS TIME. HOWEVER, I PLAN TO ADD THAT SOMETIME IN THE FUTURE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR MESSAGES ARE PRINTED FOR I/O ERRORS **MISCELLANEOUS: THIS IMPLEMENTATION OF THE HP INTERCHANGE FORMAT IS A SUB-SET OF THE STANDARD, I.E. IT ALLOWS ONLY ONE FILE PER FLOPPY AND A FILE MAY NOT SPAN VOLUMES (FULL DESCRIPTION GIVEN IN THE COMMENTS IN THE SOURCE PROGRAM). E07801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SCAN **PROGRAM TITLE: TERMINAL HARD COPY PROGRAM **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: PRINTER DISPLAY TERMINAL **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: SCAN IS A FORTRAN PROGRAM THAT SUPPLIES A TERMINAL HARD-COPY FUNCTION FOR HEWLETT-PACKARD'S DOS-M AND RTE SYSTEMS USING THE 2645 AND 2648 TERMINALS. SCAN EMULATES A TERMINAL HARD-COPY DEVICE BY INTERROGATING THE TERMINAL'S LOCAL MEMORY AND TRANSMITTING ITS CONTENTS TO THE STANDARD SYSTEM PRINTER. TO GET A COPY OF ALL OF THE TERMINAL'S CON- TENTS TYPE: RU,SCAN. SCAN WILL AUTOMATICALLY SEND THE CURSOR TO THE HOME POSITION AND TRANSFERS THE DISPLAY INFORMATION TO THE SYSTEM PRINTER (LU 6). FOR A PARTIAL SCAN, TYPE: RU,SCAN,,P (MOVE THE CURSOR TO THE FIRST LINE TO BE COPIED BEFORE TYPING "RETURN"). SCAN WILL COPY FROM THAT LINE UP TO BUT NOT INCLUDING THE LINE CONTAINING RU,SCAN,,P. IN EITHER CASE, A FORM FEED IS PROVIDED AFTER THE COPY AS AN ADDED CONVENIENCE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: OPERATES WITH 2645 AND 2648 TERMINALS. E07901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: VASP **PROGRAM TITLE: VIRTUAL ARRAY SUBROUTINE PACKAGE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: ARRAY MEMORY **LANGUAGES: FTN4 **COMPUTER TYPE: 21MX-E **OPERATING SYSTEMS: RTE-II **MEMORY REQUIREMENTS: 3808 WORDS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN SUBROUTINE PACKAGE ENABLES A FORTRAN PROGRAMMER TO HANDLE VERY LARGE MULTIDIMENSIONAL REAL OR INTEGER ARRAYS. THE ARRAYS ARE STORED AND RECALLED FROM DISK BY CALLS TO THE SUBROUTINES IN SUCH A WAY THAT ANY ARRAY ELEMENT IS ACCESSIBLE USING SUBSCRIPT NOTATION SIMILAR TO THAT OF A STANDARD FORTRAN ARRAY. UP TO 5 ARRAYS ARE ALLOWED, ANY OF WHICH CAN BE REAL OR INTEGER. THE INTEGER ARRAYS CAN HAVE UP TO 4,194,176 ENTRIES; THE REAL ARRAYS UP TO 2,097,088 - DEPENDING UPON AVAILABLE DISK SPACE. UP TO 4 DIMENSIONS ARE ALLOWED EACH ARRAY. THE COMPLETE PACKAGE USES 3808 WORDS OF STORAGE. SEVERAL OTHER ROUTINES ARE INCLUDED WHICH CAN BE USED IN CONJUNCTION WITH THE ABOVE DESCRIBED PACKAGE. THESE ADDITIONAL ROUTINES MAY BE USED TO CREATE AND ACCESS ARRAYS STORED PERMANENTLY ON THE DISK AND TO INSPECT THE ARRAY CONTENTS FOR TROUBLESHOOTING PURPOSES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION **MISCELLANEOUS: SEE EXTENDED DOCUMENTATION E08001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SHEMA **PROGRAM TITLE: SHARED-EMA CAPABILITY FOR RTE-IV **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: ARRAY MEMORY **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS ANY NUMBER OF EMA PROGRAMS TO SHARE AS MUCH PHYSICAL MEMORY THAT IS ALLOWED IN ANY GIVEN CONFIGURATION. THIS CAPABILITY USES STANDARD HP SUPPLIED SOFTWARE AND REQUIRES ONLY ONE SUBROUTINE CALL IN EACH PROGRAM BEFORE EMA SHARING CAN BE DONE. THE SCHEME DEVELOPED FOR THIS CAPABILITY ALLOWS ANY PROGRAM TYPE TO PARTICIPATE AND DOES NOT MAKE USE OF ANY OTHER AREA OF MEMORY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E08101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SMESS **PROGRAM TITLE: SYSTEM MESSAGE PROCESSOR **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TERMINAL TEXT MULTITERMINAL MESSAGE **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: SMESS - ENABLES SYSTEM CONSOLE (OR INITIATOR) TO OUTPUT A MESSAGE TO ALL TTY'S IN AN MTM ENIRONMENT. UP TO 10/80 CHARACTER MESSAGE LINES MAY BE SENT/TEXT-SEND COMMAND. THE FIRST MESSAGE SENT ALSO INCLUDES THE GREGORIAN DATE AND CURRENT TIME. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: LOAD SMESS AS FOREGROUND DISC RESIDENT - 5 PAGES REQUIRED - (SIZE MAY BE REDUCED BY REMOVING DATE AND TIME CODE AS IT BRINGS IN THE FORMATTER ETC.) :RU, LOADR, 99,,007,, **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SMESS FUNCTIONS ARE DETERMINED THROUGH 3 COMMANDS PRECEEDED BY A PROGRAM PROMPT(?): 1. TEXT - READ UP TO 10 LINES OF MESSAGE FROM THE SYSTEM CONSOLE (OR INITIATOR). (10 LINES OR A (??) AT THE START OF A LINE RETURNS PROMPT) 2. SEND - OUTPUT THE MESSAGE TO ALL ONLINE TERMINALS. 3. END - TERMINATE SMESS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: INVALID COMMANDS PASS CONTROL TO PROMPT CHARACTER (?) **MISCELLANEOUS: ONLY TYPE 'O' DEVICES ARE QUALIFIED AS OUTPUT. BIT'S 14 AND 15 OF EQT WORD 5 ARE TESTED FOR DEVICE DOWN ONLY. USER MAY WISH TO PUT MORE RESTRICTIONS ON DEVICE AVAILABILITY. E08201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MESIO **PROGRAM TITLE: INTERACTIVE I/O SUBROUTINES **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: CONVERSION FORMATTING TEXT **LANGUAGES: FTN4 **COMPUTER TYPE: 21MX **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THREE SUBROUTINES WHICH ALLOW THE USER TO PERFORM INTERACTIVE AND/0R BATCH I/O ALONG WITH ALPHA TO NUMERIC AND NUMERIC TO ALPHA CONVERSIONS. MESIO - OUTPUTS MESSAGES AND ACCEPTS SINGLE OR MULTIPLE ENTRIES ACCORDING TO SEVERAL DIFFERENT STRUCTURES. DIRECT WRITES AND READS ARE ALSO SUPPORTED FOR BATCH MODE. ATON - INTERROGATES ANY ALPHA STRING AND RETURNS EITHER A REAL OR INTEGER VALUE. NTOA - FORMATS EITHER REAL OR INTEGER NUMBERS INTO AN ALPHA STRING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: DATA **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: :RU,TESTA,LU1,LU2 (LU1 = LOGICAL UNIT TO INPUT TEST DATA) (LU2 = LOGICAL UNIT OF TTY) **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E08301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CMPCT **PROGRAM TITLE: ABSOLUTE BINARY COMPACTOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: ABSOLUTE **LANGUAGES: FTN4 **COMPUTER TYPE: 21MX **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PACK ABSOLUTE BINARY CODE IN RECORDS OF UP TO 128 WORDS IN LENGTH. ARRANGE THE LOAD IN ASCENDING MEMORY LOCATION ORDER. PROVIDE A MEANS TO IDENTIFY UNDEFINED AREAS AND TO SELECTIVELY PRESET THESE AREAS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: LOAD BINARY OF CMLIB WITH CMPCT **RUN INSTRUCTIONS: CALL SEQUENCE: RU, CMPCT, [LU] PROGRAM IS INTERACTIVE PARAMETERS OR ARGUMENTS: LU THE LOGICAL UNIT OF THE INTERACTIVE DEVICE. ENTER BINARY ABSOLUTE FILE NAME. OUTPUT CAN BE TO A FILE MANAGER FILE OR A LOGICAL UNIT. DISPLAY UNDEFINED CELLS: REPLY C/R OR YES FOR DISPLAY ON LU. REPLY WITH INTEGER GREATER THAN 3 FOR UNDEFINES LIST. REPLY NO OR XX FOR NO DISPLAY OF UNDEFINED CELLS. PRESET UNDEFINED: REPLY WITH STRING NUMBER TO PRESET THAT STRING. REPLY WITH 2 DECIMAL INTEGERS TO PRESET ALL UNDEFINED CELLS IN THAT RANGE. REPLY ALL TO SET ALL UNDEFINED CELLS IN THE LOAD RANGE. IF A DISPLAY OF UNDEFINES WAS REQUESTED ON THE USER CONSOLE, IT WILL BE REPEATED AFTER EACH PRESET REQUEST. REPLY NL TO STOP LISTING ON THE CONSOLE. REPLY NO OR GO TO END PRESET OPERATIONS AND GO TO OUTPUT. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE BINARY INPUT FILE IS EXAMINED AND A TABLE HAVING ONE BIT FOR EACH WORD FOUND IS CONSTRUCTED. THE BOUNDS AND NO. OF RECORDS FOUND ARE OUTPUT. IF REQUESTED, THIS TABLE IS SEARCHED FOR UNDEFINED STRINGS AND A LIST OF THE UNDEFINED STRINGS IS OUTPUT ON THE SELECTED LOGICAL UNIT. FORMAT OF LISTING: STRING NUMBER, SIZE, DECIMAL AND BINARY BEGIN AND END. FOLLOWING COMPLETION OF THE PRESET, THE INPUT FILE IS RESCANNED, RETRIEVING N PAGES OF DATA PER SCAN. THE DATA IS THEN FORMED INTO BINARY ABSOLUTE RECORDS USING THE PREVIOUSLY CONSTRUCTED TABLE AS A GUIDE. THE VALUE OF N IN THIS VERSION IS SET TO FOUR (4096) BUT THE USER CAN CHANGE N IF MORE OR LESS MEMORY IS AVAILABLE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: PROGRAM EXITS FOR: FILE MANAGER ERRORS SOURCE FILE NOT A TYPE 7 FILE ENTRY OF /E WILL ABORT PROGRAM **MISCELLANEOUS: NO PRESET WILL BE PERFORMED ON THE BASE PAGE. ORDER OF LOADING COMPACTED FILES MAY BE IMPORTANT IF ANY PRESETS WERE SPECIFIED. IF PRESET IS NOT REQUESTED, OUTPUT RECORDS WILL NOT BE MERGED OVER UNDEFINED MEMORY LOCATIONS, IN GENERAL SHORTER OUTPUT RECORDS WILL PRODUCED. THIS PROGRAM WAS PREPARED TO REDUCE LOADING TIME WITH TAPE CASSETTES AND INCREASE THEIR CAPACITIES. E08401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: JKEYS **PROGRAM TITLE: DEFINE USER SOFT KEYS **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: TERMINAL SOFTKEYS DISPLAY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ALLOWS THE HP 264X TERMINAL USER TO INTERACTIVELY DEFINE THE CONTENTS OF ALL SOFT KEYS AND STORE THE RESULTS IN A FILE. THE FILE CAN THEN BE DUMPED TO THE TERMINAL WITH A TWO LINE LEADER DESCRIB- ING EACH SOFT KEY. THE PROGRAM IS COMPLETELY SELF-INSTRUCTIONAL AND PERFORMS ALL NECESSARY ERROR CHECKING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RUN JKEYS(,LU) WHERE LU IS THE TERMINAL FOR INTERACTION **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: /JKEYS: FILE ERROR = N /JKEYS: INVALED COMMAND **MISCELLANEOUS: E08501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UCU **PROGRAM TITLE: USER CODE UTILITY **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: CODE FILES DIRECTORY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS GROUP OF FIVE UTILITY PROGRAMS AID IN HOUSEKEEPING OF FILES STORED IN FILE MANAGER FORMAT ON 7900, 7905, 7906, 7920 DISC FILES RUNNING UNDER RTE. A TWO CHARACTER USER CODE CAN BE ATTACHED TO EACH FILE, THE FILE MANAGER DIRECTORY CAN BE SELECTIVELY LISTED, FILE NAMES HAVING COMMON UNCODES CAN BE COLLECTED OR DIRECTORY SORTED IN ORDER OF FILE SIZE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE **LOAD INSTRUCTIONS: EACH PROGRAM IS AN INDEPENDENT UNIT AND IS LOADED VIA THE RTE SYSTEM LOADER. **RUN INSTRUCTIONS: RU, UCODE, <LU> , <CARTLU> , <UCODE> LU - THE INTERACTIVE DEVICE LU DEFAULTS TO ONE. CARTLU - THE CARTRIDGE NUMBER (POSITIVE), OR LOGICAL UNIT OF THE CARTRIDGE (NEGATIVE) HAS AN INTERNAL DEFAULT SET TO 9. UCODE - THE UCODE CHARACTER PAIR TO BE ATTACHED TO THE FILES, DEFAULTS TO AN INTERACTIVE REQUEST FOR A UCODE. RU, ULIST,<LU> , <CR> , <UCODE> , <LISTLU> , <SKIP> LU-INTERACTIVE CONSOLE, DEFAULTS TO 0G OR ONE. CR - CARTRIDGE NUMBER, DEFAULTS TO 9 INTERNALLY. UCODE - THE UCODE PAIR FOR SELECTED FILES, IF OMITTED, ALL TYPE 3,4,5 FILES ARE LISTED. LISTLU - THE LU UPON WHICH THE LIST WILL BE WRITTEN. IF SIX 132 WIDE COLUMN FORMAT WILL BE USED, DEFAULTS TO LU. SKIP- IF PRESENT, THE NUMBER OF FILE NAMES TO BE SKIPPED BEFORE TESTING BEGINS. ------------ RU, ALIST,<LU> , <CR> , <UCODE> , <LISTLU> , <"S"> PARAMETERS AS ABOVE EXCEPT "S", IF PRESENT, WILL CAUSE TYPE 5 FILES TO BE OMITTED. ------------ RU, BLIST,<LU> , <CR> , <LISTLU> PARAMETERS AS ABOVE. ------------ RU, UFILE, <LU> , <CR> , <UCODE> , <UFILE> , <SC> , <CR2> LU INTERACTIVE DEVICE FOR OPERATOR COMMUNICATION CR CARTRIDGE NUMBER OF LU (NEGATIVE) WHICH IS TO BE SEARCHED UCODE A 2 CHARACTER USER CODE WHICH DEFINES THE FILES UFILE THE FILE ON WHICH THE LIST IS TO BE WRITTEN SC SECURITY CODE OF THE CREATED FILE CR2 CARTRIDGE ON WHICH UFILE IS TO BE FOUND OR CREATED CR2 DEFAULTS TO CR SC DEFAULTS TO NO SECURITY CODE UFILE DEFAULTS TO A FILE NAME UCFILE UCODE IF DEFAULTED WILL BE REQUESTED INTERACTIVELY CR DEFAULTS TO CARTRIDGE 9 LU DEFAULTS TO 1 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS GROUP OF FIVE (5) UTILITY PROGRAMS AID IN HOUSEKEEPING OF FILES STORED IN FILE MANAGER FORMAT ON 7900, 7905, 7906, 7920 DISC FILES RUNNING UNDER RTE. A 2 CHARACTER USER CODE CAN BE ATTACHED TO EACH FILE (UCODE), THE FMGR DIRECTORY CAN BE SELECTIVELY LISTED (ULIST,ALIST), FILE NAMES HAVING COMMON UCODES CAN BE COLLECTED (UFILE) OR DIRECTORY SORTED IN ORDER OF FILE SIZE (BLIST). UCODE IS AN INTERACTIVE UCODE IS AN INTERACTIVE PROGRAM THAT ADDS A CHARACTER PAIR (UCODE) TO A TYPE 3, 4, OR 5 FILE. THE UCODE IS STORED IN THE DIRECTORY IN THE PLACE NORMALLY USED FOR RECORD SIZE IN TYPE 2 AND 6 FILES. ULIST IS A PROGRAM WHICH CAN SELECTIVELY LIST THE FILE NAMES IN THE FILE DIRECTORY, WITH THEIR ASSOCIATED UCODES. ALIST IS SIMILAR TO ULIST EXCEPT AN INCORE SORT IS PERFORMED BEFORE LISTING. BLIST PROVIDES A DIRECTORY LIST OF THE FILE NAMES IN ORDER OF SIZE OF EACH ENTRY IN BLOCKS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: TERMINAL READY E08601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: COMMENT INSERTER FOR ASSEMBLER PROGRAMS **REVISION? YES **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: PAPER TAPE EDITOR ASSEMBLER TEXT **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: RTE DOS DOS-M **MEMORY REQUIREMENTS: 5067 WITH EXTERNAL SUBPROGRAMS (442 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ASSISTS IN ADDING COMMENTS TO ASSEMBLY LANGUAGE SOURCE PROGRAMS. ONE RECORD OF THE SOURCE PROGRAM IS READ BY THE PHOTOREADER AND PRINTED ON THE TELETYPE. THE TELETYPE IS THEN TABULATED TO COLUMN 21 OR THREE SPCES PAST THE LAST CHARACTER IN THE SOURCE PROGRAM RECORD, WHICHEVER IS GREATER. THE USER NOW TYPES THE COMMENT TO BE ADDED, FOLLOWED BY A CARRIAGE RETURN AND LINE FEED (IF NO COMMENT THEN TYPE SPACE, CARRIAGE RETURN, LINE FEED). THE ENTIRE RECORD WILL NOW BE PUNCHED. THE STEPS ABOVE WILL BE REPEATED FOR EACH RECORD OF THE SOURCE PROGRAM. TO TERMINATE WITH TRAILER, TYPE A SLASH: '/'. USES DRIVERS D.00,D.01,D.02. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: COMPILE THE SOURCE TAPE USING ALGOL COMPILER (CONTROL STATEMENT CONTAINS "S" PARAMETER). LOAD COMPILED PROGRAM USING CONFIGURED BCS. OBSERVE THE FOLLOWING LOAD-TIME ORDER A. CONFIGURED BCS B. COMPILED PROGRAM C. RELOCATABLE LIBRARY (FORTRAN/ALGOL) PLACE USERS ASSEMBLY LANGUAGE SOURCE PROGRAM INTO PHOTOREADER, TURN ON PUNCH, AND PRESS RUN. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: PROGRAM BEGINS BY PUNCHING LEADER. TO TERMINATE WITH TRAILER, TYPE SLASH "/". E08701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: XREF **PROGRAM TITLE: RTE CROSS-REFERENCE GENERATOR **REVISION? YES **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: ASSEMBLER PAPER TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: FROM AN ASSEMBLY LANGUAGE SOURCE PROGRAM, THIS PACKAGE PRODUCES AND PRINTS AN ALPHABETIZED CROSS-REFERENCE LIST OF ALL SYMBOLS APPEARING IN THE PROGRAM. EACH SYMBOL IS FOLLOWED BY THE SEQUENCE NUMBER OF THE STATEMENT IN WHICH IT IS DEFINED, AND BY THE SEQUENCE NUMBERS OF ALL STATEMENTS REFERRING TO THE SYMBOL. IF THE PROGRAM IS MORE THAN ONE TAPE LONG, THE 4-DIGIT SEQUENCE NUMBER IS FOLLOWED BY A SLASH AND THE NUMBER OF THE TAPE ON WHICH IT APPEARS. THE CROSS-REFERENCE GENERATOR WILL OPERATE IN A MINIMUM RTE SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE THE FOLLOWING PROGRAMS: A. RTE CROSS-REFERENCE GENERATOR (XREF) B. IFMGR C. X.REF 2. LOAD INTO DISC RESIDENT BG THE RELOCATABLE PROGRAMS IN THE FOLLOWING ORDER: A. RTE CROSS-REFERENCE GENERATOR (XREF) B. IFMGR C. RTE LIBRARY D. X.REF NOTE: X.REF MUST BE LOADED LAST SINCE IT DEFINES THE CROSS-REFERENCE TABLES IN THE UNUSED CORE. AFTER THE LIBRARY IS LOADED, THE LOADER TYPES ARE: /LOADER: UNDEFINED EXTS /LOADER: IDCB /LOADER: LTAB /LOADER: FWA1 PLACE THE X.REF TAPE IN THE PHOTOREADER AND TYPE GO,LOADR. AFTER THE TAPE IS LOADED, TERMINATE THE LOADING OPERATION WITH A GO, LOADR, 1. **RUN INSTRUCTIONS: THE FORMAT FOR SCHEDULING THE CROSS-REFERENCE GENERATOR IS ON, XREF, A,B,C,D,E, WHERE: A = LOGICAL UNIT OF INPUT DEVICE IF 2, READ SOURCE FR0M LS TRACKS DEFAULT=LOGICAL UNIT 5 B = LOGICAL UNIT OF LIST DEVICE - DEFAULT = 6 C = LINESPPAGE ON LISTING - DEFAULT = 6 D # 0 - IF USED, D MUST BE A LEGAL LOGICAL UNIT OF A KEYBOARD PRINTER DEVICE. THE DEVICE WILL BE USED TO REQUEST AND INPUT THE FILE MANAGER SOURCE FILE NAME. E = KEYBOARD INPUT LOGICAL UNIT - IF PRESENT TWO CHARACTERS ARE READ FROM THE KEYBOARD. THESE GIVE THE BOUNDS OF LABELS WHICH ARE TO BE CONSIDERED. ALL OTHERS ARE IGNORED. FOR EXAMPLE, IF: M IS TYPED, ONLY SYMBOLS WHOSE FIRST LETTER IS BETWEEN "." AND "M" ARE CONSIDERED IN THE CROSS-REFERENCE TABLE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF THE FILE MANAGER PACKAGE IS NOT USED, DUMMY ROUTINES MAY BE SUPPLIED TO SATISFY THE EXTERNALS OPEN, READF, CLOSE AND IFMGR OR THIS SECTIONS MAY BE EDITED OUT OF THE XREF SOURCE. E08801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RTE DEBUG WITH TRACE **REVISION? YES **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: DEBUG **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS RTE DEBUGGING ROUTINE PROVIDES THE FOLLOWING PROGRAMMING AIDS: 1. PRINT (DUMP ON LIST DEVICE) SELECTED AREAS OF MEMORY IN OCTAL OR ASCII FORMAT. 2. TRACE (ON LIST DEVICE) PORTIONS OF THE PROGRAM DURING EXECUTION. 3. MODIFY THE CONTENTS OF SELECTED AREAS IN MEMORY. 4. MODIFY SIMULATED COMPUTER REGISTERS. 5. INSTRUCTION AND OPERAND BREAK POINTS. 6. INITIATE EXECUTION AT ANY POINT IN PROGRAM. 7. DEBUGGING ROUTINE RESTART. 8. SPECIFYING RELOCATABLE PROGRAM BASE. 9. TERMINATING PROGRAM BEING DEBUGGED. THE ROUTINE IS IDENTICAL IN OPERATION TO THE STANDARD HP BCS DEBUG ROUTINE. SEE A POCKET GUIDE TO HP COMPUTERS, 5950-8313. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: 1. EDIT LINE 74 TO REFLECT THE PROPER SPARE BASE PAGE LINK AS OUTLINED UNDER MISCELLANEOUS. 2. ASSEMBLE THE SOURCE TAPE AND SAVE THE RELOCATABLE OBJECT EITHER ON PAPER TAPE OR AS AN RTE FILE MANAGER FILE. 3. LOAD THE PROGRAM TO BE DEBUGGED IN THE NORMAL BACKGROUND MANNER AND INCLUDE RTE DEBUG AS THE LAST PROGRAM BEFORE THE LIBRARY. **RUN INSTRUCTIONS: FOLLOW THE DIRECTIONS FOR BCS DEBUG AS OUTLINED IN A POCKET GUIDE TO HP COMPUTERS, 5950-8313. TO TERMINATE THE BACKGROUND OPERATION TYPE "E," AS AN OPERATOR COMMAND. NOTE: SWITCH REGISTER BIT 15 WILL CAUSE A BREAKPOINT. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. THE EFFECTIVE (FINAL) OPERAND ADDRESS IS STORED IN WORD -MEMRY-. THIS WORD MUST BE IN BASE PAGE TO ALLOW DEBUG TO BE RELOCATABLE. THEREFORE, ONE BASE PAGE WORD MUST BE RESERVED AT RTGEN TIME. THIS MAY BE ACCOMPLISHED BY SETTING FWA BP LINKAGE TO ONE PLUS THE FIRST AVAILABLE SELECT CODE NUMBER AFTER THE LAST I/O CARD AND EQU MEMRY TO THE SPARE BASE PAGE WORD. 2. THE DUMP AND TRACE FUNCTIONS ARE DIRECTED TO THE LIST LOGICAL UNIT. BOTH INPUT/OUTPUT AND LIST LOGICAL UNITS ARE DEFAULTED TO LOGICAL UNIT 1. THESE MAY BE CHANGED BY SUPPLYING THEM AS PARAMETERS IN THE "ON" REQUEST. PARAMETER ONE IS THE INPUT/OUTPUT DEVICE AND PARAMETER TWO IS THE LIST DEVICE. 3. ALL CALLS TO EXEC ARE TRAPPED, TRANSFERRED TO DEBUG, AND THEN MADE DIRECTLY FROM DEBUG. THIS AVOIDS MEMORY PROTECT VIOLATIONS, HOWEVER, SINCE THE EXEC CALLS ARE INITIATED BY DEBUG, ANY DEBUG OPERATIONS, SUCH AS BREAKPOINT AND TRACE, WILL AUTOMATICALLY BYPASS THE EXEC REQUEST LOCATIONS IN THE PROGRAM BEING DEBUGGED. 4. ANY REFERENCES TO REAL TIME RESIDENT LIBRARY ROUTINES WILL CAUSE A MEMORY PROTECT VIOLATION UNLESS THESE ROUTINES ARE TRAPPED IN A SIMILAR MANNER AS THE EXEC REQUEST CALLS ARE. E08901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EDIT **PROGRAM TITLE: RTE CONVERSATIONAL SUPER EDITOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: EDITOR **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 6.9K OF BACKGROUND **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'EDIT' IS AN RTE CONVERSATIONAL EDITOR. THE EDIT COMMANDS MAY BE ENTERED IN NON-SEQUENTIAL ORDER FROM ANY LOGICAL UNIT DEVICE, LS TRACKS OR A FILE MANAGER PACKAGE (FMP) FILE. THE SOURCE TO BE EDITED MAY BE APPENDED FROM ANY INPUT LOGICAL UNIT, LS TRACKS OR AN FMP FILE. SOURCES OR PORTIONS MAY BE MERGED WITH THE SOURCE BEING EDITED. LINES MAY BE DELETED, INSERTED, MOVED OR REPLACED IN ANY ORDER IN THE EDIT FILE. CHARACTER STRINGS MAY BE EDITED WITHIN A SINGLE LINE, A GROUP OF LINES OR WITHIN THE ENTIRE SOURCE. THE EDITED FILE OR ANY PORTION OF IT MAY BE LISTED WITH LINE NUMBERS ON ANY LOGICAL UNIT OR FMP FILE. THE EDITED FILE OR ANY PORTION OF IT MAY BE OUTPUTTED TO ANY LOGICAL UNIT, LS TRACKS OR FMP FILE. THE LS TRACK(S) ASSIGNMENT IS MADE BY THE EDITOR ON OUTPUT AND LS TRACK(S) ARE RELEASED ON INPUT. THIS EDIT REQUIRES 6.9K OF BACKGROUND AND THE RTE FILE MANAGER SOFTWARE PACKAGE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: RTE EDITOR HAS TWO LINES WHICH MAY HAVE TO BE CONFIGURED IF THE SYSTEM CONTAINS I/O PERIPHERALS IN ADDITION TO THE STANDARD LOGICAL UNITS IN THE SYSTEM. IF THE SYSTEM CONTAINS KEYBOARD LOGICAL UNITS OTHER THAN 1, THEN EDIT THIS LINE TO INCLUDE THE LOGICAL UNITS. TERMINATE THE LIST WITH A ZERO. FOR EXAMPLE: IF THE SYSTEM HAS A LOGICAL UNIT 7 WHICH IS A CRT/KYBD AND AN EXTRA TTY AT LOGICAL UNIT 11, THEN LINE 702 WOULD BE DEC 1, 7, 11, 0. LIKEWISE, LINE #711 CONTAINS A LIST OF ALL LEGAL OUTPUT LOGICAL UNITS IN THE SYSTEM. IN THE ABOVE EXAMPLE, LINE #711 WOULD BE CHANGED TO LEGAL DEC 1, 2, 4, 6, 7, 11, 0. ASSEMBLE THE MAIN RTE EDITOR PROGRAM AND ITS SUPPORTING SUBROUTINES. NOTE: SUBROUTINE NUM IS A FORTRAN PROGRAM. USING THE LOADER, REPLACE THE OLD EDITOR WITH THE NEW EDITOR. NOTE: IT IS RECOMMENDED THAT THE EDITOR ALWAYS BE ADDED TO THE SYSTEM AFTER THE RTGEN TO PREVENT ITS SUBROUTINES FROM BECOMING PART OF THE LIBRARY UNLESS, OF COURSE, YOU WANT THE SUBROUTINES IN THE LIBRARY OR DON'T CARE IF THEY ARE. A TYPE 2, 44 WORD/RECORD FMP FILE, NAMED EDITOR WITH A SECURITY CODE OF 0 IS REQUIRED FOR THE EDIT WORK FILE. THIS FILE SHOULD BE LARGE ENOUGH TO HANDLE THE LARGEST EXPECTED EDIT JOB. AS A RULE OF THUMB, A 600 BLOCK FILE WILL HANDLE A SOURCE OF APPROXIMATELY 1200 LINES. **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION **MISCELLANEOUS: SPECIAL CONSIDERATIONS LINE #739 OF RTE EDITOR IS THE LISTS DEVICE MAXIMUM WORD LENGTH AND IS SET TO 36 (72 CHARACTERS). THIS LENGTH MAY BE CHANGED TO SUIT OTHER LIST DEVICES OF DIFFERENT CHARACTER PER LINE LENGTH. SPECIAL DEVICES MAY BE HANDLED AS EDITOR INPUT/OUTPUT DEVICES BY CREATING TYPE ZERO FMP FILES FOR THESE DEVICES. E09001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RTMDE **PROGRAM TITLE: RTE MICRO DEBUG EDITOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: EDITOR DEBUG MICROCODE PROM **LANGUAGES: ASMB MICROASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: 'RTMDE' FACILITATES LOADING AND DEBUGGING A USERS WRITABLE CONTROL STORE (WCS) MICRO PROGRAM IN A REAL TIME EXECUTIVE (RTE) OPERATING SYSTEM. SPECIFICALLY IT ALLOWS A USER TO LOAD OR READ WCS; EXECUTE A MICROCODE PROGRAM WITH BREAKPOINTS THAT WILL DISPLAY THE FIRMWARE REGISTERS; AND GENERATE MASK TAPES THAT ARE USED TO PROGRAM PROM CHIPS. RTMDE INCORPORATES ALL OF THE FEATURES OF THE DOS MICRO-DEBUG-EDITOR. A MINIMUM RTE CONFIGURATION WITH ONE OR MORE WCS MODULES ARE THE HARDWARE REQUIREMENTS. LITERATURE REFERENCE RTE PROGRAMMING AND OPERATING MANUAL HP 02005-90001 MICROPROGRAMMING GUIDE HP 5951-3028 MICROPROGRAMMING SOFTWARE HP 02100-90133 DOS MICROPROGRAMMING SOFTWARE HP 02100-90146 **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE RTMDE AND SUBROUTINE IFMGR. 2. SAVE RELOCATABLE CODE ON A FMP FILE OR TAPE. 3. LOAD RTMDE, IFMGR AND OPTIONALLY A TEST* PROGRAM INTO BACKGROUND. *TEST - INITIALIZATION PROGRAM AS DESCRIBED IN THE DOS MICRO- PROGRAMMING MANUAL (HP #02100-90146) SECTION 9. **RUN INSTRUCTIONS: TO SCHEDULE RTMDE *ON, RTMDE, A WHERE A = LOGICAL UNIT NUMBER OF KYBD/DISPLAY DEVICE FOR OPERATOR COMMUNICATION WITH THE MICRO-DEBUG-EDITOR. DEFAULT FOR A = 1, SYSTEM CONSOLE. FOLLOW THE INSTRUCTIONS LISTED IN THE DOS MICROPROGRAMMING MANUAL. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: AS LISTED SECTION 9 OF THE HP DOS MICROPROGRAMMING MANUAL. **MISCELLANEOUS: SPECIAL CONSIDERATIONS ALL BETS ARE OFF OF MAINTAINING THE RTE OPERATING SYSTEM DURING MICRO CODE DEBUGGING SO APPROPRIATE WARNINGS SHOULD BE GIVEN TO OTHER USERS. THE GREATEST DANGER LIES IN MICROCODE MODIFYING THE RESIDENT OR HANGING IN A LOOP. IF THE PROGRAMMER USES BREAKPOINTS AND ABORTS MICRO-CODE EXECUTION BEFORE THE ABOVE OCCURS, SYSTEM INTEGRITY CAN BE MAINTAINED. RTMDE SETS THE WCS MODULE "IN USE" FLAG PRIOR TO THE 1ST WCS LOAD COMMAND AND THEN DOES NOT RELEASE (CLEAR) THE FLAG UNTIL THE TERMINATE COMMAND. DURING THIS PERIOD THE MODULE IS NOT AVAILABLE FOR USE FOR OTHER FOREGROUND OR BACKGROUND PROGRAMS. (SEE DVR33 DOCUMENTATION FOR EXPLANATION AND GROUNDRULES OF THE "IN USE" FLAG). E09101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RAPG **PROGRAM TITLE: RTE ACTIVITY PROFILE GENERATOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: STATUS PERFORMANCE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: 'RAPG' ACCUMULATES A SPECTRUM FROM THE P-REGISTER TO PROVIDE AN ACTIVITY PROFILE FOR PROGRAM TIMING ANALYSIS. THE ANALYSIS WILL INDICATE WHAT AREAS CAN BE MICROCODED OR RECORDED TO IMPROVE EXECUTION TIME. THE CORE REGION OF INTEREST IS PARAMETER DEFINED WHEN 'RAPG' IS INVOKED. THE CORE AREA IS BROKEN UP INTO 50 CELLS PLUS 1 CELL ABOVE AND BELOW THE DEFINED AREA. CELLS ARE MAINTAINED IN COMMON SO THAT THEY MAY BE ACCESSED BY AN ANALYSIS PROGRAM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE SUBROUTINE RAPG AND SAVE RELOCATABLE. 2. ADD THE FOLLOWING CALLS TO THE PROGRAM THAT IS TO BE ANALYZED. A. CALL MAPON (IFIRST,LAST) OR JSB MAPON DEF *+3 DEF IFIRST DEF LAST WHERE: IFIRST = OCTAL ADDRESS OF 1ST CORE LOCATION OF INTEREST. LAST = OCTAL ADDRESS OF LAST CORE LOCATION OF INTEREST. B. CALL MAPOF OR JSB MAPOF DEF *+1 THE MAPON CALL MUST BE ADDED BEFORE THE 1ST. STATEMENT TO BE ANALYZED. THE MAPOF CALL MUST BE ADDED BEFORE THE 1ST. STATEMENT TO BE ANALYZED AND BEFORE PROGRAM TERMINATION. 3. LOAD THE PROGRAM TO BE ANALYZED WITH SUBROUTINE RAPG INTO BACKGROUND AND SCHEDULE THE PROGRAM FOR EXECUTION. 4. WHEN THE PROGRAM TERMINATES, PROGRAM ACP OR A USER WRITTEN PROGRAM MAY BE EXECUTED TO OBTAIN THE ANALYSIS. 5. SEE RAPG LISTING FOR DESCRIPTION OF THE COMMON CELLS. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: INSTRUCTIONS FOR TEST CASE: 1. LOAD PROGRAM MAPTT AND RAPG SUBROUTINE INTO BACKGROUND AND SAVE THE CORE LOAD MAP. 2. LOAD PROGRAM ACP INTO BACKGROUND. 3. SCHEDULE MAPTT BY ON,MAPTT AND THEN SCHEDULE ACP. NOTE THE PROFILE LISTED BY ACP. 4. TO "ZOOM" IN ON THE ROUTINES REQUIRING THE MOST EXECUTION TIME SCHEDULE MAPTT BY UN,MAPTT,A,B WHERE A AND B ARE THE BOUNDARY ADDRESSES OF THE AREA OF INTEREST. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SPECIAL CONSIDERATIONS 1. RAPG IS INTENDED TO RUN IN BACKGROUND, THEREFORE AREAS BELOW THE 1ST. WORD OF AVAILABLE BACKGROUND AREA ARE NOT INCLUDED IN THE MAP. TO CHANGE THIS LOWER BOUND, THE BKDRA EQUATE STATEMENT MAY BE CHANGED TO POINT TO ANOTHER AREA OF CORE. 2. RAPG REQUIRES ONE BASE PAGE LINK. THIS BASE PAGE LINK CAN EITHER BE ESTABLISHED AS A SPARE AT RTGEN TIME OR AN UNUSED I/O TRAP CELL. 3. BEFORE ASSEMBLING RAPG, EDIT LINES 57 AND 58 TO POINT TO THE TBG AND SPARE BASE PAGE LINK RESPECTIVELY. 4. RAPG OVERLAYS CODING IN THE RTIOC MODULE IN ORDER TO TRAP THE TBG INTERRUPTS. A CALL TO MAPOF MUST BE MADE TO RESTORE THE ORIGINAL CODE AND SPARE BASE LINK BEFORE TERMINATION. IF FOR ANY REASON THE PROGRAM IS ABORTED BEFORE MAPOF IS CALLED, THE SYSTEM WILL HAVE TO BE REBOOTED. 5. IT MAY BE NECESSARY TO LOOP THE PROGRAM IN THE AREA OF INTEREST SEVERAL TIMES IN ORDER TO BUILD UP THE PROFILE. E09201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RENUM **PROGRAM TITLE: RENUM: RESEQUENCES FORTRAN SOURCE **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: EDITOR **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: MINIMUM OF 8K USER PROGRAM AREA **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL RE-SEQUENCE THE STATEMENT NUMBERS OF A FORTRAN SOURCE PROGRAM. UP TO 200 STATEMENT NUMBERS ARE ALLOWED. THE OPERATOR SPECIFIES THE BEGINNING ST # AND INCREMENT VALUE, INPUT AND OUTPUT DEVICES OR FILE NAMES. THE PROGRAM DOES NOT SEARCH CONTINUATION LINES OR COMMENT LINES. DURING EXECUTION, A LINE BY LINE LISTING IS PROVIDED SHOWING THE ORIGINAL LINE AND THE NEW LINE. THE ORIGINAL SOURCE IS LEFT INTACT AND A NEW SOURCE IS GENERATED. UPON COMPLETION, THE TABLE OF OLD #'S AND NEW #'S IS LISTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE **LOAD INSTRUCTIONS: 1. COMPILE SOURCE RENUM. 2. ASSEMBLE SOURCE $UNPK. 3. IF THE HOST SYSTEM IS NON-RTE II, ASSEMBLE SOURCE $CNUMD. **RUN INSTRUCTIONS: TO RUN THE PROGRAM;*ON,RENUM. THE PROGRAM IS CONVERSATIONAL (SEE EXAMPLE RUN PROCEDURE). IF THE LOGICAL UNIT FOR INPUT IS THE DISC (LU = 2), THE FILE NAME WILL BE REQUESTED. IF THE OUTPUT IS ALSO TO THE DISC, THE FILE NAME REQUESTED BY THE PROGRAM WILL BE CREATED. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. ALL I/O CHECKS WITH REFERENCE TO LU ASSIGNMENTS ARE SYSTEM DEPENDENT, I.E., WRITES TO AN INPUT DEVICE. 2. LOGICAL UNIT #1 = TTY. 3. CONTINUATION LINES THAT ARE CREATED BY THE PROGRAM ARE NOT NECESSARILY CORRECT AND MAY REQUIRE AN EDIT. THIS IS SHOWN IN THE EXAMPLE I/O RUN PROCEDURE. AN EXAMPLE OF A CREATED CONTINUATION LINE IS SHOWN IN THE EXAMPLE RUN PROCEDURE OF THE TEST SOURCE. 4. THE PROGRAM SEARCHES FOR THE FIRST VALID END STATEMENT, NOT AN END$. HOWEVER, AN END$ IS INSERTED IN THE NEW SOURCE FOLLOWING THE END STATEMENT IN ALL CASES. E09301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BREF **PROGRAM TITLE: CROSS REFERENCE TABLE GENERATOR FOR HP 92101A **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: BASIC COMPILER PAPER TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 4300B WORDS WITH SUBROUTINES **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: (BREF) IS A CROSS-REFERENCE TABLE GENERATOR FOR HP 92101A MULTIUSER REAL TIME BASIC. IT WILL ACCEPT A FILE MANAGER SOURCE FILE FOR INPUT AND PRODUCE A FORMATTED LISTING OF ALL VARIABLES USED IN THE SOURCE PROGRAM. THE LISTING IS DIVIDED INTO FOUR PARTS: 1. 1 CHARACTER SIMPLE VARIABLES. 2. STRING VARIABLES. 3. ARRAY VARIABLES. 4. 2 CHARACTER SIMPLE VARIABLES. WITHIN EACH PART, THE LIST OF THE VARIABLES IS ALPHABETICAL, AND THE LIST OF THE LINE NUMBERS WHICH FOLLOWS EACH VARIABLE IS ARRANGED NUMERICALLY. THE ALGORITHM USED BY (BREF) SHOULD REMAIN COMPATIBLE WITH FUTURE REVISIONS OF RTE-II BASIC. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: PLACE THE TAPE CONTAINING "BREF" SOURCE AND THE SUBROUTINE "NAMR" IN THE TAPE READER. ISSUE THE FOLLOWING FILE MANAGER COMMANDS: :MS,5 MOVE THE "BREF" SOURCE INTO THE LS AREA :LG,3 ASSIGN LOAD AND GO TRACKS :RU,ASMB,2,99 ASSEMBLE BREF INTO RELOCATABLE IN LG :MR,5 MOVE "NAMR" INTO LOAD AND GO AREA :RU,LOADR,99,,9 LOAD "BREF" PERMANENTLY INTO THE SYSTEM **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: 1. SCHEDULE BREF WITH THE FOLLOWING COMMAND: ON,BREF,<TTY>,<LIST> WHERE: <TTY> IS THE MTM LU OF A TERMINAL TO WHICH REQUESTS AND ERRORS WILL BE DIRECTED. DEFAULT IS LU #1 OR THE MTM TERMINAL WHICH ISSUED THE "ON" COMMAND. <LIST> IS THE LU OF THE LIST DEVICE ON WHICH THE XREF IS TO BE PRINTED. DEFAULT IS LU #6. 2. BREF RESPONDS: /BREF: FILENAME? REPLY WITH THE FILENAME:SECURITY CODE:CRNUMBER OF THE FILE TO BE USED FOR SOURCE INPUT. IT IS STRONGLY RECOMMENDED THAT THIS FILE WAS CREATED WITH THE BASIC "SAVE" COMMAND TO INSURE PROPER SYNTAX. IF A CROSS-REFERENCE IS NOT DESIRED, ENTER CNTL-D. 3. BREF WILL THEN OPEN THE FILE. IF A FMGR ERROR OCCURS, BREF WILL PRINT: /BREF: FILE MANAGER ERROR - XX /BREF: BREF ABORTED 4. BREF WILL THEN GENERATE A SYMBOL TABLE, AND WHEN ALL SOURCE HAS BEEN PROCESSED, IT WILL PRINT THE CROSS-REFERENCE LISTING. 5. IF A VARIABLE IS ONLY USED ONCE IN A PROGRAM (THEREBY MAKING IT A CONSTANT, AND SOMEWHAT USELESS...), BREF WILL FLAG IT IN THE LISTING BY PLACING A COMMERCIAL AT SIGN (@) NEXT TO THE VARIABLE NAME. 6. POSSIBLE ERROR MESSAGES: MEANING: /BREF: $END <******> PROGRAM ****** XREF DONE /BREF: LINE SYNTAX ERROR LINE DOESN'T BEGIN WITH A NUMBER. BREF PRINTS THE OFFENDING LINE. /BREF: BREF ABORTED AN IRRECOVERABLE ERROR HAS OCCURRED /BREF: TABLE OVERFLOW NOT ENOUGH MEMORY TO HOLD ALL SYMBOLS /BREF: NO SYMBOLS THE PROGRAM HAD NO VARIABLE REFERENCES 7. TO VERIFY PROPER OPERATION, RUN BREF TO PRODUCE A CROSS REFERENCE LISTING OF ANY PROGRAM THAT IS HANDY. THEN, MANUALLY CHECK THE VARIABLE USAGE IN THE PROGRAM AGAINST THE LISTING. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: BREF AND SUBROUTINES FROM THE RELOCATABLE LIBRARY USE APPROXIMATELY 4300B WORDS. BREF USES ALL OF CORE EXCLUSIVE OF ITSELF FOR BUILDING THE SYMBOL TABLES. THE MORE BACKGROUND CORE THAT IS AVAILABLE, THE LARGER A SYMBOL TABLE CAN BE PROCESSED. E09401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: APG **PROGRAM TITLE: RTE 2/3/4 ACTIVITY PROFILE GENERATOR FOR HP 1000 M-,E-, AND F-SERIES **REVISION? YES **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: PERFORMANCE STATUS **LANGUAGES: FTN4 ASMB MICROASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PACKAGE ANALYZES ACTIVITY IN ONE OR MORE APPLICATION PROGRAMS. ON A BASIS OF THIS ACTIVITY, THE APPLICATIONS MAY BE OPTIMIZED BY RECORDING OR MICROCODING. THE PROGRAMS BEING ANALYZED NEED NOT BE MODIFIED FOR PURPOSES OF THE ANALYSIS. THE RTE SYSTEM MUST HAVE DVR36(13197-16001) AND A LU FOR THE WCS CARD. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: SOURCE **LOAD INSTRUCTIONS: COMPILE AND LOAD ALL PROGRAMS SEPARATELY. NOTE THAT APGI REQUIRES A RELOCATABLE COPY OF WLOAD (13197-16003) BE LOADED WITH IT. THE RTE SYSTEM MUST HAVE DVR36 (13197-16001), AND A LOGICAL UNIT MUST BE ALLOCATED FOR THE WCS CARD. BE SURE TO READ THE COMMENTS IN &APG2 (OR APG34). NOT ALL PROGRAMS ARE REQUIRED FOR A PARTICULAR SYSTEM. IF THE SYSTEM IS RTE 2, USE &APG2 (OMIT &APG3). IF THE SYSTEM IS RTE 3 OR 4, USE &APG34 (OMIT &APG2). IF RUNNING ON A 21MX M-SERIES, USE &APGM (OMIT &APGME). IF RUNNING ON A 21MX E-SERIES, USE &APGME (OMIT &APGM). MICROASSEMBLE &APGM (21MX M-SERIES ONLY), OR &APGME (21MX E-SERIES ONLY). **RUN INSTRUCTIONS: TO START THE ACTIVITY PROFILE GENERATION, RUN APGI. APGI WILL ACCEPT PARAMETERS AS PART OF THE RU DIRECTIVE; IF THE PARAMETERS ARE OMITTED, APGI WILL REQUEST THE REQUIRED PARAMETERS. USERS MAY USE APG TO ANALYZE WHERE THEIR APPLICATION PROGRAMS ARE BUSIEST; SYSTEM OPTIMIZATION, INCLUDING MICROCODING "TOO SLOW" SUBROUTINES, MAY THEN BE PERFORMED USING THE ACTIVITY INFORMATION. NEVER OF THE ACTIVITY PROFILE GENERATOR (APG). APG MAY ALWAYS BE ABORTED USING THE BR DIRECTIVE, E.G., *BR,APG. APGI AND APGL MAY BE OF'D. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS CONTRIBUTED PROGRAM PACKAGE CONTAINS SEVERAL PROGRAMS WHICH CAN BE USED TO GENERATE ACTIVITY PROFILES. APGI - FTN4 INITIALIZATION PROGRAM APG2 - ASMB PROFILE GENERATION PROGRAM - RTE 2 ONLY APG34 - ASMB PROFILE GENERATION PROGRAM - RTE 3 OR 4 APGM - MICROPROGRAM FOR USE ON 21MX M-SERIES ONLY APGME - MICROPROGRAM FOR USE ON 21MX E-SERIES ONLY APGL - FTN4 COMPLETION PROGRAM TRIG - FTN4 TEST PROGRAM SINES - FTN4 TEST PROGRAM **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E09501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: OVER **PROGRAM TITLE: OVER **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: DRIVER ABSOLUTE MEMORY **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 2116 **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: THE PROGRAM REQUIRES 5K OF MEMORY. **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE RTE-II/III USER TO INPUT ABSOLUTE RECORDS FROM ANY DEVICE INTO CORRESPONDING MEMORY. THE PROGRAM IS COMPLETELY CONVERSATIONAL AND IS PRIMARILY DESIGNED FOR ON-LINE DRIVER DEVELOPMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RU,OVER(,LUTTY(,LUINP(,LULST))) WHERE: LUTTY - CONSOLE LUN FOR NORMAL AND ERROR I/O LUINP - INPUT LUN FOR ABSOLUTE RECORD(S) LULST - LIST LUN FOR ECHO PRINTOUT(S) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E09601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LOG **PROGRAM TITLE: RTE VIRTUAL TIMER SUBSYSTEM **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: TIME PERFORMANCE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: RTE-I RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE RTE VIRTUAL TIMER SUBSYSTEM IMPLEMENTS A VIRTUAL TIMING SCHEME FOR RTE SYSTEMS. A VIRTUAL TIMER IS AN ELAPSED TIMER THAT MEASURES CPU TIME USED BY A PARTICULAR PROGRAM, INDEPENDENT OF THE CPU TIME USED BY OTHER PROGRAMS IN A MULTIPROGRAMMING ENVIRONMENT, IT ATTEMPTS TO TIME THE CPU USAGE OF A PROGRAM AS IT WOULD BE IN A SINGLE-USER NON-MULTIPROGRAMMED SYSTEM. THE SUBSYSTEM CONSISTS OF A DRIVER THAT MAINTAINS TIMERS FOR UP TO 20 PROGRAMS, AND AN OPERATOR INTERFACE USED TO MONITOR THE OPERATION AND STATUS OF THE SUBSYSTEM. ANY USER PROGRAM CAN MAKE CALLS TO THE DRIVER TO DETERMINE THE AMOUNT OF CPU TIME USED BY THE CALLER. IN ADDITION, INFORMATION ON SYSTEM IDLE TIME IS KEPT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: LOAD THE THREE PROGRAMS INTO SOURCE FILES USING THE FMGR. ASSEMBLE THE DRIVER WITH "Z" FOR RTE-III OR "N" FOR RTE-I/II. THE DRIVER MUST BE LOADED AT GENERATION TIME, SO YOU WILL HAVE TO RE-GENERATE YOUR SYSTEM. SEE THE COMMENTS IN THE DRIVER PROGRAM FOR GENERATION PARTICULARS. COMPILE THE LOG PROGRAM AND ASSEMBLE THE SUPPORT SUBROUTINES AND LOAD THE PAIR ON-LINE WITH THE LOADR (BACKGROUND). **RUN INSTRUCTIONS: COMPLETE INFORMATION IN OPERATING THE DRIVER (I.E. LEGAL CALLS) AND THE USER INTERFACE CAN BE FOUND IN THE ASSOCIATED SOURCE LISTINGS. BASICALLY, PROGRAM COMMUNICATION WITH THE VIRTUAL TIMING SUBSYSTEM IS BY MEANS OF EXEC CALLS DIRECTED TO THE LU ASSOCIATED WITH THE VIRTUAL DRIVER. ALL POSSIBLE CALLS ARE COVERED THOROUGHLY IN THE DRIVER LISTING. NOTE THAT THE VIRTUAL TIMING SUBSYSTEM MUST BE ENABLED BEFORE USING. IT IS RECOMMENDED THAT YOU PLACE A ":RU,LOG,FI,LE" IN YOUR "WELCOM" FILE. "FILE" SHOULD CONTAIN COMMANDS TO ENABLE TIMING AND OPTIONALLY SET ANY TIMERS YOU MIGHT WANT. I SET UP TIMERS FOR FMGR, EDITR, AND OTHER "SYSTEM" TYPE PROGRAMS SO I CAN SEE WHERE MY CPU TIME IS GOING. **INPUT/OUTPUT EXAMPLES: AS A TEST, SET UP A VIRTUAL TIMER FOR ANY PROGRAM WITH THE "LOG" USER INTERFACE. THEN RUN THE PROGRAM. RUN "LOG" AGAIN AND DISPLAY THE CPU TIME USED BY THAT PROGRAM TO VERIFY THAT THE VIRTUAL DRIVER ACTUALLY RECORDED THE PROGRAM'S TIME PROPERLY. REMEMBER THAT YOU MUST ENABLE THE VIRTUAL TIMING SUBSYSTEM BEFORE YOU CAN SET THE TIMER FOR THE PROGRAM (SEE THE LISTING OF "LOG" TO SEE HOW TO ENABLE THE SUBSYSTEM). INSTRUMENTING PROGRAMS FOR TIMING TAKES THE FOLLOWING FORM: . . . CALL EXEC(1,VLU,NAME,5) . . <PART TO BE TIMED> . . CALL EXEC(1,VLU,NAME2,5) WHERE VLU IS THE LU ASSOCIATED WITH THE VIRTUAL DIVER, NAME AND NAME2 ARE TWO 5 WORD BUFFERS SPECIFYING THE PROGRAM NAME AND A PLACE TO PUT THE CONTENTS OF THE PROGRAM'S TIMER. THE TWO TIMES WOULD THEN BE SUBTRACTED TO GET THE AMOUNT OF CPU TIME TAKEN BY THE INSTRUMENTED SECTION. YOU MIGHT FIND SOME OF THE SUBROUTINES USED BY "LOG" TO BE USEFUL ("VSUBS" ARE THE SUBROUTINES USED BY LOG), ESPECIALLY "FMTIM" (FORMAT A TIMER INTO ASCII), "LADD", AND "LFLT" (USED TO ADD AND FLOAT THE DOUBLE INTEGER FORMS BY THE VIRTUAL DRIVER). SINCE COMMUNICATION IS THRU EXEC (WITH CORRESPONDING OVERHEAD) AND SINCE TBG TICKS ARE ONLY GOOD TO 10MS. RESOLUTION, I WOULDN'T TRY TO TIME SINGLE INSTRUCTIONS OR EVEN SMALL LOOPS, UNLESS YOU'RE PREPARED TO HAVE YOUR INTERRUPT SYSTEM OFF MOST OF THE TIME! THE INTENTION BEHIND THE VIRTUAL TIMING SUBSYSTEM WAS TO BE ABLE TO EVALUATE PROGRAM CHANGES FOR EFFECIENCY (IN OTHER WORDS, TO TIME THE CPU TIME USED BY THE ENTIRE PROGRAM, START TO FINISH, AND RUN WITH A SPECIFIC SET OF DATA). RTE DOES NOT REALLY HAVE THE RESOLUTION TO DO CLOSED LOOP TIMING. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE TWO ASSEMBLY LANGUAGE PROGRAMS USE MUCH OF THE 21MX EXTENDED INSTRUCTION SET. TO USE THESE ON NON-21MX MACHINES, THE OPTIONAL CONTRIBUTED LIBRARY PROGRAM LISTED IN THE "CONTRIBUTED SOFTWARE REQUIREMENTS" SECTION MUST BE USED. THE 21MX INSTRUCTIONS MUST BE REPLACED WITH CALLS TO THE SIMULATION SUBROUTINES. I HAVE NOT CHECKED COMPATABILITY WITH THESE SUBROUTINES, SOOO... I WILL NOT BE RESPONSIBLE IF YOUR SYSTEM BLOWS UP WITH THEM. I WOULD NOT RECOMMEND PERFORMING SURGERY UNLESS YOU ARE PROFICIENT WITH ASSEMBLER. THIS DRIVER CAN BE USED WITH RTE-IV, BUT DVT77 MUST BE RELOCATED IN THE SDA. E09701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FRW **PROGRAM TITLE: READ/WRITE DOS-M FILES IN RTE ENVIRONMENT **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 360 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE, OPERATING IN A RTE ENVIRONMENT, ENABLES THE USER TO READ AND WRITE ON DOS-M FILES. THE FILES MUST HAVE BEEN PREVIOUSLY CREATED BY A DOS-M SYSTEM. THE ROUTINE CHECKS THE DOS-M DIRECTORY TO DETERMINE THE ORIGIN AND THE LENGTH OF THE FILE, AND THEN READS OR WRITES DATA ON THE FILE. TRACK SWITCHING IS AUTOMATICALLY DONE AND TESTS ARE MADE TO BE SURE THE USER STAYS WITHIN THE FILE. THE DISC CONTAINING THE DOS-M FILE MUST BE DECLARED AS PERIPHERAL DISC IN THE RTE SYSTEM. THIS ROUTINE IS PARTICULARLY USEFUL WHEN DATA ACQUISITION IS DONE IN A RTE SYSTEM, AND LATER THE DATA MUST BE USED IN A DOS-M SYSTEM BECAUSE MORE CORE IS REQUIRED TO PROCESS IT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE THE SUBROUTINE. USE AS AN UTILITY (TYPE 7) ROUTINE IN RTE. THE DISC WHICH CONTAINS THE FILE MUST BE DECLARED AS A PERIPHERAL DISC TO THE RTE SYSTEM. **RUN INSTRUCTIONS: THE ENTRY POINT IS: FRW CALLING SEQUENCE: FORTRAN: CALL FRW(IRC, IFUN, IDAT, INUM, IFIL, ISEC) ASSEMBLER: EXT FRW JSB FRW DEF *+7 DEF IRC DEF IFUN DEF IDAT DEF INUM DEF IFIL DEF ISEC WHERE: IRC = REQUEST CODE (SAME AS RTE: 1 = READ 2 = WRITE) IFUN = FUNCTION AND LU (SAME AS RTE I/O FUNCTION) IDAT = NAME OF DATA BUFFER INUM = POSITIVE NUMBER OF WORDS TO WRITE IFIL = 3 WORD ARRAY WHICH CONTAINS THE DOS-M FILE NAME ISEC = RELATIVE STARTING SECTOR (ATTENTION: 128 WORD DOS-M SECTORS MUST BE USED!!) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE ROUTINE DOES SEVERAL TESTS. IN CASE OF ERROR, A MESSAGE IS PRINTED, AND THE PROGRAM IS TERMINATED. FORMAT OF THE ERROR MESSAGES: NAME : FM XX WHERE: NAME = NAME OF THE PROGRAM FM = IDENTIFIER FOR THIS ROUTINE XX = ERROR NUMBER : 0 1 : THE DISC IS NOT A DOS-M DISC 0 2 : FILE DOES NOT EXIST 0 3 : FILE IS NOT A DATA FILE 0 4 : RELATIVE STARTING SECTOR IS NEGATIVE 0 5 : NUMBER OF WORDS IS <= 0 0 6 : OUTSIDE FILE LIMITS **MISCELLANEOUS: THE ROUTINE ALWAYS READS THE DOS-M DIRECTORY BEFORE DOING THE ACTUAL I/O. THIS CAN CAUSE SEVERAL DISC ACCESSES FOR EACH I/O, AND THUS LIMITING THE SPEED OF THE SYSTEM. WHEN THIS COULD BE A PROBLEM, THEN YOU CAN DIVIDE THE ROUTINE IN 2 PARTS (DIVIDE AT LINE 160). THE FIRST PART WHICH DOES THE LOOK-UP IN THE DIRECTORY, AND RETURNS THE DISC ADDRESS AND FILE LENGTH; THE SECOND PART WHICH DOES THE ACTUAL I/O WITH TRACK SWITCHING. IN THIS CASE YOU WILL ONLY CALL THE FIRST PART ONCE FOR EACH FILE. E09801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TAPE **PROGRAM TITLE: RTE MAGNETIC TAPE FILE MANAGER **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES MAGNETIC TAPE DIRECTORY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE RTE MAGNETIC TAPE FILE MANAGER IS A RELATIVELY SMALL (450 WORDS) DISC RESIDENT PROGRAM WHICH ENABLES THE USE OF MAG TAPE FOR PROGRAM STORAGE AND RECALL, AT THE SOURCE OR BINARY LEVEL, BY PROGRAM NAME. IN ADDITION, NO MODIFICATION IS REQUIRED TO THE RTE SYSTEM, NOR ARE ANY OF THE SYSTEM RESOURCES AFFECTED. PROVISIONS ARE AVAILABLE FOR LOADING A SOURCE, RELOCATABLE, OR EXECUTABLE MODULE FROM TAPE; STORING A SOURCE OR RELOCATABLE MODULE ONTO TAPE; GETTING A DIRECTORY LISTING OF THE CONTENTS OF A TAPE; REWINDING THE TAPE; DUMPING A MODULE TO TAPE IN DOS-M FORMAT; AND INITIALIZING A NEW TAPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: SYSTEM CONFIGURATION CONFIGURE THE RTE SYSTEM TO INCLUDE THE SUPPLIED PHANTOM DEVICE DRIVER D.37. INSTALLING MANAGER 1. EDIT LINES 430 AND 431 OF THE TAPE PROGRAM AS FOLLOWS: /R,430,431 MAGTP EQU --WHERE-- IS L.U. # OF MAG TAPE UNIT CRT EQU --WHERE-- IS L.U. # OF D.37 PHANTOM /E 2. ASSEMBLE THE TAPE PROGRAM ONTO THE LOAD-AND-GO TRACKS. 3. LOAD THE TAPE PROGRAM WITH THE COMMAND ON,LOADR,99,1,2 4. RESPOND TO THE LOADER PROMPT WITH GO,LOADR,1,2 **RUN INSTRUCTIONS: OPERATOR COMMANDS ON,TAPE,9 INITIALIZE A NEW REEL OF TAPE. ON,TAPE,2,X (WHERE X IS 1 OR 2) WRITE A PROGRAM TO TAPE. X=1 WRITES A SOURCE PROGRAM X=2 WRITES A RELOCATABLE PROGRAM NOTE: 1) THE LOGICAL SOURCE FILE MUST HAVE BEEN IDENTIFIED BY AN LS OPERATOR REQUEST. 2) WHEN WRITING A PROGRAM, THE DESIRED PROGRAM NAME WILL BE REQUESTED, AND MUST BE ENTERED. 3) WHEN WRITING A SOURCE PROGRAM, FOLLOWING THE NAME REQUEST, THE FOLLOWING PROMPT WILL BE ISSUED: /EDIT: ENTER EDIT FILE RESPOND WITH: /E WHEN THE SOURCE PROGRAM HAS BEEN WRITTEN, NEW LS TRACKS WILL BE ASSIGNED TO THE SOURCE PROGRAM ON DISC. ON,TAPE, 1, X (WHERE X=1, 2, OR 3) READ A PROGRAM FROM TAPE. X=1 READS A SOURCE PROGRAM X=2 READS A RELOCATABLE PROGRAM X=3 READS AN EXECUTABLE PROGRAM NOTE: 1. WHEN READING A PROGRAM, THE DESIRED PROGRAM NAME WILL BE REQUESTED, AND MUST BE ENTERED. 2. WHEN LOADING A SOURCE PROGRAM, GIVE THE FOLLOWING RESPONSE WHEN THE TAPE STOPS: GO, EDIT, 1 3. WHEN LOADING A RELOCATABLE PROGRAM, THE LOAD-AND-GO TRACKS MUST HAVE BEEN ASSIGNED BY AN LG OPERATOR REQUEST. 4. WHEN LOADING AN EXECUTABLE MODULE, ADDITIONAL PROGRAMS WILL BE REQUESTED BY THE PROMPT: /LOADR: LOAD IF THERE ARE NO ADDITIONAL PROGRAMS TO BE LOADED, RESPOND WITH: GO, LOADR, 3 ON, TAPE, 3, X (WHERE X=L.U. # OF LIST DEVICE) LIST THE CONTENTS OF THE TAPE ON THE LIST DEVICE. A LISTING IS MADE OF ALL THE PROGRAM NAMES PLUS THEIR TYPE (1=SOURCE, 2=RELOCATABLE) ON, TAPE, 4 REWIND THE TAPE. ON, TAPE, 6 DUMP A PROGRAM TO TAPE IN DOS-M FILE FORMAT. NOTE: 1. THE LOGICAL SOURCE FILE MUST HAVE BEEN IDENTIFIED BY AN LS OPERATOR REQUEST. 2. WHEN THE PROGRAM HAS BEEN WRITTEN, NEW LS TRACKS WILL BE ASSIGNED TO THE SOURCE PROGRAM ON DISC. PROGRAM NAMES MAY BE UP TO 12 CHARACTERS LONG. A DIRECT LISTING OF THE TAPE WILL SHOW THAT THE PROGRAM NAME IS INSERTED AS LINE 1 OF THE PROGRAM WHEN THE PROGRAM IS WRITTEN TO TAPE. THE NAME IS DELETED FROM THE INPUT STREAM AS THE PROGRAM IS READ. THE TAPE PROGRAM UTILIZES THE RTE EDITOR, ASSEMBLER, AND LOADER TO PERFORM THE MAJORITY OF OPERATIONS, THE SUPPLIED D.37 PHANTOM DRIVER SERVES TO ABSORB UNDESIRABLE OUTPUT FROM THESE UTILITY PROGRAMS. THE TAPE PROGRAM IS FOREGROUND DISC-RESIDENT, AND EXECUTES FUNCTIONS 3, 4, AND 9 IN THEIR ENTIRETY. FUNCTIONS 1, 2, AND 6 ARE PARTIALLY EXECUTED BY THE ABOVE DESCRIBED UTILITY PROGRAMS IN THE BACKGROUND. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E09901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DIRCT **PROGRAM TITLE: DESCRIPTION DIRECTORY FOR RTE FILE **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC DIRECTORY **LANGUAGES: ASMB FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: MAIN AND 3 SEGMENTS REQUIRE 6030 WORDS BACKGROUND MEMORY **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM IS DESIGNED TO MAINTAIN A DISC FILE CONTAINING THE SYMBOLIC NAMES OF SELECTED RTE FILE MANAGER FILES TOGETHER WITH AS MANY AS 64 CHARACTERS OF DESCRIPTIVE INFORMATION ON EACH FILE. THE ENTIRE FILE MAY BE LISTED ALPHABETICALLY OR SELECTIVELY BY FILE NAME. ENTRIES CAN BE COMPARED TO THE FILE MANAGER DIRECTORY TO OBTAIN A LIST OF FILE MANAGER FILES NOT INCLUDED IN THIS DIRECTORY, AND IN ADDITION, PURGED FILES CAN BE DELETED FROM THIS DIRECTORY. THE PROGRAM CONSISTS OF A MAIN CONTROL PROGRAM AND 3 SEGMENTS REQUIRING A TOTAL OF 6030(DEC) WORDS OF BACKGROUND MEMORY. THIS CONFIGURATION CAN EASILY BE EDITED TO INCLUDE MORE OR LESS ENTRIES DEPENDING UPON THE BACKGROUND MEMORY ALLOCATION. THE HARDWARE REQUIRED FOR THIS PROGRAM IS A STANDARD HP 9600E/F OR EQUIVALENT. THE ADDITION OF AN HP 2600 CRT AND A LINE PRINTER SUBSYSTEM IS BENEFICIAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: BEFORE ATTEMPTING TO RUN PROGRAM DIRCT, A DATA FILE MUST BE CREATED WITH THE SYMBOLIC NAME DIRCT$. THIS FILE CAN BE ANY TYPE AND AT LEAST 71 BLOCKS LONG FOR THE ORIGINAL VERSION OF THIS PROGRAM. THE REQUIRED LENGTH CAN BE CALCULATED FOR ANY SIZE PROGRAM BASED ON THE MAXIMUM NUMBER OF FILE ENTRIES TO BE ALLOWED. SEE SOURCE LISTING FOR THE METHOD USED TO CALCULATE THE REQUIRED LENGTH. **RUN INSTRUCTIONS: THE PROGRAM IS RUN AS FOLLOWS: *ON, DIRCT (,CT(,LIST(,OP(,INPUT) ) ) ) WHERE: CR = CARTRIDGE LOGICAL UNIT NUMBER LIST = LIST DEVICE LOGICAL UNIT INPUT = INPUT DEVICE LOGICAL UNIT OP = OPERATORS CONSOLE LOGICAL UNIT DEFAULT TURN ON PARAMETERS ARE: *ON, DIRCT, 2, 6, 1, 1 USER EXECUTION OPTIONS ARE ENTERED ON THE OPERATORS CONSOLE IN RESPONSE TO THE MESSAGE NEXT THESE INCLUDE: LIST TO LIST THE DESCRIPTION INFORMATION OF A FILE DIRECTORY TO OBTAIN AN ALPHABETIZED LISTING OF ALL THE FILE ENTRIES AND THEIR ASSOCIATED DESCRIPTIVE INFORMATION ENTER TO ENTER A FILE NAME AND DESCRIPTIVE INFORMATION UPDATE TO LIST ALL FILE MANAGER FILE NAMES NOT INCLUDED IN THE DIRECTORY FILE PURGE TO DELETE ALL DIRECTORY ENTRIES NO LONGER IN THE FILE MANAGER DIRECTORY CR TO CHANGE THE CARTRIDGE LOGICAL UNIT NUMBER LU TO CHANGE THE LIST AND INPUT DEVICE LOGICAL UNIT NUMBER ?? TO LIST THE EXECUTION OPTIONS OFF TO RETURN TO THE SYSTEM EXECUTIVE %% TO INITILIZE THE DIRECTORY DATA FILE. THIS OPTION IS NOT LISTED ON THE OPERATORS CONSOLE FOR OBVIOUS REASONS. ONLY THE FIRST TWO CHARACTERS OF ANY EXECUTION OPTION ARE REQUIRED TO INITIATE THAT OPTION. A LISTING OF THE EXECUTION OPTIONS IS GIVEN UPON CALLING DIRCT AND EACH TIME AN IMPROPER DIRECTIVE IS ISSUED. THE PROGRAM IS SELF-INITIALIZING THE FIRST TIME IT IS EXECUTED AFTER BEING INSTALLED ON A USER CARTRIDGE. IT MUST BE INSTALLED ON EACH CARTRIDGE FOR WHICH IT WILL MAINTAIN A DIRECTORY. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IN ORDER TO CHANGE THE MAXIMUM NUMBER OF ENTRIES, IT IS ONLY NECESSARY TO CHANGE THE VALUE OF MXFILS AND THE DIMENSION OF THE VARIABLES NMFIL AND LBLF IN THE COMMON DECLARATION. THESE SHOULD BE DIMENSIONED TO 4 * MXFILS AND 3 * MXFILS RESPECTIVELY. A BACK UP DIRECTORY FILE CAN BE KEPT ON PAPER OR MAG TAPE BY USING THE D1 DIRECTIVE AFTER ASSIGNING THE DESIRED LU. E10001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EDITL **PROGRAM TITLE: RTE RELOCATABLE EDITOR **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: EDITOR RELOCATABLE LIBRARY **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ALGOL PROGRAM PROVIDES A CAPABILITY FOR RELOCATABLE OBJECT LIBRARIES WHICH ARE ANALOGOUS TO THAT PROVIDED BY THE RTE EDITOR FOR SOURCE FILES. THE PROGRAM RUNS IN AN RTE ENVIRONMENT; IT EXPECTS TO FIND THE INPUT LIBRARY AND EDIT FILES ON DISC IN RTE FILE MANAGERS FILES AND IT PRODUCES A RELOCATABLE LIBRARY AS OUTPUT WHICH IS PLACED IN AN RTE FILE MANAGER FILE. IN ADDITION TO MODIFICATION OF AN EXISTING RELOCATABLE LIBRARY, LIBRARY EDITOR PROGRAM ALSO PROVIDES CAPABILITIES FOR CREATING A NEW RELOCATABLE LIBRARY AND FOR LISTING THE CONTENT OF A RELOCATABLE LIBRARY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E10101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TFER **PROGRAM TITLE: FILE TRANSFER BETWEEN RTE AND DOS-M/III **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES COPY DISC **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-I RTE-II RTE-III **MEMORY REQUIREMENTS: AT LEAST 24K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM PROVIDES THE CAPABILITY OF TRANSFERRING FILES BETWEEN RTE AND DOS-M OR DOS-III SYSTEMS. THE PROGRAM WILL RUN UNDER RTE-I, RTE-2 OR RTE-3. A DOS-M OR DOS-III DISC MUST BE PLACED INTO A PERIPHERAL DISC SUBCHANNEL. FILES MAY THEN BE TRANSFERRED FROM RTE TO THE DOS-M/III DISC, OR VICE VERSA. SOURCE, RELOCATABLE, OR BINARY FILES MAY BE TRANSFERRED. IN THE RTE HOST SYSTEM, FILES HANDLED MAY RESIDE IN THE FILE MANAGER, ON LS TRACKS OR ON LG TRACKS. IN THE DOS-M/III SYSTEM ON THE PERIPHERAL DISC SUBCHANNEL, FILES IN THE SYSTEM OR USER AREA MAY BE HANDLED. EQUIPMENT REQUIRED: RTE-1, RTE-2, OR RTE-3 AND ASSOCIATED PERIPHERALS. AT LEAST 24K CORE AND A DISC DRIVE HAVING ONE OR MORE RTE ASSOCIATED SUBCHANNELS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: SEE SOURCE LISTING **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E10201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DOSLI **PROGRAM TITLE: DOS-M/III FILE DIRECTORY LISTING FROM RTE ENVIRONMENT **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC DIRECTORY LIST **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-I RTE-II RTE-III **MEMORY REQUIREMENTS: AT LEAST 24K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PROVIDES THE CAPABILITY OF LISTING THE DIRECTORY OF A DISC PACK FROM WITHIN AN RTE ENVIRONMENT. THE PROGRAM WILL RUN UNDER RTE-1, RTE-2, OR RTE-3. THE DOS-M OR DOS-III DISC WHOSE DIRECTORY LISTING IS DESIRED IS PLACED INTO A PERIPHERAL DISC SUBCHANNEL. THE DOS-M/III DIRECTORY LISTING GENERATED BY THIS PROGRAM IS IDENTICAL WITH THE DIRECTORY LISTINGS GENERATED BY DOS-M OR DOS-III. THE SYSTEM DIRECTORY AND USER DIRECTORY MAY BOTH BE LISTED. HARDWARE REQUIREMENTS: RTE-1, RTE-2 OR RTE-3 AND ASSOCIATED PERIPHERALS. AT LEAST 24K CORE, AND A DISC DRIVE HAVING ONE OR MORE RTE PERIPHERAL SUBCHANNELS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: SEE SOURCE LISTING **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E10301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UNEXT **PROGRAM TITLE: UNEXT **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM SEARCHES EACH MOUNTED DISC FOR FILES WITH EXTENTS, TYPE 3 OR GREATER, AND RESTORES THEM WITHOUT EXTENTS. IT WILL ALSO, OPTIONALLY RECLAIM FROM TYPE 4 FILES ONLY, ANY UNUSED BLOCKS FROM THE FILE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RUN, UNEXT, LU(,RE) WHERE: LU = LU OF LIST DEVICE (CRT OR LINEPRINTER) RE = IF ENTERED WILL, AFTER UNEXTENTING EXTENTED FILES, RECLAIM UNUSED PORTIONS OF TYPE 4 FILES. ENTER PACK COMMAND AFTER UNEXT IS DONE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IUBYT - RETURNS VALUE OF UPPER 8 BITS OF INTEGER CALLING SEQUENCE - FORTRAN IUPER = IUBYT(IWORD) WHERE IUPER = UPPER 8 BITS OF IWORD IN BITS 0-7 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E10401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: STRAK **PROGRAM TITLE: TEMPORARY, EXPANDABLE FIXED LENGTH RECORD DISC FILE **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'STRAK' PROVIDES THE RTE USER WITH A TEMPORARY FILE WHICH IS AUTOMATICALLY EXPANDABLE. THE FILE IS WRITTEN ON THE SYSTEM TRACKS AND OPERATES LIKE A RANDOM ACCESS TYPE 2 FILE MANAGER FILE. IT SUPPORTS FIXED LENGTH RECORDS WITH THE LENGTH SPECIFIED IN A SETUP CALL. THE PROGRAM IS USEFUL FOR TEMPORARY STORAGE OF DATA WHEN THE QUANTITY OF DATA CANNOT BE DETERMINED BEFOREHAND. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: A) INITIALIZE CALL - CALL STOPN(J) WHERE J LESS THAN OR EQUAL TO 0 MEANS RELEASE ALL TRACKS ASSIGNED TO THE PROGRAM J GREATER THAN 0 MEANS DEFINE THE RECORD SIZE TO BE J WORDS AND REWIND THE FILE FOR SEQUENTIAL ACCESS. B) WRITE CALL - CALL STWRT(IER,IBUF,IREC) WHERE IER = ERROR CODE. ALSO RETURNED IN A REG. 0 = O.K.; -4 = NO STOPN CALL YET; -6 = NO DISK SPACE OR RECORD EXCEEDS FILE SIZE IBUF = BUFFER ADDRESS IREC = ABSOLUTE RECORD #. 0 OR NOT GIVEN MEANS USE NEXT SEQUENTIAL RECORD. C) READ CALL - CALL STRED(IER,IBUF,IREC) WHERE PARAMETERS ARE THE SAME AS FOR STWRT SYSTEM TRACKS ARE ALLOCATED AS THEY ARE NEEDED. IF NO TRACKS ARE AVAILABLE, THE PROGRAM WILL SUSPEND. STRAK TREATS THE STORAGE AREA AS A RANDOM ACCESS FILE MUCH LIKE A FMGR TYPE 2 FILE. THERE ARE NO END OF FILE MARKS AND A RECORD MAY BE READ BEFORE IT IS WRITTEN. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF IT IS DESIRED THAT THE PROGRAM NOT SUSPEND ON TRACK ALLOCATION FAILURE, THE EXEC CONTROL WORD CAN BE CHANGED. STRAK ALLOCATES TRACKS LOCALLY SO THAT IF THE PROGRAM ABORTS ABNORMALLY THE SYSTEM WILL RELEASE THE TRACKS. HARDWARE REQUIREMENTS: 7900 DISC DRIVE E10501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LISTF **PROGRAM TITLE: SELECTIVE FMGR DIRECTORY LISTER **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DIRECTORY DISC CARTRIDGE LIST **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'LISTF' PRODUCES A PARTIAL DIRECTORY LIST OF FMGR DIRECTORY(S) BASED ON USER SPECIFIED CRITERIA. ANY COMBINATION OF THE FOLLOWING CRITERIA MAY BE SPECIFIED BY THE USER: 1. FILENAME, OR MORE GENERALLY, THE PRESENCE OF GIVEN CHARACTERS IN ANY OF THE 6 FILENAME CHARACTER POSITIONS. 2. FILETYPE 3. CARTRIDGE REFERENCE NUMBER 4. EXTENT NUMBER. A FILE MUST SATISFY ALL THE CRITERIA GIVEN BY THE USER IN ORDER TO BE INCLUDED IN THE OUTPUT LIST. OMITTED CRITERIA DEFAULT TO 'ALL'. OUTPUT MAY BE DIRECTED TO A FILE (NAMED LISTXX) IN PROCEDURE FILE FORMAT FOR SUBSEQUENT PROCESSING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: LOAD AS BACKGROUND PROGRAM **RUN INSTRUCTIONS: TO RUN TYPE: RU,LISTF,INLU,OUTLU INLU LU OF DIALOG DEVICE; DEFAULTS TO 1 IF OMITTED. OUTLU LU OF OUTPUT DEVICE; DEFAULTS TO INLU VALUE IF OMITTED. IF OUTLU=2 THEN OUTPUT GOES TO A NEW FILE LISTXX IN THE FOLLOWING PROCEDURE FILE FORMAT: :--,FILENM::CR:FILETYPE,FILENM::::SIZE (A PREVIOUSLY-EXISTING LISTXX IS PURGED, THEN A NEW LISTXX IS CREATED FOR THE OUTPUT.) LISTF PROMPTS USER FOR FILENAME, FILETYPE, CR, AND EXTENTS THAT SPECIFY FILES TO BE LISTED. THE FORM OF THE USER RESPONSE IS: FILENM,TYPE,CR,EXT FILENM NAME(S) OF FILES TO BE LISTED. THIS FIELD IS TREATED AS A 6 CHARACTER FILTER; IF FEWER THAN 6 CHARACTERS ARE SPECIFIED THEN TRAILING BLANKS ARE USED TO EXTEND THE FILTER TO 6 CHARACTERS. EACH CHARACTER IN THE FILTER IS USED TO MATCH THE CORRESPONDING CHARACTER IN THE FILENAME OF THE FILE. ONLY IF ALL THE CHARACTER POSITIONS MATCH IS THE FILE A CANDIDATE FOR BEING LISTED. A MINUS SIGN MAY APPEAR IN ANY POSITION TO INDICATE THAT ANY CHARACTER IN THAT POSITION IS ACCEPTABLE. IF THIS FIELD IS OMITTED, THEN IT IS TREATED AS IF THE USER ENTERED 6 MINUS SUGNS, I.E., ALL FILE NAMES ARE ACCEPTABLE. TYPE THE FILETYPE OF THE FILES TO BE LISTED; IF OMITTED, FILETYPE IS IGNORED IN SELECTING FILES TO BE LISTED. CR THE CR OF THE FILES TO BE LISTED; IF OMITTED, CR IS IGNORED IN SELECTING FILES TO BE LISTED. EXT USE OF THIS PARAMETER RESTRICTS OUTPUT TO ONLY THOSE DIRECTORY ENTRIES WHOSE EXTENT NUMBER MATCHES THE VALUE OF THIS PARAMETER. IF OMITTED, THERE ARE NO OUTPUT RESTRICTIONS BASED ON EXTENT NUMBER, I.E., EACH FILE AND EACH EXTENT IS A CANDIDATE FOR BEING LISTED. HOWEVER, IN THE CASE OF FILE OUTPUT (LISTXX), THE OMISSION OF THIS PARAMETER DEFAULTS TO ZERO, I.E., ONLY THE MAIN FILE ENTRIES AND NOT THE EXTENTS ARE LISTED. AFTER THE OUTPUT IS PRODUCED, A COUNT OF THE NUMBER OF THE ENTRIES IS PRINTED ON THE DIALOG DEVICE; THEN THE PROGRAM PROMPTS FOR MORE REQUESTS FROM THE USER. THE USER MAY EXIT LISTF BY ENTERING CONTROL D. EXAMPLES OF SPECIFICATIONS: -,,2 ALL ONE-CHARACTER FILENAMES ON CR 2. X-----,4,22 ALL FILENAMES BEGINNING WITH THE LETTER X, WHOSE FILETYPE IS 4, AND WHICH APPEAR ON CR 22. ,,2,1 ONLY THE FIRST EXTENTS FOR FILES ON CR 2. (THIS ESSENTIALLY PROVIDES A LIST OF FILES HAVING ONE OR MORE EXTENTS.) , ,, ,,, ANY OF THESE WILL SUPPLY ALL THE FILES ON ALL THE CR. -TESTS ALL FILES WHOSE SECOND THROUGH SIXTH LETTERS ARE TESTS. &----- ALL FILES WHOSE NAMES BEGIN WITH & (AMPERSAND). **INPUT/OUTPUT EXAMPLES: THE ONLY TESTS ARE MANUAL COMPARISONS OF THE OUTPUT PRODUCED BY THE FMGR "DL" COMMAND AGAINST THE OUTPUT PRODUCED BY THIS PROGRAM. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: STANDARD LIBRARY SUBROUTINES: IGET,CODE,IAND,EXEC,RMPAR FMP CALLS:PURGE,CREAT,WRITF,LOCF,CLOSE E10601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: NAMRX **PROGRAM TITLE: NAMRX **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'NAMRX' IS AN RTE-II OR RTE-III SUBROUTINE THAT INTERFACES TO SYSTEM SUBROUTINE $PARS TO BREAK OUT THE INDIVIDUAL FIELDS OF A STANDARD RTE FILE NAME. THE PASSED BUFFER INITIALLY CONTAINS NAME:SC:CRN AND NAMR RETURNS THE NAME AS AN ASCII STRING AND THE SECURITY CODE AND CARTRIDGE NUMBER AS BINARY INTEGERS. 'NAMRX' CAN BE PASSED A BUFFER OR IT WILL INPUT THE BUFFER FROM A SPECIFIED LOGICAL UNIT, USING SYSTEM SUBROUTINE REIO. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL NAMRX(IBUF,NAM,ISC,ICRN,ITYPE,ILEN) WHERE IBUF = INPUT LU OR USER BUFFER CONTAINING THE STRING TO CONVERT WITH FIELDS SEPERATED BY COLONS AND STRING ENDING WITH A BLANK. NAM = 3 WORD BUFFER FOR RETURN OF THE ASCII PART OF THE FILE NAME, PADDED WITH BLANKS IF NEEDED, OR A LOGICAL UNIT #. ISC = INTEGER VARIABLE FOR RETURN OF SECURITY CODE. SET TO 0 IF NOT GIVEN. ICRN = INTEGER VARIABLE FOR RETURN OF CARTRIDGE NUMBER. SET TO 0 IF NOT GIVEN. ITYPE = INTEGER VARIABLE FOR RETURN OF FILE TYPE. SET TO 0 IF NOT GIVEN. ILEN = INTEGER VARIABLE FOR RETURN OF RECORD LENGTH. SET TO 0 IF NOT GIVEN. ON RETURN, THE A REGISTER IS SET TO 2 IF A FILE NAME WAS PROCESSED OR IT EQUALS 1 IF A LOGICAL UNIT WAS PROCESSED. IT IS NOT NECESSARY TO SPECIFY ALL VARIABLES. THE LIST CAN BE TERMINATED AT ANY POINT AFTER NAM. ONLY THE REQUESTED INFO WILL BE RETURNED. **INPUT/OUTPUT EXAMPLES: PROGRAM TEST CALLS NAMRX TWICE. THE FIRST TIME, IT INPUTS A BUFFER AND PASSES IT TO NAMRX. THE SECOND TIME, IT ALLOWS NAMRX TO DO THE INPUT. AFTER EACH CALL, THE RETURNED DATA AND THE CONTENTS OF THE A REGISTER ARE PRINTED. NOTE THAT IN THE LAST EXAMPLE, THE 7 CHARACTER FILE NAME IS TRUNCATED TO 6 CHARACTERS. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE FIRST BLANK ENCOUNTERED TERMINATES THE STRING WHEN IT IS PASSED TO NAMRX, SO MAKE SURE THAT THERE ARE NO IMBEDDED BLANKS. E10701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SDLS4 **PROGRAM TITLE: ROUTINES TO READ INFORMATION FROM CUPERTINO DISTRIBUTION TAPES **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: MAGNETIC TAPE COPY **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: "SDLS4" IS A ROUTINE WHICH WILL READ INFORMATION FROM CUPERTINO DISTRIBUTION TAPES (SDLS OR MTLS FORMAT) DIRECTLY INTO RTE FMP FILES. IT WILL ACCEPT ABSOLUTE, RELOCATABLE, OR SOURCE PROGRAMS, BUT A NOT YET IMPLEMENTED CHANGE IS REQUIRED TO READ "DATA" FILES FROM THE MTLS TAPES. THE ROUTINE OTHERWISE ACCEPTS ALL TAPE FORMATS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION **MISCELLANEOUS: E10801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DFIL **PROGRAM TITLE: ALPHABETIC FMGR DIRECTORY LISTER **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC DIRECTORY LIST **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM LISTS THE FILE DIRECTORIES FOR ONE OR MORE DISC CARTRIDGES. THE LIST IS ORDERED ALPHABETICALLY BY FILE NAME. THE FORMAT OF THE LIST IS THE SAME AS THAT OF THE "LONG LIST" PRODUCED BY THE FMGR :DL COMMAND. THE PROGRAM IS SET UP FOR THE RTE II OPERATING SYSTEM WITH HP 7900 DISC DRIVE(S). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: TO EXECUTE DFIL, ENTER THE FOLLOWING COMMAND: RU, DFIL, ITTY, LIST WHERE: ITTY : LOGICAL UNIT NUMBER OF THE TERMINAL FROM WHICH THE PROGRAM IS RUN. LIST : LOGICAL UNIT NUMBER OF THE DEVICE ON WHICH THE DIRECTORY LISTS ARE TO BE PRINTED. SUBSEQUENT COMMANDS ARE ENTERED THROUGH THE SAME TERMINAL AS RESPONSES TO QUESTIONS ASKED BY DFIL ** DFIL DIALOGUE ** **DFIL REQUEST** **USER RESPONSE** DISC LUN (ENTER LOGICAL UNIT NUMBER OF THE DISC 0 TO QUIT)? FOR WHICH A DIRECTORY IS DESIRED. ENTER 0 TO TERMINATE DFIL CANNOT LOCK THE DISC THIS MESSAGE DOES NOT NORMALLY OCCUR. CONTINUE (YES OR NO)? IT INDICATES THAT DFIL CAN'T LOCK THE DISC INVOLVED IN THE DIRECTORY LIST OPERATION. (A) A RESPONSE OF "YES" CAUSES DFIL TO CONTINUE. WARNING - THE USER SHOULD ENSURE THAT NO ONE IS ALTERING THE DISC DIRECTORY. (B) A RESPONSE OF "NO" CAUSES DFIL TO REQUEST A NEW DISC LOGICAL UNIT NUMBER. DFIL KEEPS ASKING FOR DISC UNIT NUMBERS UNTIL THE USER ENTERS 0. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: MESSAGE SIGNIFICANCE/RECOVERY ACTION ANSWER YES OR NO - SELF EVIDENT TRY AGAIN. CARTRIDGE NOT TERMINATE DFIL, MOUNT THE CARTRIDGE MOUNTED. USING FMGR :MC COMMAND, AND RERUN. THAT IS NOT A DISC ENTER VALID DISC LU . NOTE THAT THE PROGRAM IS SET UP TO HANDLE ONLY 7900 CARTRIDGES. STOP 1 MORE THAN 1000 FILES ON A DISC CARTRIDGE. THIS PROBLEM CAN BE OVERCOME BY ALTERING THE PROGRAM TO HANDLE MORE FILES. **MISCELLANEOUS: E10901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ROBIN **PROGRAM TITLE: OBJECT MODULE LISTER **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES LIST **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III RTE-IV RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM INPUTS A TYPE 5 BINARY RELOCATABLE FILE NAME (NAMR) AND PRODUCES A CONSOLIDATED LISTING OF ITS CHARACTERISTICS. THE LISTING INCLUDES PROGRAM NAME, TYPE, EXTENDED NAM RECORD, LOCAL LENGTH, COMMON LENGTH, BASE PAGE LENGTH, PRODUCER, ALL ENTRY POINTS, ALL EXTERNALS, EMA RECORD, AND TRANSFER ADDRESS IF MAIN. THE PROGRAM CAN BE RUN IN BATCH OR CONVERSATIONAL MODE AND HAS EXTENSIVE ERROR CHECKING, INCLUDING BREAK CAPABILITY. THE LISTING FORMAT IS SUITABLE FOR EASY TO READ DOCUMENTATION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: IF YOU ARE LOADING THIS IN RTE 2/3/M, THEN IGNORE THE UNDEFINED EXTERNAL LOGLU **RUN INSTRUCTIONS: :RU,ROBIN [,TERMINAL LU[,LIST LU]] **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: / ROBIN: FILE OPEN ERROR N / ROBIN: FILE CLOSE ERROR N / ROBIN: FILE READ ERROR N / ROBIN: INVALID INPUT / ROBIN: WRONG FILE TYPE **MISCELLANEOUS: E11001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FDUMP **PROGRAM TITLE: FMP FILE DUMP **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DUMP LIST FORMATTING **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 9K CORE STORAGE **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: FDUMP IS A PROGRAM THAT WILL DUMP FILE MANAGER FILES LESS THAN TYPE 11 TO YOUR LIST DEVICE IN A FORMAT MUCH LIKE THAT USED IN THE IBM DITTO UTILITY. THE RECORD IS LISTED IN 128 CHARACTER BLOCKS, GIVING OCTAL REPRESENTATION AND COLUMN ALIGNMENT NUMBERS BELOW THE ASCII VALUES. INPUT IS FROM FILE OR LOGICAL UNIT. BY SPECIFYING THE STARTING RECORD NUMBER YOU CAN POSITION THE FILE TO A PREDETERMINED RECORD. FDUMP WILL RESPOND TO THE BREAK FLAG AT ANY TIME. FDUMP USES APPROXIMATELY 9K CORE STORAGE HOWEVER THE PROGRAM IS SET UP FOR MAXIMUM RECORD LENGTH OF 1024 WORDS. IF THIS IS LARGER THAN THE MAXIMUM LENGTH FOR YOUR INSTALLATION THE DCB AND BUFFER AREA COULD BE REDUCED. THE MAXIMUM CHARACTER OUTPUT IS 1024. FDUMP MAKES FMP CALLS. FDUMP IS VERY USEFUL FOR VISUAL VERIFICATION AND ALIGNMENT CHECKING OF DATA FORMATS. INTEGER VALUES ARE NOT PRINTED, HOWEVER, THEIR OCTAL VALUES ARE LISTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: FDUMP SOURCE **LOAD INSTRUCTIONS: STANDARD PROCEDURE **RUN INSTRUCTIONS: SEE SOURCE LISTING **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: FILE MANAGER ERROR MESSAGES ARE DIRECTED TO THE USER'S TERMINAL. **MISCELLANEOUS: WILL NOT TYPE LIST TYPE 11 FILES. E11101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LDISC **PROGRAM TITLE: FMP CORRUPT FILE ANALYZER **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES ANALYZER DEBUG DISC **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IV RTE-III RTE-II **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE USER TO ANALYZE AND VERIFY THE INTEGRITY OF ALL FILES ON A CARTRIDGE, FILES THAT ARE NOT 0, 1, 2, OR 6. THE PROGRAM OPENS EACH FILE AND READS ALL RECORDS AND REPORTS ANY ERRORS TO A LIST DEVICE. A RESULTING STATISTICAL PRINTOUT OCCURS SHOWING SUCH ITEMS AS TOTAL STORAGE, NUMBER OF FILES, AVERAGE RECORD LENGTH, AND OTHERS. THE PROGRAM WILL ALSO WORK FOR FILES CONTAINED ON LU=2 OR 3. LDISC MAKES FMP CALLS TO ACCESS THE FILES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: LDISC SOURCE **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: SEE SOURCE LISTING **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E11201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LISTB **PROGRAM TITLE: FILE MANAGER LIST PROGRAM **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES LIST **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: REQUIRES 8 PAGES BACKGROUND MEMORY **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM LISTB IS A PROGRAM TO LIST AN FMP FILE OF ANY TYPE TO AN OUTPUT DEVICE IN BINARY-MIXED FORMAT, OR ASCII FORMAT. THE PROGRAM IS ESPECIALLY USEFUL FOR LISTING OF FILES WITH RECORD LENGTHS OF GREATER THAN 128 WORDS, AND WILL HANDLE FILES WITH RECORD LENGTHS OF UP TO 1024 WORDS. THE LIST FORMAT IS SIMILAR TO THE FILE MANAGER :LI COMMAND FORMAT, BUT REQUIRES 130 COLUMNS ON A LINE PRINTER. YOU MAY LIST THE ENTIRE FILE, OR ONLY PART OF THE FILE. LISTB REQUIRES 8 PAGES BACKGROUND MEMORY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: TO RUN: *RU,LISTB,P1,P2,P3,P4,P5 WHERE THE OPTIONAL PARAMETERS ARE DEFINED AS FOLLOWS: P1 - TERMINAL LU (DEFAULT=VALUE RETURNED BY MTM) P2 - LIST LU (DEFAULT=LU6) P3 - FIRST RECORD TO BE LISTED (DEFAULT=1) P4 - NUMBER OF RECORDS TO BE LISTED (DEFAULT=ALL) P5 - LIST FORMAT, ASCII "A" FOR ASCII LIST (DEFAULT BINARY) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: FMP ERROR MESSAGES AND END OF PROGRAM MESSAGES SENT TO TERMINAL. **MISCELLANEOUS: E11301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DIRC **PROGRAM TITLE: INTERACTIVE EDIT OF FMP ASSIGNED DISC SPACE **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: DISC EDITOR FILES DIRECTORY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE DIRC PROGRAM IS AN HP-1000 INTERACTIVE RTE FORTRAN IV PROGRAM THAT IS USED TO EDIT FMP ASSIGNED DISC SPACE FOR 7900 AND 7905 DISC SUB- SYSTEMS. THE PROGRAM PERMITS DISC FILE EDITING BY SECTOR ADDRESSES. DISC FILE ENTRIES IN THE DIRECTORY CAN BE EDITED WITHIN SPECIFIED RESTRICTIONS SUCH AS NOT PERMITTING FILE ADDRESS MODIFICATIONS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DIRC SOURCE FILE# 3: XAMFL SOURCE FILE# 4: UNPUR SOURCE **LOAD INSTRUCTIONS: RU,FTN4,&DIRC,1,%DIRC RU,FTN4,&XAMFL,1,%XAMFL RU,FTN4,&UNPUR,1,%UNPUR LG,1 MR,%DIRC MR,%XAMFL MR,%UNPUR RU,LOADR,99,1 **RUN INSTRUCTIONS: RU,DIRC,USER CONSOLE LU#, LIST DEVICE LU# **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: "*** CAN NOT FIND CR# ***" DISPLAYED AT USER'S CONSOLE AND PROGRAM ABORTED WHEN USER INPUTS CR# DOES NOT EXIST IN THE CARTRIDGE DIRECTORY. **MISCELLANEOUS: E11401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PURGE **PROGRAM TITLE: FMGR FILE PURGE UTILITY **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FILES DISC **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IV RTE-III RTE-II **MEMORY REQUIREMENTS: 5 PAGES **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM "PURGE" IS AN RTE UTILITY PROGRAM WHICH ALLOWS THE USER TO QUICKLY PURGE A GROUP OF FILES WITH SIMILAR NAMES. IF THE USER WISHES TO PURGE %FILE1, &FILE1, #FILE1, HE ENTERS "-FILE1" AS THE QUALIFIER. IF HE WISHES TO PURGE ALL FILES BEGINNING WITH THE CHARACTERS XYZ, HE CAN ENTER "XYZ---". IT DOES NOT WORK ON THE SYSTEM LU (2 OR 3). BEFORE IT PURGES A FILE, IT WILL PRINT OUT THE FILE QUALIFIED AND ASK THE OPERATOR IF HE WISHES TO PURGE IT. HE ENTERS YES, NO, OR ABORT. ABORT WILL STOP ALL PURGES FOR THAT QUALIFIER. PROGRAM PURGE WORKS ONLY 1 LU AT A TIME AND THAT LU IS ENTERED BY THE OPERATOR DURING EXECUTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: PURGE AND QPURG SOURCE FILE# 3: LTRAK SOURCE **LOAD INSTRUCTIONS: 1. STORE &PURGE,<RAK ONTO DISK 2. RU, FTN4, &PURGE, TTY, - 3. RU, ASMB, <RAK, TTY, - 4. RU, LOADR REL, %PURGE REQUIRES 5 PAGES REL, %LTRAK REQUIRES 5 PAGES END **RUN INSTRUCTIONS: RU, PURGE, TTY **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF LU=2 OR 3 ENTERED, YOU GET **PURGE ONLY WORKS WITH NON-SYSTEM LU'S** IF ABORT IS ENTERED, A STOP 0001 IS EXECUTED. **MISCELLANEOUS: E11501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DL **PROGRAM TITLE: FMGR DIRECTORY LIST **REVISION? YES **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: DIRECTORY FILES DISC LIST SORT **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: 13 PAGES **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM DL IS AN RTE UTILITY PROGRAM WHICH WILL GIVE AN ALPHABETIZED DIRECTORY LISTING ON THE LINE PRINTER. IT WORKS ON ANY FILE MANAGER DISC LU (INCLUDING 2,3) AND WILL NOT MODIFY THE DISC LU IN ANY WAY. IT GIVES ONLY 1 ENTRY PER DISC FILE (I.E., IT DOESN'T SHOW EACH EXTENT). ALL THE FOLLOWING INFORMATION IS LISTED: 1. FILE NAME 2. FILE TYPE 3. NUMBER OF EXTENTS IN THIS FILE 4. TOTAL NUMBER OF BLOCKS IN FILE 5. SECURITY CODE (ALPHANUMERIC) IN ADDITION, THE FOLLOWING INFORMATION IS LISTED IN THE HEADER: 1. CARTRIDGE LABEL 2. LU# 3. CR# 4. NEXT FMGR TRACK 5. NEXT SECTOR 6. 1ST FMGR TRACK **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: 1. STORE <RAK, &DATE, &DL ON DISC 2. A. RU, FTN4, &DATE, TTY,- B. RU, FTN4, &DL, TTY,- 3. RU, ASMB, <RAK, TTY,- 4. RU, LOADR RE, %DL REQUIRES 13 PAGES RE, %LTRAK REQUIRES 13 PAGES RE, %DATE REQUIRES 13 PAGES END **RUN INSTRUCTIONS: RU,DL ENTER DISK LU# = 13 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DISC LU NOT MOUNTED WARNING - - ONLY THE 1ST 1000 DIRECTORY ENTRIES USED (IF LARGER PARTITIONS ARE AVAILABLE, INCREASE THE DIMENSIONS). **MISCELLANEOUS: E11601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TATLG **PROGRAM TITLE: RTE TRACK ASSIGNMENT TABLE LOG **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: SYSTEM TABLES LIST DISC DIRECTORY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 206 WITHOUT EXTERNAL SUBPROGRAMS **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM IS USEFUL AS A UTILITY ROUTINE IN THE REAL TIME EXECUTIVE SYSTEM. ITS FUNCTION IS TO LIST OUT THE TRACK ASSIGNMENTS OF THE RTE SYSTEM AND AUXILIARY DISCS (LU2 AND LU3) AT TRACK ASSIGNMENT TABLE (TAT). IF A TRACK IS ASSIGNED TO THE SYSTEM, 'SYSTEM' IS PRINTED; IF ALLOCATED AS GLOBAL, 'GLOBAL' IS PRINTED; IF ALLOCATED AS OWN, THE NAME AND TYPE OF THE PROGRAM TO WHICH IT IS ASSIGNED IS PRINTED; AND IF NOT ASSIGNED, 'AVAIL' IS PRINTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: STANDARD PROCEDURE **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. AS WRITTEN, THE PROGRAM WILL OUTPUT TO LOGICAL UNIT 7. 2. TO CHANGE OUTPUT DESTINATION, CHANGE LINE 199 TO REFERENCE A LOGICAL UNIT OTHER THAN 7. 3. IF AN OUTPUT DEVICE OTHER THAN A 2600A IS USED, THE USER MAY WISH TO DELETE LINE 13 WHICH IS A JSB TO A ROUTINE WHICH CLEARS THE CRT. 4. ONLY THE FIRST TRACK IN A CONTIGUOUS BLOCK OF TRACKS HAVING THE SAME ASSIGNMENT IS PRINTED OUT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E11701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LIST **PROGRAM TITLE: LIST THE RTE TABLES **REVISION? YES **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: LIST SYSTEM TABLES **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL LIST THE DEVICE REFERENCE TABLE, THE EQUIPMENT TABLE, AND THE PROGRAM ID TABLE OF A REAL TIME SYSTEM. ONLY A MINIMUM RTE ENVIRONMENT IS REQUIRED. FOR THE DEVICE REFERENCE TABLE THE PROGRAM PRINTS EACH LOGICAL UNIT NUMBER WITH ITS CORRESPONDING EQT AND SUBUNIT NUMBERS. FOR THE EQUIPMENT TABLE THE FOLLOWING IS PRINTED: EQUIPMENT TABLE NUMBER NUMBER, SELECT CODE, DRIVER FOR THE DEVICE, A 'D' IF DMA IS USED, A 'B' IF BUFFERED, LAST SUBUNIT NUMBER, STATUS, AND TIME OUT FOR THE DEVICE. FOR THE PROGRAM ID TABLE THE FOLLOWING IS PRINTED FOR EACH PROGRAM: PROGRAM NAME, PROGRAM TYPE, PRIORITY, STATUS, AND SUBSTATUS (WAIT, SUSPEND, DORMANT, OR ABORT), TIME RESOLUTION CODE, TIME MULTIPLE, NEXT EXECUTION TIME, A 'T' IF PROGRAM IS IN TIME LIST AND A 'P' IF PROGRAM HAS BEEN LOADED DURING GENERATION. IF A PROGRAM IS DISC RESIDENT, MAIN CORE LIMITS, BASE PAGE LIMITS AND A PROGRAM DISC ADDRESS ARE ALSO PRINTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. THE TYPE OF THE PROGRAM IS 3 AND THE PRIORITY IS 99. TO MODIFY THIS, EDIT LINE 3. 2. ASSEMBLE THE PROGRAM, AND LOAD IT DURING SYSTEM GENERATION OR WITH THE LOADER. **RUN INSTRUCTIONS: THE CALLING SEQUENCE IS: ON, LIST, P1, P2, P3 WHERE: P1 = LIST DEVICE LU (PRESET TO 6 IF NOT GIVEN). P2 = PARAMETER WHICH DEFINES WHICH TABLE YOU WANT = 1 : LIST LU TABLE. = 2 : LIST EQT. = 4 : LIST PROGRAM ID TABLE. YOU CAN ALSO ADD 2 OR 3 NUMBER TO OBTAIN 2 OR 3 TABLES SIMULTANEOUSLY. [E.G., : P2 = 7 LISTS THE 3 TABLES (THIS PARAMETER IS PRESET TO 7 IF NOT GIVEN)]. P3 = 0 : LIST ALL ENTRIES IN THE TABLES. = 1 : FOR EQT AND ID TABLE, LIST ONLY THOSE ENTRIES WHICH ARE BUSY (PRESET TO 0). **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: FOR EACH TABLE A TITLE IS PRINTED AND THEN THE CONTENTS OF THE TABLE. LU = EQT [,4] WHERE LU = LOGICAL UNIT NUMBER. EQT [,4] = CORRESPONDING EQT NUMBER AND EVENTUALLY THE SUBUNIT NUMBER. FOR EQT IT PRINTS: EQ SC DVR## D B U# S TO WHERE: EQ = EQUIPMENT TABLE NUMBER SC = SELECT CODE DVR## = DRIVER FOR THIS DEVICE D = 0 IF NO DMA IS USED = D IF DMA IS USED B = 0 IN NON-BUFFERED = B IF BUFFERED U# = LAST USED SUBUNIT NUMBER S = STATUS (SEE RTE MANUAL) TO = TIME OUT FOR THIS DEVICE (IN 1/100 SEC.) FOR THE PROGRAM ID TABLE IT PRINTS: NAME I PR S-S R MTP HR MI SE MS T P PROG LIMITS B.P.LIM. D TRA SEC WHERE: NAME = PROGRAM NAME I = PROGRAM TYPE PR = PRIORITY S-S = STATUS AND SUBSTATUS (SEE RTE MANUAL FOR STATUS) THE SUBSTATUS CAN BE: = 0 : NO SUBSTATUS = W : WAIT BIT SET = S : SUSPEND BIT SET = D : DORMANT BIT SET = A : ABORT BIT SET R = TIME RESOLUTION CODE (SEE RTE MANUAL) MTP = TIME MULTIPLE HR, MI, SE, MS, = NEXT EDUCATION TIME T = T IF PROGRAM IS IN TIME LIST = 0 IF NOT P = P IF PROGRAM HAS BEEN LOADED DURING GENERATION = 0 IF PROGRAM HAS BEEN LOADED ON LINE PROG LIMITS = MAIN CORE LIMITS (*) B.P.LIM = BASE PAGE PROGRAM LIMITS (*) D,TRA,SEC = PROGRAM DISC ADDRESS (*) (*) = ARE ONLY PRINTED FOR DISC RESIDENT PROGRAMS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF THE P3 OPTION IS USED, IT IS AVAILABLE TO MAKE THE PROGRAM HIGH PRIORITY FOREGROUND. E11801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MAPIO **PROGRAM TITLE: PRINT RTE I/O CONFIGURATION **REVISION? YES **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: SYSTEM TABLES LIST DRIVER **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III RTE-II RTE-I **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PRINTS A COMPACT TABLE BY LOGICAL UNIT OF ANY RTE I/II OR III I/O CONFIGURATION. THE MAP INCLUDES THE LU, EQT, SELECT CODE, SUB- CHANNEL AND CHANNEL, EQT ADDRESS, DRIVER ADDRESS, AND DEVICE TYPE. THE OUTPUT CAN BE SENT TO ANY DEVICE AND DEVICE NAMES CAN BE CHANGED BY THE USER. HARDWARE REQUIREMENTS: TERMINAL OR PRINT DEVICE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: RU, LUMPR [,LU] WHERE LU = LIST DEVICE LU (DEFAULT = TERMINAL LU) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IODVC - CONTAINS THE ASCII PRINT IMFORMATION ABOUT EACH DEVICE. IGET - RETRIEVES THE CONTENTS OF A MEMORY LOCATION; CALLABLE AS A FUNCTION SUBROUTINE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E11901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CLASS **PROGRAM TITLE: INTERROGATE CLASS I/O SYSTEM **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: SYSTEM TABLES LIST **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE RTE-II OR RTE-III USER TO COMPLETELY INTERROGATE THE CLASS I/O SYSTEM. IT IS CAPABLE OF DISPLAYING THE ENTIRE CLASS TABLE STATUS, LISTING THE CONTENTS OF THE CLASS TABLE, AND CLEARING OUT PENDING CLASS BUFFERS ON A PARTICULAR CLASS NUMBER. THE UTILITY IS COMPLETELY CONVERSATIONAL WITH ERROR MESSAGES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: STANDARD PROCEDURE **RUN INSTRUCTIONS: RUN WITH OR WITHOUT ANY PARAMETER: P1 DISPLAY FLAG: =O CONVERSATIONAL MODE #O FIRST CLASS # P2 SECOND CLASS # (USED ONLY IF P,#O) P3 DISPLAY LU **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERRORS ARE SELF-EXPLANATORY **MISCELLANEOUS: E12001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TRACK **PROGRAM TITLE: RTE WORK AREA OWNERSHIP **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: DISC SYSTEM TABLES DIRECTORY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM GIVES A COMPLETE BREAKDOWN IN TABULAR FORM OF THE RTE SYSTEM AND AUXILIARY DISCS AS TO OWNERSHIP. THE PROGRAM LISTS SWAP TRACKS FOR PROGRAMS BEING SWAPPED AND THE SYSTEM LIBRARY ENTRY POINT TABLE. THE DISC SHOULD BE A 7900 OR 7905 DISC. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: SEE SOURCE LISTING. CAUTION: DO NOT RUN ON A 72 OUTPUT CHARACTER TERMINAL AS OUTPUT EXCEEDS 72 CHARACTERS. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E12101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EQTXX **PROGRAM TITLE: ACCESS EQT ENTRIES **REVISION? YES **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: SYSTEM TABLES LIST **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: EQTXX IS USED TO ACCESS EQT ENTRIES. SPECIFIED WORDS OF AN EQT ENTRY CAN BE READ OR WRITTEN TO DYNAMICALLY CHANGE ASPECTS OF A DEVICE UNDER PROGRAM CONTROL. EQT ENTRIES CAN BE ACCESSED BY EQT # OR LU #. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: ASSEMBLE NORMALLY. APPEND TO USER PROGRAM AS A SUBROUTINE. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: CALL EQIOR(6,4,40000B) THIS CALL WILL CHANGE LOGICAL UNIT 6 TO A BUFFERED UNIT. ANY OTHER UNIT CONTROLLED BY THE SAME EQT WILL ALSO BECOME BUFFERED. CALL EQSET(-4,15,-1) THIS CALL WILL SET THE TIME OUT CLOCK OF EQT 4 TO -1 SO THAT THE DEVICE WILL TIME OUT ON THE NEXT TBG INTERRUPT. **PROGRAM DESCRIPTION: THERE ARE 5 CALLS: I) CALL EQGET(LUEQ,IWORD,IVALU,IADR) WHERE LUEQ = LOGICAL UNIT (+) OR EQT #, (-) IWORD = RELATIVE WORD OF EQT ENTRY (1-15) IVLAU = CURRENT VALUE OF THE EQT ENTRY WORD. ALSO RETURNED IN THE A REG. IADR = ADDRESS OF THE EQT ENTRY WORD. ALSO RETURNED IN THE B REG. IADR AND B REG RETURNED 0 IF LUEQ IS AN ILLEGAL NUMBER. II) CALL EQAND(LUEQ,IWORD,IMASK) WHERE LUEQ = SAME AS ABOVE. IWORD = SAME AS ABOVE. IMASK = 16 BIT MASK. THE CONTENTS OF THE EQT ENTRY WORD IS LOGICALLY "ANDED" WITH IMASK AND STORED BACK. III) CALL EQIOR(LUEQ,IWORD,IMADK) WHERE SAME AS EQAND EXCEPT THE INCLUSIVE OR IS DONE. IV) CALL EQXOR(LUEQ,IWORD,IMASK) SAME AS EQAND EXCEPT THE EXCLUSIVE OR IS DONE. V) CALL EQSET(LUEQ,IWORD,IMASK) SAME AS EQAND EXCEPT THE EQT ENTRY WORD IS SET TO THE VALUE OF IMASK. FOR CALLS II-V, THE RESULTING VALUE IS RETURNED IN THE A REG AND THE ADDRESS IS RETURNED IN THE B REG. IF AN ILLEGAL LU OR EQT NUMBER IS SPECIFIED, THE B REG IS RETURNED 0. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SINCE SYSTEM MEMORY CAN BE ALTERED, BE CAREFUL !! E12201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DFINE **PROGRAM TITLE: REDEFINE PARTITIONS ON-LINE **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: MEMORY BOOT-UP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE USER TO REDEFINE PARTITIONS IN RTE-III WHILE ON-LINE. CHANGES MAY BE MEMORY ONLY, DISC ONLY, OR MEMORY AND DISC. THE SYSTEM MAY BE ACTIVE WHILE PARTITIONS ARE BEING REDEFINED. THERE ARE MINIMAL CAUTIONS (INPUT ERRORS WHICH CAN NOT BE DETECTED): THESE ARE EXPLAINED IN THE DOCUMENTATION. PAGES WITH PARITY ERRORS MAY BE OMITTED FROM THE REDEFINED PARTITIONS. PARTITION DEFINITION FOLLOWS THE SAME PROCEDURE AS THE GENERATOR ITSELF (EXCEPT THE GENERATOR DOES NOT EXCLUDE PAGES WITH PARITY ERRORS). IT STARTS BY PRINTING THE PAGE REQUIREMENTS OF REAL-TIME AND BACKGROUND PROGRAMS AND ANY PARTITION ASSIGNMENTS. MEMORY SIZE IS REQUESTED: THE RESPONSE MAY BE A MEMORY SIZE LESS THAN OR GREATER THAN SPECIFIED AT GENERATION. THE EASE OF REDEFINING PARTITIONS PERMITS THE USER TO EXPERIMENT TO FIND THE OPTIMUM FOR HIS APPLICATION AND TO MAKE CHANGES TO ACCOMODATE OCCASIONAL UNUSUAL NEEDS. FOR EXAMPLE, A PARTITION EQUAL TO THE MAXIMUM ADDRESSABLE (SAY 14 PAGES) MAY BE NEEDED FOR A PROGRAM THAT IS RUN ONCE A MONTH. THE REST OF THE TIME, A 14 PAGE PARTITION WOULD BE WASTEFUL OF MEMORY. SOME OF THE QUESTIONS A USER MIGHT HAVE ARE: 1. HOW MANY PARTITIONS DO I NEED? 2. HOW MANY SHOULD BE REAL-TIME AND HOW MANY SHOULD BE BACKGROUND? 3. SHOULD SOME OF MY PARTITIONS BE RESERVED FOR SPECIAL PROGRAMS? WHICH PARTITIONS AND WHICH PROGRAMS? DFINE MAKES IT EASY TO EXPERIMENT WITH THESE PARAMETERS AND CHANGE THE PARTITIONS WITHOUT REGENERATION. THIS PLACES LESS OF A BURDEN UPON THE USER TO THOROUGHLY ANALYZE HIS NEEDS PRIOR TO DOING THE GENERATION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DOCUMENTATION AND SOURCES FILE# 3: SOURCES FILE# 4: SOURCES FILE# 5: SOURCES FILE# 6: SOURCES **LOAD INSTRUCTIONS: 1. ASSEMBLE DFINE 2. LOAD NOTE: SWPIT IS A PROGRAM, NOT A SUBROUTINE. **RUN INSTRUCTIONS: SEE DOCUMENTATION IN FILE. **INPUT/OUTPUT EXAMPLES: SEE SOURCE FILE. **PROGRAM DESCRIPTION: SEE SOURCE FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERROR MESSAGES ARE TOTALLY CONVERSATIONAL. **MISCELLANEOUS: E12301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MEMAL **PROGRAM TITLE: MEMORY ALLOCATION DIAGRAM **REVISION? YES **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: MEMORY STATUS SYSTEM TABLES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PRINTS OUT A DIAGRAM OF THE CPU MEMORY ALLOCATIONS IN A CONFIGURED RTE II SYSTEM. THE OCTAL STARTING ADDRESS OF EACH PORTION OF MEMORY (E.G., FOREGROUND COMMON, FOREGROUND DISC RESIDENT, ETC.) IS GIVEN. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: NORMAL LOAD **RUN INSTRUCTIONS: RU,MEMAL,LIST WHERE LIST IS THE LU DEVICE WHERE THE DIAGRAM IS TO BE PRINTED. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE: PAGE A-2, RTE-II SOFTWARE SYSTEM PROGRAMMING AND OPERATING MANUAL. E12401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CNFG **PROGRAM TITLE: CNFG **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: HP-IB STATUS **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS FORTRAN PROGRAM DESCRIBES IN AN EASY TO READ FORMAT, THE CURRENT CONFIGURATION AND STATUS OF HP-IB IN, RTE-M, RTE-II, RTE-III AND RTE-IV WHEN USING DRIVER DVR37 (REV. 1840) WITH SRE PROGRAM SCHEDULING. THE PROGRAM IS ORIENTED TO THREE CONCEPTS: 1. HP-IB EQUIPMENT TABLE INFORMATION. 2. THE HP-IB BUS LOGICAL UNIT (WHEN ON IS ASSIGNED). 3. THE HP-IB DEVICE LOGICAL UNIT (WHEN ONE OR MORE ARE ASSIGNED). "CNFG" PRINTS OUT THE CURRENT HP-IB CONFIGURATION IN AN HP-1000 SYSTEM. RU,CNFG - FOR ALL HP-IB EQT'S AND LUS. RU,CNFG,INPUT,LIST,EQT - FOR A PARTICULAR EQT AND ALL ASSOCIATED LU'S. RU,CNFG,,,,LU - FOR A PARTICULAR LU. RU,CNFG,,,EQT,LU - FOR A MATCHING EQT AND LU. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RUN STATEMENT: :RU,BS,LIST LU#, EQT#,LU# IN A SESSION ENVIRONMENT 'LIST LU#' IS THE SESSION LIST LU. IN A NON-SESSION ENVIR.,'LIST LU#' IS THE SYSTEM LIST LU. - A DASH ('-') INDICATES ALL LU'S. - A NEGATIVE LU# INDICATES A SESSION LU# - NON-ZERO PARAMETER 4 SURPRESSES AUTO CLEANUP EXAMPLES: RU,BS GIVES ALL HP-IB INFORMATION RU,BS,,,11 GIVES INFO FOR HP-IB EQT 11 RU,BS,,,11,-1 GIVES INFO FOR EQT11 AND ALL ASSOC. LUS RU,BS,,,11,19 GIVES INFO FOR EQT11 AND LU19 RU,BS,,,,19 GIVES INFO FOR LU19 RU,BS,,,-18 GIVES INFO FOR SESSION LU18 RU,BS,,11,-18 GIVES INFO FOR EQT11 AND SESSION LU18 RU,BS,,,,1 NON-ZERO PARAMETER 4 SURPRESSES AUTO CLEANUP BESIDES SUPPLYING THE INFORMATION DESCRIBED ABOVE, 'BS' WILL CLEAN UP EQT INCONSISTANCIES CAUSED BY ASSIGNING A LOGICAL UNIT AN EQT AND A DEVICE ADDRESS, MAKING A REQUEST TO THE LOGICAL UNIT, THEN REASSIGNING THE LOGICAL UNIT WITHOUT MAKING A REQUEST TO UNCONFIGURE THE DEVICE. THE OPERATOR AT THE INPUT TERMINAL IS INFORMED OF THE CLEANUP. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: NOTE: *** THE SUBROUTINE 'DTACH' (RTE RELOCATABLE LIBRARY) IS USED BY '&BS' FOR SESSION USERS. NON-SESSION USERS SHOULD REMOVE THE SUBROUTINE CALL FROM THE SOURCE '&BS'. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE SUBROUTINE 'FTIME' IS OPTIONAL (IT'S IN THE RELOCATABLE LIBRARY) AND MAY BE LEFT OUT BY INSERTING A 'C' IN THE LINE CONTAINING THE CALL TO THE SUBROUTINE (IN THE SOURCE LISTING). 'FTIME' SIMPLY INCLUDES THE DATE, AND TIME ON THE OUTPUT LISTING WHEN 'BS' IS OUTPUT OR SPOOLED TO A LINEPRINTER. E12501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CLIST **PROGRAM TITLE: DISC USAGE DISPLAY **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: LIST CARTRIDGE DISC SYSTEM TABLES DIRECTORY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM DISPLAYS THE INFORMATION FOUND IN THE TRACK ASSIGNMENT TABLE AND THE CONTENTS OF THE FILE MANAGER DIRECTORIES OF ALL MOUNTED CARTRIDGES. AS A RESULT OF SUMMING THE TRACK ASSIGNMENT TABLE ENTRIES BY OWNER THE LIST IS GENERALLY SHORT, 10 TO 15 LINES. THE CARTRIDGE LIST SECTION PRODUCES ONE LINE FOR EACH MOUNTED CARTRIDGE CONTAINING ALL THE INFORMATION AVAILABLE BY THE USE OF THE 'CL' AND 'DL' COMMANDS. IN ADDITION, THE AMOUNT OF AVAILABLE DISC SPACE, THE AMOUNT OF DISC SPACE CONTAINED IN PURGE FILES, AND THE NUMBER OF DIRECTORY ENTRIES IN USE ARE DISPLAYED. CLIST WILL EXECUTE ON ANY RTE-II, RTE-III, OR RTE-IV SYSTEM WITH ANY COMBINATION OF 2870, 7900, 7905, 7920, OR 7925 DISC'S. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF CLIST IS TOO LARGE FOR YOUR SYSTEM, THE DIRECTORY BUFFER IS 8K FOR A 7925. IF REDUCING THIS TO 6K IS NOT ENOUGH, THE DIRECTORY SCAN CAN BE DONE 1 BLOCK AT A TIME. E12601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: AUTLU **PROGRAM TITLE: AUTLU - HP-IB LOGICAL UNIT NUMBERS **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: HP-IB SYSTEM TABLES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE CAN OBTAIN THE HP-IB LU FOR A NEW HP-IB INSTRUMENT, GIVEN ONLY THE MODEL NUMBER AND OPTIONALLY THE INSTRUMENT NUMBER (IF MULTIPLE INSTRUMENTS HAVING THE SAME MODEL NUMBER ARE PRESENT). THESE PROGRAMS AND SUBROUTINES ARE FULLY DOCUMENTED IN APPLICATION NOTE 401-1 CHAPTER 6. THIS APPLICATION NOTE SHOULD BE READ FOR COMPLETE DETAILS. THE SERIES OF PROGRAMS GIVEN WORK INSIDE OR OUTSIDE OF THE SESSION ENVIRONMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: *MOV1 FILE# 3: &TDLU FILE# 4: &INPRM FILE# 5: >DLU FILE# 6: &AUTLU FILE# 7: *AUTOP FILE# 8: >SLU **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: FOR COMPLETE DOCUMENTATION, SEE APPLICATION NOTE 401-1 CHAPTER 6 PART NUMBER #5953-2800 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: RTE DISC BASED SYSTEMS REQUIRED E12701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ENTPT **PROGRAM TITLE: LIST RTE II SYSTEM ENTRY POINTS **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: LIST SYSTEM TABLES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM ENTPT PRODUCES AN ALPHABETIC LIST OF ENTRY POINTS FOR AN RTE II SYSTEM. THE LIST INCLUDES THE NAME AND ADDRESS OF EACH ENTRY POINT. SEE HP COMPUTER SYSTEMS COMMUNICATOR, ISSUE NO.9, 1,JULY,1976, PAGE 422. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RU,ENTPT,LISTLU **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: A STOP WILL OCCUR IF THERE ARE MORE THAN 1500 ENTRY POINTS. THIS CAN BE OVERCOME BY ALTERING THE PROGRAM TO HANDLE MORE ENTRY POINTS. **MISCELLANEOUS: LITERATURE REFERENCE HP COMPUTER SYSTEMS COMMUNICATOR, ISSUE NO. 9, 1 JULY 1976, PAGE 422. E12801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DISC **PROGRAM TITLE: DISC TRADE CONFIGURATION PRINTOUT **REVISION? YES **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: DISC SYSTEM TABLES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM LOCATES THE PHYSICAL DISC TRACK MAP TABLE ENTRY POINT ($TB32) ON DISC AND THEN PROCEEDS TO PRINT A COMPACT TABEL OF ALL DEFINED DISC SUBCHANNELS ORDERED BY SUBCHANNEL NUMBER. THE PROGRAM REQUIRES NO INTERACTIVE INPUT BUT CHECKS FOR A CORRUPT SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: STANDARD PROCEDURE **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE LISTING **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: /DISC: DISC IS NOT A 7905, 7906, 0R 7920 /DISC: CORRUPT SYSTEM. TRACK=NNN SECTOR=NNN **MISCELLANEOUS: E12901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LTAPE **PROGRAM TITLE: HP 1000 MAG TAPE DUMP ANALYZER **REVISION? NO **PACKAGE: 5 **CATEGORY: 6 **KEYWORDS: FORMATTING MAGNETIC TAPE ANALYZER **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS A 9 TRACK OR 7 TRACK MAGNETIC TAPE OF ANY DENSITY TO BE ANALYZED FOR SUCH ITEMS AS RECORD LENGTH, PARITY ERRORS, NUMBER OF FILES, AND OTHER TAPE CONTROLLER STATUS. THE PROGRAM PERFORMS A COMPLETE HARDWARE AND SOFTWARE CHECK AND PRINTS RESULTING TAPE STATISTICS AS TO TOTAL NUMBER OF RECORDS AND AVERAGE RECORD LENGTH. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: <APE - SOURCE CODE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RU,LTAPE [,MAG-TAPE-LU [,LIST-LU [,#FILES]]] MAG-TAPE-LU -----> LUN OF THE MAG TAPE TO BE ANALYZED. (DEFAULT=8) LIST-LU ---------> LUN OF THE LIST DEVICE TO RECEIVE THE OUTPUT. (DEFAULT=TERMINAL) #FILES ----------> MAXIMUM NUMBER OF FILES TO BE PROCESSED. (DEFAULT=1 OR UNTIL EOT IS REACHED) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM ALLOWS A 9-TRACK OR 7-TRACK MAG TAPE OF ANY DENSITY TO BE ANALYZED AS TO HOW MANY RECORDS THERE ARE ON THE TAPE AND WHAT IS EACH RECORD LENGTH. THE PROGRAM WILL ANALYZE ANY NUMBER OF FILES OF RECORDS WHERE THE MAXIMUM RECORD LENGTH IN ANY GIVEN FILE IS 12288 WORDS. THIS RESULTS IN A REQUIRED PROGRAM SIZE OF 17K WORDS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E13001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GFORM **PROGRAM TITLE: GFORM - FORMATTER AND EDITOR FOR HP 2640B TERMINAL. **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: TERMINAL EDITOR **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROVIDES PROGRAMMING AID FOR INPUTTING AND EDITING FORMS CREATED ON AND FOR A HP 2640B TERMINAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: GFORM FILE# 3: COLON FILE# 4: RDFRM **LOAD INSTRUCTIONS: NORMAL PROCEDURE **RUN INSTRUCTIONS: NORMAL PROCEDURE **INPUT/OUTPUT EXAMPLES: PROGRAM IS TUTORIAL **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: NOTE: RUN FROM 2640B TERMINAL E13101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FRSEQ **PROGRAM TITLE: FORTRAN SOURCE RESEQUENCER **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: FORTRAN EDITOR **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III RTE-IV RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ACCEPTS FORTRAN SOURCE LANGUAGE STATEMENTS AND SEQUENTIALLY RESEQUENCES ALL STATEMENT LABELS AS THEY OCCUR IN COLUMNS 1-5. THE PROGRAM IS INTERACTIVE AND THE RESULTING OUTPUT IS ALSO PRINTED ON THE TERMINAL. THE ONLY SYNTAX CHECK PERFORMED IN THE AREA OF ERRORS IS TO CHECK FOR AN UNDEFINED STATEMENT LABEL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: LOAD WITH STANDARD PROGRAM SIZE WHICH SHOULD BE ENOUGH TABLE SPACE FOR A VERY LARGE FORTRAN PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: RETRY? - RESPOND WITH YE OR NO UNDEFINED STATEMENT NO. - NO RECOVERY BUT FILE IS CLOSED. FRSEQ ABORTED **MISCELLANEOUS: E13201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: TELL AND TELL ALL INTERTERMINAL MESSAGE SENDING **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: MESSAGE MULTITERMINAL TERMINAL TEXT **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III **MEMORY REQUIREMENTS: SYSTK REQUIRES 2 PAGES. SMESS REQUIRES 5 PAGES. **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE IS COMPOSED OF TWO MAIN PROGRAMS. SYSTK ENABLES MESSAGE COMMUNICATION BETWEEN TWO TERMINALS IN A MTM ENVIRONMENT. UP TO 10/80 CHARACTER MESSAGE LINES MAY BE SENT FROM ONE TERMINAL TO ANOTHER. CONTROL MAY BE MAINTAINED AT ONE TERMINAL OR PASSED ALONG WITH / OR WITHOUT A MESSAGE TO THE SECOND TERMINAL. FUNCTIONS ARE DETERMINED THROUGH 4 COMMANDS PRECEEDED BY A PROGRAM PROMPT (?): 1. TEXT - READ THE CURRENT CONTROL TTY'S MESSAGE (?? AT THE START OF A LINE RETURNS TO PROMPT OR 10 LINES, WHICHEVER COMES FIRST). 2. SEND - OUTPUT THE CURRENT MESSAGE BUFFER AND RETAIN CONTROL. 3. GIVE - OUTPUT THE CURRENT MESSAGE BUFFER (IF ANY) AND PASS CONTROL TO NEXT USER. 4. END - TERMINATE SYSTK. SMESS ENABLES SYSTEM CONSOLE (OR INITIATOR) TO OUTPUT A MESSAGE TO ALL TTY'S IN A MTM ENVIRONMENT. UP TO 10/80 CHARACTER MESSAGE LINES MAY BE SENT / TEXT-SEND COMMAND. THE FIRST MESSAGE SENT ALSO INCLUDES THE GREGORIAN DATE AND CURRENT TIME. SMESS FUNCTIONS ARE DETERMINED THROUGH 3 COMMANDS PRECEEDED BY A PROGRAM PROMPT (?): 1. TEXT - READ UP TO 10 LINES OF MESSAGE FROM THE SYSTEM CONSOLE (OR INITIATOR). (10 LINES OR A (??) AT THE START OF A LINE RETURNS PROMPT). 2. SEND - OUTPUT THE MESSAGE TO ALL ONLINE TERMINALS. 3. END - TERMINATE SMESS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES FILE# 5: SOURCES **LOAD INSTRUCTIONS: 1. LOAD SYSTK AS FOREGROUND DISC OR CORE RESIDENT. 2. LOAD SMESS AS FOREGROUND DISC RESIDENT- 5 PAGES REQUIRED -(SIZE MAY BE REDUCED BY REMOVING DATE AND TIME CODE AS IT BRINGS IN THE FORMATTER ETC.) **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: INCLUDED IN SOURCE LISTING FOR SYSTK. **PROGRAM DESCRIPTION: SYSTK - USER MAY WISH TO MODIFY ROUTINE TO LOCK DEVICES OUT FROM OTHER ROUTINES. SMESS - ONLY TYPE 'O' DEVICES ARE QUALIFIED AS OUTPUT. BIT'S 14 AND 15 OF EQT WORD 5 ARE TESTED FOR DEVICE DOWN ONLY. USER MAY WISH TO PUT MORE RESTRICTIONS ON DEVICE AVAILABILITY. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: INVALID COMMANDS PASS CONTROL TO PROMPT CHARACTER. **MISCELLANEOUS: E13301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP-IB PERFORMANCE UTILITY **REVISION? YES **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: HP-IB PERFORMANCE **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II RTE-III RTE-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PERFORMANCE UTILITY IS A SERIES OF PROGRAMS WRITTEN TO CHARACTERIZE THE REAL TIME MINICOMPUTER OR THE HP-IB. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SPEED SOURCE FILE# 3: ETIME SOURCE FILE# 4: MEMAA SOURCE FILE# 5: CMPUT SOURCE FILE# 6: TIMEX SOURCE FILE# 7: COLON SOURCE FILE# 8: FIGUR SOURCE FILE# 9: EXTENDED DOCUMENTATION FILE **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION FILE. **MISCELLANEOUS: E13401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CAMAC **PROGRAM TITLE: CAMAC DRIVER PACKAGE **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER CAMAC **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE-II RTE-III RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE CAMAC DRIVER PACKAGE OPERATES ON A HP 2100 OR HP 21MX COMPUTER UNDER RTE-II, RTE-III, OR RTE-IV. THE PACKAGE CONSISTS OF 1. A CAMAC DRIVER (I/O HANDLER) (DVA54). THIS IS A SYSTEM RESIDENT ROUTINE ALLOWING USER PROGRAM ACCESS TO CAMAC COMPATIBLE EQUIPMENT. 2. A INTERACTIVE DIAGNOSTIC PROGRAM (CAM2). THIS IS AN INTERACTIVE PROGRAM USED FOR TESTING CAMAC EQUIPMENT AND THE DRIVER. 3. AN ARRAY INITIALIZATION SUBROUTINE (FILL). THIS SUBROUTINE WILL INITIALIZE AN ARRAY TO ANY DESIRED VALUE. ALL ENTRIES IN THE ARRAY WILL CONTAIN THE SAME VALUE. THIS SUBROUTINE IS CALLED BY CAM2. 4. THE CAMAC DRIVER PACKAGE RUNS ON THE HP 2100 OR HP 21MX COMPUTER PLUS WITH ONE MORE OF THE FOLLOWING: 1) PHYSICAL DATA 515 DIGITAL RECORDER SYSTEM 2) CAMAC CRATE WITH BORER CRATE CONTROLLER 3) AN LSI-11 WHICH SIMULATES A BORER CRATE CONTROLLER **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: CAMAC2- USED FOR TESTING CAMAC EQUIP. AND DRIVER. FILE# 3: CAMAC3 - SYS. RESIDENT FOR ACCESS TO CAMAC EQUIP. FILE# 4: CAMAC4 - INITIALIZE ARRAY TO DESIRED VALUES. **LOAD INSTRUCTIONS: LOAD AND RUN INSTRUCTIONS. 1. DRIVER (DVA54). THIS DRIVER OPERATES IN TWO MODES: A. NORMAL MODE. THIS IS SELECTED BY SPECIFYING "N" ON THE "ASMB" CONTROL STATEMENT. WHEN OPERATING IN THIS MODE, THE DRIVER IS A STANDARD RTE DRIVER, AND MUST BE INCLUDED IN THE SYSTEM AT GENERATION TIME. IN THE PROGRAM INPUT PHASE OF THE GENERATION ANSWER FILE, THIS IS THE LINE "REL,%DVA54". B. "DEBUG" MODE. THIS IS SELECTED BY SPECIFYING "Z" IN THE "ASMB" CONTROL STATEMENT. WHEN OPERATING IN THIS MODE, THE DRIVER IS LOADED AS A SUBROUTINE WITH THE PROGRAM THAT USES IT. THE "Z" ENABLES THE ASSEMBLY OF FORTRAN CALLABLE SUBROUTINES WHICH WILL ADJUST THE EQUIPMENT TABLE TO POINT TO THE VERSION OF THE DRIVER LOADED WITH THE PROGRAM THAT CALLS IT. W A R N I N G S !!! 1. "DEBUG" MODE IS VALID ONLY FOR RTE-II. DO NOT TRY TO USE IT FOR RTE-III OR RTE-IV. 2. THE CALLING PROGRAM MUST BE LOCKED INTO CORE WHEN USING THE DRIVER IN "DEBUG" MODE. 3. ONLY ONE PROGRAM AT A TIME MAY USE THE DEVICE BEING ACCESSED BY THE DRIVER. DEVICE SPECIFICATIONS: THE BORER INTERFACE IS ASSUMED TO BE A TWO-CARD DEVICE. IT IS TO BE CONFIGURED SUCH THAT SLOT "SC" IS THE COMMAND CHANNEL, AND SLOT "SC+1" IS THE DATA CHANNEL. THE PHYSICAL DATA 515 IS A ONE-CARD DEVICE. IT IS ASSUMED THAT THE LSI-11 REQUIRES ONE INTERFACE CARD. EQUIPMENT TABLE SPECIFICATION: AN EQUIPMENT TABLE SPECIFICATION SHOULD LOOK LIKE: SC,DVA54,D,T=TTT WHERE SC = SELECT CODE OF THE DEVICE. FOR THE BORER INTERFACE, THIS IS THE SELECT CODE OF THE COMMAND CHANNEL. TTT = TIME-OUT VALUE. THIS VALUE SHOULD DEPEND UPON THE DATA TRANSFER RATE BETWEEN THE DEVICE AND THE COMPUTER. SUBCHANNEL SPECIFICATION: THE FOLLOWING SUBCHANNEL ASSIGNMENTS SHOULD BE USED: SUBCHANNEL 0 = PHYSICAL DATA 515 SUBCHANNEL 1 = AN LSI-11 SYSTEM SUBCHANNEL 3 = A BORER INTERFACE FOR OTHER DEVICES THAT MAY BE INTERFACED WITH THIS DRIVER, THE FOLLOWING RULES SHOULD BE FOLLOWED: 1. SUBCHANNELS 0 AND 1 ARE FOR 1-SLOT DEVICES. 2. SUBCHANNELS GREATER THAN 1 ARE FOR 2-SLOT DEVICES. 3. EVEN SUBCHANNELS ARE FOR DEVICES THAT RUN IN DMA "FREE- RUN" MODE (NO STC FOR EACH WORD TRANSFERRED). 4. ODD SUBCHANNELS ARE FOR DEVICES THAT RUN IN "HANDSHAKE" MODE (STC REQUIRED FOR EACH WORD TRANSFERRED). INTERRUPT TABLE SPECIFICATION: THE INTERRUPT TABLE SPECIFICATION FOR THIS DRIVER SHOULD LIKE: SC,EQT,EEE WHERE SC = SELECT CODE OF THE DEVICE. EEE = EQUIPMENT TABLE NUMBER OF THE DEVICE. EXAMPLE: THE FOLLOWING EXAMPLE DEMONSTRATES THESE PRINCIPLES: * PROGRAM INPUT PHASE: REL,%DVA54 * CAMAC DRIVER . . . * EQUIPMENT TABLE ENTRIES . . . 21,DVA54,D,T=500 * EQT 21 = PHYSICAL DATA 515 22,DVA54,D,T=500 * EQT 22 = AN LSI-11 SYSTEM 23,DVA54,D,T=500 * EQT 23 = A BORER INTERFACE . . . * DEVICE REFERENCE TABLE (LU) ENTRIES . . . 21,0 * LU 21 = PHYSICAL DATA 515 22,1 * LU 22 = AN LSI-11 SYSTEM 23,3 * LU 23 = BORER INTERFACE . . . *INTERRUPT TABLE ENTRIES . . . 21,EQT,21 * SC 21 = PHYSICAL DATA 515 22,EQT,22 * SC 22 = LSI-11 SYSTEM 23,EQT,23 * SC 23 = BORER COMMAND CHANNEL 24,EQT,23 * SC 24 = BORER DATA CHANNEL 2. CAMAC DIAGNOSTIC AND TEST PROGRAM (CAM2) CAM2 ALSO OPERATES IN TWO MODES, CORRESPONDING TO THE MODES OF OPERATION OF THE DRIVER: A. NORMAL MODE. THIS MODE IS SELECTED BY NOT SPECIFYING THE "D" IN THE "FTN4" CONTROL STATEMENT. THIS MODE IS FOR USE WITH THE NORMAL MODE OF THE DRIVER. THE MEMORY RESIDENT VERSION OF THE DRIVER IS USED. B. "DEBUG" MODE. THIS MODE IS SELECTED BY SPECIFYING "D" IN THE "FTN4" CONTROL STATEMENT. THIS MODE IS FOR USE WITH THE "DEBUG" MODE OF THE DRIVER. THE DRIVER MUST BE INCLUDED WITH THE PROGRAM AT LOAD TIME. LOADING CAM2. WHEN USING THE RTE-IV OR THE DS/1000 LOADER, THE FOLLOWING LOAD FILE SHOULD BE USED TO LOAD CAM2: REL,%CAM2,, LOAD MAIN PROGRAM REL,%DVA54,, LOAD DRIVER IF DRIVER AND CAM2 IN "DEBUG" MODE REL,%FILL,, LOAD ARRAY INITIALIZATION SUBROUTINE END WHEN USING THE RTE-II LOADER, USE THE FOLLOWING FILE MANAGER PROCEDURE FILE: :LG,1,,, ALLOCATE SOME LOAD AND GO TRACKS :MR,%CAM2,,, MOVE MAIN PROGRAM CAM2 :MR,%DVA54,,, MOVE DRIVER IF DRIVER AND CAM2 IN "DEBUG" MODE :MR,%FILL,,, MOVE ARRAY INITIALIZATION SUBROUTINE :RU,LOADR,99,6,,,,, RUN LOADER, SPECIFYING LOAD AND GO AS INPUT. **RUN INSTRUCTIONS: RUN INSTRUCTIONS ARE IN THE LOAD INSTRUCTIONS SECTION. **INPUT/OUTPUT EXAMPLES: EXAMPLE INPUT/OUTPUT (TEST CASE) THESE EXAMPLES WILL INVOLVE INTERACTION WITH TWO TYPES OF SYSTEMS. 1. IN THE PHYSICAL DATA 515 SYSTEM, THE "N" FIELD (BITS 13-9) OF THE COMMAND WORD IS THE MODULE ADDRESS. THE MASTER CONTROL UNIT (MCU) IS AT MODULE ADDRESS 1. MODULE NUMBER 1 IS AT MODULE ADDRESS 2, MODULE NUMBER 2 IS AT MODULE ADDRESS 3, AND SO ON. THE LOGICAL UNIT OF THE PHYSICAL DATA IS LU 10. PHYSICAL DATA EXAMPLE *ON,FMG01 :RU,CAM2 REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 3,10,1,0,1,0,26 - ARM PHYSICAL DATA (MCU) COMMAND SUBMITTED IS 001021 CAMAC LU IS 10 CAMAC STATUS = 026000, TRANSMISSION LOG = 1 WORDS REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 1,10,1,1,1,0,4 - READ TIME BASE AND STATUS FROM MCU COMMAND SUBMITTED IS 10 CAMAC STATUS = 026000, TRANSMISSION LOG = 1 WORDS 1 002417 REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 1,10,1,1,2,0,1 - READ ATTENUATOR SETTING AND OVERFLOW FROM MODULE NUMBER 1 CAMAC LU IS 10 CAMAC STATUS = 026000, TRANSMISSION LOG = 1 WORDS 1 177767 REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 1,10,25,2,2,0,0 - READ OUT MEMORY OF MODULE NUMBER 1 TO LIST OU ON LINE PRINTER, TYPE 1,10,25,2,2,0,0,6 COMMAND SUBMITTED IS 102000 CAMAC LU IS 10 CAMAC STATUS = 027000, TRANSMISSION LOG = 25 WORDS 1 001454 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 REQUEST, LU, - WORDS, M, N, A, F, LIST/DATA?? /E CAM2 : STOP 0077 :EX &END FMGR &END FMGR 2. BORER INTERFACE INTERACTION WILL BE WITH A CAMAC DATAWAY DISPLAY LOCATED IN CRATE. STATION 22 ("N" = 22). THE LOGICAL UNIT OF THE BORER INTERFACE IS LU 17. *ON, FMG01 :RU,CAM2 REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 3,17,1,0,22,0,9 COMMAND SUBMITTED IS 026011 CAMAC LU IS 17 CAMAC STATUS = 026300, TRANSMISSION LOG = 1 WORDS REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 2,17,1,0,22,0,16,123456B - WRITE 123456B TO DATAWAY DISPLAY COMMAND SUBMITTED IS 026020 CAMAC LU IS 17 CAMAC STATUS = 026300, TRANSMISSION LOG = 1 WORDS REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 1,17,1,0,22,0,0 - READ IT BACK COMMAND SUBMITTED IS 026000 CAMAC LU IS 17 CAMAC STATUS = 026300, TRANSMISSION LOG = 1 WORDS 1 123456 REQUEST, LU, # WORDS, M, N, A, F, LIST/DATA?? 1,17,25,1,22,0,0 - READ DMA FROM DATAWAY DISPLAY TO LIST ON LINE PRINTER, TYPE IN 1,17,25,1,22,0,0,6 COMMAND SUBMITTED IS 066000 CAMAC LU IS 17 CAMAC STATUS = 026300, TRANSMISSION LOG = 25 WORDS 1 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 123456 /E EXIT CAM2 CAM2 : STOP 0077 :EX &END FMGR **PROGRAM DESCRIPTION: PROGRAM DESCRIPTION THE CAMAC DRIVER PACKAGE CONSISTS OF THREE PARTS: 1. AN RTE DRIVER (DVA54) WHICH IS USED TO HANDLE THE FOLLOWING DEVICES: A. PHYSICAL DATA 515 TRANSIENT RECORDERS B. CAMAC CRATE WITH A BORER CRATE CONTROLLER C. LSI-11, WHICH SIMULATES A BORER CRATE CONTROLLER 2. AN INTERACTIVE DIAGNOSTIC PROGRAM (CAM2), WHICH THE USER USES TO ISSUE COMMANDS TO THE DRIVER. THIS PROGRAM PROVIDES A TEST FOR BOTH THE DRIVER AND THE PHYSICAL DATA/CAMAC/LSI-11 SYSTEMS WHICH IT IS SUPPOSED TO HANDLE. 3. AN ARRAY INITIALIZATION SUBROUTINE, FILL, WHICH IS CALLED BY CAM2. THE CAMAC DRIVER (DVA54). THIS DRIVER IS CALLED IN THE RTE SYSTEM BY USING ONE OF THE FOLLOWING EXEC CALLS: 1. READ - CALL EXEC(1,LU,IBUF,LENGTH,MNAF) 2. WRITE (BORER OR LSI-11 ONLY) - CALL EXEC(2,LU,IBUF,LENGTH,MNAF) 3. CONTROL - CALL EXEC(3,LU,NAF) WHERE LU = LOGICAL UNIT OF DEVICE IBUF = BUFFER INTO WHICH DATA IS READ, OR BUFFER FROM WHICH DATA IS WRITTEN. LENGTH = NUMBER OF WORDS IN THAT BUFFER. NOTE THAT THIS MUST BE THE POSITIVE NUMBER OF WORDS. MNAF = CAMAC COMMAND IN THE FOLLOWING FORMAT: BITS 15 - 14 = MODE (M) BITS 13 - 9 = STATION NUMBER (N) BITS 8 - 5 = SUBADDRESS (A) BITS 4 - 0 = FUNCTION (F) NAF = CAMAC COMMAND WITH M = 0. NOTES: 1. IT IS THE CALLING PROGRAM'S RESPONSIBILITY TO SEE THAT THE COMMAND IS IN THE RIGHT FORMAT. 2. SEE THE APPROPRIATE DOCUMENTATION FOR A MORE DETAILED DESCRIPTION OF THE COMMANDS FOR A PARTICULAR DEVICE. DRIVER STATUS RETURNS. UPON RETURN FROM A CALL TO THIS DRIVER, THE REGISTERS ARE SET AS FOLLOW: B-REGISTER - THIS IS THE TRANSMISSION LOG. A TIME-OUT IS INDICATED BY THE B-REGISTER BEING 0 UPON RETURN. THIS DRIVER HANDLES ITS OWN TIME-OUT, AND THE DEVICE IS NOT SET DOWN. A-REGISTER - THIS IS THE STATUS, AS SET IN EQUIPMENT TABLE WORD #5. THE STATUS FIELD (BITS 7-0 IS SET AS FOLLOWS: PHYSICAL DATA. THIS FIELD IS NOT SET. A PROGRAM WISHING TIME BASE AND STATUS MUST USE THE FOLLOWING CALL: CALL EXEC(1,LU,ISTAT,1,41004B) BORER BIT 7 = "X" RESPONSE FROM MODULE = 0 - MODULE DID NOT ACCEPT REQUEST = 1 - MODULE ACCEPTED REQUEST BIT 6 = "Q" RESPONSE FROM MODULE BIT 5 = 1 - A LAM HAS OCCURED BITS 4-0 = STATION CAUSING LAM (LOOK-AT-ME INTERRUPT) LSI-11 IT IS ASSUMED THAT THE "READ STATUS" COMMAND FOR AN LSI-11 IS THE SAME AS THAT FOR A BORER INTERFACE (N(0),A(1),F(0)). BITS 14 AND 13 OF THE STATUS WORD FROM THE LSI-11 ARE SHIFTED TO BITS 7 AND 6, RESPECTIVELY, BEFORE BEING PLACED IN EQT WORD #5. LOOK-AT-ME INTERRUPTS (LAM) A LAM INTERRUPTS THE COMPUTER THROUGH THE COMMAND CHANNEL OF THE BORER INTERFACE. WHEN THE INTERRUPT OCCURS, THE COMMAND CHANNEL IS READ TO GET THE LAM PATTERN. FROM THE LAM PATTERN, THE BIT POSITION OF MODULE ISSUING THE LAM IS DETERMINED, AND PLACED IN BITS 4-0 OF EQT WORD #5. NOTE: THE LAM CAPABILITY HAS NEVER BEEN USED OR TESTED. SEE THE BORER INTERFACE MANUAL FOR MORE INFORMATION CONCERNING LAMS. OTHER NOTES: 1. THIS DRIVER DOES NOT DO ITS OWN POWER-FAIL PROCESSING. 2. ALL TIME-OUTS ARE HANDLED BY THE DRIVER. 3. NO VALIDITY CHECKS ARE DONE ON THE CAMAC COMMANDS ISSUED. THIS ALLOWS OTHER NON-CAMAC DEVICES TO BE INTERFACED WITH THIS DRIVER, AS LONG AS THE I/O HANDSHAKE IS SIMILAR TO THAT OF THE BORER INTERFACE. CAMAC DIAGNOSTIC AND TEST PROGRAM (CAM2) THIS PROGRAM IS SUPPLIED AS PART OF THE PACKAGE, AND PROVIDES FOR THE TESTING OF THE DRIVER AND ASSOCIATED HARDWARE DEVICES. TO RUN CAM2, ONE NEED ONLY TYPE RTE OR FILE MANAGER COMMAND "RU,CAM2". CAM2 WILL ASK FOR THE FOLLOWING INPUT, ON ONE LINE: REQUEST = I/O REQUEST TO BE PERFORMED: = 1 - READ = 2 - WRITE = 3 - CONTROL = 0, /E, OR EX - TERMINATE CAM2 LU = LOGICAL UNIT OF DEVICE. # WORDS = NUMBER OF WORDS TO BE TRANSFERRED DURING A READ OR WRITE OPERATION. THIS FIELD MAY BE ANYTHING FOR A CONTROL REQUEST. M = TRANSFER MODE N = CRATE STATION NUMBER A = SUBADDRESS F = FUNCTION LIST/DATA = FOR READ: LU ON WHICH TO LIST DATA READ. IF OMITTED, OUTPUT IS TO USER'S TERMINAL. FOR WRITE: DATA WORD TO BE WRITTEN TO DEVICE. FOR CONTROL: THIS FIELD IS IGNORED. THIS PROGRAM WILL FORMAT THE COMMAND AND ISSUE IT, AND PRINT OUT THE RESULTS AT THE USER'S TERMINAL. SEE THE TEST CASE (SECTION IV) FOR AN EXAMPLE OF AN INTERACTION WITH CAM2. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE 1. PHYSICAL DATA, INC., BEAVERTON, OREGON 97005, INSTRUCTION MANUAL FOR MODIFIED 515 SYSTEM WITH DMA INTERFACE, #1595109, SEC. 515.510. 2. BORER ELECTRONICS AG, SOLOTHURN 2/SWITZERLAND, CRATE CONTROLLER/ INTERFACE TO HP 2100/-14/-15/-16/-MX TYPE 1531A, SERIES NO. 40. 3. IEEE, NEW YORK, INSTRUMENTATION AND INTERFACE STANDARDS (1976). E13501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DVM33 **PROGRAM TITLE: DVM33 RTE-M DISC DRIVER **REVISION? NO **PACKAGE: 5 **CATEGORY: 2 **KEYWORDS: DRIVER DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-M RTE-II RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: "DVM33" IS A RTE-M DISC DRIVER WHICH TRANSFERS DATA TO AND FROM EXPANDED MEMORY INSTEAD OF THE 9885 FLOPPY DISC DRIVE. THIS PROVIDES THE USER WITH THE CAPABILITY OF HAVING AN OPERATING SYSTEM COMPLETELY MEMORY RESIDENT, INCLUDING PROGRAM DATA FILES. "DVM33" SUPPORTS STANDARD READ AND WRITE REQUESTS (EXEC 1 OR 2) AND IS COMPATIBLE WITH THE EXISTING RTE-M SUBSYSTEMS (FMGR, EDITM, ASMB, FTN4, ETC). PROGRAM "INITL" IS USED TO INITIALIZE "DVM33" AFTER BOOT-UP. IT PROMPTS THE SYSTEM CONSOLE FOR THE NUMBER OF PAGES IN PHYSICAL MEMORY AND THE NUMBER OF PAGES IN THE OPERATING SYSTEM (MIII ONLY). EQUIPMENT, LU AND INTERRUPT TABLE ENTRIES ARE THE SAME AS THE FLOPPY DISC DRIVER "DVR33" EXCEPT DMA, BUFFERING AND TIME OUT SHOULD NOT BE SPECIFIED IN THE EQUIPMENT TABLE AND THE INTERRUPT TABLE REQUIRES ONLY ONE (DUMMY) SELECT CODE. PROGRAM "INITL" EXPECTS THE DISC TO BE LU2. "DVM33" DOES NOT SUPPORT EQUIPMENT SUBCHANGES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &INITL FILE# 3: &DVM33 FILE# 4: $MI FILE# 5: $MII FILE# 6: $MIII FILE# 7: $FMGR FILE# 8: $EDITM FILE# 9: $FTN4 **LOAD INSTRUCTIONS: LOAD AND RUN INSTRUCTIONS ASSEMBLE "&INITL" AND "&DVM33" AND SAVE THE RELOCATABLE CODE. PROGRAM "RTMLG" (PART OF THE DS-1000 SOFTWARE PACKAGE) IS HIGHLY RECOMMENDED FOR THE RTE-M SYSTEM GENERATION (DONE ON A HARD DISC BASED RTE-III OR IV OPERATING SYSTEM). IN ADDITION, ALL THE RELOCATABLE MODULES FOR THE DESIRED RTE-M OPERATING SYSTEM WILL BE NEEDED. GENERATE THE RTE-M SYSTEM USING PROGRAM "RTMLG" AND THE APPROPRIATE ANSWER FILE. $MI, $MII, AND $MIII ARE TYPICAL RTE-M I, II, AND III SYS- TEM ANSWER FILES. "INITL" SHOULD BE GENERATED AS THE START-UP PROGRAM AND "DVM33" SHOULD REFERENCE THE SYSTEM DISC,LU2. FOR RTE-MIII SYSTEMS (DON'T FORGET THE PARTITION LOAD PARAMETER WHEN SCHEDULING PROGRAM "RTMLG". ALSO, SEGMENTED PROGRAMS LIKE "FTN4" WILL REQUIRE PROGRAM "SGRP" FOR FIRST TIME OPERATION). BOOT-UP THE SYSTEM AND ANSWER THE QUESTION(S) ASKED BY "INITL". LOAD AND RUN PROGRAM "FMGR". ("FMGR" MAY ALREADY BE IN THE MI OR MII SYSTEM). INITIALIZE THE DISC AS FOLLOWS: :MC, -2 :IN, SC, -2, 2, LU2 :PU, FLOPLK:-32767 :LL,1 THE SYSTEM SHOULD BE READY FOR USE- **RUN INSTRUCTIONS: PLEASE SEE LOAD SECTION **INPUT/OUTPUT EXAMPLES: 1) PROGRAM INITL "NUMBER OF PAGES IN THE MIII SYSTEM (32-304)?" 80 "NUMBER OF PAGES IN PHYSICAL MEMORY (64-572)?" 256 THE ABOVE EXAMPLE IS FOR A RTE-MIII SYSTEM GENERATED WITH 80K OF MEMORY AND A TOTAL PHYSICAL MEMORY SIZE OF 256K, THIS TELLS "DVM33" THAT THERE ARE 44 GOOD TRACKS ON THE DISC. 2) DRIVER DVM33 N/A **PROGRAM DESCRIPTION: SPECIAL CONSIDERATIONS-- 1) "DVM33" DOES NOT SUPPORT EQUIPMENT SUBCHANNELS 2) "INITL" DOES NOT VERIFY THAT THE SPECIFIED AMOUNT OF PHYSICAL MEMORY REALLY EXISTS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: HARDWARE REQUIREMENTS-- 21MX-M,E, OF F SERIES CPU, 64K WORDS OF MEMORY AND THE DYNAMIC MAPPING PACKAGES ARE MINIMUM. ADDITIONAL HARDWARE AS REQUIRED TO SUPPORT THE DESIRED OPERATING SYSTEM (RTE-MI, MII OR MIII). THE FFP MICRO-CODE IS REQUIRED FOR GENERATION FILES $MI, $MII AND $MIII. E13601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RATFOR **PROGRAM TITLE: FORTRAN IV PREPROCESSOR **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: FORTRAN COMPILER MACRO **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IV **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: RAT4 IS A PREPROCESSOR WHICH INPUTS RATFOR SOURCE CODE AND PRODUCES FTN4 CODE. RATFOR IS A STRUCTURED LANGUAGE WHICH CAN BE EASILY UNDERSTOOD BY ANYONE FAMILIAR WITH FORTRAN. IT IS DESCRIBED IN: KERNIGHAN B., PLAUGER P., "SOFTWARE TOOLS", ADDISON-WESLEY, 1976 THIS VERSION OF RATFOR RUNS ON AN HP 1000 UNDER RTE-IV AND REQUIRES A 22 PAGE PARTITION. IT HAS A BUILT IN MACRO PROCESSOR WHICH ALLOWS USER EXPANSION OF THE LANGUAGE. RTF77 IS A SET OF RAT4 MACROS AND RUN TIME SUBROUTINES WHICH ALLOW A SUBSET OF FORTRAN 77 TO BE USED ON AN HP 1000. IT SUPPORTS IF THEN ELSE, WHILE LOOPS AND OTHER CONTROL STRUCTURES. WITH HELP FROM RTE'S SPOOLING SYSTEM, MACRO ARE DEFINED WHICH ALLOW FILE I/O USING OPEN, READ AND WRITE STATEMENTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: _RAT4 -- TRANSFER FILE TO LOAD THESE FILES FILE# 3: %RAT4 -- RELOCATABLE RAT4 PREPROCESSOR FILE# 4: %FILL -- ASMB PACK AND UNPACK USED BY RAT4 FILE# 5: #RAT4 -- LOADR COMMAND FILE FOR RAT4 FILE# 6: RF77 -- TRANSFER FILE TO RU RAT4 AND FORTRAN FILE# 7: MFTN77 -- MACRO FILE USED BY RF77 FILE# 8: %RFLIB -- RF77 FUN TIME LIBRARY FILE# 9: &RFTST -- SOURCE FOR EXAMPLE TEST PROGRAM FILE# 10: #RFTST -- LOAD COMMAND FOR RFTST FILE# 11: &RAT4 -- SOURCE TO RAT4 WRITTEN IN RAT4 FILE# 12: CRAT4 -- COMMONBLOCKS USED BY RAT4 FILE# 13: &FILL -- PACK AND UNPACK USED BY RAT4 FILE# 14: &IQOPN -- OPEN SUBROUTINE FILE# 15: &IQMAP -- PROGRAM TO SESSION LU MAP FILE# 16: &IQCRT -- CREATE SUBROUTINE FILE# 17: &IQERR -- ERROR REPORTER FILE# 18: &IQCLS -- CLOSE SUBROUTINE FILE# 19: &IQSTP -- CLOSE ALL FILES SUBROUTINE FILE# 20: &CIQCOM -- RUN TIME COMMON BLOCK FILE# 21: &LEN -- SOURCE FOR STRING LENGTH FILE# 22: &STRUN -- SOURCE FOR STRING TRUNCATE FILE# 23: &SCOPY -- SOURCE FOR STRING COPY FILE# 24: &SCAT -- SOURCE FOR STRING CONCATENATION FILE# 25: &SUBSR -- SOURCE FOR SUBSTRING FILE# 26: &ITOS -- SOURCE FOR INTEGER TO STRING FILE# 27: &IGETA -- SOURCE FOR GET RUN STRING ARGUMENT FILE# 28: %ISHFT -- RELOCATABLE FOR LOGICAL SHIFT FILE# 29: )RAT4 -- DOCUMENTATION - OUTPUT FRM RUNOFF FILE# 30: (RAT4 -- DOCUMENTATION - INPUT TO RUNOFF **LOAD INSTRUCTIONS: SEE RATFOR MANUAL IN DOCUMENTATION FILE. **RUN INSTRUCTIONS: SEE RATFOR MANUAL **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE RATFOR MANUAL **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E13701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RELIA **PROGRAM TITLE: INVERSE RELOCATABLE ASSEMBLER **REVISION? YES **PACKAGE: 5 **CATEGORY: 1 **KEYWORDS: INVERSE ASSEMBLER RELOCATABLE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-M RTE-III RTE-IV **MEMORY REQUIREMENTS: 14 PAGES **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL PERFORM AN INVERSE ASSEMBLY OF A RELOCATABLE MODULE WHICH CAN EXIST IN AN FMP FILE OR THE DISC-RESIDENT LIBRARY. THE RELOCATABLE CODE CAN BE GENERATED BY AN ASSEMBLER OR COMPILER AND CAN BE INPUTTED BY AN FMP TYPED FILE. THE PROGRAM USES APPROXIMATELY 9.5K OF MEMORY AND 3.5K OF TABLE SIZE FOR EVALUATING 700 UNIQUE SYMBOLS. THE BASE PAGE REQUIREMENTS ARE APPROXIMATELY 1000 OCTAL. THE PROGRAM CAN BE SCHEDULED INTERACTIVELY OR FROM A PREVIOUSLY PREPARED RELIA COMMAND FILE. INCLUDED IS A COMPREHENSIVE HELP PROCESSOR WHICH GIVES HELP ON ALL COMMANDS AT A GLANCE OR SPECIFIC HELP ON A COMMAND BY COMMAND BASIS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RELIA SOURCE (ASMB,R,L,C,Q) **LOAD INSTRUCTIONS: 1. ASSEMBLE RELIA WITH NO SPECIAL REQUIREMENTS. 2. LOAD BY GIVING APPROPRIATE PROGRAM SIZE OVERRIDE OF AT LEAST 14 PAGES. **RUN INSTRUCTIONS: :RU,RELIA[,LU] [,NAMR] WHERE LU = INTERACTIVE DEVICE LU NAME = FMP FILE NAME **INPUT/OUTPUT EXAMPLES: CONTACT CONTRIBUTOR FOR EXAMPLES. **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: CONVERSATIONAL AND SELF EXPLANATORY. ALL ERROR MESSAGE INTERPRETATIONS ARE SELF-EXPLANATORY. **MISCELLANEOUS: E13801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LOADR **PROGRAM TITLE: RTE-2 INTERACTIVE RELOACTING LOADER **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: LOADER RELOCATABLE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-II **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: "LOADR" IS A RTE-2 INTERACTIVE RELOACTING LOADER. IT READS RELOCATABLE CODE FROM ANY INPUT DEVICE OR FMP FILE AND PRODUCES AN ABSOLUTE LOAD MODULE THAT IS READY FOR EXECUTION. IN ADDITION TO ITS LINKING FUNCTIONS, THE LOADR'S COMMAND PARAMETER OPTIONS MAY ALSO BE USED TO LIST ALL ACTIVE PROGRAMS IN THE SYSTEM, PURGE PERMANENT PROGRAMS FROM THE SYSTEM AND ADD OR REPLACE PERMANENT PROGRAMS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: RELOCATABLE **LOAD INSTRUCTIONS: RELOCATE THIS MODULE AS A PERMANENT PROGRAM. FOLLOWING RENAMING IN ID SEGMENTS, USE THE NEW LOADER TO PURGE THE OLD (PERMANENT) LOADER. OR, INCLUDE THIS MODULE IN A NEW SYSGEN; IT WILL BECOME THE PERMANENT LOADER. **RUN INSTRUCTIONS: OPERATING INSTRUCTIONS ARE THE SAME AS THOSE FOR THE RTE-III/IV LOADERS, WITH THE OBVIOUS RESTRICTIONS THAT LB AND SS OPS ARE MEANINGLESS IN RTE-II, AND THE <PARTITION> AND <SIZE> PARAMETERS ARE IGNORED FOR THE SAME REASON. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E13901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: TBPRN **PROGRAM TITLE: CHECKS AN RTE IVA TRACK MAP ($TB32) FOR ILLOGICAL SUBCHANNEL LAYOUT. **REVISION? NO **PACKAGE: 5 **CATEGORY: 7 **KEYWORDS: SYSTEM TABLES GENERATION **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE-IVA **MEMORY REQUIREMENTS: ONE 8K PARTITION **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: TBPRN LOOKS AT THE TRACK MAP ($TB32) IN AN RTE IVA SYSTEM AND COMPARES EACH SUBCHANNEL CHECKING FOR AN ILLOGICAL LAYOUT. IT WILL GIVE A REPORT OF ALL SUPERSET, EQUIVALENT, AND BAD SUBCHANNELS AS WELL AS NOTING WHEN ALL SUBCHANNELS ARE UNIQUE. OUTPUT MAY BE DIRECTED TO ANY LU BY TYPING RU,TBPRN,## WHERE ## IS THE DESIRED LU. TBPRN IS WRITTEN IN FTN4 AND ASMB. MODIFICATIONS TO THE ASMB SUBROUTINE COULD MAKE THIS WORK ON AN RTE IVB SYSTEM. THESE MODIFICATIONS WOULD BE NECESSARY BECAUSE OF A CHANGE IN THE TRACK MAP TABLE FORMAT IN RTE IVB. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &TBPRN -- SOURCE (FTN4) FILE# 3: &TBRD -- SOURCE (ASMB) **LOAD INSTRUCTIONS: TBPRN MUST BE A TYPE 3 PROGRAM TO LOAD TYPE : RU,LOADR RE,%TBPRN RE,%TBRD EN **RUN INSTRUCTIONS: TO RUN TYPE: RU,TBPRN,## (WHERE ## IS THE DESIRED OUTPUT LU, DEFAULT TO YOUR CONSOLE) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E14001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BEEPR **PROGRAM TITLE: ADVANCED ATTENTION-GETTING THROUGH SOPHISTICATED TERMINAL BEEPING **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DISPLAY GAMES TERMINAL **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IVB **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS IS A NEAT LITTLE PROGRAM THAT I USE EXTENSIVELY, ESPECIALLY AT THE END OF TRANSFER FILES AND THE LIKE, TO LET ME KNOW A TASK IS DONE. IT BEEPS THE TERMINAL WITH THE OLD "SHAVE AND A HAIRCUT" PATTERN. THE SOUND IS SO NOTICEABLE THAT I CAN START SOME PROCESS LIKE A TRANSFER FILE, WALK AWAY FROM THE TERMINAL (CLEAR ACROSS THE ROOM), AND WHEN THE TRANSFER FILE IS DONE, IT RUNS BEEPR TO LET ME KNOW I NEED TO RE- TURN. THERE'S NO MISTAKING THE SOUND. THIS PROGRAM CAN BE USED IN THIS 'ATTENTION-GETTING' MANNER, OR MAY BE USED IN CONJUNCTION WITH GAMES OR DEMONSTRATIONS. INCLUDED WITH BEEPR IS A PROGRAM CALLED CHYME WHICH TAKES THE IDEA ONE STEP FURTHER BY DRAWING A PICTURE OF THE LIBERTY BELL ON A 2648 TER- MINAL (USING ESCAPE SEQUENCES) THEN LEAVING THE PICTURE THERE WHILE IT RUNS BEEPR. AN EXAMPLE OF A LITTLE AUDIO-VISUAL FLASHYNESS. BEEPR USES EXEC CALLS TO RE-SCHEDULE ITSELF WITH VARYING OFFSETS TO ATTAIN THE RHYTHM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &BEEPR - BEEPR SOURCE FILE# 3: &CHYME - CHYME SOURCE FILE# 4: /CHYME - RP'S BEEPR, THEN RUNS CHYME **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RU,BEEPR,LU,OFFSET WHERE: LU = LU NUMBER OF TERMINAL TO BEEP OFFSET = DETERMINES THE SPEED OF THE BEEP PATTERN DEFAULT IS 9 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: E14101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BKUP! **PROGRAM TITLE: ON-LINE LOAD OF !DSKUP FROM DISC FILE **REVISION? NO **PACKAGE: 5 **CATEGORY: 4 **KEYWORDS: DISC FILES **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: BKUP! IS A PROGRAM THAT RUNS ON-LINE AND LOADS FROM A DISC FILE THE HP BACKUP UTILITY NAMED !DSKUP. NEXT IT TRANSFERS TO !DSKUP IN SUCH A WAY THAT IT (!DSKUP) COMES UP RUNNING AT THE SYSTEM CONSOLE. AT THE POINT OF TRANSFER RTE IS ABORTED. APPROPRIATE WARNING MESSAGES ARE PRINTED AND A CHANCE TO ABORT IS GIVEN BEFORE THE TRANSFER TO !DSKUP. BKUP! PROVIDES USERS OF RTE A CONVENIENT WAY TO LOAD !DSKUP AND REMOVES THE NECESSITY FOR THEM TO HAVE MINI-CARTRIDGES OR PAPER TAPE. BKUP! COULD BE EASILY MODIFIED TO LOAD ANY ABSOLUTE PROGRAM. !BKUP IS ONLY FOR MAPPED RTE SYSTEMS. !DSKUP MUST BE ON AN ACCESSIBLE DISC FILE. REFER TO THE RTE UTILITY MANUAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: !BKUP SOURCE **LOAD INSTRUCTIONS: COMPILE SOURCE INTO %BKUP!. :RU,LOADR SZ,16 RE,%BKUP! END **RUN INSTRUCTIONS: :RU,BKUP! (WARNINGS PRINTED) CONTINUE? (YE REQUIRED TO CONTINUE, ANY OTHER ANSWER ABORTS BKUP!) TASK? **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: HLT 102055 ADDRESS ERROR HLT 102011 CHECK SUM **MISCELLANEOUS: E14201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DEVICE INITIALIZATION AND I/O SUBROUTINES **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: I/O CASSETTE FILES MAGNETIC TAPE PRINTER **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IVB **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THESE ARE A GROUP OF SUBROUTINES THAT HANDLE I/O TO DISC FILES AND TO VARIOUS DEVICES. FOUR MAIN SUBROUTINES INITIALIZE FILES OR DEVICES FOR INPUT AND FOR OUTPUT, AND THEY PERFORM INPUT OR OUTPUT TO EITHER DISC FILES OR TO MAG TAPE, MINICARTRIDGE, OR LINE PRINTER. THE ROUTINES DO EXTENSIVE STATUS AND ERROR CHECKING ON EITHER THE DISC OR THE DEVICES, AVOIDING THE PROBLEMS INVOLVED WITH HAVING A PROGRAM ABORT BECAUSE SOMETHING WAS NOT READY. THESE ROUTINES USE EXEC & REIO I/O, CONTROL REQUESTS, AND STATUS CHECK- ING. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &INITW - INITIALIZE FOR WRITE FILE# 3: &INITR - INITIALIZE FOR READ FILE# 4: &OUTPT - OUTPUT TO FILE OR DEVICE FILE# 5: &INPUT - INPUT FROM FILE OR DEVICE FILE# 6: &FILU - INPUT & PARSE FILE NAMR OR LU NUMBER FILE# 7: &TRMRD - INPUT RESPONSE FROM TERMINAL FILE# 8: &YESNO - INPUT YES OR NO RSPONSE FROM TERMINAL FILE# 9: &RESET - "REWINDS" DEVICES OR FILES FILE# 10: &ABORT - CLOSES FILES & UNLOCKS DEVICES **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: INCLUDED WITH THE MAIN SUBROUTINES INITW, INITR, OUTPT, & INPUT, ARE SUBROUTINES THAT THEY CALL. ALL ROUTINES ARE INTERNALLY DOCUMENTED, AND MAY NEED TO BE MODIFIED FOR A PARTICULAR APPLICATION. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE LISTINGS FOR CALLING SEQUENCES. HERE IS A BRIEF DESCRIPTION OF EACH ROUTINE: INITW - INITIALIZE DEVICES FOR OUTPUT. CREATES A DISC FILE AND OPENS IT; OR LOCKS A MAG TAPE, MINICARTRIDGE, OR LINE PRINTER AND VERIFIES THE DEVICE IS ON-LINE. INITR - INITIALIZE DEVICES FOR INPUT. OPENS A DISC FILE; OR LOCKS A MAG TAPE OR MINICARTRIDGE, AND VERIFIES THAT IT IS ON-LINE. OUTPT - OUTPUTS A BUFFER OF TEXT TO A DISC FILE, MAG TAPE, MINI- CARTRIDGE, OR LINE PRINTER. IT PUTS A BLANK IN COLUMN ONE TO ALLOW DUMPING TO A LINE PRINTER, AND CHECKS FOR STATUS ERRORS WHILE OUTPUTTING. INPUT - READS A BUFFER FROM DISC FILE, MAG TAPE, OR MINICAR- TRIDGE, CHECKING FOR STATUS ERRORS. FILU - READS AN FMP FILE NAMR OR LU NUMBER FROM THE TERMINAL AND PARSES IT INTO ITS SEPARATE PARTS. TRMRD - READS AN ASCII BUFFER FROM THE TERMINAL. YESNO - READS MOST POSSIBLE CONFIGURATIONS OF Y, YE, YES, N, NO, INCLUDING UPPER AND LOWER CASE LETTERS. RESET - REWINDS DEVICES OR RETURNS TO FIRST RECORD OF A DISC FILE. ABORT - CLOSES ALL FILES AND UNLOCKS DEVICES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: DIAGNOSTIC MESSAGES FROM SUBROUTINES ARE SELF-EXPLANATORY. **MISCELLANEOUS: E14301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BLKRD **PROGRAM TITLE: FORMAT MODE/BLOCK ENABLED TERMINAL I/O SUBROUTINES **REVISION? NO **PACKAGE: 5 **CATEGORY: 5 **KEYWORDS: TERMINAL I/O TEXT **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-IVB **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THESE ARE A SET OF THREE SUBROUTINES THAT ARE USED TO SIMPLIFY SETTING UP AND USING THE FORMAT MODE AND BLOCK ENABLED READ ON A 2645 OR GREATER TERMINAL. THERE FUNCTIONS ARE: SET - SETS THE TIME-OUT OF THE TERMINAL TO ZERO, PUTS TERMINAL INTO LINE MODE, AND TURNS ON BLOCK MODE. BLKRD - TURNS ON FORMAT MODE, TURNS ON PAGE MODE, AND ISSUES A BLOCK READ FROM THE TERMINAL. RESET - TURNS OFF FORMAT MODE, TURNS ON LINE MODE, TURNS OFF BLOCK MODE, AND SETS THE TIME-OUT TO 20000. BASICALLY, THE SUBROUTINES ARE USED TO SET UP FORMS ON THE TERMINAL, ALLOW THE USER TO ENTER OR MODIFY DATA IN THE FORMS, THEN READ THE DATA BACK IN A BUFFER. THE ROUTINES USE REIO AND EXEC CALLS TO TALK TO THE TERMINAL. A 2645 TERMINAL, OR GREATER, IS REQUIRED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &SET FILE# 3: &BLKRD FILE# 4: &RESET FILE# 5: &EXAM - EXAMPLE FORTRAN PROGRAM USING THE ROUTINES FILE# 6: *EXAM - LOADR COMMAND FILE FOR EXAM **LOAD INSTRUCTIONS: TO LOAD THE EXAMPLE PROGRAM: COMPILE &EXAM AND THE 3 SUBROUTINES RU,LOADR,*EXAM **RUN INSTRUCTIONS: SEE PROGRAM DESCRIPTION **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE CALLING SEQUENCES ARE: CALL SET(LU) WHERE: LU = THE LU NUMBER OF THE TERMINAL CALL BLKRD(LU,IBUFF,LEN,IERR) WHERE: LU = THE LU NUMBER OF THE TERMINAL IBUFF = BUFFER FOR INPUT LEN = THE LENGTH OF IBUFF TO BE READ IN IERR = ERROR INDICATOR = 0 NO ERROR =-700 ABORT REQUESTED CALL RESET(LU) WHERE: LU = THE LU NUMBER OF THE TERMINAL NOTE: SINCE IT IS OFTEN IMPORTANT TO GIVE THE USER THE CHANCE TO ABORT A PROGRAM AT ANY POINT, BLKRD CHECKS THE LAST 2 CHARACTERS IN THE INPUT BUFFER FOR A '/A'. IF IT IS FOUND, BLKRD RETURNS A -700 IN IERR. THE EXAMPLE PROGRAM 'EXAM' SHOWS A WAY TO USE THIS. ALSO: THE DATA FROM THE UNPROTECTED FIELDS COME BACK IN IBUFF CONCATEN- ATED TOGETHER IN THE ORDER THEY APPEARED ON THE SCREEN. FOLLOWING IS AN EXAMPLE OF HOW TO USE THE SUBROUTINES: FTN4,L PROGRAM FIZZ . . INITIAL PART OF PROGRAM . CALL SET(LU) . . OUTPUT THE UNPROTECTED FIELDS TO THE SCREEN . CALL BLKRD(LU,IBUFF,LEN,IERR) IF(IERR.NE.0) GO TO 9999 . . PROCESS DATA . CALL RESET(LU) END SEE THE INCLUDED PROGRAM 'EXAM' FOR A REAL LIFE EXAMPLE OF HOW TO USE THE SUBROUTINES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: F00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SHIP **PROGRAM TITLE: BATTLESHIP **REVISION? NO **PACKAGE: 6 **CATEGORY: 1 **KEYWORDS: GAMES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 4349 WITH EXTERNAL SUBPROGRAMS (1026 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: BATTLESHIP IS A COMPUTER GAME FOR RTE IN WHICH FIVE SHIPS ARE RANDOMLY PLACED IN A MATRIX BY THE PROGRAM. THE LOCATION OF THESE SHIPS IS FOUND BY THE PLAYER WHO PROCEEDS BY TRIAL AND ERROR UNTIL A HIT IS ACHIEVED. THROUGH SUCCESSIVE (HITS), HE CAN RECONSTRUCT THE RANDOM MATRIX. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IT USES A VARIABLE MATRIX (5 X 5 TO 26 X 26) AND THE TIME-BASE GENERATOR FOR THE RANDOM NUMBER GENERATION TO PLACE 5 SHIPS WITHIN THE MATRIX. THESE 5 SHIPS ARE AS FOLLOWS: 1.) AND AIRCRAFT CARRIER (5 ADJACENT LOCATIONS). 2.) A BATTLESHIP (4 ADJACENT LOCATIONS). 3.) A CRUISER (3 ADJACENT LOCATIONS). 4.) A DESTROYER (2 ADJACENT LOCATIONS). 5.) A SUBMARINE (1 LOCATION). THE ADJACENT LOCATIONS CAN BE HORIZONTAL, VERTICAL, OR AT 45 DEGREE INCREMENTS. I/O IS CONVERSATIONAL. THERE ARE FIVE SHIPS TO BE DESTROYED. EACH SHIP OCCUPIES A DIFFERENT NUMBER OF POSITIONS IN THE MATRIX AND THUS REQUIRES A DIFFERENT NUMBER OF "HITS" TO SUCCESSFULLY DOWN IT. THERE ARE FIVE SHOTS TO A ROUND. AS EACH SHIP IS SUNK, A ROUND IS DECREASED BY ONE SHOT. AFTER EACH ROUND, A SCORE OF HITS IS PRINTED FOR EACH SHIP. THE SCORE OF HITS IS UNRELATED TO THE SHIP'S POSITION WITHIN THE MATRIX. A SHIP MAY BE POSITIONED HORIZONTALLY, VERTICALLY, OR ON A DIAGONAL BY THE PROGRAM. EACH SHOT REQUIRES TWO COORDINATES (ROW,COLUMN) TO LOCATE THE TARGET POSITION WITHIN THE MATRIX. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IN ORDER TO PLAY THE GAME CORRECTLY, THE USER SHOULD USE A SCORE SHEET. THIS WILL GIVE HIM AN UP-TO-DATE MAP OF WHICH LOCATIONS WERE HIT IN WHICH ROUND. IF IT'S TIME TO GO BACK TO WORK OR THE USER GIVES UP, SET SWITCH 6 UP AND FINISH THE ROUND; THE ANSWER MATRIX WILL BE PRINTED ON THE STANDARD LIST DEVICE. ALL NEGATIVE NUMBERS REPRESENT THE SHIPS (-5 = AIRCRAFT CARRIER, -4 = BATTLESHIP, ETC.). F00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: STAR **PROGRAM TITLE: STARTREK STAR VERSION D **REVISION? NO **PACKAGE: 6 **CATEGORY: 1 **KEYWORDS: GAMES **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: APPROXIMATELY 11K DECIMAL **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS IS THE CLASSIC GAME OF STARTREK. IT IS INTENDED TO SIMULATE THE POPULAR TELEVISION PROGRAM HAVING THE SAME NAME. THE OPERATOR IS CONSIDERED THE CAPTAIN OF THE STARSHIP ENTERPRISE. THE MISSION IS TO RID THE GALAXY OF INVADING KLINGONS. THE PROGRAM PROMPTS THE OPERATOR FOR THE MINIMUM AND MAXIMUM NUMBER OF KLINGONS AND THEN DESIGNS A SCENARIO; THE NUMBER OF KLINGONS YOU MUST DESTROY ON A GIVEN NUMBER OF STARDATES. THE COMPUTER MAINTAINS A DISPLAY OF THE KLINGONS, THEIR LOCATIONS, AND THE STAR BASES, AND THEIR LOCATIONS. THE PROGRAM MAKES USE OF A RANDOM NUMBER GENERATOR TO CREATE A TRUCE, STORMS, DAMAGE, AND THE LOCATIONS OF STARS, KLINGONS, STAR BASES, AND THE STARSHIP ENTERPRISE. IF ANY KLINGONS REMAIN AFTER THE ALOTTED NUMBER OF STARDATES, OR IF THE ENTERPRISE RUNS OUT OF FUEL, YOU WILL HAVE LOST, AND THE COMPUTER WILL DISPLAY AN APPROPRIATE MESSAGE. IF YOU WIN (YOU HAVE DESTROYED THE KLINGONS), THE COMPUTER WILL GIVE AN UNBIASED SCORE ON YOUR PERFORMANCE AS CAPTAIN OF THE STARSHIP ENTERPRISE. OPTIONS AVAILABLE TO THE OPERATOR INCLUDE: 1. THE ABILITY TO WARP A SECTOR OR QUADRANT. 2. FIRE TORPEDOES TO A SECTOR LOCATION. 3. FIRE PHASERS WITHIN A QUADRANT. 4. INVOKE AN AIMING AID. 5. REPAIR DAMAGE. 6. MISCELLANEOUS MAINTENANCE FUNCTIONS. HARDWARE REQUIRED: 11K DECIMAL OF BACKGROUND CORE; HP2600, 2615, 2616, OR 2640 CRT TERMINALS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: (1) COMPILE THE MAIN PROGRAM INTO THE RTE LOAD-AND-GO AREA USING THE FTN4 COMPILER. (2) ASSEMBLE THE TWO ASMB ROUTINES INTO THE LG AREA. (3) COMPILE SEGMENTS 1-6 INTO THE LG AREA. (4) ON,LOADR,99,,,1,2 FOR AUTOMATIC SEGMENTED LOAD OF PROGRAM STAR AND ITS SIX SEGMENTS, STAR1 THRU STAR6. **RUN INSTRUCTIONS: TURNON SEQUENCE: ON,STAR,P1,P2 WHERE P1 = INPUT LU NUMBER P2 = OUTPUT LU NUMBER IF P1 = 0, INPUT IS FROM LU NUMBER 1 IF P2 = 0, OUTPUT IS ON INPUT LU DEVICE I/O IS CONVERSATIONAL WITH CRT. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE LISTING **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: (1) STARTREK IS CAPABLE OF I/O TO SEVERAL TYPES OF CRT TERMINALS. IN RESPONSE TO "ENTER TYPE OF OUTPUT TERMINAL:", THE USER SHOULD RESPOND WITH: 00 FOR HP2600 CRT 15 FOR HP2615 MINIBEE CRT TERMINAL 16 FOR HP2616 SUPERBEE CRT IF THE CONTROL CODES FOR THE HP2640 TERMINAL ARE THE SAME AS THOSE FOR THE HP2616 TERMINAL, THEN STARTREK WILL ALSO WORK FOR THE 2640 TERMINAL. (2) THE PROGRAM WILL OUTPUT SPECIAL VIDEO CONTROL CODES AND CURSOR SENSE COMMANDS FOR THE HP2616 TERMINAL WHICH INCREASE SPEED AND IMPROVE COSMETIC PERFORMANCE OF THE PROGRAM. F00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ECART **PROGRAM TITLE: ECARTE CARD GAME **REVISION? YES **PACKAGE: 6 **CATEGORY: 1 **KEYWORDS: GAMES **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: RTE **MEMORY REQUIREMENTS: 8K WORDS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: ECARTE IS A TWO HANDED CARD GAME IN WHICH ONE IS PITTED AGAINST THE COMPUTER. A PLAYER RECEIVES FIVE CARDS, A CARD IS TURNED TO FIX THE TRUMP SUIT, AND THE OBJECT IS TO WIN A SPECIFIED NUMBER OF TRICKS. THE PROGRAM IS CONVERSATIONAL AND IT WILL OPTIONALLY PRINT OUT THE GAME RULES AND INSTRUCTIONS FOR PLAY. ECARTE IS RELATED TO THE CARD GAMES EUCHRE, NAPOLEON, SPOIL FIVE, AND ITS VARIANT FORTY-FIVE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SOURCES FILE# 4: SOURCES **LOAD INSTRUCTIONS: PROGRAM IS COMPILED, LOADED AND RUN IN THE USUAL MANNER. NOTE THAT THE PROGRAM IS NOT SEGMENTED. **RUN INSTRUCTIONS: TO EXECUTE ECART, ENTER THE FOLLOWING COMMAND: RU, ECART, LUN WHERE LUN IS THE LOGICAL UNIT NUMBER OF THE TERMINAL FROM WHICH THE PROGRAM IS RUN. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: LITERATURE REFERENCE "HOYLE'S MODERN ENCYCLOPEDIA OF CARD GAMES", WALTER B. GIBSON, DOUBLEDAY, 1974, PAGE 105. SPECIAL CONSIDERATIONS A. SHUFFLING THE CARDS THE TIME BASE GENERATOR IS USED IN CONNECTION WITH A RANDOM NUMBER GENERATOR SO THAT WHENEVER THE PROGRAM IS RUN, DIFFERENT HANDS WILL BE DEALT. B. CHEATING IT IS IMPOSSIBLE FOR THE USER TO CHEAT AS THE COMPUTER CHECKS ALL INPUT FOR VALIDITY. IF ANY ERRORS ARE FOUND, A MESSAGE IS ISSUED, AND THE USER MUST RE-ENTER THE DATA CORRECTLY. ON THE OTHER HAND, ONE CAN REST ASSURED THAT THE COMPUTER ALWAYS MAKES VALID PLAYS. FURTHER, THE DECK IS NOT STACKED IN THE COMPUTER'S FAVOR. SHOULD ONE WISH TO STOP THE PROGRAM DURING A GAME, TYPE IN STOP IN ANSWER TO THE COMPUTER PROMPT. IF ONE IS RUNNING THE PROGRAM FROM A CRT TERMINAL, IT MAY BE USEFUL TO REDISPLAY THE CONTENTS OF ONE'S HAND. TO DO THIS, TYPE IN HAND IN ANSWER TO THE COMPUTER'S PROMPT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE COMPUTER CHECKS ALL USER INPUT FOR ERRORS. SHOULD ANY BE FOUND, THE COMPUTER ISSUES A SELF-EXPLANATORY ERROR MESSAGE AND ALLOWS THE USER TO RE-ENTER THE DATA. **MISCELLANEOUS: F00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BIORM **PROGRAM TITLE: BIORHYTHM PLOTTER **REVISION? YES **PACKAGE: 6 **CATEGORY: 1 **KEYWORDS: GAMES **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: RTE-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PROGRAM BIORM PLOTS ONE MONTH BIO-RHYTHM CHARTS. THE PROGRAM ASKS WHETHER A LARGE OR SMALL BIO-CHART IS WANTED. SMALL IS 28 X 43 WIDE AND LARGE IS 55 X 75 CHAR WIDE. THEN THE NECESSARY DATES ARE PROMPTED FOR AND THE CHART IS PRINTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: SAMPLE BIORHYTHM PLOT **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: *RU,BIORM,LU,L1 WHERE: LU INTERACTIVE LOGICAL UNIT L1 LIST OUTPUT LOGICAL UNIT **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SELF-EXPLANATORY **MISCELLANEOUS: THE LIST OUTPUT DRIVER IS ASSUMED TO ACCEPT A TRAILING UNDERBAR OR BACK ARROW (ASCII OCTAL 137) AS A COMMAND NOT TO FURNISH CARRIAGE RETURN AND LINE FEED FOR MULTIPLE WRITE REQUESTS PER LINE. F00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SKI **PROGRAM TITLE: DOWNHILL SKI GAME IN GRAPHICS/1000 **REVISION? NO **PACKAGE: 6 **CATEGORY: **KEYWORDS: GAMES GRAPHIC TERMINAL PLOTTER **LANGUAGES: FTN4 **COMPUTER TYPE: M-SERIES **OPERATING SYSTEMS: RTE-III RTE-IVA RTE-IVB **MEMORY REQUIREMENTS: 1*19K PARTITION, LARGER IF MORE THAN ONE TYPE GRAPHICS DEVICE **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE SKI GAME IS AN INTERACTIVE GRAPHICS PROGRAM THAT DISPLAYS A DOWN- HILL SKI RACE COURSE ON A GRAPHICS DEVICE AND ALLOWS THE USER TO INTER- ACTIVELY CONTROL THE MOTION OF THE SKIER THROUGH THE COURSE. THE SKI GAME REQUIRES A 2648A GRAPHICS TERMINAL TO CONTROL THE SKIER'S MOTION WITH THE GRAPHICS CURSOR. THE DISPLAY MAY BE ON THE SAME TERMINAL OR ON ANY OTHER GRAPHICS OUTPUT DEVICE SUPPORTED BY GRAPHICS/1000. THE SKI GAME REQUIRES THE HP 92840A GRAPHICS/1000 SUBSYSTEM AND A USER WRITTEN DEVICE LINK TABLE AS DESCRIBED IN THE GRAPHICS/1000 USER MANUAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: &SKI -- COMPOSITE SOURCE FOR THE SKI GAME **LOAD INSTRUCTIONS: SPECIFY LARGE BACKGROUND (OP,LB) RELOCATE THE COMPILED SOURCE CODE (RE,%SKI) RELOCATE THE DEVICE LINK TABLE (RE,%DLTBL) AS DESCRIBED IN THE GRAPHICS/1000 MANUAL SEARCH THE GRAPHICS LIBRARY (SE,%GPS) END **RUN INSTRUCTIONS: RU,SKI[,TERMINAL LU] THE SKI GAME WILL ASK IF YOU WANT THE OUTPUT ON A DEVICE OTHER THAN THE TERMINAL, ANSWER YES OR NO IF THE ANSWER IS YES THE GAME WILL ASK FOR THE ID,LU OF THE GRAPHICS OUTPUT DEVICE. THE ID NUMBER IS AS DESCRIBED IN THE GRAPHICS/1000 MANUAL AND IS THE INDEX INTO THE DEVICE LINK TABLE. THE CONVENTIONS USED IN THIS PROGRAM ARE 2648 ID = 1, AND 9872 ID = 3. OTHER GRAPHICS DEVICE ID'S ARE DON'T CARES. NEXT THE GAME WILL ASK FOR A COURSE CODE. THIS IS AN INTEGER WHICH SERVES AS A RANDOMIZER SEED FOR THE COURSE GENERATOR. ENTER A POSITIVE INTEGER BETWEEN 1 AND 63. NEXT THE GAME WILL ASK YOU TO DIGITIZE THE LOWER LEFT AND UPPER RIGHT CORNERS OF THE DRAWING SURFACE IF THE OUTPUT DEVICE IS NOT A 2648. DIGITIZE THE RESPECTIVE CORNERS AS DESCRIBED IN THE GRAPHICS/1000 MANUAL UNDER THE INTERACTIVE VIEWP COMMAND. NEXT THE GAME WILL ASK YOU FOR YOUR ABILITY FACTOR. ENTER AN INTEGER BETWEEN 1 AND 5 WHICH CONTROLS THE RELATIVE SPEED OF THE SKIER. NEXT THE GAME WILL SAY HIT RETURN TO START! CONTROL THE SKIER USING THE LEFT AND RIGHT GRAPHICS CURSOR CONTROLS ON THE 2648 TERMINAL. GUIDE THE SKIER THROUGH THE GATES IN A LEFT AND DOWN DIRECTION. TURNING THE SKIER SLOWS HIS SPEED. THE SKIER WILL ALWAYS ACCELERATE IN THE DOWNWARD DIRECTION AND MAINTAIN HIS CONSTANT LEFT OR RIGHT SPEED. PLAY THE GAME AND PRACTICE! SEE YOU IN THE WINTER OLYMPICS! **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE GRAPHICS/1000 MANUAL FOR ANY GRAPHICS ERRORS **MISCELLANEOUS: X00101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ISORT **PROGRAM TITLE: ORDERING A FIXED POINT ARRAY. **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: SORT ARRAY FIXED POINT **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 433 WITH EXTERNAL SUBPROGRAMS (157 WITHOUT). **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ARRANGES A FIXED POINT SINGLE-DIMENSION ARRAY IN ASCENDING OR DESCENDING ORDER. THE ORIGINAL ARRANGEMENT OF DATA IS DESTROYED. THIS SUBROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES AND TEST DATA. **LOAD INSTRUCTIONS: STANDARD PROCEDURES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: THE ENCLOSED TEST PROGRAM READS 14 DATA POINTS ON 2 RECORDS IN A 7(6X,I4) FORMAT. **PROGRAM DESCRIPTION: CALL ISORT (IBEG, NEND, IAORD, IARAY) PARAMETER TYPE DESCRIPTION IBEG INTEGER SUBSCRIPT OF NUMBER IN ARRAY WITH WHICH ORDERING BEGINS. NEND INTEGER SUBSCRIPT OF NUMBER IN ARRAY WITH WHICH ORDERING ENDS. IAORD INTEGER IF POSITIVE - ARRAY WILL BE PUT IN ASCENDING ORDER; IF NEGATIVE OR ZERO - ARRAY WILL BE PUT IN DESCENDING ORDER. IARAY INTEGER NAME OF ARRAY TO BE ORDERED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X00201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: ARANK **PROGRAM TITLE: RANKING A FLOATING POINT ARRAY. **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: FLOATING POINT ARRAY SORT **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 921 WITH EXTERNAL SUBPROGRAMS (545 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ARRANGES A FLOATING POINT SINGLE-DIMENSION ARRAY IN ASCENDING OR DESCENDING ORDER. THE ORIGINAL ARRANGEMENT OF DATA IS NOT DESTROYED. THIS SUBROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES AND TEST DATA **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: THE ENCLOSED TEST PROGRAM READS 14 DATA POINTS ON TWO RECORDS IN A 7(2X,F8.2) FORMAT. **PROGRAM DESCRIPTION: CALL ARANK(LAST, IAORD, ARRAY, JSML, LARGE) PARAMETER TYPE DESCRIPTION LAST INTEGER SUBSCRIPT OF LAST NUMBER IN ARRAY. IAORD INTEGER IF POSITIVE OR NEGATIVE, ARRAY WILL BE RANKED FOR SMALLEST TO LARGEST AND THEN FROM LARGEST TO SMALLEST; IF ZERO, ARRAY WILL ONLY BE RANKED FROM SMALLEST TO LARGEST. ARRAY REAL NAME OF ARRAY TO BE RANKED. JSML INTEGER THE OUTPUT ARRAY FOR SMALLEST TO LARGEST RANKING SCHEME. LARGE INTEGER OUTPUT ARRAY FOR LARGEST TO SMALLEST RANKING SCHEME. THE ORIGINAL ARRAY (XARAY) IS NOT DESTROYED UPON RETURNING TO THE MAIN PROGRAM. THE VALUE OF ZERO MUST BE EXCLUDED FROM THE ORIGINAL ARRAY UNLESS THAT ARRAY HAS BOTH POSITIVE AND NEGATIVE VALUES. IF THE USER SETS IAORD = 0 IN THE MAIN PROGRAM, THE ARRAY JLARGE MAY BE DIMENSIONED TO ONE (1) IN THE MAIN PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X00301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SORTM **PROGRAM TITLE: ORDERING A FLOATING POINT ARRAY **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: SORT FLOATING POINT ARRAY **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 495 WITH EXTERNAL SUBPROGRAMS (100 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ARRANGES A FLOATING POINT SINGLE-DIMENSION ARRAY IN ASCENDING ORDER. THE ORIGINAL ARRANGEMENT OF DATA IS DESTROYED. THIS SUBROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES AND TEST DATA **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: THE ENCLOSED TEST PROGRAM READS IN 15 DATA POINTS ON THREE RECORDS IN A F10.3 FORMAT. **PROGRAM DESCRIPTION: CALL SORTM (X, NUM) PARAMETER TYPE DESCRIPTION X REAL ARRAY NAME NUM INTEGER NUMBER OF ELEMENTS IN THE ARRAY **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X00401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FIELD **PROGRAM TITLE: FIELD SORT IN ALPHABETIC/NUMERIC ORDER **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: SORT ASCII INTEGER **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS **MEMORY REQUIREMENTS: 521 WITH EXTERNAL SUBPROGRAMS (277 WITHOUT). **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ALGOL PROCEDURE SORTS ASCII OR INTEGER DATA INTO ALPHABETIC AND/OR NUMERIC ORDER. THE USER SPECIFIES THE NUMBER OF RECORDS TO BE SORTED, THE RECORD LENGTH, AND THE FIELD ON WHICH THE SORT IS TO BE PERFORMED. THE REMAINING DATA IN EACH RECORD IS CARRIED ALONG UNCHANGED BY FIELD- SORT. SORTING IS CONDUCTED (IN PLACE), CONSEQUENTLY THE SORTED DATA REPLACES THE UNSORTED DATA IN CORE STORAGE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: STANDARD PROCEDURES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE PROCEDURE IS CALLED BY USING ITS NAME: FIELDSORT (M, N, RECORDLENGTH, SORTLENGTH, FIELDSTART); THE PARAMETERS ARE AS FOLLOWS: M: A TWO-DIMENSIONAL ARRAY DECLARED IN THE USER'S MAIN PROGRAM AS FOLLOWS: INTEGER ARRAY M [0:P, 1:RECORDLENGTH]; WHERE P IS THE NUMBER OF RECORDS AND RECORDLENGTH IS THE NUMBER OF WORDS IN EACH RECORD. (ALL RECORDS MUST BE OF THE SAME LENGTH.) N: THE NUMBER OF RECORDS TO BE SORTED <= P (AS DECLARED ABOVE). RECORDLENGTH: THE NUMBER OF WORDS THAT COMPRISES EACH RECORD (EQUAL TO RECORDLENGTH DECLARED AS ABOVE). SORTLENGTH: THE NUMBER OF WORDS IN A GIVEN RECORD TO BE SORTED BEGINNING WITH THE WORD DESIGNATED BY FIELDSTART. FIELDSTART: THE RECORD NUMBER ON WHICH THE FIELD TO BE SORTED BEGINS. * FIELDSORT TREATS ALPHA DATA AS INTEGERS. HENCE IT CANNOT SORT 2 WORD FLOATING POINT DATA. IT IS NECESSARY TO MAKE THE 1ST DIMENSION OF THE ARRAY FROM ZERO TO THE NUMBER OF RECORDS TO BE SORTED (N). FIELDSORT USES THE ZEROTH RECORD FOR ITS HOUSEKEEPING. IF TWO ENTRIES OF THE ARRAY HAVE IDENTICAL SORTING KEYS, THEY WILL BE ADJACENT IN THE RESULTING ARRAY. THIS ALGORITHM IS EXTREMELY FAST. THERE ARE FASTER ALGORITHMS KNOWN (E.E. QUICKSORT) BUT NOT MANY. THIS IS ONE OF THE BETTER ALGORITHMS SINCE THERE ARE NO CASES WHICH ARE PATHOLOGICAL. IT IS FAR SUPERIOR TO THE BUBBLE SORT AND HEAP SORT TECHNIQUES. THE USER MAY USE THIS PROCEDURE AS AN EXTERNAL PROCEDURE BY MAKING THE DECLARATION IN HIS MAIN PROGRAM: PROCEDURE FIELSORT (M,N,RECORDLENGTH, SORTLENGTH, FIELDSTART); VALUE N, RECORDLENGTH, SORTLENGTH, FIELDSTART; INTEGER N, RECORDLENGTH, SORTLENGTH, FIELDSTART; INTEGER ARRAY M; CODE; AND COMPILING THE ENCLOSED PROCEDURE SEPARATELY FROM THE MAIN PROGRAM USING THE CONTROL STATEMENT ENCLOSED. IF THE PROCEDURE IS TO BE INTERNAL TO THE PROGRAM WITH THE REST OF THE USER'S PROCEDURES, HE SHOULD COMPILE IT AS PART OF THE PROGRAM AS USUAL DELETING THE "HPAL" CONTROL STATEMENT ENCLOSED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X00501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FIND **PROGRAM TITLE: ASCII STRING SEARCH FROM DISC FILE **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: ASCII DISC FILES SEARCH CHARACTER **LANGUAGES: FTN2 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M **MEMORY REQUIREMENTS: 3837 WITH EXTERNAL SUBPROGRAMS (1097 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM SEARCHES A SOURCE FILE ON THE DISC FOR ALL OCCURRENCES OF A SPECIFIED STRING OF CHARACTERS AS INPUT FROM THE SYSTEM CONSOLE OR BATCH DEVICE. THE MAXIMUM STRING LENGTH IS 72 CHARACTERS. THE LOCATED STRINGS ARE LISTED ON THE LINE PRINTER OR SYSTEM CONSOLE BY LINE NUMBER AND POSITION WITHIN THE LINE, AND THE LINE ITSELF IS PRINTED. NON-PRINTING CHARACTERS ARE LISTED IN OCTAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: STANDARD PROCEDURES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE SOURCE LISTING. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE SOURCE LISTING. **MISCELLANEOUS: THE FOLLOWING CHARACTERS MAY NOT BE USED IN A SEARCH STRING: RUBOUT LEADING : CONTROL "A" (FUNCTIONS AS A CHARACTER DELETE) X00601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: EFMP FILE SORT ASCII/INTEGER **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: SORT FILES ASCII INTEGER **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: OPERATING IN A 16K DOS-M ENVIRONMENT THIS PACKAGE SORTS INTEGER OR ASCII EFMP FILES IN ASCENDING ORDER. UP TO NINE KEYS CAN BE SELECTED IN ORDER OF SORTING SIGNIFICANCE. THESE KEYS ARE IDENTIFIED BY WORD NUMBER WITHIN EACH RECORD OF THE FILE, AND CAN BE A MAXIMUM OF FORTY WORDS LONG. THE RESULT OF A SORT IS A TAG EFMP FILE WHICH CONSISTS OF A ONE WORD RECORD FOR EACH RECORD IN THE SORTED FILE (MAXIMUM 32767). WHEN ACCESSED SEQUENTIALLY, THE TAG FILE PROVIDES THE ORDER IN WHICH THE ORIGINAL FILE MUST BE READ TO BE SORTED AS SPECIFIED. THE SORT PROGRAM CAN BE RUN INDEPENDENTLY OR CAN BE CALLED BY A FORTRAN PROGRAM WHICH PASSES THE NECESSARY PARAMETERS VIA THE COMMON AREA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES **LOAD INSTRUCTIONS: STANDARD PROCEDURES **RUN INSTRUCTIONS: PROVIDE ANY EFMP FILE. PREPARE A PAPER TAPE OR PUNCHED CARD WITH THE NECESSARY PARAMETERS, OR ENTER THE PARAMETERS AT RUN TIME. THE FORMAT IS THE SAME FOR EACH METHOD OF INPUT: ONE STRING OF 74 CHARACTERS. CHARACTERS CONTENTS 1-6 NAME OF FILE TO BE SORTED. 7-9 FIRST WORD OF KEY #1. 10-12 LAST WORD OF KEY #2. . . . 55-57 FIRST WORD OF KEY #9. 58-60 LAST WORD OF KEY #9. 61-65 SECURITY CODE OF FILE TO BE SORTED. 66 NUMBER OF KEYS. 67-68 TOTAL NUMBER OF WORDS IN ALL KEYS COMBINED. 69-74 OUTPUT FILE NAME. THE FIRST AND LAST WORDS OF EACH KEY SHOULD BE SPECIFIED BY A NUMBER FROM 1 TO THE TOTAL NUMBER OF WORDS IN A RECORD. KEY 1 MIGHT BE FROM WORD 1 OR WORD 8 OF A RECORD. ONLY THE NUMBER OF KEYS SPECIFIED IN CHARACTER 66 WILL BE USED, ALL OTHERS WILL BE IGNORED. WHEN PARAMETERS ARE GIVEN BY TTY THE LAST 3 CHARACTERS WILL BE TYPED ON TOP OF ONE ANOTHER, SINCE ONLY 72 CHARACTERS PER LINE ARE AVAILABLE AND 74 HAVE TO BE ENTERED PLUS A CARRIAGE RETURN, LINE FEED. EXECUTE THE PROGRAM SORT (: PR, SORT). OR SORT CAN BE CALLED FROM ANOTHER PROGRAM PASSING THE PARAMETERS VIA COMMON. SEE PROGRAM DESCRIPTION. **INPUT/OUTPUT EXAMPLES: IF NO EFMP FILE IS AVAILABLE TO TEST SORT, THE PROGRAM ALFA CAN BE USED TO FILL A SAMPLE FILE CALLED SOFIL WITH ASCII STRINGS. THE SECURITY CODE OF SOFIL IS 0. **PROGRAM DESCRIPTION: USE OF TAG FILE THE SORT PROGRAM MIGHT HAVE OUTPUT A NEW FILE IDENTICAL TO THE ORIGINAL FILE, EXCEPT SORTED IN THE ORDER SPECIFIED. HOWEVER, THE TAG FILE WAS CHOSEN INSTEAD BECAUSE IT ALLOWS A USER TO HAVE VERY LARGE FILES SORTED IN SEVERAL WAYS WITHOUT RUNNING OUT OF DISC SPACE. THE FOLLOWING GIVES A MORE DETAILED EXPLANATION OF HOW THE TAG FILE IS USED. SUPPOSE THE MASTER FILE HAS FOUR RECORDS OF FOUR WORDS EACH: 5 . . . 8 . . . 4 . . . 1 . . . IF A SORT IS PERFORMED ON THE FIRST WORD OF EACH RECORD, THE RESULTING TAG FILE IS FOUR ONE-WORD RECORDS: 00004 00003 00001 00002 THE TAG FILE CAN NOW BE READ SEQUENTIALLY. THE CONTENTS OF EACH RECORD OF THE TAG FILE CAN BE USED AS THE "RECORD NUMBER" TO BE ACCESSED FROM THE MASTER FILE. EXAMPLE: CALL EXEC (24, 6, TAGFI, 0, NUMBRE, ERROR) 0 = SEQUENTIAL READ OF TAG FILE, LEAVING THE CONTENT OF EACH RECORD IN "NUMBRE". CALL EXEC (24, 6, MASTE, NUMBRE, BUFFER, ERROR) RANDOM ACCESS OF "MASTE" FILE IN THE ORDER SPECIFIED BY THE TAG FILE. CALLING SEQUENCE - FORTRAN CALL EXEC (10, INAME) INAME IS AN ARRAY OF 3 WORDS WHICH CONTAINS THE PROGRAM NAME "SORT". THE PARAMETERS MUST BE PASSED VIA 40 WORDS IN COMMON. THE ORDER SHOULD BE AS FOLLOWS: WORDS CONTENTS EX. CONTENTS 1-9 BLANK 10 999 999 11-13 NAME OF FILE TO BE SORTED SOFIL 14 FIRST WORD OF KEY #1 1 15 LAST WORD OF KEY #1 8 16 FIRST WORD OF KEY#2 25 17 LAST WORD OF KEY #2 28 18 FIRST WORD OF KEY #3 9 19 LAST WORD OF KEY #3 10 . . . 30 FIRST WORD OF KEY #9 0 31 LAST WORD OF KEY #9 0 32 SECURITY CODE 12345 33 NUMBER OF KEYS 3 34 TOTAL NUMBER OF WORDS IN ALL KEYS 14 35-37 NAME OF PROGRAM TO TO RETURN TO REPOR 38-40 NAME OF OUTPUT FILE SOTAG CALLING SORT FROM A FORTRAN PROGRAM PROVIDES ONE ADDED CAPABILITY. THE USER CAN SPECIFY TO WHICH PROGRAM HE WANTS SORT TO RETURN. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE 3 PROGRAMS ARE INDEPENDENT, AND THEY NEVER RETURN TO THE PREVIOUS ONE. THE COMMUNICATION IS ONLY ONE WAY: SORT TO SORT1 TO SORT2. ANY OF THE 3 CAN FIND SITUATIONS THAT COULD ABORT THE SORT. (WRONG PARAMETERS, NOT ENOUGH SPACE IN DOS WORK-AREA, NOT ENOUGH SPACE IN EFMP PLATE, DUPLICATE FILE NAME, EFMP ERRORS, ETC.) IN ALL CASES A MESSAGE IS GIVEN, AND THE SORT HAS TO BE RUN AGAIN AFTER APPROPRIATE CORRECTIONS (TO PARAMETERS, DISC SPACE, SECURITY CODE, DVP FILE NAME) ARE MADE. **MISCELLANEOUS: SINCE SORT USED ALL THE WORD AREA OF DOS-M WITH THE PN000 FILE, THIS HAS TO BE PURGED WHEN THE SORT FINISHES AND A MESSAGE IS GIVEN TO THIS RESPECT. LEAVE ENOUGH SPACE IN THE WORK AREA AND THE EFMP PACK BEFORE SORT STARTS TO PREVENT ABNORMAL TERMINATIONS. IN AN ENVIRONMENT OF SEVERAL DRIVES, THE OUTPUT FILE WOULD BE PUT IN AN EFMP PACK DIFFERENT THAN THAT OF THE INPUT FILE, SINCE THE REQUEST FOR SPACE IS IN "ANY AVAILABLE PLATE". SECURITY CODE FOR THE OUTPUT FILE = 0. X00701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: BYTE DATA MANIPULATION WITH MICROCODED ROUTINES **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: BYTE MICROCODE COMPARE **LANGUAGES: MICROASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE OF SEVEN MICROCODED ROUTINES ALLOWS USERS TO: A. MOVE WORDS FROM CORE TO CORE (NON-INTERRUPTABLE AND INTERRUPTABLE). B. LOAD AN 8-BIT BYTE IN THE RIGHT HALF OF THE A REGISTER (BITS 7-0). C. STORE A BYTE INTO CORE. D. MOVE A STRING OF BYTES FROM CORE TO CORE (INTERRUPTABLE). E. SEARCH A BYTE STRING FOR A PARTICULAR BYTE (INTERRUPTABLE). F. COMPARE BYTE STRINGS. THE LOCATION AND DESIGN OF THE PRIMARY AND SECONDARY MAPPING TABLES AND THE PLACEMENT OF THESE MICROPROGRAMS ARE COMPATIBLE WITH THE HP12907A A FAST FORTRAN PROCESSOR (FFP) MICROCODE OPTION. THIS PACKAGE REQUIRES THE HP12908 A/B WCS BOARD OR BURNED PROM CHIPS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCES FILE# 3: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: ASSEMBLE THE MICROPROGRAM. ASSEMBLE THE TEST PROGRAM. SET THE ENTRY MODULE TO 1 IF THE FLOATING POINT PACKAGE IS PRESENT AND 2 IF FLOATING POINT IS NOT IN THE SYSTEM. LOAD THE WCS BOARD USING THE DEBUG EDITOR OR WCS UTILITY PROGRAM OR BY CALLING THE WCS DRIVER. LOAD THE TEST PROGRAM TO CHECK THE MICROPROGRAMS. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: ASSEMBLE AND LOAD THE TEST PROGRAM AS DESCRIBED IN LOAD INSTRUCTIONS. RUN THE PROGRAM WITH: :PR,CHECK IF IT RUNS CORRECTLY IT WILL PRINT: XXACTITX **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: LITERATURE REFERENCE 2100 COMPUTER MICROPROGRAMMING GUIDE 5951-3028 2100 COMPUTER MICROPROGRAMMING SOFTWARE 02100-90133 2100 COMPUTER DOS MICROPROGRAMMING SOFTWARE 02100-90146 BCS DRIVER SMALL PROGRAMS MANUAL 12908-90003 DOS DRIVER SMALL PROGRAMS MANUAL 12908-90004 12908A OPERATING & SERVICE MANUAL 12908-90001 12908B OPERATING & SERVICE MANUAL 12908-90011 SPECIAL CONSIDERATIONS FOR 2100 CONTAINING MICROINSTRUCTION DECODER 2 CARD (A4), P/N 02100- 60022. 1. THE CJMP MICRO-ORDER DOES NOT FUNCTION IN MODULES 2 AND 3. 2. IF THE MICROCODE IS USED IN MODULES 2 OR 3 THE FOLLOWING CHANGES MUST BE MADE: A. REPLACE THE MICROINSTRUCTION IN LOCATIONS 1051, 1107 & 1252 (Q CJMP S3 INTRX) WITH (NOP NOP IOR NOP NOP NOP) B. REPLACE THE MICROINSTRUCTION IN LOCATION 1121 (B CJMP S2 MOVBI) WITH (B NOP IOR S2 NOP NOP) THE LOCATION AND DESIGN OF THE PRIMARY AND SECONDARY MAPPING TABLES AND THE PLACEMENT OF THE MICROPROGRAMS ARE COMPATIBLE WITH THE HP SUPPORTED FAST FORTRAN PROCESSOR (FFP) MICROCODE OPTION. THE BYTE DATA MANIPULATION MICROCODE FITS INTO THE UNUSED LOCATIONS IN THE FFP OPTION; IT ALSO DUPLICATES SOME OF THE FFP CODE. THE FOLLOWING BYTE DATA MANIPULATION CODE IS ALSO IN THE FFP OPTION: LOCATION: 1012 1013 1020 1240 THROUGH AND INCLUDING 1261 1367 THROUGH AND INCLUDING 1377 X00801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SFRFD **PROGRAM TITLE: CONVERSION OF ASCII INTO ASCII AND/OR INTEGER FIELDS. **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 2 **KEYWORDS: CONVERSION ASCII INTEGER FORMATTING **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: SUBROUTINE 'SFRFD' IS A FORTRAN CALLABLE, RELOCATABLE ASSEMBLY LANGUAGE ROUTINE WHICH CAN CONVERT A STRING OF ASCII CHARACTERS INTO ASCII AND/OR INTEGER FIELDS. OPTIONALLY IT WILL ALSO READ THE ASCII STRING VIA A DOS-M EXEC CALL FROM A DEVICE WHOSE LOGICAL UNIT NUMBER IS SPECIFIED IN ONE OF THE ARGUMENTS. ALSO PASSED AS ARGUMENTS INTO THIS ROUTINE IS AN ARRAY SPECIFYING THE TYPE AND LENGTH OF FIELDS BETWEEN DELIMITERS, THE SIZE OF THE INPUT BUFFER, AND THE DELIMITER SEPARATING THE INTEGER AND/OR ASCII FIELDS. SUBROUTINE 'SFRFD' ALSO CHECKS FOR ILLEGAL INTEGERS AND INTEGER OVERFLOW. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SFRFD SOURCE FILE# 3: TEST **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE FORMAT OF THE FORTRAN CALLING PROGRAM IS: CALL SFRFD (JFUN,LUN,ITYPE,INBUF,IBSIZ,IRESL,IDLM) JFUN - FUNCTION NUMBER 0 = READS, CONVERTS, AND PRINTS ERROR MESSAGES IF ANY. 1 = READS, CONVERTS, AND PRINTS NO ERROR MESSAGES. 2 = CONVERTS, AND PRINTS ERROR MESSAGES IF ANY. 3 = CONVERTS, AND PRINTS NO ERROR MESSAGES. LUN - LOGICAL UNIT OF INPUT DEVICE. IF JFUN IS 2 OR 3 THE LUN IS MEANINGLESS. ITYPE - AN ARRAY SPECIFYING INTO WHAT FIELDS TO CONVERT THE ASCII CHARACTERS. -N = FOR AN ASCII FIELD THE TYPE # IS NEGATIVE THE NUMBER OF CHARACTERS. IF MORE THAN N CHARACTERS ARE READ IN THE GIVEN FIELD THEN ALL CHARACTERS AFTER CHARACTER #N IS IGNORED UNTIL A DELIMITER OR END OF BUFFER IS FOUND. IF LESS THAN N CHARACTERS ARE READ THEN BLANKS ARE STORED FOR ALL REMAINING CHARACTERS (SEE IRESL BELOW). +N = FOR AN INTEGER FIELD THE TYPE # IS POSITIVE. 0 = FOR END OF BUFFER THE TYPE IS ZERO. INBUF - INPUT BUFFER CONTAINING THE ASCII CHARACTERS INPUT (JFUN = 2,3) OR THAT WILL BE READ BY THIS ROUTINE (JFUN = 0, OR 1). BSIZE - BUFFER CONTAINING THE RESULTS. INTEGERS USE ONLY ONE WORD IN THE RESULTS BUFFER. IF THE MAXIMUM NUMBER OF ASCII CHARACTERS WAS AN ODD NUMBER THEN A BLANK IS STORED TO FILL THE LAST WORD. THEREFORE ALL FIELDS END ON A WORD. IDLM - THE DELIMITER SEPARATING THE STRINGS IN THE ASCII INPUT. A BLANK WILL END AN INTEGER STRING IN WHICH CASE THE PROGRAM WILL IGNORE ALL FOLLOWING CHARACTERS UNTIL A DELIMITER OR END OF BUFFER IS FOUND. IMPORTANT: IF ANY ERRORS ARE FOUND WHEN CONVERTING AN INTEGER FIELD THEN THE PROGRAM RETURNS IMMEDIATELY AFTER THE CALL STATEMENT. IF NO ERROR, THEN THE RETURN ADDRESS IS INCREMENTED BY ONE. THEREFORE, IN A FORTRAN PROGRAM THERE NEEDS TO BE A GO TO STATEMENT IMMEDIATELY FOLLOWING THE CALL STATEMENT. IF CODING AN ASSEMBLY LANGUAGE THEN THERE MUST BE A JUMP STATEMENT IMMEDIATELY FOLLOWING THE JSB AND DEF STATEMENTS. JUMP IF AN ILLEGAL INTEGER OR INTEGER OVERFLOW IS FOUND. IF THE ERROR WAS "ILLEGAL INTEGER" THEN THE B-REGISTER IS 0. IF THE ERROR WAS "INTEGER OVERFLOW" THEN THE B-REGISTER IS 1. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE FORTRAN FORMATTER CAN BE AVOIDED IF ONLY INTEGER AND ASCII INFOR- MATION IS INPUT AND OUTPUT. SUBROUTINE SFRFD CAN BE USED FOR INPUT. AN INTEGER TO ASCII CONVERTER TOGETHER WITH DOS-M EXEC CALLS CAN BE USED TO OUTPUT. X00901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HEWLETT-PACKARD IDEAL COMMERCIAL SUBROUTINE LIBRARY **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 3 **KEYWORDS: ACCOUNTING LIBRARY PAYROLL INTEGER FORMATTING **LANGUAGES: ASMB FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 3337 WITH EXTERNAL SUBPROGRAMS (1273 WITHOUT) **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SET OF 18 ASSEMBLY AND 1 FORTRAN ROUTINES PROVIDE THE MEANS OF BUSINESS APPLICATION PROGRAMMING WITH LITTLE FORTRAN EXPERIENCE, MAKING HP FORTRAN AN EASY AND POWERFUL COMMERCIAL LANGUAGE. THIS SET IS EASY TO LEARN, EASY TO USE, EFFICIENT, FAST, ACCURATE, AND PROVIDES EDITING CAPABILITIES. ERROR DETECTION IS PROVIDED IN APPROPRIATE ROUTINES. PROGRAMS WERE DEVELOPED USING DOS-M SYSTEM, BUT COULD RUN IN A 4K BCS ENVIROMENT. THERE ARE DOUBLE INTEGER ADD, SUBTRACT, MULTIPLY, AND DIVIDE ROUTINES, MOVE INTEGER TO/FROM DOUBLE INTEGER, CONVERT DOUBLE INTEGER TO/FROM FLOATING POINT, A1 TO/FROM A2/A3 FORMAT CONVERSIONS, DETERMINE THE SIGN OF A DOUBLE INTEGER, AND SINGLE AND DOUBLE INTEGER TO A1 FORMAT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: 1) PURGE SOURCE AND RELOCATABLE NAMES OF ROUTINES GIVEN IN THE TABLE BELOW. TABLE 1 PROGRAM NAME SOURCE FILE NAME RELOCATABLE NAME AD & SD SADS RADSD MD SMD RMD DD SDD RDD MIDI SMIDI RMIDI MDII SMDII RMDII DFLT SDFLT RDFLT DFIX SDFIX RDFIX MASI,MADI SASID RASID CRAM,UNCM SA131 RA131 JINT SJINT RJINT MSIA,MDIA SIDI RSIDI PACK SPACK RPACK UNPK SUNPK RUNPK DATSW SDATA RDATA CLEAR SCLEA RCLEA DITST SDITS TDITS 2) COMPILE FORTRAN PROGRAMS CLEAR & DITST AND STORE UNDER RELOCATABLE NAME GIVEN IN TABLE. TYPICAL :JO :JF,(SOURCE FILE NAME) :PROG,FTN4,2,99 :ST,R,(RELOCATABLE NAME) 3) ASSEMBLE ALL OTHER ROUTINES AND STORE UNDER THEIR RELOCATABLE NAME GIVEN IN TABLE. TYPICAL :JO :JF,(SOURCE FILE NAME) :PROG,ASMB,2,99 :ST,R,(RELOCATABLE NAME) 4) :PROG,LOADR,2,,,1,1 RDITS,RADSD,RMD,RDD,RMIDI,RASID,RDFLT,RDFIX,RPACK,RUNPK RA131,RJINT,RDATA,RCLEA,RMDII,RSIDI /E :ST,P **RUN INSTRUCTIONS: TO RUN TEST PROGRAM :PROG,DITST SWITCH SETTINGS CONTROL TEST ROUTINE SEE COMMENTS IN SOURCE LISTING OF SDITS **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IN CONJUNCTION WITH THE HP COMMERCIAL SUBROUTINE PACKAGE FULL EDITING CAPABILITIES ARE AVAILABLE TO THE USER. EASY: VARIABLE FORMAT STATEMENTS ARE UNNECESSARY SINCE WHOLE LINES ARE OUTPUTTED IN A1 FORMAT. FREE FORMAT READING ANYWHERE WITHIN A SPECIFIED FIELD IS PROVIDED FOR EASE OF NUMERICAL DATA INPUT AND FOR DECREASING THE POSSIBILITIES OF MISPUNCHED DATA. EFFICIENT: CHOICE OF BOTH SINGLE (+/-32767) OR DOUBLE (+/-2, 147,483,647) INTEGER VARIABLES USING ONE OR TWO OF CORE STORAGE. TEN 9 COLUMN NUMBERS USE JUST 20 WORDS. SPEED: DOUBLE INTEGER ARITHMETIC USES SPEED OF DOUBLE WORD MACHINE INSTRUCTIONS. ACCURATE: DOUBLE INTEGER PROVIDES PENNY ACCURACY UP TO $21,474,836.47, IN TWO 16 BIT WORDS. COMPACT: ALPHANUMERIC DATA CAN BE STORED UP TO 3 CHAR./WORD. A BASIC SET OF 40 ALPHANUMERIC CHARACTERS ARE ESTABLISHED IN A TABLE WITHIN "CRAM". CONVERTIBLE: DOUBLE INTEGERS CONVERT TO FLOATING POINT & VICE VERSA. EDITING: EDITING FORMATS PROVIDE INTEGER AND DOUBLE INTEGER OUTPUT NOTATION WITH LEADING ZEROS OR ZERO SUPRESSION. NUMBERS EDITED TO HAVE A DECIMAL POINT HAVE THE LEADING ZEROS SUPRESSED. EASY TO LEARN: HP IDEAL IS EASY TO LEARN AND APPLY. ERROR DETECTION: ERROR DETECTION IS PROVIDED IN APPROPRIATE ROUTINES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X01001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: PAYROLL PACKAGE **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 4 **KEYWORDS: PAYROLL **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: DOS-III **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PAYROLL PACKAGE USES IMAGE-B FILE STRUCTURE. THE EMPLOYEE RECORD FILE, COIN AND NOTE ANALYSIS AND PAYROLL TOTALS FILE ARE (SET-UP), USING THE IMAGE SCHEMA APPROACH. THIS PROVIDES EASE OF ACCESS TO THE FILES ON DISC AND ALLOWS FOR A VARIETY OF REPORTS TO BE WRITTEN USING THE IMAGE SCHEMA APPROACH. THIS PROVIDES EASE OF ACCESS TO THE FILES ON DISC AND ALLOWS FOR A VARIETY OF REPORTS TO BE WRITTEN USING (QUERY) REPORT GENERATOR. NO REPORTS AS SUCH ARE INCLUDED IN THIS PACKAGE BUT ANYONE FAMILIAR WITH QUERY REPORT FACILITIES CAN WRITE THESE REPORTS USING THE SCHEMA AS SET OUT IN THIS PACKAGE. SOFTWARE REQUIREMENTS INCLUDE IMAGE 2100. HARDWARE REQUIREMENTS INCLUDE 24K CORE, HIGH SPEED READER; TTY; DMA; AND 7900 DISC. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: SOURCE FILE# 10: SOURCE **LOAD INSTRUCTIONS: THE IMAGE RELOCATABLE MODULES MUST BE LOADED ON DISCS (USING PR, LOADR) ALL THE FTN4 SOURCE TAPES SHOULD BE COMPILED AND LOADED AS OUTLINED ON PAGE 3. **RUN INSTRUCTIONS: THE PROGRAM RUNS INTERACTIVELY. WHERE PAPERTAPE INPUT IS EXPECTED, THE PROGRAM PAUSES AND THE USUAL :GO INSTR. ALLOWS THE PROGRAM TO CONTINUE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PACKAGE CONSISTS OF 3 PROGRAMS, ALL WRITTEN IN FORTRAN IV SOURCE TO ENABLE SIMPLE MODIFICATIONS WHICH WILL BE REQUIRED WHERE: 1) CHANGE OF PAYSLIP FORMAT IS NECESSARY 2) WHERE TAX CALCULATIONS DIFFER FROM NEW ZEALAND RULES THE PROGRAMS IN THIS PACKAGE DO THE FOLLOWING: 1) HGPAY PREPRINTS BLANK STATIONARY WITH PAYSLIPS PROGRAM HEADINGS 2) PAY1 HAS THE FOLLOWING OPTIONS: PROGRAM A) EDIT OF INPUT PAPERTAPE FOR USE IN AUTO PAYROLL AND PAYSLIP WRITING. B) MANUAL PAYROLL AND PAYSLIP WRITING. ALL DATA ARE TYPED THROUGH THE CONSOLE (TTY) AND OPERATOR IS PROMPTED AS TO WHAT DATA SHOULD BE INDEXED NEXT. C) AUTO PAYROLL AND PAYSLIP WRITING UPDATES EMPLOYEE RECORDS YTD. FIELDS ON DISC ACCUMULATES RUN TOTALS AND NOTE/COIN ANALYSIS. RUN TOTALS ARE ACCUMULATED BY 20 DEPARTMENTS. THIS COULD BE EXTENDED TO 99 BY MODIFYING THE CAPACITY IN THE SCHEMA. NOTE AND COIN ANALYSIS IS ALSO BY DEPARTMENTS. FOR EACH EMPLOYEE THESE TOTALS ARE UPDATED ON DISC. BEING PART OF THE SCHEMA THEY ARE EASILY PRINTED OUT AT THE END OF THE PAYROLL RUN USING "QUERY" FIND COMMAND. SEE SAMPLE PRINTOUTS IF THIS IS NOT CLEAR. 3) TOTCL CLEARS THE DEPART TOTALS AND NOTE/COIN ANALYSIS FIGURES. PROGRAM THIS PROGRAM SHOULD BE RUN EACH TIME BEFORE RUNNING PAY1, OTHERWISE THIS PAY'S FIGURES ARE ADDED TO LAST WEEKS TOTALS OR LAST MONTH TOTALS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SPECIAL CONSIDERATIONS THE PAYSLIP HAS BEEN PLANNED TO ALLOW PRINTING ON THE TTY. IF A LINE PRINTER IS USED, GREATER OUTPUT CAN BE EXPECTED. X01101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RPG0 **PROGRAM TITLE: PSEUDO REPORT GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 6 **KEYWORDS: DATA BASE REPORTS FILES **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM, OPERATING IN A DOS-M ENVIRONMENT, ENABLES THE USER TO DEFINE, CONSTRUCT, EDIT, AND LIST ASCII DATA FILES IN SELECTIVE OUTPUT FORMATS. FLEXIBLE DATA BASE DEFINITION ENABLES THE USER TO SPECIFY HOW MANY DATA FIELDS AS WELL AS THE NUMBER OF CHARACTERS PER FIELD UP TO A MAXIMUM LOGICAL RECORD LENGTH OF 256 CHARACTERS, KEY FIELDS MAY ALSO BE SPECIFIED AND LATER USED IN SELECTED LISTINGS. CONSIDERABLE FLEXIBI- LITY IS PROVIDED IN THE TYPE OF LISITNG THAT MAY BE PRODUCED FROM THE DATA IN AN EXISTING DATA FILE. TYPICAL APPLICATIONS ARE PRODUCTION OF MAILING LISTS, PERSONNEL LISTS, ETC. NOTE THAT THE NON-EAU LIBRARY MUST BE USED FOR CORRECT OPERATION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **RUN INSTRUCTIONS: SEE EXTENDED DOCUMENTATION FILE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEE EXTENDED DOCUMENTATION FILE. **MISCELLANEOUS: 1. RECOGNITION OF "SORT" AS A VALID COMMAND WAS IMPLEMENTED IN THE MAIN PROGRAM (RPG0) ONLY AS A PRELIMINARY STEP TO AID ANY USER DESIRING TO WRITE HIS OWN SORT ROUTINE. TO IMPLEMENT THIS COMMAND, THE USER MUST WRITE HIS OWN SORT . SEE PAGE 19 FOR HELPFUL IMFORMATION ON THE INTERNAL FORMAT OF ID FILE SECTOR. 2. THE USER FILE READ/WRITE EXEC CALL IS USED THROUGHOUT THE PROGRAM IN EXECUTING ALL ID AND DATA FILE I/O WITHOUT CHECKING FIRST TO DETERMINE IF THE GIVEN FILE EXISTS. THEREFORE, TO AVOID THE DOS-M ERROR MESSAGE, FI NNNNN, MAKE SURE ONLY EXISTING FILE NAMES ARE ENTERED IN RESPONSE TO QUESTIONS OF THE FORM: I.D. FILE NAME? DATA FILE NAME? IF UNSURE AS TO THE NAMES RESERVED AT AN EARLIER DATE FOR FILE NAMES, LIST THE USER DIRECTORY TO REFRESH YOUR MEMORY BEFORE STARTING THIS PROGRAM. SEE FOR CORRECT EXECUTION (PAGE 3) FOR ORIGINAL ALLOCATION OF DATA FILES. 3. WHEN THE LENGTH OF A LOGICAL RECORD IS GREATER THAN A PHYSICAL RECORD (IE. GREATER THAN AN 80 COLUMN CARD OF A 72 CHARACTER TELE- TYPE LINE), CONTINUE DATA INPUT ON SUCCEEDING PHYSICAL RECORDS UP TO A MAXIMUM OF 256 CHARACTERS. END THE LOGICAL RECORD WITH THE EOR CHARACTER DETERMINED AT DEFINE COMMAND TIME. 4. EACH FIELD WITHIN A LOGICAL RECORD MUST NOT OVERLAP PHYSICAL RECORDS AS MAY HAPPEN WITH CARD INPUT WHERE PHYSICAL RECORD LENGTH IS FIXED. WHEN THIS SITUATION OCCURS THE USER SHOULD DEFINE THE LENGTH OF THE CURRENT FIELD TO FILL OUT THE 80 COLUMN CARD IN RESPONSE TO THE NUMBER CHAR? QUERY AT DEFINE COMMAND TIME. THE NEXT FIELD BEGINS IN COLUMN ONE OF THE NEXT CARD/PHYSICAL RECORD. OBVIOUSLY THE USER IS RESTRICTED TO A MAXIMUM OF FIELD LENGTH OF 80 CHARACTERS WHEN USING FIXED PHYSICAL RECORDS FOR HIS INPUT MEDIA. 5. USER HEADING LINES, ENTERED DURING EXECUTION OF FLIST COMMAND, ARE LIMITED TO A MAXIMUM OF 72 CHARACTERS PER LINE. 6. WHEN USING SLIST COMMAND TO PRODUCE SEQUENCED LISTINGS THE FOLLOWING FACTS MUST BE REMEMBERED. THE # OF CHARACTERS THE PROG WILL ATTEMPT TO PRINT FOR EACH RECORD WILL BE THE # OF CHARACTERS PER LOGICAL RECORD FOR THE FILE CONCERNED. THIS NUMBER IS GIVEN IN A STATUS REPORT LISTING (STATUS COMMAND) FOR THE CONCERNED FILE. IF THE TOTAL # OF CHARACTERS PER LOGICAL RECORD EXCEEDS THE # OF COLUMNS AVAILABLE ON THE LINE- PRINTER, TRUNCATION OR WRAPAROUND OF EACH RECORD PRINTED WILL OCCUR. 7. WHEN USING THE FLIST COMMAND TO PRODUCE FORMATTED LISTINGS IT IS MUCH EASIER TO PREPARE THE FLIST INPUT PARAMETER LIST ON CARDS OR PAPER TAPE RATHER THAN ENTERING THEM VIA THE SYSTEM TELETYPE KEY- BOARD, ESPECIALLY IF THE CONCERNED LISTING IS TO BE PRODUCED ON MORE THAN ONE OCCASION. ONE EASY WAY TO DO THIS IS TO STORE THE PARAMETER LIST IN A DOS-M SS TYPE FILE; EDITING MAY THEN BE DONE USING THE SYSTEM. THE :DU,4,NAME DIRECTIVE MAY THEN BE USED TO DUMP THIS PARAMETER LIST FILE TO THE PUNCH FOR INPUT TO PROGRAM RPG0. 8. THE KEY FIELD LIST OPTION (DURING FLIST COMMAND EXECUTION) OPERATES ON ALL KEY FIELDS AND KEY FIELD DATA VALUES AS AN "AND" FUNCTION. IN OTHER WORDS WHEN MORE THAN ONE KEY FIELD IS BEING KEYED ON, A RECORD WILL NOT BE PRINTED UNLESS ALL KEY FIELDS SPECIFIED CONTAIN DATA EQUAL TO THE RESPECTIVE KEY FIELD VALUES SPECIFIED. X01201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PERTH **PROGRAM TITLE: PERT FOR DOS/DOS-M **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 7 **KEYWORDS: MANAGEMENT PERFORMANCE **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: DOS-M DOS **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PERT FOR DOS/DOS-M 'PERT' (PROGRAM EVALUATION AND REVIEW TECHNIQUE) CALCULATES THE MINIMUM TIME REQUIRED TO COMPLETE A PROJECT FROM THE INITIAL EVENT TO THE FINAL EVENT. THE PROJECT CAN BE REPRESENTED GRAPHICALLY BY A NETWORK CONSISTING OF EVENTS AND ACTIVITIES. AN EVENT IS DEFINED AS A POINT IN TIME INDICATING THE BEGINNING OR THE END OF A SPECIFIC ACTIVITY, BUT NOT THE EXECUTION OF IT. AN ACTIVITY THEN, IS A PART OF THE PROJECT WHICH DEVELOPS BETWEEN TWO SUCCESSIVE EVENTS. THE PROGRAM COMPUTES THE MINIMUM TIME (TE) NEEDED FOR EACH EVENT; THE MAXIMUM TIME (TL) EACH EVENT CAN TAKE WITHOUT INCREASING THE (TE) OF THE FINAL EVENT; AND THE DIFFERENCE (SLACK) BETWEEN THE TWO TIMES (S = TL - TE). WITH THESE FIGURES, A CRITICAL PATH OF THE PROJECT CAN BE IDENTIFIED, WITH S=0 FOR ALL EVENTS. ANY DELAY OF AN ACTIVITY ON THE CRITICAL PATH CAUSES AN INCREASE IN THE TIME DURATION OF THE ENTIRE PROJECT. PERT WILL ACCEPT UP TO 3000 ACTIVITIES AND 2500 EVENTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: :PR, PERTH, N1, N2, N3, N4 WHERE N1 = NUMBER OF THE FINAL EVENT N2 = INPUT LOGICAL UNIT N3 = OUTPUT LOGICAL UNIT N4 = OUTPUT OPTION AS DEFINED BELOW: OPTION 0: LIST OF TE FOR EACH EVENT OPTION 1: LIST OF TE AND TL FOR EACH EVENT OPTION 2: LIST OF TE, TL AND S FOR EACH EVENT OPTION 3: LIST OF TE, TL, AND S FOR EACH EVENT AND ONE LIST OF EVENTS IN ASCENDING ORDER OF S **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: INPUT DATA CONSISTS OF ONE RECORD FOR EACH OF N ACTIVITIES. EACH RECORD CONTAINS THREE INTEGERS IN FREE FIELD FORMAT: THE FINAL EVENT OF THE ACTIVITY THE INITIAL EVENT OF THE ACTIVITY THE MEDIUM TIME NEEDED FOR EXECUTING THE ACTIVITY CARRIAGE RETURN, LINE FEED THE LAST RECORD SHOULD BE 0,0,0. X01301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GAMMA **PROGRAM TITLE: GAMMA FUNCTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE GAMMA FUNCTION BY MEANS OF THE RECURSION RELATION AND POLYNOMIAL APPROXIMATION METHOD. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL GAMMA (XX, GX', IER) PARAMETER TYPE DESCRIPTION XX REAL THE ARGUMENT FOR THE GAMMA FUNCTION. GX REAL THE RESULTANT GAMMA FUNCTION VALUE. IER INTEGER RESULTANT ERROR CODE WHERE: IER=0 NO ERROR IER=1 XX IS WITHIN .000001 OF BEING A NEGATIVE INTEGER IER=2 XX GT 34, OVERFLOW, GX SET TO 1.0E3 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X01401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BESK **PROGRAM TITLE: K BESSEL FUNCTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS FILTER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE K BESSEL FUNCTION FOR A GIVEN ARGUMENT AND ORDER. IN THE METHOD USED, THE ROUTINE COMPUTES ZERO ORDER AND FIRST ORDER BESSEL FUNCTIONS, USING SERIES APPROXIMATIONS. THE ROUTINE THEN COMPUTES THE (NTH) ORDER FUNCTION BY MEANS OF RECURRENCE RELATION. ACCURACY IS USUALLY FIVE DECIMAL PLACES; IN WORST-CASE SITUATIONS ACCURACY IS FOUR DECIMAL PLACES. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL BESK (X, N, BK, IER) PARAMETER TYPE DESCRIPTION X REAL THE ARGUMENT OF THE K BESSEL FUNCTION DESIRED. N INTEGER THE ORDER OF THE K BESSEL FUNCTION DESIRED. BK REAL THE RESULTANT K BESSEL FUNCTION. IER INTEGER RESULTANT ERROR CODE WHERE: IER=0 NO ERROR IER=1 N IS NEGATIVE IER=2 X IS ZERO OR NEGATIVE IER=3 X .GT. 80, MACHINE RANGE EXCEEDED IER=4 BK .GT. 10**38 NOTE: N MUST BE GREATER THAN OR EQUAL TO ZERO. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X01501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BESI **PROGRAM TITLE: I BESSEL FUNCTION ROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS FILTER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE (I) BESSEL FUNCTION FOR A GIVEN ARGUMENT AND ORDER. THE ROUTINE USES EITHER SERIES OR ASYMPTOTIC APPROXIMATION, DEPENDING ON THE RANGE OF THE ARGUMENT. ACCURACY IS USUALLY FIVE DECIMAL PLACES; IN WORST-CASE SITUATIONS ACCURACY IS FOUR DECIMAL PLACES. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL BESI (_X, N, BI, IER) PARAMETER TYPE DESCRIPTION X REAL THE ARGUMENT OF THE I BESSEL FUNCTION DESIRED. N INTEGER THE ORDER OF THE I BESSEL FUNCTION DESIRED. BI REAL THE RESULTANT I BESSEL FUNCTION. IER INTEGER RESULTANT ERROR CODE WHERE: IER=0 NO ERROR IER=1 N IS NEGATIVE IER=2 X IS NEGATIVE IER=3 UNDERFLOW, BI .LT. 1.E-38, BI SET TO 0.0 IER=4 OVERFLOW, X .GT. 80 WHERE X .GT. N NOTE: N AND X MUST BE GREATER THAN OR EQUAL TO ZERO. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X01601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: BESY **PROGRAM TITLE: Y BESSEL FUNCTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS FILTER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE (Y) BESSEL FUNCTION FOR A GIVEN ARGUMENT AND ORDER. THE ROUTINE USES THE RECURRENCE RELATION AND POLYNOMIAL APPROXIMATION TECHNIQUE. ACCURACY IS USUALLY FIVE DECIMAL PLACES; IN WORST-CASE SITUATIONS ACCURACY IS FOUR DECIMAL PLACES. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL BESY (X, N, BY, IER) PARAMETER TYPE DESCRIPTION X REAL THE ARGUMENT OF THE Y BESSEL FUNCTION DESIRED. N INTEGER THE ORDER OF THE Y BESEL FUNCTION DESIRED. BY REAL THE RESULTANT Y BESSEL FUNCTION. IER INTEGER RESULTANT ERROR CODE WHERE: IER=0 NO ERROR IER=1 N IS NEGATIVE IER=2 X IS NEGATIVE OR ZERO IER=3 BY HAS EXCEEDED MAGNITUDE OF 10**70 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: NOTE: VERY SMALL VALUES OF X MAY CAUSE THE RANGE OF THE LIBRARY FUNCTION ALOG TO BE EXCEEDED. X MUST BE GREATER THAN ZERO. N MUST BE GREATER THAN OR EQUAL TO ZERO. X01701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MXMN **PROGRAM TITLE: LOCATE MAXIMUM-MINIMUM INTEGER **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: ARRAY COMPARE SEARCH **LANGUAGES: ASSEMBLY **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: .1K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE DETERMINES THE MAXIMUM AND MINIMUM OF VALUES IN AN INTEGER ARRAY, AND INDICATES THE POSITIONS IN THE ARRAY OF THESE TWO VALUES. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE ROUTINE ".ENTR" FROM THE FORTRAN ALGOL LIBRARY IS NECESSARY TO RUN THIS ROUTINE. **RUN INSTRUCTIONS: FORTRAN STATEMENT: CALL MXMN (I1, I2, I3, I4, I5) I1 IS NAME OF ARRAY TO BE EXAMINED I2 = NUMBER OF ELEMENTS IN ARRAY +1 <= I2 <= 32767 (LIMITED BY MEMORY SIZE) I3, I4, I5 ARE DUMMY VARIABLES FOR RESULTS RETURNED VALUES: I2 = POSITION IN ARRAY OF MAXIMUM I3 = POSITION IN ARRAY OF MINIMUM I4 = MAXIMUM VALUE I5 = MINIMUM VALUE **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X01801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: LLSQ **PROGRAM TITLE: SOLUTION OF LINEAR LEAST SQUARES PROBLEMS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE SOLVES LINEAR LEAST SQUARES PROBLEMS. IN ACCOMPLISHING THIS, THE ROUTINE MINIMIZES THE EUCLIDEAN NORM OF B-A*X, WHERE (A) IS AN M-BY-N MATRIX WITH (M) NOT LESS THAN (N). IN THE SPECIAL CASE WHERE M=N, SYSTEMS OF LINEAR EQUATIONS MAY BE SOLVED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL LLSQ (A, B, M, N, L, X, IPIV, EPS, IER, AUX) PARAMETER TYPE DESCRIPTION A REAL M BY N COEFFICIENT MATRIX (DESTROYED). B REAL M BY L RIGHT HAND SIDE MATRIX (DESTROYED). M INTEGER ROW NUMBER OF MATRICES A AND B. N INTEGER COLUMN NUMBER OF MATRIX A, ROW NUMBER OF MATRIX X. L INTEGER COLUMN NUMBER OF MATRICES B AND X. X REAL N BY L SOLUTION MATRIX. IPIV INTEGER INTEGER OUTPUT VECTOR OF DIMENSION N WHICH CONTAINS INFORMATION ON COLUMN INTERCHANGES IN MATRIX A (SEE REMARK #3) EPS REAL INPUT PARAMETER WHICH SPECIFIES A RELATIVE TOLERANCE FOR DETERMINATION OF RANK OF MATRIX A. IER INTEGER A RESULTING ERROR PARAMETER. AUX REAL AUXILIARY STORAGE ARRAY OF DIMENSION MAX(2*N,L). ON RETURN FIRST L LOCATIONS OF AUX CONTAIN THE RESULTING LEAST SQUARES. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: (1) NO ACTION BESIDES ERROR MESSAGE IER=-2 IN CASE M LESS THAN N. (2) NO ACTION BESIDES ERROR MESSAGE IER=-1 IN CASE OF ZERO-MATRIX A. (3) IF RANK K OF MATRIX A IS FOUND TO BE LESS THAN N BUT GREATER THAN 0, THE PROCEDURE RETURNS WITH ERROR CODE IER=K INTO CALLING PROGRAM. THE LAST N=K ELEMENTS OF VECTOR IPIV DENOTE THE USELESS COLUMNS OF MATRIX A. THE REMAINING USEFUL COLUMNS FORM A BASE OF MATRIX A. (4) IF THE PROCEDURE WAS SUCCESSFUL, ERROR PARAMETER IER IS SET TO 0. X01901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QTFG **PROGRAM TITLE: TRAPEZOIDAL INTEGRATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR INTEGRAL VALUES FOR A GIVEN GENERAL TABLE OF ARGUMENT AND FUNCTION VALUES. BEGINNING WITH Z(1)=0, VECTOR (Z) IS EVALUATED BY MEANS OF THE TRAPEZOIDAL RULE (SECOND ORDER FORMULA). THE ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QTFG (X, Y, Z, NDIM) PARAMETER TYPE DESCRIPTION X REAL THE INPUT VECTOR OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH X OR Y. NDIM INTEGER THE DIMENSION OF VECTORS X, Y, Z. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X02001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QTFE **PROGRAM TITLE: TRAPEZOIDAL INTEGRATION EQUAL INTERVAL ARGUMENT **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR OF INTEGRAL VALUES FOR A GIVEN EQUIDISTANT TABLE OF FUNCTION VALUES. BEGINNING WITH Z(1)=0, VECTOR (Z) IS EVALUATED BY MEANS OF THE TRAPEZOIDAL RULE (SECOND ORDER FORMULA). THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QTFE (H, Y, Z, NDIM) PARAMETER TYPE DESCRIPTION H REAL THE INCREMENT OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH Y. NDIM* INTEGER THE DIMENSION OF VECTORS Y AND Z. *NO ACTION IN CASE NDIM IS LESS THAN 1. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X02101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QSF **PROGRAM TITLE: SIMPSON'S & NEWTON'S 3/8 INTEGRATION (EQUAL INTERVAL ARG.) **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR OF INTEGRAL VALUES FOR A GIVEN EQUIDISTANT TABLE OF FUNCTION VALUES. THE INPUT VECTOR OF FUNCTION VALUES MUST CONSIST OF AT LEAST (3) ELEMENTS. BEGINNING WITH Z(1)=0, VECTOR (Z) IS EVALUATED BY MEANS OF SIMPSON'S RULE, NEWTON'S 3/8 RULE, OR A COMBINATION OF THESE TWO RULES. TRUNCATION ERROR, COMPUTED BY THE FOURTH-ORDER METHOD, IN MOST INSTANCES IS OF THE ORDER H**5. IN THE WORST-CASE SITUATION, HOWEVER, THE TRUNCATION ERROR OF Z(2) IS OF THE ORDER H**4. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QSF (H,Y,Z,NDIM) PARAMETER TYPE DESCRIPTION H REAL THE INCREMENT OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH Y. NDIM INTEGER THE DIMENSION OF VECTORS Y AND Z. *NO ACTION IN CASE NDIM LESS THAN 3. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X02201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QHFG **PROGRAM TITLE: HERMITIAN FOURTH-ORDER INTEGRATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR OF INTEGRAL VALUES FOR A GIVEN GENERAL TABLE OF ARGUMENT, FUNCTION AND DERIVATIVE VALUES. USING THE HERMITIAN FOURTH-ORDER INTEGRATION FORMULA, VECTOR Z IS EVALUATED BEGINNING WITH Z(1)=0. THE ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QHFG (X, Y, DERY, Z, NDIM) PARAMETER TYPE DESCRIPTION X REAL THE INPUT VECTOR OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. DERY REAL THE INPUT VECTOR OF DERIVATIVE VALUE. Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH X, Y, OR DERY. NDIM* INTEGER THE DIMENSION OF VECTORS X, Y, DERY, Z. *NO ACTION IN CASE NDIM LESS THAN 1. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X02301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QHFE **PROGRAM TITLE: HERMITIAN 4TH ORDER INTEGRATION, EQUAL INTERVAL ARGUMENT **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR OF INTEGRAL VALUES FOR A GIVEN EQUIDISTANT TABLE OF FUNCTION AND DERIVATIVE VALUES. BEGINNING WITH Z(1)=0, VECTOR Z IS EVALUATED BY MEANS OF THE HERMITIAN FOURTH-ORDER INTEGRATION FORMULA. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QHFE (H, Y, DERY, Z, NDIM) PARAMETER TYPE DESCRIPTION H REAL THE INCREMENT OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. DERY REAL THE INPUT VECTOR OF DERIVATIVE VALUES. Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH Y OR DERY. NDIM* INTEGER THE DIMENSION OF VECTORS Y, DERY, Z. *NO ACTION IN CASE NDIM LESS THAN 1. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X02401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QHSG **PROGRAM TITLE: HERMTIIAN 6TH ORDER INTEGRATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR OF INTEGRAL VALUES FOR A GIVEN GENERAL TABLE OF ARGUMENT, FUNCTION, FIRST DERIVATIVE, AND SECOND DERIVATIVE VALUES. BEGINNING WITH Z(1)=0, VECTOR (Z) IS EVALUATED BY MEANS OF THE HERMITIAN SIXTH ORDER INTEGRATION FORMULA. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QHSG (X, Y, FDY, SDY, Z, NDIM) PARAMETER TYPE DESCRIPTION --------- ---- ----------- X REAL THE INPUT VECTOR OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. FDY REAL THE INPUT VECTOR OF FIRST DERIVATIVE. SDY REAL THE INPUT VECTOR OF SECOND DERIVATIVE Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH X, Y, FDY OR SDY. NDIM* INTEGER THE DIMENSION OF VECTORS X, Y, FDY, SDY, Z. *MUST NOT BE LESS THAN 1. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S PROGRAM. X02501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: QHSE **PROGRAM TITLE: HERMITIAN 6TH ORDER INTEGRATION EQUAL INTERVAL ARGUMENT **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE COMPUTES THE VECTOR OF INTEGRAL VALUES FOR A GIVEN EQUIDISTANT TABLE OF FUNCTION, FIRST DERIVATIVE, AND SECOND DERIVATIVE VALUES. BEGINNING WITH Z(1)=0, VECTOR Z IS EVALUATED BY MEANS OF THE HERMITIAN SIXTH-ORDER INTEGRATION FORMULA. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL QHSE (H, Y, FDY, SDY, Z, NDIM) PARAMETER TYPE DESCRIPTION --------- ---- ----------- H REAL THE INCREMENT OF ARGUMENT VALUES. Y REAL THE INPUT VECTOR OF FUNCTION VALUES. FDY REAL THE INPUT VECTOR OF FIRST DERIVATIVE. SDY REAL THE INPUT VECTOR OF SECOND DERIVATIVE. Z REAL THE RESULTING VECTOR OF INTEGRAL VALUES. Z MAY BE IDENTICAL WITH Y, FDY, OR SDY. NDIM* INTEGER THE DIMENSION OF VECTORS Y, FDY, SDY, Z. *MUST NOT BE LESS THAN 1. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X02601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PRQD **PROGRAM TITLE: ROOTS OF A REAL POLYNOMIAL **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: POLYNOMIAL **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: USING THE QUOTIENT-DIFFERENCE ALGORITHM WITH DISPLACEMENT, THIS ROUTINE CALCULATES ALL REAL AND COMPLEX ROOTS OF A POLYNOMIAL EXPRESSION. THIS ROUTINE IS FORTRAN CALLABLE. IT IS POSSIBLE TO EXECUTE THIS SUBROUTINE IN A 4K COMPUTER BY MAKING USE OF TWO OTHER CONTRIBUTED PROGRAMS: HP 22394 CORE SAVING TELEPRINTER I/0 HP 22297 OFFLINE RELOCATING LOADER **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL PRQD (C, IC, Q, E, POL, IR, IER) PARAMETER TYPE DESCRIPTION --------- ---- ----------- C REAL COEFFICIENT VECTOR OF GIVEN POLYNOMIAL COEFFICIENTS ARE ORDERED FROM LOW TO HIGH, THE GIVEN COEFFICIENT VECTOR GETS DIVIDED BY THE LAST NONZERO TERM. IC INTEGER DIMENSION OF VECTOR C. Q REAL WORKING STORAGE OF DIMENSION IC ON RETURN Q CONTAINS COMPLEX PARTS OF ROOTS. POL REAL WORKING STORAGE OF DIMENSION IC ON RETURN POL CONTAINS THE COEFFICIENTS OF THE POLYNOMIAL WITH CALCULATED ROOTS. THIS RESULTING COEFFICIENT VECTOR HAS DIMENSION IR+1, COEFFICIENTS ARE ORDERED FROM LOW TO HIGH. IR INTEGER NUMBER OF CALCULATED ROOTS. NORMALLY IR IS EQUAL TO DIMENSION IC MINUS ONE. IER INTEGER RESULTING ERROR PARAMETER. NOTE: THE REAL PART OF THE ROOTS IS STORED IN Q(1) UP TO Q(IR). CORRESPOND- ING COMPLEX PARTS ARE STORED IN E(1) UP TO E(IR). THE FINAL COMPARISON BETWEEN GIVEN AND CALCULATED COEFFICIENT VECTOR IS PERFORMED ONLY IF ALL ROOTS HAVE BEEN CALCULATED. THE MAXIMAL RELATIVE ERROR OF THE COEFFICIENT VECTOR IS RECORDED IN Q(IR+1). **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IER=0 NO ERRORS IER=1 NO CONVERGENCE WITH REASONABLE TOLERANCE IER=2 POLYNOMIAL IF DEGENERATE IER=3 SUBROUTINE ABANDONED DUE TO ZERO DIVISOR. IER=4 NO S-FRACTON EXISTS IER=-1 CALCULATED COEFFICIENT VECTOR HAS < 3 CORRECT DIGITS. **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X02701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RADD **PROGRAM TITLE: ADD ROWS OF MATRICES **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE ADDS CORRESPONDING ELEMENTS OF A ROW OF ONE MATRIX TO A ROW OF ANOTHER MATRIX. THE OUTPUT MATRIX MUST BE A GENERAL MATRIX, AND NOT BE STORED IN THE SAME LOCATION AS THE INPUT MATRIX UNLESS THE INPUT MATRIX ALSO IS GENERAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL RADD (A, IRA, R, IRR, N, M, MS, L) PARAMETER TYPE DESCRIPTION --------- ---- ----------- A REAL NAME OF INPUT MATRIX IRA INTEGER ROW IN MATRIX A TO BE ADDED TO ROW IRR OF MATRIX R. R REAL NAME OF OUTPUT MATRIX IRR INTEGER ROW IN MATRIX R WHERE SUMMATION IS DEVELOPED. N INTEGER NUMBER OF ROWS IN A M INTEGER NUMBER OF COLUMNS IN A AND R. MS INTEGER ONE DIGIT NUMBER FOR STORAGE MODE OF MATRIX A WHERE: 0 - GENERAL 1 - SYMMETRIC 2 - DIAGONAL L INTEGER NUMBER OF ROWS IN R CALL LOC (IRA, J, IA, N, M, MS) PARAMETER TYPE DESCRIPTION --------- ---- ----------- J INTEGER A COLUMN COUNTER RANGING FROM I TO M IR INTEGER ELEMENT OF ARRAY R IA INTEGER ELEMENT OF ARRAY A **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS SUBROUTINE ADDS CORRESPONDING ELEMENTS OF A ROW OF ONE MATRIX TO A ROW OF ANOTHER MATRIX. THE OUTPUT MATRIX MUST BE A GENERAL MATRIX. THE OUTPUT MATRIX MUST NOT BE STORED IN THE SAME LOCATION AS THE INPUT MATRIX UNLESS THE INPUT MATRIX IS GENERAL. USES SUBROUTINE LOC TO LOCATE AN INPUT ELEMENT FOR ANY MATRIX STORAGE MODE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS FOR A AND R TO SUIT THE USER'S APPLICATION. X02801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: MFGR **PROGRAM TITLE: RANK AND BASIS OF A MATRIX **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: FOR A GIVEN (M X N) MATRIX, THE FOLLOWING CALCULATIONS ARE PERFORMED BY THIS ROUTINE: A. DETERMINE RANK AND LINEARLY INDEPENDENT ROWS & COLUMNS (BASIS) B. FACTORIZE A SUBMATRIX OF MAXIMAL RANK. C. EXPRESS NONBASIC ROWS IN TERMS OF BASIC ROWS. D. EXPRESS BASIC VARIABLES IN TERMS OF FREE VARIABLES. THE LEFT HAND TRIANGULAR FACTOR IS NORMALIZED SO THAT THE DIAGONAL CONTAINS ALL 1'S, THUS ALLOWING STORAGE OF THE SUB-DIAGONAL PART. GAUSSIAN ELIMINATION TECHNIQUE IS USED FOR CALCULATION OF THE TRIAN- GULAR FACTORS OF A GIVEN MATRIX. COMPLETE PIVOTING IS BUILT IN. IN THE CASE OF A SINGULAR MATRIX, ONLY THE TRIANGULAR FACTORS OF A SUB- MATRIX OF MAXIMAL RANK ARE RETAINED. THE REMAINING PARTS OF THE RESULTANT MATRIX GIVE THE DEPENDENCIES OF ROWS AND THE SOLUTION OF THE HOMOGENEOUS MATRIX EQUATION A*X=0. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL MFGR (A, M, N, EPS, IRANK, IROW, ICOL) PARAMETER TYPE DESCRIPTION --------- ---- ----------- A REAL GIVEN MATRIX WITH M ROWS AND N COLUMNS, ON RETURN A CONTAINS THE FIVE SUB- MATRICES L,R,H,D,O. M INTEGER NUMBER OF ROWS OF MATRIX A N INTEGER NUMBER OF COLUMNS OF MATRIX A EPS REAL TEST VALUE FOR ZERO AFFECTED BY ROUND- OFF NOISE. IRANK INTEGER RESULTANT RANK OF GIVEN MATRIX. IROW INTEGER INTEGER VECTOR OF DIMENSION M CONTAINING THE SUBSCRIPTS OF BASIC ROWS IN IROW(1)...........IROW(IRANK) ICOL INTEGER INTEGER VECTOR OF DIMENSION N CONTAINING THE SUBSCRIPTS OF BASIC COLUMNS IN ICOL(1) UP TO ICOL(IRANK) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X02901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GELG **PROGRAM TITLE: SOLUTION OF SIMULTANEOUS LINEAR EQUATIONS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: USING GAUSS ELIMINATION WITH COMPLETE PIVOTING, THIS ROUTINE SOLVES A GENERAL SYSTEM OF SIMULTANEOUS LINEAR EQUATIONS. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL GELG (R,A,M,N,EPS,IER) PARAMETER TYPE DESCRIPTION R REAL THE M BY N MATRIX OF RIGHT HAND SIDES. (DESTROYED) ON RETURN R CONTAINS THE SOLUTION OF THE EQUATIONS. A REAL THE M BY N COEFFICIENT MATRIX (DESTROYED). M INTEGER THE NUMBER OF EQUATIONS IN THE SYSTEM. N INTEGER THE NUMBER OF RIGHT HAND SIDE VECTORS. EPS REAL AN INPUT CONSTANT WHICH IS USED AS RELATIVE TOLERANCE FOR TEST ON LOSS OF SIGNIFICANCE. IER INTEGER RESULTING ERROR PARAMETER CODED AS FOLLOWS: IER=0 NO ERROR IER=-1 NO RESULT BECAUSE OF M LESS THAN 1 OR PIVOT ELEMENT AT ANY ELIMINATION STEP EQUAL TO 0. IER=K WARNING DUE TO POSSIBLE LOSS OF SIGNIFI- CANCE INDICATED AT ELIMIMATION STEP K+1, WHERE THE PIVOT ELEMENT WAS <= TO THE INTERNAL TOLERANCE EPS TIMES ABSOLUTELY GREATEST ELEMENT OF MATRIX A. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: NOTE: INPUT MATRICES R AND A ARE ASSUMED TO BE STORED COLUMNWISE IN M*N RESP. M*M SUCCESSIVE STORAGE LOCATIONS. ON RETURN SOLUTION MATRIX R IS STORED COLUMNWISE TOO. THE PROCEDURE GIVES THE RESULTS IF THE NUMBER OF EQUATIONS M IS GREATER THAN 0 AND PIVOT ELEMENTS AT ALL ELIMINATION STEPS ARE DIFFERENT FROM 0. HOWEVER WARNING IER=K - IF GIVEN - INDICATES POSSIBLE LOSS OF SIGNIFICANCE. IN CASE OF A WELL-SCALED MATRIX A AND APPROPRIATE TOLERANCE EPS, IER=K MAY BE INTERPRETED THAT MATRIX A HAS THE RANK K. NO WARNING IS GIVEN IN CASE M=1. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION X03001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GELB **PROGRAM TITLE: SOLUTION OF SIMULTANEOUS LINEAR EQUATIONS - BAND MATRIX **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE SOLVES A SYSTEM OF SIMULTANEOUS LINEAR EQUATIONS WITH A COEFFICIENT MATRIX OF BAND STRUCTURES. TO PRESERVE THE BAND STRUCTURE IN THE REMAINING COEFFICIENT MATRICES, THE SOLUTION IS OBTAINED BY MEANS OF THE GAUSS-ELIMINATION METHOD WITH COLUMN PIVOTING ONLY. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL GELB (R,A,M,N,MUD,MLD,EPS,IER) PARAMETER TYPE DESCRIPTION R REAL M BY N RIGHT HAND SIDE MATRIX (DESTROYED). ON RETURN R CONTAINS THE SOLUTION OF THE EQUATIONS. A REAL M BY M COEFFICIENT MATRIX WITH BAND STRUCTURE (DESTROYED). M INTEGER THE NUMBER OF EQUATIONS IN THE SYSTEM. N INTEGER THE NUMBER OF RIGHT HAND SIDE VECTORS. MUD INTEGER THE NUMBER OF UPPER CODIAGONALS (THAT MEANS CODIAGONALS ABOVE MAIN DIAGONAL). MLD INTEGER THE NUMBER OF LOWER CODIAGONALS (THAT MEANS CODIAGONALS BELOW MAIN DIAGONALS). EPS REAL AN INPUT CONSTANT WHICH IS USED AS RELATIVE TOLERANCE FOR TEST ON LOSS OF SIGNIFICANCE. IER INTEGER RESULTING ERROR PARAMETER CODED AS FOLLOWS: IER=0 NO ERROR IER=-1 NO RESULT BECAUSE OF WRONG INPUT PARAMETERS M, MUD, MLD OR BECAUSE OF PIVOT ELEMENT AT ANY ELIMINATION STEP EQUAL TO 0. IER=K WARNING DUE TO POSSIBLE LOSS OF SIGNIFICANCE INDICATED AT ELIMINATION STEP K+1, WHERE PIVOT ELEMENT WAS LESS THAN OR EQUAL TO THE INTERNAL TOLERANCE EPS TIMES ABSOLUTELY GREATEST ELEMENT OF MATRIX A. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: REMARKS: BAND MATRIX A IS ASSUMED TO BE STORED ROWWISE IN THE FIRST ME SUCCESSIVE STORAGE LOCATIONS OF TOTALLY NEEDED MA STORAGE LOCATIONS, WHERE MA=M*MC-ML*(ML+1)/2 AND ME=MA-MU*(MU+1)/2 WITH MC=MIN(M,1+MUD+MLD), ML=MC-1-MLD, MU=MC-1-MUD. RIGHT HAND SIDE MATRIX R IS ASSUMED TO BE STORED COLUMNWISE IN N*M SUCCESSIVE STORAGE LOCATIONS. ON RETURN SOLUTION MATRIX R IS STORED COLUMNWISE TOO. INPUT PARAMETERS M, MUD, MLD SHOULD SATISFY THE FOLLOWING RESTRICTIONS: MUD NOT LESS THAN ZERO MLD NOT LESS THAN ZERO MUD + MLD NOT GREATER THAN 2*M-2 NO ACTION BESIDES ERROR MESSAGE IER=-1 TAKES PLACE IF THESE RESTRICTIONS ARE NOT SATISFIED. THE PROCEDURE GIVES RESULTS IF THE RESTRICTIONS ON INPUT PARAMETERS ARE SATISFIED AND IF PIVOT ELEMENTS AT ALL ELIMINATION STEPS ARE DIFFERENT FROM 0. HOWEVER WARNING IER=K -@IF GIVEN - INDICATES POSSIBLE LOSS OF SIGNIFICANCE. IN CASE OF A WELL SCALED MATRIX A & APPROPRIATE TOLERANCE EPS, IER=K MAY BE INTERPRETED THAT MATRIX A HAS RANK K. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER DIMENSION STATEMENT TO SUIT USER'S APPLICATION. X03101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GELS **PROGRAM TITLE: SOLUTION OF SIMULTANEOUS LINEAR EQUATIONS SYMMETRIC MATRIX **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX LINEAR EQ. **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE SOLVES A SYSTEM OF SIMULTANEOUS LINEAR EQUATIONS WITH A SYMMETRIC COEFFICIENT MATRIX WHOSE UPPER TRIANGULAR PART IS ASSUMED TO BE STORED COLUMNWISE. TO PRESERVE SYMMETRY IN THE REMAINING COEFFICIENT MATRICES, THE SOLUTION IS OBTAINED BY MEANS OF THE GAUSS- ELIMINATION METHOD WITH COLUMN PIVOTING ONLY. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL GELS (R,A,M,N,EPS,IER,AUX) PARAMETER TYPE DESCRIPTION R REAL M BY N RIGHT HAND SIDE MATRIX (DESTROYED). ON RETURN, R CONTAINS THE SOLUTION OF THE EQUATIONS. A REAL UPPER TRIANGULAR PART OF THE SYMMETRIC M BY N COEFFICIENT MATRIX (DESTROYED). M INTEGER THE NUMBER OF EQUATIONS IN THE SYSTEM. N INTEGER THE NUMBER OF RIGHT HAND SIDE VECTORS. EPS REAL AN INPUT CONSTANT WHICH IS USED AS RELATIVE TOLERANCE FOR TEST OF LOSS OF SIGNIFICANCE. IER INTEGER RESULTING ERROR PARAMETER CODED AS FOLLOWS: IER=0 NO ERROR IER=-1 NO RESULT BECAUSE OF M LESS THAN 1 OR PIVOT ELEMENT AT ANY ELIMINATION STEP EQUAL TO 0. IER=K WARNING DUE TO POSSIBLE LOSS OF SIGNIFICANCE INDICATED AT ELIMINATION STEP K+1 WHERE PIVOT ELEMENT WAS LESS THAN OR EQUAL TO THE INTERNAL TOLERANCE EPS TIMES ABSOLUTELY GREATEST MAIN DIAGONAL ELEMENT OF MATRIX A. AUX REAL AN AUXILIARY STORAGE ARRAY WITH DIMENSION M-1 **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: REMARKS: UPPER TRIANGULAR PART OF MATRIX A IS ASSUMED TO BE STORED COLUMNWISE IN M*(M+1)/2 SUCCESSIVE STORAGE LOCATIONS. RIGHT HAND SIDE MATRIX R COLUMNWISE IN M*N SUCCESSIVE STORAGE LOCATIONS. ON RETURN SOLUTION MATRIX R IS STORED COLUMNWISE TOO. THE PROCEDURE GIVES RESULTS IF THE NUMBER OF EQUATIONS M IS GREATER THAN 0 AND PIVOT ELEMENTS OR ALL ELIMINATION STEPS ARE DIFFERENT FROM 0. HOWEVER WARNING IER=K - IF GIVEN - INDICATED POSSIBLE LOSS OF SIGNIFICANCE. IN CASE OF A WELL SCALED MATRIX A AND APPROPRIATE TOLERANCE EPS, IER=K MAY BE INTERPRETED THAT MATRIX A HAS THE RANK K. NO WARNING IS GIVEN IN CASE M=1. ERROR PARAMETER IER=-1 DOES NOT NECESSARILY MEAN THAT MATRIX A IS SINGULAR, AS ONLY MAIN DIAGONAL ELEMENTS ARE USED AS PIVOT ELEMENTS. POSSIBLY SUBROUTINE GELE (WHICH WORKS WITH TOTAL PIVOTING) WOULD BE ABLE TO FIND A SOLUTION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X03201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RHARM **PROGRAM TITLE: REAL FOURIER TRANSFORM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: FOURIER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN CALLABLE ROUTINE FINDS THE FOURIER COEFFICIENTS OF A ONE-DIMENSION REAL ARRAY. USING THE COOLEY-TUKEY ALGORITHM, THE ROUTINE GIVES THE COEFFICIENTS OF 2*(2**M) REAL POINTS WHEN GIVEN THE INPUT OF 2*(2**M) REAL FUNCTION VALUES WHOSE ARGUMENTS ARE EQUALLY SPACED. CONTRIBUTED PROGRAM #22037 IS REQUIRED. EQUIPMENT REQUIRED IS 16K OF CORE STORAGE TO COMPILE, 8K TO EXECUTE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL RHARM (A, M, INV, S, IFERR) PARAMETER TYPE DESCRIPTION A REAL AS INPUT, CONTAINS ONE DIMENSIONAL REAL DATA. A IS 2*N+4 CORE LOCATIONS, WHERE N=2**M, 2*N REAL NUMBERS ARE PUT INTO THE FIRST 2*N CORE LOCATIONS OF A. AS OUTPUT, A CONTAINS THE FOURIER COEFFICIENTS A0/2,B0=0,A1,B1,A2,B2,...,AN,BN=0 RESPECTIVELY IN THE FIRST 2N+2 CORE LOCATION OF A. M INTEGER AN INTEGER WHICH DETERMINES THE SIZE OF THE VECTOR A. THE SIZE OF A IS 2*(2**M)+4. INV INTEGER A VECTOR WORK AREA FOR BIT AND INDEX MANIPULATION OF DIMENSION ONE EIGHTH THE NUMBER OF REAL INPUT, VIZ.,(1/8)*2*(2**M) S REAL A VECTOR WORK AREA FOR SINE TABLES WITH DIMENSION THE SAME AS INV. IFERR INTEGER A RETURNED VALUE OF 1 MEANS THAT M IS LESS THAN 3 OR GREATER THAN 20. OTHERWISE IFERR IS SET = 0. NOTE: THIS SUBROUTINE GIVES THE FOURIER COEFFICIENTS OF 2*(2**M) REAL POINTS. SEE SUBROUTINE HARM FOR THREE DIMENSIONAL, COMPLEX FOURIER TRANSFORMS. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SUBROUTINE RHARM GIVES THE FOURIER COEFFICIENTS OF 2*(2**M) REAL POINTS WHEN GIVEN THE INPUT OF 2*(2**M) REAL FUNCTION VALUES WHOSE ARGUMENTS ARE EQUALLY SPACED. THE FOURIER COEFFICIENTS A0, 80=0, A1, B1,....., AN, BN=0 ARE OBTAINED FOR INPUT XJ, J=0,1,2,.....,2N-1 FOR THE FOLLOWING EQUATION (PI=3.14159....) N-1 J XJ=(1/2)A0+SUM (AK*COS(PI*J*K/N)+BK*SIN(PI*J*K/N))+(1/2)AN(-1) K=1 FORTRAN CALLABLE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X03301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: HARM **PROGRAM TITLE: COMPLEX FOURIER TRANSFORM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: FOURIER TRANSFORM **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE FUNCTION OF THIS FORTRAN CALLABLE ROUTINE IS TO PERFORM DISCRETE COMPLEX FOURIER TRANSFORMS ON A COMPLEX 3-DIMENSION ARRAY WHERE EACH DIMENSION IS A POWER OF 2. EQUIPMENT REQUIRED IS 16K OF CORE STORAGE TO COMPILE, 8K TO EXECUTE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE LOCUS LIBRARY FUNCTION MAX0 FROM THE "LOCATE MINIMUM AND MAXIMUM INTEGER" CONTRIBUTION MUST ALSO BE LOADED. **RUN INSTRUCTIONS: CALL HARM (A, M, INV, S, IFSET, IFERR) PARAMETER TYPE DESCRIPTION A REAL AS INPUT, A CONTAINS THE COMPLEX, 3-DIMENSIONAL ARRAY TO BE TRANSFORMED. THE REAL PART OF A (I1,I2,I3) IS STORED IN VECTOR FASHION IN A CELL WITH INDEX 2*(/N*N1*N2+I2*N1+I1)+1 WHERE NI=2**M(I), I=1,2,3 AND I1=0,1,...,K1-1, ETC. THE IMAGINARY PART IS IN THE CELL IMMEDIATELY FOLLOWING. NOTE THAT THE SUBSCRIPT I1 INCREASES MOST RAPIDLY AND I3 INCREASES LEAST RAPIDLY. AS OUTPUT, A CONTAINS THE COMPLEX FOURIER TRANSFORM. THE NUMBER OF CORE LOCATIONS OF ARRAY A IS 2* (N1*N2*N3) M INTEGER A THREE CELL VECTOR WHICH DETERMINES THE SIZE OF THE 3 DIMENSIONS OF THE ARRAY A. THE SIZE NI, OF THE I DIMENSION OF A IS 2**M(I), I=1,2,3. INV INTEGER A VECTOR WORK AREA FOR BIT AND INDEX MANIPULATION OF DIMENSION ONE EIGHTH THE NUMBER OF CORE LOCATIONS OF A,VIZ., (1/8)*2*N1*N2*N3. S REAL A VECTOR WORK AREA FOR SINE TABLE WITH DIMENSION THE SAME AS INV. IFSET INTEGER AN OPTION PARAMETER WITH THE FOLLOWING SETTINGS: 0 SET UP SINE AND INV TABLES ONLY 1 SET UP SINE AND INV TABLES ONLY AND CALCULATE FOURIER TRANSFORM -1 SET UP SINE AND INV TABLES ONLY AND CALCULATE INVERSE FOURIER TRANSFORM (FOR THE MEANING OF INVERSE SEE THE EQUATIONS UNDER SECTION 2.0) 2 CALCULATE FOURIER TRANSFORM ONLY (ASSUME SINE AND INV TABLES EXIST) -2 CALCULATE INVERSE FOURIER TRANSFORM ONLY (ASSUME SINE AND INV TABLES EXIST) IFERR INTEGER ERROR INDICATOR. WHEN IFSET IS 0-+1,-1,IFERR 1 MEANS THE MAXIMUM M(I) IS LESS THAN THREE OR GREATER THAN 20, I=1,2,3 WHEN IFSET IS +2,-2 IFERR=1 MEANS THAT THE SINE AND INV TABLES ARE NOT LARGE ENOUGH OR HAVE NOT BEEN COMPUTED ON RETURN IFERR=0 THEN NONE OF THE ABOVE CONDITIONS ARE PRESENT. FUNCTION MAX0 FINDS THE MAXIMUM OF THE INTEGER PARAMETERS -- MTT = MAX0(M(1),M(2),M(3))-2 MT = MAX0(M(1),M(2),M(3))-2 MT = MAX0(2,MT) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER DIMENSION STATEMENTS TO SUIT THE USER'S APPLICATION. X03401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CORRE **PROGRAM TITLE: MEAN, DEVIATION, AND CORRELATION COEFFICIENTS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN CALLABLE ROUTINE COMPUTES MEANS, STANDARD DEVIATIONS, SUMS OF CROSS-PRODUCTS OF DEVIATIONS, AND CORRELATION COEFFICIENTS BY PRODUCT-MOMENT CORRELATION COEFFICIENTS. THE NUMBER OF VARIABLES MUST BE GREATER THAN THE NUMBER OF OBSERVATIONS. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL CORRE (N,M,IO,X,XBAR,STD,RX,R,B,D,T) PARAMETER TYPE DESCRIPTION N INTEGER NUMBER OF OBSERVATIONS M INTEGER NUMBER OF VARIABLES IO INTEGER OPTION CODE FOR INPUT DATA -- 0 IF DATA ARE TO BE READ IN FROM INPUT DEVICE IN THE SPECIAL SUBROUTINE NAMED DATA 1 IF ALL DATA ARE ALREADY IN CORE X REAL IF IO=0, THE VALUE OF X IS 0.0 IF IO=1, X IS THE INPUT MATRIX (N BY M) CONTAINING DATA XBAR REAL OUTPUT VECTOR OF LENGTH M CONTAINING MEANS STD REAL OUTPUT VECTOR OF LENGTH CONTAINING STANDARD DEVIATIONS. RX REAL OUTPUT MATRIX (M X M) CONTAINING SUMS OF CROSS- PRODUCTS OF DEVIATIONS FROM MEANS. R REAL OUTPUT MATRIX (ONLY UPPER TRIANGULAR PORTION OF THE SYMMETRIC MATRIX OF M BY M) CONTAINING CORRELATION COEFFICIENTS. (STORAGE MODE OF 1) B REAL OUTPUT VECTOR OF LENGTH M CONTAINING THE DIAGONAL OF THE MATRIX OF SUMS OF CROSS-PRODUCTS OF DEVIATIONS FROM MEANS D REAL WORKING VECTOR OF LENGTH M T REAL WORKING VECTOR OF LENGTH M CALL DATA (M,D) THIS SUBROUTINE MUST BE PROVIDED BY THE USER. (1) IF IO=0, THIS SUBROUTINE IS EXPECTED TO FURNISH AN OBSERVATION IN VECTOR D FROM AN EXTERNAL INPUT DEVICE. (2) IF IO=1, THIS SUBROUTINE IS NOT USED BY CORRE BUT MUST EXIST IN SOURCE DECK. IF USER HAS NOT SUPPLIED A SUBROUTINE NAMED DATA, THE FOLLOWING IS SUGGESTED: SUBROUTINE DATA RETURN END **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE SOURCE LISTING MAKES PROVISION FOR A DOUBLE-PRECISION VERSION OF THIS ROUTINE, BUT THE DOUBLE-PRECISION LIBRARY ROUTINES WHICH IT REQUIRES MUST BE USER-PROVIDED IF THIS OPTION IS CHOSEN. X03501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOUBLE PRECISION INTEGER LIBRARY **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: PRECISION INTEGER LIBRARY **LANGUAGES: FTN2 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ADDS, SUBTRACTS, MULTIPLIES, AND DIVIDES DOUBLE PRECISION (32-BIT) NUMBERS. NUMBERS UP TO (2,147,483,648) CAN BE HANDLED. THE PROGRAM IS FORTRAN OR ASSEMBLER CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: WHEN YOU PUSH RUN, NO MESSAGE WILL DIRECT YOUR INPUT. ENTER SDDDDDDDDDD, WHERE S IS THE SIGN (BLANK MEANS +), AND D ARE DIGITS OR LEADING SPACES OR 0'S FOR A TOTAL OF TEN. CR/LF. ENTER THE SECOND DOUBLE PRECISION INTEGER IN THE SAME FORMAT FOLLOWED BY CR/LF. PROGRAM TEST WILL COMPUTE AND LIST OUTPUT ON THE LINE PRINTER. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALL DREAD (IU, A(1), IN) READS FORMATTED DOUBLE PRECISION INTEGERS SDDDDDDDDDD, WHERE S IS THE SIGN (BLANK MEANS +), D'S ARE DIGITS OR LEADING SPACES OR 0'S FOR A TOTAL OF TEN. PARAMETER TYPE DESCRIPTION IU INTEGER LOGICAL UNIT NUMBER A(1) REAL BUFFER ADDRESS IN INTEGER NUMBER OF INTEGERS TO BE INPUT. CALL DWRIT (IU, A(1), IN) OUTPUTS ASCII DOUBLE PRECISION INTEGERS. ------------------------------------------------------------------------ X = DIMUL (A,B) FUNCTION WHICH PERFORMS A * B PARAMETER TYPE DESCRIPTON A REAL THE TWO NUMBERS TO BE MULTIPLIED BY DIMUL. B REAL X = DIDIV (A,B) FUNCTION WHICH PERFORMS A : B X = DIDIV (A,B,R) FUNCTION WHICH PERFORMS A : B, R=REMAINDER (IN ABSOLUTE VALUE) ------------------------------------------------------------------------ FCONV PERFORMS THE FOLLOWING CONVERSIONS: I=ISCON(A) CONVERTS TO SINGLE PRECISION. X=DICON(I) CONVERTS TO DOUBLE PRECISION. I=IDSIG(A) RETURNS I=1 FOR A > 0 I=0 FOR A = 0 I=-1 FOR A < 0 THE FOLLOWING SUBROUTINES ARE CALLED BY THE PREVIOUS ROUTINES AND ARE ONLY ASSEMBLY-CALLABLE. DMPY MULTIPLIES DOUBLE PRECISION INTEGERS. DLD MUL1 JSB DMPY DEF MUL2 DDIV DIVIDES DIVID BY DIVIS LEAVING THE QUOTIENT IN THE A AND B REGISTERS AND THE REMAINDER IN REM1, REM2. ------------------------------------------------------------------------ DCMAD TWO-COMPLEMENTS THE DOUBLE PRECISION INTEGER IN THE A AND B REGISTERS. DLD X JSB DCM OR ADDS ADD1 TO ADD2 DLD ADD1 JSB DAD DEF ADD2 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ANY OVERFLOW HALTS THE COMPUTER. SINCE DOUBLE PRECISION INTEGERS ARE DECLARED LIKE REAL VARIABLES, CARE MUST BE TAKEN NOT TO USE THEM WITH THE FORTRAN OPERATORS. EXAMPLE: WRONG RIGHT IF (A) 2,3,4 IF (IDSIG(A)) 2,3,4 C = -A C = DISUB (0.,A) REMAINDERS FROM DIVISION OPERATIONS ARE GIVEN IN ABSOLUTE VALUE. X03601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS21 **PROGRAM TITLE: LIBRARY OF ALGEBRAIC TRANSFORMATIONS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: TRIGONOMETRY ALGEBRA TRANSFORM **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN PROGRAM PERFORMS ANY OF 25 TRANSFORMATIONS ON ONE OR TWO INPUT VARIABLES. RESULTS ARE PRINTED AND PUNCHED, IF DESIRED. THE TRANSFORMATIONS INCLUDE COMPUTATION OF SQUARE ROOTS, LOGARITHMS, EXPONENTIAL FUNCTIONS, AND COMBINATION TRIGONOMETIC AND SQUARE ROOT FUNCTIONS, AS WELL AS VARIOUS LINEAR FUNCTIONS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER MUST SUPPLY AN INPUT SUBROUTINE CALLED "READ" AND THIS SUBROUTINE MUST BE LOADED BEFORE THE TRANSFORMATION LIBRARY. **RUN INSTRUCTIONS: COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: PRINT NOT =0: PRINT AND PUNCH 02 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 03-05 NPNT I3 NUMBER OF DATA POINTS (SEE RESTRICTIONS) 06-07 NCODE I2 SPECIFIED TRANSFORMATION CODE (1 < OR =NCODE < OR =25) 08-15 CONST F8.0 SPECIFIED TRANSFORMATION CONSTANT (IF NEEDED) DATA -- X -- THE FIRST INPUT VARIABLE -- Y -- THE SECOND INPUT VARIABLE (IF NEEDED) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: LISTING OF PERMISSABLE TRANSFORMATIONS AND CORRESPONDING TRANSFORMATION CODES NCODE TRANSFORMATION RANGE 01 SQRT(X) => X X >/= 0 02 X + SQRT(X+1)=> X X >/= 0 03 LOG(10)X => X X > 0 04 EXP(X) => X 05 ARCSIN(SQRT(X))=> X 0 </= X < 1 06 ARCSIN(SQRT(X/(N+1)))+ ARCSIN SQRT((X+1)/(N+1)) => X 0 </=(X/N) < 1 07 1/X => X X NOT = 0 08 X + X => X 09 X * C => X 10 X ** C => X 11 X + y => X 12 X - Y => X 13 X * Y => X 14 X / Y => X Y NOT = 0 15 IF(X >/=C),1=>X;OTHERWISE,0=>X 16 IF(X >/=Y),1=>X;OTHERWISE,0=>X 17 LOG(E)X => X X > 0 18 X - XM => X 19 X/S => X 20 SIN(X) => X 21 COS(X) => X 22 ARCTAN(X) => X 23 X ** Y => X X > 0 24 C ** X => X C > 0 25 IF(X=0),X=>C,OTHERWISE X=>X NOTE: N = NPNT C = CONST XM = MEAN S = STANDARD DEVIATION WHERE S**2 = SUM(XI - XM)**2/(N-1) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF THE USER SELECTS ANY TRANSFORMATION EXCEPT NUMBERS 18 AND 19, THIS PROGRAM WILL HANDLE UP TO 999 INDIVIDUAL DATA POINTS. IF NUMBERS 18 AND 19 ARE DESIRED, THE NUMBER OF DATA POINTS, DENOTED BY NPNT, IS RESTRICTED TO 500 FOR THE VARIABLE X. ONLY ONE VALUE OF X AND Y ARE PERMITTED ON A LINE. THE DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. X03701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS31 **PROGRAM TITLE: MATRIX ARITHMETIC PROGRAM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX ALGEBRA **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ADDS, SUBTRACTS, OR MULTIPLIES TWO 2-DIMENSIONAL MATRICES WHICH ARE CONFORMABLE. MAXIMUM MATRIX SIZE IS 20 X 20. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER MUST SUPPLY A SUBROUTINE CALLED "READ" WHICH INPUTS DATA. **RUN INSTRUCTIONS: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. DATA IS ENTERED ONE ROW AT A TIME, I.E.: X X X ... X 11 12 13 1N X X X ... X 21 22 23 2N . . . X X X ... X M1 M2 M3 MN COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01-02 ISW2 I2 =0: CALL EXIT NOT =0; BATCH RUN =1: ADD =2: SUBTRACT =3: MULTIPLY 05-06 NROWA I2 NUMBER OF ROWS OF FIRST MATRIX (NROWA < OR =20) 07-08 NCOLA I2 NUMBER OF COLUMNS OF FIRST MATRIX (NCOLA < OR =20) 09-10 NROWB I2 NUMBER OF COLUMNS OF SECOND MATRIX (NROWB < OR =20) 11-12 NCOLB I2 NUMBER OF COLUMNS OF SECOND MATRIX (NCOLB < OR =20) DATA -- X(I) -- MATRIX ELEMENTS **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X03801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: XRITH **PROGRAM TITLE: MATRIX ARITHMETIC LIBRARY **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX LIBRARY **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ADDS, SUBTRACTS OR MULTIPLIES TWO 2-DIMENSIONAL MATRICES WHICH ARE CONFORMABLE. DATA IS ENTERED ONE ROW AT A TIME. MAXIMUM SIZE IS 20 X 20. THE ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL XRITH (NCOLA, NROWA, NCOLB, NROWB, NTYPE, X, Y) PARAMETER TYPE DESCRIPTION NCOLA INTEGER THE NUMBER OF COLUMNS IN THE FIRST MATRIX (NCOLA < OR = 20) NROWA INTEGER THE NUMBER OF ROWS OF THE FIRST MATRIX (NROWA < OR = 20) NCOLB INTEGER THE NUMBER OF COLUMNS OF THE SECOND MATRIX (NCOLB < OR = 20) NROWB INTEGER THE NUMBER OF ROWS OF THE SECOND MATRIX (NROWB < OR = 20) NTYPE INTEGER IF EQUAL TO 1, ADD; IF EQUAL TO 2, SUBTRACT IF IF EQUAL TO 3, MULTIPLY. X REAL THE ELEMENTS OF THE FIRST MATRIX IN THE ORDER: X X X ... X 11 12 13 1N X X X ... X 21 22 23 2N . . . X X X ... X M1 M2 M3 MN Y REAL THE ELEMENTS OF THE SECOND MATRIX IN THE ORDER: Y Y Y ... Y 11 12 13 1N Y Y Y ... Y 21 22 23 2N . . . Y Y Y ... Y M1 M2 M3 MN **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ALTER THE ARRAY DIMENSIONS TO SUIT THE USER'S APPLICATION. X03901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS32 **PROGRAM TITLE: ARRAY CROSS TABULATION PROGRAM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: ARRAY MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BC8 **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS A CROSS-TABULATION OF TWO SINGLE-DIMENSION FIXED POINT ARRAYS WHICH USE A CARTESIAN COORDINATE SCHEME. A MAXIMUM OF 9999 VALUES CAN BE HANDLED FOR EACH CELL OF THE ARRAY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: A SUBROUTINE "READ", TO INPUT DATA, MUST BE LOADED BEFORE GCS32. **RUN INSTRUCTIONS: THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 9999 VALUES FOR EACH CELL OF THE CROSS-TABULATION ARRAY. THE CROSS-TAB MATRIX WILL ACCOMMODATE 99 DISTINCT CLASSIFICATIONS ALONG THE Y-AXIS AND 25 DISTINCT CLASSIFICATIONS ALONG THE X-AXIS. THE USER MUST SPECIFY THE MAXIMUM NUMBER OF CLASSIFICATIONS DIFFERENT FROM ZERO FOR BOTH AXES. THIS PROGRAM WILL ALLOW 98 DIFFERENT CLASSIFICATIONS OTHER THAN ZERO ALONG THE X-AXIS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT X-AXIS LABEL 01-58 -- -- FREE TEXT WHICH APPEARS ON OUTPUT. Y-AXIS LABEL 01-58 -- -- FREE TEXT WHICH APPEARS ON OUTPUT. PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-05 NPRS I4 NUMBER OF DATA PAIRS TO BE INPUT TO THE CROSS-TAB ARRAY (NPRS < OR =9999) 06-07 LIMX I2 NUMBER OF DISTINCT CLASSIFICATIONS OTHER THAN ZERO ALONG THE X-AXIS (LIMX < OR =24) 08-09 LIMY I2 NUMBER OF DISTINCT CLASSIFICATIONS OTHER THAN ZERO ALONG THE Y-AXIS (LIMY < OR =98) DATA -- NX -- ELEMENT FOR X-AXIS -- NY -- ELEMENT FOR Y-AXIS **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X04001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC13B **PROGRAM TITLE: SIMULTANEOUS EQUATION SOLVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: USING THE GAUSSIAN ELIMINATION METHOD, THIS PROGRAM SOLVES UP TO 22 SIMULTANEOUS EQUATIONS WHOSE COEFFICIENTS ARE IN A SINGLE INPUT MATRIX. A CHECK FOR MATRIX SINGULARITY IS NOT PERFORMED. THE PROGRAM CONTROLS ITS OWN I/O OPERATIONS, USING ANY I/O DRIVER IN THE OPERATING SYSTEM EMPLOYED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER MUST WRITE A "READ" SUBROUTINE TO INPUT DATA AND LOAD IT BEFORE LOADING GC13B. **RUN INSTRUCTIONS: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE OR TELETYPE INPUT FORMAT REQUIREMENTS WILL BE SIMILAR TO THE CARD INPUT REQUIREMENTS DESCRIBED HERE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-03 M I2 NUMBER OF INPUT EQUATIONS (M < OR =22) DATA -- A(1,J) -- 1ST COEFFICIENT OF THE JTH EQUATION -- A(I,J) -- ITH COEFFICIENT OF THE JTH EQUATION THIS PROGRAM WILL HANDLE A MAXIMUM OF 22 EQUATIONS. THE NUMBER OF COEFFICIENTS PER EQUATION MUST BE EQUAL TO THE (NUMBER OF EQUATIONS + 1); I.E., AN AUGMENTED MATRIX. THE INPUT DATA MAY BE ENTERED IN ANY FORM SUBJECT TO THE ORDERING RESTRICTION; THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. THE ORDERING RESTRICTION IS THAT THE INPUT COEFFICIENTS OF THE JTH EQUATION MUST (A) BE PLACED IN ASCENDING SEQUENCE, A(1,J), A(2,J),..., A(I,J),... AND (B) THE COEFFICIENTS FOR (J+1)TH EQUATION MUST BEGIN ON A NEW LINE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X04101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SIMEQ **PROGRAM TITLE: SIMULTANEOUS EQUATION SOLVER SUBROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX LINEAR EQ. **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE IS PART OF THE STAT-PACK GROUP, AND IS FORTRAN CALLABLE. USING THE GAUSSIAN ELIMINATION METHOD, THIS ROUTINE SOLVES UP TO 22 SIMULTANEOUS EQUATIONS WHOSE COEFFICIENTS ARE IN A SINGLE INPUT MATRIX. A CHECK FOR MATRIX SINGULARITY IS NOT PERFORMED. THIS ROUTINE DOES NOT CONTROL ITS OWN I/O OPERATIONS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL SIMEQ (M) WHERE M = NUMBER OF INPUT EQUATIONS (M < =22) A = COEFFICIENT MATRIX IN COMMON WITH CALLING PROGRAM **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM WILL HANDLE A MAXIMUM OF 22 EQUATIONS. THE NUMBER OF COEFFICIENTS PER EQUATION MUST BE EQUAL TO THE (# OF EQUATIONS +1); I.E. AN AUGMENTED MATRIX. THE INPUT DATA MAY BE ENTERED IN ANY FORM SUBJECT TO THE ORDERING RESTRICTION; THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. THE ORDERING RESTRICTION IS THAT THE INPUT COEFFICIENTS OF THE JTH EQUATION MUST (A) BE PLACED IN ASCENDING SEQUENCE, A(1,J), ..., A(I,J),... AND (B) THE COEFFICIENTS FOR (J+1)TH EQUATION MUST BEGIN ON A NEW LINE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X04201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC23A **PROGRAM TITLE: AUTOCORRELATION AND SPECTRAL DENSITY **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: FOR A GIVEN SET OF DATA POINTS AND A MAXIMUM LAG (I.E., HARMONIC), THIS PROGRAM CALCULATES AUTOCORRELATION COEFFICIENTS AND POWER SPECTRAL DENSITY. THE INPUT DATA CAN BE NORMALIZED, IF DESIRED. THE PROGRAM WILL HANDLE A MAXIMUM OF 300 DATA POINTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: A "READ" SUBROUTINE TO INPUT DATA, MUST BE LOADED BEFORE THE MAIN PROGRAM GC23A. **RUN INSTRUCTIONS: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 300 DATA POINTS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW1 I1 =0: PRINT NOT =0: PRINT AND PUNCH 02 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 03-05 NPNT I3 NUMBER OF DATA POINTS (NPNT < OR =300) 06-08 NLAGS I3 MAXIMUM NUMBER OF LAGS DESIRED 09 NORM I1 =0: NORMALIZE INPUT DATA DATA -- X(I) -- ITH VALUE OF INPUT DATA **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X04301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC23B **PROGRAM TITLE: MOVING AVERAGES **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN PROGRAM COMPUTES A SET OF MOVING AVERAGES OF ORDER N FROM A TIME-SERIES OF M ELEMENTS. M - N + 1 MOVING AVERAGES ARE COM- PUTED AND TABULATED. THE TIME SERIES MAY HAVE A MAXIMUM OF 2000 ELE- MENTS, AND THE ORDER OF THE MOVING AVERAGE MUST BE LESS THAN THE NUMBER OF ELEMENTS IN THE TIME SERIES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER SUPPLIED "READ" SUBROUTINE TO INPUT DATA MUST BE LOADED BEFORE GC23B. **RUN INSTRUCTIONS: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THE TIME SERIES MAY HAVE A MAXIMUM OF 2000 ELEMENTS AND THE ORDER OF THE MOVING AVERAGE MUST BE LESS THAN THE NUMBER OF ELEMENTS IN THE TIME SERIES. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION ---- -------- ------ ----------- HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 02-05 M I4 NUMBER OF ELEMENTS IN TIME SERIES (M </= 2000) 07-10 N I4 ORDER OF MOVING AVERAGE (N<M) 15 IS1 I1 =1: PRINT =2: PRINT AND PUNCH 20 IS2 I1 =0: CALL EXIT ELSE: BATCH RUN DATA -- TS(I) -- ELEMENTS OF TIME SERIES **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X04401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC23C **PROGRAM TITLE: CROSS CORRELATION ANALYSIS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES A SET OF CROSS-CORRELATION COEFFICIENTS FOR TWO TIME SERIES. THE MINIMUM AND MAXIMUM LAG INPUT DETERMINES THE NUMBER OF COEFFICIENTS COMPUTED. THE PROGRAM WILL HANDLE A MAXIMUM OF 900 ELEMENTS FOR EACH TIME SERIES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER MUST SUPPLY A SUBROUTINE "READ" TO INPUT DATA. THIS SUBROUTINE MUST BE LOADED BEFORE GC23C. **RUN INSTRUCTIONS: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 900 ELEMENTS FOR EACH TIME SERIES. THE INPUT DATA MAY BE ENTERED IN ANY FORM THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION ---- -------- ------ ----------- HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW1 I1 =0: PRINT ELSE: PRINT AND PUNCH 02 ISW2 I1 =0: CALL EXIT ELSE: BATCH RUN 03-05 LN I3 MINIMUM LAG IN UNITS OF TIME 06-08 LX I3 MAXIMUM LAG IN UNITS OF TIME (LX<M) 09-11 M I3 NUMBER OF ELEMENTS IN A TIME SERIES (M </= 900) DATA -- TS1(I) -- COEFFICIENTS OF FIRST TIME SERIES -- TS2(I) -- COEFFICIENTS OF SECOND TIME SERIES **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X04501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DISCRI **PROGRAM TITLE: DISCRIMINANT ANALYSIS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: GIVEN TWO GROUPS OF DATA WITH UP TO 20 VARIABLES PER GROUP, THIS PROGRAM CALCULATES A LINEAR FUNCTION OF THE VARIABLES BY WHICH THE TWO GROUPS CAN BE DISCRIMINATED. THE LINEAR FUNCTION FOUND IS THE ONE THAT MAX- IMIZES THE RATIO OF THE FOLLOWING TWO ELEMENTS: A. THE DIFFERENCE BETWEEN THE GROUP MEANS. B. THE STANDARD DEVIATIONS WITHIN THE SPECIES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER MAY PROVIDE HIS OWN "READ" SUBROUTINE TO INPUT DATA, OR USE THE ONE SUPPLIED. **RUN INSTRUCTIONS: THIS PROGRAM WILL HANDLE A MAXIMUM OF 20 VARIABLES PER GROUP. THE INPUT DATA MAY BE ENTERED IN ANY FORM THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. COL. VARIABLE FORMAT DESCRIPTION ---- -------- ------ ----------- HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT ELSE: BATCH RUN 02-04 NVAR I3 NUMBER OF VARIABLES PER GROUP (NVAR </= 20) 05 ISW3 I1 =1: MAKE 2ND PASS OF DATA IN ORDER TO FIND INDIVIDUAL DISCRIM- INANT VALUES (RE- ENTER DATA POINTS) =0: DO NOT MAKE SECOND PASS DATA -- X(1) -- OBSERVATION FOR VARIABLE 1 . . . -- X(I) -- OBSERVATION FOR VARIABLE I . . . D.S.D. 01-02 LC A2 GROUP DATA SET DELIMITER (LC=**). AFTER GROUP 1 AND 2. POSITION OF LC DEPENDENT ON FORMAT OF READ SUBROUTINE. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE MAIN ROUTINE AND THE SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY PROGRAMS. X04601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS01 **PROGRAM TITLE: LEAST SQUARES REGRESSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. POLYNOMIAL STATISTICS MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS THE CALCULATIONS FOR LEAST-SQUARES POLYNOMIAL REGRESSION UP TO DEGREE THREE. THE USER HAS THE OPTION OF SPECIFYING THE DEGREE OF FIT (LINEAR, QUADRATIC, OR CUBIC), OR OF SPECIFYING A FIT THROUGH ALL THREE DEGREES. AN ANALYSIS OF VARIANCE IS PERFORMED FOR EACH POLYNOMIAL FIT, AS WELL AS ANALYSIS OF INDIVIDUAL TERMS. IF DESIRED, THE PREDICTED VALUES AND RESIDUALS ARE INCLUDED IN THE ANALYSIS. THE PROGRAM WILL HANDLE A MAXIMUM OF 400 (X,Y) DATA PAIRS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE USER MAY WISH TO REPLACE THE "READ" SUBROUTINE PROVIDED WITH HIS OWN "READ" ROUTINE. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL BE SIMILAR TO THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 400 (X,Y) DATA PAIRS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-04 NPRS I3 NUMBER OF (X,Y) DATA PAIRS (NPRS < OR =400) 05 MODEL I1 =1: LINEAR FIT ONLY =2: QUADRATIC FIT ONLY =3: CUBIC FIT ONLY =4: ALL THREE FITS 06 NBACK I1 =0: NO BACK SOLUTIONS NOT =0: COMPUTE BACK SOLUTIONS DATA -- X(I) -- VALUE OF INDEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR -- Y(I) -- VALUE FOR THE DEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE SUBROUTINE "READ" MUST BE LOADED PRIOR TO LOADING ANY LIBRARY PROGRAMS. X04701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS02 **PROGRAM TITLE: LINEAR REGRESSION CONFIDENCE INTERVALS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS LINEAR EQ. MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES THE LINEAR REGRESSION FUNCTION OF ONE INDEPEND- ENT VARIABLE AND THE CONFIDENCE PREDICTION INTERVALS FOR PREDICTED VALUES OF THE DEPENDENT VARIABLE, GIVEN A 0.90, 0.95, OR 0.99 CON- FIDENCE INTERVAL. THE REGRESSION FUNCTION IS EVALUATED BY THE METHOD OF LEAST SQUARES. AN ANALYSIS OF VARIANCE IS INCLUDED. THE PROGRAM WILL HANDLE A MAXIMUM OF 750 (X,Y) DATA PAIRS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE MAIN PROGRAM AND SUBROUTINES MUST BE LOADED PRIOR TO LOADING ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 750 (X,Y) DATA PAIRS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION ---- -------- ------ ----------- HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT ELSE: BATCH RUN 02-04 NPNT I3 NUMBER OF (X,Y) DATA PAIRS, (NPNT </= 750) 05-08 CLVL F4.2 SPECIFIED CONFIDENCE LEVEL (O.90, 0.95, OR 0.99) DATA -- X(I) -- VALUE OF INDEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR. -- Y(I) -- VALUE OF DEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY USE THE "READ" SUBROUTINE PROVIDED, OR WRITE HIS OWN. X04801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS12 **PROGRAM TITLE: POLYNOMIAL REGRESSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS POLYNOMIAL MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: USING THE METHOD OF LEAST SQUARES, THIS PROGRAM GENERATES AN APPROXIMATING POLYNOMIAL UP TO THE 15TH DEGREE. THE DEGREE OF REGRESSION IS DETERMINED BY AN ITERATIVE TECHNIQUE, THE ITERATIVE PROCESS BEING TERMINATED BY EITHER OF THE FOLLOWING: A. WHEN THE COMPUTED STANDARD ERROR OF THE DEPENDENT VARIABLE FOR THE (I)TH ITERATION (DEGREE I) IS LESS THAN OR EQUAL TO THE MAXIMUM ALLOWABLE ERROR SPECIFIED BY THE USER. B. WHEN THE PROGRAM HAS FITTED THE EXPERIMENTAL DATA THROUGH A 15TH DEGREE POLYNOMIAL. THE PROGRAM WILL HANDLE A MAXIMUM OF 350 (X,Y) DATA PAIRS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIUM OF 350 (X,Y) DATA PAIRS. THIS PROGRAM WILL HANDLE WEIGHTED OBSERVATIONS. FOR EACH UNWEIGHTED OBSERVATION, THE WEIGHTING FACTOR ASSIGNED TO THAT OBSERVATION SHOULD BE ASSIGNED A VALUE OF 1.0. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-04 NPRS I3 NUMBER OF (X,Y) DATA PAIR (NPRS < OR =350) 05-06 MXDEG I2 HIGHEST POLYNOMIAL DEGREE DESIRED (MXDEG < OR =15) 07 NBACK I1 =0: NO BACK SOLUTIONS =1; BACK SOLUTION FOR HIGHEST DEGREE >1: BACK SOLUTIONS FOR ALL DEGREES 08-19 STDER F12.0 MAXIMUM ALLOWABLE ERROR DATA -- X(I) -- VALUE OF INDEPENDENT VARIABLE -- Y(I) -- VALUE OF DEPENDENT VARIABLE -- WGHT(I) -- =0.0: UNWEIGHTED OBSERVATIONS NOT =0.0: WEIGHTED OBSERVATIONS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY REPLACE THE "READ" SUBROUTINE PROVIDED WITH HIS OWN ROUTINE TO INPUT DATA. X04901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS14 **PROGRAM TITLE: POLYNOMIAL REGRESSION CONFIDENCE INTERVALS **REVISION? **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS POLYNOMIAL MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM GENERATES CONFIDENCE INTERVAL ESTIMATES AT A SPECIFIED CONFIDENCE LEVEL FOR EACH PREDICTED POINT OF AN (I)TH DEGREE APPROXIMATING POLYNOMIAL (I = 1,6). THE USER MAY SELECT A CONFIDENCE LEVEL OF 0.90, 0.95, OR 0.99. ESTIMATES OF THE REGRESSION-COVARIANCE MATRIX ALSO ARE MADE. THE PROGRAM WILL HANDLE A MAXIMUM OF 400 (X,Y) DATA PAIRS. THE DEGREE OF THE INPUT POLYNOMIAL MUST BE LESS THAN, OR EQUAL TO 6. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE PROGRAM AND ITS SUBROUTINES MUST BE LOADED PRIOR TO LOADING OF ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 400 (X,Y) DATA PAIRS. THE DEGREE OF THE INPUT POLYNOMIAL MUST BE LESS THAN OR EQUAL TO 6. THE INPUT DATA PAIRS MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: DO NOT PUNCH (RECORD 1) NOT =0: PUNCH OUTPUT 02 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 03-05 NPNT I3 NUMBER OF (X,Y) DATA PAIRS (NPNT < OR =400) 06 NDEG I1 DEGREE OF INPUT POLYNOMIAL (NDEG < OR =6) 07-10 CLVL F4.2 SPECIFIED CONFIDENCE LEVEL (0.90, 0.95, OR 0.99) PARAMETER 01-10 BO F10.0 VALUE OF B (RECORD 2) 0 11-20 B(1) F10.0 VALUE OF B . 1 . . 61-70 B(6) F10.0 VALUE OF B 6 DATA -- X(I) -- VALUE OF INDEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR. -- Y(I) -- VALUE OF DEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY PROVIDE A "READ" SUBROUTINE TO INPUT DATA IF HE DESIRES. X05001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS18 **PROGRAM TITLE: STEPWISE REGRESSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS POLYNOMIAL MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM USES MULTIPLE REGRESSION TO OBTAIN THE BEST FIT TO A SET NUMBER OF OBSERVATIONS CONSISTING OF ONE DEPENDENT VARIABLE AND MULTIPLE INDEPENDENT VARIABLES. IN THE STEPWISE REGRESSION, A NUMBER OF INTERMEDIATE REGRESSION EQUATIONS ARE OBTAINED, IN ADDITION TO THE COMPLETE REGRESSION EQUATION. THESE INTERMEDIATE EQUATIONS ARE DERIVED BY ADDING ONE VARIABLE AT A TIME; THE VARIABLE ADDED IS THE ONE THAT MAKES THE GREATEST IMPROVEMENT IN THE LEAST SQUARES GOODNESS-OF-FIT. THE INSIGNIFICANT VARIABLES ARE REMOVED FROM THE REGRESSION EQUATION BEFORE THE ADDITION OF A NEW VARIABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT OR TTY INPUT REQUIREMENTS DESCRIBED HERE WILL BE SIMILAR TO CARD INPUT REQUIREMENTS. NO CONTROL STATEMENT ON SOURCE TAPE. GIVEN (N X M) MATRIX OF INPUT COEFFICIENTS: W1 X11 X12 ... X1N WHERE: WI= WEIGHTING FACTOR ASSIGNED TO W2 X21 X22 ... X2N ITH OBSERVATION VECTOR (I=1,M) . XI,J= VALUE OF JTH INDEPENDENT . VARIABLE FOR ITH OBSERVATION . VECTOR. WM XM,1 XM,2 ... XM,N THE FOLLOWING ITEMS SHOULD BE OBSERVED FOR PROPER EXECUTION OF THIS PROGRAM: (A) THERE MUST BE AN EQUAL NUMBER OF OBSERVATIONS FOR ALL INDEPENDENT AND DEPENDENT VARIABLES. THERE IS NO RESTRICTION ON THE NUMBER OF OBSERVATIONS EXCEPT THAT THE NUMBER OF OBSERVATIONS PER VECTOR SHOULD BE GREATER THAN OR EQUAL TO THE NUMBER OF INDEPENDENT VARIABLES. THERE CAN BE NO MISSING VALUES. (B) THE USER MUST SPECIFY A TOLERANCE LEVEL THAT WILL SERVE AS A CRITERIA IN THE FORMATION OF THE INTERMEDIATE REGRESSION EQUATIONS. THE TOLERANCE LEVEL IS THE CONTROL TO REDUCE THE POSSIBILITY OF DEGENERACY (MATRIX SINGULARITY) WHEN AN INDEPENDENT VARIABLE IS IS APPROXIMATELY A LINEAR COMBINATION OF THE OTHER VARIABLES. THE VALUE OF THE TOLERANCE IS ARBITRARY, BUT GENERALLY, VALUES BETWEEN 0.001 AND 0.00001 ARE USED. (C) A DUPLICATE SET OF INPUT DATA POINTS MUST BE PREPARED FOR EACH RUN IN ORDER TO OBTAIN THE BACK SOLUTIONS. (D) THE WEIGHTING FACTOR MAY BE SPECIFIED FOR EACH OBSERVATION VECTOR AS FOLLOWS: = 1.0: EQUAL WEIGHTS (I.E., UNWEIGHTED ITEMS) W1 NOT EQUAL 1.0: EQUAL WEIGHTS = 0.0: SET WEIGHT = 1.0 UNLESS THE SUM OF THE WEIGHTING FACTORS IS EQUAL TO THE NUMBER OF OBSERVATIONS PER VARIABLE, THE STANDARD ERRORS OF THE REGRESSION COEFFICIENTS AND THE CRITERIA OF SIGNIFICANCE WILL BE DISTORTED. (E) THE MAXIMUM NUMBER OF DEPENDENT PLUS INDEPENDENT VARIABLES MUST BE GREATER THAN 10. THE DEPENDENT VARIABLE FOR THE ITH OBSERVATION MUST BE PUNCHED LAST. COL. VARIABLE FORMAT DESCRIPTION ---- -------- ------ ----------- HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT ELSE: BATCH RUN 02-04 N I3 NUMBER OF INDEPENDENT AND DEPENDENT VARIABLES (N </= 10) 05-07 M I3 NUMBER OF OBSERVATIONS PER VARIABLE (N </= (N-1)) 08-17 TOL F10.4 TOLERANCE LEVEL 18-27 F1 F10.4 F LEVEL FOR ENTERING A VARIABLE INTO THE RE- GRESSION EQUATIONS. 28-37 F2 F10.4 F LEVEL FOR REMOVING A VARIABLE FROM THE RE- GRESSION EQUATION. DATA -- W(I) -- THE WEIGHTING FACTOR ASSIGNED TO THE ITH OBSERVATION VECTOR. -- X(I,J) -- OBSERVATIONS (J=1,N) FOR THE ITH OBSERVATION VECTOR. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY WRITE HIS OWN "READ" SUBROUTINE TO INPUT DATA IF HE WISHES. X05101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS41 **PROGRAM TITLE: BIOASSAY **REVISION? **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS LINEAR EQ. MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES PREDICTED X VALUES FOR GIVEN Y VALUES, AND THE LINEAR REGRESSION DATA FOR Y ON X. IF THE REGRESSION DATA IS NOT IMMEDIATELY AVAILABLE, THE PROGRAM ACCEPTS X AND Y VALUES, AND COMPUTES THE PREDICTED X VALUES FROM THE GIVEN Y VALUES. FOR EACH PREDICTED X VALUE, THE OUTPUT CONSISTS OF THE GIVEN Y VALUES FOR THE POINT, THE AVERAGE OF THESE Y VALUES, THE PREDICTED X VALUE ITSELF, AND THE UPPER AND LOWER BOUNDS OF THE 95-PERCENT CONFIDENCE INTERVAL FOR THE PREDICTED X VALUES. THE PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 600 (X,Y) DATA PAIRS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 600 (X,Y) DATA PAIRS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 05 ISW2 I1 =0: CALL EXIT NOT =0 BATCH RUN 10 ISW3 I1 =0: NO INVERSE PREDICTION OF X'S DESIRED NOT =0: INVERSE PREDICTION OF X'S USED IN REGRESSION CALCULATION 13-15 NPNT I3 NUMBER OF (X,Y) DATA PAIRS (NPNT < =600) 20 ISW I1 =1: REGRESSION TO BE PERFORMED FROM THE (X,Y) DATA PAIRS =2: PRE-COMPUTED REGRESSION PARAMETERS ARE INPUT TO PROGRAM 23-25 NX I3 NUMBER OF SETS OF X VALUES TO BE PREDICTED (NX < OR =999) DATA -- X(I) -- ITH VALUE OF X (FOR ISW=1) -- Y(I) -- ITH VALUE OF Y (FOR ISW=2) 01-04 N I4 NUMBER OF DATA POINTS FROM WHICH REGRESSION WAS CALCULATED (N < OR =600) 05-18 BO E14.8 Y-INTERCEPT ESTIMATE 19-32 B1 E14.8 SLOPE INTERCEPT 33-46 SXXB2 E14.8 SUM OF SQUARES OF INTECEPTION 47-6- SE2 E14.8 STANDARD ERROR OF ESTIMATE 61-74 YBAR E14.8 AVERAGE Y VALUES NEW RECORD 01-14 XBAR E14.8 AVERAGE X VALUES PREDICTION RECORD (USED ONLY IF ISW3 > 0)-- Y(I) -- Y VALUE USED IN PREDICTION. MUST USE SAME FORMAT AS WHEN READING DATA RECORDS. THERE MUST BE NX VALUES IF INVERSE PREDICTION IS DESIRED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE TO INPUT DATA IF HE WISHES. X05201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS43 **PROGRAM TITLE: ORTHOGONAL REGRESSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: POLYNOMIAL STATISTICS MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: BY MEANS OF ORTHOGONAL POLYNOMIALS, THIS PROGRAM GENERATES A REGRESSION POLYNOMIAL IN ONE INDEPENDENT VARIABLE UP TO THE FIFTH DEGREE. A GENERAL STATISTICAL ANALYSIS IS INCLUDED (INCLUDING THE MEAN, VARIANCE, ETC.), AND CONFIDENCE LIMITS ARE GENERATED FOR THE SAMPLE MEAN AT 0.90, 0.95, AND 0.99 CONFIDENCE LEVELS. THE REGRESSION ANALYSIS IS THEN COMPUTED, YIELDING UNCORRELATED ESTIMATORS. THE POLYNOMIAL IS REWRITTEN IN TERMS OF THE ORIGINAL VARIABLE X, AND AN ANALYSIS OF VARIANCE IS PERFORMED TERM BY TERM. BACK SOLUTIONS ARE INCLUDED IN THE ANALYSIS. THE PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 26 DATA POINTS AT EQUALLY SPACED DISTANCES ALONG THE ORDINATE. THE MAXIMUM POLYNOMIAL GENERATED IS OF DEGREE 5. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE PROGRAM AND SUBROUTINES MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 26 DATA POINTS AT EQUALLY SPACED DISTANCES ALONG THE ORDINATE. THE MAXIMUM POLYNOMIAL GENERATED IS OF DEGREE 5. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-03 NPNT I2 NUMBER OF INPUT DATA POINTS (NPNT </=26) 04-15 DIST F12.4 EQUI-DISTANT SPACING BETWEEN DATA POINTS (DIST>0) 16-27 XSTART F12.4 INITIAL VALUE OF ORDINATE 28-35 FDIS1 F12.4 USER-SPECIFIED VALUE OF F - DISTRIBUTION 36-47 FDIS2 F12.4 USER-SPECIFIED VALUE OF F - DISTRIBUTION DATA 01-12 X(1) F12.4 VALUE OF 1ST OBSERVATION 13-24 X(2) F12.4 VALUE OF 2ND OBSERVATION . . . 61-72 X(6) F12.4 VALUE OF 6TH OBSERVATION NOTE: FOR MORE THAN 6 OBSERVATIONS, REPEAT FORMAT ON A NEW RECORD. MULTIPLIER RECORD 1 01-12 L(0)* F12.4 REDUCTION MULTIPLIER CORRES- PONDING TO B(0) 13-24 L(1)* F12.4 REDUCTION MULTIPLIER CORRES- PONDING TO B(1) . . . 61-72 L(5)* F12.4 REDUCTION MULTIPLIER CORRES- PONDING TO B(5) RECORD 2 01-12 L(0) F12.4 REDUCTION MULTIPLIER CORRES- PONDING TO B(0) 13-24 L(1) F12.4 REDUCTION MULTIPLIER CORRES- . PONDING TO B(1) . . 61-72 L(5) F12.4 REDUCTION MULTIPLIER CORRES- PONDING TO B(5) NOTE: ORTHOGONAL COEFFICENTS ARE USUALLY CHOSEN SO THAT THE TABULATED VALUES ARE INTEGERS REDUCED TO THEIR LOWEST TERMS. THIS AMOUNTS TO DEFINING A NEW SET OF POLYNOMIALS. X(R) (X,N) = L(R) . X(R) (X,N) GIVEN: R = POLYNOMIAL DEGREE X = INDEPENDENT INDEX N = NUMBER OF DATA POINTS L(R) = THE REDUCTION CONSTANT THE VALUES OF THE REDUCTION MULTIPLIERS CAN BE FOUND IN ANY STANDARD TABLE OF ORTHOGONAL POLYNOMIAL COEFFICIENTS AND ARE TABULATED BY POLYNOMIAL DEGREE GIVEN THE NUMBER OF DATA POINTS. THIS PROGRAM REQUIRES, IN ADDITION TO THE STANDARD SET OF MULTIPLIERS, A "MODIFIED" SET DEFINED AS: L(R)* = 1/L(R) (R = 0,...,5) (E.G., FOR N=10, R=2, THEN L(R) = 1/2 AND L(R)* = 2). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X05301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS49 **PROGRAM TITLE: LINEAR REGRESSION WITH REPLICATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX LINEAR EQ. STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES A LINEAR REGRESSION AND ANALYSIS OF VARIANCE ON DATA WITH AN EQUAL OR UNEQUAL NUMBER OF REPLICATIONS (IE. MULTIPLE Y VALUES FOR A GIVEN X VALUE). THE PROGRAM HANDLES A MAXIMUM OF 150 UNWEIGHTED (X,Y) DATA PAIRS. THE VALUES OF THE INDEPENDENT VARIABLE X MUST BE IN ASCENDING SEQUENCE IN ORDER TO ESTABLISH THE NUMBER OF REPLICATES PER VALUE OF X. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 150 UNWEIGHTED (X,Y) DATA PAIRS. THE VALUES OF THE INDEPENDENT VARIABLE X MUST BE IN ASCENDING SEQUENCE IN ORDER TO ESTABLISH THE NUMBER OF REPLICATES PER VALUE OF X. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTON HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-04 NPNT I3 NUMBER OF INPUT DATA PAIRS (NPNT </=150) DATA -- X(I) -- VALUE OF INDEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR -- Y(I) -- VALUE OF DEPENDENT VARIABLE FOR THE ITH (X,Y) DATA PAIR. THE VALUES OF X MUST BE IN ASCENDING SEQUENCE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY A "READ" SUBROUTINE TO INPUT DATA IF HE DESIRES. X05401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC55A **PROGRAM TITLE: NON-LINEAR REGRESSION (GAUSS-NEWTON METHOD) **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS NON-LINEAR REGRESSION CALCULATIONS TO FIT A SET OF DATA TO A FUNCTION SPECIFIED BY THE USER. CORRECTIONS TO A STARTING VALUE OF THE PARAMETER VALUES ARE COMPUTED BY ITERATION CYCLES UNTIL THE CORRECTIONS MAKE NO CHANGE (WITHIN A SPECIFIED TOLERANCE) IN THE ERROR SUM OF SQUARES . IT MUST BE NOTED THAT THE FINAL ERROR SUM OF SQUARES MAY BE QUITE LARGE IF THE DATA DOES NOT FIT THE DESIRED MODEL WELL. THE PROGRAM IS SET UP TO HANDLE 10 PARAMETERS, AND THE MODEL USED MUST HAVE ONLY ONE X VALUE FOR EACH Y VALUE. THE PROCEDURE IS DIMENSIONED TO ESTIMATE UP TO 10 PARAMETERS FROM 150 PAIRS OF X AND Y VALUES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM PERFORMS NON-LINEAR REGRESSION CALCULATIONS TO FIT A SET OF DATA TO A FUNCTION SPECIFIED BY THE USER. MODEL: Y = F(X; Q(1), Q(2),...,Q(K) + E), K</= 10. CORRECTIONS TO A STARTING VALUE OF THE PARAMETER VALUES ARE COMPUTED BY ITERATION CYCLES UNTIL THE CORRECTIONS MAKE LITTLE OR NO CHANGE (WITHIN A SPECIFIED TOLERANCE) IN THE ERROR SUM OF SQUARES. IT SHOULD BE POINTED OUT THAT EVEN THE FINAL ERROR SUM OF SQUARES MAY BE QUITE LARGE IF THE DATA DOES NOT FIT THE DESIRED MODEL WELL. THE PROGRAM IS SET UP TO HANDLE 10 PARAMETERS AND THE MODEL USED MUST HAVE ONLY ONE X VALUE FOR EACH Y VALUE. IF THE NUMBER OF DATA PAIRS IS LARGE WITH RESPECT TO THE NUMBER OF PARAMETERS TO BE ESTIMATED, AN AVERAGING OPTION, CONTROLLED BY THE VARIABLE ISW3, IS AVAILABLE. IF THIS OPTION IS USED, THE NUMBER OF DATA PAIRS MUST BE AN EVEN MULTIPLE OF THE NUMBER OF PARAMETERS TO BE ESTIMATED. THE PROGRAM WILL FORM AS MANY AVERAGES AS THERE ARE PARAMETERS, FIND SOLUTIONS FOR THE PARA- METERS, THEN RECYCLE USING THIS SOLUTION AS THE STARTING VECTOR AND USING THE INDIVIDUAL DATA POINTS INSTEAD OF THE AVERAGES. IF THIS PROGRAM HAS PERFORMED THE MAXIMUM NUMBER OF ITERATIONS INDICATED AND HAS FOUND NO SOLUTION FOR THE PARAMETERS, THEN MESSAGE "MAXIMUM NUMBER OF ITERATIONS HAS BEEN PERFORMED" WILL APPEAR ON THE OUTPUT LISTING AND PROGRAM EXECUTION WILL TERMINATE. SEVERAL ALTERNATIVES ARE AVAILABLE FOR THE USER: 1. INCREASE MAXIMUM NUMBER OF ITERATIONS AND RUN AGAIN. 2. PICK CLOSER STARTING VALUES FOR THE PARAMETERS AND RUN AGAIN. 3. SET TOLERANCE FOR ACCEPTABLE ERROR SUM OF SQUARES LARGER AND RUN AGAIN. A COMBINATION OF THESE THREE POSSIBILITIES WOULD PROBABLY OFFER THE BEST SOLUTION. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THE PROGRAM IS DIMENSIONED TO ESTIMATE UP TO TEN PARAMETERS FROM 150 PAIRS OF X AND Y VALUES. STARTING VALUES OF THE PARAMETERS ARE INCLUDED AS INPUT DATA. COL. VARIABLE FORMAT DESCRIPTON HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02 ISW3 I1 NOT =1: USE INDIVIDUAL VALUES =1: AVERAGE DATA POINTS 03-05 NOBS I3 NUMBER OF (X,Y) DATA PAIRS (NOBS </=150) 06-07 NP I2 NUMBER OF INITIAL PARAMETER ESTIMATES (NP </= 10) 08-10 IT I3 MAXIMUM NUMBER OF ITERATIONS TO BE PERFORMED (0 </= IT </= 999)* 11-18 TOL F8.0 TOLERANCE VALUE - IF THE CHANGE BETWEEN TWO ITERATIONS IS LESS THAN TOL, ITERATION WILL TERMI- NATE. ESTIMATE 01-08 GUESS(1) F8.0 ESTIMATE OF 1ST PARAMETER 09-16 GUESS(2) F8.0 ESTIMATE OF 2ND PARAMETER . . . 73-80 GUESS(10) F8.0 ESTIMATE OF 10TH PARAMETER DATA 01-08 Y(I) F8.0 INPUT DATA CARDS (1 CARD PER 09-16 X(I) F8.0 (X,Y) DATA PAIR). *NOTE: IF IT = 0, ONE ITERATION WILL BE PERFORMED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF POSSIBLE, LARGE AMOUNTS OF DATA SHOULD NOT BE RUN DUE TO THE TIME REQUIRED BY THE ITERATION CYCLES. ON THE TEST RUNS, SIX DATA PAIRS WERE USED AND THREE PARAMETERS WERE ESTIMATED. THE TIME REQUIRED FOR ONE ITERATION CYCLE UNDER THESE CIRCUMSTANCES WAS ABOUT ONE MINUTE. CYCLE TIME SHOULD INCREASE LINEARLY WITH THE NUMBER OF DATA PAIRS; THUS, THE TIME COULD EASILY BECOME PROHIBITIVE FOR LARGE SETS OF DATA. X05501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS52 **PROGRAM TITLE: CUMULATIVE DISTRIBUTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM GENERATES A FREQUENCY DISTRIBUTION FOR A SINGLE DATASET CONSISTING OF 1500 POINTS OR LESS. THE MEAN, MEDIAN, STANDARD DEVIATION AND INTERQUARTILES ARE INCLUDED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE PROGRAM AND ITS SUBROUTINES MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 1500 DATA POINTS. THE DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-05 NPNT I4 NUMBER OF DATA POINTS (NPNT </= 1500) DATA -- X(I) -- INPUT DATA POINTS (X(I), I=1, NPNT) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY PROVIDE HIS OWN "READ" SUBROUTINE TO ENTER DATA IF HE WISHES. X05601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC44A **PROGRAM TITLE: KENDALL'S COEFFICIENT OF CONCORDANCE W **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES KENDALL'S COEFFICIENT OF CONCORDANCE: W. THIS IS A MEASURE OF THE RELATION AMONG SEVERAL RANKINGS. TIES ARE CHECKED, AND THE DEGREE OF ASSOCIATION, W, IS ADJUSTED ACCORDINGLY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY SUBROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 31 SETS OF RANKINGS WITH UP TO 20 OBJECTS BEING RANKED PER SET. EACH SET MUST HAVE THE SAME NUMBER OF OBJECTS. ALL OBJECTS FOR THE ITH RANKING MUST BE READ BEFORE THE OBJECTS FOR JTH RANKING (I < J). THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION --- -------- ------ ----------- HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 03 ISW2 I1 =0: CALL EXIST ELSE: BATCH RUN 04-05 NSETS I2 NUMBER OF SETS OF RANKINGS (NSETS </= 31) 07-08 NPNT I2 NUMBER OF OBJECTS PER SET BEING RANKED (NPNT </= 20) DATA FIRST -- X(1,1) -- 1ST RANKING, VALUE OF 1ST OBJECT -- X(1,2) -- 1ST RANKING, VALUE OF 2ND OBJECT . . . -- X(1,J) -- 1ST RANKING, VALUE OF JTH RANKING ITH -- X(I,1) -- ITH RANKING, VALUE OF 1ST OBJECT -- X(I,2) -- ITH RANKING, VALUE OF 2ND OBJECT . . . -- X(I,J) -- ITH RANKING, VALUE OF JTH OBJECT NOTE: 1 < I < NSETS 1 < J < NPNT **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE IF HE WISHES. X05701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC44B **PROGRAM TITLE: KENDALL'S COEFFICIENT OF CONCORDANCE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES KENDALL'S COEFFICIENT OF CONCORDANCE. NO CHECK IS MADE FOR TIES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY SUBROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE AN UNLIMITED NUMBER OF SETS OF RANKINGS WITH A MAXIMUM OF 900 OBJECTS OVER ALL SETS. EACH SET MUST HAVE THE SAME NUMBER OF OBJECTS. ALL OBJECTS FOR THE ITH RANKING MUST BE READ BEFORE THE OBJECTS FOR THE JTH RANKING (I<J). THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 03 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 04-06 NPNT I3 NUMBER OF OBJECTS FOR ALL SETS (NPNT </= 900) DATA -- X(1) -- 1ST RANKING, VALUE OF 1ST OBJECT FIRST -- X(2) -- 1ST RANKING, VALUE OF 2ND OBJECT . . . -- X(K) -- 1ST RANKING, VALUE OF KTH OBJECT JTH -- X(1) -- JTH RANKING, VALUE OF 1ST OBJECT -- X(2) -- JTH RANKING, VALUE OF 2ND OBJECT . . . -- X(K) -- JTH RANKING, VALUE OF KTH OBJECT **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY WRITE HIS OWN "READ" SUBROUTINE IF HE WISHES. X05801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS47 **PROGRAM TITLE: KENDALL'S TAU CORRELATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES KENDALL'S TAU, A RANK CORRELATION COEFFICIENT, FOR A GIVEN SET OF ORDERED (X,Y) PAIRS. ASSOCIATED STATISTICS ARE ALSO PRODUCED, AND THE PROGRAM DETERMINES THE PRESENCE OR ABSENCE OF TIES IN THE DATASET AND ADJUSTS TAU ACCORDINGLY. THE PROGRAM HANDLES A MAXIMUM OF 300 (X,Y) DATA PAIRS, WHICH MUST BE SORTED IN ASCENDING ALGEBRAIC SEQUENCE OF THE X VARIABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "REAL" SUBROUTINE MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 300 (X,Y) DATA PAIRS. THE DATA PAIRS MUST BE SORTED INTO ASCENDING ALGEBRAIC SEQUENCE OF THE X VARIABLE. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW0 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-04 NPRS I3 NUMBER OF DATA PAIRS (X,Y) (NPRS </= 300) DATA -- X(I) -- VALUE OF THE FIRST VARIABLE FOR THE ITH (X,Y) DATA PAIR -- Y(I) -- VALUE FOR THE SECOND VARIABLE FOR THE ITH (X,Y) DATA PAIR **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY PROVIDE HIS OWN "READ" SUBROUTINE TO INPUT DATA IF HE WISHES. X05901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC15A **PROGRAM TITLE: GENERAL STATISTICS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM CHARACTERIZES A PARTICULAR SET OF DATA BY PERFORMING ELEMENTARY STATISTICAL CALCULATIONS (POINT ESTIMATES), DETERMINING THE 0.95 AND 0.99 CONFIDENCE INTERVALS FOR THE SAMPLE MEAN (ASSUMING NORMAL DISTRIBUTION OF THE DATA), AND GENERATING A HISTOGRAM OF THE DATA POINTS. A MAXIMUM OF 900 UNWEIGHTED AND UNGROUPED DATA POINTS CAN BE HANDLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE THE LIBRARY ROUTINE. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 900 UNWEIGHTED AND UNGROUPED DATA POINTS. NOTHING IS ASSUMED ABOUT THE UNDERLYING DISTRIBUTION EXCEPT WHERE NORMALITY IS HYPOTHESIZED FOR THE CONFIDENCE INTERVALS FOR THE SAMPLE MEAN. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-04 NPNT I3 NUMBER OF DATA POINTS (NPNT </= 900) 05-06 NTRVL I2 =0: PROGRAM SETS 11 INTERVALS FOR HISTOGRAM NOT=0: NUMBER OF INTERVALS FOR HISTOGRAM (2</= NTRVL </= 25) DATA -- X(I) -- ITH INPUT DATA POINT **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X06001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC15B **PROGRAM TITLE: GENERAL STATISTICS FOR MULTIPLE GROUPS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM GENERATES POINT ESTIMATES (MEAN, VARIANCE, STANDARD DEVIATION, AND STANDARD ERROR) AND CONFIDENCE INTERVAL ESTIMATES FOR THE SAMPLE MEAN. THE ANALYSIS MAY BE PERFORMED FOR A MAXIMUM OF 99 SETS OR GROUPS OF DATA IN A SINGLE EXECUTION. THE USER CAN ELECT TO DETERMINE CONFIDENCE INTERVALS FOR THE SAMPLE MEAN AT THE 0.90, 0.95 OR 0.99 LEVEL OF CONFIDENCE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE MAIN PROGRAM AND SUBROUTINES MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO PROCESS A MAXIMUM OF 99 GROUPS OF DATA AT ONE TIME. EACH GROUP MAY HAVE A MAXIMUM OF 9999 OBSERVATIONS AND THE SAMPLE SIZE NEED NOT BE CONSTANT OVER ALL GROUPS. FOR THE CASE OF UNEQUAL SAMPLE SIZES, THE "SAMPLE SIZE" INPUT DATA WILL INDICATE THE NUMBER OF OBSERVATIONS IN EACH GROUP. THE DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-03 NGRUP I2 NUMBER OF GROUPS OF DATA (1</=NGRUP</=99) 04-07 NSIZE I4 =0: UNEQUAL SAMPLE SIZES NOT=0: CONSTANT SAMPLE SIZE OVER ALL GROUPS 08-11 CLVL F4.2 =0: NO CONFIDENCE LIMITS ON SAMPLE MEAN DESIRED NOT=0: CONFIDENCE LEVEL (0.90, 0.95, 0.99) SAMPLE SIZE (ONLY IF NSIZE=0) 01-04 NPNT(1) I4 NUMBER OF OBSERVATIONS FOR GROUP 1 05-08 NPNT(2) I4 NUMBER OF OBSERVATIONS FOR GROUP 2 . . . 77-80 NPNT(20) I4 NUMBER OF OBSERVATIONS FOR GROUP 20 NOTE: FOR NGRUP > 20 AND NSIZE = 0, CONTINUE TO SAME FORMAT ON ANOTHER RECORD. DATA (ONE OR MORE RECORD FOR THE ITH OBSERVATION OVER ALL GROUPS) RECORD(I) = -- NLAST -- A D.S.D. INDICATOR -- X(1) -- THE ITH OBSERVATION FOR THE 1ST GROUP -- X(2) -- THE ITH OBSERVATION FOR THE 2ND GROUP . . . -- X(J) -- THE ITH OBSRVATION FOR THE JTH GROUP NOTE: THE D.S.D. INDICATOR (USED TO TERMINATE READING OF A PARTICULAR DATASET) MUST BE SET TO 9999 ON THE RECORD WITH THE LAST OBSER- VATION OVER ALL GROUPS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X06101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: PROBABILITY SUBPROGRAMS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SOFTWARE PRODUCT CONSISTS OF TEN ROUTINES WHICH CALCULATE THE FOLLOWING PROBABILITY FUNCTIONS: NORMAL CUMULATIVE PROBABILITY FUNCTION, CUMULATIVE BINOMIAL FUNCTION, CUMULATIVE POISSON FUNCTION, F CUMULATIVE PROBABILITY FUNCTION, CHI-SQUARE CUMULATIVE DISTRIBUTION FUNCTION, CHI-SQUARE AREA FOR CRITICAL VALUES, INVERSE F DISTRIBUTION FUNCTION, STUDENT'S T DISTRIBUTION, NORMAL PROBABILITY FUNCTION, AND STUDENT'S T CUMULATIVE PROBABILITY FUNCTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. NORMAL CUMULATIVE PROBABILITY FUNCTION IABLE = ANORM(Z,TOL) X IS AN N(O,1) VARIATE, Z IS MEASURED IN UNITS OF STANDARD DEVIATION FROM THE MEAN, ABS(Z) </=6, TOL > 0. 2. CUMULATIVE BINOMIAL FUNCTION VARIABLE = BINOM(X,EN,P) 0 </= X </= EN AND 0 < P < 1 WHERE X AND EN ARE FLOATING POINT INTEGERS. UNDERFLOW OCCURS IF P**EN OR (1-P)**EN IS LESS THAN 10**(-100) 3. CUMULATIVE POISSON FUNCTION VARIABLE = POIS(ENP,X) ENP </= 230, X MAY BE ANY NON-NEGATIVE INTEGRAL VALUE. 4. CUMULATIVE PROBABILITY FUNCTION VARIABLE = FPROB(R1,R2,EF) 1 < R1 < R2, R1 AND R2 ARE INTEGERS, AND EF > 0. UNDERFLOW OCCURS IF EF IS VERY LARGE OR NEARLY ZERO. 5. CHI-SQUARE CUMULATIVE DISTRIBUTION FUNCTION VARIABLE = CHIFN(R,EF,TOL) R > 1 AND R IS AN INTEGER. EF > 0 BUT IF EF IS UNREASONABLE, THE PROBABILITY VALUE WILL BE CORRECTED TO 0 OR 1. TOL SHOULD NOT BE SMALLER THAN 10**(-10). 6. CHI-SQUARE SUBROUTINE CALL CHISQ(N,XUPR,XLWR) 7. INVERSE F DISTRIBUTION FUNCTION VARIABLE = FDIST(M1, M2, P) M1 NOT=1, MS NOT=1. 8. STUDENT'S T DISTRIBUTION SUBROUTINE CALL TDIST(DF,CLVL,TVAL) THE ARGUMENT CLVL IS RESTRICTED TO THE VALUES OF 0.90, 0.95 OR 0.99. 9. NORMAL PROBABILITY FUNCTION VARIABLE = XAREA(YNORM) 0</=YNORM 10. STUDENT'S T CUMULATIVE PROBABILITY FUNCTION VARIABLE = TPROB(T,R) R > 1 AND R MUST BE A FLOATING POINT INTEGER. USE NORMAL DISTRIBU- TION FOR LARGE R. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X06201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: INTG1 **PROGRAM TITLE: INTEGRATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGRATION **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE EVALUATES THE DEFINITE INTEGRAL FOR A FUNCTION WITH VALUES OF EQUIDISTANT DISCRETE POINTS. THE INTEGRAL IS COMPUTED BY SIMPSON'S METHOD, GIVING THE EXACT VALUE OF THE INTEGRAL IF THE FUNCTION IS A POLYNOMIAL OF DEGREE NOT GREATER THAN 3. THERE MUST BE AN ODD NUMBER OF DATA POINTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALL INTG1(N, H, Y, RES) PARAMETER TYPE DESCRIPTION N INTEGER N IS THE NUMBER OF DATA POINTS AND MUST BE ODD H REAL THE STEP SIZE BETWEEN TWO CONSECUTIVE DATA POINTS Y REAL Y(I), I=1, N ARE THE VALUES OF THE INTEGRAND RES REAL THE VALUE OF THE DEFINITE INTEGRAL **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THERE MUST BE AN ODD NUMBER OF DATA POINTS. X06301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS37 **PROGRAM TITLE: CONFIDENCE INTERVAL FOR MEAN AND VARIANCE OF NORMAL A DISTRIBUTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM CALCULATES THE UPPER AND LOWER CONFIDENCE LIMITS FOR THE MEAN AND VARIANCE OF A SAMPLE ASSUMING THE DATA TO BE NORMALLY DISTRI- BUTED. THE USER MAY SPECIFY A CONFIDENCE LEVEL OF 0.90, 0.95 OR 0.99 FOR THE CONFIDENCE LIMITS OF THE SAMPLE MEAN. THE PROGRAM GENERATES 0.95 CONFIDENCE LIMITS FOR THE SAMPLE VARIANCE AND HANDLES A MAXIMUM OF 900 DATA POINTS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 900 DATA POINTS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-04 NPNT I3 NUMBER OF INPUT DATA POINTS (NPNT </= 900) 05-08 CLVL F4.2 CONFIDENCE LEVEL FOR MEAN (0.90, 0.95 OR 0.99) DATA -- X(I) -- ITH INPUT DATA POINT **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY WRITE HIS OWN "READ" SUBROUTINE TO INPUT DATA. X06401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC40A **PROGRAM TITLE: SAMPLE SIZE DETERMINATION ON SAMPLE VARIANCE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM UTILIZES AN ESTIMATE OF THE SAMPLE VARIANCE, BASED ON (M) DEGREES OF FREEDOM AND A SPECIFIED MAXIMUM CONFIDENCE INTERVAL LENGTH, TO DETERMINE THE SAMPLE SIZE REQUIRED TO GIVE ANY TEST LEVEL ESTIMATE OF THE POPULATION MEAN. THE PROGRAM USES A TRIAL AND ERROR METHOD, WITH THE INITIAL SAMPLE SIZE SPECIFIED BY THE USER. THE SAMPLE SIZE IS DETERMINED FOR CONFIDENCE LEVELS OF 0.90, 0.95 AND 0.99. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE PROGRAM AND SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-05 NPNT I4 INITIAL ESTIMATE OF THE SAMPLE SIZE (NPNT </= 2) 06-13 SS F8.0 SAMPLE VARIANCE 14-17 M2 I4 DEGREE OF FREEDOM ASSOCIATED WITH SAMPLE VARIANCE 1821 CIL I4 MAXIMUM LENGTH OF THE CONFIDENCE INTERVAL 22-25 BETA F4.2 PROBABILITY OF A TYPE II ERROR DATA NOT APPLICABLE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X06501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CORR1 **PROGRAM TITLE: MULTIPLE CORRELATION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: USING A MAXIMUM OF 20 VARIABLES, WITH UP TO 999 OBSERVATIONS PER VARIABLE THIS ROUTINE CALCULATES THE MEANS AND STANDARD DEVIATIONS OF EACH VARIABLE. THE RAW SUM OF SQUARES, CROSS-PRODUCT MATRIX, THE VARIANCE-COVARIANCE MATRIX, AND THE CORRELATION MATRIX, ALSO ARE DETERMINED. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS SUBROUTINE IS DESIGNED TO HANDLE A MAXIMUM OF 20 VARIABLES AND A MAXIMUM OF 999 OBSERVATIONS PER VARIABLE. THE DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUB- ROUTINE. CALL CORR1(M, NPNT) PARAMETER TYPE DESCRIPTION M INTEGER NUMBER OF VARIABLES (M </= 20) NPNT INTEGER NUMBER OF OBSERVATIONS PER VARIABLE (NPNT </=999) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE FOR DATA INPUT IF DESIRED. X06601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS04 **PROGRAM TITLE: COMPLETELY RANDOMIZED DESIGN **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS AN ANALYSIS OF VARIANCE ON A COMPLETELY RANDOMIZED EXPERIMENTAL DESIGN. A MAXIMUM OF 400 TREATMENTS CAN BE HANDLED, WITH NO RESTRICTIONS ON THE NUMBER OF OBSERVATIONS PER TREATMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "REAL" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM GENERATES THE NECESSARY INFORMATION TO PERFORM AN ANALYSIS OF VARIANCE ON A COMPLETELY RANDOMIZED EXPERIMENTAL DESIGN. MODEL: Y(IJ) = M + T(I) + E(IJ) ; I = 1,..., K; J = 1,...,N(I) SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-05 K I4 NUMBER OF TREATMENTS (K </= 400) DATA --- ISET --- TREATMENT NUMBER --- Y --- OBSERVATION D.S.D --- ISET --- DATA SET DELIMITER (ISET=9999) USED TO TERMINATE A PARTICULAR DATASET. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 400 TREATMENTS AND AN UNEQUAL NUMBER OF OBSERVATIONS PER TREATMENT WITH NO RESTRICTION ON THIS NUMBER. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. HOWEVER, ONLY ONE TREATMENT NUMBER AND ITS CORRESPONDING OBSERVATION ARE PERMITTED IN ONE RECORD. THERE MAY BE AN ARBITRARY ARRANGEMENT OF DATA; THE TREATMENT- OBSERVATION VALUES NEED NOT BE IN ANY SPECIFIC ORDER. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY WRITE HIS OWN "READ" SUBPROGRAM FOR DATA INPUT IF HE DESIRES. X06701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS06 **PROGRAM TITLE: RANDOMIZED COMPLETE BLOCK DESIGN **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS AN ANALYSIS OF VARIANCE ON A RANDOMIZED COMPLETE BLOCK EXPERIMENTAL DESIGN. A MAXIMUM OF 100 TREATMENTS AND BLOCKS CAN BE HANDLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY SUBROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM GENERATES THE NECESSARY INFORMATION TO PERFORM AN ANALYSIS OF VARIANCE ON A RANDOMIZED COMPLETE BLOCK EXPERIMENTAL DESIGN. MODEL: Y(IJ) = M + T(I) + B(J) + E(IJ); I=1,...,IT; J=1,...,IB SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 100 TREATMENTS AND A MAXIMUM OF 100 BLOCKS. THERE MAY BE AN UNLIMITED NUMBER OF OBSERVATIONS BUT ONLY ONE OBSERVATION PER EXPERIMENTAL UNIT (I.E., TREATMENT-BLOCK COMBINATION). MISSING OBSERVATIONS ARE NOT PERMITTED. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. HOWEVER, ONLY ONE TREATMENT-BLOCK OBSERVATION UNIT IS ALLOWED ON EACH DATA RECORD. THERE MAY BE AN ARBITRARY ARRANGEMENT OF DATA; THE INPUT NEED NOT BE IN ANY SPECIFIC ORDER. COL. VARIABLE FORMAT DESCRIPTON HEADER 01-72 36A2 FREE TEXT PARAMETER 01-03 ISW2 I3 =0: CALL EXIT NOT =0: BATCH RUN 04-06 IT I3 NUMBER OF TREATMENTS (IT < OR =100) 07-09 IB I3 NUMBER OF BLOCKS (IB < OR =100) DATA -- I -- TREATMENT NUMBER -- J -- BLOCK NUMBER -- X -- OBSERVATION D.S.D. -- I -- DATA SET DELIMITER (I=9999) USED TO TERMINATE READING OF A PARTICULAR DATA SET - SAME COLUMN AS I IN DATA. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE IF HE DESIRES. X06801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS07 **PROGRAM TITLE: RANDOMIZED COMPLETE BLOCK DESIGN WITH SUB-SAMPLING **REVISION? **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS AN ANALYSIS OF VARIANCE ON A RANDOMIZED COMPLETE BLOCK DESIGN AND SUBSAMPLING. A MAXIMUM OF 30 TREATMENTS AND 30 BLOCKS CAN BE HANDLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM GENERATES THE NECESSARY INFORMATION TO PERFORM AN ANALYSIS OF VARIANCE FOR A RANDOMIZED COMPLETE BLOCK DESIGN WITH SUBSAMPLING. MODEL: Y(I,J,K)= M + G(I) + B(J) + E(IJ) + H(IJK); I=1,...,IT; J=1,...,IB; K=1,...,N SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 30 TREATMENTS AND 30 BLOCKS. MISSING OBSERVATIONS ARE NOT PERMITTED. IF THE PROGRAM ENCOUNTERS A MISSING OBSERVATION, THE MESSAGE "MISSING DATA - JOB ABORTED" WILL INFORM THE USER OF AN UNBALANCED DESIGN AND EXECUTION WILL TERMINATE. THE DESIGN MUST BE "BALANCED",I.E., THERE MUST BE AN EQUAL NUMBER OF READINGS FOR EACH SUBSAMPLE. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. HOWEVER, ONLY ONE EXPERIMENTAL UNIT IS PERMITTED ON EACH DATA RECORD. THERE MAY BE AN ARBITRARY ARRANGEMENT OF DATA; THE INPUT NEED NOT BE IN ANY SPECIFIC ORDER. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-03 IT I2 # OF TREATMENTS (IT < OR =30) 04-05 IB I2 NUMBER OF BLOCKS (IB < OR =30) 06-07 N I2 NUMBER OF OBSERVATIONS IN EACH SUBSAMPLE TITLE 01-12 IEFF 6A2 FREE TEXT ID OF TREATMENTS 13-24 IBLK 6A2 FREE TEXT ID OF BLOCKS DATA -- I -- TREATMENT NUMBER -- J -- BLOCK NUMBER -- X -- OBSERVATION D.S.D. -- I -- DATA SET DELIMITER (I=9999) USED TO TERMINATE READING OF A PARTICULAR DATA SET - SAME COLUMN AS I IN DATA RECORD. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" ROUTINE IF HE DESIRES. X06901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS08 **PROGRAM TITLE: TWO-WAY FACTORIAL DESIGN **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE PROGRAM PERFORMS AN ANALYSIS OF VARIANCE FOR A TWO-WAY FACTORIAL IN A RANDOMIZED COMPLETE BLOCK DESIGN. THE F TEST IS FOR A FIXED MODEL. EACH REPLICATE MUST BE BALANCED (I.E., THE SAME NUMBER OF OBSERVATIONS IS REQUIRED FOR EACH LEVEL OF EACH FACTOR.) A MAXIMUM OF 20 LEVELS PER FACTOR AND 8 REPLICATES PER LEVEL, CAN BE HANDLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 20 LEVELS PER FACTOR AND 8 REPLICATES PER LEVEL. THE INPUT DATA MAY BE ENTERED IN ANY FORM, SUBJECT TO AN ORDERING RESTRICTION, THE FORMAT BEING SPECIFIED BY THE USER VIA THE SUBROUTINE READ. THE ORDERING RESTRICTION TAKES THE FOLLOWING FORM: IRA IS THE REPLICATE #; I AND J ARE THE LEVELS OF FACTORS A AND B RESPECTIVELY. THE DATA MUST BE ORDERED SO THAT J VARIES FIRST, THEN I, THEN IRA. FOR EXAMPLE, A SET OF DATA WITH REPLICATES AND TWO LEVELS OF EACH FACTOR WOULD BE ORDERED AS FOLLOWS: 111, 112, 121, 122, 211, 212, 221, 222 IF THE INPUT DATA IS NOT IN CORRECT ORDER, AN ERROR MESSAGE IS PRINTED AND EXECUTION IS TERMINATED. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01-04 IRAP I4 NUMBER OF REPLICATES (1 < OR = IRAP < OR =8) 05-08 IFACT I4 NUMBER OF LEVELS FOR FACTOR A (1 < OR = IFACT < OR =20) 09-12 JFACT I4 NUMBER OF LEVELS FOR FACTOR B (1 < OR = JFACT < OR =20) 13 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN DATA 01-03 IRA I3 REPLICATE NUMBER 04-06 I I3 LEVEL OF FACTOR A 07-09 J I3 LEVEL OF FACTOR B -- X -- OBSERVATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE IF HE WISHES. X07001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS09 **PROGRAM TITLE: THREE-WAY FACTORIAL DESIGN **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS A 3-FACTOR FACTORIAL ANALYSIS OF VARIANCE FOR A RANDOMIZED COMPLETE BLOCK DESIGN WITH REPLICATIONS. THE F STATISTIC COMPUTATION ASSUMES A (FIXED EFFECT) MODEL. A MAXIMUM OF 8 LEVELS OF FACTOR A, 8 LEVELS OF FACTOR B, 5 LEVELS OF FACTOR C, AND 8 REPLICATIONS, CAN BE HANDLED. MISSING OBSERVATIONS ARE NOT PERMITTED, AND THE DESIGN MUST BE BALANCED (I.E., THE SAME NUMBER OF OBSERVATIONS IS REQUIRED FOR ALL TREATMENT COMBINATIONS OVER ALL REPLICATES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED PRIOR TO LOADING OF ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM GENERATES THE NECESSARY INFORMATION TO PERFORM A THREE- FACTOR FACTORIAL ANALYSIS OF VARIANCE FOR A RANDOMIZED COMPLETE BLOCK DESIGN WITH REPLICATIONS. THE COMPUTED F STATISTIC ASSUMES A "FIXED EFFECT" MODEL. MODEL: Y(I,J,K,L) = MU + RHO(I) + ALPHA(J) + BETA(K) + (ALPHA*BETA(JK)) + UPSILON(1) + (ALPHA*UPSILON(JL)) + (BETA*UPSILON(KL)) + (ALPHA*BETA*UPSILON(IJKL)) + EPSILON(IJKL); I = L,...,R J = L,...,A K = L,...,B L = L,...,C SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 8 LEVELS OF FACTOR A, 8 LEVELS OF FACTOR B, 5 LEVELS OF FACTOR C, AND 8 REPLICATIONS. MISSING OBSERVATIONS ARE NOT PERMITTED. THE DESIGN MUST BE BALANCED ( THE SAME # OF OBSERVATIONS FOR ALL TREATMENT COMBINATIONS OVER ALL REPLICATES). THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. ONLY ONE TREATMENT COMBINATION FOR ONE REPLICATE IS PERMITTED ON A LINE. THE INPUT DATA MUST ALSO CORRESPOND WITH THE FOLLOWING ORDERING RESTRICTION. LET IRAP = THE REPLICATE NUMBER, WHERE IFACT = THE LEVELS OF FACTOR A, JFACT = THE LEVELS OF FACTOR B, AND LFACT = THE LEVELS OF FACTOR C. THEN THE DATA MUST BE ENTERED SUCH THAT LFACT VARIES FIRST, THEN JFACT, IFACT, AND FINALLY LRAP. THE FOLLOWING SCHEMATIC ILLUSTRATES THE ORDERING OF SUBSCRIPTS: 1111,1112,1113,...1121,1122,1123,... IF THE INPUT DATA IS NOT IN THE CORRECT ORDER, THE MESSAGE "DATA OUT OF ORDER - JOB ABORTED" IS PRINTED AND EXECUTION IS TERMINATED. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01-04 IRAP I4 NUMBER OF REPLICATES (1 < OR = IRAP < OR =8) 05-08 IFACT I4 NUMBER OF LEVELS OF FACTOR A (1 < OR = IFACT < OR =8) 09-12 JFACT I4 NUMBER OF LEVELS OF FACTOR B (1 < OR = JFACT < OR =8) 13-16 LFACT I4 NUMBER OF LEVELS OF FACTOR C (1 < OR = LFACT < OR =8) 17 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN DATA -- IRAP -- REPLICATE NUMBER -- IFACT -- LEVEL OF FACTOR A -- JFACT -- LEVEL OF FACTOR B -- LFACT -- LEVEL OF FACTOR C -- X -- OBSERVATION **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE. X07101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS53 **PROGRAM TITLE: ANALYSIS OF VARIANCE INFORMATION GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: EXPERIMENTAL DESIGN WITH SUBSAMPLING. THERE MAY BE AN EQUAL OR UNEQUAL NUMBER OF SUBSAMPLES PER EXPERIMENTAL UNIT (TREATMENT-BLOCK COMBINATION). COMPUTATION OF THE NONCENTRALITY PARAMETER IS INCLUDED IN THE ANALYSIS. INTERACTION BETWEEN TREATMENTS AND BLOCKS IS NOT ASSUMED. THE PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 7 TREATMENTS AND 7 BLOCKS AND A MAXIMUM OF 99 SUBSAMPLES PER TREATMENT-BLOCK COMBINATION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM GENERATES THE NECESSARY INFORMATION TO PERFORM AN ANALYSIS OF VARIANCE ON A RANDOMIZED BLOCK EXPERIMENTAL DESIGN WITH SUBSAMPLING. THERE MAY BE AN EQUAL OR UNEQUAL NUMBER OF SUBSAMPLES PER EXPERIMENTAL UNIT (TREATMENT-BLOCK COMBINATION). COMPUTATION OF THE NONCENTRALITY PARAMETER IS ALSO INCLUDED IN THE ANALYSIS. INTERACTION BETWEEN TREATMENTS AND BLOCKS IS NOT ASSUMED IN THE ANALYSIS. MODEL: Y(I,J,K)=MU + BETA(I) + ALPHA(J) + EPSILON(I,J,K); I=1,2,...,IT J=1,2,...,IB K=0,1,...N(I,J) THE MATRIX SYSTEM A*BETA = Q IS SET UP, AUGMENTED BY THE CONDITION SUM(BETA(I)) = 0 AND SOLVED FOR THE BETA(I). THE ADJUSTED SUMS OF SQUARES FOR THE TREATMENTS IS COMPUTED USING THE DOOLITTLE REDUCTION ON THE SYSTEM (C11 C12 . G1) (C21 C22 . G2) SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 7 TREATMENTS, 7 BLOCKS, AND A MAXIMUM OF 99 SUBSAMPLES PER TREATMENT-BLOCK COMBINATION. THE DATA POINTS MUST BE ENTERED, ONE POINT PER RECORD, AS SPECIFIED BELOW: COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02 IT I1 NUMBER OF TREATMENTS (IT < OR =7) 03 IB I1 NUMBER OF BLOCKS (IB NOT =7) DATA (ONE SET FOR EACH TREATMENT- BLOCK CELL) FIRST 01-02 N(I,J) I2 NUMBER OF SUBSAMPLES IN THE RECORD CELL (I,J) [THE ITH TREATMENT AND THE JTH BLOCK] NEXT N 01-08 ZI F8.0 OBSERVATIONS (1 PER RECORD (I,J) CARDS PUNCH DECIMAL, MUST HAVE 99 OR LESS FOR CELL (I,J)) NOTE: STARTING WITH THE FIRST TREATMENT, THE SETS OF DATA SHOULD BE READ IN THE FOLLOWING ORDER: CELL (1,1) CELL (1,2),...., CELL (1,IB), THUS, ALL THE CELLS FOR TRETMENT 1 ARE READ IN, THEN ALL THE CELLS FOR TREATMENT 2, ETC.. THEREFORE, THE ORDER IS: N(1,1) CELL(1,1) . . . CELL(1,IB) N(2,1) CELL(2,1) CELL(2,2) . . . CELL(2,IB) N(3,1) CELL(3,1) . . . **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X07201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS03 **PROGRAM TITLE: DUNCAN'S MULTIPLE RANGE TEST **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES ALL STATISTICS AND TESTS INVOLVED IN DUNCAN'S MULTIPLE RANGE TEST WITH EQUAL OR UNEQUAL READINGS PER GROUP. THE INPUT DATA CAN EITHER BE THE MEANS AND THE MEAN SQUARE ERROR, OR THE OBSERVATIONS THEMSELVES. IN THE LATER CASE, AN ANALYSIS OF VARIANCE FOR A COMPLETELY RANDOMIZED DESIGN IS PERFORMED. SIGNIFICANCE LEVELS OF EITHER 0.05 OR 0.01 CAN BE SELECTED. A MAXIMUM OF 100 TREATMENTS CAN BE HANDLED, WITH AN EQUAL OR UNEQUAL NUMBER OF OBSERVATIONS PER TREATMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED BEFORE ANY LIBRARY SUBROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 100 TREATMENTS WITH AN EQUAL OR UNEQUAL NUMBER OF OBSERVATIONS PER TREATMENT. RAW DATA MUST BE ENTERED AS A COMPLETELY RANDOMIZED DESIGN. IT IS ASSUMED THAT NONE OF THE TREATMENT MEANS ARE NUMERICALLY EQUAL. COL. VARIABLE FORMAT DESCRIPTION ---- -------- ------ ----------- DUNCAN'S TABLE SEE XT(I,J) F5.2 TABULAR VALUES OF TABLE DUNCAN'S TABLE AT THE 0.05 AND 0.01 LEVEL OF SIGNIFICANCE HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT ELSE: BATCH RUN 02-04 NSETS I3 NUMBER OF TREATMENTS OR SETS OF DATA (NSETS </= 99) 05-09 SLVL F5.3 SIGNIFICANCE LEVEL DE- SIRED (0.05 OR 0.01) 10 NTYPE I1 =0: INPUT I DATA POINTS ELSE: INPUT IS PRE- COMPUTED TREATMENT MEANS 11-20 DFSUM F10.4 =0: NTYPE=0 ELSE; ERROR MEAN SQUARE DATA (USED ONLY WHEN NTYPE = 0 RECORD 1 01 BLANK 02-21 FREE TEXT FOR TREATMENT NAME RECORD 2 01-03 NPNT I3 NUMBER OF DATA POINTS FOR THIS TREATMENT (NPNT </= 999) RECORD 3 -- X -- OBSERVATION FOR THE JTH TREATMENT . . . REPEAT FOR ALL TREATMENT SETS DATA (USED ONLY WHEN NTYPE NOT EQUAL TO 0) -- PNTS -- SAMPLE SIZE USED IN COMPUTING MEANS (PNTS </= 999) -- XMEAN (I) -- VALUE OF THE ITH TREATMENT MEAN **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X07301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS27 **PROGRAM TITLE: PAIRED T-TEST **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE STUDENT'S T-TEST FOR PAIRED OBSERVATIONS APPLIES TO THE CASE OF TWO SAMPLES IN WHICH THE OBSERVATIONS OF ONE SAMPLE MAY BE LOGICALLY RELATED OR PAIRED (IN TIME OR SPACE), ITEM BY ITEM, WITH THE OBSERVA- TIONS OF THE SECOND SAMPLE. THE PROGRAM CALCULATES POINT ESTIMATES (MEAN, STANDARD DEVIATION, STANDARD ERROR OF THE MEAN) FOR BOTH SAMPLES, THEN CALCULATES THE POINT ESTIMATES AND VALUE OF STUDENT'S (T) ON THE DIFFERENCE BETWEEN SAMPLES. THE VALUE OF STUDENT'S (T) IS COMPUTED FOR A SPECIFIED LEVEL OF CONFIDENCE, 0.90, 0.95, OR 0.99. A MAXIMUM OF 600 UNWEIGHTED (X,Y) DATA PAIRS CAN BE HANDLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 600 UNWEIGHTED (X,Y) DATA PAIRS. THE VALUE OF THE STUDENT'S T AT A SPECIFIED LEVEL OF CONFIDENCE DEPENDS ON THE ASSUMPTION OF NORMALITY. THE USER MAY ENTER THE INPUT DATA IN ANY FORM, SUBJECT TO AN ORDERING RESTRICTION, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. THE USER MUST ENTER HIS INPUT DATA PAIRS IN THE FOLLOWING ORDER: (X1(1),X2(1)), (X1(2),X2(2)),..., (X1(I),X2(I)),... WHERE: X1(I) = THE ITH VALUE OF SAMPLE A X2(I) = THE ITH VALUE OF SAMPLE B COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-04 NPRS I3 NUMBER OF (X,Y) DATA PAIRS, (NPRS </= 600) 05-08 CLVL F4.2 SPECIFIED CONFIDENCE LEVEL (0.90, 0.95 OR 0.99) DATA -- X1(I) -- ITH VALUE OF FIRST SAMPLE IN A (X,Y) DATA PAIR. -- X2(I) -- ITH VALUE OF SECOND SAMPLE IN A (X,Y) DATA PAIR. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE IF DESIRED. X07401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS28 **PROGRAM TITLE: BARTLETT'S HOMOGENEITY OF VARIANCE TEST **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM TESTS THE HYPOTHESIS THAT THE ESTIMATE VARIANCE FROM (K) SAMPLES IS HOMOGENEOUS. A ONE-SIDED ALTERNATIVE AT THE 0.95 CONFIDENCE LEVEL IS USED AS THE TEST STATISTIC; THAT IS, IF THE CALCULATED CHI- SQUARE VALUE EXCEEDS THE TABULAR VALUE OF CHI-SQUARE AT THE DESIGNATED PROBABILITY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE MAIN PROGRAM AND SUBROUTINES MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM WILL TEST THE HYPOTHESIS THAT THE ESTIMATED VARIANCE FROM K SAMPLES ARE HOMOGENOUS. A ONE-SIDED ALTERNATIVE AT THE 0.95 CONFI- DENCE LEVEL IS USED AS THE TEST STATISTIC; THAT IS, IF THE CALCULATED CHI-SQUARE VALUE EXCEEDS THE TABUALR VALUE OF CHI-SQUARE AT THE DESIGNATED PROBABILITY OF A TYPE I ERROR, 0.05, THE ASSUMPTION OF HOMOGENEOUS OR CONSTANT VARIANCES OVER THE K SAMPLES IS REJECTED. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 10 SAMPLES. SAMPLE SIZES NEED NOT BE BALANCED; I.E., THE USER MAY SPECIFY AN UNEQUAL NUMBER OF OBSERVATIONS FOR EACH SAMPLE. THE TOTAL NUMBER OF OBSERVA- TIONS OVER ALL SAMPLES MUST BE LESS THAN OR EQUAL TO 900. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 10 SAMPLES. SAMPLE SIZES NEED NOT BE BALANCED; I.E., THE USER MAY SPECIFY AN UNEQUAL NUMBER OF OBSERVATIONS FOR EACH SAMPLE. THE TOTAL NUMBER OF OBSERVA- TIONS OVER ALL SAMPLES MUST BE LESS THAN OR EQUAL TO 900. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-03 K I2 NUMBER OF SAMPLES (K<10) 04-07 N(1) I4 SIZE OF THE FIRST SAMPLE . . . 20-23 N(K) I4 SIZE OF THE KTH SAMPLE DATA -- X(I) -- OBSERVATIONS CORRESPONDING TO 1,....,J THE FIRST SAMPLE OF SIZE N(1) (I = 1,....,N(1)) J+1,....,K -- X(I) -- OBSERVATIONS CORRESPONDING TO . THE SECOND SAMPLE OF SIZE N(2) ./R (I=N(1)+1,....,N(2)) . 1,....,M -- X(I) -- OBSERVATIONS CORRESPONDING TO THE KTH SAMPLE OF SIZE N(K) (I=N(K)-1,....,N(K)) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY CHOOSE TO SUPPLY HIS OWN "READ" SUBROUTINE. X07501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS35 **PROGRAM TITLE: KOLMOGOROV - SMIRNOV GOODNESS OF FIT TEST **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: FOR A MAXIMUM OF 999 DATA POINTS, THIS PROGRAM PERFORMS THE KOLMOGOROV- SMIRNOV GOODNESS-OF-FIT TEST FOR A SPECIFIED PROBABILITY DISTRIBUTION. THE SOURCE DATA CAN BE TESTED FOR FIT AGAINST ANY OF THE FOLLOWING FUNCTIONS: BINOMIAL, CHI-SQUARE, F, NORMAL, POISSON, OR STUDENT'S (T) (SEE HP22143 FOR ANY OF THESE FUNCTIONS). THE USER HAS THE OPTION OF (A) SPECIFYING THE NUMBER OF CLASS INTERVALS, (B) LETTING THE PROGRAM GENERATE CLASS INTERVALS BY USE OF STURGE'S RULE, OR (C) SPECIFYING THE NUMBER OF INTERVALS AND UPPER BOUNDS OF EACH INTERVAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM WILL HANDLE A MAXIMUM OF 999 DATA POINTS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. ONCE A PARTICULAR PROBABILITY DISTRIBUTION HAS BEEN CHOSEN, THE FOLLOWING "POPULATION PARAMETER" ESTIMATES ARE REQUIRED: (1) BINOMIAL DISTRIBUTION PARM1 = PROBABILITY OF SUCCESS FOR EACH TRIAL PARM2 = 0.0 PARM3 = 0.0 (2) CHI-SQUARE DISTRIBUTION PARM1 = DEGREES OF FREEDOM PARM2 = 0.0 PARM3 = 0.0 (3) F DISTRIBUTION PARM1 = DEGREES OF FREEDOM FOR THE NUMERATOR PARM2 = DEGREES OF FREEDOM FOR THE DENOMINATOR PARM3 = 0.0 (4) NORMAL DISTRIBUTION PARM1 = SAMPLE MEAN PARM2 = SAMPLE STANDARD DEVIATION PARM3 = TOLERANCE FOR CORRECT PROBABILITY VALUES (0.001 OR 0.0001) (5) POISSON DISTRIBUTION PARM1 = (NUMBER OF OBSERVATIONS)X(PROBABILITY OF SUCCESS ON ANY ONE TRIAL) PARM2 = 0.0 PARM3 = 0.0 (6) STUDENT'S T DISTRIBUTION PARM1 = DEGREES OF FREEDOM PARM2 = 0.0 PARM3 = 0.0 COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-04 NPNT I3 NUMBER OF DATA POINTS (NPNT </= 999) 05-06 NTRVL I2 =0: NUMBER OF INTERVALS SET BY STURGES' RULE =1: NUMBER OF INTERVALS AND UPPER BONDS ARE READ IN 1: DESIRED NUMBER OF INTERVALS (NTRVL </= 99) 07-14 CV* F8.4 =0: NPNT >/= 35 NOT=0: NPNT < 35 15-22 SLVL F8.4 SIGNIFICANCE LEVEL CORRESPOND- ING TO VALUE OF CV *CV = CRITICAL VALUE FROM PUBLISHED TABLES. SEE OSTLE, B., STATISTICS IN RESEARCH, 2ND ED., P. 560. DISTRIBUTION 01 -- -- BLANK 02-21 NCOMT 10A2 IDENTIFICATION 22-33 PARM1 F12.4 POPULATION PARAMETER 34-45 PARM2 F12.4 ESTIMATES - SEE ABOVE 46-57 PARM3 F12.4 DATA -- X(I) -- INPUT DATA POINTS *INTERVAL 01-02 NTRVL I2 DESIRED NUMBER OF INTERVALS (NTRVL </= 99) **UPPER BOUND -- XU(I) -- UPPER BOUND FOR THE INTERVALS (I = 1, NTRVL). FORMAT SET IN READ SUBROUTINE. *USED ONLY WHEN NTRVL = 1 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MUST SUPPLY A "READ" SUBROUTINE TO ENTER DATA, AND A TEST FOR FIT VIA THE SUBROUTINE "EXPEC". EXPEC MAY BE BINOMIAL, CHI-SQUARE, F, NORMAL, POISSON OR STUDENT'S T SUBROUTINE. X07601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS36 **PROGRAM TITLE: CHI-SQUARE GOODNESS OF FIT **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS THE CHI-SQUARE GOODNESS-OF-FIT TEST, AND COMPUTES THE CHI-SQUARE VALUE OF THE TEST, FOR ANY OF THE FOLLOWING FUNCTIONS: BINOMIAL, CHI-SQUARE, F, NORMAL, POISSON, STUDENT'S (T). THE USER HAS THE OPTION OF SPECIFYING THE UPPER AND LOWER BOUNDS FOR A GIVEN NUMBER OF INTERVALS, OR OF READING IN THE END POINTS OF EACH INTERVAL. A MAXIMUM OF 1,000 DATA POINTS CAN BE HANDLED. HP PROGRAM 22143, CLASSI- FICATION CODE A408, CAN BE USED TO FURNISH THE SOURCE DATA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENT WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 1000 DATA POINTS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. ONCE A PROBABILITY DISTRIBUTION HAS BEEN SELECTED, "POPULATION PARAMETER" ESTIMATES ARE REQUIRED (SEE ENCLOSURE). NOTE THAT IF THE NORMAL DISTRIBUTION IS SPECIFIED AS THE "TEST PDF" AND A STANDARD NORMAL TRANSFORM OF AN INDIVIDUAL DATA POINT EXCEEDS +/-6 FROM THE SAMPLE MEAN, THE STABILITY OF CONVERGENCE IN FUNCTION ANORM (A40-22143) IS NOT GUARANTEED. GIVEN A SPECIFIED PROBABILITY DISTRIBUTION, THE APPROPRIATE FORM OF SUBROUTINE CDF SHOULD BE SELECTED. SUBROUTINE CDF SUBSEQUENTLY CALLS A SUBPROGRAM FROM A408-22143 AND RESTRICTIONS INVOLVING THE VARIOUS PARAMETERS FOR THE PROBABILITY DISTRIBUTION SUBPROGRAM CAN BE FOUND IN THE DOCUMENTATION OF A408-22143. (1) BINOMIAL DISTRIBUTION SUBROUTINE CDF (NTRVL, P1, P2, ENDPT, EF) DIMENSION ENPDT(1),EF(1) XL=ENDPT(1) PL=BINOM(XL,NTRVL,P1) DO 100 I=1, NTRVL XU=ENDPT(I+1) PU=BINOM(XU,NTRVL,P1) EF(I)=PU-PL 100 PL=PU RETURN END (2) CHI SQUARE DISTRIBUTION SUBROUTINE CDF (NTRVL,P1,P2,ENDPT,EF) DIMENSION ENDPT(1),EF(1) TOL=0.0001 XL=ENDPT(1) PL=CHIFN (P1,XL,TOL) DO100 I=1, NTRVL XU=ENDPT(I+1) PU=CHIFN (P1,XU,TOL) EF(I)=PU-PL 100 PL=PU RETURN END (3) F DISTRIBUTION SUBROUTINE CDF (NTRVL,P1,P2,ENDPT,EF) DIMENSION ENDPT(1),EF(1) XL=ENDPT(1) PL=FPROB (P2,P1,XL) DO 100 I=1, NTRVL XU=ENDPT(I+1) EF(I)=PU-PL 100 PL=PU RETURN END (4) NORMAL DISTRIBUTION SUBROUTINE CDF (NTRVL,P1,P2, ENDPT,EF) DIMENSION ENDPT(1),EF(1) TOL=0.0001 XL=(ENDPT(1)-P1)/P2 PL=ANORM (XL,TOL) DO 100 I=1, NTRVL XU=(ENDPT(I+1)-P1)/P2 PU=ANORM (XU,TOL) EF(I)=PU-PL 100 PL=PU RETURN END POPULATION PARAMETERS 1. BINOMIAL DISTRIBUTION PARM1 = PROBABILITY OF SUCCESS FOR EACH TRIAL PARM2 = 0.0 PARM3 = 0.0 2. CHI-SQUARE DISTRIBUTION PARM1 = DEGREES OF FREEDOM PARM2 = 0.0 PARM3 = 0.0 3. F DISTRIBUTION PARM1 = DEGREES OF FREDOM FOR THE NUMERATOR PARM2 = DEGREES OF FREEDOM FOR THE DENOMINATOR PARM3 = 0.0 4. NORMAL DISTRIBUTION PARM1 = SAMPLE MEAN PARM2 = SAMPLE STANDARD DEVIATION PARM3 = TOLERANCE FOR CORRECT PROBABILITY VALUES (0.001 OR 0.0001) 5. POISSON DISTRIBUTION PARM1 = (NUMBER OF OBSERVATIONS)X(PROBABILITY OF SUCCESS ON ANY ONE TRIAL) PARM2 = 0.0 PARM3 = 0.0 6. STUDENT'S T DISTRIBUTION PARM1 = DEGREES OF FREEDOM PARM2 = 0.0 PARM3 = 0.0 COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-05 NPNT I4 NUMBER OF DATA POINTS (1 </= NPNT </= 1000) 06-09 NTRVL I4 NUMBER OF INTERVALS DESIRED (2 </= NTRVL </= 50) 10-17 FBND F8.0 LOWER BOUND FOR INTERVALS (OPTIONAL) 18-25 UBND F8.0 UPPER BOUND FOR INTERVALS (OPTIONAL) 26-33 P1 F8.0 PROBABILITY DISTRIBUTION PARA- METERS (SEE SPECIAL SECTION "POPULATION PARAMETERS" ENCLOSURE) DATA -- X(I) -- INPUT DATA POINTS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY DEFINE AN INPUT SUBROUTINE READ AND MUST DEFINE A PROBABI- LITY DISTRIBUTION SUBROUTINE CDF (CDF MAY BE ONE OF THE FOLLOWING: (1) BINOMIAL, (2) CHI-SQUARE, (3) F, (4) NORMAL, (5) POISSON, OR (6) STUDENT'S T.) X07701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS38 **PROGRAM TITLE: TESTS OF HYPOTHESIS FOR VARIANCES **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE PROGRAM TESTS FOR ONE OF THE FOLLOWING: A. WHETHER THE VARIANCE OF A NORMAL POPULATION EQUALS A SPECIFIED VARIANCE. B. WHETHER THE VARIANCES ARE EQUAL, PROVIDING BOTH COME FROM A NORMAL POPULATION. RESULTS ARE DETERMINED WITH A 95-PERCENT CONFIDENCE INTERVAL. A MAXIMUM OF 500 (X,Y) DATA PAIRS OR 1,000 DATA POINTS CAN BE HANDLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE MAIN PROGRAM AND SUBROUTINES MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. IN ORDER TO TEST S**2=S(0)**2, SET NX = NUMBER OF DATA POINTS AND NY = 0. IF TWO SETS OF DATA ARE REQUIRED (E.G., TO TEST S(1)**2 = S(2)**2) THE DATA POINTS MUST BE READ IN THE FOLLOWING ORDER: X(1),X(2),...,X(I),...X(NX),Y(1),Y(2),...,Y(J),...Y(NY). THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02 NTEST I1 =0: TEST IS S**2=S(0)**2 NOT=0: TEST IS S**2=S(2)**2 03-05 NX I3 NUMBER OF 'X' DATA POINTS (NX </= 500 IF NTEST NOT=0, OTHERWISE, NX </= 1000) 06-08 NY I3 NUMBER OF 'Y' DATA POINTS (NY </=500 IF NTEST NOT=0, OTHERWISE, NY = 0) 09-16 P F8.3 =0: NTEST NOT=0 NOT=0: VALUE OF S(0)**2 DATA --- X(I) --- INPUT DATA POINTS - THE SECOND AND/OR SET OF INPUT DATA POINTS (WHEN Y(I) TESTING S(1)**2 = S(2)**2 FOLLOWS THE FIRST SET. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY SUPPLY HIS OWN "READ" SUBROUTINE TO INPUT DATA. X07801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS39 **PROGRAM TITLE: TESTS OF HYPOTAESIS FOR MEANS **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM TESTS (A), WHETHER A MEAN OF A NORMAL POPULATION EQUALS A SPECIFIED VALUE OR (B), WHETHER THE MEANS ARE EQUAL (PROVIDING BOTH COME FROM A NORMAL POPULATION). RESULTS ARE DETERMINED WITH A CONFIDENCE INTERVAL OF 0.90, 0.95 OR 0.99. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE "READ" SUBROUTINE MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE CARD INPUT REQUIREMENTS. TO TEST M = M(O), SET NX = NUMBER OF DATA POINTS (NX </= 1600) AND NY = 0. TO TEST M(1) = M(2), SET NX = NUMBER OF DATA POINTS OF THE FIRST SET (NX </= 800) AND NY = NUMBER OF DATA POINTS OF THE SECOND SET (NY</=800). THIS PROGRAM WILL THEN READ THE DATA POINTS IN THE FOLLOWING ORDER: X(1), X(2), ..., X(NX), Y(1), Y(2), ..., Y(NY) THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW2 I1 =0: CALL EXIT NOT=0: BATCH RUN 02-04 NX I3 NUMBER OF 'X' DATA POINTS (NX </= 1600 IF NTEST NOT=0) 05-07 NY I3 NUMBER OF 'Y' DATA POINTS (NY = 0) IF NTEST NOT=0, OTHERWISE, NY </= 800) 08 NTEST I1 =0: TEST IS M(1) = M(2) NOT=0: TEST IS M = M(0) 09-13 CLVL F5.2 CONFIDENCE INTERVAL (0.90, 0.95 OR 0.99) 14-21 XMEAN F8.0 =0: NTEST = 0 NOT=0: VALUE OF M(O) DATA -- X(I) &/OR -- X(I) = THE FIRST SET OF DATA Y(I) POINTS AND Y(I) = THE SECOND SET OF DATA POINTS, FOLLOWS THE FIRST SET WHEN TESTING M(1) = M(2) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY ELECT TO SUPPLY HIS OWN "READ" SUBROUTINE TO INPUT DATA. X07901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS16 **PROGRAM TITLE: X-Y PLOTTER ON PRINTER **REVISION? **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: GRAPHIC PLOTTER PRINTER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE IS FORTRAN CALLABLE. THIS ROUTINE PRODUCES GRAPHS ON A TELEPRINTER. AN X ARRAY IS SCALED TO SUIT THE PRINTED GRAPH, AND IS PLOTTED AGAINST EITHER THE ELEMENT NUMBERS IN THE ARRAY OR AGAINST ANOTHER ARRAY, Y. EACH DATA POINT IS MARKED ON THE GRAPH AS A LETTER (X) AND THE COORDINATES OF THE POINT ALSO ARE PRINTED. THE ROUTINE CAN START AT ANY POINT IN THE ARRAY, AND THE OUTPUT CAN BE EITHER A PRINT PLOT OR A BAR PLOT. A MAXIMUM OF 200 (X,Y) DATA PAIRS CAN BE ACCEPTED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE PROGRAM AND SUBROUTINE MUST BE LOADED WITH ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. THIS ROUTINE WILL ACCEPT A MAX OF 200 (X,Y) DATA PAIRS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. COL VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01 ISW1 I1 =0: POINT OUTPUT =1: BAR OUTPUT 02 ISW2 I1 =0: 2 LINES PER ELEMENT =1: 1 LINE PER ELEMENT 03 ISW3 I1 =0: X PLOTTED VS. ELEMENT NUMBER =1: X PLOTTED VS. Y 04 ISW4 I1 =0: CALL EXIT NOT =0: BATCH RUN 05 ISW5 I1 DEFINED AS 0 06-09 N I4 NUMBER OF ELEMENTS IN X ARRAY 10 CHARA A1 PLOTTING CHARACTER (MAY BE +, *, ETC.) DATA (ONE RECORD FOR EACH (X,Y) PAIR) -- X(I) -- X VALUE TO BE PLOTTED -- Y(I) -- Y VALUE TO BE PLOTTED NOTE:A SUBROUTINE VERSION OF THE X,Y PLOTTER IS EXECUTED BY THE CALL STATEMENT: CALL PTSCL (X,Y,N,NAME,ISW,CHARA,MIN) PARAMETER TYPE DESCRIPTION X REAL X ARRAY TO BE PLOTTED Y REAL Y ARRAY TO BE PLOTTED N INTEGER NUMBER OF ELEMENTS IN X ARRAY NAME INTEGER TABLE HEADING ISW(1-5) INTEGER SWITCHES CHARA REAL PLOTTING CHARACTER MIN INTEGER STARTING POINT IN PLOTTING X ARRAY **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY CHOOSE TO SUPPLY HIS OWN "READ" SUBROUTINE TO INPUT DATA. X08001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SPLTR **PROGRAM TITLE: TIME SERIES PLOTTER **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: GRAPHIC PLOTTER PRINTER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: AVAILABLE IN FUNCTION FORM, THIS SUBPROGRAM PLOTS FIXED-POINTS INTEGERS ON THE TELEPRINTER. IF THE VALUE OF THE INTEGER IS FROM 0 TO 50, THE POINT APPEARS AS AN ASTERISK, THE DISTANCE FROM THE LEFT MARGIN OF THE PAGE BEING PROPORTIONATE TO THE VALUE OF THE POINT. IF THE VALUE IS OVER 50, THE INTEGER ITSELF IS PRINTED IN NUMERICAL FORM AT THE RIGHT HAND EDGE OF THE PAGE. SUCCESSIVE DATA POINTS ARE PLOTTED ON SUCCESSIVE LINES DOWN THE PAGE. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: (VARIABLE) - SPLTR(N) WHERE N IS RETURNED TO THE MAINLINE PROGRAM UNCHANGED. PARAMETER TYPE DESCRIPTION N INTEGER IF 0 < OR = N < OR = 100, N WILL BE REPRESENTED AS AN ASTERISK. IF N > 100, THE VALUE OF THE INTEGER WILL BE PRINTED IN THE EXTREME RIGHT HAND SIDE OF THE OUTPUT. IF N=-999, A HEADER ARRAY IS PRINTED AND THIS SHOULD EITHER BE DONE ON THE FIRST OR A LAST CALL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X08101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS19 **PROGRAM TITLE: HISTOGRAM PLOTTER **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: GRAPHIC PLOTTER PRINTER STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM SORTS A SINGLE DIMENSION FLOATING POINT ARRAY INTO ASCENDING SEQUENCE, AND (A) PRODUCES A HISTOGRAM OF THE DATA POINTS ON THE TELEPRINTER OR LINE PRINTER, OR (B) FURNISHES THE FREQUENCY DISTRIBUTION OF DATA POINTS, OR (C) PRODUCES BOTH A HISTOGRAM AND A FREQUENCY DISTRIBUTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THE MAIN PROGRAM AND SUBROUTINES MUST BE LOADED PRIOR TO ANY LIBRARY ROUTINES. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPES INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. COL. VARIABLE FORMAT DESCRIPTION HEADER 01-72 -- 36A2 FREE TEXT PARAMETER 01-04 N I4 NUMBER OF DATA POINTS (N < OR =400) 05 ISW1 I1 =0: FREQUENCY DISTRIBUTION =1: HISTOGRAM =2: FREQUENCY DISTRIBUTION AND HISTOGRAM DATA -- X(I) -- DATA POINTS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY CHOOSE TO PROVIDE HIS OWN "READ" SUBROUTINE FOR DATA INPUT. X08201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UNREF **PROGRAM TITLE: FORTRAN UNIT REFERENCE NUMBER EDITOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: I/O **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM ALLOWS THE USER TO CHANGE THE UNIT REFERENCE NUMBER OF AN INPUT/OUTPUT STATEMENT IN A FORTRAN PROGRAM WRITTEN IN HEWLETT-PACKARD FORTRAN II. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: NO CONTROL STATEMENT IS ON THE SOURCE TAPE. USUAL COMPILE, LOAD AND RUN PROCEDURES ARE USED. THE INPUT IS A FORTRAN PROGRAM ON PAPER TAPE WHICH IS READ BY THE PHOTOREADER (UNIT REFERENCE NO. 5). THE NECESSARY INFORMATION IS REQUESTED BY THE TELEPRINTER (UNIT REFERENCE NO. 2) AND THE ANSWERS ARE ENTERED ON THE KEYBOARD (UNIT REFERENCE NO. 1) IN A CONVERSATIONAL MODE. THE OUTPUT IS THE MODIFIED FORTRAN PROGRAM WHICH IS PUNCHED ON A HIGH-SPEED PUNCH (UNIT REFERENCE 4). WHEN AN END STATEMENT IS REACHED ON THE TAPE, A MESSAGE IS PRINTED ON THE TELEPRINTER, TEN FEED FRAMES ARE PUNCHED AND THE PROGRAM PAUSES. IF SWITCH 1 IS SWITCHED UP, THE PROGRAM WILL HALT UPON PUSHING RUN. IF SWITCH 2 IS PUSHED UP, UPON PUSHING RUN, THE PROGRAM WILL BE STARTED AND THE INTIAL EDIT QUESTIONS WILL BE REQUESTED AGAIN. IF SWITCHES 1 AND 2 ARE DOWN, WHEN THE RUN BUTTON IS PUSHED, THE NEXT PROGRAM SUBPROGRAM WILL BE EDITED ACCORDING TO THE INSTRUCTIONS FOR THE LAST PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IN POSITIONING THE INPUT TAPE IN THE PHOTOREADER, PUT THE LAST FEED FRAME BEFORE THE FIRST NON-NULL CHARACTER ON THE TAPE UNDER THE READ HEAD IN ORDER TO INSURE THAT ALL THE CHARACTERS OF THE FIRST LINE ARE READ IF THE FIRST LINE OF THE PROGRAM IS 72 CHARACTERS LONG. THE FIRST 72 CHARACTERS (INCLUDING FEED FRAMES) READ BY THE READER ARE CONSIDERED TO BE THE FIRST LINE. IF THE NUMBER OF FEED FRAMES AND THE NUMBER OF CHARACTERS READ ARE MORE THAN 72, THE LAST PART OF THE FIRST LINE WILL BE OMITTED. IF THE FIRST STATEMENT OF THE PROG IS SHORT (SAY A PROGRAM STATEMENT OR A CONTROL STATEMENT), THIS CRITICAL POSITIONING IS NOT NECESSARY. FOR EXAMPLE, IF THERE ARE ONLY 10 CHARS IN THE FIRST LINE, UP TO 62 FEED FRAMES CAN BE READ WITH NO ERRORS. X08301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: HSTPL **PROGRAM TITLE: HISTOGRAM PLOTTER SUBROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: GRAPHIC PLOTTER STATISTICS PRINTER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE IS FORTRAN CALLABLE. THIS ROUTINE SORTS A SINGLE-DIMENSION FLOATING POINT ARRAY INTO ASCENDING SEQUENCE, AND (A) PRODUCES A HISTOGRAM OF THE DATA POINTS ON THE TELEPRINTER, OR (B) FURNISHES THE FREQUENCY DISTRIBUTION OF THE DATA POINTS, OR (C) PRODUCES BOTH A HISTOGRAM AND A FREQUENCY DISTRIBUTION. A MAXIMUM OF 400 DATA POINTS CAN BE HANDLED; ANY NUMBER OF DUPLICATIONS IS ALLOWED. (WITH A SLIGHT CHANGE IN THE ROUTINE, MORE THAN 400 POINTS CAN BE PROCESSED.) **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DATA IS SUPPLIED TO THE SUBROUTINE THROUGH PARAMETERS IN THE SUBROUTINE CALL FROM THE MAIN PROGRAM. THIS SUBROUTINE IS DESIGNED TO HANDLE A MAXIMUM OF 400 DIFFERENT VALUES OF THE VARIABLE X (ANY NUMBER OF DUPLICATIONS IS ALLOWED). IF MORE THAN THIS IS REQUIRED, CHANGE THE DIMENSION OF HIST FROM HIST(400) IN SUBROUTINE HSTPL. THE CALLING SEQUENCE FOR THE SUBROUTINE VERSION OF THIS PROGRAM IS: CALL HSTPL (NAME, N,X,ISW1) WHERE: NAME = HEADER IDENTIFICATION (36A2) N = NUMBER OF OBSERVATIONS IN ARRAY X = NAME OF ARRAY ISW1 = 0, FREQUENCY DISTRIBUTION = 1, HISTOGRAM PLOTTER >/= 2, FREQUENCY DISTRIBUTION AND HISTOGRAM PLOTTER **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X08401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: SAMPLE SIZE DETERMINATION TO TEST H(O) **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES THE SAMPLE SIZE, N, TO TEST EITHER H(O): M=M(1) OR H(O): U(1)=U(2) SO THAT THE PROBABILITY OF DETECTING THE SIGNIFICANT DIFFERENCE, A, IS EQUAL TO B. A PREVIOUS REQUIREMENT IS AN ESTIMATE OF THE POPULATION VARIANCE (FOR U=U(1)) OR FOR THE COMMON VARIANCE (FOR U(1)=U(2)), S**2, BASED ON M DEGREES OF FREEDOM. THE TABLE USED IN DETERMINING THE SAMPLE SIZE IS READ IN AS DATA. THE VALUE OF K = A**2/S**2 IS COMPUTED, LOCATED IN THE TABLE, AND THE VALUE OF N CAN THEN BE DETERMINED. THE VALUE OF A, THE PROBABILITY OF REJECTING H(O) WHEN IT IS TRUE, IS 0.10 FOR A TWO-TAILED TEST AND 0.05 FOR A ONE- TAILED TEST. THE VALUES DETERMINED FOR B ARE 0.80 AND 0.95. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TABLES USED TO DETERMINE THE REQUIRED SAMPLE SIZE MUST BE INCLUDED WITHIN THE INPUT DATA. THE USER MUST SPECIFY THE APPROPRIATE DEGREES OF FREEDOM FOR THE ESTIMATE OF VARIANCE. THIS CHOICE IS RESTRICTED TO THE VALUES 1, 2, 3, 4, 5, 6, 8, 12, 16, 24, OR 32 IF THE DEGREES OF FREEDOM FOR THE SAMPLE VARIANCE IS LESS THAN 35. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL RESEMBLE THE CARD INPUT REQUIREMENTS. INPUT REQUIRMENTS COL. VARIABLE FORMAT DESCRIPTION (1)HEADER 01-72 FREE TEXT (2)INPUT TABLES * STAB(I,J) F4.2 SAMPLE SIZE TABLES FOR PR. TYPE II ERROR = 0.80 * STAB(I,J) F4.2 SAMPLE SIZE TABLES FOR PR. TYPE II ERROR = 0.95 (3)PARAMETERS 01 ISW2 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-04 M I3 DEGREES OF FREEDOM FOR THE ESTIMATE OF VARIANCE (SEE RESTRICTIONS IF M < 35) 05-14 A F10.3 SIGNIFICANT DIFFERENCE BETWEEN U AND U(1) OR U(1) AND U(2) TO BE DETECTED. 15-24 STDEV F10.3 SAMPLE STANDARD DEVIATION (4)DATA(NOT APPLICABLE) *THE INPUT TABLES ARE READ USING FORMAT (12(F4.2, 2X)) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X08501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: POOLING OF GROUPS IN REGRESSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS LINEAR EQ. **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: DESIGNED TO HANDLE A MAXIMUM OF 15 GROUPS, THIS PROGRAM DETERMINES WHETHER SEVERAL GROUPS OF DATA CAN BE POOLED INTO ONE LINEAR REGRESSION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM IS DESIGNED TO HANDLE A MAXIMUM OF 15 GROUPS. THE NUMBER OF OBSERVATIONS PER GROUP IS NOT RESTRICTED AND NEED NOT BE EQUAL. ALL (X,Y) DATA PAIRS FOR THE ITH GROUP MUST BE READ BEFORE THE DATA FOR THE JTH GROUP (I<J). ONE (X,Y) PAIR MAY APPEAR ON ONE RECORD. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL BE SIMILAR TO THE CARD INPUT REQUIREMENTS. INPUT REQUIREMENTS COL. VARIABLE FORMAT DESCRIPTON (1)HEADER 01-72 FREE TEXT (2)PARAMETERS 01 ISW1 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-04 K I3 NUMBER OF GROUPS (K< OR=15) 05-08 N(1) I4 NUMBER OF OBSERVATIONS FOR GROUP 1 09-12 N(2) I4 NUMBER OF OBSERVATIONS FOR . GROUP 2 . . 61-64 N(15) I4 NUMBER OF OBSERVATIONS FOR GROUP 15 (3)DATA --- X --- THE ITH X VALUE FOR THE JTH GROUP (1 RECORD/(X,Y)PAIR)--- Y --- THE ITH Y VALUE FOR THE JTH GROUP (GROUP 1 FOLLOWED BY GROUP 2, ETC.) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X08601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS45 **PROGRAM TITLE: MULTIPLE REGRESSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PROVIDES AN EXTREMELY COMPLETE STATISTICAL ANALYSIS, INCLUDING AN ANALYSIS OF VARIANCE TABLE, FOR ESTIMATING THE COEFFICIENTS IN THE FOLLOWING MODEL: Y(I) = B(0) + B1X(1I) + B(2)X(2I) + ... + B(K)X(KI)+E(I)(K< OR =9) OUTPUT IS IN PRINTED FORM, AND ONLY A SINGLE SET OF DATA CAN BE PROCESSED IN ONE RUN. THERE CAN BE NO MORE THAN NINE INDEPENDENT AND ONE DEPENDENT VARIABLE. THE NUMBER OF OBSERVATIONS IS RESTRICTED ONLY WHEN THE ONE-PASS OPTION IS EXERCISED, AND THEN TO 2,400 OBSERVATION VECTORS FOR 10 VARIABLES. FOR N VARIABLES THERE MUST BE AT LEAST (N+1) OBSERVATION VECTORS. THE ONLY INPUT CONSTRAINT IS THAT THE ITH OBSERVATION VECTOR (Y(I),X(1I), X(2I),...,X(KI)) MUST BE FURNISHED BEFORE THE ITH + 1 VECTOR. THE DEPENDENT VARIABLE CAN BE IN ANY FIELD. THERE CAN BE NO MORE THAN NINE INDEPENDENT AND ONE DEPENDENT VARIABLE. THE NUMBER OF OBSERVATIONS IS RESTRICTED ONLY WHEN THE ONE-PASS OPTION IS EXERCISED, AND THEN TO 2,400 OBSERVATION VECTORS FOR 10 VARIABLES. FOR N VARIABLES THERE MUST BE AT LEAST (N+1) OBSERVATION VECTORS. THE ONLY INPUT CONSTRAINT IS THAT THE ITH OBSERVATION VECTOR (Y(I),X(1I), X(2I),...,X(KI)) MUST BE FURNISHED BEFORE THE ITH + 1 VECTOR. THE DEPENDENT VARIABLE CAN BE IN ANY FIELD. EQUIPMENT REQUIRED IS 8K OF CORE STORAGE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THERE CAN BE NO MORE THAN NINE INDEPENDENT AND ONE DEPENDENT VARIABLE. THE NUMBER OF OBSERVATIONS IS RESTRICTED ONLY WHEN THE ONE PASS OPTION IS EXERCISED, AND THEN, TO 2,400 OBSERVATION VECTORS FOR TEN VARIABLES. FOR N VARIABLES THERE MUST BE AT LEAST (N+1) OBSERVATION VECTORS. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. THE ONLY INPUT CONSTRAINT IS THAT THE ITH OBSERVATION VECTOR (Y(I), X(1I), X(2I),..., X(KI) MUST BE INPUT BEFORE THE ITH + 1 VECTOR. THE DEPENDENT VARIABLE CAN BE IN ANY FIELD. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL BE SIMILAR TO THE CARD INPUT REQUIREMENTS. INPUT REQUIREMENTS COL. VARIABLE FORMAT DESCRIPTION (1)HEADER 01-72 36A2 HEADER IDENTIFICATION FREE FIELD (2)PARAMETERS 01-03 N I3 NUMBER OF VARIABLES (INCLUDE DEPENDENT VARIABLE). 04-06 M I3 NUMBER OF OBSERVATIONS 07-09 IY I3 SUBSCRIPT(POSITION ON CARD) OF DEPENDENT VARIABLE 10-12 IWT I3 =0: NO WEIGHTING FACTOR =1: WEIGHTING FACTOR INCLUDED 13-22 PROB I5 PROBLEM NUMBER 23 INPUT I1 =1: ONE PASS OF DATA =2: TWO PASSES OF DATA (DATA IS THEN READ IN AGAIN AFTER ANALYSIS OF VARIANCE TABLE IS PRINTED). THIS OPTION YIELDS A BACK SOLUTION. (3)DATA A. IWT=1 (FOR EACH OBSERVATIONAL VECTOR, THERE MUST BE A RECORD WITH THE WEIGHTING FACTOR AND ONE WITH THE VARIABLES) FIRST CARD --- W --- WEIGHTING FACTOR FOR EACH OBSERVATION OF THE KTH OBSERVATION VECTOR (PUNCH DECIMAL) SECOND CARD --- X(1) --- VALUE OF 1ST VARIABLE OF KTH OBSERVATION VECTOR (PUNCH DECIMAL) --- X(2) --- VALUE OF 2ND VARIABLE OF KTH OBSERVATION VECTOR (PUNCH DECIMAL) . . . --- X(N) --- VALUE OF LAST VARIABLE FOR KTH OBSERVATION VECTOR (PUNCH DECIMAL) B. IWT=0 (ONE RECORD FOR EACH OBSERVATION, PUNCH DECIMAL) --- X(1) --- VALUE FOR 1ST VARIABLE FOR KTH OBSERVATION VECTOR --- X(2) --- VALUE FOR 2ND VARIABLE FOR KTH OBSERVATION VECTOR . . . --- X(N) --- VALUE OF LAST VARIABLE FOR KTH OBSERVATION VECTOR NOTE: IF INPUT = 2, THE OBSERVATION VECTOR DATA TAPE MUST BE READ AGAIN IN ORDER TO COMPUTE BACK SOLUTIONS. A SIMPLE METHOD IS TO DUPLICATE THE X(I) DATA AND APPEND THE COPY TO THE ORIGINAL DATA TAPE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X08701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GCS48 **PROGRAM TITLE: MULTIPLE CORRELATION MATRIX **REVISION? **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS MATRIX **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM COMPUTES THE MEAN, STANDARD DEVIATION, AND PEARSON'S CORRELATION COEFFICIENT (R) FOR 2 TO 52 VARIABLES. THERE IS NO LIMIT ON THE NUMBER OF OBSERVATIONS PER VARIABLE. THE DISTINGUISHING FEATURE OF THE PROGRAM IS THAT THE COMPUTED CORRELATIONS ARE FURNISHED IN MATRIX FORM WITH VARIABLE NUMBERS LISTED, MAKING IT EASY TO IDENTIFY VALUES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM IS DESIGNED TO HANDLE FROM 2 TO 52 VARIABLES WITH NO LIMIT ON THE NUMBER OF OBSERVATIONS PER VARIABLE. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS WILL BE SIMILAR TO THE CARD INPUT REQUIREMENTS. INPUT REQUIREMENTS COL. VARIABLE FORMAT DESCRIPTION )HEADER 01-72 FREE TEXT )PARAMETERS 01 ISW1 I1 =0: CALL EXIT NOT =0: BATCH RUN 02-04 N I3 NUMBER OF VARIABLES (2 < OR = n < OR = 52) 05-06 MX1 A2 LAST CARD INDICATOR (=**). USED TO TERMINATE READING OF A PARTICULAR DATA SET. (3)DATA (ONE SET OF RECORDS FOR THE ITH OBSERVATION OVER ALL VARIABLES) CARDS 1, ..., I --- V(I) --- 1ST VALUES FOR VARIABLES. 1, ..., N CARDS I+1, ..., J --- V(I) --- 2ND VALUES FOR VARIABLES. 1, ..., N . . . CARDS 1, .., M --- V(I) --- NTH VALUES FOR VARIABLES. 1, ..., N **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X08801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC55B **PROGRAM TITLE: NONLINEAR REGRESSION OF A SINGLE-VARIABLE FUNCTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS NONLINEAR LEAST SQUARES REGRESSION ON A SINGLE VARIABLE FUNCTION. THE PROGRAM CAN OPERATE ON ANY REGRESSION MODEL WHICH FORTRAN FUNCTIONS CAN BE WRITTEN FOR EVALUATION OF THE PARTIALS OF THE REGRESSION MODEL WITH RESPECT TO ITS REGRESSION COEFFICIENTS. A USER-WRITTEN PROGRAM IS REQUIRED FOR EVALUATION OF THE FUNCTION AND FIRST PARTIALS. A MAXIMUM OF THREE INDEPENDENT VARIABLES AND ONE DEPENDENT VARIABLE CAN BE HANDLED, AND A MAXIMUM OF 150 (X,Y) DATA PAIRS MAY BE ENTERED PER RUN. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM WILL HANDLE A MAXIMUM OF THREE INDEPENDENT VARIABLES, ONE DEPENDENT VARIABLE, AND WILL ESTIMATE A MAXIMUM OF SIX REGRESSION PARAMETERS. A MAXIMUM OF 150(X,Y) DATA PAIRS MAY BE ENTERED PER RUN. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. THE PROGRAM REQUIRES A USER-WRITTEN SUBPROGRAM TO EVALUATE THE FUNCTION AND ITS FIRST PARTIALS. THE SUBPROGRAM FUNCTION F (INDEX, IH) EVALUATES THE FUNCTION INVOLVED IN THE PROGRAM OR ITS PARTIALS WITH RESPECT TO THE VARIOUS PARAMETERS. FOR EXAMPLE, IF THE FUNCTION INVOLVED IS F(Y) = A*EXP(B*T) + C*EXP(D*T) WHERE: A,B,C, AND D ARE PARAMETERS TO BE ESTIMATED FOR INDEX=0, THE FUNCTION EVALUATES THE REGRESSION MODEL WITH RESPECT TO A, B, C, AND D RESPECTIVELY. IH INDICATES WHICH SET OF X'S TO USE IN THE EVALUATION. INPUT REQUIREMENTS C C VARIABLE FORMAT DESCRIPTION (1)HEADER CARD 01-72 FREE TEXT (2)PARAMETER CARD #1 01-05 NSD 15 TOTAL NUMBER OF SETS OF 06-10 NRTH 15 DATA NUMBER OF PARAMETERS TO BE ESTIMATED IN REGRESSION MODEL (NRTH < OR =6) (3)I.D. CARD 01-72 FREE TEXT (MAY DENOTE NAME OF FUNCTION BEING EVALUATED) (4)PARAMETER CARD #2 01-05 NRX 15 NUMBER OF (X,Y) DATA PAIRS IN THE SET (NRX < OR =150) (5)TOLERANCE CARD 01-14 TOL E14.8 ACCURACY REQUIREMENT FOR ITERATIONS NOTE: .10000000E-04 IS USED, ITERATION WILL STOP AS SOON AS 2 SUCCESSIVE ITERATIONS HAVE IDENTICAL VALUES FOR THE FIRST FOUR SIGNIFICANT NUMBERS. (6)ESTIMATE CARDS (ONE CARD FOR EACH PARAMETER) 01-14 PARAMETERS TO BE E14.8 INITIAL ESTIMATE OF THE ESTIMATED ITH REGRESSION PARAMETER (7)DATA CARDS (ONE CARD PER (X,Y) DATA PAIR) --- Y(J) --- JTH VALUE OF Y --- X(I,J) --- VALUES OF X(I=1,...,3) FOR THE JTH INDEPENDENT VARIABLE. SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE AND TELETYPE REQUIREMENTS WILL BE SIMILAR TO THE CARD INPUT REQUIRE- MENTS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE "READ" SUBROUTINE AND FUNCTION "F" MAY BE MODIFIED TO SUIT THE USER. CORRECTIONS TO A STARTING VECTOR OF THE PARAMETER VALUES ARE COMPUTED BY ITERATION CYCLES UNTIL THE CORRECTIONS MAKE LITTLE OR NO CHANGE (WITHIN A SPECIFIED TOLERANCE) IN THE ERROR SUM OF SQUARES. IT SHOULD BE POINTED OUT THAT EVEN THE FINAL ERROR SUM OF SQUARES MAY BE QUITE LARGE IF THE DATA DOES NOT FIT THE DESIRED MODEL WELL. IF THE ITERATION DOES NOT CONVERGE TO AN ACCEPTABLE SOLUTION: 1. PICK CLOSER STARTING VALUES FOR THE PARAMETERS AND RUN AGAIN. 2. SET TOLERANCE FOR ACCEPTABLE ERROR SUM OF SQUARES LARGER AND RUN AGAIN. A COMBINATION OF THESE 2 POSSIBILITIES WOULD PROBABLY OFFER THE BEST SOLUTION. X08901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GC55C **PROGRAM TITLE: NONLINEAR REGRESSION OF AN ARBITRARY FUNCTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PERFORMS NONLINEAR LEAST SQUARES REGRESSION ON AN ARBITRARY FUNCTION. THE PROGRAM CAN OPERATE ON ANY REGRESSION MODEL FOR WHICH FORTRAN FUNCTIONS CAN BE WRITTEN FOR EVALUATION OF THE PARTIALS OF THE REGRESSION MODEL WITH RESPECT TO ITS REGRESSION COEFFICIENTS. (A USER-WRITTEN PROGRAM IS REQUIRED FOR EVALUATION OF THE FUNCTION AND ITS FIRST PARTIALS.) A MAXIMUM OF THREE INDEPENDENT VARIABLES AND ONE DEPENDENT VARIABLE CAN BE HANDLED, AND A MAXIMUM OF 150 (X,Y) DATA PAIRS MAY BE ENTERED PER RUN. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM WILL HANDLE A MAXIMUM OF THREE INDEPENDENT VARIABLES, ONE DEPENDENT VARIABLE, AND WILL ESTIMATE A MAXIMUM OF SIX REGRESSION PARAMETERS. A MAXIMUM OF 150 (X,Y) DATA PAIRS MAY BE ENTERED PER RUN. THE INPUT DATA MAY BE ENTERED IN ANY FORM, THE FORMAT BEING SPECIFIED BY THE USER VIA THE READ SUBROUTINE. THE PROG REQUIRES A USER-WRITTEN SUBPROGRAM TO EVALUATE THE FUNCTION F(Y) = A*EXP(B*T) + C*EXP(D*T) WHERE: A,B,C,D = PARAMETERS TO BE ESTIMATED FOR INDEX=0, THE FUNCTION EVALUATES THE REGRESSION MODEL. FOR INDEX=1, 2, 3, OR 4, THE FUNCTION EVALUATES THE PARTIAL OF THE REGRESSION MODEL WITH RESPECT TO A, B, C, AND D RESPECTIVELY. IH INDICATES WHICH SET TO USE IN THE EVALUATION. INPUT REQUIREMENTS C C VARIABLE FORMAT DESCRIPTION (1)HEADER CARD 01-72 FREE TEXT (2)PARAMETER CARD #1 01-05 NSD 15 TOTAL NUMBER OF SETS 06-10 15 OF DATA NUMBER OF PARAMETERS TO BE ESTIMATED IN REGRESSION MODEL (NRTH < OR =6) (3)I.D. CARD 01-72 FREE TEXT (MAY DENOTE NAME OF FUNCTION BEING EVALUATED) (4)PARAMETER CARD #2 01-05 NRX 15 NUMBER OF (X,Y) DATA PAIRS IN THE SET(NRX < OR =150) (5)TOLERANCE CARD 01-14 TOL E14.8 ACCURACY REQUIREMENT FOR ITERATIONS NOTE: IF .10000000E-04 IS USED, ITERATION WILL STOP AS SOON AS 2 SUCCESSIVE ITERATIONS HAVE IDENTICAL VALUES FOR THE FIRST FOUR SIGNIFICANT NUMBERS. (6)ESTIMATE CARD (ONE CARD FOR EACH PARAMETER) 01-14 PARAMETER E14.8 INITIAL ESTIMATES OF TO BE THE ITH REGRESSION ESTIMATED PARAMETER. (7)DATA CARDS (ONE CARD PER (X,Y) DATA PAIR) --- Y(J) --- JTH VALUE OF Y --- X(I,J) --- VALUES OF X(I=1,...,3) FOR THE JTH INDEPEN- DENT VARIABLE SINCE THIS PROGRAM WAS ADAPTED FROM A CARD INPUT FORMAT, THE PAPER TAPE INPUT REQUIREMENTS ARE SIMILAR TO THE CARD INPUT REQUIREMENTS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: READ SUBROUTINE WHICH IS SUPPLIED WITH SOURCE TAPE AND MAY BE USER MODIFIED TO CONFORM TO AVAILABLE DATA. FUNCTION F WHICH HAS A SAMPLE VERSION SUPPLIED WITH SOURCE TAPE AND CAN BE DEFINED ACCORDING TO USER'S REQUIREMENTS. CORRECTIONS TO A STARTING VECTOR OF THE PARAMETER VALUES ARE COMPUTED BY ITERATION CYCLES UNTIL THE CORRECTIONS MAKE LITTLE OR NO CHANGE WITHIN A SPECIFIED TOLERANCE) IN THE ERROR SUM OF SQUARES. IT SHOULD BE POINTED OUT THAT EVEN THE FINAL ERROR SUM OF SQUARES MAY BE QUITE LARGE IF THE DATA DOES NOT FIT THE DESIRED MODEL WELL. IF THE ITERATION DOES NOT CONVERGE TO AN ACCEPTABLE SOLUTION: 1. PICK CLOSER STARTING VALUES FOR THE PARAMETERS AND RUN AGAIN. 2. SET TOLERANCE FOR ACCEPTABLE ERROR SUM OF SQUARES LARGER AND RUN AGAIN. A COMBINATION OF THESE 2 POSSIBILITIES WOULD PROBABLY OFFER THE BEST SOLUTION. X09001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FRIER **PROGRAM TITLE: GENERAL FAST FOURIER TRANSFORM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: FOURIER TRANSFORM **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE EMPLOYS AN EFFICIENT ALGORITHM FOR FINDING THE FOURIER TRANSFORM OF A FUNCTION. THE EXPRESSION EVALUATED IS: N-1 -JIN 2(PI)/N F(N) = 1/N SUM F(I)E I=0 WHERE THE F(I) ARE IN GENERAL COMPLEX. THE COOLEY-TURKEY ALGORITHM IS USED, OFFERING LARGE SAVINGS IN TIME AND STORAGE OVER OTHER METHODS. THE NUMBER OF INPUT DATA MUST BE AN INTEGER POWER OF TWO, AND THE DATA MUST BE COMPLEX. INVERSE TRANSFORMS CAN ALSO BE TAKEN WITH THIS ROUTINE. THE INVERSE TRANSFORM IS: N-1 JIN 2(PI)/N F(I) = SUM F(N)E N=0 THE ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALL FRIER (X,Y,IG) PARAMETER TYPE DESCRIPTION X REAL THE REAL PART OF THE FIRST COMPLEX NUMBER IN THE ARRAY X (DIMENSIONED APPROPRIATELY IN THE CALLING PROGRAM). Y REAL THE IMAGINARY PART OF THE FIRST COMPLEX NUMBER IN THE ARRAY Y (DIMENSIONED APPROPRIATELY IN THE CALLING PROGRAM). IG INTEGER IG=LOG(2) (NUMBER OF COMPLEX DATA INPUT VALUES), IE, LETTING IG=3 IMPLIES THERE ARE 8 COMPLEX INPUT VALUES. THERE MUST BE AN INTEGER POWER OF 2 INPUT VALUES. NOTE: THE TRANSFORM IS THEN TAKEN AND PRINTED OUT AS: HARMONIC NUMBER REAL PART IMAGINARY PART CALL IMAGE IS AUTOMATICALLY REFERENCED BY FRIER. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: FRIER DOES NO I/O. THE USER MUST MAKE HIS OWN ALTERATIONS TO THE PROGRAM TO FIND THE INVERSE TRANSFORM. X09101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: EIGENVALUES OF A SYMMETRIC REAL MATRIX **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: MATRIX **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: DEPENDENT ON MATRIX SIZE **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE USES HOUSEHOLDER'S METHOD AND THE QR ALGORITHM TO FIND ALL EIGENVALUES OF A SYMMETRIC MATRIX. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SYMQR3 PARAMETER DESCRIPTION N INTEGER, ORDER (SIZE) OF THE MATRIX. G REAL ARRAY, THE MATRIX OF ORDER N WHOSE EIGENVALUES ARE TO BE FOUND. THE EIGENVALUES WILL REPLACE THE DIAGONAL ELEMENTS. DECLARATION REQUIRED IN CALLING PROGRAM: PROCEDURE SYMQR3(N, G); VALUE N; INTEGER N; REAL ARRAY G; CODE; **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: ACCURACY: THE EIGENVALUE OF LARGEST MAGNITUDE IS USUALLY GOOD TO SIX SIGNIFICANT DIGITS WITH ACCURACY DECREASING FOR SMALERLER EIGENVALUES. EIGENVALUES SMALLER THAN 10**-6 TIMES THE LARGEST WILL CONTAIN NO CORRECT DIGITS. TIME: ABOUT 2 SECONDS FOR N = 10 (HP2116B). X09201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RANDM **PROGRAM TITLE: PSEUDO RANDOM NUMBER GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: RANDOM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FORTRAN CALLABLE ROUTINE PRODUCES 32-BIT RANDOM NUMBERS BETWEEN 0.000000 AND 0.999999. IF THE ROUTINE IS REPEATED, THE SAME NUMBERS ARE PRODUCED IN THE SAME SEQUENCE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: A FORTRAN SAMPLE CALLING PROGRAM IS PROVIDED. IT REQUIRES A TELETYPE TO COMMUNICATE WITH THE OPERATOR. THE FORTRAN CALLING PROGRAM ASKS THE OPERATOR "HOW MANY RANDOM NUMBERS?" THE OPERATOR SHOULD RESPOND BY TYPING IN ANY POSITIVE NUMBER, FREE FIELD INPUT. THE FORTRAN PROGRAM CALLS THE RANDOM NUMBER GENERATOR, PRINTS THE RESULT AND LOOPS THROUGH THIS SEQUENCE UNTIL THE SPECIFIED NUMBER HAS BEEN PRINTED. THE OPERATION MAY THEN BE REPEATED. THE RANDOM NUMBERS WILL BE DIFFERENT UNTIL THE PROGRAM IS RELOADED, OR LOCATIONS "XL" AND "XH" ARE MANUALLY RESET TO OCT 1 AND 0 RESPECTIVELY. THEN THE SAME RANDOM NUMBER SEQUENCE WILL APPEAR. CALLING SEQUENCE: FORTRAN: CALL RANDM(X) ASSEMBLY LANGUAGE: EXT RANDM X BSS 2 . . . JSB RANDM DEF *+2 RETURN ADDRESS DEF X RESULT ADDRESS X IS A FLOATING POINT NUMBER. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: A, B, E, AND POSSIBLY THE O REGISTERS ARE ALL USED AND THEIR CONTENTS NOT RESTORED. X09301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: FOURT **PROGRAM TITLE: FAST FOURIER TRANSFORM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: FOURIER TRANSFORM **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE FINDS THE FOURIER TRANSFORM OF COMPLEX, MULTI-DIMENSIONAL, COMPLEX DATA. TRANSFORM (K1, K2,...)=SUM(DATAJ1,J2...) *EXP(ISIGN*2* PI* SQRT(-1)*((J1-1)* (K1-1)/NN(1)+(J2-1) (K2-1)/NN(2)+...))) THIS QUANTITY IS SUMMED FOR ALL J1, K1 BETWEEN 1 AND NN(1), J2K2 BETWEEN 1 AND NN(2), ETC. THERE IS NO LIMIT TO THE NUMBER OF K'S (I.E., NO LIMIT ON THE NUMBER OF DIMENSIONS). ALSO, THERE IS NO RESTRICTION ON THE LENGTH OF THE DIMENSIONS, ALTHOUGH THE PROGRAM RUNS FASTER WHEN THE LENGTHS ARE COMPOSITE INTEGERS, AND ESPECIALLY FAST WHEN THE LENGTHS ARE POWERS OF TWO. BOTH FORWARD (ISIGN=-1) AND INVERSE (ISIGN=+1) TRANSFORMS CAN BE CALCULATED. IF A -1 TRANSFORM IS FOLLOWED BY A +1 TRANSFORM, THE ORIGINAL DATA WILL REAPPEAR MULTIPLIED BY NTOT=(NN(1)*NN(2)*...). THE ROUTINE PLACES THE FOLLOWING RESTRICTIONS ON INPUT DATA AND TRANSFORM VALUES: A. THE NUMBER OF INPUT DATA AND THE NUMBER OF TRANSFORM VALUES MUST BE THE SAME. B. BOTH THE INPUT DATA AND THE TRANSFORM VALUES MUST REPRESENT EQUISPACED POINTS IN THEIR RESPECTIVE DOMAINS OF TIME AND FREQUENCY, CALLING THESE SPACINGS DELTAT AND DETAF, IT MUST BE TRUE THAT DELTAF = 2*P1/[NN(I)*DELTAT]. OF COURSE, DELTAT NEED NOT BE THE SAME FOR EVERY DIMENSION. C. CONCEPTUALLY, AT LEAST, THE INPUT DATA AND THE TRANSFORMER OUTPUT REPRESENT SINGLE CYCLES OF PERIODIC FUNCTIONS. THE ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: CALL FOURT (DATA,NN,NDIM,ISIGN,IFORM,WORK) DATA...AS INPUT, DATA IS A MULTIDIMENSIONAL COMPLEX ARRAY (NUMBER OF DIMENSIONS=NDIM) CONTAINING THE COMPLEX DATA TO BE TRANSFORMED. (THE REAL PART OF EACH COMPLEX POINT IS FOLLOWED IMMEDIATELY IN THE ARRAY BY ITS IMAGINARY PART.) AS OUTPUT DATA RETURNS THE MULTIDIMENSIONAL, COMPLEX FOURIER TRANSFORM. NN.....AN ARRAY OF DIMENSION NDIM. THE LENGTHS OF THE DIMENSIONS ARE STORED IN NN. THESE LENGTHS MUST BE POSITIVE INTEGERS. NDIM...THE NUMBER OF DIMENSIONS OF ARRAY DATA. ISIGN..AN INTEGER PARAMETER WITH THE FOLLOWING VALUES AND MEANINGS: -1 THE FORWARD TRANSFORM IS CALCULATED +1 THE INVERSE TRANSFORM IS CALCULATED IFORM..AN INTEGER PARAMETER WITH THE FOLLOWING VALUES AND MEANINGS: 0 ALL IMAGINARY PARTS OF DATA ARE ZERO +1 OTHERWISE WORK...A COMPLEX ARRAY TO BE MADE AVAILABLE BY THE USER IF ALL DIMENSIONS OF ARRAY DATA ARE NOT POWERS OF TWO. THE LENGTH OF ARRAY WORK IS EQUAL TO THE LENGTH OF THE LARGEST DIMENSION WHICH IS NOT A POWER OF TWO. IF ALL DIMENSIONS ARE POWERS OF TWO, REPLACE WORK BY ZERO IN THE CALLING SEQUENCE. NOTE: TO FORM A COMPLEX ARRAY OF LENGTH M FROM A REAL ARRAY OF LENGTH 2M, PLACE THE REAL PARTS OF THE DATA IN THE ODD-NUMBERED LOCATIONS AND THE IMAGINARY PARTS IN THE EVEN-NUMBERED LOCATIONS. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: RUNNING TIME IS MUCH SHORTER THAN THE NAIVE NTOT**2, BEING GIVEN BY THE FOLLOWING FORMULA, DECOMPOSE NTOT INTO 2**K2 * 3**K3 * 5**K5 * .... LET SUM2 = 2*K2, SUMF = 3*K3 + 5*K5 +... AND NF = K3 + K5+ .... THE TIME TAKEN BY A MULTIDIMENSIONAL TRANSFORM ON THESE NTOT DATA IS T=TO + NTOT*(T1+T2*SUM2+T3*SUMF+T4*NF). ON THE CDC 3300 (FLOATING POINT ADD TIME OF SIX MICROSECONDS), T = 3000 + NTOT*(500+43*SUM2+68*SUMF+320*NF) MICROSECONDS ON COMPLEX DATA. IN ADDITION, THE ACCURACY IS GREATLY IMPROVED. AS THE RMS RELATIVE ERROR IS BOUNDED BY 3*0**(-B)*SUM(FACTOR (J)**1.5), WHERE B IS THE NUMBER OF BITS IN THE FLOATING POINT FRACTION AND FACTOR (J) ARE THE PRIME FACTORS OF NTOT. X09401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: LINEAR LEAST SQUARES PROBLEM SOLVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. MATRIX **LANGUAGES: ALGOL **COMPUTER TYPE: 2114 **OPERATING SYSTEMS: BCS DOS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: ALGOL CALLABLE, THIS PROCEDURE SOLVES THE LINEAR LEAST SQUARES PROBLEM: ||A(X) - B||(2) = MINIMUM WHERE || ||(2) INDICATES THE EUCLIDEAN NORM AND A IS AN M BY N (M > OR = H) REAL MATRIX OR RANK N. A MATRIX DECOMPOSITION BASED ON ORTHOGONAL HOUSEHOLDER TRANSFORMATIONS IS USED, RATHER THAN SOLVING THE NORMAL EQUATIONS A(TRANSPOSED)A(X) = A(TRANSPOSED) B. MANY VECTORS, B, MAY BE GIVEN FOR SOLUTION WITH INCREASED EFFICIENCY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALL: LSQ1 (MODE, A, X, B, M, N, AXBNRM, SING); PARAMETERS TYPE DESCRIPTION MODE INTEGER SEE BELOW A REAL TWO DIMENSION ARRAY CONTAINING THE ARRAY COEFFICIENTS OF THE OVERDETERMINED SYSTEM. X REAL A VECTOR WHERE THE SOLUTION WILL BE ARRAY STORED. B REAL THE RIGHT HAND SIDE VECTOR. ARRAY M,N INTEGER THE NUMBER OF ROWS (EQUATIONS) AND THE NUMBER OF COLUMNS (UNKNOWNS) OF A. AXBNRM REAL THE CONDITION NUMBER OR THE MINIMUM NORM (SEE BELOW). SING LABEL AN ERROR RETURN TAKEN IF THE COLUMNS OF A ARE DEPENDENT. PROGRAM DESCRIPTION: THE GENERAL LINEAR LEAST SQUARE PROBLEM MAY BE STATED AS FINDING THAT LINEAR COMBINATION OF FIXED VECTORS WHICH BEST APPROXIMATES A GIVEN VECTOR; THAT IS, TO MINIMIZE THE DISTANCE (MEASURED BY A NORM) BETWEEN; N AND THE VECTOR B, WHERE THE SUM X(J)*ALPHA(J) J=1 ALPHA(J) ARE THE FIXED VECTORS. IN LEAST SQUARES APPROXIMATION THE NORM IS THE EUCLIDEAN VECTOR NORM 2 M 2 NORM(Y) = SUM Y 2 I=1 I LET THE ALPH(J) AND B VECTORS BE IN M-SPACE AND LET THE ELEMENTS OF ALPHA(J) BE A(1J), A(2J),...,A(MJ), THEN THE LINEAR COMBINATION MENTIONED ABOVE CAN BE WRITTEN AS AN MXN MATRIX "A" TIMES A VECTOR OF UNKNOWNS "X" AND THE LEAST SQUARES PROBLEM IS SIMPLY NORM(AX - B) = MINIMUM 2 WHEN THE VECTORS ALPHA(J) ARE LINEARLY INDEPENDENT THE RANK OF A IS N. LEAST SQUARES MAY BE APPLIED TO SOLVING SYSTEMS OF M LINEAR EQUATIONS WITH N UNKNOWNS M > OR =N, AN OVERDETERMINED SYSTEM, BY FINDING A SOLUTION WHICH MINIMIZES THE ERROR AX -B, SINCE THE EQUATIONS HAVE NO UNIQUE SOLUTION AND POSSIBLY HAVE NO SOLUTION. MODE = 0: THE MATRIX STORED IN A IS DECOMPOSED AND ITS APPROXIMATE CONDITION NUMBER IS STORED IN AXBNRM. THE ARRAYS A AND X ARE DISTURBED, B IS IGNORED. MODE = 1: THE LEAST SQUARES PROBLEM IS SOLVED USING THE DECOMPOSED MATRIX FROM MODE =0. THE VECTOR X CONTAINS THE SOLUTION AND AXBNRM CONTAINS THE ERROR NORM (AX -B). B IS IGNORED. 2 THE PROCEDURE MAY BE CALLED ANY NUMBER OF TIMES WITH MODE =1 (FOR DIFFERENT B'S) AFTER ONE CALL WITH MODE =0. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR CONDITIONS AND MESSAGES: IF AT ANY STAGE OF THE DECOMPOSITION OF A THE NORM OF THE NEXT COLUMN TO BE REDUCED IS EXACTLY ZERO INDICATING THAT THE MATRIX A APPARENTLY HAS RANK <N, THEN AXBNRM IS SET TO -1 AND CONTROL TRANSFERRED TO LABEL CORRESPONDING TO SING. **MISCELLANEOUS: THERE ARE MORE EFFICIENT METHODS THAN LSSQ1 TO DO POLYNOMIAL LEAST SQUARES FITTING. AS AN EXAMPLE OF A MORE GENERAL PROBLEM, SUPPOSE THAT THE 10 DATA POINTS (F(I), T(I)) ARE TO BE APPROXIMATED BY THE FUNCTION: F(T) = P + QE**LT + R SINOT, WHERE L AND O ARE KNOWN (IT WOULD NOT BE LINEAR LEAST SQUARES OTHERWISE) AND P, Q AND R ARE TO BE FOUND. THE PROBLEM SET UP IS: A * X B . T . . . . . . 1, E 1, SIN T(1). .P. .F(1) . . . . . . . . T . . . . . . 1, E 2, SIN T(2). .Q. = .F(2) . . . . . . . . . .R. . . . T . . . . . . 1, E 10,SIN T(10. . . .F(10). WITH M = 10. AND N = 3. AFTER TWO CALLS TO LSSQ1 (MODE = 0 AND 1), P IS X(1), Q IS X(2), AND R IS X(3). IN THE PROCEDURE LSSQ1, M, N < OR =15, BUT IF MEMORY SIZE PERMITS MAY BE CHANGED IN THE DECLARATION OF ALPHA, Y AND PIVOT. X09501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: EXPRE **PROGRAM TITLE: BCS EXTENDED PRECISION ARITHMETIC **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: PRECISION LIBRARY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS GROUP OF BCS ROUTINES PROVIDES THE CAPABILITY FOR EXTENDED- PRECISION ADDITION, SUBTRACTION, MULTIPLICATION, AND DIVISION. ALSO PROVIDED ARE FACILITIES FOR EXTENDED-PRECISION I/O OPERATIONS. THE ROUTINES ARE FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DP 1) DP IS CALLED IMMEDIATELY BEFORE EACH WRITE- OR READ- STATEMENT TO MODIFY THE FORTRAN-CALLING-SEQUENCE FROM INTEGER ARRAY TO EXT. PREC.-ARRAY. EXAMPLE: DIMENSION IA (3), IX (6) . . . CALL DP (IA,1) IA,IX=NAME OF EXT.PREC.ARRAY READ (1,10) IA 1,2=LENGTH " " " " . . . CALL DP (IX,2) WRITE (2,20) IX . . 10 FORMAT (D15.9) 20 FORMAT (2G15.9) . . 2) DA (ADDITION) 3) DS (SUBTRACTION) 4) DM (MULTIPLICATION) 5) DD (DIVISION) EXAMPLE: DIMENSION IZ (3),IX (3), IY (3) . . . CALL DA (IZ,IX,IY) ADD CALL DS (IZ,IX,IY) SUB IZ = RESULT CALL DM (IZ,IX,IY) MPY CALL DD (IZ,IX,IY) DIV **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X09601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: COMPLEX MATH PACKAGE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: COMPLEX STORAGE CONVERSION FLOATING POINT **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM OFFERS FUNDAMENTAL COMPLEX-MATHEMATICS CAPABILITIES FOR FLOATING POINT NUMBERS AND FOR NUMBERS IN A SPECIAL PACKED FORMAT WHICH MAKES EFFICIENT USE OF STORAGE SPACE. THE RESOLUTION OF THE PACKED NUMBER IS APPROXIMATELY 0.025 PERCENT (12 SIGNIFICANT BITS). IN FLOATING POINT FORMAT, ADDITION, SUBTRACTION, MULTIPLICATION, AND DIVISION CAN BE PERFORMED, REFERENCING DIRECTLY THE PACKED NUMBERS AS ARGUMENTS. THE CAPABILITY TO CONVERT TO POLAR FORM, AND TO CONVERT TO AND FROM PACKED FORMAT, ARE INCLUDED. THIS PROGRAM IS FORTRAN AND ALGOL CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SAVE3 IS USED TO PACK AND UNPACK COMPLEX NUMBERS INTO AND FROM A CONVENIENT TWO-WORD FORMAT FOR EFFICIENT USE OF STORAGE AREA. THE RESOLUTION OF THE MAGNITUDE OF THE COMPLEX NUMBER IS 12 BITS, OR .025%. THE FORMAT IS: 15 14 3 2 1 + M MANTISSA L + M P - S OF S - S B REAL PART B B MANTISSA OF L M L P+1 IMAGINARY S S EXP S + PART B B B - BITS 15 6 5 1 0 THE SINGLE EXPONENT SCALES BOTH MANTISSAS. FOR THE LARGER OF THE TWO MANTISSAS, THE MSB IS 2**-1 (BEFORE SCALING) AND THE SMALLER MANTISSA IS RIGHT SHIFTED SUCH THAT THE MSB IS 2**-1 (BEFORE SCALING). THEREFORE THE SINGLE EXPONENT CORRECTLY SCALES BOTH MANTISSAS WHEN UNPACKING THIS SPECIAL FORMAT. A COMPLEX NUMBER IS PACKED INTO THE SPECIAL FORMAT BY MEANS OF A FTOP3 CALL WITH THREE ARGUMENTS. THE REAL AND IMAGINARY PARTS (FLOATING POINT) ARE SPECIFIED BY THE FIRST TWO ARGUMENTS AND THE STORAGE LOCATION (TWO WORDS) FOR THE PACKED NUMBER IS SPECIFIED BY THE THIRD ARGUMENT. IN A SIMILAR MANNER, A PACKED NUMBER MAY BE UNPACKED BY MEANS OF A PTOF3 CALL WHERE THE FIRST ARGUMENT SPECIFIES THE PACKED NUMBER AND THE SECOND AND THIRD ARGUMENTS SPECIFY THE REAL AND IMAGINARY PARTS RESPECTIVELY. CALLING SEQUENCE: 1. FORTRAN CALL FTOP3(XR,XI,C1) (FLOATING POINT TO PACKED) CALL PTOF3(C1,ZR,ZI) (PACKED TO FLOATING POINT) (XR=ZR & XI=ZI) 2. ASSEMBLY EXT PTOF3, FTOP3 JSB FTOP3 DEF *+4 DEF XR DEF XI DEF CI . . . XR BSS2 X1 BSS2 C1 BSS2. PARAMETER DEFINITION: 1. FTOP3 (XR,XI,C1) XR: FLOATING POINT, REAL PART OF THE COMPLEX NO. RX=XR+JXI. XI: FLOATING POINT, IMAGINARY PART OF THE COMPLEX NO. RX=XR+JXI. CI: ADDRESS OF TWO WORD STORAGE AREA FOR THE PACKED FORMAT REPRESENTATION OF THE COMPLEX NUMBER XR+JXI. 2. PTOF3(C1,XR,XI) C1: SAME AS C1 ABOVE. XR: SAME AS XR ABOVE, THE "UNPACKED" REAL PART OF C1. XI: SAME AS X1 ABOVE, THE "UNPACKED" IMAGINARY PART OF C1. NOTE: 1) THIS SUBROUTINE IS THE FUNDAMENTAL SUBROUTINE OF THE COMPLEX MATH PACKAGE WHICH INCLUDES: CPLX3, PSFT3, SHYZ3, AND SAVF3. 2) IN FTOP3, C1 MAY BE THE SAME AS XR, OR XI; ALSO IN PTOF3, XR OR XI MAY BE THE SAME AS C1. THE ALGORITHMS USED TO CALCULATE THE COMPLEX RESULTS FOR BOTH PACKED AND FULL FLOATING POINT FORMATS ARE THE SAME, THE DIFFERENCE BEING FOUND IN THAT THE ARGUMENTS IN THE PACKED FORMAT ARE UNPACKED INTO FLOATING POINT, THE OPERATION CARRIED OUT, AND THE RESULT REPACKED INTO PACKED FORMAT WHEREAS THE ARGUMENTS IN FULL FLOATING POINT CAN BE OPERATED ON DIRECTLY USING THE ALGORITHMS BELOW. THE ALGORITHMS ARE AS FOLLOWS: 1. ADDITION: [R1+JX1] + [R2+JX2] = (R1+R2) + (X1+X2)J = R3+JX3 2. SUBTRACTION: [R1+JX2] - (R2+JX2) = (R1-R2) + J(X1-X2) = R3+JX3 3. MULTIPLICATION: [R1+JX1] * [R2+JX2] = [R1*R2+X1*X2] + J[R1*X2+R2*X1] = R3+JX3 4. DIVISION: [R1+JX1] [R1+JX1] [R2-JX2] [R1*R2+X1*X2] [R2*X1-R1*X2] -------- ----------------- ------------- ------------- [R2+JX2] [R2+JX2] [R2-JX2] [R2**2+X2**2] [R2**2+X2**2] = R3+JX3 PACK AND UNPACK ALGORITHMS: 1. CPAK3: C1, C2 [IN FULL FLOATING POINT FORMAT] ARE THE REAL AND IMAGINARY PARTS RESPECTIVELY, AND THEY ARE CONVERTED TO PACKED FORMAT AND STORED IN C3 [EG. CALL CPAK3 [C1,C2,C3]]. 2. CUPK3: C1 IS IN PACKED FORMAT AND IS UNPACKED INTO C2,C3 WHICH ARE THE REAL AND IMAGINARY PARTS RESPECTIVELY, [EG. CALL CUPK3 [C1,C2,C3]]. [THE ALGORITHMS FOR CPAK3 AND CUPK3 CAN BE FOUND IN SAVE3 DOCUMENTATION]. 3. CPAK1: C1,C2 ARE REAL AND IMAGINARY PARTS RESPECTIVELY EACH OF WHICH ARE IN FULL FLOATING POINT FORMAL. THEY ARE STORED CONSECU- TIVELY IN C3 WHICH MUST BE DIMENSIONED AS 2 FLOATING POINT LOCATIONS [4 WORDS] [EG. CALL CPAK1 (C1,C2,C3)]. 4. CUPK1: C1 CONTAINS IN 4 CONSECUTIVE LOCATIONS THE REAL AND IMAGINARY PARTS OF THE COMPLEX NUMBER. THESE ARE UNPACKED RESPECTIVELY INTO C2 AND C3 [EG. CALL CUPK1 (C1,C2,C3)]. POLAR CONVERSION: 1. CPOL3: C1 (IN PACKED FORMAT) IS UNPACKED INTO REAL AND IMAGINARY COMPONENTS X2 AND Y2 AND THEN CONVERTED INTO POLAR FORM WHERE V IS MAGNITUDE AND A IS ANGLE IN DEGREES [EG. CALL CPOL3 (C1,V,A)]. 2. CPOL1: [IN CPAK1 FORMAT] IS UNPACKED INTO REAL AND IMAGINARY COMPONENTS X2 AND Y2 AND THEN CONVERTED INTO POLAR FORM WHERE AGAIN V IS MAGNITUDE AND A IS ANGLE IN DEGREES. BOTH POLAR ROUTINES USED THE FOLLOWING MATHEMATICAL ALGORITHM ONCE C1 HAS BEEN PROPERLY UNPACKED INTO ITS REAL AND IMAGINARY COMPONENTS [X2 AND Y2]. V = [X2*X2+Y2*Y2]**1/2 T1 = 57.2957 * ATAN (X2/Y2) IF X2>0 THEN A=T1 IF [Y2<0] THEN A = T1-180.0 IF [Y2>0] THEN A = T1+180.0 STORE V AND A. CALLING SEQUENCE: 1. FORTRAN PACKED FORMAT: CALL CADD3 [C1,C2,C3] (C3=C1+C2) FULL FLOATING POINT FORMAT: . . . DIMENSION C1(2), C2(2), C3(2) . . . CALL CADD1 [C1,C2,C3] (C3 = C1+C2) 2. ASSEMBLY: PACKED FORMAT: . . EXT. CADD3, SAVE3 JSB CADD3 JMP * +4 DEF C1 DEF C2 DEF C3 . . . C1 BSS 2 C2 BSS 2 C3 BSS 2 . . FULL FLOATING POINT FORMAT . . . EXT. CADD1 JSB CADD1 JMP * +1 DEF C1 DEF C2 DEF C3 . . . C1 BSS 4 C2 BSS 4 C3 BSS 4 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: RESOLUTION AND RANGE: PACKED FORMAT: MANTISSA RESOLUTION: 12 BIT MANTISSA RESOLUTION = 1/2**+12 = .00024 FOR ALL X WHERE 1< OR = X < OR = -1 WHEN -1<X<1 THE LARGEST COMPONENT OF THE COMPLEX NUMBER RETAINS THE RESOLUTION ABOVE, BUT THE SMALLER COMPONENT LOSES RESOLUTION DEPENDING ON THE NUMBER OF ZEROES PRECEEDING THE FIRST 1 [EG. .1(10) = [.000110. . .](2); 3 ZEROES]. THE RESOLUTION OF THE SMALLER COMPONENT IS NOW EQUAL TO [1/(2**(+12-Y))] WHERE Y IS THE NUMBER OF LEADING ZEROES. DYNAMIC RANGE: 5 BIT EXPONENT (PLUS SIGN BIT) ALLOWS A DYNAMIC RESOLUTION OF 2**-31 < OR = X < OR = 2**31 FULL FLOATING POINT FORMAT: MANTISSA RESOLUTION: 23 BIT MATISSA RESOLUTION = 1/2**23 ~= .0000001192... FOR ALL X WHERE 1 </= X </= -1 WHEN -1 < X < 1 THE LARGEST COMPONENT OF THE COMPLEX NUMBER RETAINS THE RESOLUTION ABOVE, BUT THE SMALLER COMPONENT LOSES RESOLUTION DEPENDING ON THE NUMBER OF ZEROES PRECEEDING THE FIRST 1. THE RESOLUTION OF THE SMALLER COMPONENT IS NOW EQUAL TO [1/(2**(+23-Y))] WHERE Y IS THE NUMBER OF LEADING ZEROES. DYNAMIC RANGE: 7 BIT EXPONENT (PLUS SIGN BIT) ALLOWS A DYNAMIC RESOLUTION OF 2**-127 < OR = X < OR = 2**127. X09701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: INVERSE ASSEMBLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ASSEMBLER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ACCEPTS AN ABSOLUTE BINARY PROGRAM TAPE AND CREATES FROM IT AN ASSEMBLY LANGUAGE LISTING. WHEN THE INVERSE ASSEMBLER IS USED, THE NORMAL PHOTOREADER DRIVER IS REPLACED BY AN EQUIVALENT OF THE BASIC BINARY LOADER. SOFTWARE REQUIREMENTS: 8K RELOCATABLE LOADER I/O CONTROL, TELETYPE DRIVER, BCS TAPE READER DRIVER. HARDWARE REQUIREMENTS: EAU. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: 1. ASSEMBLE 2. LOAD WITH BCS 3. POSITION USER'S ABSOLUTE BINARY TAPE IN PHOTOREADER 4. PUSH RUN **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE PROGRAM ACCEPTS AN ABSOLUTE-BINARY TAPE AND RECREATES A PSEUDO- ASSEMBLER SOURCE LISTING FROM IT. IT OPERATES WITH THE INTERRUPT SYSTEM ENABLED, UNDER BCS, BUT WITH THE NORMAL PHOTOREADER INPUT ROUTINE REPLACED BY AN EQUIVALENT OF THE BASIC-BINARY LOADER. NO ATTEMPT IS MADE TO TRACE THE INSTRUCTION TREE; ALL LOCATIONS ARE LISTED BY LOCATION, CONTENTS (OCTAL), ASSEMBLER SOURCE STATEMENT (WHETHER VALID OR NOT), AND, IF A VALID ASCII CHARACTER PAIR IS FORMED (A-Z, 0-9, CR, LF, OR BLANK), THIS IS ALSO PRINTED. IN THE CASE OF MEMORY-REFERENCE INSTRUCTIONS, THE OPERAND ADDRESS IS PRINTED (OCTAL). OUTPUT IS BLOCKED INTO 11" PAGES. THE BEGINNING OF AN ABSOLUTE- BINARY BLOCK IS INDICATED BY "B", ALL SKIP AND JUMP INSTRUCTIONS ARE IDENTIFIED BY "S" OR "J" IN A SPECIAL COLUMN TO FACILITATE FOLLOWING THE LISTING. ALL ERROR CONDITIONS RESULT IN A PRINTED MESSAGE ONLY (EXCEPT END-OF-TAPE). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: NOTE: EDIT STATEMENT #5, "GENL EQU 21B", TO CONFIGURE PROGRAM TO YOUR PHOTOREADER'S SELECT CODE; EDIT #11 AND #87 TO USE THE ADDRESS OF THE PHOTOREADER LINK WORD. X09801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RAND **PROGRAM TITLE: FLOATING POINT RANDOM NUMBER GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: RANDOM FLOATING POINT **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS FUNCTION GENERATES RANDOM NUMBERS BETWEEN (0) AND (1) IN FLOATING POINT AND RETURNS THE VALUES IN THE A AND B REGISTERS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ASSEMBLY - CALLING SEQUENCE EXT RAND . JSB RAND WITH A + B-REGISTER CONTAINING THE RANDOM NUMBER (FLOATING- POINT) FORTRAN: R = RAND (0) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X09901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: GAUSS **PROGRAM TITLE: GAUSSIAN RANDOM NUMBER GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: RANDOM STATISTICS **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ALGOL REAL PROCEDURE GAUSS(I) GENERATES GAUSSIAN (NORMAL) DISTRIBUTED RANDOM NUMBERS WITH MEAN (MY=0) AND VARIANCE SIGMA 2=1. THE PROCEDURE REQUIRES TWO RANDOM NUMBERS X1 AND X2 CALLED FROM THE ASSEMBLY LANGUAGE FUNCTION RANDM2 WHICH GENERATES RANDOM NUMBERS IN THE INTERVAL (O,1). THE TEST CASE (GAUT) PLOTS THE DISTRIBUTION IN THE FORM OF A HISTOGRAM WITH MEAN ZERO AND VARIANCE ONE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: FORTRAN ALGOL CALL GAUSS(I) GAUSS(I) I = POSITIVE: RANDOM NUMBERS OF PRECEEDING CALL ARE USED FOR THE COMPUTATION OF THE PRESENT. I = NEGATIVE: DEFINITE START. RANDM(I) COMPUTES A RANDOM NUMBER FROM THE FORMULAS: X(N)=A*X(N1)+C(MOD 2**30) (A=5**11,C=2**30(1/2-1/SQRT(12))) RANDM = X/2**30 MIN (1-2**-23) I = POSITIVE USE PREVIOUS VALUE, I = NEGATIVE MAKE A NEW SEED. THE RANDOM NUMBERS ARE UNIFORMLY DISTRIBUTED IN THE INTEVAL 0 < X < 1. GAUT ALGOL MAIN PROGRAM GAUSS ALGOL REAL PROCEDURE RANDM ASMB REAL FUNCTION THE PROGRAM GAUT GENERATES GAUSSIAN DISTRIBUTED RANDOM NUMBERS AND TESTS THEM AGAINST A COMPUTED GAUSSIAN DISTRIBUTION. THE X-RANGE FROM -3.5 TO +3.5 IS DIVIDED INTO 2XAI INTERVALS. THE DISTRIBUTION IS GENERATED BY N RANDOM NUMBERS. FINALLY, THE DISTRIBUTION OF THE NUMBERS IS PLOTTED IN FORM OF A HISTOGRAM. THERE ARE PRINTED THE FOLLOWING PARAMETERS: I = THE NUMBR OF THE INTERVAL, Y = THE FREQUENCY OF THE RANDOM NUMBERS IN THE SPECIAL INTERVAL, X = THE CORRESPONDING ABSZISSA, YN = THE CORRESPONDING VALUE TO Y, BUT NORMALIZED TO ONE, GAUSS = THE COMPUTED GAUSSIAN DISTRIBUTION, DELTA = THE DIFFERENCE YN = GAUSS. FINALLY: S MEANS THE SUM OF THE QUADRATIC DEVIATIONS DELTA. SWITCH-OPTION: ALL SWITCHES = 0: DEFINITE START OF RANDOM GENERATOR, ANY SWITCH NOT =0: IF NEW START, PREVIOUS RANDOM NUMBERS ARE USED FOR THE COMPUTATION OF THE PRESENT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X10001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: IMCP **PROGRAM TITLE: INTEGRATED MATH CALCULATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: CALCULATOR **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE (IMCP) PROGRAM ALLOWS THE ENTRY OF PROGRAMS INTO THE COMPUTER WITHOUT THE NECESSITY FOR A FORMAL WRITTEN PROGRAM. TO ACCOMPLISH THIS THE COMPUTER AND TELEPRINTER ARE EMPLOYED IN A MANNER SIMILAR TO THAT USED FOR OPERATING MANY DESK-TOP CALCULATORS. THE TELEPRINTER KEYBOARD SERVES TO ENTER INTEGER OR FLOATING POINT DECIMAL NUMBERS, AND TO COMMAND 54 DIFFERENT ARITHMETIC OPERATIONS AND FUNCTIONS. THIS CALCULATOR SYSTEM MAY BE USED (IN PROGRAM MODE) FOR COMPUTATION OF LONG FORMULAS CONSISTING OF MANY DISSIMILAR STEPS. SIX DECIMAL PLACES OF ACCURACY ARE GUARANTEED. THE BCS FORTRAN IV LIBRARY, 24149 IS REQUIRED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: 1. USUAL ASSEMBLY AND LOAD PROCEDURES FOR IMCP AND ITS SUBROUTINES TTYIO, ACOS, ASIN. 2. SET THE SELECT CODE FOR YOUR TELETYPE INTO THE SWITCH REGISTER, BITS 0 - 5, AND PRESS "RUN". PROGRAM IMCP IS SELF-CONFIGURING AND I/O IS CONVERSATIONAL. 3. AT PROGRAM START, ALL REGISTERS ARE RESET AND THE PROGRAM TITLE IS PRINTED: INTEGRATED MATH CALCULATOR PROGRAM TYPE # OF FRACTIONAL DIGITS YOU WANT: 6 READY 0.000000 0.000000 0.000000 0.000000 INPUT OF A SINGLE DECIMAL DIGIT IS USED TO SELECT THE NUMBER OF DECIMAL PLACES TO THE RIGHT OF THE DECIMAL POINT TO BE DISPLAYED IN RESULTS. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ARITHMETIC FUNCTIONS: ALL FUNCTIONS ARE PERFORMED UPON THE CURRENT VALUE IN ACC: A FOLLOWED BY S = ARCSIN(ACC) " " T = ARCTAN(ACC) " " C = ARCCOS(ACC) B = CLEAR ALL REGISTERS + LOOPCOUNTER C = COS(ACC) D = ACC * 2.0 (DOUBLE-UP ACC) E = EXP(ACC) G FOLLOWED BY X = RECALL X INTO ACC Y = " Y " " Z = " Z " " U = " U " " V = " V " " W = " W " " # = LOOPCOUNTER INTO ACC P = ("PI") = 3.141592... INTO ACC E = ("EXP")= 2.718281... INTO ACC H = PROGRAM HALT, PRESS "RUN" TO CONTINUE, REGISTERS REMAIN UNALTERED. I = 1.0/ACC (ACC RECIPROCAL) L = LOG(ACC) M = ABS(ACC) N = -ACC O = ACC<=X<=Y<=Z<=ACC (ROTATE REGISTERS) R = SQRT(ACC) S = SIN(ACC) T = TAN(ACC) U = STORE ACC IN U V = STORE ACC IN V W = STORE ACC IN W X = STORE ACC IN X Y = STORE ACC IN Y Z = STORE ACC IN Z (SPACE) = CLEAR ACC TO 0.0 . = DECIMAL POINT IN VARIABLES = OR CHANGE OF DECIMAL PLACES IN DISPLAY ? = DISPLAY ACC = = DISPLAY ACC, X, Y AND Z CR = CR (NO OPERATION) LF = LF (NO OPERATION) 0 - 9 = VALID DECIMAL DIGITS $ = SUM-UP N(VAR) IN ACC UNTIL ZERO IS ENTERED & = FOLLOWED BY X, Y OR Z SAME AS "$" AND THE SQUARES OF N(VAR) ARE ACCUMULATED IN X, Y OR Z THE "IMCP"-PROGRAM ALLOWS TO USE THE HP-COMPUTER AND THE TELETYPE PERI- PHERAL AS A CALCULATOR-CONFIGURATION, WHICH IS SIMILAR TO OPERATE TO MANY DESK-TOP CALCULATORS PRESENTLY ON THE MARKET. THE KEYBOARD OF THE TELETYPE SERVES TO COMMAND UP TO 54 DIFFERENT ARITHMETIC OPERATIONS AND FUNCTIONS AND TO ENTER DECIMAL VARIABLES. THE PROGRAM MAY BE USED IN "PROGRAM-MODE" FOR REPEATED COMPUTATION OF LONG FORMULAS CONSISTING OF MANY DIFFERENT OPERATING STEPS. THE PROGRAM CONSISTS OF ONE ACCUMULATOR (ACC) 3 STORAGE REGISTERS X, Y AND Z AND 3 DATA-BUFFERS U, V AND W. THE ACC AND X, Y AND Z ARE DISPLAYED ON TELETYPE. ARITHMETIC OPERATIONS: P = RAISE ACC TO THE POWER OF VAR * = MULTIPLY ACC BY VAR / = DIVIDE ACC BY VAR + = ADD VAR TO ACC - = SUBTRACT VAR FROM ACC = NEGATIVE SIGN FOR DECIMAL VARIABLES % = ACC IN % OF VAR (VAR=100%) AFTER ENTRY OF SUCH AN OPERATOR-CODE, A DECIMAL VARIABLE MUST BE EN- TERED TO EXECUTE THE OPERATION. EVERY VARIABLE ENTERED, MUST TERMI- NATE WITH CR/LF. IF DECIMAL ZERO IS ENTERED, THE VARIABLE IS ASSUMED TO BE SYMBOLIC. A NAME OF A REGISTER OF "E" (I.E., 2.71828...) OR "PI"(I.E.,3.1415...) CAN THEN BE TYPED IN. FOR USE IN "PROGRAM-MODE": ( = START ENTERING PROGRAM STEPS # = STORE ACC INTO LOOPTERMINATOR = OR TO REPRESENT THE LOOPCOUNTER AS A SYMBOLIC VARIABLE, WHICH IS INCREASED BY +1.0 EACH LOOP. ENTER ONLY INTEGER VARIABLES INTO LOOP TERMINATOR TO ENSURE SUCCESSFUL COM- PLETION OF LOOP. NOTE THAT A SINGLE LOOP ONLY IS PERMIT- TED IN A PROGRAM. : = ENTER LOOP STATE < = REPEAT LOOP, IF NOT FINISHED _ = DELETES STEP PREVIOUSLY ENTERED (UNDERLINE OR LEFT ARROW) ) = STOP PROGRAM ENTERING MODE > = START EXECUTING PROGRAM IN STORE CTRL/TAPE = LISTS(PUNCHES) THE STORED PROGRAM WITH TRAILERS. HALT 77 OCCURS; PRESS "RUN" TO CONTINUE OPERATIONS. (MAXIMUM STORAGE SPACE FOR PROGRAM STEPS IS 200. ONE PROGRAM ONLY CAN BE LOADED INTO PROGRAM STORAGE AT ANY GIVEN TIME.) " " 2 QUOTATION MARKS SERVE TO INCLUDE ANY COMMENT DURING CALCULATIONS. THIS SYSTEM PRINTS "ILLEGAL!" SHOULD ANY UNLISTED COMMAND-CODE BE ENTERED. OPTIONS: SWITCHREGISTER SWITCH 0 UP SUPPRESSES DISPLAY OF Z 1 UP Y 2 UP X 3 UP ACC 12 UP CANCELS ANY EXECUTION MODE 15 UP VALUES IN DEGREES 15 DN VALUES IN RADIANS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF ANY COMMAND-CODE, NOT CONTAINED IN THE ATTACHED LIST IS ENTERED, THE TELETYPE PRINTS "ILLEGAL?". NO ERROR-HALT OCCURS AND NONE OF THE REGI- STER VALUES IS LOST. IF THE TELEPRINTER WRITES OVERFLOW, THE CURRENT VALUE IN THE ACCUMULATOR IS LOST DUE TO EXCEEDING REGISTER CAPACITY. **MISCELLANEOUS: THE TWO FUNCTIONS "$" AND "&" ARE AVAILABLE ONLY FOR NORMAL-MODE-OPERA- TION AND NOT FOR PROGRAM-MODE-OPERATION BECAUSE OF 4K STORAGE CONSIDERA- TIONS. THE CTRL/TAPE FUNCTION IS NOT AVAILABLE ON THE 2752A TTY. X10101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: XCAL **PROGRAM TITLE: EXTENDED PRECISION CALCULATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: CALCULATOR PRECISION **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE (XCAL) PROGRAM ALLOWS THE ENTRY OF PROGRAMS INTO THE COMPUTER WITHOUT THE NECESSITY FOR A FORMAL WRITTEN PROGRAM. TO ACCOMPLISH THIS THE COMPUTER AND TELEPRINTER ARE EMPLOYED IN A MANNER SIMILAR TO THAT USED FOR OPERATING MANY DESK-TOP CALCULATORS. THE TELEPRINTER KEYBOARD SERVES TO ENTER INTEGER OR FLOATING POINT DECIMAL NUMBERS, AND COMMAND 48 DIFFERENT ARITHMETIC OPERATIONS AND FUNCTIONS. THIS CALCULATOR SYSTEM MAY BE USED IN (PROGRAM MODE) FOR REPEATED COMPUTATION OF LONG FORMULAS CONSISTING OF MANY DISSIMILAR STEPS. TEN DECIMAL PLACES OF ACCURACY ARE GUARANTEED. THE BCS FORTRAN IV LIBRARY (24149) IS REQUIRED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: 1. USUAL ASSEMBLY AND LOAD PROCEDURES FOR XCAL AND ITS SUBROUTINES TTX AND XTAN. THE BCS FORTRAN IV LIBRARY 24149 AND THE REGULAR LIBRARY MUST BE LOADED. 2. SET SELECT CODE FOR TELETYPE INTO SWITCH REGISTER, BITS 0 - 5. PRESS "RUN". PROGRAM XCAL IS SELF-CONFIGURING AND I/O IS CONVERSATIONAL. 3. AT PROGRAM-START ALL REGISTERS ARE RESET, AND THE PROGRAM TITLE IS PRINTED: EXTENDED PRECISION CALCULATOR TYPE # OF FRACTIONAL DIGITS YOU WANT: 8 READY 0.00000000 0.00000000 0.00000000 0.00000000 INPUT OF A SINGLE DECIMAL DIGIT IS USED TO SELECT THE NUMBER OF DECIMAL PLACES TO THE RIGHT OF THE DECIMAL POINT TO BE DISPLAYED IN RESULTS. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE "XCAL"-PROGRAM ALLOWS TO USE THE HP-COMPUTER AND THE TELETYPE PERIPHERAL AS A CALCULATOR-CONFIGURATION, WHICH IS SIMILAR TO OPERATE TO MANY DESK-TOP CALCULATORS PRESENTLY ON THE MARKET. THE KEYBOARD OF THE TELETYPE SERVES TO COMMAND UP TO 48 DIFFERENT ARITHMETIC OPERATIONS AND FUNCTIONS AND TO ENTER DECIMAL VARIABLES. THE PROGRAM MAY BE USED IN "PROGRAM-MODE" FOR REPEATED COMPUTATION OF LONG FORMULAS CONSISTING OF MANY DIFFERENT OPERATING STEPS. THE PROGRAM CONSISTS OF ONE ACCUMULATOR (ACC) 3 STORAGE REGISTERS X, Y AND Z AND 3 DATA-BUFFERS U, V AND W. THE ACC AND X, Y AND Z ARE DISPLAYED ON TELETYPE. ARITHMETIC OPERATIONS: * = MULTIPLY ACC BY VAR / = DIVIDE ACC BY VAR + = ADD VAR TO ACC - = SUBTRACT VAR FROM ACC = NEGATIVE SIGN FOR DECIMAL VARIABLES % = ACC IN % OF VAR (VAR=100%) AFTER ENTRY OF SUCH AN OPERATOR-CODE, A DECIMAL VARIABLE MUST BE ENTERED TO EXECUTE THE OPERATION. EVERY VARIABLE ENTERED, MUST TERMINATE WITH CR/LF. IF DECIMAL ZERO IS ENTERED, THE VARIABLE IS ASSUMED TO BE SYMBOLIC. A NAME OF A REGISTER OR "E"(I.E., 2.71828...) OR "PI" (I.E., 3.1415...) CAN THEN BE TYPED. ARITHMETIC FUNCTIONS: ALL FUNCTIONS ARE PERFORMED UPON THE CURRENT VALUE IN ACC: B = CLEAR ALL REGISTERS + LOOPCOUNTER C = COS(ACC) D = ACC * 2.0 (DOUBLE-UP ACC) G = FOLLOWED BY X = RECALL X INTO ACC Y = " Y " " Z = " Z " " U = " U " " V = " V " " W = " W " " # = LOOPCOUNTER INTO ACC P = "PI" = 3.141592... INTO ACC E = "EXP" = 2.718281... INTO ACC H = PROGRAM HALT, PRESS "RUN" TO CONTINUE, REGISTERS REMAIN UNALTERED. I = 1.0 / ACC (ACC RECIPROCAL) M = ABS(ACC) N = -ACC O = ACC<=X<=Y<=Z<=ACC (ROTATE REGISTERS) R = SQRT(ACC) S = SIN(ACC) T = TAN(ACC) U = STORE ACC IN U V = " " " V W = " " " W X = " " " X Y = " " " Y Z = " " " Z (SPACE)= CLEAR ACC TO 0.0 . = DECIMAL POINT IN VARIABLES = OR CHANGE OF DECIMAL PLACES IN DISPLAY ? = DISPLAY ACC = = DISPLAY ACC, X, Y AND Z CR = CR (NO OPERATION) LF = LF (NO OPERATION) 0 - 9 = VALID DECIMAL DIGITS $ = SUM-UP N(VAR) IN ACC UNTIL ZERO IS ENTERED & = FOLLOWED BY X, Y OR Z SAME AS "$" AND THE SQUARES OF N(VAR) ARE ACCUMULATED IN X, Y OR Z FOR USE IN "PROGRAM-MODE": ( = START ENTERING PROGRAM STEPS # = STORE ACC INTO LOOPTERMINATOR = OR TO REPRESENT THE LOOPCOUNTER IS INCREASED BY +1.0 EACH LOOP. ENTER ONLY INTEGER VARIABLES INTO LOOPTERMINATOR TO ENSURE SUCCESSFUL COMPLETION OF LOOP. NOTE THAT A SINGLE LOOP ONLY IS PERMITTED IN A PROGRAM. : = ENTER LOOP STATE < = REPEAT LOOP, IF NOT FINISHED _ = DELETES STEP PREVIOUSLY ENTERED (UNDERLINE OR LEFT ARROW) ) = STOP PROGRAM ENTERING MODE > = START EXECUTING PROGRAM IN STORE CTRL/TAPE = LISTS(PUNCHES) THE STORED PROGRAM WITH TRAILERS. HALT 77 OCCURS; PRESS "RUN" TO CONTINUE OPERATIONS. (MAXIMUM STORAGE SPACE FOR PROGRAM STEPS IS 200. ONE PROGRAM ONLY CAN BE LOADED INTO PROGRAM STORAGE AT ANY GIVEN TIME.) " " 2 QUOTATION MARKS SERVE TO INCLUDE ANY COMMENT DURING CALCULATIONS. THIS SYSTEM PRINTS "ILLEGAL!" SHOULD ANY UNLISTED COMMAND CODE BE ENTERED. OPTIONS: SWITCHREGISTER SWITCH 0 UP SUPPRESSES DISPLAY OF Z 1 UP Y 2 UP X 3 UP ACC 12 UP CANCELS ANY EXECUTION MODE 15 UP VALUES IN DEGREES 15 DN VALUES IN RADIANS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF ANY COMMAND CODE, NOT CONTAINED IN THE ATTACHED LIST, IS ENTERED, THE TELETYPE PRINTS "ILLEGAL!". NO ERROR-HALT OCCURS AND NONE OF THE REGI- STER VALUES IS LOST. IF THE TELETYPE WRITES "OVERFLOW", THE CURRENT VALUE IN THE ACCUMULATOR IS LOST DUE TO EXCEEDING REGISTER CAPACITY. **MISCELLANEOUS: THE TWO FUNCTIONS "$" AND "&" ARE AVAILABLE ONLY FOR NORMAL-MODE- OPERATION AND NOT FOR PROGRAM-MODE-OPERATION BECAUSE OF 4K STORAGE CONSIDERATIONS. THE CTRL/TAPE FUNCTION IS NOT AVAILABLE ON THE 2752A TTY. X10201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP BASIC TO FORTRAN TRANSLATOR FOR DOS/DOS-M **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: BASIC FORTRAN TRANSLATOR **LANGUAGES: SNOBOL **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM TRANSLATES AN HP BASIC PROGRAM INTO A FORTRAN PROGRAM. IT TRANSLATES THE FOLLOWING STATEMENTS: DATA, LET, GO TO, INPUT, DIM, END, IF...THEN, READ, PRINT, GOSUB, RETURN, FOR, NEXT, RESTORE, DEF, AND STOP. LIMITATIONS ARE STATEMENTS CONSTRAINING MAT AND STRING CHARACTERS SUCH AS A$. THE TRANSLATOR OPERATES IN A DOS OR DOS-M ENVIRONMENT WITH AT LEAST 24K OF CORE. IT IS WRITTEN IN SNOBOL AND REQUIRES THE SNOBOL TRANSLATOR FROM THE CONTRIBUTED LIBRARY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: THIS TRANSLATION REQUIRES TWO PASSES: *CALL BASIC/FORTRAN TRANSLATOR BY USUAL PROCEDURE: (SUPPOSING THE SOURCE FILE OF BASIC/FORTRAN TRANSLATOR HAS BEEN STORED WITH THE NAME: BASF) TYPE: :JF,BASF :PR,SNOB,2,99 OR (SUPPOSING THE RELOCATABLE FILE OF BASIC/FORTRAN TRANSLATOR HAS BEEN STORED WITH THE NAME: RBF) TYPE: :PR,SNOB,,,,2 THE FOLLOWING MESSAGE IS PRINTED ON TELEPRINTER: ENTER FILE NAME TYPE: RBF * WAIT UNTIL THE MESSAGE "NOM DU PROGRAMME" IS PRINTED ON TELEPRINTER. * TYPE THE NAME YOU WANT THE FORTRAN PROGRAM TO BE GIVEN. (THIS NAME MUST HAVE UP TO FIVE CHARACTERS.) THE FOLLOWING QUESTIONS WILL APPEAR ON THE TELEPRINTER: LU DU PERIF. DE SORTIE ? GIVE LOGICAL UNIT OF THE OUTPUT DEVICE FOR THE FORTRAN TRANSLATION. (4 FOR TAPE PUNCH, 8 FOR MAGNETIC TAPE UNIT.) SWITCH ON THE DEVICE. LU DU PERIF, D'ENTREE? GIVE LOGICAL UNIT OF THE INPUT DEVICE FROM WHICH THE BASIC PROGRAM WILL BE READ. (5 FOR TAPE READER, 8 FOR MAGNETIC TAPE UNIT, 2 FOR DISC.) SWITCH ON THE DEVICE. IF YOU HAVE ANSWERED : 2, TO THE LAST QUESTION, THE FOLLOWING QUESTION APPEARS: NOM DE VOTRE FILE? GIVE THE NAME OF THE FILE IN WHICH THE BASIC PROGRAM IS. THE FIRST PASS BEGINS. A LISTING OF THE BASIC PROGRAM IS PROVIDED. AT THE END OF THE FIRST PASS, IF THE LOGICAL UNIT OF THE INPUT DEVICE IS 5, THE FOLLOWING MESSAGE IS PRINTED ON TELEPRINTER: I/O ERR ET EQT ## N REPLACER LA BANDE SUR LE LECTEUR ET TAPEZ : GO * MAKE THE LINE PRINTER EJECT ONE PAGE * PLACE THE BASIC TAPE ON TAPE READER AGAIN * TYPE: GO THE RESULT OF THE FIRST PASS IS PRINTED ON LINE PRINTER AND PUNCHED. * WHEN ALL STOPS : TYPE: : UP,N : GO THE SECOND PASS BEGINS, PROVIDING A LISTING AND A TAPE OF THE TRANSLATED PROGRAM. AT THE END, THE FOLLOWING MESSAGE IS PRINTED ON TELEPRINTER: I/O ERR ET EQT ## N SNOBOL HP FRANCE - FIN DE L'INTERPRETATION XXXX GARBAGE COLLECTION * BEFORE GETTING THE TRANSLATED TAPE, PUNCH ABOUT FOUR INCHES OF FEED- HOLES BY PRESSING THE SWITCH "FEED-HOLES" ON TAPE PUNCH. ---- DURING THE TRANSLATION, THE FOLLOWING MESSAGES MAY BE PRINTED: * ORDRE NON TRADIUT, IF AN ATTEMPT IS MADE TO TRANSLATE A STATEMENT NOT YET TREATED, TRANSLATION GOES ON BUT THE TRANSLATED TAPE IS UNUSABLE. TRADUCTION IMPOSSIBLE TASSEZ LES NOS DE LIGNE IF THE STATEMENT-NUMBERS USED IN THE BASIC PROGRAM ARE TOO BIG: BASIC/FORTRAN TRANSLATOR NEEDS TO CREATE NEW STATEMENT-NUMBERS. THESE NUMBERS DECREASE FROM 9900, AND WHEN THEY HAPPEN TO MEET THE NUMBERS OF THE BASIC PROGRAM, TRANSLATION IS STOPPED. NOTE: THE LAST INSTRUCTION IN A BASIC PROGRAM IS OFTEN: 9999 END. THIS INSTRUCTION, OF COURSE, CAUSES THE PRECEDING MESSAGE TO BE WRITTEN. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X10301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: SUPER BASIC FOR DOS-M **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: BASIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: SUPER BASIC FOR DOS-M IS ESSENTIALLY EQUIVALENT TO HP'S SINGLE TERMINAL BASIC SYSTEM HP20392A. SOME IMPORTANT DIFFERENCES INCLUDE THREE (3) ADDITIONAL COMMANDS: PUNCH FOR HIGH-SPEED PUNCH TAPE OUTPUT, PLIST FOR LINE PRINTER OUTPUT, AND LOAD FOR INPUTTING USER PROGRAMS FROM DOS-M SOURCE FILES. THIS PROGRAM USES THE DISC WORK AREA FOR TEMPORARY STORAGE ALLOWING A TOTAL USER PROGRAM AND ARRAY STORAGE OF 32K WORDS. SWITCH REGISTER CONTROL OUTPUT, TERMINATE EXECUTION, AND DELETE (REMARK) STATEMENTS. STATEMENT NUMBERS RANGE FROM 1 TO 32767. 'GOTO' AND 'GOSUB' STATEMENTS MAY BE FOLLOWED BY ARITHMETIC EXPRESSIONS OR LINE NUMBERS. REQUIRES 16K DOS-M WITH EAU. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RELOCATABLE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: SOURCE FILE# 10: SOURCE FILE# 11: SOURCE FILE# 12: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE FOLLOWING DIFFERENCES BETWEEN SINGLE TERMINAL BASIC AND SUPER BASIC EXIST: 1. IN RUN MODE, HITTING A KEY RETURNS YOU TO DOS-M "@" RATHER THAN TO BASIC. 2. INTERRUPT ON ESC HAS BEEN DELETED. 3. THE EDITING FEATURES OF DOS-M HAVE BEEN RETAINED. CNTL-A DELETES THE PREVIOUS CHARACTER RUBOUT DELETES THE CURRENT LINE CR LF MUST BE USED INSTEAD OF CR 4. WHEN THE SYSTEM HAS ACCEPTED THE PREVIOUS INPUT LINE IT SIGNALS THE USER BY PRINTING "!" AND A SPACE " ". THE NEXT STATEMENT OR COMMAND CAN THEN BE TYPED IN BY THE USER. 5. THE FOLLOWING THREE (3) SYSTEM COMMANDS HAVE BEEN ADDED: A. PUNCH UTILIZES THE HIGH SPEED PUNCH FOR OUTPUT. B. PLIST UTILIZES THE LINE PRINTER FOR OUTPUT. THE SYNTAX FOR THE PUNCH, PLIST, AND LIST COMMANDS IS AS FOLLOWS: COMMAND M,N WHERE M IS STARTING LINE NUMBER N IS ENDING LINE NUMBER IF N IS ABSENT ALL STATEMENTS STARTING WITH M WILL BE LISTED. IF BOTH M AND N ARE ABSENT ALL STATEMENTS WILL BE LISTED. C. LOAD ALLOWS BASIC SOURCE STATEMENTS PREVIOUSLY STORED IN DOS-M FILES TO BE ENTERED INTO THE PROGRAM. NO PROVISION IS MADE TO SAVE FILES. EXAMPLE: LOAD XXXXX WHERE XXXXX IS ANY ACCEPTABLE DOS-M FILE NAME NO CHECK IS MADE ON THE FILE TYPE BEFORE LOADING. NOTE: IT IS SUGGESTED THAT $EX18 BE CORE RESIDENT IN THE DOS-M SYSTEM AS IT GREATLY REDUCES LOAD TIME FROM DISK FILES. 6. SEVERAL SPECIAL SWITCH REGISTER FUNCTIONS HAVE BEEN INCORPORATED. SW15=1 ALL PROGRAM OUTPUT GOES TO LINE PRINTER SW15-0 ALL PROGRAM OUTPUT GOES TO SYSTEM TTY OR CRT SW14=1 TERMINATE EXECUTION OR LISTING AND RETURN TO READY. SWITCH 14 MUST BE RESET TO 0 AFTER READY IS PRINTED. SW13=1 DELETE ALL REM STATEMENTS FROM PROGRAM. IF SWITCH 13 IS SET TO 1 ALL SUCCEEDING REM STATEMENTS WILL BE IGNORED UNTIL SWITCH 13 IS SET TO 0. 7. THE SYNTAX HAS BEEN MODIFIED TO ALLOW CONDITIONAL EXECUTION OF STATEMENTS OF THE FORM. XXX IF (EXP) THEN (ANY EXECUTABLE STATEMENT) WHERE XXX = LINE NUMBER (EXP) = VALID BASIC EXPRESSION IF THEN STATEMENTS FROM CURRENT SINGLE TERMINAL BASIC PROGRAMS ARE ACCEPTABLE BUT WILL LIST AS IF THEN GOTO STATEMENTS. EXAMPLE: 10 IF I=1 THEN LET J=10 20 IF I=1 THEN GOTO 5 30 IF I=1 THEN PRINT I 40 IF J=0 THEN RETURN THE GOTO AND GOSUB STATEMENT SYNTAX HAS BEEN MODIFIED TO ALLOW ARITHMETIC EXPRESSIONS OR LINE NUMBERS AS THE BRANCH POINT. THE EXPRESSIONS WILL BE EVALUATED AND TRUNCATED TO AN INTEGER BEFORE EXECUTION OF THE PROGRAM BRANCH. EXAMPLE: 5 GOTO 5 10 GOTO I WILL GO TO THE LINE NUMBER SPECIFIED BY CURRENT VALUE OF I 20 GOSUB (J*100+5) FOR J=1 THIS STATEMENT IS THE SAME AS 20 GOSUB 105 8. VARIABLE NAMES HAVE BEEN RESTRICTED TO AX WHERE X=BLANK,1,0. EXAMPLE: A1,AO,A ARRAY VARIABLES REMAIN UNCHANGED 9. 32K OF PROGRAM AND ARRAY STORAGE IS AVAILABLE FOR USER PROGRAMS. THIS IS SUFFICIENT FOR A 2000 TO 3000 STATEMENT PROGRAM. 10. SEVERAL ERROR MESSAGES HAVE BEEN ADDED. ERROR # DEFINITION 72 OUT OF CORE DURING BUFFER ALLOCATION (AT LEAST 256 WORDS OF FREE CORE IS REQUIRED FOR BUFFERS. THE SYSTEM MUST BE REGENERATED WITH FEWER CORE RESIDENT MODULES) 73 BASIC SYSTEM PROGRAM ERROR (BASIC IS TRYING TO WRITE TO AN INVALID VIRTUAL ADDRESS. THIS SHOULD NEVER OCCUR BUT IF IT DOES THE SYSTEM PROGRAM HAS A BUG IN IT.) 74 INVALID CONDITIONAL EXECUTABLE STATEMENT (STATEMENT TYPE FOLLOWING IF THEN PAIR IS NOT RECOGNIZABLE.) 75 FILE NOT ON DISC (LOAD STATEMENT WITH FILE NAME NOT IN DISC DIRECTORY). 11. ACCEPTABLE STATEMENT NUMBERS NOW RANGE FROM 1-32767. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: DVR12 MUST BE MODIFIED TO INCLUDE BASIC IN ITS NAME TABLE OF SPECIAL PROGRAMS FOR PROPER OPERATION OF THIS PROGRAM. DOS-M BASE PAGE CONSTANTS ARE UTILIZED FOR BASIC. CALL STATEMENTS HAVE BEEN RETAINED SO THE USER COULD IMPLEMENT HIS OWN SUBROUTINES. X10401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-M RELOCATABLE REVERSE ASSEMBLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ASSEMBLER INVERSE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL REVERSE ASSEMBLE (PRODUCE AN ASSEMBLY TYPE LISTING) FROM RELOCATABLE OBJECT CODE LOCATED IN DISC FILES, THE 'JBIN' AREA OF THE DISC, THE DISC-RESIDENT LIBRARY, MAGNETIC TAPE, OR PAPER TAPE. THE RELOCATABLE OBJECT CODE MAY HAVE BEEN PRODUCED BY EITHER THE ASSEMBLER OR A COMPILER USING A DOS-M SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: TO START THE PROGRAM EXECUTING, GIVE THE COMMAND: :PROG,RBMSA,P1,P2,P3 WHERE P1 = LOGICAL UNIT NUMBER OF INPUT DEVICE 0 (OR NOT GIVEN): JBIN AREA 2: USER FILE--PROGRAM WILL REQUEST FILE NAME 3: DISC-RESIDENT LIBRARY OTHER: LUN P1 P2 = LOGICAL UNIT NUMBER OF LIST DEVICE (6 ASSUMED IF NOT GIVEN) P3 = LINES/PAGE ON LISTING (56 ASSUMED IF NOT GIVEN) **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: PAGE 0001 RBMSA PROGRAM NAME IS PUT IN THE PAGE HEADER. PARAMETERS PRINTED IN OCTAL (IF PRESENT) 0001 NAM RBMSA,3,143,0,0,0,0,0,0 0002* A 03625R 00000B 00000C ASSEMBLED ! ! !--------COMMON LENGTH(OCTAL) ! !----------------BASE PAGE LENGTH(OCTAL) !------------------------MAIN PROGRAM LENGTH(OCTAL) ASSEMBLED PROGRAMS ONLY 0002* C 00000B 00000C COMPILED ! !----------------COMMON LENGTH(OCTAL) !------------------------BASE PAGE LENGTH(OCTAL) ENT AND EXT RECORDS ARE PRINTED ONE ENTRY PER LINE. THESE ENTRIES ARE USED FOR OPERANDS, AND THE ENT ENTRIES ARE USED FOR LABELS (SEE EXAMPLE OUTPUT). END STATEMENTS WILL INCLUDE THE TRANSFER ADDRESS IF PRESENT. IT MAY BE EITHER A RELOCATABLE ADDRESS OR A SYMBOLIC OPERAND (FROM ENT ENTRIES). :PR,RBMSA,2 INPUT FILENAME OR /E FILE NAMES ARE INPUT FROM THE BATCH DEVICE. REDEX IF THE BATCH DEVICE IS NOT THE SYSTEM TTY, INPUT FILENAME OR /E THE PROGRAM DOES NOT ASK FOR THE FILE NAME /E BUT READS THE FILE NAME FROM THE BATCH DEVICE. X10501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 8K SIO RELOCATABLE REVERSE ASSEMBLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ASSEMBLER INVERSE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: MTS SIO **MEMORY REQUIREMENTS: 8K + MAG TAPE FOR MTS; 4K FOR SIO **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL REVERSE ASSEMBLE (PRODUCE AN ASSEMBLY TYPE LISTING) FROM RELOCATABLE OBJECT CODE LOCATED ON PAPER TAPE. THE RELOCATABLE OBJECT CODE MAY HAVE BEEN PRODUCED BY EITHER THE ASSEMBLER OR A COMPILER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1: ASSEMBLE THE SOURCE TAPES TO PRODUCE AN OBJECT ABSOLUTE BINARY TAPE. ASSEMBLE WITH THE Z OPTION IF THE LIST DEVICE IS A LINE- PRINTER. ASSEMBLE WITH THE N OPTION IF THE LIST DEVICE IS NOT A LINEPRINTER. 2: LOAD THE BINARY TAPE USING THE BASIC BINARY LOADER. 3: LOAD AND CONFIGURE THE DESIRED SIO LIST AND INPUT DRIVERS. 4: IF A CONFIGURED TAPE IS DESIRED, LOAD AND EXECUTE THE SIO SYSTEM DUMP. 5: SET STARTING ADDRESS TO 100B. 6: LOAD THE RELOCATABE TAPE IN THE INPUT DEVICE. 7: RUN (THE TAPE WILL BE REVERSE ASSEMBLED) HLT 11B CHECKSUM ERROR. HLT 75B ERROR: ILLEGAL RECORD TYPE OR ORDER. HLT 76B END-OF-TAPE ON OTHER THAN END RECORDS. HLT 77B END-OF-TAPE AFTER END RECORDS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE PROGRAM NAME IS PUT IN THE PAGE HEADER. IN NAM RECORDS, THE OPTIONAL PARAMETERS ARE PRINTED IN OCTAL (IF PRESENT ON THE TAPE). THE LINE IMMEDIATELY FOLLOWING THE NAM STATEMENT IS IN THE FORM OF A COMMENT. THE FIRST LETTER DESIGNATES WHETHER THE PROGRAM WAS ASSEMBLED ("A"), OR COMPILED ("C"). THE TWO OR THREE NUMBERS FOLLOWING THE LETTER DESIGNATE THE PROGRAM LENGTHS. AN "R" FOLLOWING THE NUMBER SIGNIFIES THE MAIN PROGRAM LENGTH (NOT AVAILABLE FOR COMPILED PROGRAMS), A "B" FOR BASE PAGE LENGTH, AND "C" FOR COMMON LENGTH. ALL OF THESE NUMBERS ARE OCTAL. ENT AND EXT RECORDS ARE PRINTED ONE ENTRY PER LINE. THESE ENTRIES ARE USED FOR LABELS AND OPERANDS. END STATEMENTS WILL INCLUDE THE TRANSFER ADDRESS IF PRESENT. THE OPERANDS MAY BE EITHER SYMBOLIC (FROM THE ENT/EXT ENTRIES) OR A RELOCATABLE ADDRESS. THE ADDRESSES ARE IN OCTAL FOLLOWED BY A LETTER DESIGNATING THE TYPE OF ADDRESS: "R"-MAIN PROGRAM, "B"-BASE PAGE RELOCATABLE, "C"-COMMON, "X"-EXTERNAL REFERENCE, OR NO LETTER-ABSOLUTE BASE PAGE. WHEN LISTING ON A LINEPRINTER, THE PROGRAM ASSUMES 60 LINES/PAGE AND THAT THE PRINTER IS IN THE AUTO-PAGE-EJECT MODE OF OPERATION. X10601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 8K SIO ABSOLUTE REVERSE ASSEMBLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ASSEMBLER INVERSE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: SIO MTS **MEMORY REQUIREMENTS: 4K - SIO; 8K & MAG TAPE FOR MTS **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL REVERSE ASSEMBLE (PRODUCE AN ASSEMBLY TYPE LISTING) FROM ABSOLUTE OBJECT CODE LOCATED ON PAPER TAPE. THE ABSOLUTE OBJECT CODE MAY HAVE BEEN PRODUCED BY EITHER THE ASSEMBLER OR THE BCS RELOCAT- ING LOADER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. ASSEMBLE THE SOURCE TAPE TO PRODUCE AN OBJECT ABSOLUTE BINARY TAPE. ASSEMBLE WITH THE Z OPTION IF THE LIST DEVICE IS A LINEPRINTER. ASSEMBLE WITH THE N OPTION IF THE LIST DEVICE IS NOT A LINEPRINTER. 2. LOAD THE BINARY TAPE USING THE BASIC BINARY LOADER. 3. SET ADDRESS 2. 4. LOAD THE SWITCH REGISTER WITH THE SELECT CODE OF THE INPUT DEVICE. 5. RUN 6. THE COMPUTER WILL HALT WITH 102077(8) IN THE T-REGISTER. 7. LOAD AND CONFIGURE THE DESIRED SIO LIST DRIVER. 8. IF A CONFIGURED TAPE IS DESIRED, LOAD AND EXECUTE THE SIO SYSTEM DUMP. 9. SET STARTING ADDRESS TO 100B. 10. LOAD THE ABSOLUTE TAPE IN THE INPUT DEVICE. 11. RUN (THE TAPE WILL BE REVERSE ASSEMBLED). HALTS: HLT 11B CHECKSUM ERROR HLT 77B END-OF-TAPE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE OPERAND ADDRESSES ARE IN OCTAL. WHEN LISTING ON A LINEPRINTER, THE PROGRAM ASSUMES 60 LINES/PAGE AND THAT THE PRINTER IS IN THE AUTO-PAGE-EJECT MODE OF OPERATION. X10701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: EXTENDED PRECISION ARITHMETIC ROUTINES **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: PRECISION LIBRARY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE OF FIVE SUBROUTINES ALLOWS A USER TO PERFORM THREE-WORD EXTENDED PRECISION ARITHMETIC OPERATIONS. THE EXTENDED REAL NUMBERS HAVE A 38-BIT MANTISSA PLUS A SIGN BIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ENTRY POINT(S) DTE - CONVERSION OF REAL NUMBER (A 23-BIT MANTISSA) TO "EXTEND" (A 38-BIT MANTISSA) EDT - CONVERSION OF "EXTEND" TO REAL EAD - ADDITION OF TWO "EXTEND" NUMBERS EMP - MULTIPLICATION OF TWO "EXTEND" NUMBERS EDV - DIVISION OF TWO "EXTEND" NUMBERS CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT DTE JSB DTE DEF *+5 DEF D ADDRESS OF 1ST WORD DEF IE1) ) DEF IE2> REPRESENTATION OF D (REAL) IN THREE WORDS OF "EXTEND" ) (19(DECIMAL) WORDS) DEF IE3) EXT ETD JSB ETD DEF *+5 DEF IE1) ) DEF IE2> "EXTEND" - TYPE NUMBER ) DEF IE3) DEF D REPRESENTATION OF AN "EXTEND" NUMBER IN REAL (22(10) WORDS) EXT EAD JSB EAD DEF *+10 DEF IA1) ) DEF IA2> FIRST ADDEND OF THE "EXTEND" NUMBER ) DEF IA3) DEF IB1) ) DEF IB2> SECOND ADDEND OF THE "EXTEND" NUMBER ) DEF IB3) DEF IAD1 DEF IAD2 ADDITION OF THE "EXTEND" (225(10) WORDS) DEF IAD3 EXT EMP JSB EMP DEF *+10 DEF IA1) ) DEF IA2> 1ST MULTIPLICAND OF THE "EXTEND" TYPE ) DEF IA3) DEF IB1) ) DEF IB2> 2 MULTIPLICAND OF THE "EXTEND" TYPE ) DEF IB3) DEF IMP1) ) DEF IMP2> PRODUCT OF THE "EXTEND" TYPE (339(10) WORDS) ) DEF IMP3) EXT EDV JSB EDV DEF *+10 DEF IA1) ) DEF IA2> DIVIDEND OF THE "EXTEND" TYPE ) DEF IA3) DEF IB1) ) DEF IB2> DIVISOR OF THE "EXTEND" TYPE ) DEF IB3) DEF IDV1) ) DEF IDV2> QUOTIENT OF THE "EXTEND" TYPE (261(10) WORDS) ) DEF IDV3) DECLARATIONS AND CALLING SEQUENCE - ALGOL PROCEDURE DTE (D,IE1,EI2,EI3); VALUE D: REAL D; INTEGER IE1, IE2, IE3; CODE; . . . DTE (. . .); . . . . PROCEDURE ETD (IE1,IE2,IE3,D); INTEGER IE1,IE2,IE3; REAL D; CODE; . . . ETD (. . .); . . . PROCEDURE EAD(IA1,IA2,IA3,IB1,IB2,IB3,IAD1,ADP2,ADP3); INTEGER IA1,IA2,IA3,IB1,IB2,IB3,IAD1,IAD2,IAD3;CODE . . . EAD (. . .); . . PROCEDURE EMP(IA1,IA2,IA3,IB1,IB2,IB3,IMP1,IMP2,IMP3); INTEGER IA1,IA2,IA3,IB1,IB2,IB3,IMP1,IMP2,IMP3;CODE . . . EMP (. . .); . . . PROCEDURE EDV (IA1, IA2, IA3, IB1, IB2, IB3, IDV1, IDV2, IDV3); INTEGER IA1,IA2,IA3,IB1,IB2,IB3,IDV1,IDV2,IDV3; CODE; . . . EDV (. . .); . . . CALLING SEQUENCE - FORTRAN DTE(...) . . . ETD(...) . . . EAD(...) . . . EMP(...) . . . EDV(...) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE RESULT OF EACH AND EVERY ARITHMETICAL OPERATION IS TESTED FOR OVERFLOW BY ONE AND THE SAME METHOD. IN CASE THAT THE EXPONENT OF THE RESULT EXCEEDS 177(8), THE RESULT IS ASSUMED TO BE THE MAX. NUMBER PERMITTED, WITH REGARD TO SIGN (I.E., EITHER 077777(8) 177777(8) 177776(8) OR 100000(8) 000000(8) 000376(8)). X10801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FIVE WORD EXTENDED PRECISION ARITHMETIC ROUTINES **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: PRECISION LIBRARY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE OF SIX SUBROUTINES ALLOWS A USER TO PERFORM FIVE-WORD EXTENDED PRECISION ARITHMETIC OPERATIONS. EACH REAL NUMBER HAS A 63 BIT MANTISSA PLUS SIGN AND AN EXPONENT OF 7 BITS PLUS SIGN AND AN EXPONENT OF 7 BITS PLUS SIGN. ARITHMETIC OPERATIONS ARE ROUNDED. THESE ROUTINES ARE CALLABLE FROM ALGOL, FORTRAN, AND ASSEMBLER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ENTRY POINTS: HAD - ADDITION OF TWO "HIGH" NUMBERS HMP - MULTIPLICATION OF TWO "HIGH" NUMBERS HDV - DIVISION OF TWO "HIGH" NUMBERS HCM - CHANGE OF SIGN OF A "HIGH" - TYPE NUMBER DTH - CONVERSION OF REAL-TYPE NUMBER TO "HIGH" - TYPE HTD - CONVERSION OF "HIGH" - TYPE NUMBER TO REAL TYPE CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT HAD JSB HAD DEF *+16 DEF IA1 DEF IA3 ADDEND IN HIGH DEF IA4 DEF IA5 DEF IB1 DEF IB2 DEF IB3 ADDEND IN HIGH DEF IB4 DEF IB5 DEF IC1 DEF IC2 DEF IC3 PRODUCT IN HIGH DEF IC4 DEF IC5 (306(10) WORDS) EXT HMP JSB HMP DEF *+16 DEF IA1 DEF IA2 DEF IA3 1. MULTIPLICAND IN HIGH DEF IA4 DEF IA5 DEF IB1 DEF IB2 DEF IB3 2. MULTIPLICAND IN HIGH DEF IB4 DEF IB5 DEF IC1 DEF IC2 DEF IC3 PRODUCT IN HIGH DEF IC4 DEF IC5 (598(10) WORDS) EXT HDV JSB HDV DEF *+16 DEF IA1 DEF IA2 DEF IA3 DIVIDEND IN HIGH DEF IA4 DEF IA5 DEF IB1 DEF IB2 DEF IB3 DIVISOR IN HIGH DEF IB4 DEF IB5 DEF IC1 DEF IC2 DEF IC3 RESULT IN HIGH DEF IC4 DEF IC5 (463(10) WORDS) EXT HCM JSB HCM DEF *+11 DEF IA1 DEF IA2 DEF IA3 THE NUMBER THE SIGN OF WHICH IS TO BE CHANGED HIGH-TYPE DEF IA4 DEF IA5 DEF IC1 DEF IC2 DEF IC3 RESULT, AGAIN IN HIGH DEF IC4 DEF IC5 (40(10) WORDS) DEF DTH JSB DTH DEF *+7 ADDRESS OF 1. WORD, REAL-TYPE DEF D DEF IH1 DEF IH2 DEF IH3 REPRESENTATION OF D IN 5 WORDS, HIGH-TYPE DEF IH4 DEF IH5 (57(10) WORDS) EXT HTD JSB HTD DEF *+5 DEF IH1 1.,2.,5., WORD OF THE HIGH-TYPE REPRESENTATION OF A NUMBER DEF IH2 DEF IH5 DEF D (23(10) WORDS) RESULT, REAL-TYPE DECLARATION AND CALLING SEQUENCE - ALGOL PROCEDURE HAD (IA1,IA2,IA3,IA4,IA5,IB1,IB2,IB3,IB4,IB5,IC1,IC2,IC3, IC4,IC5); INTEGER IA1,IA2,IA3,IA4,IA5,IB1,IB2,IB3,IB4,IB5,IC1,IC2,IC3,IC4,IC5; CODE: HAD(....); PROCEDURE HMP (IA1,IA2,IA3,IA4,IA5,IB1,IB2,IB3,IB4,B5,IC1,IC2,IC3, IC4,IC5); INTEGER IA1,IA2,IA3,IA4,IA5,IB1,IB2,IB3,IB4,IB5,IC1,IC2,C3,IC4,IC5, CODE: HMP(....); PROCDURE HDV (IA1,IA2,IA3,IA4,IA5,IB1,IB2,IB3,IB4,IB5,IC1,IC2,IC3, IC4,IC5); INTEGER IA1,IA2,IA3,IA4,IA5,IB1,IB2,IB3,IB4,IB5,IC1,IC2,IC3,IC4,IC5; CODE: HDV(...); PROCEDURE HCM (IA1,IA2,IA3,IA4,IA5,IC1,IC2,IC3,IC4,IC5); INTEGER IA1,IA2,IA3,IA4,IA5,IC1,IC2,IC3,IC4,IC5; CODE: HCM(...); PROCEDURE DTH (D,IH1,IH2,IH3,IH4,IH5); VALUE D; REAL D; INTEGER IH1,IH2,IH3,IH4,IH5: CODE; DTH(....); PROCEDURE HTD (IH1,IH2,IH3,IH4) PROCEDURE HTD (IH1,IH2,IH5,D); INTEGER IH1,IH2,IH5;REAL D; CODE: HTD(...); CALLING SEQUENCE-FORTRAN HAD(.....) HMP(.....) HDV(.....) HCM(.....) DTH(.....) HTD(.....) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE RESULT OF EVERY ARITHMETICAL OPERATION ON HIGH-TYPE NUMBERS IS TESTED FOR OVERFLOW. IN CASE THAT THE EXPONENT OF THE RESULT EXCEEDS 177, THE RESULT OF THE ARITHMETICAL OPERATION IN QUESTION IS ASSUMED TO EQUAL THE MAXIMUM NUMBER THAT CAN BE REPRESENTED, I.E., EITHER 07777(8)........, OR 10000......WITH AN EXPONENT OF 177(8). NO OVERFLOW INDICATION IS PROVIDED. X10901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: IRND **PROGRAM TITLE: RANDOM INTEGER NUMBER GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: RANDOM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: IRND(M) IS A FUNCTION SUBPROGRAM WHICH GENERATES PSEUDO RANDOM NUMBER INTEGERS IN THE RANGE 0 < X < M - 1. THE GENERATING RANDOM NUMBER STRING IS NOT AUTOMATICALLY RESTARTED WHEN THE PROGRAM IS RESTARTED. THIS CAN BE ACHIEVED BY THE FORTRAN CALLABLE SUBROUTINE (STRND). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IRND - CALCULATE RANDOM NUMBER STRND- RETURN TO THE START POINT OF THE FILE OF PSEUDO RANDOM NUMBERS. SAMPLE CALL IN FORTRAN LANGUAGE: N = IRND (5) (ON RETURN N = NBR. IN RANGE 0 .. 4.) CALL STRND (THE RANDOM NUMBER GENERATOR WILL PRODUCE THE SAME FILE OF NUMBERS AGAIN.) SAMPLE CALLS IN ASSEMBLER LANGUAGE: JSB IRND IRND DECLARED AS EXTERNAL DEF * + 2 DEF DEC5 LABEL OF DECIMAL 5 (RETURN; (A) = NBR. IN RANGE 0 .. 4) JSB STRND STRND DECLARED AS EXTERNAL DEF * + 1 (RETURN; RANDOM NUMBER GENERATOR RESET TO START POINT) FOR MORE INFORMATION SEE SAMPLE PROGRAM "RNTST". **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE ARGUMENT M OR IRND(M) SHOULD BE A POSITIVE INTEGER. HOWEVER, IF A NEGATIVE ARGUMENT IS USED, NO ERROR MESSAGE IS ISSUED; THE PROGRAM WILL USE THE ABSOLUTE VALUE OF THE ARGUMENT. X11001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: RNDAF **PROGRAM TITLE: UNIFORMLY DISTRIBUTED PSUEDO-RANDOM NUMBER GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: RANDOM RANDOM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: TWO SUBROUTINES USING THE SAME ALGORITHM TO COMPUTE UNIFORMLY DISTRIBUTED PSEUDO-RANDOM NUMBERS AT THE INTERVAL (0,1) ARE INCLUDED IN THIS PACKAGE. ONE IS FORTRAN OR ALGOL CALLABLE. THE OTHER IS STRICTLY FOR USE WITH ASSEMBLER MAIN PROGRAMS AND IS MUCH FASTER. THE METHOD EMPLOYED IS DESCRIBED IN: 'APPLIED NUMERICAL METHODS', BY CARNAHAN, LUTHER, AND WILKES, P. 545. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DECLARATIONS AND CALLING SEQUENCE IN ALGOL REAL PROCEDURE RNDAF(AF); REAL AF; CODE; . . . ... RNDAF(A) ... . . . CALLING SEQUENCE IN FORTRAN . . . ... RNDAF(A) ... . . . RNDAS CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT RNDAS ... . . . JSB RNDAS . . . **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X11101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CSMP **PROGRAM TITLE: CONTINUOUS SYSTEM MODELING PROGRAM **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: SIMULATOR **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: (CSMP) IS A SET OF ROUTINES WHICH PROVIDE THE ENGINEER AND SCIENTIST WITH A SIMPLE YET VERSATILE MEANS FOR SIMULATING CONTINUOUS PROCESSES. IT PROVIDES A BLOCK-ORIENTED LANGUAGE HAVING A LARGE COMPLEMENT OF FUNC- TIONAL ELEMENTS FOR SPECIFYING THEIR INTERCONNECTION. IT IS OPERABLE UNDER A DOS-M ENVIRONMENT ON A 16K MINIMUM MACHINE. INPUT IS ON CARDS, INITIALLY, AND THEN CAN BE TRANSFERRED TO PAPER TAPE THROUGH THE USES OF THE PROGRAM. OUTPUT IS 120 CHARACTERS WIDE AND SHOULD BE ON A LINE PRINTER. REFERENCE IBM-1130 APPLICATION PROGRAM OPERATIONS MANUAL "1130 CSMP", PART #GH20-0282-2. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: BEFORE CSMP IS USED FOR THE FIRST TIME, THE MAIN PROGRAM, SEGMENTS, AND ASSOCIATED SUBROUTINES (IN SOURCE) MUST BE COMPILED OR ASSEMBLED AND THE ENSUING RELOCATABLES LOADED. THIS PROCEDURE MUST BE FOLLOWED ONLY WHEN A NEW SYSTEM IS BEING USED , WHEN A NEW SPECIAL SUBROUTINE IS BEING IMPLEMENTED, OR WHEN A CHANGE HAS BEEN MADE TO ONE OF THE MAIN ROUTINES. STEP 0: TPYE - :PU,CSMP,CSM0,CSM1,CSM2,CSM3,CSM4,CSM5,CSM6,CSM7,CSMPF STEP 1: CREATE 3 SOURCE FILES THUSLY, A) LOAD TAPE 1 INTO PAPER TAPED READER AND STORE INTO A SOURCE FILE UNDER NAME (SORC1). TTY OR CRT WILL ASK: DONE? B) LOAD TAPE 2 INTO PAPER TAPE READER (PTR), TYPE NO ON THE KEYBD. PTR WILL THEN READ TAPE 2 AND TTY OR CRT WILL ASK ONCE AGAIN IF DONE. C) LOAD TAPE 3 INTO PRT AND TYPE NO ON KEYBD. PTR WILL THEN READ TAPE 3 AND TTY OR CRT WILL ASK DONE? TYPE "YES" AND D) LOAD TAPE 4 INTO PTR AND STORE IN SOURCE THE FIRST PART INTO ANY NAMED FILE (SORC2). WHEN TTY OR CRT ASKS IF DONE, TYPED YES. STORE IN THE SAME MANNER THE NEXT PART OF THE TAPE INTO ANOTHER SOURCE FILE (SORC3). STEP 2: AT THIS POINT ANY MODIFICATON CAN BE MADE TO SORC1 IF DESIRED IE. SUB1, SUB2, SUB3, SUB4, OR SUB5 CAN BE ADDED. SORC2 AND SORC3 MUST NOT BE MODIFIED. STEP 3: TYPE A) :JO B) :JF,SORC1 C) :PR,FTN4,2,99 :ST,R,RSOR1 :JO D) :JF,SORC2 E) :PR,ASMB,2,99 :ST,R,RSOR2 :JO F) :JF,SORC3 G) :PR,ASMB,2,99 :ST,R,RSOR3 :JO H) :PR,LOADR,2,,,1,1 RSOR1,RSOR2,RSOR3,/E I) :ST,P STEP 4: STORE A BINARY DATA FILE NAMED CSMPF HAVING A SIZE OF TWO SECTORS. :ST,B,CSMPF,2 AT THIS POINT CSMP IS READY FOR EXECUTION. 1. :PR,CSMP 2. PUT CARDS IN THE CARD READER AND PRESS READY OR PUT THE PAPER TAPE IN THE PHOTO READER AND PRESS LOAD IF INPUT IS ON TAPE. RIGHT NOW INITIAL RUN MUST BE FROM CARDS. THIS INITIAL RUN CAN BE USED TO MAKE A PAPER TAPE (LIKE THE ENCLOSED SAMPLE TAPE) FOR FUTURE RUNS. H-P CSMP WORKS WITH LOGICAL UNIT NUMBERS ASSIGNED THUSLY: LU EQUIPMENT ---- ----------- 1 TTY OR CRT 4 PAPER TAPE PUNCH UNIT 5 PAPER TAPE READER 6 LINE PRINTER 8 CARD READER AT DISK GEN TIME, IT IS RECOMMENDED TO EXCLUDE EFMP FROM THE DISC PACK AND ALSO TO PUT THE FOLLOWING ROUTINES IN CORE: $SRCH $EX05 $EX10 $EX11 $EX18 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SEE ALSO IBM 1130 APPLICATION PROGRAM OPERATIONS MANUAL "1130 CSMP" PART NUMBER GH20-0282-2 X11201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: CIVIL ENGINEERING COORDINATE GEOMETRY **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: GEOMETRY **LANGUAGES: ASMB FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K WITHOUT EFMP **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: HP (COGO) PROVIDES CIVIL ENGINEERS WITH AN EASY-TO-LEARN PROGRAMMING TOOL FOR SOLVING COORDINATE GEOMETRY PROBLEMS. ENGINEERS CAN STATE PROBLEMS IN FAMILIAR TERMINOLOGY SUCH AS AZIMUTH, DEFLECTION, AND TRAVERSE AJUSTMENT, THUS NO PROGRAMMING IN THE USUAL SENSE, IS NECESSARY. THE PROGRAMMING SYSTEM IS DESIGNED SPECIFICALLY FOR COMPUTATION PROBLEMS IN AREAS SUCH AS CONTROL SURVEYS, HIGHWAY DESIGNS, SUBDIVISION WORK, LAND SURVEYING, RIGHT-OF-WAY SURVEYS, INTER- CHANGE DESIGN, BRIDGE GEOMETRY AND CONSTRUCTION LAYOUT. HOWEVER, (COGO) MAY BE USED IN OTHER APPLICATION AREAS. REFERENCE IBM-1130 APPLICATION PROGRAM MANUAL, PART #GH20-0301-2 **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: STORE ALL OF COGO IN ONE SOURCE FILE. COMPILE. STORE THE ASSEMBLER ROUTINE IN A SEPERATE SOURCE FILE. ASSEMBLE. USUAL LOAD PROCEDURES. CREATE A DISC FILE COGOF HAVING 60 SECTORS; :ST,B,COGOF,60 FOR MORE DETAILED INSTRUCTIONS SEE "STORING THE COGO PROGRAM ON DISK" IN THE USERS MANUAL. RUN PROCEDURES AND DATA REQUIREMENTS ARE ALSO FOUND IN THE USER MANUAL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. IT MAY BE NECESSARY FOR A USER TO CHANGE CERTAIN LU NUMBERS WITHIN THE SOURCE LISTING BY USING THE FOLLOWING EDIT CMNDS. :EDIT,SCOGO,INPUT LU /R,64 MOUT= LU OF PRINCIPLE OUTPUT DEVICE FOR COGO /R,65 IN= LU OF PRINCIPAL INPUT DEVICE FOR COGO /R,66 MTYPE= LU OF TTY OR CRT IF DIFFERENT THAN THE NORMAL LU OF 1 /E PRESENTLY, MOUT=6 IN= 8 (CARD) MTYPE= 1 IF A PUNCH UNIT OTHER THAN THE STANDARD PUNCH UNIT (LU=4) IS DESIRED FOR PUNCHED TAPE OUTPUT, THE FOLLOWING EDIT PROCEDURE IS RECOMMENDED BEFORE LOADING COGO: :EDIT,SCOGO,1 /R,2508 300 MPCH= LU OF PUNCH DEVICE /R,2520 301 IF (MOUT - LU OF PUNCH DEVICE)) 304,310,304 /R,2537 315 IF (MOUT - (LU OF PUNCH DEVICE)) 316,317,316 /E IF THE LU NUMBER OF THE PAPER TAPE READER IS NOT EQUAL TO 5, THE FOLLOW- ING EDIT PROCEDURE IS RECOMMENDED BEFORE LOADING COGO: :EDIT,SCOGO,1 /R,375 IN= (LU OF PAPER TAPE READER) /E THE PROCEDURE FOR LOADING COGO IS FOUND IN THE COGO USER'S MANUAL. 2. FOR A FASTER EXECUTION OF COGO IT IS RECOMMMENDED THAT AT GEN TIME (DISC) THE FOLLOWING MODULES BE MADE CORE RESIDENT: PRINTER DRIVER, DISC DRIVER, $EX05, $EX10, $EX11, $EX18, AND $SRCH WITH THESE MODULES CORE RESIDENT AN MP ERROR IS ENCOUNTERED; HOWEVER IT IS WORTH WHILE TO RESOLVE THIS PROBLEM, ALLOWING COGO TO EXECUTE MUCH FASTER THAN WITH THESE MODULES DISC RESIDENT. X11301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PROBN **PROGRAM TITLE: NORMAL DISTRIBUTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: STATISTICS **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE FUNCTION RETURNS THE PROBABILITY OF EXCEEDING THE ABSOLUTE VALUE OF AN ARGUMENT, WHICH IS NORMALLY DISTRIBUTED WITH MEAN 0 AND VARIANCE 1. THE FUNCTION IS BASED ON A POLYNOMIAL TYPE APPROXIMATION WHICH GIVES A MAXIMUM ERROR OF 3*10**-7 (BETTER THAN MACHINE ACCURACY). UNLIKE THE NORMAL DISTRIBUTION INCLUDED IN THE HP22143 PACKAGE, WHICH LIMITS THE ARGUMENT TO LESS THAN 6.0, THIS FUNCTION ALLOWS ALL VALUES OF THE ARGU- MENT. IT OPERATES IN A DOS OR DOS-M ENVIRONMENT AND IS CALLABLE FROM FORTRAN AND ASSEMBLY LANGUAGE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: PROBN CALLING SEQUENCE: P=PROBN(X) OR: JSB PROBN EXT PROBN DEF *+2 DEF X (PROBABILITY RETURNED IN A AND B) NO ERROR CONDITIONS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X11401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: COMPLEX ARITHMETIC FOR HP BASIC **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: COMPLEX BASIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: HP BASIC **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS BASIC CALLABLE SUBROUTINE ALLOWS ADDITION, SUBTRACTION, MULTIPLICA- TION AND DIVISION OF COMPLEX NUMBERS. IT ALSO ALLOWS A NUMBER OF THE FORM X1 + IX2 TO BE CONVERTED TO THE FORM L1 * E**(IF1) AND VICE VERSA. THE CONTRIBUTED PROGRAM HP22078, HIGH SPEED PUNCH DRIVER - BASIC CALLABLE, CAN BE USED WITH THIS SUBROUTINE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE SUBROUTINE CONSISTS OF TWO CALL-ROUTINES: CALL (8, T, X1, X2, Y1, Y2, Z1, Z2) CALL (9, T, X1, X2, L1, F1) WHERE T IS A SWITCH AND (X1, X2) = (X1 + IX2), (Y1, Y2) = (Y1 + IY2), (Z1, Z2) - (Z1 + IZ2) AND (L1, F1) = L1* E**(IF1) ARE COMPLEX NUMBERS. IN CALL (8...) T, (X1, X2), (Y1, Y2) ARE INPUT VALUES AND (Z1, Z2) ARE OUTPUT VALUES. THE VALUE OF T DEFINES THE ARITHMETIC OPERATION: T=1 (Z1, Z2) <= (X1, X2) + (Y1, Y2) T=2 (Z1, Z2) <= (X1, X2) - (Y1, Y2) T=3 (Z1, Z2) <= (X1, X2) * (Y1, Y2) T=4 (Z1, Z2) <= (X1, X2) / (Y1, Y2) IN CALL (9...) CONVERSION TAKES PLACE. THE VALUE OF T DETERMINES THE DIRECTION OF CONVERSION: T=1 (X1, X2) => (L1, F1), (X1, X2) INPUT T=2 (X1, X2) <= (L1, F1), (L1, F1) INPUT (-PI < F1 </= PI) AN ERROR MESSAGE IS PRINTED IF T IS GIVEN AN ILLEGAL VALUE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1.THE FOLLOWING LINES IN THE SUBROUTINE MAY BE ALTERED TO SUIT ANOTHER BASIC COMPILER: LINE: 294 LDA 264B 300 STA 264B 307 STA 264B 318 TTY EQU 102B 319 .BACK OCT 2027 328 IFIX EQU 1364B 329 FMP OCT 7416 330 FDV OCT 7463 331 FAD OCT 7343 332 FSB OCT 7347 333 SIN OCT 10647 334 ATN OCT 10532 335 SQRT OCT 10765 343 PIBY2 OCT 10611 (384* M2 EQU 432B) 2. THE SUBROUTINE EXPECTS AN ENTRY-ROUTINE, .ENTR, ON BASE PAGE. IF THE CONTRIBUTED DRIVER HP 22078 IS NOT USED, THE FOLLOWING ENTRY ROUTINE MUST BE COMPILED WITH THIS SUBROUTINE: ORG 30B .ENTR NOP STA SORCE LDB .ENTR,I STB DEST CMB,INB ADB .ENTR ADB M2 CMB,INB ISZ .ENTR .ENT1 LDA SORCE,I STA DEST,I CCA ADA SORCE STA SORCE ISZ DEST INB,SZB JMP .ENT1 JMP .ENTR,I M2 EQU 432B SORCE NOP DEST NOP END X11501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 64 BIT INTEGER LIBRARY **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: INTEGER PRECISION LIBRARY **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS LIBRARY PROVIDES THE CAPABILITY OF HANDLING INTEGER NUMBERS OF UP TO TWENTY DIGITS IN FORTRAN PROGRAMS. IT IS ESPECIALLY USEFUL IN PROGRAMS WHICH DEAL WITH LARGE NUMBERS AND REQUIRE PRECISION EVEN ON THE LEAST SIGNIFICANT DIGITS, SUCH AS BOOKKEEPING PROGRAMS. IT WAS DESIGNED TO OPERATE ON ANY DOS OR DOS-M SYSTEM WITH A FORTRAN COMPILER. THE USER NEEDS ONLY TO DECLARE THE APPROPRIATE VARIABLES IN HIS FORTRAN PROGRAM AS COMPLEX VARIABLES. FOUR CONSECUTIVE WORDS WILL GENERATE CALLS TO THE DIFFERENT SUBROUTINES OF THE 64-BIT INTEGER LIBRARY. THESE LIBRARY SUBROUTINES HAVE THE SAME NAMES AS THE STANDARD COMPLEX SUBROUTINES. THIS LIBRARY ALSO INCLUDES TWO ROUTINES TO CONVERT NUMBERS IN ASCII FORMAT TO FOUR-WORD BINARY FORMAT AND VICE VERSA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ASSEMBLE ALL SUBROUTINES, STORING RELOCATABLE BINARY IN JBIN USING 99 OPTION. THEN BUILD RELOCATABLE FILE TYPING: :ST,R,RCLIB EACH 64-BIT INTEGER IS STORED IN 4 CONSECUTIVE WORDS, WITH BIT 15 OF THE FOURTH WORD BEING THE SIGN BIT. SO, EACH 64-BIT INTEGER MUST BE DECLARED AS A COMPLEX VARIABLE. EXAMPLE: IF Z = X + Y IS TO BE COMPUTED, WHERE X, Y AND Z ARE 64-BIT INTEGERS, THE PROGRAM WILL BE: FTN4 COMPLEX X, Y, Z ------- ------- Z = X + Y TO CHANGE A NUMBER IN ASCII FORMAT INTO A FOUR-WORD BINARY FORMAT, THE SUBROUTINE BIN4 MUST BE USED (SEE SECTION 4.3). ON THE OTHER HAND, TO CHANGE A FOUR-WORD BINARY NUMBER INTO ASCII FORMAT, THE SUBROUTINE ALPHA MUST BE USED (SEE SECTION 4.3): EXAMPLE: FTN4 DIMENSION IX(7), IY(7), IZ(Z) COMPLEX X,Y,Z READ (1,2) IX READ (1,2) IY CALL BIN4 (IX,14,0,X) CALL BIN4 (IY,14,0,Y) ---- Z = X + Y ---- CALL ALPHA (Z, 14, 0, IZ) WRITE (1,2) IZ ---- ---- 2 FORMAT (7A2) AT COMPILATION TIME, ANY OPERATION ON COMPLEX VARIABLES GENERATES CALLS TO SOME OF THE FOLLOWING COMPLEX STANDARD SUBROUTINES. .CADD .CSUB .CMPY .CDIV ..CCM .ICPX .CIWP CMPLX REAL THE 64-BIT SUBROUTINES HAVE BEEN GIVEN THE SAME NAMES. AT LOADING TIME, THEY ARE GIVEN FIRST SO AS TO BE LOADED INSTEAD OF THE STANDARD SUBROU- TINES. PROCEDURE ON DOS-M: :JO :PR,LOAD,2 ENTER FILE NAMES OR /E RPROG, RCLIB, /E | |_________________NAME OF THE 64-BIT LIBRARY | RELOCATABLE FILE | | | |________________________NAME OF THE USER | PROGRAM RELOCATABLE | FILE | | WHERE: | | RPROG = NAME...<-------------| | RCLIB = NAME___<------------------------| 64-BIT LIBRARY COMPOSITION: BIN4 FOUR-WORD ALPHA FORMATTER .CADD .CSUB FOUR-WORD .CMPY GENERATIONS .CDIV QDIV CALLED BY .CDIV ..CCM 2 COMPLEMENT .ICPX CHANGES A 1-WORD INTEGER INTO A 4-WORD INTEGER .CINT CHANGES A 4-WORD INTEGER INTO A 1-WORD INTEGER CMPLX CHANGES A REAL NUMBER INTO A 4-WORD INTEGER REAL CHANGES A 4-WORD INTEGER INTO A REAL NUMBER PARAMETERS OF SUBROUTINE BIN4 CALL BIN4 (IASCI, NBDIG, IPOW, IBIN) IASCI IS THE BUFFER CONTAINING THE NUMBER IN ASCII FORMAT, 2 DIGITS PER WORD. THE SIGN CAN BE AT THE BEGINNING OR AT THE END OF THE NUMBER. NBDIG IS THE NUMBER OF CHARACTERS THAT WILL BE TAKEN IN CONSIDERATION IN IASCI BUFFER. (NBDIG = DIMENSION OF IASCI BUFFER) (USUALLY NBDIG IS LARGE ENOUGH NOT TO CUT DOWN THE ASCII NUMBER!) IPOW MULTIPLIES THE VALUE OF IBIN BY 10 TO THE POWER OF IPOW. IBIN IS A FOUR-WORD BUFFER WHERE THE 64-BIT BINARY NUMBER WILL BE RETURNED. NOTE: THE NUMBER LOCATED IN IASCI BUFFER MAY CONTAIN A DECIMAL POINT. DEPENDING ON THE VALUE OF IPOW, IBIN TAKES DIFFERENT VALUES. THIS DECIMAL POINT CAN BE USEFUL TO ENTER AMOUNTS OF MONEY, WITH OR WITHOUT CENTS!.. EXAMPLE: TO ENTER THE AMOUNT $350 ONE WILL TYPE: 350 (IT IS NOT NECESSARY TO TYPE: 350.00) TO ENTER THE AMOUNT $350 AND 50 CENTS, ONE WILL TYPE: 350.50 IF IPOW = 2 IBIN = 35000 IN THE FIRST CASE IBIN = 35050 IN THE SECOND CASE AND THEN ALL CALCULATIONS WILL BE MADE IN CENTS. PARAMETERS OF SUBROUTINE ALPHA CALL ALPHA (IBIN, NBDIG, IPOW, IASCI) IBIN IS A 64-BIT BINARY NUMBER NBDIG IS THE MAXIMUM NUMBER OF CHARACTERS IN WHICH THE ASCII NUMBER WILL BE RETURNED (DIMENSION OF IASCI BUFFER). IPOW MULTIPLIES IBIN BY 10 TO THE POWER OF IPOW IASCI IS THE BUFFER WHERE THE ASCII NUMBER WILL BE RETURNED EXAMPLE: IBIN = 12325 CALL ALPHA (IBIN, 10, -2, IASCI) => IASCI 1 2 3 . 2 5 CALL ALPHA (IBIN, 10, 0 IASCI) => IASCI 1 2 3 2 5 CALL ALPHA (IBIN, 10, 2, IASCI) => IASCI 1 2 3 2 5 0 0 **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X11601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FAST FOURIER TRANSFORM WITH RESCALING UPON OVERFLOW **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: FOURIER TRANSFORM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS MICROCODED INTEGER SUBROUTINE PERFORMS A FAST FOURIER TRANSFORM ON EITHER REAL OR COMPLEX INPUT DATA IN A BCS OR DOS-M ENVIRONMENT. THE TRANSFORM IS PERFORMED IN PLACE, DESTROYING THE INPUT DATA. THE ARRAY LENGTHS OF THE INPUT DATA MUST BE A POWER OF .2. AUTOMATIC RESCALING OCCURS IF AN OVERFLOW IS DETECTED. THE SUBROUTINE IS CALLABLE FROM ASSEMBLY LANGUAGE OR FORTRAN. EQUIPMENT REQUIRED INCLUDES 8K CORE AND WCS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: LOAD AND RUN INSTRUCTIONS 1. ASSEMBLE THE MICROCODED FFT SUBROUTINE USING THE DOS-M OR BCS MICROPROCESSOR. 2. LOAD THE WCS BOARD USING THE DOS-M OR BCS MICRO DEBUG EDITOR. 3. COMPILE/ASSEMBLE THE CALLING PROGRAM. 4. IF THE CALLING PROGRAM IS WRITTEN IN FORTRAN, ASSEMBLE THE LINKING PROGRAM MFFT. 5. ASSEMBLE THE BINVERSION (BIT INVERSION, END TO END) SUBROUTINE. 6. LOAD THE CALLING PROGRAM, THE BINVERSION SUBROUTINE, AND (IF NECESSARY) THE LINKING SUBROUTINE. 7. EXECUTE THE CALLING PROGRAM. NOTE: THE BINVERSION LINK PROGRAM, BINV, MAY BE USED IF DESIRED TO GENERATE THE COMPLEX WEIGHT TABLE. SUBROUTINES OR MICROPROGRAMS 1. MICROCODED FFET SUBROUTINE A. ASSEMBLY LANGUAGE CALLING SEQUENCE OCT 105160 MACRO INSTRUCTION TO JUMP TO WCS LOCATION 1007 DEF *+5 ADDRESS OF RETURN POINT DEF LEN ADDRESS OF ARRAY LENGTH DEF IMAG ADDRESS OF THE FIRST ELEMENT OF THE IMAGINARY ARRAY DEF IREAL ADDRESS OF THE FIRST ELEMENT OF THE REAL ARRAY. DEF TABLE ADDRESS OF THE FIRST ELEMENT OF THE COMPLEX WEIGHT TABLE. B. FORTRAN CALLING SEQUENCE CALL MFFT(LEN,IMAG,IREAL,TABLE) WHERE MFFT IS AN ASSEMBLY LANGUAGE LINK TO THE MICROCODE 2. BINVERSION SUBROUTINE. THIS ROUTINE DOES A BIT INVERSION, FROM END TO END OF A FIELD. A. ASSEMBLY LANGUAGE CALLING SEQUENCE. JSB BIN JUMP TO THE SUBROUTINE DEF *+4 ADDRESS OF THE RETURN POINT DEF LEN ADDRESS OF THE FIRST ELEMENT OF THE IMAGINARY ARRAY DEF IMAG ADDRESS OF THE FIRST ELEMENT OF THE IMAGINARY ARRAY DEF IREAL ADDRESS OF THE FIRST ELEMENT OF THE REAL ARRAY B. FORTRAN CALLING SEQUENCE 3. BINVERSION LINK SUBROUTINE FOR GENERATING WEIGHT TABLE. ASSEMBLY LANGUAGE CALLING SEQUENCE LDA I ADDRESS OF THE NUMBER TO BE BINVERTED LDB NBITS ADDRESS OF THE NUMBER OF BITS TO BINVERT OCT 105140 MACRO INSTRUCTION TO JUMP TO WCS LOCATION 1006 STB J RESULT OF THE BINVERSION IS RETURNED IN THE B REGISTER B. FORTRAN CALLING SEQUENCE CALL BINV(NBITS,I,J) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: AUTOMATIC RESCALING IS PERFORMED IF OVERFLOW IS DETECTED DURING ANY CALCULATION STEP. THE TRANSFORM IS PERFORMED IN PLACE, DESTROYING THE INPUT DATA. THE FENCE REGISTER IS RESTORED IN MICRCODE TO 10000. IF A DIFFERENT FENCE IS APPLICABLE TO YOUR SYSTEM, CHANGE THE CORRESPONDING LINE IN MICROCODE. THE CONTROL CARD OF THE MICRO FFT IS $ORIGIN=1000. IF USING A MODULE OTHER THAN WCS MODULE 2, CHANGE THIS CONTROL STATEMENT. EXECUTION TIME IS APPROXIMATELY 0.2 SECONDS FOR A 1024-POINT TRANSFORM. X11701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: TRIPLE PRECISION ROUTINES **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: PRECISION ASCII CONVERSION CHARACTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M BCS DOS3 **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE OF EIGHT ROUTINES ALLOWS TRIPLE WORD FUNCTIONS TO BE EXECUTED IN A DOS-M, DOS III, OR BCS ENVIRONMENT. A USER CAN CONVERT FROM 3 CHARACTERS PER WORD TO 2 CHARACTERS PER WORD, AND VICE VERSA; CONVERT A TRIPLE WORD INTEGER VALUE TO ASCII FORMAT, AND VICE VERSA; ADD AND SUBTRACT TRIPLE WORD INTEGERS; AND DIVIDE AND MULTIPLY A TRIPLE WORD INTEGER BY A SINGLE WORD INTEGER. THESE ROUTINES REQUIRE 16K OF CORE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: A3 TO ASCII FORMATTING ROUTINE 1. NAME FJ 2. FUNCTION - TO CONVERT AN A3 ALPHANUMERIC STRING TO ASCII (THAT IS, FROM 3 CHARACTERS PER WORD TO 2 CHARACTERS PER WORD). 3. CALLING SEQUENCE 3.1 FORTRAN CALL FJ (SRCE, DEST, CHRS) SRCE = A3 SOURCE DATA ADDRESS DEST = ASCII RESULT ADDRESS CHRS = THE NUMBER OF CHARACTERS TO BE CONVERTED. 3.2 ASSEMBLER JSB FJ DEF *+4 DEF SRCE DEF DEST DEF CHRS 4. GENERAL ALL REGISTERS UNDEFINED ON EXIT. ASCII TO A3 FORMATTING ROUTINE 1. NAME FG 2. FUNCTION - TO CONVERT ASCII ALPHANUMERIC CHARACTERS TO A3 FORMAT (THAT IS, FROM 2 CHARACTERS PER WORD TO 3 CHARACTERS PER WORD). 3. CALLING SEQUENCE 3.1 FORTRAN CALL FG (SRCE, DEST, CHRS) SRCE = ASCII SOURCE DATA ADDRESS DEST = A3 RESULT ADDRESS CHRS = THE NUMBER OF CHARACTERS TO BE CONVERTED 3.2 ASSEMBLER JSB FG DEF *+4 DEF SRCE DEF DEST DEF CHRS 4. GENERAL ALL REGISTERS UNDEFINED ON EXIT. A3 FORMAT (PACKED ASCII CODE FOR CONVERSION) ASCII CODE FOR CONVERSION SPACE 40B 0 ' 56B 1 ; 54B 2 / 57B 3 0 60B 4 1 61B 5 2 62B 6 3 63B 7 4 64B 8 5 65B 9 6 66B 10 7 67B 11 8 70B 12 9 71B 13 A 101B 14 B 102B 15 C 103B 16 D 104B 17 E 105B 18 F 106B 19 G 107B 20 H 110B 21 I 111B 22 J 112B 23 K 113B 24 L 114B 25 M 115B 26 N 116B 27 O 117B 28 P 120B 29 Q 121B 30 R 122B 31 S 123B 32 T 124B 33 U 125B 34 V 126B 35 W 127B 36 X 130B 37 Y 131B 38 Z 132B 39 TRIPLE WORD INTEGER TO ASCII 1. NAME ATC N. FUNCTION - TO CONVERT A TRIPLE WORD INTEGER VALUE TO ASCII FORMAT (15 DIGITS EXCLUDING A DECIMAL POINT). THE CONVERTED ASCII STRING IS PLACED IN THE OUTPUT BUFFER (RIGHT JUSTIFIED) WITH LEADING ZEROES SET TO BLANKS, A DECIMAL POINT INSERTED WHERE REQUESTED. NOTE 1: WHERE N IS THE REQUIRED NUMBER OF DECIMAL DIGITS, IF THE TRIPLE WORD INTEGER IS LESS THAN 10 TO THE NTH POWER, THE RESULT IS FORMATTED AS: 0.X(1)X(2)....X(N) WHERE SOME OR ALL OF THE X(I) ARE ZERO. NOTE 2 WHERE N = 0, ALL NUMBERS WILL HAVE A TRAILING DECIMAL POINT, THUS: 123456. 3. CALLING SEQUENCES 3.1 FORTRAN CALL ATC (IAD, IAR, N, IE) IAD = SOURCE ADDRESS (3 WORDS) N = NUMBER OF DECIMAL DIGITS AFTER THE DECIMAL POINT(1 WORD) IAR = OUTPUT BUFFER ADDRESS (8 WORDS) IE = STATUS FLAG BIT 0 IS SET TO 1 IF THE OUTPUT ASCII STRING CONTAINS MORE THAN 7 DECIMAL DIGITS. BIT 15 IS SET TO 1 IF THE SOURCE STRING WAS NEGATIVE. 3.2 ASSEMBLER JSB ATC DEF RETURN (DEF *+4) DEF SOURCE DATA DEF BUFFER ADDRESS DEF N DEF IE 4. GENERAL ALL REGISTERS UNDEFINED ON EXIT. CALL THE TRIPLE WORD 2'S COMPLEMENTER ROUTINE, .TWC. ASCII TO TRIPLE WORD INTEGER 1. NAME ATF 2. FUNCTION - TO CONVERT AN ASCII NUMBER (MAX OF 15 CHARACTERS) TO THREE WORD INTEGER FORMAT. TERMINATE ON ASCII SPACE OR CR. 3. CALLING SEQUENCE 3.1 FORTRAN CALL ATF (IAD, IUL, IAR, IE) IAD = SOURCE DATA ADDRESS IUL = 0 FIRST CHARACTER IN MOST SIGNIFICANT HALF OF FIRST WORD = 1 FIRST CHARACTER IN LEAST SIGNIFICANT HALF OF FIRST WORD IAR = RESULT DATA ADDRESS IE = 1 ERROR ON RETURN (MORE THAN 14 CHARACTERS OR NON-NUMERIC CHARACTERS EXCEPT DECIMAL POINT) = 0 NO ERROR 3.2 ASSEMBLER JSB ATF DEF RETURN (DEF *+5) DEF SOURCE BUFFER DEF UPPER/LOWER FLAG DEF RESULT BUFFER DEF ERROR FLAG RETURN 4. GENERAL ALL REGISTERS UNDEFINED ON EXIT. CALL ROUTINE ATM. DIVIDE/MULTIPLY TRIPLE WORD INTEGER 1. NAME ATD AND ATM 2. FUNCTION - DIVIDE (ATD) OR MULTIPLY (ATM) A TRIPLE WORD INTEGER NUMBER BY A SINGLE WORD INTEGER NUMBER. 3. CALLING SEQUENCES 3.1 FORTRAN CALL ATD (IAD, N, IAR, IE) ATM IAD = TRIPLE WORD INTEGER N = SINGLE WORD INTEGER IAR = TRIPLE WORD INTEGER RESULT IE = REMAINDER (OR 100000 IF OVERFLOW) = 0 NO REMAINDER (NO OVERFLOW) 3.2 ASSEMBLER JSB ATD/ATM DEF RETURN (DEF *+5) DEF TRIPLE WORD INTEGER DEF SINGLE WORD INTEGER DEF TRIPLE WORD RESULT DEF REMAINDER (SET TO 100000 IF OVERFLOW) 4. GENERAL ALL REGISTERS UNDEFINED ON EXIT. ADD/SUBTRACT TRIPLE WORD INTEGER 1. NAME ATA AND ATS 2. FUNCTION - ADD (ATA) OR SUBTRACT (ATS) TRIPLE WORD INTEGERS - RESULT IS HELD IN FIRST TRIPLE WORD INTEGER LOCATIONS. 3. CALLING SEQUENCE 3.1 FORTRAN CALL ATA (IA1, IA2, IE) (ATS) IA1 = TRIPLE WORD INTEGER 1 IA2 = TRIPLE WORD INTEGER 2 IE = 1 ERROR (OVERFLOW) = 0 NO ERROR 3.2 ASSEMBLER JSB ATA/ATS DEF RETURN (DEF *+4) DEF TRIPLE WORD 1 DEF TRIPLE WORD 2 DEF ERROR FLAG RETURN 4. GENERAL ALL REGISTERS UNDEFINED ON EXIT. ROUTINE ATS CALLS ATA. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X11801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: CURVE FITTING WEIGHTED AVERAGING **REVISION? YES **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: PLOTTER GRAPHIC **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'FOCUS' MERITS CONSIDERATION AS A CURVE FITTING METHOD, WHEN WORKING WITH DATA THAT DOES NOT APPROXIMATE A RECOGNIZABLE FUNCTION. AS LONG AS THERE IS SUFFICIENT DATA, 'FOCUS' WILL WORK, UNCHANGED, ON A VARIETY OF DATA PATTERNS. IT WILL QUICKLY FIT DATA WITHOUT EITHER CONVERGENCE OR ACCURACY PROBLEMS. 'FOCUS' TAKES THE WRINKLES OUT OF OTHERWISE ERRATIC DATA BY USING A WEIGHTED AVERAGE. WEIGHTS USED ARE W1=1, W2=2, AND W3=1. P(N)= W1*P(N-1) + W2*P(N) + W3*P(N+1)/(W1 + W2 + W3) LACKING ENOUGH NEIGHBORS, END POINTS REQUIRE SPECIAL ATTENTION. FOR THE FIRST POINT, W1 IS SET TO 0, AND THE LAST POINT USES W3=0. THE AVERAGING IS REPEATED FOR EACH POINT A SPECIFIED NUMBER OF TIMES. THE USER OF 'FOCUS' SHOULD ADJUST THAT NUMBER TO HIS/HER APPLICATION. THE DATA BEGINS TO LOSE SIGNIFICANCE AS THE AVERAGING CONTINUES. ULTIMATELY, A STRAIGHT LINE ON THE ABSOLUTE AVERAGE WOULD RESULT. HARDWARE REQUIREMENT INCLUDE 4K AND A TELETYPE. HE 7210A IS OPTIONAL. BCS OPERATING SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: FIT2 (AVE1, DELT1, DELT2) OUTPUT - AVE1 IS THE AVERAGE RESIDUAL* FROM THE FIRST WEIGHTED AVERAGING. OUTPUT - AVE IS THE AVERAGE RESIDUAL FROM A SECOND WEIGHTED AVERAGING AFTER DATA HAS BEEN SELECTIVELY REMOVED. OUTPUT - DELT1 IS THE WORST RESIDUAL FROM THE FIRST PASS. OUTPUT - DELT2 IS THE WORST RESIDUAL FROM THE SECOND PASS. CALLING SEQUENCE - FORTRAN CALL FIT2(AVE1, AVE, DELT1, DELT2) ------------------------------------------------------------------------ FOCUS(NDATA, DATA, NFOC, AVE, ORIG, DELT1) INPUT - NDATA IS THE NUMBER OF DATA POINTS TO BE FIT INPUT - DATA IS THE DATA ARRAY, OUTPUT CONTAINS FIT DATA INPUT - NFOC IS THE NUMBER OF TIMES THE AVERAGING IS TO BE REPEATED OUTPUT - AVE IS THE AVERAGE RESIDUAL OUTPUT - ORIG IS THE ORIGINAL DATA OUTPUT - DELT1 IS THE WORST RESIDUAL CALLING SEQUENCE - FORTRAN CALL FOCUS(NDATA, DATA, NFOC, AVE, ORIG, DELT1) *DIFFERENCE BETWEEN ORIGINAL DATA AND AVERAGED DATA. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: BEFORE FIT2 WAS CALLED, AB (INDEPENDENT AXIS) AND ER (DEPENDENT AXIS) WERE STORED, THE COORDINATE PAIRS WERE ORDERED IN INCREASING VALUES OF AB, AND OBVIOUSLY BAD VALUES OF ER WERE REMOVED. FIT2 FOLLOWS THESE STEPS: 1. A CALL TO FOCUS AVERAGES ER TEN TIMES (IT=10). 2. ER VALUES THAT ARE 2.5 TIMES THE RESIDUAL (AVERAGE DIFFERENCE BETWEEN ORIGINAL AND FINAL POINTS) ARE REMOVED. 3. WITH THIS "BAD" DATA REMOVED, FOCUS IS CALLED AGAIN. 4. THE RESULTS ARE PLOTTED AND KEY FIT VALUES ARE PRINTED. FOCUS FOLLOWS THESE STEPS: 1. DATA TO BE AVERAGED ARE STORED IN ORIG TO DETERMINE RESIDUALS. 2. DATA POINTS ARE AVERAGED NFOC TIMES. 3. THE AVERAGE RESIDUAL IS CALCULATED. X11901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: EXOR RANDOM NUMBER GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: RANDOM **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: MTS BASIC ED BASIC **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE PROVIDES SINGLE-TERMINAL BASIC WITH A HIGH-QUALITY RANDOM NUMBER GENERATOR BY COMBINING FIBONACCI AND TWO DIFFERENT MULTIPLICATIVE RANDOM NUMBER GENERATORS. AN 8K OR 16K EDUCATIONAL BASIC SYSTEM (SINGLE-TERMINAL) IS REQUIRED. THE ROUTINE USES EAU INSTRUCTIONS. THE ROUTINE CALLS INTERNAL BASIC ROUTINE .PACK AT LOCATION 1020. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: BASIC CALL: NN CALL (1,X(K),Y1) WHERE NN IS THE STATEMENT NUMBER 1 IS THE SUBROUTINE IDENTIFICATION X(K) IS AN ARRAY ELEMENT; X MUST HAVE DIMENSION K+1 OR HIGHER. X MUST NOT BE COMMON. X(K) AND X(K+1) ARE THE SEED OF THE GENERATOR AND MUST BE INITIALIZED BY THE USER. NOTE: AN INITIAL VALUE OF ZERO DECREASES THE GENERATOR PERFORMANCE*). X(K) AND X(K+1) ARE UPDATED BY THE GENERATOR AND SHOULD NOT BE MANIPULATED BY THE USER EXCEPT WHEN RESTARTING THE GENERATOR (OF: 5.0). Y1 IS A SIMPLE VARIABLE. UPON RETURN, IT CONTAINS THE RANDOM NUMBER. MIN(Y1) = 2^(-17) MAX(Y1) = 1 - 2^(-17) Y1 - RESOLUTION = 2^(-16) *) X(1) = 0 WILL DISABLE THE FIBONACCI-GENERATOR X(2) = 0 WILL GIVE THE MULT-1 GENERATOR THE SEED 000001(8), AND THE MULT-2 GENERATOR THE SEED 000000(8). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERR IN CALL ARGM X THE SEED GIVEN IS NOT A PROPER ARRAY. ERR IN CALL ARGM Y THE RETURN VARIABLE IS NOT SIMPLE. ERROR ACTION: AFTER PRINTING ERROR MESSAGE, THE PARAMETER TYPE CHECK CONTINUES, AND A RETURN TO THE BASIC PROGRAM IS MADE WITH UNCHANGED VALUES OF THE PARAMETERS. **MISCELLANEOUS: 1) THE ELEMENT X(K) AND X(K+1) GENERALLY HAVE UNNORMALIZED CONTENTS, AND NORMALIZATION SHOULD BE AVOIDED. OPERATIONS WHICH DO NOT NORMALIZE ARE: MAT A = B LET Y2=Y1 NAMELY THOSE WHICH REPRESENT SIMPLE COPYING. 2) LOCATIONS 1020(6) AND 154(8) OF BASIC ARE REFERRED DIRECTLY. SEE SECTION 3.2. 3) THE EXECUTION TIME ON A 2100A WITH EAU FOR THE STATEMENT CALL (1,X(1),Y) IS 1.95 MSECS; THE STATEMENT LET Y = RND(1) EXECUTES IN 0.87 MSECS. X12001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: SMPLX **PROGRAM TITLE: SIMPLEX LINEAR PROGRAMMING FOR DOS-3 **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: LINEAR EQ. MATRIX **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-3 **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM SOLVES LINEAR PROGRAMMING PROBLEMS BY USING THE SIMPLEX OR DANTZIG METHOD. THE PROGRAM MINIMIZES AN OBJECTIVE FUNCTION SUBJECT UP TO 100 CONSTRAINTS WITH NO MORE THAN 1000 VARIABLES (REAL + ARTIFICIAL + SLACK); THE PROGRAM NEEDS AS DATA THE FIRST TABLEAU OF THE SIMPLEX METHOD, AND THEN ELABORATES THE FOLLOWING TABLEAUS OF THE METHOD GETTING TO THE OPTIMAL SOLUTION. THE PROGRAM CAN MAXIMIZE PROBLEMS IF THE OBJECTIVE FUNCTION OF THE MATHEMATICAL MODEL IS MULTIPLIED BY -1. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: 5 **PROGRAM DESCRIPTION: DATA FORMAT (LU#5) N,M REGISTER #1 N = NUMBER OF CONSTRAINTS M = NUMBER OF VARIABLES (C(I),I=1,M) REGISTER #2 C(I) = COEFFICIENTS OF THE OBJECTIVE FUNCTION (A(I),I=1,N) REGISTER #3 A(I) = COLUMN NO. 1 OF THE - MATRIX OF CONSTRAINTS COEFFICIENT (A(I),I=1,N) REGISTER #M+2 A(I) = COLUMN NO. M (B(I),I=1,N) REGISTER #M+3 B(I) = CONSTRAINTS LIMITS (IBASE(I),I=1,N) REGISTER #M+4 IBASE(I) = NUMBER OF THE VECTOR THAT IS IN ORIGINAL BASE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X12101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FAST FOURIER TRANSFORM WITH DATA STORAGE ON DISC **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 1 **KEYWORDS: FOURIER TRANSFORM **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM FINDS THE FORWARD FOURIER TRANSFORM OF A LARGE COMPLEX DATA ARRAY STORED ON DISC, USING THE COOLEY-TUKEY ALGORITHM. THE PROGRAM IS WRITTEN FOR A BLOCK SIZE OF 4096 BUT THIS LENGTH (AN INTEGER POWER OF 2) CAN EASILY BE CHANGED. THE TRANSFORM IS EXECUTED IN PLACE, SO THE ORIGINAL DATA ARE LOST. THE RESULT IS LEFT IN BIT REVERSE ORDER, BUT A SEPARATE PROGRAM FOR PRINTOUT IN THE RIGHT ORDER IS PROVIDED. THE TRANSFORM PROGRAM USES A SECOND ARRAY ON DISC FOR STORAGE OF SINE - AND COSINE VALUES NEEDED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: RESERVE SPACE ON DISK FOR THE DATA ARRAY IN THE FILE DIFFT : :ST,B,DIFFT,128 (SPACE FOR 4096 COMPLEX NUMBERS). RESERVE SPACE ON DISK FOR THE SINE-COSINE ARRAY IN THE FILE CEXPO : :ST,B,CEXPO,64 (SPACE FOR 2048 COMPLEX NUMBERS). RUN A PROGRAM TO STORE DATA ON DISK. COMPILE AND LOAD THE TRANSFORM PROGRAM FTD. RUN THE PROGRAM : PR, FTD. COMPILE AND LOAD THE PRINTOUT PROGRAM FTDO. RUN THE PROGRAM : PR, FTDO. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IN ORDER TO PROCESS LARGER DATA ARRAYS ONLY THE VARIABLES N AND N2, WHERE N = 2**N2, NEED TO BE CHANGED IN THE PROGRAM FTD. (N IS MINIMUM 128). FOR THE PRINTOUT PROGRAM FTDO THESE VARIABLES ARE NAMED N AND M. THE NUMBER OF LINES PRINTED IS SET BY NH. X12201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 3 DIMENSIONAL PLOT SUBROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 2 **KEYWORDS: GRAPHIC PLOTTER **LANGUAGES: FTN2 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ROUTINE PROJECTS A THREE-DIMENSIONAL OBJECT IN PERSPECTIVE ON A SIMPLE X-Y PLOTTING SYSTEM OR GRAPHIC DISPLAY TERMINAL. IT TRANSFORMS AN (X,Y,Z) COORDINATE IN THREE SPACE TO AN ORTHOGRAPHIC PROJECTION IN TWO SPACE, USING FOUR CALLS. THE FIRST CALL DEFINES THE ANGLES OF THE COORDINATE AXES X,Y,Z ALLOWING DISPLAY OF VARIOUS ROTATIONS OF AN OBJECT. THE SECOND AND THIRD CALLS SET MINIMUM AND MAXIMUM (X,Y,Z) VALUES, WHILE THE FOURTH CALL TRANSFORMS AN (X,Y,Z) COORDINATE IN THREE SPACE TO AN (IX,IY) COORDINATE REPRESENTATION IN TWO SPACE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: A. COMPILE PLOT 3 SUBROUTINE IN ACCORDANCE WITH OPERATING INSTRUCTIONS GIVEN IN HP FORTRAN PROGRAMMER'S REFERENCE MANUAL. B. LOAD CALLING PROGRAM AND PLOT 3 SUBROUTINE USING THE BASIC CONTROL SYSTEM. C. SET ANGLES FOR AXES, MINIMUM VALUES TO BE PLOTTED, AND MAXIMUM VALUES TO BE PLOTTED USING THE APPROPRIATE CALLS. (SEE ENTRY POINTS FOR DESCRIPTION OF CALL STATEMENTS.) D. THE SUBROUTINE MAY NOW BE CALLED TO PERFORM COORDINATE TRANSFORMA- TIONS. ENTRY POINT(S) A. CALL (1,X,Y,Z,IX,IY) THIS CALL SETS THE ANGLES FOR THE PLOT PROCESSOR. X IS THE NUMBER OF DEGREES THE X-AXIS IS TO BE ROTATED FROM THE HORIZONTAL. LIKE- WISE, Y AND Z SPECIFY THE ROTATIONS OF THE Y AND Z-AXIS RESPECTIVELY FROM THE HORIZONTAL. IX AND IY ARE MEANINGLESS IN THIS CALL. B. CALL (2,X,Y,Z,IX,IY) X, Y AND Z SPECIFY THE MINIMUM (X,Y,Z) COORDINATE TO BE DISPLAYED. IX AND IY ARE MEANINGLESS. C. CALL(3,X,Y,Z,IX,IY) X, Y AND Z SPECIFY THE MAXIMUM (X,Y,Z) COORDINATE TO BE DISPLAYED. IX AND IY ARE MEANINGLESS. D. CALL (4,X,Y,Z,IX,IY) X, Y AND Z DEFINE THE COORDINATE OF A POINT IN THREE-DIMENSIONAL SPACE. UPON RETURN IX AND IY ARE THE SCALED, TWO-DIMENSIONAL (X,Y) COORDINATE REPRESENTING THE DESIRED THREE-DIMENSIONAL PROJECTION. IX AND IY GENERALLY RETURN AS INTEGERS IN THE 0 TO 255 RANGE. THE ACTUAL VALUES OF IX AND IY WILL VARY, HOWEVER, WITH DIFFERENT ANGLE SETTINGS. SEE SPECIAL CONSIDERATIONS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SPECIAL CONSIDERATIONS PLOT 3 IS WRITTEN TO NORMALIZE ALL (X,Y) COORDINATES TO RETURN AS INTEGERS IN THE RANGE OF 0 TO 255. HOWEVER, THE ACTUAL COORDINATE VALUES RETURNED DOES DEPEND ON WHAT ANGLES HAVE BEEN INPUT AND WHAT MAXIMUM AND MINIMUMS HAVE BEEN ENTERED. OBVIOUSLY, IF AN (X,Y,Z) COORDINATE GIVEN EXCEEDS THE MAXIMUM VALUES OR IS SMALLER THAN THE MINIMUM VALUES, THEN THE (IX,IY) VALUE RETURNED WILL MOST LIKELY BE OUT OF THE 0 TO 255 RANGE. SINCE THERE IS NO RULE OR ALGORITHM WHICH WILL READILY GIVE AN ESTIMATE OF THE RANGE TO BE EXPECTED WITH VARYING THE ANGLES OF THE AXES, THE MOST PRACTICAL PROCEDURE IS JUST TRIAL AND ERROR. X12301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: TEKTRONIX 4010 DRIVER AND GRAPH PACKAGE **REVISION? NO **PACKAGE: 99 **CATEGORY: 2 **SUBCATEGORY: 2 **KEYWORDS: TEKTRONIX GRAPHIC LIBRARY DRIVER **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE CONSISTS OF THREE PARTS: 1. DVR00, A DOS-M SYSTEM DEVICE DRIVER FOR THE TEKTRONIX 4010 KEYBOARD DISPLAY. IN ADDITION TO ALL THE ASCII INPUT/OUTPUT FACILITIES OF THE DOS-M SYSTEM TELETYPE DRIVER, THIS DRIVER FULLY EXPLOITS THE GRAPHICS AND CURSOR-POSITION INPUT FACILITIES OF THE 4010 BY THE USE OF BINARY READ/WRITE EXEC CALLS. DATA PAIRS SPECIFYING THE X AND Y COORDINATES BETWEEN WHICH LINES ARE TO BE DRAWN CAN BE PACKED IN SINGLE WORDS OR UNPACKED IN 2 WORDS, EITHER LEFT OR RIGHT JUSTIFIED. THE X COORDINATE CAN BE SUPPLIED, OR IMPLIED VALUES STARTING FROM ZERO AND INCREMENTED BY ONE CAN BE USED. CONTROL CALLS ARE USED TO ERASE THE SCREEN; RESET THE ASCII SCREEN POSITION TO THE TOP LEFT; OUTPUT A SERIES OF LINE FEEDS, LINE BACKUPS, SPACES FORWARD AND BACKWARDS; UNDERLINE; AND ACTIVATE THE HARD COPY UNIT AND ALTER- NATIVE CHARACTER SETS. 2. TWO FORTRAN PROGRAMS AND SUBROUTINES TO TEST THE FACILITIES OF DVR00. 3. A SET OF FORTRAN SUBROUTINES, BASED ON CALCOMP ROUTINES, EXPLOITING DVR00. THESE ROUTINES ALLOW THE USER TO SORT AND SCALE DATA, PRODUCE GRAPHS AND DRAW HISTOGRAMS ON THE 4010. THE DRIVER AND SUBROUTINES WILL OPERATE IN A MINIMUM DOS-M ENVIRONMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: EXTENDED DOCUMENTATION **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEE EXTENDED DOCUMENTATION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X12401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: COPPER - CONSTANTAN THERMOCOUPLE VOLTAGE TO DEGREES CELSIUS **REVISION? NO **PACKAGE: 99 **CATEGORY: 3 **SUBCATEGORY: 1 **KEYWORDS: CONVERSION MEASUREMENT **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SUBROUTINE ACCEPTS A VALUE OF THE VOLTAGE READ FROM A COPPER- CONSTANTAN THERMOCOUPLE IN MICROVOLTS AND RETURNS A TEMPERATURE VALUE IN DEGREES CENTIGRADE. THIS VALUE IS CORRECT TO .1 OF A CELSIUS DEGREE. THE METHOD FOR DETERMINING THE TEMPERATURE IS INTERPOLATION OF STANDARD THERMOCOUPLE TABLES AT 10 DEGREE INTERVALS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE SUBROUTINE ACCEPTS A VALUE OF THE VOLTAGE READ FROM A COPPER- CONSTANTAN THERMOCOUPLE IN MICROVOLTS. IT RETURNS TO THE CALLING PROGRAM A VALUE FOR THE TEMPERATURE IN CENTIGRADE DEGREES. THIS VALUE IS CORRECT TO .1 OF A CELSIUS DEGREE. THE METHOD FOR DETERMINING THE TEMPERATURE IS INTERPOLATION OF STANDARD THERMOCOUPLE TABLES AT 10 DEGREE INTERVALS. THE SUBROUTINE MAY BE CONVERTED TO USE WITH OTHER TYPES OF THERMO- COUPLES BY CHANGING VALUES OF NEMF AND IEMF. IT IS IMPORTANT TO NOTE THAT THE DIMENSION OF TEMP AND ITC ARE 1 IN THE SUBROUTINE. THEIR CORRESPONDING VARIABLES MAY BE DIMENSIONED TO ANY SIZE IN THE CALLING PROGRAM WITHOUT CHANGING THE DIMENSION STATEMENT IN THE SUBROUTINE. CALL CONVT (ITS,N,TEMP) WHERE ITC - VALUE OF THERMOCOUPLE READING IN MICROVOLTS N - NUMBER OF POINTS TO BE CONVERTED TEMP - CENTIGRADE TEMPERATURE RETURNED TO CALLING PROGRAM NOTE THAT THE TEMPERATURE RANGE IS -199 TO +399 DEGREES CELSIUS. VALUES OUTSIDE THIS RANGE SHOULD NOT BE ENTERED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE USER MAY WISH TO MODIFY THE SUBROUTINE TO NARROW THE TEMPERATURE RANGE TO ONE IN WHICH HE IS MOST INTERESTED. THIS WILL RESULT IN SOME SAVING OF MEMORY. SYMBOLIC EDIT INSTRUCTIONS FOR THREE EXAMPLES ARE SHOWN BELOW. 1) RANGE - 199 TO 0 /CD,14,40,48 /D,36,76 /D,78 /D,90,99 2) RANGE 0 TO 399 /CD,14,32,30 /D,15,35 /D,78,89 3) RANGE -99 TO 99 /R,14 DIMENSION ITS(1),TEMP(1),IEMF(11),NEMF(11) /D,36,35 /D,47,76 /CR,79,17,17 10 /CR,90,17,18 10 X12501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: DBIN **PROGRAM TITLE: SCIENTIFIC PROGRAMMER BCD BINARY CONVERSION **REVISION? NO **PACKAGE: 99 **CATEGORY: 3 **SUBCATEGORY: 1 **KEYWORDS: BCD CONVERSION **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS BCD BINARY CONVERSION SUBROUTINE CONVERTS A FOUR DIGIT BCD NUMBER TO BINARY USING ONLY TWO MULTIPLES. THE ROUTINE RETURNS ANSWER IN THE SAME ARGUMENT. EACH DIGIT IS CONSIDERED TO BE FOUR BITS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALL DBIN(NUMBR) NUMBR - A FOUR DIGIT BCD INTEGER NUMBER - CONVERTED NUMBER RETURNED HERE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: TO TEST BCD NUMBERS GREATER THAN 7999, YOU WILL HAVE TO MANUALLY STORE NUMBER IN A-REGISTER BEFORE ROUTINE EXECUTES. THE REASON FOR THIS IS THAT ANY NUMBER GREATER THAN 32767(10) IN FORTRAN IS CONSIDERED NEGATIVE. X12601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: BCS ASYNCHRONOUS DATA SET INTERFACE DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 4 **SUBCATEGORY: 1 **KEYWORDS: DRIVER ASYNCHRONOUS DATA COMM **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DRIVER ESTABLISHES DATA COMMUNICATIONS BETWEEN HP2100 SERIES COMPUTERS AND THE TC-380 OLIVETTI BUFFERED TERMINAL. IT ALLOWS THE HP COMPUTER TO INPUT OR OUTPUT CONTROL SIGNALS WITH THE FOLLOWING FEATURES; HALF-DUPLEX TRANSMISSION, 1200 BITS/SEC., EVEN PARITY, 8-BIT CHARACTERS, 1 START BIT, AND 1 STOP BIT. THE DRIVER ALSO INITIATES, CONTINUES, AND COMPLETES ALL DATA TRANSMISSION OR RECEPTION COMMANDS VIA AN HP12587A INTERFACE BOARD. ON READ REQUESTS, THE DRIVER RECEIVES CHARACTER PER CHARACTER ONE OLIVETTI FORMATTED BUFFER WITH A MAXIMUM OF 230 ISO CODE CHARACTERS. IT TRANSLATES THESE CHARACTERS INTO AN ASCII PACKED BUFFER OR AN XS-3 BUFFER PROPERLY FROMATTED FOR COMMUNICATION WITH A UNIVAC 1108 COMPUTER. ON WRITE REQUESTS, THE DRIVER TRANSLATES INTO ISO CODE AND SENDS ONE ASCII PACKED BUFFER OR ONE FORMATTED XS-3 BUFFER CHARACTER TO THE OLIVETTI TERMINAL. THE COMMUNICATION PROCEDURES ARE SELECTING AND POLLING. ONE USEFUL APPLICATION OF THIS DRIVER IS IN THE ENVIRONMENT WHERE AN HP MINI- COMPUTER HANDLES I/O FOR A UNIVAC 1108 COMPUTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE (CONTINUED) **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DRIVER MUST BE CONFIGURED INTO SYSTEM AT PCS TIME. THE COMMUNICATION PROCEDURES ARE: SELECTING: COMPUTER: EOT+ADR EOT+ADR STX+ADR+TEXT+ETB/ETX+LRC DEVICE: EOT ACK NACK COMPUTER: STX+ADR+TEXT+ETB/ETX+LRC DEVICE: ACK POLLING: COMPUTER: EOT+ADR EOT+ADR NACK DEVICE: EOT STX+ADR+TEXT+ETB/ETX+LRC COMPUTER: ACK DEVICE: STX+ADR+TEXT+ETB/ETX+LRC WHERE: EOT, STX, EB, ETX, ACK, NACK ARE CONVERSATION CHARACTERS, TEXT IS THE BUFFER TO BE TRANSMITTED OR RECEIVED, LRC IS THE CALCULATED CHARACTER FOR PARITY CHECK ADR IS THE ADDRESS OF THE PERIPHERAL DEVICE PERFORMED BY THE DRIVER FOLLOWING THE FUNCTION WORD OF THE IOC REQUEST. THE .IOC. CALL IS: - JSB .IOC. - FUNCTION CODE - REJECT INSTRUCTION - DEF BUFFER ADDRESS - NB OF CHARACTERS IF < 0 - NB OF WORDS IF > 0 THE FUNCTION WORD MAY BE: B15-12=1 READ B11=0 XS3/ASCII UNPACKED B10=0 ETB B9-6=DEV.ADD. B5-0=S.C. = 1 ASCII PACKED =1 ETX =2 WRITE =0 CLEAR =4 STATUS THE DRIVER ACCEPTS AND PROCESSES A READ OR WRITE REQUEST IN EITHER PACKED ASCII OR XS3 MODES (Z VERSION) AND PACKED ASCII OR UNPACKED ASCII MODES (N VERSION). FOR A READ REQUEST, THE DRIVER RECEIVES AND TRANSLATES CHARACTER PER CHARACTER ONE OLIVETTI FORMATTED BUFFER OF MAXIMUM 230 ISO CODED CHARACTERS, INTO ASCII PACKED BUFFER OR UNIVAC BUFFER WITH A PROPER FORMAT FOR COMMUNICATION WITH A 1108 UNIVAC COMPUTER (IN THE Z VERSION). FOR A WRITE REQUEST, THE DRIVER TRANSLATES INTO ISO MODE AND SENDS CHARACTER PER CHARACTER ONE ASCII PACKED BUFFER OR ONE FORMATTED XS3 BUFFER TO THE PERIPHERAL DEVICE (Z VERSION). AFTER THE REINITIALIZATION ATTEMPTS THE DRIVER RETURNS WITH AN ERROR INDICATION IN CASE OF: POLLING SEQUENCE: -MORE OF 30 PARASITES, OR 600 EOT IN BEGINNNG OF PROCEDURE -EXCEEDED TIME-OUT IN DATASET SWITCHING -MORE OF 4 NACK FOR A LINE RECEPTION SELECTING SEQUENCE: - EXCEEDED TIME-OUT IN DATASET SWITCHING - MORE OF 500 NACK IN BEGINNING OF PROCEDURE - MORE OF 5 NACK AFTER RETRANSMISSION OF A LINE THE DRIVER WILL REJECT A REQUEST IF: - FUNCTION CODE IS ILLEGAL - DATASET IS NOT READY - DEVICE IS NOT READY **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X12701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 2100 REMOTE JOB ENTRY TO IBM HOST CPU **REVISION? NO **PACKAGE: 99 **CATEGORY: 4 **SUBCATEGORY: 2 **KEYWORDS: DATA COMM IBM BATCH **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: (HPRJE) IS A PROGRAM DESIGNED TO ALLOW MEDIUM-TO-HIGH-SPEED REMOTE JOB ENTRY FUNCTIONS TO BE CARRIED OUT BETWEEN AN IBM (HOST) COMPUTER AND AN HP2100 SERIES COMPUTER. THE PROGRAM SIMULATES THE FUNCTION OF AN IBM 2780 TERMINAL WHICH IS ONE OF IBM'S POPULAR MEDIUM-SPEED RJE TERMINALS. IN PARTICULAR, THE FUNCTIONS AVAILABLE WITH (HPRJE) ARE AS FOLLOWS: 1. JOB ENTRY. A FILE OF DATA, AS A COBOL SOURCE COMPILE, IS TRANS- MITTED TO THE IBM (HOST) CPU FOR PROCESSING. 2. JOB RETRIEVAL. OUTPUT FILES FROM ENTERED JOBS ARE RECEIVED FROM THE IBM (HOST) CPU AND SPOOLED TO TAPE IN LINE PRINTER FORMAT. 3. JOB STATUS & CONTROL. STATISTICS ON ENTERED JOBS, AS PROCESSING QUEUES, AND JOB CONTROL FUNCTIONS, AS JOB CANCELLA- TION, ARE AVAILABLE UPON REQUEST FROM THE HP2100 SYSTEM'S CONSOLE. 4. CARD TO TAPE. (HPRJE) WILL READ CARDS AND WRITE TO MAG TAPE, THUS GENERATING AN INPUT FILE FOR TRANSMISSION TO THE (HOST) CPU. 5. FILE PRINT (HPRJE) WILL PRINT JOB FILES RECEIVED FROM THE (HOST) CPU. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: THE FOLLOWING IS A STEP-BY-STEP DESCRIPTION OF PROCEDURES REQUIRED TO BRING HPRJE INTO OPERATION: 1. OBTAIN HP HARDWARE REQUIRED AS SPECIFIED (AND AS DESIRED) IN SECTION 3.5 RUN HARDWARE DIAGNOSTIC ROUTINES ON RECEIVED HARDWARE. 2. OBTAIN A MODEM COMPATIBLE WITH "HOST" CPU'S MODEM(S). (BELL 201'S ARE USUALLY STANDARD FOR DIAL-UP TRANSMISSIONS AT 2000 BPS). IF THE MODEM IS NON-BELL, OBTAIN A DATA ACCESS ARRANGEMENT "DAA" FOR IT. (WITH AUTO-ANSWER FEATURE! D.50'C' EXPECTS IT!) 3. PREPARE A CONTROL SYSTEM USING PCS FOR EITHER A BCS BASIC CONTROL SYSTEM) OR MTS (MAG. TAPE OPERATING SYSTEM). INCLUDE DRIVERS FOR ALL DEVICES DESCRIBED IN SECTION 3.5. INCLUDING TELECOMMUNICATION DRIVER D.50'C' (CONTRIBUTED PROGRAM 22328) AND ITS REQUIRED MODIFIED TIME BASE GENERATOR DRIVER D.43. (NOTE: D.50'C' MUST BE LOADED AT RUN TIME BECAUSE OF ITS SIZE.) 4. COMPILE HPRJE AND REQUIRED SUBROUTINES CONVT, B2ASC, & AS2BI PRO- DUCING RELOCATABLE PAPER TAPE OUTPUT. LINK THESE PROGRAMS AND D.50'C' TOGETHER USING THE BCS LOADER GENERATED IN STEP #3. THE ABSOLUTE OUTPUT TAPE MAY BE LOADED WITH THE BBL AND IS THE FINAL PRODUCT, I.E. HPRJE. 5. INFORM YOUR "HOST" COMPUTER'S SYSTEM ANALYST OF YOUR FEATURES, AS CODE (EBCDIC), TRAILING BLANK SUPPRESSION, MULTIPLE RECORDS, ETC. SO HE MAY DO A SYSGEN ON HIS SYSTEM TO INCLUDE YOU AS A REMOTE. NOTE ANY "SIGNON" REQUIREMENTS HE MAY ASSIGN YOU. 6. YOU'RE ON THE AIR!! **RUN INSTRUCTIONS: 1. LOAD HPRJE EITHER FROM MAGNETIC TAPE BY TYPING ":PROG,HPRJE" TO THE "NEXT?" COMMAND OF MTS OR FROM PAPER TAPE USING THE BBL. 2. HPRJE TYPES A HEADER MESSAGE FOLLOWED BY THE FUNCTION LIST: 1.= PRINT FUNCTION LIST 2 = TRANSMIT JOB FILE 3 = RECEIVE JOB OUTPUT 4 = STATUS REQUEST 5 = ADVANCE MAG. TAPE 6 = CARD TO MAG. TAPE 7 = PRINT FILE 8 = RETURN TO MTS (SETTING OF SWITCH ZERO IN THE SWITCH REGISTER ELIMINATES THE WRITING OF THE FUNCTION LIST TO THE CONSOLE WHEN THE PROGRAM IS INITIALLY STARTED.) ENTER DESIRED FUNCTION: 3. TYPE A ONE-DIGIT RESPONSE CORRESPONDING TO THE FUNCTION DESIRED FOR EXECUTION. HPRJE WILL CARRY OUT THAT FUNCTION AND UPON COMPLETION, ALLOW ANOTHER FUNCTION TO BE SELECTED. 4. JOB SUBMITTAL TO PREPARE AND SUBMIT A JOB(S) FOR PROCESSING, CARRY OUT THE FOLLOWING STEPS: A. RUN CARD TO TAPE ON ALL JOBS FOR SUBMITTAL (TO GENERATE AN INPUT FILE FOR TRANSMISSION). USE FUNCTION #6 OF HPRJE OR ANY OTHER STANDARD CARD TO TAPE ROUTINE. CREATE ONE FILE ONLY. MULTIPLE JOBS MAY BE APPENDED TOGETHER ON INPUT. MOUNT TAPE. B. SELECT THE TRANSMIT JOB FILE FUNCTION (#2) OR RESPOND "/S" TO "COMMAND?" IF EXECUTING THE STATISTICS FUNCTION (#4). C. HPRJE WILL ASK "INPUT CODE?". RESPOND "AS" FOR ASCII CODE, IF HPRJE'S OWN CARD TO TAPE ROUTINE WAS USED TO GENERATE THE INPUT FILE. RESPOND "EB" FOR EBCDIC CODE IF SOME OTHER CARD TO TAPE ROUTINE WAS USED THAT GENERATED AN EBCDIC DATA FILE. D. HPRJE WILL TYPE "DIAL REMOTE". DIAL THE "HOST" CPU, WAIT FOR THE ECHO SUPRESSOR TONE TO DIE (HIGH PITCHED TONE) AND PRESS DATA. THE INPUT FILE WILL THEN BE TRANSMITTED TO THE "HOST" CPU FOR PROCESSING. E. UPON COMPLETION, HPRJE WILL DISPLAY JOB ID STATISTICS FOLLOWED BY A RECORD COUNT CORRESPONDING TO THE NUMBER OF CARD IMAGES READ FROM TAPE AND THEN WAIT FOR ANY OUTPUT THE HOST MAY HAVE WITHOUT REQUIRING A NEW PHONE CONNECTION. F. CONTROL IS THEN RETURNED TO ALLOW A NEW FUNCTION TO BE SELECTED. 5. JOB RETRIEVAL TO RECEIVE THE OUTPUT FROM SUBMITTED JOBS, CARRY OUT THE FOLLOWING STEPS: A. MOUNT AND ADVANCE TO, IF NECESSARY, THE CORRECT MAG. TAPE POSITION. B. SELECT THE "RECEIVE JOB OUTPUT" FUNCTION (#3) OR RESPOND "/R" TO "COMMAND?" IF EXECUTING THE STATISTICS FUNCTION (#4). (NOTE: IF YOU ARE NOT SURE IF OUTPUT IS READY, IT IS BEST TO EXECUTE THE APPROPRIATE STAT COMMAND TO DETERMINE SUCH INFORMATION, THUS PRE- VENTING A PHONE CONNECTION IN WHICH THERE IS NO DATA TO BE SENT BY EITHER CPU.) C. HPRJE WILL ASK "OUTPUT CODE?". RESPOND "AS" FOR ASCII IF HPRJE'S OWN PRINT ROUTINE IS TO BE USED. RESPOND "EB" FOR EBCDIC IF SOME OTHER PRINT ROUTINE IS TO BE USED THAT EXPECTS EBCDIC SPOOLED DATA. D. HPRJE WILL TYPE "DIAL REMOTE". DIAL THE "HOST" CPU AS IN "4.D." ABOVE. THE DATA FILE WILL THEN BE RECEIVED AND SPOOLED TO MAG. TAPE. E. UPON COMPLETION, HPRJE WILL PRINT A COUNT OF RECORDS WRITTEN TO MAG. TAPE, SHUT DOWN THE PHONE LINE, AND ALLOW A NEW FUNCTION TO BE SELECTED. F. MULTIPLE JOBS WILL AUTOMATICALLY BE BROUGHT BACK. A RECORD COUNT IS DISPLAYED ON THE CONSOLE FOR EACH JOB BROUGHT BACK AND ONE EOF IS WRITTEN TO MAG TAPE FOR EACH JOB. G. SETTING OF SWITCH 15 IN THE SWITCH REGISTER WILL CAUSE THE 2100 TO STOP WAITING FOR OUTPUT JOBS FROM THE HOST CPU AND SIGN-OFF WITH HIM. ONE ADDITIONAL EOF IS WRITTEN TO TAPE AT THIS TIME. 6. JOB STATISTICS TO OBTAIN JOB STATISTICS INITIATE FUNCTION #4. A. HPRJE WILL TYPE "COMMAND?". SELECT A VALID "HOST" CPU'S STAT COMMAND (SEE ATTACHED SHEET FOR VALID HASP COMMANDS) AND TYPE IT ON THE CONSOLE FOLLOWED BY CR,LF. B. IF A PRIOR CONNECTION HAS NOT BEEN ESTABLISHED, HPRJE WILL DIRECT YOU TO "DIAL REMOTE". ESTABLISH A DATA LINK AS DESCRIBED IN "4.D.". C. AFTER APPROXIMATELY A 3-SECOND DELAY, YOUR REQUESTED STATISTICS WILL BE TYPED ON THE CONSOLE AND THE "COMMAND?" QUESTION RE- INITIATED (GO TO STEP A.) D. TO TERMINATE THE JOB STATISTICS FUNCTION, TYPE: 1. "/E" - THIS DISCONNECTS THE PHONE LINE AND ALLOWS A NEW FUNCTION TO BE INITIATED. 2. "/S" - THIS INITIATES FUNCTION #2. 3. "/R" - THIS INITIATES FUNCTION #3. E. SOME USEFUL "COMMAND" RESPONSES WHEN COMMUNICATING WITH A "HASP" SYSTEM ARE: COMMAND DESCRIPTION ------- ----------- /E EXIT THE STAT ROUTINE /S EXIT THE STAT ROUTINE AND BEGIN SENDING INPUT FILE /R EXIT THE STAT ROUTINE, BEGIN RECEPTION OF OUTPUT FROM "HOST" CPU. $DA DISPLAY ACTIVE JOBS $DN DISPLAY INFORMATION ON QUEUED JOBS $DQ DISPLAY NUMBER OF QUEUED JOBS $DF DISPLAY NUMBER OF QUEUED JOBS AWAITING FORMS. $CJXXX CANCEL JOB "XXX". ("XXX" IS JOB NUMBER) $D'JOB NAME' DISPLAY INFORMATION ON SPECIFIC JOB (NOTE NAME MUST BE 8 CHARACTERS LONG, I.E., PAD WITH BLANKS) $PJXXX STOP SPECIFIC JOB "XXX" AFTER CURRENT ACTIVITY 7. CARD TO TAPE A. PLACE YOUR JOB DECK(S) IN THE CARD READER, MOUNT AND POSITION, IF NECESSARY, A MAG. TAPE (WITH A WRITE RING) AND ENTER 6 ON THE CONSOLE. B. YOUR SOURCE DECK WILL BE READ AND WRITTEN TO MAG. TAPE IN ASCII CODE, ONE CARD PER MAG. TAPE RECORD. C. A BLANK CARD WILL TERMINATE THE FUNCTION. TWO TAPE MARKS ARE WRITTEN ON MAG. TAPE UPON TERMINATION. 8. PRINT FILE A. MOUNT THE MAG. TAPE CONTAINING RECEIVED JOB OUTPUT FILES. POSITION TO THE DESIRED FILE. B. PREPARE THE LINE PRINTER AND ENTER 7 ON THE CONSOLE. C. ONE FILE OF DATA WILL BE PRINTED ON THE LINE PRINTER. 9. ADVANCE MAG TAPE A. ENTER 5 ON THE CONSOLE. HPRJE WILL RESPOND "HOW MANY 'FILES, RECORDS'?". ENTER THE DESIRED AMOUNT YOU WISH TO ADVANCE THE MAG. TAPE. THE FORMAT IS FREE FIELD. VALID EXAMPLES ARE: 1. 3,125 = 3 FILES, THEN 125 RECORDS 2. ,27 = JUST 27 RECORDS 3. 1 = 1 FILE ONLY B. THE MAG. TAPE WILL BE ADVANCED THE GIVEN NUMBER OF FILES AND/ OR RECORDS. 10. RETURN TO MTS ENTE 8 ON THE CONSOLE. THE SUBROUTINE ".STOP" WILL BE CALLED AND CONTROL RETURNED TO THE MAGNETIC TAPE OPERATING SYSTEM. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DESCRIPTION OF INPUT AND OUTPUT HPRJE'S, OR ANY OTHER STANDARD CARD TO MAGNETIC TAPE ROUTINE MUST BE RUN TO GENERATE AN INPUT FILE FOR TRANSMISSION. HPRJE WILL HANDLE EITHER ASCII OR EBCDIC DATA FILES. BLOCKING FACTOR MUST BE ONE CARD IMAGE PER BLOCK. HPRJE GENERATES ONE OUTPUT FILE ON MAGNETIC TAPE UPON RECEPTION FROM THE "HOST" CPU. RECORDS CAN BE SPOOLED IN EITHER ASCII OR EBCDIC CODE AND ARE CONFIGURED FOR LINE PRINTING, I.E., 1ST CHARACTER DEFINES LINE PRINTER CARRIAGE CONTROL.* RECORDS ARE SPOOLED ONE RECORD PER PRINT LIEN. * EBCDIC CODE GENERATES EBCDIC MACHINE CODE CARRIAGE CONTROL CHARS. ASCII CODE GENERATES STANDARD HP 2778 LINE PRINTER CARRIAGE CONTROL CHARACTERS. ON-LINE FEATURES OF HPRJE 1. DATA COMPRESSION COMPILATION OF HPRJE WITH "Z" IN THE "ASMB" STATEMENT CAUSES TRAIL- ING BLANKS TO BE REMOVED FROM CARD IMAGES AND REPLACED BY AN "EM" - END OF MEDIA CHARACTER. COMPILATION WITH "N" DOES NOT CAUSE THIS TO HAPPEN. 2. MULTIPLE RECORDS HPRJE FILLS A 400 CHARACTER BUFFER WITH AS MANY CARD IMAGES AS POSSIBLE BEFORE TRANSMITTING THE BLOCK. ("IUS" - INNER-UNIT SEPARATOR CHARACTERS AND 2 BCC CHARACTERS ARE APPENDED ON TO EACH CARD IMAGE). THIS FEATURE ELIMINATES LINE TURN-AROUNDS AND HELPS INCREASE THRU-PUT. THE NET EFFECT OF FEATURE #1 & #2 (&D.50 ACTION) IS A BLOCK OF DATA IN THE FOLLOWING FORMAT. (SYN) (SYN) (SYN) (STX) (BLOCK #1) (EM) (IUS) (BCC) (BCC) (BLOCK #2) (EM) (IUS) (BCC) (BCC)....(BLOCK N) (ETX) (BCC) (BCC) 3. RECORD UNBLOCKING OF OUTPUT HPRJE ACCEPTS UP TO 400 CHAR. BLOCKS FROM THE "HOST" CPU CONTAIN- ING PRINT LINES. PRINT LINES ARE DELINEATED AND UNBLOCKED IN THE FOLLOWING FASHION: A. "ESC" - DATA LINK ESCAPE CHARACTERS ARE SCANNED. WHEN FOUND, THE FOLLOWING CHARACTER IS TREATED AS A PRINTER CARRIAGE CONTROL CHARACTER. B. THE CARRIAGE CONTROL CHARACTER IS CONVERTED TO ITS APPROPRIATE HP OR IBM COMPATIBLE CONTROL CHARACTER. IT IS APPENDED TO THE FOLLOWING PRINT LINE CHARACTERS AND THE ENTIRE PRINT LINE SET IS WRITTEN TO MAGNETIC TAPE. CONVERSION OF CARRIAGE CONTROL CHARAC- TERS IS AS FOLLOWS: RECEIVED EBCDIC ASCII PRINTER CHARACTER* SPOOL** SPOOL** ACTION ---------- ------- ------- ------- / 11 40 SINGLE SPACE S 21 60 DOUBLE SPACE T 31 56 TRIPLE SPACE A 211 61 SKIP TO CHANNEL 1 B 221 62 " " " 2 C 231 63 " " " 3 D 241 64 " " " 4 E 251 65 " " " 5 F 261 66 " " " 6 G 271 67 " " " 7 H 301 70 " " " 8 (IBM MACHINE (HP2778A) CODE) * - EBCDIC ** - OCTAL (BASE 8) 3. C. "IUS" - INTER UNIT SEPARATOR AND THE NEXT 2 SUCCEEDING 'BCC' CHARACTERS ARE STRIPPED FROM THE INPUT WITH NO OPERATION. 4. CODE INTERCHANGE HPRJE WILL HANDLE EITHER ASCII OR EBCDIC CODE ON BOTH INPUT AND OUTPUT. EBCDIC CODE IS ALWAYS USED AS THE TRANSMISSION CODE. THEREFORE, IF ASCII CARD IMAGES ARE READ, THEY ARE CONVERTED TO EBCDIC BEFORE TRANSMISSION. SIMILARLY, IF ASCII PRINT LINES ARE REQUESTED, RECEIVED EBCDIC PRINT LINES ARE CONVERTED TO ASCII BE- FORE SPOOLING TO TAPE. 5. I/O OVERLAP HPRJE EMPLOYS DOUBLE BUFFERING TECHNIQUES ON ALL OPERATIONS (EXCEPT THE OFF-LINE CARD TO TAPE FUNCTION). THUS DATA TRANSMISSIONS ARE DONE IN PARALLEL WITH THE ABOVE MENTIONED FEATURES. THIS OPTIMIZES PHONE LINE THRU-PUT. 6. 'HOST' CPU STATUS HPRJE ALLOWS JOB STATISTICS AND SYSTEM QUEUES TO BE RECEIVED FROM THE 'HOST' CPU AND DISPLAYED ON THE HP 2100'S SYSTEM CONSOLE. THIS AS- SUMES, OF COURSE, THAT THE 'HOST' CPU HAS JOB STAT FEATURES. AN OPERATOR MAY ENTER AS MANY STAT REQUESTS AS DESIRED, WITH A CORRES- PONDING RESPONSE FOR EACH, AND THEN FURTHER INITIATE TRANSMISSION OR RECEPTION OF DATA FILES ALL WHILE 'ON-LINE' TO THE 'HOST' CPU. THIS MAY PROVE QUITE HELPFUL IN DETERMINING WHEN OUTPUT IS READY FOR RE- CEPTION AND THUS ELIMINATE 'TYING-UP' THE 2100 SYSTEM WAITING FOR OUTPUT WHEN LARGE PROCESSING QUEUES DEVELOP AT THE 'HOST' LOCATION. UPON COMPLETION OF JOB ENTRY, HPRJE WILL WAIT FOR A JOB ID MESSAGE FROM THE 'HOST' CPU WITHOUT REQUIRING A NEW PHONE CONNECTION. UPON RECEPTION, THIS MESSAGE IS DISPLAYED ON THE 2100'S CONSOLE. THE MESSAGE SHOULD CONTAIN INFORMATION AS ASSIGNED JOB NUMBER, PRIORITY, ETC. (NOTE: THIS FEATURE SHOULD BE COMPILED OUT OF HPRJE IF NOT EM- PLOYED BY THE 'HOST' SYSTEM. OTHERWISE, IT WILL CAUSE AN ERROR CONDITION AT THE 2100 END UPON JOB INPUT COMPLETION.) 7. HPEJW "SIGNS ON" AND "OFF" WITH THE HOST CPU AUTOMATICALLY. (REMOTE NUMBER IN THE CONTRIBUTED SOURCE IS "REMOTE8") OFF-LINE FEATURES 1. CARD TO TAPE HPRJE WILL EXECUTE CARD TO TAPE ON JOB DECKS TO GENERATE A CARD FILE ON MAG. TAPE FOR INPUT TO THE ON-LINE DATA TRANSMISSION FUNCTION. AN ASCII FILE WITH BLOCKING FACTOR = IS GENERATED. A BLANK CARD IS TREATED AS THE END OF INPUT INDICATOR. 2. PRINT ROUTINE HPRJE WILL PRINT ONE FILE OF DATA FROM MAG. TAPE AS THE ON-LINE RECEIVE OUTPUT FUNCTION GENERATES. THE DATA ON MAG. TAPE IS EXPECTED TO BE IN ASCII CODE, ONE PRINT LINE PER BLOCK, AND THE 1ST CHARACTER OF EACH LINE DEFINING PRINTER CARRIAGE CONTROL.(NOTE: THE CARD TO TAPE FUNCTION DOES NOT GENERATE CARRIAGE CONTROL CHARS.. THEREFORE, PRINTING OF IT WITH THIS ROUTINE WILL GENERATE A LISTING WITH THE 1ST CHAR. MISSING AND RANDOM PAGE SPACING DEPENDING ON THE ACTUAL 1ST CHARCTER FOUND ON THE CARD IMAGES.) 3. MAG. TAPE POSITIONING HPRJE ALLOWS ADVANCING OF A MAG. TAPE TO ANY FILE OR RECORD POSITION. THIS IS HELPFUL WHEN THE SAME MAG. TAPE IS TO BE USED FOR INPUT AND OUTPUT FEATURES. FILE 1 COULD CONTAIN CARD IMAGES OF A JOB AND FILE 2 ITS CORRESPONDING PRINT OUTPUT. THE POSITIONING FEATURE WOULD ENABLE ADVANCING TO FILE 2 FOR PRINTING. (NOTE: AFTER TRANSMISSION OF INPUT, THE MAG. TAPE IS POSITIONED JUST AFTER THE 'TM' OF FILE 1. THIS OUTPUT CAN BE RECEIVED WITHOUT FURTHER POSITIONING.) FEATURES NOT EMPLOYED: 1. DATA TRANSMISSION OF ASCII CODE. EBCDIC IS ALWAYS SENT TO AND EXPECTED FROM THE 'HOST' CPU. 2. DATA COMPRESSION OF IMBEDED BLANKS, REPEATING CHARACTERS, OR TABBING FEATURES. 3. TRANSPARENT TEXT (TRANSMISSION/RECEPTION OF BINARY DATA). (NOTE: EMPLOYED DRIVER D.50'C' DOES ALLOW THIS FEATURE, THUS ONLY HPRJE NEED BE MODIFIED TO EMPLOY TRANSPARENT TEXT CAPABILITIES.) 4. POLLING FEATURES BY 'HOST' CPU FOR MULTIDROP LINES. 5. ON-LINE CARD READING OR LINE PRINTING. HPRJE USES MAG. TAPE FOR ITS ON-LINE I/O DEVICE. THIS WAS EMPLOYED TO BYPASS TRADITIONAL CARD READER PROBLEMS (PICK FAILURES, CARD MOTION, AND MISREADS) AND LINE PRINTER PROBLEMS, AS PAPER JAM, DURING ON-LINE OPERATION. IF DESIRED, ON-LINE CARD READING AND LINE PRINTING CAN BE EMPLOYED BY MERELY CHANGING MAG. TAPE I/O CALLS TO CARD READER OR LINE PRINTER CALLS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR RECOVERY PROCEDURES THERE ARE ONLY TWO ABORT CONDITIONS WHICH MAY OCCUR. SHOULD A MAG. TAPE ERROR OCCUR, AS A PARITY ERROR, END-OF-TAPE, ETC., HPRJE WILL TYPE "ABORT-MAG TAPE ERROR" AND ALLOW A NEW FUNCTION TO BE SELECTED. THE ONLY RECOVERY IS TO CORRECT THE ERROR CONDITION (RECREATION OF THE TAPE MAY BE NECESSARY) AND RESTART HPRJE. IRRECOVERABLE PHONE LINE CONDITIONS ARE IDENTIFIED BY THE STATEMENT "ABORT-PHONE LINE PROBLEMS". RECOVERY IS AS FOLLOWS: 1. IF SUBMITTING A JOB(S): A. RELOAD HPRJE B. OBTAIN A STATUS OF "$DA" TO FIND OUT WHAT JOB NUMBER WAS ASSIGNED TO THE PARTIAL INPUT FILE. C. CANCEL THAT JOB WITH STAT COMMAND OF $CJXXX WHERE "XXX" = JOB #. D. RESUBMIT ENTIRE JOB FILE. 2. IF RECEIVING OUTPUT: A. RESTART HPRJE B. INITIALIZE A READ FUNCTION: #3 C. ESTABLISH DATA LINK AND RECEIV REMAINDER OF DATA FILE. DO NOT REWIND OR REPOSITION MAG. TAPE, JUST LEAVE AS IS. 3. DURING A STAT COMMAND: A. MERELY RESTART HPRJE AND OBTAIN A NEW DATA LINK. **MISCELLANEOUS: HASP COMMANDS FROM REMOTE TERMINALS COMMAND COMMENTS ------- -------- JOB QUEUE $DA DISPLAY ACTIVE JOBS $DF DISPLAY NUMBER OF QUEUED JOBS AWAITING FORMS $DN DISPLAY JOB INFORMATION ON QUEUED JOBS $DQ DISPLAY NUMBER OF QUEUED JOBS JOB LIST $C 'JOB LIST' CANCEL SPECIFIED JOB(S) $D 'JOB LIST' DISPLAY JOB INFORMATION ON SPECIFIED JOB(S) $P 'JOB LIST' STOP SPECIFIED JOB(S) AFTER CURRENT ACTIVITY MISCELLANEOUS JOB $D 'JOB NAME' DISPLAY JOB INFO ON JOB(S) WITH OS JOB NAME DEVICE LIST $B DEVICE LIST BACKSPACE DEVICE (S) $D DEVICE LIST CANCEL CURRENT FUNCTION ON DEVICES(S) $E DEVICE LIST RESTART CURRENT FUNCTION ON DEVICE(S) $F DEVICE LIST FORWARD SPACE DEVICE(S) $I DEVICE LIST INTERRUPT THE CURRENT FUNCTION ON DEVICES(S) $N DEVICE LIST REPEAT CURRENT FUNCTION ON DEVICES(S) $P DEVICE LIST STOP THE DEVICES(S) $T DEVICE LIST SET DEVICE $Z DEVICE LIST HALT DEVICES(S) (SUSPEND OPERATION) $S DEVICE LIST START THE DEVICE(S) REMOTE JOB ENTRY $DM DISPLAY MESSAGE $R ROUTE OUTPUT FOR SPECIFIED JOB OR DEVICE GROUP TO ANOTHER DEVICE GROUP IF CARDS ARE USED FOR COMMAND INPUT THEN A"/*" MUST BE IN CARD COLUMN 1 & 2 FOLLOWED BY THE COMMAND. E.G., "/*$DN". X12801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: CHARACTER CODE TRANSLATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 4 **SUBCATEGORY: 3 **KEYWORDS: ASCII EBCDIC TRANSLATOR CHARACTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: MTS 3030 **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS MTS PROGRAM TRANSLATES FROM ASCII TO EBCDIC, AND FROM EBCDIC TO ASCII. EACH TRANSLATED CHARACTER CAN BE PLACED IN THE CORE STORAGE LOCATION FROM WHICH THE CORRESPONDING UNTRANSLATED CHARACTER WAS ACQUIRED. ALTERNATIVELY, THE TRANSLATED CHARACTER CAN BE PLACED IN A DIFFERENT CORE STORAGE LOCATION. THE ORIGINAL CHARACTERS AND THE TRANSLATED CHARACTERS ARE PACKED TWO CHARACTERS PER 16-BIT WORD. BY PREPARING DIFFERENT CONVERSION TABLES FOR THE PROGRAM, A USER CAN CONVERT ANY 8-BIT (OR LESS) CODE TO ANY OTHER 8-BIT (OR LESS) CODE. MAGNETIC TAPE (9-TRACK) I/O NOT REQUIRED, BUT THE BIGGEST USE FOR THIS PROGRAM WILL PROBABLY BE TRANSLATING BETWEEN ASCII AND EBCDIC ON MAGNETIC TAPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. USUAL ASSEMBLY, LOAD AND RUN PROCEDURES. 2. THE TRANSLATE TAPE AND TWO TABLE LOOK-UP DATA TAPES MUST BE READ IN BY THE CALLING PROGRAM UNDER K6 FORMAT, OCTAL INTEGER. THE TABLES INCLUDED HERE ARE: EBCDIC TO ASCII AND ASCII TO EBCDIC CALL TLATE (I,J,K,L) WHERE... PARAMETER TYPE DESCRIPTION I INTEGER NAME OF THE SOURCE STRING TO BE TRANSLATED J INTEGER THE TRANSLATED STRING K INTEGER ADDRESS OF THE LOOK-UP TALE L INTEGER POSITIVE INDICATES LENGTH OF BUFFER IN WORDS NEGATIVE INDICATES LENGTH OF BUFFER IN CHARACTERS **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X12901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MAG TAPE TO PRINT UTILITY **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: MAGNETIC TAPE PRINTER DUMP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: UNDER TELEPRINTER KEYBOARD CONTROL, THIS PROGRAM DUMPS MAGNETIC TAPE FILES ONTO A LINE PRINTER. THE TAPE RECORDS MAY HAVE ANY OF A VARIETY OF FORMATS, AND EITHER ASCII OR EBCDIC FILES CAN BE ACCOMMODATED. EQUIPMENT REQUIRED IS THE DIRECT MEMORY ACCESS OPTION FOR THE COMPUTER, ONE HP3030 MAGNETIC TAPE UNIT WITH INTERFACE KIT, AND ONE LINE PRINTER WITH INTERFACE KIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE THE SUPPLIED SOURCE TAPE USING THE EXTENDED ASSEMBLER RESULTING IN A RELOCATABLE OBJECT TAPE. (THE SUPPLIED SOURCE TAPE HAS THE ASSEMBLY CONTROL STATEMENT.) CONFIGURE A BCS FOR THE HARDWARE ON WHICH THIS UTILITY IS TO RUN. THE TAPE I/O MUST BE ASSIGNED UNIT REFERENCE NUMBER 10B. THE BCS CONFIGURA- TION MUST ALSO CONTAIN A TTY AND A LINE PRINTER. LOAD THE CONFIGURED BCS FROM STEP II, AND USING THE BCS RELOCATING LOADER, LOAD THE RELOCATABLE OBJECT TAPE PRODUCED AS A RESULT FROM STEP I. SET SW 14 ON SO AS TO PRODUCE AN ABSOLUTE OUTPUT TAPE. NEXT, LOAD THE RELOCATABLE PROGRAM LIBRARY AND COMPLETE LOADING OPERATIONS. LOAD THE ABSOLUTE BINARY TAPE PRODUCED BY STEP III, USING THE BASIC BINARY LOADER. **RUN INSTRUCTIONS: PLACE A REEL OF MAGNETIC TAPE ON THE TAPE UNIT AND MAKE IT READY, I.E., LOAD POINT AND AUTO MODE. CHECK TO SEE THAT THE LINE PRINTER IS READY AND ON LINE. ENTER 2B IN THE SWITCH REGISTER AND PRESS "LOAD ADDRESS". AT THIS POINT, A DECISION MUST BE MADE AS TO WHETHER OR NOT DEFAULT PARAMETERS ARE DESIRED. DEFAULT PARAMETERS ARE AS FOLLOWS: LOGICAL RECORD LENGTH = 80 CHARACTERS TAPE RECORD LENGTH (BLOCKSIZE) = 800 CHARACTERS TAPE CODE = EBCDIC TO ASSUME THESE PARAMETERS, TURN OFF ALL SWITCH REGISTER SWITCHES AND PRESS "PRESET" AND "RUN". TO ASSUME ANY OTHER PARAMETERS, SET SW 0 ON AND PRESS "PRESET" AND "RUN". MESSAGES WILL BE LOGGED ON THE TTY REQUESTING THE LOGICAL RECORD LENGTH, BLOCKSIZE, AND TAPE CODE. TYPE ANSWERS ON TTY AND FOLLOW BY RETURN AND LINEFEED CHARACTERS. WHENEVER AN EOF MARK IS DETECTED ON THE TAPE, A MESSAGE IS PRINTED ON THE TTY, AND THE COMPUTER HALTS (T REGISTER = 102077B). TO DUMP NEXT FILE, SET SW 15 OFF AND PRESS "RUN". THE TAPE WILL BE REWOUND TO LOCAL. A PAGE NUMBER, FILE COUNT, AND RECORD COUNT IS MAINTAINED BY THE PROGRAM AND LISTED ON THE OUTPUT. IF THE COMPUTER HALTS WITH THE T-REGISTER EQUAL TO 102011B, A TAPE ERROR HAS BEEN DETECTED. PRESS "RUN" TO RETRY. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X13001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DRUM BASED MAGNETIC TAPE DUPLICATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: MAGNETIC TAPE DUMP **LANGUAGES: **COMPUTER TYPE: **OPERATING SYSTEMS: **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: USING SOURCE MAGNETIC TAPES WITH THE FORMAT PRODUCED BY PROGRAM 22198 (CLASSIFICATION CODE 102), THIS INDEPENDENT PROGRAM PERFORMS ANY OF THE FOLLOWING FUNCTIONS: A. THE PROGRAM MAKES COPIES OF A MAG TAPE USING A SINGLE MAG TAPE UNIT. THE DRUM IS USED FOR INTERMEDIATE STORAGE. B. THE PROGRAM ALLOWS MANY MAG TAPES TO BE COMBINED ON THE DRUM. A SINGLE MAG TAPE CAN THEN BE PREPARED FROM THE DRUM FILES. C. THE PROGRAM CAN PURGE ANY SPECIFIED FILE FROM THE DRUM. D. MAG TAPE FILES ON THE DRUM CAN BE SORTED BY ID NUMBER. E. SELECTED FILES ON THE DRUM CAN BE RECORDED ON MAG TAPE. F. A DIRECTORY OF PROGRAM RECORDED ON MAG TAPE CAN BE LISTED ON LINE PRINTER OR TELEPRINTER. BECAUSE THIS IS AN INDEPENDENT PROGRAM, THE MAG TAPE FORMAT AND DRUM FORMAT ARE NOT COMPATIBLE WITH THE FORMATS USED IN STANDARD HP OPERATING SYSTEMS. THEREFORE, THE MAG TAPES PRODUCED MUST BE TRANSFERRED TO PUNCHED TAPE, USING PROGRAM 22198, BEFORE USE IN AN OPERATING SYSTEM. EQUIPMENT REQUIRED IS 16K OF CORE STORAGE, AND THE DIRECT MEMORY ACCESS AND EXTENDED ARITHMETIC UNIT OPTIONS FOR THE COMPUTER. ALSO REQUIRED IS AN HP2773/4/5 DRUM MEMORY WITH POWER SUPPLY AND INTERFACE KIT, AND AN HP3030 MAGNETIC TAPE UNIT WITH INTERFACE KIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TO PUT A MAG TAPE ONTO A DRUM: 1. LOAD ADDRESS 2, PRESS PRESET AND RUN HLT 0 DRUM NOT READY, WARM UP, PUSH RUN HLT 11B OUT OF DRUM SPACE, LOAD ADDRESS 3 AND PUSH RUN TO WRITE EOF ON DRUM HLT 13B MAG TAPE PARITY ERROR, PUSH RUN OR TERMINATE AT 3 HLT 44B TAPE IN LOCAL, FIX, PUSH RUN HLT 77B TAPE ON DRUM A-REG = MAXIMUM DRUM ADDRESS B-REG = CURRENT DRUM ADDRESS TO DUMP A MAG TAPE FROM DRUM: 1. LOAD MAG TAPE WITH WRITE RING 2. PRESS "PRESET" AND "RUN" HLT 0 DRUM NOT READY, WARM UP, PUSH RUN HLT 6 DRUM PARITY ERROR, PUSH RUN HLT 13B MAG TAPE PARITY ERROR, PUSH RUN AND RESTART HLT 14B BAD SPOT ON TAPE, RUN TERMINATED HLT 44B TAPE IN LOCAL, FIX, PUSH RUN HLT 77B NEW TAPE CREATED TO APPEND A TAPE TO THE DRUM FILE: 1. MOUNT NEXT TAPE, PUT IN "AUTO", "LOAD POINT" 2. LOAD ADDRESS 5, PUSH PRESET AND RUN HALTS AS IN "TO PUT A MAG TAPE ONTO THE DRUM" TO SORT DRUM ONTO TAPE: 1. LOAD ADDRESS 40B, PUSH RUN THE CONTENTS OF THE DRUM WILL NOT BE CHANGED. HOWEVER, THE FILES ON THE DRUM WILL BE DUMPED TO MAG TAPE IN ASCENDING ORDER. TO GET AN IMAGE OF THE SORTED FILE ONTO THE DRUM, FOLLOW THE STEPS UNDER "TO PUT A MAG TAPE ONTO THE DRUM" HLT 0 DRUM NOT READY, WARM UP, PUSH RUN HLT 6 DRUM PARITY ERROR, PUSH IN HLT 13B MAG TAPE PARITY ERROR, PUSH RUN HLT 40B DONE HLT 44B MAG TAPE IN LOCAL, FIX, PUSH RUN HLT 45B WRITE NOT ENABLED, FIX, PUSH RUN 00037 ORG 37B 00037 102040 HLT 40B 00040 024554 JMP SORTD TO PURGE FILES FROM DRUM: 1. LOAD ADDRESS 50B 2. TYPE ID CODE HLT 0 DRUM NOT READY, WARM UP, PUSH RUN HLT 1 ID CODE NOT FOUND ON DRUM HLT 6 DRUM PARITY ERROR, PUSH RUN HLT 50B FILE PURGED 00047 ORG 47B 00047 102050 HLT 50B 00050 024500 JMP PURGE NOTE: THE PURGE WILL WORK BEST IF ROUTINES ARE REMOVED FROM THE END OF THE LIST FIRST, AS UNWANTED ROUTINES WILL BE REMOVED AND TIME NEED NOT BE WASTED MAINTAINING THEM. TO DUMP SELECTED FILES ONTO MAG TAPE: 1. LOAD ADDRESS 70B 2. TYPE ID CODE HLT 0 DRUM NOT READY, WARM UP, PUSH RUN HLT 1 ID CODE NOT FOUND ON DRUM HLT 6 DRUM PARITY ERROR, PUSH RUN HLT 44B TAPE UNIT IN LOCAL, FIX PUSH RUN HLT 45B WRITE NOT ENABLED, FIX, PUSH RUN HLT 70B FILE DUMPED ONTO MAGNETIC TAPE TO DUMP A TAPE DIRECTORY ON LINE PRINTER: LOAD ADDRESS 102B, PUSH "PRESET" AND "RUN" HLT 13B MAG TAPE PARITY ERROR, PUSH RUN HLT 44B MAG TAPE IN LOCAL, FIX, PUSH RUN HLT 77B DONE TO CONFIGURE THIS TAPE FOR YOUR SYSTEM, EDIT THE FOLLOWING STATEMENTS: #14 .DRUM EQU 14B VRC 12-MB DRUM #17 .DATA EQU 17B HP3030 9-TRACK MAG TAPE #23 LP EQU 23B HP2778A LP #12 TTY EQU 12B BUFFERED TTY CHANNEL **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IT WOULD BE POSSIBLE TO MODIFY THIS SCHEME TO MAKE A COMPLETELY DRUM BASED TAPE DUPLICATOR, OR TO WORK OUT A DRUM BASED EDITOR FOR CD-II FORMATTED MAG TAPES. IN ORDER TO MAKE MANY COPIES OF THE SORTED TAPE, IT SHOULD BE LOADED BACK ONTO THE DRUM IN SORTED FORM, SINCE THE DRUM DUMP IS MUCH FASTER THAN THE "SORT & DUMP" OPTION. X13101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MTS/BCS SYSTEM ABSOLUTE DUMP **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: DUMP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM DUMPS AN ABSOLUTE TAPE UNDER BCS. WHEN USED AS INPUT TO PREPARE TAPE SYSTEM, IT GENERATES ONLY THREE DATA RECORDS ON FILE INSTEAD OF THE USUAL SEVERAL HUNDRED. FASTER ACCESS TIME UNDER MTS AND A SIGNIFICANT SAVINGS IN MAGNETIC TAPE ARE THE BENEFITS OF THIS PROGRAM. IT CAN BE USED ALONG WITH OR INSTEAD OF THE BASIC CONTROL SYSTEM ABSOLUTE DUMP OPTION. WHEN USED AS A GENERAL ROUTINE, IT CAN DUMP AN ENTIRE BCS SYSTEM OR SELECTED CORE SECTIONS ENABLING SYSTEM MODIFICATION WITHOUT REASSEMBLY AND GENERATION OF A NEW ABSOLUTE TAPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TO DUMP: 1. THE COMPLETE BCS SYSTEM FROM CORE (NORMAL LOAD COMPLETED IN- CLUDING SYSDM) A. CONSULT LOADER LIST FOR ENTRY POINT "STRDM". PRESET AND RUN. B. COMPUTER WILL HALT 10B. THE A REGISTER SHOULD CONTAIN THE MAIN PROGRAM STARTING ADDRESS (SEE 6.0). IF IT DOES NOT, LOAD THE A REGISTER WITH THE PROPER ADDRESS, PRESS PRESET AND RUN. C. THE ENTIRE SYSTEM WILL BE DUMPED INCLUDING LEADER AND TRAILER FOLLOWED BY A HALT 77B. TO OBTAIN ADDITIONAL COPIES, PRESS RUN. 2. THE COMPLETE SYSTEM WITH ABSOLUTE OPTION, SW14=1 A. CONSULT LOADER LIST FOR ENTRY POINT "STRDM". PRESET AND RUN. B. AN ABSOLUTE LOAD ALREADY CONTAINS THE PROPER LINKAGE TO THE PROGRAM STARTING ADDRESS AT LOCATIONS 2 AND 3. THERE WILL BE NO HALT 10B OTHERSWISE PROCEED AS IN STEP 1-B. C. THE ENTIRE SYSTEM WILL BE DUMPED INCLUDING LEADER AND TRAILER FOLLOWED BY A HALT 77B. TO OBTAIN ADDITIONAL COPIES, PRESS RUN. 3. ANY SECTION OF MEMORY -- A. CONSULT LOADER LIST FOR ENTRY POINT "MANDM" AND LOAD THAT ADDRESS. B. LOAD THE A REGISTER WITH THE ADDRESS OF THE FIRST WORD OF CORE TO BE DUMPED AND THE B REGISTER WITH THE ADDRESS OF THE LAST WORD OF CORE TO BE DUMPED. C. PRESS PRESET AND RUN TO OBTAIN AN OBSOLUTE COPY OF THE DE- SIRED CORE SECTION. NOTE: NO LEADER OR TRAILER ARE PROVIDED. D. HALT 76B INDICATES SECTION IS DUMPED. TO DUMP ADDITIONAL SECTIONS, REPEAT FROM STEP 3-B. THE PROGRAM WAS WRITTEN SPECIFICALLY TO ELIMINATE THE MANY RECORDS CREATED WHEN A BCS ABSOLUTE OUTPUT IS LOADED WITH PTS TO FILE 1 OF MTOS. IF SYSDM IS USED TO DUMP THE ABSOLUTE COPY, ONLY 3 RECORDS PER SYSDM DUMP WILL BE PUT ON FILE 1. (THE DUMPED TAPE IS COMPATIBLE WITH THE BBL.) NOTE: SYSDM IS COMPATIBLE WITH E VERSION RELOCATING LOADER AND AS RELOCATABLE ONLY WORKS PROPERLY WITH MULTIPLES OF 8K CORE. (IF 4K IS USED, EDIT RELATIVE LOCATION 40 TO: "IOR =B7700".) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: HALTS: HALT 10B WILL OCCUR IF THE LOAD WAS DONE BY A NORMAL BCS LOAD TO CORE. SYSDM TRIES TO OBTAIN THE MAIN STARTING ADDRESS AND PLACE IT IN LOCATION 3B ALONG WITH A "JMP 3,I" IN LOCATION 2B. IT IS POSSIBLE THAT THE STARTING ADDRESS MAY NOT BE PRESENT AT THE TIME THE DUMP IS REQUESTED. JUST PRIOR TO PLACING THE ADDRESS IN LOCATION 3B, THE PROGRAM HALTS WITH A HALT 10B TO ALLOW THE USER TO VIEW THE A REGISTER WHICH SHOULD CONTAIN THE MAIN STARTING ADDRESS. IF IT DOES NOT, THE USER CAN SET THE A REGISTER TO THE PROPER ADDRESS AND PRESS RUN. HALT 66B INDICATES A "TAPE LOW" CONDITION. RESTORE TAPE SUPPLY AND: 1. TO RESTART A SYSTEM DUMP, PRESS RUN - COMPLETE SYSTEM WILL BE DUMPED ON NEW TAPE. 2. TO RESTART A CORE SECTION DUMP, GO TO 4.0, D.3.A. X13201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS TO MAGNETIC TAPE DUMP **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: DUMP MAGNETIC TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ABSOLUTE PROGRAM DUMPS SELECTED SOURCE FILES OF LENGTH LESS THAN 237 SECTORS, FROM DOS TO A NINE-TRACK 7970/3030 IN A FORMAT COMPATIBLE WITH THE MAGNETIC TAPE STORAGE AND RETRIEVAL PROGRAM 22198. IT IS LOADED OVER A (HALTED) DOS AND USES BASE PAGE CONSTANTS TO FIND THE SYSTEM DIRECTORY TRACK AND HANDLE THE 90/128 SECTOR PER TRACK DISCS. HARDWARE REQUIRED: FIXED HEAD DISC, 3030/7970 9-TRACK TAPE DECK TELEPRINTER WITH BUFFERED INTERFACE, DMA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE SS FILE MUST BE LESS THAN 237 SECTORS LONG, AND A 16K COMPUTER IS REQUIRED. THE PROGRAM MUST BE CONFIGURED AFTER LOADING FOR THE MAG TAPE AND DISC SELECT CODE, BUT IT WILL USE DOS BASE PAGE CONSTANTS TO FIND THE SYSTEM DIRECTORY TRACK AND TO HANDLE THE 90/128 SECTOR PER TRACK DISCS. THE PROGRAM MAY BE CONFIGURED AFTER LOADING FOR THE HP-3030 OR HP-7970 9-TRACK TAPE DECK. THE PROGRAM MUST BE LOADED OVER A "HALTED" DOS SINCE DOS BASE PAGE CONSTANTS ARE USED. CONFIGURATION INSTRUCTIONS: 1. LOAD BINARY TAPE THE CONFIGURATION SECTION IS IN THE DATA BUFFER, AND THUS THE RAW BINARY TAPE MUST BE LOADED TO CONFIGURE IT. 2. LOAD ADDRESS 2, PUSH RUN HLT 00B PUT TTY SC IN SW-REG, PUSH RUN HLT 20B PUT MAG TAPE DATA SC IN SW-REG TURN ON BIT 15 OF SW-REG IF A 7970 PUSH RUN HLT 30B PUT DISC DATA SC IN SW-REG, PUSH RUN HLT 55B GO TO STEP #1 HLT 77B CONFIGURATION COMPLETE TO DUMP AN SS FILE FROM DOS TO MAG TAPE: 1. IF THIS IS A NEW TAPE, SET AT LOAD POINT, WRITE ENABLED, AND GO TO STEP #3. 2. TO APPEND TO AN EXISTING TAPE, LOAD ADDRESS 12, PUSH RUN. THE TAPE WILL BE SPACED TO THE END-OF-FILE. (DO NOT APPEND A TAPE GENERATED ON A 7970 USING THE 3030, OR VICE VERSA). 3. LOAD ADDRESS 100B, PUSH RUN THE COMPUTER WILL TYPE: ENTER FILE NAME 4. ENTER THE NAME OF A DOS SS FILE HLT 00B DISC NOT READY, WARM UP, PUSH IN HLT 06B DISC PARITY ERROR HLT 13B FILE NOT FOUND ON DOS HLT 17B GARBAGE ON DISC FILE COMPUTER WILL (ERROR) HALT AS ABOVE, OR TYPE: ENTER ID CODE -OR- FILE NOT TYPE SS ENTER FILE NAME IN THE CASE OF THE LATTER, GO BACK TO STEP #4 5. ENTER A 1-20 CHARACTER ID CODE THE FILE WILL BE WRITTEN ONTO MAGNETIC TAPE, IN CD-II FORMAT. HLT 14B MAG PARITY ERROR, PUSH RUN HLT 15B RUN TERMINATED, BAD SPOT ON TAPE HLT 44B WRITE NOT ENABLED ON MAG TAPE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. IF AN SS FILE IS DUMPED FROM DOS ONTO PAPER TAPE, IT WILL COMPARE EXACTLY WITH THE SS FILE AS DUMPED ONTO THE MAG TAPE. THE MTSAR PROGRAM SHOULD THUS VERIFY AN SS PAPER TAPE FILE DUMPED FROM DOS WITH THE MAG TAPE FILE DUMPED WITH THIS PROGRAM. HOWEVER, IF AN SS PAPER TAPE FILE IS LOADED ONTO DOS, AND HAS AN ODD NUMBER OF CHARACTERS PER LINE, THE DOS WILL CHANGE THE FORMAT TO AN EVEN NUMBER OF CHARACTERS PER LINE, AND THE DOS DUMP (ON PAPER TAPE OR ON MAG TAPE) OF THAT FILE WILL BE DIFFERENT FROM THE ORIGINAL. 2. IF THE MAG TAPE IS NOT SET TO ACCEPT A WRITE REQUEST (I.E., LOCAL, WRITE NOT ENABLED, OFF/ON, ETC.), THE PROGRAM MAY HANG UP. SEE THE FAMILY OF MTSAR PROGRAMS, WHICH INCLUDES THE MTSAR, THE DRUM DUPLICATOR AND A PROGRAM WHICH ALLOWS MTSAR COMPATIBLE TAPES TO BE LOADED DIRECTLY ONTO DOS AS SS FILES. MTSAR -- MAGNETIC TAPE STORAGE AND RETRIEVAL, HP102-22198 X13301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MAGNETIC TAPE TO DOS DUMP **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: MAGNETIC TAPE DUMP **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: DOS **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ABSOLUTE PROGRAM LOADS SOURCE FILES OVER A (HALTED) 16K DOS FROM A NONE-TRACK MAGNETIC TAPE WHICH HAS BEEN PREVIOUSLY PREPARED BY THE MAGNETIC TAPE STORAGE AND RETRIEVAL PROGRAM, 22198. ANY NUMBER OF TAPE RECORDS MAY BE CONCATENATED TO FORM A SINGLE SOURCE FILE ON DOS. THE 16K DOS MAY HAVE A 90 OR 128 DISC/DRUM WITH AN HP7970 OR 3030 MAGNETIC TAPE UNIT. HARDWARE REQUIREMENTS: 16K DOS 7970 OR 3030 MAGNETIC TAPE DECK, 90 OR 128 DISC/DRUM, DMA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IT MAY BE CONFIGURED AFTER LOADING FOR THE HP-3030 OR HP-7970 9-TRACK TAPE DECK. THE PROGRAM MUST BE LOADED OVER A "HALTED" DOS SINCE DOS BASE PAGE CONSTANTS ARE USED. TO USE THIS PROGRAM, DO AN :EJOB ON DOS, HALT THE COMPUTER, AND LOAD THIS PROGRAM INTO CORE. ANY NUMBER OF FILES FROM MAG TAPE MAY BE CONCATENATED TO FORM A SINGLE SS FILE ON DOS. CONFIGURATION INSTRUCTIONS: 1. LOAD BINARY TAPE THE CONFIGURATION SECTION IS IN THE DATA BUFFER, AND THUS THE RAW BINARY TAPE MUST BE LOADED TO CONFIGURE IT. 2. LOAD ADDRESS 2, PUSH RUN HLT 00B PUT TTY SC IN SW-REG, PUSH RUN HLT 20B PUT MAG TAPE DATA SC IN SW-REG TURN ON BIT 15 OF SW-REG IF A 7970 HLT 30B PUT DISC DAA SC IN SW-REG, PUSH RUN HLT 77B DONE OPERATING INSTRUCTIONS: 1. LOAD ADDRESS 100B 2. TURN ON SW #15 FOR READ-FORWARD ONLY ON MAG TAPE 3. PUSH RUN HLT 00B DISC NOT READY, ARM, UP, PUSH RUN HLT 06B DISC PARITY ERROR, PUSH RUN 4. ENTER ID CODE OF FILE ON MAG TAPE THE COMPUTER WILL TYPE: ENTER FILE NAME HLT 03B MAG TAPE FILE > CORE BUFFER SIZE, GIVE UP 5. ENTER 1-5 CHARACTER NAME FOR THE SS FILE HLT 05B DISC WRITE PROTECT ON, CLEAR, PUSH RUN HLT 178 MAG TAPE BUFFER UNDECIPHERABLE, IS IT SS? THE COMPUTER WILL TYPE "ENTER ID CODE OR /E" GO TO STEP #6 OR STEP #7 6. TO WRITE THE CURRENT FILE ONTO DISC, ENTER /E THE FILE WILL BE WRITTEN ONTO DISC, AND THE COMPUTER WILL TYPE "ENTER ID CODE". IF YOU ARE DONE, PUSH HALT AND BRING UP DOS, ELSE GO TO STEP #4 TO CREATE A NEW SS FILE ON DISC. 7. TO CONCATENATE ANOTHER MAG TAPE RECORD TO THE FILE BEING CREATED ON DISC. ENTER THE NAME OF THE NEXT MAG TAPE RECORD. THE FIRST TWO CHARACTERS OF THE NAME OF THE RECORD MUST NOT BE "/E". IF THE RECORD IS NOT FOUND ON TAPE, YOU MAY RE-ENTER THE RECORD NAME WITHOUT LOSS OF CONTINUITY. LOOP BACK TO STEP #6 OR #7. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. THE PROGRAM WILL HANG UP IF THE MAGNETIC TAPE UNIT IS NOT IN THE "AUTO" "ON LINE" STATE. 2. THE PROGRAM DOES NOT CHECK FOR END OF DISC, AND WILL HANG UP SHOULD YOU ATTEMPT TO LOAD TOO MANY SS FILES ONTO YOUR DOS. X13401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: ABSOLUTE CORE DUMP ROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: DUMP MEMORY **LANGUAGES: ASMB ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE ALLOWS DUMPING SELECTED AREAS OF CORE ONTO TAPE IN A FORMAT COMPATIBLE FOR LOADING WITH THE BASIC BINARY LOADER. TWO VERSIONS ARE SUPPLIED TO THE USER; ONE ABSOLUTE FOR LOADING THROUGH THE BASIC BINARY LOADER, AND ONE RELOCATABLE FOR LOADING THROUGH THE BASIC CONTROL SYSTEM. NO EXTERNAL SUBPROGRAMS ARE CALLED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: USUAL ASSEMBLE PROCEDURES: 1. SELECT WHETHER THE ABSOLUTE OR RELOCATABLE VERSION IS DESIRED. 2. IF THE ABSOLUTE VERSION IS SELECTED, MODIFY ORG STATEMENT IF A STARTING ADDRESS OF 12000(8) IS NOT DESIRED. 3. ASSEMBLE THE PROGRAM. 4. IF THE ABSOLUTE VERSION HAS BEEN ASSEMBLED, LOAD THE OBJECT TAPE THROUGH THE BASIC BINARY LOADER. 5. IF THE RELOCATABLE VERSION HAS BEEN ASSEMBLED, LOAD THE OBJECT TAPE THROUGH THE BASIC CONTROL SYSTEM. 6. TO ENTER THE PROGRAM, SET SWITCH REGISTER TO STARTING ADDRESS OF 'CDUMP' ROUTINE, PRESS 'LOAD ADDRESS', SET SWITCH REGISTER TO OCTAL ADDRESS OF IO LOCATION OF PUNCH DEVICE, PRESS 'PRESET' AND 'RUN'. A LEADER WILL BE PUNCHED. 7. THE PROGRAM WILL HLT 1 (102001B). SET SWITCH REGISTER TO STARTING ADDRESS TO BE PUNCHED AND PRESS 'RUN'. 8. THE PROGRAM WILL HLT 2 (102002B). SET SWITCH REGISTER TO ENDING ADDRESS TO BE PUNCHED AND PRESS 'RUN'. 9. AFTER TAPE HAS BEEN PUNCHED, THE PROGRAM WILL HLT 1 (102001B). A. TO PUNCH ANOTHER BLOCK, REPEAT ABOVE PROCEDURE. B. TO TERMINATE, SET SWITCH REGISTER TO 0 OR 1 AND PRESS 'RUN'. A TRAILER WILL BE PUNCHED AND THE PROGRAM WILL HLT 77B (102077B). C. TO PUNCH ANOTHER TAPE, PRESS 'RUN' TO PUNCH A LEADER AND REPEAT ABOVE PROCEDURE. 10. IF ENDING ADDRESS IS LESS THAN STARTING ADDRESS, THE PROGRAM WILL HLT 0 (102000B). SET SWITCH REGISTER TO CORRECT STARTING ADDRESS AND CONTINUE ABOVE PROCEDURE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X13501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MEDIA CONVERSION **REVISION? **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: CONVERSION DUMP **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM CONVERTS ASCII CODE FROM ONE TYPE OF STORAGE MEDIA TO ANOTHER. CONVERSION MODES ALLOWED ARE: CARD TO MAG TAPE, CARD TO LIST AND CARD TO PAPER TAPE; MAG TAPE TO LIST AND MAG TAPE TO PAPER TAPE; PAPER TAPE TO LIST, PAPER TAPE TO MAG TAPE, AND PAPER TAPE TO PAPER TAPE. THE PROGRAM RESPONDS TO USER COMMANDS UNDER DOS-M AND IS COMPATIBLE WITH THE :STORE AND :DUMP DIRECTIVES. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: USUAL ASSEMBLY, LOADS AND RUN PROCEDURES THE PROGRAM OPERATES IN RESPONSE TO 4-LETTER COMMANDS. 1. CARD TO MAG TAPE (/CTM) 2. CARD TO PAPER TAPE (/CTP) 3. CARD TO LIST (/CTL) 4. MAG TAPE TO LIST (/MTL) 5. MAG TAPE TO PAPER TAPE (/MTP) 6. PAPER TAPE TO LIST (/PTL) 7. PAPER TAPE TO MAG TAPE (/PTM) THE LAST COMMAND SHOULD ALWAYS BE /END THE FOLLOWING LOGICAL UNITS ARE ASSUMED: 1 -SYSTEM CONSOLE 4 -PAPER TAPE PUNCH 5 -PAPER TAPE READER 6 -LIST DEVICE 7 -CARD READER 8 -MAG TAPE IF A DEVICE DOES NOT EXIST IN THE PARTICULAR SYSTEM, THE PROGRAM MAY STILL BE USED BUT ALL REFERENCES TO THE NON-EXISTENT DEVICE SHOULD BE AVOIDED. THE L.U. FOR A PARTICULAR DEVICE MAY BE PERMANENTLY ALTERED BY RE-ASSEMBLING THE PROGRAM: D4 SHOULD CONTAIN PUNCH L.U. D5 SHOULD CONTAIN PAPER TAPE READER L.U. D6 SHOULD CONTAIN LIST L.U. D7 SHOULD CONTAIN CARD READER L.U. D8 SHOULD CONTAIN MAG TAPE L.U. THE INPUT DATA SHOULD CONFORM TO THE STANDARD ASCII FORMAT, EXCEPT FOR CARD WHERE EBCDIC FORMAT IS USED. THE LAST GIVEN COMMAND SHOULD ALWAYS BE /END. AT THE END OF THE INPUT DATA STREAM, MEDIA IS SUSPENDED. THE USER HAS THE OPTION OF TERMINATING THE PROCESS BY TYPING :GO,0 OR TO CARRYING ON BY :GO,N WHERE N IS THE INPUT DEVICE. IN THIS WAY IT IS POSSIBLE TO FORM ONE DATA SET OF SEVERAL (I.E. TO CREATE A MAG TAPE FROM BOTH PAPER TAPE AND CARDS.) THE END OF THE INPUT DATA STREAMS IS CAUSED BY ONE OF THE FOLLOWING CONDITIONS: - END-OF-TAPE (PAPER TAPE, MAG TAPE) - INPUT HOPPER EMPTY (CARD READER) - OUTPUT STACKER FULL (CARD READER) - END-OF-FILE (MAG TAPE) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X13601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 7900 DISC TO DISC DUMP **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: DUMP DISC **LANGUAGES: ASMB FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS SET OF PROGRAMS WILL ALLOW THE OPERATOR TO TRANSFER DATA BETWEEN THE FIXED AND REMOVEABLE PLATTERS OF AN HP7900A MOVING HEAD DISC. PROTECTED AND DEFECTIVE CYLINDER FLAGS ARE TRANSFERRED TO THE DESTINATION DISC. ANY CONTIGUOUS BLOCK OF TRACKS CAN BE TRANSFERRED OR VERIFIED. ALL DATA WRITTEN ON A DISC TRACK IS READ AND COMPARED WITH ORIGINAL DATA DURING A COPY OPERATION. THE OPERATOR CAN CHOOSE TO PATCH UP TO TWENTY RANDOM LOCATIONS DURING A TRANSFER. IT OPERATES UNDER BCS AND REQUIRES 16K WITH DMA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: 1. EDIT ASSEMBLY PROGRAM (IDISK) TO INDICATE LOWER DISC INTERFACE SELECT CODE AS FOLLOWS: /R,543 DISC1 EQU XXB /E NOTE: PRESENT SOURCE TAPE CONFIGURED FOR S.C. 14B. 2. ASSEMBLE "IDISK", COMPILE FORTRAN PROGRAM "DCOPY" AND FUNCTIONS "ISTAT" AND "IERR". (TAPES STRUNG IN THIS ORDER). 3. LOAD A CONFIGURED BCS OPERATING SYSTEM. 4. USING THE BCS LOADER LOAD DCOPY, ISTAT, IERR, IDISK AND THE BCS RELOCATABLE LIBRARY. 5. ANSWER QUESTIONS DISPLAYED ON LU #2. (SEE EXAMPLE SECTION 7.0) NOTE: PLACE DISC PROTECT SWITCH IN "OVERRIDE" POSITION WHEN COPYING. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE DISC DRIVER (IDISK) NEEDS ACCESS TO THE DMA CONTROL WORDS (DMAC1 AND DMAC2) IN THE BCS SYSTEM. SINCE THESE LOCATIONS ARE NOT AVAILABLE AS EXT'S AT LOAD TIME, THEY ARE ASSUMED TO BE LOCATED 221(8) LOCATIONS AFTER EXT LABEL .IOC. AS THE CASE WITH I/O CONTROL 24173-60001 REV A. THE USER MUST INSURE HIS CONFIGURED BCS TAPE CONTAINS THIS REVISION OF IOC. ALSO, THE BCS SYSTEM MUST HAVE DMA ALLOCATED AT GENERATION TIME. X13701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 2870/7900 DISC/MAGNETIC TAPE UTILITY **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: DISC MAGNETIC TAPE DUMP COPY **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SIO **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ABSOLUTE ASSEMBLY PROGRAM USES THE MAGNETIC TAPE AND TELEPRINTER SIO DRIVERS TO PERFORM DISC TO DISC, DISC TO MAGNETIC TAPE, AND MAGNETIC TAPE TO DISC COPIES. IT IS DESIGNED TO WORK WITH AT LEAST 16K CORE, DMA, AND AN HP2870 OR HP7900 DISC. UP TO FOUR DISC DRIVERS (SUBCHANNEL 0 THROUGH 7) CAN BE USED, AND THE MAGNETIC TAPE CAN HAVE UP TO 7 FILES WITH AUTOMATIC FILE POSITIONING. THE OPERATOR COMMUNICATES WITH THE PROGRAM BY ANSWERING QUESTIONS ON THE TELETYPE. THE OPTIONS AVAILABLE ARE: DU - DUMP DISC LO - LOAD DISC FROM MAGNETIC TAPE WITH AUTOMATIC VERIFY VE - VERIFY DISC WITH MAGNETIC TAPE CO - COPY DISC TO DISC WITH AUTOMATIC VERIFY TE - TERMINATE DISCS WITH CYLINDER FLAGGED DEFECTIVE CANNOT BE COPIED OR DUMPED. HARDWARE REQUIREMENT: HP 7970/2020/3030 MAGNETIC TAPE DRIVE, HP 7900 OR 2870 DISC SYSTEM TELETYPE OR CRT, DMA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS ABSOLUTE ASSEMBLY PROGRAM USES THE MAGNETIC TAPE AND TELEPRINTER SIO DRIVERS TO PERFORM DISC TO DISC, DISC TO MAGNETIC TAPE, AND MAGNETIC TAPE TO DISC COPIES. IT IS DESIGNED TO WORK WITH AT LEAST 16K CORE, DMA, AND AN HP 2870 OR HP 7900 DISC. UP TO FOUR DISC DRIVERS (SUBCHANNEL 0 THROUGH 7) CAN BE USED, AND THE MAGNETIC TAPE CAN HAVE UP TO 7 FILES WITH AUTOMATIC FILE POSITIONING. THE OPERATOR COMMUNICATES WITH THE PROGRAM BY ANSWERING QUESTIONS ON THE TELETYPE. THE OPTIONS AVAILABLE ARE: DU - DUMP DISC TO MAGNETIC TAPE LO - LOAD DISC FROM MAGNETIC TAPE WITH AUTOMATIC VERIFY VE - VERIFY DISC WITH MAGNETIC TAPE CO - COPY DISC TO DISC WITH AUTOMATIC VERIFY TE - TERMINATE SEVERAL ERROR HALTS ARE INCLUDED IN THIS PROGRAM TO INSURE PROPER HARD- WARE OPERATION. DISCS WITH CYLINDERS FLAGGED DEFECTIVE CANNOT BE COPIED OR DUMPED. PROTECTED CYCLINDERS ARE COPIED AS PROTECTED. THERE HAS BEEN A NEED FOR A PROGRAM, NOT DEPENDENT ON A PARTICULAR OPERATION SOFTWARE SYSTEM, WHICH WILL ALLOW DUMPING, LOADING AND COPYING OF DISC PLATTERS TO MAGNETIC TAPE, FROM MAGNETIC TAPE OR TO OTHER DISC PLATTERS. SOME PROGRAMS EXIST FOR SPECIFIC DISCS, SPECIFIC OPERATING SYSTEMS OR SPECIFIC DISC FORMATS. OTHER PROGRAMS EXIST WHICH WILL DO PART OF THE JOB BUT DO NOT HAVE VERIFICATION OR ARE SLOW, ETC. MADIU (MAGNETIC TAPE DISC UTILITY) COMBINES ALL OF THE DESIRED CHARAC- TERISTICS OF THE ABOVE PROGRAMS INTO ONE PROGRAM. CHARACTERISTICS OF MADIU ARE: 1. COPIES FROM MAGNETIC TAPE TO DISC, DISC TO MAGNETIC TAPE, AND DISC TO DISC. 2. MULTIPLE DISC DRIVERS POSSIBLE. 3. HP 7900 SERIES OR HP 2870 SERIES DISCS ALLOWED. 4. HP 7970 (9 TRACK OR 7 TRACK), HP 2020, HP 3030 MAGNETIC TAPE DRIVES ALLOWED. 5. MULTIPLE TAPE FILES POSSIBLE UP TO 7 PER TAPE. 6. MANY ERROR HALTS TO INSURE PROPER HARDWARE OPERATION. 7. VERIFICATION (VERY IMPORTANT). 8. DISC TIME OUT LOOPS (IF NO FLAG RETURNED IN SET TIME PERIOD, A HALT OCCURS). 9. DISCS WITH CYLINDERS FLAGGED DEFECTIVE CANNOT BE COPIED OR DUMPED. REV B (FUTURE) WILL ALLOW COPIES AND DUMPS OF THESE DISCS. 10. PROTECTED CYLINDERS ARE COPIED AS PROTECTED. 11. ALL 203 CYLINDERS ARE COPIED. 12. CONFIGURATION IS SAME AS FOR AN SIO DRIVER. 13. THE ONLY OTHER SOFTWARE REQUIRED IS THE 16K SIO TELETYPE DRIVER AND THE APPROPRIATE 16K SIO MAGNETIC TAPE DRIVER. 14. AUTOMATIC MAGNETIC TAPE FORMAT CHECKING (EXCEPT DENSITY). 15. DURING DISC LOAD OR COPY, THE DESTINATION DISC IS ALWAYS INITIAL- IZED. 16. ON THE HP 2100, THE SWITCH REGISTER DISPLAYS THE OCTAL TRACK NUMBER OF THE PRESENT DISC TRACK BEING READ. CONFIGURING MADIU IT IS IMPORTANT THAT THE TAPES BE LOADED IN THE FOLLOWING ORDER: 1. LOAD THE MADIU BINARY TAPE USING BBL (16K OR LARGER CORE IS REQUIRED). 2. LOAD ADDRESS 2 (OCTAL). 3. SET SWITCH REGISTER BITS 0-5 TO THE DISC HIGHER PRIORITY I/O SLOT CHANNEL NUMBER. 4. FOR THE HP 7900 DISC, SET SWITCH REGISTER BIT 15 "OFF". 5. FOR THE HP 2870 DISC, SET SWITCH REGISTER BIT 15 "ON". 6. PUSH PRESET. 7. PUSH RUN. 8. HALT 77B INDICATES GOOD CONFIGURATION. 9. LOAD AND CONFIGURE THE 16K SIO TTY DRIVER; THE 16K SIO PUNCH DRIVER (OPTIONAL); THE 16K SIO MAG TAPE DRIVER. 10. DUMP A CONFIGURED TAPE WITH THE 16K SIO DUMP (OPTIONAL). TO RUN MADIU 1. READY ALL EQUIPMENT. TURN THE PROTECT OVERRIDE SWITCH TO "OVERRIDE" ("ON" ON THE 2870). 2. STARTING MADIU - LOAD THE CONFIGURED MADIU TAPE (OR LOAD AND CON- FIGURE MADIU AND SIO DRIVERS). SET THE STARTING ADDRESS EQUAL TO 100 (OCTAL), CLEAR THE SWITCH REGISTER - PRESS PRESET AND RUN. NOTE: IF A MAG TAPE IS NOT TO BE USED (I.E., DISC-TO-DISC COPY ONLY) USE STARTING ADDRESS 120B. THIS WILL BYPASS THE REWIND AND AVOID A HALT 44B (SIO DRIVER HALT FOR UNIT NOT READY). 3. MESSAGES AND RESPONSES - MADIU HAS SEVERAL MESSAGES REQUIRING RESPONSES. **MESSAGE (FOR 7900) TYPE "LO" "DU" "VE" "CO" OR "TE" *MEANING - SYSTEM IS CONFIGURED FOR HP 7900 DISC. SPECIFY DESIRED OPERATION. *RESPONSES POSSIBLE: LO - LOAD MAG TAPE TO DISC (WITH AUTOMATIC VERIFY) DU - DUMP DISC TO MAG TAPE VE - VERIFY MAG TAPE AND DISC CO - COPY DISC TO DISC (WITH AUTOMATIC VERIFY) TE - TERMINATE (HALT 77B) **MESSAGE (FOR 2870) TYPE "LO" "DU" "VE" OR "TE" *MEANING - CONFIGURED FOR 2870 DISC - SPECIFY DESIRED OPERATION *RESPONSE - SAME AS FOR 7900 **MESSAGE SUBCHANNEL # ? SOURCE SUBCHANNEL # ? *MEANING - IF DUMP, LOAD OR VERIFY - MEANS WHAT DISC SUBCHANNEL IS TO BE USED. - IF COPY - MEANS WHAT DISC SUBCHANNEL IS THE SOURCE DISC *RESPONSE - ANY SUBCHANNEL FROM 0 TO 7 (ONE ASCII NUMBER, CR, LF). SEE 4 BELOW. **MESSAGE DESTINATION SUBCHANNEL # ? *MEANING - WHAT IS THE DESTINATION CHANNEL FOR THE DISC TO DISC COPY (COPY ONLY) *RESPONSE - ANY SUBCHANNEL FROM 0 TO 7 (ONE ASCII NUMBER, CR, LF.) **MESSAGE TAPE FILE # ? *MEANING - WHICH FILE IS TO BE USED ON THE MAG TAPE *RESPONSE - ANY NUMBER FROM 1 TO 7. THE FIRST PHYSICAL FILE ON MAG TAPE IS FILE #1. THE PROGRAM ASSUMES THAT THERE ARE N-1 FILES ALREADY ON THE TAPE FOR AN ENTRY OF N DURING A DUMP. DURING A LOAD, THE PROGRAM ASSUMES THAT THERE ARE N FILES (AT LEAST) ON THE TAPE. OF COURSE, DUMPING TO FILE N WILL DESTROY ALL FILES GREATER THAN N. NOTE: ALWAYS RESTART AT 100B IF A NEW TAPE IS LOADED OR THE TAPE IS MANUALLY MOVED. THIS WILL INSURE PROPER FILE COUNT. 4. DISC UNIT NUMBERS AND SUBCHANNEL NUMBERS TABLE: FIXED DISC REMOVEABLE DISC PHYSICAL DRIVE DRIVE # SUBCHANNEL # SUBCHANNEL # 1ST 0 0 1 2ND 1 2 3 3RD 2 4 5 4TH 3 6 7 USE THESE NUMBERS IN RESPONSE TO "SUBCHANNEL # ?" 5. AFTER MADIU IS RUN *BE SURE TO LABEL YOUR DISC AND MAGNIFY TAPES. *MAGNETIC TAPES SHOULD BE IDENTIFIED BY (1) SOURCE DISK TYPE, (2) DENSITY, (3) 7 OR 9 TRACK TAPE, (4) NUMBER OF FILES, AND (5) CONTENT OF EACH FILE. *BE SURE TO RETURN THE DISC PROTECT OVERRIDE SWITCH BACK TO "PROTECT" ("OFF" ON 2870). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: HLT 00B - DISC NOT READY (BITS 2 OR 6 SET) HLT O3B - TIME OUT ON DISC DATA FLAG. PUSH RUN TO GET STATUS IN "A" REGISTER. STATUS 31B= DEFECTIVE CYLINDER. HLT 04B - POWER FAIL HLT 05B - TIME OUT ON DISC COMMAND FLAG. PUSH RUN TO GET DISC STATUS IN "A" REGISTER. HLT 07B - DISC SEEK ERROR OR DATA PROTECT (BITS 8, 9 OR 10 SET). PUSH RUN TO GET DISC STATUS IN "A" REGISTER. HLT 10B - ANY DISC STATUS BIT SET EXCEPT 3 AND 4 AFTER A READ OR WRITE (CHECK OVERRIDE/PROTECT SWITCH). PUSH RUN TO GET STATUS IN "A" REGISTER. HLT 11B - SIO MAG TAPE DRIVER HLT (NO WRITE RING). HLT 13B - ILLEGAL CYLINDER STATUS (2ND WORD ON MAG TAPE) OR DURING COPY. HLT 16B - BAD CYLINDER STATUS DURING LOAD VERIFY (MAG TAPE STATUS (WORD 2) AND DISC READBACK STATUS DISAGREE). HLT 17B - EOF OR EOT ON MAG TAPE HLT 20B - MAG TAPE ERROR HLT 21B - BAD DATA VERIFY HLT 33B - MAG TAPE RECORD LENGTH WRONG, I.E., WRONG FORMAT FOR A LOAD. HLT 35B - CYLINDER COUNT UNEQUAL TO 203 HLT 36B - INCOMPLETE DATA TRANSFER FOR DISC CURRENT CYLINDER HLT 40B - MAG TAPE SIO DRIVER NOT LOADED HLT 44B - MAG TAPE SIO DRIVER HLT (7970) HLT 55B - THE CURRENT CYLINDER IS DEFECTIVE HLT 77B - ORDERLY HALT, PUSH RUN TO CONTINUE **MISCELLANEOUS: A. TO INSURE PROPER TAPE POSITIONING A REWIND IS INITIATED WHEN STARTING AT ADDRESS = 100B. B. ANY BACKWARD POSITIONING OF THE MAG TAPE RESULTS IN A REWIND THEN A FORWARD POSITION TO THE PROPER FILE #. C. UNLOADING, LOADING DISCS OR OPENING DISC DOORS MAY CAUSE STATUS TO THE CONTROLLER WHICH WILL HALT THE COMPUTER. AVOID SUCH CHANGES EXCEPT WHILE THE PROGRAM IS WAITING FOR THE RESPONSE TO THE OPERATION DESIRED MESSAGE. "DATA PROTECTED" PLATTERS CANNOT BE ACCESSED. D. VERIFICATION IS ACCOMPLISHED DURING THE LOAD AS FOLLOWS: * READ MAG TAPE RECORD (BUFFER 1) * WRITE ON DISC (FROM BUFFER 1) * READ DISC BACK (BUFFER 2) *COMPARE BUFFERS (1 AND 2) CYLINDER STATUS (PROTECTED, ETC.) IS ALSO VERIFIED. E. VERIFICATION DURING VERIFY IS AS FOLLOWS: * READ MAG TAPE RECORD (BUFFER 1) * READ DISC TRACK (BUFFER 2) * COMPARE BUFFERS (1 AND 2) CYLINDER STATUS IS COMPARED ALSO. F. NO VERIFICATION IS ACCOMPLISHED DURING A DUMP. A VERIFY IS RECOMMENDED FOLLOWING A DUMP. G. DISC TO DISC COPY IS VERIFIED AS IN THE LOAD FUNCTION. H. HALT 55 INDICATES A DEFECTIVE TRACK. THE TRACK NUMBER (OCTAL) IS IN THE "A" REGISTER. I. HALT 77B IS AN ORDERLY GOOD HALT. TO RESTART MADIU, PUSH RUN. J. ANY OTHER HALT OTHER THAN HLT 77B INDICATES A MALFUNCTION, FIX THE PROBLEM THEN RESTART AT P = 100B (OR 120B IF DISC COPY ONLY). K. MAG TAPE FORMAT (2 CHARACTERS/WORD (3 FOR 7 TRACK) 1ST WORD = NUMBER OF WORDS IN THE RECORD (SIO CHARACTERISTIC) 2ND WORD = 16 BIT DISC STATUS AFTER READING TRACK REST OF RECORD = DISC TRACK DATA X13801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: UTDMP **PROGRAM TITLE: UNIVERSAL MAGNETIC TAPE DUMP **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 3 **KEYWORDS: MAGNETIC TAPE DUMP **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM PROVIDES A FORMATTED DUMP OF MAG TAPE DATA. THE DATA MAY BE IN ANY FORMAT AND THE BLOCK SIZE MAY BE OF ANY PRACTICAL LENGTH. THE PROGRAM IS CONVERSATIONAL IN OBTAINING THE INFORMATION NEEDED FOR A JOB. (DUMPS ARE ON A PER-FILE BASIS). THE PROGRAM GIVES BOTH AN OCTAL AND AN ALPHANUMERIC REPRESENTATION OF THE DATA IN A CONVENIENT FORM. HARDWARE REQUIRED: 2100 CPU, 7900 DISC DRIVE, 7908B MAG TAPE DRIVE, TTY, AND LINE PRINTER DESIRABLE FOR OUTPUT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. LOAD :STORE, S, XXXXX, 5 (STORE TAPE IN A SOURCE FILE) :JFILE, XXXXX :PR,FTN4,2,99 (COMPILE) :PR, LOADR (LOAD) :STORE, P (STORE) 2. RUN :PR, UTDMP PROGRAM REQUESTS TAPE TO BE DUMPED AND PAUSES. OPERATOR MUST MOUNT TAPE. :GO PROGRAM REQUESTS FILE TO BE DUMPED. FIRST FILE ON TAPE IS NUMBER 1, ETC. PROGRAM PAUSES. :GO FOR NEXT FILE :STOP IF FINISHED **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X13901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: TIME OF DAY CLOCK **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: TIME **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: AFTER INITIALLY BEING SET TO THE CORRECT TIME, THIS ROUTINE FURNISHES THE TIME OF DAY ON DEMAND. UNITS ARE HOURS, MINUTES AND SECONDS. AN ADDITIONAL FEATURE, ELAPSED TIME CAN BE MEASURED WITHOUT INTERFERENCE WITH THE TIME-OF-DAY FUNCTION. THE CLOCK STOPS WHEN THE COMPUTER HALTS. ONE HP12539 TIME BASE GENERATOR IS REQUIRED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CLOCK IS ALWAYS TO BE LOADED BEFORE THE RELOCATABLE LIBRARY. TO INITIALIZE THE TIME OF DAY CLOCK, THE USER PROGRAM MUST: CALL SETUP WHEN THIS INSTRUCTION IS EXECUTED, THE CLOCK ROUTINE WILL PRINT: ENTER TIME (HRS:MIN:SEC:) AND THE OPERATOR WILL THEN ENTER THE TIME OF DAY PLUS A HALF MINUTE OR SO. THE OPERATOR THEN TYPES THE KEYS CR,LF, AND THE COMPUTER WILL HALT WITH: 102077 IN THE T REGISTER. WHEN THE USER PRESSES RUN, THE REAL TIME OF DAY WILL BE MAINTAINED BY THE CLOCK ENTRY POINT (NOT CALLABLE FROM THE USER PROGRAM). HALT OR PAUSE CEASES INCREMENTATION OF THE CLOCK. WHEN PROGRAM OPERATION IS RESUMED, CLOCK IS INCREMENTED FROM THE EXISTING VALUE. .CLOK MAINTAINS AN INTEGER CLOCK AT THIS ENTRY POINT NOT CALLABLE BY A USER PROGRAM. IT MAY BE SET OR CHECKED THROUGH THE USE OF STCLK AND RDCLK ENTRY POINTS. SEE SECTION 4.2.1 FOR OTHER POSSIBLE ENTRY POINTS. ENTRY POINT(S) CALL DATIM (IH,IM,IS) READS THE REAL TIME OF DAY. PARAMETER TYPE DESCRIPTION IH INTEGER SUBROUTINE ASSIGNS HOURS WHERE 0</=IH</=23 IM INTEGER SUBROUTINE ASSIGNS MINUTES WHERE 0</=IM</=59 IS INTEGER SUBROUTINE ASSIGNS SECONDS 0</=IS</=59 CALL HALT CEASES INCREMENTATION OF THE CLOCK AND RESETS IT TO ZERO. IT IS SIMILAR TO THE PAUSE STATEMENT IN THAT IT WAITS FOR THE COMPLETION OF ALL I/O OPERATIONS BEFORE HALTING THE COMPUTER. IN ADDITION, HOWEVER, IT CLEARS THE TIME OF DAY CLOCK AND INHIBITS INCREMENTATION OF THE BINARY CLOCK. NO MESSAGE IS WRITTEN ON THE TELEPRINTER WHEN THE HALT OCCURS. CALL STCLK (N) SETS THE CLOCK TO ZERO AND CAUSES IT TO BE INCREMENTED BY ONE EVERY (N*10) MILLISECONDS. PARAMETER TYPE DESCRIPTION N INTEGER N MUST BE AN INTEGER CONSTANT WHERE 1</=N</=32767 CALL RDCLK (M) ASSIGNS THE VALUE OF THE CLOCK TO THE INTEGER VARIABLE M. THE CLOCK CONTINUES TO BE INCREMENTED AT THE MOST RECENTLY SPECIFIED INTERVAL UNTIL RESET BY ANOTHER CALL TO STCLK. THE TIME OF DAY CLOCK LIBRARY CUSTOMERS WHO HAVE A TIME BASE GENERATOR HAVE CONTINUALLY REQUESTED A TIME OF DAY CLOCK ROUTINE FOR USE OUTSIDE THE WORLD OF THE 2018 EXECUTIVE SYSTEM. HEREIN IS CONTAINED DOCUMENTATION FOR THE BAILEY CLOCK ROUTINE. SINCE THIS IS A LIBRARY SUBROUTINE, IT SHOULD BE LOADED AFTER THE MAIN PROGRAM BUT BEFORE THE FORTRAN/ALGOL LIBRARY. THE SUB-PROGRAM IS CALLED CLOCK AND HAS ENTRY POINTS SETUP CLOCK .CLOK STCLK RDCLK DATIM HALT WHICH MAY BE CALLED FROM THE SOURCE PROGRAM. TO INITIALIZE THE TIME OF DAY CLOCK, THE USER PROGRAM MUST (FORTRAN) CALL SETUP OR (ASSEMBLY) JSB SETUP DEF (RETURN ADDRESS) WHEN THIS INSTRUCTION IS EXECUTED THE CLOCK ROUTINE WILL PRINT ENTER TIME (HRS: MIN: SEC:) AND THE OPERATOR WILL THEN ENTER THE TIME OF DAY PLUS A HALF MINUTE OR SO. THE OPERATOR THEN TYPES THE KEYS CR, LF, AND THE COMPUTER WILL HALT WITH 102077 IN THE T REGISTER. WHEN THE OPERATOR PRESSES THE RETURN BUTTON, THE REAL TIME OF DAY WILL BE MAINTAINED BY THE CLOCK ENTRY POINT (NOT CALLABLE FROM USER PROGRAM). AFTER THE CLOCK HAS BEEN INITIALIZED, REAL TIME OF DAY MAY BE READ BY MEANS OF A (FORTRAN) CALL DATIM (IH, IM, IS) OR (ASSEMBLY) JSB DATIM DEF (RETURN ADDRESS) DEF IH DEF IM DEF IS . . . THE ACTUAL ARGUMENTS ARE THREE INTEGER VARIABLES TO WHICH THE SUBROUTINE ASSIGNS VALUES OF THE TIME IN HOURS (0 TO 23), MINUTES (0 TO 59), AND SECONDS (0 TO 59). THE CLOCK IS INITIALLY SET BY MEANS OF A CALL SETUP. THE CLOCK CEASES TO BE INCREMENTED WHEN A HALT OPERATION IS EXECUTED. IF THE HALT OPERATION WAS A RESULT OF A CALL TO THE HALT SUBROUTINE, THE CLOCK IS RESET TO ZERO. ITS VALUE WILL REMAIN AT ZERO UNTIL SET THROUGH A CALL TO SETUP. IF THE HALT WAS DUE TO A PAUSE STATEMENT OR PRESSING OF THE HALT BUTTON ON THE CONSOLE, THE TIME IS UNCHANGED. WHEN PROGRAM OPERATION IS RESUMED, THE CLOCK IS INCREMENTED FROM THE EXISTING VALUE. THE BAILEY CLOCK ROUTINE MAINTAINS AN INTEGER CLOCK AT ENTRY POINT .CLOK (NOT CALLABLE BY A USER PROGRAM). IT MAY BE SET OR CHECKED THROUGH THE USE OF STCLK AND RDCLK SUBROUTINES. A (FORTRAN) CALL STCLK (N) OR (ASSEMBLY) JSB STCLK DEF (RETURN ADDRESS) DEF N . . . SETS THE CLOCK TO ZERO AND CAUSES IT TO BE INCREMENTED BY ONE EVERY (N*10) MILLISECONDS. THE N MUST BE AN INTEGER CONSTANT (1-32, = 767). (FORTRAN) CALL RDCLK (M) OR (ASSEMBLY) JSB RDCLK DEF (RETURN ADDRESS) DEF M ASSIGNS THE VALUE OF THE CLOCK TO THE INTEGER VARIABLE M. THE CLOCK CONTINUES TO BE INCREMENTED AT THE MOST RECENTLY SPECIFIED INTERVAL UNTIL RESET BY ANOTHER CALL TO STCLK. THE SUBROUTINE HALT IS USED TO HALT THE COMPUTER. IT IS SIMILAR TO THE PAUSE STATEMENT IN THAT IT WAITS FOR THE COMPLETION OF ALL INPUT/OUTPUT OPERATIONS BEFORE HALTING THE COMPUTER. IN ADDITION, HOWEVER, IT CLEARS THE TIME OF DAY CLOCK AND INHIBITS INCREMENTATION OF THE BINARY CLOCK. NO MESSAGE IS WRITTEN ON THE TELEPRINTER WHEN THE HALT OCCURS. THE FORMAT OF THE CALL IS: (FORTRAN) CALL HALT OR (ASSEMBLY) JSB HALT DEF (RETURN ADDRESS) IF THE HALT SUBROUTINE IS USED, THE TIME OF DAY CLOCK REMAINS SET TO ZERO (MIDNIGHT) UNTIL RESET THROUGH A CALL SET UP. IF THE PAUSE STATEMENT IS USED, OR IF THE HALT BUTTON ON THE COMPUTER CONSOLE IS PRESSED, THE TIME OF DAY CLOCK IS INCREMENTED WHEN THE PROGRAM OPERATION IS RESTARTED, BUT THE TIME WILL BE INCORRECT. INCREMENTATION CONTINUES WITH THE TIME WHEN THE HALT OCCURRED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X14001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: SYMBOLIC ALPHANUMERIC GENERATOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: PAPER TAPE LABEL **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: FURNISHING A MEANS OF LABELING A PROGRAM OR ROUTINE, THIS PROGRAM GENERATES A BLOCK-LETTERING LEADER OR TRAILER FOR A PUNCHED TAPE. A BUF-ASR-33/HIGH SPEED PUNCH OR BUF-ASR-35 IS REQUIRED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TO CONFIGURE THE GENERATOR: PUT THE ADDRESS OF THE BUFFERED TELEPRINTER IN THE A-REG PUT THE ADDRESS OF THE PUNCH (OR BUF-ASR-35) IN THE B-REG LOAD ADDRESS 2 AND PUSH RUN TO USE THE GENERATOR: SET THE TELEPRINTER ON LINE TURN ON THE PUNCH (ASR-35 ON KT) LOAD ADDRESS 100B, PUSH RUN, AND TYPE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X14101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: RUN-TIME DATA INPUT FOR BASIC **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: DATA MGMT PAPER TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: HP BASIC **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE TERMED SCANR, ALLOWS A PROGRAMMER TO FURNISH FREE-FIELD DATA TO A RUNNING BASIC PROGRAM THROUGH A PHOTOREADER OR TELEPRINTER, EMPLOYING THE NORMAL BASIC I/O DRIVERS. ANY NUMBER OF DATA ITEMS ARE TRANSFERRED INTO AN ARRAY SPECIFIED BY THE USER PROGRAM. THE SCANR ROUTINE, AN ASSEMBLY LANGUAGE MODIFICATION OF THE 20392A BASIC OPERATING SYSTEM, CHANGES THE ROUTINE NORMALLY USED TO SCAN A DATA STATEMENT SO THAT THE VALUES ARE READ FROM THE PHOTOREADER OR TELE- PRINTER. AFTER THE VALUES ARE PASSED TO THE USER PROGRAM, SCANR RESTORES THE BASIC OPERATING SYSTEM TO ITS ORIGINAL STATE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ASSEMBLE, CONFIGURE WITH PBS AND BASIC COMPILER. INPUT IS FREE-FIELD. ANY NUMBER OF DATA ITEMS ON A TAPE WILL BE ACCEPTED WHEN SEPARATED BY COMMAS AND TERMINATED BY A CARRIAGE RETURN. MAXIMUM RECORD LENGTH IS 72 CHARACTERS PER RECORD. ENTRY POINT(S): CALL (1,X,1,D) - PARAMETER TYPE DESCRIPTION 1 INTEGER SUBROUTINE REFERENCE NUMBER X REAL DATA VALUE PASSED TO HP BASIC THROUGH PHOTOREADER OR TELEPRINTER IN A RUNNING PROGRAM. 1 INTEGER SPECIFIES ONE INPUT VALUE - D REAL IF D>=0, THEN INPUT IS VIA THE TELEPRINTER. IF D<0, THEN INPUT IS VIA THE PHOTOREADER. CALL (1, A(1), N, D) PARAMETER TYPE DESCRIPTION A(1) REAL THE FIRST ELEMENT (INPUT VALUE) OF ARRAY "A" WHERE "A" IS DIMENSIONED "N". N INTEGER 0<N<3276 THIS CALL EXPECTS "N" INPUT VALUES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF A SYNTAX ERROR EXISTS IN THE DATA, OR IF A PARAMETER IS OUT OF RANGE, OR IF THE INPUT DEVICE IS NOT READER, AN "ERROR 18 IN LINE XX" IS PRINTED, AND BASIC RETURNS TO THE SYNTAX MODE. **MISCELLANEOUS: X14201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: BASIC PHOTOREADER DATA INPUT **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: DATA MGMT PAPER TAPE **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: HP BASIC **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ROUTINE ALLOWS A PROGRAMMER TO FURNISH FREE-FIELD DATA TO A RUNNING BASIC PROGRAM BY MEANS OF A PHOTOREADER. THE USER REQUESTS INPUT DATA BY MEANS OF AN INPUT STATEMENT. IF THE PHOTOREADER IS READY WHEN THE STATEMENT IS EXECUTED, DATA IS FURNISHED TO THE PROGRAM FROM THE PUNCHED TAPE IN THE PHOTOREADER. IF THE PHOTOREADER IS NOT READY (I.E., NO TAPE INSTALLED OR GATE DOWN), THE TELEPRINTER TYPES A QUESTION MARK AND DATA IS THEN ENTERED IN THE NORMAL MANNER FROM THE KEYBOARD. THE ROUTINE IS AN ABSOLUTE-ADDRESS MODIFICATION OF THE 20392A BASIC OPERATING SYSTEM. EQUIPMENT REQUIRED INCLUDES AT LEAST 8K OF CORE STORAGE, AND A PHOTO- READER WITH INTERFACE KIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE ABSOLUTE OBJECT PROGRAM, THEN LOAD PBS, BASIC HP20392A AND THE ABSOLUTE OBJECT PROGRAM IN THAT ORDER WITH BASIC BINARY LOADER AND CONFIGURE BY RUNNING PBS. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM ALLOWS THE USER TO ENTER DATA TO A RUNNING BASIC PROGRAM BY MEANS OF THE HIGH SPEED PHOTOREADER. THE USER REQUESTS INPUT DATA WITH AN INPUT STATEMENT. IF THE PHOTOREADER IS READY WHEN THE INPUT STATEMENT IS EXECUTED, DATA IS READ INTO THE PROGRAM FROM PAPER TAPE BY THE PHOTOREADER. IF THE PHOTOREADER IS NOT READY (I.E. NO TAPE OR GATE DOWN), A QUESTION MARK IS PRINTED ON THE TELETYPE, AND DATA IS ENTERED IN THE NORMAL MANNER FROM THE KEYBOARD. FORMAT OF THE DATA ON PAPER TAPE IS FREE-FIELD, WITH THE NUMBER OF DATA ITEMS PER RECORD DETERMINED BY THE NUMBER OF ARGUMENTS OF THE INPUT STATEMENT. MAXIMUM RECORD LENGTH IS 72 CHARACTERS. SPACES MAY BE USED TO SEPARATE DATA ITEMS WITHIN A RECORD, AND COMMENTS MAY APPEAR BETWEEN DATA ITEMS, PROVIDED THAT THE FIRST CHARACTER OF A RECORD IS NOT S. (S AS THE FIRST CHARACTER OF THE RECORD CAUSES TERMINATION OF EXECUTION.) THE COMMENTS MUST NOT THEMSELVES CONTAIN NUMBERS. DATA GENERATED BY A BASIC PRINT STATEMENT IS IN A FORMAT SUITABLE FOR READING BY AN INPUT STATEMENT. THIS SUBROUTINE CONSISTS OF THREE BASIC PARTS. THE FIRST PART MODIFIES THAT PART OF THE BASIC INTERPRETER USED TO EXECUTE ON INPUT STATEMENT SO THAT IT READS DATA FROM THE PHOTOREADER IF IT IS READY. THE SECOND PART MODIFIES THE RECORD PROCESSING SECTION OF THE BASIC INTER- PRETER SO THAT SPACES ARE COUNTED AS SIGNIFICANT WHEN AN INPUT RECORD IS BEING PROCESSED. THE THIRD PART IS A BASIC CALL SUBROUTINE WHICH ALLOWS THE USER TO EFFECTIVELY DELETE OR RESTORE THIS MODIFICATION BY A CALL FROM A BASIC PROGRAM. THE CALL STATEMENT DELETES THE MODIFICA- TION IF IT IS PRESENT OR RESTORES IT IF IT HAS BEEN DELETED. CALL (1) AFTER THE PROCEDURE GIVEN IN 4.1, THE MODIFICATIONS DESCRIBED IN 2.0 WILL BE IMPLEMENTED. THESE MODIFICATIONS MAY BE EFFECTIVELY DELETED AT ANY TIME BY THE CALL STATEMENT GIVEN ABOVE. A SUBSEQUENT CALL (1) RESTORES THE MODIFICATIONS. THE NEXT CALL (1) DELETES THEM AGAIN, ETC. USE OF THIS CALL PERMITS THE USER TO INPUT ISOLATED DATA ITEMS FROM THE KEYBOARD WHILE OBTAINING MOST OF THE DATA FROM A TAPE IN THE PHOTO- READER. THE INPUT STATEMENTS FOR KEYBOARD INPUT DATA ARE BRACKETED BY CALL (1) STATEMENTS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE DELAY THAT OCCURS BEFORE THE PRINTING OF THE QUESTION MARK ON THE TTY IS DUE TO THE TIME REQUIRED TO DETERMINE THE STATUS OF THE PHOTOREADER. IF THE USER DOES NOT WISH TO USE THE PHOTOREADER FOR DATA INPUT, THIS DELAY MAY BE ELIMINATED BY DELETING THE MODIFICATIONS WITH A CALL (1) STATEMENT. THIS SUBROUTINE REQUIRES A PARTICULAR VERSION OF THE BASIC INTERPRETER, BASIC HP20392A. WITH SOME MODIFICATIONS, IT COULD PROBABLY BE MADE TO WORK WITH OTHER VERSIONS OF BASIC. X14301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FORTRAN POWER FAIL LINK **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: FORTRAN SCHEDULING **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS DACE **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ROUTINE IS A RELOCATABLE FUNCTION WHICH, WHEN CALLED LINKS THE POWER-FAIL RESTART INTERRUPT TO A FORTRAN PROGRAM. THIS PERMITS THE PROGRAM TO BE RESTARTED WITHOUT MANIPULATION OF PANEL CONTROLS. SIMPLIFIED RESTART IS EXTREMELY USEFUL WHEN A COMPUTER WITHOUT HIGH- SPEED I/O DEVICES IS USED BY UNTRAINED PERSONNEL. EQUIPMENT REQUIRED IN THE POWER FAILURE AUTO-RESTART OPTION FOR THE COMPUTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ENTRY POINT(S) PWRFL CALL ROUTINE ASMB,R,B,L JSB PWRFL DEF *+1 SSA JMP CONT LINK ACCOMPLISHED . (RESTART RETURN) . . FTN,B,L IF (PWRFL)100,200 100 (RETURN AFTER LINKING) 200 (RETURN AFTER RESTART) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE POWER FAIL LINK POINT MAY BE MOVED DURING PROGRAM EXECUTION BY REPEATED CALLING OF THE POWER FAIL ROUTINE. X14401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: CORE PUNCH IN BBL FORMAT **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: PAPER TAPE DUMP MEMORY **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SELF-CON **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM PUNCHES SELECTED AREAS OF CORE IN A FORMAT WHICH CAN BE RELOADED BY THE BASIC BINARY LOADER. THE USER INPUTS THE NECESSARY PARAMETERS THROUGH THE SWITCH REGISTER AT RUN TIME. PROVISIONS EXIST TO ALLOW PUNCHING AN ABSOLUTE TAPE WHICH WILL RELOAD TO ANOTHER PART OF THE CORE. THIS FEATURE IS USEFUL FOR MOVING DATA. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM PUNCHES CORE IN BBL-FORMAT. IT IS DRIVEN BY AN INTERNAL TABLE. EACH 32-BIT TABLE ENTRY DEFINES ONE AREA TO BE PUNCHED. THE TABLE MAY CONTAIN AN ARBITRARY NUMBER OF ENTRIES AND IS RECONFIGURABLE WITHOUT RE-ASSEMBLY. PROVISIONS EXIST TO ALLOW PUNCHING AN ABSOLUTE TAPE WHICH WILL LOAD ANYWHERE. THE FEATURE IS USEFUL FOR MOVING DATA AREAS AND, IN FACT, FOR CREATING NEW PNCH-PROGRAM-TAPES WHICH LOAD ANYWHERE. PNCH, PUNCHES CORE IN 128 WORD BBL FORMAT RECORDS. IT IS DRIVEN BY THE PNCHX TABLE TO ALLOW MULTI-BLOCK OUTPUT. PROVISIONS EXIST TO ALLOW PUNCHING AN ABSOLUTE TAPE WHICH WILL LOAD ANYWHERE. THIS FEATURE IS USEFUL FOR MOVING DATA AREAS AND, IN FACT, FOR CREATING NEW PNCH- PROGRAM-TAPES WHICH LOAD ANYWHERE. CONFIGURATION: THE PNCH-PROGRAM ORG THE BBL-RECORD SIZE, THE I/O CHANNEL, AND THE PNCHX TABLE ARE DEFINED AT ASSEMBLY TIME. THESE MAY BE ARBITRARILY REDEFINED IN CORE AND A NEW PNCH-PROGRAM-TAPE PUNCHED BY PNCH ITSELF (SEE SPECIAL USAGE #2 DESCRIBED BELOW). EDIT LINE #8 PNCH EQU 12B I/O CHANNEL OF PUNCH TO CONFIGURE TO YOUR SYSTEM. INSTRUCTIONS: 1. LOAD PNCH-PROGRAM-TAPE WITH BBL 2. SETUP PNCHX TABLE WITH ENTRIES IN ONE OF THE FOLLOWING FORMATS (SEE EXAMPLE BELOW): DEF FIRST (PUNCHES FIRST THROUGH LAST AND DEF LAST+1 GOES TO NEXT TABLE ENTRY). DEF XXXXX (CAUSES JMP TO ADDR). DEF ADDR,I DEF BBBBB,I (CAUSES HLT 77B. IF RUN IS PUSHED, THE DEF AAAAA BA-REG IS INTERPRETED AS 32-BIT ENTRY). 3. LOAD P-REGISTER WITH PNCH STARTING ADDRESS (I.E., THE LOCATION OF THE SYMBOL "PNCH", THEN PUSH RUN. THE PNCHX TABLE WILL BE PROCESSED ENTRY BY ENTRY. NORMAL USAGE (PUNCHING DATA & PROGRAMS): ASSUME PNCH IS LOADED AT 2000 (SO PNCHX STARTS AT 2074), THEN TO PUNCH BASEPGE (2-1777) EXCEPT SIO AREA (100-107), LOAD SWREG: THEN PUSH: 2074 LOAD ADDR (PNCHX=PNCH+74) 2 LOAD MEM (PUNCH 2-77) 100 " 110 " (PUNCH 110-1777) 2000 " 100000 " (HLT, THEN JMP TO 2000) 102000 " NOW LOAD ADDRESS 2000 AND PUSH RUN. MULTIPLE COPIES OF THE PUNCHED TAPE ARE OBTAINED BY MANUALLY GENERATING FEEDER AND PUSHING RUN WHEN THE HLT 77 IS ENCOUNTERED. SPECIAL USAGE #1 (MOVING DATA): PNCH MAY BE USED SO THAT THE ABSOLUTE TAPE PUNCHED WILL BBL-LOAD INTO AN ARBITRARY LOCATION. TO DO THIS, SET PNCHO TO THE DESIRED ADDRESS INCREMENT BEFORE STEP 3 ABOVE. EG, ASSUME PNCH IS LOADED AT 2000 (SO PNCHO IS AT 2072 AND PNCHX IS AT 2074), THEN TO PUNCH CORE FROM 3000-4600 SO IT WILL LOAD BACK INTO 4000-5600, LOAD ADDRESS 2072 WITH: ABS 1000B TARGET MINUS SOURCE ADDRESS AND ADDRESSES 2074-2076 WITH THE FOLLOWING: OCT 2000,3061 PUNCH 2000-3600 OCT 100000 THEN HALT SPECIAL USAGE #2 (MOVING PROGRAMS): PNCH MAY BE USED TO BOOTSTRAP ITSELF TO ANOTHER PAGE. LOCATION PNCHX-1 IN THE TARGET TAPE MUST BE MODIFIED, HOWEVER, TO POINT TO THE NEW PNCHX TABLE. IN THIS CASE, AND IN GENERAL WHEN PROGRAMS ARE "RELOCATED", PNCHO IS AN INTEGRAL NUMBER OF PAGES (I.E., BITS 9-0 ARE ZERO) SO THAT 10-BIT ADDRESS INSTRUCTIONS WILL WORK. ANY 16-BIT ADDRESS (I.E., DEF'S LIKE PNCHX-1) MUST BE MODIFIED MANUALLY. EG, ASSUME PNCH (AT 2000) IS TO BE MOVED TO HIGHCORE (AT 16000). LOAD ADDRESS 2072 WITH OCT 14000 TARGET MINUS SOURCE ADDRESS AND ADDRESS 2074-2100 OCT 102000,2100 HLT, THEN PUNCH 2000-2077 OCT 116000,16100 HLT, THEN PUNCH 16000-16077 OCT 100000 HLT, ALL DONE. WHEN FIRST HLT OCCURS, PUSH RUN. USE BBL TO LOAD TAPE JUST PUNCHED. LOAD ADDRESS 16072-16073 WITH OCT 00000,16074 AND, IF DESIRED, SET THE PNCHX TABLE AT 16074 WITH ANYTHING DESIRED. RESTART PNCH AT 20000. WHEN FIRST HLT OCCURS, CLEAR BA AND PUSH RUN TWICE. THE PNCH-PROGRAM-TAPE WILL BE PUNCHED. ENTRY POINTS(S) ADDRESS SYMBOL PNCH STARTING ADDRESS (TYPICALLY 2000B) PNCH+74 PNCHX BEGINNING OF PNCH TABLE PNCH+73 ----- DEF TO PNCHX PNCH+72 PNCHO OFFSET, TARGET ADDRESS MINUS SOURCE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SINCE THE PROGRAM TAPE IS ONLY ABUT ONE FOOT LONG, IT IS CONVENIENT TO HAVE SEVERAL VERSIONS ON ONE TAPE, FOR EXAMPLE, ONE WHICH LOADS AT 100B, 2000B, 17600B, ETC., OR ONE WHICH SPRINGLOADS (VIA PNCHX TABLE) TO PUNCH VARIOUS SEGMENTS OF CORE. X14501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: OCTAL ASSEMBLY PROCESSOR AND UTILITY SYSTEM **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: ASSEMBLER **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SELF-CON **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: OCTAPUS IS A TROUBLESHOOTING AID WHICH ELIMINATES TIME CONSUMING TOGGLING FROM THE SWITCH REGISTER. IT IS A SELF-CONFIGURING, SELF- CONTAINED PROGRAM RESIDING WITHIN THE BOUNDS OF A SINGLE PAGE IN CORE. COMMUNICATION IS CONVERSATIONAL THROUGH THE TELEPRINTER. THE FOLLOWING FUNCTIONS CAN BE PERFORMED: ASSEMBLY INTO CORE, PUNCH ABSOLUTE TAPE FROM CORE, LOAD ABSOLUTE TAPE TO CORE, VERIFY ABSOLUTE TAPE TO CORE, LIST MEMORY BOUNDS OF ABSOLUTE TAPE, DUMP CORE TO TELEPRINTER (OCTAL AND INVERSE ASSEMBLY), JUMP TO ANY LOCATION IN CORE, AND SEARCH CORE FOR ANY OCTAL VALUE. IN ADDITION, IT PROVIDES THE CAPABILITY OF HANDLING EAU INSTRUCTIONS, TO REVERSE THE SKIP SENSE OF ASG INSTRUCTIONS, TO DO AN INVERSE ASB. OF A BINARY TAPE WITHOUT LOADING IT, AND TO RELOCATE SECTIONS OF CORE EITHER ONLINE OR BY THE PRODUCTION OF A BINARY TAPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ASSEMBLE AND LOAD OCTAPUS-C: SET THE TTY SELECT CODE IN THE S-REGISTER, 2 IN P-REGISTER AND PRESS RUN. IN RESPONSE TO QUESTIONS SUPPLY THE SELECT CODES FOR PAPER-TAPE READER, PUNCH AND LINE PRINTER IF AVAILABLE (FORMAT 3). TTY WILL PRINT "*** OCTAPUS-C *** ?" AND WAIT FOR CONTROL COMMANDS. AT THIS STAGE A CONFIGURED TAPE MAY BE PUNCHED OR THE PROGRAM CAN BE SELF-RELOCATED TO ANOTHER PAGE (SEE EX 1: 14000 IS COMPATIBLE WITH 8K BASIC). THE SUBSEQUENT ENTRY POINT TO THE PROGRAM IS ITS HEAD (4000B OR NEW RELOCATED ORIGIN). THE FOLLOWING CONTROL COMMANDS MAY BE USED TO PERFORM THE FUNCTIONS DESCRIBED. CONTROL + A ASSEMBLY THE TTY ASKS FOR A STARTING ADDRESS (FORMAT 3), REPRINTS IT AND WAITS FOR MNEUMONIC CODE AND OPERAND TO BE ASSEMBLED INTO THAT LOCATION. THE INSTRUCTIONS ARE TYPED IN FORMAT 1 AND ARE SUBJECT TO THE FOLLOWING RESTRICTIONS: 1. ONLY MACHINE INSTRUCTIONS AND THE PSEUDO-INSTRUCTION OCT (FOR OCTAL CONSTANTS) MAY BE GIVEN. ANY OTHER WILL PRODUCE AN "OPCODE ERROR" MESSAGE. 2. ONLY ONE INSTRUCTION IS ALLOWED PER LINE, EXCEPT ,RSS WHICH MAY BE APPENDED TO ANY ASG INSTRUCTION. 3. THE INSTRUCTION CODE MUST BE FOLLOWED BY EITHER A CR IF NO OPERAND EXISTS, OR BY A SINGLE SPACE FOLLOWED BY THE OPERAND WHICH MUST BE OCTAL (1 TO 6 DIGITS - NO B). 4. ,I AND ,C MAY BE APPENDED TO THE OPERANDS OF MGR + 10G INSTRUCTIONS RESPECTIVELY. 5. SINGLE WORD EAU INSTRUCTIONS WITH 16 SHIFTS SHOULD BE INPUT AS HAVING ZERO SHIFTS (AND WILL BE SIMILARLY INVERSELY ASSEMBLED). SWP IS NOT RECOGNIZED. 6. TWO-WORD EAU INSTRUCTIONS MUST BE INPUT AS TWO WORDS, THE FIRST BEING AN INSTRUCTION MNEUMONIC, AND THE SECOND, THE ADDRESS. THE ASSEMBLY ADDRESS MAY BE CHANGED AT ANY TIME BY INPUTTING AN OBLIQUE FOLLOWED BY THE NEW ADDRESS. THE ESCAPE KEY WILL RECOMMENCE ANY LINE. THE RUBOUT KEY WILL ABORT ASSEMBLY AND RETURN TO THE COMMAND REQUEST STATE. PRESSING CONTROL + C WILL CAUSE THE PRINTING OF THE CONTENTS OF THE CURRENT ADDRESS IN OCTAL AND IN MNEUMONIC FORM IF INTERPRETABLE AS SUCH. CONTROL + D OCTAL DUMP + INVERSE CAUSES TTY TO PRINT "DUMP RANGE?" AND THE OPERATOR RESPONDS WITH A STARTING AND ENDING LOCATION IN FORMAT 2. THE CONTENTS OF ALL LOCATIONS INCLUSIVE OF THE SPECIFIED ADDRESS ARE THEN PRINTED IN OCTAL TOGETHER WITH THEIR INSTRUCTION MNEUMONICS IF INTERPRETABLE. CONTROL + P PUNCH CAUSES TTY TO PRINT PUNCH? THE OPERATOR SPECIFIES A RANGE OF MEMORY IN FORMAT 2, AND A BINARY (BBL COMPATIBLE) TAPE OF THE CONTENTS OF THOSE LOCATIONS IS PUNCHED. CONTROL + T LOAD TAPE LOADS TAPE IN READER INTO CORE PRINTS "*EOT" IF SUCCESSFUL "CHECKSUM" FOR CHECKSUM FAILURE "ADDRESS=XXX" IF ATTEMPT MADE TO OVERLAY OCTAPUS-C CONTROL + V VERIFY COMPARES TAPE IN READER & CORE, & PRINTS OUT ANY LOCATIONS AND THEIR CONTENTS WHERE THE TAPE IS DIFFERENT. CONTROL + B BOUND PRINTS LOADING ADDRESS DESTINATION OF EACH BINARY TAPE SECTION. CONTROL + I INVERSE OF TAPES PRINTS DUMP + INVERSE (AS FOR DUMP ROUTINE) OF BINARY TAPE WITHOUT LOADING IT. CONTROL + R RUN TTY ASKS FOR ADDRESS (FORMAT 3), AND WILL TRANSFER CONTROL AND START RUNNING PROGRAM AT THE SPECIFIED ADDRESS. CONTROL + S SEARCH IN REPLY TO "SEARCH FOR?", GIVE OCTAL CODE (FORMAT 3) IN REPLY TO "RANGE?" , GIVE RANGE (FORMAT 2) THE ADDRESSES OF ALL LOCATIONS CONTAINING THE CODE IN THE SPECIFIED RANGE WILL BE PRINTED. CONTROL + L RELOCATE IN REPLY TO "RELOCATE?", THE USER GIVES THE SECTION TO BE RELOCATED (FORMAT 2). THE MESSAGE "NEW ORIGIN?" CALLS FOR THE NEW STARTING ADDRESS FOR THE SECTION (FORMAT 3). THE MESSAGE "ADDRESSES OF POINTERS?" (TERM.BY 0)" CALLS FOR THE ADDRESS OR ADDRESSES OF ANY LOCATIONS IN THE SECTION THAT ARE USED FOR INDIRECT ADDRESSING: THE PROGRAM EVALUATES WHETHER THESE NEED ALTERING (IF LOCATION POINTED TO IS IN SECTION BEING RELOCATED) OR NOT. THESE ADDRESSES MAY BE INPUT EITHER SINGLY, (FORMAT 3) OR IN BLOCKS, USING FORMAT 2 (SEE EXAMPLES). THE LIST MUST BE TERMINATED (OR IF NULL LIST) BY ZERO. IF THE SECTION IS BEING RELOCATED TO A DIFFERENT PART OF A PAGE, SO THAT MEMORY REFERENCE INSTRUCTIONS NEED ALTERATION, THE PROGRAM ASKS "CONSTANTS?". REPLY BY INPUTTING THE ADDRESSES OF ANY CONSTANTS, IN PARTICULAR ANY THAT MIGHT APPEAR TO BE A MRG OR EAG INSTRUCTION, SINGLY OR IN BLOCKS AS FOR THE POINTERS. THE CONSTANT BLOCKS MAY (BUT NEED NOT) INCLUDE THE POINTER ADDRESS. AGAIN TERMINATE BY ZERO. A BINARY TAPE WILL THEN BE PUNCHED, THE MESSAGE "LAST WORD = XXX" GIVEN AND THE PROGRAM RETURNS TO THE "?" INPUT REQUEST MODE. OPTION: IF SWITCH REGISTER BIT ZERO IS SET ON, THE RELOCATION WILL BE DONE ON-LINE AND THE MESSAGE "LAST WORD=XXX" GIVEN WHEN FINISHED. CAUTION: THIS SHOULD NOT BE USED TO MOVE A SECTION OF PROGRAM DOWN WHERE IT WILL OVERLAY ITSELF BEFORE ALL OF IT HAS BEEN RELOCATED. PUNCH A TAPE, OR MOVE TO A DIFFERENT PAGE AND THEN BACK. NOTES ON RELOCATING 1. THE PROGRAM DOES NOT GENERATE INDIRECT ADDRESSING IF RELOCATION CAUSES AN ADDRESSED LOCATION TO RESIDE IN CORE ON A DIFFERENT PAGE FROM THE INSTRUCTION. A "PAGE ERROR, LINE NUMBER" MESSAGE IS GIVEN, THE PROGRAM BEING LEFT IN THE ASSEMBLY MODE. 2. THE WORD EAU INSTRUCTIONS ARE HANDLED AUTOMATICALLY: IT IS NOT NECESSARY TO DESIGNATE THE SECOND WORD AS A POINTER. 3. WHENEVER A SECTION OF MEMORY IS RELOCATED, ALL JUMPS AND REFERENCES TO IT FROM OUTSIDE THE SECTION BECOME INVALID. THESE MAY BE ADJUSTED MANUALLY (SEE EX 2A) OR THE RELOCATION CAN OFTEN BE DONE IN TWO STAGES (SEE EX 2B). FIRST SHIFT ALL THE PROGRAM INVOLVED. THIS WILL UPDATE THE REFERENCING INSTRUCTIONS. THEN SHIFT BACK ALL THE PROGRAM EXCEPT THE SECTION DESIRED TO BE RELOCATED. 4. WHEN MOVING A SECTION OF THE PROGRAM TO ANOTHER PAGE, INSTRUCTIONS WHICH REFERENCE OTHER UNMOVED LOCATIONS BECOME INVALID. THIS MAY BE DELIBERATE IF A TWO-STAGE RELOCATION IS BEING PERFORMED. AS A WARNING OF THIS CONDITION, BITS 12-14 OF THE SWITCH REGISTER ARE SET ON. GENERAL OCTAPUS-C DOES NOT USE THE INTERRUPT SYSTEM. ANY PROCESS MAY BE ABORTED BY SETTING SWITCH REGISTER BIT 15 ON IF PRINTING IS OCCURRING OR BY PRESSING THE RUBOUT KEY IF THE KEYBOARD IS LIVE. TTY LIST OUTPUT MAY BE DIVERTED TO THE LINE PRINTER BY SETTING SWITCH REGISTER BIT 1 ON. OUTPUT RETURNS AUTOMATICALLY TO THE TTY WHEN THE LISTING PROCESS IS COMPLETE. THE POINTER AND CONSTANT TABLE IS BUILT UP FROM LOCATION 6161B(+N000B, N EVEN, FOR DIFFERENT ORIGIN). ONE WORD IS REQUIRED FOR EACH CONSTANT OR POINTER. ALTHOUGH OCTAPUS-C WILL HANDLE EAU INSTRUCTIONS, IT DOES NOT REQUIRE AN EAU FOR ITS OPERATION. FORMATS CR REPRESENTS CARRIAGE RETURN KEY FORMAT I CLA CR SZA,RSS CR LDA 7233 CR LDB 7234,I CR FORMAT II XXXX,YYYY CR IMPLIES ALL LOCATIONS FROM XXXX TO YYYY INCLUSIVE. FORMAT III XXXX CR A SINGLE OCTAL VALUE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X14601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MAGNETIC TAPE DUMP UTILITY **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: MAGNETIC TAPE DUMP PAPER TAPE **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: BCS MTS **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM ACCEPTS ASCII PAPER TAPE OR IBM 029 PUNCHED CARDS AS INPUT AND DUMPS IMAGES TO AN OS/360 COMPATIBLE 9-TRACK MAG TAPE. OUTPUT MAY BE ASCII OR EBCDIC CODE, STANDARD LABELED OR UNLABELED MAG TAPES WITH FIXED OR VARIABLE BLOCKED RECORDS. IT OPERATES UNDER CONTROL OF BCS. EQUIPMENT REQUIRED INCLUDES 16K CORE, ANY HP PHOTOREADER OR HP2761 CARD READER, AND AN HP7970 NINE TRACK MAGNETIC TAPE UNIT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE MAIN PURPOSE OF THE ROUTINE IS TO WRITE MAGNETIC TAPE FILES WHICH ARE COMPATIBLE WITH THE IBM SYSTEM/360 OPERATING SYSTEMS. LABELS: - THE TAPES CREATED WOULD NORMALLY HAVE IBM SYSTEM/360 OPERATING SYSTEM (OS/360) STANDARD LABELS (DOWNWARD COMPATIBLE), ALTHOUGH UNLABELED TAPES CAN BE CREATED. - MULTIPLE FILES PER REEL ARE SUPPORTED. MULTIPLE REEL FILES ARE NOT SUPPORTED. - ASCII LABELS SUPPORTED IN OS/360 (RELEASE 20 AND ABOVE) ARE NOT SUPPORTED. RECORD FORMATS: - FIXED BLOCKED (FB) AND VARIABLE BLOCKED (VB) RECORD FORMATS ARE SUPPORTED. - THE BLOCKING FACTOR MAY BE ONE, ALTHOUGH THE LABELS WILL STILL INDICATE BLOCKED RECORDS. DATA FORMATS: - THE PROGRAM ASSUMES THAT THE INPUT DATA IS CODED IN HP COMPATIBLE ASCII CODE (ASCII) OR IBM COMPATIBLE 029 KEYPUNCH CODE. - THE OUTPUT DATA CODE WILL EITHER BE THE INTERNAL FORMAT (ASCII) OR WILL BE TRANSLATED TO THE IBM EXTENDED BINARY-CODED-DECIMAL INTERCHANGE CODE (EBCDIC) EQUIVALENT OF THE INTERNAL REPRESEN- TATION. FEATURES AND RESTRICTIONS: - PROGRAM ASSUMES NINE TRACK MAGNETIC TAPE WITH DENSITY OF 800 BPI. - NO EDITING OF THE INPUT DATA RECORDS IS PERFORMED. - MAGNETIC TAPE RECORDS SHORTER THAN EIGHTEEN BYTES (NINE HP WORDS) CAN BE PRODUCED BUT ARE NOT SUPPORTED BY IBM HARDWARE/OS. - THE INPUT RECORDS MUST BE COMPATIBLE WITH THE STANDARD HP BASIC CONTROL SYSTEM (BCS) UNIT RECORD INPUT DRIVERS. - THIS VERSION HAS THE RESTRICTION THAT THE LOGICAL RECORD LENGTH MUST BE AN EVEN NUMBER OF BYTES. - VARIABLE BUFFER ALLOCATION IS MADE AND THEREFORE BLOCK SIZES ARE RESTRICTED ONLY BY THE AMOUNT OF CORE STORAGE AVAILABLE (APPROXIMATELY 7500 BYTES ON A 16K WORD COMPUTER DEPENDENT UPON THE CONFIGURATION OF THE OPERATING ENVIRONMENT). OPERATING PROCEDURES: - USE STANDARD ALGOL AND ASSEMBLER COMPILATION METHODS, AND PRODUCE A BCS CONFIGURED ABSOLUTE MODULE. - LOAD THE ABSOLUTE MODULE (STARTING ADDRESS 000002 OCTAL). - THE FOLLOWING MESSAGES WILL APPEAR ON THE CONSOLE TELEPRINTER: RECFM - F OR V ? (REPLY: F FOR FB RECORDS V FOR VB RECORDS) LRECL = ? (REPLY: N WHERE N IS THE MAXIMUM LOGICAL RECORD LENGTH OF THE INPUT (OUTPUT) RECORDS) BLKSIZE = ? (REPLY: M WHERE M IS THE DESIRED BLOCK SIZE OF THE OUTPUT RECORDS) NOTE: FOR FB RECORDS THE LOGICAL RECORD LENGTH SPECIFIED MUST BE AN EVEN MULTIPLE OF THE BLOCK SIZE SPECIFIED. FOR VB RECORDS THE LOGICAL RECORD LENGTH INCLUDES A FOUR-BYTE RECORD DESCRIPTOR WORD (RDW). THE MINIMUM BLOCK SIZE IS FOUR BYTES GREATER THAN THE LOGICAL RECORD LENGTH. I/O UNIT REF. #=IN,OUT ? (REPLY: I,J WHERE I AND J ARE THE UNIT REFERENCE NUMBERS (BASE TEN) OF THE INPUT AND OUTPUT UNITS RESPECTIVELY) OS/360 LABELS ? (REPLY: YES IF OS/360 STANDARD LABELS ARE DESIRED NO IF AN UNLABELED TAPE IS DESIRED FILE # = (REPLY: I WHERE I IS THE NUMBER OF THE FILE TO BE CREATED) NOTE: WHEN POSITIONING THE MAGNETIC TAPE VOLUME TO THE SPECIFIED FILE, THE PROGRAM ASSUMES THAT ALL FILES OF THE VOLUME HAVE OS/360 STANDARD LABELS OR THAT ALL FILES ARE UNLABELED AS SPECIFIED IN A REPLY ABOVE. IF STANDARD OS/360 LABELS HAVE BEEN SPECIFIED THEN THE FOLLOWING MESSAGES WILL APPEAR ON THE CONSOLE TELEPRINTER: VOLUME=SER-XXXXXX ? (REPLY: THE SIX CHARACTER IDENTIFICATION CODE ASSIGNED TO THE VOLUME) DSNAME = ? (REPLY: THE RIGHTMOST SEVENTEEN CHARAC- TERS OF THE DATA SET NAME) CREATION DATE - YYDDD ? (REPLY: THE YEAR AND DAY OF THE YEAR WHERE YY=YEAR (00-99) AND DAY (001-366)) EXPIRATION DATE = YYDDD ? (REPLY: THE YEAR AND DAY OF THE YEAR WHEN THE DATA SET MAY BE SCRATCHED OR OVERWRITTEN AS ABOVE) THE FOLLOWING MESSAGE WILL APPEAR ON THE CONSOLE TELEPRINTER: TRANSLATE ASCII TO EBCDIC ? (REPLY: YES IF TRANSLATION IS DESIRED NO IF NO TRANSLATION DESIRED) - THE FOLLOWING MESSAGE MAY APPEAR ON THE CONSOLE TELEPRINTER: **UNRECOGNIZED (RESPONSE: RE-ENTER THE CORRECTED REPLY) **LRECL MUST BE AN EVEN NUMBER OF BYTES (RESPONSE: RE-ENTER THE CORRECTED REPLY) **MUST BE <- XXX (RESPONSE: RE-ENTER THE CORRECTED REPLY) **INVALID BLOCKING FOR (RESPONSE: RE-ENTER THE CORRECTED LRECL AND (F OR V) FORMAT RECORDS BLKSIZE PARAMETERS) **INVALID INPUT DEVICE (RESPONSE: THE UTILITY EXPECTS A DEVICE WHOSE EQT EQUIPMENT TYPE CODE IS @17 OR LESS) **INVALID OUTPUT DEVICE (RESPONSE: THE UTILITY EXPECTS A NINE TRACK 800 BPI MAGNETIC TAPE UNIT WHOSE EQT EQUIPMENT TYPE CODE IS @21, @22, OR @23) **LOAD MAGNETIC TAPE PAUSE (RESPONSE: READY THE MAGNETIC TAPE UNIT AND PUSH RUN ON COMPUTER) UNIT PUSH RUN ON COMPUTER) **END OF MAGNETIC TAPE** (RESPONSE: THE FILE HAS BEEN TRUNCATED THE LAST FULL BLOCK AND THE VOLUME CLOSED.) - THE FOLLOWING MESSAGE WILL APPEAR ON THE CONSOLE TELEPRINTER TO INDICATE THAT AN END-OF-FILE CONDITION EXISTS ON THE INPUT UNIT: *EOT (REPLY: /C TO INDICATE THAT THIS IS NOT THE END OF THE INPUT DATA FILE AND THAT THE DEVICE IS READY /E TO INDICATE THAT THIS IS THE END OF THE INPUT DATA FILE) - THE FOLLOWING MESSAGE WILL APPEAR ON THE CONSOLE TELEPRINTER WHEN THE MAGNETIC TAPE FILE HAS BEEN CLOSED: **XXXX BLOCKS WERE WRITTEN** STOP ENTRY POINT(S) "GET" - INITIATES THE TRANSFER OF ASCII CHARACTERS INTO A BUFFER FROM A UNIT RECORD INPUT DEVICE DEFINED BY A BCS DRIVER IN .IOC. "STATG" - CHECKS THE STATUS OF THE PREVIOUS DATA TRANSFER INITIATED WITH "GET" "TRANS" - TRANSLATES BOTH 7-BIT CHARACTERS OF EACH WORD OF A BUFFER ACCORDING TO A USER SUPPLIED TRANSLATE TABLE NAMED "TRTAB" "PUT" - INITIATES THE TRANSFER OF DATA FROM A BUFFER TO A MAGNETIC TAPE UNIT DEFINED BY A BCS DRIVER IN .IOC. "STATP" - CHECKS THE STATUS OF THE PREVIOUS DATA TRANSFER INITIATED WITH "PUT" "ALOC" - ALLOCATES THE MAXIMUM BUFFER SIZE AVAILABLE IN MEMORY FOR THE INPUT/OUTPUT OPERATIONS "IEQT" - ISOLATES THE EQUIPMENT TYPE CODE OF A SPECIFIED UNIT REFERENCE NUMBER "LOCAL" - DETERMINES WHETHER A SPECIFIED UNIT IS IN LOCAL MODE INTERNAL PROCEDURES "ENDBLOCK" - HANDLES THE TRANSFER OF A BLOCK OF DATA TO MAG TAPE. "CLOSE" - CLOSES THE MAGNETIC TAPE FILE. "OUTLAB" - TRANSLATES AND WRITES TO MAGNETIC TAPE THE 80 BYTE OS/360 LABEL INFORMATION "HDREOF" - FORMATS THE 80 BYTE OS/360 HEADER AND TRAILER LABELS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: MODIFICATION HINTS: - DIFFERENT INPUT/OUTPUT CODES CAN BE SUPPORTED BY CHANGING ONLY THE TRANSLATE TABLE ("TRTAB") ASSUMING THAT THE BCS INPUT DRIVER WILL SUPPLY A UNIQUE MAPPING FUNCTION OF THE INPUT DATA. - WITH VB RECORDS OS/360 WILL ACCEPT PHYSICAL RECORDS THAT ARE LONGER THAN THE BLOCK SIZE SPECIFIED IN THE BLOCK DESCRIPTOR WORD (BOW) THE REMAINDER OF THE BLOCK WILL BE IGNORED. BY MINOR MODS IT IS POSSIBLE TO ACCEPT LOGICAL RECORDS HAVING FEWER THAN EIGHTEEN BYTES. THIS IS NOT TRUE FOR FB RECORDS. - TO ACCEPT LOGICAL RECORDS HAVING AN ODD NUMBER OF BYTES WOULD ENTAIL A MAJOR RE-WRITE OF THE PROGRAMS. LABELS -IBM SYSTEM/360 OPERATING SYSTEM TAPE LABELS FORM C28-6680 RECORD FORMATS -IBM SYSTEM/360 OPERATING SYSTEM SUPERVISOR AND DATA MANAGEMENT SERVICES FORM C28-6646 DATA FORMATS -IBM SYSTEM/360 OPERATING SYSTEM PRINCIPLES OF OPERATION FORM A22-6821 -HEWLETT PACKARD BASIC CONTROL SYSTEM REFERENCE MANUAL FORM 02116-9017 OPERATING PROCEDURES -HEWLETT PACKARD HP ALGOL FORM 02116-9072 -HEWLETT PACKARD HP ASSEMBLER FORM 02116-9014 -HEWLETT PACKARD BASIC CONTROL SYSTEM REFERENCE MANUAL FORM 02116-9017 -HEWLETT PACKARD A POCKET GUIDE TO INTERFACING HP COMPUTERS FORM 5950-8718 -HEWLETT PACKARD MAGNETIC TAPE SYSTEM FORM 02116-91752 -HEWLETT PACKARD RELOCATABLE SUBROUTINES FORM 02116-91780 X14701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: STACK ROUTINES **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: STACK **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS SET OF SUBROUTINES ALLOWS AN ASSEMBLY LANGUAGE PROGRAM TO PERFORM STACK OPERATIONS. THE PACKAGE CONTAINS THE FOLLOWING ROUTINES: CLRST, PUSH, PULL AND RMOVE. CLRST CLEARS THE STACK BY SETTING THE UPPER LIMIT FOR THE NUMBER OF ITEMS IN THE STACK IN THE FIRST LOCATION OF THE STACK. IT ALSO SETS THE POINTER IN THE SECOND POSITION TO POINT TO THE FIRST FREE LOCATION IN THE STACK (WHICH IS THE THIRD WORD OF THE STACK). THE UPPER LIMIT MUST BE STACK LENGTH-2. PUSH STORES AN ITEM ONTO THE STACK AND INCREMENTS THE POINTER. PULL TAKES AN ITEM FROM THE TOP OF THE STACK AND DECREMENTS THE POINTER. RMOVE REMOVES THE TOP ITEM FROM THE STACK BY DECREMENTING THE POINTER. THE PACKAGE SERVES AS A TOOL FOR RECURSIVE CALLS OF PROGRAMS. THESE SUBROUTINES MAYBE CONFIGURED INTO THE USER'S SYSTEM LIBRARY UNDER DOS OR DOS-M. ERROR EXITS RESULT IN CALLS TO THE EXEC. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: ENTRY POINT(S) CLRST PUSH PULL RMOVE CALLING SEQUENCE EXT CLRST JSB CLRST DEF L1 DEFINES RETURN ADDRESS DEF PTRAD DEFINES ADDRESS OF POINTER ADDRESS DEF UPBND DEFINES UPPER LIMIT STACK BSS N PTRAD DEF STACK+1 UPBND DEC N-2 L1 CONTINUE EXT PUSH (OR PULL) JSB PUSH (OR PULL) DEF L2 DEFINES RETURN ADDRESS. DEF PTRAD DEFINES ADDRESS OF POINTER ADDRESS. DEF THING DEFINES THING TO BE STORED INTO STACK (OR TO L2 CONTINUE BE OBTAINED FROM STACK IN PULL) EXT RMOVE JSB RMOVE DEF L3 DEFINES RETURN ADDRESS. DEF PTRAD DEFINES ADDRESS OF POINTER ADDRESS. L3 CONTINUE ON CERTAIN ERRORS, CALL TO EXEC ARE MADE: 1. STACK IS FULL AND AN ELEMENT IS TRIED TO INSERT INTO THE STACK "OUT OF RANGE OF STACK, PUSH" IS PRINTED AND RETURN TO CALLING PROGRAM IS MADE. 2. STACK IS EMPTY AND A TRY TO PULL OR REMOVE AN ELEMENT FROM THE STACK: "OUT OF RANGE OF STACK, PULL (OR RMOVE)" IS PRINTED AND RETURN TO CALLING PROGRAM IS MADE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X14801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: FLOATING POINT OVERLAY FOR HP BASIC **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: FLOATING POINT BASIC **LANGUAGES: ASMB(ABS) HP BASIC **COMPUTER TYPE: **OPERATING SYSTEMS: **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM PROVIDES AN OVERLAY FOR BASIC (HP20392) WHICH TAKES ADVANTAGE OF THE FLOATING POINT HARDWARE OPTION ON THE HP2100 COMPUTER. THE OVERLAY RESULTS IN FLOATING POINT MACHINE CODE REPLACING BASIC ARITHMETIC SUBROUTINES. THE IMPROVEMENT IN RUNNING TIME IS ON THE ORDER OF FIVE AS COMPARED TO THE NON-FLOATING POINT VERSION OF BASIC. THIS OVERLAY IS COMPATIBLE WITH PREVIOUSLY WRITTEN USER ASSEMBLY ROUTINES BECAUSE BASE PAGE LINKAGE ADDRESSES ARE NOT ALTERED. HARDWARE REQUIREMENT: HP 2100A WITH FLOATING POINT OPTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE THE FIRST PROGRAM ON THE TAPE. FLOATING POINT ASSEMBLER NOT REQUIRED. DO NOT ATTEMPT TO ASSEMBLE BASIC SOURCE PROGRAM. WHEN CONFIGURING BASIC, LOAD THE OVERLAY AFTER THE BASIC SYSTEM TAPE IF A COMPOSITE TAPE IS DESIRED. OTHERWISE OVERLAY MAY BE LOADED ANYTIME AFTER CONFIGURED BASIC HAS BEEN LOADED. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE DIVIDE BY ZERO WARNING IS DISABLED. DIVIDING BY ZERO WILL RESULT IN BASIC RETURNING 1.70141E+38, FOR EITHER A POSITIVE OR NEGATIVE DIVIDEND. X14901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-M ABSOLUTE BINARY TAPE LOADER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: PAPER TAPE ABSOLUTE LOADER **LANGUAGES: ASMB FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS SET OF PROGRAMS, OPERATING AS A USER PROGRAM UNDER DOS-M, ENABLES THE USER TO PERFORM THE FOLLOWING OPERATIONS: STORE ABSOLUTE BINARY TAPE IN DOS-M USER FILES OF TYPE B AND LOAD PROGRAMS FROM THESE FILES INTO CORE. THIS PACKAGE REQUIRES AN HP7900 DISC. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. COMPILE THE FIRST PROGRAM ON TAPE USING DOS-M FORTRAN COMPILER. STORE RELOCATABLE BINARY IN JOB BINARY AREA OF DISC BY USING OPTION 99 PARAMETER. 2. ASSEMBLE THE NEXT TWO PROGRAMS ON TAPE USING DOS-M ASSEMBLER. STORE RELOCATABLE BINARY IN JOB BINARY AREA OF DISC BY USING OPTION 99 PARAMETER. 3. LOAD FROM JOB BINARY AREA OF DISC WITH: :PROG, LOADR DIRECTIVE THEN MAKE PERMANENT WITH: :STOR,P DIRECTIVE 4. CLEAR THE JOB BINARY AREA. 5. START AGAIN 1-2 AND 3 FOR THE OTHER PROGRAMS ON THE TAPE. NOTE: LOADING SHOULD BE DONE WITH THE CURRENT USER DISC SUBCHANNEL ON THE SYSTEM DISC SUBCHANNEL FOR THESE PROGRAMS TO SUBSEQUENTLY WORK PROPERLY WHEN EXECUTED. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS SET OF PROGRAMS, OPERATING AS A USER PROGRAM UNDER DOS-M, ENABLES THE USER TO PERFORM THE FOLLOWING OPERATIONS: 1. STORE ABSOLUTE BINARY TAPE ON DOS-M USER FILE, RESERVED BY A :ST,B.. 2. LOAD THESE PROGRAMS INTO CORE. THESE PROGRAMS SHOULD BE PRODUCED BY BCS OR BY ANY SYSTEM LIKE THE PREPARE BASIC. NEVERTHELESS, THE ABSOLUTE PROGRAM DESTROYS THE DOS-M SYSTEM AND WE HAVE TO BOOTSTRAP ONE MORE TIME AFTER THE EXECUTION OF THIS ABSOLUTE PROGRAM. OPERATING INSTRUCTIONS 1. CREATE A USER FILE TYPE-B BY THE FOLLOWING DIRECTIVE: : STORE, B, NAME, XXX XXX MUST BE ONE OF THE FOLLOWING NUMBERS: 65 IF THE ABSOLUTE PROGRAM TO BE LOADED OCCUPIES LESS THAN 8K WORDS MEMORY 130 IF THE ABSOLUTE PROGRAM TO BE LOADED OCCUPIES LESS THAN 16K WORDS MEMORY 195 IF THE ABSOLUTE PROGRAM TO BE LOADED OCCUPIES LESS THAN 24K WORDS MEMORY 2. STORE THE ABSOLUTE TAPE IN THE RESERVED FILE BY ENTERING THE FOLLOWING DIRECTIVE: : PROG, BBL, XX WHERE XX IS: 8 IF XXX WAS 65 16 IF XXX WAS 130 24 IF XXX WAS 195 32 IF XXX WAS 260 3. THE PROGRAM WILL OUTPUT THE FOLLOWING MESSAGE: FILE NAME ? 4. RESPOND BY ENTERING THE NAME OF THE FILE. IF THE SIZE OF THE FILE DOESN'T MATCH WITH THE CORE SIZE IN K WORDS SPECIFIED IN THE DIRECTIVE :PROG, BBL, XX THE PROGRAM WILL OUTPUT THE FOLLOWING MESSAGE: NAME: ILLEGAL LENGTH AND THEN ABORTS 5. IN NORMAL CASE, THE PROGRAM OUTPUTS THE MESSAGE: LOAD ABSOLUTE TAPE BBL SUSP @ 6. LOAD ABSOLUTE TAPE ON THE DEVICE LU = 5, AND RESPOND BY ENTERING :GO 7. THE TAPE IS READ AND STORED IN THE FILE :NAME. AT THE END OF THE TAPE, THE PROGRAM TYPES: DONE? 8. IF THERE ARE MORE ABSOLUTE TAPES TO BE LOADED (LIKE CONFIGURED SIO FOR EXAMPLE), PLACE THESE TAPES ON THE DEVICE AND REPLY: NO OTHERWISE, REPLY: YES 9. IF SW 15 IS SET DURING THE EXECUTION OF THIS PROGRAM, THE ABSOLUTE TAPE IS ALSO LISTED ON THE DEVICE LU NOT=6. THE FORMAT OF THE LISTING IS AS FOLLOWS: ADDRESSE : 0002 NB. DE MOTS : 121 00000 0000 ' ' ' (SEE ATTACHED EXAMPLE) ADRESSE MEANS ABSOLUTE LOAD ADDRESS OF THE BLOCK AND NB. DE MOTS IS THE DECIMAL LENGTH OF THE BLOCK IN WORDS. 10. IF SW 14 IS SET, THE PROGRAM WILL OUTPUT THE FOLLOWING MESSAGE: FIRST INSTRUCTION TO EXECUTE ? THE PROGRAM ASKS FOR THE FIRST INSRUCTION TO BE EXECUTED WHEN THE ABSOLUTE BINARY IS LOADED INTO CORE. FOR EXAMPLE: - FOR BASIC, YOU CAN RESPOND: 24100 (JMP 100B) - FOR A BCS PROGRAM 24002 (JMP 2) IN ANY CASE, YOU MUST RESPOND BY A JMP INSTRUCTION ONLY IN THE BASE PAGE. THIS INSTRUCTION WILL BE EXECUTED AFTER THE HLT 77 (SEE STEP 17) WHEN YOU PRESS RUN. 11. THEN THE PROGRAM TYPES: MESSAGE TO OPERATOR ? AT LOADING TIME, YOU HAVE ONE LINE FOR AN EVENTUAL COMMENT TO THE OPERATOR. THIS LINE WILL BE REPRODUCED WHEN THE PROGRAM IS LOADED INTO CORE. 12. THEN, THE PROGRAM STOPS. 13. TO LOAD THESE ABSOLUTE PROGRAMS INTO CORE, YOU MUST NOW TYPE: :PROG, LOAD 14. THE PROGRAM ASKS: FILE NAME? ANSWER WITH THE FILE NAME. IF THE SIZE OF THE FILE IS NOT 65-130 - 195 OR 260, THE PROGRAM WILL OUTPUT: NAME: ILLEGAL LENGTH AND THEN ABORTS. 15. IF SW 15 IS SET, THE PROGRAM TYPES: FIRST INSTRUCTION TO EXECUTE ? IT IS EXACTLY THE SAME AS THAT IN BBL PROGRAM, SO IT'S POSSIBLE, AT ANY TIME, TO CHANGE THIS FIRST INSTRUCTION, JUST BEFORE LOADING THE PROGRAM. 16. THEN, THE PROGRAM TYPES THE OPERATOR'S MESSAGE AND LOADS THE PROGRAM INTO CORE. 17. AT THE END OF LOADING OPERATION, THE COMPUTER STOPS WITH DISPLAY 102077. (IF PARITY ERRORS OCCUR DURING THE LOADING TIME, THE COMPUTER STOPS WITH 102055). AT THIS POINT, THE PROGRAM IS IN CORE EXACTLY LIKE WITH THE HARDWARE PROTECTED BBL, AND YOU CAN START THE EXECUTION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: IF THE COMPUTER IS AN HP 2100, BEFORE TOUCHING ANY SWITCH YOU MUST PRESS MEMORY DATA. IF YOU GAVE A "FIRST INSTRUCTION TO EXECUTE", YOU CAN PRESS RUN ONLY. IF YOU DID NOT GIVE THE "FIRST INSTRUCTION", YOU HAVE TO LOAD PROGRAM COUNTER WITH THE CORRECT VALUE AND THEN, PRESS RUN. WHEN THE BBL PROGRAM IS RUNNING, THE TWO FOLLOWING MESSAGES MAY APPEAR ON THE TELEPRINTER SYSTEM: ILLEGAL ADDRESS IF THE ABSOLUTE TAPE TAKES MORE THAN XX K WORDS DECLARED PREVIOUSLY (LIKE HLT 55B IN HARDWARE BBL): CHECKSUM ERROR IF A CHECKSUM ERROR IS DETECTED WHEN READING THE TAPE (LIKE HLT 11B IN HARDWARE BBL). X15001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: VIRTUAL ARRAY HANDLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: ARRAY **LANGUAGES: FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE FOUR SUBROUTINES CONTAINED IN THIS PACKAGE HANDLE DATA SETS WHICH ARE TOO LARGE TO FIT INTO CORE. THIS IS ACCOMPLISHED BY MEANS OF A VIRTUAL ARRAY WHICH EXTENDS 'OUT OF CORE' INTO THE DISC. A SMALL (1K) CORE AREA ACTS AS A WINDOW WHICH AUTOMATICALLY MOVES ALONG THE DISC FILE (IN INCREMENTS OF 1K). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: A SOURCE COPY OF THE ROUTINE IS KEPT ON THE DISC FILE .VIRT AND HAS TO BE COMPILED TOGETHER WITH THE CALLING PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: USING VIRTUAL ARRAY ROUTINES ON INTEGER OR MIXED FILES, LET DATAF BE A DISK FILE ORGANIZED AS FOLLOWS: WORDS 1 - 100 (VIRAR (1) - VIRAR (50)): INTEGER (ASCII CHARACTERS) WORDS 101 + 102, 103 + 104...(VIRAR (51) ....): REAL THIS FILE CAN BE READ WITH THE FOLLOWING PROGRAM: FTN,L INTEGER FILE(3) DIMENSION REAR(50) COMMON VIRTL(1026),INTAR(100) EQUIVALENCE (REAR(1),INTAR(1)) DATA FILE(1),FILE(2),FILE(3)/2HDA,2HTA,2HF / CALL VIROP (FILE) DO 1000 I=1,50 1000 REAR(I)=VIRAR(I) WRITE (1,100) (INTAR(I),I=1,100) 100 FORMAT (100A1) . . . **PROGRAM DESCRIPTION: VIRTUAL ARRAYS A SET OF VIRTUAL ARRAY HANDLING ROUTINES HAS BEEN DEVELOPED FOR DEALING WITH DATA SETS THAT ARE TOO LARGE TO FIT INTO CORE. A VIRTUAL ARRAY EXTENDS OUT OF CORE INTO THE DISK. A SMALL (1K) CORE AREA ACTS AS A WINDOW WHICH AUTOMATICALLY MOVES ALONG THE DISK FILE (IN INCREMENTS OF 1 K). A VIRTUAL ARRAY IS ALWAYS A TYPE REAL ARRAY. ANY DISK FILE FULFILLING THE LENGTH REQUIREMENTS (SEE: RESTRICTIONS) CAN BE DECLARED A VIRTUAL ARRAY BY OPENING IT CALL VIROP (NAME) NAME IS THE NAME OF THE DISK FILE. IT MUST HAVE AN ASCII CHARACTER STRING ASSIGNED TO IT IN THE USUAL WAY. AFTER OPENING IT THE DISK FILE CAN BE CONSIDERED AN ARRAY WITH A SUBSCRIPT RUNNING BETWEEN 1 AND (64 X FILE LENGTH). WRITING INTO THE VIRTUAL ARRAY IS DONE BY CALL VIRIN (IX,VALUE) WHERE IX IS THE VIRTUAL ARRAY SUBSCRIPT (INTEGER) AND VALUE IS ANY LEGAL FORTRAN SUBROUTINE PARAMETER (REAL). VALUE IS BEING PLACED INTO POSITION IX OF THE VIRTUAL ARRAY. READING FROM A VIRTUAL ARRAY IS DONE BY VAR = VIRAR (IX) WHERE VAR IS A FORTRAN VARIABLE (REAL) AND IX IS THE SUBSCRIPT OF THE VIRTUAL ARRAY (INTEGER). VIRAR IS THE NAME OF THE VIRTUAL ARRAY FOR READING OPERATIONS. VIRAR CAN BE PART OF ANY LEGAL FORTRAN MATHEMATICAL EXPRESSION AND MAY BE USED MORE THAN ONCE IN A STATEMENT, SUCH AS: AVER = (VIRAR (I) + VIRAR (I+1))/2. CLOSING THE VIRTUAL ARRAY CALL VIRCL THIS CAUSES VIRTUAL ARRAY OPERATIONS TO BE TERMINATED. ALWAYS CLOSE A VIRTUAL ARRAY: A WRITE OPERATION ON THE VIRTUAL ARRAY DOES NOT NECESSARILY CAUSE A PHYSICAL WRITE ON THE DISK. THE ROUTINE VIRCL EXECUTES ANY PENDING DISK OPERATIONS, THEREBY UPDATING THE DISK FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE VIRTUAL ARRAY HANDLER DOES NOT CHECK THE NAME AND THE SIZE OF THE SPECIFIED FILE. ATTEMPTS TO REFERENCE A NONEXISTING FILE OR TO WRITE BEYOND FILE BOUNDARIES WILL RESULT IN SYSTEM RUN TIME ERROR MESSAGES (IT XXXXX AND FI XXXXX). **MISCELLANEOUS: RESTRICTIONS THE STATEMENT: COMMON VIRTL (1028) MUST APPEAR IN THE SPECIFICATION PART OF THE MAIN LINE. IT MUST PRECEDE ANY OF THE USER'S COMMONS. LENGTH LENGTH OF A VIRTUAL ARRAY DISK FILE: L (SECTORS) = N * 16 WHERE N = 1,2....32 (16 SECTORS HOLD 1 K OF DATA) DUE TO THE RANGE OF THE INTEGER VARIABLES VIRTUAL ARRAYS ARE LIMITED TO 512 DISK SECTORS (32 K REAL ELEMENTS). VIRAR (IX) MUST NOT APPEAR ON THE LEFT SIDE OF AN ASSIGNMENT STATEMENT. VIRAR (IX) MUST NOT BE USED IN AN IMPLIED DO. SEE SAMPLE PROGRAM APPENDIX A. A VIRTUAL ARRAY IS ALWAYS REAL AND ONE-DIMENSIONAL. FOR USING IT WITH INTEGER AND MIXED FILES SEE APP. B. RECOMMENDATIONS MOVING THE SCANNING WINDOW UP AND DOWN THE VIRTUAL ARRAY REQUIRES DISK OPERATIONS AND IS THEREFORE TIME CONSUMING. ALWAYS TRY TO KEEP WITHIN THE PRESENT 1 K WINDOW. FOR EXAMPLE: DO 1000 I = 1, 1000 1000 SUM = SUM + VIRAR (I) + VIRAR (I+1000) WILL TAKE FOREVER. BETTER: DIMENSION HELP (1000) . . . DO 1000 I = 1,1000 1000 HELP (I) = VIRAR (I) DO 2000 I = 1,1000 2000 SUM = SUM + HELP (I) + VIRAR (I+1000) X15101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MPY FAST MICROCODED MULIPLY INSTRUCTION **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: MICROCODE WCS **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS MICROCODED MULTIPLY INSTRUCTION IS LIKE THE STANDARD HP2100 MULTIPLY INSTRUCTION (OPCODE 100200) EXCEPT THAT IT IS TWICE AS FAST (I.E., 5.9 MICROSECONDS INSTEAD OF 10.8 MICROSECONDS). BOTH INSTRUCTIONS MULTIPLY TWO 16 BIT SIGNED OPERANDS AND PRODUCE IDENTICAL 32 BIT RESULTS. THIS INSTRUCTION IS USEFUL WHEN INTEGER MULTIPLIES FORM AN APPRECIABLE FRACTION OF A PROGRAM'S EXECUTION TIMING. THIS PROGRAM REQUIRES AN HP2100 WITH WRITABLE CONTROL STORE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. USE BCS TO PRODUCE AN ABSOLUTE TAPE CONTAINING THE TEST1 PROGRAM AND THE STANDARD MICRO-DEBUG-EDITOR. 2. LOAD THE ABSOLUTE TAPE AND START AT ADDRESS P=2. 3. RESPOND TO THE "COMMAND?" DIRECTIVE WITH REQUEST TO A. LOAD AND MPY MICROCODE PAPER TAPE B. WRITE THE MICROCODE TO WCS C. EXECUTE THE TEST1 TEST PROGRAM (IT WILL HALT IF THE ANSWER IS COMPUTED INCORRECTLY) D. IF DESIRED, THE USER CAN MODIFY THE PARAMETERS AGR1 AND ARG2 WITHIN TEST1 AND RE-EXECUTE THE TEST. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALLING SEQUENCE - ASSEMBLY LANGUAGE ABS 105140B THIS INSTRUCTION MULTIPLIES THE A BY THE B REGISTER AND LEAVES THE DOUBLE LENGTH RESULT IN BA (B=MSB, A=LSB). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: WCS MUST BE LOADED WITH THIS MICROPROGRAM BEFORE THE 105140 OPCODE IS USED. THE USER MAY REASSIGN THE OPCODE TO ANY OTHER VALUE BY SIMPLY MODIFYING THE SOURCE PROGRAM AND RE-MASSEMBLING. THIS INSTRUCTION REQUIRES 5.5 USEC PLUS WHATEVER IS REQUIRED FOR JUMP- TABLE CONVENTIONS. THIS OVERHEAD WILL RANGE BETWEEN 0.0 USEC (IF WCS IS THE ENTRY MODULE) AND 1.2 USEC (IF THE FLOATING POINT MODULE 1 IS THE ENTRY MODULE AND WCS UTILIZES BOTH A PRIMARY AND A SECONDARY JUMP- TABLE FOR THIS OPCODE. X15201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: STRUCTURAL ENGINEERING PROBLEM SOLVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ENGINEERING **LANGUAGES: ASMB FTN4 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: STRUCTURAL ENGINEERING SYSTEM SOLVER (STRESS) GIVES STRUCTURAL ENGINEERS COMPUTER PROBLEM SOLVING ADVANTAGES WITHOUT REQUIRING COMPUTER PROGRAMMING IN THE USUAL SENSE. IT IS A PROGRAMMING SYSTEM COMPOSED OF TWO PARTS: A LANGUAGE FOR DESCRIBING A PROBLEM TO THE COMPUTER AND A PROGRAM FOR INTERPRETING THIS LANGUAGE AND SOLVING THE PROBLEM. THE LANGUAGE USES A VOCABULARY FAMILIAR TO STRUCTURAL ENGINEERS, ALLOWING THEM TO INPUT PROBLEMS BY SPECIFYING THE TYPE AND SIZE, THE PHYSICAL DIMENSIONS, AND THE LOADS OF A STRUCTURE. STRESS WILL OUTPUT INFORMATION ON STRUCTURES WITH PRISMATIC MEMBERS IN TWO OR THREE DIMENSIONS AND WITH EITHER PINNED OR RIGID JOINTS. THE EFFECTS OF CONCENTRATED OR DISTRIBUTED LOADS, DISPLACEMENT, AND TEMPERATURE ARE ALSO ANALYZED. STRESS CONSISTS OF FORTRAN AND ASSEMBLY LANGUAGE ROUTINES WHICH ARE OPERABLE UNDER A DOS-M ENVIRONMENT ON A 16K (MINIMUM) MACHINE. INPUT IS ON CARDS AND OUTPUT IS ON A 120 COLUMN LINE PRINTER. REQUIRED MANUAL: STRUCTURAL ENGINEERING SYSTEM SOLVER (STRESS) FOR THE IBM 1130 VERSION 2, USER'S MANUAL; PROGRAM NUMBER 1130-EC-03X. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: FORTRAN SOURCE FILE# 3: ASMB SOURCE FILE# 4: ASMB SOURCE FILE# 5: ASMB SOURCE FILE# 6: ASMB SOURCE FILE# 7: ASMB SOURCE FILE# 8: ASMB SOURCE FILE# 9: ASMB SOURCE FILE# 10: ASMB SOURCE FILE# 11: ASMB SOURCE FILE# 12: ASMB SOURCE FILE# 13: SAMPLE INPUT DECK **LOAD INSTRUCTIONS: EACH OF THE 11 SOURCE FILES SHOULD BE STORED UNDER A DIFFERENT NAME ON THE DISC. BELOW IS AN EXAMPLE PRINTOUT ON THE CRT OR TTY: :PU,SSTRE,SSPA1,SSPA2,SSPA4,SSA1A,SDATA,SPACK,SUNPK,SMCHR,SSLOC,SDPAC (6496 LINES) :ST,S,SSTRE,(LU OF MAG TAPE UNIT) DONE? YES (88 LINES) :ST,S,SSPA1,(LU OF MAG TAPE UNIT) . . . STRESS IS NOW ON DISC IN 11 SOURCE FILES. IN ORDER TO OBTAIN THE RELOCATABLES FOR LOADING STRESS, THE FOLLOWING LIST OF INSTRUCTIONS SHOULD BE FOLLOWED BY TYPING THEM ON THE CRT OR BY MAKING A TAPE OR DECK OF CARDS FOR BATCH OPERATION OF THE COMPUTER. :JOB :PU,STRES,SPH1A,START,S001A,S002A,SOJTS,SOMEM,SEXT1,SOLDS,SOREL,SPH1B, SLNK2,SLNK3,SLNK5,SLNK6,SLNK7,SLNK8,SPTIF,SLNK9,SLN10,STRF1,RFTN4,RASMB :JF,SSTRE :PROG,FTN4,2,1,99 :ST,R,RFTN4 :JOB :JF,SSPA1 :PROG,ASMB,2,1,99 :JF,SSPA2 :PROGR,ASMB,2,1,99 . . . :TY (IF IN BATCH MODE) STRESS IS NOW READY FOR EXECUTION. TO START STRESS THE FOLLOWING COMMAND SHOULD BE TYPED ON THE CRT OR TTY: :PR,START THE DATA DECK SHOULD BE IN THE CARD READER AT THIS TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: MODIFICATIONS TO IBM STRESS MANUAL 1. DISREGARD SWITCH SETTINGS AND MEANINGS IN MANUAL (PAGE 45) SW 3 ON IMPLIES - PRINT OUTPUT SW 4 ON IMPLIES - ALL FORCES ON EACH MEMBER FOR ALL LOADINGS WILL BE GROUPED AND PRINTED TOGETHER SW 5 ON IMPLIES - INTERNAL MEMBER FORCES ARE TO BE PRINTED 2. IF SW 5 IS ON, INTERNAL MEMBER FORCES ARE REQUIRED. CARDS TELLING THE NUMBER OF SECTIONS AND THE MEMBERS FOR WHICH INTERNAL FORCES ARE TO BE CALCULATED MUST BE PLACED AFTER THE 'SOLVE' CARD. THE CARD FORMAT IS FREE FIELD AND IS AS FOLLOWS: LENGTHS N MEMBERS L (OR L THRU M) END THE 'LENGTHS' IS THE NUMBER OF LENGTHS (MAX OF 20) THE BEAM IS TO BE BROKEN INTO FOR INTERNAL FORCE SUMMATION, I.E., N=3 WOULD GIVE FORCES AT THIRD POINTS. 'MEMBERS' TELLS FOR WHICH MEMBERS INTERNAL FORCES ARE TO BE TABULATED. ALL LOADING CASES WILL BE GIVEN FOR A MEMBER. THE USER IS LIMITED TO A MAXIMUM OF 20 SECTIONS ALONG A MEMBER. THE PROGRAM CAN HANDLE COMBINATION LOADS UP TO THE SECOND LEVEL OF EMBEDDED COMBINATIONS BUT NOT BEYOND. I.E., A COMBINATION LOADING WHICH CONTAINS ANOTHER COMBINATION LOADING CAN BE HANDLED, UNLESS THE SECOND COMBINATION ALSO CALLS ON A COMBINATION LOAD. IF THIS HAPPENS THE PROGRAM PRINTS "LOADING N HAS TOO MANY EMBEDDED COMBINATIONS", AND CALLS STRESS BACK INTO CORE TO CONTINUE WITH A NEW PROBLEM. DO NOT USE COLUMN 72. INPUT- OUTPUT DESCRIPTION: INTERNAL FORCES ARE PRINTED FOR ALL LOADING CASES ON A MEMBER. THE SIGN - CONVENTION IS STRESS MEMBER (LOCAL) COORDINATE SYSTEM FOR THE 'END' END OF A MEMBER. FOR EXAMPLE, IF MEMBER 25 IS SPECIFIED UNDER 'MEMBER INCIDENCES' AS 25 50 51, THE FORCES AT ANY POINT X ALONG THE MEMBER WOULD BE SUMMED FROM JOINT 50 AS THOUGH THE POINT AT X WAS THE MEMBER END POINT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: 1. HP STRESS WORKS WITH THE FOLLOWING UNIT MEMBERS: LU EQUIPMENT 1 CRT OR TTY 6 LINE PRINTER 8 CARD READER 2. AT SYSTEM GENERATION TIME, IT IS RECOMMENDED TO EXCLUDE EFMP FROM THE DISC PACK AND ALSO TO PUT THE FOLLOWING ROUTINES IN CORE FOR MORE EFFICIENT OPERATION OF STRESS: $SRCH $EX05 $EX11 $EX18 3. THE SAME PROBLEM WAS RUN ON THE IBM 1130 AND HP 2100, WITH THE IBM 1130 TAKING 4 HOURS AND THE HP 2100 TAKING 45 MINUTES. X15301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 2000F BASIC FOR DOS-M/DOS III **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: BASIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS III **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DOS-M/DOS III BASIC IS ESSENTIALLY A SINGLE TERMINAL VERSION OF HP 2000F TIME-SHARED BASIC. IT RUNS UNDER THE DOS-M OR DOS III OPERATING SYSTEM, GIVING THE USERS OF THESE SYSTEMS A POWERFUL, YET EASY TO USE COMPUTING FACILITY. FEATURES OF DOS-M/DOS III BASIC NOT FOUND IN OTHER DOS-M BASIC'S INCLUDE: STRING VARIABLES, FORMATTED OUTPUT, USER PROGRAM DISC STORAGE AND RETRIEVAL, USER DATA FILES, PROGRAM CHAINING, ERROR MESSAGES INSTEAD OF ERROR NUMBERS, LINE PRINTER SUPPORT, BETTER PROGRAM EDITING FACILITIES, HIGH-SPEED PAPER TAPE INPUT AND OUTPUT OF PROGRAMS, MIN AND MAX OPERATORS, MORE FLEXIBLE INPUT WITH ENTER STATEMENT, MULTI-BRANCH GOTO AND GOSUB STATEMENTS, ADDITIONAL FUNCTIONS, SOURCE INPUT FROM ANY INPUT DEVICE VIA "LOAD" COMMAND, ETC. ANOTHER IMPORTANT CONSIDERATION IS THE PROVISION FOR RETRIEVING BASIC PROGRAMS FROM 2000F TIME-SHARED SYSTEM DUMP TAPES. THIS GIVES THE DOS-M /DOS III USER ACCESS TO THE GREAT NUMBER OF USEFUL HP BASIC LIBRARY PROGRAMS AND ALLOWS EASY TRANSFER OF OTHER USER-DEVELOPED PROGRAMS FROM A TIME-SHARED SYSTEM TO A DOS ENVIRONMENT. USER DATA FILES MAY ALSO BE TRANSFERRED FROM SYSTEM TO SYSTEM. TO MAKE THESE CONVERSIONS THE DOS-M/2000C TSB FILE HANDLER, HP 24228, MUST BE USED IN CONJUNCTION WITH SPECIAL ROUTINES INCLUDED IN THIS PACKAGE. CURRENTLY, DOS-M/DOS III BASIC REQUIRES AT LEAST 14K WORDS OF MEMORY IN ADDITION TO SYSTEM REQUIREMENTS. THEREFORE, A CPU WITH AT LEAST 24K WILL BE NECESSARY. (A 32K CPU GIVES THE USER MORE PROGRAM SPACE THAN IS AVAILABLE ON THE 2000F.) A TIME BASE GENERATOR IS NECESSARY IF THE TIME COMMAND, TIM( ) FUNCTION, OR TIMED ENTER WILL BE USED. SEE "2000F: A GUIDE TO TIME-SHARED BASIC", HP ORDER NUMBER 02000-90044 FOR DETAILED INFORMATION ABOUT THE LANGUAGE AND PROGRAM EXECUTION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE(CONTINUED) FILE# 4: SOURCE(CONTINUED) FILE# 5: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: AN ATTEMPT HAS BEEN MADE TO DUPLICATE 2000F TIME-SHARED BASIC AS CLOSELY AS POSSIBLE. THEREFORE, THE USER IS REFERRED TO "2000F: A GUIDE TO TIME-SHARED BASIC" (HP ORDER NUMBER 02000-90044) FOR DETAILED INFORMATION ABOUT THE LANGUAGE AND PROGRAM EXECUTION. ONLY DIFFERENCES BETWEEN 2000F AND DOS-M/DOS III BASIC WILL BE NOTED HERE. TO RUN DOS-M/DOS III BASIC WITH THE SYSTEM CONSOLE AS THE USER TERMINAL TYPE: :PR,BASIC TO RUN WITH ANOTHER CONSOLE AS THE USER TERMINAL TYPE: :PR,BASIC,(LU # OF CONSOLE) IN EITHER CASE, BASIC RESPONDS WITH "READY", AND THE USER MAY TYPE PROGRAM STATEMENTS AND COMMANDS AS DESCRIBED IN "2000F: A GUIDE TO TIME-SHARED BASIC" WITH THE FOLLOWING EXCEPTIONS: 1. THE "LOG IN" PROCEDURE IS NOT USED. 2. THE "BREAK" KEY IS NOT USED WITH DOS-M/DOS III BASIC. TO STOP A LISTING, RUNNING PROGRAM, OR OTHER LENGTHY OPERATION, SET BIT 15 OF THE SWITCH REGISTER ON. THIS WILL TERMINATE THE CURRENT OPERATION (EXCEPT FOR A RUNNING PROGRAM IF THE "BRK( )" FUNCTION HAS DISABLED "BREAK"). 3. THE "ECHO" COMMAND IS NOT USED. 4. THE "PUNCH" AND "XPUNCH" COMMANDS PUNCH THE CURRENT PROGRAM ON THE PAPER TAPE PUNCH (MUST BE LU #4). 5. THE "TAPE" COMMAND READS A PROGRAM TAPE FROM THE PHOTO-READER (MUST BE LU # 5). IT EXPECTS A SPECIAL CHARACTER, CNTL-Z (Z TYPED WHILE HOLDING DOWN THE CNTL KEY), AT THE END OF THE TAPE. "PUNCH" AND "XPUNCH" PROVIDE THIS TERMINAL CHARACTER AUTOMATICALLY. A TAPE PUNCHED ON A 2000 TIME-SHARED SYSTEM SHOULD HAVE THIS CHARACTER PUNCHED AFTER THE TRAILER AND ANOTHER TRAILER PRODUCED FOLLOWING IT BEFORE THE TAPE IS REMOVED FROM THE TERMINAL. 6. NO MESSAGES ARE ISSUED ON THE STATUS OF THE LINE PRINTER EXCEPT "LP FREE" WHEN A LISTING OR PROGRAM COMPLETES. 7. THE "TIME" COMMAND WORKS ONLY IF A TIME-BASE GENERATOR IS IN THE SYSTEM. 8. THE "MESSAGE" COMMAND IS NOT USED. 9. THERE IS NO DISTINCTION BETWEEN USER LIBRARY, GROUP LIBRARY, AND SYSTEM LIBRARY. ALL PROGRAM AND DATA FILES ARE USER LIBRARY FILES. THE "LIBRARY" AND "GROUP" COMMANDS ARE NOT USED. 10. FOR THE "TIM( )" FUNCTION TO WORK PROPERLY, TWO THINGS ARE REQUIRED. A. A TIME-BASE GENERATOR MUST BE IN THE SYSTEM IF HOURS AND MINUTES ARE DESIRED. B. A SPECIALLY FORMATTED ":DATE" DIRECTIVE MUST BE GIVEN TO THE DOS-M OR DOS III SYSTEM IF THE DAY AND YEAR ARE DESIRED. :DA,XXX/YY,M,N WHERE XXX IS A THREE-DIGIT NUMBER GIVING THE CURRENT DAY OF THE YEAR, AND YY IS THE YEAR OF THE CENTURY. M IS THE CURRENT HOUR AND N THE CURRENT MINUTE OF THE DAY. :DA032/73,9,30 FOR FEB. 1, 1973 AT 9:30 AM 11. CURRENTLY A MAXIMUM OF 31 PROGRAMS AND DATA FILES ALLOWED. 12. A CNTL-L (L TYPED WHILE HOLDING DOWN THE CNTL KEY) IN AN OUTPUT STRING CAUSES A PAGE EJECT WHEN IT IS PRINTED ON THE LINE- PRINTER. 13. A NEW COMMAND, "LOAD-8", ALLOWS SOURCE STATEMENTS TO BE INPUT FROM A DEVICE OTHER THAN THE TTY. FOR EXAMPLE, "LOAD-8" WOULD INPUT SOURCE FROM LU #8. "LOAD" ALONE DEFAULTS TO LU#5. LOADING STOPS WHEN AN END-OF-FILE OR VALID COMMAND IS ENCOUNTERED IN THE SOURCE STREAM. BFILE BFILE INITIALIZES A DOS-M OR DOS III FILE FOR USE BY BASIC. THE USER MUST RESERVE SPACE ON THE DISC FOR THIS FILE BY CREATING A FILE WITH THE ":ST,B,$FILS,N" DIRECTIVE. ("$FILES" MUST BE ON THE SAME DISC SUB- CHANNEL AS BASIC AND ITS SEGMENTS, BFILE, AND CFILE). N IS THE NUMBER OF SECTORS THAT THE USER WISHES TO RESERVE FOR BASIC PROGRAM AND DATA FILE STORAGE. THE FILE IS THEN INITIALIZED BY RUNNING BFILE: :PR,BFILE THIS BUILDS AN EMPTY DIRECTORY IN THE FIRST TWO SECTORS OF "$FILS". (TWO SECTORS OF DIRECTORY ALLOW SPACE FOR UP TO 31 PROGRAMS OR DATA FILE ENTRIES.) BFILE ISSUES AN ERROR MESSAGE IF A FILE NAMED "$FILS" DOES NOT EXIST OR IF IT IS LESS THAN THREE SECTORS LONG. IF BFILE IS RUN AND IT FINDS A DIRECTORY ALREADY IN "$FILS", IT ASKS "OK TO PURGE BASIC FILES?" AND WAITS FOR A RESPONSE FROM THE USER. A RESPONSE OF "Y" INFORMS BFILE THAT IS SHOULD DESTROY THE OLD DIRECTORY AND CREATE A NEW ONE. A RESPONSE OF "N" TERMINATES BFILE WITHOUT FURTHER ACTION. CFILE CFILE, USED IN CONJUNCTION WITH THE DOS-M/2000C FILE HANDLER, GIVES THE USER THE CAPABILITY OF TRANSFERRING PROGRAMS AND DATA FILES BETWEEN A 2000C/F TSB SYSTEM AND A DOS-/DOS III SYSTEM. THE FILE HANDLER CONVERTS PROGRAM AND DATA FILES FROM 2000C/F DUMP TAPES TO DOS-M/DOS III DISC FILES. IT ALSO TRANSFERS PROPERLY FORMATTED DOS-M/DOS III DATA FILES TO MAGNETIC TAPE FOR SUBSEQUENT LOADING ON A 2000C/F TSB SYSTEM. CFILE CONVERTS THE DOS-M/DOS III FILES CREATED BY THE FILE HANDLER TO BASIC FILES WITHIN "$FILS". CFILE ALSO CONVERTS BASIC FILES WITHIN "$FILS" TO DOS-M/DOS III FILES THAT ARE FORMATTED FOR THE TSB FILE HANDLER. CFILE IS RUN BY TYPING: :PR,CFILE CHECK IS FIRST MADE TO SEE THAT A FILE NAMED "$FILS" EXISTS AND HAS BEEN INITIALIZED BY BFILE. IF NOT, AN ERROR MESSAGE IS PRINTED AND CFILE TERMINATES. IF "$FILS" IS READY, CFILE REQUESTS WHICH OPTION IS DESIRED: SELECT OPTION: 1 = DOS FILE TO BASIC 2 = BASIC FILE TO DOS THE USER RESPONDS WITH "1" OR "2", FOLLOWED BY CARRIAGE RETURN, LINE- FEED. IF A RESPONSE OTHER THAN "1" OR "2" IS GIVEN, CFILE REPEATS THE OPTION REQUEST. IF OPTION "1" IS SELECTED: CFILE TYPES "FILENAME?" AND WAITS FOR THE USER TO TYPE THE NAME OF THE DOS FILE THAT IS TO BE CONVERTED TO A BASIC FILE WITHIN "$FILS". THE USER TYPES THE FILENAME OR "/E". "/E" TERMINATES CFILE. IF A FILENAME IS TYPED, CFILE CHECKS TO SEE THAT IT EXISTS. ITS SIZE IS CHECKED AND THE DIRECTORY IN "$FILS" IS EXAMINED TO SEE IF THERE IS SPACE FOR ANOTHER ENTRY. IF SO, AN ENTRY IS BUILT FOR THE NAMED FILE AND IT IS COPIED TO "$FILS". OTHERWISE, AN ERROR MESSAGE IS PRINTED AND CFILE TERMINATES. AFTER A SUCCESSFUL FILE COPY, CFILE REPEATS THE QUESTION "FILENAME?" AND THE PROCESS CONTINUES AS ABOVE. IF OPTION "2" IS SELECTED: BEFORE RUNNING CFILE, THE USER SHOULD CREATE AN ASCII DOS DATA FILE LARGE ENOUGH TO HOLD THE BASIC DATA FILE TO BE CONVERTED. TO CALCULATE THE NUMBER OF SECTORS NEEDED, DOUBLE THE NUMBER OF RECORDS IN THE BASIC FILE AND ADD ONE. (E.G. IF THE BASIC FILE HAS 5 RECORDS, :ST,A,FILENAME,11) THE NAME OF THE DOS FILE MUST BE THE SAME AS THE FIRST FIVE CHARACTERS OF THE BASIC FILENAME. CFILE TYPES "FLENAME?" AND WAITS FOR THE USER TO TYPE THE NAME OF THE BASIC FILE THAT IS TO BE CONVERTED TO A DOS FILE. THE USER TYPES A FILENAME OR "/E". "/E" TERMINATES CFILE. IF A FILENAME IS TYPED, CFILE CHECKS TO SEE THAT IT EXISTS WITHIN "$FILS", THAT IT IS NOT A PROGRAM FILE, AND THAT A DOS FILE OF THE APPROPRIATE NAME AND SIZE ALSO EXISTS. ERROR MESSAGES ARE PRINTED IF ANY OF THESE CONDITIONS ARE NOT MET AND CFILE TERMINATES. IF ALL IS WELL, CFILE PRINTS "ENTER USER ID" AND WAITS FOR THE USER'S RESPONSE. THE USER MUST ENTER THE TSB USER ID INTO WHICH HE WANTS THE FILE TO BE TRANSFERRED. THE FILE IS THEN CONVERTED TO A DOS FILE AND FORMATTED FOR THE FILE HANDLER. THEN THE QUESTION "FILENAME?" IS REPEATED AND PROCESSING CONTINUES AS DESCRIBED ABOVE. TO USE BASIC: 1. LOAD BASIC AS DESCRIBED IN OPERATING PROCEDURES BELOW. 2. RUN BASIC: :PR,BASIC 3. AFTER "READY" IS PRINTED, TYPE YOUR PROGRAM. 4. TYPE "RUN". 5. TYPE: BYE 6. BASIC WILL TERMINATE WITH THE FOLLOWING MESSAGE: XXX MINUTES OF TERMINAL TIME WHERE XXX IS THE NUMBER OF WHOLE MINUTES THAT BASIC HAS BEEN RUNNING OR "000" IF NO TIME-BASE GENERATOR IS IN THE SYSTEM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR MESSAGES ARE CONTAINED IN THE REFERENCES LISTED IN THE SECTION ON LITERATURE REFERENCE UNDER "MISCELLANEOUS". IF A COMMAND IS GIVEN TO DOS-M/DOS III BASIC THAT REQUIRES DISC STORAGE, A CHECK IS MADE TO SEE THAT A DOS FILE NAMED "$FILS" EXISTS AND HAS BEEN INITIALIZED WITH BFILE. IF NOT, THE MESSAGE "$FILS NOT INITIALIZED" IS PRINTED. **MISCELLANEOUS: "CSAVE"'D PROGRAMS MAY NOT BE TRANSFERRED FROM A 2000 SYSTEM TO DOS-M/ DOS III BASIC. VDR00 (MP 20985) MUST BE USED AS THE TELETYPE DRIVER, NOT DVR05. (BASIC REQUIRES THE "BINARY" I/O CAPABILITIES OF DVR00, WHICH ARE NOT INCLUDED IN DVR05.) BASIC (AND ITS SEGMENTS), BFILE, CFILE, AND $FILS MUST ALL RESIDE ON THE SAME DISC SUBCHANNEL. NOTE:SOME VERSIONS OF THE STANDARD DOS III RELOCATING LOADER WILL NOT LOAD BASIC PROPERLY, EVEN THOUGH THEY SUPPORT CURRENT PAGE LINKING. USE THE LOADER INCLUDED IN THIS PACKAGE IF YOU HAVE BASE PAGE OVER- FLOW PROBLEMS. LITERATURE REFERENCE: 2000F: A GUIDE TO TIME-SHARED BASIC, HP 02000-90044 DOS-M/2000C TSB FILE HANDLER, HP SMALL PROGRAMS MANUAL 5951-1381 X15401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DYNAMIC LOAD OF FAST FORTRAN PROCESSOR TO WCS **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: MICROCODE FORTRAN WCS **LANGUAGES: **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS-3 **MEMORY REQUIREMENTS: 12K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE ALLOWS THE DOS-M/DOS-III USER TO DYNAMICALLY LOAD THE FAST FORTRAN PROCESSOR (FFP) TO WCS. THE PACKAGE CONSISTS OF TWO I/O UTILITY PROGRAMS, THE DOS WCS I/O UTILITY ROUTINE (HP 2433), THE FFP SOURCE FOR CONTROL STORE MODULES #2 AND #3, AND AN FFP OVERLAY ROUTINE. ONE UTILITY PROGRAM READS A BINARY PAPER TAPE OF FFP AND STORES IT INTO A DISC FILE. FFP FOR MODULES #2 AND #3 ARE STORED IN TWO SEPARATE FILES. WHEN FFP IS REQUIRED, THE USER NEEDS ONLY TO EXECUTE THE SECOND UTILITY PROGRAM AND THE FFP FILES WILL BE WRITTEN TO WCS. THIS SECOND UTILITY MUST BE LOADED WITH THE WCS I/O ROUTINE. THE OVERLAY ROUTINE CONSISTS OF PSEUDO ENTRY POINTS OF THE RELOCATABLE LIBRARY AND IS TO BE LOADED WITH THE FORTRAN PROGRAM USING FFP. THIS PACKAGE REQUIRES THE FOLLOWING HARDWARE: A MINIMUM OF 12K CORE, A DISC, PAPER TAPE READER AND PUNCH, LINE PRINTER, CONSOLE TERMINAL, THE FLOATING POINT FIRMWARE (HP 12901A), AND TWO WRITABLE CONTROL STORES (HP12908B). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE **LOAD INSTRUCTIONS: 1. CREATE TWO BINARY FILES ON DISC WITH AT LEAST 5 SECTORS EACH: FFP1 AND FFP2. 2. MOUNT 2 WCS CARDS. 3. ASSEMBLE THE SOURCE OF FFP FOR BOTH MODULES #2 AND #3. 4. COMPILE THE PROGRAM A, SETP1 AND SETP2 SEPARATELY. LOAD WITH THE LOADR AND STORE THE PROGRAMS. EXECUTE. SETP1 LOADS THE FFP BINARY TAPE FOR MODULE #2 IN THE FILE FFP1. SETP2 LOADS THE FFP BINARY TAPE FOR MODULE #3 IN THE FILE FFP2. 5. COMPILE THE PROGRAM B, RUN THE LOADR WITH THE WCS I/O UTILITY ROUTINE, AND STORE THE PROGRAM. EXECUTE AND FFP WILL BE LOADED TO WCS. NOW YOU ARE READY TO EXECUTE A FORTRAN PROGRAM REQUIRING FFP. COMPILE THE FORTRAN PROGRAM AND INSERT OR ENTER THE OVERLAY ROUTINE DURING THE EXECUTION OF LOADR. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: AT THE END OF EXECUTION PROGRAM A DISPLAYS THE FOLLOWING MESSAGES: A. I/O ERR ET EQT #03 - INDICATES END OF PAPER TAPE B. WORD COUNT = XXX - INDICATES THE NUMBER OF WORDS WRITTEN ON DISC PROGRAM B USES THE NUMBER OF WORDS XXX TO READ A DISC FILE INTO A CORE BUFFER AND THE NUMBER OF WORDS XXX/2 TO WRITE THE MICROPROGRAM FROM A CORE BUFFER TO WCS. **MISCELLANEOUS: MAKE SURE THAT THE WCS JUMPER BOARD IS CONNECTED PROPERLY. MAY RUN INTO MEMORY PROTECT PROBLEMS IF THE MAIN CPU DOES NOT PUT OUT 4.85 VOLTS OF POWER SUPPLY. X15501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: OCTAPUS FOR CASSETTE **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: DUMP ASSEMBLER ABSOLUTE MEMORY **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SELF-CON **MEMORY REQUIREMENTS: 1K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: 'OCTASET' IS A TROUBLESHOOTING AID FOR COMPUTER SERVICE ENGINEERS AND PROGRAMMERS. IT ELIMINATES TIME CONSUMING SWITCH REGISTER TOGGLING BY PERFORMING THE FOLLOWING FUNCTIONS ON-LINE IN REAL TIME: ASSEMBLY INTO CORE WRITE ABSOLUTE TAPE FROM CORE LOAD ABSOLUTE TAPE TO CORE VERIFY ABSOLUTE TAPE TO CORE LIST MEMORY BOUND OF ABSOLUTE TAPE DUMP CORE TO TELEPRINTER (OCTAL & INVERSE ASSEMBLY) JUMP TO ANY LOCATION IN CORE SEARCH CORE FOR ANY OCTAL VALUE 'OCTASET' IS CONFIGURED, SELF-CONTAINED, AND NEEDS NO OTHER DRIVERS OR ROUTINES. IT RESIDES WITHIN THE BOUNDS OF A SINGLE PAGE IN CORE. OPERATOR COMMUNICATION WAS A PRIME CONSIDERATION IN ITS DESIGN AND ANYONE FAMILIAR WITH HP ASSEMBLY LANGUAGE CAN MASTER ITS USE IN A VERY SHORT TIME. MINIMUM CONFIGURATION IS AN 8500 CONSOLE (MIN.) ALTHOUGH A TAPE UNIT EXTENDS ITS USEFULNESS CONSIDERABLY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: OCTASET IS A TROUBLESHOOTING AID FOR COMPUTER SERVICE ENGINEERS AND PROGRAMMERS. IT ELIMINATES TIME CONSUMING SWITCH REGISTER TOGGLING BY PERFORMING THE FOLLOWING FUNCTIONS ON LINE IN REAL TIME: OPERATING INSTRUCTIONS: 1. LOAD OBJECT TAPE USING PBCL. 2. PRESS PRESET AND PRESS RUN. THEREAFTER, ALL COMMUNICATION IS THROUGH THE PRINTER KEYBOARD. OPERATION: OCTASET PRINTS "?(BELL)". THIS IS THE FUNCTION REQUEST STATE. OCTASET EXPECTS ONE OF THE FOLLOWING CONTROL CHARACTERS: CHARACTER FUNCTION CONTROL A ASSEMBLY CONTROL B MEMORY BOUNDS OF ABS TAPE (TAPE IS NOT LOADED INTO CORE) CONTROL D DUMP CORE TO TELEPRINTER CONTROL P WRITE ABSOLUTE TAPE FROM CORE CONTROL R RUN FROM GIVEN ADDRESS CONTROL S SEARCH CORE FOR GIVEN VALUE CONTROL T LOAD ABSOLUTE TAPE INTO CORE CONTROL V VERIFY ABSOLUTE TAPE WITH CORE ANY OTHER RESPONSE IS AN ERROR AND OCTASET REPEATS THE QUESTION MARK. OPERATOR COMMUNICATION WITH THE VARIOUS FUNCTIONS IS DISCUSSED BELOW. CR SIGNIFIES THE "CARRIAGE RETURN" KEY. ALL NUMERICS ARE OCTAL. NO SUFFIX B SHOULD BE TYPED AFTER NUMERICS. LEADING ZEROES ARE IGNORED ON INPUT. PRINTOUT OPERATOR RESPONSE ACTION LOAD NONE TAPE IN DECK 3 IS LOADED INTO CORE *EOT NONE LOAD OR VERIFY OPERATION WAS SUCCESS- FUL. END OF TAPE. CHECKSUM NONE THE TAPE BEING LOADED HAS A CHECKSUM ERROR. ADDRESS=XXX NONE THE TAPE BEING LOADED TRIED TO OVER- LAY OCTASET. XXX=OFFENDING ADDRESS. WRITE? XXX,YYY CR CORE LOCATIONS XXX TO YYY INCLUSIVE ARE WRITTEN IN ABSOLUTE FORMAT. DUMP RANGE? XXX,YYY CR THE ADDRESSES AND CONTENTS OF ALL LOCATIONS FROM XXX TO YYY ARE PRINTED ADDR CORE TAPE ---- ---- ---- NONE THE TAPE BEING READ DOES NOT COMPARE XXXX YYYY ZZZZ WITH CORE. SEARCH FOR? VVV CR CORE IS SEARCHED FOR THE VALUE VVV FROM XXX TO YYY. ADDRESSES ARE RANGE? XXX,YYY CR LISTED WHERE VVV IS FOUND. ADDRESS= XXX CR IN RESPONSE TO CONTROL R, OCTAPUS WILL JUMP TO XXX. ASSEMBLY 000123 ___________________ CURRENT ADDRESS(LEFT OVER FROM PRECEEDING ASSEMBLY) FOLLOWING THE PRINTOUT OF THE CURRENT ADDRESS, THE OPERATOR MAY RESPOND IN ONE OF THREE WAYS: 1. TYPE /XXX CR THIS IS EQUIVALENT TO ORG XXX. THE ADDRESS IS CHANGED TO XXX. 2. HOLD DOWN CONTROL KEY THE CONTENTS OF THE CURRENT ADDRESS AND PRESS C. ARE PRINTED. ADDRESS IS NOT INCREMENTED. 3. TYPE AN ASSEMBLY LANGUAGE SOURCE STATEMENT IN THE FOLLOWING FORMAT: LDA 567,I CR A. ASSEMBLY MODE 1. NOP AND OCT 0 ARE EQUIVALENT 2. OCTASET WAS NOT MADE TO RECOGNIZE MACRO-INSTRUCTIONS (E.G., ALF,ALF). THEY MAY BE ENTERED USING THE OCT INSTRUCTION (E.G., OCT 1727). ALTERNATELY, CERTAIN MICROS MAY BE FORCED: IF A SPACE IS DETECTED FOLLOWING THE 3 CHARACTER OPCODE, OCTASET ASSUMES THAT IT IS A MEMORY REFERENCE OR I/O INSTRUCTIO. THE OCTAL OPERAND FOLLOWING THE SPACE IS CONVERTED TO BINARY AND INCLUSIVELY OR'ED WITH THE OPCODE. IT IS THEREFORE POSSIBLE TO TRICK OCTASET INTO OR'ING BITS INTO A REGISTER REFERENCE INSTRUCTION. EXAMPLES: ALF 27 PRODUCES ALF,ALF(001727) SZA 1 PRODUCES SZA,RSS(002003) SLA 1 DOES NOT PRODUCE SLA,RSS B. CORE DUMP 1.OCCASIONALLY AN "OPEN ENDED" DUMP IS DESIRED (NO ENDING ADDRESS). GIVE OCTASET 0 AS AN ENDING ADDRESS AND IT WILL DUMP FOREVER. IT MAY BE STOPPED USING SWITCH 15. EXAMPLE: TO DUMP FROM LOCATION 100, TYPE IN RESPONSE DUMP RANGE? 100, CR . THE MISSING PARAMETER FOLLOWING THE COMMA IS EQUIVALENT TO 0. *****CAUTION***** DON'T TRY THIS WITH DICOM. DICOM DOES NOT LOOK AT SWITCH 15. C. THE FOLLOWING INSTRUCTIONS ARE NOT RECOGNIZED: 1. EQU 6. ENT 2. DEF (USE "OCT") 7. EXT 3. ASC 8. ORG (USE "/") 4. * IN OPERAND (E.G., JMP*-1) 9. ORR 5. RSS (RSS ALONE IS REDUNDANT 10. ORB SINCE JMP MAY BE USED IN ITS 11. DEC (CONVERT DECIMAL TO PLACE) OCTAL AND USE OCT) NOTE: REWINDING AND POSITIONING OF TAPE MUST BE DONE MANUALLY. MAG TAPE I/O IS ALWAYS PERFORMED WITH DECK #3. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: "OPCODE ERROR" - OPCODE ILLEGAL "PAGE ERROR" - A MEMORY REFERENCE WAS MADE TO A PAGE OTHER THAN THE CURRENT PAGE OR THE BASE PAGE. "ILLEGAL SPACE" - ILLEGAL USE OF A SPACE. **MISCELLANEOUS: OCTASET DOES NOT USE THE INTERRUPT SYSTEM. DURING PRINTING OPERATIONS THE OPERATION MAY BE ABORTED BY SETTING BIT 15 OF THE SWITCH REGISTER. X15601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HIGH-SPEED DISC INPUT OUTPUT **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: DISC I/O **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS-3 **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: 'HSDIO' ENABLES THE DOS-M/DOS-III USER TO HAVE THE FOLLOWING IMPROVE- MENTS FOR FILE ACCESSING AS COMPARED TO THE STANDARD SYSTEM EXEC 14 AND EXEC 15 DISC I/O REQUESTS. 1. DIRECT ACCESS OF A FILE INSTEAD OF SEARCHING THE FILE DIRECTORY EACH TIME FOR THE FILE ADDRESS, THEN ACCESSING THE FILE. (INCREASES ACCESS SPEED APPROXIMATELY 10 TO 20 TIMES.) 2. ALLOWS THE USER TO ACCESS THE SCRATCH AREA OF THE CURRENT USER DISC AS ANOTHER DATA FILE IDENTIFIED BY THE NAME '$USER'. 3. ALLOWS THE USER TO ACCESS THE SCRATCH AREA OF THE SYSTEM DISC AS ANOTHER DATA FILE IDENTIFIED BY THE NAME '$SYSM'. 4. ALLOWS THE USER TO READ OR WRITE TO ANY DISC FILE ON THE CURRENT DISC. HARDWARE REQUIREMENTS INCLUDE 8K COMPUTER AND 7900A DISC DRIVE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. ASSEMBLE THE HIGH SPEED DISK INPUT/OUTPUT ROUTINE. 2. COMPILE/ASSEMBLE THE CALLING PROGRAM. 3. LOAD THE CALLING PROGRAM, 'HSDIC' ROUTINE, AND THE RELOCATABLE PROGRAM LIBRARY. 4. EXECUTE THE PROGRAM USING THE ':RU' OR ':PR' DIRECTIVE. USIZE - RETURNS THE NUMBER OF SECTORS AVAILABLE IN THE SCRATCH AREA OF THE CURRENT USER DISK. SSIZE - RETURNS THE NUMBER OF SECTORS AVAILABLE IN THE SCRATCH AREA OF THE SYSTEM DISK (JBIN AREA). CLRTB - REMOVES UNUSED FILES FROM THE SUBROUTINE'S FILE ADDRESS TABLE. IT IS USEFUL WHEN MORE THAN 10 FILES MUST BE USED, BUT AT DIFFERENT TIMES IN THE MAIN PROGRAM. HSDIO - FILE INPUT/OUTPUT ROUTINE. CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT USIZE . . . JSB USIZE ENTER THE ROUTINE TO RETURN THE NUMBER OF SECTORS DEF *+2 AVAILABLE ON THE CURRENT USER DISK. LENGTH OF SCRATCH DEF SIZE AREA RETURNED IN SIZE. . . . SIZE BSS 1 CALLING SEQUENCE - FORTRAN CALL USIZE ( ISIZE ) ISIZE CONTAINS THE NUMBER OF SECTORS IN THE CURRENT USER DISK SCRATCH AREA, UPON RETURN. CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT SSIZE . . . JSB SSIZE ENTER THE ROUTINE TO RETURN THE NUMBER OF SECTORS DEF *+2 AVAILABLE ON THE SYSTEM DISK. LENGTH OF SCRATCH DEF SIZE AREA RETURNED IN SIZE. . . . SIZE BSS 1 CALLING SEQUENCE - FORTRAN CALL SSIZE ( ISIZE ) ISIZE CONTAINS THE NUMBER OF SECTORS IN THE SYSTEM DISK SCRATCH AREA (JBIN), UPON RETURN. CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT CLRTB . . . JSB CLRTB CLEAR THE FILE ADDRESS TABLE (IE., SET THE NUMBER DEF *+1 OF OPEN FILES TO ZERO.) CALLING SEQUENCE - FORTRAN CALL CLRTB CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT HSDIO . . . JSB HSDIO DEF *+6 DEF RCODE (14=READ 15=WRITE) DEF BUFAD BUFFER INPUT/OUTPUT ADDRESS DEF WDCNT NUMBER OF WORDS TO BE TRANSFERRED DEF SECTR STARTING SECTOR NUMBER IN FILE DEF FNAME ADDRESS OF FILE NAME . . . RCODE DEC 14 OR 15 BUFAD BSS 128 WDCNT DEC 128 SECTR DEC 0 FNAME ASC 3,FNAME CALLING SEQUENCE - FORTRAN CALL HSDIO ( ICODE, IBUFR, IBUFL, ISECT, FNAME ) ICODE - INPUT/OUTPUT REQUEST CODE. (14=READ 15=WRITE) IBUFR - NAME OF ARRAY IN WHICH DATA IS TRANSFERRED. IBUFL - NUMBER OF WORDS TO BE TRANSFERRED TO/FROM ARRAY/DISK FILE. ISECT - STARTING SECTOR NUMBER WITHIN THE DISK FILE. FNAME - NAME OF ARRAY CONTAINING THE NAME OF THE DISK FILE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ALL ERROR MESSAGES APPEAR ON LOGICAL UNIT #6 IN THE FOLLOWING FORM: XXXXX : HS YY NNNNN WHERE: XXXXX - NAME OF THE PROGRAM THAT THE ERROR OCCURRED IN. YY - NUMERIC ERROR CODE. NNNNN - NAME OF THE FILE BEING ACCESSED (ON UNIT #1) YY PROBLEM 01 I/O REQUEST ERROR (VALUE IS NOT 14 OR 15) 02 WORD COUNT ERROR (VALUE IS ZERO OR NEGATIVE) 03 FILE NAME ERROR (MISSING FILE OR TOO MANY FILES ACCESSED AT ONE TIME) 04 SECTOR ADDRESS ERROR (FILE OVERWRITE ATTEMPTED OR NEGATIVE SECTOR NUMBER) **MISCELLANEOUS: IF THE USER ACCESSES MORE THAN TEN FILES AT ONE TIME, IT IS NECESSARY TO MODIFY THE PROGRAM TO ACCOMMODATE THE ADDITIONAL OPENED FILES. CHANGE LABEL D10 DEC XXX TAB5 BSS XXX TAB4 BSS XXX TAB3 BSS XXX TAB2 BSS XXX TAB1 BSS XXX WHERE: XXX IS THE MAXIMUM NUMBER OF FILES TO BE OPENED AT ONE TIME X15701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: "LOAD ON CALL" (LOCAL) PACKAGE **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 4 **KEYWORDS: SEGMENTATION FORTRAN **LANGUAGES: FTN2 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PACKAGE ALLOWS EACH SUBROUTINE CALLED BY A FORTRAN MAIN PROGRAM, TO BE PLACED IN A SEGMENT. SEGMENTS ARE LOADED AT RUN TIME. THE FIRST PROGRAM RUNS AFTER COMPILATIONS AND BEFORE THE RELOCATING LOADER. IT ASKS FOR THE MAIN AND SUBROUTINE NAMES AND AFTER SEVERAL VERIFICATIONS CREATES SEGMENTS IN JOB BINARY AREA. THE SECOND PROGRAM IS A SUB- ROUTINE CALLED BY THE MAIN PROGRAM. IT VERIFIES AND ASSUMES ARGUMENT TRANSFER TO THE PROPER SUBROUTINE BY LOADING THE APPROPRIATE SEGMENT IF NON-PRECEDING IN CORE. THIS PACKAGE ALLOWS APPRECIABLE CORE SPACE AND THE STORAGE TOTAL REQUIRED IS EQUIVALENT TO THE MAIN, THE LARGEST SUBROUTINE, PLUS 150/10 WORDS FOR THE (LOAD CALL) ROUTINE. A TEST PROGRAM IS INCLUDED. HARDWARE REQUIREMENTS: A MINIMUM DOS-M CONFIGURATION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. COMPILE THE MAIN PROGRAM "DEFLC" AND ASSEMBLE THE ASSEMBLY ROUTINES 2. LOAD THE MAIN PROGRAM AND MAKE IT PERMANENT FILE BY TYPING THE DIRECTIVE : ST, P 3. CLEAR THE JOB BINARY AREA. 4. ASSEMBLE THE "LOCAL" ASSEMBLY ROUTINE AND MAKE IT PERMANENT FILE BY TYPING THE DIRECTIVE : ST, R, LOCAL. 5. CLEAR THE JOB BINARY AREA. 6. MODIFY THE MAIN PROGRAM IN THIS WAY : - REPLACE THE FIRST SUBROUTINE CALL BY CALL LOCAL (1, ARG 1, ARG 2 ...) 1 IDENTIFY THE SUBROUTINE NAME ARG 1, ARG 2, ARE ARGUMENTS OF THIS SUBROUTINE NOTE: THE MAXIMUM NUMBER OF ARGUMENTS IS LIMITED TO 16 - REPLACE THE SECOND SUBROUTINE CALL BY CALL LOCAL (2, ARG 1,...) AND SO ON FOR OTHER SUBROUTINES, BUT THE MAXIMUM NUMBER OF SUBROUTINES IS LIMITED TO 10. 7. COMPILE THE MAIN PROGRAM AND THE SUBROUTINES 8. RUN THE PROGRAM "DEFLC" BY THE DIRECTIVE : PR, DEFLC IF THE SYSTEM IS NOT IN BATCH MODE, THE PROGRAM ASKS ENTER MAIN NAME, SUBROUTINE NAMES AND /E TYPE OR READ ON THE BATCH UNIT THE MAIN PROG NAME AND THE SUBROUTINE NAMES, USING COMMA AS SEPARATOR AND /E TO CLOSE THE INPUT. THE FIRST SUBROUTINE NAME WILL BE ASSOCIATED WITH THE NUMBER ONE, (WHICH IDENTI- FIES THE SUBROUTINE NAME IN THE CALL LOCAL (1, ...) THE SECOND SUBROUTINE NAME WILL BE ASSOCIATED TO THE NUMBER TWO, ETC. THE PROGRAM VERIFIES THE NUMBER OF SUBROUTINE NAMES ENTERED, THEN EXAMINES THE JOB BINARY AREA AND THE USER DIRECTORY FOR DUPLICATE FILE NAMES. IF NO ERROR IS DETECTED, HE PLACES RELOCATABLE SEGMENTS IN JOB BINARY AREA AND WRITES THE MESSAGE LOCAL COMPLETE ON THE SYSTEM CONSOL 9. RUN THE RELOCATING LOADER BY THE DIRECTIVE : PR, LOADER, 2 AND TYPE THE NAME OF THE RELOCATABLE FILE CONTAINING THE SUBROUTINE "LOCAL". AT THE END OF THE LOADING, EACH SUBROUTINE CALLED BY THE INSTRUCTION CALL LOCAL IS IN A USER SEGMENT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF ERRORS OCCUR DURING EXECUTION OF THE USER PROGRAM THE FOLLOWING MESSAGE LC XXX LOCAL TERMINATED IS TYPED ON THE SYSTEM CONSOLE, AND CONTROL RETURNS TO DOS-M. LC 01 THE NUMBER IDENTIFYING THE SUBROUTINE IN CALL LOCAL IS GREATER THAN THE NUMBER OF SUBROUTINES SPECIFIED DURING CREATION OF SEGMENTS. LC 02 THE NUMBER IDENTIFYING THE SUBROUTINE IS LESS THAN OR EQUAL TO ZERO OR MISSING (INSTRUCTION CALL LOCAL WITHOUT ARGMENT LIST). IF ERROR OCCURS DURING CREATION OF SEGMENTS, THE FOLLOWING MESSAGE IS TYPED AND CONTROL RETURNS TO DOS-M. NNNNN NNNN PROGRAM NAMES MMMMM MMMM ----- ----- LC XX LOCAL TERMINATED XX = 03 TO 13 LC 03 TWO COMMAS CONSECUTIVELY ARE DETECTED IN THE RECORD IN THE OF SUBROUTINES NAME LC 04 NO SUBROUTINE NAME FOUND IN THE RECORD LC 05 THE JOB BINARY AREA IS EMPTY LC 06 INVALID LENGTH FOR RELOCATABLE RECORD IN JOB BINARY AREA LC 07 THE MAIN PROGRAM NAME IS FOUND TWICE IN JOB BINARY AREA LC 08 THE MAIN PROGRAM ENTRY POINT IS FOUND TWICE IN JOB BINARY AREA LC 09 THE MAIN PROGRAM ENTRY POINT IS NOT FOUND IN JOB BINARY AREA LC 10 THE NAME = SEGM APPEARS IN JOB BINARY (OCCURS IF DEFLC IS RUN TWICE A JOB NNNNN LC 11 THE SEGMENT NAME NNNNN IS ALREADY IN JOB BINARY AREA NNNNN LC 12 THE SEGMENT ENTRY POINT NNNNN IS ALREADY IN JOB BINARY AREA MMMMM LC 13 PROGRAM OR SEGMENT NAME DUPLICATION **MISCELLANEOUS: THE SEGMENT NAME IS MADE BY ADDING TO THE FIRST 3 CHARACTERS OF THE MAIN NAME, THE STRING.0 FOR THE FIRST SEGMENT, .1 FOR THE SECOND, AND .9 FOR THE 10, TO AVOID DUPLICATE SEGMENT NAME IT IS NECESSARY TO NOT USE LOCAL TECHNIQUE ON TWO OR SEVERAL PROGRAMS WHOSE NAME BEGINS BY THE SAME FIRST THREE CHARACTERS. DURING PROGRAM EXECUTION IF 2 CALL LOCAL CONSECUTIVE REFER TO THE SAME SUBROUTINE, THE APPROPRIATE SEGMENT IS LOADED ONCE ON THE FIRST CALL. HOWEVER, IT'S POSSIBLE TO CHANGE THE ARGUMENT NUMBER. IF IT'S IN THE SCOPE OF SUBROUTINE. EXAMPLE: IF THE FOLLOWING CALLS ARE POSSIBLE CALL SUBR 1 (ARG 1, ARG 2, ARG 3, ARG 4...) CALL SUBR 1 (ARG 1, ARG 2, ARG 3) THE LOCAL CALLS CALL LOCAL (1, ARG 1, ... ARG 4) CALL LOCAL (1, ARG 1, ... ARG 3) ASSUME PROPER ARGUMENTS TRANSFERRED. X15801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: BASIC LINE NUMBER RESEQUENCER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 5 **KEYWORDS: BASIC SORT **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SIO **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE BASIC LINE RESEQUENCER PROGRAM PROVIDES A MEANS OF CHANGING THE LINE NUMBERS OF A BASIC PROGRAM. ANY STATEMENT IN THE BASIC PROGRAM WHICH REFERENCES A CHANGED LINE NUMBER IS ALTERED TO CORRESPOND. THE ORIGINAL EXECUTION SEQUENCE OF THE BASIC PROGRAM IS RETAINED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: A. LOAD THE BASIC RESEQUENCE PROGRAM USING THE BASIC BINARY LOADER. B. SET THE SWITCH REGISTER TO 000100. C. PRESS LOAD ADDRESS. D. PRESS PRESET E. PRESS RUN 1. SWITCH 0 DOWN TYPE THE NUMBER AT WHICH THE BASIC PROGRAM SHOULD START, A COMMA, THE INCREMENT BETWEEN SUCCEEDING STATEMENTS, AND AN END OF RECORD MARK (CR/LF). 2. SWITCH 0 UP THIS OPTION ADDS A CONSTANT TO THE LINE NUMBERS OF THE BASIC PROG. TYPE THIS NUMBER FOLLOWED BY AN END OF RECORD MARK (CR/LF). IF THE COMPUTER TYPES "FORMAT ERROR", RECHECK THE OPTION SWITCH AND TYPE THE INFORMATION AGAIN. WHEN THIS PHASE IS COMPLETED, THE COMPUTER WILL TYPE "RUN" AND HALT (T REGISTER CONTAINS 102000). A. PLACE THE BASIC LANGUAGE SOURCE TAPE IN THE SYSTEM INPUT DEVICE. B. PRESS "RUN". WHEN COMPUTER HALTS (T REGISTER CONTAINS 102055), PASS 1 IS COMPLETED. C. TO EXECUTE PASS 2, REPLACE THE SOURCE TAPE IN THE SYSTEM INPUT DEVICE, TURN ON THE SYSTEM TAPE PUNCH AND PRESS "RUN". WHEN THE COMPUTER HALTS (T REGISTER CONTAINS 102077) THE RESEQUENCED PROGRAM WILL HAVE BEEN PUNCHED ALONG WITH A 10 INCH LEADER AND TRAILER. TO RESEQUENCE ANOTHER PROGRAM PRESS RUN. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: HALTS AND ERROR CONDITIONS T REGISTER MESSAGE EXPLANATION 102000 RUN READY FOR PASS 1. GO TO STEP F. 102011 --- UNDEFINED LABEL. PRESS RUN TO CONTINUE PROCESSING, THE NUMBER PRINTED WILL BE UNPREDICTABLE. 102012 --- OUT OF MEMORY. IRRECOVERABLE ERROR. REVISE TAPE AND START FROM STEP B. ------ FORMAT ERROR DATA NOT IN CORRECT FORMAT, TYPE AGAIN. 102055 --- READY FOR PASS 2. GO TO STEP H. 102077 --- PROCESSING COMPLETE. TO PROCESS ANOTHER TAPE, PRESS RUN. **MISCELLANEOUS: X15901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: ON-LINE EDITOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 5 **KEYWORDS: EDITOR **LANGUAGES: ASMB(ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SELF-CON **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS EDITOR PROGRAM ALLOWS THE USER TO PREPARE A SYMBOLIC FILE BY ENTERING IT DIRECTLY INTO AVAILABLE MEMORY FROM THE TTY. ALTERNATIVELY, A FILE MAY BE PREPARED OFF-LINE ON PAPER TAPE AND LOADED INTO MEMORY WITH A TAPE READER. EDITING OPERATIONS ARE CONVERSATIONAL, AND ARE PERFORMED ON-LINE USING THE TTY. THE PROCEDURES ARE SIMILAR TO THOSE USED IN CONSTRUCTING A (BASIC) PROGRAM. AVAILABLE EDITING OPERATIONS INCLUDE; DELETING, REPLACING, AND INSERTING LINES OR SERIES OF LINES. A LIMITED DEGREE OF CHARACTER EDITING IS POSSIBLE. THE FILE OR PORTIONS OF IT MAY BE LISTED ON THE TTY (WITH OR WITHOUT LINE NUMBERS), OR PUNCHED OUT ON EITHER THE TTY OR A HIGH-SPEED PUNCH. THE PROGRAM IS CODED IN ABSOLUTE ASSEMBLY LANGUAGE, RESIDES ENTIRELY ON BASE PAGE, AND USES ITS OWN I/O DRIVERS. ONE PAGE OF MEMORY IS RESERVED FOR ADDRESS STORAGE. THE REMAINING AVAILABLE MEMORY IS USED TO STORE THE SYMBOLIC FILE, TWO ASCII CHARACTERS PER WORD. HARDWARE: 4K, EAU, TTY, TAPE READER AND PUNCH. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: #885 PUNCH EQU 11B 886 RDR EQU 10B (TTY IS INPUT THROUGH THE SWITCH REGISTER) THE EDITOR PROGRAM, AND TTY I/O DRIVERS MUST BE ASSEMBLED SEPARATELY. THE ORDER OF LOADING IS NOT IMPORTANT. THE USER MUST CONFIGURE THE PROGRAMS TO HIS SYSTEM BY APPROPRIATELY ALTERING THE "PUNCH", "RDR", AND "TTY" SYMBOLS. ALSO THE VALUE OF "UPLIM" MUST BE SET SOMEWHAT BELOW (2-8 LOCATIONS) THE UPPER LIMIT OF AVAILABLE CORE. THE STARTING ADDRESS OF THE PROGRAM IS 100B. AFTER PRESSING THE RUN BUTTON, A "?" WILL BE PRINTED ON THE TTY INDICATING THAT THE PROGRAM IS WAITING FOR AN INSTRUCTION TO PERFORM AN OPERATION. THE AVAILABLE OPERATIONS ARE LISTED IN THE TABLE BELOW. AFTER THE DESIRED OPERATION HAS BEEN SELECTED, TYPE THE APPROPRIATE ONE-LETTER OPERATION CODE (COLUMN ONE OF THE TABLE) FOLLOWED BY WHATEVER PARAMETERS ARE REQUIRED. THE PARAMETERS N1 AND N2 ARE NON-NEGATIVE DECIMAL INTEGERS OF FROM ONE TO FOUR DIGITS. A DELIMETER FOR A NUMERICAL INPUT MAY BE A SPACE, COMMA, OR CARRIAGE RETURN. IF EITHER N1 OR N2 IS A LINE NUMBER, IT MUST NOT BE GREATER THAN 1023. THE "ESC" KEY MAY BE USED TO CANCEL THE OPERATION PROVIDED THE LAST PARAMETER HAS NOT BEEN TERMINATED. IF THE "E", "R", OR "K" OPERATION IS SELECTED, AN ASCII RECORD (REFERRED TO FROM NOW ON AS A "LINE") OR SERIES OF RECORDS IS TO BE ENTERED ON THE TTY. A LINE CONSISTS OF A STRING OF ANY NUMBER OF ASCII CHARACTERS TERMINATED BY A CARRIAGE RETURN. THE PROGRAM SUPPLIES THE LINE FEED. A LINE THAT HAS NOT BEEN TERMINATED MAY BE DELETED WITH THE "RUBOUT" KEY. INDIVIDUAL CHARACTERS MAY BE DELETED IN A NON-TERMINATED LINE BY HOLDING DOWN THE "CTRL" KEY AND HITTING THE "E" KEY. CHARACTERS ARE SUCCESSIVELY DELETED STARTING FROM THE LAST ONE ENTERED. A "<-" IS PRINTED FOR EACH DELETION. THE USER MAY SELECT HIS OWN CHARACTER DELETION CODE BY ALTERING THE VALUE OF "CDELT". IF THE "I" OPERATION IS SELECTED, A SERIES OF LINES ON PUNCHED PAPER TAPE IS TO BE READ IN FROM THE TAPE READER. A LINE ON PAPER TAPE MUST BE TERMINATED BY BOTH A CARRIAGE RETURN AND A LINE FEED. ANY LINE CONTAINING A "RUBOUT" WILL BE DELETED. THE PRINT OPERATIONS ("P", "L", AND"M") ALLOW SELECTED SECTIONS OF THE SYMBOLIC FILE TO BE PRINTED OUT ON THE TTY. PRINTING MAY BE TERMINATED AT ANY TIME BY HITTING THE SPACE BAR. THE ENTIRE FILE MAY BE SCRATCHED BY TYPING "D" FOLLOWED BY A DELIMITER (SPACE, CARRIAGE RETURN, OR COMMA). THE PROGRAM WILL THEN PRINT "??????" ALERTING THE USER TO THE FACT THAT HE HAS SELECTED THIS OPERATION. TYPING "S" WILL THEN SCRATCH THE FILE. TYPING ANY OTHER CHARACTER WILL CANCEL THE OPERATION. THE "H" OPERATION IS USED TO HALT THE COMPUTER IN SUCH A WAY THAT THE SYMBOLIC FILE WILL NOT BE ACCIDENTLY DESTROYED. WHILE USING THE EDITOR THE FOLLOWING HALTS MAY OCCUR: T-REGISTER REASON FOR HALT 102000 SELECTED "H" OPERATION 102011 EXCEEDED AVAILABLE MEMORY 102022 ASSIGNED LINE NUMBER IS GREATER THAN 1023 TABLE OF OPERATIONS B = SPACE, COMMA, OR CARRIAGE RETURN OPERATION INPUT FORMAT FUNCTION E E N1 B ENTER LINE N1 ON THE TTY. RUBOUT BEFORE CARRIAGE RETURN DELETES THE LINE. K K N1 B N2 B INPUT SERIES OF LINES ON THE TTY. LINE NUMBERS ASSIGNED STARTING WITH N1 AND INCREMENT N2. TERMINATE THE SERIES WITH THE "ESC" KEY, HITTING RUBOUT BEFORE CARRIAGE RETURN DELETES THE LINE. R R N1 B REPLACE LINE N1 WITH LINE TO BE ENTERED ON THE TTY, HITTING RUBOUT BEFORE CARRIAGE RETURN DELETES THE LINE. D D N1 B N2 B DELETE LINES N1 THROUGH N2 D D N1 B B DELETES LINE N1 D D B PREPARATION TO SCRATCH ENTIRE FILE S S SCRATCH THE ENTIRE FILE. MUST FOLLOW THE ABOVE OPERATION. P P N1 B N2 B PRINT LINES N1 THROUGH N2 ON THE TTY WITH LINE NUMBERS. P P N1 B B PRINT LINE N1 WITH LINE NUMBERS P P B PRINT ENTIRE FILE WITH LINE NUMBERS M SAME AS "P" SAME AS "P" EXCEPT THAT THE LINE NUMBERS ARE DELETED. L SAME AS "P" SAME AS "M" EXCEPT THAT LEADING AND TRAILING FEED FRAMES ARE PROVIDED. T SAME AS "P" PUNCH OUT THE ENTIRE FILE OR PORTIONS OF IT ON THE HIGH-SPEED PUNCH. LINE NUMBERS ARE OMITTED AND NO FEED FRAMES ARE PROVIDED. F F PRODUCE FEED FRAMES ON THE HIGH SPEED PUNCH. I I N1 B N2 B FILE ON PAPER TAPE TO BE READ IN FROM THE TAPE READER. LINE NUMBERS ASSIGNED STARTING WITH N1. SUCCEEDING LINES EQUALLY SPACED WITH INCREMENT N2. LINES CON- TAINING RUBOUTS ARE DELETED. O O N1 B N2 B STARTING WITH LINE N1 INCREASE SPACING BETWEEN EACH LINE ACCORDING TO THE FORMULA: NEW LINE NO. = OLD LINE NO. + (OLD LINE NO. -N1)*N2 G G N1 B N2 B STARTING WITH LINE N1 INCREASE EACH LINE NUMBER BY N2 C C ASSIGN LINE NO 0 TO THE FIRST LINE. SUCCEEDING LINES ARE EQUALLY SPACED WITH INCREMENT 1. H H HALT THE COMPUTER. TO RESUME OPERATION, PUNCH THE RUN BUTTON. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X16001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-M DISC EDITOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 5 **KEYWORDS: EDITOR **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM IS A DOS-M BASED CONVERSATIONAL DISC EDITOR WHICH HAS COMPLETE FREEDOM TO EXAMINE OR ALTER ANY PORTION OF A DOS-M DISC ON A TRACK-SECTOR BASIS. LIST OR CHANGE OPERATIONS CAN BE DONE IN ASCII, INTEGER, OCTAL, OR FLOATING-POINT (EVEN OR ODD WORD) FORMAT. A MINIMAL DOS-M, WITH AN HP2116 OR HP2100 CPU, CRT OR TELETYPE, AND A 7900 DISC CONSTITUTE THE REQUIRED EQUIPMENT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS UTILITY PROVIDES EDITING FREEDOM TO EXAMINE OR ALTER ANY PORTION OF A DOS-M DISC. OPERATIONS ARE PERFORMED ON A TRACK-SECTOR BASIS. LIST OR CHANGE OPERATIONS CAN BE DONE IN ASCII, INTEGER, OCTAL, OR FLOATING POINT (EVEN OR ODD WORD) FORMAT. TAPE OUTPUT AND INPUT COMMANDS ALLOW SELECTIVE DATA DUMPING AND INPUTTING FOR BULK EDIT TRANSFERS. LIST OUTPUT CAN BE CHANGED TO ANY LOGICAL UNIT. EDIT OPERATIONS CAN BE PERFORMED ON THE OPPOSITE PLATTER WITH EDIT TERMINA- TION RETURNING CONTROL TO THE ORIGINAL PLATTER. A "?" COMMAND WILL DISPLAY THE AVAILABLE EDIT COMMANDS. THE 'LIMITS?' REQUEST HAS A STANDARD FORMAT. IF AN IMPROPER INPUT IS GIVEN THE REQUEST WILL BE REPEATED. IF A SINGLE LIMIT IS GIVEN OR THE FIRST IS GREATER THAN THE LAST THE FIRST IS TAKEN FOR BOTH THE FIRST AND THE LAST. IF NO INPUT IS GIVEN (I.E., A BLANK, 'CR-LF') THEN THE LIMIT WILL BE TAKEN AS PROGRAM DEFINED (I.E., MAXIMUM AVAILABLE). AN ENTRY PASS- WORD (SEE SOURCE LISTING) IS REQUIRED FOR OPERATING SYSTEM SAFETY PURPOSES. THIS PROG IN GENERAL FUNCTIONS INTERACTIVELY WITH THE USER. THE SOURCE OF THE FORTRAN PROGRAM LISTS ALL AVAILABLE EDITOR COMMANDS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: INVALID OPERATOR INPUTS WILL USUALLY CAUSE THE PROGRAM TO REPEAT THE INPUT REQUEST. "MOVING-HEAD DISC OPERATING SYSTEM" HP #02116-91779 OF MACH 1971. USE PROGRAM WITH CAUTION SINCE THE OPERATING SYSTEM CAN BE DESTROYED. SUGGEST FOR ANY OPERATION OF AN EXPERIMENTAL NATURE THAT THE DISC FIRST BE DUPLICATED. X16101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-3 B INTERACTIVE EDITOR **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 5 **KEYWORDS: EDITOR **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-3B **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: EDITR IS A DOS VERSION OF THE RTE INTERACTIVE EDITOR. IT ALLOWS A USER TO EDIT TYPE-S (SOURCE) FILES CONVERSATIONALLY THROUGH A TELEPRINTER CONSOLE. BOTH LINE AND CHARACTER EDITS ARE SUPPORTED. THE USER ENTERS A SERIES OF CONTROL COMMANDS TO EDIT THE ORIGINAL FILE. LINES CAN BE INSERTED OR DELETED, AND TEXT EXCHANGES CAN BE MADE. UNLIKE THE STANDARD DOS EDITOR (:ED), EDITR WILL ALLOW THE FILE TO BE RESCANNED FOR FURTHER EDITING. A DOS-IIIB OPERATING SYSTEM MUST BE USED BECAUSE EDITR USES THE FILE CREATE, FILE PURGE, AND FILE RENAME EXEC CALLS (EXEC 32, 33, 34). DOS-IIIA AND DOS-M WILL NOT WORK UNLESS THIS PROG. IS MODIFIED TO HANDLE ITS OWN DIRECTORY CHANGES. EDITR USES ALL AVAILABLE CORE (EXCLUSIVE OF ITSELF) FOR BUFFERING THE DISC. THEREFORE, PROGRAM EFFICIENCY INCREASES IF MORE THAN THE MINIMUM MEMORY REQUIREMENT IS AVAILABLE. FOR COMPLETE OPERATING PROCEDURES, THE USER IS REFERRED TO EITHER OF THE FOLLOWING TEXTS: RTE-II PROGRAMMING AND OPERATING MANUAL (92001-93001), SEC. 4, PART 2. RTE INTERACTIVE EDITOR (92060-90014). MINIMAL DOS-III, I.E. 16K COMPUTER, MOVING HEAD DISC AND A TELEPRINTER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: THE SOURCE IS ENCLOSED ON THREE TAPES. ASSEMBLE THESE TAPES BY PLACING THE FIRST IN THE TAPE READER AND RUNNING THE ASSEMBLER :PR,ASMB,99 WHEN THE ASSEMBLER SUSPENDS, PLACE THE 2ND TAPE IN THE READER AND TYPE -- :UP,5 :GO,ASMB REPEAT THE ABOVE PROCEDURE FOR THE LAST TAPE. LOAD THE PROG. WITH THE DOS LOADR :PR,LOADR **RUN INSTRUCTIONS: RUN THE EDITOR WITH THE FOLLOWING DIRECTIVE :PR,EDITR (,TTYLU(,LINE LENGTH)) WHERE: TTYLU IS THE L.U. OF THE TELEPRINTER USED FOR COMMAND INPUT. DEFAULT IS LOGICAL UNIT 1. LINE LENGTH IS THE MAXIMUM OUTPUT RECORD LENGTH IN CHARACTERS. DEFAULT IS 150 CHARACTERS. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DOS=IIIB INTERACTIVE EDITOR GENERAL DESCRIPTION THE DOS-IIIB INTERACTIVE EDITOR ENABLES THE USER TO SELECTIVELY ALTER THE CONTENTS OF DOS TYPE-S (SOURCE) FILES. SOURCE FILES TO BE EDITED MAY BE RESIDENT IN THE USER AREA OF A DISC, OR THEY MAY BE ENTERED THROUGH THE KB. (ALLOWING THE USER TO INTERACTIVELY CREATE NEW SOURCE FILES). THE USER CAN MONITOR THE PROGRESSION OF THE EDITING BY LISTING THE CURRENT SOURCE FILE LINE NUMBER OF THE CURRENT SOURCE FILE LINE ON THE CONSOLE. THE USER IS ABLE TO SEARCH FOR OCCURRENCES OF CHAR. STRINGS AND SELEC- TIVELY ALTER THEM. FULL CHARACTER EDITING IS SUPPORTED, AND CHARS. MAY BE REPLACED, INSERTED, OR DELETED. TEXT EXCHANGES CAN BE MADE THROUGH- OUT ALL OR PART OF THE SOURCE FILE. THE USER IS STRONGLY RECOMMENDED TO OBTAIN A COPY OF EITHER OF THE TWO MANUALS LISTED IN SECTION 5.0. THE SECOND OF THE TWO MANUALS (RTE INTERACTIVE MANUAL) IS PERHAPS MORE INSTRUCTIVE. ONLY THE DEVIANCIES FROM THE RTE-II EDITOR WILL BE COVERED BELOW. DIFFERENCES FROM THE RTE-II EDITR: 1.THERE IS NO LS AREA. THEREFORE, A SPACE IN RESPONSE TO THE QUESTION SOURCE FILE? WILL ASSUME INPUT IS FROM THE KEYBOARD, AND EOF WILL BE PRINTED IMMEDIATELY. EDITR WILL NOT ALLOW A FILE TO BE REPLACED IF IT WAS CREATED FROM THE KEYBOARD. 2.THE L OPTION (PLACE INPUT IN LS AREA) IN THE END COMMAND IS DISABLED. 3.SECURITY CODES AND CARTRIDGE REFERENCE NUMBERS ARE NOT USED. 4.THERE ARE NO FMGR ERROR MESSAGES. INSTEAD, IF A FILENAME ISNT FOUND, ONE OF THREE ACTIONS WILL BE TAKEN: IF THE FILENAME IS IN RESPONSE TO SOURCE FILE?, THE QUESTION WILL REPEAT. IF THE FILENAME IS PART OF A MERGE COMMAND, THE MESSAGE SOURCE UNDEFINED WILL BE PRINTED, AND THE NEXT LINE WILL BECOME THE PENDING LINE. IF THE FILENAME IS PART OF AN EC OR ER COMMAND, THE STANDARD EDITR ERROR MESSAGE (??) IS PRINTED. 5.IF AN ILLEGAL FILENAME IS ENCOUNTERED (I.E. A FILENAME BEGINNING WITH A DIGIT), EDITR RESPONDS WITH ILLEGAL FILENAME. IN THE CASE OF THE M COMMAND, THE PENDING LINE IS UNCHANGED (NO TRANSFER TAKES PLACE). 6.THERE ARE NO ZERO-LENGTH LINES. IF ONE IS CREATED, IT WILL BE REMOVED ON THE NEXT PASS OF THE EDITOR. THEREFORE, IF CNTL @ IS ENTERED AS A FIND FIELD, THE END OF THE FILE WILL NOT BE FOUND, AND EOF WILL PRINT. 7.THE ALTERNATE ESCAPE KEY HAS BEEN CHANGED TO A BACKSLASH (\). 8.THE DELETE OPTION FOR THE CHARACTER EDIT OPTIONS (P, C AND O) HAS BEEN CHANGED TO A CNTL D (CNTL C FORCES AND END-OF-LINE WHEN USING DVR00). 9.IF THE FILENAME IN AN ECNAME OR ERNAME ALREADY EXISTS, THE MESSAGE DUPLICATE FILENAME IS ISSUED, AND THE USER MUST REISSUE THE END CMND. 10.EDITR USES A TEMPORARY FILE CALLED /\/\/ WHEN REPLACING A FILE (I.E. AFTER AN ER OR ERNAME COMMAND). THIS FILENAME MUST NOT EXIST IN THE USER AREA WHEN EDITR IS RUN. IF IT DOES, THE MESSAGE MUST :PU,/\/\/ IS PRINTED. THE ONLY OPTION TO THE USER IS TO CREATE A NEW FILE WITH THE ECNAME COMMAND AND THEN PURGE /\/\/ AS SOON AS POSSIBLE. 11. WHEN THE ALTERNATE ESCAPE CODE IS ENCOUNTERED IN A LINE OF TEXT TO BE INSERTED, IT IS NO LONGER REPLACED BY THE REGULAR ESCAPE CODE. 12. THE H COMMAND IS ILLEGAL AT THE END-OF-FILE WHERE IT HAS NO MEANING. 13. IF DISC SPACE IS NOT AVAILABLE, THE MSG. DISC OVERFLOW IS PRINTED AND EDITR WILL ABORT. EDITR WILL USE ALL DISC SPACE BETWEEN THE END OF THE USER AREA (AFTER THE LAST FILE) AND THE START OF THE JBIN AREA. EDITR WILL NOT WRITE OVER RELOCATABLE IN THE JBIN AREA. 14. LU'S FOR LIST (THE L COMMAND) ARE RESTRICTED TO EITHER 1 OR 6. 15. IF SYSTEM SEARCH IS IN EFFECT WHEN EDITR IS RUN, THE MESSAGE ISSUE :SS,99 WILL BE PRINTED, AND EDITR WILL ABORT. 16. TRAILING BLANKS ARE NOT DELETED FROM THE SOURCE FILE WHEN IT IS READ IN THE ONLY WAY TO REMOVE TRAILING BLANKS IS WITH THE K COMMAND. NOTE: IF EDITR IS :RUNNED INSTEAD OF :PROGED, THE POSITION OF THE JBIN AREA WILL BE INCORRECTLY INTERPRETED AND THE EDITOR WILL ABORT AS UNDER NOTE 13 ABOVE. ONLY RUN EDITR WITH A :PR CMND. THE FULL CAPABILITIES OF EDITR ARE APPRECIATED BY EXPERIMENTATION. THE TEST CASE ONLY SAMPLES A SMALL PORTION OF THE EDITING CMNDS. HOWEVER, IT SHOULD TEST TO SEE THAT THE BASIC ROUTINES OF THE EDITOR ARE FUNCTIONAL. @ :PR,EDITR DIRECTIVE TO START EDITING SOURCE FILE? REQUEST FOR SOURCE FILENAME /FRED1 FILENAME GIVEN SOURCE FILE? FILE WAS EITHER NOT FOUND OR NOT A SOURCE FILE /FRED TRY ANOTHER FILE ASMB,R,L FILE FOUND AND FIRST LINE PRINTED /L5 LIST 5 LINES ASMB,R,L NAM WALDO,3 EDITR COMPLIES ENT ENTRY SPC 2 EXT .DEL,..FCM,EXEC SPC 3 EDITOR DISPLAYS PENDING LINE /1 GO BACK TO LINE 1 ASMB,R,L EDITOR COMPLIES /EC1STFL CREATE THE FILE 1STFL ILLEGAL FILENAME CAN'T HAVE A NUMBER AS FIRST CHAR. /ECFERD GIVE IT A GOOD NAME END OF EDIT WE'RE ALL DONE @ **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: SYSTEM SEARCH MUST BE DISABLED BEFORE RUNNING EDITR (:SS,99). IF THIS IS NOT DONE, EDITR WILL PRINT "MUST ISSUE :SS,99" AND ABORT. X16201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MODIFIED DOS-M WITH FORTRAN READ/WRITE OF DISC FILES **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 6 **KEYWORDS: FORTRAN I/O FILES DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PACKAGE PROVIDES SEVERAL MODIFICATIONS TO THE DOS-M SYSTEM, REVISION F. THE MAIN FEATURE OF THE REVISED SYSTEM IS THE ABILITY TO READ AND WRITE DISC FILES USING FORTRAN I/O STATEMENTS. THE FILES CREATED OR USED IN THIS WAY ARE (SS) TYPE FILES AND CAN BE LISTED AND EDITED USING THE DOS-M DIRECTIVES (:LI,S AND :ED). TO ACHIEVE THESE CAPABILITIES, THE USER FILES ARE TREATED AS A SEPARATE PERIPHERAL, WITH THEIR OWN DRIVER, DVR37, AND THEIR OWN EQT ENTRY. IN OPERATION THE FILES ARE EQUATED TO LOGICAL UNIT NUMBERS AND CAN THEN BE TREATED IN AN ANALOGOUS WAY TO MAGNETIC TAPE, WITH REWIND, END FILE, AND BACKSPACE AVAILABLE. OTHER MODIFICATIONS TO THE DOS-M SYSTEM PROVIDE A CONSIDER- ABLE INCREASE IN CONVENIENCE TO THE AVERAGE USER. THEY INCLUDE THE CAPABILITY TO REPLACE RUN TIME ERROR MESSAGES FROM THE LIBRARY WITH EXPLICIT DESCRIPTIONS OF THE FAULT AND ASSIGN LOGICAL UNIT NUMBER 6 TO THE SYSTEM TELETYPE AT THE START OF THE JOB. THE ONLY REQUIRED EQUIPMENT IS THE NORMAL 16K DOS-M WITH EAU. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE (REL) FILE# 3: SOURCE (REL) FILE# 4: SOURCE (REL) FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SEVERAL MODIFICATIONS HAVE BEEN MADE TO THE DOS-M SYSTEM, REV. F, WITH ASSOCIATED DRIVERS, ETC. AS AT THE TIME OF RELEASE OF REV. F. THE MAIN FEATURE OF THE SYSTEM IS THE ABILITY TO READ/WRITE FROM/TO DISC FILES WITH NORMAL FORTRAN I/O STATEMENTS. THE FILES CREATED OR USED IN THIS WAY ARE SS TYPE FILES, AND CAN BE INSPECTED OR EDITED IN THE NORMAL WAY WITH :LI,S OR :ED DIRECTIVES. THIS HAS BEEN ACHIEVED BY THE ADDITION OF A "DRIVER" FOR HANDLING THIS I/O. THESE USER FILES ARE THUS TREATED AS SEPARATE PERIPHERALS, WITH THEIR OWN DRIVER AND EQT ENTRY. THIS IS MADE POSSIBLE BY THE CREATION OF FILE LINKAGE TABLES (FLT'S) AT THE TOP OF BASE PAGE, IMMEDIATELY BELOW DISCM. THESE OCCUPY FOUR WORDS PER FILE IN CURRENT USE AND, IN A 16K SYSTEM, DO NOT CAUSE ANY RESTRICTIONS EVEN WITH LONG PROGRAMS. ONLY ONE 17 WORD EQT ENTRY IS NEEDED IRRESPECTIVE OF HOW MANY FILES ARE IN USE. THE OTHER MODIFICATIONS ARE OF A RELATIVELY MINOR NATURE, BUT RESULT IN A CONSIDERABLE INCREASE IN CONVENIENCE TO THE AVERAGE USER. THE RUN TIME ERROR MESSAGES FROM THE LIBRARY HAVE BEEN REPLACED BY EXPLICIT DESCRIPTIONS OF THE FAULT, WITH THE OPTION OF REVERTING TO THE ORIGINAL FORMAT. SYSTEM GENERATION IS CARRIED OUT EXACTLY AS IN THE ORIGINAL HP INSTRUCTIONS, EXCEPT FOR THE LOADING OF ADDITIONAL TAPES. DISCM, JOBPR AND LOADR REPLACE THE SUPPORTED VERSIONS. $EX12 AND $EX25 MUST BE LOADED AFTER THE SUPPORTED EXEC MODULES. "ERROR" MESSAGES WILL BE GENERATED WHEN $EX12 IS LOADED; THESE ARE SHOWN BELOW AND SHOULD BE IGNORED. SIMILARLY, ERR0 MUST BE LOADED AFTER THE RELOCATABLE LIBRARIES; AGAIN, IGNORE ERROR MESSAGES. DVR37 AND $ERRM ARE ADDITIONAL TAPES AND MAY BE LOADED AT ANY CONVENIENT TIME. DVR37 MAY BE CORE OR DISC RESIDENT AND DOES NOT REQUIRE DMA (IT USES DVR31 FOR THE ACTUAL DISC I/O). IT SHOULD BE ASSIGNED AN UNUSED I/O SLOT IN THE EQUIPMENT TABLE, AND OMITTED FROM THE INTERRUPT TABLE. ALSO LOGICAL UNIT NUMBERS (LUN'S) MUST NOT BE ASSIGNED THE "EQUIPMENT" NUMBER CORRESPONDING TO DVR37 DURING SYSTEM GENERATION. IN OPERATION, THE REQUIRED FILE IS EQUATED TO A LOGICAL UNIT, AND CAN THEN BE TREATED IN AN ANALOGOUS WAY TO MAGNETIC TAPE, WITH REWIND, END FILE AND BACKSPACE AVAILABLE. ASCII RECORDS OF LENGTH 1 TO 160 CHARAC- TERS CAN BE MANIPULATED AS DESIRED. READ/WRITE "WITHOUT WAIT" IS TREATED AS "WITH WAIT". REQUESTS FOR BINARY READ/WRITE MAY BE POSSIBLE -- THIS HAS NOT BEEN TRIED. DETAILS OF USE OF THE SYSTEM ARE COVERED UNDER "NEW DIRECTIVES" BELOW. AS EACH FILE LINKAGE TABLE (FLT) IS SET UP BY JOBPR, THE LAST WORD ADDRESS OF USER BASE PAGE AREA (UBLWA) IS ADJUSTED ACCORDINGLY, SO THAT ANY NUMBER OF LUN'S CAN BE EQUATED TO SS FILES. NOTE THAT LUN'S 1 TO CANNOT BE USED IN THIS WAY THROUGH THE I/O STATUS EXEC CALL, STATUS IS AVAILABLE FOR ANY LUN AFTER AN OPERATION OF THAT LUN AND BEFORE ANOTHER OPERATION ON ANOTHER USER FILE LUN -- THAT IS, THE STATUS GIVEN IS THAT OF THE LAST FLT OPERATION. STATUS BITS ARE: BIT 7: END OF FILE HAS BEEN READ. BIT 6: START OF FILE (LOAD POINT ON MAGNETIC TAPE). BIT 5: 1. FOLLOWING READ -- END OF DOCUMENT, I.E., NO RECORDS AFTER THIS END OF FILE MARK. 2. FOLLOWING WRITE -- LAST SECTOR HAS BEEN STARTED, HENCE FURTHER WRITING DISALLOWED. BIT 3: LAST OPERATION WAS WRITE. BIT 2: READ ONLY FILE, WRITE NOT ALLOWED. THROUGH THE I/O CONTROL EXEC CALL, CERTAIN CONTROL REQUESTS, WHICH LEAVE STATUS APPROPRIATE TO THE LUN ACCESSED CAN BE MADE. THE FUNCTION CODES AVAILABLE ARE: CODE 0: NO ACTION OTHER THAN TO SET STATUS. CODE 1: 1. FOLLOWING WRITE -- WRITE END OF FILE, I.E., RECORD OF ZERO LENGTH. 2. FOLLOWING READ -- CLEAR END OF FILE BIT UNLESS BIT 5 IS ALSO SET. CODE 2: BACKSPACE ONE RECORD (EOF IS REGARDED AS A RECORD). CODE 4: REWIND TO "LOAD POINT". _____________________ | | | ERR 08 ERR0 | | $EX12 ERR 05 | | ERR 85 ERR0 | <-------ERROR MESSAGES | $EX12 | (REFERRED TO ON PREVIOUS PAGE) | ERR 08 | |_____________________| IT CAN BE SEEN FROM THESE THAT A FILE MAY BE BROKEN INTO SUBFILES BY EOF MARKS EXACTLY AS ON MAGNETIC TAPE. IF AN END OF FILE IS READ, APPRO- PRIATE STATUS IS SET AND LENGTH ZERO IS RETURNED. FURTHER READING IS INHIBITED UNTIL THE EOF STATUS BIT IS CLEARED (IF THIS IS POSSIBLE, I.E., NOT AT END OF DOCUMENT). AS THE FILE NAME IS NOT SAVED IN THE FLT ENTRY, ANY RELOCATION OF USED FILES WOULD WRECK THE FLT ENTRIES. FOR THIS REASON, ANY :PU, :DD OR OTHER OPERATION WHICH WOULD CAUSE THIS TROUBLE WILL RESULT IN THE AFFECTED LUN'S BEING RELEASED, WITH ZERO PLACED IN THE LUN TABLE. IT IS HOPED THAT THIS PROCEDURE IS "IDIOT PROOF" (BUT NOT GUARANTEED). ALSO, ALL FILES MUST BE ON THE SAME SUBCHANNEL, AND THIS SUBCHANNEL MUST BE THE CURRENT SUBCHANNEL WHEN ANY OPERATIONS ARE REQUESTED. EIGHT MONTHS OPERATION BY SEVERAL USERS HAS NOT PRODUCED ANY LOST FILES OR OTHER DIFFICULTIES. NEW DIRECTIVES 1. :LU,N,FNAME THIS EQUATES LUN N TO AN EXISTING FILE FNAME, WHICH MUST BE TYPE SS. IT IS NOT POSSIBLE TO WRITE ON THIS FILE. AFTER THE LAST RECORD IS READ, A FURTHER READ WILL RETURN ZERO LENGTH (I.E., EOF) AND STATUS BITS 5 AND 7 SET. ANOTHER READ GIVES RQ ERROR. THE FILE MAY HAVE BEEN WRITTEN BY A PREVIOUS JOB OR STORED (:ST,S) IN THE NORMAL WAY, OR RESULT FROM AN EDIT RUN. 2. :LU,N,FNAME,M THIS EQUATES LUN N TO A NEW FILE FNAME, OF LENGTH M SECTORS (PROVIDED ONE DOES NOT EXIST). THIS FILE IS CREATED, TYPE SS, AND A ZERO LENGTH RECORD IS WRITTEN (I.E., EOF) AND BACKSPACED OVER. THE FILE HAS ITS P BIT SET, SO UNLESS AN ST,P DIRECTIVE IS GIVEN IT IS NOT SAVED AT END OF JOB. THE FILE IN THIS CASE IS WRITE ENABLE SO THAT RECORDS CAN BE WRITTEN AND SUBSEQUENTLY READ AFTER REWIND OR BACKSPACE. AS EACH RECORD IS WRITTEN, A ZERO LENGTH RECORD (EOF) IS WRITTEN AFTER IT AND BACK- SPACED OVER READY FOR THE NEXT WRITE. READ FOLLOWING WRITE (WITHOUT REWIND OR BACKSPACE) IS ILLEGAL. 3. :LU,N,M WHERE M IS THE "EQUIPMENT" TYPE FOR THE SS FILE DRIVE DVR37. IN THIS CASE, LUN N IS EQUATED TO A SCRATCH FILE IN THE WORK AREA, AND IS WRITE ENABLED. 4. :JO,NAME,C WHERE C IS ANY CHARACTER. THIS RESULTS IN LUN6 BEING ASSIGNED TO THE SYSTEM TTY AS THE JOB IS COMMENCED, ALLOWING CONVENIENT USE OF THE SYSTEM IF THE LINE PRINTER IS DOWN OR NOT WANTED. ALTERNATIVELY, ANY BIT SET IN THE S REGISTER BEFORE :JO HAS THE SAME EFFECT. 5. :LI,N,N,C,D,ETC. THIS CAUSES A LISTING ON LUN N OF PART OF THE USER DIRECTORY, COMPRISING THOSE FILES WHOSE NAMES START WITH C, D, ETC. ONE OR MORE LETTERS CAN BE USED. THUS VARIOUS USERS OF THE SYSTEM MAY BE ALLOCATED AN INITIAL LETTER FOR THEIR FILE NAMES. 6. :SD THIS SETS SHORT FORMAT FOR RUN TIME DIAGNOSTICS ON LUN 6, I.E., THE SAME FORMAT AS THE SUPPORTED VERSION. DIAGNOSTICS APPEAR ON LUN 1 AS WELL. 7. :LD THIS SETS LONG FORMAT FOR RUN TIME DIAGNOSTICS ON LUN 6, THE DEFAULT FORM. THESE DIAGNOSTICS CONSIST OF ONE OR MORE INFORMATIVE LINES. THE SHORT FORMAT APPEARS ALSO ON LUN 1. THE LONG FORMAT IS SET AT START OF JOB. OTHER MODIFICATIONS 1. IF THE FIRST TWO CHARACTERS OF THE DATE ARE ENTERED AS NUMERALS, (I.E., DAY OF MONTH) THEY ARE UPDATED AT THE START OF THE FIRST JOB AFTER MIDNIGHT (I.E., ENTER DATE AS :DA,07-MAY-74,H,M). 2. AT JOB HEADING, TIME IS PRINTED OUT IN THE NORMAL FORMAT. 3. AT START OF JOB, ALL FLT'S ARE CLEARED, AND DVR37 AND ANY OTHER DRIVERS AS NEEDED ARE SET TO A STANDARD CONDITION (E.G., AUTO-EJECT MODE FOR LINE PRINTER, STANDARD CODE FOR A TRANSLATING TAPE READER DRIVER). 4. THE :DU DIRECTIVE HAS BEEN MODIFIED SO THAT REQUESTS FOR ASCII PAPER TAPE OUTPUT ARE EXECUTED AS ASCII MODE INSTEAD OF BINARY. 5. A :RU DIRECTIVE MOVES LINE PRINTER TO HEAD OF A NEW PAGE. 6. ALL DIRECTIVES ARE LISTED ON LUN 7 AS WELL AS THE SYSTEM TTY. :EJ IS LISTED ON A NEW PAGE, ENABLING A JOB LISTING TO BE REMOVED FROM THE PRINTER (WITHOUT THE EJ MESSAGE) AS SOON AS COMPLETED. 7. LOADR DOES NOT NOW CALL FOR A NEW PAGE ON LUN 6. 8. THE FUNCTION OF THE LOADR MEMORY MAP PARAMETERS HAVE BEEN REVERSED. (I.E., :PR,LOADR DOES NOT PRODUCE A MAP.) 9. THE *IGNORED MESSAGE LISTS APPROPRIATE DIRECTIVES WHICH MAY BE ENTERED. 10. THE REQUEST FOR THE :DATE DIRECTIVE HAS BEEN MADE MORE EXPLICIT. 11. :ST,S :LI,S AND :ED ALLOW MANIPULATION OF RECORDS UP TO 160 CHARACTERS IN LENGTH. 12. :LI,S LISTS END OF FILE RECORDS IN SS FILES. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: THE TEXT OF THE EXTENDED RUN TIME ERROR MESSAGES IS KEPT ON THE DISC IN A DUMMY USER PROGRAM $ERRM. THE MESSAGES HAVE BEEN WRITTEN ON THE BASIS OF A 132 COLUMN LINE PRINTER, AND MAY BE ALTERED IF AND AS NECESSARY BY APPROPRIATE CHANGES TO $ERRM. THE FORMAT OF EACH MESSAGE IS: OCT N*400B ASC N,TEXT FOR EACH LINE NOP BSS -- SUFFICIENT TO FILL A SECTOR (I.E., 128 WORDS TOTAL FOR MESSAGE). $ERRM MAY BE OMITTED IF THE LONG FORMAT DIAGNOSTICS ARE NOT WANTED. **MISCELLANEOUS: THIS SYSTEM IS A MODIFICATION OF DOS-M REV F AND MAY NEED MODIFICATION TO BE COMPATIBLE WITH FURTHER DOS-M REVISIONS. IT IS NOT COMPATIBLE WITH REV E OR EARLIER VERSIONS. THE NUMBER OF LUNS WHICH CAN BE EQUATED TO DISC FILES IS LIMITED ONLY BY THE AVAILABILITY OF BASE PAGE LOCATIONS, FOUR WORDS OF WHICH ARE REQUIRED FOR EACH LUN FOR THE FLT. NOTE THAT IF LUNS ARE REDEFINED DURING A JOB, THE SPACE FOR THE UNUSED FLT IS NOT RELEASED UNTIL END OF JOB. X16301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-III FILE SAVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 6 **KEYWORDS: FILES SAVE/RESTORE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM IS CAPABLE OF SAVING PURGED FILES WHOSE BOUNDARIES ARE NOT THE SAME IN THE USER DIRECTORY AS THEY ARE ACTUALLY ON THE DISC. THIS IS A FLEXIBLE FILE SAVING PROGRAM WHICH RESIDES ON DISC WITHIN THE HP DOS-III SYSTEM. THE PROGRAM WHEN CALLED INTO CORE IS ABLE TO (SAVE) PURGED FILES OR FILES WHOSE BOUNDARIES ARE NOT THE SAME IN THE USER DIRECTORY AS THEY ARE ACTUALLY ON THE DISC. FOR ADDED PROTECTION OF THE USER FILES, A SECURITY CODE IS INCORPORATED INTO THE PROGRAM ALONG WITH A NO ECHO INPUT FEATURE AFTER THE PROGRAM HAS BEEN CALLED INTO CORE. HARDWARE REQUIRED: DISC, TELETYPE AND A MINIMUM DOS-III SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TO CALL THE PROGRAM :PROG,SAVER,P1,P2,P3,P4 THIS CALLS DOWN FROM THE DISC, THE DISC FILE AND RUNS THE PROGRAM FOR THE USER (SEE DOS-III MANUAL). PARAMETERS P1 = CURRENT SECURITY CODE (INITIALLY 32767). THE SECURITY CODE IS CHANGED EACH TIME THE PROGRAM IS EXECUTED SUCCESSFULLY. P2 = CURRENT FILE STATUS WHERE: 1 = THE DISC BOUNDARIES OF THE FILE IN USER DIRECTORY DO NOT CORRESPOND WITH THE PHYSICAL BOUNDARIES OF THE FILE ON THE DISC 2 = A PURGED FILE (AS LONG AS THE DISC HAS NOT BEEN REPACKED) P3 = CORRECT TRACK NUMBER OF FILE P4 = CORRECT SECTOR NUMBER OF FILE PROGRAM EXECUTION UPON ENTERING THE PROGRAM, IF THE SECURITY CODE ENTERED IN THE :PROG DIRECTIVE DOES NOT CORRESPOND WITH THE SECURITY CODE RECOGNIZED BY PROGRAM CONTROL, PROGRAM CONTROL RESPONDS WITH: ILLEGAL SECURITY CODE! (AND THE PROGRAM IS ABORTED!) @ BUT IF THE SECURITY CODE ENTERED IS THE SAME AS THE ONE RECOGNIZED BY PROGRAM CONTROL, PROGRAM CONTROL RESPONDS WITH: ENTER FILENAME AT THIS TIME, THE NAME OF THE FILE THAT IS TO BE SAVED IS ENTERED THROUGH THE BATCH INPUT DEVICE (OR SYSTEM TELETYPE). P2 = 1 THIS ROUTINE IS DESIGNED TO ENTER THE USER DIRECTORY, FIND THE ENTRY CORRESPONDING WITH THE NAME OF THE FILE THAT WAS ENTERED BY THE USER AND CHANGE THE TRACK/SECTOR ADDRESS OF THE FILE ON THE USER DISC WITH THE PROVIDED TRACK AND SECTOR ADDRESS. IF THE NAME OF THE FILE IS NOT FOUND IN THE USER DIRECTORY, THE PROGRAM OUTPUTS: NO SUCH FILE AND THEN PROCEEDS TO GET A NEW SECURITY CODE. BUT IF THE FILE ENTRY IS FOUND IN THE USER DIRECTORY, THE PROGRAM COMPARES THE TRACK/SECTOR ADDRESSES. IF THE TWO ADDRESSES ARE THE SAME, THE PROGRAM OUTPUTS: NO CHANGES OCCURRED! AND PROCEEDS TO GET A NEW SECURITY CODE. IF THE TWO ADDRESSES ARE NOT THE SAME, THE PROGRAM EXCHANGES THE TRACK/SECTOR ADDRESS IN THE ENTRY WITH THE ONE PROVIDED BY THE USER AND THEN PROCEEDS TO GET A NEW SECURITY CODE. P2 = 2 THIS ROUTINE IS SUPPOSED TO RESTORE PURGED FILE ENTRIES IN THE USER DIRECTORY AS SPECIFIED BY THE USER. THE PROGRAM FIRST SEARCHES THE DIRECTORY TO SEE IF THE FILE SPECIFIED BY THE USER STILL EXISTS OR IF THE FILE NAME SPECIFIED BY THE USER HAS BEEN USED BY ANOTHER USER. IF A FILE IS FOUND TO HAVE THE SAME NAME, THE PROGRAM OUTPUTS: DUPLICATE FILE AND PROCEEDS TO GET A NEW SECURITY CODE. IF NO DUPLICATE FILE CAN BE FOUND, THE PROGRAM SEARCHES FOR THE PURGED FILE NAME IN THE USER DIRECTORY. IF A FILE NAME IS FOUND THAT RESEMBLES THAT WHICH WAS SPECIFIED, THE TRACK/SECTOR ADDRESS IN THE ENTRY AND THE ADDRESS SPECIFIED BY THE USER IN THE :PROG DIRECTIVE IS CHECKED TO SEE IF THE ENTRY IS INDEED THE ENTRY OF THE CORRESPONDING FILE. IF THE ADDRESS IN THE ENTRY IS CORRECT, THE FILE ENTRY IS RESTORED. BUT IF THE ADDRESSES ARE NOT THE SAME, THE SEARCH IS CONTINUED UNTIL ANOTHER FILE ENTRY IS THE SAME OR UNTIL THE END OF THE USER DIRECTORY IS SENSED, WHERE-UPON THE PROGRAM RESPONDS WITH: NO SUCH FILE MEANING THAT THE DISC HAS BEEN REPACKED OR THE TRACK AND SECTOR ADDRESS PROVIDED IN THE :PROG DIRECTIVE IS INCORRECT. SECURITY CODE CHANGE WHEN THE PROGRAM TRANSFERS CONTROL TO THE SECURITY CODE CHANGE ROUTINE, THE PROGRAM RESPONDS WITH: ENTER NEW SECURITY CODE AND THE NEW SECURITY CODE IS ENTERED THROUGH THE BATCH INPUT DEVICE (OR THE SYSTEM TELETYPE). THEN THE NEW SECURITY CODE IS CHANGED WITHIN THE FILE ON DISC. BATCH OPERATION IF DOS-III IS IN THE BATCH MODE, THEN THE FILE NAME AND NEW SECURITY CODE ARE ENTERED THROUGH THE BATCH INPUT DEVICE. "ENTER FILENAME" AND "ENTER NEW SECURITY CODE" ARE NOT PRINTED ON THE SYSTEM TELETYPE. A NOTE TO THE USER: 1. IT IS IMPERATIVE THAT THE USER OF THIS PROGRAM, WHEN USING P2 = 1, KNOWS THE ACTUAL FILE BOUNDARY ON THE USER DISC. YOU AS THE USER MUST BE CAPABLE OF FINDING AND ISOLATING THE PHYSICAL BOUNDARY OF THE FILE IF THIS ROUTINE OF THE PROGRAM IS TO BE SUCCESSFUL. EXAMPLE 1.) 2. IF THE PROGRAM, WHEN USING P2 = 2, OUTPUTS "DUPLICATE FILENAME", DO NOT GIVE UP! IF YOU ARE SURE THAT THE DISC HAS NOT BEEN REPACKED, AND ANOTHER FILE HAS BEEN ESTABLISHED USING THE FILE NAME OF THE PURGED FILE, CHANGE THE SECOND LETTER OF THE PURGED FILE NAME AND RE-EXECUTE THE PROGRAM. (SEE EXAMPLE 3.) WARNING!! THIS PROGRAM SHOULD NOT BE ALLOWED TO BE USED BY IRRESPONSIBLE PERSONS WHO WOULD LIKE TO "SABOTAGE" ANOTHER USERS FILE BY CHANGING THE TRACK AND SECTOR ADDRESS OF THE FILE WITHIN THE USER DIRECTORY (P2 = 1). IT IS FOR THIS REASON THAT THE SECURITY CODE AND NO ECHO FEATURES WERE INCORPORATED INTO THE PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: MESSAGES AND MEANINGS @ THE PROGRAM HAS TERMINATED NATURALLY AND CONTROL IS NOW WITH DOS-III. DUPLICATE FILE ENCOUNTERED WHEN P2 = 2 AND ANOTHER FILE USES THE FILE NAME SPECIFIED BY THE USER OR THAT THE FILE SPECIFIED BY THE USER HAS NOT BEEN PURGED. ENTER FILENAME THE PROGRAM WISHES THE USER TO INPUT THE NAME OF THE FILE THAT HE WISHES TO SAVE. ENTER NEW SECURITY CODE THE PROGRAM WISHES THE USER TO INPUT THE NEW SECURITY CODE FOR THE NEXT TIME THE PROGRAM IS EXECUTED. ILLEGAL SECURITY CODE! THE SECURITY CODE, THAT WAS ENTERED BY THE USER THROUGH THE :PROG DIRECTIVE, DOES NOT CORRES- @ POND WITH THAT WHICH IS RECOGNIZED BY PROGRAM CONTROL. THE NEXT ACTION OF PROGRAM CONTROL IS TO ABORT THE PROGRAM. NO CHANGES OCCURRED! ENCOUNTERED WHEN P2=1 AND THE TRACK AND SECTOR ADDRESS, THAT WAS SPECIFIED BY THE USER IN THE :PROG DIRECTIVE, IS THE SAME AS THE TRACK AND SECTOR ADDRESS IN THE USER DIRECTORY ENTRY FOR THE FILE THAT WAS SPECIFIED BY THE USER. BECAUSE THE ADDRESSES ARE THE SAME, THERE IS NO NEED TO ALTER THE USER DIRECTORY ENTRY. NO SUCH FILE THE NAME OF THE FILE SPECIFIED BY THE USER IS NOT IN THE USER DIRECTORY. **MISCELLANEOUS: THE USER MUST KNOW THE PHYSICAL TRACK/SECTOR BOUNDARIES OF FILE WHEN P2=1 FOR THE PROGRAM TO WORK AS INTENDED. X16401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: ASCII SOURCE FILE WRITE SUBROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 6 **KEYWORDS: ASCII FILES **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE ASCII SOURCE FILE WRITE SUBROUTINE ENABLES THE USER TO HAVE THE FOLLOWING CAPABILITIES: 1. SOURCE FILE WRITE CAPABILITY THE USER MAY CONCURRENTLY WRITE TO A MAXIMUM OF TEN DISC FILES. THESE DISC FILES NEED NOT BE ASCII DISC FILES, BUT IF THEY ARE, THE FILE WRITE FORMAT IS COMPATIBLE WITH DOS SOURCE FILE STRUCTURE. EACH OPENED FILE IS ASSIGNED A BUFFER, I/O EFFICIENCY MAY BE GREATLY INCREASED SINCE THE ROUTINE PERFORMS BOTH LOGICAL AND PHYSICAL WRITES. 2. SEQUENTIAL WRITE CAPABILITY AS MENTIONED ABOVE THE DESTINATION FILE DOES NOT HAVE TO BE A SOURCE FILE, THUS THE USER MAY USE THIS SUBROUTINE SIMPLY AS A POWERFUL HIGH SPEED SEQUENTIAL FILE WRITE SUBROUTINE. SINCE THE HIGH SPEED DISC INPUT/OUTPUT SUBROUTINE IS REQUIRED (HP# 22681-18981), THE USER MAY WRITE ON THE SCRATCH AREAS OF BOTH THE CURRENT USER DISC AND THE SYSTEM DISC BY USING THE FILE NAMES $USER AND $SYSTM. HARDWARE REQUIREMENTS: MINIMAL DOS WITH A 7900A DISC DRIVE. DOS-III OPERATING SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: FOPEN - OPENS A FILE AND MAKES IT READY FOR ACCESS BY THE OTHER ENTRY POINTS. CALLING SEQUENCE: FORTRAN CALL FOPEN (FNAME,BUFFER,NSECT,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FOPEN DEF *+5 DEF FNAME DEF BUFR DEF NSECT DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME BUFFER - BUFFER ALLOCATED FOR I/O WORK. MUST BE AT LENGTH 128 WORDS LONG OR A MULTIPLE OF 128. NSECT - LENGTH OF BUFFER IN SECTORS - INT (BUFFER LENGTH/ 128) IERR - ERROR INDICATOR THE 'BUFFER' MUST NOT BE USED WHILE THE FILE IS OPEN. ONCE THE FILE IS CLOSED BY THE 'FWEOF', THE BUFFER MAY BE USED BY ANOTHER FILE. THE FILE MUST NOT BE OPENED MORE THAN ONCE, OTHERWISE I/O ERRORS MAY RESULT. FWRTE - WRITES ONE RECORD TO THE FILE. CALLING SEQUENCE: FORTRAN CALL FWRTE (FNAME,RECORD,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FWRTE DEF *+4 DEF FNAME DEF RECRD DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME RECORD - RECORD(1) EQUALS THE NUMBER OF WORDS TO BE WRITTEN RECORD (2 THROUGH N) CONTAIN THE WORDS/CHARACTERS TO BE WRITTEN. IERR - ERROR INDICATOR FWEOF - WRITES A PHYSICAL END OF FILE AND ANY LOGICAL RECORDS THAT HAVEN'T BEEN WRITTEN. IT ALSO REMOVES THE FILE FROM THE FOPEN FILE TABLE AND RELEASES THE FILE AND ITS BUFFER. CALLING SEQUENCE: FORTRAN CALL FWEOF (FNAME,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FWEOF DEF *+3 DEF FNAME DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME IERR - ERROR INDICATOR FLEN - RETURNS THE LOGICAL NUMBER OF SECTORS WRITTEN. IT IS USEFUL IN CREATING A FILE UNDER PROGRAM CONTROL AND COPING TO IT FROM THE SCRATCH AREA. CALLING SEQUENCE: FORTRAN CALL FLEN (FNAME, NSECTS, IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FLEN DEF *+4 DEF FNAME DEF NSECTS DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME NSECTS - # LOGICAL SECTORS USED IERR - ERROR INDICATOR **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: EACH CAN RETURNS A STATUS VALUE 'IERR'. THE POSSIBLE VALUES ARE AS FOLLOWS: IERR ROUTINE VALUE MEANING CALLED 0 NORMAL RETURN - NO ERRORS (ALL) 1 REQUESTED FILE DOES NOT EXIST FOPEN 2 MORE THAN 10 FILES OPEN AT ONE TIME FOPEN 3 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST FWRTE 4 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST FWEOF 5 ATTEMPTED TO WRITE BEYOND PHYSICAL END OF FILE FWRTE 6 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST FLEN WHEN AN ERROR IS ENCOUNTERED, THE ROUTINE DOES NOT TERMINATE THE PROGRAM, THUS AN ERROR CHECK SHOULD BE PERFORMED AFTER EACH CALL TO INSURE PROPER PROGRAM EXECUTION. **MISCELLANEOUS: CARE SHOULD BE TAKEN WHEN WRITING IN EITHER THE SYSTEM OR USER AREA OF THE DISK. IF A FILE IS CREATED WHILE THE SCRATCH AREA OF THE DISK IS BEING USED, THE INFORMATION STORED IN THE SCRATCH AREA MAY BE LOST. CARE ALSO SHOULD BE TAKEN WHEN READING AND WRITING IN BOTH USER AND SYSTEM AREAS ($USER AND $SYSM). IF THE CURRENT USER DISK IS THE SYSTEM DISK, THE $USER FILE IS THE SAME AS THE $SYSTM. X16501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: ASCII SOURCE FILE READ SUBROUTINE **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 6 **KEYWORDS: ASCII FILES **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS-III **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE ASCII SOURCE FILE READ SUBROUTINE ENABLES THE USER TO HAVE THE FOLLOWING CAPABILITIES: 1. SOURCE FILE READ CAPABILITY: THE USER MAY CONCURRENTLY READ TO A MAXIMUM OF TEN DISC FILES. THESE DISC FILES NEED NOT BE AN ASCII DISC FILE, BUT THE FILE BEING READ MUST BE STRUCTURED THE SAME AS AN ASCII DISC FILE. EACH OPENED FILE IS ASSIGNED A BUFFER (128 WORD MINIMUM). DEPENDING UPON THE SIZE OF THE BUFFER I/O EFFICIENCY MAY BE GREATLY INCREASED SINCE THE ROUTINE PERFORMS BOTH LOGICAL AND PHYSICAL READS. 2. SEQUENTIAL READ CAPABILITY: AS MENTIONED ABOVE THE INPUT FILE DOES NOT HAVE TO BE A SOURCE FILE, BUT THE FILE STRUCTURE MUST BE IDENTICAL TO A SOURCE FILE. THE USER MAY USE THIS SUBROUTINE SIMPLY AS A POWERFUL HIGH-SPEED SEQUENTIAL FILE READ SUBROUTINE. SINCE THE HIGH-SPEED DISC INPUT/OUTPUT SUBROUTINE IS REQUIRED (HP#22681- 18981) THE USER MAY READ THE SCRATCH AREAS OF BOTH THE CURRENT USER DISC AND THE SYSTEM DISC BY USING THE FILE NAMES $USER AND $SYSM. (THESE FILES MUST COMPLY WITH THE ASCII FILE STRUCTURE ALSO). HARDWARE REQUIRED: MINIMAL DOS-M OR DOS-III OPERATING SYSTEM INCLUDING A 7900A DISC DRIVE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: OPENF - OPENS A FILE AND MAKES IT READY FOR ACCESS BY THE OTHER ENTRY POINTS. CALLING SEQUENCE: FORTRAN CALL OPENF (FNAME,BUFR,NSECT,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB OPENF DEF *+5 DEF FNAME DEF BUFR DEF NSECT DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME BUFR - BUFFER ALLOCATED FOR I/O WORK. MUST BE AT LEAST 128 WORDS LONG OR A MULTIPLE OF 128. NSECT - LENGTH OF THE BUFFER IN SECTORS INT(BUFFER LENGTH/ 128) IERR - ERROR INDICATOR THE 'BUFR' MUST NOT BE USED WHILE THE FILE IS OPEN. ONCE THE FILE IS CLOSED BY THE 'FEND', THE BUFR MAY BE USED BY ANOTHER FILE. THE FILE MUST NOT BE OPENED MORE THAN ONCE, OTHERWISE I/O ERRORS WILL RESULT. FREAD - READS ONE RECORD FROM THE FILE. CALLING SEQUENCE: FORTRAN CALL FREAD (FNAME,RECORD,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FREAD DEF *+4 DEF FNAME DEF RECRD DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME RECRD - BUFFER IN WHICH THE RECORD IS STORED RECRD(1) CONTAINS THE NUMBER OF WORDS (RECORD LENGTH IN WORDS). RECRD(2) THROUGH RECRD(RECRD(1)+1) CONTAINS THE ACTUAL INFORMATION READ IERR: - ERROR INDICATOR FRSET - RESETS THE POINTER TO THE BEGINNING OF THE FILE. SIMILAR TO THE MAG TAPE 'REWIND' STATEMENT. CALLING SEQUENCE: FORTRAN CALL FRSET (FNAME,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FRSET DEF *+3 DEF FNAME DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME IERR - ERROR INDICATOR FEND - CLOSES THE FILE AND RELEASES THE BUFFER FOR OTHER REASSIGNMENT. CALLING SEQUENCE: FORTRAN CALL FEND (FNAME,IERR) CALLING SEQUENCE: ASSEMBLY LANGUAGE JSB FEND DEF *+3 DEF FNAME DEF IERR WHERE: FNAME - 3 WORD ARRAY CONTAINING THE FILE NAME IERR - ERROR INDICATOR NOTE: ALL VARIABLES USED IN THE FORTRAN AND ASSEMBLY LANGUAGE CALLS ARE INTEGER. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: EACH CALL RETURNS A STATUS VALUE 'IERR'. THE POSSIBLE VALUES ARE AS FOLLOWS: IERR ROUTINE VALUE MEANING CALLED 0 NORMAL RETURN - NO ERRORS (ALL) 1 REQUESTED FILE DOES NOT EXIST OPENF 2 MORE THAN 10 FILES OPENED AT ONE TIME OPENF 3 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST FRSET 4 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST FEND 5 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST FREAD 6 END OF FILE ENCOUNTERED FREAD WHEN AN ERROR IS ENCOUNTERED, THE ROUTINE DOES NOT TERMINATE THE PROGRAM, THUS AN ERROR CHECK SHOULD BE PROVIDED AFTER EACH CALL TO INSURE PROPER PROGRAM EXECUTION. **MISCELLANEOUS: CARE SHOULD BE TAKEN WHEN WRITING IN EITHER THE SYSTEM OR USER AREA OF THE DISK. IF A FILE IS CREATED WHILE THE SCRATCH AREA OF THE DISK IS BEING USED, THE INFORMATION STORED IN THE SCRATCH AREA MAY BE LOST. CARE ALSO SHOULD BE TAKEN WHEN READING AND WRITING IN BOTH USER AND SYSTEM AREAS ($USER & $SYSM). IF THE CURRENT USER DISK IS THE SYSTEM DISK, THE $USER FILE IS THE SAME AS THE $SYSTM. X16601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: R/W TO DISC FILES USING FORTRAN READ/WRITE STATEMENTS **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 6 **KEYWORDS: FILES FORTRAN I/O DISC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-IIIB **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM IS SIMILAR TO THE 'CODE' PROGRAM IN THE FORTRAN LIBRARY. WHEN A CALL DISK (FNAME,ISTAT) IS MADE BEFORE THE FORMATTED READ OR WRITE STATEMENT, THE DATA IS TRANSFERRED TO/FROM THE SPECIFIED FILE. THIS GIVES THE ABILITY TO FORMAT DATA USED ON THE DISC. (ASCII SOURCE FILES MAY BE EITHER WRITTEN OR READ). THE CALL DISK AND THE READ/WRITE FOLLOWING ARE TREATED AS IF THEY WERE ONE STATEMENT. IF THE READ WRITE IS EXECUTED WITHOUT EXECUTING THE CALL DISK, THEN IT FUNCTIONS NORMALLY. WHEN EXECUTING THE CALL DISK, THE UNIT NUMBER IS IGNORED. THE TRANFER IS DIRECTED TOWARDS THE FILE NAMED IN FNAME. 'DISK' IS INTENDED FOR USE WITH ONLY ASCII RECORDS. A MINIMAL DOS-III SYSTEM IS REQUIRED. SOFTWARE REQUIRED: 22682-18940 ASCII SOURCE FILE WRITE SUBROUTINE ASCII SOURCE FILE READ SUBROUTINE. 22681-18981 HIGH-SPEED DISC INPUT/OUTPUT. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: CALLING SEQUENCE: FORTRAN CALL DISK (FNAME,ISTAT) (READ OR WRITE STATEMENT IMMEDIATELY FOLLOWING) WHERE: FNAME CONTAINS THE NAME OF THE FILE. (3 ELEMENT INTEGER ARRAY) ISTAT IS THE INTEGER VARIABLE FOR STATUS RETURN AFTER EXECUTION OF THE TWO STATEMENTS. GENERAL PROGRAM STRUCTURE: OPEN THE FILE: FOPEN-WRITE OPENF-READ . . . . . CALL DISK (FNAME,ISTAT) (READ OR WRITE STATEMENT) . . . . . CLOSE THE FILE: FWRTE-WRITE FEND-READ IT IS NOT NECESSARY TO CLOSE A READ FILE UNLESS THE "TOO MANY FILES OPENED" ERROR OCCURS. IT IS IMPERATIVE THAT A WRITE FILE IS CLOSED BEFORE PROGRAM TERMINATION TO INSURE ALL THE BUFFERED DATA IS TRANS- FERRED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERRORS WHEN USED WITH THE READ STATEMENT CALL DISK (FNAME,ISTAT) ISTAT MEANING 0 NO ERRORS, NORMAL RETURN 1 REQUESTED FILE DOES NOT EXIST 2 MORE THAN 10 FILES OPEN FOR READING AT ONE TIME 3 REQUESTED FILE DOES NOT EXIST OR IS NOT OPEN 4 REQUESTED FILE DOES NOT EXIST OR IS NOT OPEN 5 REQUESTED FILE DOES NOT EXIST OR IS NOT OPEN 6 END OF FILE ENCOUNTERED (SEE ASCII FILE READ SUBROUTINE FOR FURTHER EXPLANATION) ERRORS WHEN USED WITH THE WRITE STATEMENT CALL DISK (FNAME,ISTAT) ISTAT MEANING 0 NO ERRORS, NORMAL RETURN 1 REQUESTED FILE DOES NOT EXIST 2 MORE THAN 10 FILES OPEN AT ONE TIME (FOR WRITING) 3 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST 4 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST 5 ATTEMPTED TO WRITE BEYOND THE PHYSICAL END OF FILE 6 REQUESTED FILE IS NOT OPEN OR DOES NOT EXIST **MISCELLANEOUS: THE FILE MUST BE OPEN USING EITHER THE 'FOPEN' OR 'OPENF' SUBROUTINES FOR WRITE OR READ RESPECTIVELY BEFORE USING THE CALL DISK. THE END OF FILE MUST BE WRITTEN BEFORE THE TERMINATION OF THE PROGRAM IF THE PROGRAM HAS WRITTEN TO A FILE. BE SURE YOU UNDERSTAND THE OTHER CONTRIBUTED PROGRAMS BEFORE USING THE DISK SUBROUTINES. THIS WILL AID YOU IN UNDERSTANDING HOW TO STRUCTURE YOUR PROGRAMS USING THESE ROUTINES. X16701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: CHESS **REVISION? NO **PACKAGE: 99 **CATEGORY: 6 **SUBCATEGORY: **KEYWORDS: GAMES **LANGUAGES: ALGOL **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL PLAY CHESS BY GENERATING A (BEST MOVE) FROM A MINIMAX GAME TREE. IT IS DIVIDED INTO TWO DISTINCT PHASES - POSITIONAL ANALYSIS AND TACTICAL ANALYSIS. THE POSITIONAL ANALYSIS SECTION CONTAINS ALL OF THE CHESS SPECIFIC HEURISTICS. IT ASSIGNS POINTS TO EACH MOVE BASED ON A SERIES OF PROGRAMMED GUIDELINES (SUCH AS ASSIGN 50 POINTS TO P-K4 DURING OPENING). THE GUIDELINES ALSO INCLUDE POINT AWARDS FOR CENTER CONTROL, ATTACKING THE OPPONENT'S KING, ETC. AFTER EACH POSSIBLE MOVE IS ASSIGNED A TOTAL POINT VALUE, THE MOVES ARE SORTED SO THAT THE HIGHEST POINT VALUE MOVES ARE CONSIDERED FIRST BY THE TACTICAL ANALYSIS PHASE. THE TACTICAL ANALYSIS PHASE THEN BUILDS A MOVE TREE WHICH LOOKS THREE HALF MOVES AHEAD. AT EACH BOTTOM OF THE MOVE TREE (AT DEPTH = 3), THE MATERIAL (VALUE OF CHESS PIECES) GAINED OR LOST DURING THE THREE HALF MOVES IS CALCULATED. THE MINIMAX ALGORITHM WITH ALPHA-BETA PRUNING IS APPLIED ONLY ON THAT MATERIAL GAIN OR LOSS. EACH MOVE IS EVALUATED IN TURN UNTIL A BEST MOVE IS FOUND AND EXECUTED. THE PROGRAM FALLS IN THE (BRUTE-FORCE) CLASS OF CHESS PLAYING PROGRAMS. BY LOOKING AT EACH MOVE THREE HALF MOVES AHEAD, IT MAY CONSIDER AS MANY AS TEN THOUSAND TO A HUNDRED THOUSAND COMBINATIONS IN ITS SEARCH. THE HP2100 COMPUTER DOES THIS IN AN AVERAGE TIME OF ONE TO THREE MINUTES. THE PROGRAM WAS DESIGNED FOR A DOS-M SYSTEM WITH 16K CORE MEMORY. HOW- EVER, WITH SLIGHT MODIFICATIONS, IT WILL RUN ON BCS TODS SYSTEMS ALSO. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE **LOAD INSTRUCTIONS: ASSEMBLY AND COMPILATION OF SOURCE TAPES: A. LOAD ASSEMBLY LANGUAGE SUBROUTINES ONTO DISK. :JOB, SUBR :STORE,S,ECUTS,5 YES :STORE,S,CHS2S,5 YES :STORE,S,SBITS,5 YES :STORE,S,CBITS,5 YES :STORE,S,ZERO,5 YES B. ASSEMBLE EACH ROUTINE AND STORE RELOCATABLE CODE. :JFILE,ECUTS :PR,ASMB,2,,,99 :JFILE,CHS2S :PR,ASMB,2,,,99 :JFILE,SBITS :PR,ASMB,2,,,99 :JFILE,CBITS :PR,ASMB,2,,,99 :JFILE,ZERO :PR,ASMB,2,,,99 :ST,R,CHESL C. COMPILE THE MAIN PROGRAM, LOAD, AND EXECUTE. :JOB, MAIN :STORE,S,GCHES,5 :JFILE,GCHES :PR,ALGOL,2,,,99 :PR,LOADR,2 CHESL, /E :ST,P :PR,CHESS SEE SECTION 7.0 FOR SAMPLE RUNS OF THE PROGRAM. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: SUBROUTINES INTERNAL TO ALGOL MAIN PROGRAM: TRY - PRINTS MATERIAL DUMPED IN "FULL DUMP" OPTION (SW2 UP) BUMP - INCREMENTS TREEPTR (INDEX TO MOVE TREE STACK) AND CHECKS FOR OVERFLOW. TYPEB - PRINTS OUT CHESS BOARD WITH PIECES PUSHM - MAIN PROCEDURE TO PUSH ALL POSSIBLE MOVES ONTO MOVE TREE STACK FOR A GIVEN BOARD CONFIGURATION. PROCEDURES IN PUSHM: CHECK - DETERMINES WHETHER CASTLING IS ALLOWED OR NOT CAS - PLACES CASTLING MOVES ON MOVE TREE STACK CASTL - IF CASTLING IS ALLOWED IT CALLS PROCEDURE CAS KINGN - PLACES KING OR KNIGHT MOVES ON MOVE TREE STACK BPRKQN - PLACES BISHOP, ROOK, OR QUEEN MOVES ON STACK PAWNC - DETERMINES IF A CAPTURE BY A PAWN IS ALLOWED PROMO - DETERMINES IF A PAWN CAN BE PROMOTED OR NOT. READM - READS AN OPPONENT'S MOVE, VERIFIES IT, AND EXECUTES IT POSIT - MAIN PROCEDURE TO EXECUTE POSITIONAL ANALYSIS SECTION. PROCEDURES USED IN POSIT: CENCON - ASSIGNS CENTER CONTROL BONUS POINTS TO A MOVE SORT - SORTS MOVES AFTER BONUS POINTS ASSIGNED TO EACH MDGAME - CALCULATES TOTAL PIECE WORTH OF EACH SIDE AND ASSIGNS IT TO WHITEPOINTS & BLACKPOINTS. MOBILE - CALCULATES MOBILITY FACTOR FOR A MOVE KINGCH - AWARDS BONUS POINTS FOR HARASSING OPPONENT'S KING OPENB - DURING OPENING, ASSIGNS BONUS POINTS TO EACH MOVE MDBON - DURING MIDGAME, ASSIGNS BONUS POINTS TO EACH MOVE GENMOV - PROCEDURE WHICH EXECUTES TACTICAL ANALYSIS SECTION - BY MINIMAX ALGORITHM WITH ALPHA-BETA PRUNING SETBOARD - PROCEDURE TO INPUT AN OLD BOARD CONFIGURATION AND PARAMETERS. SUBROUTINES IMPLEMENTED IN ASSEMBLY LANGUAGE: BLANK(A) - WRITES BLANKS (ASCII CHARACTER CODE OCTAL 40) INTO INTEGER ARRAY A. IZERO(A) - WRITES ZERO INTO INTEGER ARRAY A. CBITF(A,B,C) - EXTRACTS AND RIGHT-JUSTIFIES A BIT FIELD FROM BIT POSITION B OF LENGTH C BITS IN THE DOUBLE WORD LOCATED AT ADDRESS A. SBITF(A,B,C,D) - SETS A BIT FIELD FROM BIT POSITION B OF LENGTH C BITS IN THE DOUBLE WORD LOCATED AT ADDRESS A TO THE QUANTITY D. SAVE(A,B,C,D) - SAVES THE VALUE OF THE LAST MOVE A, THE BOARD CONFIGURATION B, AND THE MATERIAL C IN AN INTERNAL STORAGE ARRAY BUFF AT POSITION INDEXED BY DEPTH D. RETRO(A,B,C,D,E) - RETRACTS THE VALUE OF THE LAST MOVE A, THE BOARD CONFIGURATION B, AND THE MATERIAL D FROM ARRAY BUFF AT A POSITION INDEXED BY DEPTH D. ALSO TOGGLES THE VALUE OF THE CONTROL VARIABLE F AT ADDRESS C. ECUTE(A,B,C,D,E,F,G) - EXECUTES THE MOVE GIVEN IN THE ADDRESS A. IT UPDATES THE VALUE OF THE LAST MOVE B, THE BOARD CONFIGURATION C, THE CONTROL VARIABLE F AT ADDRESS F, AND THE MATERIAL G. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: SEVERAL SWITCH OPTIONS ARE AVAILABLE TO HELP DEBUG THE PROGRAM: SW0 - DUMPS RESULT OF POSITIONAL ANALYSIS ROUTINE POSIT SW1 - DUMPS THE BOTTOM NODES OF THE MOVE TREE DURING ITS GENERATION. IT IS USEFUL TO DETERMINE WHY A PARTICULAR MOVE WAS CHOSEN. SW2 - DUMPS A VERY LENGTHY DUMP USEFUL FOR TRACING SUBTLE BUGS IN THE PROGRAM. NOTE: THESE DUMPS ARE NOT NORMALLY USED DURING CONVENTIONAL PROGRAM PLAY BUT ARE USEFUL FOR TRACKING DOWN BUGS. **MISCELLANEOUS: ONE SHOULD NOT EXPECT THIS PROGRAM TO PLAY "GRAND MASTER" STYLE CHESS. IF THE PROGRAM WAS A HUMAN PLAYER, IT WOULD BE CLASSIFIED AS A "FISH" - AN OPPONENT WITH LITTLE OR NO TALENT. HOWEVER, IT IS CAPABLE OF SOME- TIMES VERY INTERESTING SEQUENCES, AND IS UNMERCIFUL IF ITS HUMAN OPPONENT BLUNDERS BADLY. THERE IS MUCH ROOM FOR IMPROVEMENT IN THE DEVELOPMENT OF THE PROGRAM. SEVERAL IMPORTANT FEATURES CAN BE ADDED IN A "VERSION B". AMONG THESE ARE "QUIESCENCE" - THAT IS CONTINUING THE EVALUATION OF A MOVE SEQUENCE IN PROCEDURE GENMV PAST THE DEPTH OF THREE LIMITATION IF IT ENDS IN A CAPTURE. THIS WOULD PREVENT HUMAN OPPONENTS FROM SUCKERING THE PROGRAM BY PRESENTING UNFAVORABLE EXCHANGES LONGER THAN THREE HALF MOVES. ALSO SEVERAL IMPORTANT END-GAME CHESS HEURISTICS CAN BE COMBINED TO FORM AN END GAME SECTION IN THE POSITIONAL ANALYSIS PROCEDURE POSIT. HOPEFULLY, ENTRY OF THIS PROGRAM INTO THE CONTRIBUTOR'S LIBRARY WILL SPARK ENOUGH INTEREST SO THAT HEWLETT-PACKARD MIGHT BE A SERIOUS CONTENDER IN THE NEXT ACM COMPUTER CHESS TOURNAMENT. X16801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: CALEN **PROGRAM TITLE: PERPETUAL CALENDAR **REVISION? NO **PACKAGE: 99 **CATEGORY: 6 **SUBCATEGORY: **KEYWORDS: GAMES TIME **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS PROGRAM WILL PRODUCE, ON THE TELETYPE, LINE PRINTER OR OTHER I/O DEVICE, A CALENDAR FOR THE YEAR SPECIFIED BY THE USER. THIS PROGRAM ASKS FOR RESPONSES BY THE USER ON THE TELETYPE AND THESE RESPONSES ARE THEN USED TO PRODUCE THE DESIRED CALENDAR. HARDWARE REQUIREMENTS FOR PERPETUAL CALENDAR ARE 4K AND TELETYPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. COMPILE THE SOURCE USING THE FORTRAN COMPILER. 2. PROCESS THROUGH BCS - PREPARE AN ABSOLUTE TAPE OR LOAD DIRECT, INCLUDING THE RELOCATABLE PROGRAM LIBRARY. 3. PRESS RUN. THE TELETYPE WILL THEN RESPOND WITH: ENTER THE LOGICAL UNIT NUMBER OF THE OUTPUT DEVICE. THE USER SHOULD THEN TYPE THE LOGICAL UNIT NUMBER OF THE DESIRED OUTPUT DEVICE, CR/LF. THE TELETYPE WILL THEN RESPOND WITH: ENTER YEAR NUMBER THE USER THEN ENTERS THE YEAR NUMBER FOR THE CALENDAR DESIRED, CR/LF. THE TELETYPE WILL THEN RESPOND WITH: ENTER NUMBER OF COPIES DESIRED THE TELETYPE WILL THEN RESPOND WITH: ENTER STARTING DAY FOR JAN 1; (SUN = 1, MON = 2, TUE = 3, ETC.) THE USER THEN ENTERS THE APPROPRIATE NUMBER, CR/LF. THE TELETYPE THEN RESPONDS WITH: IS THIS A LEAP YEAR? ANSWER YES OR NO THE USER PROVIDES THE APPROPRIATE RESPONSE, CR/LF THE CALENDAR IS THEN PRODUCED AS REQUESTED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X16901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: PING PONG **REVISION? NO **PACKAGE: 99 **CATEGORY: 6 **SUBCATEGORY: **KEYWORDS: GAMES **LANGUAGES: FTN4 ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PLAYS PING-PONG USING THE 2100 SWITCH REGISTER TO DISPLAY THE BALL PATH AND USING BITS (0) AND (15) AS PADDLE POSITIONS. THE (BALL) SPEEDS UP OR SLOWS DOWN, DEPENDING ON WHETHER IT WAS MISSED OR RETURNED, AND THE SCORE IS KEPT ON THE SYSTEM CONSOLE. HARDWARE REQUIREMENTS INCLUDE DOS-M SYSTEM AND A BCS LOAD AS OPTIONAL, ALLOWING THIS PROGRAM TO BE RUN IN 4K WITH A TTY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X17001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: 31 - ODD GAME **REVISION? NO **PACKAGE: 99 **CATEGORY: 6 **SUBCATEGORY: **KEYWORDS: GAMES **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS IS A GAME IN WHICH THE PLAYER IS PITTED AGAINST THE COMPUTER. TO WIN, THE PLAYER MUST END WITH AN ODD TOTAL OF COUNTERS WHEN THE KITTY IS EXHAUSTED. THE KITTY STARTS WITH 31 COUNTERS. THE PLAYER CHOOSES WHETHER TO GO FIRST OR TO HAVE THE COMPUTER GO FIRST, THEN THE COMPUTER AND THE PLAYER ALTERNATE CHOOSING BETWEEN 1 AND 5 COUNTERS TO BE ADDED TO THEIR TOTALS. THE COMPUTER PLAYS AN OPTIMUM GAME WITH ONLY 3125 WAYS TO LOSE. THE PLAYER, HOWEVER, HAS ALMOST 10 MILLION WAYS TO LOSE SO THAT COMPLETELY RANDOM CHOICES WILL RARELY LEAD TO A WIN. HARDWARE REQUIREMENTS: 4K AND TTY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM USES .IOC. FOR INPUT/OUTPUT OPERATION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: HALT FROM IRRECOVERABLE INPUT ERROR MEMORY = 102001 HALT FROM IRRECOVERABLE OUTPUT ERROR MEMORY = 102002 **MISCELLANEOUS: THIS PROGRAM OPERATES IN A COMPLETELY CONVERSATIONAL MODE. X17101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: PERT0 **PROGRAM TITLE: PERT PACKAGE FOR DOS-III **REVISION? NO **PACKAGE: 99 **CATEGORY: 1 **SUBCATEGORY: 7 **KEYWORDS: MANAGEMENT PERFORMANCE **LANGUAGES: FTN4 **COMPUTER TYPE: 2100 **OPERATING SYSTEMS: DOS-III **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: PERT (PROGRAM EVALUATION AND REVIEW TECHNIQUE) PACKAGE IS A PROGRAM SET. THIS SET IS DIVIDED INTO TWO SUBSETS: SUBSET 1 FOR COMPUTATION BEFORE THE PROJECT STARTS, AND SUBSET 2 FOR COMPUTATION OF ACTUALIZA- TION DURING THE PROJECT EXECUTION. THE PROJECT CAN BE REPRESENTED GRAPHICALLY BY A NETWORK CONSISTING OF EVENTS AND ACTIVITIES; THE PROJECT CAN BE DETERMINISTIC OR INDETERMINISTIC. AN EVENT (NODE) IS DEFINED AS A POINT IN TIME INDICATING THE BEGINNING OR THE END OF SPECIFIC ACTIVITY, BUT NOT THE EXECUTION OF IT. AN ACTIVITY THEN, IS A PART OF THE PROJECT WHICH DEVELOPS BETWEEN TWO SUCCESSIVE EVENTS. SUBSET 1 PROGRAMS: LOGIC PERT NETWORK REVISION (PERT0) FILE CREATION AND PERT COMPUTATION (PERT1) ORIGINAL AND ACTUAL BAR DIAGRAM OF PERT (PERT2) PERT COMPUTATION AND COST REPORT (PERT3) SUBSET 2 PROGRAMS: ACTUAL PERT COMPUTATION (PERT4) ACTUAL COSTS AND PERT COMPUTATION (PERT5) PERT1,2,3,4,5 REQUIRE AN EFMP AREA **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: RELOCATABLE FILE# 3: SOURCE FILE# 4: DATA FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: DATA FILE# 10: SOURCE FILE# 11: DATA **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: RUN INSTRUCTIONS - PERT0: DATA FORMAT FOR PERT0: FIELD DESCRIPTION A TOTAL NUMBER OF ACTIVITIES B NAME OF TIME UNITS OF THE PROJECT C INITIAL PROJECT DATE DAY: XX MONTH: XXXX YEAR: XX RECORD 1 FORMAT = I4, 2(1X,4R2) D PROJECT TITLE (26R2) RECORD 2 FORMAT = 26R2 E START NODE (I4) F FINISH NODE (I4) G OPTIMISTIC TIME (F4.1) H MOST LIKELY TIME (F4.1) I PESSIMISTIC TIME (F4.1) J ACTIVITY COST (F7.2) K ACTIVITY DESCRIPTION (10R2) FROM INPUT RECORD #3 TO N THERE IS ONE RECORD PER ACTIVITY. RECORD 3 - N FORMATS = 2I4, 3F4.1, F7.2, 10R2 RUN INSTRUCTIONS - PERT1: STORE THE SOURCE PROGRAM, THEN STORE THE RELOCATABLE SUBROUTINE WITH THE NAME RHC00 WITH THESE DIRECTIVES. :ST, S, FPER1, 5 :ST, R, RHC00, 5 COMPILE PERT1 WITH THE FORTRAN IV COMPILER AND LOAD WITH THE RHC00 SUB- ROUTINE. IF A BAR DIAGRAM IS DESIRED, COMPILE PERT2 ALSO. CALL PERT1 WITH THIS DIRECTIVE: :PR, PERT1 THE PROGRAM WILL ASK THROUGH THE CRT CONSOLE (LU#1) THE RUN DATE AND THE NAME OF THE EFMP FILE FOR THE PROJECT. THE REPORTS WILL BE PRINTED ON THE LINE PRINTER. RUN INSTRUCTIONS - PERT2: PERT2 NEEDS A RELOCATABLE SUBROUTINE CALLED BY THE LOADER AS RHC00. PERT2 IS CALLED BY PERT1 AND TAKES INFORMATION FROM THE EFMP FILE. RUN INSTRUCTIONS - PERT3: COMPILE THE SOURCE CODED SUBROUTINE WITH FORTRAN IV COMPILER AND STORE IT IN RELOCATABLE FORM, THEN COMPILE THE PROGRAM PERT3 WITH THE SAME COMPILER AND LOAD IT WITH THE RELOCATABLE SUBROUTINE JUST STORED, AND THE PREVIOUS RHC00 SUBROUTINE. CALL THE PROGRAM PERT3 WITH THE DIRECTIVE: :PR,PERT3 THE PROGRAM WILL ASK THE OPERATOR TO WRITE ON CONSOLE THE RUN DATE AND THE EFMP FILE NAME OF THE PROJECT TO BE PRINTED. THEN THE PROGRAM WILL READ THE FIRST RECORD OF THE PAPER TAPE. WHEN YOU LOAD THE COMPILED PROGRAM YOU HAVE TO LOAD THE TWO PREVIOUS SUBROUTINES FALLA AND SJC03. RUN INSTRUCTIONS - PERT4: COMPILE PERT4 WITH THE FORTRAN IV COMPILER AND LOAD IT WITH TWO RE- LOCATABLE SUBROUTINES (FALLA AND SJC03) THAT HAD BEEN PREVIOUSLY STORED IN RELOCATABLE FORM. THEN CALL PERT 4 WITH THE DIRECTIVE :PR,PERT4. THE PROGRAM WILL ASK FOR THE RUN DATE AND THE EFMP PROJECT FILE ON LOGICAL UNIT #1, THEN THE REPORTS WILL BE PRINTED ON THE LINE PRINTER. THE DATA FORMAT FOR THIS PROGRAM IS AS FOLLOWS: RECORD #1 - A B C D RECORD #2 - E F RECORD #3 - G H I . . . . RECORD #N - G H I WHERE: N = F-2 FIELD DESCRIPTION A TOTAL NUMBER OF ACTIVITIES (I4) B NAME OF TIME UNITS (4R2) C INITIAL DATE PROJECT (R2,2R2,R2) D COST INDICATOR: 0 - THERE IS NO COST DATA 1 - THERE IS COST DATA E ACTUALIZATION TIME (I4) F NUMBER OF ACTIVITIES TO BE ACTUALIZED (I3) G NUMBER OF THE ACTIVITY (I4) H PERCENTAGE OF ADVANCE OF THE ACTIVITY (I3) I ACTUALIZED COST OF THE ACTIVITY (F10.2) RUN INSTRUCTIONS - PERT5: COMPILE PERT5 WITH THE FORTRAN IV COMPILER AND LOAD IT WITH THE RELOCATABLE SUBROUTINE FALLA STORED AS RHC00. CALL PERT4 WITH A SET OF DATA. PERT4 WILL CALL PERT5. THE DATA FORMAT FOR PERT5 IS THE SAME AS FOR PERT4, THE ONLY DIFFERENCE IS THAT THE COST INDICATOR SHOULD BE SET TO (1). **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: PERT0: THIS PROGRAM OF THE PERT PACKAGE CHECKS THE LOGIC OF THE ACTIVITIES NETWORK, LOOKING FOR ANY CLOSE LOOP IN IT, IF THERE ARE ANY, THE PRO- GRAM WRITES ON WHAT NODES IS THE LOOP. PERT0 WILL ACCEPT UP TO 490 EVENTS (NODES) AND 450 ACTIVITIES. IT REQUIRES 24K DOS-III SYSTEM. PERT1: PERT1 CREATES AN EFMP FILE WITH THE PROJECT INFORMATION THAT HAS JUST BEEN TESTED WITH PERT0. THIS PROGRAM COMPUTES THE EXPECTED VALUE, THE STANDARD DEVIATION AND THE VARIANCE WITH THE ASSUMPTION THAT THE VARIABLE DURATION OF THE ACTIVITY, FOLLOWS A NORMAL PROBABILITY DISTRIBUTION, THEN CALCULATES THE EARLY START, EARLY FINISH, LATE START, LATE FINISH, TOTAL FLOAT AND FREE FLOAT OF EVERY ACTIVITY. THE PROGRAM MAKES A CALL TO THE PROGRAM PERT2. PERT1 WILL ACCEPT UP TO 490 EVENTS AND 450 ACTIVITIES. IT REQUIRES A 24K DOS-III SYSTEM. PERT2: PERT2 PRINTS THE BAR DIAGRAM OF A PROJECT, THIS PROGRAM GETS THE INFORMATION OF THE EFMP FILE THAT PERT1 HAS CREATED. PERT2 PRINTS A SPECIAL SYMBOL FOR EVERY ACTIVITY DEPENDING ON ITS STATUS, FOR CRITICAL ACTIVITIES PRINTS AN ASTERISK ON A PROPORTION WITH ITS AVERAGE TIME, AN X FOR NON-CRITICAL AND FOR THE FLOAT TIME. THE PROGRAM IS CALLED BY PERT1. PERT2 WILL ACCEPT UP TO 490 EVENTS AND 450 ACTIVITIES. IT REQUIRES A 24K DOS-III SYSTEM. PERT3: PERT3 PRINTS THE PERT TIMES OF THE PROJECT COMPUTED BY PERT1 AND ALSO PRINTS THE COST OF EACH ACTIVITY AS SUPPLIED ON THE DATA SET. THE PERT TIMES CONSIST OF AN EXPECTED TIME, EARLY START, EARLY FINISH, LATE START, LATE FINISH, TOTAL FLOAT AND FREE FLOAT FOR EACH ACTIVITY, ALSO THE PROGRAM POINTS OUT THE CRITICAL ACTIVITIES PRINTING ITS STATUS. THE PROGRAM TAKES THE INFORMATION OF THE EFMP FILE FOR THE PROJECT CREATED BY PERT1. PERT4: PERT4 REALIZES THE PERT COMPUTATION WHEN AN ACTUALIZATION ON THE PROJECT NETWORK IS DESIRED, THIS PROGRAM PRINTS THE REPORT IF NO COST ARE GOING TO BE ACTUALIZED, THEN IT CALLS TO PERT2 TO PRINT THE ACTUALIZED BAR DIAGRAM. IF THERE IS GOING TO BE SOME CHANGE IN COSTS AND THE COST INDICATOR IS ON (1) PERT4 CALLS PERT5 TO PRINT THE DESIRED REPORT. THE TIME REPORT GENERATED BY PERT4 HAS THE PERT TIMES INDICATED ON PERT1 AND THE PERCENTAGE OF ADVANCE OF THE ACTIVITIES. PERT5: PERT5 PRINTS THE ACTUALIZED COST AND TIME REPORT THAT PERT4 HAS JUST CALCULATED, AND THEN CALLS PERT2 TO PRINT THE ACTUALIZED PERT BAR DIAGRAM. PERT5 PRINTS, BESIDE THE PERT TIMES, THE EXPECTED COST AND THE ACTUAL- IZED COSTS, THE EXPECTED TIME AND THE ACTUALIZED TIME, AND THE STATUS OF EVERY ACTIVITY. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X17201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 2000F BASIC FOR DOS-M/DOS III **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: BASIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS-3 **MEMORY REQUIREMENTS: 24K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: DOS-M/DOS III BASIC IS ESSENTIALLY A SINGLE TERMINAL VERSION OF HP 2000F TIME-SHARED BASIC. IT RUNS UNDER THE DOS-M OR DOS III OPERATING SYSTEM, GIVING THE USERS OF THESE SYSTEMS A POWERFUL, YET EASY TO USE COMPUTING FACILITY. FEATURES OF DOS-M/DOS III BASIC NOT FOUND IN OTHER DOS-M BASIC'S INCLUDE: STRING VARIABLES, FORMATTED OUTPUT, USER PROGRAM DISC STORAGE AND RETRIEVAL, USER DATA FILES, PROGRAM CHAINING, ERROR MESSAGES INSTEAD OF ERROR NUMBERS; LINE PRINTER SUPPORT, BETTER PROGRAM EDITING FACILITIES, HIGH-SPEED PAPER TAPE INPUT AND OUTPUT OF PROGRAMS, MIN AND MAX OPERATORS, MORE FLEXIBLE INPUT WITH ENTER STATEMENT, MULTI-BRANCH GOTO AND GOSUB STATEMENTS, ADDITIONAL FUNCTIONS, SOURCE INPUT FROM ANY INPUT DEVICE VIA "LOAD" COMMAND, ETC. ANOTHER IMPORTANT CONSIDERATION IS THE PROVISION FOR RETRIEVING BASIC PROGRAMS FROM 2000F TIME-SHARED SYSTEM DUMP TAPES. THIS GIVES THE DOS-M/DOS III USER ACCESS TO THE GREAT NUMBER OF USEFUL HP BASIC LIBRARY PROGRAMS AND ALLOWS EASY TRANSFER OF OTHER USER-DEVELOPED PROGRAMS FROM A TIME-SHARED SYSTEM TO A DOS ENVIRONMENT. USER DATA FILES MAY ALSO BE TRANSFERRED FROM SYSTEM TO SYSTEM. TO MAKE THESE CONVERSIONS THE DOS-M/2000C TSB FILE HANDLER, HP 24228, MUST BE USED IN CONJUNCTION WITH SPECIAL ROUTINES INCLUDED IN THIS PACKAGE. CURRENTLY, DOS-M/DOS III BASIC REQUIRES AT LEAST 14K WORDS OF MEMORY IN ADDITION TO SYSTEM REQUIREMENTS. THEREFORE, A CPU WITH AT LEAST 24K WILL BE NECESSARY. (A 32K CPU GIVES THE USER MORE PROGRAM SPACE THAN IS AVAILABLE ON THE 2000F.) A TIME BASE GENERATOR IS NECESSARY IF THE TIME COMMAND, TIM( ) FUNCTION, OR TIMED ENTER WILL BE USED. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: DOS-M/DOS III BASIC RELOCATABLE MODULES FILE# 3: BFILE RELOC. MODULE FILE# 4: CFILE RELOC. MODULE FILE# 5: LOADR RELOC. MODULE FILE# 6: DOS-M/DOS III BASIC MAIN SOURCE FILE# 7: DOS-M/DOS III BASIC SUBROUTINES SOURCES FILE# 8: SOURCE FILE# 9: SOURCE FILE# 10: SOURCE FILE# 11: SOURCE FILE# 12: SOURCE FILE# 13: SOURCE FILE# 14: SOURCE FILE# 15: SOURCE FILE# 16: SOURCE FILE# 17: SOURCE FILE# 18: SOURCE FILE# 19: SOURCE FILE# 20: SOURCE FILE# 21: SOURCE FILE# 22: SOURCE FILE# 23: SOURCE FILE# 24: SOURCE FILE# 25: SOURCE FILE# 26: SOURCE FILE# 27: SOURCE FILE# 28: SOURCE FILE# 29: SOURCE FILE# 30: SOURCE FILE# 31: SOURCE FILE# 32: SOURCE FILE# 33: SOURCE FILE# 34: SOURCE FILE# 35: SOURCE FILE# 36: DOS-M/DOS III BASIC SEGMENTS SOURCES FILE# 37: SOURCE FILE# 38: SOURCE FILE# 39: SOURCE FILE# 40: SOURCE FILE# 41: SOURCE FILE# 42: SOURCE FILE# 43: SOURCE FILE# 44: SOURCE FILE# 45: SOURCE FILE# 46: SOURCE FILE# 47: SOURCE FILE# 48: SOURCE FILE# 49: SOURCE FILE# 50: SOURCE FILE# 51: SOURCE FILE# 52: SOURCE FILE# 53: BFILE SOURCE FILE# 54: CFILE SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: AN ATTEMPT HAS BEEN MADE TO DUPLICATE 2000F TIME-SHARED BASIC AS CLOSELY AS POSSIBLE. THEREFORE, THE USER IS REFERRED TO "2000F: A GUIDE TO TIME-SHARED BASIC" (HP ORDER NUMBER 02000-90044) FOR DETAILED INFORMATION ABOUT THE LANGUAGE AND PROGRAM EXECUTION. ONLY DIFFERENCES BETWEEN 2000F AND DOS-M/DOS III BASIC WILL BE NOTED HERE. TO RUN DOS-M/DOS III BASIC WITH THE SYSTEM CONSOLE AS THE USER TERMINAL TYPE: :PR,BASIC TO RUN WITH ANOTHER CONSOLE AS THE USER TERMINAL TYPE: :PR,BASIC,(LU # OF CONSOLE) IN EITHER CASE, BASIC RESPONDS WITH "READY", AND THE USER MAY TYPE PROGRAM STATEMENTS AND COMMANDS AS DESCRIBED IN "2000F: A GUIDE TO TIME-SHARED BASIC" WITH THE FOLLOWING EXCEPTIONS: 1. THE "LOG IN" PROCEDURE IS NOT USED. 2. THE "BREAK" KEY IS NOT USED WITH DOS-M/DOS III BASIC. TO STOP A LISTING, RUNNING PROGRAM, OR OTHER LENGTHY OPERATION, SET BIT 15 OF THE SWITCH REGISTER ON. THIS WILL TERMINATE THE CURRENT OPERATION (EXCEPT FOR A RUNNING PROGRAM IF THE "BRK( )" FUNCTION HAS DISABLED "BREAK"). 3. THE "ECHO" COMMAND IS NOT USED. 4. THE "PUNCH" AND "XPUNCH" COMMANDS PUNCH THE CURRENT PROGRAM ON THE PAPER TAPE PUNCH (MUST BE LU #4). 5. THE "TAPE" COMMAND READS A PROGRAM TAPE FROM THE PHOTO-READER (MUST BE LU # 5). IT EXPECTS A SPECIAL CHARACTER, CNTL-Z (Z TYPED WHILE HOLDING DOWN THE CNTL KEY), AT THE END OF THE TAPE. "PUNCH" AND "XPUNCH" PROVIDE THIS TERMINAL CHARACTER AUTOMATICALLY. A TAPE PUNCHED ON A 2000 TIME-SHARED SYSTEM SHOULD HAVE THIS CHARACTER PUNCHED AFTER THE TRAILER AND ANOTHER TRAILER PRODUCED FOLLOWING IT BEFORE THE TAPE IS REMOVED FROM THE TERMINAL. 6. NO MESSAGES ARE ISSUED ON THE STATUS OF THE LINE PRINTER EXCEPT "LP FREE" WHEN A LISTING OR PROGRAM COMPLETES. 7. THE "TIME" COMMAND WORKS ONLY IF A TIME-BASE GENERATOR IS IN THE SYSTEM. 8. THE "MESSAGE" COMMAND IS NOT USED. 9. THERE IS NO DISTINCTION BETWEEN USER LIBRARY, GROUP LIBRARY, AND SYSTEM LIBRARY. ALL PROGRAM AND DATA FILES ARE USER LIBRARY FILES. THE "LIBRARY" AND "GROUP" COMMANDS ARE NOT USED. 10. FOR THE "TIM( )" FUNCTION TO WORK PROPERLY, TWO THINGS ARE REQUIRED. A. A TIME-BASE GENERATOR MUST BE IN THE SYSTEM IF HOURS AND MINUTES ARE DESIRED. B. A SPECIALLY FORMATTED ":DATE" DIRECTIVE MUST BE GIVEN TO THE DOS-M OR DOS III SYSTEM IF THE DAY AND YEAR ARE DESIRED. :DA,XXX/YY,M,N WHERE XXX IS A THREE-DIGIT NUMBER GIVING THE CURRENT DAY OF THE YEAR, AND YY IS THE YEAR OF THE CENTURY. M IS THE CURRENT HOUR AND N THE CURRENT MINUTE OF THE DAY. :DA,032/73,9,30 FOR FEB. 1, 1973 AT 9:30 AM 11. CURRENTLY A MAXIMUM OF 31 PROGRAMS AND DATA FILES ALLOWED. 12. A CNTL-L (L TYPED WHILE HOLDING DOWN THE CNTL KEY) IN AN OUTPUT STRING CAUSES A PAGE EJECT WHEN IT IS PRINTED ON THE LINE- PRINTER. 13. A NEW COMMAND, "LOAD-8", ALLOWS SOURCE STATEMENTS TO BE INPUT FROM A DEVICE OTHER THAN THE TTY. FOR EXAMPLE, "LOAD-8" WOULD INPUT SOURCE FROM LU #8. "LOAD" ALONE DEFAULTS TO LU#5. LOADING STOPS WHEN AN END-OF-FILE OR VALID COMMAND IS ENCOUNTERED IN THE SOURCE STREAM. BFILE BFILE INITIALIZES A DOS-M OR DOS III FILE FOR USE BY BASIC. THE USER MUST RESERVE SPACE ON THE DISC FOR THIS FILE BY CREATING A FILE WITH THE ":ST,B,$FILS,N" DIRECTIVE. ("$FILES" MUST BE ON THE SAME DISC SUB- CHANNEL AS BASIC AND ITS SEGMENTS, BFILE, AND CFILE). N IS THE NUMBER OF SECTORS THAT THE USER WISHES TO RESERVE FOR BASIC PROGRAM AND DATA FILE STORAGE. THE FILE IS THEN INITIALIZED BY RUNNING BFILE: :PR,BFILE THIS BUILDS AN EMPTY DIRECTORY IN THE FIRST TWO SECTORS OF "$FILS". (TWO SECTORS OF DIRECTORY ALLOW SPACE FOR UP TO 31 PROGRAMS OR DATA FILE ENTRIES.) BFILE ISSUES AN ERROR MESSAGE IF A FILE NAMED "$FILS" DOES NOT EXIST OR IF IT IS LESS THAN THREE SECTORS LONG. IF BFILE IS RUN AND IT FINDS A DIRECTORY ALREADY IN "$FILS", IT ASKS "OK TO PURGE BASIC FILES?" AND WAITS FOR A RESPONSE FROM THE USER. A RESPONSE OF "Y" INFORMS BFILE THAT IT SHOULD DESTROY THE OLD DIRECTORY AND CREATE A NEW ONE. A RESPONSE OF "N" TERMINATES BFILE WITHOUT FURTHER ACTION. CFILE CFILE, USED IN CONJUNCTION WITH THE DOS-M/2000C FILE HANDLER, GIVES THE USER THE CAPABILITY OF TRANSFERRING PROGRAMS AND DATA FILES BETWEEN A 2000C/F TSB SYSTEM AND A DOS-/DOS III SYSTEM. THE FILE HANDLER CONVERTS PROGRAM AND DATA FILES FROM 2000C/F DUMP TAPES TO DOS-M/DOS III DISC FILES. IT ALSO TRANSFERS PROPERLY FORMATTED DOS-M/DOS III DATA FILES TO MAGNETIC TAPE FOR SUBSEQUENT LOADING ON A 2000C/F TSB SYSTEM. CFILE CONVERTS THE DOS-M/DOS III FILES CREATED BY THE FILE HANDLER TO BASIC FILES WITHIN "$FILS". CFILE ALSO CONVERTS BASIC FILES WITHIN "$FILS" TO DOS-M/DOS III FILES THAT ARE FORMATTED FOR THE TSB FILE HANDLER. CFILE IS RUN BY TYPING: :PR,CFILE A CHECK IS FIRST MADE TO SEE THAT A FILE NAMED "$FILS" EXISTS AND HAS BEEN INITIALIZED BY BFILE. IF NOT, AN ERROR MESSAGE IS PRINTED AND CFILE TERMINATES. IF "$FILS" IS READY, CFILE REQUESTS WHICH OPTION IS DESIRED: SELECT OPTION: 1 = DOS FILE TO BASIC 2 = BASIC FILE TO DOS THE USER RESPONDS WITH "1" OR "2", FOLLOWED BY CARRIAGE RETURN, LINE- FEED. IF A RESPONSE OTHER THAN "1" OR "2" IS GIVEN, CFILE REPEATS THE OPTION REQUEST. IF OPTION "1" IS SELECTED: CFILE TYPES "FILENAME?" AND WAITS FOR THE USER TO TYPE THE NAME OF THE DOS FILE THAT IS TO BE CONVERTED TO A BASIC FILE WITHIN "$FILS". THE USER TYPES THE FILENAME OR "/E". "/E" TERMINATES CFILE. IF A FILENAME IS TYPED, CFILE CHECKS TO SEE THAT IT EXISTS. ITS SIZE IS CHECKED AND THE DIRECTORY IN "$FILS" IS EXAMINED TO SEE IF THERE IS SPACE FOR ANOTHER ENTRY. IF SO, AN ENTRY IS BUILT FOR THE NAMED FILE AND IT IS COPIED TO "$FILS". OTHERWISE, AN ERROR MESSAGE IS PRINTED AND CFILE TERMINATES. AFTER A SUCCESSFUL FILE COPY, CFILE REPEATS THE QUESTION "FILENAME?" AND THE PROCESS CONTINUES AS ABOVE. IF OPTION "2" IS SELECTED: BEFORE RUNNING CFILE, THE USER SHOULD CREATE AN ASCII DOS DATA FILE LARGE ENOUGH TO HOLD THE BASIC DATA FILE TO BE CONVERTED. TO CALCULATE THE NUMBER OF SECTORS NEEDED, DOUBLE THE NUMBER OF RECORDS IN THE BASIC FILE AND ADD ONE. (E.G. IF THE BASIC FILE HAS 5 RECORDS, :ST,A,FILENAME,11) THE NAME OF THE DOS FILE MUST BE THE SAME AS THE FIRST FIVE CHARACTERS OF THE BASIC FILENAME. CFILE TYPES "FLENAME?" AND WAITS FOR THE USER TO TYPE THE NAME OF THE BASIC FILE THAT IS TO BE CONVERTED TO A DOS FILE. THE USER TYPES A FILENAME OR "/E". "/E" TERMINATES CFILE. IF A FILENAME IS TYPED, CFILE CHECKS TO SEE THAT IT EXISTS WITHIN "$FILS", THAT IT IS NOT A PROGRAM FILE, AND THAT A DOS FILE OF THE APPROPRIATE NAME AND SIZE ALSO EXISTS. ERROR MESSAGES ARE PRINTED IF ANY OF THESE CONDITIONS ARE NOT MET AND CFILE TERMINATES. IF ALL IS WELL, CFILE PRINTS "ENTER USER ID" AND WAITS FOR THE USER'S RESPONSE. THE USER MUST ENTER THE TSB USER ID INTO WHICH HE WANTS THE FILE TO BE TRANSFERRED. THE FILE IS THEN CONVERTED TO A DOS FILE AND FORMATTED FOR THE FILE HANDLER. THEN THE QUESTION "FILENAME?" IS REPEATED AND PROCESSING CONTINUES AS DESCRIBED ABOVE. 1. LOAD BASIC AS DESCRIBED IN OPERATING PROCEDURES BELOW. 2. RUN BASIC: :PR,BASIC 3. AFTER "READY" IS PRINTED, TYPE YOUR PROGRAM. 4. TYPE "RUN". 5. TYPE: BYE 6. BASIC WILL TERMINATE WITH THE FOLLOWING MESSAGE: XXX MINUTES OF TERMINAL TIME WHERE XXX IS THE NUMBER OF WHOLE MINUTES THAT BASIC HAS BEEN RUNNING OR "000" IF NO TIME-BASE GENERATOR IS IN THE SYSTEM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: ERROR MESSAGES ARE CONTAINED IN THE REFERENCES LISTED IN THE SECTION ON LITERATURE REFERENCE UNDER 'MISCELLANEOUS'. IF A COMMAND IS GIVEN TO DOS-M/DOS III BASIC THAT REQUIRES DISC STORAGE, A CHECK IS MADE TO SEE THAT A DOS FILE NAMED "$FILS" EXISTS AND HAS BEEN INITIALIZED WITH BFILE. IF NOT, THE MESSAGE "$FILS NOT INITIALIZED" IS PRINTED. **MISCELLANEOUS: "CSAVE"'D PROGRAMS MAY NOT BE TRANSFERRED FROM A 2000 SYSTEM TO DOS-M/ DOS III BASIC. VDR00 (HP 20985) MUST BE USED AS THE TELETYPE DRIVER, NOT DVR05. (BASIC REQUIRES THE "BINARY" I/O CAPABILITIES OF DVR00, WHICH ARE NOT INCLUDED IN DVR05.) BASIC (AND ITS SEGMENTS), BFILE, CFILE, AND $FILS MUST ALL RESIDE ON THE SAME DISC SUBCHANNEL. NOTE: SOME VERSIONS OF THE STANDARD DOS III RELOCATING LOADER WILL NOT LOAD BASIC PROPERLY, EVEN THOUGH THEY SUPPORT CURRENT PAGE LINKING. USE THE LOADER INCLUDED IN THIS PACKAGE IF YOU HAVE BASE PAGE OVER- FLOW PROBLEMS. LITERATURE REFERENCE: 2000F: A GUIDE TO TIME-SHARED BASIC, HP02000-90044. DOS-M/2000C TSB FILE HANDLER, HP SMALL PROGRAMS MANUAL, 5951-1381. X17301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: LANGUAGE PARSING **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: CHARACTER SORT **LANGUAGES: FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS PROGRAM READS A GRAMMAR, EXPRESSED IN PRODUCTION NOTATION, THEN READS ONE OR MORE STRINGS OF 1-60 CHARACTERS, TESTING EACH STRING TO DETERMINE IF IT IS IN THE LANGUAGE GENERATED BY THE GRAMMER. IF IT IS, A SYNTAX TREE IS PRODUCED. THE PROGRAM IS OPERABLE IN BCS. EQUIPMENT REQUIRED IS 8K OF CORE STORAGE, A PHOTOREADER AND TELETYPE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: 1. COMPILE AND ASSEMBLE THE FORTRAN II SOURCE TAPE. 2. LOAD THE ABSOLUTE TAPE. 3. SET S.R. TO 2. 4. PLACE DATA TAPE IN PHOTOREADER. 5. PRESS RUN. **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: PROGRAM PARSE THIS PROGRAM READS A GRAMMAR, EXPRESSED IN PRODUCTION NOTATION, THEN READS ONE OR MORE STRINGS OF 1-60 CHARACTERS, TESTING EACH STRING TO DETERMINE IF IT IS IN THE LANGUAGE GENERATED BY THE GRAMMAR. IF IT IS, A SYNTAX TREE IS PRODUCED. METHOD: THIS PROGRAM USES THE METHOD OF TOP-DOWN SYNTAX ANALYSIS TO ATTEMPT TO BUILD A SYNTAX TREE FOR THE INPUT STRING. DESCRIPTIONS OF THIS METHOD MAY BE FOUND IN THE PAPER BY CHEATHAM AND SATTLEY AND THE BOOK BY KELLER AND WRIGHT. SOME OF THE PROGRAMMING TECHNIQUES CAN BE FOUND IN BARRON'S BOOK. INPUT: THE FIRST INPUT STATEMENT MUST BE A $ / IN A 3A1 FORMAT TO SATISFY THE PROGRAM LITERAL CONSTANT REQUIREMENTS. INPUT TO THIS PROGRAM IS SOME GRAMMAR, G, FOLLOWED BY ONE OR MORE STRINGS WHICH WILL BE TESTED TO DETERMINE WHETHER OR NOT THEY ARE IN THE LANGUAGE L(G). THERE IS ONE INPUT STATEMENT FOR EACH PRODUCTION. COLUMN ONE CONTAINS THE NONTERMINAL SYMBOL WHICH IS THE LEFT PART OF THE PRODUCTION. COLUMN FIVE CONTAINS THE LENGTH OF THE RIGHT PART OF THE PRODUCTION. COLUMNS 7-12 CONTAIN THE RIGHT PART OF THE PRODUCTION IN A 5A1 FORMAT. COLUMNS 15-24 CONTAIN THE NUMERICAL REPRESENTATION OF THE RIGHT PART IN A 5I2 FORMAT. THE LAST PRODUCTION IS A NULL PRODUCTION FOR LATER TESTING PURPOSES. A STATEMENT PRECEDING THE GRAMMAR IS REQUIRED. IT CONTAINS THE NUMBER OF PRODUCTIONS IN THE GRAMMAR IN COLUMNS 1-2. THIS STATEMENT IS ALSO USED TO REQUEST A PROGRAM TRACE. A TRACE IS REQUESTED BY PLACING A 1 IN COLUMN 21. AN EXAMPLE OF THE INPUT FOR ONE TEST CASE FOLLOWS: COLUMNS 11111111112222222222333333333344444444445 12345678901234567890123456789012345678901234567890 $ / 8 0 Q 2 E; 0200 E 3 T+E 040002 E 1 T 04 T 3 P*T 060004 T 1 P 06 P 3 (E) 000200 P 1 V 00 ? V; V+V; V+V+V; V+V+V+V+V+V+V+V+V+V; V*(V+V)*(V+V); (V+V)*(V+V)*V+(V*V+V) (V+V)*V+V)*V+(V*V+V); (V); ((V)); (((V))); ((((V)))); (((((V))))); / STATEMENT ONE INDICATES THAT THERE ARE EIGHT PRODUCTIONS IN THE GRAMMAR WHICH FOLLOWS. STATEMENTS 2-8 DESCRIBE THE GRAMMAR. STATEMENT 9 IS THE REQUIRED NULL PRODUCTION. STATEMENTS 10-16 ARE THE STRINGS TO BE EXAMINED. STATEMENT 17 (/ IN COLUMN 1) INDICATES THAT THERE ARE NO MORE INPUT STRINGS. IF A TRACE WAS DESIRED A ONE WOULD HAVE BEEN PLACED IN COLUMN 21 OF STATEMENT ONE. EACH INPUT STRING IS LIMITED TO 60 CHARACTERS, MUST START IN COLUMN ONE AND MUST NOT CONTAIN EMBEDDED BLANKS. OUTPUT: THE FIRST SECTION OF OUTPUT IN ANY RUN OF THIS PROGRAM IS A COPY OF THE GRAMMAR, G, IN TABULAR FORM. THERE ARE AT LEAST TWO LINES OF OUTPUT FOR EACH INPUT STRING. THE FIRST OF THESE LINES IS A COPY OF THE INPUT STRING AND THE SECOND INDICATES WHETHER OR NOT IT IS VALID IN L(G). IN ADDITION, A DESCRIPTION OF THE SYNTAX TREE IS PRINTED FOR VALID STRINGS. TEST DATA AND (PARTIAL) VERIFICATION: THIS PROGRAM HAS BEEN TESTED WITH THE INPUT DESCRIBED ABOVE AND FOUND TO BE WORKING. IT HAS ALSO BEEN TESTED WITH THE DATA BELOW. IN THE ABOVE CASE THE P IN PARENTHESIS IS A WORST CASE SEARCH. THE ADDITIONAL TIME REQUIRED FOR THE SEARCH IS PROPORTIONAL TO N! WHERE N IS THE NUMBER OF PARENTHESIS PAIRS. THE TIME REQUIRED FOR THE WORST CASE SEARCH CAN BE DECREASED SIGNIFICANTLY BY REWRITING THE GRAMMAR. THE GRAMMAR REMAINS IN THIS FORM FOR DEMONSTRATION PURPOSES. TO PERFORM A TRACE, THE FOLLOWING MAY BE USED: $ / 8 1 Q 2 E 0200 E 3 T+E 040002 E 1 T 04 T 3 P*T 060004 T 1 P 06 P 3 (E) 000200 P 1 V 00 ? V+V / **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: REFERENCES: CHEATHAM, T.E. AND SATTLEY, KIRK. SYNTAX DIRECTED COMPILING. PROCEEDINGS, 1964 SJCC. BARRON, D.W. RECURSIVE TECHNIQUES IN PROGRAMMING. NEW YORK. AMERICAN ELSEVIER PUBLISHING CO. C1968. KELLER, ROY F. AND WRIGHT, CHARLES T. ALGEBRAIC LANGUAGES AND THEIR TRANSLATORS. NEW YORK. HOLT RINEHART AND WINSTON. C1970. GRIES, DAVID. COMPILER CONSTRUCTION FOR DIGITAL COMPUTERS. JOHN WILEY AND SONS INC. NEW YORK. C1971. LEE, JOHN A.N. COMPUTER SEMANTICS. VAN NOSTRAND REINHOLD COMPANY, NEW YORK. C1972. X17401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 2IMX PAPER TAPE ASSEMBLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ASSEMBLER **LANGUAGES: ASMB (ABS) **COMPUTER TYPE: **OPERATING SYSTEMS: SIO **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS IS A PAPER TAPE BASED ASSEMBLER FOR THE HP 21MX COMPUTER SERIES. IT IS A USABLE SUBSET OF THE DOS 21MX ASSEMBLER. ALL INSTRUCTIONS FROM THE 21MX COMPUTER REFERENCE MANUAL HAVE BEEN IMPLEMENTED. THE ASSEMBLER WILL GENERATE BOTH RELOCATABLE AND ABSOLUTE CODE. THE ASSEMBLER OPER- ATES WITH STANDARD SIO DRIVERS IN ANY 2100 SERIES COMPUTER WITH A MINI- MUM OF 8K MEMORY AND A TELETYPE. HARDWARE REQUIREMENTS ARE AN 8K 2100 SERIES COMPUTER AND TELETYPE. ALTHOUGH ASSEMBLER WILL RUN ON ANY 2100 SERIES COMPUTER, IT SHOULD BE USED ONLY TO GENERATE CODE FOR USE ON THE 21MX SERIES. FLOATING POINT INSTRUCTIONS WILL ALWAYS BE GENERATED AND MANY 21MX CODES ARE ILLEGAL ON OTHER 2100'S. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE FILE# 4: SOURCE FILE# 5: SOURCE FILE# 6: SOURCE FILE# 7: SOURCE FILE# 8: SOURCE FILE# 9: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. ASSEMBLE THE HP 21MX PAPER TAPE ASSEMBLER SOURCE IN FILE 1. THIS WILL PRODUCE A LISTING ABOUT 1 INCH THICK; CHANGE THE THE CONTROL STATEMENT IF DESIRED. AN ABSOLUTE PAPER TAPE IS PRODUCED. 2. WITH THE BBL, LOAD AND CONFIGURE ANY DESIRED STANDARD SIO DRIVERS. LOAD THE 21MX PAPER TAPER ASSEMBLER. IF DESIRED, USE THE SIO DUMP TO DUMP THE SIO DRIVERS OR CONFIGURED 21MX ASSEMBLER. 3. LOAD ADDRESS 100B (120B IF THE CONTROL STATEMENT IS TO BE ENTERED THROUGH THE TTY). PLACE A TEST TAPE IN THE READER. CLEAR THE SWITCH REGISTER, PRESS PRESET AND RUN. 4. WHEN A HLT 11B OCCURS, RELOAD A TEST TAPE IN THE READER AND PRESS RUN. 5. FOR ANY QUESTIONS; CONSULT AN HP ASSEMBLER MANUAL, THE 21MX COMPUTER MANUAL, THE SIO SUBSYSTEM OPERATION MANUAL, OR THE ASSEMBLER, FORTRAN, AND ALGOL ERROR MESSAGES. USER PROGRAMMING INSTRUCTIONS 1. THE MIC PSEUDO INSTRUCTION HAS NOT BEEN IMPLEMENTED; RAM IS STILL VALID. 2. THE PRESENCE OR ABSENCE OF THE F OPTION IN THE CONTROL STATEMENT HAS NO AFFECT ON THE CODE PRODUCED. 3. A BIT INSTRUCTION MUST BE CODED AS FOLLOWS: CBS MASK DEF WORD 4. ANY INSTRUCTION REQUIRING AN ADDRESS IS CODED AS FOLLOWS: LAX ADDR 5. THE INTERRUPTABLE INSTRUCTIONS AUTOMATICALLY GENERATE THE REQUIRED THIRD WORD NOP WITHOUT ANY PROGRAMMING EFFORT. LDA ADDR1 LDB ADDR2 MBT CNT 6. ALL INSTRUCTIONS FROM THE 21MX COMPUTER REFERENCE MANUAL HAVE BEEN IMPLEMENTED AT THIS TIME. THE MEMORY MANAGEMENT INSTRUCTIONS HAVE NOT BEEN IMPLEMENTED AT THIS TIME. 7. THE ASSEMBLER OCCUPIES 4500 WORDS BASE 10 PLUS ANY SIO DRIVERS. THE REMAINING MEMORY SPACE IS USED FOR THE SYMBOL TABLE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: FOR ERROR MESSAGES, CONSULT THE ERROR SECTIONS OF THE FOLLOWING MANUALS: HP ASSEMBLER MANUAL (02116-9014) A POCKET GUIDE TO THE 2100 COMPUTER (5951-4923) ASSEMBLER, FORTRAN, AND ALGOL ERROR MESSAGES (5951-1377) **MISCELLANEOUS: 21MX COMPUTER REFERENCE MANUAL (02108-90002) A POCKET GUIDE TO THE 2100 COMPUTER (5951-4423) HP ASSEMBLER MANUAL (02116-9014) SIO SUBSYSTEM OPERATION MANUAL (5951-1390) ASSEMBLER, FORTRAN, AND ALGOL ERROR MESSAGES (5951-1377) X17501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: INTEL 8080 ASSEMBLER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 1 **KEYWORDS: ASSEMBLER INTEL **LANGUAGES: ALGOL ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: INTEL 8080 MICROPROCESSOR CROSS ASSEMBLER. INPUT: SOURCE LANGUAGE IN 8080 MNEMONICS. OUTPUT: DEPENDING ON CONTROL STATEMENT. 1. LIST - PROGRAM LIST WITH CHIP ADDRESS, RELATIVE ADDRESS, CODE, REMARKS. 2. TABLE - LIST OF SYMBOLS USED AND THEIR VALUES (LOCATION). 3. BINARY - PAPER TAPE (ASCII). 4. SORT - SAME AS TABLE BUT ALPHANUMERIC. FORM: VERY CLOSE TO HP ASSEMBLY. SYSTEM: DESIGNED FOR DOS-M, BUT EASILY ALTERABLE TO ANY SYSTEM SUPPORTING ALGOL. HARDWARE REQUIREMENTS: DOS SYSTEM WITH LP AND TTY. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: REFER TO COMMENTS IN SOURCE CODE. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X17601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 12539A TIME BASE GENERATOR DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ROUTINE PROVIDES A MEANS FOR MEASURING THE TIME OF DAY. ELAPSED TIME CAN ALSO BE MEASURED. THE TIME-OF-DAY AND ELAPSED TIME FUNCTIONS MAY BE USED SIMULTANEOUSLY WITHOUT RESTRICTIONS. WHEN THE TIME-OF-DAY IS READ OUT, THE UNITS ARE HOURS, MINUTES, AND SECONDS, EACH EXPRESSED AS A FLOATING POINT NUMBER. FOR TIME-OF-DAY USE, THE ROUTINE MUST BE INITIATED WITH THE CURRENT TIME. IN EITHER USE, THE ROUTINE CAUSES A PROGRAM INTERRUPT EVERY 10 MILLISECONDS; THE TIME-OF-DAY AND ELAPSED TIME COUNTS ARE THEN INCREMENTED IF NECESSARY. WHEN THE PROGRAM HALTS THE TIME-OF-DAY AND ELAPSED TIME COUNTS STOP. EQUIPMENT REQUIRED IS ONE HP 12539A TIME BASE GENERATOR INTERFACE KIT. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: TO UTILIZE THE "TBGDR" IT MUST BE CALLED TO EITHER SET THE TIME OF DAY OR SET THE INTERVAL TIMER. WHEN CALLED TO SET THE TIME OF DAY, THE DRIVER FIRST SETS ITS INTERNAL HOURS, MINUTES, AND SECONDS COUNTERS TO THE DESIRED VALUES. IT WILL THEN INITIALIZE THE TIME BASE GENERATOR AND RETURN TO THE CALLING PROGRAM. WHEN CALLED TO SET THE INTERVAL TIMER, THE DRIVER FIRST SETS UP A COUNTER, WHICH WILL BE INCREMENTED AT THE DESIRED INTERVAL. IT WILL THEN INITIALIZE THE TIME BASE GENERATOR AND RETURN TO THE CALLING PROGRAM. WHEN CALLED TO OBTAIN THE TIME OF DAY, THE DRIVER WILL GET THE VALUES, AT THE CURRENT TIME, OF THE HOURS, MINUTES AND SECONDS COUNTERS AND THEN RETURN THESE VALUES, IN THE FORM OF THREE INTEGER NUMBERS, TO THE CALLING PROGRAM. IT WILL THEN RETURN TO THE CALLING PROGRAM. WHEN CALLED TO OBTAIN THE ELAPSED TIME, THE DRIVER WILL GET THE CURRENT VALUE OF THE INTERVAL COUNTER AND RETURN THIS VALUE TO THE CALLING PROGRAM IN THE FORM OF AN INTEGER NUMBER. IT THEN RETURNS TO THE CALLING PROGRAM. ONCE THE TIME BASE GENERATOR HAS BEEN INITIALIZED, IT WILL INTERRUPT EVERY 10 MILLISECONDS. WHEN AN INTERRUPT OCCURS, THE INTERRUPT SERVICE ROUTINE IN THE DRIVER IS EXECUTED. THIS ROUTINE WILL INCREMENT, AND RESET WHEN NECESSARY, THE HOURS, MINUTES AND SECONDS COUNTERS. IT WILL ALSO INCREMENT THE INTERVAL COUNTER AT THE DESIRED INTERVAL. WHEN ALL THE CONTERS HAVE BEEN INCREMENTED, THE ROUTINE RESETS THE TBG AND RETURNS EXECUTION TO THE PROGRAM IN PROGRESS. IT IS IMPORTANT TO NOTE THAT BOTH THE TIME OF DAY ROUTINE AND INTERVAL TIMER ROUTINE MAY BE USED SIMULTANEOUSLY OR INDEPENDENTLY WITHOUT ANY RESTRICTIONS. USE USUAL ASSEMBLY, LOAD, AND RUN PROCEDURES. NO CONTROL STATEMENT ON SOURCE TAPE. THIS RELOCATABLE SUBROUTINE MAY BE CONFIGURED FOR THE I/O CHANNEL USED BY THE PERTINENT INTERFACE CARD BY ALTERING STATEMENT: #133 TBG EQU 11B ASSIGN I/O CHANNEL ADDRESS THE MEMORY LOCATION ASSOCIATED WITH THE CHANNEL SHOULD BE LEFT EMPTY AT BCS CONFIGURATION TIME. ENTRY POINT(S) TO SET THE TIME OF DAY: CALL SETUP (IHRS, IMINS, ISECS) TO OBTAIN THE TIME OF DAY: CALL DATIM (IHRS, IMINS, ISECS) TO SET THE INTERVAL TIMER: CALL STCLK (INTER) TO OBTAIN THE ELAPSED TIME SINCE THE INTERVAL TIMER WAS SET: CALL RDCLK (ITIME) PARAMETER TYPE DESCRIPTION --------- ---- ----------- IHRS INTEGER A VARIABLE REPRESENTING THE TIME IN HOURS (0-23). IMINS INTEGER A VARIABLE REPRESENTING THE TIME IN MINUTES (0-59). INTER INTEGER A POSITIVE INTEGER VARIABLE OR CONSTANT SPECIFYING THE DESIRED INTERVAL. (THE INTERVAL WILL BE EQUAL TO: INTER X 10 MS.) ISECS INTEGER A VARIABLE REPRESENTING THE TIME IN SECONDS (0-59). ITIME INTEGER A VARIABLE WHICH IS SET TO THE NUMBER OF ELAPSED INTERVALS UPON RETURN TO THE CALLING PROGRAM. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X17701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP 2331A X-Y DISPLAY SUBSYSTEM DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER PLOTTER GRAPHIC **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DRIVER SETS UP CRT DISPLAYS ON AN HP1300A LARGE SCREEN DISPLAY. THE X AND Y AXES ARE PLOTTED, IF DESIRED. EQUIPMENT REQURED INCLUDES AN HP2331A X-Y DISPLAY SUBSYSTEM, CONSISTING OF AN HP1300 X-Y LARGE SCREEN DISPLAY AND A DUAL D/A CONVERTER INTERFACE KIT. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: IN ORDER TO UTILIZE THE X-Y DISPLAY SUBSYSTEM DRIVER, IT MUST FIRST BE CALLED TO SET UP THE PLOT BUFFER, IN WHICH CASE, IT WILL PROCESS THE BUFFER ADDRESS AND LENGTH AND SAVE THEM FOR USE BY THE INTERRUPT SERVICE ROUTINE. THE DRIVER THEN RETURNS TO THE CALLING PROGRAM. ONCE THE PLOT BUFFER HAS BEEN SET UP, THE DRIVER MAY THEN BE CALLED TO ENTER POINTS TO BE DISPLAYED. IN THIS CASE, IT WILL PROCESS THE X AND Y VALUES, DETERMINING IF THEY ARE IN THE CORRECT RANGE AND MERGING THEM INTO A SINGLE WORD. IT WILL THEN STORE THIS WORD IN THE PLOT BUFFER AND RETURN TO THE CALLING PROGRAM. IN THE EVENT THAT EITHER THE X OR Y VALUE IS OUTSIDE THE PROPER RANGE, THE DRIVER RETURNS TO THE CALLING PROGRAM WITHOUT STORING THE POINT IN THE PLOT BUFFER. WHEN THE DRIVER IS CALLED TO DISPLAY A SET OF X-Y AXIS, IT WILL FIRST DETERMINE IF THE PLOT BUFFER HAS BEEN SET UP. IF IT HAS, IT WILL THEN PROCESS THE X AND Y POSITION VALUES, DETERMINING A SET OF CORRESPONDING CONSTANTS AND SAVING THEM FOR USE BY THE INTERRUPT SERVICE ROUTINE. IT WILL THEN RETURN TO THE CALLING PROGRAM. IF THE DRIVER IS CALLED TO DISPLAY THE AXIS BEFORE THE PLOT BUFFER IS SET UP, IT WILL IGNORE THE REQUEST AND RETURN IMMEDIATELY TO THE CALLING PROGRAM. THE DRIVER MAY ALSO BE CALLED TO CLEAR THE PLOT BUFFER, IN WHICH CASE, IT WILL FIRST DETERMINE IF THE PLOT BUFFER HAS BEEN SET UP. IF IT HAS, THE DRIVER THEN CLEARS IT BY SETTING EACH LOCATION TO A 0 AND IT WILL THEN RETURN TO THE CALLING PROGRAM. IF THE DRIVER IS CALLED TO CLEAR THE PLOT BUFFER BEFORE IT HAS BEEN SET UP, IT WILL IGNORE THE REQUEST AND RETURN IMMEDIATELY TO THE CALLING PROGRAM. THE KEY SEGMENT OF THIS DRIVER IS THE INTERRUPT SERVICE SUBROUTINE, WHICH IS EXECUTED EACH TIME THE D/A CONVERTER INTERRUPTS (ABOUT EVERY TWENTY MILLISECONDS). WHEN THIS INTERRUPT OCCURS, THIS SUBROUTINE WILL FIRST DISPLAY THE X AND Y AXIS, IF THIS OPTION IS REQUESTED. NEXT IT WILL DISPLAY THE CONTENTS OF THE PLOT BUFFER, INITIALIZE THE D/A CONVERTER AND RETURN TO THE PROGRAM IN PROGRESS. USE USUAL ASSEMBLY, LOAD AND RUN PROCEDURES. THIS RELOCATABLE SUBROUTINE MAY BE CONFIGURED FOR THE I/O CHANNEL USED BY THE PERTINENT INTERFACE CARD BY ALTERING STATEMENT: #198 DACON EQU 23B ASSIGN I/O ADDRESS THE MEMORY LOCATION ASSOCIATED WITH THIS CHANNEL SHOULD BE LEFT EMPTY AT BCS CONFIGURATION TIME. TO DISPLAY THE CONTENTS OF THE PLOT BUFFER USING DIRECT MEMORY ACCESS, THE N OPTION MUST BE INCLUDED IN THE CONTROL STATEMENT DURING ASSEMBLY OF THIS PROGRAM. TO SET UP THE PLOT BUFFER: CALL PLOTB(IARRY,NUMBR) TO TURN OFF THE X-Y DISPLAY: CALL PLOTB(IARRY,0) TO STORE A POINT IN THE PLOT BUFFER: CALL DISPT(IXVAL,IYVAL) TO DISPLAY A SET OF X AND Y AXIS: CALL GRPAH(IXAXS,IYAXS) TO TERMINATE DISPLAY OF THE AXIS: CALL GRAPH(-1,0) TO CLEAR THE PLOT BUFFER: CALL ERASE PARAMETER TYPE DESCRIPTION --------- ---- ----------- IARRY INTEGER NAME OF ARRAY USED TO STORE THE POINTS TO BE DISPLAYED. IXAXS INTEGER VARIABLE OR CONSTANT SPECIFYING THE POSITION OF THE X-AXIS, AS SHOWN BELOW: NO. POSITION 0 BOTTOM 1 CENTER 2 TOP IXVAL INTEGER VARIABLE OR CONSTANT IN THE RANGE OF 0 TO 255 REPRESENTING THE X-COORDINATE VALUE. IYAXS INTEGER VARIABLE OR CONSTANT SPECIFYING THE POSITION OF THE Y-AXIS, AS SHOWN BELOW: NO. POSITION 0 LEFT 1 CENTER 2 RIGHT IYVAL INTEGER VARIABLE OR CONSTANT IN THE RANGE 0 TO 255, REPRESENTING THE Y-COORDINATE VALUE. NUMBR INTEGER VARIABLE OR CONSTANT WHICH SPECIFIES THE NUMBER OF POINTS TO BE DISPLAYED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X17801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP2911A/B CROSSBAR SCANNER DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER SCANNER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: HP BASIC **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ROUTINE CONTROLS AN HP2911 GUARDED CROSSBAR SCANNER. THE SCANNER SAMPLES THE DATA CHANNEL DESIGNATED, AND FORWARDS THE SAMPLE TO A METER OR EXTERNAL RECORDING DEVICE. CONTROL WORDS FROM THE CALLING PROGRAM SPECIFY THE DATA CHANNEL, DELAY, AND TYPE OF MEASUREMENT (DC VOLTS, AC VOLTS, RESISTANCE, OR FREQUENCY). THE ROUTINE OPERATES UNDER THE 20392A BASIC OPERATING SYSTEM. EQUIPMENT REQUIRED IS ONE HP2911 GUARDED CROSSBAR SCANNER, WITH PROGRAMMING INTERFACE KIT. THIS ROUTINE IS BASIC CALLABLE AND SHOULD BE USED ONLY IN CONJUNCTION WITH THE HP20392A BASIC INTERPRETER. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: TO CONFIGURE THIS PROGRAM FOR USE WITH DIFFERENT I/O CHANNELS, FOLLOW THE PROCEDURE BELOW - LOAD THE BASIC INTERPRETER, USING THE BBL. B. LOAD THE HP2911A/B CROSSBAR SCANNER DRIVER, USING THE BBL. C. LOAD ADDRESS TO 77B. D. LOAD THE A-REGISTER WITH THE SELECT CODE OF THE SCANNER PROGRAMMING INTERFACE CARD. E. PRESS PRESET. F. PRESS RUN. THE COMPUTER WILL NOW HALT WITH A 102077 IN THE T-REGISTER AND THE DRIVER IS READY FOR USE. TO CONFIGURE THE HP2911A/B CROSSBAR SCANNER DRIVER FOR A PARTICULAR I/O CHANNEL MODIFY STATEMENT #0149 (XBAR EQU 15B ASSIGN I/O CHANNEL NUMBER). **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: WHEN CALLED, THE DRIVER WILL FIRST PROCESS THE CHANNEL NUMBER, CONVERTING IT FROM FLOATING POINT TO BCD. IT WILL THEN PROGRAM THE SCANNER FOR THE DESIRED CHANNEL NUMBER, FUNCTION AND DELAY AND RETURN TO THE CALLING PROGRAM. IN THE EVENT THAT A CALLING PARAMETER IS INCORRECTLY SPECIFIED, THE DRIVER RETURNS TO THE CALLING PROGRAM WITH THE APROPRIATE ERROR INDICATION. THE DRIVER IS CALLED FROM BASIC AS: CALL (1, C, P, S) WHERE C - A VARIABLE OR CONSTANT SPECIFYING THE DESIRED CHANNEL NUMBER. P - A TWO-DIGIT VARIABLE OR CONSTANT SPECIFYING THE DESIRED DELAY AND FUNCTION, AS SHOWN BELOW - ONES DIGIT - DELAY (MS) ----------------------- (150V) (150V) 0 15 22 1 17.5 27 2 22 22 3 27 97 4 42 145 5 62 500 6 145 145 7 500 500 TEN DIGIT - FUNCTION -------------------- 0 AC OR DC VOLTS 1 FREQUENCY 2 OHMS S - A VARIABLE INDICATING THE STATUS, AS SHOWN BELOW, UPON RETURN TO THE CALLING PROGRAM. STATUS ------ -1 COMMAND ERROR 0 NORMAL RESPONSE **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THIS PROGRAM SHOULD BE USED ONLY IN CONJUNCTION WITH THE HP20392A BASIC INTERPRETER. USE WITH ANY OTHER VERSION OF THE BASIC INTERPRETER WILL RESULT IN UNSUCCESSFUL PROGRAM EXECUTION. TO OVERLAY THE MATRIX OPERATIONS OF THE INTERPRETER WITH THIS PROGRAM, THE N OPTION MUST BE INCLUDED IN THE CONTROL STATEMENT DURING ASSEMBLY. X17901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP12551B RELAY REGISTER INTERFACE DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: USED WITH THE HP12551A OR 12551B RELAY OUTPUT REGISTER, THIS ROUTINE OPENS OR CLOSES ANY SPECIFIED RELAY CONTACT. IN ADDITION, ALL RELAY CONTACTS CAN BE OPENED SIMULTANEOUSLY. AFTER CONTACT OPENING OR CLOSURE, THE ROUTINE REMAINS IN A WAITING LOOP FOR APPROXIMATELY 300 MILLISECONDS TO ALLOW TIME FOR RELAY CONTACTS TO SETTLE. EQUIPMENT REQUIRED IS ONE HP12551A OR 125518 RELAY OUTPUT REGISTER, WITH INTERFACE KIT. THIS ROUTINE IS FORTRAN CALLABLE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE DRIVER MAY BE CALLED TO OPEN OR CLOSE A DESIRED RELAY CONTACT OR OPEN ALL OF THE CONTACTS SIMULTANEOUSLY. WHEN CALLED TO OPEN OR CLOSE A SINGLE CONTACT, IT WILL PROCESS THE CONTACT NUMBER, DETERMINING IF IT IS IN THE RANGE OF 0 TO 15 AND THEN FORMING A WORD WITH A SINGLE BIT SET IN THE CORRESPONDING POSITION. WHEN CLOSING A CONTACT, THIS BIT IS MERGED WITH THE PREVIOUS PATTERN AND WHEN OPENING A CONTACT, THIS BIT IS COMPLEMENTED AND USED TO MASK THE PREVIOUS CONTACT PATTERN. THE NEW PATTERN IS THEN OUTPUT TO THE RELAY REGISTER, WHICH OPENS OR CLOSES THE DESIRED CONTACT, AND THE DRIVER WILL THEN WAIT IN A PROGRAM LOOP FOR APPROXIMATELY 300 MILLISECONDS TO ALLOW THE CONTACTS TO SETTLE. IT THEN RETURNS TO THE CALLING PROGRAM. WHEN CALLED TO OPEN ALL RELAY CONTACTS SIMULTANEOUSLY, THE DRIVER WILL OUTPUT A PATTERN OF 0'S TO THE RELAY REGISTER AND IT WILL THEN WAIT IN A PROGRAM LOOP FOR APPROXIMATELY 300 MILLISECONDS TO ALLOW THE CONTACTS TO SETTLE. IT THEN RETURNS TO THE CALLING PROGRAM. CLOSE A DESIRED RELAY CONTACT, THE DRIVER IS CALLED FROM FORTRAN AS: CALL CLRLY (ICONT) OPEN A DESIRED RELAY CONTACT, THE DRIVER IS CALLED FROM FORTRAN AS: CALL OPRLY (ICONT) WHERE ICONT - AN INTEGER VARIABLE OR CONSTANT IN THE RANGE OF 0 TO 15, WHICH SPECIFIES THE DESIRED CONTACT. OPEN ALL RELAY CONTACTS SIMULTANEOUSLY, THE DRIVER IS CALLED FROM FORTRAN AS: CALL ALLOP THIS PROGRAM IS INTENDED FOR USE ALSO WITH THE HP12551A RELAY REGISTER INTERFACE KIT. TO CONFIGURE THE HP12551B RELAY REGISTER INTERFACE DRIVER FOR A PARTI- CULAR I/O CHANNEL MODIFY STATEMENT #0105 (RELAY EQU 25B ASSIGN I/O ADDRESS). **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X18001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS - DOS-M HP2331 XY SCOPE DISPLAY **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER SCOPE GRAPHIC **LANGUAGES: ASMB FTN2 **COMPUTER TYPE: **OPERATING SYSTEMS: DOS DOS-M **MEMORY REQUIREMENTS: 16K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: POINT, CHARACTER AND GRAPH DISPLAY ARE AVAILABLE IN CONNECTION WITH HP2331 X-Y SCOPE SUBSYSTEM. THE SOFTWARE GENERATES POINT COORDINATES (8 BIT FOR X, 8 BIT FOR Y) INTO A USER DEFINED BUFFER AND PROVIDES FOR IMAGE REFRESH OUT OF THE BUFFER EVERY 20 MSEC. CALLS ARE COMPATIBLE WITH BCS HP2331 SOFTWARE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: DIFFERENCES TO BCS SCOPE SOFTWARE: 1. WILL OPERATE IN 16K MINIMUM DOS OR DOS-M ENVIRONMENT, BUT REQUIRES THE SECOND DMA CHANNEL CONSTANTLY DURING DION. IN DOS-M DVR13 WILL (CONTROLLED BY THE CALLING ROUTINE SCOPE) AUTOMATICALLY SELECT DMA CHANNEL 7 SO AS NOT TO DISTURB DVR31 WHICH CAN ONLY OPERATE ON CHANNEL 6. 2. CALL SCOPE (WITH DOS LOGICAL UNIT) ONLY DIFFERENCE 3. FOR BETTER OPERATION: - TRY TO KEEP SYSTEM QUIET, I.E., DO NOT CONSTANTLY CALL EXEC IN LOOP, USE WAIT ROUTINE FOR WAITING! - USE DIOFF AND DION EXTENSIVELY ATTENTION : SYSTEM ASSUMES THE FOLLOWING CODING IN DISC-MONITOR X18101 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: BCS POWER FAIL TTY DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS BCS TELEPRINTER DRIVER INCORPORATES A POWER FAIL ROUTINE FOR ANY HP21XX COMPUTER WITH POWER FAIL. IT SAVES AND RESTORES ALL THE REGISTERS INCLUDING THE SWITCH REGISTER. IF THE AUTOSTART OPTION IS AVAILABLE, THIS DRIVER WILL RESTART THE PROGRAM AT THE INTERRUPTED POINT AND RESTORE THE TELEPRINTER TO ITS PREVIOUS STATUS. IF THE FULL CAPABILITY OF THIS ROUTINE IS USED TO DRIVE A COMPLETE PAPER TAPE SYSTEM INCLUDING PHOTOREADER AND HIGH-SPEED PUNCH, THEN THIS DRIVER ALONE WILL REVIVE THE COMPLETE PAPER TAPE SYSTEM AFTER AUTO-RESTART. EQUIPMENT REQUIRED IS ANY 4K HP COMPUTER WITH POWER FAIL, AN HP2752A OR 2754 TELEPRINTER, AND OPTIONALLY, AUTO-RESTART. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: USUAL ASSEMBLY PROCEDURES. PREPARE A STANDARD BCS WITH AN EXTRA ENTRY AT CONFIGURATION TIME - 4, 102004 FOR NON-AUTORESTART 4, XY, P.00 FOR AUTORESTART WHERE XY IS THE LINK LOCATION LOAD DRIVER AT PCS TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS MODULE OF THE HP2116 BASIC CONTROL SYSTEM SOFTWARE IS DESIGNED TO OPERATE THE ASR 33/35 TELE-TYPEWRITER. THE FUNCTION OF THIS DRIVER IS TO INITIATE, CONTINUE AND COMPLETE A READ/WRITE OPERATION REQUESTED THROUGH INPUT/OUTPUT CONTROL. THE DRIVER ACCEPTS AND PROCESSES A READ OR WRITE REQUEST IN EITHER ASCII OR BINARY MODES. KEYBOARD MODE MAY BE SELECTED FOR A SINGLE READ OPERATION. THE SPECIAL P-FORMAT FOR BINARY INPUT MAY ALSO BE SELECTED FOR A SINGLE READ OPERATION. THE DRIVER WILL REJECT A -FUNCTION SELECT- REQUEST AS NONE OF THE DEFINED FUNCTIONS IS APPLICABLE FOR THE ASR DEVICE. THE DRIVER PROVIDES FOR A SIMULATED END-OF-TAPE CONDITION WHICH IS DETERMINED BY A FIXED NUMBER OF CONSECUTIVE FEED-FRAMES BEFORE THE FIRST DATA CHARACTER OF A RECORD IS READ. THE NUMBER OF FEED-FRAMES IS REPRESENTED BY A NEGATIVE CONSTANT AT THE LABEL - FFCT - IN THE DRIVER. THE CONSTANT IS SET FOR 10 BUT MAY BE CHANGED TO ANY DESIRED VALUE BY RE-ASSEMBLING THE DRIVER. REFER TO A BCS MANUAL FOR A DESCRIPTION OF THE REQUEST CALLS TO IOC AND THE RECORD FORMATS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X18201 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: HP12551B RELAY REGISTER INTERFACE DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: HP BASIC **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THE ABSOLUTE MODIFICATION TO THE HP20392A BASIC SYSTEM OPENS OR CLOSES RELAY CONTACTS ON THE HP12551B RELAY REGISTER. IT CHECKS THE RANGE AND PROCESSES THE CONTACT NUMBER. THE DRIVER WAITS IN A LOOP TO ALLOW THE CONTACTS TO SETTLE BEFORE RETURNING TO THE CALLING PROGRAM. THE HP2752A TELEPRINTER, AND HP12551B RELAY REGISTER INTERFACE ARE NECESSARY HARDWARE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: USUAL ASSEMBLY PROCEDURES 1. THIS PROGRAM SHOULD BE USED ONLY IN CONJUNCTION WITH THE HP20392A BASIC COMPILER. USE WITH ANY OTHER VERSION OF THE BASIC COMPILER WILL RESULT IN UNSUCCESSFUL PROGRAM EXECUTION. 2. TO OVERLAY THE MATRIX OPERATIONS OF THE COMPILER WITH THIS PROGRAM, THE N OPTION MUST BE INCLUDED IN THE CONTROL STATEMENT DURING ASSEMBLY. 3. THIS PROGRAM IS ALSO INTENDED FOR USE WITH THE HP-12551A RELAY REGISTER INTERFACE KIT. 4. TO CONFIGURE THIS PROGRAM FOR USE WITH DIFFERENT I/O CHANNELS, FOLLOW THE PROCEDURE BELOW. A. LOAD THE BASIC COMPILER, USING THE BBL. B. LOAD THE HP12551B RELAY REGISTER INTERFACE DRIVER, USING THE BBL C. LOAD ADDRESS TO 77B. D. LOAD THE SWITCH REGISTER WITH THE SELECT CODE OF THE RELAY REGISTER INTERFACE CARD. E. PRESS PRESET. F. PRESS RUN. THE COMPUTER WILL NOW HALT WITH A 102077 IN THE T-REGISTER AND THE DRIVER IS READY FOR USE. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE DRIVER MAY BE CALLED TO OPEN OR CLOSE A DESIRED RELAY CONTACT OR OPEN ALL OF THE CONTACTS SIMULTANEOUSLY. WHEN CALLED TO OPEN OR CLOSE A SINGLE CONTACT, IT WILL PROCESS THE CONTACT NUMBER, DETERMINING IF IT IS IN THE RANGE OF 0 TO 15 AND THEN FORMING A WORD WITH A SINGLE BIT SET IN THE CORRESPONDING POSITION. WHEN CLOSING A CONTACT, THIS BIT IS MERGED WITH THE PREVIOUS PATTERN AND WHEN OPENING A CONTACT, THIS BIT IS COMPLEMENTED AND USED TO MASK THE PREVIOUS CONTACT PATTERN. THE NEW PATTERN IS THEN OUTPUT TO THE RELAY REGISTER, WHICH OPENS OR CLOSES THE DESIRED CONTACT, AND THE DRIVER WILL THEN WAIT IN A PROGRAM LOOP FOR APPROXIMATELY 300 MILLISECONDS TO ALLOW THE CONTACTS TO SETTLE. IT THEN RETURNS TO THE CALLING PROGRAM. WHEN CALLED TO OPEN ALL RELAY CONTACTS SIMULTANEOUSLY, THE DRIVER WILL OUTPUT A PATTERN OF 0'S TO THE RELAY REGISTER AND IT WILL THEN WAIT IN A PROGRAM LOOP FOR APPROXIMATELY 300 MILLISECONDS TO ALLOW THE CONTACTS TO SETTLE. IT THEN RETURNS TO THE CALLING PROGRAM. TO CLOSE A DESIRED RELAY CONTACT, THE DRIVER IS CALLED FROM BASIC AS: CALL (1, N) TO OPEN A DESIRED RELAY CONTACT, THE DRIVER IS CALLED FROM BASIC AS: CALL (2, N) WHERE N - A VARIABLE OR CONSTANT, IN THE RANGE 0 TO 15, WHICH SPECIFIES THE DESIRED CONTACT. TO OPEN ALL RELAY CONTACTS SIMULTANEOUSLY, THE DRIVER IS CALLED FROM BASIC AS: CALL (3) **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X18301 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: BASIC CALLABLE LINE PRINTER DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER PRINTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: HP BASIC **MEMORY REQUIREMENTS: 8K **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THIS ROUTINE PROVIDES THE HP BASIC SYSTEM 20392A WITH A LINE PRINTER CAPABILITY FOR THE HP2778A. A SPECIAL TECHNIQUE OF LINE PRINTER BUFFERING ALLOWS THE HP2778A TO OPERATE AT MAXIMUM SPEED AND UTILIZE THE FULL LINE PRINTER CARRIAGE WIDTH. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: 1. EDIT FOR YOUR SYSTEM. (NECESSARY EDITS ARE EQU STATEMENTS AT BEGINNING OF TAPE.) 2. ASSEMBLE. (USE N OPTION TO OVERLAY MATRIX FUNCTIONS). 3. PREPARE NEW CONFIGURED BASIC IN ACCORDANCE WITH MANUAL OR LOAD PRECONFIGURED BASIC, AND OVERLAY THE ABSOLUTE FOR THIS ROUTINE USING THE BASIC BINARY LOADER. 4. PTAPE THE ENCLOSED ROUTINE AND EXECUTE, OR WRITE YOUR OWN PROGRAM TO VERIFY OPERATION. REFER TO PROGRAM LISTING FOR VARIOUS OPTIONS. #27 LPP EQU 60 PRINTER LINES PER PAGE #70 LP EQU 20B DEFINE LINE PRINTER I/O SLOT #99 COLUM EQU 132B COLUMNS PER LINE THE TECHNIQUE OF LINE PRINTER BUFFERING HAS TWO EFFECTS: 1. THE LINE PRINTER DOES NOT SLOW DOWN TO THE "1/2 SPEED" TYPICAL OF THE BCS DRIVER'S TTY MODE. 2. THE FULL LINE PRINTER CARRIAGE WIDTH CAN BE UTILIZED USING THE FOLLOWING PROGRAMMING TECHNIQUE. A. USE THE ODD/EVEN MODE (SWR = 0) B. OUTPUT LESS THAN 72 CHARACTERS USING ODD LINE NUMBERED PRINT STATEMENTS ENDING WITH SEMICOLONS. C. EXECUTE A SIMPLE "PRINT" STATEMENT ON AN EVEN LINE. THIS WILL RESET BASIC'S INTERNAL COUNTER. D. OUTPUT ADDITIONAL (<72) CHARACTERS USING ODD LINE NUMBERS. THE FINAL PRINT STATEMENT MUST NOT END WITH A SEMICOLON. FEED ROLLER PRESSURE CAN BE RELEASED ON A TELETYPE TO AVOID PAPER WASTE. IN ORDER TO USE THIS DRIVER, MAKE THE NECESSARY EDITS FOR CONFORMANCE WITH YOUR SYSTEM. THEN PREPARE A CONFIGURED BASIC SYSTEM IN ACCORDANCE WITH THE INSTRUCTIONS IN THE BASIC MANUAL. IF DESIRED, AND YOUR CURRENT CONFIGURED BASIC CONTAINS NO CONFLICTING SUBROUTINES, THE ABSOLUTE TAPE MAY BE LOADED IMMEDIATELY AFTER THE BASIC SYSTEM, USING THE BBL. ENTRY POINT: LNPR - SETS UP THE DRIVER TO PROCESS ALL I/O REQUESTS FROM THE SYSTEM. IF NECESSARY, OUTPUTS A FORM FEED REQUEST TO THE LINE PRINTER. INVOKED BY STATEMENT CALL(1), OR BY VALUE SPECIFIED BY X IN PROGRAM LISTING. CHANGES ENTRY POINT TO BEGINNING OF PROCESSING ROUTINE. CALL(X) - SETS UP THE DRIVER SO THAT FUTURE PRINT REQUESTS WILL BE PROCESSED THROUGH THIS ROUTINE. THE LINE PRINTER IS ASSUMED TO BE AT TOP OF FORM (TOF) AT THIS TIME. ANY SUBSEQUENT CALL(X) WILL RESULT IN A TOF INSTRUCTION TO THE LINE PRINTER, UNLESS THE LINE COUNT INDICATES PAGE IS ALREADY AT TOF BASED ON LPP LINES PER PAGE. 00074 LPP EQU 60 PRINTER LINES PER PAGE 00001 X EQU 1 SUBROUTINE CALL NUMBER AFTER EXECUTION OF THE CALL(X) STATEMENT, ALL PRINT REQUESTS FROM THE BASIC SYSTEM WILL BE DIRECTED TO OUTPUT EQUIPMENT IN THE FOLLOWING MANNER: 15 - SWITCH REGISTER - 0 OUTPUT ------------------------ ------ X 1XX XXX XXX XXX XXX ALL OUTPUTS GO TO THE LINE PRINTER. (INCLUDES SYSTEM COMMANDS AND LIST OUTPUT). 1 0XX XXX XXX XXX XXX ALL OUTPUTS GO TO THE TERMINAL. (NORMAL BASIC OPERATION). 0 0XX XXX XXX XXX XX0 ALL SYSTEM MESSAGES GO TO THE TERMINAL. ALL EXECUTING PROGRAM OUTPUTS GO TO THE LINE PRINTER. 0 0XX XXX XXX XXX XX1 SELECTIVE OUTPUT. ODD NUMBERED PROGRAM PRINT STATEMENTS GO TO THE LINE PRINTER. EVEN NUMBERED PRINT STATEMENTS GO TO THE TERMINAL. SYSTEM MESSAGES GO TO THE TERMINAL. THE FORMAT OF THE OUTPUT WILL BE EXACTLY THE SAME WHETHER DIRECTED TO THE LINE PRINTER OR THE TELETYPE (EXCEPT AS AFFECTED BY FORM CONTROLS INHERENT IN THE EQUIPMENTS). WHEN AN INCOMPLETE LINE (A PRINT STATEMENT ENDING WITH A SEMICOLON) IS OUTPUTTED TO THE LINE PRINTER, IT WILL BE BUFFERED IN THE PRINTER. SUBSEQUENT OUTPUT DIRECTED TO THE LINE PRINTER WILL BE ADDED TO THE LINE PRINTER BUFFER. THE BUFFER WILL NOT BE PRINTED UNTIL A NORMAL (NO ENDING SEMICOLON) PRINT STATEMENT IS OUTPUTTED TO THE LINE PRINTER, WHEN BASIC'S INTERNAL COUNTER REACHES 72 CHARACTERS DURING AN OUTPUT TO THE LINE PRINTER, WHEN THE CHARACTER COUNT EXCEEDS "COLUM" SIZE OF THE PRINT DRUM, WHEN PROGRAM EXECUTION CEASES AND THE SYSTEM RETURNS TO THE COMMAND MODE, OR WHEN A PROGRAM INPUT STATEMENT IS EXECUTED. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: IF THE LINE PRINTER IS NOT READY WHEN THE CALL IS MADE, THE TTY WILL PRINT *EQR, AND THE COMPUTER WILL HALT WITH 102070 IN THE MEMORY REGISTER. **MISCELLANEOUS: SEE THE PROGRAM LISTING FOR SPECIAL SWITCH OPTIONS, AND OTHER CONSIDERATIONS. X18401 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: CORE SIZE INDEPENDENT PHOTO READER STO DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER PAPER TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: **MEMORY REQUIREMENTS: 4K **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS ONE HP2752/54 TELETYPEWRITER SIO DRIVER CAN REPLACE ALL THE DIFFERENT CORE SIZE VERSIONS OF SUCH SIO DRIVERS. IT HAS THE ABILITY TO AUTOMATICALLY DETERMINE THE MEMORY SIZE OF ANY HP2100 SERIES COMPUTER DURING THE NORMAL SIO CONFIGURATION PROCESS. THIS IS ACHIEVED BY A SELF-CONTAINED MODIFICATION TO THE CONFIGURATION SECTION OF THE STANDARD SIO DRIVER. THE ENTIRE PROCESS IS TRANSPARENT TO THE USER AND ACTS AS IF HE HAD LOADED AND CONFIGURED THE SPECIFIC DRIVER FOR HIS MEMORY SIZE. USEFUL FOR HP 2737/48/58 PHOTO READERS. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: 1. DRIVER TAPE IS LOADED USING BASIC BINARY LOADER 2. LOAD ADDRESS 2 3. PUT SELECT CODE OF PHOTO READER IN BITS 0-5 OF SWITCH REGISTER 4. PUSH PRESET, THEN RUN 5. HALT 77B INDICATES SUCCESSFUL COMPLETION OF CONFIGURATION I.E., INCORPORATION OF DEVICE S.C. INTO ALL I/O INSTRUCTIONS AND MOVE OF SIO TO COMPUTED AREA 6. FOR USE OF SIO IN NON-STANDARD (HP SUPPORTED ARE THOSE PROGRAMS WHICH ARE DISTRIBUTED AND MAINTAINED BY HEWLETT PACKARD AND THUS REFERRED TO AS STANDARD) PROGRAMS REFER TO THE ASSEMBLER REFERENCE MANUAL APPENDIX E FOR COMPLETE DESCRIPTION OF CALLING SEQUENCES NOTE: THIS DRIVER MUST BE LOADED AFTER THE TTY AND LINE PRINTER DRIVERS, IF PRESENT, AND BEFORE THE PUNCH SIO DRIVERS. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THIS PROGRAM REPLACES ALL THE DIFFERENT CORE SIZE VERSIONS OF PHOTO READER (PR) SIO DRIVERS DUE TO ITS UNIQUE ABILITY TO AUTOMATICALLY ASCERTAIN THE MEMORY SIZE OF ANY HP 2100 SERIES COMPUTER DURING THE NORMAL SIO CONFIGURATION PROCESS. THIS IS ACHIEVED BY A SELF-CONTAINED MODIFICATION TO THE CONFIGURATION SECTION OF THE STANDARD HP SIO DRIVER. WHEN THIS DRIVER IS LOADED VIA THE BINARY LOADER INTO ANY SIZE COMPUTER, IT INITIALLY RESIDES IN THE LOWEST 4K MODULE OF MEMORY, IN THE APPROPRIATE SIO AREA. THEN, AS THE USER STARTS THE NORMAL CONFIGURATION PROCEDURE (LOAD ADDRESS 2 PUT SELECT CODE OF PR IN SWITCH REGISTER, THEN PRESS PRESET THEN RUN), THE CONFIGURATOR ROUTINE FIRST MERGES THE SELECT CODE OF THE DEVICE INTO ALL I/O INSTRUCTIONS. THEN THIS ROUTINE ASCERTAINS THE MEMORY SIZE OF THE COMPUTER BY A SEARCH PROCEDURE THAT CHECKS FOR MEMORY WRAP AROUND (2116,2115,2114) OR NON-EXISTENT MEMORY (2100A) DEPENDING UPON THE PARTICULAR COMPUTER. THE CONFIGURATOR THEN AUTOMATICALLY RELOCATES THE DRIVER TO THE APPRO- PRIATE SIO AREA AND MODIFIES THE LINKAGE LOCATIONS AS REQUIRED. THE CONFIGURATOR THEN RELEASES ITSELF AND MAY BE OVERLAID BY SUBSEQUENT PROGRAMS OR DRIVERS. THIS PROCESS IS TRANSPARENT TO THE USER AND ACTS AS IF HE HAD LOADED AND CONFIGURED THE SPECIFIC DRIVER FOR HIS SIZE MEMORY. THIS DRIVER PROVIDES THE INPUT FACILITY REQUIRED BY THE ASSEMBLER, SYMBOLIC EDITOR, AND FORTRAN COMPILER. THE LINKAGE ADDRESS FOR THIS FACILITY IS AT LOCATION 101B IN THE SYSTEM LINKAGE TABLE. THE FOLLOWING GIVES RECORD FORMATS RECOGNIZED BY THE PAPER TAPE READER: ASCII * A GROUP OF CHARACTERS TERMINATED BY A RETURN/LINE FEED. THESE CODES INPUT BEFORE THE FIRST DATA CHARACTER OF A RECORD ARE IGNORED, A RUB-OUT CODE CAUSES THE CURRENT RECORD TO BE DELETED AND THE NEXT RECORD INPUT. A LINE- FEED MUST TERMINATE THE CURRENT RECORD. BINARY* THE FIRST CHARACTER OF A BINARY RECORD CONTAINS THE WORD COUNT OF THE ENTIRE RECORD. THIS VALUE DETERMINES THE NUMBER OF WORDS (UP TO THE BUFFER LENGTH REQUESTED) TO BE TRANSMITTED ENTRY POINT: PT.R = STD. PAPER TAPE INPUT = 101B THE SIO CALLING SEQUENCE IS: P = JSB 101B,I P+1 = RETURN UPON ENTRY TO THE DRIVER A POSITIVE VALUE IN THE A REGISTER SPECIFIES THE NUMBER OF ASCII CHARACTERS TO BE INPUT. A NEGATIVE VALUE IN THE A REGISTER SPECIFIES THE NUMBER OF BINARY WORDS TO BE TRANSFERRED (A = 2'S COMPLEMENT OF BINARY WORDS TO BE TRANSFERRED) THE B REGISTER UPON ENTRY CONTAINS THE BUFFER ADDRESS. THE A REGISTER, UPON RETURN FROM THE READER SIO CONTAINS THE NUMBER OF WORDS OR CHARACTERS TRANSFERRED. NOTE: IF A = 0 UPON RETURN AN END-OF-TAPE CONDITION WAS SENSED. (10 BLANK FRAMES WERE READ) SEE HP ASSEMBLER REFERENCE MANUAL APPENDIX E FOR COMPLETE SIO DESRIPTION. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: AS THIS DRIVER IS LOADED INTO THE LOWER 4K OF ANY COMPUTER, THE DRIVER MUST BE LOADED BEFORE ANY SOFTWARE PACKAGE THAT REQUIRES THIS AREA TO OPERATE. FURTHER THIS MODULE MUST BE LOADED AFTER THE TTY AND LINE PRINTER AND BEFORE THE PAPER TAPE PUNCH IN THE EVENT THAT THESE DEVICES ARE TO BE USED. NOTE: IF AN ERROR IS MADE DURING CONFIGURATION THEN THE TAPE MUST BE RELOADED USING THE BINARY LOADER, AND RE-CONFIGURED. X18501 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-M CENTRONICS 101-A LINE PRINTER DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER PRINTER **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DOS-M DRIVER CONTROLS OUTPUT OPERATIONS FOR A CENTRONICS 101A LINE PRINTER WITH A SERIAL OR PARALLEL INTERFACE AND WITHOUT THE AUTOMATIC LINE FEED OPTION. IT IS DESIGNED TO UTILIZE THE SPECIAL FUNCTIONS OF THIS LINE PRINTER SUCH AS VERTICAL TAB, FORM FEED, ELONGATED CHARACTERS AND OVERPRINTING. ONLY ASCII CHARACTERS CAN BE OUTPUT. THE DRIVER WILL NOT SUPPORT A TELETYPE OR THE SYSTEM CONSOLE. DVR00 MUST BE INCLUDED AT THE TIME OF SYSTEM GENERATION. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: USUAL ASSEMBLY PROCEDURES INCLUDE DVR00 AT TIME OF SYSTEM GENERATION. OUTPUT CONSISTS OF A STRING OF ASCII CHARACTERS TERMINATED BY A LINE-FEED AND CARRIAGE RETURN. THE NUMBER OF CHARACTERS OUTPUT IS DESIGNATED BY THE BUFFER LENGTH IN THE REQUEST. A ZERO BUFFER LENGTH CAUSES ONLY A LINE-FEED AND CARRIAGE RETURN. WHEN USED AS THE FIRST CHARACTER IN A BUFFER: "!" INDICATES VERTICAL TAB "/" INDICATES FORM FEED, AND "*" INDICATES ELONGATED CHARACTERS WHEN USED AS THE LAST CHARACTER IN A BUFFER: "_" (LEFT ARROW OR UNDERLINE)INDICATES NO LINE FEED OR RETURN, AND "^" (UP ARROW OR CARET)INDICATES OVERPRINT (RETURN, NO LINE FEED). I.00 IS THE ENTRY POINT FOR THE INITIATION SECTION. C.00 IS THE ENTRY POINT FOR THE COMPLETION SECTION. THE INITIATION SECTION IS CALLED FROM IO CONTROL TO INITIATE A DEVICE AND INITIALIZE A DATA TRANSFER. CALLING SEQUENCE: - ADDRESSES OF DEVICE EQT ENTRY SET IN "EQT1-EQT17" (A) = I/O ADDRESS OF DEVICE (P) JSB I.00 (P+1) -RETURN- (A) = O, OPERATION INITIATED, OR (A) = REJECT CODE: 1) DEVICE DOWN OR READ REQUESTED 2) DEVICE IN USE 3) OR GREATER, ILLEGAL REQUEST THE COMPLETION SECTION IS CALLED BY CENTRAL INTERRUPT CONTROL TO CONTINUE OR COMPLETE AN OPERATION. CALLING SEQUENCE: - ADDRESSES OF DEVICE EQT ENTRY SET IN "EQT1-EQT17" (A) = I/O ADDRESS OF DEVICE (P) JSB C.00 (P+1) -COMPLETION RETURN- (P+2) -CONTINUATION RETURN- -COMPLETION RETURN: A = 0, SUCCESSFUL COMPLETION WITH - B = # WORDS OR CHARACTERS TRANSFERRED. -CONTINUATION RETURN: REGISTERS MEANINGLESS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE CENTRONICS 101-A LINE PRINTER SHOULD BE ORDERED WITHOUT THE AUTOMATIC LINE FEED OPTION. THIS DVR00 DOES NOT SUPPORT A TELETYPE OR THE SYSTEM CONSOLE. X18601 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-M SYSTEM TELEPRINTER WITH PAPER TAPE I/O **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER PRINTER PAPER TAPE **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DRIVER, A MODIFIED VERSION OF THE STANDARD DOS-M TELETYPE DRIVER, ALLOWS THE SYSTEM CONSOLE TELETYPE TO BE USED FOR PAPER TAPE I/O. SET BIT 15 OF THE SWITCH REGISTER DISPLAY BEFORE EXECUTING A DIRECTIVE SUCH AS (:STORE,R,PROG,1) AND NO OPERATOR ATTENTION WILL BE GENERATED BY THE TAPE READER. BOTH BINARY AND ASCII RECORDS CAN BE INPUT AND OUTPUT ON THE TELETYPE. DVR00 MUST BE INCLUDED AT THE TIME OF SYSTEM GENERATION. THIS DRIVER REQUIRES ONLY A MINIMUM DOS-M. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: USUAL ASSEMBLY PROCEDURES. INCLUDE DVR00 AT TIME OF SYSTEM GENERATION. SET BIT 15 IN THE SWITCH REGISTER DISPLAY BEFORE ENTERING A DOS-M DIRECTIVE TO USE THE CONSOLE FOR PAPER TAPE I/O. -RECORD FORMATS: ASCII (INPUT): A STRING OF CHARACTERS TERMINATED BY A LINE-FEED. IF THE REQUESTED LENGTH IS FULFILLED BEFORE A LINE-FEED, THE REMAINING CHARACTERS ARE IGNORED UNTIL A LINE-FEED IS INPUT. THE 8-LEVEL BIT (BIT 07) IS SET = 0 FOR 7-BIT ASCII CODE. SPECIAL CHARACTER PROCESSING: RETURN - ALWAYS IGNORED AND IS NOT TRANSMITED TO USER BUFFER LINE-FEED - IGNORED IF INPUT BEFORE THE FIRST VALID CHARACTER OF A RECORD; RECORD TERMINATOR AT THE END OF A RECORD AND IS NOT TRANSMITTED TO BUFFER OR COUNTED. CONTROL/A - DELETES PREVIOUS CHARACTER RUB-OUT - DELETES CURRENT RECORD; AFTER LINE-FEED IS INPUT, NEXT RECORD IS READ. ASCII (OUTPUT): A STRING OF CHARACTERS, THE NUMBER DESIGNATED BY THE "BUFFER LENGTH" IN THE REQUEST, TERMINATED BY A RETURN AND LINE-FEED (SUPPLIED BY THE DRIVER). SPECIAL CHARACTER PROCESSING: LEFT-ARROW: IF A LEFT-ARROW IS THE LAST CHARACTER IN THE USER BUFFER, THE RETURN/LINE-FEED AND ARROW CODES ARE NOT OUTPUT. A ZERO BUFFER LENGTH CAUSES ONLY A RETURN/LINE-FEED TO BE OUTPUT. BINARY(INPUT): A STRING OF CHARACTERS SPECIFIED BY THE BUFFER "LENGTH" IN THE REQUEST. "V-FORMAT": IF THE "V" FIELD IN THE CONTROL WORD OF THE REQUEST = 1, THE LENGTH OF THE RECORD IS DESIGNATED (IN WORDS) BY THE FIRST CHARACTER OF THE RECORD. THE WORD COUNT INCLUDES THE FIRST WORD. IF THE WORD COUNT IS LARGER THAN THE BUFFER LENGTH, THE BUFFER LENGTH IS USED. BINARY(OUTPUT): A STRING OF CHARACTERS SPECIFIED BY THE BUFFER "LENGTH" IN THE REQUEST. -SIMULATED END-OF-TAPE: IF 30 FEED-FRAMES (ZEROS) ARE INPUT BEFORE THE FIRST CHARACTER OF A RECORD, AN EOT INDICATION IS SET IN THE STATUS FIELD (BIT 05 OF WORD 5) OF THE EQT ENTRY AND THE INPUT TERMINATED. IF THE EOT BIT IS SET WHEN THE CONDITION IS ENCOUNTERED, THE EOT IS IGNORED AND CHARS ARE INPUT UNTIL A RECORD IS STARTED (I.E., LEADER IS AUTOMATICALLY SKIPPED AFTER EOT). -CONTROL FUNCTIONS ACCEPTED: 10 - TEN INCHES OF ZEROS (FEED-FRAMES) ARE OUTPUT FOR LEADER/ TRAILER. 11 - LINE SPACING: THE PARAMETER WORD OF THE REQUEST DETERMINES THE NUMBER OF LINE-FEEDS TO BE OUTPUT. 07 - THE EOT STATUS BIT IS SET TO ALLOW "LEADER" TO BE SKIPPED ON THE NEXT INPUT REQUEST. -SYSTEM TELETYPE PROCESSING: THE SYSTEM TELETYPE IS ALWAYS LEFT IN THE "INPUT STATE" WITH CONTROL SET/FLAG CLEARED TO LEAVE THE KEYBOARD ACTIVE. IF A KEY IS STRUCK WITH NO INPUT IN EFFECT, THE FLAG "OPATN" IN BASE PAGE IS SET NON-ZERO. IF A KEY IS STRUCK DURING AN OUTPUT OPERATION TO THE SYSTEM TTY, THE FLAG IS SET. I.00 - ENTRY POINT FOR THE INITIATION SECTION. C.00 - ENTRY POINT FOR THE COMPLETION SECTION. THE INITIATION SECTION IS CALLED FROM I/O CONTROL TO INITIALIZE A DEVICE AND INITIATE A DATA TRANSFER OR CONTROL FUNCTION. CALLING SEQUENCE: - ADDRESSES OF DEVICE EQT ENTRY SET IN "EQT1-EQT17" - (A) = I/O ADDRESS OF DEVICE (P) JSB I.00 (P+1) - RETURN - (A) = 0, OPERATION INITIATED, OR (A) = REJECT CODE: 2, ILLEGAL CONTROL REQUEST, OR CONTROL FUNCTION HAS BEEN DONE (I.E., SET EOT STATUS). THE COMPLETION SECTION IS CALLED BY CENTRAL INTERRUPT CONTROL TO CONTINUE OR COMPLETE AN OPERATION. CALLING SEQUENCE: - ADDRESSES OF DEVICE EQT ENTRY SET IN "EQT1-EQT17" - (A) = I/O ADDRESS OF DEVICE (P) JSB C.00 (P+1) --COMPLETION RETURN -- (P+2) --CONTINUATION RETURN -- COMPLETION RETURN: (A) = 0, SUCCESSFUL COMPLETION WITH (B) = # WORDS OR CHARS. TRANSFERRED (A) = 2 IF SIMULATED EOT ENCOUNTERED, (B) = 0 CONTINUATION RETURN: REGISTERS MEANINGLESS. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: X18701 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MULTI TERMINAL BCS DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER TERMINAL **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: BCS **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: D.00C IS A MULTI-TERMINAL BCS DRIVER CAPABLE OF OPERATING SIMULTANEOUSLY ANY NUMBER OF TELETYPES, TAPE READERS, TAPE PUNCHES AND EQUIVALENT DEVICES. IT IS DESIGNED TO TAKE THE PLACE OF THE STANDARD BCS DRIVERS D.00, D.01 AND D.02. IT USES INDIVIDUAL CONTINUATOR ENTRIES FOR EACH DEVICE AND A COMMON PROCESSOR ROUTINE. IN ADDITION TO THE STANDARD BCS FEATURES, D.00C PROVIDES AN OPERATION-ATTENTION MODE, WHICH OPERATES INDIVIDUALLY FOR EACH DEVICE. D.00C ALSO ALLOWS THE FOLLOWING CHARAC- TERS IN ASCII INPUT MODE: CONTROL (A) DELETES A CHARACTER, CARRIAGE- RETURN TERMINATES A RECORD, AND RUB-OUT DELETES A RECORD. THIS DRIVER CAN BE USEFUL IN DEDICATED DATA PROCESSING SYSTEMS WHERE A NUMBER OF OPERATORS HAVE FULL ACCESS TO A PROGRAM. TO SIMPLIFY PROGRAMMING FOR SUCH A TIME-SHARED MODE, A SET OF FORTRAN CALLABLE UTILITY ROUTINES IS INCLUDED IN THIS PACKAGE. THESE UTILITIES USE THE CONTRIBUTED PROGRAM HP22591A, STRIPPED FORTRAN FORMATTER FOR INTERNAL CONVERSION (STRIF). **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: ASSEMBLE THE SOURCE D.00C. THE ROUTINE D.00C PROVIDES FOUR ENTRIES TO THE CONTINUATOR SECTION. IF MORE THAN FOUR DEVICES ARE TO BE OPERATED SIMULTANEOUSLY, INSERT ADDITIONAL ENTRIES AS DESCRIBED IN THE PROGRAM LISTINGS, AND REASSEMBLE THE ROUTINE. WHERE ANY ENTRY POINTS REMAIN UNUSED THEY DO NOT HARM THE SYSTEM. EACH ENTRY REQUIRES 9 WORDS OF MEMORY. USE THE STANDAD BCS MODULES (PCS, .IOC., LOADR, ADDITIONAL DRIVERS) TO SET UP A CONFIGURED BCS. THE OBJECT TAPE OF D.00C REPLACES THE OBJECT TAPES OF D.00, D.01, AND D.02; DO NOT LOAD THESE STANDARD DRIVERS. THE DIALOG ON THE SYSTEM TELETYPE IS ESSENTIALLY THE SAME AS WITH THE STANDARD DRIVERS, WITH THE SPECIAL CONSIDERATIONS DESCRIBED BELOW. IN THE "EQT" ENTRY USE THE APPROPRIATE NAMES: D.00 FOR TELETYPES (OR EQUIVALENT DEVICES), D.01 FOR TAPE READERS, D.02 FOR HIGH SPEED TAPE PUNCHES. EACH NAME MAY BE ASSIGNED TO ANY NUMBER OF DEVICES, OR MAY REMAIN UNUSED. THE NAME AS USED IN THE "EQT" DEFINES THE EQUIPMENT TYPE AND CONTROLS THE MODE OF OPERATION. E.G., A D.02 ENTRY WILL REJECT INPUT REQUESTS AND WILL INDICATE A "TAPE LOW CONDITION", AS SPECIFIED FOR THE STANDARD DRIVER D.02. IN THE "INTERRUPT LINKAGE TABLE" USE THE ENTRY NAMES OF THE CONTINUATOR SECTION RATHER THAN THE NAMES I.00, I.01, I.02. THE ORIGINAL ROUTINE D.00C HAS THE FOUR NAMES C.N1, C.N2, C.N3, C.N4; ADDITIONAL NAMES MAY BE INSERTED. THE NAMES MAY BE USED IN ANY ORDER; THE DRIVER WILL ESTABLISH THE PROPER LINKAGE TO THE INITIATOR SECTION AND TO THE ACCORDING ENTRY POINT. ANY ENTRY POINT MAY REMAIN UNUSED, OR IT MAY BE ASSIGNED TO MORE THAN ONE DEVICE; HOWEVER, ONLY ONE OF THOSE DEVICES CAN BE OPERATED AT A TIME. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: D.00C IS A MULTI-TERMINAL BCS-DRIVER. ITS INITIATOR SECTION HAS 3 ENTRIES: D.00, D.01, D.02. THE EXTERNAL REFERENCE SPECIFICATIONS OF THE DRIVER ARE IDENTICAL WITH THOSE OF THE STANDARD BCS DRIVERS (EXCEPTIONS SEE BELOW). HOWEVER, WHILE A USUAL BCS DRIVER CAN SERVE ONLY ONE DEVICE AT A TIME, THIS DRIVER HAS THE CAPABILITY OF OPERATING ANY NUMBER OF INPUT/OUTPUT DEVICES SIMULTANEOUSLY. THIS IS OBTAINED BY INDIVIDUAL CONTINUATOR ENTRIES FOR EACH DEVICE, AND A COMMON PROCESSOR ROUTINE. THEY CAN BE LINKED TO THE INITIATOR ENTRIES IN ANY ORDER AT CONFIGURATION TIME BY THE STANDARD "PREPARE CONTROL SYSTEM" ROUTINE. THE FOLLOWING FEATURES ARE PROVIDED IN ADDITION TO THE STANDARD BCS SPECIFICATIONS: 1. IN "ASCII INPUT MODE" A "CONTROL-A" DELETES THE PRECEEDING CHARACTER THE DRIVER REPLIES WITH A BACK-ARROW. A "CARRIAGE RETURN" TERMINATES THE RECORD, THE DRIVER REPLIES WITH A "LINE FEED". A "RUB-OUT" DELETES A RECORD, THE DRIVER REPLIES WITH "/", RETURN, "LINE FEED". 2. IN "OPERATOR-ATTENTION MODE" A SOFTWARE FLAG IS SET IF THE OPERATOR STRIKES A KEY OF THE TERMINAL, WHILE IT IS OUTPUTTING DATA OR IS STANDING BY. THE OPERATOR-ATTENTION MODE CAN BE TURNED ON OR OFF INDIVIDUALLY FOR EACH DEVICE. LIB.C IS A SET OF FORTRAN-CALLABLE ROUTINES THAT SIMPLIFY THE USE OF D.00C IN A SYSTEM WITH TIME-SHARE CAPABILITY. THERE IS NO DIFFERENCE CONCERNING INPUT/OUTPUT, STATUS AND CLEAR REQUESTS COMPARED TO THE STANDARD DRIVERS D.00, D.01, D.02. ALL STANDARD ROUTINES SUCH AS THE FORMATTER, READ OR WRITE INSTRUCTION, ETC. CAN BE USED. IN ADDITION TO THESE FEATURES THE DRIVER HAS THE "OPERATOR ATTENTION" CAPABILITY. A FUNCTION REQUEST TURNS THE OPERATOR ATTENTION MODE ON OR OFF. WHEN THE OPERATOR-ATTENTION MODE IS ACTIVATED, THE DRIVER SETS A STATUS FLAG AS SOON AS THE OPERATOR STRIKES A KEY WHILE THE TERMINAL IS OUTPUTTING DATA OR IS STANDING BY. THE OPERATOR-ATTENTION MODE IS INACTIVE, UNLESS IT IS TURNED ON. THIS IS ACHIEVED BY A FUNCTION REQUEST TO .IOC., WHERE WORD 2 OF THE REQUEST HAS THE FOLLOWING FORM: BITS 15 TO 11 = 001, BIT 8 = 1, BITS 5 TO 0 = UNIT NUMBER, OTHER BITS MEANINGLESS. THE OPERATOR-ATTENTION MODE IS TURNED OFF BY A SIMILAR FUNCTION REQUEST WITH BIT 8 = 0 IN WORD 2. NOTE THAT .IOC. REJECTS THE CALL IF THE DEVICE IS "BUSY". HOWEVER, INPUT/OUTPUT REQUESTS MAY BE GIVEN WHILE THE OPERATOR-ATTENTION MODE IS CONTINUOUSLY BEING ACTIVE. IF A KEY OF THE TERMINAL IS STRUCK WHILE THE OPERATOR-ATTENTION MODE IS ACTIVE AND WHILE THIS DEVICE IS NOT PERFORMING AN INPUT OPERATION, BIT 0 OF WORD 2 IN THE EQUIPMENT TABLE IS SET TO 1. A STATUS REQUEST FETCHES THIS WORD INTO THE A-REGISTER, WHERE IT CAN EASILY BE TESTED. NOTE THAT A "LINE FEED" OR A "NULL" (FEED HOLE ONLY) DO NOT SET THE OPERATOR-ATTENTION FLAG IF INPUT WHILE THE DEVICE IS STANDING BY. THIS FEATURE IS CONVENIENT WHEN DATA IS INPUT THROUGH THE TAPE READER OF THE TELETYPE. A CLEAR REQUEST TURNS THE OPERATOR-ATTENTION MODE OFF AND CLEARS THE OPERATOR-ATTENTION FLAG (BIT 0 IN WORD 2 OF EQT). NOTE THAT THIS IS THE ONLY REQUEST THAT RESETS THIS FLAG; OTHER REQUESTS DO NOT AFFECT IT. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: TEMPORARILY THE DRIVER OPERATES WITH THE INTERRUPT SYSTEM DISABLED. THE PROGRAMMER MUST MAKE SURE THAT THIS FACT DOES NOT CAUSE ERRORS (E.G., DATA LOSS WITH HIGH-SPEED SYNCHRONOUS I/O DEVICES SUCH AS HP 2020 MAG TAPE). THE CONTINUATOR ROUTINE REQUIRES MORE PROCESSING TIME THAN THE STANDARD BCS DRIVERS. WHILE THIS FACT IS NOT PERCEPTIBLE ON TELETYPES, FAST DEVICES SUCH AS TAPE READERS ARE SOMEWHAT SLOWED DOWN. WHERE NECESSARY THE STANDARD DRIVER D.01 CAN BE USED FOR THE TAPE READER, WHEREAS D.00C SERVES THE TELETYPES. IN THIS CASE DELETE THE ENTRY POINT "D.01" IN D.00C AND RE-ASSEMBLE THE DRIVER. A USER WHO SIMPLY REPLACES THE STANDARD DRIVERS D.00, D.01 AND D.02 BY D.00C GETS THE ADVANTAGE OF PERCEPTIBLY SAVING MEMORY, BUT DOES NOT EXHAUST THE "TIME-SHARE" CAPABILITY. TO DO SO HE HAS TO CALL THE DRIVERS THROUGH .IOC. AND APPLY INTERNAL CONVERSION RATHER THAN USING THE STANDARD REQUESTS THROUGH THE FORMATTER. PROGRAMMING IN THIS MODE IS GREATLY SIMPLIFIED BY A SET OF UTILITY ROUTINES INCLUDED IN THIS PACKAGE ("LIB.C"), AND BY THE CONTRIBUTED PROGRAM HP 22591, STRIPPED FORTRAN FORMATTER FOR INTERNAL CONVERSION (STRIF). A SIMPLE EXAMPLE IS GIVEN IN THE "TEST CASE". THIS SAMPLE FORTRAN PROGRAM "DEMOC" AND THE COMMENTS IN THE ROUTINES "LIB.C" GIVE ENOUGH INFORMATION HOW TO USE THE DRIVER. X18801 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DOS-M DRIVER FOR CENTRONICS 101A LINE PRINTER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER PRINTER CENTRONICS **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? YES **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DOS-M DRIVER CONTROLS THE CENTRONICS 101A LINE PRINTERS. IT IS INTERFACED TO HP2100 SERIES COMPUTERS WITH A POSITIVE TRUE MICROCIRCUIT CARD HP12566. THE DRIVER PROVIDES AUTOMATIC PAGING AND CARRIAGE CONTROL. THE HARDWARE REQUIREMENTS INCLUDE: DISC, CENTRONICS 101A OR 101 LINE PRINTER, MICROCIRCUIT INTERFACE CARD, POSITIVE TRUE. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: WHEN A CALL IS FROM A USER PROGRAM, THE DRIVER INTERPRETS THE FIRST CHARACTER OF THE BUFFER AS CARRIAGE CONTROL ACCORDING TO THE FOLLOWING TABLE: CHARACTER MEANING --------- ------- 1 GO TO NEW PAGE 2 VERTICAL FORMAT CONTROL E ELONGATED CHARACTERS ANY OTHER CHARACTER SAME AS TTY WHEN THE CARRIAGE CONTROL CHARACTER IS "1", "2", OR "E", IT IS PRINTED AS A BLANK. ANY OTHER CHARACTER IS PRINTED AS IT APPEARS, GIVING OPERATION SIMILAR TO THAT OF A TELETYPE. IN NORMAL OPERATION A "BLANK" SHOULD BE USED AS A CARRIAGE CONTROL CHARACTER. THE DRIVER WILL ALSO PROCESS CLEAR REQUESTS, PAGE EJECT REQUESTS, AND LINE SPACES AS DESCRIBED IN THE DOS-M MANUAL. **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THE MICROCIRCUIT CARD MUST BE MODIFIED TO BE COMPATIBLE WITH THE CENTRONICS LINE PRINTER. THE PRINTER WANTS TO SEE A .5 MICROSECOND (OR LONGER) PULSE ON THE DATA STROBE LINE. THIS CAN BE ACCOMPLISHED BY BREAKING THE DEVICE COMMAND LINE ON THE INTERFACE CARD (GOES TO PINS 22 AND Z) AND ADDING A ONE-SHOT WITH A PULSE WIDTH OF 1 MICRO- SECOND. THIS CAN BE DONE USING AN SN74121N WITH THE FOLLOWING CONNEC- TIONS: (1) 82PF BETWEEN PINS 10 & 11, (2) 18K OHMS BETWEEN PINS 11 AND 14, (3) INPUT TO PIN 4, (4) OUTPUT (PINS Z, 22) TO PIN 1, (5) PIN 7 TO GROUND, (6) PIN 14 TO +5V. THERE IS ROOM TO MOUNT THE 1C BY U23 AND U24. GROUND CAN BE PICKED UP ALONG THE EDGE OF THE CARD AND +5V ON THE + SIDE OF C12. X18901 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: MODIFIED DOS-III SYSTEM CONSOLE DRIVER **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER TERMINAL **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M DOS-3 **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? NO **ABSTRACT: THE PROGRAM IS SIMILAR IN NATURE TO THE OFFICIAL DVR05, WITH THE FOLLOWING MODIFICATIONS MADE IN ORDER TO PROVIDE COMPATIBILITY WITH HP3000 TERMINALS. 1. THE USER SIGNALS COMPLETION OF AN INPUT LINE BY TYPING CARRIAGE RETURN ONLY. THE DRIVE ECHOES THE CARRIAGE RETURN AND ALSO OUTPUTS A LINEFEED. 2. BOTH CONTROL/A AND CONTROL/H DELETE SINGLE CHARACTERS ON INPUT. THE DRIVER OUTPUTS A BACK-SLASH (OCTAL 134) FOR EACH CHARACTER DELETED. 3. BOTH RUBOUT AND CONTROL/X DELETE AN ENTIRE INPUT LINE. THE DRIVER OUTPUTS THREE EXCLAMATION MARKS, FOLLOWED BY A CARRIAGE RETURN AND LINEFEEED. THIS DRIVER WILL FUNCTION SIMILARLY TO THE ORIGINAL DVR05, THEREFORE IT CAN HANDLE ALL TERMINALS SUPPORTED BY THE ORIGINAL. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE **LOAD INSTRUCTIONS: THIS DRIVER MUST BE ASSEMBLED AND CONFIGURED INTO A DOS-M OR DOS-III SYSTEM AS THE SYSTEM IS GENERATED. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: THIS DRIVER REQUIRES NO SPECIAL TECHNIQUE FOR THE HP 3000 USER. THE DOS-M OR DOS-III USER WHO IS FAMILIAR WITH THE ORIGINAL DVR05 WILL HAVE TO RETRAIN HIS OR HER FINGERS TO AVOID STRIKING THE LINEFEED KEY FOLLOWING THE CARRIAGE RETURN. THE DRIVER AND THE OPERATING SYSTEM REACT TO SUCH A LINEFEED JUST THE SAME AS IF THE USER TYPED ANY OTHER KEY: OPERATOR ATTENTION. THE OPERATING SYSTEM WILL OUTPUT THE OPERATOR ATTENTION ASTERISK, AND THE USER MUST THEN ENTER SOME NON-ACCEPTABLE DIRECTIVE OR CHARACTER (LIKE A SINGLE BLANK) FOLLOWED BY A CARRIAGE RETURN IN ORDER TO "CLEAR" THE OPERATOR ATTENTION PAUSE. X19001 PLUS/1000 LIBRARY CONTRIBUTION --------------------------------------------------------------------- **DATE CODE: 2001 **PROGRAM NAME: **PROGRAM TITLE: DVR-37 DOS DRIVER FOR ASCII BUS **REVISION? NO **PACKAGE: 99 **CATEGORY: 5 **SUBCATEGORY: 2 **KEYWORDS: DRIVER ASCII **LANGUAGES: ASMB **COMPUTER TYPE: **OPERATING SYSTEMS: DOS-M **MEMORY REQUIREMENTS: **DEPENDENT ON SYSTEM SOFTWARE? NO **DEPENDENT ON SYSTEM HARDWARE? YES **ABSTRACT: THIS DRIVER (DVR37) OPERATES UNDER THE CONTROL OF THE I/O CONTROL MODULE OF THE D.O.S. EXECUTE. THIS DRIVER IS RESPONSIBLE FOR: 1. CONTROLLING INPUT AND OUTPUT DATA TRANSMISSION WITH THE I/O CARD. 2. OUTPUTTING THE CONTROL WORD WHICH IS USED TO SELECT THE OPERATING MODES AND BUS FUNCTIONS THAT THE BUS I/O CARD IS TO PERFORM. HARDWARE REQUIRED: DISC, HP-IB I/O CARD (59310A), AND ANY DEVICE(S) OPERABLE ON ASCII BUS SYSTEM. **FILES IDENTIFICATION: (NOTE: FILES IN THIS CONTRIBUTION HAVE THE SAME NAME AS THE DOCUMENTATION FILE WITH THE LAST 2 DIGITS INCREMENTED. E.G.: A00101, A00102, A00103, ETC.) FILE# 1: DOCUMENTATION FILE FILE# 2: SOURCE FILE# 3: SOURCE **LOAD INSTRUCTIONS: 1. ASSEMBLE THE DRIVER PROGRAM (DVR37), AND MAKE ITS RELOCATABLE BINARY TAPE. 2. STORE THE RELOCATABLE BINARY ON THE DISC TOGETHER WITH THE SYSTEM TAPES AT THE DISC SYSTEM GENERATION TIME, ACCORDING TO THE "GENERA- TING DOS-M" (MANUAL PART NO. 5951-1375). 3. AND ESTABLISH THE EQT TABLE ENTRY, DEVICE REFERENCE TABLE, AND INTER- RUPT TABLE CAREFULLY. **RUN INSTRUCTIONS: **INPUT/OUTPUT EXAMPLES: **PROGRAM DESCRIPTION: THE DVR37 PERFORMS THE CONTROLS TO SELECT THE OPERATING MODE AND BUS FUNCTIONS, INPUT AND OUTPUT DATA TRANSMISSION WITH THE DEVICE(S), UNDER CONTROL OF THE DISC OPERATING SYSTEM. 1. I/O OPERATION AN EXEC-CALL FOR TRANSFERRING INPUT AND OUTPUT DATA IS CONFORMABLE WITH THE READ/WRITE INSTRUCTION ON THE "MOVING HEAD DISC OPERATING SYSTEM" (SECTION III EXEC CALLS; MANUAL PART NO. 02116-91779). CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT EXEC . . . JSB EXEC (TRANSFER CONTROL TO DOS-M) DEF *+5 (RETURN POINT FROM DOS-M) DEF RCODE (REQUEST CODE) DEF CONWD (CONTROL INFORMATION) DEF BUFFR (BUFFER LOCATION) DEF BUFFL (BUFFER LENGTH) (RETURN POINT) . . . RCODE DEC 1 (OR 2) (1=OUTPUT, 2=INPUT) CONWD OCT CONWD (SEE COMMENT) FOR INPUT BUFFR BSS N (BUFFER N-WORDS) BUFFL DEC N(OR -2N)(SAME N; WORDS(+) OR CHARACTERS(-)) FOR OUTPUT BUFFR ASC M,XXXXX (BUFFER STORED OUTPUTING CHARACTERS, M=NO. OF BUFFL DEC N(OR -2N) CHARACTERS, X=CHARACTER) CALLING SEQUENCE - FORTRAN CALL EXEC(ICODE,ICONW,IBUFF,IBUFL) --- COMMENT: CONWD --- THE CONWD CONTAINS THE FOLLOWING FIELDS: 000----K0VLLLLLL K: USED WITH KEYBOARD INPUT, SPECIFIES PRINTING THE INPUT AS RECEIVED IF K=1. IF K=0, "NO PRINTING" IS SPECIFIED. M: DETERMINES THE MODE OF DATA TRANSFER. IF M=0, TRANSFER IS IN ASCII CHARACTER FORMAT, AND M=1, BINARY FORMAT. LLLLLL: DEVICE LU NUMBER. 2. CONTROL OPERATION CALLING SEQUENCE - ASSEMBLY LANGUAGE EXT EXEC . . . JSB EXEC (TRANSFER CONTROL TO DOS-M) DEF *+3 (POINT OF RETURN FROM DOS) DEF RCODE (REQUEST CODE) DEF CONWD (CONTROL INFORMATION) (RETURN POINT) . . . RCODE DEC 3 (REQUEST CODE = 3) CONWD OCT CONWD (REQUIRES FOR SOME CONTROL FUNCTIONS; SEE COMMENT) CALLING SEQUENCE - FORTRAN CALL EXEC(ICODE,ICONW) --- COMMENT: CONWD --- THE CONWD CONTAINS THE FOLLOWING FIELDS: 000FFFFFFFLLLLLL F: FUNCTION CODE FUNCTION CODE ACTION (OCTAL) 001 BUS CLEAR (SET IFC LOW) 002 SWITCH BUS TO LOCAL (SET REN HIGH) 003 SWITCH BUS TO REMOTE (SET REN LOW) 004 CLEAR ACTIVE CONTROLLER STATUS 005 SET ACTIVE CONTROLLER STATUS 044 DISABLE COMMAND MODE(SET ATN & EOI HIGH) 046 ENABLE COMMAND MODE (SET ATN LOW, EOI HIGH) 060 DISABLE LISTEN AND DISABLE TALK FUNCTIONS, DISABLE COMMAND MODE 061 DISABLE LISTEN AND ENABLE TALK FUNCTIONS, DISABLE COMMAND MODE 062 ENABLE LISTEN AND DISABLE TALK FUNCTIONS, DISABLE COMMAND MODE 063 ENABLE LISTEN AND ENABLE TALK FUNCTIONS, DISABLE COMMAND MODE 064 COMBINED 044 AND 060 065 COMBINED 045 AND 061 LLLLLL: LU DEVICE NUMBER **ADDITIONAL EXITS OR DIAGNOSTIC MESSAGES: **MISCELLANEOUS: