DataMuseum.dk

Presents historical artifacts from the history of:

Philips Data Systems

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Philips Data Systems

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦bb25a9bcc⟧

    Length: 25097 (0x6209)
    Notes: pts_type(SC)
    Names: »WUEXT.SC«

Derivation

└─⟦f45ea3bc3⟧ Bits:30009713 Philips computer tape "WSM"
    └─⟦this⟧ »WSM:UTIL/WUEXT.SC« 

PTS(SC)

	IDENT	WUEXT	REL=2.3,841001,870155940230
**************************************
*  WORK STATION MANAGEMENT           *
*  UTILITY PROGRAMS                  *
*  5  EXTEND FILE                    *
*                                    *
**************************************


**  HISTORY:

** 84-07-12 /MAER    "EXTEND WSM SYSTEM FILE".
** 83-09-27 /MAER    VOLUME NAME NO MORE DESTROYED IF RETURN-KEY
**                   IS PRESSED BEFORE ENTERING UNIT-MNEMO. 
** 83-05-11 /MAER    CHANGED DECORATIONS. 
**                   EXTENTS GET TYPE 'X' AND RECORD LENGTH 256.
** 82-10-19 /MAER    VOLUME-NAME CHANGED BEFORE EXTENSION.
** 82-02-04 /DALI    DISPLAY OF NO. OF RECS CHANGED FROM 5 TO 7 DIGITS
** 81-11-04 /DALI    CREATION 


	DDUM	WUDIV 
	PDIV 
	ENTRY	WUEXT
	ENTRY	WUEXT1 
	ENTRY	WUEXT2 
* 
	EXPROC	DECLRA	CRE= SCREEN ROUTINE
	EXPROC	DERR	CRE= ERROR ROUTINE 
	EXPROC	DISERR
	EXPROC	DSKERR,PBIN 
	EXPROC	CHVNAM,PSTRG,PBIN	CRE= CHANGE VOLUMENAME
			PARAM: NEW NAME, F.C.
	EXPROC	HALT
	EXPROC	CONT	DISPLAY WAIT-TEXT
* 
	EXT	CREFIL	ASS= CREATE FILE
	EXT	DELFIL	ASS= DELETE FILE
	EXT	RDSECT	ASS= READ A SECTOR
	EXT	WRSECT	ASS= WRITE A SECTOR 
	EXT	READDK	ASS= READ A RECORD
	EXT	WRITDK	ASS= WRITE A RECORD 
	EXT	BINBCD	ASS= TWO BINARYS TO BCDITEM 
	EXT	BCDBIN	ASS= BCDITEM TO TWO BINARYS 
	EXT	CHANFC	ASS= CHANGE FILE-CODE 
	EXT	OPENF	ASS= OPEN FILE 
	EXT	CLOSEF	ASS= CLOSE FILE 
	EJECT
WUEXT	PROC
EXT000
	ATTFMT	FEXT
	SET	DEPROMPT 
EXT050
	PERF	DECLRA
EXT075
	IB	DEBINW2,EXT050,RETUR,EXT200 
	PERF	DSKERR,W0	'BELL'
	B	EXT075 
