diff --git a/ANNOUNCE b/ANNOUNCE
index 7fbbef7..7ba5a18 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,14 +1,14 @@
-This is release 950216 of Wine the MS Windows emulator.  This is still a
+This is release 950302 of Wine the MS Windows emulator.  This is still a
 developer's only release.  There are many bugs and many unimplemented API
 features.  Most applications still do not work.
 
 Patches should be submitted to "wine-new@amscons.com".  Please don't forget
 to include a ChangeLog entry.  I'll make a new release every other Sunday.
 
-WHAT'S NEW with Wine-950216: (see ChangeLog for details)
-	- Size optimizations in DLL relay code
-	- Portability fixes for WineLib
-	- Handling of relative paths in DOS filenames
+WHAT'S NEW with Wine-950302: (see ChangeLog for details)
+	- You now need libXpm to be able to compile.
+	- OLE stubs and run-time option to disable them.
+	- Support for special selectors like __0040H.
 	- Lots of bug fixes
 
 See the README file in the distribution for installation instructions.
@@ -17,11 +17,11 @@
 the release is available at the ftp sites.  The sources will be available
 from the following locations:
 
-	sunsite.unc.edu:/pub/Linux/ALPHA/wine/Wine-950216.tar.gz
-	aris.com:/pub/linux/ALPHA/Wine/development/Wine-950216.tar.gz
-	tsx-11.mit.edu:/pub/linux/ALPHA/Wine/development/Wine-950216.tar.gz
-	ftp.funet.fi:/pub/OS/Linux/ALPHA/Wine/Wine-950216.tar.gz
-	ftp.wonderland.org:/Wine/Wine-950216.tar.gz
+	sunsite.unc.edu:/pub/Linux/ALPHA/wine/Wine-950302.tar.gz
+	aris.com:/pub/linux/ALPHA/Wine/development/Wine-950302.tar.gz
+	tsx-11.mit.edu:/pub/linux/ALPHA/Wine/development/Wine-950302.tar.gz
+	ftp.funet.fi:/pub/OS/Linux/ALPHA/Wine/Wine-950302.tar.gz
+	ftp.wonderland.org:/Wine/Wine-950302.tar.gz
 
 If you submitted a patch, please check to make sure it has been
 included in the new release.
diff --git a/ChangeLog b/ChangeLog
index f7b26b1..f2fa6a3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,87 @@
 ----------------------------------------------------------------------
+Thu Mar  2 17:44:32 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
+
+	* [loader/resource.c] [objects/oembitmap.c]
+	Removed sysres bitmap code; you need libXpm to compile now.
+	Implemented LoadIcon() for OEM icons.
+
+	* [include/bitmaps/oic_*]
+	Added OEM icons in XPM format.
+
+	* [objects/dib.c]
+	Bug fix in DrawIcon().
+
+	* [rc/sysresbm.rc]
+	Removed; all bitmaps are stored in XPM format now.
+
+Tue Feb 28 18:54:28 1995  Tomi Leppikangas  (tomilepp@paju.oulu.fi)
+
+	* [controls/edit.c]
+	Small patch to fix edit-control when it's created with text.
+
+Sun Feb 26 20:22:15 1995  Michael Veksler  (e1678223@tochnapc2.technion.ac.il)
+
+	* [tools/make_debug]
+	The created macros won't have side effects anymore when used in
+	an "if-else" structure. No more warnings from the compiler when
+	compiled without defining DEBUG_RUNTIME.
+ 
+Sun Feb 26 20:20:49 1995  Michael Patra <micky@marie.physik.TU-Berlin.DE>
+
+	* [controls/listbox.c]
+	ListBoxDeleteString(): Fixed
+
+	* [loader/selector.c]
+	GetMemoryReference(): When special segments are referenced by
+	pseudo-functions like __0040H, a reference to a "normal" segment
+	will be returned preventing the program from crashing as soon
+	as the referenced segment is actually accessed.
+
+Sun Feb 26 15:55:14 MET 1995  Martin von Loewis (loewis@informatik.hu-berlin.de)
+
+	* [Configure]
+	Ask for OLE stubs and malloc debugging
+
+	* [Imakefile]
+	link with libmcheck.a if necessary
+
+	* [if1632/relay.c][include/dll.h][if1632/Imakefile]
+	Add OLE stubs, increase number of builtins
+	dll_name_table_entry_s: new field dll_is_used
+
+	* [loader/library.c]
+	GetModuleHandle,ModuleNext: Check dll_is_used
+
+	* [loader/ne_image.c]
+	Bark on unsupported NE_RADDR_LOWBYTE flag (what is it supposed
+	to mean, anyway?)
+
+	* [misc/olecli.c][misc/olesvr.c]
+	New files. Add to misc/Imakefile
+
+	* [misc/dos_fs.c]
+	DOS_GetUnixFileName: make a copy of the input parameter to 
+	prevent overwriting
+
+	* [misc/main.c]
+	MAIN_ParseDLLOptions: new function
+	MAIN_ParseOptions: treat -dll command line flag
+	main: add support for malloc debugging
+
+Fri Feb 24 12:43:27 1995  Erik Svendsen  <z3esv@kmd-ac.dk>
+
+	* [loader/signal.c]
+	Small patch for people using FreeBSD-2.1.0.
+
+Fri Feb 17 22:49:18 1995  Miguel de Icaza (miguel@roxanne.nuclecu.unam.mx)
+
+	* [toolkit/sup.c]
+	Added return values to the Call* routines
+
+	* [toolkit/winmain.c]
+	Load the resource file properly for WineLib applications.
+
+----------------------------------------------------------------------
 Thu Feb 16 18:57:31 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
 
 	* [if1632/call.S]
diff --git a/Configure b/Configure
index 1366714..cbbadd1 100644
--- a/Configure
+++ b/Configure
@@ -7,7 +7,6 @@
 
 WINELIB=''
 SHORTNAMES=''
-XPM=''
 LANGUAGE=not_matching
 NEWBUILD=''
 ALLDEFINES=''
@@ -29,6 +28,9 @@
 	fi
 }
 
+echo Read the RELEASE-NOTES for an explanation of the various flags
+echo
+
 echo -n 'Build Wine as emulator or library (E/L) [E]? '
 read input
 if [ "$input" = 'l' -o "$input" = 'L' ]
@@ -46,16 +48,6 @@
 	ALLDEFINES="$ALLDEFINES -DSHORTNAMES"
 fi
 
-echo
-echo -n 'Use the XPM library (Y/N) [Y]? '
-read input
-if [ "$input" = 'n' -o "$input" = 'N' ]
-then :
-else
-	XPM='#define USE_XPM'
-	ALLDEFINES="$ALLDEFINES -DUSE_XPM"
-fi
-
 LANGS=`echo En rc/sysres_*.rc | sed -e 's/rc\/sysres_//g' -e 's/\.rc//g' -e 's/ /\//g;'`
 while	expr "$LANGS" : ".*$LANGUAGE" = 0 > /dev/null
 do
@@ -67,6 +59,15 @@
 done
 ALLDEFINES="$ALLDEFINES -ALANG\($LANGUAGE\)"
 
+prompt "Malloc debugging" MALLOC_DEBUGGING N
+if [ MALLOC_DEBUGGING = 'Y' -o $MALLOC_DEBUGGING = 'y' ]
+then
+       MALLOC_DEBUGGING="#define MALLOC_DEBUGGING"
+       ALLDEFINES="$ALLDEFINES -DMALLOC_DEBUGGING"
+else
+       MALLOC_DEBUGGING=''
+fi
+
 if [ "`(domainname)`" = 'amscons.com' ]
 then
 	echo
@@ -202,8 +203,8 @@
 /* autoconf.h generated automatically.  Run Configure. */
 $WINELIB
 $SHORTNAMES
-$XPM
 $NEWBUILD
+$MALLOC_DEBUGGING
 #define WINE_INI_GLOBAL "$WINE_CONFIGFILE"
 #define AutoDefines $ALLDEFINES
 EOF
diff --git a/Imakefile b/Imakefile
index a51022f..8405d0a 100644
--- a/Imakefile
+++ b/Imakefile
@@ -89,17 +89,20 @@
 SYSLIBS = -lm -lg
 #endif
 
-#ifdef USE_XPM
+/* You may need to add the full path of your libXpm here */
 XPM_LIB = -lXpm
+
+#ifdef MALLOC_DEBUGGING
+MALLOCLIB = -lmcheck
 #else
-XPM_LIB =
+MALLOCLIB =
 #endif
 
 MakeSubdirs($(SUBDIRS))
 DependSubdirs($(SUBDIRS))
 
 #ifndef WINELIB
-NormalProgramTarget(wine,$(OBJS),$(DEPXLIB),$(XPM_LIB) $(XLIB),$(SYSLIBS))
+NormalProgramTarget(wine,$(OBJS),$(DEPXLIB),$(XPM_LIB) $(XLIB),$(MALLOCLIB) $(SYSLIBS))
 AllTarget(wine.sym)
 #else
 NormalLibraryTarget(wine,$(OBJS))
diff --git a/README b/README
index 59e768b..a007111 100644
--- a/README
+++ b/README
@@ -17,9 +17,13 @@
 	NetBSD-current
 	FreeBSD-current or FreeBSD 1.1
 
