A few days ago I started to write a printer server for VSTa. I wrote a
little test program, but it didn't receive any interrupt messages.
After a little bit of kernel reading I found the reason: IRQ 7 is
disabled by pointing it's vector to a routine that simply IRETs (in the
comment it says that there were problems with stray interrupts).
I commented out the line that disables IRQ 7 and now my
program gets the interrupt messages. The printer server is far from
being finished, but I may have found a bug:
In os/mach/trap.c line 597 there is a call to hardclock() without parameters.
The function hardclock lives in os/kern/xclock.c and it is implemented like
this:
void hardclock(uint x)
{
struct trapframe *f = (struct trapframe *)&x;
.
.
.
I think in trap.c it should say:
hardclock(f);
and in xclock.c it should say:
void hardclock(struct trapframe *f)
{
/* struct trapframe *f = (struct trapframe *)&x; */
.
.
.
I don't know if this really is a bug, because everything works fine, but it
sure looks strange to me.
Greetings
Robert
Received on Sun Mar 13 13:19:46 1994
This archive was generated by hypermail 2.1.8 : Wed Sep 21 2005 - 21:02:16 PDT