Roy,

I think that most instructions in plex86 aren't actually emulated, but
run natively on the CPU. Only instructions that can't be virtualised are
actually trapped and emulated.

Actually, I think your idea was used for a fast Sinclair ZX spectrum
emulator (by G. Lunter maybe?) some time ago - each time a section of
code was executed for the first time it was decoded and emulated. Next
time the same code was executed, the previously decoded stuff from last
time was re-used, giving a good speedup. Obviously the stored decoded
stuff would need to be invalidated whenever the memory was overwritten.

Jeff

Roy Souther wrote:
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> I am curious about the way instruction emulation happens in the virtual
> system and way that it could be faster.
> 
> Is each instruction translated and emulated one at a time? This would be the
> easiest for the developers. My idea is that if the software was to keep a
> list of the most commonly emulated sequences and when one of these common
> sequences of instructions is called rather then emulate them one at a time
> the system would recall the emulation that was previously translated. This
> would use more memory but I think it could drasticly increase the speed of
> the emulation because of the constant amount of calls that M$ OS's repeatedly
> make to the same instructions.
> 
> Having no knowledge of how the software currently works, I could be totally
> wrong here. I would like to know a little more about it and if my idea has
> merit.
> 
> - --
> Roy Souther <[EMAIL PROTECTED]>
> www.SiliconTao.com
> 
> Linux, overcomming barriers, removing walls of confinement
> and smashing windows.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.0.6 (GNU/Linux)
> Comment: For info see http://www.gnupg.org
> 
> iEYEARECAAYFAjx/pCYACgkQCbnxcmEBt43O8ACgu09L7GSKXZVHql4BE04bO9in
> D3AAn3eQVhgP8eA1k68zEi6oi1ceivRk
> =4AQM
> -----END PGP SIGNATURE-----

Reply via email to