{ Contents: procedure ccl(cclstring,error) exit and execute the specified ccl command 5/19/87 - EFM } {$nodebug} procedure ccl(ccl_command : packed array [low..high:integer] of char; var error : integer); type word = 0..65535; var xrbinteger origin 442B : packed array [0..7B] of integer; firqbsignedbyte0 origin 402B : -128..127; i,ccl_command_len : integer; begin error := 0; for i := 0 to 7 do xrbinteger[i] := 0; { zero the xrb } if low = 0 then ccl_command_len := ord(ccl_command[0]) else ccl_command_len := high; xrbinteger[0B] := ccl_command_len; xrbinteger[1B] := ccl_command_len; if low = 0 then xrbinteger[2B] := succ(loophole(word,ref(ccl_command))) { addr of buffer } else xrbinteger[2B] := loophole(word,ref(ccl_command)); { addr of buffer } emt(255); emt(62B); { .CCL } error := firqbsignedbyte0 end; { ccl } {$debug}