INT 15 - TopView - SEND MESSAGE - "NEW" - CREATE NEW OBJECT          

Input

Output

AX

12h       AX

BX

 01h Object Type     BX

CX

        CX

DX

        DX
ES:DI     ES:DI
Return: DWORD on top of stack is new object handle

Object Type:

        00h handle is DWORD on top of stack
        01h use task's window handle
        02h given task's mailbox (task's handle on top of stack)
        03h current task's mailbox
        04h given task's keyboard (task's handle on top of stack)
        05h current task's keyboard object
        08h WINDOW class
        09h MAILBOX class
        0Ah KEYBOARD class
        0Bh TIMER object (counts down 32-bit time in 10ms increments)
        0Fh POINTER object
        10h PANEL object

STACK: (if window object or WINDOW class)

        DWORD address to jump to (no new task if high word == 0)
        DWORD ??? (doesn't seem to be used)
        DWORD bytes for task's private stack (-1 == default of 0100h)
        DWORD bytes system memory allocation (0 == none, -1 == default)
        DWORD window size, columns
        DWORD window size, rows
        DWORD length of window title
        DWORD address of window title

Note:   If a new task is created, it is started with

             AX = BX = CX = SI = DI = BP = 0
                                      DX = segment of parent's object handle
                            DS = ES = SS = segment of private stack (and new
                                           task's object handle)


Copyright © 1985 to 2022 Beta Systems                            Last modified: Wednesday, January 05, 2022 .