Re: [PATCH 03/14] mciwave: Do not lie about state when winmm fails in Pause or Resume.

2009-10-19 Thread Christian Gmeiner
Patch is missing

-- 
Christian Gmeiner, MSc




Re: RFC: registry keys of serial ports

2009-09-11 Thread Christian Gmeiner
2009/9/11 Stefan Leichter :
> Am Friday 11 September 2009 12:30:01 schrieb Christian Gmeiner:
>> Hi Stefan,
>>
>> I like the idea of adding more registry keys for hardware components.
>> I want some registry keys for usb devices
>> so I had a look at your patch. I don't like the mess with the added
>> goto serial. If in future there will be support
>> for usb and the whole source will be quite hard to follow. The usb
>> registry keys are needed e.g. for this [1].
>> So i like to propose my idea how it could look like.
>>
>> In function new_device( LibHalContext *ctx, const char *udi ) we could
>> readout the info.subsystem setting of the newly added device and add a
>> if for info.subsystem strings like
>> block - block devices
>> tty - serial
>> usb_devices/usb - usb
>>
>> could look like
>>
>> /* HAL callback for new device */
>> static void new_device( LibHalContext *ctx, const char *udi )
>> {
>>     DBusError error;
>>     char *subsystem = NULL;
>>
>>     p_dbus_error_init( &error );
>>
>>     if (!(subsystem = p_libhal_device_get_property_string( ctx, udi,
>> "info.subsystem", &error )))
>>         goto done;
>>
>>     if (strcmp(subsystem == "block") == 0)
>>         block_device( ctx, udi, &error );
>>     else if (strcmp(subsystem == "usb_device") == 0)
>>         usb_device( ctx, udi, &error );
>>     else if (strcmp(subsystem == "tty") == 0)
>>         serial_device( ctx, udi, &error );
>>
>>     p_dbus_error_free( &error );
>> }
>>
>
> Hi Christian,
>
> i like your idea, but a short test shows that "info.subsystem" is not
> available for drives. But "info.category" can be used.

with drives you mean CD and DVD drives?

lshal gives me this:

udi = '/org/freedesktop/Hal/devices/pci_10de_37f_1_scsi_host_scsi_device_lun0'
  info.linux.driver = 'sr'  (string)
  info.parent =
'/org/freedesktop/Hal/devices/pci_10de_37f_1_scsi_host'  (string)
  info.product = 'SCSI Device'  (string)
  info.subsystem = 'scsi'  (string)
  info.udi = 
