[sebhc] Dave Dunfield's H8 emulator
Jack Rubin
jack.rubin at ameritech.net
Thu May 13 06:44:48 CDT 2004
>
> I have found the cause of this:
>
> When 040.000 is the monitors RAM area. It just happens that
> at 040.003 there is $C9(311) which is a RET instruction.
>
> I see three options:
>
> 1 - do nothing - the emulator will crash under these
> conditions, however
> it will operate at it's highest speed
>
> 2 - split all 16 bit accesses into 2 8-bit accesses, this
> will slow it down,
> but it will crash the virtual 8080 only - just like the real H8.
>
> 3 - Perform a test and halt the simulation (eventually into
> the debugger) if
> a stack wrap occurs.
>
I would suggest a combination of (1) and (3) - under normal conditions,
do nothing and let the emulator run at full speed. Implement (3) as an
option (like the Ignore parameter) for debugging.
A semi-related issue is how fast the emulator should run relative to
wall-time. Are you planning to allow an option for running H8 as if it
were a true 1MHz system regardless of the system clock of the host? I
think this will become more important if you interface to real-world
devices like disk drives and tape drives.
Jack
--
Delivered by the SEBHC Mailing List
More information about the Sebhc
mailing list