- fix IO registers tools (fix and add new registers)
This commit is contained in:
mtabachenko 2008-12-24 13:18:33 +00:00
parent e366145188
commit da8e3f28ea
5 changed files with 210 additions and 97 deletions

View File

@ -89,7 +89,7 @@ void GFX_FIFOadd(GFX_FIFO * fifo)
}
fifo->size++;
if (fifo->size > 128)
if (fifo->size > 127)
fifo->half = FALSE;
if (fifo->size == 256)

View File

@ -582,7 +582,7 @@ static int SubWrite(std::ostream* os, SFORMAT *sf)
} else {
for(int i=0;i<count;i++) {
#ifndef LOCAL_LE vv
#ifndef LOCAL_LE
FlipByteOrder((u8*)sf->v + i*size, size);
#endif

View File

@ -24,6 +24,7 @@
#include "debug.h"
#include "resource.h"
#include "../MMU.h"
#include "../armcpu.h"
typedef struct
{
@ -41,27 +42,55 @@ LRESULT Ioreg_OnPaint(HWND hwnd, WPARAM wParam, LPARAM lParam)
hdc = BeginPaint(hwnd, &ps);
sprintf(text, "%08X", (int)((u32 *)ARM9Mem.ARM9_DTCM)[0x3FFC>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_INTHAND), text);
// ARM9 registers
sprintf(text, "0x%08X", (int)((u32 *)ARM9Mem.ARM9_DTCM)[0x3FFC>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_INTHAND9), text);
sprintf(text, "%08X", (int)MMU.reg_IF[0]);
SetWindowText(GetDlgItem(hwnd, IDC_IE), text);
sprintf(text, "0x%08X", (int)MMU.reg_IE[ARMCPU_ARM9]);
SetWindowText(GetDlgItem(hwnd, IDC_IE9), text);
sprintf(text, "%08X", (int)MMU.reg_IME[0]);
SetWindowText(GetDlgItem(hwnd, IDC_IME), text);
sprintf(text, "0x%08X", (int)MMU.reg_IF[ARMCPU_ARM9]);
SetWindowText(GetDlgItem(hwnd, IDC_IF9), text);
sprintf(text, "%08X", ((u16 *)ARM9Mem.ARM9_REG)[0x0004>>1]);
SetWindowText(GetDlgItem(hwnd, IDC_DISPCNT), text);
sprintf(text, "0x%08X", (int)MMU.reg_IME[ARMCPU_ARM9]);
SetWindowText(GetDlgItem(hwnd, IDC_IME9), text);
sprintf(text, "%08X", ((u16 *)MMU.ARM7_REG)[0x0004>>1]);
SetWindowText(GetDlgItem(hwnd, IDC_DISPSTAT), text);
sprintf(text, "0x%08X", ((u16 *)ARM9Mem.ARM9_REG)[0x0000>>1]);
SetWindowText(GetDlgItem(hwnd, IDC_DISPCNTA9), text);
sprintf(text, "%08X", (int)((u32 *)ARM9Mem.ARM9_REG)[0x180>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_IPCSYNC), text);
sprintf(text, "0x%08X", ((u16 *)ARM9Mem.ARM9_REG)[0x0004>>1]);
SetWindowText(GetDlgItem(hwnd, IDC_DISPSTATA9), text);
sprintf(text, "%08X", (int)((u32 *)MMU.ARM7_REG)[0x180>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_IPCFIFO), text);
sprintf(text, "0x%08X", ((u16 *)ARM9Mem.ARM9_REG)[0x1000>>1]);
SetWindowText(GetDlgItem(hwnd, IDC_DISPCNTB9), text);
sprintf(text, "0x%08X", ((u16 *)ARM9Mem.ARM9_REG)[0x1004>>1]);
SetWindowText(GetDlgItem(hwnd, IDC_DISPSTATB9), text);
sprintf(text, "0x%08X", (int)((u32 *)ARM9Mem.ARM9_REG)[0x180>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_IPCSYNC9), text);
sprintf(text, "0x%08X", (int)((u32 *)ARM9Mem.ARM9_REG)[0x184>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_IPCFIFO9), text);
sprintf(text, "0x%08X", (int)((u32 *)(MMU.MMU_MEM[ARMCPU_ARM9][0x40]))[0x600>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_GXSTAT9), text);
// ARM7 registers
sprintf(text, "0x%08X", (int)MMU.reg_IE[ARMCPU_ARM7]);
SetWindowText(GetDlgItem(hwnd, IDC_IE7), text);
sprintf(text, "0x%08X", (int)MMU.reg_IF[ARMCPU_ARM7]);
SetWindowText(GetDlgItem(hwnd, IDC_IF7), text);
sprintf(text, "0x%08X", (int)MMU.reg_IME[ARMCPU_ARM7]);
SetWindowText(GetDlgItem(hwnd, IDC_IME7), text);
sprintf(text, "0x%08X", (int)((u32 *)MMU.ARM7_REG)[0x180>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_IPCSYNC7), text);
sprintf(text, "0x%08X", (int)((u32 *)MMU.ARM7_REG)[0x184>>2]);
SetWindowText(GetDlgItem(hwnd, IDC_IPCFIFO7), text);
EndPaint(hwnd, &ps);
return 0;

View File

@ -140,13 +140,6 @@
#define IDC_ARM7_T 507
#define IDC_DATA 508
#define IDD_IO_REG 601
#define IDC_INTHAND 602
#define IDC_IE 603
#define IDC_IME 604
#define IDC_DISPCNT 605
#define IDC_DISPSTAT 606
#define IDC_IPCSYNC 607
#define IDC_IPCFIFO 608
#define IDD_PAL 703
#define IDD_TILE 704
#define IDC_PAL_SELECT 705
@ -210,6 +203,22 @@
#define IDSAVE 1017
#define IDC_AUTOUPDATE_ASM 1018
#define IDC_VISIBLE 1019
#define IDC_IPCFIFO9 1020
#define IDC_IPCSYNC9 1021
#define IDC_IF9 1022
#define IDC_INTHAND9 1023
#define IDC_IE9 1024
#define IDC_DISPCNTA9 1025
#define IDC_DISPSTATA9 1026
#define IDC_DISPCNTB9 1027
#define IDC_DISPSTATB9 1028
#define IDC_IME9 1029
#define IDC_GXSTAT9 1030
#define IDC_IE7 1032
#define IDC_IF7 1033
#define IDC_IME7 1034
#define IDC_IPCSYNC7 1035
#define IDC_IPCFIFO7 1036
#define IDM_FIRMSETTINGS 1100
#define IDD_FIRMSETTINGS 1101
#define IDC_EDIT1 1102
@ -359,7 +368,7 @@
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 107
#define _APS_NEXT_COMMAND_VALUE 40038
#define _APS_NEXT_CONTROL_VALUE 1020
#define _APS_NEXT_CONTROL_VALUE 1027
#define _APS_NEXT_SYMED_VALUE 112
#endif
#endif

View File

@ -358,32 +358,6 @@ BEGIN
LTEXT "",IDC_DATA,60,52,100,8
END
IDD_IO_REG DIALOGEX 0, 0, 150, 150
STYLE DS_SETFONT | DS_CENTER | WS_CAPTION
CAPTION "IO Registre"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
PUSHBUTTON "&Luk",IDC_FERMER,50,134,50,14
LTEXT "Int Handler :",IDC_STATIC,4,4,41,8
LTEXT "IE :",IDC_STATIC,4,12,41,8
LTEXT "IME :",IDC_STATIC,4,20,41,8
LTEXT "DISPCNT :",IDC_STATIC,4,28,41,8
LTEXT "DISPSTAT :",IDC_STATIC,4,36,41,8
LTEXT "IPCSYNC :",IDC_STATIC,4,44,41,8
LTEXT "IPCFIFO :",IDC_STATIC,4,52,41,8
LTEXT "",IDC_INTHAND,45,4,100,8
LTEXT "",IDC_IE,45,12,130,8
LTEXT "",IDC_IME,45,20,130,8
LTEXT "",IDC_DISPCNT,45,28,130,8
LTEXT "",IDC_DISPSTAT,45,36,130,8
LTEXT "",IDC_IPCSYNC,45,44,130,8
LTEXT "",IDC_IPCFIFO,45,52,130,8
CONTROL "&Auto-update",IDC_AUTO_UPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,32,115,54,14
EDITTEXT IDC_AUTO_UPDATE_SECS,87,117,12,14,ES_AUTOHSCROLL | ES_READONLY | WS_DISABLED
CONTROL "",IDC_AUTO_UPDATE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,99,116,11,14
LTEXT "secs",IDC_STATIC,111,119,16,8
END
IDD_PAL DIALOGEX 0, 0, 120, 190
STYLE DS_SETFONT | WS_CAPTION | WS_SYSMENU
CAPTION "Palette Fremvisning"
@ -597,6 +571,52 @@ BEGIN
LTEXT "secs",IDC_STATIC,406,5,16,8
END
IDD_IO_REG DIALOGEX 0, 0, 150, 200
STYLE DS_SETFONT | DS_CENTER | WS_CAPTION
CAPTION "IO registers"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
LTEXT "Int Handler :",IDC_STATIC,5,13,41,8
LTEXT "",IDC_INTHAND9,60,14,80,8
LTEXT "IE :",IDC_STATIC,5,21,41,8
LTEXT "",IDC_IE9,60,22,80,8
LTEXT "IF :",IDC_STATIC,5,29,41,8
LTEXT "",IDC_IF9,60,29,79,8
LTEXT "IME :",IDC_STATIC,5,36,41,8
LTEXT "",IDC_IME9,60,36,79,8
LTEXT "DISPA_CNT :",IDC_STATIC,5,44,48,8
LTEXT "",IDC_DISPCNTA9,60,44,83,8
LTEXT "DISPA_STAT :",IDC_STATIC,5,52,49,8
LTEXT "",IDC_DISPSTATA9,60,52,79,8
LTEXT "DISPB_CNT :",IDC_STATIC,5,60,48,8
LTEXT "",IDC_DISPCNTB9,60,60,83,8
LTEXT "DISPB_STAT :",IDC_STATIC,5,68,49,8
LTEXT "",IDC_DISPSTATB9,60,68,79,8
LTEXT "IPCSYNC :",IDC_STATIC,5,76,41,8
LTEXT "",IDC_IPCSYNC9,60,76,78,8
LTEXT "IPCFIFO :",IDC_STATIC,5,84,41,8
LTEXT "",IDC_IPCFIFO9,60,85,79,8
CONTROL "&Auto-update",IDC_AUTO_UPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,32,163,54,14
EDITTEXT IDC_AUTO_UPDATE_SECS,87,164,12,14,ES_AUTOHSCROLL | ES_READONLY | WS_DISABLED
CONTROL "",IDC_AUTO_UPDATE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,99,164,11,14
LTEXT "secs",IDC_STATIC,111,167,16,8
PUSHBUTTON "&Fermer",IDC_FERMER,50,183,50,14
GROUPBOX "ARM9",IDC_STATIC,4,4,142,98
LTEXT "GXSTAT :",IDC_STATIC,5,92,41,8
LTEXT "",IDC_GXSTAT9,60,93,79,8
LTEXT "IE :",IDC_STATIC,5,114,41,8
LTEXT "",IDC_IE7,60,114,80,8
LTEXT "IF :",IDC_STATIC,5,122,41,8
LTEXT "",IDC_IF7,60,122,79,8
LTEXT "IME :",IDC_STATIC,5,130,41,8
LTEXT "",IDC_IME7,60,130,79,8
GROUPBOX "ARM7",IDC_STATIC,3,104,142,53
LTEXT "IPCSYNC :",IDC_STATIC,5,138,41,8
LTEXT "",IDC_IPCSYNC7,60,138,78,8
LTEXT "IPCFIFO :",IDC_STATIC,5,146,41,8
LTEXT "",IDC_IPCFIFO7,60,147,79,8
END
/////////////////////////////////////////////////////////////////////////////
//
@ -615,6 +635,11 @@ BEGIN
BEGIN
BOTTOMMARGIN, 176
END
IDD_IO_REG, DIALOG
BEGIN
BOTTOMMARGIN, 150
END
END
#endif // APSTUDIO_INVOKED
@ -996,30 +1021,50 @@ BEGIN
LTEXT "",IDC_DATA,60,52,100,8
END
IDD_IO_REG DIALOGEX 0, 0, 150, 150
IDD_IO_REG DIALOGEX 0, 0, 150, 200
STYLE DS_SETFONT | DS_CENTER | WS_CAPTION
CAPTION "IO REG"
CAPTION "IO registers"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
PUSHBUTTON "&Close",IDC_FERMER,50,134,50,14
LTEXT "Int Handler :",IDC_STATIC,4,4,41,8
LTEXT "IE :",IDC_STATIC,4,12,41,8
LTEXT "IME :",IDC_STATIC,4,20,41,8
LTEXT "DISPCNT :",IDC_STATIC,4,28,41,8
LTEXT "DISPSTAT :",IDC_STATIC,4,36,41,8
LTEXT "IPCSYNC :",IDC_STATIC,4,44,41,8
LTEXT "IPCFIFO :",IDC_STATIC,4,52,41,8
LTEXT "",IDC_INTHAND,45,4,100,8
LTEXT "",IDC_IE,45,12,130,8
LTEXT "",IDC_IME,45,20,130,8
LTEXT "",IDC_DISPCNT,45,28,130,8
LTEXT "",IDC_DISPSTAT,45,36,130,8
LTEXT "",IDC_IPCSYNC,45,44,130,8
LTEXT "",IDC_IPCFIFO,45,52,130,8
CONTROL "&Auto-update",IDC_AUTO_UPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,32,115,54,14
EDITTEXT IDC_AUTO_UPDATE_SECS,87,117,12,14,ES_AUTOHSCROLL | ES_READONLY | WS_DISABLED
CONTROL "",IDC_AUTO_UPDATE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,99,116,11,14
LTEXT "secs",IDC_STATIC,111,119,16,8
LTEXT "Int Handler :",IDC_STATIC,5,13,41,8
LTEXT "",IDC_INTHAND9,60,14,80,8
LTEXT "IE :",IDC_STATIC,5,21,41,8
LTEXT "",IDC_IE9,60,22,80,8
LTEXT "IF :",IDC_STATIC,5,29,41,8
LTEXT "",IDC_IF9,60,29,79,8
LTEXT "IME :",IDC_STATIC,5,36,41,8
LTEXT "",IDC_IME9,60,36,79,8
LTEXT "DISPA_CNT :",IDC_STATIC,5,44,48,8
LTEXT "",IDC_DISPCNTA9,60,44,83,8
LTEXT "DISPA_STAT :",IDC_STATIC,5,52,49,8
LTEXT "",IDC_DISPSTATA9,60,52,79,8
LTEXT "DISPB_CNT :",IDC_STATIC,5,60,48,8
LTEXT "",IDC_DISPCNTB9,60,60,83,8
LTEXT "DISPB_STAT :",IDC_STATIC,5,68,49,8
LTEXT "",IDC_DISPSTATB9,60,68,79,8
LTEXT "IPCSYNC :",IDC_STATIC,5,76,41,8
LTEXT "",IDC_IPCSYNC9,60,76,78,8
LTEXT "IPCFIFO :",IDC_STATIC,5,84,41,8
LTEXT "",IDC_IPCFIFO9,60,85,79,8
CONTROL "&Auto-update",IDC_AUTO_UPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,32,163,54,14
EDITTEXT IDC_AUTO_UPDATE_SECS,87,164,12,14,ES_AUTOHSCROLL | ES_READONLY | WS_DISABLED
CONTROL "",IDC_AUTO_UPDATE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,99,164,11,14
LTEXT "secs",IDC_STATIC,111,167,16,8
PUSHBUTTON "&Close",IDC_FERMER,50,183,50,14
GROUPBOX "ARM9",IDC_STATIC,4,4,142,98
LTEXT "GXSTAT :",IDC_STATIC,5,92,41,8
LTEXT "",IDC_GXSTAT9,60,93,79,8
LTEXT "IE :",IDC_STATIC,5,114,41,8
LTEXT "",IDC_IE7,60,114,80,8
LTEXT "IF :",IDC_STATIC,5,122,41,8
LTEXT "",IDC_IF7,60,122,79,8
LTEXT "IME :",IDC_STATIC,5,130,41,8
LTEXT "",IDC_IME7,60,130,79,8
GROUPBOX "ARM7",IDC_STATIC,3,104,142,53
LTEXT "IPCSYNC :",IDC_STATIC,5,138,41,8
LTEXT "",IDC_IPCSYNC7,60,138,78,8
LTEXT "IPCFIFO :",IDC_STATIC,5,146,41,8
LTEXT "",IDC_IPCFIFO7,60,147,79,8
END
IDD_PAL DIALOGEX 0, 0, 120, 184
@ -1387,6 +1432,11 @@ BEGIN
BOTTOMMARGIN, 82
END
IDD_IO_REG, DIALOG
BEGIN
BOTTOMMARGIN, 150
END
IDD_PAL, DIALOG
BEGIN
BOTTOMMARGIN, 165
@ -1679,32 +1729,6 @@ BEGIN
LTEXT "",IDC_DATA,45,52,100,8
END
IDD_IO_REG DIALOGEX 0, 0, 150, 150
STYLE DS_SETFONT | DS_CENTER | WS_CAPTION
CAPTION "IO REG"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
PUSHBUTTON "&Fermer",IDC_FERMER,50,134,50,14
LTEXT "Int Handler :",IDC_STATIC,4,4,41,8
LTEXT "IE :",IDC_STATIC,4,12,41,8
LTEXT "IME :",IDC_STATIC,4,20,41,8
LTEXT "DISPCNT :",IDC_STATIC,4,28,41,8
LTEXT "DISPSTAT :",IDC_STATIC,4,36,41,8
LTEXT "IPCSYNC :",IDC_STATIC,4,44,41,8
LTEXT "IPCFIFO :",IDC_STATIC,4,52,41,8
LTEXT "",IDC_INTHAND,45,4,100,8
LTEXT "",IDC_IE,45,12,130,8
LTEXT "",IDC_IME,45,20,130,8
LTEXT "",IDC_DISPCNT,45,28,130,8
LTEXT "",IDC_DISPSTAT,45,36,130,8
LTEXT "",IDC_IPCSYNC,45,44,130,8
LTEXT "",IDC_IPCFIFO,45,52,130,8
CONTROL "&Auto-update",IDC_AUTO_UPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,32,115,54,14
EDITTEXT IDC_AUTO_UPDATE_SECS,87,117,12,14,ES_AUTOHSCROLL | ES_READONLY | WS_DISABLED
CONTROL "",IDC_AUTO_UPDATE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,99,116,11,14
LTEXT "secs",IDC_STATIC,111,119,16,8
END
IDD_PAL DIALOGEX 0, 0, 120, 194
STYLE DS_SETFONT | WS_CAPTION | WS_SYSMENU
CAPTION "PAL VIEW"
@ -1881,6 +1905,52 @@ BEGIN
LTEXT "secs",IDC_STATIC,406,5,16,8
END
IDD_IO_REG DIALOGEX 0, 0, 150, 200
STYLE DS_SETFONT | DS_CENTER | WS_CAPTION
CAPTION "IO registre"
FONT 8, "MS Sans Serif", 0, 0, 0x0
BEGIN
LTEXT "Int Handler :",IDC_STATIC,5,13,41,8
LTEXT "",IDC_INTHAND9,60,14,80,8
LTEXT "IE :",IDC_STATIC,5,21,41,8
LTEXT "",IDC_IE9,60,22,80,8
LTEXT "IF :",IDC_STATIC,5,29,41,8
LTEXT "",IDC_IF9,60,29,79,8
LTEXT "IME :",IDC_STATIC,5,36,41,8
LTEXT "",IDC_IME9,60,36,79,8
LTEXT "DISPA_CNT :",IDC_STATIC,5,44,48,8
LTEXT "",IDC_DISPCNTA9,60,44,83,8
LTEXT "DISPA_STAT :",IDC_STATIC,5,52,49,8
LTEXT "",IDC_DISPSTATA9,60,52,79,8
LTEXT "DISPB_CNT :",IDC_STATIC,5,60,48,8
LTEXT "",IDC_DISPCNTB9,60,60,83,8
LTEXT "DISPB_STAT :",IDC_STATIC,5,68,49,8
LTEXT "",IDC_DISPSTATB9,60,68,79,8
LTEXT "IPCSYNC :",IDC_STATIC,5,76,41,8
LTEXT "",IDC_IPCSYNC9,60,76,78,8
LTEXT "IPCFIFO :",IDC_STATIC,5,84,41,8
LTEXT "",IDC_IPCFIFO9,60,85,79,8
CONTROL "&Auto-update",IDC_AUTO_UPDATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,32,163,54,14
EDITTEXT IDC_AUTO_UPDATE_SECS,87,164,12,14,ES_AUTOHSCROLL | ES_READONLY | WS_DISABLED
CONTROL "",IDC_AUTO_UPDATE_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_AUTOBUDDY | UDS_ARROWKEYS | WS_DISABLED,99,164,11,14
LTEXT "secs",IDC_STATIC,111,167,16,8
PUSHBUTTON "&Luk",IDC_FERMER,50,183,50,14
GROUPBOX "ARM9",IDC_STATIC,4,4,142,98
LTEXT "GXSTAT :",IDC_STATIC,5,92,41,8
LTEXT "",IDC_GXSTAT9,60,93,79,8
LTEXT "IE :",IDC_STATIC,5,114,41,8
LTEXT "",IDC_IE7,60,114,80,8
LTEXT "IF :",IDC_STATIC,5,122,41,8
LTEXT "",IDC_IF7,60,122,79,8
LTEXT "IME :",IDC_STATIC,5,130,41,8
LTEXT "",IDC_IME7,60,130,79,8
GROUPBOX "ARM7",IDC_STATIC,3,104,142,53
LTEXT "IPCSYNC :",IDC_STATIC,5,138,41,8
LTEXT "",IDC_IPCSYNC7,60,138,78,8
LTEXT "IPCFIFO :",IDC_STATIC,5,146,41,8
LTEXT "",IDC_IPCFIFO7,60,147,79,8
END
/////////////////////////////////////////////////////////////////////////////
//
@ -1894,6 +1964,11 @@ BEGIN
BEGIN
BOTTOMMARGIN, 165
END
IDD_IO_REG, DIALOG
BEGIN
BOTTOMMARGIN, 150
END
END
#endif // APSTUDIO_INVOKED