EXT200
	ERASE	0,W1,W12 
	PERF	CONT	DISPLAY WAIT-TEXT... 
	MOVE	COPFIL,=C'WSM-TEMP' 
	MOVE	STR1A,=C'X' 
	XCOPY	PBLOCK,W5,W1,PBLOCK,W4	FC NO DISP
	XCOPY	PBLOCK,W7,W1,STR1A,W0	F.ORG
	XCOPY	PBLOCK,W8,W8,COPFIL,W0	FILE-NAME 
	XCOPY	PBLOCK,W16,W6,VOLEX1,W0	VOL-NAME 1 
	CALL	DELFIL,PBLOCK,BPOOL(W5),BPOOL(W10),RETCOD 
	XCOPY	PBLOCK,W7,W1,FCOD,W1	DISK-FILE CODE
	XCOPY	PBLOCK,W7,W1,STR1A,W0	F.ORG
	XCOPY	PBLOCK,W8,W8,COPFIL,W0	FILE-NAME 
	COPY	PBLOCK,W16,W6,VOLEX1,W0	VOL-NAME 1
	MOVE	STRG10A,='R XXX WSM ' 
	XCOPY	STRG10A,W2,W3,RELNUM,W0	SET REL. NO
	MOVE	BIN1,=W'40' 
	XCOPY	PBLOCK,BIN1,W9,STRG10A,W0	REL + RET.PERIOD 
	MOVE	BIN1,=W'49' 
	XCOPY	PBLOCK,BIN1,W1,W1,W1	BF
	MOVE	BIN2,=W'50' 
	XCOPY	PBLOCK,BIN2,W2,SECLEN,W0 
 CALL BCDBIN,NOREC,BIN10,BIN11
 MOVE BIN1,=W'52' 
 XCOPY PBLOCK,BIN1,W2,BIN10,W0 NO. OF RECORDS 
 MOVE BIN1,=W'54' 
 XCOPY PBLOCK,BIN1,W2,BIN11,W0 NO. OF RECORDS 
	MOVE	BIN1,=W'56' 
	XCOPY	PBLOCK,BIN1,W2,W0,W0	KA
	MOVE	BIN1,=W'58' 
	XCOPY	PBLOCK,BIN1,W2,W0,W0	NIF 
	CALL	CREFIL,PBLOCK,BPOOL(W12),BPOOL(W1),RETCOD 
	CMP	RETCOD,W0	'I/O-ERROR'
 BNZ EXT750 
	CALL	OPENF,DISK,FILECODE(W1),SYSBUF,FILNAM,VOLEX1,RETCOD 
	BNOK	EXT750
	MOVE	BIN2,W0	USED FOR REL.REC
	MOVE	RECNUM,W1 
EXT700
	CALL	BCDBIN,RECNUM,FFSNR(W1),FFSNR(W2) 
	CALL	READDK,DISK,FILECODE(W1),RBUF,SECLEN,RECNUM,RETCOD
	BNOK	EXT995
	XCOPY	BIN2,W1,W1,RELREC,W0 
	CBNE	LNEXT2,W0,EXT720
	CBE	LNEXT1,W0,EXT730 
EXT720
	CALL	BINBCD,LNEXT1,LNEXT2,RECNUM 
	B	EXT700 
EXT730
	CALL	OPENF,DISK,FILECODE(W3),SYSBUF,COPFIL,VOLEX1,RETCOD 
	BNOK	EXT995
	B	EXT800 
EXT750
	PERF	CHVNAM,VOLNAM,FCOD	CHANGE NAME TO ORIGIN
EXT755
	PERF	DISERR	'I/O-ERROR'
	B	EXT075 
	EJECT
*************************************** 
*                                     * 
*  FOLLOWING WORK ITEMS ARE USED      * 
*  FOR INIALIZATION OF THE SYSWSM-FILE* 
*                                     * 
*  BIN1 = WORKITEM                    * 
*  BIN2 = COUNTER IN BIN9             * 
*  BIN3 = NO.OF SECTORS/RECORD        * 
*  BIN4 = NO.OF FREE-SPACE REC.       * 
*  BIN5 = NO.OF FS.IN LAST REC.       * 
*  BIN6 = INDEX                       * 
*  BIN7 = NOT USED                    * 
*  BIN8 = CONTER TO MATCH - FS-IND    * 
*  BIN9 = WORKITEM - FREE-SPACE IND.  * 
*                                     * 
*                                     * 
*  BIN12 = SIZE OF SECTORS            * 
*                                     * 
*  BCD5A = NO.OF FS.IND PER FS. RECORD* 
*  BCD13A = NO.OF RECORDS             * 
*************************************** 
	EJECT
************************
*  FREE-SPACE RECORDS  *
************************
EXT800
	MOVE	RBUF,HEX00
	MOVE	FS,=C'FS'	RECORD TYPE 
	MOVE	LNEXT1,W0	LINK NEXT1. 
	MOVE	LNEXT2,W0	LINK NEXT2. 
	MOVE	BCD13A,NOREC	NO. OF RECORDS 
	MOVE	BCD5A,=D'+01920'	NO. OF FS-IND. PER FS. REC.
	MOVE	BIN4,W0 
EXT810
	ADD	BIN4,W1	NO.OF FREE-SPACE RECORDS 
	SUB	BCD13A,=D'+1'
	SUB	BCD13A,BCD5A 
	CBG	BCD13A,=D'00',EXT810	CHECK IF SPACE FOR 1 FS-REC 
	ADD	BCD13A,BCD5A 
	MOVE BIN5,BCD13A	BIN5 = NO. OF FREE-RECORD-IND.
			IN LAST FREE-SPACE RECORD
	MOVE	BCD13A,BIN4 
	ADD	BCD13A,NORECO
	ADD	BCD13A,=D'+1'
	CALL	BCDBIN,BCD13A,FRSTN1,FRSTN2 
	CBE	BIN4,W1,EXT830	ONLY 1 RECORD 
	ADD	BCD13A,=D'+1'
	CALL	BCDBIN,BCD13A,LNEXT1,LNEXT2 
