Added the no brown option for PCjr.

This commit is contained in:
OBattler
2025-06-24 04:25:19 +02:00
parent eef641c164
commit ef342b4031
4 changed files with 16 additions and 7 deletions

View File

@@ -1606,6 +1606,8 @@ pc_close(UNUSED(thread_t *ptr))
plat_mouse_capture(0);
warning("CS:EIP = %04X:%08X\n", CS, cpu_state.pc);
/* Close all the memory mappings. */
mem_close();

View File

@@ -17,8 +17,10 @@
#pragma once
#define PCJR_RGB 0
#define PCJR_COMPOSITE 1
#define PCJR_RGB 0
#define PCJR_COMPOSITE 1
#define PCJR_RGB_NO_BROWN 4
#define PCJR_RGB_IBM_5153 5
typedef struct pcjr_s
{

View File

@@ -782,9 +782,11 @@ static const device_config_t pcjr_config[] = {
.file_filter = "",
.spinner = { 0 },
.selection = {
{ .description = "RGB", .value = PCJR_RGB },
{ .description = "Composite", .value = PCJR_COMPOSITE },
{ .description = "" }
{ .description = "RGB", .value = PCJR_RGB },
{ .description = "Composite", .value = PCJR_COMPOSITE },
{ .description = "RGB (no brown)", .value = PCJR_RGB_NO_BROWN },
{ .description = "RGB (IBM 5153)", .value = PCJR_RGB_IBM_5153 },
{ .description = "" }
}
},
{

View File

@@ -686,7 +686,7 @@ pcjr_vid_init(pcjr_t *pcjr)
pcjr->memctrl &= ~0x24;
display_type = device_get_config_int("display_type");
pcjr->composite = (display_type != PCJR_RGB);
pcjr->composite = (display_type == PCJR_COMPOSITE);
pcjr->apply_hd = device_get_config_int("apply_hd");
overscan_x = 256;
overscan_y = 32;
@@ -698,6 +698,9 @@ pcjr_vid_init(pcjr_t *pcjr)
vid_in, NULL, NULL, vid_out, NULL, NULL, pcjr);
timer_add(&pcjr->timer, vid_poll, pcjr, 1);
cga_palette = 0;
if (pcjr->composite)
cga_palette = 0;
else
cga_palette = (display_type << 1);
cgapal_rebuild();
}