+You also need to have libXpm installed on your system. The sources for
+it are probably available on the ftp site where you got Wine. They can
+also be found on ftp.x.org and all its mirror sites.
+
 To build Wine, first do a "./Configure" and then a "make" (or "gmake"
 if you're running *BSD).  The executable "wine" will be built.  "wine"
-will load and run 16-bit Windows' executables. 
+will load and run 16-bit Windows executables. 
 
 To upgrade to a new release by using a patch file, first cd to the
 top-level directory of the release (the one containing this README
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
new file mode 100644
index 0000000..a207fa7
--- /dev/null
+++ b/RELEASE-NOTES
@@ -0,0 +1,29 @@
+This file contains information about the current release of Wine.
+If you are new to Wine, read the files ANNOUNCE and README and the FAQ 
+list first.
+If you want to contribute code to Wine, read the DEVELOPER-HINTS. The
+primary source of information to developers is the ChangeLog (next to
+the source, of course).
+
+1. make: No rule to make target xxx/xxx.o. Stop.
+This frequently happens when a prior attempt to make xxx.o failed.
+In the current setup, make does not terminate then, but continues and
+realises the problem later on. 'make' again and watch the output. Be
+sure to analyze the problem before you report it to the newsgroup.
+
+2. What are these questions in Configure?
+Emulator/Library: You need an emulator when you want to run MS-Win
+binaries. You need a library when you want to compile the source code
+of a Windows program.
+Short filenames: Some file systems are limited to 11 characters per
+file name. Files generated in if1632 will get gracefully translated
+names.
+Language: Wine can present the system menu in multiple languages. Select
+one of English, German, or Norwegian here.
+Malloc debugging: When enabled, the mtrace and mcheck GNU libc functions
+are called. You might want to set the MALLOC_TRACE environment variable
+to a trace file name. If your system supports another way of malloc 
+debugging, feel free to add it.
+Config file: Sets the Wine environment. See README for details.
+
+
diff --git a/controls/edit.c b/controls/edit.c
index e81ab13..42981bd 100644
--- a/controls/edit.c
+++ b/controls/edit.c
@@ -501,6 +501,8 @@
 	es->hText = EDIT_HeapAlloc(hwnd, EditBufLen(wndPtr) + 2);
 	text = EDIT_HeapAddr(hwnd, es->hText);
 	memset(text, 0, es->textlen + 2);
+        es->wlines = 0;
+        es->textwidth = 0;
 	EDIT_ClearTextPointers(hwnd);
     }
     else
@@ -569,12 +571,10 @@
     /* --- other structure variables */
     GetTextMetrics(hdc, &tm);
     es->txtht = tm.tmHeight + tm.tmExternalLeading;
-    es->wlines = 0;
     es->wtop = es->wleft = 0;
     es->CurrCol = es->CurrLine = 0;
     es->WndCol = es->WndRow = 0;
     es->TextChanged = FALSE;
-    es->textwidth = 0;
     es->SelBegLine = es->SelBegCol = 0;
     es->SelEndLine = es->SelEndCol = 0;
     es->hFont = 0;
diff --git a/controls/listbox.c b/controls/listbox.c
index e2bac73..14bed8f 100644
--- a/controls/listbox.c
+++ b/controls/listbox.c
@@ -920,12 +920,16 @@
     lpls = lphl->lpFirst;
     if (lpls == NULL) return LB_ERR;
     if (uIndex > lphl->ItemsCount) return LB_ERR;
-    for(Count = 1; Count < uIndex; Count++) {
+    if( uIndex == 0 )
+      lphl->lpFirst = lpls->lpNext;
+    else {
+      for(Count = 0; Count < uIndex; Count++) {
 	if (lpls->lpNext == NULL) return LB_ERR;
 	lpls2 = lpls;
 	lpls = (LPLISTSTRUCT)lpls->lpNext;
+      }
+      lpls2->lpNext = (LPLISTSTRUCT)lpls->lpNext;
     }
-    lpls2->lpNext = (LPLISTSTRUCT)lpls->lpNext;
     lphl->ItemsCount--;
     if (lpls->hData != 0) LIST_HEAP_FREE(lphl, lpls->hData);
     if (lpls->hMem != 0) LIST_HEAP_FREE(lphl, lpls->hMem);
diff --git a/if1632/Imakefile b/if1632/Imakefile
index bd0bae2..4f13cb9 100644
--- a/if1632/Imakefile
+++ b/if1632/Imakefile
@@ -19,6 +19,13 @@
 	dll_keyboard.o \
 	dll_mmsystem.o \
 	dll_mouse.o \
+	dll_ole2.o \
+	dll_ole2conv.o \
+	dll_ole2disp.o \
+	dll_ole2nls.o \
+	dll_ole2prox.o \
+	dll_olecli.o \
+	dll_olesvr.o \
 	dll_shell.o \
 	dll_sound.o \
 	dll_stress.o \
@@ -46,6 +53,13 @@
 MakeDllFromSpec(shell)
 MakeDllFromSpec(mmsystem)
 MakeDllFromSpec(mouse)
+MakeDllFromSpec(ole2)
+MakeDllFromSpec(ole2conv)
+MakeDllFromSpec(ole2disp)
+MakeDllFromSpec(ole2nls)
+MakeDllFromSpec(ole2prox)
+MakeDllFromSpec(olecli)
+MakeDllFromSpec(olesvr)
 MakeDllFromSpec(sound)
 MakeDllFromSpec(stress)
 MakeDllFromSpec(system)
diff --git a/if1632/callback.c b/if1632/callback.c
index e0617e2..2bb4dbc 100644
--- a/if1632/callback.c
+++ b/if1632/callback.c
@@ -183,8 +183,8 @@
     }
     else if (IS_16_BIT_ADDRESS(func))
     {	
-	dprintf_callback(stddeb, "CallWindowProc // 16bit func=%08x !\n", 
-		(unsigned int) func);
+	dprintf_callback(stddeb, "CallWindowProc // 16bit func=%08x ds=%04x!\n", 
+		(unsigned int) func, pStack16Frame->ds );
 	PushOn16( CALLBACK_SIZE_WORD, hwnd );
 	PushOn16( CALLBACK_SIZE_WORD, message );
 	PushOn16( CALLBACK_SIZE_WORD, wParam );
diff --git a/if1632/ole2.spec b/if1632/ole2.spec
new file mode 100644
index 0000000..30b7b9d
--- /dev/null
+++ b/if1632/ole2.spec
@@ -0,0 +1,150 @@
+name	OLE2
+id	16
+length	161
+
+#1 OLEBUILDVERSION
+#2 OLEINITIALIZE
+#3 OLEUNINITIALIZE
+#4 DLLGETCLASSOBJECT
+#5 WEP
+#6 OLEQUERYLINKFROMDATA
+#7 OLEQUERYCREATEFROMDATA
+#8 OLECREATEFROMDATA
+#9 OLECREATELINKFROMDATA
+#10 OLECREATE
+#11 OLECREATELINK
+#12 OLELOAD
+#13 OLESAVE
+#14 OLERUN
+#15 ___EXPORTEDSTUB
+#16 OLEISRUNNING
+#17 OLELOCKRUNNING
+#18 READCLASSSTG
+#19 WRITECLASSSTG
+#20 READCLASSSTM
+#21 WRITECLASSSTM
+#22 BINDMONIKER
+#23 MKPARSEDISPLAYNAME
+#24 OLESAVETOSTREAM
+#25 OLELOADFROMSTREAM
+#26 CREATEBINDCTX
+#27 CREATEITEMMONIKER
+#28 CREATEFILEMONIKER
+#29 CREATEGENERICCOMPOSITE
+#30 GETRUNNINGOBJECTTABLE
+#31 OLEGETMALLOC
+#32 RELEASESTGMEDIUM
+#33 READSTRINGSTREAM
+#34 WRITESTRINGSTREAM
+#35 REGISTERDRAGDROP
+#36 REVOKEDRAGDROP
+#37 DODRAGDROP
+#38 CREATEOLEADVISEHOLDER
+#39 CREATEDATAADVISEHOLDER
+#40 OLECREATEMENUDESCRIPTOR
+#41 OLESETMENUDESCRIPTOR
+#42 OLEDESTROYMENUDESCRIPTOR
+#43 OPENORCREATESTREAM
+#44 CREATEANTIMONIKER
+#45 CREATEPOINTERMONIKER
+#46 MONIKERRELATIVEPATHTO
+#47 MONIKERCOMMONPREFIXWITH
+#48 ISACCELERATOR
+#49 OLESETCLIPBOARD
+#50 OLEGETCLIPBOARD
+#51 OLEDUPLICATEDATA
+#52 OLEGETICONOFFILE
+#53 OLEGETICONOFCLASS
+#54 CREATEILOCKBYTESONHGLOBAL
+#55 GETHGLOBALFROMILOCKBYTES
+#56 OLEMETAFILEPICTFROMICONANDLABEL
+#57 GETCLASSFILE
+#58 OLEDRAW
+#59 OLECREATEDEFAULTHANDLER
+#60 OLECREATEEMBEDDINGHELPER
+#61 OLECONVERTISTORAGETOOLESTREAMEX
+#62 OLECONVERTOLESTREAMTOISTORAGEEX
+#63 SETDOCUMENTBITSTG
+#64 GETDOCUMENTBITSTG
+#65 WRITEOLESTG
+#66 READOLESTG
+#67 OLECREATEFROMFILE
+#68 OLECREATELINKTOFILE
+#69 CREATEDATACACHE
+#70 OLECONVERTISTORAGETOOLESTREAM
+#71 OLECONVERTOLESTREAMTOISTORAGE
+#74 READFMTUSERTYPESTG
+#75 WRITEFMTUSERTYPESTG
+#76 OLEFLUSHCLIPBOARD
+#77 OLEISCURRENTCLIPBOARD
+#78 OLETRANSLATEACCELERATOR
+#79 OLEDOAUTOCONVERT
+#80 OLEGETAUTOCONVERT
+#81 OLESETAUTOCONVERT
+#82 GETCONVERTSTG
+#83 SETCONVERTSTG
+#84 CREATESTREAMONHGLOBAL
+#85 GETHGLOBALFROMSTREAM
+#86 OLESETCONTAINEDOBJECT
+#87 OLENOTEOBJECTVISIBLE
+#88 OLECREATESTATICFROMDATA
+#89 OLEREGGETUSERTYPE
+#90 OLEREGGETMISCSTATUS
+#91 OLEREGENUMFORMATETC
+#92 OLEREGENUMVERBS
+#93 OLEGETENUMFORMATETC
+#100 MAKEDEBUGSTREAM
+#104 DBGLOGOPEN
+#105 DBGLOGCLOSE
+#106 DBGLOGOUTPUTDEBUGSTRING
+#107 DBGLOGWRITE
+#108 DBGLOGTIMESTAMP
+#109 DBGLOGWRITEBANNER
+#110 DBGDUMPOBJECT
+#111 DBGISOBJECTVALID
+#112 DUMPALLOBJECTS
+#113 VALIDATEALLOBJECTS
+#114 DBGDUMPCLASSNAME
+#115 DBGDUMPEXTERNALOBJECT
+#120 _IID_IENUMUNKNOWN
+#121 _IID_IENUMSTRING
+#122 _IID_IENUMMONIKER
+#123 _IID_IENUMFORMATETC
+#124 _IID_IENUMOLEVERB
+#125 _IID_IENUMSTATDATA
+#126 _IID_IENUMGENERIC
+#127 _IID_IENUMHOLDER
+#128 _IID_IENUMCALLBACK
+#129 _IID_IPERSISTSTREAM
+#130 _IID_IPERSISTSTORAGE
+#131 _IID_IPERSISTFILE
+#132 _IID_IPERSIST
+#133 _IID_IVIEWOBJECT
+#134 _IID_IDATAOBJECT
+#135 _IID_IADVISESINK
+#136 _IID_IDATAADVISEHOLDER
+#137 _IID_IOLEADVISEHOLDER
+#138 _IID_IOLEOBJECT
+#139 _IID_IOLEINPLACEOBJECT
+#140 _IID_IOLEWINDOW
+#141 _IID_IOLEINPLACEUIWINDOW
+#142 _IID_IOLEINPLACEFRAME
+#143 _IID_IOLEINPLACEACTIVEOBJECT
+#144 _IID_IOLECLIENTSITE
+#145 _IID_IOLEINPLACESITE
+#146 _IID_IPARSEDISPLAYNAME
+#147 _IID_IOLECONTAINER
+#148 _IID_IOLEITEMCONTAINER
+#149 _IID_IOLELINK
+#150 _IID_IOLECACHE
+#151 _IID_IOLEMANAGER
+#152 _IID_IOLEPRESOBJ
+#153 _IID_IDROPSOURCE
+#154 _IID_IDROPTARGET
+#155 _IID_IDEBUG
+#156 _IID_IDEBUGSTREAM
+#157 _IID_IADVISESINK2
+#158 _IID_IVIEWOBJECT2
+#159 _IID_IOLECACHE2
+#160 _IID_IOLECACHECONTROL
+#161 _IID_IRUNNABLEOBJECT
diff --git a/if1632/ole2conv.spec b/if1632/ole2conv.spec
new file mode 100644
index 0000000..107890b
--- /dev/null
+++ b/if1632/ole2conv.spec
@@ -0,0 +1,12 @@
+name	ole2conv
+id	17
+length	10
+#1 GETFILTERINFO
+#2 IMPORTGR
+#3 GETFILTERPREF
+#4 IMPORTEMBEDDEDGR
+#5 QD2GDI
+#6 STATUSPROC
+#7 ENUMFONTFUNC
+#8 WEP
+#9 ___EXPORTEDSTUB
diff --git a/if1632/ole2disp.spec b/if1632/ole2disp.spec
new file mode 100644
index 0000000..cf98d97
--- /dev/null
+++ b/if1632/ole2disp.spec
@@ -0,0 +1,113 @@
+name	ole2disp
+id	18
+length	110
+#1 DLLGETCLASSOBJECT
+#2 SYSALLOCSTRING
+#3 SYSREALLOCSTRING
+#4 SYSALLOCSTRINGLEN
+#5 SYSREALLOCSTRINGLEN
+#6 SYSFREESTRING
+#7 SYSSTRINGLEN
+#8 VARIANTINIT
+#9 VARIANTCLEAR
+#10 VARIANTCOPY
+#11 VARIANTCOPYIND
+#12 VARIANTCHANGETYPE
+#13 VARIANTTIMETODOSDATETIME
+#14 DOSDATETIMETOVARIANTTIME
+#15 SAFEARRAYCREATE
+#16 SAFEARRAYDESTROY
+#17 SAFEARRAYGETDIM
+#18 SAFEARRAYGETELEMSIZE
+#19 SAFEARRAYGETUBOUND
+#20 SAFEARRAYGETLBOUND
+#21 SAFEARRAYLOCK
+#22 SAFEARRAYUNLOCK
+#23 SAFEARRAYACCESSDATA
+#24 SAFEARRAYUNACCESSDATA
+#25 SAFEARRAYGETELEMENT
+#26 SAFEARRAYPUTELEMENT
+#27 SAFEARRAYCOPY
+#28 DISPGETPARAM
+#29 DISPGETIDSOFNAMES
+#30 DISPINVOKE
+#31 CREATEDISPTYPEINFO
+#32 CREATESTDDISPATCH
+#33 _IID_IDISPATCH
+#34 _IID_IENUMVARIANT
+#35 REGISTERACTIVEOBJECT
+#36 REVOKEACTIVEOBJECT
+#37 GETACTIVEOBJECT
+#38 SAFEARRAYALLOCDESCRIPTOR
+#39 SAFEARRAYALLOCDATA
+#40 SAFEARRAYDESTROYDESCRIPTOR
+#41 SAFEARRAYDESTROYDATA
+#42 SAFEARRAYREDIM
+#43 VARI2FROMI4
+#44 VARI2FROMR4
+#45 VARI2FROMR8
+#46 VARI2FROMCY
+#47 VARI2FROMDATE
+#48 VARI2FROMSTR
+#49 VARI2FROMDISP
+#50 VARI2FROMBOOL
+#51 VARI4FROMI2
+#52 VARI4FROMR4
+#53 VARI4FROMR8
+#54 VARI4FROMCY
+#55 VARI4FROMDATE
+#56 VARI4FROMSTR
+#57 VARI4FROMDISP
+#58 VARI4FROMBOOL
+#59 VARR4FROMI2
+#60 VARR4FROMI4
+#61 VARR4FROMR8
+#62 VARR4FROMCY
+#63 VARR4FROMDATE
+#64 VARR4FROMSTR
+#65 VARR4FROMDISP
+#66 VARR4FROMBOOL
+#67 VARR8FROMI2
+#68 VARR8FROMI4
+#69 VARR8FROMR4
+#70 VARR8FROMCY
+#71 VARR8FROMDATE
+#72 VARR8FROMSTR
+#73 VARR8FROMDISP
+#74 VARR8FROMBOOL
+#75 VARDATEFROMI2
+#76 VARDATEFROMI4
+#77 VARDATEFROMR4
+#78 VARDATEFROMR8
+#79 VARDATEFROMCY
+#80 VARDATEFROMSTR
+#81 VARDATEFROMDISP
+#82 VARDATEFROMBOOL
+#83 VARCYFROMI2
+#84 VARCYFROMI4
+#85 VARCYFROMR4
+#86 VARCYFROMR8
+#87 VARCYFROMDATE
+#88 VARCYFROMSTR
+#89 VARCYFROMDISP
+#90 VARCYFROMBOOL
+#91 VARBSTRFROMI2
+#92 VARBSTRFROMI4
+#93 VARBSTRFROMR4
+#94 VARBSTRFROMR8
+#95 VARBSTRFROMCY
+#96 VARBSTRFROMDATE
+#97 VARBSTRFROMDISP
+#98 VARBSTRFROMBOOL
+#99 VARBOOLFROMI2
+#100 VARBOOLFROMI4
+#101 VARBOOLFROMR4
+#102 VARBOOLFROMR8
+#103 VARBOOLFROMDATE
+#104 VARBOOLFROMCY
+#105 VARBOOLFROMSTR
+#106 VARBOOLFROMDISP
+#107 DOINVOKEMETHOD
+#108 VARIANTCHANGETYPEEX
+#109 WEP
+#110 ___EXPORTEDSTUB
diff --git a/if1632/ole2nls.spec b/if1632/ole2nls.spec
new file mode 100644
index 0000000..7fc4a3a
--- /dev/null
+++ b/if1632/ole2nls.spec
@@ -0,0 +1,14 @@
+name	ole2nls
+id	19
+length	11
+#1 GETUSERDEFAULTLCID
+#2 GETSYSTEMDEFAULTLCID
+#3 GETUSERDEFAULTLANGID
+#4 GETSYSTEMDEFAULTLANGID
+#5 GETLOCALEINFOA
+#6 LCMAPSTRINGA
+#7 GETSTRINGTYPEA
+#8 COMPARESTRINGA
+#9 WEP
+#10 LIBMAIN
+#11 NOTIFYWINDOWPROC
diff --git a/if1632/ole2prox.spec b/if1632/ole2prox.spec
new file mode 100644
index 0000000..ecc1ebd
--- /dev/null
+++ b/if1632/ole2prox.spec
@@ -0,0 +1,6 @@
+name	ole2prox
+id	20
+length	3
+#1 DLLGETCLASSOBJECT
+#2 WEP
+#3 ___EXPORTEDSTUB
diff --git a/if1632/olecli.spec b/if1632/olecli.spec
new file mode 100644
index 0000000..7d0e13e
--- /dev/null
+++ b/if1632/olecli.spec
@@ -0,0 +1,181 @@
+name	olecli
+id	21
+length	954
+#1 WEP
+#2 OLEDELETE
+#3 OLESAVETOSTREAM
+#4 OLELOADFROMSTREAM
+#6 OLECLONE
+#7 OLECOPYFROMLINK
+#8 OLEEQUAL
+#9 OLEQUERYLINKFROMCLIP
+#10 OLEQUERYCREATEFROMCLIP
+#11 OLECREATELINKFROMCLIP
+#12 OLECREATEFROMCLIP
+#13 OLECOPYTOCLIPBOARD
+#14 OLEQUERYTYPE
+#15 OLESETHOSTNAMES
+#16 OLESETTARGETDEVICE
+#17 OLESETBOUNDS
+#18 OLEQUERYBOUNDS
+#19 OLEDRAW
+#20 OLEQUERYOPEN
+#21 OLEACTIVATE
+#22 OLEUPDATE
+#23 OLERECONNECT
+#24 OLEGETLINKUPDATEOPTIONS
+#25 OLESETLINKUPDATEOPTIONS
+#26 OLEENUMFORMATS
+#27 OLECLOSE
+#28 OLEGETDATA
+#29 OLESETDATA
+#30 OLEQUERYPROTOCOL
+#31 OLEQUERYOUTOFDATE
+#32 OLEOBJECTCONVERT
+#33 OLECREATEFROMTEMPLATE
+#34 OLECREATE
+#35 OLEQUERYRELEASESTATUS
+#36 OLEQUERYRELEASEERROR
+#37 OLEQUERYRELEASEMETHOD
+#38 OLECREATEFROMFILE
+#39 OLECREATELINKFROMFILE
+#40 OLERELEASE
+41  pascal OleRegisterClientDoc(ptr ptr long ptr) OleRegisterClientDoc(1 2 3 4)
+42  pascal OleRevokeClientDoc(long) OleRevokeClientDoc(1)
+43  pascal OleRenameClientDoc(long ptr) OleRenameClientDoc(1 2)
+#44 OLEREVERTCLIENTDOC
+#45 OLESAVEDCLIENTDOC
+#46 OLERENAME
+#47 OLEENUMOBJECTS
+#48 OLEQUERYNAME
+#49 OLESETCOLORSCHEME
+#50 OLEREQUESTDATA
+#54 OLELOCKSERVER
+#55 OLEUNLOCKSERVER
+#56 OLEQUERYSIZE
+#57 OLEEXECUTE
+#58 OLECREATEINVISIBLE
+#59 OLEQUERYCLIENTVERSION
+#60 OLEISDCMETA
+#100 DOCWNDPROC
+#101 SRVRWNDPROC
+#102 MFCALLBACKFUNC
+#110 DEFLOADFROMSTREAM
+#111 DEFCREATEFROMCLIP
+#112 DEFCREATELINKFROMCLIP
+#113 DEFCREATEFROMTEMPLATE
+#114 DEFCREATE
+#115 DEFCREATEFROMFILE
+#116 DEFCREATELINKFROMFILE
+#117 DEFCREATEINVISIBLE
+#200 LERELEASE
+#201 LESHOW
+#202 LEGETDATA
+#203 LESETDATA
+#204 LESETHOSTNAMES
+#205 LESETTARGETDEVICE
+#206 LESETBOUNDS
+#207 LESAVETOSTREAM
+#208 LECLONE
+#209 LECOPYFROMLINK
+#210 LEEQUAL
+#211 LECOPY
+#212 LEQUERYTYPE
+#213 LEQUERYBOUNDS
+#214 LEDRAW
+#215 LEQUERYOPEN
+#216 LEACTIVATE
+#218 LEUPDATE
+#219 LERECONNECT
+#220 LEENUMFORMAT
+#221 LEQUERYPROTOCOL
+#222 LEQUERYOUTOFDATE
+#223 LEOBJECTCONVERT
+#224 LECHANGEDATA
+#225 LECLOSE
+#226 LEGETUPDATEOPTIONS
+#227 LESETUPDATEOPTIONS
+#228 LEEXECUTE
+#229 LEOBJECTLONG
+#230 LECREATEINVISIBLE
+#300 MFRELEASE
+#301 MFGETDATA
+#302 MFSAVETOSTREAM
+#303 MFCLONE
+#304 MFEQUAL
+#305 MFCOPY
+#307 MFQUERYBOUNDS
+#308 MFDRAW
+#309 MFENUMFORMAT
+#310 MFCHANGEDATA
+#400 BMRELEASE
+#401 BMGETDATA
+#402 BMSAVETOSTREAM
+#403 BMCLONE
+#404 BMEQUAL
+#405 BMCOPY
+#407 BMQUERYBOUNDS
+#408 BMDRAW
+#409 BMENUMFORMAT
+#410 BMCHANGEDATA
+#500 DIBRELEASE
+#501 DIBGETDATA
+#502 DIBSAVETOSTREAM
+#503 DIBCLONE
+#504 DIBEQUAL
+#505 DIBCOPY
+#507 DIBQUERYBOUNDS
+#508 DIBDRAW
+#509 DIBENUMFORMAT
+#510 DIBCHANGEDATA
+#600 GENRELEASE
+#601 GENGETDATA
+#602 GENSETDATA
+#603 GENSAVETOSTREAM
+#604 GENCLONE
+#605 GENEQUAL
+#606 GENCOPY
+#608 GENQUERYBOUNDS
+#609 GENDRAW
+#610 GENENUMFORMAT
+#611 GENCHANGEDATA
+#701 ERRSHOW
+#702 ERRSETDATA
+#703 ERRSETHOSTNAMES
+#704 ERRSETTARGETDEVICE
+#705 ERRSETBOUNDS
+#706 ERRCOPYFROMLINK
+#707 ERRQUERYOPEN
+#708 ERRACTIVATE
+#709 ERRCLOSE
+#710 ERRUPDATE
+#711 ERRRECONNECT
+#712 ERRQUERYPROTOCOL
+#713 ERRQUERYOUTOFDATE
+#714 ERROBJECTCONVERT
+#715 ERRGETUPDATEOPTIONS
+#716 ERRSETUPDATEOPTIONS
+#717 ERREXECUTE
+#718 ERROBJECTLONG
+#800 PBLOADFROMSTREAM
+#801 PBCREATEFROMCLIP
+#802 PBCREATELINKFROMCLIP
+#803 PBCREATEFROMTEMPLATE
+#804 PBCREATE
+#805 PBDRAW
+#806 PBQUERYBOUNDS
+#807 PBCOPYTOCLIPBOARD
+#808 PBCREATEFROMFILE
+#809 PBCREATELINKFROMFILE
+#810 PBENUMFORMATS
+#811 PBGETDATA
+#812 PBCREATEINVISIBLE
+#910 OBJQUERYNAME
+#911 OBJRENAME
+#912 OBJQUERYTYPE
+#913 OBJQUERYSIZE
+#950 CONNECTDLGPROC
+#951 SETNETNAME
+#952 CHECKNETDRIVE
+#953 SETNEXTNETDRIVE
+#954 GETTASKVISIBLEWINDOW
diff --git a/if1632/olesvr.spec b/if1632/olesvr.spec
new file mode 100644
index 0000000..cc4e167
--- /dev/null
+++ b/if1632/olesvr.spec
@@ -0,0 +1,26 @@
+name	olesvr
+id	22
+length	31
+#1 WEP
+2  pascal OleRegisterServer(ptr ptr ptr word word) OleRegisterServer(1 2 3 4 5)
+3  pascal OleRevokeServer(long) OleRevokeServer(1)
+4  pascal OleBlockServer(long) OleBlockServer(1)
+5  pascal OleUnblockServer(long ptr) OleUnblockServer(1 2)
+6  pascal OleRegisterServerDoc(long ptr ptr ptr) OleRegisterServerDoc(1 2 3 4)
+7  pascal OleRevokeServerDoc(long) OleRevokeServerDoc(1)
+#8 OLERENAMESERVERDOC
+#9 OLEREVERTSERVERDOC
+#10 OLESAVEDSERVERDOC
+#11 OLEREVOKEOBJECT
+#12 OLEQUERYSERVERVERSION
+#21 SRVRWNDPROC
+#22 DOCWNDPROC
+#23 ITEMWNDPROC
+#24 SENDDATAMSG
+#25 FINDITEMWND
+#26 ITEMCALLBACK
+#27 TERMINATECLIENTS
+#28 TERMINATEDOCCLIENTS
+#29 DELETECLIENTINFO
+#30 SENDRENAMEMSG
+#31 ENUMFORTERMINATE
diff --git a/if1632/relay.c b/if1632/relay.c
index faf17a6..744ef2c 100644
--- a/if1632/relay.c
+++ b/if1632/relay.c
@@ -42,21 +42,28 @@
 
 struct dll_name_table_entry_s dll_builtin_table[N_BUILTINS] =
 {
-    { "KERNEL",  WineLibSkip(KERNEL_table), 	410, 1 },
-    { "USER",    WineLibSkip(USER_table), 	540, 2 },
-    { "GDI",     WineLibSkip(GDI_table), 	490, 3 },
-    { "UNIXLIB", WineLibSkip(UNIXLIB_table),  10, 4 },
-    { "WIN87EM", WineLibSkip(WIN87EM_table),  10, 5 },
-    { "SHELL",   WineLibSkip(SHELL_table),   103, 6 },
-    { "SOUND",   WineLibSkip(SOUND_table),    20, 7 },
-    { "KEYBOARD",WineLibSkip(KEYBOARD_table),137, 8 },
-    { "WINSOCK", WineLibSkip(WINSOCK_table), 155, 9 },
-    { "STRESS",  WineLibSkip(STRESS_table),   15, 10},
-    { "MMSYSTEM",WineLibSkip(MMSYSTEM_table),1226,11},
-    { "SYSTEM",  WineLibSkip(SYSTEM_table),   20 ,12},
-    { "TOOLHELP",WineLibSkip(TOOLHELP_table), 83, 13},
-    { "MOUSE",   WineLibSkip(MOUSE_table),     8, 14},
-    { "EMUCOMMDLG", WineLibSkip(COMMDLG_table),  31, 15},
+    { "KERNEL",  WineLibSkip(KERNEL_table), 	410, 1, 1 },
+    { "USER",    WineLibSkip(USER_table), 	540, 2, 1 },
+    { "GDI",     WineLibSkip(GDI_table), 	490, 3, 1 },
+    { "UNIXLIB", WineLibSkip(UNIXLIB_table),  10, 4, 1 },
+    { "WIN87EM", WineLibSkip(WIN87EM_table),  10, 5, 1 },
+    { "SHELL",   WineLibSkip(SHELL_table),   103, 6, 1 },
+    { "SOUND",   WineLibSkip(SOUND_table),    20, 7, 1 },
+    { "KEYBOARD",WineLibSkip(KEYBOARD_table),137, 8, 1 },
+    { "WINSOCK", WineLibSkip(WINSOCK_table), 155, 9, 1 },
+    { "STRESS",  WineLibSkip(STRESS_table),   15, 10, 1},
+    { "MMSYSTEM",WineLibSkip(MMSYSTEM_table),1226,11, 1},
+    { "SYSTEM",  WineLibSkip(SYSTEM_table),   20 ,12, 1},
+    { "TOOLHELP",WineLibSkip(TOOLHELP_table), 83, 13, 1},
+    { "MOUSE",   WineLibSkip(MOUSE_table),     8, 14, 1},
+    { "COMMDLG", WineLibSkip(COMMDLG_table),  31, 15, 1},
+    { "OLE2",    WineLibSkip(OLE2_table),     31, 16, 1},
+    { "OLE2CONV",WineLibSkip(OLE2CONV_table), 31, 17, 1},
+    { "OLE2DISP",WineLibSkip(OLE2DISP_table), 31, 18, 1},
+    { "OLE2NLS", WineLibSkip(OLE2NLS_table),  31, 19, 1},
+    { "OLE2PROX",WineLibSkip(OLE2PROX_table), 31, 20, 1},
+    { "OLECLI",  WineLibSkip(OLECLI_table),   31, 21, 1},
+    { "OLESVR",  WineLibSkip(OLESVR_table),   31, 22, 1},
 };
 /* don't forget to increase N_BUILTINS in dll.h if you add a dll */
 
@@ -79,7 +86,14 @@
   SYSTEM_offsets,   SYSTEM_types,   /* SYSTEM     */
   TOOLHELP_offsets, TOOLHELP_types, /* TOOLHELP   */
   MOUSE_offsets,    MOUSE_types,    /* MOUSE      */
-  COMMDLG_offsets,  COMMDLG_types   /* EMUCOMMDLG */
+  COMMDLG_offsets,  COMMDLG_types,  /* EMUCOMMDLG */
+  OLE2_offsets,     OLE2_types,     /* OLE2       */
+  OLE2CONV_offsets, OLE2CONV_types, /* OLE2CONV   */
+  OLE2DISP_offsets, OLE2DISP_types, /* OLE2DISP   */
+  OLE2NLS_offsets,  OLE2NLS_types,  /* OLE2NLS    */
+  OLE2DISP_offsets, OLE2DISP_types, /* OLE2PROX   */
+  OLECLI_offsets,   OLECLI_types,   /* OLE2CLI    */
+  OLESVR_offsets,   OLESVR_types    /* OLE2CLI    */
 };
 
 
@@ -124,7 +138,7 @@
     int conv_ref;
     unsigned char *type_conv;
     unsigned short *offset_conv;
-    
+
     /*
      * Determine address of arguments.
      */
@@ -141,17 +155,14 @@
 
     if (debugging_relay)
     {
-	unsigned int *ret_addr;
-	
-	ret_addr = (unsigned int *) ((char *) seg_off + 0x14);
-	printf("Call %s (%s.%d), stack=%04x:%04x, ",
+	printf( "Call %s (%s.%d), stack=%04x:%04x, ret=%04x:%04x",
 	       dll_p->export_name,
 	       dll_builtin_table[dll_id].dll_name, ordinal,
-	       seg_off >> 16, seg_off & 0xffff);
-	printf("ret=%08x", *ret_addr);
-	printf("  ESP=%04x, EBP=%04x, SS=%04x\n", 
-	       IF1632_Saved16_sp, IF1632_Saved16_bp,
-	       IF1632_Saved16_ss);
+	       seg_off >> 16, seg_off & 0xffff,
+               pStack16Frame->cs, pStack16Frame->ip );
+	printf(" bp=%04x ds=%04x args=%d\n",
+               pStack16Frame->bp, pStack16Frame->ds,
+               pStack16Frame->arg_length );
 
 	if(debugging_stack)
         {
@@ -245,15 +256,17 @@
 			  arg_table[12], arg_table[13], arg_table[14], 
 			  arg_table[15]);
 
+    pStack16Frame = pOldStack16Frame;
+
     if (debugging_relay)
     {
-	printf("Returning %08x from %s (%s.%d)\n",
+	printf("Returning %08x from %s (%s.%d) ds=%04x\n",
 	       ret_val,
 	       dll_p->export_name,
-	       dll_builtin_table[dll_id].dll_name, ordinal);
+	       dll_builtin_table[dll_id].dll_name, ordinal,
+               pStack16Frame->ds );
     }
 
-    pStack16Frame = pOldStack16Frame;
     return ret_val;
 }
 #endif
@@ -267,7 +280,8 @@
     int i;
 
     for (i = 0; i < N_BUILTINS; i++)
-	if (strcasecmp(dll_builtin_table[i].dll_name, dll_name) == 0)
+	if (strcasecmp(dll_builtin_table[i].dll_name, dll_name) == 0
+	  && dll_builtin_table[i].dll_is_used)
 #ifdef WINELIB
 	    return dll_builtin_table[i].dll_number;
 #else
diff --git a/include/bitmap.h b/include/bitmap.h
index 9bac249..dda2d55 100644
--- a/include/bitmap.h
+++ b/include/bitmap.h
@@ -43,4 +43,8 @@
 extern int DIB_GetImageWidthBytes( int width, int depth );
 extern int DIB_BitmapInfoSize( BITMAPINFO * info, WORD coloruse );
 
+  /* objects/oembitmap.c */
+extern HBITMAP OBM_LoadBitmap( WORD id );
+extern HICON OBM_LoadIcon( WORD id );
+
 #endif  /* __WINE_BITMAP_H */
diff --git a/include/bitmaps/check_boxes b/include/bitmaps/check_boxes
deleted file mode 100644
index 44c0363..0000000
--- a/include/bitmaps/check_boxes
+++ /dev/null
@@ -1,26 +0,0 @@
-#define check_boxes_width 56
-#define check_boxes_height 39
-static char check_boxes_bits[] = {
-   0xff, 0xdf, 0xff, 0xf7, 0xff, 0xfd, 0x7f, 0x01, 0xd0, 0x00, 0xf6, 0xff,
-   0xfd, 0x7f, 0x01, 0x50, 0x01, 0x35, 0x80, 0x1d, 0x70, 0x01, 0x50, 0x82,
-   0x34, 0x80, 0x2d, 0x68, 0x01, 0x50, 0x44, 0x34, 0x80, 0x4d, 0x64, 0x01,
-   0x50, 0x28, 0x34, 0x80, 0x8d, 0x62, 0x01, 0x50, 0x10, 0x34, 0x80, 0x0d,
-   0x61, 0x01, 0x50, 0x28, 0x34, 0x80, 0x8d, 0x62, 0x01, 0x50, 0x44, 0x34,
-   0x80, 0x4d, 0x64, 0x01, 0x50, 0x82, 0x34, 0x80, 0x2d, 0x68, 0x01, 0x50,
-   0x01, 0x35, 0x80, 0x1d, 0x70, 0x01, 0xd0, 0x00, 0xf6, 0xff, 0xfd, 0x7f,
-   0xff, 0xdf, 0xff, 0xf7, 0xff, 0xfd, 0x7f, 0xe0, 0x00, 0x38, 0x00, 0x0e,
-   0x80, 0x03, 0x18, 0x03, 0xc6, 0x80, 0x3f, 0xe0, 0x0f, 0x04, 0x04, 0x01,
-   0xc1, 0x71, 0x70, 0x1c, 0x02, 0x88, 0x38, 0xe2, 0xe0, 0xb8, 0x3b, 0x02,
-   0x88, 0x7c, 0x62, 0xc0, 0xd8, 0x37, 0x01, 0x50, 0xfe, 0x34, 0x80, 0xed,
-   0x6f, 0x01, 0x50, 0xfe, 0x34, 0x80, 0xed, 0x6f, 0x01, 0x50, 0xfe, 0x34,
-   0x80, 0xed, 0x6f, 0x02, 0x88, 0x7c, 0x62, 0xc0, 0xd8, 0x37, 0x02, 0x88,
-   0x38, 0xe2, 0xe0, 0xb8, 0x3b, 0x04, 0x04, 0x01, 0xc1, 0x71, 0x70, 0x1c,
-   0x18, 0x03, 0xc6, 0x80, 0x3f, 0xe0, 0x0f, 0xe0, 0x00, 0x38, 0x00, 0x0e,
-   0x80, 0x03, 0x00, 0xc0, 0xff, 0x07, 0x00, 0xfc, 0x7f, 0x00, 0xc0, 0xaa,
-   0x06, 0x00, 0xfc, 0x7f, 0x00, 0x40, 0x55, 0x05, 0x00, 0x5c, 0x75, 0x00,
-   0xc0, 0xaa, 0x06, 0x00, 0xac, 0x6a, 0x00, 0x40, 0x55, 0x05, 0x00, 0x5c,
-   0x75, 0x00, 0xc0, 0xaa, 0x06, 0x00, 0xac, 0x6a, 0x00, 0x40, 0x55, 0x05,
-   0x00, 0x5c, 0x75, 0x00, 0xc0, 0xaa, 0x06, 0x00, 0xac, 0x6a, 0x00, 0x40,
-   0x55, 0x05, 0x00, 0x5c, 0x75, 0x00, 0xc0, 0xaa, 0x06, 0x00, 0xac, 0x6a,
-   0x00, 0x40, 0x55, 0x05, 0x00, 0x5c, 0x75, 0x00, 0xc0, 0xaa, 0x06, 0x00,
-   0xfc, 0x7f, 0x00, 0xc0, 0xff, 0x07, 0x00, 0xfc, 0x7f};
diff --git a/include/bitmaps/check_mark b/include/bitmaps/check_mark
deleted file mode 100644
index 4c7adce..0000000
--- a/include/bitmaps/check_mark
+++ /dev/null
@@ -1,6 +0,0 @@
-#define check_mark_width 14
-#define check_mark_height 14
-static char check_mark_bits[] = {
-   0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0x0c, 0x00, 0x04, 0x00, 0x06,
-   0x30, 0x02, 0x60, 0x03, 0x40, 0x01, 0xc0, 0x01, 0x80, 0x00, 0x00, 0x00,
-   0x00, 0x00, 0x00, 0x00};
diff --git a/include/bitmaps/menu_arrow b/include/bitmaps/menu_arrow
deleted file mode 100644
index a38ff70..0000000
--- a/include/bitmaps/menu_arrow
+++ /dev/null
@@ -1,4 +0,0 @@
-#define menu_arrow_width 7
-#define menu_arrow_height 11
-static char menu_arrow_bits[] = {
-   0x00, 0x02, 0x06, 0x0e, 0x1e, 0x3e, 0x1e, 0x0e, 0x06, 0x02, 0x00};
diff --git a/include/bitmaps/oic_bang b/include/bitmaps/oic_bang
new file mode 100644
index 0000000..1167309
--- /dev/null
+++ b/include/bitmaps/oic_bang
@@ -0,0 +1,38 @@
+/* XPM */
+static char * oic_bang[] = {
+"32 32 3 1",
+" 	s None		c None",
+".	s black		c black",
+"X	s yellow	c yellow",
+"            ........            ",
+"         ...XXXXXXXX...         ",
+"       ..XXXXXXXXXXXXXX..       ",
+"      .XXXXX........XXXXX.      ",
+"     .XXXXXX........XXXXXX.     ",
+"    .XXXXXXX........XXXXXXX.    ",
+"   .XXXXXXXX........XXXXXXXX.   ",
+"  .XXXXXXXXX........XXXXXXXXX.  ",
+"  .XXXXXXXXX........XXXXXXXXX.  ",
+" .XXXXXXXXXX........XXXXXXXXXX. ",
+" .XXXXXXXXXX........XXXXXXXXXX. ",
+" .XXXXXXXXXX........XXXXXXXXXX. ",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+".XXXXXXXXXXX........XXXXXXXXXXX.",
+" .XXXXXXXXXX........XXXXXXXXXX. ",
+" .XXXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
+" .XXXXXXXXXXXXX..XXXXXXXXXXXXX. ",
+"  .XXXXXXXXXX......XXXXXXXXXX.  ",
+"  .XXXXXXXXXX......XXXXXXXXXX.  ",
+"   .XXXXXXXX........XXXXXXXX.   ",
+"    .XXXXXXX........XXXXXXX.    ",
+"     .XXXXXXX......XXXXXXX.     ",
+"      .XXXXXX......XXXXXX.      ",
+"       ..XXXXXX..XXXXXX..       ",
+"         ...XXXXXXXX...         ",
+"            ........            "};
diff --git a/include/bitmaps/oic_hand b/include/bitmaps/oic_hand
new file mode 100644
index 0000000..49f12be
--- /dev/null
+++ b/include/bitmaps/oic_hand
@@ -0,0 +1,38 @@
+/* XPM */
+static char * oic_hand[] = {
+"32 32 3 1",
+" 	s None	c None",
+".	s red	c red",
+"X	s white	c white",
+"                                ",
+"         ..............         ",
+"        ................        ",
+"       ..................       ",
+"      ....................      ",
+"     ......................     ",
+"    ........................    ",
+"   ..........................   ",
+"  ............................  ",
+" .............................. ",
+" ......XX..XXXXX..XX...XXX..... ",
+" .....X..X...X...X..X..X..X.... ",
+" .....X..X...X...X..X..X..X.... ",
+" .....X......X...X..X..X..X.... ",
+" .....X......X...X..X..X..X.... ",
+" ......XX....X...X..X..XXX..... ",
+" ........X...X...X..X..X....... ",
+" ........X...X...X..X..X....... ",
+" .....X..X...X...X..X..X....... ",
+" .....X..X...X...X..X..X....... ",
+" .....X..X...X...X..X..X....... ",
+" ......XX....X....XX...X....... ",
+" .............................. ",
+"  ............................  ",
+"   ..........................   ",
+"    ........................    ",
+"     ......................     ",
+"      ....................      ",
+"       ..................       ",
+"        ................        ",
+"         ..............         ",
+"                                "};
diff --git a/include/bitmaps/oic_note b/include/bitmaps/oic_note
new file mode 100644
index 0000000..8f92367
--- /dev/null
+++ b/include/bitmaps/oic_note
@@ -0,0 +1,39 @@
+/* XPM */
+static char * oic_note[] = {
+"32 32 4 1",
+" 	s None	c None",
+".	s black	c black",
+"X	s blue	c blue",
+"o	s white	c white",
+"            ........            ",
+"         ...XXXXXXXX...         ",
+"       ..XXXXXooooXXXXX..       ",
+"      .XXXXXXooooooXXXXXX.      ",
+"     .XXXXXXooooooooXXXXXX.     ",
+"    .XXXXXXXooooooooXXXXXXX.    ",
+"   .XXXXXXXXooooooooXXXXXXXX.   ",
+"  .XXXXXXXXXXooooooXXXXXXXXXX.  ",
+"  .XXXXXXXXXXXooooXXXXXXXXXXX.  ",
+" .XXXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
+" .XXXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
+" .XXXXXXXXXoooooooooXXXXXXXXXX. ",
+".XXXXXXXXXXoooooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+" .XXXXXXXXXXXXooooooXXXXXXXXXX. ",
+" .XXXXXXXXXXXXooooooXXXXXXXXXX. ",
+" .XXXXXXXXXXXXooooooXXXXXXXXXX. ",
+"  .XXXXXXXXXXXooooooXXXXXXXXX.  ",
+"  .XXXXXXXXXXXooooooXXXXXXXXX.  ",
+"   .XXXXXXXooooooooooooXXXXX.   ",
+"    .XXXXXXooooooooooooXXXX.    ",
+"     .XXXXXooooooooooooXXX.     ",
+"      .XXXXXXXXXXXXXXXXXX.      ",
+"       ..XXXXXXXXXXXXXX..       ",
+"         ...XXXXXXXX...         ",
+"            ........            "};
diff --git a/include/bitmaps/oic_ques b/include/bitmaps/oic_ques
new file mode 100644
index 0000000..4b90947
--- /dev/null
+++ b/include/bitmaps/oic_ques
@@ -0,0 +1,39 @@
+/* XPM */
+static char * oic_ques[] = {
+"32 32 4 1",
+" 	s None	c None",
+".	s black	c black",
+"X	s green	c green",
+"o	s white	c white",
+"            ........            ",
+"         ...XXXXXXXX...         ",
+"       ..XXXXXXXXXXXXXX..       ",
+"      .XXXXXXooooooXXXXXX.      ",
+"     .XXXXXXoooooooooXXXXX.     ",
+"    .XXXXXXoooooooooooXXXXX.    ",
+"   .XXXXXXXoooooooooooXXXXXX.   ",
+"  .XXXXXXXoooooooooooooXXXXXX.  ",
+"  .XXXXXXXoooooooooooooXXXXXX.  ",
+" .XXXXXXXXoooooXXooooooXXXXXXX. ",
+" .XXXXXXXXoooooXXooooooXXXXXXX. ",
+" .XXXXXXXXoooooXXooooooXXXXXXX. ",
+".XXXXXXXXXXXXXXXooooooXXXXXXXXX.",
+".XXXXXXXXXXXXXXXooooooXXXXXXXXX.",
+".XXXXXXXXXXXXXXooooooXXXXXXXXXX.",
+".XXXXXXXXXXXXXXooooooXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXXooooooXXXXXXXXXXX.",
+".XXXXXXXXXXXXooooooXXXXXXXXXXXX.",
+".XXXXXXXXXXXXooooooXXXXXXXXXXXX.",
+" .XXXXXXXXXXXooooooXXXXXXXXXXX. ",
+" .XXXXXXXXXXXXXXXXXXXXXXXXXXXX. ",
+" .XXXXXXXXXXXXXooXXXXXXXXXXXXX. ",
+"  .XXXXXXXXXXooooooXXXXXXXXXX.  ",
+"  .XXXXXXXXXXooooooXXXXXXXXXX.  ",
+"   .XXXXXXXXooooooooXXXXXXXX.   ",
+"    .XXXXXXXooooooooXXXXXXX.    ",
+"     .XXXXXXXooooooXXXXXXX.     ",
+"      .XXXXXXooooooXXXXXX.      ",
+"       ..XXXXXXooXXXXXX..       ",
+"         ...XXXXXXXX...         ",
+"            ........            "};
diff --git a/include/bitmaps/oic_sample b/include/bitmaps/oic_sample
new file mode 100644
index 0000000..20c9637
--- /dev/null
+++ b/include/bitmaps/oic_sample
@@ -0,0 +1,37 @@
+/* XPM */
+static char * oic_sample[] = {
+"32 32 2 1",
+" 	s black	c black",
+".	s white	c white",
+"                                ",
+"                                ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"  ............................  ",
+"                                ",
+"                                ",
+"                                "};
diff --git a/include/debug.h b/include/debug.h
index 03bf4a2..15c0b3a 100644
--- a/include/debug.h
+++ b/include/debug.h
@@ -40,6 +40,7 @@
 #undef DEBUG_KEYBOARD
 #undef DEBUG_LDT
 #undef DEBUG_LISTBOX
+#undef DEBUG_MALLOC
 #undef DEBUG_MCI
 #undef DEBUG_MCIANIM
 #undef DEBUG_MCIWAVE
@@ -55,6 +56,7 @@
 #undef DEBUG_MSG
 #undef DEBUG_MSGBOX
 #undef DEBUG_NONCLIENT
+#undef DEBUG_OLE
 #undef DEBUG_PALETTE
 #undef DEBUG_PROFILE
 #undef DEBUG_PROP
@@ -110,6 +112,7 @@
 #define DEBUG_KEYBOARD
 #define DEBUG_LDT
 #define DEBUG_LISTBOX
+#define DEBUG_MALLOC
 #define DEBUG_MCI
 #define DEBUG_MCIANIM
 #define DEBUG_MCIWAVE
@@ -125,6 +128,7 @@
 #define DEBUG_MSG
 #define DEBUG_MSGBOX
 #define DEBUG_NONCLIENT
+#define DEBUG_OLE
 #define DEBUG_PALETTE
 #define DEBUG_PROFILE
 #define DEBUG_PROP
@@ -318,6 +322,11 @@
 #else
     0,
 #endif
+#ifdef DEBUG_MALLOC
+    1,
+#else
+    0,
+#endif
 #ifdef DEBUG_MCI
     1,
 #else
@@ -393,6 +402,11 @@
 #else
     0,
 #endif
+#ifdef DEBUG_OLE
+    1,
+#else
+    0,
+#endif
 #ifdef DEBUG_PALETTE
     1,
 #else
@@ -491,872 +505,898 @@
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_accel if(debug_msg_enabled[0]) fprintf
+#define dprintf_accel if(!debug_msg_enabled[0]) ; else fprintf
 #define debugging_accel debug_msg_enabled[0]
 #else
 #ifdef DEBUG_ACCEL
 #define dprintf_accel fprintf
 #define debugging_accel 1
 #else
-#define dprintf_accel
+#define dprintf_accel while(0) fprintf
 #define debugging_accel 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_bitblt if(debug_msg_enabled[1]) fprintf
+#define dprintf_bitblt if(!debug_msg_enabled[1]) ; else fprintf
 #define debugging_bitblt debug_msg_enabled[1]
 #else
 #ifdef DEBUG_BITBLT
 #define dprintf_bitblt fprintf
 #define debugging_bitblt 1
 #else
-#define dprintf_bitblt
+#define dprintf_bitblt while(0) fprintf
 #define debugging_bitblt 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_bitmap if(debug_msg_enabled[2]) fprintf
+#define dprintf_bitmap if(!debug_msg_enabled[2]) ; else fprintf
 #define debugging_bitmap debug_msg_enabled[2]
 #else
 #ifdef DEBUG_BITMAP
 #define dprintf_bitmap fprintf
 #define debugging_bitmap 1
 #else
-#define dprintf_bitmap
+#define dprintf_bitmap while(0) fprintf
 #define debugging_bitmap 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_callback if(debug_msg_enabled[3]) fprintf
+#define dprintf_callback if(!debug_msg_enabled[3]) ; else fprintf
 #define debugging_callback debug_msg_enabled[3]
 #else
 #ifdef DEBUG_CALLBACK
 #define dprintf_callback fprintf
 #define debugging_callback 1
 #else
-#define dprintf_callback
+#define dprintf_callback while(0) fprintf
 #define debugging_callback 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_caret if(debug_msg_enabled[4]) fprintf
+#define dprintf_caret if(!debug_msg_enabled[4]) ; else fprintf
 #define debugging_caret debug_msg_enabled[4]
 #else
 #ifdef DEBUG_CARET
 #define dprintf_caret fprintf
 #define debugging_caret 1
 #else
-#define dprintf_caret
+#define dprintf_caret while(0) fprintf
 #define debugging_caret 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_catch if(debug_msg_enabled[5]) fprintf
+#define dprintf_catch if(!debug_msg_enabled[5]) ; else fprintf
 #define debugging_catch debug_msg_enabled[5]
 #else
 #ifdef DEBUG_CATCH
 #define dprintf_catch fprintf
 #define debugging_catch 1
 #else
-#define dprintf_catch
+#define dprintf_catch while(0) fprintf
 #define debugging_catch 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_cdaudio if(debug_msg_enabled[6]) fprintf
+#define dprintf_cdaudio if(!debug_msg_enabled[6]) ; else fprintf
 #define debugging_cdaudio debug_msg_enabled[6]
 #else
 #ifdef DEBUG_CDAUDIO
 #define dprintf_cdaudio fprintf
 #define debugging_cdaudio 1
 #else
-#define dprintf_cdaudio
+#define dprintf_cdaudio while(0) fprintf
 #define debugging_cdaudio 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_class if(debug_msg_enabled[7]) fprintf
+#define dprintf_class if(!debug_msg_enabled[7]) ; else fprintf
 #define debugging_class debug_msg_enabled[7]
 #else
 #ifdef DEBUG_CLASS
 #define dprintf_class fprintf
 #define debugging_class 1
 #else
-#define dprintf_class
+#define dprintf_class while(0) fprintf
 #define debugging_class 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_clipboard if(debug_msg_enabled[8]) fprintf
+#define dprintf_clipboard if(!debug_msg_enabled[8]) ; else fprintf
 #define debugging_clipboard debug_msg_enabled[8]
 #else
 #ifdef DEBUG_CLIPBOARD
 #define dprintf_clipboard fprintf
 #define debugging_clipboard 1
 #else
-#define dprintf_clipboard
+#define dprintf_clipboard while(0) fprintf
 #define debugging_clipboard 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_clipping if(debug_msg_enabled[9]) fprintf
+#define dprintf_clipping if(!debug_msg_enabled[9]) ; else fprintf
 #define debugging_clipping debug_msg_enabled[9]
 #else
 #ifdef DEBUG_CLIPPING
 #define dprintf_clipping fprintf
 #define debugging_clipping 1
 #else
-#define dprintf_clipping
+#define dprintf_clipping while(0) fprintf
 #define debugging_clipping 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_combo if(debug_msg_enabled[10]) fprintf
+#define dprintf_combo if(!debug_msg_enabled[10]) ; else fprintf
 #define debugging_combo debug_msg_enabled[10]
 #else
 #ifdef DEBUG_COMBO
 #define dprintf_combo fprintf
 #define debugging_combo 1
 #else
-#define dprintf_combo
+#define dprintf_combo while(0) fprintf
 #define debugging_combo 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_comm if(debug_msg_enabled[11]) fprintf
+#define dprintf_comm if(!debug_msg_enabled[11]) ; else fprintf
 #define debugging_comm debug_msg_enabled[11]
 #else
 #ifdef DEBUG_COMM
 #define dprintf_comm fprintf
 #define debugging_comm 1
 #else
-#define dprintf_comm
+#define dprintf_comm while(0) fprintf
 #define debugging_comm 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_cursor if(debug_msg_enabled[12]) fprintf
+#define dprintf_cursor if(!debug_msg_enabled[12]) ; else fprintf
 #define debugging_cursor debug_msg_enabled[12]
 #else
 #ifdef DEBUG_CURSOR
 #define dprintf_cursor fprintf
 #define debugging_cursor 1
 #else
-#define dprintf_cursor
+#define dprintf_cursor while(0) fprintf
 #define debugging_cursor 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_dc if(debug_msg_enabled[13]) fprintf
+#define dprintf_dc if(!debug_msg_enabled[13]) ; else fprintf
 #define debugging_dc debug_msg_enabled[13]
 #else
 #ifdef DEBUG_DC
 #define dprintf_dc fprintf
 #define debugging_dc 1
 #else
-#define dprintf_dc
+#define dprintf_dc while(0) fprintf
 #define debugging_dc 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_dialog if(debug_msg_enabled[14]) fprintf
+#define dprintf_dialog if(!debug_msg_enabled[14]) ; else fprintf
 #define debugging_dialog debug_msg_enabled[14]
 #else
 #ifdef DEBUG_DIALOG
 #define dprintf_dialog fprintf
 #define debugging_dialog 1
 #else
-#define dprintf_dialog
+#define dprintf_dialog while(0) fprintf
 #define debugging_dialog 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_dll if(debug_msg_enabled[15]) fprintf
+#define dprintf_dll if(!debug_msg_enabled[15]) ; else fprintf
 #define debugging_dll debug_msg_enabled[15]
 #else
 #ifdef DEBUG_DLL
 #define dprintf_dll fprintf
 #define debugging_dll 1
 #else
-#define dprintf_dll
+#define dprintf_dll while(0) fprintf
 #define debugging_dll 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_dosfs if(debug_msg_enabled[16]) fprintf
+#define dprintf_dosfs if(!debug_msg_enabled[16]) ; else fprintf
 #define debugging_dosfs debug_msg_enabled[16]
 #else
 #ifdef DEBUG_DOSFS
 #define dprintf_dosfs fprintf
 #define debugging_dosfs 1
 #else
-#define dprintf_dosfs
+#define dprintf_dosfs while(0) fprintf
 #define debugging_dosfs 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_driver if(debug_msg_enabled[17]) fprintf
+#define dprintf_driver if(!debug_msg_enabled[17]) ; else fprintf
 #define debugging_driver debug_msg_enabled[17]
 #else
 #ifdef DEBUG_DRIVER
 #define dprintf_driver fprintf
 #define debugging_driver 1
 #else
-#define dprintf_driver
+#define dprintf_driver while(0) fprintf
 #define debugging_driver 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_edit if(debug_msg_enabled[18]) fprintf
+#define dprintf_edit if(!debug_msg_enabled[18]) ; else fprintf
 #define debugging_edit debug_msg_enabled[18]
 #else
 #ifdef DEBUG_EDIT
 #define dprintf_edit fprintf
 #define debugging_edit 1
 #else
-#define dprintf_edit
+#define dprintf_edit while(0) fprintf
 #define debugging_edit 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_enum if(debug_msg_enabled[19]) fprintf
+#define dprintf_enum if(!debug_msg_enabled[19]) ; else fprintf
 #define debugging_enum debug_msg_enabled[19]
 #else
 #ifdef DEBUG_ENUM
 #define dprintf_enum fprintf
 #define debugging_enum 1
 #else
-#define dprintf_enum
+#define dprintf_enum while(0) fprintf
 #define debugging_enum 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_event if(debug_msg_enabled[20]) fprintf
+#define dprintf_event if(!debug_msg_enabled[20]) ; else fprintf
 #define debugging_event debug_msg_enabled[20]
 #else
 #ifdef DEBUG_EVENT
 #define dprintf_event fprintf
 #define debugging_event 1
 #else
-#define dprintf_event
+#define dprintf_event while(0) fprintf
 #define debugging_event 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_exec if(debug_msg_enabled[21]) fprintf
+#define dprintf_exec if(!debug_msg_enabled[21]) ; else fprintf
 #define debugging_exec debug_msg_enabled[21]
 #else
 #ifdef DEBUG_EXEC
 #define dprintf_exec fprintf
 #define debugging_exec 1
 #else
-#define dprintf_exec
+#define dprintf_exec while(0) fprintf
 #define debugging_exec 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_file if(debug_msg_enabled[22]) fprintf
+#define dprintf_file if(!debug_msg_enabled[22]) ; else fprintf
 #define debugging_file debug_msg_enabled[22]
 #else
 #ifdef DEBUG_FILE
 #define dprintf_file fprintf
 #define debugging_file 1
 #else
-#define dprintf_file
+#define dprintf_file while(0) fprintf
 #define debugging_file 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_fixup if(debug_msg_enabled[23]) fprintf
+#define dprintf_fixup if(!debug_msg_enabled[23]) ; else fprintf
 #define debugging_fixup debug_msg_enabled[23]
 #else
 #ifdef DEBUG_FIXUP
 #define dprintf_fixup fprintf
 #define debugging_fixup 1
 #else
-#define dprintf_fixup
+#define dprintf_fixup while(0) fprintf
 #define debugging_fixup 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_font if(debug_msg_enabled[24]) fprintf
+#define dprintf_font if(!debug_msg_enabled[24]) ; else fprintf
 #define debugging_font debug_msg_enabled[24]
 #else
 #ifdef DEBUG_FONT
 #define dprintf_font fprintf
 #define debugging_font 1
 #else
-#define dprintf_font
+#define dprintf_font while(0) fprintf
 #define debugging_font 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_gdi if(debug_msg_enabled[25]) fprintf
+#define dprintf_gdi if(!debug_msg_enabled[25]) ; else fprintf
 #define debugging_gdi debug_msg_enabled[25]
 #else
 #ifdef DEBUG_GDI
 #define dprintf_gdi fprintf
 #define debugging_gdi 1
 #else
-#define dprintf_gdi
+#define dprintf_gdi while(0) fprintf
 #define debugging_gdi 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_graphics if(debug_msg_enabled[26]) fprintf
+#define dprintf_graphics if(!debug_msg_enabled[26]) ; else fprintf
 #define debugging_graphics debug_msg_enabled[26]
 #else
 #ifdef DEBUG_GRAPHICS
 #define dprintf_graphics fprintf
 #define debugging_graphics 1
 #else
-#define dprintf_graphics
+#define dprintf_graphics while(0) fprintf
 #define debugging_graphics 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_heap if(debug_msg_enabled[27]) fprintf
+#define dprintf_heap if(!debug_msg_enabled[27]) ; else fprintf
 #define debugging_heap debug_msg_enabled[27]
 #else
 #ifdef DEBUG_HEAP
 #define dprintf_heap fprintf
 #define debugging_heap 1
 #else
-#define dprintf_heap
+#define dprintf_heap while(0) fprintf
 #define debugging_heap 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_icon if(debug_msg_enabled[28]) fprintf
+#define dprintf_icon if(!debug_msg_enabled[28]) ; else fprintf
 #define debugging_icon debug_msg_enabled[28]
 #else
 #ifdef DEBUG_ICON
 #define dprintf_icon fprintf
 #define debugging_icon 1
 #else
-#define dprintf_icon
+#define dprintf_icon while(0) fprintf
 #define debugging_icon 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_int if(debug_msg_enabled[29]) fprintf
+#define dprintf_int if(!debug_msg_enabled[29]) ; else fprintf
 #define debugging_int debug_msg_enabled[29]
 #else
 #ifdef DEBUG_INT
 #define dprintf_int fprintf
 #define debugging_int 1
 #else
-#define dprintf_int
+#define dprintf_int while(0) fprintf
 #define debugging_int 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_key if(debug_msg_enabled[30]) fprintf
+#define dprintf_key if(!debug_msg_enabled[30]) ; else fprintf
 #define debugging_key debug_msg_enabled[30]
 #else
 #ifdef DEBUG_KEY
 #define dprintf_key fprintf
 #define debugging_key 1
 #else
-#define dprintf_key
+#define dprintf_key while(0) fprintf
 #define debugging_key 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_keyboard if(debug_msg_enabled[31]) fprintf
+#define dprintf_keyboard if(!debug_msg_enabled[31]) ; else fprintf
 #define debugging_keyboard debug_msg_enabled[31]
 #else
 #ifdef DEBUG_KEYBOARD
 #define dprintf_keyboard fprintf
 #define debugging_keyboard 1
 #else
-#define dprintf_keyboard
+#define dprintf_keyboard while(0) fprintf
 #define debugging_keyboard 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_ldt if(debug_msg_enabled[32]) fprintf
+#define dprintf_ldt if(!debug_msg_enabled[32]) ; else fprintf
 #define debugging_ldt debug_msg_enabled[32]
 #else
 #ifdef DEBUG_LDT
 #define dprintf_ldt fprintf
 #define debugging_ldt 1
 #else
-#define dprintf_ldt
+#define dprintf_ldt while(0) fprintf
 #define debugging_ldt 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_listbox if(debug_msg_enabled[33]) fprintf
+#define dprintf_listbox if(!debug_msg_enabled[33]) ; else fprintf
 #define debugging_listbox debug_msg_enabled[33]
 #else
 #ifdef DEBUG_LISTBOX
 #define dprintf_listbox fprintf
 #define debugging_listbox 1
 #else
-#define dprintf_listbox
+#define dprintf_listbox while(0) fprintf
 #define debugging_listbox 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_mci if(debug_msg_enabled[34]) fprintf
-#define debugging_mci debug_msg_enabled[34]
+#define dprintf_malloc if(!debug_msg_enabled[34]) ; else fprintf
+#define debugging_malloc debug_msg_enabled[34]
+#else
+#ifdef DEBUG_MALLOC
+#define dprintf_malloc fprintf
+#define debugging_malloc 1
+#else
+#define dprintf_malloc while(0) fprintf
+#define debugging_malloc 0
+#endif
+#endif
+
+#ifdef DEBUG_RUNTIME
+#define dprintf_mci if(!debug_msg_enabled[35]) ; else fprintf
+#define debugging_mci debug_msg_enabled[35]
 #else
 #ifdef DEBUG_MCI
 #define dprintf_mci fprintf
 #define debugging_mci 1
 #else
-#define dprintf_mci
+#define dprintf_mci while(0) fprintf
 #define debugging_mci 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_mcianim if(debug_msg_enabled[35]) fprintf
-#define debugging_mcianim debug_msg_enabled[35]
+#define dprintf_mcianim if(!debug_msg_enabled[36]) ; else fprintf
+#define debugging_mcianim debug_msg_enabled[36]
 #else
 #ifdef DEBUG_MCIANIM
 #define dprintf_mcianim fprintf
 #define debugging_mcianim 1
 #else
-#define dprintf_mcianim
+#define dprintf_mcianim while(0) fprintf
 #define debugging_mcianim 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_mciwave if(debug_msg_enabled[36]) fprintf
-#define debugging_mciwave debug_msg_enabled[36]
+#define dprintf_mciwave if(!debug_msg_enabled[37]) ; else fprintf
+#define debugging_mciwave debug_msg_enabled[37]
 #else
 #ifdef DEBUG_MCIWAVE
 #define dprintf_mciwave fprintf
 #define debugging_mciwave 1
 #else
-#define dprintf_mciwave
+#define dprintf_mciwave while(0) fprintf
 #define debugging_mciwave 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_mdi if(debug_msg_enabled[37]) fprintf
-#define debugging_mdi debug_msg_enabled[37]
+#define dprintf_mdi if(!debug_msg_enabled[38]) ; else fprintf
+#define debugging_mdi debug_msg_enabled[38]
 #else
 #ifdef DEBUG_MDI
 #define dprintf_mdi fprintf
 #define debugging_mdi 1
 #else
-#define dprintf_mdi
+#define dprintf_mdi while(0) fprintf
 #define debugging_mdi 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_menu if(debug_msg_enabled[38]) fprintf
-#define debugging_menu debug_msg_enabled[38]
+#define dprintf_menu if(!debug_msg_enabled[39]) ; else fprintf
+#define debugging_menu debug_msg_enabled[39]
 #else
 #ifdef DEBUG_MENU
 #define dprintf_menu fprintf
 #define debugging_menu 1
 #else
-#define dprintf_menu
+#define dprintf_menu while(0) fprintf
 #define debugging_menu 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_menucalc if(debug_msg_enabled[39]) fprintf
-#define debugging_menucalc debug_msg_enabled[39]
+#define dprintf_menucalc if(!debug_msg_enabled[40]) ; else fprintf
+#define debugging_menucalc debug_msg_enabled[40]
 #else
 #ifdef DEBUG_MENUCALC
 #define dprintf_menucalc fprintf
 #define debugging_menucalc 1
 #else
-#define dprintf_menucalc
+#define dprintf_menucalc while(0) fprintf
 #define debugging_menucalc 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_message if(debug_msg_enabled[40]) fprintf
-#define debugging_message debug_msg_enabled[40]
+#define dprintf_message if(!debug_msg_enabled[41]) ; else fprintf
+#define debugging_message debug_msg_enabled[41]
 #else
 #ifdef DEBUG_MESSAGE
 #define dprintf_message fprintf
 #define debugging_message 1
 #else
-#define dprintf_message
+#define dprintf_message while(0) fprintf
 #define debugging_message 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_metafile if(debug_msg_enabled[41]) fprintf
-#define debugging_metafile debug_msg_enabled[41]
+#define dprintf_metafile if(!debug_msg_enabled[42]) ; else fprintf
+#define debugging_metafile debug_msg_enabled[42]
 #else
 #ifdef DEBUG_METAFILE
 #define dprintf_metafile fprintf
 #define debugging_metafile 1
 #else
-#define dprintf_metafile
+#define dprintf_metafile while(0) fprintf
 #define debugging_metafile 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_midi if(debug_msg_enabled[42]) fprintf
-#define debugging_midi debug_msg_enabled[42]
+#define dprintf_midi if(!debug_msg_enabled[43]) ; else fprintf
+#define debugging_midi debug_msg_enabled[43]
 #else
 #ifdef DEBUG_MIDI
 #define dprintf_midi fprintf
 #define debugging_midi 1
 #else
-#define dprintf_midi
+#define dprintf_midi while(0) fprintf
 #define debugging_midi 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_mmio if(debug_msg_enabled[43]) fprintf
-#define debugging_mmio debug_msg_enabled[43]
+#define dprintf_mmio if(!debug_msg_enabled[44]) ; else fprintf
+#define debugging_mmio debug_msg_enabled[44]
 #else
 #ifdef DEBUG_MMIO
 #define dprintf_mmio fprintf
 #define debugging_mmio 1
 #else
-#define dprintf_mmio
+#define dprintf_mmio while(0) fprintf
 #define debugging_mmio 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_mmtime if(debug_msg_enabled[44]) fprintf
-#define debugging_mmtime debug_msg_enabled[44]
+#define dprintf_mmtime if(!debug_msg_enabled[45]) ; else fprintf
+#define debugging_mmtime debug_msg_enabled[45]
 #else
 #ifdef DEBUG_MMTIME
 #define dprintf_mmtime fprintf
 #define debugging_mmtime 1
 #else
-#define dprintf_mmtime
+#define dprintf_mmtime while(0) fprintf
 #define debugging_mmtime 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_module if(debug_msg_enabled[45]) fprintf
-#define debugging_module debug_msg_enabled[45]
+#define dprintf_module if(!debug_msg_enabled[46]) ; else fprintf
+#define debugging_module debug_msg_enabled[46]
 #else
 #ifdef DEBUG_MODULE
 #define dprintf_module fprintf
 #define debugging_module 1
 #else
-#define dprintf_module
+#define dprintf_module while(0) fprintf
 #define debugging_module 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_msg if(debug_msg_enabled[46]) fprintf
-#define debugging_msg debug_msg_enabled[46]
+#define dprintf_msg if(!debug_msg_enabled[47]) ; else fprintf
+#define debugging_msg debug_msg_enabled[47]
 #else
 #ifdef DEBUG_MSG
 #define dprintf_msg fprintf
 #define debugging_msg 1
 #else
-#define dprintf_msg
+#define dprintf_msg while(0) fprintf
 #define debugging_msg 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_msgbox if(debug_msg_enabled[47]) fprintf
-#define debugging_msgbox debug_msg_enabled[47]
+#define dprintf_msgbox if(!debug_msg_enabled[48]) ; else fprintf
+#define debugging_msgbox debug_msg_enabled[48]
 #else
 #ifdef DEBUG_MSGBOX
 #define dprintf_msgbox fprintf
 #define debugging_msgbox 1
 #else
-#define dprintf_msgbox
+#define dprintf_msgbox while(0) fprintf
 #define debugging_msgbox 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_nonclient if(debug_msg_enabled[48]) fprintf
-#define debugging_nonclient debug_msg_enabled[48]
+#define dprintf_nonclient if(!debug_msg_enabled[49]) ; else fprintf
+#define debugging_nonclient debug_msg_enabled[49]
 #else
 #ifdef DEBUG_NONCLIENT
 #define dprintf_nonclient fprintf
 #define debugging_nonclient 1
 #else
-#define dprintf_nonclient
+#define dprintf_nonclient while(0) fprintf
 #define debugging_nonclient 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_palette if(debug_msg_enabled[49]) fprintf
-#define debugging_palette debug_msg_enabled[49]
+#define dprintf_ole if(!debug_msg_enabled[50]) ; else fprintf
+#define debugging_ole debug_msg_enabled[50]
+#else
+#ifdef DEBUG_OLE
+#define dprintf_ole fprintf
+#define debugging_ole 1
+#else
+#define dprintf_ole while(0) fprintf
+#define debugging_ole 0
+#endif
+#endif
+
+#ifdef DEBUG_RUNTIME
+#define dprintf_palette if(!debug_msg_enabled[51]) ; else fprintf
+#define debugging_palette debug_msg_enabled[51]
 #else
 #ifdef DEBUG_PALETTE
 #define dprintf_palette fprintf
 #define debugging_palette 1
 #else
-#define dprintf_palette
+#define dprintf_palette while(0) fprintf
 #define debugging_palette 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_profile if(debug_msg_enabled[50]) fprintf
-#define debugging_profile debug_msg_enabled[50]
+#define dprintf_profile if(!debug_msg_enabled[52]) ; else fprintf
+#define debugging_profile debug_msg_enabled[52]
 #else
 #ifdef DEBUG_PROFILE
 #define dprintf_profile fprintf
 #define debugging_profile 1
 #else
-#define dprintf_profile
+#define dprintf_profile while(0) fprintf
 #define debugging_profile 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_prop if(debug_msg_enabled[51]) fprintf
-#define debugging_prop debug_msg_enabled[51]
+#define dprintf_prop if(!debug_msg_enabled[53]) ; else fprintf
+#define debugging_prop debug_msg_enabled[53]
 #else
 #ifdef DEBUG_PROP
 #define dprintf_prop fprintf
 #define debugging_prop 1
 #else
-#define dprintf_prop
+#define dprintf_prop while(0) fprintf
 #define debugging_prop 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_reg if(debug_msg_enabled[52]) fprintf
-#define debugging_reg debug_msg_enabled[52]
+#define dprintf_reg if(!debug_msg_enabled[54]) ; else fprintf
+#define debugging_reg debug_msg_enabled[54]
 #else
 #ifdef DEBUG_REG
 #define dprintf_reg fprintf
 #define debugging_reg 1
 #else
-#define dprintf_reg
+#define dprintf_reg while(0) fprintf
 #define debugging_reg 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_region if(debug_msg_enabled[53]) fprintf
-#define debugging_region debug_msg_enabled[53]
+#define dprintf_region if(!debug_msg_enabled[55]) ; else fprintf
+#define debugging_region debug_msg_enabled[55]
 #else
 #ifdef DEBUG_REGION
 #define dprintf_region fprintf
 #define debugging_region 1
 #else
-#define dprintf_region
+#define dprintf_region while(0) fprintf
 #define debugging_region 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_relay if(debug_msg_enabled[54]) fprintf
-#define debugging_relay debug_msg_enabled[54]
+#define dprintf_relay if(!debug_msg_enabled[56]) ; else fprintf
+#define debugging_relay debug_msg_enabled[56]
 #else
 #ifdef DEBUG_RELAY
 #define dprintf_relay fprintf
 #define debugging_relay 1
 #else
-#define dprintf_relay
+#define dprintf_relay while(0) fprintf
 #define debugging_relay 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_resource if(debug_msg_enabled[55]) fprintf
-#define debugging_resource debug_msg_enabled[55]
+#define dprintf_resource if(!debug_msg_enabled[57]) ; else fprintf
+#define debugging_resource debug_msg_enabled[57]
 #else
 #ifdef DEBUG_RESOURCE
 #define dprintf_resource fprintf
 #define debugging_resource 1
 #else
-#define dprintf_resource
+#define dprintf_resource while(0) fprintf
 #define debugging_resource 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_scroll if(debug_msg_enabled[56]) fprintf
-#define debugging_scroll debug_msg_enabled[56]
+#define dprintf_scroll if(!debug_msg_enabled[58]) ; else fprintf
+#define debugging_scroll debug_msg_enabled[58]
 #else
 #ifdef DEBUG_SCROLL
 #define dprintf_scroll fprintf
 #define debugging_scroll 1
 #else
-#define dprintf_scroll
+#define dprintf_scroll while(0) fprintf
 #define debugging_scroll 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_selectors if(debug_msg_enabled[57]) fprintf
-#define debugging_selectors debug_msg_enabled[57]
+#define dprintf_selectors if(!debug_msg_enabled[59]) ; else fprintf
+#define debugging_selectors debug_msg_enabled[59]
 #else
 #ifdef DEBUG_SELECTORS
 #define dprintf_selectors fprintf
 #define debugging_selectors 1
 #else
-#define dprintf_selectors
+#define dprintf_selectors while(0) fprintf
 #define debugging_selectors 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_stack if(debug_msg_enabled[58]) fprintf
-#define debugging_stack debug_msg_enabled[58]
+#define dprintf_stack if(!debug_msg_enabled[60]) ; else fprintf
+#define debugging_stack debug_msg_enabled[60]
 #else
 #ifdef DEBUG_STACK
 #define dprintf_stack fprintf
 #define debugging_stack 1
 #else
-#define dprintf_stack
+#define dprintf_stack while(0) fprintf
 #define debugging_stack 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_stress if(debug_msg_enabled[59]) fprintf
-#define debugging_stress debug_msg_enabled[59]
+#define dprintf_stress if(!debug_msg_enabled[61]) ; else fprintf
+#define debugging_stress debug_msg_enabled[61]
 #else
 #ifdef DEBUG_STRESS
 #define dprintf_stress fprintf
 #define debugging_stress 1
 #else
-#define dprintf_stress
+#define dprintf_stress while(0) fprintf
 #define debugging_stress 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_syscolor if(debug_msg_enabled[60]) fprintf
-#define debugging_syscolor debug_msg_enabled[60]
+#define dprintf_syscolor if(!debug_msg_enabled[62]) ; else fprintf
+#define debugging_syscolor debug_msg_enabled[62]
 #else
 #ifdef DEBUG_SYSCOLOR
 #define dprintf_syscolor fprintf
 #define debugging_syscolor 1
 #else
-#define dprintf_syscolor
+#define dprintf_syscolor while(0) fprintf
 #define debugging_syscolor 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_task if(debug_msg_enabled[61]) fprintf
-#define debugging_task debug_msg_enabled[61]
+#define dprintf_task if(!debug_msg_enabled[63]) ; else fprintf
+#define debugging_task debug_msg_enabled[63]
 #else
 #ifdef DEBUG_TASK
 #define dprintf_task fprintf
 #define debugging_task 1
 #else
-#define dprintf_task
+#define dprintf_task while(0) fprintf
 #define debugging_task 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_text if(debug_msg_enabled[62]) fprintf
-#define debugging_text debug_msg_enabled[62]
+#define dprintf_text if(!debug_msg_enabled[64]) ; else fprintf
+#define debugging_text debug_msg_enabled[64]
 #else
 #ifdef DEBUG_TEXT
 #define dprintf_text fprintf
 #define debugging_text 1
 #else
-#define dprintf_text
+#define dprintf_text while(0) fprintf
 #define debugging_text 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_timer if(debug_msg_enabled[63]) fprintf
-#define debugging_timer debug_msg_enabled[63]
+#define dprintf_timer if(!debug_msg_enabled[65]) ; else fprintf
+#define debugging_timer debug_msg_enabled[65]
 #else
 #ifdef DEBUG_TIMER
 #define dprintf_timer fprintf
 #define debugging_timer 1
 #else
-#define dprintf_timer
+#define dprintf_timer while(0) fprintf
 #define debugging_timer 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_utility if(debug_msg_enabled[64]) fprintf
-#define debugging_utility debug_msg_enabled[64]
+#define dprintf_utility if(!debug_msg_enabled[66]) ; else fprintf
+#define debugging_utility debug_msg_enabled[66]
 #else
 #ifdef DEBUG_UTILITY
 #define dprintf_utility fprintf
 #define debugging_utility 1
 #else
-#define dprintf_utility
+#define dprintf_utility while(0) fprintf
 #define debugging_utility 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_win if(debug_msg_enabled[65]) fprintf
-#define debugging_win debug_msg_enabled[65]
+#define dprintf_win if(!debug_msg_enabled[67]) ; else fprintf
+#define debugging_win debug_msg_enabled[67]
 #else
 #ifdef DEBUG_WIN
 #define dprintf_win fprintf
 #define debugging_win 1
 #else
-#define dprintf_win
+#define dprintf_win while(0) fprintf
 #define debugging_win 0
 #endif
 #endif
 
 #ifdef DEBUG_RUNTIME
-#define dprintf_winsock if(debug_msg_enabled[66]) fprintf
-#define debugging_winsock debug_msg_enabled[66]
+#define dprintf_winsock if(!debug_msg_enabled[68]) ; else fprintf
+#define debugging_winsock debug_msg_enabled[68]
 #else
 #ifdef DEBUG_WINSOCK
 #define dprintf_winsock fprintf
 #define debugging_winsock 1
 #else
-#define dprintf_winsock
+#define dprintf_winsock while(0) fprintf
 #define debugging_winsock 0
 #endif
 #endif
@@ -1399,6 +1439,7 @@
     "keyboard",
     "ldt",
     "listbox",
+    "malloc",
     "mci",
     "mcianim",
     "mciwave",
@@ -1414,6 +1455,7 @@
     "msg",
     "msgbox",
     "nonclient",
+    "ole",
     "palette",
     "profile",
     "prop",
diff --git a/include/dlls.h b/include/dlls.h
index 169dac1..0ad5c2f 100644
--- a/include/dlls.h
+++ b/include/dlls.h
@@ -91,6 +91,7 @@
     struct dll_table_entry_s *dll_table;
     int dll_table_length;
     int dll_number;
+    int dll_is_used;   /* use MS provided if set to zero */
 };
 
 extern struct dll_table_entry_s KERNEL_table[];
