Advertisement
Guest User

Untitled

a guest
Nov 15th, 2020
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.48 KB | None | 0 0
  1. #!/usr/bin/python3.6
  2.  
  3. import sys, os, glob
  4. from os.path import basename
  5.  
  6. def convert(argv):
  7.     if len(argv) == 0:
  8.         sys.exit(2)
  9.  
  10.     for file_argument in argv:
  11.         for file in glob.glob(file_argument):        
  12.             file_name,_ = os.path.splitext(file)
  13.             new_file=file_name+'.c10';
  14.  
  15.             print(f"{file_name} is being process.")                        
  16.             with open(new_file, 'wb') as c10:
  17.  
  18.                 leader = bytearray([0x55] * 128)
  19.                 ba = bytearray()
  20.                
  21.                 with open(file, 'rb') as k7:
  22.                     ba.extend(leader)
  23.                     sign = k7.read(3)
  24.                     if sign != b'\x55\x3c\x00':
  25.                         k7.seek(8)
  26.                         sign = k7.read(3)
  27.                     ba.extend(sign)
  28.                     length = k7.read(1)
  29.                     ba.extend(length)
  30.                     ba.extend(k7.read(length[0]+1))
  31.                     ba.extend(leader)
  32.                     ba.extend(k7.read())
  33.  
  34.                 c10.write(ba)
  35.                 c10.close()
  36.             print(f"{new_file} is generated\n")
  37.  
  38. if __name__ == '__main__':
  39.     """
  40.        Input :
  41.        the input can contain one or more parameter separated by space, these parameters can be
  42.            - the name of a file
  43.            - a file mask (*.k7) for example
  44.          
  45.  
  46.        Output :
  47.            - filename with .c10 extension
  48.    """
  49.     convert(sys.argv[1:])
  50.  
  51.  
  52.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement