Transgamings WineX

Die soll nur eine kleine Anleitung werden, deshalb keine großen Worte, man sollte ein Backup von Linux und Windows haben, oder zumindest ein robustes Dateisystem (ReiserFS, XFS, ...), weil Fehler bei WineX zu Datenverlusten führen können, wenn es mit root-Rechten ausgeführt wird.
Noch etwas zum Verständnis: WineX basiert auf Wine, hat aber DirectX 6 & 7 Erweiterungen.


Kann ich das als Packet (RPM/Debian) runterlanden?

Ja, man muß sich allerdings registrieren und mindestens $5 pro Monat bezahlen. Die Mindestlaufzeit beträgt 3 Monate, also $15.

Geht es auch anders? Gibt's den Source Code?

Einfach eine Shell (z.B csh) im Linux öffnen (als root) und folgendes eintippen:

cvs -z3 -d:pserver:anonymous@cvs.winex.sourceforge.net:/cvsroot/winex co wine

nun wird der Source Code in ein Verzeichnis namens wine (ca. 32 MB) heruntergeladen. Jetzt sollte man in das wine Verzeichnis wechseln und folgende Zeile eintippen, um dir Kompilierung
zu starten (man sollte min. 275 MB freien Speicherplatz auf dem Laufwerk besitzen!!!) :

./tools/wineinstall

Damit sollte die Kompilierung beendet sein. Es kann passieren, dass einige Packete installiert werden müssen (z.B. CUPS-devel), danach sollte man die Dateien config.cache und config.log löschen, sowie make clean eintippen und wieder ./tools/wineinstall aufrufen. Wenn die Kompilierung erfolgreich abgeschlossen ist, kann man WineX installieren. Dazu gibt man folgendes ein:

make install


So, jetzt muss man die Datei /.wine/config bearbeiten, welche sich im Homeverzeichnis, des Users, befinden sollte, wenn nicht, dann einfach das Verzeichnis /.wine/ im Homeverzeichnis des Users erstellen und aus dem /wine/documentation/samples Verzeichnis die config -Datei kopieren.
WINE REGISTRY Version 2
;; All keys relative to \\Machine\\Software\\Wine\\Wine\\Config;; MS-DOS drives configuration
;;
;; Each section has the following format:
;; [Drive X]
;; "Path"="xxx" (Unix path for drive root)
;; "Type"="xxx" (supported types are 'floppy', 'hd', 'cdrom' and 'network')
;; "Label"="xxx" (drive label, at most 11 characters)
;; "Serial"="xxx" (serial number, 8 characters hexadecimal number)
;; "Filesystem"="xxx" (supported types are 'msdos'/'dos'/'fat', 'win95'/'vfat', 'unix')
;; This is the FS Wine is supposed to emulate on a certain
;; directory structure.
;; Recommended:
;; - "win95" for ext2fs, VFAT and FAT32
;; - "msdos" for FAT16 (ugly, upgrading to VFAT driver strongly recommended)
;; DON'T use "unix" unless you intend to port programs using Winelib !
;; "Device"="/dev/xx" (only if you want to allow raw device access)
;;
;; hier kann man sein Diskettenlaufwerk erstellen
[Drive A]

"Path" = "/mnt/fd0"
"Type" = "floppy"
"Label" = "Floppy"
"Serial" = "87654321"
"Device" = "/dev/fd0"


;; hier sollte sich eine gemountete Windows 95 / 98 / 2000 Version befinden!!!!
[Drive C]
"Path" = "/win"
"Type" = "hd"
"Label" = "MS-DOS"
"Filesystem" = "win95"

;; CD-ROM Laufwerke sind auch kein Problem, der User muss nur die nötigen Rechte haben
[Drive D]

"Path" = "/cdrom"
"Type" = "cdrom"
"Label" = "CD-Rom"
"Device" = "/dev/cdrom"


;; die Windowspfade müssen gesetzt werden
[wine]

"Windows" = "c:\\windows"
"System" = "c:\\windows\\system"
"Temp" = "c:\\temp"
"Path" = "c:\\windows;c:\\windows\\system"
"Profile" = "c:\\windows\\Profiles\\Administrator"
"GraphicsDriver" = "x11drv"
; Wine doesn't pass directory symlinks to Windows programs by default.
; Enabling this may crash some programs that do recursive lookups of a whole
; subdir tree in case of a symlink pointing back to itself.
;"ShowDirSymlinks" = "1"
"ShellLinker" = "wineshelllink"

# <wineconf>

[DllOverrides]
"commdlg" = "builtin, native"
"comdlg32" = "builtin, native"
"ver" = "builtin, native"
"version" = "builtin, native"
"shell" = "builtin, native"
"shell32" = "builtin, native"
"shfolder" = "builtin, native"
"shlwapi" = "builtin, native"
"lzexpand" = "builtin, native"
"lz32" = "builtin, native"
"comctl32" = "builtin, native"
"commctrl" = "builtin, native"
"advapi32" = "builtin, native"
"crtdll" = "builtin, native"
"mpr" = "builtin, native"
"winspool.drv" = "builtin, native"
"ddraw" = "builtin, native"
"dinput" = "builtin, native"
"dsound" = "builtin, native"
"opengl32" = "builtin, native"
"msvcrt" = "native, builtin"
"rpcrt4" = "native, builtin"
"msvideo" = "builtin, native"
"msvfw32" = "builtin, native"
"mcicda.drv" = "builtin, native"
"mciseq.drv" = "builtin, native"
"mciwave.drv" = "builtin, native"
"mciavi.drv" = "native, builtin"
"mcianim.drv" = "native, builtin"
"msacm.drv" = "builtin, native"
"msacm" = "builtin, native"
"msacm32" = "builtin, native"
"midimap.drv" = "builtin, native"
; default for all other dlls
"*" = "native, builtin, so"

