1: /
2: /
3:
4: / f44 -- formats
5:
6: .globl formts
7: .globl strout
8:
9: .globl setln
10: .globl getln
11: .globl code
12: .globl error
13: .globl perror
14: .globl putc
15: .globl xbuf
16:
17: formts:
18: jsr r5,setln
19: mov $2,r3
20: clr xbuf+518. / pick up zero efn formats
21: 1:
22: jsr r5,getln
23: br 1f
24: cmp r0,$'s
25: beq 2f
26: cmp r0,$'f
27: bne 1b
28: mov efno,r0
29: jsr r5,code
30: <.%d: <\0>; .even
31: r0
32: mov $line+6,r1
33: jsr r5,strout
34: mov efno,r0
35: neg r0
36: br 3f
37: 2:
38: mov efno,r0
39: 3:
40: clr r2
41: 2:
42: cmp r2,r3
43: bhis 2f
44: cmp r0,xbuf+518.(r2)
45: beq 3f
46: neg r0
47: cmp r0,xbuf+518.(r2)
48: beq 3f
49: add $2,r2
50: neg r0
51: br 2b
52: 3:
53: jsr r5,error; 51.
54: jsr r5,perror
55: 2:
56: mov r0,xbuf+518.(r3)
57: add $2,r3
58: br 1b
59: 1:
60: jsr r5,code
61: < .even\n>; .even
62: jsr r5,setln
63: 1:
64: jsr r5,getln
65: br 1f
66: cmp r0,$'r
67: beq 2f
68: cmp r0,$'i
69: bne 1b
70: mov efno,r0
71: neg r0
72: br 3f
73: 2:
74: mov efno,r0
75: 3:
76: mov $2,r2 / not zero
77: 2:
78: cmp r2,r3
79: bhis 2f
80: cmp r0,xbuf+518.(r2)
81: beq 1b
82: add $2,r2
83: br 2b
84: 2:
85: jsr r5,error; 52.
86: jsr r5,perror
87: br 1b
88: 1:
89: rts r5
90:
91: strout:
92: movb (r1)+,r0
93: beq 3f
94: cmp r0,$'>
95: beq 4f
96: cmp r0,$'\\
97: bne 5f
98: 4:
99: mov r0,-(sp)
100: mov $'\\,r0
101: jsr r5,putc; obuf
102: mov (sp)+,r0
103: 5:
104: jsr r5,putc; obuf
105: br strout
106: 3:
107: jsr r5,code
108: <\\0\>\n\0>; .even
109: rts r5
Defined functions
formts
declared in line
6; defined in line
17; used 3 times
strout
declared in line
7; defined in line
91; used 3 times