X-Git-Url: http://svarog.pmf.uns.ac.rs/gitweb/?p=mjc2wsl.git;a=blobdiff_plain;f=src%2Fmjc2wsl.java;h=67586be2ba144cea3a2b41bc4458aabde355e613;hp=22b506612f274ce63eb645b7e7e493924bd3a8f8;hb=07310ad61164d50613d8c7855d5d8adddd7bbfb6;hpb=8efd594f9805ef18491c6825b6fc1e1f8d4dbd42 diff --git a/src/mjc2wsl.java b/src/mjc2wsl.java index 22b5066..67586be 100644 --- a/src/mjc2wsl.java +++ b/src/mjc2wsl.java @@ -635,14 +635,55 @@ public class mjc2wsl{ } public void printHelp() { + printVersion(); + printUsage(); + printHelpOutput(); + printHelpHelp(); + } + + public void printLongHelp() { + printVersion(); + printUsage(); + System.out.println(); + printHelpOutput(); + System.out.println(); + printHelpGenerating(); + System.out.println(); + printHelpHelp(); + } + + public void printHelpOutput() { + System.out.println("Output options:"); + System.out.println(" --screen print output to screen"); + System.out.println(" -o --oc[+-] include original code in comments"); + System.out.println(" -v verbose, print warning messages"); + System.out.println(" -q quiet; don't print even the error messages"); + System.out.println(" -d print detailed debug messages"); + } + + public void printHelpGenerating() { + System.out.println("Options for generating extra code for tracking code execution"); + System.out.println(" --genEStackPrint generate print for all EStack changes"); + System.out.println(" --genAddrPrint generate prints after every address of the original code "); + System.out.println(" --genAddrPause generate a pause after every address of the original code "); + System.out.println(" --genAddr short for --genAddrPrint and --genAddrPause"); + System.out.println(" --genAll short for applying all code generation"); + } + + public void printHelpHelp() { + System.out.println("Help and info options"); + System.out.println(" -h basic help"); + System.out.println(" --help print more detailed help"); + System.out.println(" --version or -version print version and exit"); + } + + public void printUsage(){ + System.out.println("usage:\n\t mjc2wsl {options} filename [outfile]"); + } + + public void printVersion() { System.out.println("MicroJava bytecode to WSL converter. v " + versionN + ", by Doni Pracner"); - System.out.println("usage:\n\t mjc2wsl {options} filename [outfile]"); - System.out.println("options:\n\t--screen print output to screen"); - System.out.println("\t-o --oc[+-] include original code in comments"); - System.out.println("\t-v verbose, print warning messages"); - System.out.println("\t-q don't print even the error messages"); - System.out.println("\t-d print detailed debug messages"); } public String makeDefaultOutName(String inname){ @@ -661,6 +702,13 @@ public class mjc2wsl{ if (args[i].compareTo("-h") == 0) { printHelp(); return; + } else if (args[i].compareTo("--help") == 0) { + printLongHelp(); + return; + } else if (args[i].compareTo("--version") == 0 + || args[i].compareTo("-version") == 0) { + printVersion(); + return; } else if (args[i].compareTo("-o") == 0 || args[i].startsWith("--oc")) { if (args[i].length() == 2)