RE: Sorry, does not tell much -- some additional info

Eric Auer <[email protected]>
Newsgroups gmane.os.freedos.devel
Message-ID <[email protected]>
Hi, I just wanted to add some details:

George has tried running TC after installing
- no memory driver
- only an XMS driver
- both XMS and EMS drivers
- all of XMS EMS and DPMI drivers (DR emm386 with DPMI=ON option)

All on an 2027te kernel, which ran other programs okay (apart from
CSAP, but CSAP crashes for me, too, at least in DOSEMU with a diskimage,
I did not dare trying in DOS, as CSAP modifies directories).

All of the above attempts just ended in TC crashing right away.
DPMIINST is a tool to patch DPMI16BI.OVL according to the current
configuration (with respect to questions such as "how do I access the A20?"
and "Is DPMI available / is the CPU in real mode?".
DPMIRES is meant to be used to preload the DPMI of TC, but if not used,
TC will just load the DPMI driver itself.
My hope was that if the DPMI driver of TC is broken, using another DPMI
like the DR emm386 DPMI=ON one would fix the problem, but it did not.

Here some lines from MY dosemu.conf for your inspiration:

$_mapping= "mapself"    # *WAS ""* prefered mapping driver, one of:
                        # auto, mapself, mapfile, mapshm
$_timint = (on)         # emulate INT08 type timer interrupts
$_mathco = (on)         # or off
$_cpu = "80486"         # *WAS 80386*
                        # CPU showing 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 = (4096)          # *WAS 1024* in Kbyte
$_ems = (4096)          # *WAS 1024* in Kbyte
$_ems_frame = (0xe000)
$_dpmi = (0x6000)               # in Kbyte // 0x2000 normal, 0x6000 DJGPP
$_dosmem = (640)        # in Kbyte, < 640
$_secure ="ngd"         # secure for: n (normal users), g (guest), d (dexe)
                        # empty string: depending on 'restricted'
                        # "0": always insecure (not recommended)
$_emusys = ""           # empty or 3 char., config.sys   -> config.XXX
$_emubat = ""           # empty or 3 char., autoexec.bat -> autoexec.XXX 
$_emuini = ""           # empty or 3 char., system.ini   -> system.XXX

$_hogthreshold = (1)    # 0 == all CPU power to DOSEMU
$_irqpassing = ""       # list of IRQ number (2-15) to pass to DOS such as
                        # "3 8 10"
$_speaker = "emulated"  # *WAS ""* or "native" or "emulated"
$_term_color = (on)     # terminal with color support
$_term_updfreq = (4)    # time between refreshs (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
			# ...
$_keybint = (on)        # emulate PCish keyboard interrupt
$_X_keycode = (auto)    # on == translate keybord via dosemu keytables
                        # or 'off' or 'auto'
$_X_mitshm = (on)       # Use shared memory extensions
$_X_sharecmap = (off)   # share the colormap with other applications
$_X_gamma = (1.0)       # gamma correction
$_X_vgaemu_memsize = (4096) # *WAS 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 = "320,200 320,240 640,480"
                        # *WAS ""* "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 = (0xc000)  # set the address of your VBIOS (e.g. 0xe000)
$_vbios_size = (0x10000)# set the size of your BIOS (e.g. 0x8000)
$_vmemsize = (4096)     # *WAS 1024* size of regen buffer
$_chipset = ""          # one of: plainvga, trident, et4000, diamond, avance
                        # cirrus, matrox, wdvga, paradise, ati, s3, sis
$_floppy_a ="threeinch" # or "fiveinch" or "atapi" or empty, if not existing
                        # optionally the device may be appended such as
                        # "threeinch:/dev/fd0"
$_floppy_b = ""         # dito for B:

$_hdimage = "freedos fatimage.bin" # in ~/dosemu
                        # 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)
$_com1 = "/dev/mouse"   # WAS ""        # e.g. "/dev/mouse" or "/dev/ttyS0"
$_com2 = "/dev/modem"   # WAS ""        # e.g. "/dev/modem" or "/dev/ttyS1"
$_com3 = ""             # dito                 "/dev/ttyS2"
$_com4 = ""             # dito                 "/dev/ttyS3"
$_ttylocks = "/var/lock"        # WAS ""
                        # Lock directory (e.g. "/var/lock")
                        # default ("") is /usr/spool/uucp

$_mouse = "mousesystems"        # WAS ""
                        # one of: microsoft, mousesystems, logitech, mmseries
                        # mouseman, hitachi, busmouse, ps2, imps2
$_mouse_dev = "/dev/mouse"      # WAS ""
                        # one of: com1, com2, com3, com4 or /dev/mouse
$_printer = "deskjetbw" # *WAS lp*
                        # list of (/etc/printcap) printer names to appear as
                        # LPT1, LPT2, LPT3 (not all are needed, empty for none)
$_ipxsupport = (off)    # or on
$_novell_hack = (off)
$_vnet = (off)          # 'on' for packet-multi (used by dosnet)

$_sound = (on)          # *NOW ON* sound support on/off
$_sb_base = (0x220)
$_sb_irq = (5)
$_sb_dma = (1)
$_sb_dsp = "/dev/dsp"
$_sb_mixer = "/dev/mixer"
$_mpu_base = "0x330"

...



With those settings I can run:
- Descent (no sound)
- Jazz Jackrabbit (soundblaster sound)
  (hm, just crashed when trying to enter a level, oops)
  (used killall -9 dosemu.bin ...)
- Raptor (no sound)
- DJGPP
...

So generally, things run fine in xdosemu, even with protected mode :-).
I use xdosemu 1.0.2 with still kernel 2024 (the one that comes with that
version of xdosemu). http://www.dosemu.org/ - by the way, runs completely
in unprivileged mode. Please forget about that old "legend" that it should
run as root.

PS: In plain DOS (2027te), Descent did only run with DR emm386 DPMI=ON.
This is why I thought that the same trick may help George with TC.
But as I only have TC 2 / TC++ 1, not TC++ 3, I did not test if it would
run on my system - only George did the tests involving TC++ 3.

Eric
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.