Update palettes

pull/306/head
IanSB 2022-03-26 19:41:41 +00:00
rodzic b06913a690
commit 6b4efcad4c
3 zmienionych plików z 17 dodań i 26 usunięć

Wyświetl plik

@ -64,9 +64,9 @@ preload_capture_line_even:
capture_line_even_8bpp:
push {lr}
tst r3, #BIT_VSYNC_MARKER
ldrne r5, =0x01010101
ldrne r5, =0x40404040
moveq r5, #0
ldrne r6, =0x01010101
ldrne r6, =0x40404040
moveq r6, #0
tst r3, #BIT_DEBUG
eorne r5, r5, #0x05 //magenta in leftmost
@ -141,9 +141,9 @@ preload_capture_line_odd:
capture_line_odd_8bpp:
push {lr}
tst r3, #BIT_VSYNC_MARKER
ldrne r5, =0x01010101
ldrne r5, =0x40404040
moveq r5, #0
ldrne r6, =0x01010101
ldrne r6, =0x40404040
moveq r6, #0
tst r3, #BIT_DEBUG
eorne r5, r5, #0x05 //magenta in leftmost

Wyświetl plik

@ -1252,7 +1252,7 @@ skip_psync_loop_simple_fast_loop\@:
.macro SETUP_VSYNC_DEBUG_R11_R12
tst r3, #BIT_VSYNC_MARKER
ldrne r11, =0x01010101
ldrne r11, =0x40404040
moveq r11, #0
movne r12, r11
moveq r12, #0
@ -1263,7 +1263,7 @@ skip_psync_loop_simple_fast_loop\@:
.macro SETUP_VSYNC_DEBUG_R11_R12_DOUBLE
tst r3, #BIT_VSYNC_MARKER
ldrne r11, =0x00010001
ldrne r11, =0x00400040
moveq r11, #0
movne r12, r11
moveq r12, #0
@ -1406,7 +1406,7 @@ skip_psync_loop_simple_fast_loop\@:
orr r9, r9, r8
orr r10, r10, r8
tst r3, #BIT_VSYNC_MARKER
ldrne r8, =0x01010101
ldrne r8, =0x40404040
eorne r9, r9, r8 // eor in the VSync indicator (orr doesn't work on zx80/81 due to white screen)
eorne r10, r10, r8
tst r3, #BIT_DEBUG

Wyświetl plik

@ -2730,15 +2730,12 @@ void generate_palettes() {
r = (i & 0x20) ? 0xaa : 0x00;
r = (i & 0x10) ? (r + 0x55) : r;
g = r; b = r;
if (i & 1) {
r ^= 0xff;
}
break;
case PALETTE_DRAGON_COCO:
case PALETTE_DRAGON_COCO_FULL: {
if ((i & 0x40) == 0x40) {
r = 0; g = 0; b = 0;
r = 0xff; g = 0; b = 0;
} else {
switch (i & 0x2d) { //these five are luma independent
case (bz + rp):
@ -2794,7 +2791,7 @@ void generate_palettes() {
case PALETTE_ATOM_6847_EMULATORS: {
if ((i & 0x40) == 0x40) {
r = 0; g = 0; b = 0;
r = 0xff; g = 0; b = 0;
} else {
switch (i & 0x2d) { //these five are luma independent
case (bz + rp):
@ -2849,7 +2846,7 @@ void generate_palettes() {
case PALETTE_ATOM_MKII: {
if ((i & 0x40) == 0x40) {
r = 0; g = 0; b = 0;
r = 0xff; g = 0; b = 0;
} else {
switch (i & 0x2d) { //these five are luma independent
case (bz + rp):
@ -2905,7 +2902,7 @@ void generate_palettes() {
case PALETTE_ATOM_MKII_PLUS:
case PALETTE_ATOM_MKII_FULL: {
if ((i & 0x40) == 0x40) {
r = 0; g = 0; b = 0;
r = 0xff; g = 0; b = 0;
} else {
switch (i & 0x2d) { //these five are luma independent
case (bz + rp):
@ -2966,9 +2963,6 @@ void generate_palettes() {
r = 0xff; break ;
}
g = r; b = r;
if (i & 1) {
r ^= 0xff;
}
break;
case PALETTE_MONO3:
switch (i & 0x12) {
@ -2981,9 +2975,6 @@ void generate_palettes() {
r = 0xff; break ;
}
g = r; b = r;
if (i & 1) {
r ^= 0xff;
}
break;
case PALETTE_MONO4:
switch (i & 0x12) {
@ -2997,9 +2988,6 @@ void generate_palettes() {
r = 0xff; break ;
}
g = r; b = r;
if (i & 1) {
r ^= 0xff;
}
break;
case PALETTE_MONO6:
switch (i & 0x24) {
@ -3019,9 +3007,6 @@ void generate_palettes() {
r = 0xff; break ;
}
g = r; b = r;
if (i & 1) {
r ^= 0xff;
}
break;
case PALETTE_YG_4:
@ -4204,12 +4189,18 @@ void generate_palettes() {
}
if ((i & 0x40) && (palette != PALETTE_RrGgBbI)) {
r ^= 0xff;
}
if (m == -1) { // calculate mono if not already set
m = ((299 * r + 587 * g + 114 * b + 500) / 1000);
if (m > 255) {
m = 255;
}
}
palette_array[palette][i] = (m << 24) | (b << 16) | (g << 8) | r;
}
strncpy(palette_names[palette], default_palette_names[palette], MAX_NAMES_WIDTH);