]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
5310b2
authorToni Wilen <twilen@winuae.net>
Sun, 29 Sep 2024 17:04:43 +0000 (20:04 +0300)
committerToni Wilen <twilen@winuae.net>
Sun, 29 Sep 2024 17:04:43 +0000 (20:04 +0300)
od-win32/rp.cpp
od-win32/screenshot.cpp
od-win32/win32.h
od-win32/winuaechangelog.txt

index e6de3c6377854cb393095b3d0f33df6f46cfc153..f6c9ed35f8721e31ba3158c6ea448d9c9a10b7b4 100644 (file)
@@ -933,6 +933,8 @@ static void set_screenmode (struct RPScreenMode *sm, struct uae_prefs *p)
        }
        p->gf[0].gfx_filter_left_border = 0;
        p->gf[0].gfx_filter_top_border = 0;
+       p->gf[0].gfx_filter_right_border = 0;
+       p->gf[0].gfx_filter_bottom_border = 0;
        p->gf[0].gfx_filter_autoscale = AUTOSCALE_CENTER;
        disp = getdisplay(p, 0);
 
@@ -1123,6 +1125,19 @@ static void set_screenmode (struct RPScreenMode *sm, struct uae_prefs *p)
                                        p->gfx_xcenter_size = sm->lClipWidth;
                                if (sm->lClipHeight > 0)
                                        p->gfx_ycenter_size = sm->lClipHeight;
+                               p->gf[0].gfx_filter_top_border = sm->lClipTop;
+                               p->gf[0].gfx_filter_bottom_border = sm->lClipTop + sm->lClipHeight;
+
+                               if (hdbl > RES_MAX) {
+                                       p->gf[0].gfx_filter_left_border = sm->lClipLeft << (hdbl - RES_MAX);
+                                       p->gf[0].gfx_filter_right_border = p->gf[0].gfx_filter_left_border + (sm->lClipWidth << (hdbl - RES_MAX));
+                               } else {
+                                       p->gf[0].gfx_filter_left_border = sm->lClipLeft >> (RES_MAX - hdbl);
+                                       p->gf[0].gfx_filter_right_border = p->gf[0].gfx_filter_left_border + (sm->lClipWidth >> (RES_MAX - hdbl));
+                               }
+                               // backwards compatibility fix
+                               p->gf[0].gfx_filter_left_border -= 0x38 * 4;
+                               p->gf[0].gfx_filter_right_border -= 0x38 * 4;
                        }
                        
                }
