|
|
| version 1.37, 2005/02/27 15:07:36 | version 1.41, 2007/11/11 12:46:07 |
|---|---|
| Line 93 void gdc_setanalogpal(int color, int rgb | Line 93 void gdc_setanalogpal(int color, int rgb |
| event = palevent.event + palevent.events; | event = palevent.event + palevent.events; |
| event->clock = nevent.item[NEVENT_FLAMES].clock - | event->clock = nevent.item[NEVENT_FLAMES].clock - |
| (CPU_BASECLOCK - CPU_REMCLOCK); | (CPU_BASECLOCK - CPU_REMCLOCK); |
| event->color = (color * sizeof(RGB32)) + rgb; | event->color = (UINT16)((color * sizeof(RGB32)) + rgb); |
| event->value = (UINT8)value; | event->value = (UINT8)value; |
| palevent.events++; | palevent.events++; |
| } | } |
| Line 156 void gdc_analogext(BOOL extend) { | Line 156 void gdc_analogext(BOOL extend) { |
| } | } |
| gdcs.palchange = GDCSCRN_REDRAW; | gdcs.palchange = GDCSCRN_REDRAW; |
| gdcs.grphdisp |= GDCSCRN_EXT | GDCSCRN_ALLDRAW2; | gdcs.grphdisp |= GDCSCRN_EXT | GDCSCRN_ALLDRAW2; |
| i286_vram_dispatch(vramop.operate); | MEMM_VRAM(vramop.operate); |
| } | } |
| #endif | #endif |
| Line 274 void gdc_work(int id) { | Line 274 void gdc_work(int id) { |
| case CMD_START: | case CMD_START: |
| case CMD_SYNC_ON: | case CMD_SYNC_ON: |
| (*dispflag) |= GDCSCRN_ENABLE | GDCSCRN_ALLDRAW2; | (*dispflag) |= GDCSCRN_ENABLE | GDCSCRN_ALLDRAW2; |
| screenupdate |= 2; | pcstat.screenupdate |= 2; |
| break; | break; |
| case CMD_STOP_: | case CMD_STOP_: |
| Line 282 void gdc_work(int id) { | Line 282 void gdc_work(int id) { |
| case CMD_SYNC_OFF: | case CMD_SYNC_OFF: |
| (*dispflag) &= (~GDCSCRN_ENABLE); | (*dispflag) &= (~GDCSCRN_ENABLE); |
| // (*dispflag) |= GDCSCRN_ALLDRAW2; | // (*dispflag) |= GDCSCRN_ALLDRAW2; |
| screenupdate |= 2; | pcstat.screenupdate |= 2; |
| break; | break; |
| case CMD_VECTE: | case CMD_VECTE: |
| Line 479 static void IOOUTCALL gdc_o68(UINT port, | Line 479 static void IOOUTCALL gdc_o68(UINT port, |
| gdc_restorekacmode(); | gdc_restorekacmode(); |
| } | } |
| else if (bit == 0x80) { | else if (bit == 0x80) { |
| screenupdate |= 2; | pcstat.screenupdate |= 2; |
| } | } |
| gdcs.msw_accessable = gdc.mode1 & 0x40; | gdcs.msw_accessable = gdc.mode1 & 0x40; |
| } | } |
| Line 505 static void IOOUTCALL gdc_o6a(UINT port, | Line 505 static void IOOUTCALL gdc_o6a(UINT port, |
| gdcs.palchange = GDCSCRN_REDRAW; | gdcs.palchange = GDCSCRN_REDRAW; |
| vramop.operate &= ~(1 << VOPBIT_ANALOG); | vramop.operate &= ~(1 << VOPBIT_ANALOG); |
| vramop.operate |= dat << VOPBIT_ANALOG; | vramop.operate |= dat << VOPBIT_ANALOG; |
| i286_vram_dispatch(vramop.operate); | MEMM_VRAM(vramop.operate); |
| } | } |
| break; | break; |
| Line 513 static void IOOUTCALL gdc_o6a(UINT port, | Line 513 static void IOOUTCALL gdc_o6a(UINT port, |
| if ((gdc.mode2 & 0x08) && (grcg.chip == 3)) { | if ((gdc.mode2 & 0x08) && (grcg.chip == 3)) { |
| vramop.operate &= ~(1 << VOPBIT_EGC); | vramop.operate &= ~(1 << VOPBIT_EGC); |
| vramop.operate |= dat << VOPBIT_EGC; | vramop.operate |= dat << VOPBIT_EGC; |
| i286_vram_dispatch(vramop.operate); | MEMM_VRAM(vramop.operate); |
| } | } |
| break; | break; |
| } | } |
| Line 625 static REG8 IOINPCALL gdc_i60(UINT port) | Line 625 static REG8 IOINPCALL gdc_i60(UINT port) |
| UINT16 memv; | UINT16 memv; |
| addr = CPU_INPADRS; | addr = CPU_INPADRS; |
| jadr = 0xfa74; | jadr = 0xfa74; |
| memv = i286_memoryread_w(addr); | memv = MEML_READ16(addr); |
| while((memv == 0x00eb) || (memv == 0x5fe6)) { | while((memv == 0x00eb) || (memv == 0x5fe6)) { |
| jadr -= 0x200; | jadr -= 0x200; |
| addr += 2; | addr += 2; |
| memv = i286_memoryread_w(addr); | memv = MEML_READ16(addr); |
| } | } |
| if ((memv == 0x20a8) || (memv == 0x2024)) { | if ((memv == 0x20a8) || (memv == 0x2024)) { |
| memv = i286_memoryread_w(addr + 2); | memv = MEML_READ16(addr + 2); |
| if (memv == jadr) { // je | if (memv == jadr) { // je |
| if (!gdc.vsync) { | if (!gdc.vsync) { |
| CPU_REMCLOCK = -1; | CPU_REMCLOCK = -1; |
| Line 706 static void IOOUTCALL gdc_oa4(UINT port, | Line 706 static void IOOUTCALL gdc_oa4(UINT port, |
| if ((gdcs.disp ^ dat) & 1) { | if ((gdcs.disp ^ dat) & 1) { |
| gdcs.disp = dat & 1; | gdcs.disp = dat & 1; |
| screenupdate |= 2; | pcstat.screenupdate |= 2; |
| } | } |
| (void)port; | (void)port; |
| } | } |
| Line 718 static void IOOUTCALL gdc_oa6(UINT port, | Line 718 static void IOOUTCALL gdc_oa6(UINT port, |
| gdcs.access = (UINT8)dat; | gdcs.access = (UINT8)dat; |
| vramop.operate &= ~(1 << VOPBIT_ACCESS); | vramop.operate &= ~(1 << VOPBIT_ACCESS); |
| vramop.operate |= dat << VOPBIT_ACCESS; | vramop.operate |= dat << VOPBIT_ACCESS; |
| i286_vram_dispatch(vramop.operate); | MEMM_VRAM(vramop.operate); |
| } | } |
| (void)port; | (void)port; |
| } | } |
| Line 754 static REG8 IOINPCALL gdc_ia0(UINT port) | Line 754 static REG8 IOINPCALL gdc_ia0(UINT port) |
| UINT16 memv; | UINT16 memv; |
| addr = CPU_INPADRS; | addr = CPU_INPADRS; |
| jadr = 0xfa74; | jadr = 0xfa74; |
| memv = i286_memoryread_w(addr); | memv = MEML_READ16(addr); |
| while((memv == 0x00eb) || (memv == 0x5fe6)) { | while((memv == 0x00eb) || (memv == 0x5fe6)) { |
| jadr -= 0x200; | jadr -= 0x200; |
| addr += 2; | addr += 2; |
| memv = i286_memoryread_w(addr); | memv = MEML_READ16(addr); |
| } | } |
| if ((memv == 0x20a8) || (memv == 0x2024)) { | if ((memv == 0x20a8) || (memv == 0x2024)) { |
| memv = i286_memoryread_w(addr + 2); | memv = MEML_READ16(addr + 2); |
| if (memv == jadr) { // je | if (memv == jadr) { // je |
| if (!gdc.vsync) { | if (!gdc.vsync) { |
| CPU_REMCLOCK = -1; | CPU_REMCLOCK = -1; |
| Line 1100 void gdc_biosreset(void) { | Line 1100 void gdc_biosreset(void) { |
| gdc.analog &= ~(1 << (GDCANALOG_256)); | gdc.analog &= ~(1 << (GDCANALOG_256)); |
| vramop.operate &= ~(1 << VOPBIT_VGA); | vramop.operate &= ~(1 << VOPBIT_VGA); |
| #endif | #endif |
| i286_vram_dispatch(vramop.operate); | MEMM_VRAM(vramop.operate); |
| // palette | // palette |
| CopyMemory(gdc.degpal, defdegpal, 4); | CopyMemory(gdc.degpal, defdegpal, 4); |
| Line 1126 void gdc_biosreset(void) { | Line 1126 void gdc_biosreset(void) { |
| gdcs.textdisp = GDCSCRN_ALLDRAW2 | GDCSCRN_EXT; | gdcs.textdisp = GDCSCRN_ALLDRAW2 | GDCSCRN_EXT; |
| gdcs.grphdisp = GDCSCRN_ALLDRAW2 | GDCSCRN_EXT; | gdcs.grphdisp = GDCSCRN_ALLDRAW2 | GDCSCRN_EXT; |
| gdcs.palchange = GDCSCRN_REDRAW; | gdcs.palchange = GDCSCRN_REDRAW; |
| screenupdate |= 2; | pcstat.screenupdate |= 2; |
| } | } |
| void gdc_reset(void) { | void gdc_reset(const NP2CFG *pConfig) { |
| ZeroMemory(&gdc, sizeof(gdc)); | ZeroMemory(&gdc, sizeof(gdc)); |
| ZeroMemory(&gdcs, sizeof(gdcs)); | ZeroMemory(&gdcs, sizeof(gdcs)); |
| Line 1145 void gdc_reset(void) { | Line 1145 void gdc_reset(void) { |
| gdc.display |= (1 << GDCDISP_PLAZMA2); | gdc.display |= (1 << GDCDISP_PLAZMA2); |
| } | } |
| gdc_biosreset(); | gdc_biosreset(); |
| (void)pConfig; | |
| } | } |
| void gdc_bind(void) { | void gdc_bind(void) { |