INFOTS.MAC 83B08A MACRO V04.00 9-FEB-83 22:08:08 TABLE OF CONTENTS 1- 35 **************** 1- 36 * * 1- 37 * UNCLASSIFIED * 1- 38 * * 1- 39 **************** 2- 1 DESCRIPTION 03-FEB-83/04-FEB-83. 2- 12 DIRECTIVES 03-FEB-83/08-FEB-83. 2- 36 ASSIGNMENTS 03-FEB-83/08-FEB-83. 3- 1 MACRO CODE 03-FEB-83/08-FEB-83. INFOTS.MAC 83B08A MACRO V04.00 9-FEB-83 22:08:08 PAGE 1 1 .TITLE INFOTS.MAC 83B08A 03-FEB-83/08-FEB-83. 2 .ENABL LC 3 4 ; AUTHOR: N. A. BOURGEOIS, JR. 5 ; SANDIA NATIONAL LABORATORIES 6 ; SYSTEMS ENGINEERING DIVISION 9238 7 ; PO BOX 5800 8 ; ALBUQUERQUE, NM 87185 9 ; 505-844-8088 10 ; AV 244-8088 11 ; 12 ; THIS SOFTWARE IS ISSUED BY SANDIA NATIONAL LABORATORIES, 13 ; OPERATED FOR THE UNITED STATES DEPARTMENT OF ENERGY BY 14 ; SANDIA CORPORATION. 15 ; 16 ; NOTICE 17 ; 18 ; THIS SOFTWARE WAS SPONSORED BY THE UNITED STATES 19 ; GOVERNMENT. NEITHER THE UNITED STATES GOVERNMENT NOR 20 ; THE UNITED STATES DEPARTMENT OF ENERGY, NOR ANY OF THEIR 21 ; EMPLOYEES, NOR ANY OF THEIR CONTRACTORS, SUBCONTRACTORS, 22 ; OR THEIR EMPLOYEES MAKES ANY WARRANTY, EXPRESS OR 23 ; IMPLIED, OR ASSUMES ANY LEGAL LIABILITY OR 24 ; RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS OR 25 ; USEFULNESS OF ANY INFORMATION, APPARATUS, PRODUCT OR 26 ; PROCESS DISCLOSED, OR REPRESENTS THAT ITS USE WOULD NOT 27 ; INFRINGE PRIVATELY OWNED RIGHTS. 28 ; 29 ; THIS WORK WAS SPONSORED AND FUNDED BY: 30 ; 31 ; HEADQUARTERS, ESD / OCB / STOP 36 32 ; HANSCOM AIR FORCE BASE, MA 01731 33 ; 34 ; 35 .SBTTL **************** 36 .SBTTL * * 37 .SBTTL * UNCLASSIFIED * 38 .SBTTL * * 39 .SBTTL **************** INFOTS.MAC 83B08A MACRO V04.00 9-FEB-83 22:08:08 PAGE 2 DESCRIPTION 03-FEB-83/04-FEB-83. 1 .SBTTL DESCRIPTION 03-FEB-83/04-FEB-83. 2 3 ; This program demonstrates the initialization of the FORTRAN IV/RT-11 4 ; V2.5 operating time system (OTS) from a MACRO-11 program. The 5 ; FORTRAN subroutine JUNK that is called consists of the following: 6 ; 7 ; SUBROUTINE JUNK 8 ; 1 FORMAT (/,' JUNK: a FORTRAN subroutine',/,/) 9 ; END 10 11 12 .SBTTL DIRECTIVES 03-FEB-83/08-FEB-83. 13 14 .IDENT \83b08a\ ;version code 15 .NLIST BEX ;binary extensions 16 17 ; Put FORTRAN's program sections in their proper sequence. 18 19 000000 .ASECT 20 000000 .PSECT OTS$I RW,I,LCL,REL,CON 21 000000 .PSECT OTS$P RW,D,GBL,REL,OVR 22 000000 .PSECT SYS$I RW,I,LCL,REL,CON 23 000000 .PSECT USER$I RW,I,LCL,REL,CON 24 000000 .PSECT $CODE RW,I,LCL,REL,CON 25 000000 .PSECT OTS$O RW,I,LCL,REL,CON 26 000000 .PSECT SYS$O RW,I,LCL,REL,CON 27 000000 .PSECT $DATAP RW,D,LCL,REL,CON 28 000000 .PSECT OTS$D RW,D,LCL,REL,CON 29 000000 .PSECT OTS$S RW,D,LCL,REL,CON 30 000000 .PSECT SYS$S RW,D,LCL,REL,CON 31 000000 .PSECT $DATA RW,D,LCL,REL,CON 32 000000 .PSECT USER$D RW,D,LCL,REL,CON 33 000000 .PSECT .$$$$. RW,D GBL,REL,OVR 34 35 36 .SBTTL ASSIGNMENTS 03-FEB-83/08-FEB-83. 37 38 000000 .ASECT 39 000000 $HRDWR == 0 ;hardware flag (0 = NHD, 4 = EIS, 40 ; 6 = FIS, 10 = FPU) 41 000210 $LRECL == 210 ;output line record length (characters) 42 000006 $NLCHN == 6 ;number of I/O channels (logical units) 43 000000 $RF2A1 == 0 ; ? 44 004737 $TRACE == 4737 ; ? 45 000000 $USRSW == 0 ;USR swap flag (0 = swap, 1 = noswap) 46 000152 $WASIZ == 152 ;initial work area size 47 000000 .VIR == 0 ;virtual array flag (0 = no, 1 = yes) INFOTS.MAC 83B08A MACRO V04.00 9-FEB-83 22:08:08 PAGE 3 MACRO CODE 03-FEB-83/08-FEB-83. 1 .SBTTL MACRO CODE 03-FEB-83/08-FEB-83. 2 3 000000 .PSECT OTS$I 4 000000 $$OTSI:: 5 6 000000 .PSECT $CODE 7 .GLOBL LSN$,$OTI ;OTS globals 8 .GLOBL JUNK ;demonstration FORTRAN subroutine 9 .MCALL .EXIT,.PRINT ;system services used 10 11 000000 INFOTS:: ;entry point 12 000000 .PRINT #MSG01 ;entry notification 13 14 000006 004467 000000G JSR R4,$OTI ;call FORTRAN's initialization 15 000012 000000' .WORD NAMPTR ;pointer to program name in $DATAP 16 000014 000000G .WORD LSN$ ;pointer to internal line number routine 17 000016 000002 .WORD 2 ; ? 18 000020 000022' .WORD .+2 ;exit the OTS threaded code mode 19 20 000022 004767 000000G CALL JUNK ;FORTRAN subroutine 21 22 000026 .PRINT #MSG02 ;exit notification 23 000034 .EXIT ;exit point 24 25 000000 .PSECT $DATAP 26 000000 035166 060363 NAMPTR: .RAD50 \INFOTS\ ;program name 27 000004 000000 .WORD 0 ;number of arguments 28 000006 000000' .WORD DATPTR ;pointer to $DATA program section 29 30 000000 .PSECT OTS$D 31 .GLOBL $LRECL ;output line 32 000000 000210 .WORD $LRECL ; record length 33 000002 000000 .WORD 0 ; ? 34 35 000000 .PSECT OTS$S 36 000000 $AOTS:: .BLKW $WASIZ ;work area 37 38 000000 .PSECT $DATA 39 000000 DATPTR: 40 41 000000 .PSECT USER$D 42 000000 111 116 106 MSG01: .ASCIZ \INFOTS: Entry\ 43 000017 111 116 106 MSG02: .ASCIZ \INFOTS: Exit\ 44 45 000000 .PSECT .$$$$. 46 000000' .END INFOTS INFOTS.MAC 83B08A MACRO V04.00 9-FEB-83 22:08:08 PAGE 3-1 SYMBOL TABLE DATPTR 000000R 015 MSG01 000000R 016 $HRDWR= 000000 G $RF2A1= 000000 G $WASIZ= 000152 G INFOTS 000000RG 006 MSG02 000017R 016 $LRECL= 000210 G $TRACE= 004737 G $$OTSI 000000RG 002 JUNK = ****** G NAMPTR 000000R 011 $NLCHN= 000006 G $USRSW= 000000 G .VIR = 000000 G LSN$ = ****** G $AOTS 000000RG 013 $OTI = ****** G . ABS. 000000 000 000000 001 OTS$I 000000 002 OTS$P 000000 003 SYS$I 000000 004 USER$I 000000 005 $CODE 000036 006 OTS$O 000000 007 SYS$O 000000 010 $DATAP 000010 011 OTS$D 000004 012 OTS$S 000324 013 SYS$S 000000 014 $DATA 000000 015 USER$D 000035 016 .$$$$. 000000 017 ERRORS DETECTED: 0 VIRTUAL MEMORY USED: 8192 WORDS ( 32 PAGES) DYNAMIC MEMORY AVAILABLE FOR 55 PAGES INFOTS,INFOTS=INFOTS