@@ -1185,6 +1200,8 @@ static void set_screenmode (struct RPScreenMode *sm, struct uae_prefs *p)
                if (sm->dwClipFlags & RP_CLIPFLAGS_AUTOCLIP) {
                        p->gf[0].gfx_filter_left_border = -1;
                        p->gf[0].gfx_filter_top_border = -1;
+                       p->gf[0].gfx_filter_right_border = -1;
+                       p->gf[0].gfx_filter_bottom_border = -1;
                }
                if (interpolation_v102) {
                        p->gf[0].gfx_filter_bilinear = (sm->dwScreenMode & RP_SCREENMODE_INTERPOLATION) != 0;
index 413f414f9c92845d3b9273adcf67c212fca3be45..a72a1c226d2e471fafb4b0718d9db3daf401fb6a 100644 (file)
@@ -683,7 +683,7 @@ static void count_colors(bool alpha)
                        if (c >= palettecount) {
                                if (palettecount >= 256) {
                                        // run out of palette slots
-                                       write_log("Run out of palette slots when counting colors.");
+                                       write_log("Run out of palette slots when counting colors.\n");
                                        uniquecolorcount = -1;
                                        xfree(palettebm);
                                        palettebm = NULL;
index 274a08711af86f7a9af8623dc24e9d62e878e60f..a61d01669b4dc2081a0208d8b56161c013019013 100644 (file)
 #define LANG_DLL_FULL_VERSION_MATCH 0
 
 #if WINUAEPUBLICBETA
-#define WINUAEBETA _T("1")
+#define WINUAEBETA _T("2")
 #else
 #define WINUAEBETA _T("")
 #endif
 
-#define WINUAEDATE MAKEBD(2024, 9, 15)
+#define WINUAEDATE MAKEBD(2024, 9, 29)
 
 //#define WINUAEEXTRA _T("AmiKit Preview")
 //#define WINUAEEXTRA _T("Amiga Forever Edition")
index cfc6a257d2952eb35ababde668bbdcabd75e60ef..fd6723542e26771320a66e388c652195b9288c32 100644 (file)
@@ -1,4 +1,39 @@
 
+This is quick 5.3.1 beta series, normal update to 5.3.0. You might have heard that I have started rewriting (almost) whole custom chipset emulation few months ago. This isn't it. Still work to do, it isn't that useful in fast CPU modes yet.
+
+Beta 2:
+
+- TekMagic RAM configuration fixed.
+- Added QuikPak XP v2.2 ROM and original QuikPak ROM (which only contains 68060 FPU disable code, no SCSI)
+- SCSI CD audio PLAY AUDIO TRACK/INDEX returned error if end track was higher than last track. SCSI spec allows it and it should not cause error.
+- Fixed integer scaling + aspect ratio correction: aspect ratio caused strange side-effects depending on window size.
+- When CTRL+F12 is pressed and current mode is windowed, mode gets switched to last used mode (fullwindow or fullscreen). Last used native and RTG fullwindow/fullscreen state is stored separately. Last used fullscreen mode (fullwindow or fullscreen) is now stored in registry/ini. Fullscreen is default if last used mode does not (yet) exist.
+- Taking screenshot from interlace mode now always return same height image, current frame type does not anymore affect it.
+
+Beta 1:
+
+- Added support for Picmatic Marbelle Vice and Tierras Salvajes 100Hz TV laser disc arcade games. 100Hz TV versions use external hardware to read lightgun positions. All older games use Amiga built-in lightgun support hardware (+external switch to select between player 1 and 2 guns)
+
+- Fixed GamePorts panel "Swap ports".
+- Some screen resolution/font combinations caused crash when on screen keyboard was opened.
+- Fixed music glitch in James Pond 2 (non-AGA). Probably affected other interrupt based music players too. (5300b5)
+- Prometheus Firestorm PCI bridge interrupt state bit was inverted.
+- Implemented Mediator 1200TX second PCI window in 8M mode. (First 4M is first window, second 4M is second window), second window is normally mapped after first bank, emulating pre-1200TX hardware which only have one 8M window.
+- S3 Virge PCI missed one byteswapping mode.
+- If config with Golem SCSI II HD controller was loaded, it changed to HD3000. SCSI II had same internal name prefix as Golem HD3000.
+- Fixed SPRxPOS modification in last possible moment being missed causing sprite to be disabled. (Reshoot R background flickering)
+- Copper COPJMP1 and COPJMP2 strobed with DMA disabled is accurately emulated. Old and wrong "Copper stops when this happens" was not fully removed when correct behavior was added (Copper does not stop but jumps to address COP1LC OR COP2LC. Which usually as a side-effect stops it quite quickly because MOVE to "dangereous" register is very likely). Copper only stops when writing to (or "skipping") write to "dangerous" register.
+- Allow 16-bit color depth only in Direct3D 9 mode. GDI and D3D11 force 32-bit depth.
+- Serial transmit (in non-direct mode) now in average matches SERPER bit rate. Previously it was always slightly faster. Receive rate (in non-direct) is now throttled to max SERPER/4 rate instead of receiving new byte byte immediately after previous receive interrupt was cleared. Rate needs to be less than SERPER because it is meant for be very compatible with external serial connection without random buffer overflows.
+- In fastest CPU mode, when there is free time at the end of scanline, skip event handling for few wait loops to improve performance.
+- Fixed possible crash when AmigaOS 4 resets and switches to PPC mode if directory filesystem emulation was in use.
+- Added GVP T-Rex II accelerator board ROM. It is very similar to TekMagic.
+- Added "v1.0" DKB Wildfire ROM image (previously known was renamed as v1.1, it is larger and has new disabled Display options menu item but unfortunately all internal versions numbers are identical to v1.0)
+- Implemented OpalVision undocumented automatic VRAM bank switch when VRAM address wraps around and fixed ignored VRAM address load command if it was located in second control line. Both features are used in King of Karate to have wider than screen scrolling background. Previously background was not scrolling.
+
+
+5.3.0
+
 Beta 10:
 
 - Fast CPU and serial port loop back mode: transmit never finished, nothing was received.