From 77b1e3f9bcb0c7e2e60e8fc4c748ccb49e9edf23 Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Fri, 23 Jan 2015 19:41:03 +0200 Subject: [PATCH] 3100b6 --- hardfile.cpp | 2 +- od-win32/win32.h | 4 ++-- od-win32/winuaechangelog.txt | 16 ++++++++++++++++ specialmonitors.cpp | 27 ++++++++++++++++++++------- 4 files changed, 39 insertions(+), 10 deletions(-) diff --git a/hardfile.cpp b/hardfile.cpp index ee3b6229..e9f8a9bf 100644 --- a/hardfile.cpp +++ b/hardfile.cpp @@ -1345,7 +1345,7 @@ int scsi_hd_emulate (struct hardfiledata *hfd, struct hd_hardfiledata *hdhfd, ua if (alen >= r[0] + 1 + 8) { uae_u32 blocks = (uae_u32)(hfd->virtsize / hfd->ci.blocksize); p[-1] = 8; - wl(p + 0, blocks); + wl(p + 0, blocks < 0x01000000 ? blocks : 0); wl(p + 4, hfd->ci.blocksize); p += 8; } diff --git a/od-win32/win32.h b/od-win32/win32.h index 52f07959..2e6aa5c1 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("5") +#define WINUAEBETA _T("6") #else #define WINUAEBETA _T("") #endif -#define WINUAEDATE MAKEBD(2015, 1, 21) +#define WINUAEDATE MAKEBD(2015, 1, 23) //#define WINUAEEXTRA _T("AmiKit Preview") //#define WINUAEEXTRA _T("Amiga Forever Edition") diff --git a/od-win32/winuaechangelog.txt b/od-win32/winuaechangelog.txt index 41f36d07..418ccdc7 100644 --- a/od-win32/winuaechangelog.txt +++ b/od-win32/winuaechangelog.txt @@ -1,4 +1,20 @@ +Beta 6: + +- b5 input device update fix, changing to any keyboard layout didn't reset "remembered" device name. +- Cycle at DDFSTRT-1 was sometimes incorrectly unavailable for blitter. (b5) +- In some rare situations blitter stole cycle(s) from copper. +- Pre-calculated end position of scanline was incorrect in some situations causing incorrect bitplane + vs other DMA cycle allocation (b5) +- If RawInput didn't find any game controller HID devices and command line didn't have any forced HID parameters, + always try again when new device is inserted instead of disabling HID support completely and falling back to + DirectInput. RawInput and DirectInput device identifiers are different and wrong device may have been selected + in some situations. +- Master volume is now real master volume control. Paula, CD and AHI are sub-volume controls. +- Toccata Paula (AUX2 input) volume control implemented. Not tested. +- GVP SCSI without ROM didn't set any autoconfig data. +- Fastlane (and possibly some other Z3 SCSI boards) didn't autoconfigure if Z3 autoconfig space was disabled. + Beta 5: - Fixed ESP SCSI DMA emulation bug I introduced when non-DMA mode support was added (Original code from QEMU was DMA-only) diff --git a/specialmonitors.cpp b/specialmonitors.cpp index 4f9f5ebb..247d2d69 100755 --- a/specialmonitors.cpp +++ b/specialmonitors.cpp @@ -124,7 +124,21 @@ static bool dctv(struct vidbuffer *src, struct vidbuffer *dst, bool doublelines, uae_u8 *line = src->bufmem + yoff * src->rowbytes; uae_u8 *dstline = dst->bufmem + (((y * 2 + oddlines) - dst->yoffset) / vdbl) * dst->rowbytes; - for (x = 1; x < src->inwidth; x += 2) { + if (y < 60) { + write_log(_T("%d:\n"), y); + for (x = 22; x < 300; x += 1) { + uae_u8 *s = line + ((x << 1) / hdbl) * src->pixbytes; + write_log(_T("%01x"), FIRGB(src, s)); + } + write_log(_T("*\n")); + for (x = 21; x < 300; x += 1) { + uae_u8 *s = line + ((x << 1) / hdbl) * src->pixbytes; + write_log(_T("%01x"), FIRGB(src, s)); + } + write_log(_T("\n")); + } + + for (x = 1; x < src->inwidth; x += 4) { uae_u8 *s = line + ((x << 1) / hdbl) * src->pixbytes; uae_u8 *d = dstline + ((x << 1) / hdbl) * dst->pixbytes; uae_u8 *s2 = s + src->rowbytes; @@ -135,11 +149,11 @@ static bool dctv(struct vidbuffer *src, struct vidbuffer *dst, bool doublelines, g = newval << 4; b = newval << 4; - PRGB(dst, d, r, g, b); - PRGB(dst, d + dst->pixbytes, r, g, b); - PRGB(dst, d + dst->rowbytes, r, g, b); - PRGB(dst, d + dst->rowbytes + dst->pixbytes, r, g, b); - + for (int xx = 0; xx < 4; xx++) { + PRGB(dst, d + dst->pixbytes * xx, r, g, b); + PRGB(dst, d + dst->rowbytes + dst->pixbytes * xx, r, g, b); + } + } } @@ -147,7 +161,6 @@ static bool dctv(struct vidbuffer *src, struct vidbuffer *dst, bool doublelines, return true; } - static const uae_u8 ham_e_magic_cookie[] = { 0xa2, 0xf5, 0x84, 0xdc, 0x6d, 0xb0, 0x7f }; static const uae_u8 ham_e_magic_cookie_reg = 0x14; static const uae_u8 ham_e_magic_cookie_ham = 0x18; -- 2.47.3