Diff for /np2/pccore.c between versions 1.108 and 1.111

version 1.108, 2007/11/11 12:46:06 version 1.111, 2011/02/23 10:11:44
Line 1 Line 1
   /**
    * @file        pccore.c
    * @brief       emluration core
    *
    * @author      $Author$
    * @date        $Date$
    */
   
 #include        "compiler.h"  #include        "compiler.h"
 #include        "strres.h"  #include        "strres.h"
 #include        "dosio.h"  #include        "dosio.h"
Line 189  static void pccore_set(const NP2CFG *pCo Line 197  static void pccore_set(const NP2CFG *pCo
 // --------------------------------------------------------------------------  // --------------------------------------------------------------------------
   
 #if !defined(DISABLE_SOUND)  #if !defined(DISABLE_SOUND)
 static void sound_init()  static void sound_init(void)
 {  {
         UINT    rate;          UINT    rate;
   
Line 247  void pccore_init(void) { Line 255  void pccore_init(void) {
         fddfile_initialize();          fddfile_initialize();
   
 #if !defined(DISABLE_SOUND)  #if !defined(DISABLE_SOUND)
         sound_init(&np2cfg);          sound_init();
 #endif  #endif
   
         rs232c_construct();          rs232c_construct();
Line 294  void pccore_cfgupdate(void) { Line 302  void pccore_cfgupdate(void) {
         int             i;          int             i;
   
         renewal = FALSE;          renewal = FALSE;
         for (i=0; i<8; i++) {          for (i=0; i<8; i++)
                 if (np2cfg.memsw[i] != mem[MEMX_MSW + i*4]) {          {
                   if (np2cfg.memsw[i] != mem[MEMX_MSW + i*4])
                   {
                         np2cfg.memsw[i] = mem[MEMX_MSW + i*4];                          np2cfg.memsw[i] = mem[MEMX_MSW + i*4];
                         renewal = TRUE;                          renewal = TRUE;
                 }                  }
         }          }
           for (i=0; i<3; i++)
           {
                   if (np2cfg.dipsw[i] != pccore.dipsw[i])
                   {
                           np2cfg.dipsw[i] = pccore.dipsw[i];
                           renewal = TRUE;
                   }
           }
         if (renewal) {          if (renewal) {
                 sysmng_update(SYS_UPDATECFG);                  sysmng_update(SYS_UPDATECFG);
         }          }
 }  }
   
   /**
    * Reset the virtual machine
    */
 void pccore_reset(void) {  void pccore_reset(void) {
   
         int             i;          int             i;
           BOOL    epson;
   
         soundmng_stop();          soundmng_stop();
 #if !defined(DISABLE_SOUND)  #if !defined(DISABLE_SOUND)
         if (soundrenewal) {          if (soundrenewal) {
                 soundrenewal = 0;                  soundrenewal = 0;
                 sound_term();                  sound_term();
                 sound_init(&np2cfg);                  sound_init();
         }          }
 #endif  #endif
         ZeroMemory(mem, 0x110000);          ZeroMemory(mem, 0x110000);
Line 335  void pccore_reset(void) { Line 357  void pccore_reset(void) {
         CPU_SETEXTSIZE((UINT32)pccore.extmem);          CPU_SETEXTSIZE((UINT32)pccore.extmem);
   
         CPU_TYPE = 0;          CPU_TYPE = 0;
         if (np2cfg.dipsw[2] & 0x80) {          if (pccore.dipsw[2] & 0x80) {
                 CPU_TYPE = CPUTYPE_V30;                  CPU_TYPE = CPUTYPE_V30;
         }          }
         if (pccore.model & PCMODEL_EPSON) {                     // RAM ctrl  
           epson = (pccore.model & PCMODEL_EPSON) ? TRUE : FALSE;
           if (epson) {
                   /* enable RAM (D0000-DFFFF) */
                 CPU_RAM_D000 = 0xffff;                  CPU_RAM_D000 = 0xffff;
         }          }
           font_setchargraph(epson);
   
         // HDDセット          // HDDセット
         diskdrv_hddbind();          diskdrv_hddbind();
Line 371  void pccore_reset(void) { Line 397  void pccore_reset(void) {
         cbuscore_reset(&np2cfg);          cbuscore_reset(&np2cfg);
         fmboard_reset(&np2cfg, pccore.sound);          fmboard_reset(&np2cfg, pccore.sound);
   
         MEMM_ARCH((pccore.model & PCMODEL_EPSON)?1:0);          MEMM_ARCH((epson) ? 1 : 0);
         iocore_build();          iocore_build();
         iocore_bind();          iocore_bind();
         cbuscore_bind();          cbuscore_bind();

Removed from v.1.108  
changed lines
  Added in v.1.111


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