diff --git a/Windows/Debugger/CtrlMemView.cpp b/Windows/Debugger/CtrlMemView.cpp index ae48aa4dc2..d09d3c62e5 100644 --- a/Windows/Debugger/CtrlMemView.cpp +++ b/Windows/Debugger/CtrlMemView.cpp @@ -436,6 +436,14 @@ void CtrlMemView::onMouseUp(WPARAM wParam, LPARAM lParam, int button) W32Util::CopyTextToClipboard(wnd,temp); } break; + + case ID_MEMVIEW_COPYADDRESS: + { + char temp[24]; + sprintf(temp,"0x%08X",curAddress); + W32Util::CopyTextToClipboard(wnd,temp); + } + break; } return; } diff --git a/Windows/Debugger/Debugger_Disasm.cpp b/Windows/Debugger/Debugger_Disasm.cpp index 4b1cfea7a1..60f66b0e70 100644 --- a/Windows/Debugger/Debugger_Disasm.cpp +++ b/Windows/Debugger/Debugger_Disasm.cpp @@ -74,6 +74,7 @@ CDisasm::CDisasm(HINSTANCE _hInstance, HWND _hParent, DebugInterface *_cpu) : Di { cpu = _cpu; lastTicks = CoreTiming::GetTicks(); + keepStatusBarText = false; SetWindowText(m_hDlg, ConvertUTF8ToWString(_cpu->GetName()).c_str()); #ifdef THEMES @@ -413,8 +414,21 @@ BOOL CDisasm::DlgProc(UINT message, WPARAM wParam, LPARAM lParam) changeSubWindow(SUBWIN_STACKFRAMES); break; + case ID_DEBUG_DSIPLAYREGISTERLIST: + TabCtrl_SetCurSel(GetDlgItem(m_hDlg, IDC_LEFTTABS),0); + ShowWindow(GetDlgItem(m_hDlg, IDC_REGLIST), SW_NORMAL); + ShowWindow(GetDlgItem(m_hDlg, IDC_FUNCTIONLIST), SW_HIDE); + break; + + case ID_DEBUG_DSIPLAYFUNCTIONLIST: + TabCtrl_SetCurSel(GetDlgItem(m_hDlg, IDC_LEFTTABS),1); + ShowWindow(GetDlgItem(m_hDlg, IDC_REGLIST), SW_HIDE); + ShowWindow(GetDlgItem(m_hDlg, IDC_FUNCTIONLIST), SW_NORMAL); + break; + case ID_DEBUG_ADDBREAKPOINT: { + keepStatusBarText = true; bool isRunning = Core_IsActive(); if (isRunning) { @@ -431,6 +445,7 @@ BOOL CDisasm::DlgProc(UINT message, WPARAM wParam, LPARAM lParam) SetDebugMode(false); Core_EnableStepping(false); } + keepStatusBarText = false; } break; @@ -650,7 +665,8 @@ BOOL CDisasm::DlgProc(UINT message, WPARAM wParam, LPARAM lParam) changeSubWindow(SUBWIN_NEXT); break; case WM_DEB_SETSTATUSBARTEXT: - SendMessage(statusBarWnd,WM_SETTEXT,0,(LPARAM)ConvertUTF8ToWString((const char *)lParam).c_str()); + if (!keepStatusBarText) + SendMessage(statusBarWnd,WM_SETTEXT,0,(LPARAM)ConvertUTF8ToWString((const char *)lParam).c_str()); break; case WM_DEB_GOTOHEXEDIT: { diff --git a/Windows/Debugger/Debugger_Disasm.h b/Windows/Debugger/Debugger_Disasm.h index d5425ca2ea..4168a27d5c 100644 --- a/Windows/Debugger/Debugger_Disasm.h +++ b/Windows/Debugger/Debugger_Disasm.h @@ -37,6 +37,7 @@ private: CtrlStackTraceView* stackTraceView; std::vector displayedBreakPoints_; std::vector displayedMemChecks_; + bool keepStatusBarText; BOOL DlgProc(UINT message, WPARAM wParam, LPARAM lParam); void UpdateSize(WORD width, WORD height); diff --git a/Windows/ppsspp.rc b/Windows/ppsspp.rc index 44482d4f84..8b0b2d84ae 100644 Binary files a/Windows/ppsspp.rc and b/Windows/ppsspp.rc differ diff --git a/Windows/resource.h b/Windows/resource.h index 553aecf196..fc4977a54f 100644 Binary files a/Windows/resource.h and b/Windows/resource.h differ