Annotation of 40BSD/games/compat/compat.s, revision 1.1

1.1     ! root        1:        .globl _regs
        !             2:        .globl _psl
        !             3:        .globl _pc
        !             4:        .globl _compat
        !             5: _compat:
        !             6:        .word 0x0000
        !             7: # fixup stack by doing rets from compat and the function
        !             8: # which called it but modifying frame pc's to stay here
        !             9:        moval l0,16(fp) # fix first return address
        !            10:        ret
        !            11: l0:    moval l1,16(fp) # fix first return address
        !            12:        ret
        !            13: l1:    moval l2,16(fp) # fix next return address
        !            14:        ret
        !            15: l2:    movl _psl,4(sp)
        !            16:        movl _pc,(sp)
        !            17: # copy back saved register values
        !            18:        movw _regs,r0
        !            19:        movw _regs+02,r1
        !            20:        movw _regs+04,r2
        !            21:        movw _regs+06,r3
        !            22:        movw _regs+010,r4
        !            23:        movw _regs+012,r5
        !            24:        movw _regs+014,r6
        !            25: # go to compatability mode with rei assuming correct psl is setup
        !            26:        rei
        !            27:        .globl _getregs
        !            28: _getregs:
        !            29:        .word 0
        !            30: # copy registers into known locations for examination or modification
        !            31:        movw r0,_regs
        !            32:        movw r1,_regs+02
        !            33:        movw r2,_regs+04
        !            34:        movw r3,_regs+06
        !            35:        movw r4,_regs+010
        !            36:        movw r5,_regs+012
        !            37:        movw r6,_regs+014
        !            38:        ret

unix.superglobalmegacorp.com

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