Annotation of hatari/tests/xbios/xbiostst.s, revision 1.1

1.1     ! root        1: ; Test Hatari's XBIOS functions (which can be enabled with --bios-intercept).
        !             2: ; Assemble this code with TurboAss.
        !             3: 
        !             4:        movea.l 4(SP),A5        ; Get pointer to basepage
        !             5:        move.l  $0C(A5),D0      ; Text segment length
        !             6:        add.l   $14(A5),D0      ; Data segment length
        !             7:        add.l   $1C(A5),D0      ; BSS segment length
        !             8:        add.l   #$0800,D0       ; Space for the stack
        !             9: 
        !            10:        move.l  D0,D1
        !            11:        add.l   A5,D1
        !            12:        and.l   #-2,D1
        !            13: 
        !            14:        movea.l D1,SP
        !            15:        move.l  D0,-(SP)
        !            16:        move.l  A5,-(SP)
        !            17:        clr.w   -(SP)
        !            18:        move.w  #$4A,-(SP)
        !            19:        trap    #1              ; Mshrink
        !            20:        lea     12(SP),SP
        !            21: 
        !            22: 
        !            23: ; Test XBIOS 255 - Send Hatari control command
        !            24:        pea     hatcontrol(PC)
        !            25:        move.w  #255,-(SP)
        !            26:        trap    #14
        !            27:        addq.l  #6,SP
        !            28: 
        !            29: 
        !            30: ; Test XBIOS 11 - the Atari debugger XBIOS call
        !            31: ; See:
        !            32: ; - http://dev-docs.atariforge.org/files/Atari_Debugger_1-24-1990.pdf
        !            33: ; - http://toshyp.atari.org/en/004013.html#Dbmsg
        !            34: 
        !            35:        ; Print string (with length encoded in msg_num), and invoke debugger
        !            36:        pea     dbmsg_start(PC)
        !            37:        move.w  #$F000+dbmsg_end-dbmsg_start,-(SP)
        !            38:        move.w  #5,-(SP)
        !            39:        move.w  #11,-(SP)
        !            40:        trap    #14
        !            41:        lea     10(SP),SP
        !            42: 
        !            43:        ; Print NUL-terminated string
        !            44:        pea     dbmsg_nul(PC)
        !            45:        move.w  #$F000,-(SP)
        !            46:        move.w  #5,-(SP)
        !            47:        move.w  #11,-(SP)
        !            48:        trap    #14
        !            49:        lea     10(SP),SP
        !            50: 
        !            51:        ; Print given value and invoke debugger
        !            52:        move.l  #$DEADC0DE,-(SP)
        !            53:        move.w  #$1234,-(SP)
        !            54:        move.w  #5,-(SP)
        !            55:        move.w  #11,-(SP)
        !            56:        trap    #14
        !            57:        lea     10(SP),SP
        !            58: 
        !            59: 
        !            60:        clr.w   -(SP)
        !            61:        trap    #1              ; Pterm0
        !            62: 
        !            63: 
        !            64:        DATA
        !            65: 
        !            66: hatcontrol:
        !            67:        DC.B "hatari-debug evaluate 23 + 19",0
        !            68: 
        !            69: dbmsg_start:
        !            70:        DC.B "This is a Dbmsg test for a string with fixed size."
        !            71: dbmsg_end:
        !            72: 
        !            73: dbmsg_nul:
        !            74:        DC.B "This is a Dbmsg test for a NUL-terminated string.",0
        !            75: 
        !            76:        EVEN
        !            77: 
        !            78:        END

unix.superglobalmegacorp.com

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