EXT830
	MOVE	NOFREE,BCD5A	NO. OF FREE = 1920 
	MOVE	NOFREC,BCD5A
	ADD	BIN2,W1	RELREC 
	CBNE	BIN4,W1,EXT840
	MOVE	NOFREE,BIN5	IF LAST RECORD
	MOVE	NOFREC,BIN5 
EXT840
	MOVE	RECNUM,=D'+1' 
EXT850
***************************************************** 
*  FILL RECORD WITH FREE-SPACE-INDICATIONS : 1=FREE * 
***************************************************** 
	XCOPY	RELREC,W0,W1,BIN2,W1 
	MOVE	BIN1,NOFREE 
	MOVE	BIN6,W0	INDEX 
	MOVE	BIN8,W0	COUNTER TO MATCH - FS-IND.
EXT860
	ADD	BIN6,W1
	SUB	BIN1,W8	8 RECORDS
	BN	EXT870
	MOVE	FF(BIN6),=X'FF' 
	CBE	BIN1,W0,EXT880 
	B	EXT860 
EXT870
	ADD	BIN1,W8
	CBE	BIN1,W0,EXT882 
	MOVE	FF(BIN6),HEXTAB(BIN1) 
EXT880
	ADD	BIN6,W1
	CBG	BIN6,=W'240',EXT885
EXT882
	MOVE	FF(BIN6),=X'00' 
	B	EXT880 
	EJECT
******************************
*  WRITE FREE-SPACE RECORDS  *
******************************
EXT885
	CALL	WRITDK,DISK,FILECODE(W3),RBUF,SECLEN,RECNUM,RETCOD
	BNOK	EXT990
	SUB	BIN4,W1
	BZ	EXT890	IF LAST RECORD 
	CALL	BINBCD,FRSTN1,FRSTN2,BCD13A 
	ADD	BCD13A,BCD5A 
	CALL	BCDBIN,BCD13A,FRSTN1,FRSTN2 
	ADD	BIN2,W1	RELREC 
	CALL	BINBCD,LNEXT1,LNEXT2,BCD13A 
	ADD	BCD13A,=D'+1'
	CALL	BCDBIN,BCD13A,LNEXT1,LNEXT2 
	ADD	RECNUM,=D'+1'
	CBNE	BIN4,W1,EXT850
	MOVE	LNEXT1,W0 
	MOVE	LNEXT2,W0	LAST RECORD 
	MOVE	NOFREE,BIN5 
	B	EXT850 
EXT890
	PERF	CLOFIL,W3 
	CALL	BINBCD,FFSNR(W1),FFSNR(W2),RECNUM 
	CALL	READDK,DISK,FILECODE(W1),RBUF,SECLEN,RECNUM,RETCOD
	BNOK	EXT995
	ADD	NORECO,=D'+1'
	CALL	BCDBIN,NORECO,LNEXT1,LNEXT2 
	CALL	WRITDK,DISK,FILECODE(W1),RBUF,SECLEN,RECNUM,RETCOD
	BNOK	EXT995
	PERF	CLOFIL,W1 
	MOVE	BIN5,W0	NO. OF EXTENTS
	MOVE	BIN1,W0	SECTOR NO.
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ VOLUME-LABEL
	BNOK	EXT750
	XCOPY	BIN1,W0,W2,SYSBUF,W10	FSAT BASE
	MOVE	DKBIN2,=W'46'	FSAT-LENGTH DISPLACEMENT
	XCOPY	DKBIN1,W0,W2,SYSBUF,DKBIN2	FSAT-LENGTH 
	XCOPY	DKBIN2,W0,W2,SYSBUF,W6	ADM-LENGTH
	XCOPY	DKBIN3,W0,W2,SYSBUF,W12	VTOC-REC-LEGTH 
	ADD	DKBIN3,W1	OCCUPYED BYTE
	SUB	DKBIN2,DKBIN1	GET NO. OF VTOC RECS 
	ADD	BIN1,DKBIN1	START OF VTOC
EXT900
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ ONESECTOR 
	BNOK	EXT750
	MOVE	BIN4,W0	DISP TO FILENAME