[x11drv]
; Number of colors to allocate from the system palette
"AllocSystemColors" = "100"
; Use a private color map
"PrivateColorMap" = "N"
; Favor correctness over speed in some graphics operations
"PerfectGraphics" = "N"
;; je nach X-Server Farbtiefe ändern
"ScreenDepth" = "32"

; Name of X11 display to use
"Display" = ":0.0"
; Allow the window manager to manage created windows
;"Managed" = "Y"
; Use a desktop window of 640x480 for Wine
;; wenn diese Option ausgeklammert ist, dann können Fenster eine beliebige Größe haben
"Desktop" = "1024x768"

; Use XFree86 DGA extension if present
; (make sure /dev/mem is accessible by you !)
"UseDGA" = "Y"
; Use XShm extension if present
"UseXShm" = "Y"
; Use XVidMode extension if present
;"UseXVidMode" = "Y"
; Enable DirectX mouse grab
"DXGrab" = "N"
; Create the desktop window with a double-buffered visual
; (useful to play OpenGL games)
"DesktopDoubleBuffered" = "N"
; Code page used for captions in managed mode
; 0 means default ANSI code page (CP_ACP == 0)
"TextCP" = "0"
; Use this if you have more than one port for video on your setup
; (Wine uses for now the first 'input image' it finds).
;; "XVideoPort" = "43"
; Run in synchronous mode (useful for debugging X11 problems)
"Synchronous" = "N"

[fonts]
;Read documentation/fonts before adding aliases
;See a couple of examples for russian users below
"Resolution" = "96"
"Default" = "-adobe-helvetica-"
"DefaultFixed" = "fixed"
"DefaultSerif" = "-adobe-times-"
"DefaultSansSerif" = "-adobe-helvetica-"

;; default TrueType fonts with russian koi8-r encoding
;"Default" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultFixed" = "-monotype-courier new-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultSerif" = "-monotype-times new roman-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultSansSerif" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
;; default cyrillic bitmap X fonts
;"Default" = "-cronyx-helvetica-"
;"DefaultFixed" = "fixed"
;"DefaultSerif" = "-cronyx-times-"
;"DefaultSansSerif" = "-cronyx-helvetica-"

[serialports]
"Com1" = "/dev/ttyS0"
"Com2" = "/dev/ttyS1"
"Com3" = "/dev/ttyS2"
"Com4" = "/dev/modem"

[parallelports]
"Lpt1" = "/dev/lp0"

[ppdev]
;; key: io-base of the emulated port
;; value : parport-device{,timeout}
;; timeout for auto closing an open device ( not yet implemented)
;"378" = "/dev/parport0"
;"278" = "/dev/parport1"
;"3bc" = "/dev/parport2"

[spooler]
"FILE:" = "tmp.ps"
"LPT1:" = "|lpr"
"LPT2:" = "|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -"
"LPT3:" = "/dev/lp3"

[ports]
;"read" = "0x779,0x379,0x280-0x2a0"
;"write" = "0x779,0x379,0x280-0x2a0"

[spy]
"Exclude" = "WM_SIZE;WM_TIMER;"

[registry]
;These are all booleans. Y/y/T/t/1 are true, N/n/F/f/0 are false.
;Defaults are read all, write to Home
; Global registries (stored in /etc)
"LoadGlobalRegistryFiles" = "Y"
; Home registries (stored in ~user/.wine/)
"LoadHomeRegistryFiles" = "Y"
; Load Windows registries from the Windows directory
"LoadWindowsRegistryFiles" = "Y"
; TRY to write all changes to home registries
"WritetoHomeRegistryFiles" = "Y"
; Registry periodic save timeout in seconds
; "PeriodicSave" = "600"
; Save only modified keys
"SaveOnlyUpdatedKeys" = "Y"

[Tweak.Layout]
;; supported styles are 'Win31'(default), 'Win95', 'Win98'
"WineLook" = "Win95"

[Console]
;"Drivers" = "tty"
;"XtermProg" = "nxterm"
;"InitialRows" = "25"
;"InitialColumns" = "80"
;"TerminalType" = "nxterm"

[Clipboard]
"ClearAllSelections" = "0"
"PersistentSelection" = "1"

; List of all directories directly contain .AFM files
[afmdirs]
"1" = "/usr/share/ghostscript/fonts"
"2" = "/usr/share/a2ps/afm"
"3" = "/usr/share/enscript"
"4" = "/usr/X11R6/lib/X11/fonts/Type1"

[WinMM]
"Drivers" = "wineoss.drv"
"WaveMapper" = "msacm.drv"
"MidiMapper" = "midimap.drv"

# </wineconf>
So, nun sollte wine laufen, einfach in das Verzeichnis der EXE-Datei wechseln, die man ausführen will und mit wine --winver win98 <EXE> starten. Transgamings WineX kann kennt nur DirectX 6 & 7. DirectX 8, bzw. 8.1 sind noch nicht implementiert. WineX kennt nur DirectX 6 und 7, Programme welche 5 oder 8 benötigen dürften nicht laufen. Mit der config-Datei muss man ein wenig herumprobieren, genauso wie mit den Userrechten, bei mir läuft WineX mit root Rechten (da sonst kein Sound geht), was aber gefährlich ist, deshalb sollte man ein Linux und Windows Backup haben.

Links zum Thema:

Transgaming
Wine