diff options
author | Rangi <remy.oukaour+rangi42@gmail.com> | 2020-09-14 15:41:29 -0400 |
---|---|---|
committer | Rangi <remy.oukaour+rangi42@gmail.com> | 2020-09-14 15:41:29 -0400 |
commit | dd94ccb01ea4e7eac63509f41314e2a7847665e4 (patch) | |
tree | 63e0a34e900211c13833c7ce944387053f39dc62 /tools/xor_compress.py | |
parent | 46b7c8acf4cdb06a2cbe72ecf4b7d51d74026c5c (diff) |
xor_compress.py takes multiple input filenames (avoids having to cat tilemap+attrmap pairs)
Diffstat (limited to 'tools/xor_compress.py')
-rw-r--r-- | tools/xor_compress.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/tools/xor_compress.py b/tools/xor_compress.py index 5b3e6a2..6deb2aa 100644 --- a/tools/xor_compress.py +++ b/tools/xor_compress.py @@ -1,14 +1,16 @@ #!/usr/bin/env python3 -# Usage: ./xor_compress.py [source.bin] [dest.bin.xor] +# Usage: ./xor_compress.py sources.bin... > dest.bin.xor import sys -with (open(sys.argv[1], 'rb') if len(sys.argv) > 1 else sys.stdin) as f: - data = f.read() +data = bytearray() +for filename in sys.argv[1:]: + with open(filename, 'rb') as f: + data.extend(f.read()) n = len(data) -output = [] +output = bytearray() v = 0x00 i = 0 @@ -42,5 +44,4 @@ while i < n: output.append(len(buffer) - 1) output.extend(buffer) -with (open(sys.argv[2], 'wb') if len(sys.argv) > 2 else sys.stdout) as f: - f.write(bytes(output)) +sys.stdout.buffer.write(output) |