diff --git a/uncompyle6/bin/pydisassemble.py b/uncompyle6/bin/pydisassemble.py index 4e397d48..1f11dbed 100755 --- a/uncompyle6/bin/pydisassemble.py +++ b/uncompyle6/bin/pydisassemble.py @@ -1,7 +1,7 @@ #!/usr/bin/env python # Mode: -*- python -*- # -# Copyright (c) 2015-2016 by Rocky Bernstein +# Copyright (c) 2015-2016, 2018 by Rocky Bernstein # from __future__ import print_function import sys, os, getopt @@ -13,16 +13,23 @@ program, ext = os.path.splitext(os.path.basename(__file__)) __doc__ = """ Usage: - %s [OPTIONS]... FILE - %s [--help | -h | -V | --version] + {0} [OPTIONS]... FILE + {0} [--help | -h | -V | --version] + +Disassemble FILE with the instruction mangling that is done to +assist uncompyle6 in parsing the instruction stream. For example +instructions with variable-length arguments like CALL_FUNCTION and +BUILD_LIST have arguement counts appended to the instruction name, and +COME_FROM instructions are inserted into the instruction stream. Examples: {0} foo.pyc {0} foo.py # same thing as above but find the file {0} foo.pyc bar.pyc # disassemble foo.pyc and bar.pyc +See also `pydisasm' from the `xdis' package. + Options: - -U | --uncompyle6 show instructions with uncompyle6 mangling -V | --version show version and stop -h | --help show this message @@ -34,8 +41,6 @@ def main(): Usage_short = """usage: %s FILE... Type -h for for full help.""" % program - native = True - if len(sys.argv) == 1: print("No file(s) given", file=sys.stderr) print(Usage_short, file=sys.stderr) @@ -55,8 +60,6 @@ Type -h for for full help.""" % program elif opt in ('-V', '--version'): print("%s %s" % (program, VERSION)) sys.exit(0) - elif opt in ('-U', '--uncompyle6'): - native = False else: print(opt) print(Usage_short, file=sys.stderr) @@ -64,7 +67,7 @@ Type -h for for full help.""" % program for file in files: if os.path.exists(files[0]): - disassemble_file(file, sys.stdout, native) + disassemble_file(file, sys.stdout) else: print("Can't read %s - skipping" % files[0], file=sys.stderr)