# These entries must apparently exist in any win95-compatible registry.
# (feed this to `regapi setValue' to install)

# Shell Folders. The purpose of these are pretty self-evident.
# Primarily used by installation programs and the Explorer.

[HKEY_USERS\.Default\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]
"Favorites"="C:\\WINDOWS\\Favorites"
"StartUp"="C:\\WINDOWS\\Start Menu\\Programs\\Startup"
"Desktop"="C:\\WINDOWS\\Desktop"
"Programs"="C:\\WINDOWS\\Start Menu\\Programs"
"Fonts"="C:\\WINDOWS\\Fonts"
"SendTo"="C:\\WINDOWS\\SendTo"
"Start Menu"="C:\\WINDOWS\\Start Menu"
"Templates"="C:\\WINDOWS\\ShellNew"
"Recent"="C:\\WINDOWS\\Recent"
"NetHood"="C:\\WINDOWS\\NetHood"
"Personal"="C:\\My Documents"

[HKEY_USERS\.Default\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Personal"="C:\\My Documents"
"Favorites"="C:\\WINDOWS\\Favorites"

# Same as above, but for HKEY_CURRENT_USER, not HKEY_USERS\.Default

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]
"Favorites"="C:\\WINDOWS\\Favorites"
"StartUp"="C:\\WINDOWS\\Start Menu\\Programs\\Startup"
"Desktop"="C:\\WINDOWS\\Desktop"
"Programs"="C:\\WINDOWS\\Start Menu\\Programs"
"Fonts"="C:\\WINDOWS\\Fonts"
"SendTo"="C:\\WINDOWS\\SendTo"
"Start Menu"="C:\\WINDOWS\\Start Menu"
"Templates"="C:\\WINDOWS\\ShellNew"
"Recent"="C:\\WINDOWS\\Recent"
"NetHood"="C:\\WINDOWS\\NetHood"
"Personal"="C:\\My Documents"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
"Personal"="C:\\My Documents"
"Favorites"="C:\\WINDOWS\\Favorites"

[HKEY_CURRENT_USER\Control Panel\desktop]
"DragFullWindows"="0"

#
# Override default load address of BDE (Borland database engine),
# since it's not available on Linux
#

[HKEY_LOCAL_MACHINE\Software\Borland\Database Engine\Settings\SYSTEM\INIT]
"SHAREDMEMLOCATION"="9000"

#
# General OLE/DCOM config
#

[HKEY_LOCAL_MACHINE\Software\Microsoft\OLE]
# allow cross-machine calls (RPC) (default Y)
"EnableDCOM"="Y"
# allow incoming connections ? (def. N)
"EnableRemoteConnect"="N"

#
# General installation config
#

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion]
"ProgramFilesDir"="C:\\Program Files"
"CommonFilesDir"="C:\\Program Files\\Common Files"
"RegisteredOrganization"="Change preferred organization in ~/.wine/system.reg"
"RegisteredOwner"="Change preferred owner in ~/.wine/system.reg"
"FirstInstallDateTime"=hex:21,81,7c,23

# Font name to font file mappings
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Fonts]
# "Arial (TrueType)"="ARIAL.TTF"      # sample entry
@=""

# This is intended for a centrally managed (server) directory where
# system files and e.g. fonts can reside. Most installs have this set
# to C:\WINDOWS, though.
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Setup]
"SharedDir"="C:\\WINDOWS"

#
# Configuration for unhandled exceptions
#
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug]
# command line to start a debugger when an exception occurs
"Debugger"="winedbg --debugmsg -all %ld %ld"
# to 0 if a message box has to be presented before running the debugger
"Auto"="1"

#
# This identifies the files for available code pages
#

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage]
"ACP"="1252"
"OEMCP"="437"

#
# Entries for OLE32 (COM/OLE base)
#

# OLE32's built-in marshaler, handles standard interfaces such as IClassFactory.
# (PSFactoryBuffer = Proxy/Stub factory)
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00000320-0000-0000-C000-000000000046}]
@="PSFactoryBuffer"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00000320-0000-0000-C000-000000000046}\InProcServer32]
@="ole32.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{0000030b-0000-0000-C000-000000000046}]
@="DfMarshal"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{0000030b-0000-0000-C000-000000000046}\InProcServer32]
@="ole32.dll"
"ThreadingModel"="Both"

