mouse_init

I have not properly tested this INT74 - JES 96/10/20
I have removed it. INT74 is irq 12. Which I suppose is the proper
irq for a ps2 mouse. It appears initial support was planned to
support irq 12 and at Mouse_ROUTINE_OFF is a routine that
acknowledges an irq. That routine is probably what should be
acknowledging irq12, and what int 0x74 should point to.
I have disabled int0x74 support for now. --EB 29 Oct 1997

-----

Whoever wrote the dos mouse driver spec was brain dead...
For some video modes the mouse driver appears to randomly
pick a shift factor, possibly to keep at least a 640x200 resolution.

The general programming documentation doesn't make this clear.
And says that in text modes it is safe to divide the resolution by
8 to get the coordinates in characters.

The only safe way to handle the mouse driver is to call function
0x26 Get max x & max y coordinates and scale whatever the driver
returns yourself.

To handle programs written by programmers who weren't so cautious a
doctrine of least suprise has been implemented.

As much as possible do the same as a standard dos mouse driver in the
original vga modes 0,1,2,3,4,5,6,7,13,14,15,16,17,18,19.

For other text modes allow the divide by 8 technique to work.
For other graphics modes return x & y in screen coordinates.
Except when those modes are either 40x?? or 320x???
and then handle the x resolution as in 40x25 and 320x200 modes.

320x200 modes are slightly controversial as I have indications that
not all mouse drivers do the same thing. So I have taken the
simplest, and most common route, which is also long standing dosemu
practice of always shifting by 1.