Exchange/SNA Manual

Console Program Example
Example Programs
104700 Tandem Computers Incorporated E–17
Page 6 [1] $RJE.EXCHAPPL.CONSRC 1991-05-29 13:38:20
EXCHANGE/SNA CONSOLE APPLICATION EXAMPLE
304. 000000 0 0 !****************************************************************************!
305. 000000 0 0 ! PROCEDURE PROMPT !
306. 000000 0 0 ! This procedure writes a prompt to the terminal and reads whatever the !
307. 000000 0 0 ! the user enters. !
308. 000000 0 0 !****************************************************************************!
309. 000000 0 0
310. 000000 0 0 PROC prompt;
311. 000000 1 0
312. 000000 1 0 BEGIN
313. 000000 1 1 ibuf^term := cr; ! Carriage return & null !
314. 000002 1 1 sbuf^term[1] ':=' ["PLEASE ENTER A CONSOLE COMMAND: "] -> @sp^term;
315. 000014 1 1 prompt^cnt := term^out^cnt := @sp^term '-' @sbuf^term;
316. 000021 1 1 CALL WRITEREAD (term^fnum, ibuf^term, term^out^cnt, term^in^cnt);
320. 000032 1 1 IF <>
321. 000032 1 1 THEN
322. 000033 1 1 BEGIN
323. 000033 1 2 CALL FILEINFO (term^fnum, error);
325. 000044 1 2 sbuf^term ':=' ["PROMPT TO TERMINAL WRITEREAD FAILED--ERROR: "]
326. 000044 1 2 -> @sp^term;
327. 000055 1 2 term^out^cnt := @sp^term '-' @sbuf^term;
328. 000061 1 2 CALL NUMOUT (sbuf^term[term^out^cnt-3], error, 10, 3);
332. 000071 1 2 CALL display^error (ibuf^term, term^out^cnt);
334. 000075 1 2 END;
335. 000075 1 1 END;