'/org/freedesktop/Hal/devices/pci_10de_37f_1_scsi_host_scsi_device_lun0'
 (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'scsi'  (string)
  linux.sysfs_path =
'/sys/devices/pci:00/:00:0d.2/host4/target4:0:0/4:0:0:0'
(string)
  scsi.bus = 0  (0x0)  (int)
  scsi.host = 4  (0x4)  (int)
  scsi.lun = 0  (0x0)  (int)
  scsi.model = 'CD/DVDW SH-S183L'  (string)
  scsi.target = 0  (0x0)  (int)
  scsi.type = 'cdrom'  (string)
  scsi.vendor = 'TSSTcorp'  (string)

udi = '/org/freedesktop/Hal/devices/storage_model_CD_DVDW_SH_S183L'
  block.device = '/dev/sr0'  (string)
  block.is_volume = false  (bool)
  block.major = 11  (0xb)  (int)
  block.minor = 0  (0x0)  (int)
  block.storage_device =
'/org/freedesktop/Hal/devices/storage_model_CD_DVDW_SH_S183L'
(string)
  info.addons = {'hald-addon-storage'} (string list)
  info.capabilities = {'storage', 'block', 'storage.cdrom'} (string list)
  info.category = 'storage'  (string)
  info.interfaces = {'org.freedesktop.Hal.Device.Storage',
'org.freedesktop.Hal.Device.Storage',
'org.freedesktop.Hal.Device.Storage.Removable'} (string list)
  info.parent =
'/org/freedesktop/Hal/devices/pci_10de_37f_1_scsi_host_scsi_device_lun0'
 (string)
  info.product = 'CD/DVDW SH-S183L'  (string)
  info.udi = '/org/freedesktop/Hal/devices/storage_model_CD_DVDW_SH_S183L'
 (string)
  info.vendor = 'TSSTcorp'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  linux.sysfs_path =
'/sys/devices/pci:00/:00:0d.2/host4/target4:0:0/4:0:0:0/block/sr0'
 (string)
  org.freedesktop.Hal.Device.Storage.method_argnames =
{'extra_options', 'extra_options'} (string list)
  org.freedesktop.Hal.Device.Storage.method_execpaths =
{'hal-storage-eject', 'hal-storage-closetray'} (string list)
  org.freedesktop.Hal.Device.Storage.method_names = {'Eject',
'CloseTray'} (string list)
  org.freedesktop.Hal.Device.Storage.method_signatures = {'as', 'as'}
(string list)
  storage.automount_enabled_hint = true  (bool)
  storage.bus = 'pci'  (string)
  storage.cdrom.bd = false  (bool)
  storage.cdrom.bdr = false  (bool)
  storage.cdrom.bdre = false  (bool)
  storage.cdrom.cdr = true  (bool)
  storage.cdrom.cdrw = true  (bool)
  storage.cdrom.dvd = true  (bool)
  storage.cdrom.dvdplusr = true  (bool)
  storage.cdrom.dvdplusrdl = true  (bool)
  storage.cdrom.

Re: RFC: registry keys of serial ports

2009-09-11 Thread Christian Gmeiner
Hi Stefan,

I like the idea of adding more registry keys for hardware components.
I want some registry keys for usb devices
so I had a look at your patch. I don't like the mess with the added
goto serial. If in future there will be support
for usb and the whole source will be quite hard to follow. The usb
registry keys are needed e.g. for this [1].
So i like to propose my idea how it could look like.

In function new_device( LibHalContext *ctx, const char *udi ) we could
readout the info.subsystem setting of the newly added device and add a
if for info.subsystem strings like
block - block devices
tty - serial
usb_devices/usb - usb

could look like

/* HAL callback for new device */
static void new_device( LibHalContext *ctx, const char *udi )
{
DBusError error;
char *subsystem = NULL;

p_dbus_error_init( &error );

if (!(subsystem = p_libhal_device_get_property_string( ctx, udi,
"info.subsystem", &error )))
goto done;

if (strcmp(subsystem == "block") == 0)
block_device( ctx, udi, &error );
else if (strcmp(subsystem == "usb_device") == 0)
usb_device( ctx, udi, &error );
else if (strcmp(subsystem == "tty") == 0)
serial_device( ctx, udi, &error );

p_dbus_error_free( &error );
}

Now we have a ability to handle each device type with an own function, like

static void block_device( LibHalContext *ctx, const char *udi,
DBusError *error )
{
char *device = NULL;
char *mount_point = NULL;
char *parent = NULL;
char *uuid_str = NULL;
char *type = NULL;
GUID guid, *guid_ptr = NULL;
enum device_type drive_type;

if (!(device = p_libhal_device_get_property_string( ctx, udi,
"block.device", error )))
goto done;

if (!(mount_point = p_libhal_device_get_property_string( ctx, udi,
"volume.mount_point", error )))
goto done;

if (!(parent = p_libhal_device_get_property_string( ctx, udi,
"info.parent", error )))
goto done;

if (!(uuid_str = p_libhal_device_get_property_string( ctx, udi,
"volume.uuid", error )))
p_dbus_error_free( &error );  /* ignore error */
else
guid_ptr = parse_uuid( &guid, uuid_str );

if (!(type = p_libhal_device_get_property_string( ctx, parent,
"storage.drive_type", error )))
p_dbus_error_free( &error );  /* ignore error */

if (type && !strcmp( type, "cdrom" )) drive_type = DEVICE_CDROM;
else if (type && !strcmp( type, "floppy" )) drive_type = DEVICE_FLOPPY;
else drive_type = DEVICE_UNKNOWN;

if (p_libhal_device_get_property_bool( ctx, parent,
"storage.removable", error ))
{
add_dos_device( -1, udi, device, mount_point, drive_type, guid_ptr );
/* add property watch for mount point */
p_libhal_device_add_property_watch( ctx, udi, error );
}
else if (guid_ptr) add_volume( udi, device, mount_point,
DEVICE_HARDDISK_VOL, guid_ptr );

done:
if (type) p_libhal_free_string( type );
if (parent) p_libhal_free_string( parent );
if (device) p_libhal_free_string( device );
if (uuid_str) p_libhal_free_string( uuid_str );
if (mount_point) p_libhal_free_string( mount_point );
}

Keep in mind that i am not sure if this source samples compile - was a
quick copy & paste action.

What do you think about it?


[1] http://wiki.winehq.org/USB


-- 
Christian Gmeiner, B.Sc.

2009/9/11 Stefan Leichter :
> Hi,
>
> i like to know what modifikations the attached patch needs to go into git.
>
> More things need to be done in this area. I know of:
> - more registry keys [1]
> - remove the registry keys when a serial port disappears (USB)
> - the links in the dosdevice directory needs to be created
>
> Patches for the items above will be created, when the current patch went into
> git
>
> References:
> 1 http://www.winehq.org/pipermail/wine-patches/2009-April/071999.html
> - http://www.winehq.org/pipermail/wine-devel/2009-April/074476.html
>
> --
> Stefan
>
>
>
>




Adding devices to registry with the help of hal

2008-02-20 Thread Christian Gmeiner
Hi all,

I want you to present my current proof-of-conecpt. It shows how we can use
hal.c of explorer to
create registry keys for devices.
Keep in mind that it only creates one registry key for each usb device at
the moment. Before I
investigate more time in this, I want to get some feedback about my method.
If you are happy with it, I will finish this suftt :)

