1
0
Fork 0

Check if cycles need to be lowered when adding new irqs/events

Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1214
This commit is contained in:
Sjoerd van der Berg 2003-09-01 14:28:37 +00:00
parent a67453b78e
commit 3a869f20de

View file

@ -244,29 +244,30 @@ static void AddEntry(PICEntry * entry) {
if (!find_entry) {
entry->next=0;
pic.next_entry=entry;
return;
}
if (find_entry->index>entry->index) {
} else if (find_entry->index>entry->index) {
pic.next_entry=entry;
entry->next=find_entry;
return;
}
while (find_entry) {
} else while (find_entry) {
if (find_entry->next) {
/* See if the next index comes later than this one */
if (find_entry->next->index>entry->index) {
if (find_entry->next->index > entry->index) {
entry->next=find_entry->next;
find_entry->next=entry;
return;
break;
} else {
find_entry=find_entry->next;
}
} else {
entry->next=find_entry->next;
find_entry->next=entry;
return;
break;
}
}
Bits cycles=PIC_MakeCycles(pic.next_entry->index-PIC_Index());
if (cycles<CPU_Cycles) {
CPU_CycleLeft+=CPU_Cycles;
CPU_Cycles=0;
}
}
void PIC_AddEvent(PIC_EventHandler handler,Bitu delay) {