diff --git a/ANNOUNCE b/ANNOUNCE index 7fbbef74501..7ba5a184bdc 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 @@ Because of lags created by using mirror, this message may reach you before 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 f7b26b19cbc..f2fa6a3dc4e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,86 @@ +---------------------------------------------------------------------- +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 + + * [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 + + * [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) diff --git a/Configure b/Configure index 136671404a2..cbbadd1b6ec 100644 --- a/Configure +++ b/Configure @@ -7,7 +7,6 @@ WINELIB='' SHORTNAMES='' -XPM='' LANGUAGE=not_matching NEWBUILD='' ALLDEFINES='' @@ -29,6 +28,9 @@ prompt () 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 @@ then 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 @@ do 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 @@ cat > autoconf.h << EOF /* 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 a51022f35b7..8405d0a350a 100644 --- a/Imakefile +++ b/Imakefile @@ -89,17 +89,20 @@ SYSLIBS = -ll -lm -lgnumalloc 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 59e768b4c59..a007111c7dc 100644 --- a/README +++ b/README @@ -17,9 +17,13 @@ You must have one of: 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 00000000000..a207fa7da89 --- /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 e81ab13a132..42981bd648c 100644 --- a/controls/edit.c +++ b/controls/edit.c @@ -501,6 +501,8 @@ long EDIT_NCCreateMsg(HWND hwnd, LONG lParam) 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 @@ long EDIT_CreateMsg(HWND hwnd, LONG lParam) /* --- 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 e2bac73649d..14bed8f3c95 100644 --- a/controls/listbox.c +++ b/controls/listbox.c @@ -920,12 +920,16 @@ int ListBoxDeleteString(HWND hwnd, UINT uIndex) 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 bd0bae2fe94..4f13cb9b8c6 100644 --- a/if1632/Imakefile +++ b/if1632/Imakefile @@ -19,6 +19,13 @@ DLLOBJS = \ 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(keyboard) 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 e0617e267d6..2bb4dbc56d0 100644 --- a/if1632/callback.c +++ b/if1632/callback.c @@ -183,8 +183,8 @@ LONG CallWindowProc( WNDPROC func, HWND hwnd, WORD message, } 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 00000000000..30b7b9d70e5 --- /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 00000000000..107890b5f7a --- /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 00000000000..cf98d97ad93 --- /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 00000000000..7fc4a3a5aa8 --- /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 00000000000..ecc1ebdca42 --- /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 00000000000..7d0e13e96db --- /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 00000000000..cc4e167778d --- /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 faf17a6e557..744ef2c19ef 100644 --- a/if1632/relay.c +++ b/if1632/relay.c @@ -42,21 +42,28 @@ dprintf_stack 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 @@ struct dll_conversions { 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 @@ DLLRelay(unsigned int func_num, unsigned int seg_off) int conv_ref; unsigned char *type_conv; unsigned short *offset_conv; - + /* * Determine address of arguments. */ @@ -141,17 +155,14 @@ DLLRelay(unsigned int func_num, unsigned int seg_off) 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 @@ DLLRelay(unsigned int func_num, unsigned int seg_off) 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 @@ FindDLLTable(char *dll_name) 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 9bac24901ad..dda2d553a96 100644 --- a/include/bitmap.h +++ b/include/bitmap.h @@ -43,4 +43,8 @@ extern HBITMAP BITMAP_SelectObject( HDC hdc, DC * dc, HBITMAP hbitmap, 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 44c0363b7fe..00000000000 --- 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 4c7adcee16a..00000000000 --- 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 a38ff70478f..00000000000 --- 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 00000000000..11673094fe8 --- /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 00000000000..49f12be017a --- /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 00000000000..8f92367d0d0 --- /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 00000000000..4b90947596c --- /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 00000000000..20c9637b254 --- /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 03bf4a25f4e..15c0b3a698b 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 @@ short debug_msg_enabled[]={ #else 0, #endif +#ifdef DEBUG_MALLOC + 1, +#else + 0, +#endif #ifdef DEBUG_MCI 1, #else @@ -393,6 +402,11 @@ short debug_msg_enabled[]={ #else 0, #endif +#ifdef DEBUG_OLE + 1, +#else + 0, +#endif #ifdef DEBUG_PALETTE 1, #else @@ -491,872 +505,898 @@ extern short debug_msg_enabled[]; #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 @@ static char *debug_msg_name[] = { "keyboard", "ldt", "listbox", + "malloc", "mci", "mcianim", "mciwave", @@ -1414,6 +1455,7 @@ static char *debug_msg_name[] = { "msg", "msgbox", "nonclient", + "ole", "palette", "profile", "prop", diff --git a/include/dlls.h b/include/dlls.h index 169dac11c93..0ad5c2f960f 100644 --- a/include/dlls.h +++ b/include/dlls.h @@ -91,6 +91,7 @@ struct dll_name_table_entry_s 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 SYSTEM_table[]; 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 SYSTEM_offsets[]; 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 SYSTEM_types[]; 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 00000000000..7da0a7875d3 --- /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 087790ef045..e9d74ce3cba 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 ef7bd18738e..4b33bdcacad 100644 --- a/loader/library.c +++ b/loader/library.c @@ -280,6 +280,11 @@ HANDLE GetModuleHandle(LPSTR lpModuleName) /* 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 @@ BOOL ModuleNext(MODULEENTRY *lpModule) 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 9e10ae924de..14914b7de23 100644 --- a/loader/ne_image.c +++ b/loader/ne_image.c @@ -253,6 +253,9 @@ int NE_FixupSegment(struct w_files *wpnt, int segment_num) 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 e836aa49e18..1da32600cfe 100644 --- a/loader/resource.c +++ b/loader/resource.c @@ -22,7 +22,6 @@ static char Copyright[] = "Copyright Robert J. Amstadt, 1993"; #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 @@ RESOURCE *Top = NULL; 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 @@ HANDLE FindResource(HANDLE instance, LPSTR name, LPSTR type) 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 @@ HANDLE AllocResource(HANDLE instance, HANDLE hResInfo, DWORD dwSize) 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 @@ int AccessResource(HANDLE instance, HANDLE hResInfo) 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 @@ WORD SizeofResource(HANDLE instance, HANDLE hResInfo) 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 @@ HANDLE LoadResource(HANDLE instance, HANDLE hResInfo) 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 @@ RSC_LoadResource(int instance, LPSTR rsc_name, LPSTR type, int *image_size_ret) 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 @@ HICON LoadIcon(HANDLE instance, LPSTR icon_name) 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 @@ LoadBitmap(HANDLE instance, LPSTR bmp_name) 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 @@ LoadBitmap(HANDLE instance, LPSTR bmp_name) 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 bfa5e7f8771..7447e07659c 100644 --- a/loader/selector.c +++ b/loader/selector.c @@ -634,6 +634,77 @@ GetNextSegment(unsigned int flags, unsigned int limit) 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 @@ unsigned int GetEntryDLLName(char * dll_name, char * function, int * sel, 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 @@ unsigned int GetEntryDLLOrdinal(char * dll_name, int ordinal, int * sel, 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 285571bea9b..344a777cfc5 100644 --- a/loader/signal.c +++ b/loader/signal.c @@ -240,10 +240,13 @@ void init_wine_signals(void) #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 @@ void init_wine_signals(void) 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 a08699e711b..a5f54d2c5cf 100644 --- a/misc/Imakefile +++ b/misc/Imakefile @@ -15,6 +15,8 @@ SRCS = \ 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 c9df6e70ec7..8879aa19480 100644 --- a/misc/dos_fs.c +++ b/misc/dos_fs.c @@ -414,6 +414,7 @@ char *DOS_GetUnixFileName(char *dosfilename) /* 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 @@ char *DOS_GetUnixFileName(char *dosfilename) } 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 b42072b6eda..b8174015fc5 100644 --- a/misc/main.c +++ b/misc/main.c @@ -10,6 +10,9 @@ static char Copyright[] = "Copyright Alexandre Julliard, 1994"; #include #include #include +#ifdef MALLOC_DEBUGGING +#include +#endif #include #include #include @@ -26,6 +29,7 @@ static char Copyright[] = "Copyright Alexandre Julliard, 1994"; #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 @@ static XrmOptionDescRec optionsTable[] = { "-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 @@ static XrmOptionDescRec optionsTable[] = " -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" + /*********************************************************************** @@ -263,6 +270,43 @@ BOOL ParseDebugOptions(char *options) #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;ihBitmap, 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 9598653103c..a0abcbc52a1 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 #include #include -#ifdef USE_XPM #include -#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 @@ static XpmColorSymbol OBM_BW_Symbols[2] = #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 @@ static const struct { 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 @@ HBITMAP OBM_LoadOEMBitmap( WORD id ) } +/*********************************************************************** + * 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 650fb319493..479cf275407 100644 --- a/rc/Imakefile +++ b/rc/Imakefile @@ -14,7 +14,7 @@ MODULE = rc 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 1165f22d64c..00000000000 --- 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 dc66854d879..3d1be0c4987 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 aa21d5ea8b6..a5718ca8290 100644 --- a/toolkit/winmain.c +++ b/toolkit/winmain.c @@ -1,4 +1,6 @@ #include +#include +#include #include "windows.h" #include "wine.h" @@ -7,8 +9,8 @@ extern HINSTANCE hSysRes; _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 @@ _WinMain (int argc, char *argv []) 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 dc1ec095666..f7865a57393 100755 --- a/tools/make_debug +++ b/tools/make_debug @@ -89,14 +89,14 @@ do 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