PC-9801 MOUSE.SYS specifications The mouse cursor is drawn in XOR with a size of 16 x 32 dots on the display plane specified by ax=0012h. ax=0000h, 0001h, 0002h, 0004h, 000bh, 000ch, 000fh are the same as the Microsoft version. However, the return value of ax=0000h does not include the number of buttons in BX. Microsoft ax=0005h is separated into 0005h for the left button and 0007h for the right button. Microsoft ax=0006h is separated into 0006h for the left button and 0008h for the right button. The Microsoft version of ax=0007h is ax=0010h. The Microsoft version of ax=0008h is ax=0011h. Get mouse cursor position and button status in: ax=0003h out: ax=left button status 0:OFF -1:ON bx=right button status 0:OFF -1:ON cx=horizontal coordinates 0 to 639 dx=vertical coordinate 0 to 399 (0 to 199 for 640 x 200) Get left button press information in: ax=0005h out: ax=left button status 0:OFF -1:ON bx=Number of presses since last call cx=Last horizontal coordinate pressed 0 to 639 dx=last vertical coordinate pressed 0 to 399 (0 to 199 for 640 x 200) Get left button release information in: ax=0006h out: ax=left button status 0:OFF -1:ON bx=Number of times release since last call cx=last horizontal coordinate pressed 0 to 639 dx=last vertical coordinate pressed 0 to 399 (0 to 199 for 640 x 200) Get right button press information in: in ax=0007h out: ax=right button status 0:OFF -1:ON bx=Number of presses since last call cx=Last horizontal coordinate pressed 0 to 639 dx=last vertical coordinate pressed 0 to 399 (0 to 199 for 640 x 200) Get right button release information in: ax=0008h out: ax=right button status 0:OFF -1:ON bx=Number of times release since last call cx=last horizontal coordinate pressed 0 to 639 dx=last vertical coordinate pressed 0 to 399 (0 to 199 for 640 x 200) Mouse cursor shape setting in: ax=0009h bx=horizontal coordinates of cursor center point 0 to 15 cx=vertical coordinate of cursor center point 0 to 31 (0 to 15 for 640x200) es:dx=First address of cursor shape data 16 x 32 dots 2 x 32 = 64 bytes (16 x 16 dots 2 x 16 = 32 bytes for 640 x 200) Cursor Display Screen Settings in: ax=0012h bx=display plane Initial value of display plane is 2 (green) Graphics VRAM settings and implementation status acquisition in: ax=0013h bx=VRAM usage screen setting 0: Plane 0 to 2 1: Plane 0 to 3 out: bx=VRAM implementation status 0: Plane 3 implementation -1: Plane 3 not implemented In the Microsoft version, 00fdh Mouse interrupt allowed in: ax=0014h bx=interrupt control 0: Start interrupt 1: Interrupt stopped In the Microsoft version, 00feh