# IUnknown, the superclass for everything COM/OLE.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000000-0000-0000-C000-000000000046}]
@="IUnknown"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000000-0000-0000-C000-000000000046}\BaseInterface]
@=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000000-0000-0000-C000-000000000046}\NumMethods]
@="3"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000000-0000-0000-C000-000000000046}\ProxyStubClsid32]
@="{00000320-0000-0000-C000-000000000046}"

# IClassFactory, standard interface for creating instances of classes.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000001-0000-0000-C000-000000000046}]
@="IClassFactory"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000001-0000-0000-C000-000000000046}\NumMethods]
@="5"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00000001-0000-0000-C000-000000000046}\ProxyStubClsid32]
@="{00000320-0000-0000-C000-000000000046}"

#
# Entries for OLEAUT32 (OLE Automation)
#

# The Universal Marshaler, also known as the Type Library Marshaler.
# (PSOAInterface = Proxy/Stub OLE Automation interface)
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00020424-0000-0000-C000-000000000046}]
@="PSOAInterface"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00020424-0000-0000-C000-000000000046}\InProcServer]
@="ole2disp.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00020424-0000-0000-C000-000000000046}\InProcServer32]
@="oleaut32.dll"
"ThreadingModel"="Both"

# OLE Automation type libraries.
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\1.0]
@="OLE Automation"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\1.0\0\win16]
@="stdole.tlb"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\1.0\0\win32]
@="stdole32.tlb"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\1.0\FLAGS]
@="1"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\2.0]
@="OLE Automation"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\2.0\0\win32]
@="stdole2.tlb"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020430-0000-0000-C000-000000000046}\2.0\FLAGS]
@="0"

#
# SHELL32 entries base classes of the desktop/ shelllinks
# Used by common dialogs, programs creating and many others
#

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021400-0000-0000-C000-000000000046}]
@="Shortcut"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021400-0000-0000-C000-000000000046}\InProcServer32]
@="shell32.dll"
"ThreadingModel"="Apartment"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021401-0000-0000-C000-000000000046}]
@="Shortcut"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021401-0000-0000-C000-000000000046}\InProcServer32]
@="shell32.dll"
"ThreadingModel"="Apartment"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{00021401-0000-0000-C000-000000000046}\shellex\MayChangeDefaultMenu]
@=""

#
# Entries for COMCAT (Component Category Manager)
#

# The Component Category Manager
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{0002E005-0000-0000-C000-000000000046}]
@="StdComponentCategoriesMgr"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{0002E005-0000-0000-C000-000000000046}\InProcServer32]
@="comcat.dll"
"ThreadingModel"="Both"

#
# Entries for DirectX. Used by high-performance multimedia applications, like games.
#

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX]
"Version"="4.07.00.0700"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D7B70EE0-4340-11CF-B063-0020AFC2CD35}]
@="DirectDraw Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D7B70EE0-4340-11CF-B063-0020AFC2CD35}\InprocServer32]
@="ddraw.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{593817A0-7DB3-11CF-A2DE-00AA00B93356}]
@="DirectDraw Clipper Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{593817A0-7DB3-11CF-A2DE-00AA00B93356}\InprocServer32]
@="ddraw.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D1EB6D20-8923-11D0-9D97-00A0C90A43CB}]
@="DirectPlay Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{D1EB6D20-8923-11D0-9D97-00A0C90A43CB}\InprocServer32]
@="dplayx.dll"
"ThreadingModel"="Both"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{47D4D946-62E8-11cf-93BC-444553540000}]
@="DirectSound Object"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{47D4D946-62E8-11cf-93BC-444553540000}\InprocServer32]
@="dsound.dll"
"ThreadingModel"="Both"

#
# Entries used by Internet Explorer installer
#

# Active Setup is installed
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{6E449686-C509-11CF-AAFA-00AA00B6015C}]
@="Microsoft Active Setup Engine"

# Active Setup is installed
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{6E449686-C509-11CF-AAFA-00AA00B6015C}\InProcServer32]
@="inseng.dll"
"ThreadingModel"="Apartment"