EXT905
	MOVE BIN3,W0 
	MATCH	COPFIL,BIN3,W8,SYSBUF,BIN4,W8
	BOK	EXT915 
EXT910
	ADD	BIN4,DKBIN3	GET NEXT VTOC ENTRY
	CBL	BIN4,=W'240',EXT905	ALL ENTRIES HANDLED
	SUB	DKBIN2,W1	MORE VTOC RECORDS
	BZ	EXT925
	ADD	BIN1,W1	READ NEXT VTOC RECORD
	B	EXT900 
EXT915
	CBNE	BIN5,W0,EXT920	NO. OF EXTENTS 
	MOVE	BIN12,=W'40'	NO. OF EXTENTS 
	ADD	BIN12,BIN4	DISP IN VTOC-RECORD 
	XCOPY	BIN5,W1,W1,SYSBUF,BIN12
	MOVE	BIN6,BIN5	SAVE NO. OF EXTENTS 
	CBNE	BIN5,W0,EXT920	AT LEAST ONE ENTRY 
	MOVE	BIN5,=X'7FFF' 
EXT920
	COPY	SYSBUF,BIN4,W8,FILNAM,W0
	ADD	BIN4,W10 
	ADD	BIN7,W1
	XCOPY	SYSBUF,BIN4,W2,BIN7,W0	EXTENT NO. FEN
	SUB	BIN4,W10 
	CALL	WRSECT,DISK,BIN1,SYSBUF,RETCOD	WRITE THE SECTOR 
	BNOK	EXT750
	SUB	BIN5,W1	MORE EXTENTS 
	BP	EXT910	YES
EXT925
	MOVE	BIN5,W0	NO. OF EXTENTS
	MOVE	BIN1,W0	SECTOR NO.
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ VOLUME-LABEL
	BNOK	EXT750
	XCOPY	BIN1,W0,W2,SYSBUF,W10	FSAT BASE
	MOVE	DKBIN2,=W'46'	FSAT-LENGTH DISPLACEMENT
	XCOPY	DKBIN1,W0,W2,SYSBUF,DKBIN2	FSAT-LENGTH 
	XCOPY	DKBIN2,W0,W2,SYSBUF,W6	ADM-LENGTH
	XCOPY	DKBIN3,W0,W2,SYSBUF,W12	VTOC-REC-LEGTH 
	ADD	DKBIN3,W1	OCCUPYED BYTE
	SUB	DKBIN2,DKBIN1	GET NO. OF VTOC RECS 
	ADD	BIN1,DKBIN1	START OF VTOC
EXT930
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ ONESECTOR 
	BNOK	EXT750
	MOVE	BIN4,W0	DISP TO FILENAME
EXT940
	MOVE BIN3,W0 
	MATCH	FILNAM,BIN3,W8,SYSBUF,BIN4,W8
	BOK	EXT970 
EXT950
	ADD	BIN4,DKBIN3	GET NEXT VTOC ENTRY
	CBL	BIN4,=W'240',EXT940	ALL ENTRIES HANDLED
	SUB	DKBIN2,W1	MORE VTOC RECORDS
	BZ	EXT975
	ADD	BIN1,W1	READ NEXT VTOC RECORD
	B	EXT930 
EXT970
	MOVE	BIN12,=W'40'	NO. OF EXTENTS 
	ADD	BIN12,BIN4	DISP IN VTOC-RECORD 
	XCOPY	BIN5,W1,W1,SYSBUF,BIN12
	CBE	BIN5,W0,EXT975	AT LEAST ONE ENTRY
	ADD	BIN5,BIN6
	XCOPY	SYSBUF,BIN12,W1,BIN5,W1
	CALL	WRSECT,DISK,BIN1,SYSBUF,RETCOD	WRITE THE SECTOR 
	BNOK	EXT750
EXT975
	PERF	HALT
	B	RETUR
EXT990
	PERF	CLOFIL,W3 
EXT995
	PERF	CLOFIL,W1 
	B	EXT750 
RETUR 
	TBF	BOOL4,RETUR2	BRANCH IF NEVER CHANGED! (830927) 
	PERF	CHVNAM,VOLNAM,FCOD	CHANGE NAME TO ORIGIN
RETUR2
	CLEAR	BOOL4	SETOFF "VOLNAM CHANGED" (830927) 
	RET
	PEND 
	EJECT
