]> git.unchartedbackwaters.co.uk Git - francis/winuae.git/commitdiff
ECS Denise/AGA genlock color register bit handling fix.
authorToni Wilen <twilen@winuae.net>
Thu, 14 Mar 2024 16:30:02 +0000 (18:30 +0200)
committerToni Wilen <twilen@winuae.net>
Thu, 14 Mar 2024 16:30:02 +0000 (18:30 +0200)
custom.cpp

index 0a256c5fc894d07c49e490c5f1c5db439576900a..e4525dc7e3d7b7de1a1415906cf4d15b4f7b1361 100644 (file)
@@ -10196,11 +10196,10 @@ static void COLOR_WRITE(int hpos, uae_u16 v, int num)
 
        } else {
 #endif
-               v &= 0x8fff;
-               if (!ecs_denise) {
-                       v &= 0xfff;
+               if (ecs_denise) {
+                       color_regs_genlock[num] = v >> 15;
                }
-               color_regs_genlock[num] = v >> 15;
+               v &= 0xfff;
                if (num && v == 0) {
                        colzero = true;
                }
@@ -15236,7 +15235,7 @@ static int REGPARAM2 custom_wput_1 (int hpos, uaecptr addr, uae_u32 value, int n
        case 0x1A4: case 0x1A6: case 0x1A8: case 0x1AA: case 0x1AC: case 0x1AE:
        case 0x1B0: case 0x1B2: case 0x1B4: case 0x1B6: case 0x1B8: case 0x1BA:
        case 0x1BC: case 0x1BE:
-               COLOR_WRITE(hpos, value & 0xFFF, (addr & 0x3E) / 2);
+               COLOR_WRITE(hpos, value & 0x8FFF, (addr & 0x3E) / 2);
                break;
        case 0x120: case 0x124: case 0x128: case 0x12C:
        case 0x130: case 0x134: case 0x138: case 0x13C: