Fix broken windows debugging tools (Disassembler Still not working correctly).
Added Flash 4Mbit save type Fixed 2Mbit save type incorrectly set as FRAM.
This commit is contained in:
parent
5ba5bff4d2
commit
d8c104af01
|
@ -39,13 +39,14 @@
|
|||
#include "zero_private.h"
|
||||
#include "mc.h"
|
||||
|
||||
static const int save_types[6][2] = {
|
||||
static const int save_types[7][2] = {
|
||||
{MC_TYPE_AUTODETECT,1},
|
||||
{MC_TYPE_EEPROM1,MC_SIZE_4KBITS},
|
||||
{MC_TYPE_EEPROM2,MC_SIZE_64KBITS},
|
||||
{MC_TYPE_EEPROM2,MC_SIZE_512KBITS},
|
||||
{MC_TYPE_FLASH,MC_SIZE_256KBITS},
|
||||
{MC_TYPE_FRAM,MC_SIZE_2MBITS}
|
||||
{MC_TYPE_FRAM,MC_SIZE_256KBITS},
|
||||
{MC_TYPE_FLASH,MC_SIZE_2MBITS},
|
||||
{MC_TYPE_FLASH,MC_SIZE_4MBITS}
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -108,10 +108,19 @@ void mc_reset_com(memory_chip_t *mc)
|
|||
addr = (mc->autodetectbuf[0] << 8) | mc->autodetectbuf[1];
|
||||
mc->type = MC_TYPE_FRAM;
|
||||
mc->size = MC_SIZE_256KBITS;
|
||||
}
|
||||
else if (mc->autodetectsize == (512+3))
|
||||
{
|
||||
// Flash 4Mbit
|
||||
addr = (mc->autodetectbuf[0] << 16) |
|
||||
(mc->autodetectbuf[1] << 8) |
|
||||
mc->autodetectbuf[2];
|
||||
mc->type = MC_TYPE_FLASH;
|
||||
mc->size = MC_SIZE_4MBITS;
|
||||
}
|
||||
else if (mc->autodetectsize == (256+3))
|
||||
{
|
||||
// Flash
|
||||
// Flash 2Mbit
|
||||
addr = (mc->autodetectbuf[0] << 16) |
|
||||
(mc->autodetectbuf[1] << 8) |
|
||||
mc->autodetectbuf[2];
|
||||
|
@ -213,6 +222,8 @@ void mc_load_file(memory_chip_t *mc, const char* filename)
|
|||
type = MC_TYPE_EEPROM2;
|
||||
else if (size >= MC_SIZE_2MBITS)
|
||||
type = MC_TYPE_FLASH;
|
||||
else if (size >= MC_SIZE_4MBITS)
|
||||
type = MC_TYPE_FLASH;
|
||||
|
||||
if (type != -1)
|
||||
mc_realloc(mc, type, size);
|
||||
|
@ -259,6 +270,8 @@ int mc_load_duc(memory_chip_t *mc, const char* filename)
|
|||
type = MC_TYPE_EEPROM2;
|
||||
else if (size >= MC_SIZE_2MBITS)
|
||||
type = MC_TYPE_FLASH;
|
||||
else if (size >= MC_SIZE_4MBITS)
|
||||
type = MC_TYPE_FLASH;
|
||||
|
||||
if (type != -1)
|
||||
mc_realloc(mc, type, size);
|
||||
|
|
|
@ -429,6 +429,10 @@ BOOL CALLBACK ViewDisasm_ARM7Proc (HWND hwnd, UINT message, WPARAM wParam, LPARA
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
u16 t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!DisView7)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != DisView7->autoup_secs)
|
||||
{
|
||||
DisView7->autoup_secs = t;
|
||||
|
@ -665,6 +669,10 @@ BOOL CALLBACK ViewDisasm_ARM9Proc (HWND hwnd, UINT message, WPARAM wParam, LPARA
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
u16 t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!DisView9)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != DisView9->autoup_secs)
|
||||
{
|
||||
DisView9->autoup_secs = t;
|
||||
|
|
|
@ -161,6 +161,10 @@ BOOL CALLBACK ViewLightsProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPa
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!LightsView)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != LightsView->autoup_secs)
|
||||
{
|
||||
LightsView->autoup_secs = t;
|
||||
|
|
|
@ -2219,38 +2219,53 @@ LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM
|
|||
osd->clear();
|
||||
return 0;
|
||||
|
||||
#define saver(one,two,three,four,five, six) \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE1, MF_BYCOMMAND | one); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE2, MF_BYCOMMAND | two); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE3, MF_BYCOMMAND | three); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE4, MF_BYCOMMAND | four); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE5, MF_BYCOMMAND | five); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE6, MF_BYCOMMAND | six);
|
||||
#define clearsaver() \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE1, MF_BYCOMMAND | MF_UNCHECKED); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE2, MF_BYCOMMAND | MF_UNCHECKED); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE3, MF_BYCOMMAND | MF_UNCHECKED); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE4, MF_BYCOMMAND | MF_UNCHECKED); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE5, MF_BYCOMMAND | MF_UNCHECKED); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE6, MF_BYCOMMAND | MF_UNCHECKED); \
|
||||
MainWindow->checkMenu(IDC_SAVETYPE7, MF_BYCOMMAND | MF_UNCHECKED);
|
||||
|
||||
#define saver(one) \
|
||||
MainWindow->checkMenu(one, MF_BYCOMMAND | MF_CHECKED);
|
||||
|
||||
case IDC_SAVETYPE1:
|
||||
saver(MF_CHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED);
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE1);
|
||||
mmu_select_savetype(0,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
case IDC_SAVETYPE2:
|
||||
saver(MF_UNCHECKED,MF_CHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED);
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE2);
|
||||
mmu_select_savetype(1,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
case IDC_SAVETYPE3:
|
||||
saver(MF_UNCHECKED,MF_UNCHECKED,MF_CHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED);
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE2);
|
||||
mmu_select_savetype(2,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
case IDC_SAVETYPE4:
|
||||
saver(MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_CHECKED,MF_UNCHECKED,MF_UNCHECKED);
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE4);
|
||||
mmu_select_savetype(3,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
case IDC_SAVETYPE5:
|
||||
saver(MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_CHECKED,MF_UNCHECKED);
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE5);
|
||||
mmu_select_savetype(4,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
case IDC_SAVETYPE6:
|
||||
saver(MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_UNCHECKED,MF_CHECKED);
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE6);
|
||||
mmu_select_savetype(5,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
case IDC_SAVETYPE7:
|
||||
clearsaver();
|
||||
saver(IDC_SAVETYPE7);
|
||||
mmu_select_savetype(6,&backupmemorytype,&backupmemorysize);
|
||||
return 0;
|
||||
|
||||
case IDM_RESET:
|
||||
NDS_Reset();
|
||||
|
|
|
@ -285,6 +285,10 @@ BOOL CALLBACK ViewMapsProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPara
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!MapView)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != MapView->autoup_secs)
|
||||
{
|
||||
MapView->autoup_secs = t;
|
||||
|
|
|
@ -227,6 +227,10 @@ BOOL CALLBACK ViewMatricesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM l
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!MatrixView)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != MatrixView->autoup_secs)
|
||||
{
|
||||
MatrixView->autoup_secs = t;
|
||||
|
|
|
@ -279,6 +279,10 @@ bool CALLBACK ViewMem_ARM7Proc (HWND hwnd, UINT message, WPARAM wParam, LPARAM l
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!MemView7)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != MemView7->autoup_secs)
|
||||
{
|
||||
MemView7->autoup_secs = t;
|
||||
|
@ -460,6 +464,10 @@ bool CALLBACK ViewMem_ARM9Proc (HWND hwnd, UINT message, WPARAM wParam, LPARAM l
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!MemView9)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != MemView9->autoup_secs)
|
||||
{
|
||||
MemView9->autoup_secs = t;
|
||||
|
|
|
@ -289,6 +289,10 @@ BOOL CALLBACK ViewOAMProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!OAMView)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != OAMView->autoup_secs)
|
||||
{
|
||||
OAMView->autoup_secs = t;
|
||||
|
|
|
@ -186,6 +186,10 @@ BOOL CALLBACK ViewPalProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!PalView)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != PalView->autoup_secs)
|
||||
{
|
||||
PalView->autoup_secs = t;
|
||||
|
|
|
@ -349,13 +349,14 @@
|
|||
#define ID_FILE_RECENTROM 40034
|
||||
#define ID_FIL_RECENTROM 40035
|
||||
#define ID_FICHIER_RECENTROM 40036
|
||||
#define IDC_SAVETYPE7 40037
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 107
|
||||
#define _APS_NEXT_COMMAND_VALUE 40037
|
||||
#define _APS_NEXT_COMMAND_VALUE 40038
|
||||
#define _APS_NEXT_CONTROL_VALUE 1019
|
||||
#define _APS_NEXT_SYMED_VALUE 112
|
||||
#endif
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
#pragma code_page(1251)
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -764,6 +764,7 @@ BEGIN
|
|||
MENUITEM "EEPROM 512kbit", IDC_SAVETYPE4
|
||||
MENUITEM "FRAM 256kbit", IDC_SAVETYPE5
|
||||
MENUITEM "FLASH 2mbit", IDC_SAVETYPE6
|
||||
MENUITEM "FLASH 4mbit", IDC_SAVETYPE7
|
||||
END
|
||||
MENUITEM "Control Config", IDM_CONFIG
|
||||
MENUITEM "Sound Settings", IDM_SOUNDSETTINGS
|
||||
|
|
|
@ -443,6 +443,10 @@ BOOL CALLBACK ViewTilesProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lPar
|
|||
case IDC_AUTO_UPDATE_SECS:
|
||||
{
|
||||
int t = GetDlgItemInt(hwnd, IDC_AUTO_UPDATE_SECS, FALSE, TRUE);
|
||||
if (!TileView)
|
||||
{
|
||||
SendMessage(hwnd, WM_INITDIALOG, 0, 0);
|
||||
}
|
||||
if (t != TileView->autoup_secs)
|
||||
{
|
||||
TileView->autoup_secs = t;
|
||||
|
|
Loading…
Reference in New Issue