[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: DOSEMU
- Subject: Re: DOSEMU
- From: Thomas Hoellrigel <blindi_bEi_gmx.net>
- Date: Tue, 1 Feb 2000 17:37:23 +0000 (GMT)
On 31 Jan 2000, Helmut Hullen wrote:
>
> Stefan Koehler hat dazu vor wenigen Tagen eine Anleitung in die Linux-
> ger gesetzt:
ich hab sie leider nicht. kannst Du mir sie mir bitte zuschicken?
>
> Absender : stk_bEi_warlock.kbbs.org (Stefan Koehler)
>
> nachdem ich hier berichtet hatte, dass XP 3.12 bei mir im DOSEmu voellig
> reibungslos laeuft, haben etliche Leute nachgefragt. Ich stelle Euch also
> hier einmal mein Setup vor:
>
> ==== Vorweg meine Technik:
>
> Pentium P100, 2 IDE-Festplatten, Grafikkarte Spea V7 S3, 48 MB RAM.
> Die primaere Bootpartition fuer DOS und Win95 ist C: = /dev/hda1, XP lebt auf
> F: = /dev/hda6.
> Die DOS-Programme fuer den EMU aus /var/lib/dosemu/commands liegen in
> C:\EMUUTILS, das auch im DOS-Pfad eingetragen ist.
> Uebliches Modem an COM2, UUCP-Verbindung mit XP zu meiner Mailbox.
> SuSE 6.1 mit allerdings neuerer DOSEmu-Version 0.98.8.0, die ich stabiler
> finde als die auf der SusSE CD.
> Sound und CD sind unter DOS nicht konfiguriert. An den Einstellungen fuer X
> habe ich nicht gedreht, die sind so noch unveraendert.
>
>
> ==== 1. ====
>
> Hier meine /etc/dosemu.conf:
>
> ############################################################################
> ##
> # This file is /etc/dosemu.conf, included by /var/lib/dosemu/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 beteen the brakets and quotes and keep the rest intact.
> # ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
>
> $_debug = "-a" # 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.
> $_timint = (on) # emulate INT08 type timer interrupts
> $_mathco = (on) # or off
> $_cpu = (80586) # CPU emulation, valid values: 80[345]86
>
> $_rdtsc = (on) # if possible use Pentium cycle counter
> $_cpuspeed = (0) # 0 = calibrated by dosemu, else given (e.g.166.666)
> $_pci = (off)
>
> $_xms = (1024) # in Kbyte
> $_ems = (1024) # in Kbyte
> $_ems_frame = (0xe000)
> $_dpmi = (off) # 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 = "emu" # empty or 3 char., config.sys -> config.XXX
> $_emubat = "emu" # 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 = "native" # or "native" or "emulated"
>
>
> $_term_char_set = "ibm" # Global code page and character set selection.
> # "" == automatic, else: ibm, latin, latin1, latin2
>
> $_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 = (1) # bypass normal keyboard input, maybe dangerous
> $_layout = "de-latin1" # 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.
> # Or 'auto' (which tries to generate the table from
> # the current Linux console settings)
> $_keybint = (on) # emulate PCish keyboard interrupt
>
>
> $_X_updfreq = (5) # time between refreshs (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 keybord via dosemu keytables
> # or 'off' or 'auto'
> $_X_blinkrate = (8) # 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 resize 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 = "" # 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 = (1) # 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 = (1024) # size of regen buffer
> $_chipset = "s3" # one of: plainvga, trident, et4000, diamond, avance
> # cirrus, matrox, wdvga, paradise, ati, s3
> $_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 /var/lib/dosemu
> # e.g. "floppyimage" disables $_hdimage
> # "floppyimage +hd" does _not_ disable $_hdimage
> $_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 = "fiveinch" # dito for B:
>
> $_hdimage = "/dev/hda1" # list of hdimages under /var/lib/dosemu
> # 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 = "" # e.g. "/dev/mouse" or "/dev/cua0"
> $_com2 = "/dev/modem" # e.g. "/dev/modem" or "/dev/cua1"
> $_com3 = "" # dito "/dev/cua2"
> $_com4 = "" # dito "/dev/cua3"
> $_ttylocks = "/var/lock" # Lock directory (e.g. "/var/lock")
> # default ("") is /usr/spool/uucp
>
> $_mouse = "microsoft" # one of: microsoft, mousesystems, logitech, mmseries
> # mouseman, hitachi, busmouse, ps2
> $_mouse_dev = "/dev/mouse" # one of: com1, com2, com3, com4 or /dev/mouse
> $_mouse_flags = "" # list of none 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)
> $_vnet = (off) # 'on' for packet-multi (used by dosnet)
>
> $_sound = (off) # sound support on/off
> $_sb_base = (0x220)
> $_sb_irq = (5)
> $_sb_dma = (1)
> $_sb_dsp = "/dev/dsp"
> $_sb_mixer = "/dev/mixer"
> $_mpu_base = "0x330"
>
>
>
> ==== 2. ====
>
> Den EMU starte ich mit folgendem Skript dosxp (der user muss natuerlich die
> DOS-Filesystems mounten duerfen):
>
> umount /dosc
> mount -t vfat /dev/hda6 /dosf
> dos
> mount /dosc
>
> Dies ist so noetig, weil C: bei mir beim Linux-Boot automatisch gemountet
> wird. Wenn man aber als $_hdimage kein disk image, sondern direkt /dev/hdxx
> eintraegt, darf die betreffende Partition fuer EMU nicht gemountet sein, daher
> wird sie hier vor dem EMU-Start umounted und hinterher wieder gemountet.
> /dosc bzw. /dosf sind die mountpoints der jeweiligen DOS-Partitionen.
> Fuer den nachher (4.) folgenden lredir-Aufruf (noetig, weil XP auf einer
> anderen Partition als C: liegt) muss F: unter Linux gemountet sein.
>
>
> ==== 3. ====
>
>
> Fuer den DOS-Start im EMU bestehen nun folgende DOS-Dateien in C:\ :
>
> ==autoexec.emu:
>
> _bEi_ECHO OFF
> PROMPT DOSEMU $p$g$g
> SET GDC=C:\SPEA\GDC
> rem Das ist der Pfad fuer meine Grafikkarte
> SET PATH=%PATH%;EINIGES-MEHR;C:\EMUUTILS
> doskey
>
>
> ==config.emu:
>
> device=c:\windows\ramdrive.sys 1000 /e
> rem Im Moment startet hier nur eine RAMdisk.
>
>
> ==== 4. ====
>
>
> Nun sollte man am DOS-Prompt angekommen sein. Ich starte XP mit folgender
>
> XPEMU.BAT in C:\
>
> c:\emuutils\lredir f: linux\fs\/dosf
> f:
> cd xp
> xp
>
>
> D.h., der Weg vom Linux-Prompt ist:
>
> LINUX: ./dosxp
> [nun sollte der DOS-Prompt erreicht sein ]
> im DOSEMU XPEMU
> ... fertig.
> XP normal verlassen, und das Programm EXITEMU in C:\emuutils beendet dann
> den EMU.
>
>
> Eigentlich ist das alles gar nicht so kompliziert, wie es klingt. Sehr
> geholfen hat mir, auf hdimages zu verzichten und als $_hdimage direkt die
> DOS-Boot-Partition einzutragen. Auf diese Partition sollte dann aber nur der
> EMU schreiben. Noch viel einfacher duerfte es sein, wenn XP auf der DOS-Boot-
> Partition liegt, dann braucht man den lredir-Umweg nicht.
>
> Ich hoffe, ich habe einigen etwas weitergeholfen.
>
> Viele Gruesse, have fun -
>
> Stefan
> ---------------------- Ende Zitat --------------
>
> Viele Gruesse!
> Helmut
>
>
-------------------------------------------------------
tel : 089 693 75 214
homepage: http://www.suse.de/~thr/