|
|
| version 1.5, 2004/03/14 23:45:44 | version 1.11, 2007/11/11 13:54:14 |
|---|---|
| Line 22 static void IOOUTCALL crtc_o7c(UINT port | Line 22 static void IOOUTCALL crtc_o7c(UINT port |
| if (grcg.chip) { | if (grcg.chip) { |
| grcg.modereg = (UINT8)dat; | grcg.modereg = (UINT8)dat; |
| grcg.counter = 0; | grcg.counter = 0; |
| vramop.operate &= VOP_GRCGMASK; | vramop.operate &= ~(3 << VOPBIT_GRCG); |
| vramop.operate |= ((dat & 0xc0) >> 4); | vramop.operate |= ((dat & 0xc0) >> (6 - VOPBIT_GRCG)); |
| if (grcg.chip >= 2) { | if (grcg.chip >= 2) { |
| grcg.gdcwithgrcg = (dat >> 4) & 0x0c; | grcg.gdcwithgrcg = (dat >> 4) & 0x0c; |
| } | } |
| i286_vram_dispatch(vramop.operate); | MEMM_VRAM(vramop.operate); |
| } | } |
| (void)port; | (void)port; |
| } | } |
| Line 63 static const IOINP crtci70[8] = { | Line 63 static const IOINP crtci70[8] = { |
| void crtc_biosreset(void) { | void crtc_biosreset(void) { |
| if (!(np2cfg.dipsw[0] & 0x01)) { | if (!(pccore.dipsw[0] & 0x01)) { |
| crtc.reg.pl = 0; | crtc.reg.pl = 0; |
| crtc.reg.bl = 0x0f; | crtc.reg.bl = 0x0f; |
| crtc.reg.cl = 0x10; | crtc.reg.cl = 0x10; |
| Line 76 void crtc_biosreset(void) { | Line 76 void crtc_biosreset(void) { |
| crtc.reg.ssl = 0; | crtc.reg.ssl = 0; |
| } | } |
| gdcs.textdisp |= GDCSCRN_ALLDRAW; | gdcs.textdisp |= GDCSCRN_ALLDRAW; |
| grcg.modereg = 0; | |
| grcg.counter = 0; | |
| vramop.operate &= ~(3 << VOPBIT_GRCG); | |
| grcg.gdcwithgrcg = 0; | |
| ZeroMemory(grcg.tile, sizeof(grcg.tile)); | |
| MEMM_VRAM(vramop.operate); | |
| } | } |
| void crtc_reset(void) { | void crtc_reset(const NP2CFG *pConfig) { |
| ZeroMemory(&grcg, sizeof(grcg)); | ZeroMemory(&grcg, sizeof(grcg)); |
| ZeroMemory(&crtc, sizeof(crtc)); | ZeroMemory(&crtc, sizeof(crtc)); |
| grcg.chip = np2cfg.grcg & 3; // GRCG動作のコピー | #if defined(SUPPORT_PC9821) |
| grcg.chip = 3; // PC-9821は EGC必須 | |
| #else | |
| grcg.chip = pConfig->grcg & 3; // GRCG動作のコピー | |
| #endif | |
| crtc_biosreset(); | crtc_biosreset(); |
| } | } |