Greets,
Christian


devices_to_registry_preview.diff
Description: Binary data



Adding devices to registry with the help of hal

2008-02-20 Thread Christian Gmeiner
Hi all,

I want you to present my current proof-of-conecpt. It shows how we can use
hal.c of explorer to
create registry keys for devices.
Keep in mind that it only creates one registry key for each usb device at
the moment. Before I
investigate more time in this, I want to get some feedback about my method.
If you are happy with it, I will finish this suftt :)

Greets,
Christian


devices_to_registry_preview.diff
Description: Binary data



Re: autorun perhaps dangerous (Was: Wine release 0.9.53)

2008-01-11 Thread Christian Gmeiner
2008/1/11, Marcus Meissner <[EMAIL PROTECTED]>:
>
> On Fri, Jan 11, 2008 at 05:36:04PM +0100, Alexandre Julliard wrote:
> > This is release 0.9.53 of Wine, a free implementation of Windows on
> Unix.
> >
> > What's new in this release:
> >   - RunOnce and Run entries now executed on startup.
>
> This will probably give some fallout ;)
>
> I wanted to write earlier, but did forget about it over the last
> days.
>
> For my grown Wine installation this now starts:
>
> - 2 instances of a Windows Worm
> - Google Talk (not working)
> - Skype (crashing)
> - pccam.exe from some digital camera disk
> - the annoying Steam.exe auto-update and ask-for-subscription dialog
> - perhaps more
>
> and this even on "make check" :(
>
> We probably need some tool to edit Run and RunOnce entries now.


wine regedit

Maybe it would be a good idea to have an option to make us of this new
feature...

greets,
Christian



Re: [SETUPAPI] SetupDiCreateDeviceInfo

2006-07-17 Thread Christian Gmeiner
Hi Paul,

thanks for this info.. will fix it and send in a new version of this patch, 
also i will use debugstr_w to fix two warnings.

Greets,
Christian


> > This patch implements SetupDiCreateDeviceInfoA and
> > SetupDiCreateDeviceInfoW as
> > stub.
> >
> > If something should be wrong with this patch, please let me know it :)
> >
> > Greets,
> > Christian
> >
> > --
> > Christian Gmeiner - student of computer science
> >
> > http://dxr3plugin.sf.net
> > Wanna listen to good music? - http://www.purevolume.com/sinceyouaredead
>
> Hi Christian,
>
> I haven't checked if the logic is corret. But this certainly isn't:
> >+if (DeviceDescription)
> >+{
> >+DeviceDescriptionW = MultiByteToUnicode(DeviceDescription,
> > CP_ACP); +if (DeviceNameW == NULL) return FALSE;
>
> Shouldn't that be DeviceDescriptionW?
>
> >+if (DeviceNameW)
> >+MyFree(DeviceDescriptionW);
> >+if (DeviceNameW)
> >+MyFree(DeviceDescriptionW);
>
> Some typos here as well.
>
> Cheers,
>
> Paul

-- 
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
Wanna listen to good music? - http://www.purevolume.com/sinceyouaredead




Re: [SETUPAPI] SetupDiCreateDeviceInfoA stub

2006-06-23 Thread Christian Gmeiner
On Thursday 22 June 2006 17:50, Detlef Riekenberg wrote:
> Hi Christian Gmeiner:
> > It seems that there
> > is no SetupDiCreateDeviceInfoW exporteded by setupapi.dll on windows
>
> SetupDiCreateDeviceInfoW is exported:
> http://support.microsoft.com/dllhelp/?dlltype=file&l=55&S=1&alpha=setupapi.
>dll
>
>
> Example Version:
> http://support.microsoft.com/dllhelp/?fid=91484&l=55&det=1
>
>
> $ winedump dump -j export setupapi* | grep SetupDiCreate
>   00023DFE   299 SetupDiCreateDevRegKeyA
>   1C0F   300 SetupDiCreateDevRegKeyW
>   000173E8   301 SetupDiCreateDeviceInfoA
>   15A7   302 SetupDiCreateDeviceInfoList
>   000170D1   303 SetupDiCreateDeviceInfoListExA
>   48E5   304 SetupDiCreateDeviceInfoListExW
>   0001746F   305 SetupDiCreateDeviceInfoW
>   00018A9F   306 SetupDiCreateDeviceInterfaceA
>   0002471C   307 SetupDiCreateDeviceInterfaceRegKeyA
>   1CCE   308 SetupDiCreateDeviceInterfaceRegKeyW
>   00018B03   309 SetupDiCreateDeviceInterfaceW

Okay,,, will add it in a second patch...

Greets,
Christian

-- 
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
Wanna listen to good music? - http://www.purevolume.com/sinceyouaredead




Re: [Setuapi] implement SetupDiCreateDeviceInfoListExW - try 3

2006-06-15 Thread Christian Gmeiner
On Wednesday 14 June 2006 17:52, Juan Lang wrote:
> Hi Christian,
Hi Juan,
>
> > I want to make a generic setupapi.dll and I will remove old serial
> > device list, but as too big patches wont get accepted, I will do this in
> > one of my next patches.
>
> I put that hacky serial device list in there.  I don't actually use the
> app that fixed under Wine, as 1) Wine's serial code never worked for the
> app, and 2) I no longer have the device it used.  So, I don't know if
> that'll convince AJ or not, but I'm fine with you axing it.  Leaving
> half-working code in there is more likely to get rejected than a big
> patch, IMO, so I'd suggest you remove it.