@@ -108,6 +109,13 @@
 extern struct dll_table_entry_s TOOLHELP_table[];
 extern struct dll_table_entry_s MOUSE_table[];
 extern struct dll_table_entry_s COMMDLG_table[];
+extern struct dll_table_entry_s OLE2_table[];
+extern struct dll_table_entry_s OLE2CONV_table[];
+extern struct dll_table_entry_s OLE2DISP_table[];
+extern struct dll_table_entry_s OLE2NLS_table[];
+extern struct dll_table_entry_s OLE2PROX_table[];
+extern struct dll_table_entry_s OLECLI_table[];
+extern struct dll_table_entry_s OLESVR_table[];
 
 
 extern unsigned short KERNEL_offsets[];
@@ -125,6 +133,13 @@
 extern unsigned short TOOLHELP_offsets[];
 extern unsigned short MOUSE_offsets[];
 extern unsigned short COMMDLG_offsets[];
+extern unsigned short OLE2_offsets[];
+extern unsigned short OLE2CONV_offsets[];
+extern unsigned short OLE2DISP_offsets[];
+extern unsigned short OLE2NLS_offsets[];
+extern unsigned short OLE2PROX_offsets[];
+extern unsigned short OLECLI_offsets[];
+extern unsigned short OLESVR_offsets[];
 
 
 extern unsigned char KERNEL_types[];
