IDENT GETTPE TITLE G E T T P E MACRO L,A A BSS 0 ENDM ORG 0 BSSZ 2 DATA 0LGETTPE,0LCLASS DATA 2 DATA 20 VFD 60/ENDWD * FIELD LENGTH VFD 60/GETFILE *ENTRY POINT DATA 50 *CLIST SIZE VFD 60/GETFILE * SCRATCH FILE SIZE DATA 0,0 * SCRATCH FILE NAME DATA 0,0 * FILE ADDRESS, CM ADDRESS VFD 60/GETFILE WORD COUNT DATA 0 * READ WRITE ENTRY DATA 0LGETTPE DATA 0LS VFD 60/GETFILE,60/GETFILE * FILE ADDRESS, CM ADDRESS VFD 60/ENDWD-GETFILE * WORD COUNT DATA 1 * READ ONLY DATA -1 * END OF MAP SPECIFIERS DATA 0LOPERCL,0LOPERATE DATA 0 C.BEAD EQU 1 C.RFILE EQU 3 C.WFILE EQU 4 C.SENDE EQU 5 C.GETE EQU 6 C.OPER EQU 14 C.TFILE EQU 20 C.NEWFIL EQU 21 C.TREQ EQU 22 C.TRSP EQU 23 ORG 100B RFILEIO L VFD 60/C.RFILE,60/C.TFILE BSSZ 3 WFILEIO L VFD 60/C.WFILE,60/C.NEWFIL BSSZ 3 SENDV L VFD 60/C.SENDE,60/C.TREQ BSSZ 2 GETV L VFD 60/C.GETE,60/C.TRSP MKBLK L VFD 1/1,29/=XDF:CBLK,30/C.OPER,60/C.NEWFIL BSSZ 1 DATA 1 . WORD COUNT FOR DISK SYSSTEM MOVECAP L VFD 1/1,29/=XEC:CIN,30/C.OPER,60/C.NEWFIL FROMC L BSSZ 1 TOC BSSZ 1 DETACH VFD 1/1,29/=XDF:DTCH,30/C.OPER,60/C.NEWFIL DATA -1,1 LASTBANP DATA 0 LASTBANW DATA 0 SDEVIC DATA 0 RETURN VFD 1/1,29/=XEC:RTRN,30/C.OPER TAPECMMD L VFD 12/0,12/1,12/1001B,12/0,12/101B CMBUFF BSSZ 1000B ERRBIT BSSZ 1 DIRECT BSSZ 200 DPTR BSSZ 1 LEN BSSZ 1 ENTRY BSSZ 4 SENDV MACRO EVENT LOCAL TRY TRY BSS 0 SA2 ERRBIT IF -REG,EVENT SX6 EVENT ELSE BX6 EVENT ENDIF BX6 X6+X2 SA6 SENDV+2 XJ SENDV XJ GETV MX6 1 BX2 X6*X7 SA1 ERRBIT BX6 X2-X1 SA6 A1 LX7 47 NG X7,TRY SENSE EXTERNAL REJECT LX7 60-47 ENDM XJ MACRO WHERE,OFF + VFD 12/0130B,18/WHERE,30/OFF ENDM FREAD MACRO FA,CNT,WA SX6 FA SX7 WA SA6 RFILEIO+2 SA7 RFILEIO+3 SX6 CNT SA6 RFILEIO+4 XJ RFILEIO,1 JP RCRASH ENDM FWRITE MACRO FA,CNT,WA SX6 FA SX7 WA SA6 WFILEIO+2 SA7 WFILEIO+3 SX6 CNT SA6 WFILEIO+4 SB7 *+1 XJ WFILEIO,1 JP NEWBLK ENDM MOVE MACRO FROM,TO SX6 FROM SX7 TO SA6 FROMC SA7 TOC XJ MOVECAP ENDM GET MACRO A,B IF -REG,A,2 SA1 A. SA2 B. SB6 B0 SB1 ENTRY SB7 C.NEWFIL XJ CALLBEAD ENDM PUT MACRO A,B SB6 1 SB1 ENTRY SB7 0 XJ CALLBEAD ENDM OPEN MACRO XJ OPEN,1000003B EQ -1 - VFD 30/*+1,60/0,30/1,30/C.NEWFIL ENDM CLOSE MACRO XJ CLOSE ENDM EJECT GETFILE L GET GETFILE,S PUT OPEN XJ READSELF CLOSE GET SELF,OPER PUT MOVE 2,C.TFILE FREAD 1,1,SDEVIC SA1 SDEVIC MOVE X1,C.TFILE MOVE X1+1,C.TREQ MOVE X1+2,C.TRSP TRYREW SENDV 10B NG X7,REWOK IR X7,REWOK MX6 1 SA6 ERRBIT JP TRYREW REWOK SENDV 3 SENDV 1 AX7 24 MX0 60-12 BX7 -X0*X7 SX6 2 BX6 X6*X7 NZ X6,REWOK SX6 1 BX6 X6*X7 ZR X6,REWOK SX5 2005B CLEAR WRITE RING BIT BX7 -X5*X7 SX7 X7-1120B NZ X7,CRASH SA1 TAPECMMD SENDV X1 * READ TAPE FREAD 1,200,DIRECT * READ IN FILE NAMES SA1 TAPECMMD SENDV X1 * READ EOF LX7 24+11-3 PL X7,TPERR SX6 0 SA6 DPTR GOLOOP SA1 DPTR SX7 X1+2 SA7 A1 SA1 X1+DIRECT SA2 A1+1 BX2 X2-X2 . ALL FILES LOADED INTO TEMP DIRECT. ZR X1,OKDNE GET X1,X2 OPEN SA1 DPTR SA1 X1-2+DIRECT BX6 X1 SA6 ENTRY SA4 ENTRY+3 MX0 60-30 BX5 X0*X4 BX4 -X0*X4 * NEXT FILE ADDRESS TO GET BLOCK AX5 30 SX3 B0 * ZERO FILE ADDRESS COPYL L SA1 TAPECMMD SENDV X1 NG X7,TESTEOF IR X7,COPYGD MX0 1 BX1 X1-X0 JP COPYL * RETRY WITH ERROR BIT TOGGLED TESTEOF L LX7 24+11-3 PL X7,TPERR JP OKFIN COPYGD L FREAD 0,1,LEN SA2 LEN SX6 5 PX6 X6 NX6 X6 PX2 X2 FX2 X2/X6 UX2 X2,B7 LX2 X2,B7 ZR X2,COPYL FREAD 1,X2,CMBUFF FWRITE X3,X2,CMBUFF IX3 X3+X2 JP COPYL NEWBLK L BX6 X4 IX4 X4+X5 SA6 MKBLK+2 XJ MKBLK IX6 X6-X5 BX7 X5 SA5 ENTRY+3 SX5 X5 IX6 X6-X5 . LAST BLOCK IN FILE BX5 X7 NG X6,ZZZ SA6 DETACH+2 XJ DETACH ZZZ BSS 0 JP B7 OKFIN L SA1 ENTRY+3 MX0 30 BX6 X0*X1 BX6 X6+X4 SA6 A1 PUT CLOSE JP GOLOOP OKDNE SB6 5 SB1 OKMESS XJ CALLBEAD XJ RETURN TPERR SB6 5 SB1 BADMESS XJ CALLBEAD XJ RETURN ASCII XTEXT CRASH SB6 5 SB1 CRMSG XJ CALLBEAD XJ RETURN CRMSG ASCII (TAPE NOT READIED PROPERLY) BADMESS ASCII (FILE LOAD ABORTED .. TAPE DRIVE ERROR) OKMESS ASCII (TAPE LOADED) SELF. DATA 0LMASTER . MASTER CLIST NAME OPER. DATA 0LOPERATE CALLBEAD VFD 60/C.BEAD READSELF VFD 60/C.RFILE,60/C.NEWFIL VFD 60/0,60/0,60/ENTRY OPEN VFD 1/1,29/=XDF:OPRW,30/C.OPER,60/C.NEWFIL CLOSE VFD 1/1,29/=XDF:CLO,30/C.OPER,60/C.NEWFIL FINALBAN VFD 3/6,3/0,18/741033B,36/0 GETFILE. DATA 0LGETTPE S. DATA 0LS RCRASH DATA 0 * ECS SYSTEM ERROR ENDWD BSS 0 END