From a16a032c0619a48c54ddec33963f88f02795494f Mon Sep 17 00:00:00 2001
From: Adam Sacarny <magicbox@bestweb.net>
Date: Sun, 25 Apr 1999 10:55:22 +0000
Subject: [PATCH] Added new documentation for the configuration file.

---
 documentation/config | 464 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 464 insertions(+)
 create mode 100644 documentation/config

diff --git a/documentation/config b/documentation/config
new file mode 100644
index 00000000000..a4269903799
--- /dev/null
+++ b/documentation/config
@@ -0,0 +1,464 @@
+Copyright 1999 Adam Sacarny (magicbox@bestweb.net)
+1. WHAT IS THE WINE CONFIG FILE?
+
+The Wine config file stores various settings for Wine. These include:
+	Drives and Information about them
+	Directory Settings
+	Port Settings
+	The Wine look and feel
+	Wine's DLL Usage
+
+2. HOW DO I MAKE ONE?
+
+This section will guide you through the process of making a config file. Take a
+look at the file <dirs to wine>/wine.ini
+It is organized by section.
+
+
+     Name        | Needed? | What it does
+----------------------------------------------------------------
+[Drive X]        | yes     | Sets up drives recognized by wine
+[wine]           | yes     | Settings for wine directories
+[DllDefaults]    | recmd   | Defaults for loading DLL's
+[DllPairs]       | recmd   | Sanity checkers for DLL's
+[DllOverrides]   | recmd   | Overides defaults for DLL loading
+[options]        | no      | No one seems to know
+[fonts]          | yes     | Font appearance and recognition
+[serialports]    | no      | COM ports seen by wine
+[parallelports]  | no      | LPT ports seen by wine
+[spooler]        | no      | Print spooling
+[ports]          | no      | Direct port access
+[spy]            | no      | What to do with certain debug messages
+[Registry]       | no      | Specifies locations of windows registry files
+[tweak.layout]   | recmd   | Appearance of wine
+[programs]       | no      | Programs to be run automatically
+[Console]        | no      | Console settings
+Recmd-Recommended
+2.1 THE [Drive X] SECTION
+It should be pretty self explanatory, but here is an in-depth tutorial about
+them.
+There are up to 6 lines for each drive in Wine.
+
+[Drive X]
+
+The above line begins the section for a drive whose letter is X. 
+
+Path=/dir/to/path
+
+This path is where the drive will begin. When Wine is browsing in drive X, it
+will see the files that are in the directory "/dir/to/path". Don't forget to
+leave off the trailing slash!
+
+Type=floppy|hd|cdrom|network <--- the |'s mean Type=<one of the options>
+
+Sets up the type of drive Wine will see it as. Type must equal one of the four
+"floppy", "hd", "cdrom", or "network". They are self-explanatory.
+
+Label=blah
+
+Defines the drive label. Generally only needed for programs that look for a
+special CD-ROM. Info on finding the lable is in <dirs to
+wine>/documentation/cdrom-labels. The label may be up to 11 characters.
+
+Serial=deadbeef
+
+Tells Wine the serial number of the drive. A few programs with intense
+protection for pirating might need this, but otherwise don't use it. Up to 8
+characters and hexadecimal.
+
+Filesystem=msdos|win95|unix
+
+Sets up the way Wine looks at files on the drive.
+
+	msdos -> Case insensitive filesystem. Alike to DOS and Windows 3.x.
+	8.3 is the maximum length of files (eightdot.123) - longer ones will be
+	truncated. (NOTE: this is a very bad choice if you plan on running apps
+	that use long filenames. win95 should work fine with apps that were
+	designed to run under the msdos system. In other words, you might not
+	want to use this.)
+	
+	win95 -> Case insensitive. Alike to Windows 9x/NT 4. This is the long
+	filename filesystem you are probably used to working with. The
+	filesystem of choice for most applications to be run under wine. 
+	PROBABLY THE ONE YOU WANT
+	
+	unix  -> Case sensitive. This filesystem has almost no use (Windows apps
+	expect case insensitive filenames). Try it if you dare, but win95 is a 
+	much better choice.
+
+Device=/dev/xx
+
+Use this ONLY for floppy and cdrom devices. Using it on Extended2 partitions can
+have dire results (When a windows app tries to do a lowlevel write, they do it
+in a FAT way -- FAT does not mix with Extended2). Currently, it is useless when
+used on cdrom's, however functionality could be implemented later to allow wine
+to automatically find the cdrom label.
+NOTE: This setting is not terribly important, almost all apps will have no
+problem if it remains unspecified. If you are unsure about specifying device
+names, just leave out this setting for your drives.
+
+Here is a setup for Drive X, a generic hard drive:
+[Drive X]
+Path=/dos-a
+Type=hd
+Label=Hard Drive
+Filesystem=win95
+This is a setup for Drive X, a generic CD-ROM drive:
+[Drive X]
+Path=/dos-d
+Type=cdrom
+Label=Total Annihilation
+Filesystem=win95
+Device=/dev/hdc
+And here is a setup for Drive X, a generic floppy drive:
+[Drive X]
+Type=floppy
+Path=/mnt/floppy
+Label=Floppy Drive
+Serial=87654321
+Filesystem=win95
+Device=/dev/fd0
+
+2.2 THE [wine] SECTION 
+
+The [wine] section of the configuration file contains information wine uses for
+directories. When specifying the directories for the settings, make them as they
+would appear in wine. If your drive C has a Path of /dos, and your windows
+directory is located in /dos/windows, Windows=c:\windows.
+
+Windows=c:\windows
+
+Sets up the windows directory. Make one if you don't have windows. NO TRAILING
+SLASH (NOT C:\windows\)!
+
+System=c:\windows\system
+
+Sets up where the windows system files are. Should reside in the directory used
+for the "Windows" setting. If you don't have windows then this is where the
+system files will go. NO TRAILING SLASH!
+
+Temp=c:\temp
+
+This should be the directory you want your temp files stored in. YOU MUST HAVE
+WRITE ACCESS TO IT.
+
+Path=c:\windows;c:\windows\system;c:\blanco
+
+Behaves like the PATH setting on unix boxes. When wine is run like "wine
+sol.exe", if sol.exe resides in a directory specified in the "Path" setting,
+wine will run it (Of course, if sol.exe resides in the current directory, wine
+will run that one). Make sure it always has your windows directory and system
+directory (For this setup, it must have c:\windows;c:\windows\system).
+
+SymbolTableFile=wine.sym
+
+Sets up the symbol table file for the wine debugger. You probably don't need to
+fiddle with this. May be useful if your wine is stripped.
+
+printer=off|on
+
+Tells wine whether to allow printer drivers and printing to work. Using these
+things are pretty alpha, so you might want to watch out. Some people might find
+it useful, however. If you're not planning on working on printing, don't even
+add this to your wine.ini (It probably isn't already in it). Check out the
+[spooler] and [parallelports] sections too.
+
+2.3 INTRODUCTION TO DLL SECTIONS
+
+There are a few things you will need to know before configuring the DLL sections
+in your wine configuration file.
+
+	2.3.1 WINDOWS DLL PAIRS
+	
+	Most windows DLL's have a win16 (Windows 3.x) and win32 (Windows 9x/NT)
+	form.  The combination of the win16 and win32 DLL versions are called
+	the "DLL pair". This is a list of the most common pairs:
+	   Win16   |   Win32   | Native* 
+	-----------------------------
+	KERNEL     | KERNEL32  | No!
+	USER       | USER32    | No!
+	SHELL      | SHELL32   | Yes
+	GDI        | GDI32     | No!
+	COMMDLG    | COMDLG32  | Yes
+	VER        | VERSION   | Yes
+	*-Is it possible to use native dll with wine?(See next section)
+
+	2.3.2 DIFFERENT FORMS OF DLL'S
+	
+	There are a few different forms of DLL's wine can load:
+		native -> The DLL's that are included with windows. Many windows
+		DLL's can be loaded in their native form. Many times these
+		native versions work better than their non-Microsoft equivalent
+		-- other times they don't.
+		elfdll -> ELF encapsulated windows DLL's. This is currently
+		experimental (Not working yet).
+		so -> Native ELF libraries. Will not work yet.
+		builtin -> The most common form of DLL loading. This is what you
+		will use if the DLL is error-prone in native form (KERNEL for
+		example), you don't have the native DLL, or you just want to be
+		Microsoft-free.
+	
+2.4 THE [DllDefaults] SECTION
+
+These settings provide wine's default handling of DLL loading.
+
+EXTRA_LD_LIBRARY_PATH=/dirs
+
+The directory specified here is appended to the normal search path for certain
+forms of DLL's (elfdll and .so).
+
+DefaultLoadOrder = native, elfdll, so, builtin
+
+This setting is a comma-delimited list of which order to attempt loading DLL's.
+If the first option fails, it will try the second, and so on. The order
+specified above is probably the best in most conditions.
+
+2.5 THE [DllPairs] SECTION
+
+This section is optional, but strongly recommended. If you try to use native
+SHELL32, but builtin SHELL, you could have some big problems (native and
+builtin/so/elfdll do certain things in different ways). Using different forms of
+a pair is a *very*, **very** bad idea. By specifying DLL pairs here, wine will
+print out a message if you use different forms of a pair.
+You shouldn't need to change anything in this section, the following should work
+fine in all cases:
+
+[DllPairs]
+kernel	= kernel32
+gdi	= gdi32
+user	= user32
+commdlg	= comdlg32
+commctrl= comctl32
+ver	= version
+shell	= shell32
+lzexpand= lz32
+winsock	= wsock32
+
+2.6 THE [DllOverrides] SECTION
+
+The format for this section is the same for each line:
+
+<DLL>{,<DLL>,<DLL>...} = <FORM>{,<FORM>,<FORM>...}
+
+For example, to load builtin KERNEL pair (Case doesn't matter here):
+
+kernel,kernel32 = builtin
+
+To load the native COMMDLG pair, but if that doesn't work try builtin:
+
+commdlg,comdlg32 = native,builtin
+
+To load the native COMCTL32:
+
+comctl32 = native
+
+Here is a good generic setup (As it is defined in wine.ini that was included
+with your wine package):
+
+[DllOverrides]
+kernel32, gdi32, user32	= builtin
+kernel, gdi, user	= builtin
+toolhelp		= builtin
+comdlg32, commdlg	= elfdll, builtin, native
+version, ver		= elfdll, builtin, native
+shell32, shell		= builtin, native
+lz32, lzexpand		= builtin, native
+commctrl, comctl32	= builtin, native
+wsock32, winsock	= builtin
+advapi32, crtdll, ntdll	= builtin, native
+mpr, winspool		= builtin, native
+ddraw, dinput, dsound	= builtin, native
+winmm, w32skrnl, msvfw32= builtin
+wnaspi32, wow32		= builtin
+system, display, wprocs	= builtin
+wineps			= builtin
+
+NOTE: You see that elfdll or so is the first option for a few of these dll's.
+This will fail for you, but you won't notice it as wine will just use the second
+or third option.
+
+2.7 THE [options] SECTION
+
+No one seems to know what this section is...
+
+AllocSystemColors=100
+
+System colors to allocate? Just leave it at 100.
+
+2.8 THE [fonts] SECTION
+
+This section sets up wine's font handling.
+
+Resolution = 96
+
+Since the way X handles fonts is different from the way Windows does, wine uses
+a special mechanism to deal with them. It must scale them using the number
+defined in the "Resolution" setting. 60-120 are reasonable values, 96 is a nice
+in the middle one. If you have the real windows fonts available (<dirs to
+wine>/documentation/ttfserver and fonts), this parameter will not be as
+important. Of course, it's always good to get your X fonts working acceptably in
+wine.
+
+Default = -adobe-times-
+
+The default font wine uses. Fool around with it if you'd like.
+
+OPTIONAL: 
+
+The "Alias" setting allows you to map an X font to a font used in wine. This is
+good for apps that need a special font you don't have, but a good replacement
+exists. The syntax is like so:
+
+AliasX = [Fake windows name],[Real X name]<,optional "masking" section>
+
+Pretty straightforward. Replace "AliasX" with "Alias0", then "Alias1" and so on.
+The fake windows name is the name that the font will be under a windows app in
+wine. The real X name is the font name as seen by X (Run "xfontsel").
+The optional "masking" section allows you to utilize the fake windows name you
+define. If it is not used, then wine will just try to extract the fake windows
+name itself and not use the value you enter.
+
+Here is an example of an alias without masking. The font will show up in windows
+apps as "Google". When defining an alias in a config file, forget about my
+comment text (The "<-- blah" stuff)
+
+Alias0 = Foo,--google-      <-- Note the no spaces after the " = ". Important!
+
+Here is an example with masking enabled. The font will show up as "Foo" in
+windows apps.
+
+Alias1 = Foo,--google-,subst 
+
+For more info check out <dirs to wine>/documentation/fonts
+
+2.9 THE [serialports], [parallelports], [spooler], AND [ports] SECTIONS
+
+Even though it sounds like a lot of sections, these are all closely related.
+They all are for communications and parallel ports. 
+
+The [serialports] section tells wine what serial ports it is allowed to use.
+
+ComX=/dev/cuaY
+
+Replace X with the number of the COM port in Windows (1-8) and Y with the
+number of it in X (Usually the number of the port in Windows minus 1). ComX can
+actually equal any device (/dev/modem is acceptable). It is not always necessary
+to define any COM ports (An optional setting). Here is an example:
+
+Com1=/dev/cua0
+
+Use as many of these as you like in the section to define all of the COM ports
+you need.
+
+The [parallelports] section sets up any parallel ports that will be allowed
+access under wine.
+
+LptX=/dev/lpY
+
+Seem farmiliar? Syntax is just like the COM port setting. Replace X with a value
+from 1-4 as it is in Windows and Y with a value from 0-3 (Y is usually the value
+in windows minus 1, just like for COM ports). You don't always need to define a
+parallel port (AKA, it's optional). As with the other section, LptX can equal 
+any device (Maybe /dev/printer). Here is an example:
+
+Lpt1=/dev/lp0
+
+The [spooler] section will inform wine where to spool print jobs. Use this if
+you want to try printing. Wine docs claim that spooling is "rather primitive" at
+this time, so it won't work perfectly. IT IS OPTIONAL
+The only setting you use in this section works to map a port (LPT1, for example)
+to a file or a command. Here is an example, mapping LPT1 to the file "out.ps":
+
+LPT1:=out.ps
+
+The following command maps printing jobs to LPT1 to the command "lpr". Notice 
+the |:
+
+LPT1:=|lpr
+
+The [ports] section is usually useful only for people who need direct port
+access for programs requiring dongles or scanners. IF YOU DON'T NEED IT, DON'T
+USE IT! 
+
+read=0x779,0x379,0x280-0x2a0
+
+Gives direct read access to those IO's.
+
+write=0x779,0x379,0x280-0x2a0 
+
+Gives direct write access to those IO's. It probably a good idea to keep the
+values of the "read" and "write" settings the same. This stuff will only work 
+when you're root.
+
+2.10 THE [spy], [Registry], [tweak.layout], and [programs] SECTIONS
+
+[spy] is used to Include or exclude debug messages, and to output them to a
+file. The latter is rarely used. THESE ARE ALL OPTIONAL AND YOU PROBABLY DON'T
+NEED TO ADD OR REMOVE ANYTHING IN THIS SECTION TO YOUR CONFIG.
+
+File=/blanco
+
+Sets the logfile for wine. Set to CON to log to standard out. THIS IS RARELY
+USED
+
+Exclude=WM_SIZE;WM_TIMER;
+
+Excludes debug messages about WM_SIZE and WM_TIMER in the logfile.
+
+Include=WM_SIZE;WM_TIMER;
+
+Includes debug messages about WM_SIZE and WM_TIMER in the logfile.
+
+[Registry] can be used to tell wine where your old windows registry files exist. This
+section is completely optional and useless to people using wine without an existing
+windows installation.
+
+UserFileName=/dirs/to/user.reg
+
+The location of your old user.reg file.
+
+LocalMachineFileName=/dirs/to/system.reg
+
+The location of your old system.reg file.
+
+[tweak.layout] is devoted to wine's look. There is only one setting for it.
+
+WineLook=win31|win95|win98
+
+Will change the look of wine from Windows 3.1 to Windows 95. "win98" behaves
+just like "win95" most of the time.
+
+[programs] can be used to say what programs run under special conditions.
+
+Default=/program/to/execute.exe
+
+Sets the program to be run if wine is started without specifying a program.
+
+Startup=/program/to/execute.exe
+
+Sets the program to automatically be run at startup every time.
+
+3. WHERE DO I PUT IT?
+
+The wine config file can go in two places. 
+
+	/usr/local/etc/wine.conf <--- A systemwide config file, used for anyone
+	who doesn't have their own.
+	$HOME/.winerc <--- Your own config file, that only is used for your
+	user. 
+
+So copy the file you made to be the wine.conf to /usr/local/etc/wine.conf or 
+$HOME/.winerc for wine to recognize it. 
+
+4. WHAT IF IT DOESN'T WORK?
+
+There is always a chance that things will go wrong. If the unthinkable happens, 
+try the newsgroup, comp.emulators.ms-windows.wine
+Make sure that you have looked over this document thoroughly, and have also
+read:
+README
+documentation/bugreports
+http://www.westfalen.de/witch/wine-HOWTO.txt (Optional but recommended)
+If indeed it looks like you've done your research, be prepared for helpful
+suggestions. If you haven't, brace yourself for heaving flaming.
+
-- 
GitLab