Related articles |
---|
Interpreters & Intermediate languages elan@tasha.cheme.cornell.edu (1994-04-13) |
Re: Interpreters & Intermediate languages pardo@cs.washington.edu (1994-04-13) |
Re: Interpreters & Intermediate languages leichter@thorium.rutgers.edu (1994-04-19) |
Re: Interpreters & Intermediate languages khorsell@ee.latrobe.edu.au (1994-04-21) |
Re: Interpreters & Intermediate languages bosullvn@maths.tcd.ie (Bryan O'Sullivan) (1994-04-22) |
Newsgroups: | comp.compilers |
From: | khorsell@ee.latrobe.edu.au (Kym Horsell) |
Keywords: | interpreter, translator |
Organization: | Department of Electronic Engineering, La Trobe University |
References: | 94-04-092 |
Date: | Thu, 21 Apr 1994 05:35:58 GMT |
elan@tasha.cheme.cornell.edu (Elan Feingold) writes:
>I'm looking to write a fast emulator for the Z80. I want to use dynamic
>translation.
Partial evaluation technology is probably what you need.
There are research-oriented books (the area is till quite new) but Pagan
has a nice little book illustrating how to turn interpreters written is
Pascal into straight code. His methods are manual, but despite their
simplicity are reasonably good. I can get an exact ref if your library
computer is lacking an index. ;-)
I think (from memory) he cites a stack-language interpreter + stack code
for X ==> Pascal program for X running about an order of mag faster than
the original interpreter + X (as one would usually expect).
Hence to emulate your Z80 first write an interpreter for the Z80 and then
follow Pagan's methods to turn it into a program generator. Thence feed
the prog-gen your Z80 code and get Pascal code for same task; thence
compile into your favourite machine lang via Pascal comp.
-kym
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.