Wifi: modify wifi settings dialog, add two modes: Ad-hoc and infrastructure.
Disable Infrastructure as it's just SoftAP, it doesn't work yet and I'm going to focus on Ad-hoc mode for the moment.
This commit is contained in:
parent
aa32f62368
commit
c2291bfee6
|
@ -400,7 +400,6 @@ extern struct TCommonSettings {
|
||||||
, BootFromFirmware(false)
|
, BootFromFirmware(false)
|
||||||
, DebugConsole(false)
|
, DebugConsole(false)
|
||||||
, single_core(true)
|
, single_core(true)
|
||||||
, wifiBridgeAdapterNum(0)
|
|
||||||
, spuInterpolationMode(SPUInterpolation_Linear)
|
, spuInterpolationMode(SPUInterpolation_Linear)
|
||||||
, spuAdpcmCache(false)
|
, spuAdpcmCache(false)
|
||||||
, gfx3d_flushMode(0)
|
, gfx3d_flushMode(0)
|
||||||
|
@ -409,6 +408,12 @@ extern struct TCommonSettings {
|
||||||
strcpy(ARM9BIOS, "biosnds9.bin");
|
strcpy(ARM9BIOS, "biosnds9.bin");
|
||||||
strcpy(ARM7BIOS, "biosnds7.bin");
|
strcpy(ARM7BIOS, "biosnds7.bin");
|
||||||
strcpy(Firmware, "firmware.bin");
|
strcpy(Firmware, "firmware.bin");
|
||||||
|
|
||||||
|
wifi.mode = 0;
|
||||||
|
wifi.adhocMode = 0;
|
||||||
|
strcpy(wifi.adhocServerName, "");
|
||||||
|
wifi.infraBridgeAdapter = 0;
|
||||||
|
|
||||||
for(int i=0;i<16;i++)
|
for(int i=0;i<16;i++)
|
||||||
spu_muteChannels[i] = false;
|
spu_muteChannels[i] = false;
|
||||||
}
|
}
|
||||||
|
@ -427,7 +432,14 @@ extern struct TCommonSettings {
|
||||||
|
|
||||||
bool single_core;
|
bool single_core;
|
||||||
|
|
||||||
int wifiBridgeAdapterNum;
|
struct _Wifi {
|
||||||
|
int mode;
|
||||||
|
|
||||||
|
int adhocMode;
|
||||||
|
char adhocServerName[64];
|
||||||
|
|
||||||
|
int infraBridgeAdapter;
|
||||||
|
} wifi;
|
||||||
|
|
||||||
SPUInterpolationMode spuInterpolationMode;
|
SPUInterpolationMode spuInterpolationMode;
|
||||||
bool spuAdpcmCache;
|
bool spuAdpcmCache;
|
||||||
|
|
|
@ -209,10 +209,16 @@ FW_WFCProfile FW_WFCProfile3 = {"",
|
||||||
// 5: highest logging, for debugging, shows everything, may slow down a lot
|
// 5: highest logging, for debugging, shows everything, may slow down a lot
|
||||||
#define WIFI_LOGGING_LEVEL 3
|
#define WIFI_LOGGING_LEVEL 3
|
||||||
|
|
||||||
|
#define WIFI_LOG_USE_LOGC 0
|
||||||
|
|
||||||
#if (WIFI_LOGGING_LEVEL >= 1)
|
#if (WIFI_LOGGING_LEVEL >= 1)
|
||||||
#define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: "__VA_ARGS__);
|
#if WIFI_LOG_USE_LOGC
|
||||||
|
#define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: "__VA_ARGS__);
|
||||||
|
#else
|
||||||
|
#define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: "__VA_ARGS__);
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
#define WIFI_LOG(level, ...)
|
#define WIFI_LOG(level, ...) {}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
|
@ -1271,6 +1277,7 @@ int WIFI_SoftAP_Init(wifimac_t *wifi)
|
||||||
wifi->SoftAP.curPacketPos = 0;
|
wifi->SoftAP.curPacketPos = 0;
|
||||||
wifi->SoftAP.curPacketSending = FALSE;
|
wifi->SoftAP.curPacketSending = FALSE;
|
||||||
|
|
||||||
|
#if 0
|
||||||
if(wifi_netEnabled)
|
if(wifi_netEnabled)
|
||||||
{
|
{
|
||||||
if(desmume_pcap_findalldevs(&alldevs, errbuf) == -1)
|
if(desmume_pcap_findalldevs(&alldevs, errbuf) == -1)
|
||||||
|
@ -1279,7 +1286,7 @@ int WIFI_SoftAP_Init(wifimac_t *wifi)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
wifi_bridge = desmume_pcap_open(WIFI_index_device(alldevs,CommonSettings.wifiBridgeAdapterNum)->name, PACKET_SIZE, 0, 1, errbuf);
|
wifi_bridge = desmume_pcap_open(WIFI_index_device(alldevs,CommonSettings.wifi.infraBridgeAdapter)->name, PACKET_SIZE, 0, 1, errbuf);
|
||||||
if(wifi_bridge == NULL)
|
if(wifi_bridge == NULL)
|
||||||
{
|
{
|
||||||
printf("SoftAP: PCAP error with pcap_open(): %s\n", errbuf);
|
printf("SoftAP: PCAP error with pcap_open(): %s\n", errbuf);
|
||||||
|
@ -1288,6 +1295,7 @@ int WIFI_SoftAP_Init(wifimac_t *wifi)
|
||||||
|
|
||||||
desmume_pcap_freealldevs(alldevs);
|
desmume_pcap_freealldevs(alldevs);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1823,7 +1823,10 @@ int _main()
|
||||||
GetPrivateProfileString("Firmware", "FirmwareFile", "firmware.bin", CommonSettings.Firmware, 256, IniName);
|
GetPrivateProfileString("Firmware", "FirmwareFile", "firmware.bin", CommonSettings.Firmware, 256, IniName);
|
||||||
CommonSettings.BootFromFirmware = GetPrivateProfileBool("Firmware", "BootFromFirmware", FALSE, IniName);
|
CommonSettings.BootFromFirmware = GetPrivateProfileBool("Firmware", "BootFromFirmware", FALSE, IniName);
|
||||||
|
|
||||||
CommonSettings.wifiBridgeAdapterNum = GetPrivateProfileInt("Wifi", "BridgeAdapter", 0, IniName);
|
CommonSettings.wifi.mode = GetPrivateProfileInt("Wifi", "Mode", 0, IniName);
|
||||||
|
CommonSettings.wifi.adhocMode = GetPrivateProfileInt("Wifi", "AdhocMode", 0, IniName);
|
||||||
|
GetPrivateProfileString("Wifi", "AdhocServerName", "", CommonSettings.wifi.adhocServerName, 64, IniName);
|
||||||
|
CommonSettings.wifi.infraBridgeAdapter = GetPrivateProfileInt("Wifi", "BridgeAdapter", 0, IniName);
|
||||||
|
|
||||||
video.currentfilter = GetPrivateProfileInt("Video", "Filter", video.NONE, IniName);
|
video.currentfilter = GetPrivateProfileInt("Video", "Filter", video.NONE, IniName);
|
||||||
FilterUpdate(MainWindow->getHWnd(),false);
|
FilterUpdate(MainWindow->getHWnd(),false);
|
||||||
|
@ -2653,7 +2656,7 @@ LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM
|
||||||
DesEnableMenuItem(mainMenu, IDM_SHUT_UP, romloaded);
|
DesEnableMenuItem(mainMenu, IDM_SHUT_UP, romloaded);
|
||||||
DesEnableMenuItem(mainMenu, IDM_CHEATS_LIST, romloaded);
|
DesEnableMenuItem(mainMenu, IDM_CHEATS_LIST, romloaded);
|
||||||
DesEnableMenuItem(mainMenu, IDM_CHEATS_SEARCH, romloaded);
|
DesEnableMenuItem(mainMenu, IDM_CHEATS_SEARCH, romloaded);
|
||||||
DesEnableMenuItem(mainMenu, IDM_WIFISETTINGS, romloaded);
|
//DesEnableMenuItem(mainMenu, IDM_WIFISETTINGS, romloaded);
|
||||||
|
|
||||||
DesEnableMenuItem(mainMenu, IDM_RECORD_MOVIE, (romloaded && movieMode == MOVIEMODE_INACTIVE));
|
DesEnableMenuItem(mainMenu, IDM_RECORD_MOVIE, (romloaded && movieMode == MOVIEMODE_INACTIVE));
|
||||||
DesEnableMenuItem(mainMenu, IDM_PLAY_MOVIE, (romloaded && movieMode == MOVIEMODE_INACTIVE));
|
DesEnableMenuItem(mainMenu, IDM_PLAY_MOVIE, (romloaded && movieMode == MOVIEMODE_INACTIVE));
|
||||||
|
@ -4254,12 +4257,22 @@ LRESULT CALLBACK WifiSettingsDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM
|
||||||
{
|
{
|
||||||
case WM_INITDIALOG:
|
case WM_INITDIALOG:
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
char errbuf[PCAP_ERRBUF_SIZE];
|
char errbuf[PCAP_ERRBUF_SIZE];
|
||||||
pcap_if_t *alldevs;
|
pcap_if_t *alldevs;
|
||||||
pcap_if_t *d;
|
pcap_if_t *d;
|
||||||
int i;
|
int i;
|
||||||
|
#endif
|
||||||
HWND cur;
|
HWND cur;
|
||||||
|
|
||||||
|
CheckRadioButton(hDlg, IDC_WIFIMODE0, IDC_WIFIMODE1, IDC_WIFIMODE0 + CommonSettings.wifi.mode);
|
||||||
|
CheckRadioButton(hDlg, IDC_ADHOC_SERVER, IDC_ADHOC_CLIENT, CommonSettings.wifi.adhocMode ? IDC_ADHOC_CLIENT:IDC_ADHOC_SERVER);
|
||||||
|
|
||||||
|
cur = GetDlgItem(hDlg, IDC_ADHOC_SERVERNAME);
|
||||||
|
SetWindowText(cur, CommonSettings.wifi.adhocServerName);
|
||||||
|
EnableWindow(cur, (CommonSettings.wifi.adhocMode == 1) ? TRUE:FALSE);
|
||||||
|
|
||||||
|
#if 0
|
||||||
if(PCAP::pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL, &alldevs, errbuf) == -1)
|
if(PCAP::pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL, &alldevs, errbuf) == -1)
|
||||||
{
|
{
|
||||||
EndDialog(hDlg, TRUE);
|
EndDialog(hDlg, TRUE);
|
||||||
|
@ -4271,7 +4284,8 @@ LRESULT CALLBACK WifiSettingsDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM
|
||||||
{
|
{
|
||||||
ComboBox_AddString(cur, d->description);
|
ComboBox_AddString(cur, d->description);
|
||||||
}
|
}
|
||||||
ComboBox_SetCurSel(cur, CommonSettings.wifiBridgeAdapterNum);
|
ComboBox_SetCurSel(cur, CommonSettings.wifi.infraBridgeAdapter);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
|
@ -4279,6 +4293,14 @@ LRESULT CALLBACK WifiSettingsDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM
|
||||||
{
|
{
|
||||||
switch(LOWORD(wParam))
|
switch(LOWORD(wParam))
|
||||||
{
|
{
|
||||||
|
case IDC_ADHOC_SERVER:
|
||||||
|
case IDC_ADHOC_CLIENT:
|
||||||
|
{
|
||||||
|
HWND cur = GetDlgItem(hDlg, IDC_ADHOC_SERVERNAME);
|
||||||
|
EnableWindow(cur, (LOWORD(wParam) == IDC_ADHOC_CLIENT) ? TRUE:FALSE);
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
|
||||||
case IDOK:
|
case IDOK:
|
||||||
{
|
{
|
||||||
int val = 0;
|
int val = 0;
|
||||||
|
@ -4286,19 +4308,36 @@ LRESULT CALLBACK WifiSettingsDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM
|
||||||
if(romloaded)
|
if(romloaded)
|
||||||
val = MessageBox(hDlg, "The current ROM needs to be reset to apply changes.\nReset now ?", "DeSmuME", (MB_YESNO | MB_ICONQUESTION));
|
val = MessageBox(hDlg, "The current ROM needs to be reset to apply changes.\nReset now ?", "DeSmuME", (MB_YESNO | MB_ICONQUESTION));
|
||||||
|
|
||||||
if((!romloaded) || (val == IDYES))
|
HWND cur;
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
if (IsDlgButtonChecked(hDlg, IDC_WIFIMODE0))
|
||||||
|
CommonSettings.wifi.mode = 0;
|
||||||
|
else
|
||||||
|
CommonSettings.wifi.mode = 1;
|
||||||
|
WritePrivateProfileInt("Wifi", "Mode", CommonSettings.wifi.mode, IniName);
|
||||||
|
|
||||||
|
cur = GetDlgItem(hDlg, IDC_BRIDGEADAPTER);
|
||||||
|
CommonSettings.wifi.infraBridgeAdapter = ComboBox_GetCurSel(cur);
|
||||||
|
WritePrivateProfileInt("Wifi", "BridgeAdapter", CommonSettings.wifi.infraBridgeAdapter, IniName);
|
||||||
|
#else
|
||||||
|
CommonSettings.wifi.mode = 0;
|
||||||
|
WritePrivateProfileInt("Wifi", "Mode", CommonSettings.wifi.mode, IniName);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (IsDlgButtonChecked(hDlg, IDC_ADHOC_SERVER))
|
||||||
|
CommonSettings.wifi.adhocMode = 0;
|
||||||
|
else
|
||||||
|
CommonSettings.wifi.adhocMode = 1;
|
||||||
|
WritePrivateProfileInt("Wifi", "AdhocMode", CommonSettings.wifi.adhocMode, IniName);
|
||||||
|
|
||||||
|
cur = GetDlgItem(hDlg, IDC_ADHOC_SERVERNAME);
|
||||||
|
GetWindowText(cur, CommonSettings.wifi.adhocServerName, 64);
|
||||||
|
WritePrivateProfileString("Wifi", "AdhocServerName", CommonSettings.wifi.adhocServerName, IniName);
|
||||||
|
|
||||||
|
if(val == IDYES)
|
||||||
{
|
{
|
||||||
HWND cur;
|
NDS_Reset();
|
||||||
|
|
||||||
cur = GetDlgItem(hDlg, IDC_BRIDGEADAPTER);
|
|
||||||
CommonSettings.wifiBridgeAdapterNum = ComboBox_GetCurSel(cur);
|
|
||||||
|
|
||||||
WritePrivateProfileInt("Wifi", "BridgeAdapter", CommonSettings.wifiBridgeAdapterNum, IniName);
|
|
||||||
|
|
||||||
if(romloaded)
|
|
||||||
{
|
|
||||||
NDS_Reset();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case IDCANCEL:
|
case IDCANCEL:
|
||||||
|
|
|
@ -311,20 +311,25 @@
|
||||||
#define IDC_ROTATE270 1006
|
#define IDC_ROTATE270 1006
|
||||||
#define IDC_SPU_CACHE 1006
|
#define IDC_SPU_CACHE 1006
|
||||||
#define IDC_GRED 1006
|
#define IDC_GRED 1006
|
||||||
|
#define IDC_WIFIMODE0 1006
|
||||||
#define IDC_ARM7BIOSBROWSE 1007
|
#define IDC_ARM7BIOSBROWSE 1007
|
||||||
#define IDC_EDIT06 1007
|
#define IDC_EDIT06 1007
|
||||||
#define IDC_GYELLOW 1007
|
#define IDC_GYELLOW 1007
|
||||||
|
#define IDC_WIFIMODE1 1007
|
||||||
#define IDC_EDIT09 1008
|
#define IDC_EDIT09 1008
|
||||||
#define IDC_MEMVIEWBOX 1008
|
#define IDC_MEMVIEWBOX 1008
|
||||||
#define IDC_GBLUE 1008
|
#define IDC_GBLUE 1008
|
||||||
|
#define IDC_ADHOC_SERVER 1008
|
||||||
#define IDC_ADDRESS 1009
|
#define IDC_ADDRESS 1009
|
||||||
#define IDC_BIOSSWIS 1009
|
#define IDC_BIOSSWIS 1009
|
||||||
#define IDC_EDIT10 1009
|
#define IDC_EDIT10 1009
|
||||||
#define IDC_FORCERATIO 1009
|
#define IDC_FORCERATIO 1009
|
||||||
|
#define IDC_ADHOC_CLIENT 1009
|
||||||
#define IDC_AUTO_UPDATE_SPIN 1010
|
#define IDC_AUTO_UPDATE_SPIN 1010
|
||||||
#define IDC_EDIT15 1010
|
#define IDC_EDIT15 1010
|
||||||
#define IDC_TEXTDUMP 1010
|
#define IDC_TEXTDUMP 1010
|
||||||
#define IDC_WINDOW1X 1010
|
#define IDC_WINDOW1X 1010
|
||||||
|
#define IDC_ADHOC_SERVERNAME 1010
|
||||||
#define IDC_AUTO_UPDATE_SECS 1011
|
#define IDC_AUTO_UPDATE_SECS 1011
|
||||||
#define IDC_USEEXTFIRMWARE 1011
|
#define IDC_USEEXTFIRMWARE 1011
|
||||||
#define IDC_WINDOW2X 1011
|
#define IDC_WINDOW2X 1011
|
||||||
|
@ -801,7 +806,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 1006
|
#define _APS_NEXT_CONTROL_VALUE 1011
|
||||||
#define _APS_NEXT_SYMED_VALUE 101
|
#define _APS_NEXT_SYMED_VALUE 101
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
Binary file not shown.
Loading…
Reference in New Issue