diff options
author | bunnei <bunneidev@gmail.com> | 2016-04-08 22:03:40 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2016-04-08 22:03:40 +0200 |
commit | a4c5d8fd50e32545494a4ac158892310dfe98489 (patch) | |
tree | 7d7ac94d1f93e6664c28e078fae6f321d1e3f83b /src/citra | |
parent | update the code of AM service! (#1623) (diff) | |
parent | Default to settings from ini for gdbstub (diff) | |
download | yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.tar yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.tar.gz yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.tar.bz2 yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.tar.lz yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.tar.xz yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.tar.zst yuzu-a4c5d8fd50e32545494a4ac158892310dfe98489.zip |
Diffstat (limited to 'src/citra')
-rw-r--r-- | src/citra/citra.cpp | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/citra/citra.cpp b/src/citra/citra.cpp index b12369136..3a1fbe3f7 100644 --- a/src/citra/citra.cpp +++ b/src/citra/citra.cpp @@ -36,25 +36,43 @@ 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) { + Config config; int option_index = 0; + bool use_gdbstub = Settings::values.use_gdbstub; + u32 gdb_port = static_cast<u32>(Settings::values.gdbstub_port); + 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); + use_gdbstub = true; + if (endarg == optarg) errno = EINVAL; + if (errno != 0) { + perror("--gdbport"); + exit(1); + } + break; } } else { boot_filename = argv[optind]; @@ -73,11 +91,10 @@ int main(int argc, char **argv) { return -1; } - Config config; log_filter.ParseFilterString(Settings::values.log_filter); - GDBStub::ToggleServer(Settings::values.use_gdbstub); - GDBStub::SetServerPort(static_cast<u32>(Settings::values.gdbstub_port)); + GDBStub::ToggleServer(use_gdbstub); + GDBStub::SetServerPort(gdb_port); std::unique_ptr<EmuWindow_SDL2> emu_window = std::make_unique<EmuWindow_SDL2>(); |