Replaced winpty with subprocess

This commit is contained in:
edschuy95 2026-01-10 16:43:48 -05:00
parent ee6aa40093
commit 845ce2c622
9 changed files with 330 additions and 235 deletions

View file

@ -7,13 +7,13 @@ import random
import re import re
import queue import queue
import readchar import readchar
import winpty #import winpty
import ctypes import ctypes
import subprocess
os.environ["PYGAME_HIDE_SUPPORT_PROMPT"] = "1" os.environ["PYGAME_HIDE_SUPPORT_PROMPT"] = "1"
import pygame import pygame
#user32 = ctypes.WinDLL("user32", use_last_error=True)
kernel32 = ctypes.WinDLL("kernel32", use_last_error=True) kernel32 = ctypes.WinDLL("kernel32", use_last_error=True)
# Event to signal shutdown # Event to signal shutdown
@ -28,11 +28,13 @@ DEBUG = False # Set True to enable debug overrides
DEFAULT_GAME_EXE = r".\qgame.dll" DEFAULT_GAME_EXE = r".\qgame.dll"
DEFAULT_PLAYLIST = r".\arena\music\playlist.txt" DEFAULT_PLAYLIST = r".\arena\music\playlist.txt"
DEFAULT_RA3_MAPS = r".\arena\music\ra3_maps.txt" DEFAULT_RA3_MAPS = r".\arena\music\ra3_maps.txt"
DEFAULT_ARENA0_BL = r".\arena\music\arena0_bl.txt"
# Debug override paths # Debug override paths
DEBUG_GAME_EXE = r"D:\GOG Games\Quake III\qgame.dll" DEBUG_GAME_EXE = r"D:\GOG Games\Quake III\qgame.dll"
DEBUG_PLAYLIST = r"D:\GOG Games\Quake III\arena\music\playlist.txt" DEBUG_PLAYLIST = r"D:\GOG Games\Quake III\arena\music\playlist.txt"
DEBUG_RA3_MAPS = r"D:\GOG Games\Quake III\arena\music\ra3_maps.txt" DEBUG_RA3_MAPS = r"D:\GOG Games\Quake III\arena\music\ra3_maps.txt"
DEBUG_ARENA0_BL = r"D:\GOG Games\Quake III\arena\music\arena0_bl.txt"
# Initial volume # Initial volume
VOLUME_STEP = 0.1 # step for W/S volume control VOLUME_STEP = 0.1 # step for W/S volume control
@ -47,7 +49,9 @@ is_ra3 = False
is_ra3_map = False is_ra3_map = False
is_in_map = False is_in_map = False
ra3_maps_path = "." ra3_maps_path = "."
arena0_bl_path = "."
playlist = [] playlist = []
arena0_bl = []
playlist_index = 0 playlist_index = 0
current_mode = "shuffle" # sequential, shuffle, loop current_mode = "shuffle" # sequential, shuffle, loop
volume = 0.5 volume = 0.5
@ -75,6 +79,14 @@ ANSI_ESCAPE_RE = re.compile(
# ========================================================== # ==========================================================
# ===================== UTILITY FUNCTIONS ================= # ===================== UTILITY FUNCTIONS =================
def Check_Arena_Blacklist(arenaline: str) -> bool:
global arena0_bl_path
arena_bl_local = load_arena0_blacklist(arena0_bl_path)
for item in arena_bl_local:
if arenaline.lower().startswith(f"\"arena0\" is:\"{item.lower()}"):
return True
return False
def acquire_single_instance(name: str): def acquire_single_instance(name: str):
handle = kernel32.CreateMutexW( handle = kernel32.CreateMutexW(
None, # lpMutexAttributes None, # lpMutexAttributes
@ -203,6 +215,19 @@ def load_ra3_maps(path):
return set() return set()
return maps return maps
def load_arena0_blacklist(path):
maps = set()
try:
with open(path, "r", encoding="utf-8") as f:
for line in f:
line = line.strip()
if line:
maps.add(line.lower())
except:
print(f"[DEBUG] Failed to open ra3_maps.txt")
return set()
return maps
def next_track(): def next_track():
global playlist global playlist
if not playlist: if not playlist:
@ -291,33 +316,58 @@ def change_mode():
# ========================================================== # ==========================================================
# ==================== QUAKE MONITOR ====================== # ==================== QUAKE MONITOR ======================
def monitor_game(pty_proc): # def monitor_game(pty_proc):
# #pty version
# global serverstatus_sent
# buffer = ""
# while not stop_flag.is_set() or shutdown_event.is_set():
# try:
# data = pty_proc.read(1024)
# if not data:
# break
# # Normalize to string
# if isinstance(data, bytes):
# data = data.decode(errors="ignore")
# buffer += data
# while "\n" in buffer:
# line, buffer = buffer.split("\n", 1)
# line = strip_ansi(line).strip()
# if line:
# #print(f"[GAME] {line}")
# #print(f"[GAME RAW] {repr(line)}")
# handle_game_line(line, pty_proc)
# except EOFError or KeyboardInterrupt:
# break
def monitor_game(proc):
#subprocess version
global serverstatus_sent global serverstatus_sent
buffer = b""
buffer = "" while not stop_flag.is_set():
data = proc.stdout.read(1024)
while not stop_flag.is_set() or shutdown_event.is_set():
try:
data = pty_proc.read(1024)
if not data: if not data:
break break
# Normalize to string
if isinstance(data, bytes):
data = data.decode(errors="ignore")
buffer += data buffer += data
while "\n" in buffer: while b"\n" in buffer:
line, buffer = buffer.split("\n", 1) line, buffer = buffer.split(b"\n", 1)
try:
line = line.decode(errors="ignore")
except:
continue
line = strip_ansi(line).strip() line = strip_ansi(line).strip()
if line: if line:
#print(f"[GAME] {line}") handle_game_line(line, proc)
#print(f"[GAME RAW] {repr(line)}")
handle_game_line(line, pty_proc)
except EOFError or KeyboardInterrupt:
break
def handle_game_line(line, pty_proc): def handle_game_line(line, pty_proc):
@ -405,9 +455,15 @@ def handle_game_line(line, pty_proc):
threading.Timer(.1, lambda: send_command(pty_proc,f"serverstatus")).start() threading.Timer(.1, lambda: send_command(pty_proc,f"serverstatus")).start()
else: else:
if not same_map: if not same_map:
if not Check_Arena_Blacklist(line):
print(f"[DEBUG] RA3 map detected. Advancing track.") print(f"[DEBUG] RA3 map detected. Advancing track.")
is_ra3_map = True is_ra3_map = True
next_track() next_track()
else:
print(f"[DEBUG] RA3 Arena found on blacklist - disabling music.")
is_ra3_map = False
stop_playback()
elif "mapname" in line.lower() and serverstatus_sent: elif "mapname" in line.lower() and serverstatus_sent:
serverstatus_sent = False serverstatus_sent = False
current_map = line.split()[-1].lower() current_map = line.split()[-1].lower()
@ -419,15 +475,26 @@ def handle_game_line(line, pty_proc):
else: else:
print(f"[DEBUG] Unknown map: {current_map}. Stopping playback.") print(f"[DEBUG] Unknown map: {current_map}. Stopping playback.")
is_ra3_map = False is_ra3_map = False
stop_playback() threading.Timer(.3, lambda: stop_playback()).start()
#stop_playback()
def send_command(pty_proc, cmd): # def send_command(pty_proc, cmd):
# # winpty version
# try:
# pty_proc.write(cmd + "\r\n")
# pty_proc.flush()
# #print(f"[DEBUG] Sent command: {cmd}")
# except Exception as e:
# print(f"[DEBUG] Failed to send command: {e}")
def send_command(proc, cmd):
#subprocess version
try: try:
pty_proc.write(cmd + "\r\n") proc.stdin.write((cmd + "\r\n").encode())
pty_proc.flush() proc.stdin.flush()
#print(f"[DEBUG] Sent command: {cmd}")
except Exception as e: except Exception as e:
print(f"[DEBUG] Failed to send command: {e}") print(f"[DEBUG] Failed to send command: {e}")
# ========================================================== # ==========================================================
# ==================== KEYBOARD HANDLER =================== # ==================== KEYBOARD HANDLER ===================
@ -452,7 +519,7 @@ def main():
print("Another instance is already running.") print("Another instance is already running.")
sys.exit(1) sys.exit(1)
global playlist, ra3_maps, pty_proc, playlist_path, ra3_maps_path global playlist, ra3_maps, pty_proc, playlist_path, ra3_maps_path, arena0_blacklist, arena0_bl_path
print(f"Loading Quake 3 Arena...") print(f"Loading Quake 3 Arena...")
@ -460,17 +527,12 @@ def main():
game_exe = DEBUG_GAME_EXE if DEBUG else DEFAULT_GAME_EXE game_exe = DEBUG_GAME_EXE if DEBUG else DEFAULT_GAME_EXE
playlist_path = DEBUG_PLAYLIST if DEBUG else DEFAULT_PLAYLIST playlist_path = DEBUG_PLAYLIST if DEBUG else DEFAULT_PLAYLIST
ra3_maps_path = DEBUG_RA3_MAPS if DEBUG else DEFAULT_RA3_MAPS ra3_maps_path = DEBUG_RA3_MAPS if DEBUG else DEFAULT_RA3_MAPS
arena0_bl_path = DEBUG_ARENA0_BL if DEBUG else DEFAULT_ARENA0_BL
# Load playlist and map list # Load playlist and map list
playlist = load_playlist(playlist_path) playlist = load_playlist(playlist_path)
ra3_maps = load_ra3_maps(ra3_maps_path) ra3_maps = load_ra3_maps(ra3_maps_path)
arena0_bl = load_arena0_blacklist(arena0_bl_path)
#if not playlist:
# print("Playlist is empty!")
# return
#if not ra3_maps:
# print("RA3 maps list is empty!")
# return
# Initialize pygame mixer # Initialize pygame mixer
pygame.mixer.init() pygame.mixer.init()
@ -487,12 +549,23 @@ def main():
watcher_thread = threading.Thread(target=track_watcher, daemon=True) watcher_thread = threading.Thread(target=track_watcher, daemon=True)
watcher_thread.start() watcher_thread.start()
# Launch quake process via PTY # # Launch quake process via PTY
try: # try:
pty_proc = winpty.PtyProcess.spawn([game_exe, "--showterminalconsole",] + sys.argv[1:] ) # pty_proc = winpty.PtyProcess.spawn([game_exe, "--showterminalconsole",] + sys.argv[1:] )
except Exception as e: # except Exception as e:
print(f"Failed to start game: {e}") # print(f"Failed to start game: {e}")
return # return
# # Launch quake process via subprocess
pty_proc = subprocess.Popen(
[game_exe, "--showterminalconsole"] + sys.argv[1:],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
bufsize=0, # unbuffered
universal_newlines=False
)
# Monitor the game output # Monitor the game output
try: try:
@ -502,7 +575,26 @@ def main():
finally: finally:
stop_flag.set() stop_flag.set()
stop_playback() stop_playback()
pty_proc.close() if pty_proc:
try:
pty_proc.stdin.close()
except:
pass
try:
pty_proc.stdout.close()
except:
pass
try:
pty_proc.terminate()
except:
pass
try:
pty_proc.wait(timeout=5)
except:
pass
pygame.mixer.quit() pygame.mixer.quit()
if __name__ == "__main__": if __name__ == "__main__":

View file

@ -12,8 +12,7 @@
<Name>RA3MP3Playback</Name> <Name>RA3MP3Playback</Name>
<RootNamespace>RA3MP3Playback</RootNamespace> <RootNamespace>RA3MP3Playback</RootNamespace>
<LaunchProvider>Standard Python launcher</LaunchProvider> <LaunchProvider>Standard Python launcher</LaunchProvider>
<CommandLineArguments> <CommandLineArguments>+set fs_game arena</CommandLineArguments>
</CommandLineArguments>
<EnableNativeCodeDebugging>False</EnableNativeCodeDebugging> <EnableNativeCodeDebugging>False</EnableNativeCodeDebugging>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">

View file

@ -816,9 +816,6 @@
('multiprocessing.sharedctypes', ('multiprocessing.sharedctypes',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\sharedctypes.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\sharedctypes.py',
'PYMODULE'), 'PYMODULE'),
('multiprocessing.heap',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\heap.py',
'PYMODULE'),
('multiprocessing.pool', ('multiprocessing.pool',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\pool.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\pool.py',
'PYMODULE'), 'PYMODULE'),
@ -990,14 +987,14 @@
('readchar._base_key', ('readchar._base_key',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_base_key.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\readchar\\_base_key.py',
'PYMODULE'), 'PYMODULE'),
('tracemalloc', ('_py_abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tracemalloc.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_py_abc.py',
'PYMODULE'), 'PYMODULE'),
('stringprep', ('stringprep',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\stringprep.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\stringprep.py',
'PYMODULE'), 'PYMODULE'),
('_py_abc', ('tracemalloc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_py_abc.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\tracemalloc.py',
'PYMODULE'), 'PYMODULE'),
('pygame', ('pygame',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\__init__.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\__init__.py',
@ -1070,6 +1067,9 @@
'PYMODULE'), 'PYMODULE'),
('pathlib', ('pathlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pathlib.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\pathlib.py',
'PYMODULE'),
('multiprocessing.heap',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\multiprocessing\\heap.py',
'PYMODULE')], 'PYMODULE')],
[('winpty\\OpenConsole.exe', [('winpty\\OpenConsole.exe',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\OpenConsole.exe', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\winpty\\OpenConsole.exe',
@ -1089,47 +1089,47 @@
('libopusfile-0.dll', ('libopusfile-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopusfile-0.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopusfile-0.dll',
'BINARY'), 'BINARY'),
('SDL2_mixer.dll', ('zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_mixer.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'),
('libmodplug-1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libmodplug-1.dll',
'BINARY'),
('SDL2_image.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_image.dll',
'BINARY'),
('libogg-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libogg-0.dll',
'BINARY'),
('libtiff-5.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libtiff-5.dll',
'BINARY'),
('freetype.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\freetype.dll',
'BINARY'),
('libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'),
('portmidi.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\portmidi.dll',
'BINARY'), 'BINARY'),
('libpng16-16.dll', ('libpng16-16.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libpng16-16.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libpng16-16.dll',
'BINARY'), 'BINARY'),
('zlib1.dll', ('SDL2_mixer.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_mixer.dll',
'BINARY'),
('SDL2_image.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_image.dll',
'BINARY'),
('libmodplug-1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libmodplug-1.dll',
'BINARY'),
('libogg-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libogg-0.dll',
'BINARY'),
('libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'), 'BINARY'),
('SDL2.dll', ('SDL2.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll',
'BINARY'), 'BINARY'),
('SDL2_ttf.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_ttf.dll',
'BINARY'),
('libwebp-7.dll', ('libwebp-7.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libwebp-7.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libwebp-7.dll',
'BINARY'), 'BINARY'),
('SDL2_ttf.dll', ('libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_ttf.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'),
('freetype.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\freetype.dll',
'BINARY'),
('libtiff-5.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libtiff-5.dll',
'BINARY'),
('portmidi.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\portmidi.dll',
'BINARY'), 'BINARY'),
('pywin32_system32\\pywintypes39.dll', ('pywin32_system32\\pywintypes39.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pywin32_system32\\pywintypes39.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pywin32_system32\\pywintypes39.dll',
@ -1296,15 +1296,15 @@
('pygame\\libopus-0.dll', ('pygame\\libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'), 'BINARY'),
('pygame\\zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('pygame\\SDL2.dll', ('pygame\\SDL2.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll',
'BINARY'), 'BINARY'),
('pygame\\libjpeg-9.dll', ('pygame\\libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'), 'BINARY'),
('pygame\\zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('VCRUNTIME140_1.dll', ('VCRUNTIME140_1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\VCRUNTIME140_1.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\VCRUNTIME140_1.dll',
'BINARY'), 'BINARY'),
@ -1433,66 +1433,24 @@
('base_library.zip', ('base_library.zip',
'C:\\Users\\Ed\\source\\repos\\RA3MP3Playback\\build\\RA3WITHMP3\\base_library.zip', 'C:\\Users\\Ed\\source\\repos\\RA3MP3Playback\\build\\RA3WITHMP3\\base_library.zip',
'DATA')], 'DATA')],
[('sre_constants', [('operator',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sre_constants.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\operator.py',
'PYMODULE'),
('collections.abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\collections\\abc.py',
'PYMODULE'),
('collections',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\collections\\__init__.py',
'PYMODULE'),
('enum',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\enum.py',
'PYMODULE'),
('ntpath',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ntpath.py',
'PYMODULE'),
('sre_parse',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sre_parse.py',
'PYMODULE'), 'PYMODULE'),
('codecs', ('codecs',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\codecs.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\codecs.py',
'PYMODULE'), 'PYMODULE'),
('copyreg', ('sre_compile',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\copyreg.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sre_compile.py',
'PYMODULE'),
('enum',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\enum.py',
'PYMODULE'),
('abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\abc.py',
'PYMODULE'), 'PYMODULE'),
('posixpath', ('posixpath',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\posixpath.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\posixpath.py',
'PYMODULE'), 'PYMODULE'),
('warnings',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\warnings.py',
'PYMODULE'),
('io',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\io.py',
'PYMODULE'),
('stat',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\stat.py',
'PYMODULE'),
('operator',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\operator.py',
'PYMODULE'),
('functools',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\functools.py',
'PYMODULE'),
('traceback',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\traceback.py',
'PYMODULE'),
('genericpath',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\genericpath.py',
'PYMODULE'),
('_bootlocale',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_bootlocale.py',
'PYMODULE'),
('linecache',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\linecache.py',
'PYMODULE'),
('locale',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\locale.py',
'PYMODULE'),
('_weakrefset',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_weakrefset.py',
'PYMODULE'),
('encodings.zlib_codec', ('encodings.zlib_codec',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\encodings\\zlib_codec.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\encodings\\zlib_codec.py',
'PYMODULE'), 'PYMODULE'),
@ -1859,30 +1817,72 @@
('encodings', ('encodings',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\encodings\\__init__.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\encodings\\__init__.py',
'PYMODULE'), 'PYMODULE'),
('weakref', ('_bootlocale',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\weakref.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_bootlocale.py',
'PYMODULE'),
('abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\abc.py',
'PYMODULE'),
('_collections_abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_collections_abc.py',
'PYMODULE'),
('heapq',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\heapq.py',
'PYMODULE'), 'PYMODULE'),
('reprlib', ('reprlib',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\reprlib.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\reprlib.py',
'PYMODULE'), 'PYMODULE'),
('keyword', ('heapq',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\keyword.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\heapq.py',
'PYMODULE'), 'PYMODULE'),
('sre_compile', ('genericpath',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sre_compile.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\genericpath.py',
'PYMODULE'),
('functools',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\functools.py',
'PYMODULE'),
('_weakrefset',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_weakrefset.py',
'PYMODULE'),
('io',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\io.py',
'PYMODULE'),
('sre_constants',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sre_constants.py',
'PYMODULE'),
('sre_parse',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\sre_parse.py',
'PYMODULE'),
('linecache',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\linecache.py',
'PYMODULE'),
('copyreg',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\copyreg.py',
'PYMODULE'),
('weakref',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\weakref.py',
'PYMODULE'),
('warnings',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\warnings.py',
'PYMODULE'), 'PYMODULE'),
('types', ('types',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\types.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\types.py',
'PYMODULE'), 'PYMODULE'),
('traceback',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\traceback.py',
'PYMODULE'),
('_collections_abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\_collections_abc.py',
'PYMODULE'),
('stat',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\stat.py',
'PYMODULE'),
('ntpath',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\ntpath.py',
'PYMODULE'),
('keyword',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\keyword.py',
'PYMODULE'),
('collections.abc',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\collections\\abc.py',
'PYMODULE'),
('collections',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\collections\\__init__.py',
'PYMODULE'),
('locale',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\locale.py',
'PYMODULE'),
('re', ('re',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\re.py', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\re.py',
'PYMODULE'), 'PYMODULE'),

View file

@ -91,47 +91,47 @@
('libopusfile-0.dll', ('libopusfile-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopusfile-0.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopusfile-0.dll',
'BINARY'), 'BINARY'),
('SDL2_mixer.dll', ('zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_mixer.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'),
('libmodplug-1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libmodplug-1.dll',
'BINARY'),
('SDL2_image.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_image.dll',
'BINARY'),
('libogg-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libogg-0.dll',
'BINARY'),
('libtiff-5.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libtiff-5.dll',
'BINARY'),
('freetype.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\freetype.dll',
'BINARY'),
('libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'),
('portmidi.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\portmidi.dll',
'BINARY'), 'BINARY'),
('libpng16-16.dll', ('libpng16-16.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libpng16-16.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libpng16-16.dll',
'BINARY'), 'BINARY'),
('zlib1.dll', ('SDL2_mixer.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_mixer.dll',
'BINARY'),
('SDL2_image.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_image.dll',
'BINARY'),
('libmodplug-1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libmodplug-1.dll',
'BINARY'),
('libogg-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libogg-0.dll',
'BINARY'),
('libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'), 'BINARY'),
('SDL2.dll', ('SDL2.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll',
'BINARY'), 'BINARY'),
('SDL2_ttf.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_ttf.dll',
'BINARY'),
('libwebp-7.dll', ('libwebp-7.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libwebp-7.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libwebp-7.dll',
'BINARY'), 'BINARY'),
('SDL2_ttf.dll', ('libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_ttf.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'),
('freetype.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\freetype.dll',
'BINARY'),
('libtiff-5.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libtiff-5.dll',
'BINARY'),
('portmidi.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\portmidi.dll',
'BINARY'), 'BINARY'),
('pywin32_system32\\pywintypes39.dll', ('pywin32_system32\\pywintypes39.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pywin32_system32\\pywintypes39.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pywin32_system32\\pywintypes39.dll',
@ -298,15 +298,15 @@
('pygame\\libopus-0.dll', ('pygame\\libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'), 'BINARY'),
('pygame\\zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('pygame\\SDL2.dll', ('pygame\\SDL2.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll',
'BINARY'), 'BINARY'),
('pygame\\libjpeg-9.dll', ('pygame\\libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'), 'BINARY'),
('pygame\\zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('VCRUNTIME140_1.dll', ('VCRUNTIME140_1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\VCRUNTIME140_1.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\VCRUNTIME140_1.dll',
'BINARY'), 'BINARY'),
@ -436,7 +436,7 @@
[], [],
False, False,
False, False,
1767911105, 1767923557,
[('run.exe', [('run.exe',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\PyInstaller\\bootloader\\Windows-64bit-intel\\run.exe', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\PyInstaller\\bootloader\\Windows-64bit-intel\\run.exe',
'EXECUTABLE')], 'EXECUTABLE')],

View file

@ -69,47 +69,47 @@
('libopusfile-0.dll', ('libopusfile-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopusfile-0.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopusfile-0.dll',
'BINARY'), 'BINARY'),
('SDL2_mixer.dll', ('zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_mixer.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'),
('libmodplug-1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libmodplug-1.dll',
'BINARY'),
('SDL2_image.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_image.dll',
'BINARY'),
('libogg-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libogg-0.dll',
'BINARY'),
('libtiff-5.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libtiff-5.dll',
'BINARY'),
('freetype.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\freetype.dll',
'BINARY'),
('libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'),
('portmidi.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\portmidi.dll',
'BINARY'), 'BINARY'),
('libpng16-16.dll', ('libpng16-16.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libpng16-16.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libpng16-16.dll',
'BINARY'), 'BINARY'),
('zlib1.dll', ('SDL2_mixer.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_mixer.dll',
'BINARY'),
('SDL2_image.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_image.dll',
'BINARY'),
('libmodplug-1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libmodplug-1.dll',
'BINARY'),
('libogg-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libogg-0.dll',
'BINARY'),
('libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'), 'BINARY'),
('SDL2.dll', ('SDL2.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll',
'BINARY'), 'BINARY'),
('SDL2_ttf.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_ttf.dll',
'BINARY'),
('libwebp-7.dll', ('libwebp-7.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libwebp-7.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libwebp-7.dll',
'BINARY'), 'BINARY'),
('SDL2_ttf.dll', ('libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2_ttf.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'),
('freetype.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\freetype.dll',
'BINARY'),
('libtiff-5.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libtiff-5.dll',
'BINARY'),
('portmidi.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\portmidi.dll',
'BINARY'), 'BINARY'),
('pywin32_system32\\pywintypes39.dll', ('pywin32_system32\\pywintypes39.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pywin32_system32\\pywintypes39.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pywin32_system32\\pywintypes39.dll',
@ -276,15 +276,15 @@
('pygame\\libopus-0.dll', ('pygame\\libopus-0.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libopus-0.dll',
'BINARY'), 'BINARY'),
('pygame\\zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('pygame\\SDL2.dll', ('pygame\\SDL2.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\SDL2.dll',
'BINARY'), 'BINARY'),
('pygame\\libjpeg-9.dll', ('pygame\\libjpeg-9.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\libjpeg-9.dll',
'BINARY'), 'BINARY'),
('pygame\\zlib1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\lib\\site-packages\\pygame\\zlib1.dll',
'BINARY'),
('VCRUNTIME140_1.dll', ('VCRUNTIME140_1.dll',
'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\VCRUNTIME140_1.dll', 'C:\\Users\\Ed\\AppData\\Local\\Programs\\Python\\Python39\\VCRUNTIME140_1.dll',
'BINARY'), 'BINARY'),

Binary file not shown.

Binary file not shown.

View file

@ -18,8 +18,8 @@ missing module named pyimod02_importers - imported by C:\Users\Ed\AppData\Local\
missing module named _posixsubprocess - imported by subprocess (optional), multiprocessing.util (delayed) missing module named _posixsubprocess - imported by subprocess (optional), multiprocessing.util (delayed)
missing module named grp - imported by shutil (optional), tarfile (optional), pathlib (delayed, optional), subprocess (optional) missing module named grp - imported by shutil (optional), tarfile (optional), pathlib (delayed, optional), subprocess (optional)
missing module named pwd - imported by posixpath (delayed, conditional), shutil (optional), tarfile (optional), pathlib (delayed, conditional, optional), subprocess (optional), distutils.util (delayed, conditional, optional), http.server (delayed, optional), webbrowser (delayed), netrc (delayed, conditional), getpass (delayed) missing module named pwd - imported by posixpath (delayed, conditional), shutil (optional), tarfile (optional), pathlib (delayed, conditional, optional), subprocess (optional), distutils.util (delayed, conditional, optional), http.server (delayed, optional), webbrowser (delayed), netrc (delayed, conditional), getpass (delayed)
missing module named org - imported by pickle (optional) missing module named 'org.python' - imported by pickle (optional), xml.sax (delayed, conditional)
missing module named 'org.python' - imported by copy (optional), xml.sax (delayed, conditional) missing module named org - imported by copy (optional)
missing module named posix - imported by os (conditional, optional), shutil (conditional), importlib._bootstrap_external (conditional) missing module named posix - imported by os (conditional, optional), shutil (conditional), importlib._bootstrap_external (conditional)
missing module named resource - imported by posix (top-level) missing module named resource - imported by posix (top-level)
missing module named _manylinux - imported by pkg_resources._vendor.packaging.tags (delayed, optional), packaging._manylinux (delayed, optional) missing module named _manylinux - imported by pkg_resources._vendor.packaging.tags (delayed, optional), packaging._manylinux (delayed, optional)

View file

@ -157,6 +157,7 @@ imports:
&#8226; <a href="#keyword">keyword</a> &#8226; <a href="#keyword">keyword</a>
&#8226; <a href="#linecache">linecache</a> &#8226; <a href="#linecache">linecache</a>
&#8226; <a href="#locale">locale</a> &#8226; <a href="#locale">locale</a>
&#8226; <a href="#multiprocessing.heap">multiprocessing.heap</a>
&#8226; <a href="#ntpath">ntpath</a> &#8226; <a href="#ntpath">ntpath</a>
&#8226; <a href="#operator">operator</a> &#8226; <a href="#operator">operator</a>
&#8226; <a href="#os">os</a> &#8226; <a href="#os">os</a>
@ -342,7 +343,7 @@ imported by:
<a target="code" href="" type="text/plain"><tt>'org.python'</tt></a> <a target="code" href="" type="text/plain"><tt>'org.python'</tt></a>
<span class="moduletype">MissingModule</span> <div class="import"> <span class="moduletype">MissingModule</span> <div class="import">
imported by: imported by:
<a href="#copy">copy</a> <a href="#pickle">pickle</a>
&#8226; <a href="#xml.sax">xml.sax</a> &#8226; <a href="#xml.sax">xml.sax</a>
</div> </div>
@ -3107,8 +3108,8 @@ imported by:
<a target="code" href="///C:/Users/Ed/AppData/Local/Programs/Python/Python39/lib/copy.py" type="text/plain"><tt>copy</tt></a> <a target="code" href="///C:/Users/Ed/AppData/Local/Programs/Python/Python39/lib/copy.py" type="text/plain"><tt>copy</tt></a>
<span class="moduletype">SourceModule</span> <div class="import"> <span class="moduletype">SourceModule</span> <div class="import">
imports: imports:
<a href="#'org.python'">'org.python'</a> <a href="#copyreg">copyreg</a>
&#8226; <a href="#copyreg">copyreg</a> &#8226; <a href="#org">org</a>
&#8226; <a href="#types">types</a> &#8226; <a href="#types">types</a>
&#8226; <a href="#weakref">weakref</a> &#8226; <a href="#weakref">weakref</a>
@ -8077,7 +8078,8 @@ imports:
</div> </div>
<div class="import"> <div class="import">
imported by: imported by:
<a href="#multiprocessing.sharedctypes">multiprocessing.sharedctypes</a> <a href="#RA3MP3Playback.py">RA3MP3Playback.py</a>
&#8226; <a href="#multiprocessing.sharedctypes">multiprocessing.sharedctypes</a>
&#8226; <a href="#multiprocessing.synchronize">multiprocessing.synchronize</a> &#8226; <a href="#multiprocessing.synchronize">multiprocessing.synchronize</a>
</div> </div>
@ -8755,7 +8757,7 @@ imported by:
<a target="code" href="" type="text/plain"><tt>org</tt></a> <a target="code" href="" type="text/plain"><tt>org</tt></a>
<span class="moduletype">MissingModule</span> <div class="import"> <span class="moduletype">MissingModule</span> <div class="import">
imported by: imported by:
<a href="#pickle">pickle</a> <a href="#copy">copy</a>
</div> </div>
@ -9416,14 +9418,14 @@ imported by:
<a target="code" href="///C:/Users/Ed/AppData/Local/Programs/Python/Python39/lib/pickle.py" type="text/plain"><tt>pickle</tt></a> <a target="code" href="///C:/Users/Ed/AppData/Local/Programs/Python/Python39/lib/pickle.py" type="text/plain"><tt>pickle</tt></a>
<span class="moduletype">SourceModule</span> <div class="import"> <span class="moduletype">SourceModule</span> <div class="import">
imports: imports:
<a href="#_compat_pickle">_compat_pickle</a> <a href="#'org.python'">'org.python'</a>
&#8226; <a href="#_compat_pickle">_compat_pickle</a>
&#8226; <a href="#_pickle">_pickle</a> &#8226; <a href="#_pickle">_pickle</a>
&#8226; <a href="#codecs">codecs</a> &#8226; <a href="#codecs">codecs</a>
&#8226; <a href="#copyreg">copyreg</a> &#8226; <a href="#copyreg">copyreg</a>
&#8226; <a href="#functools">functools</a> &#8226; <a href="#functools">functools</a>
&#8226; <a href="#io">io</a> &#8226; <a href="#io">io</a>
&#8226; <a href="#itertools">itertools</a> &#8226; <a href="#itertools">itertools</a>
&#8226; <a href="#org">org</a>
&#8226; <a href="#pprint">pprint</a> &#8226; <a href="#pprint">pprint</a>
&#8226; <a href="#re">re</a> &#8226; <a href="#re">re</a>
&#8226; <a href="#struct">struct</a> &#8226; <a href="#struct">struct</a>
@ -14099,6 +14101,7 @@ imported by:
<span class="moduletype">Package</span> <div class="import"> <span class="moduletype">Package</span> <div class="import">
imports: imports:
<a href="#xml">xml</a> <a href="#xml">xml</a>
&#8226; <a href="#xml.parsers.expat">xml.parsers.expat</a>
</div> </div>
<div class="import"> <div class="import">
@ -14124,6 +14127,7 @@ imports:
<div class="import"> <div class="import">
imported by: imported by:
<a href="#plistlib">plistlib</a> <a href="#plistlib">plistlib</a>
&#8226; <a href="#xml.parsers">xml.parsers</a>
&#8226; <a href="#xml.sax.expatreader">xml.sax.expatreader</a> &#8226; <a href="#xml.sax.expatreader">xml.sax.expatreader</a>
&#8226; <a href="#xmlrpc.client">xmlrpc.client</a> &#8226; <a href="#xmlrpc.client">xmlrpc.client</a>