@@ -142,9 +157,15 @@
 extern unsigned char TOOLHELP_types[];
 extern unsigned char MOUSE_types[];
 extern unsigned char COMMDLG_types[];
+extern unsigned char OLE2_types[];
+extern unsigned char OLE2CONV_types[];
+extern unsigned char OLE2DISP_types[];
+extern unsigned char OLE2NLS_types[];
+extern unsigned char OLE2PROX_types[];
+extern unsigned char OLECLI_types[];
+extern unsigned char OLESVR_types[];
 
-
-#define N_BUILTINS	15
+#define N_BUILTINS	22
 
 #endif /* DLLS_H */
 
diff --git a/include/ole.h b/include/ole.h
new file mode 100644
index 0000000..7da0a78
--- /dev/null
+++ b/include/ole.h
@@ -0,0 +1,85 @@
+/*
+ *	ole.h	-	Declarations for OLESVR and OLECLI
+ */
+
+typedef enum
+{
+    OLE_OK,
+    OLE_WAIT_FOR_RELEASE,
+    OLE_BUSY,
+    OLE_ERROR_PROTECT_ONLY,
+    OLE_ERROR_MEMORY,
+    OLE_ERROR_STREAM,
+    OLE_ERROR_STATIC,
+    OLE_ERROR_BLANK,
+    OLE_ERROR_DRAW,
+    OLE_ERROR_METAFILE,
+    OLE_ERROR_ABORT,
+    OLE_ERROR_CLIPBOARD,
+    OLE_ERROR_FORMAT,
+    OLE_ERROR_OBJECT,
+    OLE_ERROR_OPTION,
+    OLE_ERROR_PROTOCOL,
+    OLE_ERROR_ADDRESS,
+    OLE_ERROR_NOT_EQUAL,
+    OLE_ERROR_HANDLE,
+    OLE_ERROR_GENERIC,
+    OLE_ERROR_CLASS,
+    OLE_ERROR_SYNTAX,
+    OLE_ERROR_DATATYPE,
+    OLE_ERROR_PALETTE,
+    OLE_ERROR_NOT_LINK,
+    OLE_ERROR_NOT_EMPTY,
+    OLE_ERROR_SIZE,
+    OLE_ERROR_DRIVE,
+    OLE_ERROR_NETWORK,
+    OLE_ERROR_NAME,
+    OLE_ERROR_TEMPLATE,
+    OLE_ERROR_NEW,
+    OLE_ERROR_EDIT,
+    OLE_ERROR_OPEN,
+    OLE_ERROR_NOT_OPEN,
+    OLE_ERROR_LAUNCH,
+    OLE_ERROR_COMM,
+    OLE_ERROR_TERMINATE,
+    OLE_ERROR_COMMAND,
+    OLE_ERROR_SHOW,
+    OLE_ERROR_DOVERB,
+    OLE_ERROR_ADVISE_NATIVE,
+    OLE_ERROR_ADVISE_PICT,
+    OLE_ERROR_ADVISE_RENAME,
+    OLE_ERROR_POKE_NATIVE,
+    OLE_ERROR_REQUEST_NATIVE,
+    OLE_ERROR_REQUEST_PICT,
+    OLE_ERROR_SERVER_BLOCKED,
+    OLE_ERROR_REGISTRATION,
+    OLE_ERROR_ALREADY_REGISTERED,
+    OLE_ERROR_TASK,
+    OLE_ERROR_OUTOFDATE,
+    OLE_ERROR_CANT_UPDATE_CLIENT,
+    OLE_ERROR_UPDATE,
+    OLE_ERROR_SETDATA_FORMAT,
+    OLE_ERROR_STATIC_FROM_OTHER_OS,
+    OLE_WARN_DELETE_DATA = 1000
+} OLESTATUS;
+
+typedef enum{
+	OLE_SERVER_MULTI,
+	OLE_SERVER_SINGLE
+}OLE_SERVER_USE;
+
+typedef	LONG	LHSERVER;
+typedef LONG	LHSERVERDOC;
+typedef LONG	LHCLIENTDOC;
+
+typedef struct _OLESERVER*	LPOLESERVER;
+typedef struct _OLESERVERDOC*	LPOLESERVERDOC;
+
+OLESTATUS WINAPI OleRegisterServer(LPCSTR,LPOLESERVER,LHSERVER FAR*,HINSTANCE,OLE_SERVER_USE);
+OLESTATUS WINAPI OleUnblockServer(LHSERVER,BOOL FAR*);
+OLESTATUS WINAPI OleRegisterServerDoc(LHSERVER,LPCSTR,LPOLESERVERDOC,LHSERVERDOC FAR*);
+OLESTATUS WINAPI OleRegisterClientDoc(LPCSTR,LPCSTR,LONG,LHCLIENTDOC FAR*);
+OLESTATUS WINAPI OleRenameClientDoc(LHCLIENTDOC,LPCSTR);
+OLESTATUS WINAPI OleRevokeServerDoc(LHSERVERDOC);
+OLESTATUS WINAPI OleRevokeClientDoc(LHCLIENTDOC);
+OLESTATUS WINAPI OleRevokeServer(LHSERVER);
diff --git a/include/stddebug.h b/include/stddebug.h
index 087790e..e9d74ce 100644
--- a/include/stddebug.h
+++ b/include/stddebug.h
@@ -110,6 +110,7 @@
 #undef DEBUG_KEYBOARD
 #undef DEBUG_LDT
 #undef DEBUG_LISTBOX
+#undef DEBUG_MALLOC
 #undef DEBUG_MCI
 #undef DEBUG_MCIANIM
 #undef DEBUG_MCIWAVE
@@ -125,6 +126,7 @@
 #undef DEBUG_MSG
 #undef DEBUG_MSGBOX
 #undef DEBUG_NONCLIENT
+#undef DEBUG_OLE
 #undef DEBUG_PALETTE
 #undef DEBUG_PROFILE
 #undef DEBUG_PROP
@@ -180,6 +182,7 @@
 #define DEBUG_KEYBOARD
 #define DEBUG_LDT
 #define DEBUG_LISTBOX
+#define DEBUG_MALLOC
 #define DEBUG_MCI
 #define DEBUG_MCIANIM
 #define DEBUG_MCIWAVE
@@ -195,6 +198,7 @@
 #define DEBUG_MSG
 #define DEBUG_MSGBOX
 #define DEBUG_NONCLIENT
+#define DEBUG_OLE
 #define DEBUG_PALETTE
 #define DEBUG_PROFILE
 #define DEBUG_PROP
