PAM Programming Manual
Link-Level Programming Examples
PAM Programming Manual—142482
B-24
Procedures
Procedures
The application program must also define the following procedures:
?SECTION Procedures
?PAGE ’PROCEDURE: AbEnd_’
{------------------------------------------------------------------
 PROCEDURE: AbEnd_
------------------------------------------------------------------}
 PROCEDURE AbEnd_;
 BEGIN
?IF SEND
 WriteLn ( Output, ’Send Failed’:14 );
?ELSE
 WriteLn ( Output, ’Receive Failed’:14,
 ’Curr. User Data Size:’,current_user_data_size_b,
 ’Loop Count: ’, loop_cnt );
?ENDIF
 AbEnd;
 END;
?PAGE ’L2 Service Access Point Exercise Program: Procedures’
{------------------------------------------------------------------
 PROC: Initialize
------------------------------------------------------------------}
 PROCEDURE Initialize;
 VAR
 startup_msg : ARRAY[ 0..199 ] OF BYTE;
 startup_msg_addr : EXTADDR;
 startup_msg_size_B : INTEGER;
 Hex_value : INTEGER;
 Hex_digit_ndx : INTEGER;
 ndx : INTEGER;
 ndx1 : INTEGER;
 ndx2 : INTEGER;
 buffer_lst_ndx : LONGINT;
{------------------------------------------------------------------
 FUNCTION: Scan_Blanks 
------------------------------------------------------------------}
 FUNCTION Scan_Blanks ( scan_ndx : INTEGER ) : INTEGER;
 BEGIN
 WHILE ( scan_ndx < startup_msg_size_b ) AND
 ( startup_msg[ scan_ndx ] = Ord (’ ’) ) DO
 scan_ndx := ( scan_ndx + 1 );
 Scan_Blanks := scan_ndx;
 END;
{------------------------------------------------------------------
 FUNCTION: Get_Int
------------------------------------------------------------------}
 FUNCTION Get_Int ( start_ndx : INTEGER;
 VAR end_ndx : INTEGER;
 base : INTEGER;
 VAR result : INTEGER;










