home *** CD-ROM | disk | FTP | other *** search
/ Phoenix CD 2.0 / Phoenix_CD.cdr / 01e / mouseng1.zip / MOUSE.TXT < prev   
Text File  |  1988-05-28  |  8KB  |  302 lines

  1. !short:     Reset Driver and Read Status
  2.  ^bINT 33 - MS MOUSE - RESET DRIVER AND READ STATUS^b
  3.  
  4.          AX = 0000h
  5.  
  6.  ^uReturn:^u AX = status
  7.  
  8.               0  hardware/driver not installed
  9.  
  10.              -1 hardware/driver installed
  11.  
  12.          BX = number of buttons
  13.  
  14.              -1 two buttons
  15.  
  16.               0  other than two
  17.  
  18.  -----------------------------------------------------------
  19. !short:     Show Mouse Cursor
  20.  ^bINT 33 - MS MOUSE - SHOW MOUSE CURSOR^b
  21.  
  22.          AX = 0001h
  23.  
  24.  -----------------------------------------------------------
  25. !short:     Hide Mouse Cursor
  26.  ^bINT 33 - MS MOUSE - HIDE MOUSE CURSOR^b
  27.  
  28.          AX = 0002h
  29.  
  30.  ^bNote:^b multiple calls to hide the cursor will require multiple calls to
  31.  
  32.        function 01h to unhide it.
  33.  
  34.  -----------------------------------------------------------
  35. !short:     Return Position and Button Status
  36.  ^bINT 33 - MS MOUSE - RETURN POSITION AND BUTTON STATUS^b
  37.  
  38.          AX = 0003h
  39.  
  40.  ^uReturn:^u BX = button status
  41.  
  42.             bit 0  left button pressed if 1
  43.  
  44.             bit 1  right button pressed if 1
  45.  
  46.          CX = column
  47.  
  48.          DX = row
  49.  
  50.  -----------------------------------------------------------
  51. !short:     Position Mouse Cursor
  52.  ^bINT 33 - MS MOUSE - POSITION MOUSE CURSOR^b
  53.  
  54.          AX = 0004h
  55.  
  56.          CX = column
  57.  
  58.          DX = row
  59.  
  60.  -----------------------------------------------------------
  61. !short:     Return Button Press Data
  62.  ^bINT 33 - MS MOUSE - RETURN BUTTON PRESS DATA^b
  63.  
  64.          AX = 0005h
  65.  
  66.          BX = button
  67.  
  68.              0 left
  69.  
  70.              1 right
  71.  
  72.  ^uReturn:^u AX = button states
  73.  
  74.              bit 0 left button pressed if 1
  75.  
  76.              bit 1 right button pressed if 1
  77.  
  78.          BX = number of times specified button has been pressed since last
  79.               call
  80.  
  81.          CX = column at time specified button was last pressed
  82.  
  83.          DX = row at time specified button was last pressed
  84.  
  85.  -----------------------------------------------------------
  86. !short:     Return Button Release Data
  87.  ^bINT 33 - MS MOUSE - RETURN BUTTON RELEASE DATA^b
  88.  
  89.          AX = 0006h
  90.  
  91.          BX = button
  92.  
  93.              0 left
  94.  
  95.              1 right
  96.  
  97.  ^uReturn:^u AX = button states
  98.  
  99.              bit 0 left button pressed if 1
  100.  
  101.              bit 1 right button pressed if 1
  102.  
  103.          BX = number of times specified button has been released since last
  104.               call
  105.  
  106.          CX = column at time specified button was last released
  107.  
  108.          DX = row at time specified button was last released
  109.  
  110.  -----------------------------------------------------------
  111. !short:     Define Horizontal Curos Range
  112.  ^bINT 33 - MS MOUSE - DEFINE HORIZONTAL CURSOR RANGE^b
  113.  
  114.          AX = 0007h
  115.  
  116.          CX = minimum column
  117.  
  118.          DX = maximum column
  119.  
  120.  -----------------------------------------------------------
  121. !short:     Define Vertical Cursor Range
  122.  ^bINT 33 - MS MOUSE - DEFINE VERTICAL CURSOR RANGE^b
  123.  
  124.          AX = 0008h
  125.  
  126.          CX = minimum row
  127.  
  128.          DX = maximum row
  129.  
  130.  -----------------------------------------------------------
  131. !short:     Define Graphics Cursor
  132.  ^bINT 33 - MS MOUSE - DEFINE GRAPHICS CURSOR^b
  133.  
  134.          AX = 0009h
  135.  
  136.          BX = column of cursor hot spot in bitmap
  137.  
  138.          CX = row of cursor hot spot
  139.  
  140.          ES:DX = pointer to bitmap
  141.  
  142.                  16 words, each defining the sixteen pixels of a row
  143.  
  144.                  low bit of each word is rightmost in row
  145.  
  146.  -----------------------------------------------------------
  147. !short:     Define Text Cursor
  148.  ^bINT 33 - MS MOUSE - DEFINE TEXT CURSOR^b
  149.  
  150.          AX = 000Ah
  151.  
  152.          BX = hardware/software text cursor
  153.  
  154.              0 software
  155.  
  156.                  CX = screen mask
  157.  
  158.                  DX = cursor mask
  159.  
  160.              1 hardware
  161.  
  162.                  CX = start scan line
  163.  
  164.                  DX = end scan line
  165.  
  166.  ^bNote:^b when the software cursor is selected, the char/attribute data at the
  167.        current screen position is ANDed with the screen mask and the
  168.        with the cursor mask
  169.  
  170.  -----------------------------------------------------------
  171. !short:     Read Motion Counters
  172.  ^bINT 33 - MS MOUSE - READ MOTION COUNTERS^b
  173.  
  174.          AX = 000Bh
  175.  
  176.  ^uReturn:^u CX = number of mickeys mouse moved horizontally since last call
  177.  
  178.          DX = number of mickeys mouse moved vertically
  179.  
  180.  Notes: a mickey is the smallest increment the mouse can sense
  181.         positive values indicate up/right
  182.  
  183.  -----------------------------------------------------------
  184. !short:     Define Interrupt Subroutine Parameters
  185.  ^bINT 33 - MS MOUSE - DEFINE INTERRUPT SUBROUTINE PARAMETERS^b
  186.  
  187.          AX = 000Ch
  188.  
  189.          CX = call mask bit
  190.          
  191.               bit 0 call if mouse moves
  192.               bit 1 call if left button pressed
  193.               bit 2 call if left button released
  194.               bit 3 call if right button pressed
  195.               bit 4 call if right button released
  196.          
  197.          ES:DX = address of FAR routine
  198.  
  199.  ^bNote:^b when the subroutine is called, it is passed the following values:
  200.  
  201.          AX = condition mask (same bit assignments as call mask)
  202.  
  203.          BX = button state
  204.  
  205.          CX = cursor column
  206.  
  207.          DX = cursor row
  208.  
  209.          DI = horizontal mickey count
  210.  
  211.          SI = vertical mickey count
  212.  
  213.  -----------------------------------------------------------
  214. !short:     Light Pen Emulation On
  215.  ^bINT 33 - MS MOUSE - LIGHT PEN EMULATION ON^b
  216.  
  217.          AX = 000Dh
  218.  
  219.  -----------------------------------------------------------
  220. !short:     Light Pen Emulation Off
  221.  ^bINT 33 - MS MOUSE - LIGHT PEN EMULATION OFF^b
  222.  
  223.          AX = 000Eh
  224.  
  225.  -----------------------------------------------------------
  226. !short:     Define Mickey/Pixel Ratio
  227.  ^bINT 33 - MS MOUSE - DEFINE MICKEY/PIXEL RATIO^b
  228.  
  229.          AX = 000Fh
  230.  
  231.          CX = number of mickeys per 8 pixels horizontally
  232.  
  233.          DX = number of mickeys per 8 pixels vertically
  234.  
  235.  -----------------------------------------------------------
  236. !short:     Define Screen Region for Updating
  237.  ^bINT 33 - MS MOUSE - DEFINE SCREEN REGION FOR UPDATING^b
  238.  
  239.          AX = 0010h
  240.  
  241.          ???
  242.  
  243.  -----------------------------------------------------------
  244. !short:     Define Double-Speed Threshold
  245.  ^bINT 33 - MS MOUSE - DEFINE DOUBLE-SPEED THRESHOLD^b
  246.  
  247.          AX = 0013h
  248.  
  249.          ???
  250.  
  251.  -----------------------------------------------------------
  252. !short:     Exchange Interrupt Subroutines
  253.  ^bINT 33 - MS MOUSE - EXCHANGE INTERRUPT SUBROUTINES^b
  254.  
  255.          AX = 0014h
  256.  
  257.          ???
  258.  
  259.  -----------------------------------------------------------
  260. !short:     Return Drive Storage Requirements
  261.  ^bINT 33 - MS MOUSE - RETURN DRIVER STORAGE REQUIREMENTS^b
  262.  
  263.          AX = 0015h
  264.  
  265.  ^uReturn:^u BX = size of buffer needed to store driver state
  266.  
  267.  -----------------------------------------------------------
  268. !short:     Save Driver State
  269.  ^bINT 33 - MS MOUSE - SAVE DRIVER STATE^b
  270.  
  271.          AX = 0016h
  272.  
  273.          ES:DX = pointer to buffer
  274.  
  275.  -----------------------------------------------------------
  276. !short:     Restore Driver State
  277.  ^bINT 33 - MS MOUSE - RESTORE DRIVER STATE^b
  278.  
  279.          AX = 0017h
  280.  
  281.          ES:DX = pointer to buffer containing saved state
  282.  
  283.  -----------------------------------------------------------
  284. !short:     Define Display Page Number
  285.  ^bINT 33 - MS MOUSE - DEFINE DISPLAY PAGE NUMBER^b
  286.  
  287.          AX = 001Dh
  288.  
  289.          ???
  290.  
  291.  -----------------------------------------------------------
  292. !short:     Return Display Page Number
  293.  ^bINT 33 - MS MOUSE - RETURN DISPLAY PAGE NUMBER^b
  294.  
  295.          AX = 001Eh
  296.  
  297.  ^uReturn:^u ???
  298.  
  299.  Extracted from RALF BROWN'S excellent INTERRUPT LISTING (4/88 version)
  300.  
  301.  -----------------------------------------------------------
  302.