BSD 4_3 development
authorCSRG <csrg@ucbvax.Berkeley.EDU>
Fri, 31 Aug 1984 06:42:07 +0000 (22:42 -0800)
committerCSRG <csrg@ucbvax.Berkeley.EDU>
Fri, 31 Aug 1984 06:42:07 +0000 (22:42 -0800)
Work on file usr/contrib/icon/port/distr/rsg.u2
Work on file usr/contrib/icon/port/distr/rsg.u1
Work on file usr/contrib/icon/port/distr/seqimage.u2
Work on file usr/contrib/icon/port/distr/seqimage.u1
Work on file usr/contrib/icon/port/distr/wordcount.u1
Work on file usr/contrib/icon/port/distr/wordcount.u2

Synthesized-from: CSRG/cd1/4.3

usr/contrib/icon/port/distr/rsg.u1 [new file with mode: 0644]
usr/contrib/icon/port/distr/rsg.u2 [new file with mode: 0644]
usr/contrib/icon/port/distr/seqimage.u1 [new file with mode: 0644]
usr/contrib/icon/port/distr/seqimage.u2 [new file with mode: 0644]
usr/contrib/icon/port/distr/wordcount.u1 [new file with mode: 0644]
usr/contrib/icon/port/distr/wordcount.u2 [new file with mode: 0644]

