OSI/AS Management Programming Manual
Management Program Example
Sample Programs
056785 Tandem Computers Incorporated C–7
 --
 -- The buffer length is the second word in the SPI buffer.
 --
 Spi^Buffer [1] := $min ( Spi^Buffer [1],
 zOsi^Val^Min^BufLen );
 Init^Buffer := zSpi^Val^Initial^Buffer;
 SSErr := SSPutTkn ( Spi^Buffer,
 zSpi^Tkn^Initial^Position,
 Init^Buffer );
 IF (SSErr <> zSpi^Err^OK) THEN CALL Debug;
END; -- PROC Reset^SpiBuf
? PAGE "Send command to OSI/AS Subsystem"
-------------------------------------------------------------
--
-- SEND^SPICMD - Send command to OSI/AS through SCP.
--
-- GLOBALS: SCP^fn
-- Spi^Buffer
-- FS^Err
-- SSErr
-- INPUT: None
-- OUTPUT: None
--
-------------------------------------------------------------
PROC Send^SpiCmd;
BEGIN
 INT Write^Count;
 INT Count^Read;
 SSErr := SSGetTkn( Spi^Buffer,
 zSpi^Tkn^UsedLen,
 Write^Count );
 IF (SSErr <> zSpi^Err^OK) THEN CALL Debug;
 CALL WriteRead( SCP^fn,
 Spi^Buffer,
 Write^Count,
 zOsi^Val^Min^Buflen,
 Count^Read );
 IF <> THEN -- if error occured during WRITEREAD
 BEGIN
 CALL FileInfo( SCP^fn, FS^Error );
 CALL Debug;
 END
 ELSE
 FS^Error := 0;
END; -- PROC Send^SpiCmd
? PAGE "Get^OsiM^Name"
-------------------------------------------------------------
--
-- GET^OSIM^NAME - Get OSI manager name from terminal.










