Diff for /np2/i386c/ia32/segments.c between versions 1.26 and 1.27

version 1.26, 2012/02/05 06:16:08 version 1.27, 2012/02/05 06:31:44
Line 42  load_segreg(int idx, UINT16 selector, UI Line 42  load_segreg(int idx, UINT16 selector, UI
         if (!CPU_STAT_PM || CPU_STAT_VM86) {          if (!CPU_STAT_PM || CPU_STAT_VM86) {
                 /* real-mode or vm86 mode */                  /* real-mode or vm86 mode */
                 *sregp = selector;                  *sregp = selector;
                 segdesc_clear(&sel.desc);  
                 segdesc_set_default(idx, selector, &sel.desc);                  segdesc_set_default(idx, selector, &sel.desc);
                 *sdp = sel.desc;                  *sdp = sel.desc;
                 return;                  return;
Line 62  load_segreg(int idx, UINT16 selector, UI Line 61  load_segreg(int idx, UINT16 selector, UI
                 if ((rv != -2) || (idx == CPU_SS_INDEX)) {                  if ((rv != -2) || (idx == CPU_SS_INDEX)) {
                         EXCEPTION(exc, sel.idx);                          EXCEPTION(exc, sel.idx);
                 }                  }
                   /* null selector */
                 *sregp = sel.selector;                  *sregp = sel.selector;
                 segdesc_clear(sdp);                  memset(sdp, 0, sizeof(*sdp));
                 return;                  return;
         }          }
   
Line 203  load_descriptor(descriptor_t *sdp, UINT3 Line 203  load_descriptor(descriptor_t *sdp, UINT3
         h = cpu_kmemoryread_d(addr + 4);          h = cpu_kmemoryread_d(addr + 4);
         VERBOSE(("descriptor value = 0x%08x%08x", h, l));          VERBOSE(("descriptor value = 0x%08x%08x", h, l));
   
         segdesc_clear(sdp);          memset(sdp, 0, sizeof(*sdp));
         sdp->flag = 0;          sdp->flag = 0;
   
         sdp->p = (h & CPU_DESC_H_P) ? 1 : 0;          sdp->p = (h & CPU_DESC_H_P) ? 1 : 0;
Line 384  segdesc_init(int idx, UINT16 sreg, descr Line 384  segdesc_init(int idx, UINT16 sreg, descr
         __ASSERT((sdp != NULL));          __ASSERT((sdp != NULL));
   
         CPU_REGS_SREG(idx) = sreg;          CPU_REGS_SREG(idx) = sreg;
         segdesc_clear(sdp);  
         segdesc_set_default(idx, sreg, sdp);          segdesc_set_default(idx, sreg, sdp);
 }  }
   

Removed from v.1.26  
changed lines
  Added in v.1.27


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