Guardian Programmer's Guide

Table Of Contents
Communicating With Magnetic Tape
Guardian Programmer’s Guide 421922-014
12 - 59
Writing the Program
!------------------------------------------------------------
! Procedure to open a labeled tape file by opening the
! appropriate CLASS TAPE DEFINE.
!------------------------------------------------------------
PROC OPEN^TAPE^FILE;
BEGIN
INT ERROR;
STRING .TAPE^NAME[0:MAXFLEN - 1];
! Select the CLASS TAPE DEFINE for the requested function:
CASE CMD OF
BEGIN
"a", "A" -> TAPE^NAME ':=' "=APPEND^TAPE" -> @S^PTR;
"c", "C" -> TAPE^NAME ':=' "=CREATE^TAPE" -> @S^PTR;
"r", "R" -> TAPE^NAME ':=' "=READ^TAPE" -> @S^PTR;
OTHERWISE -> ;
END;
! Open the selected DEFINE with exclusive mode:
ERROR := FILE_OPEN_(
TAPE^NAME:@S^PTR '-' @TAPE^NAME,TAPENUM);
IF ERROR <> 0 THEN
CALL FILE^ERRORS^NAME(
TAPE^NAME:@S^PTR '-' @TAPE^NAME,ERROR);
! Set buffered mode:
CALL SETMODE(TAPENUM,99,1);
IF <> THEN CALL FILE^ERRORS(TAPENUM);
END;