Diff for /np2/bios/bios.c between versions 1.55 and 1.56

version 1.55, 2004/03/08 14:56:47 version 1.56, 2004/03/08 15:27:07
Line 69  const IODATA *pterm; Line 69  const IODATA *pterm;
   
 static void bios_memclear(void) {  static void bios_memclear(void) {
   
 //      ZeroMemory(mem, 0xa0000);                                       // 何が原因だ?          ZeroMemory(mem, 0xa0000);
           ZeroMemory(mem + 0x100000, 0x10000);
           if (CPU_EXTMEM) {
                   ZeroMemory(CPU_EXTMEM, CPU_EXTMEMSIZE);
           }
         ZeroMemory(mem + VRAM0_B, 0x18000);          ZeroMemory(mem + VRAM0_B, 0x18000);
         ZeroMemory(mem + VRAM0_E, 0x08000);          ZeroMemory(mem + VRAM0_E, 0x08000);
         ZeroMemory(mem + VRAM1_B, 0x18000);          ZeroMemory(mem + VRAM1_B, 0x18000);
Line 164  static void bios_reinitbyswitch(void) { Line 168  static void bios_reinitbyswitch(void) {
         mem[0x45c] = 0x40;          mem[0x45c] = 0x40;
 #endif  #endif
   
           // FDC
           if (fdc.support144) {
                   mem[MEMB_F144_SUP] |= fdc.equip;
           }
   
         // IDE initialize          // IDE initialize
         if (pccore.hddif & PCHDD_IDE) {          if (pccore.hddif & PCHDD_IDE) {
                 mem[MEMB_SYS_TYPE] |= 0x80;             // IDE                  mem[MEMB_SYS_TYPE] |= 0x80;             // IDE
Line 280  void bios_initialize(void) { Line 289  void bios_initialize(void) {
 //      mem[MEMB_BIOS_FLAG0] = 0x03;  //      mem[MEMB_BIOS_FLAG0] = 0x03;
 //      mem[MEMB_F2DD_MODE] = 0xff;  //      mem[MEMB_F2DD_MODE] = 0xff;
 //      SETBIOSMEM16(MEMW_DISK_EQUIP, 0x0003);  //      SETBIOSMEM16(MEMW_DISK_EQUIP, 0x0003);
         mem[0x005ae] |= 0x03;                                                                                   // ver0.31  //      mem[0x005ae] |= 0x03;
   
         CopyMemory(mem + 0x0fde00, keytable[0], 0x300);          CopyMemory(mem + 0x0fde00, keytable[0], 0x300);
 //      bios0x09_init();  //      bios0x09_init();
Line 325  static void bios_boot(void) { Line 334  static void bios_boot(void) {
                 bios0x09_init();                  bios0x09_init();
                 bios_reinitbyswitch();                  bios_reinitbyswitch();
   
                 if (sysport.c & 0x20) {                  if (!np2cfg.ITF_WORK) {
                           for (i=0; i<8; i++) {
                                   mem[MEMB_MSW + (i*4)] = msw_default[i];
                           }
                           CPU_IP = 0x0002;
                   }
                   else if (sysport.c & 0x20) {
                         CPU_CS = 0x0000;                          CPU_CS = 0x0000;
                         CPU_IP = 0x04f8;                          CPU_IP = 0x04f8;
                         CPU_DS = 0x0000;                          CPU_DS = 0x0000;
Line 337  static void bios_boot(void) { Line 352  static void bios_boot(void) {
                         SETBIOSMEM16(0x004fc, 0xffff);                          SETBIOSMEM16(0x004fc, 0xffff);
                 }                  }
                 else {                  else {
                         if (!np2cfg.ITF_WORK) {  
                                 for (i=0; i<8; i++) {  
                                         mem[MEMB_MSW + (i*4)] = msw_default[i];  
                                 }  
                         }  
                         CPU_IP = 0x0002;                          CPU_IP = 0x0002;
                 }                  }
         }          }

Removed from v.1.55  
changed lines
  Added in v.1.56


RetroPC.NET-CVS <cvs@retropc.net>