[Simh] simh -- sim_fio.c big-endian bug introduced in V3.2-1?

Bailey, Scott scott.bailey at eds.com
Fri Jul 16 15:43:01 EDT 2004


I just belatedly got around to downloading and building the simh V3.2-1 VAX
emulator on my SPARC Ultra 60 running Debian Linux. I had been running the
V3.2-0 emulator without problems.

Imagine my bemusement to see, after booting the CPU, that the emulator
attempted to boot from device "0AUD" -- and fail since that device does not
exist. :-) Manually "B DUA0"-ing got further, but died when allegedly no
valid bootblock could be found on the [virtual] device.

I confirmed that my old V3.2-0 vax executable worked fine. I then dropped
the V3.2-0 sim_fio.c file into my V3.2-1 directory, rebuilt, and the
resulting mutant V3.2-1 vax emulator works fine for me.

I conclude the "Optimized sim_fread" updates of May 26 in sim_fio.c are not
working correctly on my big-endian host, although it is totally unclear to
me why this should be so. Presumably this would be true for all simulated
hardware, although I've never used anything except VAX.

If it makes any difference, I am building like this:

make BIN/vax VM_VAX=1 USE_INT64=1 USE_NETWORK=1

(although "VM_VAX=1 USE_INT64=1" appears to be a no-op on my host because I
get an identical executable regardless of whether I use them or not.)

Any thoughts from those more comfortable reading C code than I?

Thanks,

	Scott Bailey
	scott <dot> bailey <at> eds <dot> com



More information about the Simh mailing list