diff --git a/loader/library.c b/loader/library.c
index ef7bd18..4b33bdc 100644
--- a/loader/library.c
+++ b/loader/library.c
@@ -280,6 +280,11 @@
 /* 	dprintf_module(stddeb,"GetModuleHandle // searching in builtin libraries\n");*/
 	for (i = 0; i < N_BUILTINS; i++) {
 		if (dll_builtin_table[i].dll_name == NULL) break;
+		if (!dll_builtin_table[i].dll_is_used){
+			dprintf_module(stddeb,"Skipping builtin %s\n",
+			dll_builtin_table[i].dll_name);
+			continue;
+		}
 		if (((int) lpModuleName & 0xffff0000) == 0) {
 			if (0xFF00 + i == (int) lpModuleName) {
 				dprintf_module(stddeb,"GetModuleHandle('%s') return %04X \n",
@@ -576,16 +581,22 @@
 
 	dprintf_module(stddeb,"ModuleNext(%08X)\n", (int) lpModule);
 
-	if (IS_BUILTIN_DLL(lpModule->hModule)) {
-		/* last built-in ? */
-		if ((lpModule->hModule & 0xff) == (N_BUILTINS - 1) ) {
-			if (wine_files) {
-				FillModStructLoaded(lpModule, wine_files);
-				return TRUE;
-			} else
-				return FALSE;
-		}
-		FillModStructBuiltIn(lpModule, &dll_builtin_table[(lpModule->hModule & 0xff)+1]);
+	if (IS_BUILTIN_DLL(lpModule->hModule)) 
+	{
+		int builtin_no=lpModule->hModule & 0xff;
+		do{
+			/* last built-in ? */
+			if (builtin_no == (N_BUILTINS - 1) ) {
+				if (wine_files) {
+					FillModStructLoaded(lpModule, wine_files);
+					return TRUE;
+				} else
+					return FALSE;
+			}
+			builtin_no++;
+		}while(!dll_builtin_table[builtin_no].dll_is_used);
+
+		FillModStructBuiltIn(lpModule, &dll_builtin_table[builtin_no]);
 		return TRUE;
 	}
 	w = GetFileInfo(lpModule->hModule);
diff --git a/loader/ne_image.c b/loader/ne_image.c
index 9e10ae9..14914b7 100644
--- a/loader/ne_image.c
+++ b/loader/ne_image.c
@@ -253,6 +253,9 @@
 	
 	switch (rep->address_type)
 	{
+	  case NE_RADDR_LOWBYTE:
+	    dprintf_fixup(stddeb,"Unhandled address type NE_RADDR_LOWBYTE\n");
+	    return -1;
 	  case NE_RADDR_OFFSET16:
 	    do {
 		dprintf_fixup(stddeb,"    %04x:%04x:%04x OFFSET16\n",
diff --git a/loader/resource.c b/loader/resource.c
index e836aa4..1da3260 100644
--- a/loader/resource.c
+++ b/loader/resource.c
@@ -22,7 +22,6 @@
 #include "library.h"
 #include "stddebug.h"
 #include "debug.h"
-#include "../rc/sysresbm.h"
 
 #define MIN(a,b)	((a) < (b) ? (a) : (b))
 
@@ -30,7 +29,6 @@
 
 extern int NE_FindResource(HANDLE, LPSTR, LPSTR, RESOURCE *);
 extern int PE_FindResource(HANDLE, LPSTR, LPSTR, RESOURCE *);
-extern HBITMAP OBM_LoadOEMBitmap( WORD id );  /* objects/oembitmap.c */
 
 #define PrintId(name) \
 	if (HIWORD((DWORD)name)) \
@@ -54,9 +52,6 @@
 	printf(")\n");
 	}
 	
-	if (instance == (HANDLE)NULL)
-		instance = hSysRes;
-
 	/* FIXME: did we already find this one ? */
 
 	if ((rh = GlobalAlloc(GMEM_MOVEABLE, sizeof(RESOURCE))) == 0)
@@ -111,9 +106,6 @@
 	dprintf_resource(stddeb, "AllocResource(%04X, %04X, %08X);\n", 
 		instance, hResInfo, (int) dwSize);
 
-	if (instance == (HANDLE)NULL)
-		instance = hSysRes;
-
 	if ((r = (RESOURCE *)GlobalLock(hResInfo)) == NULL)
 		return 0;
     
@@ -140,9 +132,6 @@
 	dprintf_resource(stddeb, "AccessResource(%04X, %04X);\n", 
 		instance, hResInfo);
 
-	if (instance == (HANDLE)NULL)
-		instance = hSysRes;
-
 	if ((r = (RESOURCE *)GlobalLock(hResInfo)) == NULL)
 		return -1;
 
@@ -164,9 +153,6 @@
 	dprintf_resource(stddeb, "SizeofResource(%04X, %04X);\n", 
 		instance, hResInfo);
 
-	if (instance == (HANDLE)NULL)
-		instance = hSysRes;
-
 	if ((r = (RESOURCE *)GlobalLock(hResInfo)) == NULL)
 		return 0;
 
@@ -188,9 +174,6 @@
 
     dprintf_resource(stddeb, "LoadResource(%04X, %04X);\n", instance, hResInfo);
 
-    if (instance == (HANDLE)NULL)
-	instance = hSysRes;
-
     if ((r = (RESOURCE *)GlobalLock(hResInfo)) == NULL)
 	return 0;
     
@@ -324,9 +307,6 @@
 	HANDLE hResInfo;
 	RESOURCE *r;
 
-	if (instance == (HANDLE)NULL)
-		instance = hSysRes;
-
 	dprintf_resource(stddeb, "RSC_LoadResource: instance = %04x, name = %08x, type = %08x\n",
 	   instance, (int) rsc_name, (int) type);
 
@@ -364,6 +344,12 @@
 	printf(")\n");
     }
     
+    if (!instance)
+    {
+        if (HIWORD((int)icon_name)) return 0; /* FIXME: should handle '#xxx' */
+        return OBM_LoadIcon( LOWORD((int)icon_name) );
+    }
+
     if (!(hdc = GetDC(GetDesktopWindow()))) return 0;
     rsc_mem = RSC_LoadResource(instance, icon_name, (LPSTR) NE_RSCTYPE_GROUP_ICON, 
 			       &image_size);
@@ -711,24 +697,11 @@
 	printf(")\n");
     }
 
-    if (!instance) {
-	struct ResourceTable *it;
-	hbitmap = OBM_LoadOEMBitmap(((int) bmp_name) & 0xffff);
-	if (hbitmap)
-		return hbitmap;
-	/* Load from sysresbm */
-	dprintf_resource(stddeb,"Searching for %d\n", (int) bmp_name);
-	for(it=sysresbmTable;it->value;it++){
-	    if(it->type==NE_RSCTYPE_BITMAP)
-	    if((((int)bmp_name & 0xFFFF0000) == 0))
-		{if(it->id==(int)bmp_name)break;}
-	    else if(!strcmp(it->name,bmp_name))break;
-	}
-	if(!it->value)return 0;
-	dprintf_resource(stddeb,"Found %s\n",it->name);
-	lp=(long *)it->value;
-	rsc_mem=(HANDLE)NULL;
-    } else { /* Load from file - indent this code properly later */
+    if (!instance)
+    {
+        if (HIWORD((int)bmp_name)) return 0;  /* FIXME: should handle '#xxx' */
+        return OBM_LoadBitmap( LOWORD((int)bmp_name) );
+    }
 
     rsc_mem = RSC_LoadResource(instance, bmp_name, (LPSTR) NE_RSCTYPE_BITMAP, 
 			       &image_size);
@@ -744,7 +717,6 @@
 	GlobalFree(rsc_mem);
 	return 0;
     }
-    } /* Load from file */
     if (!(hdc = GetDC(0))) lp = NULL;
     size = CONV_LONG (*lp);
     if (size == sizeof(BITMAPCOREHEADER)){
diff --git a/loader/selector.c b/loader/selector.c
index bfa5e7f..7447e07 100644
--- a/loader/selector.c
+++ b/loader/selector.c
@@ -634,6 +634,77 @@
     return CreateNewSegments(0, 0, limit, 1);
 }
 
+
+
+/**********************************************************************
+ *  Check whether pseudo-functions like __0040H for direct memory
+ *  access are referenced and return 1 if so.
+ *  FIXME: Reading and writing to the returned selectors has no effect
+ *         (e.g. reading from the Bios data segment (esp. clock!) )
+ */
+
+unsigned int GetMemoryReference(char *dll_name, char *function, int *sel,
+				 int *addr)
+{
+  static HANDLE memory_handles[ 10 ] = { 0,0,0,0,0,0,0,0,0,0 };
+  static char *memory_names[ 10 ] = { "segment 0xA000",
+					"segment 0xB000",
+					"segment 0xB800",
+					"Bios-Rom",
+					"segment 0xD000",
+					"segment 0x0000",
+					"segment 0xE000",
+					"segment 0xF000",
+					"segment 0xC000",
+					"Bios data segment" };
+  short nr;
+
+  if( strcasecmp( dll_name, "KERNEL" ) ) 
+    return 0;
+
+  if( HIWORD( function ) ) {
+    if( ( *function != '_' ) || ( *(function+1) != '_' ) )
+      return 0;
+    if( !strcasecmp( function, "__A000H" ) ) nr = 0;
+    else if( !strcasecmp( function, "__B000H" ) ) nr = 1;
+    else if( !strcasecmp( function, "__B800H" ) ) nr = 2;
+    else if( !strcasecmp( function, "__ROMBIOS" ) ) nr = 3;
+    else if( !strcasecmp( function, "__D000H" ) ) nr = 4;
+    else if( !strcasecmp( function, "__0000H" ) ) nr = 5;
+    else if( !strcasecmp( function, "__E000H" ) ) nr = 6;
+    else if( !strcasecmp( function, "__F000H" ) ) nr = 7;
+    else if( !strcasecmp( function, "__C000H" ) ) nr = 8;
+    else if( !strcasecmp( function, "__0040H" ) ) nr = 9;
+    else
+      return 0;
+  }
+  else {
+    switch( LOWORD( function ) ) {
+    case 174: nr = 0; break;
+    case 181: nr = 1; break;
+    case 182: nr = 2; break;
+    case 173: nr = 3; break;
+    case 179: nr = 4; break;
+    case 183: nr = 5; break;
+    case 190: nr = 6; break;
+    case 194: nr = 7; break;
+    case 195: nr = 8; break;
+    case 193: nr = 9; break;
+    default: return 0;
+    }
+  }
+  
+  if( !memory_handles[ nr ] ) {
+    fprintf( stderr, "Warning: Direct access to %s!\n", memory_names[ nr ] );
+    memory_handles[ nr ] = GlobalAlloc( GMEM_FIXED, 65535 );
+  }
+  *sel = memory_handles[ nr ];
+  *addr = MAKELONG(*sel,*sel);
+  return 1;
+}
+ 
+
+
 /**********************************************************************
  *					GetEntryPointFromOrdinal
  */
@@ -652,6 +723,9 @@
 	char * cpnt;
 	int ordinal, j, len;
 
+	if( GetMemoryReference( dll_name, function, sel, addr ) )
+	  return 0;
+
 	dll_table = FindDLLTable(dll_name);
 
 	if(dll_table) {
@@ -693,6 +767,9 @@
 	struct w_files * wpnt;
 	int j;
 
+	if( GetMemoryReference( dll_name, (char*)ordinal, sel, addr ) )
+	  return 0;
+
 	dll_table = FindDLLTable(dll_name);
 
 	if(dll_table) {
diff --git a/loader/signal.c b/loader/signal.c
index 285571b..344a777 100644
--- a/loader/signal.c
+++ b/loader/signal.c
@@ -240,10 +240,13 @@
 #endif
 #if defined(__NetBSD__) || defined(__FreeBSD__)
         sigset_t sig_mask;
-#if defined(BSD4_4) && !defined (__FreeBSD__)
         struct sigaltstack ss;
         
+#if !defined (__FreeBSD__)
         if ((ss.ss_base = malloc(MINSIGSTKSZ)) == NULL) {
+#else
+        if ((ss.ss_sp = malloc(MINSIGSTKSZ)) == NULL) {
+#endif
 	        fprintf(stderr, "Unable to allocate signal stack (%d bytes)\n",
 		        MINSIGSTKSZ);
 		exit(1);
@@ -254,16 +257,6 @@
                 perror("sigstack");
                 exit(1);
         }
-#else
-        struct sigstack ss;
-        
-        ss.ss_sp = (char *) (((unsigned int)(cstack) + sizeof(cstack) - 4) & ~3);
-        ss.ss_onstack = 0;
-        if (sigstack(&ss, NULL) < 0) {
-                perror("sigstack");
-                exit(1);
-        }
-#endif
         sigemptyset(&sig_mask);
         segv_act.sa_handler = (void (*)) win_fault;
 	segv_act.sa_flags = SA_ONSTACK;
diff --git a/misc/Imakefile b/misc/Imakefile
index a08699e..a5f54d2 100644
--- a/misc/Imakefile
+++ b/misc/Imakefile
@@ -15,6 +15,8 @@
 	keyboard.c \
 	lstr.c \
 	main.c \
+	olecli.c \
+	olesvr.c \
 	message.c \
 	network.c \
 	profile.c \
diff --git a/misc/dos_fs.c b/misc/dos_fs.c
index c9df6e7..8879aa1 100644
--- a/misc/dos_fs.c
+++ b/misc/dos_fs.c
@@ -414,6 +414,7 @@
 	/*   a:\windows\system.ini  =>  /dos/windows/system.ini */
 	
 	static char temp[256];
+	static char dostemp[256];
 	int drive;
 
 	if (dosfilename[1] == ':') 
@@ -427,14 +428,17 @@
 	} else
 		drive = CurrentDrive;
 
+	/* Consider dosfilename const */
+	strcpy(dostemp,dosfilename);
+
         /* Expand the filename to it's full path if it doesn't
          * start from the root.
          */
-        DOS_ExpandToFullPath(dosfilename, drive);
+        DOS_ExpandToFullPath(dostemp, drive);
 
 	strcpy(temp, DosDrives[drive].rootdir);
 	strcat(temp, DosDrives[drive].cwd);
-	GetUnixDirName(temp + strlen(DosDrives[drive].rootdir), dosfilename);
+	GetUnixDirName(temp + strlen(DosDrives[drive].rootdir), dostemp);
 
 	dprintf_dosfs(stddeb,"GetUnixFileName: %s => %s\n", dosfilename, temp);
 	return(temp);
diff --git a/misc/main.c b/misc/main.c
index b42072b..b817401 100644
--- a/misc/main.c
+++ b/misc/main.c
@@ -10,6 +10,9 @@
 #include <string.h>
 #include <ctype.h>
 #include <locale.h>
+#ifdef MALLOC_DEBUGGING
+#include <malloc.h>
+#endif
 #include <X11/Xlib.h>
 #include <X11/Xresource.h>
 #include <X11/Xutil.h>
@@ -26,6 +29,7 @@
 #include "prototypes.h"
 #include "texts.h"
 #include "selectors.h" /* for InitSelectors prototype */
+#include "library.h"
 #define DEBUG_DEFINE_VARIABLES
 #include "stddebug.h"
 #include "debug.h"
@@ -86,7 +90,8 @@
     { "-synchronous",   ".synchronous",     XrmoptionNoArg,  (caddr_t)"on" },
     { "-spy",           ".spy",             XrmoptionSepArg, (caddr_t)NULL },
     { "-debug",         ".debug",           XrmoptionNoArg,  (caddr_t)"on" },
-    { "-debugmsg",      ".debugmsg",        XrmoptionSepArg, (caddr_t)NULL }
+    { "-debugmsg",      ".debugmsg",        XrmoptionSepArg, (caddr_t)NULL },
+    { "-dll",           ".dll",             XrmoptionSepArg, (caddr_t)NULL }
 };
 
 #define NB_OPTIONS  (sizeof(optionsTable) / sizeof(optionsTable[0]))
@@ -106,7 +111,9 @@
   "    -backingstore   Turn on backing store\n" \
   "    -spy file       Turn on message spying to the specified file\n" \
   "    -relaydbg       Obsolete. Use -debugmsg +relay instead\n" \
-  "    -debugmsg name  Turn debugging-messages on or off\n"
+  "    -debugmsg name  Turn debugging-messages on or off\n" \
+  "    -dll name       Enable or disable built-in DLLs\n"
+
 
 
 /***********************************************************************
@@ -264,6 +271,43 @@
 #endif
 
 /***********************************************************************
+ *           MAIN_ParseDLLOptions
+ *
+ * Set runtime DLL usage flags
+ */
+static BOOL MAIN_ParseDLLOptions(char *options)
+{
+  int l;
+  int i;
+  if (strlen(options)<3)
+    return FALSE;
+  do
+  {
+    if ((*options!='+')&&(*options!='-'))
+      return FALSE;
+    if (strchr(options,','))
+      l=strchr(options,',')-options;
+    else l=strlen(options);
+    for (i=0;i<N_BUILTINS;i++)
+         if (!strncasecmp(options+1,dll_builtin_table[i].dll_name,l-1))
+           {
+             dll_builtin_table[i].dll_is_used=(*options=='+');
+             break;
+           }
+    if (i==N_BUILTINS)
+         return FALSE;
+    options+=l;
+  }
+  while((*options==',')&&(*(++options)));
+  if (*options)
+    return FALSE;
+  else
+    return TRUE;
+}
+
+
+
+/***********************************************************************
  *           MAIN_ParseOptions
  *
  * Parse command line options and open display.
@@ -344,6 +388,20 @@
 #endif
       }
 
+      if(MAIN_GetResource( db, ".dll", &value))
+       if(MAIN_ParseDLLOptions((char*)value.addr)==FALSE)
+       {
+         int i;
+         fprintf(stderr,"%s: Syntax: -dll +xxx,... or -dll -xxx,...\n",argv[0]);
+         fprintf(stderr,"Example: -dll -ole2    Do not use emulated OLE2.DLL\n");
+         fprintf(stderr,"Available DLLs\n");
+         for(i=0;i<N_BUILTINS;i++)
+               fprintf(stderr,"%-9s%c",dll_builtin_table[i].dll_name,
+                       (((i+2)%8==0)?'\n':' '));
+         fprintf(stderr,"\n\n");
+         exit(1);
+       }
+
 /*    MAIN_GetAllButtonTexts(db); */
  
 }
@@ -444,6 +502,12 @@
     	KBBellPitch | KBBellDuration | KBAutoRepeatMode, &keyboard_value);
 }
 
+static void malloc_error()
+{
+       fprintf(stderr,"malloc is not feeling well. Good bye\n");
+       exit(1);
+}
+
 static void called_at_exit(void)
 {
     Comm_DeInit();
@@ -468,6 +532,22 @@
     
     MAIN_ParseOptions( &argc, argv );
 
+#ifdef MALLOC_DEBUGGING
+    if(debugging_malloc)
+    {
+       char *trace=getenv("MALLOC_TRACE");
+       if(!trace)
+       {       
+       	dprintf_malloc(stddeb,"MALLOC_TRACE not set. No trace generated\n");
+       }else
+       {
+               dprintf_malloc(stddeb,"malloc trace goes to %s\n",trace);
+               mtrace();
+       }
+      mcheck(malloc_error);
+    }
+#endif
+
     screen       = DefaultScreenOfDisplay( display );
     screenWidth  = WidthOfScreen( screen );
     screenHeight = HeightOfScreen( screen );
diff --git a/misc/message.c b/misc/message.c
index 0b02f24..0cfbf16 100644
--- a/misc/message.c
+++ b/misc/message.c
@@ -28,7 +28,16 @@
  * Defaults for button-texts
  */
 
-ButtonTexts ButtonText = {
+ButtonTexts ButtonText = {    /* FIXME: Norwegian Translation missing */
+#if #LANG(De)
+  "&Ja",     'J',
+  "&Nein",   'N',
+  "&Ok",     'O',
+  "&Abbruch",'A',
+  "&Abbruch",'A',
+  "&Wiederholen", 'W',
+  "&Ignorieren", 'I'
+#else
   "&Yes",    'Y',
   "&No",     'N',
   "&Ok",     'O',
@@ -36,6 +45,7 @@
   "&Abort",  'A',
   "&Retry",  'R',
   "&Ignore", 'I'
+#endif
 };
 
 extern HBITMAP hUpArrow;
diff --git a/misc/olecli.c b/misc/olecli.c
new file mode 100644
index 0000000..249801d
--- /dev/null
+++ b/misc/olecli.c
@@ -0,0 +1,47 @@
+/*
+ *	OLECLI library
+ *
+ *	Copyright 1995	Martin von Loewis
+ */
+
+/*	At the moment, these are only empty stubs.
+ */
+
+#include "windows.h"
+#include "ole.h"
+#include "stddebug.h"
+#include "debug.h"
+
+extern LONG	OLE_current_handle;
+
+/***********************************************************************
+ *           OleRegisterClientDoc
+ */
+OLESTATUS WINAPI OleRegisterClientDoc(
+	LPCSTR classname,
+	LPCSTR docname,
+	LONG reserved,
+	LHCLIENTDOC FAR *hRet)
+{
+    dprintf_ole(stdnimp,"OleRegisterClientDoc:%s %s\n",classname,docname);
+    *hRet=++OLE_current_handle;
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleRenameClientDoc
+ */
+OLESTATUS WINAPI OleRenameClientDoc(LHCLIENTDOC hDoc, LPCSTR newName)
+{
+    dprintf_ole(stdnimp,"OleRenameClientDoc: %d %s\n",hDoc, newName);
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleRevokeClientDoc
+ */
+OLESTATUS WINAPI OleRevokeClientDoc(LHCLIENTDOC hServerDoc)
+{
+    dprintf_ole(stdnimp,"OleRevokeClientDoc:%d\n",hServerDoc);
+    return OLE_OK;
+}
diff --git a/misc/olesvr.c b/misc/olesvr.c
new file mode 100644
index 0000000..73b57dc
--- /dev/null
+++ b/misc/olesvr.c
@@ -0,0 +1,83 @@
+/*
+ *	OLESVR library
+ *
+ *	Copyright 1995	Martin von Loewis
+ */
+
+/*	At the moment, these are only empty stubs.
+ */
+
+#include "windows.h"
+#include "ole.h"
+#include "stddebug.h"
+#include "debug.h"
+
+LONG	OLE_current_handle;
+
+/***********************************************************************
+ *           OleRegisterServer
+ */
+OLESTATUS WINAPI OleRegisterServer(
+	LPCSTR	name,
+	LPOLESERVER serverStruct,
+	LHSERVER FAR *hRet,
+	HINSTANCE hServer,
+	OLE_SERVER_USE use)
+{
+    dprintf_ole(stdnimp,"OleRegisterServer:%s\n",name);
+    *hRet=++OLE_current_handle;
+    /* return OLE_ERROR_MEMORY, OLE_ERROR_PROTECT_ONLY if you want it fail*/
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleBlockServer
+ */
+OLESTATUS WINAPI OleBlockServer(LHSERVER hServer)
+{
+    fprintf(stdnimp,"OleBlockServer:%d\n",hServer);
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleUnblockServer
+ */
+OLESTATUS WINAPI OleUnblockServer(LHSERVER hServer, BOOL FAR *block)
+{
+    fprintf(stdnimp,"OleUnblockServer:%d\n",hServer);
+    /* no more blocked messages :) */
+    *block=FALSE;
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleRegisterServerDoc
+ */
+OLESTATUS WINAPI OleRegisterServerDoc(
+	LHSERVER hServer,
+	LPCSTR docname,
+	LPOLESERVERDOC document,
+	LHSERVERDOC FAR *hRet)
+{
+    dprintf_ole(stdnimp,"OleRegisterServerDoc:%d,%s\n", hServer, docname);
+    *hRet=++OLE_current_handle;
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleRevokeServerDoc
+ */
+OLESTATUS WINAPI OleRevokeServerDoc(LHSERVERDOC hServerDoc)
+{
+    dprintf_ole(stdnimp,"OleRevokeServerDoc:%d\n",hServerDoc);
+    return OLE_OK;
+}
+
+/***********************************************************************
+ *           OleRevokeServer
+ */
+OLESTATUS WINAPI OleRevokeServer(LHSERVER hServer)
+{
+    dprintf_ole(stdnimp,"OleRevokeServer:%d\n",hServer);
+    return OLE_OK;
+}
diff --git a/objects/dib.c b/objects/dib.c
index d054949..bb5388c 100644
--- a/objects/dib.c
+++ b/objects/dib.c
@@ -665,19 +665,32 @@
     BITMAP	bm;
     HBITMAP	hBitTemp;
     HDC		hMemDC;
+    COLORREF    oldFg, oldBg;
 
+    oldFg = SetTextColor( hDC, RGB(0,0,0) );
+    oldBg = SetBkColor( hDC, RGB(255,255,255) );
     dprintf_icon(stddeb,"DrawIcon(%04X, %d, %d, %04X) \n", hDC, x, y, hIcon);
     if (hIcon == (HICON)NULL) return FALSE;
     lpico = (ICONALLOC *)GlobalLock(hIcon);
     GetObject(lpico->hBitmap, sizeof(BITMAP), (LPSTR)&bm);
     hMemDC = CreateCompatibleDC(hDC);
-    hBitTemp = SelectObject(hMemDC, lpico->hBitMask);
-    BitBlt(hDC, x, y, bm.bmWidth, bm.bmHeight, hMemDC, 0, 0, SRCAND);
-    SelectObject(hMemDC, lpico->hBitmap);
-    BitBlt(hDC, x, y, bm.bmWidth, bm.bmHeight, hMemDC, 0, 0, SRCINVERT);
+    if (lpico->hBitMask)
+    {
+        hBitTemp = SelectObject(hMemDC, lpico->hBitMask);
+        BitBlt(hDC, x, y, bm.bmWidth, bm.bmHeight, hMemDC, 0, 0, SRCAND);
+        SelectObject(hMemDC, lpico->hBitmap);
+        BitBlt(hDC, x, y, bm.bmWidth, bm.bmHeight, hMemDC, 0, 0, SRCINVERT);
+    }
+    else  /* no mask -> everything is masked; so use SRCCOPY as it's faster */
+    {
+        hBitTemp = SelectObject(hMemDC, lpico->hBitmap);
+        BitBlt(hDC, x, y, bm.bmWidth, bm.bmHeight, hMemDC, 0, 0, SRCCOPY);
+    }
     SelectObject( hMemDC, hBitTemp );
     DeleteDC(hMemDC);
     GlobalUnlock( hIcon );
+    SetTextColor( hDC, oldFg );
+    SetBkColor( hDC, oldBg );
     return TRUE;
 }
 
diff --git a/objects/oembitmap.c b/objects/oembitmap.c
index 9598653..a0abcbc 100644
--- a/objects/oembitmap.c
+++ b/objects/oembitmap.c
@@ -1,62 +1,21 @@
 /*
  * GDI OEM bitmap objects
  *
- * Copyright 1994 Alexandre Julliard
+ * Copyright 1994, 1995 Alexandre Julliard
  *
-static char Copyright[] = "Copyright  Alexandre Julliard, 1994";
-*/
+ */
+
+#include <stdlib.h>
 #include <X11/Xlib.h>
 #include <X11/Xutil.h>
-#ifdef USE_XPM
 #include <X11/xpm.h>
-#endif
 #include "gdi.h"
 #include "bitmap.h"
-#include "stddebug.h"
 #include "color.h"
+#include "icon.h"
+#include "stddebug.h"
 #include "debug.h"
 
-#define OBM_FIRST  OBM_LFARROWI    /* First OEM bitmap */
-#define OBM_LAST   OBM_OLD_CLOSE   /* Last OEM bitmap */
-
-#ifdef USE_XPM
-
-
-#define NB_COLOR_SYMBOLS  5
-
-  /* This is the list of the symbolic colors. All the colors used */
-  /* in the xpm files must be included in this list. If you need  */
-  /* to add new colors, add them just before "black", and add the */
-  /* color identifier in OBM_Sys_Colors_Symbols below.            */
-  /* Warning: black and white must always be the last 2 colors.   */
-
-static XpmColorSymbol OBM_Color_Symbols[NB_COLOR_SYMBOLS+2] =
-{
-    { "button_face", NULL, 0 },       /* COLOR_BTNFACE */
-    { "button_shadow", NULL, 0 },     /* COLOR_BTNSHADOW */
-    { "button_highlight", NULL, 0 },  /* COLOR_BTNHIGHLIGHT */
-    { "button_text", NULL, 0 },       /* COLOR_BTNTEXT */
-    { "window_frame", NULL, 0 },      /* COLOR_WINDOWFRAME */
-    { "black", NULL, 0 },
-    { "white", NULL, 0 }
-};
-
-static const int OBM_Sys_Colors_Symbols[NB_COLOR_SYMBOLS] =
-{
-    COLOR_BTNFACE,
-    COLOR_BTNSHADOW,
-    COLOR_BTNHIGHLIGHT,
-    COLOR_BTNTEXT,
-    COLOR_WINDOWFRAME
-};
-
-  /* Don't change this list! */
-static XpmColorSymbol OBM_BW_Symbols[2] =
-{
-    { "white", NULL, 0 },
-    { "black", NULL, 1 }
-};
-
 
   /* Include OEM pixmaps */
 #include "bitmaps/obm_lfarrowi"
@@ -94,6 +53,9 @@
 #include "bitmaps/obm_size"
 #include "bitmaps/obm_old_close"
 
+#define OBM_FIRST  OBM_LFARROWI    /* First OEM bitmap */
+#define OBM_LAST   OBM_OLD_CLOSE   /* Last OEM bitmap */
+
 static const struct
 {
     char** data;   /* Pointer to bitmap data */
@@ -135,142 +97,102 @@
     { obm_old_close, FALSE },   /* OBM_OLD_CLOSE */
 };
 
-#else  /* USE_XPM */
 
-  /* Include OEM bitmaps */
-#include "bitmaps/check_boxes"
-#include "bitmaps/check_mark"
-#include "bitmaps/menu_arrow"
+  /* Include OEM icons */
+#include "bitmaps/oic_sample"
+#include "bitmaps/oic_hand"
+#include "bitmaps/oic_ques"
+#include "bitmaps/oic_bang"
+#include "bitmaps/oic_note"
+
+#define OIC_FIRST  OIC_SAMPLE      /* First OEM icon */
+#define OIC_LAST   OIC_NOTE        /* Last OEM icon */
+
+static char **OBM_Icons_Data[OIC_LAST-OIC_FIRST+1] =
+{
+    oic_sample,    /* OIC_SAMPLE */
+    oic_hand,      /* OIC_HAND */
+    oic_ques,      /* OIC_QUES */
+    oic_bang,      /* OIC_BANG */
+    oic_note       /* OIC_NOTE */
+};
+
+
+  /* All the colors used in the xpm files must be included in this   */
+  /* list, to make sure that the loaded bitmaps only use colors from */
+  /* the Windows colormap. Note: the PALETTEINDEX() are not really   */
+  /* palette indexes, but system colors that will be converted to    */
+  /* indexes later on.                                               */
 
 static const struct
 {
-    WORD width, height;
-    char *data;
-} OBM_Bitmaps_Data[OBM_LAST-OBM_FIRST+1] =
+    char *   name;
+    COLORREF color;
+} OBM_SymbolicColors[] =
 {
-    { 0, 0, NULL },  /* OBM_LFARROWI */
-    { 0, 0, NULL },  /* OBM_RGARROWI */
-    { 0, 0, NULL },  /* OBM_DNARROWI */
-    { 0, 0, NULL },  /* OBM_UPARROWI */
-    { 0, 0, NULL },  /* OBM_COMBO */
-    { menu_arrow_width, menu_arrow_height, menu_arrow_bits }, /* OBM_MNARROW */
-    { 0, 0, NULL },  /* OBM_LFARROWD */
-    { 0, 0, NULL },  /* OBM_RGARROWD */
-    { 0, 0, NULL },  /* OBM_DNARROWD */
-    { 0, 0, NULL },  /* OBM_UPARROWD */
-    { 0, 0, NULL },  /* OBM_RESTORED */
-    { 0, 0, NULL },  /* OBM_ZOOMD */
-    { 0, 0, NULL },  /* OBM_REDUCED */
-    { 0, 0, NULL },  /* OBM_RESTORE */
-    { 0, 0, NULL },  /* OBM_ZOOM */
-    { 0, 0, NULL },  /* OBM_REDUCE */
-    { 0, 0, NULL },  /* OBM_LFARROW */
-    { 0, 0, NULL },  /* OBM_RGARROW */
-    { 0, 0, NULL },  /* OBM_DNARROW */
-    { 0, 0, NULL },  /* OBM_UPARROW */
-    { 0, 0, NULL },  /* OBM_CLOSE */
-    { 0, 0, NULL },  /* OBM_OLD_RESTORE */
-    { 0, 0, NULL },  /* OBM_OLD_ZOOM */
-    { 0, 0, NULL },  /* OBM_OLD_REDUCE */
-    { 0, 0, NULL },  /* OBM_BTNCORNERS */
-    { check_boxes_width, check_boxes_height,
-          check_boxes_bits },  /* OBM_CHECKBOXES */
-    { check_mark_width, check_mark_height, check_mark_bits },  /* OBM_CHECK */
-    { 0, 0, NULL },  /* OBM_BTSIZE */
-    { 0, 0, NULL },  /* OBM_OLD_LFARROW */
-    { 0, 0, NULL },  /* OBM_OLD_RGARROW */
-    { 0, 0, NULL },  /* OBM_OLD_DNARROW */
-    { 0, 0, NULL },  /* OBM_OLD_UPARROW */
-    { 0, 0, NULL },  /* OBM_SIZE */
-    { 0, 0, NULL },  /* OBM_OLD_CLOSE */
+      /* Black & white must always be the first 2 colors */
+    { "black",            RGB(0,0,0) },
+    { "white",            RGB(255,255,255) },
+    { "red",              RGB(255,0,0) },
+    { "green",            RGB(0,255,0) },
+    { "blue",             RGB(0,0,255) },
+    { "yellow",           RGB(255,255,0) },
+    { "button_face",      PALETTEINDEX(COLOR_BTNFACE) },
+    { "button_shadow",    PALETTEINDEX(COLOR_BTNSHADOW) },
+    { "button_highlight", PALETTEINDEX(COLOR_BTNHIGHLIGHT) },
+    { "button_text",      PALETTEINDEX(COLOR_BTNTEXT) },
+    { "window_frame",     PALETTEINDEX(COLOR_WINDOWFRAME) }
 };
 
-#endif /* USE_XPM */
+#define NB_COLOR_SYMBOLS \
+            (sizeof(OBM_SymbolicColors)/sizeof(OBM_SymbolicColors[0]))
+
+static XpmColorSymbol *OBM_Colors = NULL;
 
 
 /***********************************************************************
  *           OBM_InitColorSymbols
  */
-#ifdef USE_XPM
-static void OBM_InitColorSymbols()
+static BOOL OBM_InitColorSymbols()
 {
     int i;
-    static int already_done = 0;
 
-    if (already_done) return;
+    if (OBM_Colors) return TRUE;  /* Already initialised */
 
-      /* Init the system colors */
+    OBM_Colors = (XpmColorSymbol *) malloc( sizeof(XpmColorSymbol) *
+                                            NB_COLOR_SYMBOLS );
+    if (!OBM_Colors) return FALSE;
     for (i = 0; i < NB_COLOR_SYMBOLS; i++)
     {
-        OBM_Color_Symbols[i].pixel = COLOR_ToPhysical( NULL,
-                                       GetSysColor(OBM_Sys_Colors_Symbols[i]));
+        OBM_Colors[i].name  = OBM_SymbolicColors[i].name;
+        OBM_Colors[i].value = NULL;
+        if (OBM_SymbolicColors[i].color & 0xff000000)  /* PALETTEINDEX */
+            OBM_Colors[i].pixel = COLOR_ToPhysical( NULL,
+                              GetSysColor(OBM_SymbolicColors[i].color & 0xff));
+        else  /* RGB*/
+            OBM_Colors[i].pixel = COLOR_ToPhysical( NULL,
+                                                 OBM_SymbolicColors[i].color );
     }
-      /* Init black and white */
-    OBM_Color_Symbols[i++].pixel = COLOR_ToPhysical( NULL, RGB(0,0,0) );
-    OBM_Color_Symbols[i++].pixel = COLOR_ToPhysical( NULL, RGB(255,255,255) );
-    already_done = 1;
+    return TRUE;
 }
-#endif  /* USE_XPM */
+
 
 /***********************************************************************
- *           OBM_LoadOEMBitmap
+ *           OBM_MakeBitmap
+ *
+ * Allocate a GDI bitmap.
  */
-HBITMAP OBM_LoadOEMBitmap( WORD id )
+static HBITMAP OBM_MakeBitmap( WORD width, WORD height,
+                               WORD bpp, Pixmap pixmap )
 {
-    BITMAPOBJ * bmpObjPtr;
     HBITMAP hbitmap;
-    WORD width, height, bpp;
-    Pixmap pixmap;
-
-    if ((id < OBM_FIRST) || (id > OBM_LAST)) return 0;
-    id -= OBM_FIRST;
-
-#ifdef USE_XPM
-    if (!OBM_Pixmaps_Data[id].data) return 0;
-    {
-        XpmAttributes attrs;
-        int err;
-
-        OBM_InitColorSymbols();
-        attrs.valuemask    = XpmColormap | XpmDepth | XpmColorSymbols;
-        attrs.colormap     = COLOR_WinColormap;
-        if (OBM_Pixmaps_Data[id].color) attrs.depth = bpp = screenDepth;
-        else attrs.depth = bpp = 1;
-        attrs.colorsymbols = (bpp > 1) ? OBM_Color_Symbols : OBM_BW_Symbols;
-        attrs.numsymbols   = (bpp > 1) ? NB_COLOR_SYMBOLS + 2 : 2;
-        
-        if ((err = XpmCreatePixmapFromData( display, rootWindow,
-                                            OBM_Pixmaps_Data[id].data,
-                                            &pixmap, NULL,
-                                            &attrs )) != XpmSuccess)
-        {
-            fprintf( stderr, "Error %d creating pixmap %d\n",
-                     err, OBM_FIRST+id );
-            pixmap = width = height = 0;
-        }
-        else
-        {
-            width = attrs.width;
-            height = attrs.height;
-        }
-    }
-#else
-    if (!OBM_Bitmaps_Data[id].data) return 0;
-    bpp = 1;
-    width  = OBM_Bitmaps_Data[id].width;
-    height = OBM_Bitmaps_Data[id].height;
-    pixmap = XCreateBitmapFromData( display, rootWindow, 
-                                    OBM_Bitmaps_Data[id].data, width, height );
-#endif  /* USE_XPM */
+    BITMAPOBJ * bmpObjPtr;
 
     if (!pixmap) return 0;
 
-      /* Create the BITMAPOBJ */
-    if (!(hbitmap = GDI_AllocObject( sizeof(BITMAPOBJ), BITMAP_MAGIC )))
-    {
-        XFreePixmap( display, pixmap );
-	return 0;
-    }
+    hbitmap = GDI_AllocObject( sizeof(BITMAPOBJ), BITMAP_MAGIC );
+    if (!hbitmap) return 0;
+
     bmpObjPtr = (BITMAPOBJ *) GDI_HEAP_ADDR( hbitmap );
     bmpObjPtr->size.cx = 0;
     bmpObjPtr->size.cy = 0;
@@ -286,3 +208,121 @@
 }
 
 
+/***********************************************************************
+ *           OBM_CreateBitmaps
+ *
+ * Create the 2 bitmaps from XPM data.
+ */
+static BOOL OBM_CreateBitmaps( char **data, BOOL color, BOOL mask,
+                               HBITMAP *hBitmap, HBITMAP *hBitmapMask )
+{
+    Pixmap pixmap, pixmask;
+    XpmAttributes attrs;
+    int err;
+
+    attrs.valuemask    = XpmColormap | XpmDepth | XpmColorSymbols;
+    attrs.colormap     = COLOR_WinColormap;
+    attrs.depth        = color ? screenDepth : 1;
+    attrs.colorsymbols = OBM_Colors;
+    attrs.numsymbols   = (attrs.depth > 1) ? NB_COLOR_SYMBOLS : 2;
+        
+    err = XpmCreatePixmapFromData( display, rootWindow, data,
+                                   &pixmap, &pixmask, &attrs );
+
+    if (err != XpmSuccess) return FALSE;
+    *hBitmap = OBM_MakeBitmap( attrs.width, attrs.height,
+                               attrs.depth, pixmap );
+    if (mask) *hBitmapMask = OBM_MakeBitmap( attrs.width, attrs.height,
+                                             1, pixmask );
+    if (!*hBitmap)
+    {
+        if (pixmap) XFreePixmap( display, pixmap );
+        if (pixmask) XFreePixmap( display, pixmask );
+        if (*hBitmap) GDI_FreeObject( *hBitmap );
+        if (*hBitmapMask) GDI_FreeObject( *hBitmapMask );
+        return FALSE;
+    }
+    else return TRUE;
+}
+
+
+/***********************************************************************
+ *           OBM_LoadBitmap
+ */
+HBITMAP OBM_LoadBitmap( WORD id )
+{
+    HBITMAP hbitmap, hbitmask;
+
+    if ((id < OBM_FIRST) || (id > OBM_LAST)) return 0;
+    id -= OBM_FIRST;
+
+    if (!OBM_InitColorSymbols()) return 0;
+    
+    if (!OBM_CreateBitmaps( OBM_Pixmaps_Data[id].data,
+                            OBM_Pixmaps_Data[id].color,
+                            FALSE, &hbitmap, &hbitmask ))
+    {
+        fprintf( stderr, "Error creating OEM bitmap %d\n", OBM_FIRST+id );
+        return 0;
+    }
+    return hbitmap;
+}
+
+
+/***********************************************************************
+ *           OBM_LoadIcon
+ */
+HICON OBM_LoadIcon( WORD id )
+{
+    HICON hicon;
+    ICONALLOC *pIcon;
+    BITMAPOBJ *bmp;
+
+    if ((id < OIC_FIRST) || (id > OIC_LAST)) return 0;
+    id -= OIC_FIRST;
+
+    if (!OBM_InitColorSymbols()) return 0;
+    
+    if (!(hicon = GlobalAlloc( GMEM_MOVEABLE, sizeof(ICONALLOC) ))) return 0;
+    pIcon = (ICONALLOC *)GlobalLock( hicon );
+
+    if (!OBM_CreateBitmaps( OBM_Icons_Data[id], TRUE, TRUE,
+                            &pIcon->hBitmap, &pIcon->hBitMask ))
+    {
+        fprintf( stderr, "Error creating OEM icon %d\n", OIC_FIRST+id );
+        GlobalFree( hicon );
+        return 0;
+    }
+
+    bmp = (BITMAPOBJ *) GDI_GetObjPtr( pIcon->hBitmap, BITMAP_MAGIC );
+    pIcon->descriptor.Width = bmp->bitmap.bmWidth;
+    pIcon->descriptor.Height = bmp->bitmap.bmHeight;
+    pIcon->descriptor.ColorCount = bmp->bitmap.bmBitsPixel;
+
+    if (pIcon->hBitMask)
+    {
+        BITMAPOBJ *bmpMask;
+
+          /* Invert the mask */
+        bmpMask = (BITMAPOBJ *) GDI_GetObjPtr( pIcon->hBitMask, BITMAP_MAGIC );
+        XSetFunction( display, BITMAP_monoGC, GXinvert );
+        XFillRectangle( display, bmpMask->pixmap, BITMAP_monoGC, 0, 0,
+                        bmpMask->bitmap.bmWidth, bmpMask->bitmap.bmHeight );
+
+          /* Set the masked pixels to black */
+        if (bmp->bitmap.bmBitsPixel != 1)
+        {
+            XSetForeground( display, BITMAP_colorGC,
+                            COLOR_ToPhysical( NULL, RGB(0,0,0) ));
+            XSetBackground( display, BITMAP_colorGC, 0 );
+            XSetFunction( display, BITMAP_colorGC, GXor );
+            XCopyPlane( display, bmpMask->pixmap, bmp->pixmap, BITMAP_colorGC,
+                        0, 0, bmp->bitmap.bmWidth, bmp->bitmap.bmHeight,
+                        0, 0, 1 );
+            XSetFunction( display, BITMAP_colorGC, GXcopy );
+        }
+        XSetFunction( display, BITMAP_monoGC, GXcopy );
+    }
+
+    return hicon;
+}
diff --git a/rc/Imakefile b/rc/Imakefile
index 650fb31..479cf27 100644
--- a/rc/Imakefile
+++ b/rc/Imakefile
@@ -14,7 +14,7 @@
 XCOMM This would be nicer, but it breaks gcc (2.5.8 on Linux)  --AJ
 XCOMM gcc -E -x c -P $(CFLAGS) -imacros ../include/windows.h $*.rc | ./winerc -o $* -v -p $*
 
-RCSRCS = sysres.rc sysresbm.rc
+RCSRCS = sysres.rc
 
 RCOBJS = $(RCSRCS:.rc=.o)
 
diff --git a/rc/sysresbm.rc b/rc/sysresbm.rc
deleted file mode 100644
index 1165f22..0000000
--- a/rc/sysresbm.rc
+++ /dev/null
@@ -1,1852 +0,0 @@
-#ifndef USE_XPM
-32514 CURSOR LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 02 00 01 00 20 20 00 00 00 00 00 00 30 01'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 01 00 00 00 00 00 80 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 3F FF'
- 'F8 00 1F FF F0 00 0F FF E0 00 07 FF C0 00 03 FF'
- '80 00 01 FF 00 00 00 FE 00 00 00 7C 00 00 00 38'
- '00 00 00 10 00 00 00 10 00 00 00 10 00 00 00 10'
- '00 00 00 10 00 00 00 38 00 00 00 38 00 00 00 7C'
- '00 00 00 FE 00 00 01 FF 00 00 03 FF 80 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 01 FF 00 00 01 FF 80 00'
- '03 FF A0 00 0B FF B0 00 1B FF B8 00 3B FF BC 00'
- '7B FF 9E 00 F3 FF CF 01 E7 FF E7 83 CF FF F3 C7'
- '9F FF F9 EF 3F FF FC EE 7F FF FE 6C FF FF FF 6D'
- 'FF FF FF 6D FF FF FF 45 FF FF FF 01 FF FF FE 00'
- 'FF FF FC 00 7F FF F8 00 3F FF F0 00 1F FF E7 FF'
- 'CF FF CF FF E7 FF 9F FF F3 FF BF FF FB FF BF FF'
- 'FB FF BF FF FB FF BF FF FB FF BF FF FB FF 00 00'
- '01 FF 00 00 01 FF'
-}
-
-
-32648 CURSOR LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 02 00 01 00 20 20 00 00 0A 00 09 00 30 01'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 01 00 00 00 00 00 80 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 FC 00 00 01 FE'
- '00 00 03 FF 00 00 07 FF 80 00 07 FF 80 00 07 FF'
- '80 00 07 FF 80 00 07 FF 80 00 03 FF 00 00 01 FE'
- '00 00 00 FC 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF EF FF FF FF E7 FF FF'
- 'FF C3 FF FF FF 8F FF FF FF 1F FF FF FE 3F FF FF'
- 'FC 7F FF FF F8 FF FF FF F1 FF FF FF E3 FF FF FF'
- 'C7 FF FF 03 8F FF FC 00 1F FF F8 FC 3F FF F1 FE'
- '3F FF F3 FF 3F FF E7 FF 9F FF E7 FF 9F FF E7 FF'
- '9F FF E7 FF 9F FF E7 FF 9F FF F3 FF 3F FF F1 FE'
- '3F FF F8 FC 7F FF FC 00 FF FF FF 03 FF FF FF FF'
- 'FF FF FF FF FF FF'
-}
-
-
-32516 ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 FF FF'
- 'FF FF FF FF 00 00 00 00 FF FF FF FF FF FF FF FF'
- 'FF FF F0 00 EE EE EE EE 00 0F FF FF FF FF FF FF'
- 'FF F0 0E EE EE EE EE EE EE E0 0F FF FF FF FF FF'
- 'FF 0E EE EE 78 88 88 88 EE EE E0 FF FF FF FF FF'
- 'F0 EE EE EE 77 88 88 88 EE EE EE 0F FF FF FF FF'
- '0E EE EE EE 77 11 11 88 EE EE EE E0 FF FF FF F0'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE 0F FF FF 0E'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE E0 FF FF 0E'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE E0 FF F0 EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE 0F F0 EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE 0F F0 EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE 0F 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE EE E0 0E EE'
- 'EE EE EE EE 77 77 77 88 EE EE EE EE EE E0 F0 EE'
- 'EE EE EE EE 77 77 77 78 EE EE EE EE EE 0F F0 EE'
- 'EE EE EE EE EE EE EE EE EE EE EE EE EE 0F F0 EE'
- 'EE EE EE EE EE E8 8E EE EE EE EE EE EE 0F FF 0E'
- 'EE EE EE EE E7 88 88 8E EE EE EE EE E0 FF FF 0E'
- 'EE EE EE EE E7 11 11 8E EE EE EE EE E0 FF FF F0'
- 'EE EE EE EE 77 11 11 88 EE EE EE EE 0F FF FF FF'
- '0E EE EE EE 77 11 11 88 EE EE EE E0 FF FF FF FF'
- 'F0 EE EE EE E7 11 11 8E EE EE EE 0F FF FF FF FF'
- 'FF 0E EE EE E7 77 77 8E EE EE E0 FF FF FF FF FF'
- 'FF F0 0E EE EE E7 7E EE EE E0 0F FF FF FF FF FF'
- 'FF FF F0 00 EE EE EE EE 00 0F FF FF FF FF FF FF'
- 'FF FF FF FF 00 00 00 00 FF FF FF FF FF FF 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32515 ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 FF FF'
- 'FF FF FF FF 00 00 00 00 FF FF FF FF FF FF FF FF'
- 'FF FF F0 00 BB BB BB BB 00 0F FF FF FF FF FF FF'
- 'FF F0 0B BB BB B8 8B BB BB B0 0F FF FF FF FF FF'
- 'FF 0B BB BB B7 88 88 8B BB BB B0 FF FF FF FF FF'
- 'F0 BB BB BB B7 11 11 8B BB BB BB 0F FF FF FF FF'
- '0B BB BB BB 77 11 11 88 BB BB BB B0 FF FF FF F0'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB 0F FF FF 0B'
- 'BB BB BB BB B7 11 11 8B BB BB BB BB B0 FF FF 0B'
- 'BB BB BB BB B7 77 77 8B BB BB BB BB B0 FF F0 BB'
- 'BB BB BB BB BB B7 7B BB BB BB BB BB BB 0F F0 BB'
- 'BB BB BB BB BB BB BB BB BB BB BB BB BB 0F F0 BB'
- 'BB BB BB BB 78 88 88 88 BB BB BB BB BB 0F 0B BB'
- 'BB BB BB BB 77 88 88 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 F0 BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB 0F F0 BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB 0F F0 BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB 0F FF 0B'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB B0 FF FF 0B'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB B0 FF FF F0'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB 0F FF FF FF'
- '0B BB BB BB 77 11 11 88 BB BB BB B0 FF FF FF FF'
- 'F0 BB BB BB 77 77 77 88 BB BB BB 0F FF FF FF FF'
- 'FF 0B BB BB 77 77 77 78 BB BB B0 FF FF FF FF FF'
- 'FF F0 0B BB BB BB BB BB BB B0 0F FF FF FF FF FF'
- 'FF FF F0 00 BB BB BB BB 00 0F FF FF FF FF FF FF'
- 'FF FF FF FF 00 00 00 00 FF FF FF FF FF FF 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32513 ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 88 88 88 88 88 88 88 80 00 00 00 00 00 00'
- '00 0F 88 88 88 88 88 88 88 88 00 00 00 00 00 00'
- '00 FF 99 99 99 99 99 99 99 98 80 00 00 00 00 00'
- '0F F9 99 99 99 99 99 99 99 99 88 00 00 00 00 00'
- 'FF 99 99 99 99 99 99 99 99 99 98 80 00 00 00 0F'
- 'F9 99 99 99 99 99 99 99 99 99 99 88 00 00 00 FF'
- '99 99 99 99 99 99 99 99 99 99 99 98 80 00 0F F9'
- '99 99 99 99 99 99 99 99 99 99 99 99 88 00 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- 'FF F9 99 9F 99 99 FF F9 99 F9 99 99 98 80 FF 99'
- '99 9F 99 9F 99 9F 99 9F 99 F9 99 99 98 80 FF 99'
- '99 9F 99 9F 99 9F 99 9F 99 F9 99 99 98 80 FF 99'
- '99 9F 99 9F 99 9F 99 9F 99 F9 99 99 98 80 FF 99'
- '9F F9 99 9F 99 9F 99 9F 99 FF FF 99 98 80 FF 99'
- 'F9 99 99 9F 99 9F 99 9F 99 F9 99 F9 98 80 FF 99'
- 'F9 99 99 9F 99 9F 99 9F 99 F9 99 F9 98 80 FF 99'
- 'F9 99 99 9F 99 9F 99 9F 99 F9 99 F9 98 80 FF 99'
- '9F FF 9F FF FF 99 FF F9 99 FF FF 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 00 0F F9'
- '99 99 99 99 99 99 99 99 99 99 99 99 88 00 00 FF'
- '99 99 99 99 99 99 99 99 99 99 99 98 80 00 00 0F'
- 'F9 99 99 99 99 99 99 99 99 99 99 88 00 00 00 00'
- 'FF 99 99 99 99 99 99 99 99 99 98 80 00 00 00 00'
- '0F F9 99 99 99 99 99 99 99 99 88 00 00 00 00 00'
- '00 FF 99 99 99 99 99 99 99 98 80 00 00 00 00 00'
- '00 0F FF FF FF FF FF FF FF F8 00 00 00 00 00 00'
- '00 00 FF FF FF FF FF FF FF F0 00 00 00 00 FF FF'
- 'FF FF FF 00 01 FF FE 00 00 FF FC 00 00 7F F8 00'
- '00 3F F0 00 00 1F E0 00 00 0F C0 00 00 07 80 00'
- '00 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00'
- '00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00'
- '00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00'
- '00 01 00 00 00 01 00 00 00 01 00 00 00 03 80 00'
- '00 03 C0 00 00 07 E0 00 00 0F F0 00 00 1F F8 00'
- '00 3F FC 00 00 7F FE 00 00 FF FF 00 01 FF'
-}
-
-
-32514 ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 FF FF'
- 'FF FF FF FF 00 00 00 00 FF FF FF FF FF FF FF FF'
- 'FF FF F0 00 BB BB BB BB 00 0F FF FF FF FF FF FF'
- 'FF F0 0B BB BB B8 8B BB BB B0 0F FF FF FF FF FF'
- 'FF 0B BB BB B7 88 88 8B BB BB B0 FF FF FF FF FF'
- 'F0 BB BB BB B7 11 11 8B BB BB BB 0F FF FF FF FF'
- '0B BB BB BB 77 11 11 88 BB BB BB B0 FF FF FF F0'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB 0F FF FF 0B'
- 'BB BB BB BB B7 11 11 8B BB BB BB BB B0 FF FF 0B'
- 'BB BB BB BB B7 77 77 8B BB BB BB BB B0 FF F0 BB'
- 'BB BB BB BB BB B7 7B BB BB BB BB BB BB 0F F0 BB'
- 'BB BB BB BB BB BB BB BB BB BB BB BB BB 0F F0 BB'
- 'BB BB BB BB 78 88 88 88 BB BB BB BB BB 0F 0B BB'
- 'BB BB BB BB 77 88 88 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 BB BB BB BB BB B0 0B BB'
- 'BB BB BB BB 77 11 11 88 8B BB BB BB BB B0 0B BB'
- 'BB BB BB BB B7 71 11 18 8B BB BB BB BB B0 0B BB'
- 'BB BB BB BB B7 71 11 18 88 BB BB BB BB B0 0B BB'
- 'BB BB BB BB B7 77 11 11 88 8B BB BB BB B0 0B BB'
- 'BB BB BB BB BB 77 11 11 18 88 BB BB BB B0 0B BB'
- 'BB BB BB BB BB 77 71 11 11 88 8B BB BB B0 F0 BB'
- 'BB BB BB BB BB B7 77 71 11 18 88 BB BB 0F F0 BB'
- 'BB B7 88 88 88 BB B7 77 11 11 88 BB BB 0F F0 BB'
- 'BB B7 78 88 88 8B BB 77 11 11 88 BB BB 0F FF 0B'
- 'BB B7 71 11 18 88 88 77 11 11 88 BB B0 FF FF 0B'
- 'BB B7 77 11 11 88 88 71 11 18 88 BB B0 FF FF F0'
- 'BB BB 77 71 11 11 11 11 11 88 8B BB 0F FF FF FF'
- '0B BB B7 77 11 11 11 11 88 88 BB B0 FF FF FF FF'
- 'F0 BB BB 77 77 77 77 77 88 8B BB 0F FF FF FF FF'
- 'FF 0B BB B7 77 77 77 77 7B BB B0 FF FF FF FF FF'
- 'FF F0 0B BB BB BB BB BB BB B0 0F FF FF FF FF FF'
- 'FF FF F0 00 BB BB BB BB 00 0F FF FF FF FF FF FF'
- 'FF FF FF FF 00 00 00 00 FF FF FF FF FF FF 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-SYSIDI_STOPICON ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 88 88 88 88 88 88 88 80 00 00 00 00 00 00'
- '00 0F 88 88 88 88 88 88 88 88 00 00 00 00 00 00'
- '00 FF 99 99 99 99 99 99 99 98 80 00 00 00 00 00'
- '0F F9 99 99 99 99 99 99 99 99 88 00 00 00 00 00'
- 'FF 99 99 99 99 99 99 99 99 99 98 80 00 00 00 0F'
- 'F9 99 99 99 99 99 99 99 99 99 99 88 00 00 00 FF'
- '99 99 99 99 99 99 99 99 99 99 99 98 80 00 0F F9'
- '99 99 99 99 99 99 99 99 99 99 99 99 88 00 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- 'FF F9 99 9F 99 99 FF F9 99 F9 99 99 98 80 FF 99'
- '99 9F 99 9F 99 9F 99 9F 99 F9 99 99 98 80 FF 99'
- '99 9F 99 9F 99 9F 99 9F 99 F9 99 99 98 80 FF 99'
- '99 9F 99 9F 99 9F 99 9F 99 F9 99 99 98 80 FF 99'
- '9F F9 99 9F 99 9F 99 9F 99 FF FF 99 98 80 FF 99'
- 'F9 99 99 9F 99 9F 99 9F 99 F9 99 F9 98 80 FF 99'
- 'F9 99 99 9F 99 9F 99 9F 99 F9 99 F9 98 80 FF 99'
- 'F9 99 99 9F 99 9F 99 9F 99 F9 99 F9 98 80 FF 99'
- '9F FF 9F FF FF 99 FF F9 99 FF FF 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 80 FF 99'
- '99 99 99 99 99 99 99 99 99 99 99 99 98 00 0F F9'
- '99 99 99 99 99 99 99 99 99 99 99 99 88 00 00 FF'
- '99 99 99 99 99 99 99 99 99 99 99 98 80 00 00 0F'
- 'F9 99 99 99 99 99 99 99 99 99 99 88 00 00 00 00'
- 'FF 99 99 99 99 99 99 99 99 99 98 80 00 00 00 00'
- '0F F9 99 99 99 99 99 99 99 99 88 00 00 00 00 00'
- '00 FF 99 99 99 99 99 99 99 98 80 00 00 00 00 00'
- '00 0F FF FF FF FF FF FF FF F8 00 00 00 00 00 00'
- '00 00 FF FF FF FF FF FF FF F0 00 00 00 00 FF FF'
- 'FF FF FF 00 01 FF FE 00 00 FF FC 00 00 7F F8 00'
- '00 3F F0 00 00 1F E0 00 00 0F C0 00 00 07 80 00'
- '00 03 00 00 00 01 00 00 00 01 00 00 00 01 00 00'
- '00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00'
- '00 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00'
- '00 01 00 00 00 01 00 00 00 01 00 00 00 03 80 00'
- '00 03 C0 00 00 07 E0 00 00 0F F0 00 00 1F F8 00'
- '00 3F FC 00 00 7F FE 00 00 FF FF 00 01 FF'
-}
-
-
-32512 ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 00 00 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 88 88 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 88 80 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 88 00 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 80 00 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 0F E0 00 00 1F E0 00 00 3F E0 00'
- '00 7F E0 00 00 FF E0 00 01 FF E0 00 03 FF'
-}
-
-
-SYSIDI_HANDHAND ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 FF FF FF FF F0 00 00 00 00 00 00 00 00'
- '00 00 00 FF FF FF FF F0 00 00 00 00 00 00 00 00'
- '00 00 00 FF FF FF FF F0 00 00 00 00 00 00 00 00'
- '00 00 0F FF FF FF FF FF 00 00 00 00 00 00 00 00'
- '00 00 FF FF FF FF FF FF F0 00 00 00 00 00 00 00'
- '00 00 FF FF FF FF FF FF FF 00 00 00 00 00 00 00'
- '00 0F FF FF FF FF FF FF FF F0 00 00 00 00 00 00'
- '00 FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00'
- '0F FF FF FF FF FF FF FF FF FF F0 00 00 00 00 00'
- 'FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 0F'
- 'FF FF FF FF FF FF FF FF FF FF FF 00 00 00 00 0F'
- 'FF 00 FF FF FF FF FF FF FF FF FF F0 00 00 00 0F'
- 'F0 00 0F FF FF FF FF FF FF FF FF F0 00 00 00 0F'
- 'F0 00 0F FF FF FF FF FF FF F0 0F F0 00 00 00 0F'
- 'F0 00 00 FF FF FF FF FF FF F0 00 F0 00 00 00 0F'
- 'F0 00 00 FF FF FF FF FF FF F0 00 F0 00 00 00 0F'
- 'F0 00 00 FF F0 0F FF FF 0F FF 00 00 00 00 00 00'
- '00 00 00 FF F0 00 FF F0 00 FF 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 FF 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 FF 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 0F 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 0F 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 00 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 00 00 00 00 00 00 00'
- '00 00 00 FF 00 00 0F F0 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 07 FF FF 00 07 FF FF 00'
- '07 FF FE 00 03 FF FC 00 01 FF FC 00 00 FF F8 00'
- '00 FF F0 00 00 7F F0 00 00 3F E0 00 00 1F C0 00'
- '00 0F 80 00 00 0F 80 00 00 07 80 00 00 07 80 00'
- '00 07 82 00 00 07 83 00 00 07 83 00 00 07 83 00'
- '00 0F C7 00 00 3F FF 02 00 3F FF 02 00 3F FF 02'
- '00 3F FF 02 04 7F FF 02 04 FF FF 02 07 FF FF 06'
- '0F FF FF 8F 1F FF FF FF FF FF FF FF FF FF'
-}
-
-
-WINEICON ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 80 00 00 80 00 00 00 80 80 00 80 00'
- '00 00 80 00 80 00 80 80 00 00 80 80 80 00 40 40'
- '40 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 03 33 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 03 33 99 55 00 00 00 00 00 00 00 00'
- '00 00 00 00 33 39 99 95 30 00 00 00 00 00 00 00'
- '00 00 00 03 33 33 99 35 53 00 00 00 00 00 00 00'
- '00 00 00 33 33 33 33 33 55 30 00 00 00 00 00 00'
- '00 00 03 33 33 33 33 33 55 33 00 00 00 00 00 00'
- '00 00 33 33 33 33 33 33 35 53 30 00 00 00 00 00'
- '00 03 33 33 33 33 33 33 35 53 33 00 00 00 00 00'
- '00 33 3B BB BB BB BB BB BB 55 33 30 00 00 00 00'
- '00 00 33 BB BE BB BB BB EB B5 50 00 00 00 00 00'
- '00 00 E0 00 00 00 00 00 00 05 50 00 00 00 00 00'
- '00 00 00 00 E0 00 00 0E 00 00 55 00 00 00 00 00'
- '00 00 0E 00 00 00 0E 00 00 00 05 50 00 00 00 00'
- '00 0E 00 00 00 0E 00 00 00 0E 05 55 50 00 00 00'
- '00 00 00 E0 00 00 00 0E 00 00 55 55 00 00 00 00'
- '00 00 00 00 00 E0 00 00 00 00 00 55 00 00 00 00'
- '00 00 E0 0E 00 00 0E 00 0E 00 0E 05 50 00 FF E0'
- '03 FF FC 1F FC 1F FB FF FF EF FB FB EF EF FC 1D'
- 'DC 1F FF E0 83 FF FF FE BF FF FF FE BF FF FF FE'
- 'BF FF FF FE BF FF FF FE BF FF FF FE BF FF FF FE'
- 'BF FF FF FE BF FF FF FE 3F FF FF F8 0F FF FF F0'
- '07 FF FF E0 03 FF FF C0 01 FF FF 80 00 FF FF 00'
- '00 7F FE 00 00 3F FC 00 00 1F F8 00 00 0F F7 00'
- '00 77 EE 00 00 3B C1 F7 EF 01 FE 00 00 1F FE FE'
- 'FE 87 FF DF EF 0F FF FD FF CF FF 6F BB A7'
-}
-
-
-PORTRAIT ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '88 88 88 88 88 88 88 88 88 88 88 88 80 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C CC 7C C7 C7 C7 C7 C7 CC 7C 7C 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C 7C 7C C7 C7 CC 7C C7 C7 CC 7C 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C C7 C7 CC C7 CC 7C 7C C7 CC CC 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C CC 7C CC 7C 7C C7 C7 CC 7C CC 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C 7C 7C C7 CC 7C 7C C7 CC 7C 7C 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C 7C 7C C7 C7 CC 7C C7 C7 CC 7C 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C C7 C7 CC C7 CC 7C 7C C7 CC CC 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C CC 7C CC 7C 7C C7 C7 CC 7C CC 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '7C 7C 7C C7 CC 7C 7C C7 CC 7C 7C 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '77 7C C7 C7 CC 7C 7C 7C CC 7C 7C 70 80 00 00 00'
- '77 77 77 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '70 00 00 77 77 77 77 77 77 77 77 70 80 00 00 00'
- '77 07 77 07 77 77 77 77 77 77 77 70 80 00 00 00'
- '77 07 77 07 77 77 77 77 70 00 00 00 00 00 00 00'
- '77 00 00 77 77 77 77 77 70 FF FF 00 00 00 00 00'
- '77 07 77 07 77 77 77 77 70 FF F0 00 00 00 00 00'
- '77 07 77 07 77 77 77 77 70 FF 00 00 00 00 00 00'
- '70 00 00 77 77 77 77 77 70 F0 00 00 00 00 00 00'
- '77 77 77 77 77 77 77 77 70 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 07 E0 00 00 07 E0 00 00 07 E0 00'
- '00 07 E0 00 00 0F E0 00 00 1F E0 00 00 3F E0 00'
- '00 7F E0 00 00 FF E0 00 01 FF E0 00 03 FF'
-}
-
-
-LANDSCAP ICON LOADONCALL MOVEABLE DISCARDABLE 
-{
- '00 00 01 00 01 00 20 20 10 00 00 00 00 00 E8 02'
- '00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00'
- '00 00 01 00 04 00 00 00 00 00 00 02 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 BF 00 00 BF 00 00 00 BF BF 00 BF 00'
- '00 00 BF 00 BF 00 BF BF 00 00 C0 C0 C0 00 80 80'
- '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00'
- '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 88'
- '88 88 88 88 88 88 88 88 88 88 88 88 88 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 08 00 00 77'
- '77 77 77 77 77 77 77 77 77 77 77 77 08 00 00 7C'
- 'C7 C7 CC C7 CC CC 7C C7 CC 7C CC C7 08 00 00 77'
- '77 77 77 77 77 77 77 77 77 77 77 77 08 00 00 7C'
- 'CC 7C CC 7C 7C C7 CC 7C 7C C7 CC C7 08 00 00 77'
- '77 77 77 77 77 77 77 77 77 77 77 77 08 00 00 7C'
- '7C 7C C7 CC 7C C7 C7 CC 7C C7 C7 C7 08 00 00 77'
- '77 77 77 77 77 77 77 77 77 77 77 77 08 00 00 77'
- '7C C7 C7 CC 7C CC 7C C7 CC C7 C7 C7 08 00 00 77'
- '77 77 77 77 77 77 77 77 77 77 77 77 08 00 00 70'
- '00 00 77 77 77 77 77 77 77 77 77 77 08 00 00 77'
- '07 77 07 77 77 77 77 77 77 77 77 77 08 00 00 77'
- '07 77 07 77 77 77 77 77 77 00 00 00 00 00 00 77'
- '00 00 77 77 77 77 77 77 77 0F FF F0 00 00 00 77'
- '07 77 07 77 77 77 77 77 77 0F FF 00 00 00 00 77'
- '07 77 07 77 77 77 77 77 77 0F F0 00 00 00 00 70'
- '00 00 77 77 77 77 77 77 77 0F 00 00 00 00 00 77'
- '77 77 77 77 77 77 77 77 77 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF C0 00 00 03 80 00'
- '00 03 80 00 00 03 80 00 00 03 80 00 00 03 80 00'
- '00 03 80 00 00 03 80 00 00 03 80 00 00 03 80 00'
- '00 03 80 00 00 03 80 00 00 03 80 00 00 03 80 00'
- '00 07 80 00 00 0F 80 00 00 1F 80 00 00 3F 80 00'
- '00 7F 80 00 00 FF 80 00 01 FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
-}
-
-
-32754 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 7F FF FF 77 77 78 80 00 00 0F 77'
- '77 FF FF FF F7 77 78 80 00 00 0F 77 7F F9 99 99'
- 'FF 77 78 80 00 00 0F 77 88 99 99 99 9F F7 78 80'
- '00 00 0F 77 88 99 99 99 9F F7 78 80 00 00 0F 77'
- '88 99 99 99 9F F7 78 80 00 00 0F 77 88 99 99 99'
- '9F F7 78 80 00 00 0F 77 88 99 99 99 9F F7 78 80'
- '00 00 0F 77 78 89 99 99 FF 77 78 80 00 00 0F 77'
- '77 88 88 88 F7 77 78 80 00 00 0F 77 77 78 88 88'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32753 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 00 77 00 77 78 80 00'
- '00 00 0F 77 77 00 00 00 77 78 80 00 00 00 0F 77'
- '77 00 00 00 77 78 80 00 00 00 0F 77 77 00 00 00'
- '77 78 80 00 00 00 0F 77 77 00 00 00 77 78 80 00'
- '00 00 0F 77 00 00 00 00 00 78 80 00 00 00 0F 77'
- '70 00 00 00 07 78 80 00 00 00 0F 77 77 00 00 00'
- '77 78 80 00 00 00 0F 77 77 70 00 07 77 78 80 00'
- '00 00 0F 77 77 77 00 77 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32752 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 77 00 77 77 78 80 00'
- '00 00 0F 77 77 70 00 07 77 78 80 00 00 00 0F 77'
- '77 00 00 00 77 78 80 00 00 00 0F 77 70 00 00 00'
- '07 78 80 00 00 00 0F 77 00 00 00 00 00 78 80 00'
- '00 00 0F 77 77 00 00 00 77 78 80 00 00 00 0F 77'
- '77 00 00 00 77 78 80 00 00 00 0F 77 77 00 00 00'
- '77 78 80 00 00 00 0F 77 77 00 00 00 77 78 80 00'
- '00 00 0F 77 77 00 77 00 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32751 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 87'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 77 70 77 77 78 80 00'
- '00 00 0F 77 77 77 70 07 77 78 80 00 00 00 0F 77'
- '00 00 00 00 77 78 80 00 00 00 0F 77 00 00 00 00'
- '07 78 80 00 00 00 0F 77 70 00 00 00 00 78 80 00'
- '00 00 0F 77 70 00 00 00 00 78 80 00 00 00 0F 77'
- '00 00 00 00 07 78 80 00 00 00 0F 77 00 00 00 00'
- '77 78 80 00 00 00 0F 77 77 77 70 07 77 78 80 00'
- '00 00 0F 77 77 77 70 77 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32750 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 70 77 77 77 78 80 00'
- '00 00 0F 77 77 00 77 77 77 78 80 00 00 00 0F 77'
- '70 00 00 00 00 78 80 00 00 00 0F 77 00 00 00 00'
- '00 78 80 00 00 00 0F 70 00 00 00 00 07 78 80 00'
- '00 00 0F 70 00 00 00 00 07 78 80 00 00 00 0F 77'
- '00 00 00 00 00 78 80 00 00 00 0F 77 70 00 00 00'
- '00 78 80 00 00 00 0F 77 77 00 77 77 77 78 80 00'
- '00 00 0F 77 77 70 77 77 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32749 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 70 07 77 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 70 08 80'
- '07 77 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 70 00 88 88 00 07 78 80 00 00 0F 77'
- '77 70 88 88 07 77 78 80 00 00 0F 77 77 70 88 88'
- '07 77 78 80 00 00 0F 77 77 70 88 88 07 77 78 80'
- '00 00 0F 77 77 70 00 00 07 77 78 80 00 00 0F 77'
- '77 70 07 70 07 77 78 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32748 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 70 00 00 00 00 07 78 80'
- '00 00 0F 77 77 00 00 00 00 77 78 80 00 00 0F 77'
- '77 70 00 00 07 77 78 80 00 00 0F 77 77 77 00 00'
- '77 77 78 80 00 00 0F 77 77 77 70 07 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32747 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 70 07 77 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 70 08 80'
- '07 77 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 70 00 00 00 00 07 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 70 00 00 00'
- '00 07 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 77 70 08 80 07 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 77 70 07'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32746 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 FF FF FF FF FF FF FF FF F0 00 00 08 FF'
- 'FF FF FF FF FF FF FF F0 00 00 08 77 77 77 77 77'
- '77 77 7F F0 00 00 08 77 77 77 77 77 77 77 7F F0'
- '00 00 08 77 77 77 70 07 77 77 7F F0 00 00 08 77'
- '77 77 00 00 77 77 7F F0 00 00 08 77 77 70 08 80'
- '07 77 7F F0 00 00 08 77 77 00 88 88 00 77 7F F0'
- '00 00 08 77 70 00 88 88 00 07 7F F0 00 00 08 77'
- '77 70 88 88 07 77 7F F0 00 00 08 77 77 70 88 88'
- '07 77 7F F0 00 00 08 77 77 70 88 88 07 77 7F F0'
- '00 00 08 77 77 70 00 00 07 77 7F F0 00 00 08 77'
- '77 70 07 70 07 77 7F F0 00 00 08 77 77 77 77 77'
- '77 77 7F F0 00 00 08 77 77 77 77 77 77 77 7F F0'
- '00 00 08 77 77 77 77 77 77 77 7F F0 00 00 08 88'
- '88 88 88 88 88 88 88 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32745 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 0F FF FF FF FF FF FF FF FF F0 00 00 08 FF'
- 'FF FF FF FF FF FF FF F0 00 00 08 77 77 77 77 77'
- '77 77 7F F0 00 00 08 77 77 77 77 77 77 77 7F F0'
- '00 00 08 77 77 77 77 77 77 77 7F F0 00 00 08 77'
- '77 77 77 77 77 77 7F F0 00 00 08 77 77 77 77 77'
- '77 77 7F F0 00 00 08 77 70 00 00 00 00 07 7F F0'
- '00 00 08 77 77 00 00 00 00 77 7F F0 00 00 08 77'
- '77 70 00 00 07 77 7F F0 00 00 08 77 77 77 00 00'
- '77 77 7F F0 00 00 08 77 77 77 70 07 77 77 7F F0'
- '00 00 08 77 77 77 77 77 77 77 7F F0 00 00 08 77'
- '77 77 77 77 77 77 7F F0 00 00 08 77 77 77 77 77'
- '77 77 7F F0 00 00 08 77 77 77 77 77 77 77 7F F0'
- '00 00 08 77 77 77 77 77 77 77 7F F0 00 00 08 88'
- '88 88 88 88 88 88 88 F0 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32744 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 70 07 77 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 70 08 80'
- '07 77 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 70 00 00 00 00 07 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 70 00 00 00'
- '00 07 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 77 70 08 80 07 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 77 70 07'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32743 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 0F FF FF FF FF FF FF FF F0 00 00 00 08 FF'
- 'FF FF FF FF FF FF F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 77 77 00 77 00 77 7F F0 00'
- '00 00 08 77 77 00 00 00 77 7F F0 00 00 00 08 77'
- '77 00 00 00 77 7F F0 00 00 00 08 77 77 00 00 00'
- '77 7F F0 00 00 00 08 77 77 00 00 00 77 7F F0 00'
- '00 00 08 77 00 00 00 00 00 7F F0 00 00 00 08 77'
- '70 00 00 00 07 7F F0 00 00 00 08 77 77 00 00 00'
- '77 7F F0 00 00 00 08 77 77 70 00 07 77 7F F0 00'
- '00 00 08 77 77 77 00 77 77 7F F0 00 00 00 08 77'
- '77 77 77 77 77 7F F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 88 88 88 88 88 88 88 F0 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32742 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 0F FF FF FF FF FF FF FF F0 00 00 00 08 FF'
- 'FF FF FF FF FF FF F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 77 77 77 00 77 77 7F F0 00'
- '00 00 08 77 77 70 00 07 77 7F F0 00 00 00 08 77'
- '77 00 00 00 77 7F F0 00 00 00 08 77 70 00 00 00'
- '07 7F F0 00 00 00 08 77 00 00 00 00 00 7F F0 00'
- '00 00 08 77 77 00 00 00 77 7F F0 00 00 00 08 77'
- '77 00 00 00 77 7F F0 00 00 00 08 77 77 00 00 00'
- '77 7F F0 00 00 00 08 77 77 00 00 00 77 7F F0 00'
- '00 00 08 77 77 00 77 00 77 7F F0 00 00 00 08 77'
- '77 77 77 77 77 7F F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 88 88 88 88 88 88 88 F0 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32741 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 0F FF FF FF FF FF FF FF F0 00 00 00 08 FF'
- 'FF FF FF FF FF FF F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 77 77 77 70 77 77 7F F0 00'
- '00 00 08 77 77 77 70 07 77 7F F0 00 00 00 08 77'
- '00 00 00 00 77 7F F0 00 00 00 08 77 00 00 00 00'
- '07 7F F0 00 00 00 08 77 70 00 00 00 00 7F F0 00'
- '00 00 08 77 70 00 00 00 00 7F F0 00 00 00 08 77'
- '00 00 00 00 07 7F F0 00 00 00 08 77 00 00 00 00'
- '77 7F F0 00 00 00 08 77 77 77 70 07 77 7F F0 00'
- '00 00 08 77 77 77 70 77 77 7F F0 00 00 00 08 77'
- '77 77 77 77 77 7F F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 88 88 88 88 88 88 88 F0 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32740 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 0F FF FF FF FF FF FF FF F0 00 00 00 08 FF'
- 'FF FF FF FF FF FF F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 77 77 70 77 77 77 7F F0 00'
- '00 00 08 77 77 00 77 77 77 7F F0 00 00 00 08 77'
- '70 00 00 00 00 7F F0 00 00 00 08 77 00 00 00 00'
- '00 7F F0 00 00 00 08 70 00 00 00 00 07 7F F0 00'
- '00 00 08 70 00 00 00 00 07 7F F0 00 00 00 08 77'
- '00 00 00 00 00 7F F0 00 00 00 08 77 70 00 00 00'
- '00 7F F0 00 00 00 08 77 77 00 77 77 77 7F F0 00'
- '00 00 08 77 77 70 77 77 77 7F F0 00 00 00 08 77'
- '77 77 77 77 77 7F F0 00 00 00 08 77 77 77 77 77'
- '77 7F F0 00 00 00 08 88 88 88 88 88 88 88 F0 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32739 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 7E 00 00 00 00 00 00 00 3E 00 00 00 28 00'
- '00 00 10 00 00 00 10 00 00 00 01 00 01 00 00 00'
- '00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 FF FF FF 00 FF FF'
- '4C 00 FF FF 40 00 FD FF 00 00 FC FF 7C 00 FC 7F'
- '00 00 FE 3F 40 00 FE 1F 94 03 FE 0F 01 10 FE 0F'
- '00 00 FE 1F FA 00 FE 3F 41 8A FC 7F E2 8D FC FF'
- '00 00 FD FF BE 00 FF FF 00 00 FF FF F4 00'
-}
-
-
-32738 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 00 00 00 00 00 78 80 00'
- '00 00 0F 77 77 77 77 77 77 78 80 00 00 00 0F 77'
- '77 77 00 77 77 78 80 00 00 00 0F 77 77 70 00 07'
- '77 78 80 00 00 00 0F 77 77 00 CC 00 77 78 80 00'
- '00 00 0F 77 70 0C CC C0 07 78 80 00 00 00 0F 77'
- '00 0C CC C0 00 78 80 00 00 00 0F 77 77 0C CC C0'
- '77 78 80 00 00 00 0F 77 77 0C CC C0 77 78 80 00'
- '00 00 0F 77 77 00 00 00 77 78 80 00 00 00 0F 77'
- '77 00 77 00 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32737 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 00 77 00 77 78 80 00'
- '00 00 0F 77 77 00 00 00 77 78 80 00 00 00 0F 77'
- '77 00 00 00 77 78 80 00 00 00 0F 77 77 00 00 00'
- '77 78 80 00 00 00 0F 77 77 00 00 00 77 78 80 00'
- '00 00 0F 77 00 00 00 00 00 78 80 00 00 00 0F 77'
- '70 00 00 00 07 78 80 00 00 00 0F 77 77 00 00 00'
- '77 78 80 00 00 00 0F 77 77 70 00 07 77 78 80 00'
- '00 00 0F 77 77 77 00 77 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32736 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 77 00 77 77 78 80 00'
- '00 00 0F 77 77 70 00 07 77 78 80 00 00 00 0F 77'
- '77 00 00 00 77 78 80 00 00 00 0F 77 70 00 00 00'
- '07 78 80 00 00 00 0F 77 00 00 00 00 00 78 80 00'
- '00 00 0F 77 77 00 00 00 77 78 80 00 00 00 0F 77'
- '77 00 00 00 77 78 80 00 00 00 0F 77 77 00 00 00'
- '77 78 80 00 00 00 0F 77 77 00 00 00 77 78 80 00'
- '00 00 0F 77 77 00 77 00 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32735 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 87'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 77 70 77 77 78 80 00'
- '00 00 0F 77 77 77 70 07 77 78 80 00 00 00 0F 77'
- '00 00 00 00 77 78 80 00 00 00 0F 77 00 00 00 00'
- '07 78 80 00 00 00 0F 77 70 00 00 00 00 78 80 00'
- '00 00 0F 77 70 00 00 00 00 78 80 00 00 00 0F 77'
- '00 00 00 00 07 78 80 00 00 00 0F 77 00 00 00 00'
- '77 78 80 00 00 00 0F 77 77 77 70 07 77 78 80 00'
- '00 00 0F 77 77 77 70 77 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32734 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 70 77 77 77 78 80 00'
- '00 00 0F 77 77 00 77 77 77 78 80 00 00 00 0F 77'
- '70 00 00 00 00 78 80 00 00 00 0F 77 00 00 00 00'
- '00 78 80 00 00 00 0F 70 00 00 00 00 07 78 80 00'
- '00 00 0F 70 00 00 00 00 07 78 80 00 00 00 0F 77'
- '00 00 00 00 00 78 80 00 00 00 0F 77 70 00 00 00'
- '00 78 80 00 00 00 0F 77 77 00 77 77 77 78 80 00'
- '00 00 0F 77 77 70 77 77 77 78 80 00 00 00 0F 77'
- '77 77 77 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32767 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 F8 F8 0F 77 77 77 77 77'
- '77 77 78 80 F8 F8 0F 77 77 77 77 77 77 77 78 80'
- 'F8 F8 0F 77 77 77 77 77 77 77 78 80 F8 F8 0F 77'
- '77 7F FF FF 77 77 78 80 F8 F8 0F 77 77 8F FF FF'
- 'F7 77 78 80 F8 F8 0F 77 78 88 99 9F FF 77 78 80'
- '4E 04 0F 77 78 89 99 99 FF 77 78 80 4D 00 0F 77'
- '78 89 99 99 FF 77 78 80 06 03 0F 77 78 89 99 99'
- 'FF 77 78 80 27 00 0F 77 78 88 99 9F FF 77 78 80'
- 'C9 0B 0F 77 77 88 88 88 F7 77 78 80 34 00 0F 77'
- '77 78 88 88 77 77 78 80 45 09 0F 77 77 77 77 77'
- '77 77 78 80 D9 00 0F 77 77 77 77 77 77 77 78 80'
- '0E 0C 0F 77 77 77 77 77 77 77 78 80 38 00 0F FF'
- 'FF FF FF FF FF FF FF 80 69 03 00 00 00 00 00 00'
- '00 00 00 00 44 00'
-}
-
-
-32766 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF F0 0F FF FF 00 00 00 FF FF'
- 'FF FF FF F0 0F FF FF 00 00 00 FF FF FF FF FF F0'
- '0F FF FF 00 00 00 FF FF FF FF FF F0 0F FF FF 00'
- '00 00 FF FF FF FF FF F0 0F FF FF 00 00 00 FF FF'
- 'FF FF FF F0 0F FF FF 00 00 00 FF FF F0 00 00 00'
- '0F FF FF 00 00 00 FF FF F0 00 00 00 0F FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00'
-}
-
-
-32765 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF 00 FF 00 FF FF FF 00'
- '00 00 FF FF FF 00 00 00 FF FF FF 00 00 00 FF FF'
- 'FF 00 00 00 FF FF FF 00 00 00 FF FF FF 00 00 00'
- 'FF FF FF 00 00 00 FF FF FF 00 00 00 FF FF FF 00'
- '00 00 FF FF 00 00 00 00 00 FF FF 00 00 00 FF FF'
- 'F0 00 00 00 0F FF FF 00 00 00 FF FF FF 00 00 00'
- 'FF FF FF 00 00 00 FF FF FF F0 00 0F FF FF FF 00'
- '00 00 FF FF FF FF 00 FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00'
-}
-
-
-32764 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF 00 FF FF FF FF 00'
- '00 00 FF FF FF F0 00 0F FF FF FF 00 00 00 FF FF'
- 'FF 00 00 00 FF FF FF 00 00 00 FF FF F0 00 00 00'
- '0F FF FF 00 00 00 FF FF 00 00 00 00 00 FF FF 00'
- '00 00 FF FF FF 00 00 00 FF FF FF 00 00 00 FF FF'
- 'FF 00 00 00 FF FF FF 00 00 00 FF FF FF 00 00 00'
- 'FF FF FF 00 00 00 FF FF FF 00 00 00 FF FF FF 00'
- '00 00 FF FF FF 00 FF 00 FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00'
-}
-
-
-32763 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF F0 FF FF FF FF 00'
- '00 00 FF FF FF FF F0 0F FF FF FF 00 00 00 FF FF'
- '00 00 00 00 FF FF FF 00 00 00 FF FF 00 00 00 00'
- '0F FF FF 00 00 00 FF FF F0 00 00 00 00 FF FF 00'
- '00 00 FF FF F0 00 00 00 00 FF FF 00 00 00 FF FF'
- '00 00 00 00 0F FF FF 00 00 00 FF FF 00 00 00 00'
- 'FF FF FF 00 00 00 FF FF FF FF F0 0F FF FF FF 00'
- '00 00 FF FF FF FF F0 FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00'
-}
-
-
-32762 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF F0 FF FF FF FF FF 00'
- '00 00 FF FF FF 00 FF FF FF FF FF 00 00 00 FF FF'
- 'F0 00 00 00 00 FF FF 00 00 00 FF FF 00 00 00 00'
- '00 FF FF 00 00 00 FF F0 00 00 00 00 0F FF FF 00'
- '00 00 FF F0 00 00 00 00 0F FF FF 00 00 00 FF FF'
- '00 00 00 00 00 FF FF 00 00 00 FF FF F0 00 00 00'
- '00 FF FF 00 00 00 FF FF FF 00 FF FF FF FF FF 00'
- '00 00 FF FF FF F0 FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00'
-}
-
-
-32761 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 80 00 00 00 0F 88'
- '88 88 88 88 88 88 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F 77 77 77 00 00 00 78 80 00'
- '00 00 0F 77 77 77 77 00 00 78 80 00 00 00 0F 77'
- '77 77 70 00 00 78 80 00 00 00 0F 77 77 77 00 00'
- '00 78 80 00 00 00 0F 77 77 77 70 00 70 78 80 00'
- '00 00 0F 70 77 07 77 07 70 78 80 00 00 00 0F 70'
- '70 00 77 77 77 78 80 00 00 00 0F 70 00 00 07 77'
- '77 78 80 00 00 00 0F 70 00 00 77 77 77 78 80 00'
- '00 00 0F 70 00 07 77 77 77 78 80 00 00 00 0F 70'
- '00 00 07 77 77 78 80 00 00 00 0F 77 77 77 77 77'
- '77 78 80 00 00 00 0F FF FF FF FF FF FF FF 80 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00'
-}
-
-
-32760 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 36 05 00 00 00 00 00 00 36 04 00 00 28 00'
- '00 00 10 00 00 00 10 00 00 00 01 00 08 00 00 00'
- '00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 C0 DC C0 00 F0 CA A6 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 FB'
- 'FF 00 A4 A0 A0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF 00 FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF FF FF FF 00 00 00 00 00 FF'
- 'FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00'
- 'FF FF FF FF FF FF FF 00 00 00 00 00 FF FF 00 00'
- '00 FF FF FF FF FF FF FF FF 00 00 FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- '00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF 00 00 00 FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF 00 00 FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF 00 FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF'
-}
-
-
-32759 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 36 02 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 1C 00 00 00 1C 00 00 00 01 00 04 00 00 00'
- '00 00 C0 01 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF 00 00 0F FF FF FF FF 00'
- '00 0F FF FF 00 00 FF F0 FF FF F0 FF FF FF F0 FF'
- 'FF F0 FF FF 00 00 FF 0F FF FF FF 0F FF FF 0F FF'
- 'FF FF 0F FF 00 00 F0 FF FF FF FF F0 FF F0 FF F0'
- '00 FF F0 FF 00 00 0F FF FF FF FF FF 0F 0F FF 00'
- '00 0F FF 0F 00 00 0F FF FF FF FF FF 0F 0F F0 00'
- '00 00 FF 0F 00 00 0F FF FF FF FF FF 0F 0F F0 00'
- '00 00 FF 0F 00 00 0F FF FF FF FF FF 0F 0F F0 00'
- '00 00 FF 0F 00 00 0F FF FF FF FF FF 0F 0F FF 00'
- '00 0F FF 0F 00 00 F0 FF FF FF FF F0 FF F0 FF F0'
- '00 FF F0 FF 00 00 FF 0F FF FF FF 0F FF FF 0F FF'
- 'FF FF 0F FF 00 00 FF F0 FF FF F0 FF FF FF F0 FF'
- 'FF F0 FF FF 00 00 FF FF 00 00 0F FF FF FF FF 00'
- '00 0F FF FF 00 00 FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 0F FF FF FF FF FF F0 00 FF FF'
- 'FF FF FF 00 00 00 0F FF FF FF FF FF F0 0F 0F FF'
- 'FF FF F0 F0 00 00 0F FF FF FF FF FF F0 0F F0 FF'
- 'FF FF 0F F0 00 00 0F FF FF FF FF FF F0 0F FF 0F'
- 'FF F0 FF F0 00 00 0F FF FF FF FF FF F0 0F FF F0'
- 'FF 0F FF F0 00 00 0F FF FF FF FF FF F0 0F FF FF'
- '00 FF FF F0 00 00 0F FF FF FF FF FF F0 0F FF FF'
- '00 FF FF F0 00 00 0F FF FF FF FF FF F0 0F FF F0'
- 'FF 0F FF F0 00 00 0F FF FF FF FF FF F0 0F FF 0F'
- 'FF F0 FF F0 00 00 0F FF FF FF FF FF F0 0F F0 FF'
- 'FF FF 0F F0 00 00 0F FF FF FF FF FF F0 0F 0F FF'
- 'FF FF F0 F0 00 00 0F FF FF FF FF FF F0 00 FF FF'
- 'FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32758 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 4E 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 12 00 00 00 12 00 00 00 01 00 04 00 00 00'
- '00 00 D8 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF FF FF FF FF FF FF FF FF 00 00 00 FF FF'
- 'FF FF FF FF FF FF FF 00 00 00 FF FF FF FF FF FF'
- 'FF FF FF 00 00 00 FF FF FF FF FF FF FF FF FF 00'
- '00 00 FF F0 00 FF FF FF FF FF FF 00 00 00 FF 0F'
- 'FF 0F FF FF FF FF FF 00 00 00 F0 FF FF F0 FF FF'
- '00 00 FF 00 00 00 0F FF FF FF 0F F0 00 00 0F 00'
- '00 00 0F FF FF FF 0F F0 00 00 0F 00 00 00 0F FF'
- 'FF FF 0F F0 00 00 0F 00 00 00 F0 FF FF F0 FF F0'
- '00 00 0F 00 00 00 FF 0F FF 0F FF FF 00 00 FF 00'
- '00 00 FF F0 00 FF FF FF FF FF FF 00 00 00'
-}
-
-
-32757 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 70 07 77 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 70 08 80'
- '07 77 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 70 00 88 88 00 07 78 80 00 00 0F 77'
- '77 70 88 88 07 77 78 80 00 00 0F 77 77 70 88 88'
- '07 77 78 80 00 00 0F 77 77 70 88 88 07 77 78 80'
- '00 00 0F 77 77 70 00 00 07 77 78 80 00 00 0F 77'
- '77 70 07 70 07 77 78 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32756 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 70 00 00 00 00 07 78 80'
- '00 00 0F 77 77 00 00 00 00 77 78 80 00 00 0F 77'
- '77 70 00 00 07 77 78 80 00 00 0F 77 77 77 00 00'
- '77 77 78 80 00 00 0F 77 77 77 70 07 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32755 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 70 07 77 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 70 08 80'
- '07 77 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 70 00 00 00 00 07 78 80 00 00 0F 77'
- '77 77 77 77 77 77 78 80 00 00 0F 77 70 00 00 00'
- '00 07 78 80 00 00 0F 77 77 00 88 88 00 77 78 80'
- '00 00 0F 77 77 70 08 80 07 77 78 80 00 00 0F 77'
- '77 77 00 00 77 77 78 80 00 00 0F 77 77 77 70 07'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-32520 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 2A 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 0F 00 00 00 01 00 04 00 00 00'
- '00 00 B4 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF FF'
- '00 00 FF FF FF FF FF FF FF FF FF FF 00 00 FF F0'
- '00 00 00 00 00 00 0F FF 9B 00 FF 0E 6E 6E 6E 6E'
- '6E 6E 0F FF 81 02 FF 06 E6 E6 E6 E6 E6 E6 0F FF'
- '00 00 FF 0E 6E 6E 6E 6E 6E 6E 0F FF 0A 00 FF 06'
- 'E6 E6 E6 E6 E6 E6 0F FF 10 00 FF 0E 6E 6E 6E 6E'
- '6E 6E 0F FF FF FF FF 06 E6 E6 E6 E6 E6 E6 0F FF'
- '00 00 FF 0E 6E 6E 6E 6E 6E 6E 0F FF 7C 01 FF 06'
- 'E6 E6 E6 E6 E6 E6 0F FF 06 01 FF 00 00 00 00 00'
- '00 00 FF FF 12 01 FF F0 66 66 0F FF FF FF FF FF'
- '1E 01 FF FF 00 00 FF FF FF FF FF FF 2A 01 FF FF'
- 'FF FF FF FF FF FF FF FF 36 01'
-}
-
-
-32521 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 2A 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 0F 00 00 00 01 00 04 00 00 00'
- '00 00 B4 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF FF'
- '00 00 FF 00 00 00 00 00 00 0F FF FF 00 00 FF 00'
- '66 66 66 66 66 60 FF FF 9B 00 FF 06 06 66 66 66'
- '66 66 0F FF 81 02 FF 00 60 66 66 66 66 66 60 FF'
- '00 00 FF 06 06 06 66 66 66 66 66 0F 0B 00 FF 00'
- '60 60 66 66 66 66 66 0F 10 00 FF 06 06 00 00 00'
- '00 00 00 FF FF FF FF 00 60 60 60 60 60 60 FF FF'
- '00 00 FF 06 06 06 06 06 06 00 FF FF 7C 01 FF 00'
- '60 60 00 00 00 0F FF FF 06 01 FF F0 06 00 FF FF'
- 'FF FF FF FF 12 01 FF FF 00 0F FF FF FF FF FF FF'
- '1E 01 FF FF FF FF FF FF FF FF FF FF 2A 01 FF FF'
- 'FF FF FF FF FF FF FF FF 36 01'
-}
-
-
-32522 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 2A 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 0F 00 00 00 01 00 04 00 00 00'
- '00 00 B4 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF FF'
- '00 00 FF FF FF FF FF FF FF FF FF FF 00 00 F0 00'
- '00 00 00 00 00 00 00 0F F9 F9 F0 88 88 88 88 88'
- '88 88 88 0F F9 F9 F0 77 79 97 77 77 00 77 78 0F'
- 'F9 F9 F0 77 79 97 77 77 00 77 78 0F F9 F9 F0 77'
- '77 77 77 77 77 77 78 0F F9 F9 F0 77 70 00 00 00'
- '00 77 78 0F F9 F9 F0 70 00 00 00 00 00 00 78 0F'
- '00 00 F0 77 70 00 00 00 00 77 78 0F 00 00 F0 77'
- '77 77 77 77 77 77 78 0F 03 00 F0 77 77 77 77 77'
- '77 77 78 0F 04 00 F0 00 00 00 00 00 00 00 00 0F'
- '03 00 FF FF FF FF FF FF FF FF FF FF 00 00 FF FF'
- 'FF FF FF FF FF FF FF FF 00 00'
-}
-
-
-32523 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 2A 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 0F 00 00 00 01 00 04 00 00 00'
- '00 00 B4 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF FF'
- '00 00 FF FF FF FF FF FF FF FF FF FF 00 00 F0 00'
- '00 00 00 00 00 00 00 0F 00 00 F0 88 88 88 88 88'
- '88 88 88 0F 00 00 F0 77 77 77 77 77 7A A7 78 0F'
- '00 00 F0 77 77 77 77 77 7A A7 78 0F 00 00 F0 88'
- '88 88 88 88 88 88 88 0F 00 00 F0 77 77 77 77 77'
- '77 77 78 0F 00 00 F0 77 77 77 77 77 77 77 78 0F'
- '00 00 F0 77 77 77 77 77 77 77 78 0F 00 00 F0 77'
- '77 77 77 77 77 77 78 0F DE 01 F0 77 77 77 77 77'
- '77 77 78 0F 32 CD F0 00 00 00 00 00 00 00 00 0F'
- '32 00 FF FF FF FF FF FF FF FF FF FF 00 00 FF FF'
- 'FF FF FF FF FF FF FF FF 00 00'
-}
-
-
-32524 BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 2A 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 0F 00 00 00 01 00 04 00 00 00'
- '00 00 B4 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 FF FF FF FF FF FF FF FF FF FF'
- '20 00 FF FF FF FF FF FF FF FF FF FF 00 00 F0 00'
- '00 00 00 00 00 00 00 0F FF FF F0 88 88 88 88 88'
- '88 88 88 0F FF FF F0 70 79 97 77 77 77 00 78 0F'
- 'FF FF F0 70 79 97 77 77 77 00 78 0F FF FF F0 77'
- '77 70 00 00 77 77 78 0F FF 00 F0 78 80 07 77 77'
- '00 88 78 0F 00 00 F0 78 07 77 77 77 77 08 78 0F'
- 'FF 00 F0 78 88 88 88 88 88 88 78 0F 07 07 F0 77'
- '77 77 77 77 77 77 78 0F FF 00 F0 77 77 77 77 77'
- '77 77 78 0F 07 07 F0 00 00 00 00 00 00 00 00 0F'
- 'FF 00 FF FF FF FF FF FF FF FF FF FF F8 F8 FF FF'
- 'FF FF FF FF FF FF FF FF FF 00'
-}
-
-
-SMILE BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D E6 08 00 00 00 00 00 00 36 04 00 00 28 00'
- '00 00 3C 00 00 00 14 00 00 00 01 00 08 00 00 00'
- '00 00 B0 04 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 C0 DC C0 00 F0 CA A6 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 FB'
- 'FF 00 A4 A0 A0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 FF F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8'
- 'F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8'
- 'F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8'
- 'F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 00 00 FF'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 F8 00 00 FF 07 F8 FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF 07 F8 00 00 FF 07 F8 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 FF 07'
- 'F8 00 00 FF 07 F8 07 07 07 07 07 07 F9 F9 F9 F9'
- 'F9 F9 07 07 07 07 07 07 07 07 07 07 07 07 00 00'
- '00 00 00 00 00 00 00 00 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 FF 07 F8 00 00 FF'
- '07 F8 07 07 07 07 07 F9 07 07 07 07 07 07 F9 07'
- '07 07 07 07 07 07 07 07 07 07 00 FF FF FF FF FF'
- 'FF FF FF 00 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 FF 07 F8 00 00 FF 07 F8 07 07'
- '07 07 F9 07 07 FA FA FA FA 07 07 F9 07 07 07 07'
- '07 07 07 07 07 07 00 FF 00 00 00 00 00 00 FF 00'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 FF 07 F8 00 00 FF 07 F8 07 07 07 07 F9 07'
- 'FA 07 07 07 07 FA 07 F9 07 07 07 07 07 07 07 07'
- '07 07 00 FF 00 00 00 00 00 00 FF 00 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 FF 07'
- 'F8 00 00 FF 07 F8 07 07 07 07 F9 07 07 07 FB FB'
- '07 07 07 F9 07 07 07 07 07 07 07 07 07 07 00 FF'
- 'FF FF FF FF FF FF FF 00 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 FF 07 F8 00 00 FF'
- '07 F8 07 07 07 07 F9 07 07 07 FB FB 07 07 07 F9'
- '07 07 07 07 07 07 07 07 07 07 00 FF FF FF FF FF'
- 'FF FF FF 00 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 FF 07 F8 00 00 FF 07 F8 07 07'
- '07 07 F9 07 FC 07 07 07 07 FC 07 F9 07 07 07 07'
- '07 07 07 07 07 07 00 FF 00 00 00 00 00 00 FF 00'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 FF 07 F8 00 00 FF 07 F8 07 07 07 07 F9 07'
- 'FC FC 07 07 FC FC 07 F9 07 07 07 07 07 07 07 07'
- '07 07 00 FF 00 00 00 00 00 00 FF 00 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 FF 07'
- 'F8 00 00 FF 07 F8 07 07 07 07 07 F9 07 07 07 07'
- '07 07 F9 07 07 07 07 07 07 07 07 07 07 07 00 FF'
- 'FF FF FF FF FF FF FF 00 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 FF 07 F8 00 00 FF'
- '07 F8 07 07 07 07 07 07 F9 F9 F9 F9 F9 F9 07 07'
- '07 07 07 07 07 07 07 07 07 07 00 00 00 00 00 00'
- '00 00 00 00 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 FF 07 F8 00 00 FF 07 F8 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 FF 07 F8 00 00 FF 07 F8 F8 F8 F8 F8 F8 F8'
- 'F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8'
- 'F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8'
- 'F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 07'
- 'F8 00 00 FF 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07'
- '07 07 07 07 07 07 07 07 07 07 07 07 F8 00 00 FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF'
- 'FF FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-
-
-WINELOGO BITMAP LOADONCALL MOVEABLE "winelogo.bmp"
-
-
-OBMCLOSE BITMAP LOADONCALL MOVEABLE 
-{
- '42 4D 66 01 00 00 00 00 00 00 76 00 00 00 28 00'
- '00 00 14 00 00 00 14 00 00 00 01 00 04 00 00 00'
- '00 00 F0 00 00 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00 00 00 00 00 00 00 BF 00 00 BF'
- '00 00 00 BF BF 00 BF 00 00 00 BF 00 BF 00 BF BF'
- '00 00 C0 C0 C0 00 80 80 80 00 00 00 FF 00 00 FF'
- '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF'
- '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00'
- '00 00 08 88 88 88 88 88 88 88 88 80 00 00 0F 88'
- '88 88 88 88 88 88 88 80 00 00 0F 77 77 77 77 77'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 7F FF FF 77 77 78 80 00 00 0F 77'
- '77 FF FF FF F7 77 78 80 00 00 0F 77 7F F9 99 99'
- 'FF 77 78 80 00 00 0F 77 88 99 99 99 9F F7 78 80'
- '00 00 0F 77 88 99 99 99 9F F7 78 80 00 00 0F 77'
- '88 99 99 99 9F F7 78 80 00 00 0F 77 88 99 99 99'
- '9F F7 78 80 00 00 0F 77 88 99 99 99 9F F7 78 80'
- '00 00 0F 77 78 89 99 99 FF 77 78 80 00 00 0F 77'
- '77 88 88 88 F7 77 78 80 00 00 0F 77 77 78 88 88'
- '77 77 78 80 00 00 0F 77 77 77 77 77 77 77 78 80'
- '00 00 0F 77 77 77 77 77 77 77 78 80 00 00 0F FF'
- 'FF FF FF FF FF FF FF 80 00 00 00 00 00 00 00 00'
- '00 00 00 00 00 00'
-}
-#endif
diff --git a/toolkit/sup.c b/toolkit/sup.c
index dc66854..3d1be0c 100644
--- a/toolkit/sup.c
+++ b/toolkit/sup.c
@@ -10,17 +10,17 @@
 LONG CallWindowProc (WNDPROC func, HWND hwnd, WORD message,
 		     WORD wParam, LONG lParam)
 {
-    (*func)(hwnd, message, wParam, lParam);
+    return (*func)(hwnd, message, wParam, lParam);
 }
 
 CallLineDDAProc (FARPROC back, int x, int y, long lParam)
 {
-    (*back)(x, y, lParam);
+    return (*back)(x, y, lParam);
 }
 
 DWORD CallHookProc (HOOKPROC func, short code, WPARAM wParam, LPARAM lParam)
 {
-    (*func)(code, wParam, lParam);
+    return (*func)(code, wParam, lParam);
 }
 
 BOOL CallGrayStringProc (FARPROC func, HDC hdc, LPARAM lParam, INT cch)
