Annotation of 43BSDTahoe/new/X/xfax/bits.asm.sun, revision 1.1.1.1

1.1       root        1: comp = qproc (b: _bytevec)
                      2:        move    (rr)+,n1
                      3:        asr     3,n1
                      4:        subq    1,n1
                      5:        qloop
                      6:                not     (rr)+
                      7:                dbra    n1,this
                      8:        end
                      9:        movea   n0,rr
                     10:        end comp
                     11: 
                     12: getb = qproc (b: _bytevec, bit: int) returns (bool)
                     13:        movea   b,r1
                     14:        move    rr,n1
                     15:        asr     1,n1
                     16:        moveq   0,n2
                     17:        moveb   n1,n2
                     18:        andib   7,n2
                     19:        asr     3,n1
                     20:        btst    n2,4(r1,n1)
                     21:        sne     n2
                     22:        return(n2)
                     23:        end getb
                     24: 
                     25: getn = qproc (b: _bytevec, bit, len: int) returns (int)
                     26:        move    rr,n6
                     27:        ifeq    asr     1,n6
                     28:        then    return(n0)
                     29:        end
                     30:        movea   b,r1
                     31:        move    bit,n1
                     32:        asr     1,n1
                     33:        moveq   0,n2
                     34:        moveb   n1,n2
                     35:        andib   31,n2
                     36:        asr     3,n1
                     37:        andib   -4,n1
                     38:        moveq   1,n3
                     39:        asl     n6,n3
                     40:        subq    1,n3
                     41:        rol     n2,n3
                     42:        moveq   32,n7
                     43:        sub     n2,n7
                     44:        sub     n6,n7
                     45:        ifgt    neg     n7
                     46:        then    moveq   1,n5
                     47:                asl     n7,n5
                     48:                subq    1,n5
                     49:                move    n3,n4
                     50:                ifne    and     n5,n4
                     51:                then    move    8(r1,n1),n7
                     52:                        rolw    8,n7
                     53:                        swap    n7
                     54:                        rolw    8,n7
                     55:                        and     n7,n4
                     56:                end
                     57:                not     n5
                     58:                and     n5,n3
                     59:                move    4(r1,n1),n7
                     60:                rolw    8,n7
                     61:                swap    n7
                     62:                rolw    8,n7
                     63:                and     n7,n3
                     64:                or      n4,n3
                     65:        else    move    4(r1,n1),n7
                     66:                rolw    8,n7
                     67:                swap    n7
                     68:                rolw    8,n7
                     69:                and     n7,n3
                     70:        end
                     71:        ror     n2,n3
                     72:        add     n3,n3
                     73:        addq    1,n3
                     74:        return(n3)
                     75:        end getn
                     76: 
                     77: setb = qproc (b: _bytevec, bit: int)
                     78:        movea   b,r1
                     79:        move    rr,n1
                     80:        asr     1,n1
                     81:        moveb   n1,n2
                     82:        andib   7,n2
                     83:        asr     3,n1
                     84:        bset    n2,4(r1,n1)
                     85:        end setb
                     86: 
                     87: setn = qproc (b: _bytevec, bit, len: int)
                     88:        move    rr,n6
                     89:        ifeq    asr     1,n6
                     90:        then    return
                     91:        end
                     92:        movea   b,r1
                     93:        move    bit,n1
                     94:        asr     1,n1
                     95:        moveq   0,n2
                     96:        moveb   n1,n2
                     97:        andib   31,n2
                     98:        asr     3,n1
                     99:        andib   -4,n1
                    100:        moveq   1,n3
                    101:        asl     n6,n3
                    102:        subq    1,n3
                    103:        rol     n2,n3
                    104:        moveq   32,n7
                    105:        sub     n2,n7
                    106:        sub     n6,n7
                    107:        ifgt    neg     n7
                    108:        then    moveq   1,n5
                    109:                asl     n7,n5
                    110:                subq    1,n5
                    111:                move    n3,n4
                    112:                ifne    and     n5,n4
                    113:                then    ;rolw   8,n4
                    114:                        swap    n4
                    115:                        ;rolw   8,n4
                    116:                        or      n4,8(r1,n1)
                    117:                end
                    118:                not     n5
                    119:                and     n5,n3
                    120:        end
                    121:        ;rolw   8,n3
                    122:        swap    n3
                    123:        ;rolw   8,n3
                    124:        or      n3,4(r1,n1)
                    125:        end setn

unix.superglobalmegacorp.com

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