|
|
1.1 root 1: # C runtime startoff
2:
3: .set exit,1
4: .globl _exit
5: .globl start
6: .globl _main
7: .globl _environ
8:
9: #
10: # C language startup routine
11:
12: start:
13: .word 0x0000
14: subl2 $8,sp
15: movl 8(sp),(sp) # argc
16: movab 12(sp),r0
17: movl r0,4(sp) # argv
18: L1:
19: tstl (r0)+ # null args term ?
20: bneq L1
21: cmpl r0,*4(sp) # end of 'env' or 'argv' ?
22: blss L2
23: tstl -(r0) # envp's are in list
24: L2:
25: movl r0,8(sp) # env
26: movl r0,_environ # indir is 0 if no env ; not 0 if env
27: calls $3,_main
28: pushl r0
29: calls $1,_exit
30: chmk $exit
31: #
32: .data
33: _environ: .space 4
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.