mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-10-20 09:53:55 +00:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4ec8941339 | |||
| de7e6e01d4 |
@@ -83,21 +83,20 @@ void Joycons::ScanThread(std::stop_token stop_token) {
|
|||||||
constexpr u16 nintendo_vendor_id = 0x057e;
|
constexpr u16 nintendo_vendor_id = 0x057e;
|
||||||
Common::SetCurrentThreadName("JoyconScanThread");
|
Common::SetCurrentThreadName("JoyconScanThread");
|
||||||
|
|
||||||
auto last_ret = 0u;
|
|
||||||
do {
|
do {
|
||||||
auto ret = SDL_hid_device_change_count();
|
|
||||||
if (last_ret == 0u || last_ret != ret) {
|
|
||||||
last_ret = ret;
|
|
||||||
SDL_hid_device_info* devs = SDL_hid_enumerate(nintendo_vendor_id, 0x0);
|
SDL_hid_device_info* devs = SDL_hid_enumerate(nintendo_vendor_id, 0x0);
|
||||||
for (auto* cur_dev = devs; cur_dev; cur_dev = cur_dev->next) {
|
SDL_hid_device_info* cur_dev = devs;
|
||||||
|
|
||||||
|
while (cur_dev) {
|
||||||
if (IsDeviceNew(cur_dev)) {
|
if (IsDeviceNew(cur_dev)) {
|
||||||
LOG_DEBUG(Input, "Device Found,type : {:04X} {:04X}", cur_dev->vendor_id, cur_dev->product_id);
|
LOG_DEBUG(Input, "Device Found,type : {:04X} {:04X}", cur_dev->vendor_id,
|
||||||
|
cur_dev->product_id);
|
||||||
RegisterNewDevice(cur_dev);
|
RegisterNewDevice(cur_dev);
|
||||||
}
|
}
|
||||||
cur_dev = cur_dev->next;
|
cur_dev = cur_dev->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
SDL_hid_free_enumeration(devs);
|
SDL_hid_free_enumeration(devs);
|
||||||
}
|
|
||||||
} while (Common::StoppableTimedWait(stop_token, std::chrono::seconds{5}));
|
} while (Common::StoppableTimedWait(stop_token, std::chrono::seconds{5}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -82,7 +82,12 @@ VkViewport GetViewportState(const Device& device, const Maxwell& regs, size_t in
|
|||||||
|
|
||||||
if (lower_left) {
|
if (lower_left) {
|
||||||
// Flip by surface clip height
|
// Flip by surface clip height
|
||||||
y += conv(static_cast<f32>(regs.surface_clip.height));
|
const float clip_height = conv(static_cast<f32>(regs.surface_clip.height));
|
||||||
|
if (src.scale_y < 0.0f && y >= clip_height) {
|
||||||
|
y = clip_height - y;
|
||||||
|
} else {
|
||||||
|
y += clip_height;
|
||||||
|
}
|
||||||
height = -height;
|
height = -height;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user