Diff for /np2/win9x/debuguty/viewreg.cpp between versions 1.5 and 1.6

version 1.5, 2003/12/08 00:55:34 version 1.6, 2004/04/08 13:08:23
Line 10 Line 10
 #include        "cpucore.h"  #include        "cpucore.h"
   
   
   #if !defined(CPUCORE_IA32)
 static void viewreg_paint(NP2VIEW_T *view, RECT *rc, HDC hdc) {  static void viewreg_paint(NP2VIEW_T *view, RECT *rc, HDC hdc) {
   
         LONG            y;          LONG            y;
Line 50  static void viewreg_paint(NP2VIEW_T *vie Line 51  static void viewreg_paint(NP2VIEW_T *vie
         for (y=0; y<rc->bottom && pos<4; y+=16, pos++) {          for (y=0; y<rc->bottom && pos<4; y+=16, pos++) {
                 switch(pos) {                  switch(pos) {
                         case 0:                          case 0:
                                 wsprintf(str, "AX=%04x  BX=%04x  CX=%04x  DX=%04x",                                  wsprintf(str, "AX=%.4x  BX=%.4x  CX=%.4x  DX=%.4x",
                                                                 r->r.w.ax, r->r.w.bx, r->r.w.cx, r->r.w.dx);                                                                  r->r.w.ax, r->r.w.bx, r->r.w.cx, r->r.w.dx);
                                 break;                                  break;
   
                         case 1:                          case 1:
                                 wsprintf(str, "SP=%04x  BP=%04x  SI=%04x  DI=%04x",                                  wsprintf(str, "SP=%.4x  BP=%.4x  SI=%.4x  DI=%.4x",
                                                                 r->r.w.sp, r->r.w.bp, r->r.w.si, r->r.w.di);                                                                  r->r.w.sp, r->r.w.bp, r->r.w.si, r->r.w.di);
                                 break;                                  break;
   
                         case 2:                          case 2:
                                 wsprintf(str, "DS=%04x  ES=%04x  SS=%04x  CS=%04x",                                  wsprintf(str, "CS=%.4x  DS=%.4x  ES=%.4x  SS=%.4x",
                                                                 r->r.w.ds, r->r.w.es, r->r.w.ss, r->r.w.cs);                                                                  r->r.w.cs, r->r.w.ds, r->r.w.es, r->r.w.ss);
                                 break;                                  break;
   
                         case 3:                          case 3:
                                 wsprintf(str, "IP=%04x   %s",                                  wsprintf(str, "IP=%.4x   %s",
                                                                 r->r.w.ip, debugsub_flags(r->r.w.flag));                                                                  r->r.w.ip, debugsub_flags(r->r.w.flag));
                                 break;                                  break;
                 }                  }
Line 73  static void viewreg_paint(NP2VIEW_T *vie Line 74  static void viewreg_paint(NP2VIEW_T *vie
         }          }
         DeleteObject(SelectObject(hdc, hfont));          DeleteObject(SelectObject(hdc, hfont));
 }  }
   #else
   static void viewreg_paint(NP2VIEW_T *view, RECT *rc, HDC hdc) {
   
           LONG            y;
           DWORD           pos;
           char            str[128];
           HFONT           hfont;
           I386STAT        *r;
   
           hfont = CreateFont(16, 0, 0, 0, 0, 0, 0, 0, 
                                           SHIFTJIS_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,
                                           DEFAULT_QUALITY, FIXED_PITCH, "£Í£Ó ¥´¥·¥Ã¥¯");
           SetTextColor(hdc, 0xffffff);
           SetBkColor(hdc, 0x400000);
           hfont = (HFONT)SelectObject(hdc, hfont);
   
           if (view->lock) {
                   if (view->buf1.type != ALLOCTYPE_REG) {
                           if (viewcmn_alloc(&view->buf1, sizeof(i386core.s))) {
                                   view->lock = FALSE;
                                   viewmenu_lock(view);
                           }
                           else {
                                   view->buf1.type = ALLOCTYPE_REG;
                                   CopyMemory(view->buf1.ptr, &i386core.s, sizeof(i386core.s));
                           }
                           viewcmn_putcaption(view);
                   }
           }
   
           pos = view->pos;
           if (view->lock) {
                   r = (I386STAT *)view->buf1.ptr;
           }
           else {
                   r = &i386core.s;
           }
   
           for (y=0; y<rc->bottom && pos<4; y+=16, pos++) {
                   switch(pos) {
                           case 0:
                                   wsprintf(str, "EAX=%.8x EBX=%.8x ECX=%.8x EDX=%.8x",
                                                                   r->cpu_regs.reg[CPU_EAX_INDEX].d,
                                                                   r->cpu_regs.reg[CPU_EBX_INDEX].d,
                                                                   r->cpu_regs.reg[CPU_ECX_INDEX].d,
                                                                   r->cpu_regs.reg[CPU_EDX_INDEX].d);
                                   break;
   
                           case 1:
                                   wsprintf(str, "ESP=%.8x EBP=%.8x ESI=%.8x EDI=%.8x",
                                                                   r->cpu_regs.reg[CPU_ESP_INDEX].d,
                                                                   r->cpu_regs.reg[CPU_EBP_INDEX].d,
                                                                   r->cpu_regs.reg[CPU_ESI_INDEX].d,
                                                                   r->cpu_regs.reg[CPU_EDI_INDEX].d);
                                   break;
   
                           case 2:
                                   wsprintf(str, "CS=%.4x DS=%.4x ES=%.4x " \
                                                                   "FS=%.4x GS=%.4x SS=%.4x",
                                                                   r->cpu_regs.sreg[CPU_CS_INDEX],
                                                                   r->cpu_regs.sreg[CPU_DS_INDEX],
                                                                   r->cpu_regs.sreg[CPU_ES_INDEX],
                                                                   r->cpu_regs.sreg[CPU_FS_INDEX],
                                                                   r->cpu_regs.sreg[CPU_GS_INDEX],
                                                                   r->cpu_regs.sreg[CPU_SS_INDEX]);
                                   break;
   
                           case 3:
                                   wsprintf(str, "EIP=%.8x   %s",
                                                                   r->cpu_regs.eip.d,
                                                                   debugsub_flags(r->cpu_regs.eflags.d));
                                   break;
                   }
                   TextOut(hdc, 0, y, str, strlen(str));
           }
           DeleteObject(SelectObject(hdc, hfont));
   }
   #endif
   
 LRESULT CALLBACK viewreg_proc(NP2VIEW_T *view,  LRESULT CALLBACK viewreg_proc(NP2VIEW_T *view,
                                                                 HWND hwnd, UINT msg, WPARAM wp, LPARAM lp) {                                                                  HWND hwnd, UINT msg, WPARAM wp, LPARAM lp) {

Removed from v.1.5  
changed lines
  Added in v.1.6


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