ah thats nice to hear... so i will make a try 4, which includes better test
and removes all serial code stuff :)


Christian 

PS: got my first crosscompile running...

>
> --Juan
>
> __
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com

-- 
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
Wanna listen to good music? - http://www.purevolume.com/sinceyouaredead




Re: [Setuapi] implement SetupDiCreateDeviceInfoListExW - try 3

2006-06-14 Thread Christian Gmeiner
On Wednesday 14 June 2006 01:45, Detlef Riekenberg wrote:

Hi Detlef

> Hi Christian Gmeiner:
> > Sorry for the new version, but i got rid of the whitspace stuff and also
> > added a check if Reserved != NULL.
> >
> > I hope that this patch is ready to commit now.
>
> +if (MachineName != NULL)
> +{
> +FIXME("remote support is not implemented");
> +goto cleanup;
> +}
>
> A failure should always set an error.
> You should add a test for this in the testsuite.
> (winspool as example uses an empty servername the same way as NULL).
>
> For external Servers, ERROR_ACCESS_DENIED is a very common Result.

For this case I will run a some tests on windows to see what it retuns.


>
> +if (Reserved != NULL)
> +{
> +SetLastError(ERROR_INVALID_PARAMETER);
> +goto cleanup;
> +}
> Same here. This is simple to test in the testsuite.
>
>
> -SerialPortList *list = (SerialPortList *)devinfo;
> +struct DeviceInfoSet *list = (struct DeviceInfoSet *)devinfo;
>
> -if (list->magic == SETUP_SERIAL_PORT_MAGIC)
> +if (list->magic == SETUP_DEVICE_INFO_SET_MAGIC)
>  {
>
> This is wrong.
> Read: static HDEVINFO SETUP_CreateSerialDeviceList(void) (line 904) 

Sure... I want to make a generic setupapi.dll and I will remove old serial 
device list, but as too big patches wont get accepted, I will do this in one
of my next patches.
If the basic setupapi stuff is done, I will implement hal handling into
explorer so that the regestry is filled in a correct way. And this regestry
values are used in setupapi.dll. This is why I want to a generic setupapi.dll.

>
> ---
> In your test:
>
> +// create empty DeviceInfoList
>
> C++ comments are not allow (not supported by some compiler)

ok.. will fix it...

>
> +devlist = SetupDiCreateDeviceInfoListExW(NULL, NULL, NULL, NULL);
> +
> +ok(devlist && devlist != INVALID_HANDLE_VALUE,
> "SetupDiCreateDeviceInfoListExW failed : %p %ld\n", devlist,
> GetLastError());
>
> - You missed the "SetLastError(0xdeadbeef);" before the tested function.
> - The first Part of your "ok()" - message
>   ("SetupDiCreateDeviceInfoListExW failed :") has no additional infos.
>   When a test fails, you will already get:
>   "__FILE__:__LINE__: Test failed:"
>   You know the dll, file and line of the failing "ok()" - statement.
>   Example:
> info.c:932: Test failed: returned 0 with 1801 (expected '!=0' or '0'
> with ERROR_INVALID_PARAMETER)
>
>
> You may want to look at my recent Tests / Implementations for
> GetPrintProcessorDirectory or AddMonitor/DeleteMonitor (winspool.drv),
> but do not use the macro "MAGIC_DEAD" in the tests
> (it works, but 0xdeadbeef has more advantages).
>
>
> As an Example, that we really need tests for every API-Function:
> The second Parameter of "DeleteMonitor" is ignored in all tested
> Windows-Versions.

Ah.. i will extend my patch, run tests on windows and hope it will get it into 
cvs.

Greets,
Christian

-- 
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
Wanna listen to good music? - http://www.purevolume.com/sinceyouaredead




Hal and functions in setupapi

2006-06-06 Thread Christian Gmeiner
Hi all...

at the momemt i am reading into functions to get some informations about
e.g. cdrom drives. At the moment
i am loking into SetupDiGetClassDevsW to support GUID_DEVINTERFACE_CDROM and
later USB devices.
My overall goal is it to get Line 6 software for my guitart effect board
(USB) working with wine.

Now i thought about a way to get all informations about a singe cdrom
device. And i thought that I could use HAL perfectly
for this.
I thought about this way of doing it:
Add hal.c file to setupapi dll, which contains function to get infromations
about all needed hardware. This should work very nicly
for this case. But as I want to programm RegisterDeviceNotification also we
need a central way to handle hal stuff.

So how should I go on? Use some own hal.c in setupapi or add an global wine
way to interact with hal?

Thanks,
Christian






Re: [SOC] ASIO

2006-04-27 Thread Christian Gmeiner
Hi all.

Okay i think this project can be done by one student, because we can use the 
SDK for our work. We can take all API prototypes and build our own SDK based 
on the original SDK.
We are only not allowed to share the original source files, but we are allowed 
to make them by our own by looking at orginal SDK.
So if we dont do copy&paste, all should be okay.

OF: An other question:
How will the projects gets assigned to a student?
-- 
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx
http://javamill.ath.cx




[SOC] ASIO

2006-04-18 Thread Christian Gmeiner



What is ASIO?
ASIO is a driver interface for pro-audio apps developed by Steinberg. 
It's  somewhat similar to our beloved Jack sound server, but not as 
advanced.
 
I thought about implementing ASIO for wine 
so we are one step neaer to a running Cubase.
I have also some advanced audio hardware - hercules 
16/12 fw (need to check if there are some
dirvers).
 
At the moment I am a student of Computer Sciences 
in the 4 term and have done programming with
c, c++ and java.
 
Bugs, which get fixed:
http://bugs.winehq.com/show_bug.cgi?id=2161
 
What do you think about this idea?
 
Thanks,
Christian



[mlang.dll] DllCanUnloadNow

2006-03-03 Thread Christian Gmeiner
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

This patch
+ implements LockServer
+ implements DllCanUnloadNow
+ add some needed calls to LockModule() & UnlockModule()

If it didn't get into cvs i want a mail with the cause.
- --
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx
http://javamill.ath.cx
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFECFi9Dwe2AbwGBA8RApDQAJ4nCMpbbOeWBTi/x1xV36MrBaKoNgCfRTG8
54cyjapBkvdO9DUkNP41k3k=
=HK0l
-END PGP SIGNATURE-
Index: dlls/mlang/mlang.c
===
RCS file: /home/wine/wine/dlls/mlang/mlang.c,v
retrieving revision 1.25
diff -u -r1.25 mlang.c
--- dlls/mlang/mlang.c  6 Dec 2005 10:39:43 -   1.25
+++ dlls/mlang/mlang.c  3 Mar 2006 08:47:38 -
@@ -453,6 +453,21 @@

 static void fill_cp_info(const struct mlang_data *ml_data, UINT index, 
MIMECPINFO *mime_cp_info);

+static LONG dll_count;
+
+/*
+ * Dll lifetime tracking declaration
+ */
+static void LockModule(void)
+{
+InterlockedIncrement(&dll_count);
+}
+
+static void UnlockModule(void)
+{
+InterlockedDecrement(&dll_count);
+}
+
 BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
 {
 switch(fdwReason) {
@@ -709,6 +724,7 @@
 {
 TRACE("Destroying %p\n", This);
HeapFree(GetProcessHeap(), 0, This);
+UnlockModule();
 }

 return ref;
@@ -735,8 +751,11 @@

 static HRESULT WINAPI MLANGCF_LockServer(LPCLASSFACTORY iface,BOOL dolock)
 {
-IClassFactoryImpl *This = (IClassFactoryImpl *)iface;
-FIXME("(%p)->(%d),stub!\n",This,dolock);
+if (dolock)
+LockModule();
+else
+UnlockModule();
+
 return S_OK;
 }

@@ -2281,6 +2300,9 @@
 mlang->ref = 1;
 *ppObj = (LPVOID) mlang;
 TRACE("returning %p\n", mlang);
+
+LockModule();
+
 return S_OK;
 }

@@ -2288,8 +2310,7 @@

 HRESULT WINAPI DllCanUnloadNow(void)
 {
-FIXME("\n");
-return S_FALSE;
+return dll_count == 0 ? S_OK : S_FALSE;
 }

 HRESULT WINAPI GetGlobalFontLinkObject(void)



cvs build fails

2006-02-28 Thread Christian Gmeiner
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1


make[2]: Entering directory
`/home/austriancoder/development/wine/dlls/wined3d'
../../tools/winegcc/winegcc -B../../tools/winebuild -shared
./wined3d.specbasetexture.o cubetexture.o device.o directx.o
drawprim.o indexbuffer.o pixelshader.o query.o resource.o stateblock.o
surface.o swapchain.o texture.o utils.o vertexbuffer.o
vertexdeclaration.o vertexshader.o volume.o volumetexture.o
wined3d_main.o -o wined3d.dll.so -L../../dlls -L../../dlls/user32
- -L../../dlls/gdi32 -L../../dlls/advapi32 -L../../dlls/kernel32 -luser32
- -lgdi32 -ladvapi32 -lkernel32  -L../../libs/wine -lwine -luuid   -lSM
- -lICE -lXxf86dga -lXxf86vm -lXext -lX11  -lGL -lGLU -L../../libs/port
- -lwine_port
device.o: In function `IWineD3DDeviceImpl_SetRenderState':
/home/austriancoder/development/wine/dlls/wined3d/device.c:3770:
undefined reference to `glStencilOpSeparate'
/home/austriancoder/development/wine/dlls/wined3d/device.c:3799:
undefined reference to `glStencilFuncSeparate'
collect2: ld gab 1 als Ende-Status zurück


- --
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx
http://javamill.ath.cx
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFEBGGdDwe2AbwGBA8RAik/AJ9KYo38XkVojj6klecVd7NzMsAUuACeIm7z
3gkx7axC0uKtlFbZm1wstVw=
=Z3Kf
-END PGP SIGNATURE-




Hotkey

2006-02-23 Thread Christian Gmeiner
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi all.

I want to fix the hotkey stuff in user.dll. Now i have asked at xorg
mail list and thy told me that i should use acpid to do hotkey stuff.
Now i think we should to hotkey stuff internal in wine:

Have a hash list to save hotkeys and check every time a user presses a
button, if there are some pressed other too.
If this is also true, look if it is a hotkey and send to the correct
window the correct message.

What do you think about this?

Thanks,
Christian

- --
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx
http://javamill.ath.cx
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFD/mWCDwe2AbwGBA8RArAOAJ9mfjNBHsdyafLp2exPmY5idH/iFwCfQUjV
4volZ4aoTZNXNxQUtLQCszw=
=W3ub
-END PGP SIGNATURE-




Re: Directx 8 and wined3d

2006-02-09 Thread Christian Gmeiner
Hi,

the game is called "Tom Claney's Splinter Cell". When do you think, are
you ready with
your patches?

Greets,
Christian
> Hi,
>
> I'm working on moving d3d8 over to wined3d. During that transition the bug 
> will be fixed I hope. What game is it?
>
> Regards,
> Roderick
>
> On Thursday 09 February 2006 11:56, Christian Gmeiner wrote:
>   
>> Hi all.
>>
>> I have here a directx 8 game - first splinter cell - and i get this fixme:
>> fixme:d3d_surface:IDirect3DSurface8Impl_UnlockRect Unsupported Format 22
>> in locking func
>>
>> So i looked at wine source and found out that format 22
>> (WINED3DFMT_X8R8G8B8) is supported
>> in wined3d.
>> Will directx8 converted to use wined3d or is it a good idea to write a
>> patch for it?
>>
>> Thanks,
>> Chiristian
>> 


-- 
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx





Directx 8 and wined3d

2006-02-09 Thread Christian Gmeiner

Hi all.

I have here a directx 8 game - first splinter cell - and i get this fixme:
fixme:d3d_surface:IDirect3DSurface8Impl_UnlockRect Unsupported Format 22 
in locking func


So i looked at wine source and found out that format 22 
(WINED3DFMT_X8R8G8B8) is supported

in wined3d.
Will directx8 converted to use wined3d or is it a good idea to write a 
patch for it?


Thanks,
Chiristian

--
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx





dxiag question

2005-12-09 Thread Christian Gmeiner
4a8)

fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bBeta", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bDebug", 
0x7fbab4a8)

fixme:dxdiag:DXDiag_AddFileDescContainer (0x7fd6d608,L"dmstyle.dll")
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szPath", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szName", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bExists", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szVersion", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szAttributes", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"szLanguageEnglish", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"dwFileTimeHigh", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"dwFileTimeLow", 
0x7fbab4a8)

fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bBeta", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bDebug", 
0x7fbab4a8)

fixme:dxdiag:DXDiag_AddFileDescContainer (0x7fd6d608,L"dmsynth.dll")
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szPath", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szName", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bExists", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szVersion", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szAttributes", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"szLanguageEnglish", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"dwFileTimeHigh", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"dwFileTimeLow", 
0x7fbab4a8)

fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bBeta", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bDebug", 
0x7fbab4a8)

fixme:dxdiag:DXDiag_AddFileDescContainer (0x7fd6d608,L"dmusic.dll")
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szPath", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szName", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bExists", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szVersion", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szAttributes", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"szLanguageEnglish", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"dwFileTimeHigh", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"dwFileTimeLow", 
0x7fbab4a8)

fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bBeta", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bDebug", 
0x7fbab4a8)

fixme:dxdiag:DXDiag_AddFileDescContainer (0x7fd6d608,L"devenum.dll")
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szPath", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szName", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bExists", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szVersion", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szAttributes", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"szLanguageEnglish", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"dwFileTimeHigh", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"dwFileTimeLow", 
0x7fbab4a8)

fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bBeta", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bDebug", 
0x7fbab4a8)

fixme:dxdiag:DXDiag_AddFileDescContainer (0x7fd6d608,L"quartz.dll")
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szPath", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szName", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bExists", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szVersion", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"szAttributes", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"szLanguageEnglish", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, 
L"dwFileTimeHigh", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"dwFileTimeLow", 
0x7fbab4a8)

fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bBeta", 0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddProp (0x7fd6d608, L"bDebug", 
0x7fbab4a8)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd665d0, 
L"DxDiag_DirectXFiles", 0x7fd6d608)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd665d0, 
L"DxDiag_DisplayDevices", 0x7fd719c0)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd71a30, 
L"DxDiag_SoundDevices", 0x7fd71a50)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd71a30, 
L"DxDiag_SoundCaptureDevices", 0x7fd71ab8)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd665d0, 
L"DxDiag_DirectSound", 0x7fd71a30)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd665d0, 
L"DxDiag_DirectMusic", 0x7fd71b78)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd665d0, 
L"DxDiag_DirectInput", 0x7fd71be0)
fixme:dxdiag:IDxDiagContainerImpl_AddChildContainer (0x7fd665d0, 
L"DxDiag_DirectPlay", 0x7fd72118)


So.. i think it is very important to fix this and then the setup could 
say that directx is installed.


