Freshly installed dos-6.22 with disk image does not work

Boszormenyi Zoltan
2002-11-28T16:00:43Z

[-- Attachment #1: Type: text/plain, Size: 1549 bytes --]

Hi,

I wanted to play some old games on my new RH8.0 (all upgrades are applied),
and I compiled dosemu-1.1.3.7 with the attached compile-time settings.

I also installed the freedos package but for some reason the games I
wanted to try
does not start.

So I decided to install MS-DOS 6.22 into a disk-image so I used
"mkfatimage16 -k 262144 >dosdisk.bin" to create the image and
with "xdosemu -A" I was able to install the 3 floppies.

After that I changed $_hdimage:

$_hdimage = "dosdisk.bin"

so it uses the image as a virtual disk instead of the "freedos"
directory as a network drive.

xdosemu now refuses to work. The boot.log attached. I copied the vga.pcf
font to the
proper place but did not bother to restart the font server yet.

What's wrong with my installation?

When I change $_hdimage to

$_hdimage = "freedos dosdisk.bin"

then xdosemu loads freedos but listing D: seems to not contain the
D:\DOS directory
and io.sys and msdos.sys both seem to be 0 bytes long.

On another machine, with a RH 7.3, I also installed dosemu-1.1.3.7
(1.0.2 segfaults)
and it works there on a real win98 partition. I kept the old dosemu.conf
et.al
from a previous RH 6.2 / dosemu-1.0.2 installation there.

I recompiled dosemu without experimental stuff to see what happens but
no change.

BTW, the mkfatimage* executables, the setup-dosemu script, midid, etc
should also
be installed somewhere (under /opt/dosemu/bin ?) when I do a
"./install_systemwide".

Best regards,
Zoltán Böszörményi

[-- Attachment #2: compiletime-settings --]
[-- Type: text/plain, Size: 183 bytes --]

config {
experimental on
sbemu on
mitshm on
x on
net on
dodebug off
slangforce off
runasroot on
linkstatic off
cpuemu off
aspi on
svgalib off
pthreads off
}

[-- Attachment #3: boot.log --]
[-- Type: text/plain, Size: 5631 bytes --]

Running unpriviledged in low feature mode
Linux kernel 2.4.18; CPU speed is 501110000 Hz
Dosemu-1.1.3.7 Running on CPU=586, FPU=1
using stderr for debug-output
debug flags: -a+cw
CONF: Disabling use of pentium timer
CONF: dosbanner on
CONF: timint on
CONF: CPU set to 386
CONF: 8192k bytes XMS memory
CONF: 8192k bytes EMS memory
CONF: EMS-frame = 0xe000
CONF: dosemu running on
SER: /dev/ttyS0 port 0 int 0
SER: /dev/ttyS1 port 0 int 0
CONF: Keyboard-layout keyb-user
CONF: Keyboard-layout auto
device: /dev/fd0 type 2 h: 0 s: 0 t: 0 floppy A:
CONF: DPMI-Server on
CONF: not allowing speaker port access
CONF: IPX support off
CONF(LPT0) f: (null) c: lpr o: -Plp %s t: 20 port: 378
device: /home/zozo/dosemu/dosdisk.bin type 0 header_size: 128 h: -1 s: -1 t: -1 drive C:
CONF: config variable c_system unset
CONF: not enough privilege to define config variable c_user
CONF: mostly running as ROOT: uid=500 (cached 500) gid=500 (cached 500)
DBG_FD already set
DOSEMU-1.1.3.7 is coming up on Linux version 2.4.18-17.8.0smp
CONF: reserving 640Kb at 0x00000 for 'd' (Base DOS memory (first 640K))
CONF: reserving 64Kb at 0xF0000 for 'r' (Dosemu reserved area)
major = 136 minor = 2
ERROR: X: Unable to open font "vga"ERROR: X: Unable to open font "vga"ERROR: , trying "vga"...
ERROR: , trying "vga"...
ERROR: X: Unable to open font "vga"ERROR: X: Unable to open font "vga"ERROR: , trying "9x15"...
ERROR: , trying "9x15"...
CONF: reserving 128Kb at 0xA0000 for 'v' (Video memory)
SERIAL $Header: /usr/src/dosemu0.60/serial/RCS/ser_init.c,v 1.1 1995/05/06 16:26:19 root Exp root $
CONF: reserving 64Kb at 0xE0000 for 'E' (EMS page frame)
TIME: using 9154 usec for updating ALRM timer
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
SIGILL while in vm86()
ERROR: LOCK prefix not permitted!
ERROR: general protection at 0x700: 86
ERROR: general protection at 0x700: 86
Program=do_vm86.c, Line=352
EIP: 0070:00010000 ESP: 0000:00007d86 VFLAGS(b): 00000 00000000 10000010
EAX: 00000000 EBX: 00000500 ECX: 00005416 EDX: 0000ed57 VFLAGS(h): 00000082
ESI: 0000f3fb EDI: 000075ff EBP: 0000ed57 DS: 0000 ES: 75d5 FS: 0000 GS: 0000
FLAGS: SF RF VM IOPL: 0
STACK: 7c f8 c3 f9 c3 b4 02 8b d5 75 -> 01 02 00 00 d5 75 01 02 00 00
OPS : 40 7c 00 00 86 00 40 7c 00 00 -> 86 00 40 7c 00 00 86 00 40 7c
8600 0070:0000 xchg al,[bx+si]
00| f000:0000->0f0000 01| f000:0010->0f0010 02| f000:0020->0f0020
03| f000:0030->0f0030 04| f000:0040->0f0040 05| f000:0050->0f0050
06| f000:0060->0f0060 07| f000:0070->0f0070 08| f800:4000->0fc000
09| f000:e987->0fe987 0a| f000:00a0->0f00a0 0b| f000:00b0->0f00b0
0c| f000:00c0->0f00c0 0d| f000:00d0->0f00d0 0e| f000:00e0->0f00e0
0f| f000:00f0->0f00f0 10| f000:0100->0f0100 11| f000:0110->0f0110
12| f000:0120->0f0120 13| f000:0130->0f0130 14| f000:0140->0f0140
15| f000:0150->0f0150 16| f800:3500->0fb500 17| f000:0170->0f0170
18| f000:0180->0f0180 19| f000:0190->0f0190 1a| f000:01a0->0f01a0
1b| f000:01b0->0f01b0 1c| 7c40:01c0->07c5c0 1d| 0086:0000->000860
1e| 0000:7c40->007c40 1f| 7c40:0086->07c486 20| 0086:0000->000860
21| 0000:7c40->007c40 22| 7c40:0086->07c486 23| 0086:0000->000860
24| 0000:7c40->007c40 25| 7c40:0086->07c486 26| 0086:0000->000860
27| 0000:7c40->007c40 28| 7c40:0086->07c486 29| 0086:0000->000860
2a| 0000:7c40->007c40 2b| 7c40:0086->07c486 2c| 0086:0000->000860
2d| 0000:7c40->007c40 2e| 7c40:0086->07c486 2f| 0086:0000->000860
30| 0000:7c40->007c40 31| 7c40:0086->07c486 32| 0086:0000->000860
33| 0000:7c40->007c40 34| 7c40:0086->07c486 35| 0086:0000->000860
leavedos(4|0x4) called - shutting down
calling SIG_close
calling keyboard_close
00| f000:0000->0f0000 01| f000:0010->0f0010 02| f000:0020->0f0020
03| f000:0030->0f0030 04| f000:0040->0f0040 05| f000:0050->0f0050
06| f000:0060->0f0060 07| f000:0070->0f0070 08| f800:4000->0fc000
09| f000:e987->0fe987 0a| f000:00a0->0f00a0 0b| f000:00b0->0f00b0
0c| f000:00c0->0f00c0 0d| f000:00d0->0f00d0 0e| f000:00e0->0f00e0
0f| f000:00f0->0f00f0 10| f000:0100->0f0100 11| f000:0110->0f0110
12| f000:0120->0f0120 13| f000:0130->0f0130 14| f000:0140->0f0140
15| f000:0150->0f0150 16| f800:3500->0fb500 17| f000:0170->0f0170
18| f000:0180->0f0180 19| f000:0190->0f0190 1a| f000:01a0->0f01a0
1b| f000:01b0->0f01b0 1c| 7c40:01c0->07c5c0 1d| 0086:0000->000860
1e| 0000:7c40->007c40 1f| 7c40:0086->07c486 20| 0086:0000->000860
21| 0000:7c40->007c40 22| 7c40:0086->07c486 23| 0086:0000->000860
24| 0000:7c40->007c40 25| 7c40:0086->07c486 26| 0086:0000->000860
27| 0000:7c40->007c40 28| 7c40:0086->07c486 29| 0086:0000->000860
2a| 0000:7c40->007c40 2b| 7c40:0086->07c486 2c| 0086:0000->000860
2d| 0000:7c40->007c40 2e| 7c40:0086->07c486 2f| 0086:0000->000860
30| 0000:7c40->007c40 31| 7c40:0086->07c486 32| 0086:0000->000860
33| 0000:7c40->007c40 34| 7c40:0086->07c486 35| 0086:0000->000860
calling disk_close_all
calling video_close
releasing ports and blocked devices
calling shared memory exit
calling HMA exit
closing debugger pipes
calling mapping_close()
calling close_all_printers
calling mouse_close

[-- Attachment #4: dosemu.conf --]
[-- Type: text/plain, Size: 9595 bytes --]

##############################################################################
# This file is /etc/dosemu.conf, included by <DOSEMU_LIB_DIR>/global.conf
#
# Linux DOSEMU configuration for parser versions >= 3 (dosemu-0.97.0.1)
#
# ./doc/README.txt (chapter 2.) contains a description of the syntax
# and the usage of dosemu.conf.
#
#
# Access rights are defined in
#
# /etc/dosemu.users
#
##############################################################################

# Notes for editing this section:
#
# In $_xxx = (n) n is a numerical or boolean value
# = =
# In $_zzz = "s" s is a string
#
# Please edit only between the brackets and quotes and keep the rest intact.
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^

$_debug = "-a+cw" # same format as -D commandline option
# (but without the -D in front)
$_features= "" # list of temporary hacks, see release notes in
# the file ChangeLog. e.g "0:1 2:0", which means
# to set feature_0 to 1 and feature_2 to 0.
$_mapping= "" # preferred mapping driver, one of:
# auto, mapself, mapfile, mapshm
$_timint = (on) # emulate INT08 type timer interrupts
$_mathco = (on) # or off
$_cpu = "80386" # CPU shown to DOS, valid values: "80[345]86"
# or "emulated" for non-native CPU (386 in this case)

$_rdtsc = (off) # if possible use Pentium cycle counter
$_cpuspeed = (0) # 0 = calibrated by dosemu, else given (e.g.166.666)
$_pci = (off)

$_xms = (8192) # in Kbyte
$_ems = (8192) # in Kbyte
$_ems_frame = (0xe000)
$_dpmi = (8192) # in Kbyte
$_dosmem = (640) # in Kbyte, < 640
$_hardware_ram = "" # list of segment values/ranges such as
# "0xc8000 range 0xcc000,0xcffff"

$_secure ="ngd" # secure for: n (normal users), g (guest), d (dexe)
# empty string: depending on 'restricted'
# "0": always insecure (not recommended)
$_odd_hosts = "" # black list such as "lucifer.hell.com billy.the.cat"
$_diskless_hosts="" # black list such as "hacker1 newbee gateway1"

$_emusys = "" # empty or 3 char., config.sys -> config.XXX
$_emuini = "" # empty or 3 char., system.ini -> system.XXX

$_hogthreshold = (1) # 0 == all CPU power to DOSEMU
$_irqpassing = "" # list of IRQ numbers (2-15) to pass to DOS such as
# "3 8 10"
$_speaker = "" # or "native" or "emulated"

$_term_char_set = "" # Global code page and character set selection.
# "" == automatic, else: ibm, latin, latin1, latin2,
# koi8r

# Character set used externally to dosemu
$_external_char_set = ""
# "" == use $_term_char_set one of else:
# "cp437", "cp737", "cp775", "cp850", "cp852", "cp857",
# "cp860", "cp861", "cp862", "cp863", "cp864", "cp865",
# "cp866", "cp869", "cp874",
# "iso8859-1", "iso8859-2", "iso8859-3", "iso8859-4",
# "iso8859-5", "iso8859-6", "iso8859-7", "iso8859-8",
# "iso8859_9", "iso8859-14", "iso8859-15", "koi8-r"

# Character set used by dos programs
$_internal_char_set = ""
# "" == use $_term_char_set one of else:
# "cp437", "cp737", "cp775", "cp850", "cp852", "cp857",
# "cp860", "cp861", "cp862", "cp863", "cp864", "cp865",
# "cp866", "cp869", "cp874"

$_term_color = (on) # terminal with color support
$_term_updfreq = (1) # time between refreshes (units: 20 == 1 second)
$_escchar = (30) # 30 == Ctrl-^, special-sequence prefix

$_rawkeyboard = (0) # bypass normal keyboard input, maybe dangerous
$_layout = "auto" # one of: finnish(-latin1), de(-latin1), be, it, us
# uk, dk(-latin1), keyb-no, no-latin1, dvorak, po
# sg(-latin1), fr(-latin1), sf(-latin1), es(-latin1)
# sw, hu(-latin2), hu-cwi, keyb-user
# hr-cp852, hr-latin2, cz-qwerty, cz-qwertz, ru, tr.
# Or 'auto' (which tries to generate the table from
# the current Linux console settings)
$_keybint = (on) # emulate PCish keyboard interrupt
$_toggle = "" # toggle alternate layout, one of "shift_shift",
# "ctrl_shift", "alt_shift". "" == disable toggling

$_X_updfreq = (1) # time between refreshes (units: 20 == 1 second)
$_X_title = "DOS in a BOX" # Title in the top bar of the window
$_X_icon_name = "xdos" # Text for icon, when minimized
$_X_keycode = (auto) # on == translate keyboard via dosemu keytables
# or 'off' or 'auto'
$_X_blinkrate = (12) # blink rate for the cursor
$_X_font = "" # basename from /usr/X11R6/lib/X11/fonts/misc/*
# (without extension) e.g. "vga"
$_X_mitshm = (on) # Use shared memory extensions
$_X_sharecmap = (off) # share the colormap with other applications
$_X_fixed_aspect = (on) # Set fixed aspect for resizing the graphics window
$_X_aspect_43 = (on) # Always use an aspect ratio of 4:3 for graphics
$_X_lin_filt = (off) # Use linear filtering for >15 bpp interpolation
$_X_bilin_filt = (off) # Use bi-linear filtering for >15 bpp interpolation
$_X_mode13fact = (2) # initial size factor for video mode 0x13 (320x200)
$_X_winsize = "" # "x,y" of initial windows size (defaults to float)
$_X_gamma = (1.0) # gamma correction
$_X_vgaemu_memsize = (1024) # size (in Kbytes) of the frame buffer for emulated vga
$_X_lfb = (on) # use linear frame buffer in VESA modes
$_X_pm_interface = (on) # use protected mode interface for VESA modes
$_X_mgrab_key = "Home" # KeySym name to activate mouse grab, empty == off
$_X_vesamode = "" # "xres,yres ... xres,yres"
# List of vesamodes to add. The list has to contain
# SPACE separated "xres,yres" pairs

$_video = "vga" # one of: plainvga, vga, ega, mda, mga, cga
$_console = (0) # use 'console' video
$_graphics = (0) # use the cards BIOS to set graphics
$_videoportaccess = (1) # allow videoportaccess when 'graphics' enabled
$_vbios_seg = (0) # set the address of your VBIOS (e.g. 0xc000, 0xe000)
$_vbios_size = (0) # set the size of your BIOS (e.g. 0x10000, 0x8000).
# 0 for $_vbios_seg/$_vbios_size means autodetection
# (NOTE: DOSEMU must run in full feature mode for this)
$_vmemsize = (1024) # size of regen buffer
$_chipset = "" # one of: plainvga, trident, et4000, diamond, avance
# cirrus, matrox, wdvga, paradise, ati, s3, sis
$_dualmon = (0) # if you have one vga _plus_ one hgc (2 monitors)

$_vbootfloppy = "" # if you want to boot from a virtual floppy:
# file name of the floppy image under DOSEMU_LIB_DIR
# e.g. "floppyimage" disables $_hdimage
# "floppyimage +hd" does _not_ disable $_hdimage
$_floppy_a ="threeinch" # or "fiveinch" or "atapi" or empty, if non-existant
# optionally the device may be appended such as
# "threeinch:/dev/fd0"
$_floppy_b = "" # ditto for B:

#$_hdimage = "freedos"
$_hdimage = "dosdisk.bin"
# list of hdimages under DOSEMU_LIB_DIR
# assigned in this order such as
# "hdimage_c hdimage_d hdimage_e"
# If the name begins with '/dev/', then partion
# access is done instead of virtual hdimage such as
# "/dev/hda1" or "/dev/hda1:ro" for readonly
# Currently mounted devices and swap are refused.
# Hdimages and devices may be mixed such as
# "hdimage_c /dev/hda1 /dev/hda3:ro"
# Note: 'wholedisk' is _not_ supported.
$_hdimage_r = $_hdimage # hdimages for 'restricted access (if different)

$_aspi = "" # list of generic SCSI devices to make available
# for the builtin aspi driver (format of an entry
# is 'device:type:mappedtarget' such as
# "sg2:WORM sg3:Sequential-Access:6 sg4:CD-ROM" or
# "sg2:4 sg3:1:6 sg4:5" (which are equal)

$_com1 = "/dev/ttyS0" # e.g. "/dev/mouse" or "/dev/ttyS0"
$_com2 = "/dev/ttyS1" # e.g. "/dev/modem" or "/dev/ttyS1"
$_com3 = "" # ditto "/dev/ttyS2"
$_com4 = "" # ditto "/dev/ttyS3"
# Note: all "/dev/ttyXX" may be suffixed by the IRQ
# used (instead of the default one), such as
# "/dev/ttyS2 irq 5" or "/dev/ttyS3 irq 9"

$_ttylocks = "" # Lock directory (e.g. "/var/lock")
# default ("") is /usr/spool/uucp

$_mouse = "" # one of: microsoft, mousesystems, logitech, mmseries
# mouseman, hitachi, busmouse, ps2, imps2
$_mouse_dev = "" # one of: com1, com2, com3, com4 or /dev/mouse
$_mouse_flags = "" # empty list or one or more of:
# "emulate3buttons cleardtr"
$_mouse_baud = (0) # baudrate, 0 == don't set

$_printer = "lp" # list of (/etc/printcap) printer names to appear as
# LPT1, LPT2, LPT3 (not all are needed, empty for none)
$_printer_timeout = (20)# idle time in seconds before spooling out

$_ports = "" # list of portnumbers such as "0x1ce 0x1cf 0x238"
# or "0x1ce range 0x280,0x29f 310"
# or "range 0x1a0,(0x1a0+15)"

$_ipxsupport = (off) # or on
$_novell_hack = (off)
$_pktdriver = (off) # 'on' for Packet Driver
$_netdev = "eth0" # network device for Packet Driver
$_vnet = (off) # 'on' for packet-multi
# (used by dosnet, dsn0 overrides $_netdev)

$_sound = (on) # sound support on/off
$_sb_base = (0x220)
$_sb_irq = (5)
$_sb_dma = (1)
$_sb_dsp = "/dev/dsp"
$_sb_mixer = "" # or "/dev/mixer" if you allow that dosemu
# changes the volume
$_mpu_base = "0x330"

$_joy_device = "" # 1st and 2nd joystick device
# ("" if you don't want an emulated joystick)
# e.g. "/dev/js0" or "/dev/js0 /dev/js1"
#
$_joy_dos_min = (1) # range for joystick axis readings, must be > 0
$_joy_dos_max = (150) # avoid setting this to > 250
$_joy_granularity = (1) # the higher, the less sensitive -
# useful if you have a wobbly joystick