Annotation of cci/d/event/trap.c, revision 1.1

1.1     ! root        1: 
        !             2: XTrap(code)
        !             3: long code;
        !             4: {      register long r12, r11, r10, r9;
        !             5:        long tpc, tpsl;
        !             6: 
        !             7:        asm("pushab e_type");
        !             8:        asm("callf $8,_writes");
        !             9: 
        !            10:        writeh(code); writec('\n');
        !            11:        asm("movl 8(fp),r12");          /* par 0 */
        !            12:        asm("movl 12(fp),r11");         /* par 1 */
        !            13:        asm("movl 16(fp),r10");         /* par 2 */
        !            14:        asm("movl 20(fp),r9");          /* par 3 */
        !            15: 
        !            16:        if ((code==0x20) || (code==0x2f) || (code==0x30)) {
        !            17:                asm("pushab par_0");
        !            18:                asm("callf $8,_writes");
        !            19:                writeh(r12); writec('\n');
        !            20:                asm("pushab par_1");
        !            21:                asm("callf $8,_writes");
        !            22:                writeh(r11); writec('\n');
        !            23:                tpc = r10;
        !            24:                tpsl = r9; 
        !            25:                }
        !            26:           else         {
        !            27:                if ((code==0x34) || (code==0x2b))  {
        !            28:                        asm("pushab par_0");
        !            29:                        asm("callf $8,_writes");
        !            30:                        writeh(r12); writec('\n');
        !            31:                        tpc = r11;
        !            32:                        tpsl = r10;
        !            33:                        }
        !            34:                    else        {
        !            35:                        tpc = r12;
        !            36:                        tpsl = r11; }
        !            37:                }
        !            38:        r9 = 0;
        !            39:        asm("pushab par_pc");
        !            40:        asm("callf $8,_writes");
        !            41:        writeh(tpc); writec('\n');
        !            42:        asm("pushab par_psl");
        !            43:        asm("callf $8,_writes");
        !            44:        writeh(tpsl); writec('\n');
        !            45:        asm("halt");
        !            46: }

unix.superglobalmegacorp.com

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