Subject: TME sun3 emulator status & getting ethernet working
To: None <port-sun3@netbsd.org>
From: None <SigmFSK@aol.com>
List: port-sun3
Date: 10/18/2006 13:33:01
I've been doing lots of testing of Matt Fredette's sun3 emulator, TME.
I'm constantly amazed and impressed with TME. It does so much, so well.
I found and fixed the following M68K emulation bugs:
incorrect calculation of Effective Address for immediate-mode instructions
with program counter indirect 16-bit displacement addressing (problem 34538)
cmp2/chk2 instructions not emulated correctly (problem 33969)
movel sp,-(sp) pushes wrong value on stack (problem 34690)
fcmp doesn't consider positive infinity/negative infinity equal to itself
(problem 34571)
fneg of 0.0 is not -0.0 (problem 34616)
Now, other than a few floating point tests (problem 34691), all the below
testsuites operate identically inside TME as on a real sun3:
NetBSD 3.0, gcc-3.3.3-testsuite
SunOS 4.1.1, gcc-3.2.3-testsuite
and the complete Ada Compiler Validation Capability as compiled under
Telesoft under SunOS 4.1.1, running under NetBSD 3.0, NetBSD 1.5.3, and SunOS 4.1.1
Floating point emulation isn't perfect inside TME, but it is better than
turning off TME's mc68881 emulation and allowing NetBSD running inside TME to do
the emulation. And its also better than using a custom NetBSD
kernel/userland with -mksoftfloat (problem 34553).
The emulated tape drive sometimes truncates files (problem 34536), and I
wasn't able to login via an emulated serial line (problem 34835), but these are
minor complaints, being that ethernet works so well...for running NetBSD
inside TME.
I'm working on getting ethernet working when running SunOS 4.1.1 inside TME.
Ethernet works when running NetBSD inside the emulator (isn't this
incredible!), but when attempting to "ifconfig ie0" under SunOS, SunOS responds with
"ie0: init failed: no intr".
Preliminary investigation seems that this problem may not be due incomplete
intel ethernet 825x6 chip emulation in TME. "no intr" appears to be a
default message when the SunOS ie driver has a problem. And without the SunOS
source, it may be difficult to determine why SunOS is complaining.
I read that SunOS on Sun 386i generates this same "ie0: init failed: no
intr" message when the NVRAM is bad, causing ethernet to not work, so who knows
why SunOS is complaining inside TME. Any ideas, please pass them along.
A tip of the hat to you, Matt. TME rulz!
/arthur
p.s. Some tips for TME users: For best performance, setup TME
(sun3-carrera-eeprom.txt and SUN3-CARRERA) to use 32Mb of memory (TME's maximum) instead
of the default 8Mb. And don't attempt to actually format a SCSI disk inside
of TME. Just label it and continue.