4.3BSD/usr/contrib/icon/samples/recogn.u1
proc main
local 0,000020,line
local 1,000000,read
local 2,000000,recogn
local 3,000000,s
local 4,000000,write
con 0,010000,8,141,143,143,145,160,164,145,144
con 1,010000,8,162,145,152,145,143,164,145,144
declend
file recogn.icn
line 8
mark L1
lab L2
line 10
mark L0
pnull
var 0
var 1
pnull
invoke 1
asgn
unmark 1
mark L2
mark L5
var 2
var 3
var 0
line 11
invoke 2
unmark 1
var 4
str 0
invoke 1
goto L6
lab L5
var 4
str 1
invoke 1
lab L6
lab L3
unmark 1
goto L2
lab L4
unmark 1
lab L1
pnull
line 12
pfail
end
proc recogn
local 0,001000,goal
local 1,001000,text
local 2,000000,pos
con 0,002000,0
declend
file recogn.icn
line 14
mark L1
mark L2
var 1
line 15
bscan
var 0
pnull
invoke 1
pop
var 2
int 0
invoke 1
escan
pret
lab L2
line 15
pfail
unmark 1
lab L1
pnull
line 16
pfail
end
proc s
local 0,000000,s
local 1,000000,t
con 0,010000,1,141
con 1,010000,1,142
con 2,010000,1,143
declend
file recogn.icn
line 20
mark L1
mark L0
mark L2
pnull
pnull
str 0
line 21
tabmat
var 0
pnull
invoke 1
cat
esusp
goto L3
lab L2
mark L4
pnull
var 1
pnull
invoke 1
pnull
str 1
tabmat
cat
esusp
goto L5
lab L4
pnull
str 2
tabmat
lab L5
lab L3
psusp
efail
unmark 1
lab L1
pnull
line 22
pfail
end
proc t
local 0,000000,s
con 0,010000,1,144
con 1,010000,1,145
con 2,010000,1,146
declend
file recogn.icn
line 26
mark L1
mark L0
mark L2
pnull
pnull
pnull
str 0
line 27
tabmat
var 0
pnull
invoke 1
cat
pnull
str 0
tabmat
cat
esusp
goto L3
lab L2
mark L4
pnull
str 1
tabmat
esusp
goto L5
lab L4
pnull
str 2
tabmat
lab L5
lab L3
psusp
efail
unmark 1
lab L1
pnull
line 28
pfail
end