[comp.os.minix] Incompatibility with MS Mouse

ericr@ipmoea.UUCP (Eric Roskos) (10/18/87)

Currently I'm tracking down a problem with Minix (version 1.2), and am
wondering if anyone else has any experience with this same problem.

The problem is that if you boot MS-DOS with the Microsoft Mouse Driver
(version 6) installed, then insert a Minix boot disk and boot by typing
ctrl-alt-del, very often when you type '=' to fsck to start Minix, Minix
either hangs, or gives an error message about an unknown interrupt > 16.
(This is the mouse driver that came with Word 4.0, i.e., the newest one.)

The "unknown interrupt" message seems to be inaccurate, because it used
to say that it was an unknown interrupt < 16, before I put in some tracing
code which moved things around; I think it is just branching to some random
place in memory which happens to be where the unknown interrupt code is
presently located.

By putting some trace statements in, I have determined that this hang
occurs when the int 11 is done in get_chrome.  But, if I temporarily
eliminate the call to get_chrome, it hangs later on, sometime after
restart() is called.  If I move get_chrome later in the code, it still
hangs on the int 11, so I think it is related to the int 11, rather than
(for example) being due to an interrupt that occurs around the time the
int 11 is executing.  Also, early on in my debugging, I added some code
to check the PICs to find out what was going on with interrupts, and
it showed no interrupts in service, and only a timer interrupt 
outstanding.  So I don't think it is being caused by an interrupt before
the vectors have been set up, either.

I disassembled the code for int 11 in my BIOS, and it doesn't turn on
interrupts in the int 11 code, so that's not it.

Has anyone else seen this problem?  Minix always boots fine if I don't
load the mouse driver when I boot DOS (or if I boot Minix by turning the
power off, then on, on the PC, with the boot disk in the drive).

On a related matter, has anyone done anything with maybe putting in a simple
debugger into Minix?  It is one of the most-needed things if you're working
on the OS itself (rather than just writing applications for it).  You could
link a debugger in with the OS, and maybe invoke it with int 1B (keyboard
break) or something.  Does anyone know of a public-domain, standalone
8086 debugger that could be adapted to this purpose?
 

bing@galbp.LBP.HARRIS.COM (Bing Bang) (10/19/87)

i had this problem with my mouse before i made my com port drivers.
the problem is very simple; the mouse being connected to a serial port,
gives off com port interrupts 11 or 12 and since minix does not have a
handler for these interrupts, they produce the generic error about
unknown interrupts. several solutions:

mask off the com port interrupts in the 8259 initialization,
or disconnect the mouse before booting minix


-- 
Bing H. Bang           +----------------------------------------------------+
Harris/Lanier          |MSDOS and OS/2 (whenever it gets here): just say no.|
Atlanta GA             +----------------------------------------------------+