*BSD News Article 50168


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!simtel!lll-winken.llnl.gov!trib.apple.com!agate!agate!usenet
From: frank@fwi.uva.nl (Frank van der Linden)
Newsgroups: comp.unix.bsd.netbsd.announce
Subject: NetBSD/i386 runs Linux svgalib binaries
Followup-To: poster
Date: 28 Aug 1995 15:01:55 -0700
Organization: FWI, University of Amsterdam
Lines: 45
Sender: cgd@agate.berkeley.edu
Approved: netbsd-announce-request@agate.berkeley.edu
Message-ID: <41t9re$ojv@carol.fwi.uva.nl>
NNTP-Posting-Host: agate.berkeley.edu
Keywords: NetBSD Linux emulation
X-Organisation: Faculty of Mathematics, Computer Science, Physics & Astronomy
                University of Amsterdam
                Kruislaan 403
                NL-1098 SJ Amsterdam
                The Netherlands
X-Phone:        +31 20 525 7463
X-Fax:          +31 20 525 7490
Status: RO


As you might know, NetBSD-current/i386 has been capable of running Linux
binaries since February now, bringing you the joy of playing linuxxdoom.
Yesterday (August 28th), I checked in some stuff that should make svgalib
Linux binaries work reasonably well on NetBSD/i386.

There are some bad, bad hacks in it, some of which I thought of (or had
been suggested to me) some time ago, but I felt so guilty about doing this
that it took me about 3 months, a trauma and professional help to check
this in ;)

A few things that people need to know when running Linux svgalib binaries:

1). You need to have pcvt configured in the kernel.
2). The binaries need root permissions to be able to mess with the I/O ports
    (just as they need that under Linux)
3). You need a [/emul/linux]/usr/local/lib/libvga.config file to configure
    the svga library. Look either in the svgalib distribution or on the
    nearest Linux system you can find how it should look like.
4). Make the following links in /emul/linux/dev:
    ttyS? -> /dev/tty0?
    console -> /dev/tty (WARNING: this trick will work for svgalib binaries,
                         but may have strange results for others)
    mouse -> {whatever serial port your mouse is on)
5). VT switching won't work with binaries that use the keyboard stuff in
    the Linux svgalib. This may be fixed in the near future. For now, it's
    explicitly disabled to prevent trouble.
6). You may get strange results if you run, for example, XFree in one VT, 
    and a Linux svgalib binary in another, when, say XFree is using
    some chipset-specific extended mode, and svgalib is using some default
    VGA mode. There isn't much the emulation can do about that.

Yes, you can now also play the svgalib version of Doom (linuxsdoom)
for those of you who are _still_ playing that (geez ;-)).

Let me know if there are any problems. There are a few things that need
a bit of work still.

- Frank
-- 
                  Frank van der Linden, frank@fwi.uva.nl
	       Use NetBSD, it's Unix, it's free and works on:
      i386+, Mac, Amiga, HP300, Sun3, Sun4c, PC532, DEC Alpha, DEC MIPS
              Work in progress: Vax, Atari and a host of others