You need: 0) NetBSD-1.2 source tree 1) replacement parts (see netbsd-1.2-diffs.gz) 2) dosemu with NetBSD patches: see dosemu-0.63.1.2.tar.gz 3) The S-Lang library. See slang0.99-22.tar.gz (also on ftp://space.mit.edu/pub/davis/slang) 4) GNU make, bison 5) ld86 and as86. See bcc.tar.gz here. [Sources slightly modified, originally from ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/ports/distfiles/bcc.tar.gz] Build ld and as, and install them in your path as ld86 and as86. Build S-Lang with the termcap option (you'll need a minor edit to its makefile). Apply the patches into your source tree. You need to patch the kernel. Build a new kernel (use option VM86, plus all the SysV shared memory options). You must use the pcvt console driver. (I use the config found in PATTERN). If you use 'options KOLVIR' then you can always hit Alt-SysRq to turn off raw keyboard mode. This is useful as a way to get off the VC of a hung dosemu session. Install the updated kernel include files by running 'make install' from /usr/src/include. Edit the dosemu Makefile.NetBSD for appropriate include paths, etc. Replace lib/libarch_netbsd_slang.a with a symlink to the "right place"; also move include/slang.h aside and install a symlink to the "right place". Try building dosemu with "gmake most dosstatic". I suggest you use dosstatic--it has far fewer security concerns than 'dos' which dynamically loads libdosemu0.XXplYY. Once it's built, read the QuickStart DOSEmu documentation starting at step 3. Let me know how it goes, ==John Kohl and/or NOTES: Running in an X window doesn't work too well right now due to memory mapping weirdness (you can't ever exit the process). Running on the console works fine. I STRONGLY suggest you get a terminal on a serial port, or a network for remote logins, while you are testing the console support. You'll want to be able to log in and tell whether things are hung really bad or if just the console is screwed up. If dosemu seems to hang, you may still be able to change virtual consoles using CTRL-ALT-F. Using a builtin mouse is somewhat flaky--some programs work just fine (e.g. dos EDIT), some don't (e.g. DOSSHELL). Using an emulated serial line to talk to the mouse seemed to work OK. DPMI apps in particular are still a bit flaky--sometimes it just hangs the virtual session (I've been able to kill off dosemu and recover, though). THANKS TO: Charles Hannum for much of the i386 specific changes (particularly for stack mapping and TSS work) The Dosemu folks for the dosemu code itself John Davis for S-Lang.