On Tue, 2003-11-18 at 10:37, Gwenole Beauchesne wrote:
On Tue, 18 Nov 2003, J. Mayer wrote:
Here's a set of patches which adds PPC processor as a new target.
The emulation is not complete:
Hehe, interesting. Since I hadn't seen news so far, I decided to
implement
my own version for the SheepShaver core CPU emulator this weekend. ;-)
Damned :=)
I have a test program that covers around 600K variants with specific
values to trigger flags updates. It requires a PPC host for now to
validate results. It helped a lot to first write a correct
interpreter and
discover some hidden semantics in rare cases.
The program, ppc_test does this with a lot of different instruction,
using a huge set of values. With the ctrace program, I could check that
it runs the same on my Ibook and on my PC with qemu. Where could I find
yours to make more tests ?
You found hidden semantics, as you say. What is confusing, also, is
that
Motorola's implementation isn't the same than IBM's one for some
strange
cases...
I will first fix Microlib's core and try to have a look at QEMU's
afterwards.
there is no supervisor mode support for now
Assuming supervisor is OEA, how do you plan to emulate the TBR (at
least
for VEA)? Currently, I make TBU=0/TBL=clock() loaded at MFTBR time.
This
is enough to make MacOS classic happy. An alternative would be to use
gettimeofday() for seconds/microseconds. Any ideas?
My TBL/TBU implementation isn't a real time clock, but is a cycle
counter, as on "real" PPC. That means that the CPU will seem to run
with
a variable clock, if a program compares its value to the one given by a
real-time clock. It's updated at the end of a translated block, or when
I see a mftbl/mftbu
instruction.
This way of doing seems closer to real PPC implementation, but may look
strange for some OS's...
Regards.
J. Mayer <address@hidden>
Never organized
_______________________________________________
Qemu-devel mailing list
address@hidden
http://mail.nongnu.org/mailman/listinfo/qemu-devel