From 1e81c84ed109b945dce6bdbba10eda9da3e35d64 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Sun, 29 Aug 2021 20:00:51 +0300 Subject: [PATCH] 4900b31 --- od-win32/win32.h | 4 ++-- od-win32/win32gui.cpp | 2 +- od-win32/winuaechangelog.txt | 20 ++++++++++++++++++++ 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/od-win32/win32.h b/od-win32/win32.h index d137cba0..03de967c 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("Beta 30") +#define WINUAEBETA _T("Beta 31") #else #define WINUAEBETA _T("") #endif -#define WINUAEDATE MAKEBD(2021, 8, 15) +#define WINUAEDATE MAKEBD(2021, 8, 29) //#define WINUAEEXTRA _T("AmiKit Preview") //#define WINUAEEXTRA _T("Amiga Forever Edition") diff --git a/od-win32/win32gui.cpp b/od-win32/win32gui.cpp index 4cadd56c..c3f2daed 100644 --- a/od-win32/win32gui.cpp +++ b/od-win32/win32gui.cpp @@ -12368,8 +12368,8 @@ static INT_PTR MiscDlgProc (HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) InitializeListView (hDlg); values_to_miscdlg (hDlg); enable_for_miscdlg (hDlg); - setstatefilename (hDlg); addhistorymenu(hDlg, NULL, IDC_STATENAME, HISTORY_STATEFILE, true); + setstatefilename(hDlg); recursive--; return TRUE; diff --git a/od-win32/winuaechangelog.txt b/od-win32/winuaechangelog.txt index d20b9f09..d20758b4 100644 --- a/od-win32/winuaechangelog.txt +++ b/od-win32/winuaechangelog.txt @@ -1,5 +1,25 @@ +- Sprite right overscan fixes. +- Programmed mode adjustments. HSSTOP does not affect display position. HSSTRT - HSSTOP only needs to be long enough for display device to detect it. Note that WinUAE will accept invalid HSSTOP and other impossible in real world programmed modes, there is no validation against real world video signal standards. +- HBSTRT/STOP accuracy improved in really weird situations (like having multiple HBLANK regions in single scanline..). Undocumented special case emulated: if HBSTRT to HBSTOP is less than 1 lores pixel (4 shres pixels), 4-(HBSTOP-HBSTRT) shres pixels of bitplane is visible before COLOR0 starts. Subpixel mode required. Apparently switching border on takes 1 lores pixel. (HB is Denise/Lisa internal trigger for border on state) +- Bitplane to refresh strobe vs refresh-only slot conflict behavior fixed (Water intro / Acme, Vectors Again / Armada etc, glitches are now correct if ECS Agnus) +- Optimized bitplane allocation now works correctly in NTSC mode, needs 2 alternating buffers because line length alternates in NTSC. +- Writing to horizontal DIWSTRT/STOP just before it would match missed the check. +- DIWHIGH full AGA hires/shres positioning bit support. +- Line buffer size was not large enough to fit "extreme" overscan superhires mode. +- HCENTER 8/9 CCK horizontal blanking period emulated. HCENTER generates extra sync pulse when it matches and current line is vsync line and long field. This is normally invisible but it can be visible in (weird or badly configured) programmed modes. Visible result is small black box, about at the middle of last line(s), ECS Denise only. This is never visible on AGA because blanking is generated by Lisa using internal registers. ECS Denise uses CSYNC pin to detect blanking condition. OCS Denise does not have CSYNC pin and uses internal hardwired blanking only. +- Fixed wrong border color/black color in right border when horizontal centering was enabled. Probably also possible in some other situations. +- ECS Denise hires resolution sprite horizontal position bit works strangely if bitplane resolution is lores or hires: first pixel row of sprite becomes transparent. Horizontal bit only works correctly if bitplane resolution is superhires. +- Subpixel emulation mode + superhires had single shres pixel offset in horizontal hblank and borderblank positioning. This change also means borderblank/border bug can't be anymore visible without subpixel mode + superhires resolution. +- DMA debugger uses first refresh slot to show if line is vertical blanking (B), vertical sync (S) or vertical diw is open (=), second refresh slot is used for long field (F) and long line (L). These special slots are marked with '*' to not (too easily) confuse them with same symbols in other slots. Horizontal diw ('(' and ')'), programmed horizontal blanking ('[' and ']') and programmed horizontal sync ('{' and '}') are also marked. +- PCem v17 merge. Some SVGA updates, Voodoo 3 updates, x86 CPU updates. (Probably moving to 86box in the future, PCem is not updated anymore.) +- Misc panel statefile text box was empty (might be Windows version specific or something) even when loaded config had statefile configured. +- Seems to run normally under Windows 11 insider build. +- fs debugger command fixed, display emulation updates made it randomly inaccurate. + +Beta 30: + - BEAMCON0 LOLDIS modification was ignored unless display setup needed reinitialization (programmed refresh rate change etc..) - Programmed VBLANK (BEAMCON0 bit 12) didn't blank lines after VBSTRT in some situations. - Fixed scanline offset if resolution and BPLCON1 was changed during same scanline. -- 2.47.3