Now my question: is anybody working on this?

Thanks,
Christian

--
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx





winecfg: add options to switch between "installed" directx versions

2005-12-07 Thread Christian Gmeiner

Hi all.

I wanted to install "Need for Speed - Most wanted" under wine and the 
setup told me, that directx is not installed. So

i think we need a way to set installed/used directx version in winecfg.
Do you think its worth to start developing a patch in this direction?

Thanks

--
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx





Re: [MSI] DllCanUnloadNow try2

2005-12-04 Thread Christian Gmeiner

Dmitry Timoshkov wrote:


"Christian Gmeiner" <[EMAIL PROTECTED]> wrote:

 


+/**
+ * Dll lifetime tracking declaration
+ */
+void LockModule(void)
+{
+InterlockedIncrement(&dll_count);
+}
+
+void UnlockModule(void)
+{
+InterlockedDecrement(&dll_count);
+}
   



Since these 2 are used from inside single source file they can (and should) be
made static.

 


Thanks for your hint. Try 3 of my patch should be ok now - i hope.

Greets, Christian

--
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx





DllCanUnloadNow for dlls/msi

2005-11-30 Thread Christian Gmeiner

Hi all.

I want to start coding for wine and therefore i have wirtten my first 
patch to add DllCanUnloadNow

to msi.
Now i need to test my patch. I have got the hint that i must create a 
COM object that msi.dll provides.

Then the following must happen:
try calling DllCanUnloadNow, and it should fail
then ->Release() the object, and DllCanUnloadNow should succeed

