On 3/6/18 2:19 PM, John R. Hogerhuis wrote:

Ah. Well, CloudT dynamically inserts delays to simulate the Model T processor speed. If you look at the number at the bottom of the screen it should over around 2.4Mhz. But being written in Javascript and running off timer event callbacks, I can't get cycle accuracy.


Ahh, that's how you are emulating the 2.4MHz speed. I was wondering. What do you use to determine the number of cycles to dynamically delay?

VirtualT works a bit differently.  It has two threads running:

1 Thread T (throttle) wakes up every 20ms (10ms for Windows) and calculates the number of emulated CPU cycles the emulation thread is allowed to execute. This number will vary dynamically depending on the number of FLTK window updates during the previous 20/10ms period. It then wakes up thread E and goes to sleep.

2. Thread E (emulate) wakes up and executes the number of allowed CPU cycles for this timer period as calculated by Thread T then goes back to sleep. So the throttled emulation (2.4MHz, 8Mhz, 20Mhz) modes actually execute 8085 code in short bursts every 10/20ms.

Ken


Reply via email to