From: Toni Wilen Date: Tue, 12 Jan 2016 18:07:18 +0000 (+0200) Subject: 3300b2 X-Git-Tag: 3300~111 X-Git-Url: https://git.unchartedbackwaters.co.uk/w/?a=commitdiff_plain;h=5efa2a7d051c074f29410ec5eb61b606d8b23ed9;p=francis%2Fwinuae.git 3300b2 --- diff --git a/od-win32/dinput.cpp b/od-win32/dinput.cpp index eb7ef9e7..d3761f18 100644 --- a/od-win32/dinput.cpp +++ b/od-win32/dinput.cpp @@ -1137,13 +1137,13 @@ static void rawinputfixname (const TCHAR *name, const TCHAR *friendlyname) p2++; } if (_tcslen (p2) >= _tcslen (tmp) && !_tcsncmp (p2, tmp, _tcslen (tmp))) { + write_log(_T("[%04X/%04X] '%s' (%s) -> '%s'\n"), did->vid, did->pid, did->configname, did->name, friendlyname); xfree (did->name); // if (did->vid > 0 && did->pid > 0) // _stprintf (tmp, _T("%s [%04X/%04X]"), friendlyname, did->vid, did->pid); // else _stprintf (tmp, _T("%s"), friendlyname); did->name = my_strdup (tmp); - write_log (_T("[%04X/%04X] '%s' -> '%s'\n"), did->vid, did->pid, did->configname, did->name); } } } @@ -1488,11 +1488,10 @@ static void dumphidbuttoncaps (PHIDP_BUTTON_CAPS pcaps, int size) } } -static void dumphidcaps (struct didata *did, int cnt) +static void dumphidcaps (struct didata *did) { HIDP_CAPS caps = did->hidcaps; - write_log (_T("\n******** %d USB HID: '%s'\n"), cnt, did->name); write_log (_T("Usage: %04x\n"), caps.Usage); write_log (_T("UsagePage: %04x\n"), caps.UsagePage); write_log (_T("InputReportByteLength: %u\n"), caps.InputReportByteLength); @@ -1852,7 +1851,8 @@ static bool initialize_rawinput (void) if (HidP_GetCaps (did->hidpreparseddata, &did->hidcaps) == HIDP_STATUS_SUCCESS) { PHIDP_BUTTON_CAPS bcaps; USHORT size = did->hidcaps.NumberInputButtonCaps; - dumphidcaps (did, rawcnt); + write_log(_T("RAWHID: %d/%d %d '%s' ('%s')\n"), rawcnt, gotnum, num_joystick - 1, did->name, did->configname); + dumphidcaps (did); bcaps = xmalloc (HIDP_BUTTON_CAPS, size); if (HidP_GetButtonCaps (HidP_Input, bcaps, &size, did->hidpreparseddata) == HIDP_STATUS_SUCCESS) { dumphidbuttoncaps (bcaps, size); @@ -3042,6 +3042,16 @@ static int di_do_init (void) sortdd (di_mouse, num_mouse, DID_MOUSE); sortdd (di_keyboard, num_keyboard, DID_KEYBOARD); + for (int i = 0; i < num_joystick; i++) { + write_log(_T("M %02d: '%s' (%s)\n"), i, di_mouse[i].name, di_mouse[i].configname); + } + for (int i = 0; i < num_joystick; i++) { + write_log(_T("J %02d: '%s' (%s)\n"), i, di_joystick[i].name, di_joystick[i].configname); + } + for (int i = 0; i < num_keyboard; i++) { + write_log(_T("K %02d: '%s' (%s)\n"), i, di_keyboard[i].name, di_keyboard[i].configname); + } + return 1; } diff --git a/od-win32/win32.h b/od-win32/win32.h index 20a144ae..1ef39036 100644 --- a/od-win32/win32.h +++ b/od-win32/win32.h @@ -20,12 +20,12 @@ #define LANG_DLL_FULL_VERSION_MATCH 1 #if WINUAEPUBLICBETA -#define WINUAEBETA _T("1") +#define WINUAEBETA _T("2") #else #define WINUAEBETA _T("") #endif -#define WINUAEDATE MAKEBD(2016, 1, 9) +#define WINUAEDATE MAKEBD(2016, 1, 12) //#define WINUAEEXTRA _T("AmiKit Preview") //#define WINUAEEXTRA _T("Amiga Forever Edition") diff --git a/od-win32/win32gui.cpp b/od-win32/win32gui.cpp index 7e71acad..156facd4 100644 --- a/od-win32/win32gui.cpp +++ b/od-win32/win32gui.cpp @@ -10389,7 +10389,7 @@ static void enable_for_cpudlg (HWND hDlg) ew (hDlg, IDC_CS_CACHE_TEXT, enable); ew (hDlg, IDC_CACHE, enable); ew (hDlg, IDC_JITENABLE, jitenable); - ew (hDlg, IDC_COMPATIBLE, !workprefs.cpu_memory_cycle_exact); + ew (hDlg, IDC_COMPATIBLE, !workprefs.cpu_memory_cycle_exact && !(workprefs.cachesize && workprefs.cpu_model >= 68040)); ew (hDlg, IDC_COMPATIBLE_FPU, workprefs.fpu_model > 0); ew (hDlg, IDC_FPU_UNIMPLEMENTED, workprefs.fpu_model && !workprefs.cachesize); ew (hDlg, IDC_CPU_UNIMPLEMENTED, workprefs.cpu_model == 68060 && !workprefs.cachesize); @@ -10583,8 +10583,12 @@ static void values_from_cpudlg (HWND hDlg) } if (!workprefs.cachesize) setchecked (hDlg, IDC_JITENABLE, false); - if (oldcache == 0 && workprefs.cachesize > 0) + if (oldcache == 0 && workprefs.cachesize > 0) { canbang = 1; + } + if (workprefs.cachesize && workprefs.cpu_model >= 68040) { + workprefs.cpu_compatible = false; + } #endif if (ischecked(hDlg, IDC_CPU_PPC)) { if (workprefs.ppc_mode == 0) diff --git a/od-win32/winuaechangelog.txt b/od-win32/winuaechangelog.txt index f7aa08e4..7681cb91 100644 --- a/od-win32/winuaechangelog.txt +++ b/od-win32/winuaechangelog.txt @@ -1,4 +1,14 @@ +Beta 2: + +- Game Ports panel keyboard layouts didn't load from config file. (b1) +- Only first (of 3) Input panel keyboard config slot was loaded correctly. (b1) +- Other input handling fixes (very old, old and b1) and updates. Some problems probably still remain unfixed. +- GUI allowed unsupported combination: more compatible CPU ticked in JIT + 68040/68060 modes. +- Hardfile SCSI emulation READ CAPACITY block count off by one if PMI bit was set. +- MODE SENSE (10) added to HD SCSI emulator. + +Beta 1: - Added extra validation checks for STORAGE_DEVICE_DESCRIPTOR, buggy drivers may return invalid (negative) offset values. @@ -27,7 +37,7 @@ - Debugger memwatch points can now match only CPU instruction (CPUI) or only CPU data accesses (CPUD, CPUDR, CPUDW) - "Heat map" debugger added, shows optional visual heatmap of CPU and DMA accesses. Can list highest addresses used by CPU instruction fetches or all addresses that single device accessed (Some DMA channel, CPU) -- Some AGA modes were incorrectly detected as overrunning causing screen corruption. +- Some AGA modes were incorrectly detected as bitplane DMA overrunning causing screen corruption. - AROS ROM updated. Input system and mapping updates: