Subject: Re: 4.3BSD/Ultrix binary emulation
To: A. Wik <aw@aw.gs>
From: Johnny Billquist <bqt@GW.SoftJAR.SE>
List: port-vax
Date: 03/01/2006 22:58:57
Actually, I don't think that has ever worked.
The Ultrix compat stuff is (I think) for the DECstations. Don't think it 
has ever been worked over for VAX.

But I'm very unsure about this all. Never tried it myself...

 	Johnny

On Wed, 1 Mar 2006, A. Wik wrote:

> Has anyone tried running 4.3BSD or Ultrix 4.5 binaries
> on NetBSD/vax 1.5.x?  Any known problems?
>
> Although the COMPAT option for 4.3BSD is enabled in my
> kernel, all binaries I've tested so far have output some
> garbage and exited.  The results were identical to a
> preceding attempt with Ultrix compatibility, which
> according to kernel config file comments cannot co-exist
> with the 4.3 compat option).
>
> As for the executables, the file(1) utility suggests:
>  # file bin/date
>  bin/date: 386 demand paged pure executable not stripped
>
> Manual inspection does not confirm such findings.  For
> example, /bin/sync (chosen for its small size) contains
> the VAX instruction for a 4.3BSD sync(2) system call -
> CHMK 36 - and then immediately checks the carry flag -
> with BCS (== BLSSU) to determine whether it failed.
>
> Abbreviated output of objdump(1) follows:
>
> # objdump -b binary -m vax -D sync
>
> sync:     file format binary
>
> No symbols in "sync".
> Disassembly of section .data:
>
> 00000000 <.data>:
>       0:	0b 01 00 00 		crc	$1, $0, $0, $0
>       4:	00
>       5:	04          		ret
>       6:	00          		halt
>       7:	00          		halt
>       8:	00          		halt
>       9:	04          		ret
>       a:	00          		halt
>       b:	00          		halt
>       c:	00          		halt
>       d:	00          		halt
>       e:	00          		halt
>       f:	00          		halt
>      10:	f0 00 00 00 		insv	$0, $0, $0, $0
>      14:	00
> ...
>     470:	00          		halt
>     471:	00          		halt
>     472:	bc 24       		chmk	$36
>     474:	1f f2       		blssu	0x468
>     476:	04          		ret
>
>