mirror of
https://github.com/holub/mame
synced 2025-04-21 16:01:56 +03:00
Fixing floptool usage message: (#9088)
* Fixing floptool usage message: - Getting the name of the tool from argv[0] (stop hardcoding floptool.exe) - Adding missing hddir/hdread/hdwrite declarations
This commit is contained in:
parent
92c5f8ae84
commit
6e7ff938b0
@ -8,6 +8,7 @@
|
||||
|
||||
#include "image_handler.h"
|
||||
|
||||
#include "corefile.h"
|
||||
#include "corestr.h"
|
||||
#include "ioprocs.h"
|
||||
#include "strformat.h"
|
||||
@ -26,16 +27,21 @@
|
||||
|
||||
static formats_table formats;
|
||||
|
||||
static void display_usage()
|
||||
static void display_usage(const char *first_argument)
|
||||
{
|
||||
std::string exe_name(core_filename_extract_base(first_argument));
|
||||
|
||||
fprintf(stderr, "Usage: \n");
|
||||
fprintf(stderr, " floptool.exe identify <inputfile> [<inputfile> ...] -- Identify an image format\n");
|
||||
fprintf(stderr, " floptool.exe flopconvert [input_format|auto] output_format <inputfile> <outputfile> -- Convert a floppy image\n");
|
||||
fprintf(stderr, " floptool.exe flopcreate output_format filesystem <outputfile> -- Create a preformatted floppy image\n");
|
||||
fprintf(stderr, " floptool.exe flopdir input_format filesystem <image> -- List the contents of a floppy image\n");
|
||||
fprintf(stderr, " floptool.exe flopread input_format filesystem <image> <path> <outputfile> -- Extract a file from a floppy image\n");
|
||||
fprintf(stderr, " floptool.exe flopwrite input_format filesystem <image> <inputfile> <path> -- Write a file into a floppy image\n");
|
||||
fprintf(stderr, " floptool.exe version -- Display the current version of floptool\n");
|
||||
fprintf(stderr, " %s identify <inputfile> [<inputfile> ...] -- Identify an image format\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s flopconvert [input_format|auto] output_format <inputfile> <outputfile> -- Convert a floppy image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s flopcreate output_format filesystem <outputfile> -- Create a preformatted floppy image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s flopdir input_format filesystem <image> -- List the contents of a floppy image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s flopread input_format filesystem <image> <path> <outputfile> -- Extract a file from a floppy image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s flopwrite input_format filesystem <image> <inputfile> <path> -- Write a file into a floppy image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s hddir filesystem <image> -- List the contents of a hard disk image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s hdread filesystem <image> <path> <outputfile> -- Extract a file from a hard disk image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s hdwrite filesystem <image> <inputfile> <path> -- Write a file into a hard disk image\n", exe_name.c_str());
|
||||
fprintf(stderr, " %s version -- Display the current version of floptool\n", exe_name.c_str());
|
||||
}
|
||||
|
||||
static void display_formats()
|
||||
@ -92,14 +98,13 @@ static void display_formats()
|
||||
}
|
||||
}
|
||||
|
||||
static void display_full_usage()
|
||||
static void display_full_usage(char *argv[])
|
||||
{
|
||||
/* Usage */
|
||||
fprintf(stderr, "floptool - Generic floppy image manipulation tool for use with MAME\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
fprintf(stderr, "\n");
|
||||
display_formats();
|
||||
|
||||
}
|
||||
|
||||
static int identify(int argc, char *argv[])
|
||||
@ -108,7 +113,7 @@ static int identify(int argc, char *argv[])
|
||||
|
||||
if(argc<3) {
|
||||
fprintf(stderr, "Missing name of file to identify.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -180,7 +185,7 @@ static int flopconvert(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=6) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -220,7 +225,7 @@ static int flopcreate(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=5) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -357,7 +362,7 @@ static int flopdir(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=5) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -396,7 +401,7 @@ static int hddir(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=4) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -481,7 +486,7 @@ static int flopread(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=7) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -520,7 +525,7 @@ static int hdread(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=6) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -602,7 +607,7 @@ static int flopwrite(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=7) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -649,7 +654,7 @@ static int hdwrite(int argc, char *argv[])
|
||||
{
|
||||
if(argc!=6) {
|
||||
fprintf(stderr, "Incorrect number of arguments.\n\n");
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -688,7 +693,7 @@ int CLIB_DECL main(int argc, char *argv[])
|
||||
formats.init();
|
||||
|
||||
if(argc == 1) {
|
||||
display_full_usage();
|
||||
display_full_usage(argv);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -715,7 +720,7 @@ int CLIB_DECL main(int argc, char *argv[])
|
||||
return version(argc, argv);
|
||||
else {
|
||||
fprintf(stderr, "Unknown command '%s'\n\n", argv[1]);
|
||||
display_usage();
|
||||
display_usage(argv[0]);
|
||||
return 1;
|
||||
}
|
||||
} catch(const std::exception &err) {
|
||||
|
Loading…
Reference in New Issue
Block a user