# HG changeset patch # User arpi # Date 1038176803 0 # Node ID 64786fe1a8a6b9f2e9dd9f5d196a513926a01730 # Parent badd24741e4affe7bbd879b11ab4c25389bf7acb patching quicktime.qts runtime diff -r badd24741e4a -r 64786fe1a8a6 loader/module.c --- a/loader/module.c Sun Nov 24 21:49:52 2002 +0000 +++ b/loader/module.c Sun Nov 24 22:26:43 2002 +0000 @@ -311,16 +311,22 @@ /* decrement the dependencies through the MODULE_FreeLibrary call. */ pwm->refCount++; -#ifdef EMU_QTX_API if(strstr(libname,"QuickTime.qts")){ void** ptr=0x62b75ca4; - fprintf(stderr,"QuickTime.qts entrypoint patched!!! old=%p\n",ptr[0]); + int i; + fprintf(stderr,"QuickTime.qts patched!!! old entry=%p\n",ptr[0]); + // NOP out directx, fontmanager and some other init calls: + for(i=0;i<5;i++) ((char*)0x6299e842)[i]=0x90; + for(i=0;i<28;i++) ((char*)0x6299e86d)[i]=0x90; + for(i=0;i<5;i++) ((char*)0x6299e898)[i]=0x90; + for(i=0;i<9;i++) ((char*)0x6299e8ac)[i]=0x90; +#ifdef EMU_QTX_API report_entry = report_func; report_ret = report_func_ret; wrapper_target=ptr[0]; ptr[0]=wrapper; +#endif } -#endif SetLastError( err ); /* restore last error */ return pwm;