Added the no brown option for PCjr.
This commit is contained in:
@@ -1606,6 +1606,8 @@ pc_close(UNUSED(thread_t *ptr))
|
|||||||
|
|
||||||
plat_mouse_capture(0);
|
plat_mouse_capture(0);
|
||||||
|
|
||||||
|
warning("CS:EIP = %04X:%08X\n", CS, cpu_state.pc);
|
||||||
|
|
||||||
/* Close all the memory mappings. */
|
/* Close all the memory mappings. */
|
||||||
mem_close();
|
mem_close();
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,8 @@
|
|||||||
|
|
||||||
#define PCJR_RGB 0
|
#define PCJR_RGB 0
|
||||||
#define PCJR_COMPOSITE 1
|
#define PCJR_COMPOSITE 1
|
||||||
|
#define PCJR_RGB_NO_BROWN 4
|
||||||
|
#define PCJR_RGB_IBM_5153 5
|
||||||
|
|
||||||
typedef struct pcjr_s
|
typedef struct pcjr_s
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -784,6 +784,8 @@ static const device_config_t pcjr_config[] = {
|
|||||||
.selection = {
|
.selection = {
|
||||||
{ .description = "RGB", .value = PCJR_RGB },
|
{ .description = "RGB", .value = PCJR_RGB },
|
||||||
{ .description = "Composite", .value = PCJR_COMPOSITE },
|
{ .description = "Composite", .value = PCJR_COMPOSITE },
|
||||||
|
{ .description = "RGB (no brown)", .value = PCJR_RGB_NO_BROWN },
|
||||||
|
{ .description = "RGB (IBM 5153)", .value = PCJR_RGB_IBM_5153 },
|
||||||
{ .description = "" }
|
{ .description = "" }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -686,7 +686,7 @@ pcjr_vid_init(pcjr_t *pcjr)
|
|||||||
pcjr->memctrl &= ~0x24;
|
pcjr->memctrl &= ~0x24;
|
||||||
|
|
||||||
display_type = device_get_config_int("display_type");
|
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");
|
pcjr->apply_hd = device_get_config_int("apply_hd");
|
||||||
overscan_x = 256;
|
overscan_x = 256;
|
||||||
overscan_y = 32;
|
overscan_y = 32;
|
||||||
@@ -698,6 +698,9 @@ pcjr_vid_init(pcjr_t *pcjr)
|
|||||||
vid_in, NULL, NULL, vid_out, NULL, NULL, pcjr);
|
vid_in, NULL, NULL, vid_out, NULL, NULL, pcjr);
|
||||||
timer_add(&pcjr->timer, vid_poll, pcjr, 1);
|
timer_add(&pcjr->timer, vid_poll, pcjr, 1);
|
||||||
|
|
||||||
|
if (pcjr->composite)
|
||||||
cga_palette = 0;
|
cga_palette = 0;
|
||||||
|
else
|
||||||
|
cga_palette = (display_type << 1);
|
||||||
cgapal_rebuild();
|
cgapal_rebuild();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user