|
|
| version 1.66, 2004/06/04 16:11:02 | version 1.68, 2004/06/18 07:42:13 |
|---|---|
| Line 147 static void bios_reinitbyswitch(void) { | Line 147 static void bios_reinitbyswitch(void) { |
| fddbios_equip(0, TRUE); | fddbios_equip(0, TRUE); |
| mem[MEMB_BIOS_FLAG0] &= ~0x02; | mem[MEMB_BIOS_FLAG0] &= ~0x02; |
| } | } |
| mem[MEMB_F2HD_MODE] = 0xff; | |
| mem[MEMB_F2DD_MODE] = 0xff; | mem[MEMB_F2DD_MODE] = 0xff; |
| #if defined(SUPPORT_CRT31KHZ) | #if defined(SUPPORT_CRT31KHZ) |
| Line 300 static void bios_itfcall(void) { | Line 301 static void bios_itfcall(void) { |
| if (!np2cfg.ITF_WORK) { | if (!np2cfg.ITF_WORK) { |
| for (i=0; i<8; i++) { | for (i=0; i<8; i++) { |
| mem[MEMB_MSW + (i*4)] = msw_default[i]; | mem[MEMX_MSW + (i*4)] = msw_default[i]; |
| } | } |
| CPU_FLAGL |= C_FLAG; | CPU_FLAGL |= C_FLAG; |
| } | } |
| Line 425 UINT MEMCALL biosfunc(UINT32 adrs) { | Line 426 UINT MEMCALL biosfunc(UINT32 adrs) { |
| case BIOS_BASE + BIOSOFST_WAIT: | case BIOS_BASE + BIOSOFST_WAIT: |
| CPU_STI; | CPU_STI; |
| #if 1 | |
| return(bios0x1b_wait()); // ver0.78 | |
| #else | |
| if (fddmtr.busy) { | if (fddmtr.busy) { |
| CPU_IP--; | CPU_IP--; |
| CPU_REMCLOCK = -1; | CPU_REMCLOCK = -1; |
| } | } |
| else { | else { |
| if (fdc.chgreg & 1) { | if (fdc.chgreg & 1) { |
| if (!(mem[0x0055e] & (0x01 << fdc.us))) { | if (!(mem[MEMB_DISK_INTL] & (0x01 << fdc.us))) { |
| CPU_IP--; | CPU_IP--; |
| CPU_REMCLOCK -= 1000; | CPU_REMCLOCK -= 1000; |
| } | } |
| } | } |
| else { | else { |
| if (!(mem[0x0055f] & (0x10 << fdc.us))) { | if (!(mem[MEMB_DISK_INTH] & (0x10 << fdc.us))) { |
| CPU_IP--; | CPU_IP--; |
| CPU_REMCLOCK -= 1000; | CPU_REMCLOCK -= 1000; |
| } | } |
| } | } |
| } | } |
| return(1); | return(1); |
| #endif | |
| case 0xfffe8: // ブートストラップロード | case 0xfffe8: // ブートストラップロード |
| CPU_REMCLOCK -= 2000; | CPU_REMCLOCK -= 2000; |
| Line 462 UINT MEMCALL biosfunc(UINT32 adrs) { | Line 467 UINT MEMCALL biosfunc(UINT32 adrs) { |
| return(0); | return(0); |
| } | } |
| if ((adrs >= 0xf9a00) && (adrs < 0x0f9a44)) { | if ((adrs >= 0xf9950) && (adrs <= 0x0f9990) && (!(adrs & 3))) { |
| if (!(adrs & 3)) { | CPU_REMCLOCK -= 500; |
| CPU_REMCLOCK -= 500; | bios_lio((REG8)((adrs - 0xf9950) >> 2)); |
| bios_lio((REG8)((adrs - 0xf9a00) >> 2)); | } |
| } | else if (adrs == 0xf9994) { |
| else { | if (nevent_iswork(NEVENT_GDCSLAVE)) { |
| if (nevent_iswork(NEVENT_GDCSLAVE)) { | CPU_IP--; |
| CPU_IP--; | CPU_REMCLOCK = -1; |
| CPU_REMCLOCK = -1; | return(1); |
| return(1); | |
| } | |
| } | } |
| return(0); | |
| } | } |
| return(0); | return(0); |
| } | } |