mirror of
https://github.com/dobin/SuperMega
synced 2026-06-02 17:27:10 +00:00
50 lines
1.1 KiB
Python
50 lines
1.1 KiB
Python
import subprocess
|
|
import os
|
|
import pathlib
|
|
import glob
|
|
import logging
|
|
|
|
from config import config
|
|
from model.defs import *
|
|
|
|
logger = logging.getLogger("Utils")
|
|
|
|
|
|
def delete_all_files_in_directory(directory_path):
|
|
files = glob.glob(os.path.join(directory_path, '*'))
|
|
for file_path in files:
|
|
try:
|
|
os.remove(file_path)
|
|
#logger.info(f"Deleted {file_path}")
|
|
except Exception as e:
|
|
logger.info(f"Error deleting {file_path}: {e}")
|
|
|
|
|
|
def hexdump(data, addr = 0, num = 0):
|
|
s = ''
|
|
n = 0
|
|
lines = []
|
|
if num == 0: num = len(data)
|
|
|
|
if len(data) == 0:
|
|
return '<empty>'
|
|
|
|
for i in range(0, num, 16):
|
|
line = ''
|
|
line += '%04x | ' % (addr + i)
|
|
n += 16
|
|
|
|
for j in range(n-16, n):
|
|
if j >= len(data): break
|
|
line += '%02x ' % (data[j] & 0xff)
|
|
|
|
line += ' ' * (3 * 16 + 7 - len(line)) + ' | '
|
|
|
|
for j in range(n-16, n):
|
|
if j >= len(data): break
|
|
c = data[j] if not (data[j] < 0x20 or data[j] > 0x7e) else '.'
|
|
line += '%c' % c
|
|
|
|
lines.append(line)
|
|
return '\n'.join(lines)
|