} else {
v = _tstol (val);
}
+ if (!_tcsicmp (key, _T("psurfaces")))
+ uci->pheads = v;
+ if (!_tcsicmp (key, _T("psectorspertrack")) || !_tcsicmp (key, _T("pblockspertrack")))
+ uci->psecs = v;
+ if (!_tcsicmp (key, _T("pcyls")))
+ uci->pcyls = v;
if (!_tcsicmp (key, _T("surfaces")))
uci->surfaces = v;
if (!_tcsicmp (key, _T("sectorspertrack")) || !_tcsicmp (key, _T("blockspertrack")))
uci->reserved = v;
if (!_tcsicmp (key, _T("lowcyl")))
uci->lowcyl = v;
- if (!_tcsicmp (key, _T("highcyl")) || !_tcsicmp (key, _T("cyl")))
+ if (!_tcsicmp (key, _T("highcyl")) || !_tcsicmp (key, _T("cyl")) || !_tcsicmp (key, _T("cyls")))
uci->highcyl = v;
if (!_tcsicmp (key, _T("blocksize")) || !_tcsicmp (key, _T("sectorsize")))
uci->blocksize = v;
DXGI_FORMAT texformat;
DXGI_FORMAT intformat;
bool m_tearingSupport;
+ int texdepth;
int dmult, dmultx;
int xoffset, yoffset;
float xmult, ymult;
return false;
}
+#if 0
+static void erasetexture(struct d3d11struct *d3d)
+{
+ int pitch;
+ uae_u8 *p = D3D_locktexture(d3d - &d3d11data[0], &pitch, NULL, true);
+ if (p) {
+ for (int i = 0; i < d3d->m_bitmapHeight; i++) {
+ memset(p, 255, d3d->m_bitmapWidth * d3d->texdepth / 8);
+ p += pitch;
+ }
+ D3D_unlocktexture(d3d - &d3d11data[0], -1, -1);
+ }
+}
+#endif
+
static bool CreateTexture(struct d3d11struct *d3d)
{
D3D11_TEXTURE2D_DESC desc;
d3d->texformat = depth == 32 ? DXGI_FORMAT_B8G8R8A8_UNORM : DXGI_FORMAT_B5G6R5_UNORM;
d3d->intformat = DXGI_FORMAT_B8G8R8A8_UNORM; // _SRGB;
d3d->scrformat = DXGI_FORMAT_B8G8R8A8_UNORM;
+ d3d->texdepth = depth;
d3d->dmultx = mmult;
struct MultiDisplay *md = getdisplay(&currprefs, monid);
CONTROL "Double, frames",IDC_LM_IDOUBLED,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,299,251,90,10
CONTROL "Double, fields",IDC_LM_IDOUBLED2,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,299,264,90,10
CONTROL "Double, fields+",IDC_LM_IDOUBLED3,"Button",BS_AUTORADIOBUTTON | BS_LEFT | WS_TABSTOP,299,277,90,10
- CONTROL "VRR monitor. Do not tick!",IDC_DISPLAY_VARSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,58,67,112,10
+ CONTROL "VRR monitor. Do not tick!",IDC_DISPLAY_VARSYNC,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,58,67,112,10
COMBOBOX IDC_SCREENMODE_NATIVE3,246,98,31,150,CBS_DROPDOWNLIST | CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
CONTROL "Window resize",IDC_DISPLAY_RESIZE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,161,51,92,10
END
return S_OK;
if (flow != eConsole && flow != eMultimedia)
return S_OK;
+ if (s->devicetype == SOUND_DEVICE_WASAPI_EXCLUSIVE) {
+ write_log(_T("WASAPI EX OnDefaultDeviceChanged '%s'\n"), pwstrDeviceId);
+ return S_OK;
+ }
if (s->devicetype != SOUND_DEVICE_WASAPI)
return S_OK;
if (s->index < 0)
if (!_tcscmp(current, pwstrDeviceId))
return S_OK;
_tcscpy(current, pwstrDeviceId);
- write_log(_T("OnDefaultDeviceChanged '%s'\n"), current);
+ write_log(_T("WASAPI OnDefaultDeviceChanged '%s'\n"), current);
s->reset = true;
return S_OK;
}
}
HRESULT STDMETHODCALLTYPE OnDeviceStateChanged(LPCWSTR pwstrDeviceId, DWORD dwNewState)
{
+ if (s->devicetype == SOUND_DEVICE_WASAPI_EXCLUSIVE || s->devicetype == SOUND_DEVICE_WASAPI) {
+ ;// write_log(_T("WASAPI OnDeviceStateChanged '%s' %08x\n"), pwstrDeviceId, dwNewState);
+ }
return S_OK;
}
HRESULT STDMETHODCALLTYPE OnPropertyValueChanged(LPCWSTR pwstrDeviceId, const PROPERTYKEY key)
{
+ if (s->devicetype == SOUND_DEVICE_WASAPI_EXCLUSIVE || s->devicetype == SOUND_DEVICE_WASAPI) {
+ ;// write_log(_T("WASAPI OnPropertyValueChanged '%s'\n"), pwstrDeviceId);
+ }
return S_OK;
}
};
if (mouseactive > 0)
focus = mon->monitor_id + 1;
+ //write_log(_T("setcapture %d %d %d\n"), mouseactive, focus, showcursor);
+
if (mouseactive) {
if (focus) {
if (!showcursor) {
#define LANG_DLL_FULL_VERSION_MATCH 1
#if WINUAEPUBLICBETA
-#define WINUAEBETA _T("12")
+#define WINUAEBETA _T("13")
#else
#define WINUAEBETA _T("")
#endif
-#define WINUAEDATE MAKEBD(2018, 6, 3)
+#define WINUAEDATE MAKEBD(2018, 6, 12)
//#define WINUAEEXTRA _T("AmiKit Preview")
//#define WINUAEEXTRA _T("Amiga Forever Edition")
\r
+Beta 13:\r
+\r
+- Toccata sound was not fully closed when reset/reset and caused crash if new config was loaded and started.\r
+- Returning back to D3D11 fullscreen from GUI didn't automatically recapture mouse. (b12)\r
+- Debugger f <start> <end> was broken.\r
+- Corrupted OSD graphics (if OSD was enabled) and extra dark/bright line was drawn at the bottom of display in lagless D3D11 fullscreen mode after exiting GUI.\r
+- Second to last line was not drawn in lagless mode. Very last line is invisible by design.\r
+- FMOVE and FMOVEM to memory didn't check if destination addressing mode was invalid (PC relative) and didn't generate F-line.\r
+- FMOVE to control register didn't check if more than 1 control register bit was set which is also invalid and should generate F-line.\r
+- FMOVEM to (An)+ and from -(An) are invalid.\r
+- Softfloat FABS and FNEG didn't handle infinity correctly.\r
\r
Beta 12:\r
\r