|
|
| version 1.9, 2004/01/22 01:10:03 | version 1.10, 2004/01/23 06:03:40 |
|---|---|
| Line 205 void bios0x18(void) { | Line 205 void bios0x18(void) { |
| UINT16 tmp; | UINT16 tmp; |
| UINT32 pal; | UINT32 pal; |
| // TRACE_("int18", CPU_AH); | TRACEOUT(("int18 AX=%.4x %.4x:%.4x", CPU_AX, |
| i286_memword_read(CPU_SS, CPU_SP+2), | |
| i286_memword_read(CPU_SS, CPU_SP))); | |
| sti_waiting ^= 1; | sti_waiting ^= 1; |
| if (sti_waiting) { // 割込み許可の遊び | if (sti_waiting) { // 割込み許可の遊び |
| Line 508 void bios0x18(void) { | Line 510 void bios0x18(void) { |
| break; | break; |
| case 0x40: // グラフィック画面の表示開始 | case 0x40: // グラフィック画面の表示開始 |
| // GDCバッファを空に | |
| if (gdc.s.cnt) { | |
| gdc_work(GDCWORK_SLAVE); | |
| } | |
| if (!(gdcs.grphdisp & GDCSCRN_ENABLE)) { | if (!(gdcs.grphdisp & GDCSCRN_ENABLE)) { |
| gdcs.grphdisp |= GDCSCRN_ENABLE; | gdcs.grphdisp |= GDCSCRN_ENABLE; |
| screenupdate |= 2; | screenupdate |= 2; |
| } | } |
| mem[MEMB_PRXCRT] |= 0x80; | |
| break; | break; |
| case 0x41: // グラフィック画面の表示終了 | case 0x41: // グラフィック画面の表示終了 |
| // GDCバッファを空に | |
| if (gdc.s.cnt) { | |
| gdc_work(GDCWORK_SLAVE); | |
| } | |
| gdc_forceready(&gdc.s); | |
| if (gdcs.grphdisp & GDCSCRN_ENABLE) { | if (gdcs.grphdisp & GDCSCRN_ENABLE) { |
| gdcs.grphdisp &= ~(GDCSCRN_ENABLE); | gdcs.grphdisp &= ~(GDCSCRN_ENABLE); |
| screenupdate |= 2; | screenupdate |= 2; |
| } | } |
| mem[MEMB_PRXCRT] &= 0x7f; | |
| break; | break; |
| case 0x42: // 表示領域の設定 | case 0x42: // 表示領域の設定 |