The MS - Mouse Drivers do work only in the Graphics Modes up to screen 19
(320x200x256), not in the GFA-BASIC supported SVGA Mode (800x600x16).
The new feature in this version (4.52) is a DEFMOUSE extension.
In addition to the old parameters there is now:
DEFMOUSE 100		// small diamond shape
DEFMOUSE 101		// big	 diamond shape
DEFMOUSE 102		// small hollow cross
DEFMOUSE 103		// big	 hollow cross
DEFMOUSE 104		// small cross
DEFMOUSE 105		// big	 cross
DEFMOUSE 106		// small arrow
DEFMOUSE 107		// big	 arrow
DEFMOUSE 108		// full screen crosshair
These mouse forms are not the usual white with small black outline, but
inverting, that is the colors under the cursor change.
These mouse forms only work in VGA (EGA) Modes with 16 Colors.
Another difference to the standard mouse is that one feature of the mouse
driver is not duplicated. If the mouse is hidden and then shown at the same
position (without movement) there is a delay in the original mouse driver.
This delay causes problems in simple drawing loops, as in:
	DO
	  PLOT MOUSEX,MOUSEY
	UNTIL MOUSEK
Because of this delay mouse movements are not reported by the mouse driver,
which appers to only allow very inaccurate and unpredictable mouse action.
The workaround is to check for mouse movements first before hiding the mouse
(what the PLOT has to do internally, because any screen output depends on
internal registers of the Graphik-Card, which are not saved by the Mouse
Driver - on an EGA Card it is not possible, and even on a VGA Crad at least
very difficult):
	DO
	  MOUSE x&,y&,k&
	  EXIT if k&
	  IF x& != ox& || y& != oy&
	    PLOT x&,y&
	    ox& = x&,oy& = y&
	  ENDIF
	LOOP
I would prefer to allow this delay to be made optional (it is probably
supposed to prevent flicker and to allow faster screen updates if run in a
DOS window under MS Windows), because the extra checks for mouse movements
sometimes simply obscures the code beyond readablity.
With a DEFMOUSE 10x now there is some flicker (which should be avoided
for a laptops LCD display), but it's now possible to choose: either fast
response with some flicker or slow responce without much flicker.
(In the example it's quite easy to check for mouse movements, but often this
causes quite a bit extra work.)

How to get a 800x600x16 Mode for a (Super) VGA Card:

PROCEDURE HiresOn()
  LOCAL i&,f& = 0
  HiresTest(91,f&)
  IF f& THEN EXPROC
  FOR i& = 127 DOWNTO 20
    HiresTest(i&,f&)
    EXIT IF f&
  NEXT i&
  if _C != 16 THEN SCREEN 18
RETURN
PROCEDURE HiresTest(mode&,VAR flag&)
  TRY
    SCREEN mode&
    IF _X = 800 && _Y = 600 && _C = 16
      flag& = 1
    ENDIF
  CATCH
RETURN

HiresOn() sets a higher resolution by checking all possible SCREEN modes
and checking if the mode is ok. HiresOn defaults to VGA (640x480x16)
resolution (the first check (91) is the correct mode for one card.)
Next a DEFMOUSE 107 gives a visible mouse in this non standard
resolution.
