Be more descriptive about higan's overhead.

This commit is contained in:
Tim Allen 2017-08-09 19:27:39 +10:00
parent 09c9a55588
commit 45c8f09330
1 changed files with 17 additions and 5 deletions

View File

@ -165,11 +165,23 @@ Games can and do depend on timing details like
it will interrupt the CPU at exactly the right time it will interrupt the CPU at exactly the right time
for the CPU to fiddle with the video chip". for the CPU to fiddle with the video chip".
higan is therefore very cautious about timing: higan is therefore very cautious about timing:
it always checks all possible devices while it's emulating the audio chip (for example),
to see if anyone wants to interrupt anyone else at every point the emulated CPU *might* interrupt
before proceeding to the next emulated step. the emulated audio chip,
Although repeated checking is slow, higan switches to emulating the CPU up to the same point
higan checks anyway to find out whether the CPU *will* interrupt it.
In this way,
higan is a little bit like
an office-worker trying to do the jobs of three other people
by running from desk to desk,
sending the same emails
that those three people would send to each other,
leaving themselves a note at each desk to remind themselves
where they were up to when they come back.
Although this constant switching
is slow and inefficient,
higan does it
to ensure the emulated console to ensure the emulated console
always matches the behaviour always matches the behaviour
of the original. of the original.