cdc:nos2.source:nam5871:lfggpn
Table of Contents
LFGGPN
Table Of Contents
- [00007] GET PARTITION NAME.
Source Code
- LFGGPN.txt
- *DECK LFGGPN
- USETEXT LFGIOD,LFGHDRC,LFGIB
- PROC LFGGPN(PN,RC,MRES,ON,EOI,SUCCESS);
- BEGIN # GET PARTITION NAME #
- *IF DEF,IMS
- #
- ** LFGGPN - GET PARTITION NAME.
- *
- * M. E. VATCHER 81/02/19
- *
- * LFGGPN GETS A PARTITION NAME FROM A SYSTEM HEADER RECORD
- * AND CONVERTS THE NAME TO DISPLAY CODE.
- *
- * PROC LFGGPN(PN,RC,MRES,ON,EOI,SUCCESS)
- *
- * ENTRY NONE.
- *
- * EXIT PN PARTITION NAME IN DISPLAY CODE
- * RC MODULE COUNT FOR MEMORY RESIDENT PARTITION
- * MRES MEMORY RESIDENT INDICATOR
- * ON OVERLAY NAME IN ASCII
- * EOI END OF INFORMATION ENCOUNTERED
- * SUCCESS SUCCESSFUL COMPLETION INDICATOR
- *
- * METHOD
- *
- * READ RECORD AT CURRENT FILE POSITION
- * IF EOI ENCOUNTERED
- * THEN
- * SET EOI AND RETURN
- * SET OR CLEAR MEMORY RESIDENT FLAG
- * IF ITS NOT MEMORY RESIDENT
- * THEN
- * READ ANOTHER RECORD TO GET SYSTEM HEADER RECORD
- * CONVERT PARTITION NAME TO DISPLAY CODE
- * IF ITS A MEMORY RESIDENT PARTITION
- * THEN
- * SET MODULE COUNT
- * ELSE
- * SET OVERLAY NAME IN ASCII
- * IF ITS AN OVERLAY
- * THEN
- * SKIP OVER OVERLAY AREA HEADER RECORD
- * END
- *
- #
- *ENDIF
- #
- **** PROC LFGGPN - XREF LIST BEGIN.
- #
- XREF
- BEGIN
- ITEM IFET U; # FWA OF INPUT FILE FET #
- PROC LFGRDER; # PRINT READ ERROR MESSAGE #
- PROC LFGRDSR; # READ SEQUENTIAL RECORD #
- END
- #
- ****
- #
- *CALL LFGASCI
- ITEM EOI B; # END OF INFORMATION FLAG #
- ITEM MRES B; # MEMORY RESIDENT FLAG #
- ITEM NAME2 U; # CONCATENATE NAME2A AND NAME2B #
- ITEM ON U; # OVERLAY NAME IN ASCII #
- ITEM PN C(6); # PARTITION NAME #
- ITEM RC U; # RECORD COUNT #
- ITEM STATIS U; # STATUS RETURNED FROM READ #
- ITEM SUCCESS B; # SUCCESSFUL COMPLETION INDICATOR #
- SUCCESS = TRUE;
- LFGRDSR(LOC(IFET),STATIS);
- IF STATIS EQ RDEOI
- THEN
- BEGIN
- EOI = TRUE;
- RETURN; # ***** EXIT ***** #
- END
- IF STATIS NQ RDEOR
- THEN
- BEGIN
- LFGRDER(STATIS);
- SUCCESS = FALSE;
- RETURN; # ***** EXIT ***** #
- END
- IF B<0,16>IBUF[0] EQ 0
- THEN
- MRES = TRUE;
- ELSE
- MRES = FALSE;
- IF NOT MRES # IF ITS AN OVERLAY PARTITION #
- THEN # GET SYSTEM HEADER RECORD #
- BEGIN
- LFGRDSR(LOC(IFET),STATIS);
- IF STATIS NQ RDEOR
- THEN
- BEGIN
- LFGRDER(STATIS);
- SUCCESS = FALSE;
- RETURN; # ***** EXIT ***** #
- END
- END
- P<HEADER> = LOC(IBUF[0]);
- C<0,1>PN = C<NAME1,1>ASCIITAB;
- NAME2 = 0;
- B<53,3>NAME2 = NAME2A;
- B<56,4>NAME2 = NAME2B;
- C<1,1>PN = C<NAME2,1>ASCIITAB;
- C<2,1>PN = C<NAME3,1>ASCIITAB;
- C<3,1>PN = C<NAME4,1>ASCIITAB;
- C<4,1>PN = C<NAME5,1>ASCIITAB;
- C<5,1>PN = C<NAME6,1>ASCIITAB;
- IF MRES
- THEN # SET NUMBER OF MODULES #
- RC = MCNT[0];
- ELSE # OVERLAYS HAVE ONLY ONE INPUT RECORD #
- BEGIN
- RC = 1;
- ON = 0;
- B<37,7>ON = NAME1;
- B<45,7>ON = NAME2;
- B<53,7>ON = NAME3;
- END
- IF NOT MRES
- THEN # ITS AN OVERLAY #
- BEGIN # SKIP OVERLAY AREA HEADER RECORD #
- LFGRDSR(LOC(IFET),STATIS);
- END
- END TERM
cdc/nos2.source/nam5871/lfggpn.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator