[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