|
|
| version 1.2, 2003/10/21 11:22:05 | version 1.6, 2005/03/20 08:58:19 |
|---|---|
| Line 6 | Line 6 |
| #include "viewmenu.h" | #include "viewmenu.h" |
| #include "viewmem.h" | #include "viewmem.h" |
| #include "viewseg.h" | #include "viewseg.h" |
| #include "i286.h" | #include "cpucore.h" |
| static void set_viewseg(HWND hwnd, NP2VIEW_T *view, WORD seg) { | static void set_viewseg(HWND hwnd, NP2VIEW_T *view, UINT16 seg) { |
| if (view->seg != seg) { | if (view->seg != seg) { |
| view->seg = seg; | view->seg = seg; |
| Line 22 static void viewseg_paint(NP2VIEW_T *vie | Line 22 static void viewseg_paint(NP2VIEW_T *vie |
| int x; | int x; |
| LONG y; | LONG y; |
| DWORD mad; | UINT32 mad; |
| DWORD off; | UINT32 off; |
| BYTE *p; | UINT8 *p; |
| BYTE buf[16]; | UINT8 buf[16]; |
| char str[16]; | TCHAR str[16]; |
| HFONT hfont; | HFONT hfont; |
| hfont = CreateFont(16, 0, 0, 0, 0, 0, 0, 0, | hfont = CreateFont(16, 0, 0, 0, 0, 0, 0, 0, |
| SHIFTJIS_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, | SHIFTJIS_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, |
| DEFAULT_QUALITY, FIXED_PITCH, "£Í£Ó¥´¥·¥Ã¥¯"); | DEFAULT_QUALITY, FIXED_PITCH, np2viewfont); |
| SetTextColor(hdc, 0xffffff); | SetTextColor(hdc, 0xffffff); |
| SetBkColor(hdc, 0x400000); | SetBkColor(hdc, 0x400000); |
| hfont = (HFONT)SelectObject(hdc, hfont); | hfont = (HFONT)SelectObject(hdc, hfont); |
| off = (view->pos) << 4; | off = (view->pos) << 4; |
| mad = (((DWORD)view->seg) << 4) + off; | mad = (((UINT32)view->seg) << 4) + off; |
| if (view->lock) { | if (view->lock) { |
| if ((view->buf1.type != ALLOCTYPE_SEG) || | if ((view->buf1.type != ALLOCTYPE_SEG) || |
| Line 50 static void viewseg_paint(NP2VIEW_T *vie | Line 50 static void viewseg_paint(NP2VIEW_T *vie |
| view->buf1.type = ALLOCTYPE_SEG; | view->buf1.type = ALLOCTYPE_SEG; |
| view->buf1.arg = view->seg; | view->buf1.arg = view->seg; |
| viewmem_read(&view->dmem, view->buf1.arg << 4, | viewmem_read(&view->dmem, view->buf1.arg << 4, |
| (BYTE *)view->buf1.ptr, 0x10000); | (UINT8 *)view->buf1.ptr, 0x10000); |
| } | } |
| viewcmn_putcaption(view); | viewcmn_putcaption(view); |
| } | } |
| } | } |
| for (y=0; y<rc->bottom && off<0x10000; y+=16, off+=16) { | for (y=0; y<rc->bottom && off<0x10000; y+=16, off+=16) { |
| wsprintf(str, "%04x:%04x", view->seg, off); | wsprintf(str, _T("%04x:%04x"), view->seg, off); |
| TextOut(hdc, 0, y, str, 9); | TextOut(hdc, 0, y, str, 9); |
| if (view->lock) { | if (view->lock) { |
| p = (BYTE *)view->buf1.ptr; | p = (UINT8 *)view->buf1.ptr; |
| p += off; | p += off; |
| } | } |
| else { | else { |
| Line 87 LRESULT CALLBACK viewseg_proc(NP2VIEW_T | Line 87 LRESULT CALLBACK viewseg_proc(NP2VIEW_T |
| case WM_COMMAND: | case WM_COMMAND: |
| switch(LOWORD(wp)) { | switch(LOWORD(wp)) { |
| case IDM_SEGCS: | case IDM_SEGCS: |
| set_viewseg(hwnd, view, I286_CS); | set_viewseg(hwnd, view, CPU_CS); |
| break; | break; |
| case IDM_SEGDS: | case IDM_SEGDS: |
| set_viewseg(hwnd, view, I286_DS); | set_viewseg(hwnd, view, CPU_DS); |
| break; | break; |
| case IDM_SEGES: | case IDM_SEGES: |
| set_viewseg(hwnd, view, I286_ES); | set_viewseg(hwnd, view, CPU_ES); |
| break; | break; |
| case IDM_SEGSS: | case IDM_SEGSS: |
| set_viewseg(hwnd, view, I286_SS); | set_viewseg(hwnd, view, CPU_SS); |
| break; | break; |
| case IDM_SEGTEXT: | case IDM_SEGTEXT: |
| Line 136 void viewseg_init(NP2VIEW_T *dst, NP2VIE | Line 136 void viewseg_init(NP2VIEW_T *dst, NP2VIE |
| case VIEWMODE_1MB: | case VIEWMODE_1MB: |
| if (dst->pos < 0x10000) { | if (dst->pos < 0x10000) { |
| dst->seg = (WORD)dst->pos; | dst->seg = (UINT16)dst->pos; |
| } | } |
| else { | else { |
| dst->seg = 0xffff; | dst->seg = 0xffff; |
| Line 160 void viewseg_init(NP2VIEW_T *dst, NP2VIE | Line 160 void viewseg_init(NP2VIEW_T *dst, NP2VIE |
| dst->mul = 1; | dst->mul = 1; |
| dst->pos = 0; | dst->pos = 0; |
| } | } |