Inspect Manual
High-Level Inspect Commands
Inspect Manual—429164-006
6-206
Related Command
Related Command
ICODE
Example
1. This example illustrates the SOURCE ICODE command.
-PROGRAM-SOURCE ICODE AT #open^file FOR 7 statements
#398 INT PROC open^file( fcb, fname^int );
ADDS +013 LADR L+020 LLS 01
PUSH 700 ADDS +025
#399 STRING .EXT fcb;
#400 INT .fname^int;
#401 BEGIN
#402 STRING buf[ 0:10 ];
#403 INT dtype;
#404 INT error;
#405 INT error^subcode;
#406 INT file^code;
#407 INT fn;
#408 STRING .fname^ext[ 0:EXT^FNAME^SIZE ];
#409 INT fname^len;
#410 INT reclen;
#411 INT version;
#412
#413 fname^len := FNAMECOLLAPSE( fname^int, fname^ext );
LADR L-003,I LADR L+014,I PUSH 711
XCAL 121 STOR L+015
#414 CALL DEVICEINFO( fname^int, dtype, reclen );
LADR L-003,I LADR L+007 LADR L+016
PUSH 722 XCAL 043
#415 IF dtype.DEVTYPE^TYPE <> DEVTYPE^DISC
#416 THEN
LOAD L+007 LRS 06 ANRI +077
CMPI +003 BEQL +010
#417 CALL ER^Write( ERR^NOT^DISC^FILE, 0, ,
#417.1 fname^ext, fname^len )
LDI +101 ZERD LADR L+014,I
LOAD L+015 ZERD LDI +154
PUSH 777 XCAL 057
#418 fn := -1; LDI -001 STOR L+013
#419 CALL OPEN( fname^int, fn, OPEN^READONLY );
LADR L-003,I LADR L+013 LDLI +004
PUSH 722 ADDS +006 LDLI +340
LDI -011 PUSH 711 XCAL 222