spu and win32: add individual channel muting capability
This commit is contained in:
parent
5d40f08ce2
commit
c2751af7f5
|
@ -120,23 +120,23 @@
|
||||||
#define IDC_PNG 325
|
#define IDC_PNG 325
|
||||||
#define IDC_BMP 326
|
#define IDC_BMP 326
|
||||||
#define IDC_FORMATSTATIC 327
|
#define IDC_FORMATSTATIC 327
|
||||||
#define IDM_PATHSETTINGS 350
|
#define IDM_PATHSETTINGS 350
|
||||||
#define IDC_ROMPATHEDIT 351
|
#define IDC_ROMPATHEDIT 351
|
||||||
#define IDC_BROWSEROMS 352
|
#define IDC_BROWSEROMS 352
|
||||||
#define IDC_PATHDEFAULTS 353
|
#define IDC_PATHDEFAULTS 353
|
||||||
#define IDC_SAVERAMPATHEDIT 354
|
#define IDC_SAVERAMPATHEDIT 354
|
||||||
#define IDC_BROWSESRAM 355
|
#define IDC_BROWSESRAM 355
|
||||||
#define IDC_STATEPATHEDIT 356
|
#define IDC_STATEPATHEDIT 356
|
||||||
#define IDC_BROWSESTATES 357
|
#define IDC_BROWSESTATES 357
|
||||||
#define IDC_SCREENSHOTPATHEDIT 358
|
#define IDC_SCREENSHOTPATHEDIT 358
|
||||||
#define IDC_BROWSESCREENSHOTS 359
|
#define IDC_BROWSESCREENSHOTS 359
|
||||||
#define IDC_AVIPATHEDIT 360
|
#define IDC_AVIPATHEDIT 360
|
||||||
#define IDC_BROWSEAVI 361
|
#define IDC_BROWSEAVI 361
|
||||||
#define IDC_CHEATPATHEDIT 362
|
#define IDC_CHEATPATHEDIT 362
|
||||||
#define IDC_BROWSECHEATS 363
|
#define IDC_BROWSECHEATS 363
|
||||||
#define IDC_LUAPATHEDIT 364
|
#define IDC_LUAPATHEDIT 364
|
||||||
#define IDC_BROWSELUA 365
|
#define IDC_BROWSELUA 365
|
||||||
#define IDD_PATHSETTINGS 366
|
#define IDD_PATHSETTINGS 366
|
||||||
#define IDC_DES_BOX 402
|
#define IDC_DES_BOX 402
|
||||||
#define IDC_R0 403
|
#define IDC_R0 403
|
||||||
#define IDC_R1 404
|
#define IDC_R1 404
|
||||||
|
@ -395,6 +395,15 @@
|
||||||
#define IDC_LIST 1069
|
#define IDC_LIST 1069
|
||||||
#define IDC_SNUMBER 1071
|
#define IDC_SNUMBER 1071
|
||||||
#define IDC_CHECK1 1074
|
#define IDC_CHECK1 1074
|
||||||
|
#define IDC_CHECK2 1075
|
||||||
|
|
||||||
|
#define IDC_CHECK3 1076
|
||||||
|
|
||||||
|
#define IDC_CHECK4 1077
|
||||||
|
#define IDC_CHECK6 1080
|
||||||
|
#define IDC_CHECK7 1082
|
||||||
|
#define IDC_CHECK8 1083
|
||||||
|
#define IDC_CHECK9 1088
|
||||||
#define IDM_FIRMSETTINGS 1100
|
#define IDM_FIRMSETTINGS 1100
|
||||||
#define IDD_FIRMSETTINGS 1101
|
#define IDD_FIRMSETTINGS 1101
|
||||||
#define IDC_EDIT1 1102
|
#define IDC_EDIT1 1102
|
||||||
|
@ -608,6 +617,14 @@
|
||||||
#define IDC_SOUND5POSLEN 1451
|
#define IDC_SOUND5POSLEN 1451
|
||||||
#define IDC_SOUND6POSLEN 1452
|
#define IDC_SOUND6POSLEN 1452
|
||||||
#define IDC_SOUND7POSLEN 1453
|
#define IDC_SOUND7POSLEN 1453
|
||||||
|
#define IDC_SOUND0MUTE 2001
|
||||||
|
#define IDC_SOUND1MUTE 2002
|
||||||
|
#define IDC_SOUND2MUTE 2003
|
||||||
|
#define IDC_SOUND3MUTE 2004
|
||||||
|
#define IDC_SOUND4MUTE 2005
|
||||||
|
#define IDC_SOUND5MUTE 2006
|
||||||
|
#define IDC_SOUND6MUTE 2007
|
||||||
|
#define IDC_SOUND7MUTE 2008
|
||||||
#define IDC_GI_FATOFS 4464
|
#define IDC_GI_FATOFS 4464
|
||||||
#define IDC_INTERPOLATECOLOR 4464
|
#define IDC_INTERPOLATECOLOR 4464
|
||||||
#define IDC_GI_FATSIZE 4465
|
#define IDC_GI_FATSIZE 4465
|
||||||
|
@ -773,7 +790,7 @@
|
||||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||||
#define _APS_NEXT_RESOURCE_VALUE 105
|
#define _APS_NEXT_RESOURCE_VALUE 105
|
||||||
#define _APS_NEXT_COMMAND_VALUE 40008
|
#define _APS_NEXT_COMMAND_VALUE 40008
|
||||||
#define _APS_NEXT_CONTROL_VALUE 1005
|
#define _APS_NEXT_CONTROL_VALUE 1006
|
||||||
#define _APS_NEXT_SYMED_VALUE 101
|
#define _APS_NEXT_SYMED_VALUE 101
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
Binary file not shown.
|
@ -25,6 +25,7 @@
|
||||||
#include "../common.h"
|
#include "../common.h"
|
||||||
#include "../matrix.h"
|
#include "../matrix.h"
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
#include "NDSSystem.h"
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <windowsx.h>
|
#include <windowsx.h>
|
||||||
|
@ -66,6 +67,11 @@ void SoundView_DeInit()
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
inline int chanOfs()
|
||||||
|
{
|
||||||
|
return SoundView_Data->viewFirst8Channels ? 0 : 8;
|
||||||
|
}
|
||||||
|
|
||||||
BOOL SoundView_DlgOpen(HWND hParentWnd)
|
BOOL SoundView_DlgOpen(HWND hParentWnd)
|
||||||
{
|
{
|
||||||
HWND hDlg;
|
HWND hDlg;
|
||||||
|
@ -117,11 +123,10 @@ void SoundView_Refresh()
|
||||||
|
|
||||||
char buf[256];
|
char buf[256];
|
||||||
HWND hDlg = SoundView_Data->hDlg;
|
HWND hDlg = SoundView_Data->hDlg;
|
||||||
int chanOfs = SoundView_Data->viewFirst8Channels ? 0 : 8;
|
|
||||||
static const int format_shift[] = { 2, 1, 3, 0 };
|
static const int format_shift[] = { 2, 1, 3, 0 };
|
||||||
static const double ARM7_CLOCK = 33513982;
|
static const double ARM7_CLOCK = 33513982;
|
||||||
for(int chanId = 0; chanId < 8; chanId++) {
|
for(int chanId = 0; chanId < 8; chanId++) {
|
||||||
int chan = chanId + chanOfs;
|
int chan = chanId + chanOfs();
|
||||||
channel_struct &thischan = SPU_core->channels[chan];
|
channel_struct &thischan = SPU_core->channels[chan];
|
||||||
|
|
||||||
SendDlgItemMessage(hDlg, IDC_SOUND0PANBAR+chanId, PBM_SETPOS, (WPARAM)spumuldiv7(128, thischan.pan), (LPARAM)0);
|
SendDlgItemMessage(hDlg, IDC_SOUND0PANBAR+chanId, PBM_SETPOS, (WPARAM)spumuldiv7(128, thischan.pan), (LPARAM)0);
|
||||||
|
@ -204,6 +209,20 @@ void SoundView_Refresh()
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
||||||
|
static void updateMute_toSettings(HWND hDlg, int chan)
|
||||||
|
{
|
||||||
|
for(int chanId = 0; chanId < 8; chanId++)
|
||||||
|
CommonSettings.spu_muteChannels[chanId+chanOfs()] = IsDlgButtonChecked(hDlg, IDC_SOUND0MUTE+chanId) == BST_CHECKED;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void updateMute_fromSettings(HWND hDlg)
|
||||||
|
{
|
||||||
|
for(int chanId = 0; chanId < 8; chanId++)
|
||||||
|
SendDlgItemMessage(hDlg, IDC_SOUND0MUTE+chanId, BM_SETCHECK,
|
||||||
|
CommonSettings.spu_muteChannels[chanId+chanOfs()] ? TRUE : FALSE,
|
||||||
|
0);
|
||||||
|
}
|
||||||
static void SoundView_SwitchChanOfs(SoundView_DataStruct *data)
|
static void SoundView_SwitchChanOfs(SoundView_DataStruct *data)
|
||||||
{
|
{
|
||||||
if (data == NULL)
|
if (data == NULL)
|
||||||
|
@ -215,17 +234,19 @@ static void SoundView_SwitchChanOfs(SoundView_DataStruct *data)
|
||||||
data->viewFirst8Channels ? "V" : "^");
|
data->viewFirst8Channels ? "V" : "^");
|
||||||
|
|
||||||
char buf[256];
|
char buf[256];
|
||||||
int chanOfs = SoundView_Data->viewFirst8Channels ? 0 : 8;
|
|
||||||
for(int chanId = 0; chanId < 8; chanId++) {
|
for(int chanId = 0; chanId < 8; chanId++) {
|
||||||
int chan = chanId + chanOfs;
|
int chan = chanId + chanOfs();
|
||||||
sprintf(buf, "#%02d", chan);
|
sprintf(buf, "#%02d", chan);
|
||||||
SetDlgItemText(hDlg, IDC_SOUND0ID+chanId, buf);
|
SetDlgItemText(hDlg, IDC_SOUND0ID+chanId, buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateMute_fromSettings(hDlg);
|
||||||
|
|
||||||
SoundView_Refresh();
|
SoundView_Refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL CALLBACK SoundView_DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|
||||||
|
static BOOL CALLBACK SoundView_DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
SoundView_DataStruct *data = (SoundView_DataStruct*)GetWindowLong(hDlg, DWL_USER);
|
SoundView_DataStruct *data = (SoundView_DataStruct*)GetWindowLong(hDlg, DWL_USER);
|
||||||
if((data == NULL) && (uMsg != WM_INITDIALOG))
|
if((data == NULL) && (uMsg != WM_INITDIALOG))
|
||||||
|
@ -240,6 +261,11 @@ BOOL CALLBACK SoundView_DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPar
|
||||||
SendDlgItemMessage(hDlg, IDC_SOUND0PANBAR+chanId, PBM_SETRANGE, (WPARAM)0, MAKELPARAM(0, 128));
|
SendDlgItemMessage(hDlg, IDC_SOUND0PANBAR+chanId, PBM_SETRANGE, (WPARAM)0, MAKELPARAM(0, 128));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for(int chanId = 0; chanId < 8; chanId++) {
|
||||||
|
if(CommonSettings.spu_muteChannels[chanId])
|
||||||
|
SendDlgItemMessage(hDlg, IDC_SOUND0MUTE+chanId, BM_SETCHECK, TRUE, 0);
|
||||||
|
}
|
||||||
|
|
||||||
if(data == NULL)
|
if(data == NULL)
|
||||||
{
|
{
|
||||||
data = (SoundView_DataStruct*)lParam;
|
data = (SoundView_DataStruct*)lParam;
|
||||||
|
@ -270,6 +296,18 @@ BOOL CALLBACK SoundView_DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPar
|
||||||
data->volModeAlternate = IsDlgButtonChecked(hDlg, IDC_BUTTON_VOLMODE);
|
data->volModeAlternate = IsDlgButtonChecked(hDlg, IDC_BUTTON_VOLMODE);
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
case IDC_SOUND0MUTE+0:
|
||||||
|
case IDC_SOUND0MUTE+1:
|
||||||
|
case IDC_SOUND0MUTE+2:
|
||||||
|
case IDC_SOUND0MUTE+3:
|
||||||
|
case IDC_SOUND0MUTE+4:
|
||||||
|
case IDC_SOUND0MUTE+5:
|
||||||
|
case IDC_SOUND0MUTE+6:
|
||||||
|
case IDC_SOUND0MUTE+7:
|
||||||
|
updateMute_toSettings(hDlg,LOWORD(wParam)-IDC_SOUND0MUTE);
|
||||||
|
return 1;
|
||||||
|
|
||||||
|
|
||||||
case IDC_SOUNDVIEW_CHANSWITCH:
|
case IDC_SOUNDVIEW_CHANSWITCH:
|
||||||
{
|
{
|
||||||
SoundView_SwitchChanOfs(data);
|
SoundView_SwitchChanOfs(data);
|
||||||
|
|
Loading…
Reference in New Issue