diff --git a/usr/contrib/icon/port/distr/rsg.u1 b/usr/contrib/icon/port/distr/rsg.u1
new file mode 100644 (file)
index 0000000..ce9208b
--- /dev/null
@@ -0,0 +1,1966 @@
+proc main
+       local   0,001000,x
+       local   1,000020,line
+       local   2,000020,plist
+       local   3,000000,define
+       local   4,000000,generate
+       local   5,000000,grammar
+       local   6,000000,source
+       local   7,000000,comment
+       local   8,000000,prompter
+       local   9,000000,error
+       local   10,000000,defs
+       local   11,000000,table
+       local   12,000000,charset
+       local   13,000000,i
+       local   14,000000,s
+       local   15,000000,tswitch
+       local   16,000000,limit
+       local   17,000000,integer
+       local   18,000000,stop
+       local   19,000000,ifile
+       local   20,000000,prompt
+       local   21,000000,in
+       local   22,000000,pop
+       local   23,000000,writes
+       local   24,000000,read
+       local   25,000000,close
+       con     0,010000,2,154,142
+       con     1,010000,1,074
+       con     2,010000,2,162,142
+       con     3,010000,1,076
+       con     4,010000,2,166,142
+       con     5,010000,1,174
+       con     6,010000,2,156,154
+       con     7,010000,1,012
+       con     8,010000,0
+       con     9,010000,6,046,154,143,141,163,145
+       con     10,010000,6,046,165,143,141,163,145
+       con     11,010000,6,046,144,151,147,151,164
+       con     12,020000,10,060,061,062,063,064,065,066,067,070,071
+       con     13,002000,0
+       con     14,002000,1
+       con     15,010000,2,055,164
+       con     16,010000,2,055,154
+       con     17,010000,18,165,163,141,147,145,072,040,133,055,164,135,040,133,055,154,040,156,135
+       con     18,010000,1,134
+       declend
+       file    rsg.icn
+       line    10
+       mark    L1
+       pnull
+       var     2
+       pnull
+       var     3
+       var     4
+       var     5
+       var     6
+       var     7
+       var     8
+       var     9
+       line    12
+       llist   7
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       pnull
+       var     10
+       var     11
+       pnull
+       line    13
+       invoke  1
+       asgn
+       unmark  1
+lab L2
+       mark    L3
+       pnull
+       pnull
+       var     10
+       str     0
+       line    14
+       subsc
+       pnull
+       pnull
+       str     1
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L3
+       mark    L4
+       pnull
+       pnull
+       var     10
+       str     2
+       line    15
+       subsc
+       pnull
+       pnull
+       str     3
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L4
+       mark    L5
+       pnull
+       pnull
+       var     10
+       str     4
+       line    16
+       subsc
+       pnull
+       pnull
+       str     5
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L5
+       mark    L6
+       pnull
+       pnull
+       var     10
+       str     6
+       line    17
+       subsc
+       pnull
+       pnull
+       str     7
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L6
+       mark    L7
+       pnull
+       pnull
+       var     10
+       str     8
+       line    18
+       subsc
+       pnull
+       pnull
+       str     8
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L7
+       mark    L8
+       pnull
+       pnull
+       var     10
+       str     9
+       line    19
+       subsc
+       pnull
+       pnull
+       var     12
+       keywd   10
+       invoke  1
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L8
+       mark    L9
+       pnull
+       pnull
+       var     10
+       str     10
+       line    20
+       subsc
+       pnull
+       pnull
+       var     12
+       keywd   21
+       invoke  1
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L9
+       mark    L10
+       pnull
+       pnull
+       var     10
+       str     11
+       line    21
+       subsc
+       pnull
+       pnull
+       var     12
+       cset    12
+       invoke  1
+       llist   1
+       llist   1
+       asgn
+       unmark  1
+lab L10
+       mark    L11
+       pnull
+       var     13
+       int     13
+       line    22
+       asgn
+       unmark  1
+lab L11
+       mark    L12
+lab L13
+       line    23
+       mark    L0
+       pnull
+       var     13
+       pnull
+       var     0
+       size
+       numlt
+       unmark  1
+       mark    L13
+       mark    L16
+       pnull
+       var     14
+       mark    L17
+       pnull
+       var     0
+       pnull
+       var     13
+       dup
+       int     14
+       line    24
+       plus
+       asgn
+       subsc
+       esusp
+       goto    L18
+lab L17
+       unmark  2
+       pnull
+       goto    L15
+lab L18
+       asgn
+       unmark  1
+lab L16
+       mark    L0
+       var     14
+       eret
+       mark    L20
+       ccase
+       str     15
+       line    26
+       eqv
+       unmark  1
+       pop
+       pnull
+       var     15
+       int     14
+       asgn
+       goto    L19
+lab L20
+       mark    L21
+       ccase
+       str     16
+       line    27
+       eqv
+       unmark  1
+       pop
+       pnull
+       var     16
+       mark    L22
+       var     17
+       pnull
+       var     0
+       pnull
+       var     13
+       dup
+       int     14
+       plus
+       asgn
+       subsc
+       invoke  1
+       esusp
+       goto    L23
+lab L22
+       var     18
+       str     17
+       invoke  1
+lab L23
+       asgn
+       goto    L19
+lab L21
+       pop
+       var     18
+       str     17
+       line    28
+       invoke  1
+lab L19
+lab L14
+       unmark  1
+       goto    L13
+lab L15
+       unmark  1
+lab L12
+       mark    L24
+       pnull
+       var     19
+       pnull
+       line    31
+       keywd   9
+       llist   1
+       asgn
+       unmark  1
+lab L24
+       mark    L25
+       pnull
+       var     20
+       str     8
+       line    32
+       asgn
+       unmark  1
+lab L25
+       mark    L26
+lab L27
+       line    33
+       mark    L0
+       pnull
+       var     21
+       var     22
+       var     19
+       invoke  1
+       asgn
+       unmark  1
+       mark    L27
+       mark    L30
+lab L31
+       line    34
+       mark    L31
+       mark    L34
+       mark    L0
+       pnull
+       pnull
+       var     20
+       line    35
+       size
+       int     13
+       numne
+       unmark  1
+       var     23
+       var     20
+       invoke  1
+       unmark  1
+lab L34
+       mark    L35
+       pnull
+       var     1
+       mark    L36
+       var     24
+       var     21
+       line    36
+       invoke  1
+       esusp
+       goto    L37
+lab L36
+       unmark  2
+       pnull
+       goto    L33
+lab L37
+       asgn
+       unmark  1
+lab L35
+       mark    L38
+lab L39
+       line    37
+       mark    L0
+       pnull
+       pnull
+       var     1
+       pnull
+       int     14
+       neg
+       subsc
+       str     18
+       lexeq
+       unmark  1
+       mark    L39
+       pnull
+       var     1
+       mark    L42
+       pnull
+       pnull
+       var     1
+       int     14
+       pnull
+       int     14
+       neg
+       sect
+       var     24
+       var     21
+       invoke  1
+       cat
+       esusp
+       goto    L43
+lab L42
+       unmark  1
+       pnull
+       goto    L41
+lab L43
+       asgn
+lab L40
+       unmark  1
+       goto    L39
+lab L41
+       unmark  1
+lab L38
+       pnull
+       var     2
+       line    38
+       bang
+       var     1
+       invoke  1
+lab L32
+       unmark  1
+       goto    L31
+lab L33
+       unmark  1
+lab L30
+       var     25
+       var     21
+       line    40
+       invoke  1
+lab L28
+       unmark  1
+       goto    L27
+lab L29
+       unmark  1
+lab L26
+       pnull
+       line    42
+       pfail
+       end
+proc comment
+       local   0,001000,line
+       con     0,002000,1
+       con     1,010000,1,043
+       declend
+       file    rsg.icn
+       line    44
+       mark    L1
+       mark    L0
+       pnull
+       pnull
+       var     0
+       int     0
+       line    45
+       subsc
+       str     1
+       lexeq
+       unmark  1
+       mark    L2
+       pnull
+       pret
+lab L2
+       line    45
+       pfail
+       unmark  1
+lab L1
+       pnull
+       line    46
+       pfail
+       end
+proc define
+       local   0,001000,line
+       local   1,000000,defs
+       local   2,000000,tab
+       local   3,000000,find
+       local   4,000000,move
+       local   5,000000,alts
+       con     0,010000,1,074
+       con     1,010000,4,076,072,072,075
+       con     2,002000,4
+       con     3,002000,0
+       declend
+       file    rsg.icn
+       line    48
+       mark    L1
+       mark    L2
+       var     0
+       line    49
+       bscan
+       pnull
+       pnull
+       var     1
+       pushn1
+       pnull
+       str     0
+       line    50
+       tabmat
+       var     2
+       var     3
+       str     1
+       invoke  1
+       invoke  1
+       invoke  2
+       subsc
+       pushn1
+       var     4
+       int     2
+       invoke  1
+       var     5
+       var     2
+       int     3
+       invoke  1
+       invoke  1
+       invoke  2
+       asgn
+       line    49
+       escan
+       pret
+lab L2
+       line    49
+       pfail
+       unmark  1
+lab L1
+       pnull
+       line    51
+       pfail
+       end
+proc defnon
+       local   0,001000,sym
+       local   1,000000,chars
+       local   2,000000,cset
+       local   3,000000,tab
+       local   4,000000,charset
+       local   5,000000,name
+       local   6,000000,query
+       local   7,000000,nonterm
+       con     0,010000,1,047
+       con     1,002000,1
+       con     2,010000,1,077
+       con     3,002000,0
+       declend
+       file    rsg.icn
+       line    53
+       mark    L1
+       mark    L2
+       var     0
+       line    54
+       bscan
+       pnull
+       str     0
+       line    55
+       tabmat
+       pop
+       pnull
+       var     1
+       var     2
+       var     3
+       pnull
+       int     1
+       line    56
+       neg
+       invoke  1
+       invoke  1
+       asgn
+       pop
+       pnull
+       str     0
+       line    57
+       tabmat
+       line    54
+       escan
+       unmark  1
+       mark    L4
+       var     4
+       var     1
+       line    59
+       invoke  1
+       pret
+lab L4
+       line    59
+       pfail
+       goto    L3
+lab L2
+       mark    L5
+       var     0
+       line    60
+       bscan
+       pnull
+       str     2
+       line    61
+       tabmat
+       pop
+       pnull
+       var     5
+       var     3
+       int     3
+       line    62
+       invoke  1
+       asgn
+       line    60
+       escan
+       unmark  1
+       mark    L7
+       var     6
+       var     5
+       line    64
+       invoke  1
+       pret
+lab L7
+       line    64
+       pfail
+       goto    L6
+lab L5
+       mark    L8
+       var     7
+       var     0
+       line    65
+       invoke  1
+       pret
+lab L8
+       line    65
+       pfail
+lab L6
+lab L3
+       unmark  1
+lab L1
+       pnull
+       line    66
+       pfail
+       end
+proc error
+       local   0,001000,line
+       local   1,000000,write
+       con     0,010000,21,052,052,052,040,145,162,162,157,156,145,157,165,163,040,154,151,156,145,072,040,040
+       declend
+       file    rsg.icn
+       line    68
+       mark    L1
+       var     1
+       str     0
+       var     0
+       line    69
+       invoke  2
+       unmark  1
+lab L1
+       mark    L2
+       mark    L3
+       pnull
+       line    70
+       pret
+lab L3
+       line    70
+       pfail
+       unmark  1
+lab L2
+       pnull
+       line    71
+       pfail
+       end
+proc gener
+       local   0,001000,goal
+       local   1,000020,pending
+       local   2,000020,genstr
+       local   3,000020,symbol
+       local   4,000000,nonterm
+       local   5,000000,get
+       local   6,000000,tswitch
+       local   7,000000,write
+       local   8,000000,symimage
+       local   9,000000,listimage
+       local   10,000000,type
+       local   11,000000,writes
+       local   12,000000,read
+       local   13,000000,defs
+       local   14,000000,limit
+       con     0,010000,0
+       con     1,010000,6,163,164,162,151,156,147
+       con     2,010000,7,143,150,141,162,163,145,164
+       con     3,010000,5,161,165,145,162,171
+       con     4,010000,22,052,052,052,040,163,165,160,160,154,171,040,163,164,162,151,156,147,040,146,157,162,040
+       con     5,010000,2,040,040
+       con     6,010000,26,052,052,052,040,156,157,040,166,141,154,165,145,040,146,157,162,040,161,165,145,162,171,040,164,157,040
+       con     7,010000,7,156,157,156,164,145,162,155
+       con     8,010000,29,052,052,052,040,165,156,144,145,146,151,156,145,144,040,156,157,156,164,145,162,155,151,156,141,154,072,040,040,074
+       con     9,010000,1,076
+       con     10,010000,31,052,052,052,040,145,170,143,145,163,163,151,166,145,040,163,171,155,142,157,154,163,040,162,145,155,141,151,156,151,156,147
+       declend
+       file    rsg.icn
+       line    73
+       mark    L1
+lab L2
+       line    75
+       mark    L2
+       mark    L5
+       pnull
+       var     1
+       pnull
+       var     4
+       var     0
+       line    76
+       invoke  1
+       llist   1
+       asgn
+       unmark  1
+lab L5
+       mark    L6
+       pnull
+       var     2
+       str     0
+       line    77
+       asgn
+       unmark  1
+lab L6
+       mark    L7
+lab L8
+       line    78
+       mark    L0
+       pnull
+       var     3
+       var     5
+       var     1
+       invoke  1
+       asgn
+       unmark  1
+       mark    L8
+       mark    L11
+       mark    L0
+       pnull
+       var     6
+       line    79
+       nonnull
+       unmark  1
+       var     7
+       keywd   6
+       var     2
+       var     8
+       var     3
+       invoke  1
+       var     9
+       var     1
+       invoke  1
+       invoke  4
+       unmark  1
+lab L11
+       mark    L0
+       var     10
+       var     3
+       line    80
+       invoke  1
+       eret
+       mark    L13
+       ccase
+       str     1
+       line    81
+       eqv
+       unmark  1
+       pop
+       pnull
+       var     2
+       dup
+       var     3
+       cat
+       asgn
+       goto    L12
+lab L13
+       mark    L14
+       ccase
+       str     2
+       line    82
+       eqv
+       unmark  1
+       pop
+       pnull
+       var     2
+       dup
+       pnull
+       pnull
+       var     3
+       field   chars
+       random
+       cat
+       asgn
+       goto    L12
+lab L14
+       mark    L15
+       ccase
+       str     3
+       line    83
+       eqv
+       unmark  1
+       pop
+       mark    L16
+       var     11
+       str     4
+       pnull
+       var     3
+       line    84
+       field   name
+       str     5
+       invoke  3
+       unmark  1
+lab L16
+       pnull
+       var     2
+       dup
+       mark    L17
+       var     12
+       pnull
+       line    85
+       invoke  1
+       esusp
+       goto    L18
+lab L17
+       mark    L19
+       var     7
+       line    86
+       keywd   6
+       str     6
+       pnull
+       var     3
+       field   name
+       invoke  3
+       unmark  1
+lab L19
+       mark    L20
+       mark    L0
+       var     2
+       line    87
+       psusp
+       efail
+       unmark  1
+lab L20
+       unmark  1
+       unmark  1
+       goto    L3
+       goto    L10
+lab L18
+       line    85
+       cat
+       asgn
+       goto    L12
+lab L15
+       mark    L21
+       ccase
+       str     7
+       line    91
+       eqv
+       unmark  1
+       pop
+       mark    L22
+       pnull
+       var     1
+       mark    L23
+       pnull
+       pnull
+       pnull
+       pnull
+       var     13
+       pnull
+       var     3
+       line    92
+       field   name
+       subsc
+       nonnull
+       random
+       var     1
+       lconcat
+       esusp
+       goto    L24
+lab L23
+       mark    L25
+       var     7
+       line    93
+       keywd   6
+       str     8
+       pnull
+       var     3
+       field   name
+       str     9
+       invoke  4
+       unmark  1
+lab L25
+       mark    L26
+       mark    L0
+       var     2
+       line    94
+       psusp
+       efail
+       unmark  1
+lab L26
+       unmark  2
+       unmark  1
+       goto    L3
+       goto    L10
+lab L24
+       line    92
+       asgn
+       unmark  1
+lab L22
+       mark    L0
+       pnull
+       pnull
+       var     1
+       line    97
+       size
+       pnull
+       var     14
+       nonnull
+       numgt
+       unmark  1
+       mark    L27
+       var     7
+       line    98
+       keywd   6
+       str     10
+       invoke  2
+       unmark  1
+lab L27
+       mark    L28
+       mark    L0
+       var     2
+       line    99
+       psusp
+       efail
+       unmark  1
+lab L28
+       unmark  1
+       unmark  1
+       goto    L3
+       goto    L10
+       goto    L12
+lab L21
+       efail
+lab L12
+lab L9
+       unmark  1
+       goto    L8
+lab L10
+       unmark  1
+lab L7
+       mark    L0
+       var     2
+       line    105
+       psusp
+       efail
+lab L3
+       unmark  1
+       goto    L2
+lab L4
+       unmark  1
+lab L1
+       pnull
+       line    107
+       pfail
+       end
+proc generate
+       local   0,001000,line
+       local   1,000020,goal
+       local   2,000020,count
+       local   3,000000,tab
+       local   4,000000,upto
+       local   5,000000,move
+       local   6,000000,pos
+       local   7,000000,integer
+       local   8,000000,write
+       local   9,000000,gener
+       con     0,010000,1,074
+       con     1,020000,1,076
+       con     2,002000,1
+       con     3,002000,0
+       declend
+       file    rsg.icn
+       line    109
+       mark    L1
+       mark    L2
+       var     0
+       line    111
+       bscan
+       pnull
+       str     0
+       line    112
+       tabmat
+       pop
+       pnull
+       var     1
+       int     2
+       line    113
+       limit
+       mark    L0
+       var     3
+       var     4
+       cset    1
+       invoke  1
+       invoke  1
+       lsusp
+       asgn
+       pop
+       var     5
+       int     2
+       line    114
+       invoke  1
+       pop
+       pnull
+       var     2
+       mark    L4
+       var     6
+       int     3
+       line    115
+       invoke  1
+       pop
+       int     2
+       esusp
+       goto    L5
+lab L4
+       var     7
+       var     3
+       int     3
+       invoke  1
+       invoke  1
+lab L5
+       asgn
+       line    111
+       escan
+       unmark  1
+       mark    L6
+       mark    L0
+       var     2
+       line    118
+       limit
+       mark    L0
+       var     8
+       var     9
+       var     1
+       invoke  1
+       invoke  1
+       lsusp
+       pop
+lab L7
+       efail
+lab L8
+       unmark  1
+lab L6
+       mark    L9
+       pnull
+       line    119
+       pret
+lab L9
+       line    119
+       pfail
+       goto    L3
+lab L2
+       line    121
+       pfail
+lab L3
+       unmark  1
+lab L1
+       pnull
+       line    122
+       pfail
+       end
+proc getrhs
+       local   0,001000,a
+       local   1,000020,rhs
+       local   2,000000,sform
+       con     0,010000,0
+       con     1,010000,1,174
+       con     2,002000,1
+       declend
+       file    rsg.icn
+       line    124
+       mark    L1
+       pnull
+       var     1
+       str     0
+       line    126
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       mark    L0
+       pnull
+       var     1
+       dup
+       pnull
+       var     2
+       pnull
+       var     0
+       line    127
+       bang
+       invoke  1
+       str     1
+       cat
+       cat
+       asgn
+       pop
+lab L3
+       efail
+lab L4
+       unmark  1
+lab L2
+       mark    L5
+       mark    L6
+       pnull
+       var     1
+       int     2
+       pnull
+       int     2
+       line    128
+       neg
+       sect
+       pret
+lab L6
+       line    128
+       pfail
+       unmark  1
+lab L5
+       pnull
+       line    129
+       pfail
+       end
+proc grammar
+       local   0,001000,line
+       local   1,000020,file
+       local   2,000020,out
+       local   3,000000,name
+       local   4,000000,tab
+       local   5,000000,find
+       local   6,000000,move
+       local   7,000000,open
+       local   8,000000,write
+       local   9,000000,pwrite
+       local   10,000000,close
+       con     0,010000,2,055,076
+       con     1,002000,2
+       con     2,002000,0
+       con     3,010000,1,167
+       con     4,010000,16,052,052,052,040,143,141,156,156,157,164,040,157,160,145,156,040
+       con     5,002000,1
+       con     6,010000,1,074
+       con     7,010000,1,076
+       declend
+       file    rsg.icn
+       line    131
+       mark    L1
+       mark    L2
+       var     0
+       line    133
+       bscan
+       pnull
+       var     3
+       var     4
+       var     5
+       str     0
+       line    134
+       invoke  1
+       invoke  1
+       asgn
+       pop
+       var     6
+       int     1
+       line    135
+       invoke  1
+       pop
+       pnull
+       var     1
+       var     4
+       int     2
+       line    136
+       invoke  1
+       asgn
+       pop
+       pnull
+       var     2
+       mark    L4
+       pnull
+       pnull
+       var     1
+       line    137
+       size
+       int     2
+       numeq
+       unmark  1
+       keywd   14
+       goto    L5
+lab L4
+       mark    L6
+       var     7
+       var     1
+       str     3
+       line    138
+       invoke  2
+       esusp
+       goto    L7
+lab L6
+       mark    L8
+       var     8
+       line    139
+       keywd   6
+       str     4
+       var     1
+       invoke  3
+       unmark  1
+lab L8
+       line    140
+       pfail
+lab L7
+lab L5
+       line    137
+       asgn
+       line    133
+       escan
+       unmark  1
+       mark    L9
+       mark    L10
+       pnull
+       pnull
+       var     3
+       line    145
+       size
+       int     2
+       numeq
+       esusp
+       goto    L11
+lab L10
+       mark    L12
+       pnull
+       pnull
+       var     3
+       int     5
+       subsc
+       str     6
+       lexeq
+       pop
+       pnull
+       pnull
+       var     3
+       pnull
+       int     5
+       neg
+       subsc
+       str     7
+       lexeq
+       esusp
+       goto    L13
+lab L12
+       line    145
+       pfail
+lab L13
+lab L11
+       unmark  1
+lab L9
+       mark    L14
+       var     9
+       var     3
+       var     2
+       line    146
+       invoke  2
+       unmark  1
+lab L14
+       mark    L15
+       mark    L0
+       pnull
+       pnull
+       var     1
+       line    147
+       size
+       int     2
+       numne
+       unmark  1
+       var     10
+       var     2
+       invoke  1
+       unmark  1
+lab L15
+       mark    L16
+       pnull
+       line    148
+       pret
+lab L16
+       line    148
+       pfail
+       goto    L3
+lab L2
+       line    150
+       pfail
+lab L3
+       unmark  1
+lab L1
+       pnull
+       line    151
+       pfail
+       end
+proc listimage
+       local   0,001000,a
+       local   1,000020,s
+       local   2,000020,x
+       local   3,000000,symimage
+       con     0,010000,0
+       declend
+       file    rsg.icn
+       line    153
+       mark    L1
+       pnull
+       var     1
+       str     0
+       line    155
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       mark    L0
+       pnull
+       var     2
+       pnull
+       var     0
+       line    156
+       bang
+       asgn
+       pop
+       mark    L0
+       pnull
+       var     1
+       dup
+       var     3
+       var     2
+       line    157
+       invoke  1
+       cat
+       asgn
+       unmark  1
+lab L3
+       efail
+lab L4
+       unmark  1
+lab L2
+       mark    L5
+       mark    L6
+       var     1
+       line    158
+       pret
+lab L6
+       line    158
+       pfail
+       unmark  1
+lab L5
+       pnull
+       line    159
+       pfail
+       end
+proc alts
+       local   0,001000,defn
+       local   1,000020,alist
+       local   2,000000,put
+       local   3,000000,syms
+       local   4,000000,tab
+       local   5,000000,many
+       local   6,000000,move
+       con     0,020000,1,174
+       con     1,002000,1
+       declend
+       file    rsg.icn
+       line    161
+       mark    L1
+       pnull
+       var     1
+       pnull
+       line    163
+       llist   0
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       var     0
+       line    164
+       bscan
+lab L3
+       line    164
+       mark    L0
+       var     2
+       var     1
+       var     3
+       var     4
+       var     5
+       pnull
+       cset    0
+       compl
+       invoke  1
+       invoke  1
+       invoke  1
+       invoke  2
+       unmark  1
+       mark    L3
+       var     6
+       int     1
+       invoke  1
+lab L4
+       unmark  1
+       goto    L3
+lab L5
+       escan
+       unmark  1
+lab L2
+       mark    L6
+       mark    L7
+       var     1
+       line    165
+       pret
+lab L7
+       line    165
+       pfail
+       unmark  1
+lab L6
+       pnull
+       line    166
+       pfail
+       end
+proc prompter
+       local   0,001000,line
+       local   1,000000,prompt
+       con     0,002000,1
+       con     1,010000,1,075
+       con     2,002000,2
+       con     3,002000,0
+       declend
+       file    rsg.icn
+       line    168
+       mark    L1
+       mark    L0
+       pnull
+       pnull
+       var     0
+       int     0
+       line    169
+       subsc
+       str     1
+       lexeq
+       unmark  1
+       mark    L2
+       pnull
+       var     1
+       pnull
+       var     0
+       int     2
+       int     3
+       line    170
+       sect
+       asgn
+       unmark  1
+lab L2
+       mark    L3
+       pnull
+       line    171
+       pret
+lab L3
+       line    171
+       pfail
+       unmark  1
+lab L1
+       pnull
+       line    173
+       pfail
+       end
+proc pwrite
+       local   0,001000,name
+       local   1,001000,ofile
+       local   2,000020,nt
+       local   3,000020,a
+       local   4,000040,builtin
+       local   5,000000,sort
+       local   6,000000,defs
+       local   7,000000,write
+       local   8,000000,getrhs
+       con     0,010000,2,154,142
+       con     1,010000,2,162,142
+       con     2,010000,2,166,142
+       con     3,010000,2,156,154
+       con     4,010000,0
+       con     5,010000,6,046,154,143,141,163,145
+       con     6,010000,6,046,165,143,141,163,145
+       con     7,010000,6,046,144,151,147,151,164
+       con     8,002000,0
+       con     9,002000,1
+       con     10,010000,1,074
+       con     11,010000,4,076,072,072,075
+       con     12,002000,2
+       con     13,010000,3,072,072,075
+       con     14,010000,28,052,052,052,040,165,156,144,145,146,151,156,145,144,040,156,157,156,164,145,162,155,151,156,141,154,072,040,040
+       declend
+       file    rsg.icn
+       line    175
+       init?   L1
+       mark    L1
+       pnull
+       var     4
+       pnull
+       str     0
+       str     1
+       str     2
+       str     3
+       str     4
+       str     5
+       str     6
+       str     7
+       line    178
+       llist   8
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       mark    L3
+       pnull
+       pnull
+       var     0
+       line    179
+       size
+       int     8
+       numeq
+       unmark  1
+       mark    L5
+       pnull
+       var     3
+       var     5
+       var     6
+       line    180
+       invoke  1
+       asgn
+       unmark  1
+lab L5
+       mark    L0
+       pnull
+       var     2
+       pnull
+       var     3
+       line    181
+       bang
+       asgn
+       pop
+       mark    L0
+       mark    L8
+       mark    L0
+       pnull
+       pnull
+       var     2
+       int     9
+       line    182
+       subsc
+       pnull
+       var     4
+       bang
+       lexeq
+       unmark  1
+       unmark  2
+       goto    L6
+       unmark  1
+lab L8
+       var     7
+       var     1
+       str     10
+       pnull
+       var     2
+       int     9
+       line    183
+       subsc
+       str     11
+       var     8
+       pnull
+       var     2
+       int     12
+       subsc
+       invoke  1
+       invoke  5
+       unmark  1
+lab L6
+       efail
+lab L7
+       goto    L4
+lab L3
+       mark    L9
+       var     7
+       var     1
+       var     0
+       str     13
+       var     8
+       pnull
+       pnull
+       var     6
+       pnull
+       var     0
+       int     12
+       pnull
+       int     9
+       line    186
+       neg
+       sect
+       subsc
+       nonnull
+       invoke  1
+       invoke  4
+       esusp
+       goto    L10
+lab L9
+       var     7
+       str     14
+       var     0
+       line    187
+       invoke  2
+lab L10
+lab L4
+       unmark  1
+lab L2
+       pnull
+       line    188
+       pfail
+       end
+proc sform
+       local   0,001000,alt
+       local   1,000020,s
+       local   2,000020,x
+       local   3,000000,type
+       con     0,010000,0
+       con     1,010000,6,163,164,162,151,156,147
+       con     2,010000,7,156,157,156,164,145,162,155
+       con     3,010000,1,074
+       con     4,010000,1,076
+       con     5,010000,7,143,150,141,162,163,145,164
+       con     6,010000,2,074,047
+       con     7,010000,2,047,076
+       declend
+       file    rsg.icn
+       line    190
+       mark    L1
+       pnull
+       var     1
+       str     0
+       line    192
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       mark    L0
+       pnull
+       var     2
+       pnull
+       var     0
+       line    193
+       bang
+       asgn
+       pop
+       mark    L0
+       pnull
+       var     1
+       dup
+       mark    L0
+       var     3
+       var     2
+       line    194
+       invoke  1
+       eret
+       mark    L6
+       ccase
+       str     1
+       line    195
+       eqv
+       unmark  1
+       pop
+       var     2
+       goto    L5
+lab L6
+       mark    L7
+       ccase
+       str     2
+       line    196
+       eqv
+       unmark  1
+       pop
+       pnull
+       pnull
+       str     3
+       pnull
+       var     2
+       field   name
+       cat
+       str     4
+       cat
+       goto    L5
+lab L7
+       mark    L8
+       ccase
+       str     5
+       line    197
+       eqv
+       unmark  1
+       pop
+       pnull
+       pnull
+       str     6
+       pnull
+       var     2
+       field   chars
+       cat
+       str     7
+       cat
+       goto    L5
+lab L8
+       efail
+lab L5
+       line    194
+       cat
+       asgn
+       unmark  1
+lab L3
+       efail
+lab L4
+       unmark  1
+lab L2
+       mark    L9
+       mark    L10
+       var     1
+       line    199
+       pret
+lab L10
+       line    199
+       pfail
+       unmark  1
+lab L9
+       pnull
+       line    200
+       pfail
+       end
+proc source
+       local   0,001000,line
+       local   1,000000,push
+       local   2,000000,ifile
+       local   3,000000,in
+       local   4,000000,open
+       local   5,000000,file
+       local   6,000000,tab
+       local   7,000000,write
+       con     0,010000,1,100
+       con     1,002000,0
+       con     2,010000,16,052,052,052,040,143,141,156,156,157,164,040,157,160,145,156,040
+       declend
+       file    rsg.icn
+       line    202
+       mark    L1
+       mark    L2
+       var     0
+       line    203
+       bscan
+       pnull
+       str     0
+       tabmat
+       pop
+       var     1
+       var     2
+       var     3
+       invoke  2
+       pop
+       pnull
+       var     3
+       mark    L3
+       var     4
+       pnull
+       var     5
+       var     6
+       int     1
+       line    204
+       invoke  1
+       asgn
+       invoke  1
+       esusp
+       goto    L4
+lab L3
+       mark    L5
+       var     7
+       line    205
+       keywd   6
+       str     2
+       var     5
+       invoke  3
+       unmark  1
+lab L5
+       line    206
+       pfail
+lab L4
+       line    204
+       asgn
+       line    203
+       escan
+       pret
+lab L2
+       line    203
+       pfail
+       unmark  1
+lab L1
+       pnull
+       line    209
+       pfail
+       end
+proc symimage
+       local   0,001000,x
+       local   1,000000,type
+       con     0,010000,6,163,164,162,151,156,147
+       con     1,010000,7,156,157,156,164,145,162,155
+       con     2,010000,1,074
+       con     3,010000,1,076
+       con     4,010000,7,143,150,141,162,163,145,164
+       con     5,010000,2,074,047
+       con     6,010000,2,047,076
+       declend
+       file    rsg.icn
+       line    211
+       mark    L1
+       mark    L2
+       mark    L0
+       var     1
+       var     0
+       line    212
+       invoke  1
+       eret
+       mark    L4
+       ccase
+       str     0
+       line    213
+       eqv
+       unmark  1
+       pop
+       var     0
+       goto    L3
+lab L4
+       mark    L5
+       ccase
+       str     1
+       line    214
+       eqv
+       unmark  1
+       pop
+       pnull
+       pnull
+       str     2
+       pnull
+       var     0
+       field   name
+       cat
+       str     3
+       cat
+       goto    L3
+lab L5
+       mark    L6
+       ccase
+       str     4
+       line    215
+       eqv
+       unmark  1
+       pop
+       pnull
+       pnull
+       str     5
+       pnull
+       var     0
+       field   chars
+       cat
+       str     6
+       cat
+       goto    L3
+lab L6
+       efail
+lab L3
+       line    212
+       pret
+lab L2
+       line    212
+       pfail
+       unmark  1
+lab L1
+       pnull
+       line    217
+       pfail
+       end
+proc syms
+       local   0,001000,alt
+       local   1,000020,slist
+       local   2,000000,put
+       local   3,000000,tab
+       local   4,000000,many
+       local   5,000000,defnon
+       local   6,000000,upto
+       local   7,000000,move
+       con     0,020000,1,074
+       con     1,002000,2
+       con     2,010000,1,074
+       con     3,020000,1,076
+       con     4,002000,1
+       declend
+       file    rsg.icn
+       line    219
+       mark    L1
+       pnull
+       var     1
+       pnull
+       line    221
+       llist   0
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       var     0
+       line    222
+       bscan
+lab L3
+       line    222
+       mark    L0
+       var     2
+       var     1
+       mark    L6
+       var     3
+       var     4
+       pnull
+       cset    0
+       compl
+       invoke  1
+       invoke  1
+       esusp
+       goto    L7
+lab L6
+       var     5
+       int     1
+       pnull
+       str     2
+       line    223
+       tabmat
+       var     3
+       var     6
+       cset    3
+       invoke  1
+       invoke  1
+       var     7
+       int     4
+       invoke  1
+       invoke  3
+       invoke  1
+lab L7
+       line    222
+       invoke  2
+lab L4
+       unmark  1
+       goto    L3
+lab L5
+       escan
+       unmark  1
+lab L2
+       mark    L8
+       mark    L9
+       var     1
+       line    224
+       pret
+lab L9
+       line    224
+       pfail
+       unmark  1
+lab L8
+       pnull
+       line    225
+       pfail
+       end
diff --git a/usr/contrib/icon/port/distr/rsg.u2 b/usr/contrib/icon/port/distr/rsg.u2
new file mode 100644 (file)
index 0000000..85340cb
--- /dev/null
@@ -0,0 +1,34 @@
+record nonterm,1
+       0,name
+record charset,1
+       0,chars
+record query,1
+       0,name
+impl   local
+global 26
+       0,000001,defs,0
+       1,000001,ifile,0
+       2,000001,in,0
+       3,000001,limit,0
+       4,000001,tswitch,0
+       5,000001,prompt,0
+       6,000011,nonterm,1
+       7,000011,charset,1
+       8,000011,query,1
+       9,000005,main,1
+       10,000005,comment,1
+       11,000005,define,1
+       12,000005,defnon,1
+       13,000005,error,1
+       14,000005,gener,1
+       15,000005,generate,1
+       16,000005,getrhs,1
+       17,000005,grammar,1
+       18,000005,listimage,1
+       19,000005,alts,1
+       20,000005,prompter,1
+       21,000005,pwrite,2
+       22,000005,sform,1
+       23,000005,source,1
+       24,000005,symimage,1
+       25,000005,syms,1
diff --git a/usr/contrib/icon/port/distr/seqimage.u1 b/usr/contrib/icon/port/distr/seqimage.u1
new file mode 100644 (file)
index 0000000..950555e
--- /dev/null
@@ -0,0 +1,269 @@
+proc main
+       local   0,000000,write
+       local   1,000000,Seqimage
+       local   2,000000,main
+       local   3,000000,read
+       con     0,002000,1
+       con     1,002000,10
+       con     2,002000,2
+       con     3,010000,3,141,142,143
+       con     4,010000,2,170,171
+       declend
+       file    seqimage.icn
+       line    8
+       mark    L1
+       var     0
+       var     1
+       goto    L4
+lab L2
+       pop
+       mark    L3
+       pnull
+       int     0
+       int     1
+       push1
+       line    9
+       toby
+       incres
+       coret
+       efail
+lab L3
+       line    9
+       cofail
+       goto    L3
+lab L4
+       line    9
+       create  L2
+       invoke  1
+       invoke  1
+       unmark  1
+lab L1
+       mark    L5
+       var     0
+       var     1
+       goto    L8
+lab L6
+       pop
+       mark    L7
+       line    10
+       keywd   7
+       incres
+       coret
+       efail
+lab L7
+       line    10
+       cofail
+       goto    L7
+lab L8
+       line    10
+       create  L6
+       invoke  1
+       invoke  1
+       unmark  1
+lab L5
+       mark    L9
+       var     0
+       var     1
+       goto    L12
+lab L10
+       pop
+       mark    L11
+       mark    L13
+       pnull
+       int     0
+       int     1
+       int     2
+       line    11
+       toby
+       esusp
+       goto    L14
+lab L13
+       pnull
+       int     1
+       int     0
+       pnull
+       int     2
+       neg
+       toby
+lab L14
+       incres
+       coret
+       efail
+lab L11
+       line    11
+       cofail
+       goto    L11
+lab L12
+       line    11
+       create  L10
+       invoke  1
+       invoke  1
+       unmark  1
+lab L9
+       mark    L15
+       var     0
+       var     1
+       goto    L18
+lab L16
+       pop
+       mark    L17
+       pnull
+       pnull
+       str     3
+       line    12
+       bang
+       pnull
+       str     4
+       bang
+       cat
+       incres
+       coret
+       efail
+lab L17
+       line    12
+       cofail
+       goto    L17
+lab L18
+       line    12
+       create  L16
+       invoke  1
+       invoke  1
+       unmark  1
+lab L15
+       mark    L19
+       var     0
+       var     1
+       goto    L22
+lab L20
+       pop
+       mark    L21
+       mark    L23
+       var     1
+       esusp
+       goto    L24
+lab L23
+       var     2
+lab L24
+       incres
+       line    13
+       coret
+       efail
+lab L21
+       line    13
+       cofail
+       goto    L21
+lab L22
+       line    13
+       create  L20
+       invoke  1
+       invoke  1
+       unmark  1
+lab L19
+       mark    L25
+       var     0
+       var     1
+       goto    L28
+lab L26
+       pop
+       mark    L27
+lab L29
+       mark    L0
+       var     3
+       pnull
+       line    14
+       invoke  1
+       chfail  L29
+       esusp
+       incres
+       coret
+       efail
+lab L27
+       line    14
+       cofail
+       goto    L27
+lab L28
+       line    14
+       create  L26
+       invoke  1
+       invoke  1
+       unmark  1
+lab L25
+       pnull
+       line    15
+       pfail
+       end
+proc Seqimage
+       local   0,001000,e
+       local   1,000020,s
+       local   2,000000,image
+       con     0,010000,0
+       con     1,010000,2,054,040
+       con     2,010000,1,173
+       con     3,002000,3
+       con     4,002000,0
+       con     5,010000,1,175
+       con     6,010000,2,173,175
+       declend
+       file    seqimage.icn
+       line    17
+       mark    L1
+       pnull
+       var     1
+       str     0
+       line    19
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+lab L3
+       line    20
+       mark    L0
+       pnull
+       var     1
+       dup
+       pnull
+       str     1
+       var     2
+       pnull
+       var     0
+       coact
+       invoke  1
+       cat
+       cat
+       asgn
+lab L4
+       unmark  1
+       goto    L3
+lab L5
+       unmark  1
+lab L2
+       mark    L6
+       mark    L7
+       mark    L8
+       pnull
+       pnull
+       str     2
+       pnull
+       var     1
+       int     3
+       int     4
+       line    21
+       sect
+       cat
+       str     5
+       cat
+       esusp
+       goto    L9
+lab L8
+       str     6
+lab L9
+       pret
+lab L7
+       line    21
+       pfail
+       unmark  1
+lab L6
+       pnull
+       line    22
+       pfail
+       end
diff --git a/usr/contrib/icon/port/distr/seqimage.u2 b/usr/contrib/icon/port/distr/seqimage.u2
new file mode 100644 (file)
index 0000000..e776536
--- /dev/null
@@ -0,0 +1,4 @@
+impl   local
+global 2
+       0,000005,main,0
+       1,000005,Seqimage,1
diff --git a/usr/contrib/icon/port/distr/wordcount.u1 b/usr/contrib/icon/port/distr/wordcount.u1
new file mode 100644 (file)
index 0000000..0a9e417
--- /dev/null
@@ -0,0 +1,155 @@
+proc main
+       local   0,000000,wordcount
+       con     0,002000,20
+       declend
+       file    wordcount.icn
+       line    9
+       mark    L1
+       var     0
+       int     0
+       line    10
+       invoke  1
+       unmark  1
+lab L1
+       pnull
+       line    11
+       pfail
+       end
+proc wordcount
+       local   0,001000,n
+       local   1,000020,t
+       local   2,000020,line
+       local   3,000020,x
+       local   4,000020,y
+       local   5,000040,letters
+       local   6,000000,table
+       local   7,000000,read
+       local   8,000000,tab
+       local   9,000000,upto
+       local   10,000000,many
+       local   11,000000,sort
+       local   12,000000,write
+       local   13,000000,left
+       con     0,002000,0
+       con     1,002000,1
+       con     2,002000,2
+       declend
+       file    wordcount.icn
+       line    13
+       init?   L1
+       mark    L1
+       pnull
+       var     5
+       pnull
+       line    16
+       keywd   10
+       keywd   21
+       unioncs
+       asgn
+       unmark  1
+lab L1
+       mark    L2
+       pnull
+       var     1
+       var     6
+       int     0
+       line    17
+       invoke  1
+       asgn
+       unmark  1
+lab L2
+       mark    L3
+lab L4
+       line    18
+       mark    L0
+       pnull
+       var     2
+       var     7
+       pnull
+       invoke  1
+       asgn
+       unmark  1
+       mark    L4
+       var     2
+       line    19
+       bscan
+lab L7
+       line    19
+       mark    L0
+       var     8
+       var     9
+       var     5
+       invoke  1
+       invoke  1
+       unmark  1
+       mark    L7
+       pnull
+       pnull
+       var     1
+       var     8
+       var     10
+       var     5
+       line    20
+       invoke  1
+       invoke  1
+       subsc
+       dup
+       int     1
+       plus
+       asgn
+lab L8
+       unmark  1
+       goto    L7
+lab L9
+       line    19
+       escan
+lab L5
+       unmark  1
+       goto    L4
+lab L6
+       unmark  1
+lab L3
+       mark    L10
+       pnull
+       var     3
+       var     11
+       var     1
+       line    21
+       invoke  1
+       asgn
+       unmark  1
+lab L10
+       mark    L11
+       mark    L0
+       pnull
+       var     4
+       pnull
+       var     3
+       line    22
+       bang
+       asgn
+       pop
+       mark    L0
+       var     12
+       var     13
+       pnull
+       var     4
+       int     1
+       subsc
+       var     0
+       invoke  2
+       pnull
+       var     4
+       int     2
+       subsc
+       invoke  2
+       unmark  1
+lab L12
+       efail
+lab L13
+       unmark  1
+lab L11
+       pnull
+       line    23
+       pfail
+       end
diff --git a/usr/contrib/icon/port/distr/wordcount.u2 b/usr/contrib/icon/port/distr/wordcount.u2
new file mode 100644 (file)
index 0000000..2954ad9
--- /dev/null
@@ -0,0 +1,4 @@
+impl   local
+global 2
+       0,000005,main,0
+       1,000005,wordcount,1