diff --git a/toolkit/winmain.c b/toolkit/winmain.c
index aa21d5e..a5718ca 100644
--- a/toolkit/winmain.c
+++ b/toolkit/winmain.c
@@ -1,4 +1,6 @@
 #include <stdio.h>
+#include <string.h>
+#include <malloc.h>
 #include "windows.h"
 #include "wine.h"
 
@@ -7,8 +9,8 @@
 _WinMain (int argc, char *argv [])
 {
     int ret_val;
-    char filename [4096];
-    HANDLE hTaskMain;
+    char filename [4096], *module_name, *resource_file;
+    HANDLE hTaskMain, hInstance;
     
     GetPrivateProfileString("wine", "SystemResources", "sysres.dll", 
 			    filename, sizeof(filename), WINE_INI);
@@ -18,9 +20,20 @@
     else
 	printf("System Resources Loaded // hSysRes='%04X'\n", hSysRes);
 
+    if ((module_name = strchr (argv [0], '/')) == NULL){
+	printf ("Error: Can't determine base name for resource loading\n");
+	return 0;
+    }
+
+    resource_file = malloc (strlen (++module_name) + 5);
+    strcpy (resource_file, module_name);
+    strcat (resource_file, ".dll");
+
+    hInstance = LoadImage (resource_file, 0, 0);
+    
     USER_InitApp (hSysRes);
     hTaskMain = CreateNewTask (1); /* This is not correct */
-    ret_val = WinMain (1,		/* hInstance */
+    ret_val = WinMain (hInstance,	/* hInstance */
 		       0,		/* hPrevInstance */
 		       "",		/* lpszCmdParam */
 		       SW_NORMAL); 	/* nCmdShow */
diff --git a/tools/make_debug b/tools/make_debug
index dc1ec09..f7865a5 100755
--- a/tools/make_debug
+++ b/tools/make_debug
@@ -89,14 +89,14 @@
 	y=`echo $x | tr a-z A-Z`
 	cat <<++EOF++ >>$DEBUG_H
 #ifdef DEBUG_RUNTIME
-#define dprintf_$x if(debug_msg_enabled[$i]) fprintf
+#define dprintf_$x if(!debug_msg_enabled[$i]) ; else fprintf
 #define debugging_$x debug_msg_enabled[$i]
 #else
 #ifdef DEBUG_$y
 #define dprintf_$x fprintf
 #define debugging_$x 1
 #else
-#define dprintf_$x
+#define dprintf_$x while(0) fprintf
 #define debugging_$x 0
 #endif
 #endif
