summaryrefslogtreecommitdiffstats
path: root/src/citra/citra.cpp
diff options
context:
space:
mode:
authorpolaris- <nagatospam@gmail.com>2016-04-06 13:01:00 +0200
committerpolaris- <nagatospam@gmail.com>2016-04-06 13:01:00 +0200
commit44d746fc92718c39629e64dbfb8555690d3af0fc (patch)
tree16b141e33d08b3ac60a85c5656395dca35e05f14 /src/citra/citra.cpp
parentMerge pull request #1435 from mailwl/frd_u (diff)
downloadyuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.tar
yuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.tar.gz
yuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.tar.bz2
yuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.tar.lz
yuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.tar.xz
yuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.tar.zst
yuzu-44d746fc92718c39629e64dbfb8555690d3af0fc.zip
Diffstat (limited to 'src/citra/citra.cpp')
-rw-r--r--src/citra/citra.cpp25
1 files changed, 21 insertions, 4 deletions
diff --git a/src/citra/citra.cpp b/src/citra/citra.cpp
index b12369136..045c5fe8c 100644
--- a/src/citra/citra.cpp
+++ b/src/citra/citra.cpp
@@ -36,25 +36,40 @@
static void PrintHelp()
{
- std::cout << "Usage: citra <filename>" << std::endl;
+ std::cout << "Usage: citra [options] <filename>" << std::endl;
+ std::cout << "--help, -h Display this information" << std::endl;
+ std::cout << "--gdbport, -g number Enable gdb stub on port number" << std::endl;
}
/// Application entry point
int main(int argc, char **argv) {
int option_index = 0;
+ u32 gdb_port = 0;
+ char *endarg;
std::string boot_filename;
+
static struct option long_options[] = {
{ "help", no_argument, 0, 'h' },
+ { "gdbport", required_argument, 0, 'g' },
{ 0, 0, 0, 0 }
};
while (optind < argc) {
- char arg = getopt_long(argc, argv, ":h", long_options, &option_index);
+ char arg = getopt_long(argc, argv, ":hg:", long_options, &option_index);
if (arg != -1) {
switch (arg) {
case 'h':
PrintHelp();
return 0;
+ case 'g':
+ errno = 0;
+ gdb_port = strtoul(optarg, &endarg, 0);
+ if (endarg == optarg) errno = EINVAL;
+ if (errno != 0) {
+ perror("--gdbport");
+ exit(1);
+ }
+ break;
}
} else {
boot_filename = argv[optind];
@@ -76,8 +91,10 @@ int main(int argc, char **argv) {
Config config;
log_filter.ParseFilterString(Settings::values.log_filter);
- GDBStub::ToggleServer(Settings::values.use_gdbstub);
- GDBStub::SetServerPort(static_cast<u32>(Settings::values.gdbstub_port));
+ if (gdb_port != 0) {
+ GDBStub::ToggleServer(true);
+ GDBStub::SetServerPort(gdb_port);
+ }
std::unique_ptr<EmuWindow_SDL2> emu_window = std::make_unique<EmuWindow_SDL2>();