Can somebody give me some links or maybe a litte source to make such a test?

Thanks,
Christian

--
Christian Gmeiner - student of computer science

http://dxr3plugin.sf.net
http://itb04.ath.cx





directx 7/8/9

2005-10-26 Thread Christian Gmeiner

Hi all..

can somebody give me a light on the directx stuff in wine? Maybe i am 
wrong, but

isn't it true that in each version are very similar renderstates..

I want to fix some err: now...
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_LINEPATTERN (000a) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_MONOENABLE (000b) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_ROP2 (000c) value : 000d !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_PLANEMASK (000d) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_LASTPIXEL (0010) value : 0001 !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_ZVISIBLE (001e) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_EDGEANTIALIAS (0028) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_RANGEFOGENABLE (0030) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_EXTENTS (008a) value :  !
err:ddraw:set_render_state Unhandled dwRenderStateType 
D3DRENDERSTATE_VERTEXBLEND (0097) value :  !


Is somebody working on this?

Greets,
Christian

--
Christian Gmeiner
Developer for Rockbox (http://www.rockbox.org)
Maintainer of the DXR3-Plugin for VDR: 
http://sourceforge.net/projects/dxr3plugin/
Maintainer of VDR-Ebuilds at Gentoo.de





Debuging Splinter Cell 1 - found bug in kernel32?

2005-10-15 Thread Christian Gmeiner

Hi.

I have read this "tutorial" 
http://wiki.winehq.org/Debugging_'Wild_Metal_Country' and tought that i can

maybe find the problem, why splinter cell 1 wont start.

Here is the importat part (i think):
000b:Call kernel32.RaiseException(c08f,0001,0002,7fbef5e4) 
ret=66024d53

000b:Call ntdll.RtlRaiseException(7fbef4c4) ret=7fc48163 fs=003b
eax=7fc319ad ebx=7fcb088c ecx= edx=0008 esi=7fbef5ec 
edi=7fbef4e0

ebp=7fbef520 esp=7fbef4c4 ds=007b es=007b gs=0033 flags=00200202
000b:trace:seh:__regs_RtlRaiseException code=c08f flags=1 
addr=0x7fc480d0

000b:trace:seh:__regs_RtlRaiseException  info[0]=deadcafe
000b:trace:seh:__regs_RtlRaiseException  info[1]=deadcafe
000b:trace:seh:__regs_RtlRaiseException  eax=7fc319ad ebx=7fcb088c 
ecx= edx=0008 esi=7fbef5ec edi=7fbef4e0
000b:trace:seh:__regs_RtlRaiseException  ebp=7fbef520 esp=7fbef4c4 
cs=0073 ds=007b es=007b fs=003b gs=0033 flags=00200202
000b:trace:seh:EXC_CallHandler calling handler at 0x402586 code=c08f 
flags=1

000b:Call kernel32.IsBadReadPtr(004012b0,0004) ret=66024da1
000b:Ret  kernel32.IsBadReadPtr() retval= ret=66024da1
000b:Call kernel32.TlsGetValue(0003) ret=66024eda
000b:Ret  kernel32.TlsGetValue() retval=7fd5af10 ret=66024eda
000b:Call ntdll.RtlUnwind(7fbef69c,661001ad,,) 
ret=661001ad fs=003b
eax=0001 ebx=7fcbbbac ecx=7fbef69c edx=0003 esi=004012b0 
edi=7fbef69c

ebp=7fbeef50 esp=7fbeef44 ds=007b es=007b gs=0033 flags=00200206

The full log can be found here: 
http://x-factor.dyndns.org/~austriancoder/splinter_cell1.log.bz2 (1,5 M)


Maybe somebody can confirm that it is a kernel32 bug and may can fix it, 
or give me a hint

were i can fix it.

Thanks,
Christian

--
Christian Gmeiner
Developer for Rockbox (http://www.rockbox.org)
Maintainer of the DXR3-Plugin for VDR: 
http://sourceforge.net/projects/dxr3plugin/
Maintainer of VDR-Ebuilds at Gentoo.de





arts broken

2005-10-04 Thread Christian Gmeiner

Hi all.

I am quite new to wine and i love it very much, but there are some 
things to improve.
For instance i want to use arts as soundoutput, but when it is enabled, 
wine crash at startup.


Is anybody working on it to fix it? If not, i would like to try to do 
the job.


Greets,
Christian

--
Christian Gmeiner
Developer for Rockbox (http://www.rockbox.org)
Maintainer of the DXR3-Plugin for VDR: 
http://sourceforge.net/projects/dxr3plugin/
Maintainer of VDR-Ebuilds at Gentoo.de