# IDispatch
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00020400-0000-0000-C000-000000000046}]
@="IDispatch"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{00020400-0000-0000-C000-000000000046}\ProxyStubClsid32]
@="{00020420-0000-0000-C000-000000000046}"

# Without this IE setup creates garbage filenames in Windows directory
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Advanced INF Setup]
@=""

# Session Manager is installed
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager]
@=""

# NT 4.0 SP6 is installed
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Windows]
"CSDVersion"=dword:00000600

#
# Entries for programs that read the registry to get Serial/Com Port info
#
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SerialComm]
"Serial0"="COM1"

#
# Entries for Multimedia
#

# Midi Mapper
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Multimedia\MIDIMap] 989041554
"AutoScheme"=dword:00000000
"CurrentInstrument"="#0"
"UseScheme"=dword:00000000

#
# Entries for IWebBrowser
# Used by Internet Explorer HTML-rendering control
#

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{8856f961-340a-11d0-a96b-00c04fd705a2}]
@="Shortcut"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{8856f961-340a-11d0-a96b-00c04fd705a2}\InProcServer32]
@="shdocvw.dll"
"ThreadingModel"="Apartment"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{8856f961-340a-11d0-a96b-00c04fd705a2}]
@="Shortcut"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{8856f961-340a-11d0-a96b-00c04fd705a2}\InProcServer32]
@="shdocvw.dll"
"ThreadingModel"="Apartment"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{8856f961-340a-11d0-a96b-00c04fd705a2}\shellex\MayChangeDefaultMenu]
@=""


#
# Entries for Mozilla ActiveX control support
#

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}]
@="MozillaBrowser Class"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\Control]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\InprocServer32]
@="mozctl.dll"
"ThreadingModel"="Apartment"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\Insertable]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\MiscStatus]
@="0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\MiscStatus\1]
@="131473"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\ProgID]
@="Mozilla.Browser.1"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\Programmable]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\ToolboxBitmap32]
@="mozctl.dll, 1"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\TypeLib]
@="{1339B53E-3453-11D2-93B9-000000000000}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\Version]
@="1.0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1339B54C-3453-11D2-93B9-000000000000}\VersionIndependentProgID]
@="Mozilla.Browser"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Mozilla.Browser]
@="Mozilla Web Browser"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Mozilla.Browser\CurVer]
@="Mozilla.Browser.1"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Mozilla.Browser.1]
@="Mozilla Web Browser"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Mozilla.Browser.1\CLSID]
@="{1339B54C-3453-11D2-93B9-000000000000}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{1339B53E-3453-11D2-93B9-000000000000}\1.0]
@="MozillaControl 1.0 Type Library"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{1339B53E-3453-11D2-93B9-000000000000}\1.0\0\win32]
@="C:\\mozilla\\bin\\mozctl.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla]
"BinDirectoryPath"="C:\\mozilla\\bin"

[HKEY_LOCAL_MACHINE\TypeLib\{1339B53E-3453-11D2-93B9-000000000000}\1.0]
@="MozillaControl 1.0 Type Library"

[HKEY_LOCAL_MACHINE\TypeLib\{1339B53E-3453-11D2-93B9-000000000000}\1.0\0\win32]
@="C:\\mozilla\\bin\\mozctl.dll"

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Arial CE,238"="Arial,238"
"Arial CYR,204"="Arial,204"
"Arial Greek,161"="Arial,161"
"Arial TUR,162"="Arial,162"
"Courier New CE,238"="Courier New,238"
"Courier New CYR,204"="Courier New,204"
"Courier New Greek,161"="Courier New,161"
"Courier New TUR,162"="Courier New,162"
"Helv"="Arial"
"Helvetica"="Arial"
"MS Shell Dlg"="Tahoma"
"MS Shell Dlg 2"="Tahoma"
"Times"="Times New Roman"
"Times New Roman CE,238"="Times New Roman,238"
"Times New Roman CYR,204"="Times New Roman,204"
"Times New Roman Greek,161"="Times New Roman,161"
"Times New Roman TUR,162"="Times New Roman,162"
"Tms Rmn"="Times New Roman"
