Annotation of researchv10no/cmd/spitbol/spitv35sub.s, revision 1.1

1.1     ! root        1: #
        !             2: #      copyright (c) 1981 under berne and universal copyright
        !             3: #      law by dewar information systems corporation.
        !             4: #
        !             5: #      the software described in this document is proprietary
        !             6: #      to dewar information systems corporation and furnished
        !             7: #      to the purchaser under a license  for use on a  single
        !             8: #      computer  system and can be copied (with the inclusion
        !             9: #      of dewar information systems  corporations's copyright
        !            10: #      notice) only for use in such system.
        !            11: #
        !            12: #
        !            13: #      cmc     compare character strings
        !            14: #
        !            15:        .globl  sbcmc
        !            16: sbcmc: pushr   $mr2+mr3
        !            17:        ashl    $-15,r6,r11
        !            18:        beqlu   2f
        !            19: 1:     cmpc3   $32768,(r10),(r9)
        !            20:        blssu   3f
        !            21:        bgtru   4f
        !            22:        addl2   $32768,r10
        !            23:        addl2   $32768,r9
        !            24:        sobgtr  r11,1b
        !            25:        bicl2   $0xffff8000,r6
        !            26:        beqlu   5f
        !            27: 2:     cmpc3   r6,(r10),(r9)
        !            28:        bgtru   4f
        !            29:        beqlu   5f
        !            30: 3:     popr    $mr2+mr3
        !            31:        clrl    r10
        !            32:        clrl    r9
        !            33:        movl    (sp)+,r11
        !            34:        jmp     *(r11)+
        !            35: 4:     popr    $mr2+mr3
        !            36:        clrl    r10
        !            37:        clrl    r9
        !            38:        addl3   (sp)+,$4,r11
        !            39:        jmp     *(r11)+
        !            40: 5:     popr    $mr2+mr3
        !            41:        clrl    r10
        !            42:        clrl    r9
        !            43:        addl2   $8,(sp)
        !            44:        rsb
        !            45: #
        !            46: #      mcb     move characters backward (for buffer datatype)
        !            47: #
        !            48:        .globl  sbmcb
        !            49: sbmcb: pushr   $mr2+mr3+mr4+mr5
        !            50:        subl2   r6,r9
        !            51:        subl2   r6,r10
        !            52:        ashl    $-15,r6,r11
        !            53:        beqlu   2f
        !            54: 1:     movc3   $32768,(r10),(r9)
        !            55:        movl    r1,r10
        !            56:        movl    r3,r9
        !            57:        sobgtr  r11,1b
        !            58:        bicl2   $0xffff8000,r6
        !            59: 2:     movc3   r6,(r10),(r9)
        !            60:        movl    r1,r10
        !            61:        movl    r3,r9
        !            62: 3:     popr    $mr2+mr3+mr4+mr5
        !            63:        rsb
        !            64: #
        !            65: #      mvc     move characters
        !            66: #
        !            67:        .globl  sbmvc
        !            68:        .globl  sbmvw
        !            69: sbmvc:
        !            70: sbmvw:
        !            71:        pushr   $mr2+mr3+mr4+mr5
        !            72:        ashl    $-15,r6,r11
        !            73:        beqlu   2f
        !            74: 1:     movc3   $32768,(r10),(r9)
        !            75:        addl2   $32768,r10
        !            76:        addl2   $32768,r9
        !            77:        sobgtr  r11,1b
        !            78:        bicl2   $0xffff8000,r6
        !            79:        beqlu   3f
        !            80: 2:     movc3   r6,(r10),(r9)
        !            81:        addl2   r6,r10
        !            82:        addl2   r6,r9
        !            83: 3:     popr    $mr2+mr3+mr4+mr5
        !            84:        rsb
        !            85: #
        !            86: #      mwb     move words backward
        !            87: #
        !            88:        .globl  sbmwb
        !            89: sbmwb: pushr   $mr2+mr3+mr4+mr5
        !            90:        ashl    $-8,r6,r11
        !            91:        beqlu   2f
        !            92: 1:     subl2   $256,r10
        !            93:        subl2   $256,r9
        !            94:        movc3   $256,(r10),(r9)
        !            95:        sobgtr  r11,1b
        !            96:        bicl2   $0xffffff00,r6
        !            97:        beqlu   3f
        !            98: 2:     subl2   r6,r10
        !            99:        subl2   r6,r9
        !           100:        movc3   r6,(r10),(r9)
        !           101: 3:     popr    $mr2+mr3+mr4+mr5
        !           102:        rsb
        !           103: #
        !           104: #      sbtrc   translate characters
        !           105: #
        !           106:        .globl  sbtrc
        !           107: sbtrc: pushr   $mr2+mr3+mr4+mr5
        !           108:        ashl    $-15,r6,r11
        !           109:        beqlu   2f
        !           110: 1:     movtc   $32768,(r10),$0,(r9),$32768,(r10)
        !           111:        addl2   $32768,r10
        !           112:        sobgtr  r11,1b
        !           113:        bicl2   $0xffff8000,r6
        !           114:        beqlu   3f
        !           115: 2:     movtc   r6,(r10),$0,(r9),r6,(r10)
        !           116:        clrl    r10
        !           117:        clrl    r9
        !           118: 3:     popr    $mr2+mr3+mr4+mr5
        !           119:        rsb

unix.superglobalmegacorp.com

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