GDSX Manual

User Exit Descriptions
Extended General Device Support (GDSX) Manual134303
9-11
USER^COMMANDS
flags := 1;
CALL ^open ( TRM1, t, flags );
IF <> THEN Call DEBUG; ! DO ERROR HANDLING
@buffer := GETLOCALPOOL (0 , 10);
buffer ':=' ["Takeover!>", 5 * [" "]];
CALL ^WRITE (t, buffer, writecnt);
IF <> THEN
BEGIN
CALL PUTLOCALPOOL (0,buffer);
Call DEBUG; ! DO ERROR HANDLING
RETURN;
END;
CALL ^Awaitio(t, @buffer, cnt);
IF <> THEN
BEGIN
CALL PUTLOCALPOOL (0,buffer);
Call DEBUG; ! DO ERROR HANDLING
END;
area ':=' buffer for 20; !copy data to user global area
!Note: buffer gotten with GETLOCALPOOL
!is checkpointed with ^checkpoint(2)
!if so desired (not done here).
! We checkpoint only user global variables with Q^CP!
t := Q^CP (area,10);
! CALL DO^CP is not necessary because after exiting
! USER^BACKUP a DO^CP is done automatically by backup task.
CALL PUTLOCALPOOL (0,buffer);
END;
USER^COMMANDS
This procedure is called from the monitor task when it receives an SPI command with an
unrecognized token from a TACL process or from an external management application
other than SCF. This procedure provides a way for you to define your own SPI
commands.
status returned value
INT:value
status := USER^COMMANDS ( iocb !
i
,file-error !
o
,spi-code ); !
o