Added -listnetwork option to list available network adapters

This commit is contained in:
Miodrag Milanovic 2014-10-23 09:26:29 +02:00
parent e7bb5261c6
commit 63469469ba
4 changed files with 44 additions and 0 deletions

View File

@ -63,6 +63,7 @@ const options_entry cli_options::s_option_entries[] =
{ CLICOMMAND_GETSOFTLIST ";glist", "0", OPTION_COMMAND, "retrieve software list by name" },
{ CLICOMMAND_VERIFYSOFTLIST ";vlist", "0", OPTION_COMMAND, "verify software list by name" },
{ CLICOMMAND_LIST_MIDI_DEVICES ";mlist", "0", OPTION_COMMAND, "list available MIDI I/O devices" },
{ CLICOMMAND_LIST_NETWORK_ADAPTERS ";nlist", "0", OPTION_COMMAND, "list available network adapters" },
{ NULL }
};
@ -783,6 +784,19 @@ void cli_frontend::listmididevices(const char *gamename)
}
//-------------------------------------------------
// listnetworkadapters - output the list of network
// adapters available in the current system to be used
//-------------------------------------------------
void cli_frontend::listnetworkadapters(const char *gamename)
{
m_osd.network_init();
osd_list_network_adapters();
m_osd.network_exit();
}
//-------------------------------------------------
// verifyroms - verify the ROM sets of one or
// more games
@ -1641,6 +1655,7 @@ void cli_frontend::execute_commands(const char *exename)
{ CLICOMMAND_GETSOFTLIST, &cli_frontend::getsoftlist },
{ CLICOMMAND_VERIFYSOFTLIST, &cli_frontend::verifysoftlist },
{ CLICOMMAND_LIST_MIDI_DEVICES, &cli_frontend::listmididevices },
{ CLICOMMAND_LIST_NETWORK_ADAPTERS, &cli_frontend::listnetworkadapters },
};
// find the command

View File

@ -50,6 +50,7 @@
#define CLICOMMAND_GETSOFTLIST "getsoftlist"
#define CLICOMMAND_VERIFYSOFTLIST "verifysoftlist"
#define CLICOMMAND_LIST_MIDI_DEVICES "listmidi"
#define CLICOMMAND_LIST_NETWORK_ADAPTERS "listnetwork"
//**************************************************************************
@ -102,6 +103,7 @@ public:
void getsoftlist(const char *gamename = "*");
void verifysoftlist(const char *gamename = "*");
void listmididevices(const char *gamename = "*");
void listnetworkadapters(const char *gamename = "*");
private:
// internal helpers

View File

@ -884,6 +884,9 @@ bool osd_poll_midi_channel(osd_midi_device *dev);
int osd_read_midi_channel(osd_midi_device *dev, UINT8 *pOut);
void osd_write_midi_channel(osd_midi_device *dev, UINT8 data);
void osd_list_network_adapters(void);
/***************************************************************************
UNCATEGORIZED INTERFACES
***************************************************************************/

View File

@ -105,3 +105,27 @@ int netdev_count()
{
return netdev_list.count();
}
void osd_list_network_adapters(void)
{
#ifdef USE_NETWORK
int num_devs = netdev_list.count();
if (num_devs == 0)
{
printf("No network adapters were found\n");
return;
}
printf("Available network adapters:\n");
const netdev_entry_t *entry = netdev_first();
while(entry) {
printf(" %s\n", entry->description);
entry = entry->m_next;
}
#else
printf("Network is not supported in this build\n");
#endif
}