1: / C runtime startoff including monitoring
2: /
3: / Modified to work in separate i/d
4: / Remove comments below to use without floating point
5: /
6:
7: cbufs = 150.
8:
9: .globl _monitor
10: .globl _sbrk
11: .globl _main
12: .globl _exit
13: .globl _IEH3exit
14: .globl _etext
15: .comm countbase,2
16:
17: .comm savr5,2
18:
19: /.globl fptrap,fpjsr
20: start:
21: / sys signal; 4; fptrap
22: / jsr pc,fpjsr
23: setd
24: mov sp,r0
25: mov (r0),-(sp)
26: tst (r0)+
27: mov r0,2(sp)
28:
29: mov $_etext,r1
30: sub $eprol,r1
31: add $7,r1
32: ash $-3,r1
33: bic $!17777,r1
34: mov $cbufs,-(sp)
35: add $3*[cbufs+1],r1
36: mov r1,-(sp)
37: asl r1
38: mov r1,-(sp)
39: jsr pc,_sbrk
40: tst (sp)+
41: cmp r0,$-1
42: beq 9f
43: mov r0,-(sp)
44: add $6,r0
45: mov r0,countbase
46: mov $_etext,-(sp)
47: mov $eprol,-(sp)
48: jsr pc,_monitor
49: add $10.,sp
50: jsr pc,_main
51: cmp (sp)+,(sp)+
52: jsr pc,_exit
53:
54: 9:
55: mov $2,r0
56: sys write; 8f; 9f-8f
57:
58: .data; 8: <No space for monitor buffer\n>; 9:.even; .text
59:
60: _exit:
61: _IEH3exit:
62: mov r5,-(sp)
63: mov sp,r5
64: clr -(sp)
65: jsr pc,_monitor
66: tst (sp)+
67: mov 4(r5),r0
68: sys exit
69: eprol:
Defined functions
_exit
declared in line
12; defined in line
60; used 6 times
cbufs
defined in line
7; used 2 times
eprol
defined in line
69; used 2 times
start
defined in line
20;
never used
Defined variables
savr5
defined in line
17;
never used