Only check irqs when irr changed
This commit is contained in:
parent
1332e32d25
commit
612901612c
12
src/pic.js
12
src/pic.js
|
@ -293,8 +293,8 @@ function PIC(cpu, master)
|
||||||
{
|
{
|
||||||
this.irr |= irq_mask;
|
this.irr |= irq_mask;
|
||||||
this.irq_value |= irq_mask;
|
this.irq_value |= irq_mask;
|
||||||
|
this.check_irqs();
|
||||||
}
|
}
|
||||||
this.check_irqs();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
this.clear_irq = function(irq_number)
|
this.clear_irq = function(irq_number)
|
||||||
|
@ -316,8 +316,8 @@ function PIC(cpu, master)
|
||||||
{
|
{
|
||||||
this.irq_value &= ~irq_mask;
|
this.irq_value &= ~irq_mask;
|
||||||
this.irr &= ~irq_mask;
|
this.irr &= ~irq_mask;
|
||||||
|
this.check_irqs();
|
||||||
}
|
}
|
||||||
this.check_irqs();
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -335,8 +335,8 @@ function PIC(cpu, master)
|
||||||
{
|
{
|
||||||
this.irr |= irq_mask;
|
this.irr |= irq_mask;
|
||||||
this.irq_value |= irq_mask;
|
this.irq_value |= irq_mask;
|
||||||
|
this.check_irqs();
|
||||||
}
|
}
|
||||||
this.check_irqs();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
this.clear_irq = function(irq_number)
|
this.clear_irq = function(irq_number)
|
||||||
|
@ -352,8 +352,8 @@ function PIC(cpu, master)
|
||||||
{
|
{
|
||||||
this.irq_value &= ~irq_mask;
|
this.irq_value &= ~irq_mask;
|
||||||
this.irr &= ~irq_mask;
|
this.irr &= ~irq_mask;
|
||||||
|
this.check_irqs();
|
||||||
}
|
}
|
||||||
this.check_irqs();
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -465,12 +465,12 @@ PIC.prototype.port20_read = function()
|
||||||
{
|
{
|
||||||
if(this.read_isr)
|
if(this.read_isr)
|
||||||
{
|
{
|
||||||
dbg_log("read port 20h (isr): " + h(this.isr));
|
dbg_log("read port 20h (isr): " + h(this.isr), LOG_PIC);
|
||||||
return this.isr;
|
return this.isr;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dbg_log("read port 20h (irr): " + h(this.irr));
|
dbg_log("read port 20h (irr): " + h(this.irr), LOG_PIC);
|
||||||
return this.irr;
|
return this.irr;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue