Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!ukma!rutgers!apple!well!ewhac From: ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) Newsgroups: comp.sys.amiga Subject: Re: Amiga Emulators Message-ID: <7321@well.UUCP> Date: 6 Oct 88 23:18:52 GMT References: Reply-To: ewhac@well.UUCP (Leo 'Bols Ewhac' Schwab) Organization: Slow-Witted Weapons Experts, Ltd. Lines: 33 Quote: "Then you admit confirming not denying you ever said that?" -- Milo In article rg20+@andrew.cmu.edu (Rick Francis Golembiewski) writes: >I've wondered >why doesn't some one make a program that, instead of trying to emulate all of >the hardware, doesn't take the software and create 68K machine code, treating >the software as "source" code of a high level language (in this case one which >has all the attributes of say an IBM or a Mac...). [ ... ] I assume he means a program that takes FOO object code (where FOO is a given CPU type) and generates equivalent 68K object code for later execution. The reason this isn't done is because it's impossible (if not impossible, certainly supremely difficult). The two biggest blocks are data segments (How does the interpiler know what's code and what's data? The program object code will no doubt grow bigger, so how do we move the data segments around to compensate, and modify the object code to find them?), and self-modifying code (replacing a 68K opcode with a FOO opcode is going to cause you problems *real* fast). The first case is unavoidable, unless the program still has its symbol table around. The second case crops up all the time in copy protection routines, and some high-performance applications (read: games). Add to all that the "reversed" byte order of words and longwords on the 68000, the differing flag behavior, and the fact that the target program will still be running on foreign hardware, and you have some seriously hairy bananas before you. _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ Leo L. Schwab -- The Guy in The Cape INET: well!ewhac@ucbvax.Berkeley.EDU \_ -_ Recumbent Bikes: UUCP: pacbell > !{well,unicom}!ewhac O----^o The Only Way To Fly. hplabs / (pronounced "AE-wack") "Work FOR? I don't work FOR anybody! I'm just having fun." -- The Doctor