Example my assembly with gcc -02 flag
Before:
![screen_before](/uploads/f2bf5f4c793c159c31ac42b635c46d5a/screen_before.jpg)
After:
![screen_after](/uploads/051315ad1e3c064046446782d36e1a29/screen_after.jpg)
--
v4: d3dcompiler: replaced to char, wchar_t parameter if possible
wcmdmain: replaced to char, wchar_t parameter if possible
https://gitlab.winehq.org/wine/wine/-/merge_requests/6158
--
v5: msvcrt/tests: Add tests of _strnicmp_l().
include: Add _strnicmp_l() declaration.
msvcrt/tests: Test _stricmp() with multiple bytes characters.
msvcrt: Correct the result of non-ASCII characters for _strnicmp_l().
msvcrt/tests: Test _tolower_l() with DBCS.
msvcrt: Improve DBCS support for _tolower_l().
msvcrt/tests: Test tolower() with DBCS.
https://gitlab.winehq.org/wine/wine/-/merge_requests/6703
--
v4: msvcrt/tests: Add tests of _strnicmp_l().
include: Add _strnicmp_l() declaration.
msvcrt/tests: Test _stricmp() with multiple bytes characters.
msvcrt: Correct the result of non-ASCII characters for _strnicmp_l().
msvcrt/tests: Test _tolower_l() with DBCS.
msvcrt: Improve DBCS support for _tolower_l().
msvcrt/tests: Test tolower() with DBCS.
https://gitlab.winehq.org/wine/wine/-/merge_requests/6703
--
v3: msvcrt/tests: Add tests of _strnicmp_l().
include: Add _strnicmp_l() declaration.
msvcrt/tests: Test _stricmp() with multiple bytes characters.
msvcrt: Correct the result of non-ASCII characters for _strnicmp_l().
msvcrt/tests: Test _tolower_l() with DBCS.
msvcrt: Improve DBCS support for _tolower_l().
msvcrt/tests: Test tolower() with DBCS.
https://gitlab.winehq.org/wine/wine/-/merge_requests/6703
This MR is the first of multiples MRs adding support for the Bluetooth stack API in Wine:
1. The winebth.sys driver, which talks to BlueZ and implements several key IOCTLs for communicating with Bluetooth devices and radios.
2. A bthserv service, which is responsible for keeping track of the authentication agent, and relaying authentication requests and responses to and from the driver.
3. Userspace APIs (bluetoothapis.dll, bthprops.cpl, Windows.Devices.Bluetooth, etc).
winebth.sys is split into two "sub" drivers:
`winebth.sys`: The main entrypoint, loaded by winedevice. It listens for changes to Bluetooth devices and radios and authentication events on BlueZ, passing them on the bthenum. It also handles most IOCTL operations on Bluetooth radio PDOs.
`bthenum`: Responsible for creating nodes for discovered Bluetooth devices and associated services. It also tries to validate any IOCTLs relating to bluetooth devices before passing them to winebth.sys. (Not in this MR, likely in part 2)
The unix code is split between dbus.c, unixlib.c and winebluetooth.c, where winebluetooth is a simple wrapper around unixlib for the sake of organization.
--
v25: dlls/winebth.sys: Register and enable BTHPORT_DEVICE and BLUETOOTH_RADIO interfaces for radio PDOs.
dlls/winebth.sys: Derive a unique hardware ID for radio PDOs from their corresponding BlueZ object path.
dlls/winebth.sys: Create radio PDOs from the list of org.bluez.Adapter1 objects on BlueZ.
dlls/winebth.sys: Add a basic unixlib stub using DBus.
https://gitlab.winehq.org/wine/wine/-/merge_requests/6621