* 
* 
****************
*  CLOSE FILE  *
****************
CLOFIL	PROC	FC
	PBIN	FC
	CALL CLOSEF,DISK,FILECODE(FC),SYSBUF,W0,DEBINW4
	RET
	PEND 
	EJECT
*********************** 
* GET NO.OF USED      * 
*********************** 
WUEXT1	PROC 
	MOVE	DEBINW4,W0
	MOVE	RETCOD,W0 
	MOVE	RECNUM,=D'00' 
	PERF	CHVNAM,VOLEX1,FCOD	CHANGE NAME TO TEMP. (111....1)
	BNOK	EXT755
	SET	BOOL4	INDICATE VOLNAM CHANGED (830927) 
	CALL OPENF,DISK,FILECODE(W1),SYSBUF,FILNAM,VOLEX1,RETCOD 
	BOK	EXT120 
	MOVE	DEBINW4,W9	SYSTEMFILE NOT CREATED 
	RET
EXT115
	MOVE	DEBINW4,W18	DISC NOT OPERABLE 
	RET
EXT120
	CALL CLOSEF,DISK,FILECODE(W1),RBUF,RECNUM,RETCOD 
	MOVE	BCDI21(W2),=D'00'	USED FOR NO. OF RECS
	MOVE	BIN5,W0	NO. OF EXTENTS
	MOVE	BIN1,W0	SECTOR NO.
	MOVE	BIN7,W0	EXTENT NUMBER 
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ VOLUME-LABEL
	BNOK	EXT115
	XCOPY	BIN1,W0,W2,SYSBUF,W10	FSAT BASE
	MOVE	DKBIN2,=W'46'	FSAT-LENGTH DISPLACEMENT
	XCOPY	DKBIN1,W0,W2,SYSBUF,DKBIN2	FSAT-LENGTH 
	XCOPY	DKBIN2,W0,W2,SYSBUF,W6	ADM-LENGTH
	XCOPY	DKBIN3,W0,W2,SYSBUF,W12	VTOC-REC-LEGTH 
	ADD	DKBIN3,W1	OCCUPYED BYTE
	SUB	DKBIN2,DKBIN1	GET NO. OF VTOC RECS 
	ADD	BIN1,DKBIN1	START OF VTOC
EXT130
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ ONESECTOR 
	BNOK	EXT115
	MOVE	BIN4,W0	DISP TO FILENAME
EXT140
	MOVE BIN3,W0 
	MATCH	FILNAM,BIN3,W8,SYSBUF,BIN4,W8
	BOK	EXT170 
EXT150
	ADD	BIN4,DKBIN3	GET NEXT VTOC ENTRY
	CBL	BIN4,=W'240',EXT140	ALL ENTRIES HANDLED
	SUB	DKBIN2,W1	MORE VTOC RECORDS
	BNZ	EXT160 
	CBNE	BCDI21(W2),=D'00',EXT180	FILE HANDLED 
	MOVE	DEBINW4,W12 
	RET
EXT160
	ADD	BIN1,W1	READ NEXT VTOC RECORD
	B	EXT130 
EXT170
	CBNE	BIN5,W0,EXT175	NO. OF EXTENTS 
	MOVE	BIN12,=W'40'	NO. OF EXTENTS 
	ADD	BIN12,BIN4	DISP IN VTOC-RECORD 
	XCOPY	BIN5,W1,W1,SYSBUF,BIN12
	CBNE	BIN5,W0,EXT175	AT LEAST ONE ENTRY 
	MOVE	BIN5,=X'7FFF' 
EXT175
	MOVE	BIN2,W10	FILE EXT NO  FEN 
	ADD	BIN2,BIN4	DISP IN VTOC-RECORD
	XCOPY	BIN6,W0,W2,SYSBUF,BIN2 
	CBL	BIN6,BIN7,EXT177 
	MOVE	BIN7,BIN6 
EXT177
	ADD	BIN2,W2
	XCOPY	BIN10,W0,W2,SYSBUF,BIN2	FILE EXTENT 1
	ADD	BIN2,W2
	XCOPY	BIN11,W0,W2,SYSBUF,BIN2	FILE EXTENT 2
	CALL	BINBCD,BIN10,BIN11,BCDI21(W1) 
	ADD	BCDI21(W2),BCDI21(W1)
	SUB	BIN5,W1	MORE EXTENTS 
	BP	EXT150
EXT180
	MOVE	NORECO,BCDI21(W2) 
	RET
	PEND 
	EJECT
