[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
INT 2F - MDEBUG command driver - EXECUTE INTERPRETER COMMAND
        AX = D102h
        BL = first character of the interpreter command
        BH = last character of the interpreter command (or blank)
        DS:SI -> parameter for the interpreter command as ASCIZ string
        DS:DI -> MDEBUG data structure (see below)
Return: AL = FFh
        CF set on error
            AH = error number
                01h syntax error
                02h first shell of the command.com is activ
                03h esc pressed
                04h break pressed
                05h DOS is busy
                06h command ended
                07h division by zero
                08h invalid display driver
                09h invalid command driver
                0Ah error 8 and 9
                0Bh unknown error
                0Ch new error
                    DS:SI -> ASCIZ error message (max 30 characters)
               else unknown error
        CF clear if successful
            AH = return code
                00h continue processing the command line
                01h leave MDEBUG popup session
                02h leave MDEBUG popup session and automatically popup again
                    if the InDOS flag is zero
                03h not used (same as 00h)
                04h not used (same as 00h)
                05h put new command line into the input buffer,
                    DS:SI -> new command line (ASCIZ string, max 66 chars)
                06h process new command line
                    DS:SI -> new command line (ASCIZ string, max 66 chars)
               else unknown status, but continue processing commmand line
Note:   this function must end with a far call to the old INT 2F handler (with
          registers unchanged) if the driver does not support the interpreter
          command in BX.  Otherwise, the driver must not chain to the old
          INT 2F.

Format of MDEBUG data structure:
Offset  Size    Description
 00h    WORD    register SE
 02h    WORD    register OF
 04h    WORD    register FS
 06h    WORD    register FO
 08h    WORD    register AX
 0Ah    WORD    register BX
 0Ch    WORD    register CX
 0Eh    WORD    register DX
 10h    WORD    register SI
 12h    WORD    register DI
 14h    WORD    register DS
 16h    WORD    register ES
 18h    WORD    register BP
 1Ah    WORD    register SS
 1Ch    WORD    register SP
 1Eh    WORD    register FL (flags)
 20h    WORD    register R0
 22h    WORD    register R1
 24h    WORD    register R2
 26h    WORD    register R3
 28h    WORD    register R4
 2Ah    WORD    register R5
 2Ch    WORD    register R6
 2Eh    WORD    register R7
 30h    WORD    register R8
 32h    WORD    register CS, return-address
 34h    WORD    register IP, return-address
 36h    DWORD   saved pointer to data for key <F6> (v1.60)
                saved monitor address (v1.70)
 3Ah 12 WORDs   saved register values on last popup entry (for <F8> key)
                (original register values at popup entry of MDEBUG)
                AX, BX, CX, DX, SI, DI, DS, ES, BP, SS, SP, flags
 52h 12 WORDs   saved register values on last popup exit (for <SHIFT-F8> key)
                AX, BX, CX, DX, SI, DI, DS, ES, BP, SS, SP, flags
 6Ah    DWORD   address of the DOS-invars-table
 6Eh    DWORD   address of the InDOS flag
 72h    WORD    offset of the register which is used for the segment of the
                first monitor window
 74h    WORD    offset of the register which is used for the offset of the
                first monitor window
 76h    WORD    name of the register which is used for the segment of the
                first monitor segment
 78h    WORD    name of the register which is used for the offset of the first
                monitor window
 7Ah    WORD    pseudo register 1
 7Ch    WORD    pseudo register 2

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson