Annotation of 43BSDTahoe/lib/libc/tahoe/csu/mcrt0.s, revision 1.1

1.1     ! root        1: # @(#)mcrt0.s  4.1 (Berkeley) 12/21/80
        !             2: # C runtime startoff including monitoring
        !             3: #              TAHOE 3/83
        !             4: 
        !             5:        .set    exit,1
        !             6:        .set    cbufs,300
        !             7: 
        !             8: .globl start
        !             9: .globl _monitor
        !            10: .globl _monstartup
        !            11: .globl _main
        !            12: .globl _exit
        !            13: .globl _etext
        !            14: .globl _environ
        !            15: .globl __cleanup
        !            16: .comm  countbase,4
        !            17: 
        !            18: 
        !            19: start:
        !            20:        .word   0x0000
        !            21:        movab   -8(sp),sp
        !            22:        movl    8(sp),(sp)  #  argc
        !            23:        movab   12(sp),r0
        !            24:        movl    r0,4(sp)  #  argv
        !            25:        jmp     L3
        !            26: L1:
        !            27:        addl2   $4,r0
        !            28: L3:
        !            29:        tstl    (r0)  #  null args term ?
        !            30:        jneq    L1
        !            31:        addl2   $4,r0
        !            32:        cmpl    r0,*4(sp)  #  end of 'env' or 'argv' ?
        !            33:        jlss    L2
        !            34:        subl2   $4,r0    # envp's are in list
        !            35: L2:
        !            36:        movl    r0,8(sp)  #  env
        !            37:        movl    r0,_environ  #  indir is 0 if no env ; not 0 if env
        !            38: 
        !            39:        pushab  _etext
        !            40:        pushab  eprol
        !            41:        callf   $4*2+4,_monstartup
        !            42:        callf   $4*3+4,_main
        !            43:        pushl   r0
        !            44:        callf   $4*1+4,_exit
        !            45: 
        !            46:        .data
        !            47: _environ:      .space  4
        !            48: 
        !            49:        .text
        !            50: _exit:
        !            51:        .word   0x0000
        !            52:        callf   $4,__cleanup
        !            53:        pushl   $0
        !            54:        callf   $4*1+4,_monitor
        !            55:        movl    4(fp),r0
        !            56:        kcall   $exit
        !            57: eprol:
        !            58: 
        !            59: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.