**************************
* GET NO. OF FREE      *
************************
WUEXT2	PROC 
	MOVE	DEBINW4,W0
	MOVE	RETCOD,W0 
	CALL OPENF,DISK,FILECODE(W1),SYSBUF,FILNAM,VOLEX1,RETCOD 
	BNOK	EXT220
EXT210
	CALL CLOSEF,DISK,FILECODE(W1),RBUF,RECNUM,RETCOD 
	MOVE	BCDI21(W2),=D'00'	NUMBER OF FREE  SECTORS 
	MOVE	BIN1,W0	SECTOR NO.
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ VOLUME-LABEL
	BNOK	EXT220
	XCOPY	BIN1,W0,W2,SYSBUF,W10	FSAT BASE
	MOVE	DKBIN2,=W'46'	FSAT-LENGTH DISPLACEMENT
	XCOPY	DKBIN1,W0,W2,SYSBUF,DKBIN2	FSAT-LENGTH 
EXT215
	CALL	RDSECT,DISK,BIN1,SYSBUF,RETCOD	READ ONESECTOR 
	BOK	EXT230 
EXT220
	MOVE	DEBINW4,W22 
	RET
EXT230
	MOVE	BIN6,W1 
	MOVE	BIN5,W2 
	MOVE	BIN3,W0 
EXT240
	XCOPY	BIN10,W0,W2,SYSBUF,BIN3	1:ST WORD IN NO OF FS REC
	XCOPY	BIN11,W0,W2,SYSBUF,BIN5	2:ST WORD IN NO OF FS REC
 CALL BINBCD,BIN10,BIN11,BCDI21(W1) 
 ADD BCDI21(W2),BCDI21(W1)
	CBE	BIN6,=W'32',EXT250	JUMP IF ALL ENTRIES HANDLED 
	ADD	BIN5,W8
	ADD	BIN6,W1	HANDLE NEXT ENTRY IN 
	ADD	BIN3,W8	CURRENT FSAT-RECORD
	B	EXT240 
EXT250
	SUB	DKBIN1,W1	FSAT-LENGTH
	BZ	EXT260	JUMP IF ALL FSAT-RECORDS 
			HANDLED
	ADD	BIN1,W1	INCREMENT RECORDNUMBER TO
	B	EXT215	NEXT FSAT-RECORD
EXT260
	RET
	PEND 
	EJECT
FEXT	FRMT 
	FSL
	FNL
	FATTR	.HIGH
	FATTR	.INV 
	FCOPY	=C'EXTEND WSM SYSTEM FILE' 
	FLINK	FFILE
	FMEND
* 
FFILE	FRMT
	FNL
	FATTR	.HIGH
	FCOPY	=C'UNIT:'
	FKI	6,MINL=3,MAXL=3,ME,ALPHA,NEOI,APPL=5 
	FCOPY	INUNIT 
	FATTR	.HIGH
	FTAB	12
	FCOPY	=C'VOLUME-NAME:' 
	FINP	25
	FCOPY	VOLNAM 
	FNL
	FATTR	.HIGH
	FCOPY	=C'FILENAME:'
	FKI	10,MINL=1,MAXL=8,ME,REWRT,APPL=14,ALPHA,NEOI 
	FCOPY	FILNAM 
	FNL
	FNL
	FATTR	.HIGH
	FATTR	.INV 
	FCOPY	=C'EXISTING' 
	FTAB	10
	FCOPY	=C'FILE' 
	FNL
	FATTR	.HIGH
	FCOPY	=C'NO.'
	FTAB	5 
	FCOPY	=C'OF RECORDS:'
	FATTR	.HIGH
	FINP	17
	FMEL	'TTTTX',NORECO
	FNL
	FNL
	FATTR	.HIGH
	FATTR	.INV 
	FCOPY	=C'EXTEND '
	FCOPY	=C'FILE' 
	FCOPY	=C' WITH'
	FNL
	FATTR	.HIGH
	FCOPY	=C'NO.'
	FTAB	5 
	FCOPY	=C'OF RECORDS:'
	FKI	17,MINL=1,MAXL=5,ME,NEOI,REWRT,APPL=15	NO. OF RECORDS
	FMEL	'TTTTTTX',NOREC 
	FLINK	FHEX 
	FMEND
* 
FHEX	FRMT 
	FNL
	FKI	1,MINL=0,MAXL=0
	FCOPY	HEX00
	FMEND
* 
	END

Full view