add configurator

This commit is contained in:
souldbminersmwc
2025-09-27 14:41:46 -04:00
parent a885040ce9
commit fadaf47001
62 changed files with 3672 additions and 0 deletions

View File

@@ -0,0 +1 @@
python -m PyInstaller --onefile --noconsole eostimingutil.py

Binary file not shown.

View File

@@ -0,0 +1,52 @@
[
{
"name": "42",
"label": "(42) 0",
"hex": "00"
},
{
"name": "36",
"label": "(36) 1",
"hex": "01"
},
{
"name": "34",
"label": "(34) 2",
"hex": "02"
},
{
"name": "32",
"label": "(32) 3",
"hex": "03"
},
{
"name": "30",
"label": "(30) 4",
"hex": "04"
},
{
"name": "28",
"label": "(28) 5",
"hex": "05"
},
{
"name": "26",
"label": "(26) 6",
"hex": "06"
},
{
"name": "24",
"label": "(24) 7",
"hex": "07"
},
{
"name": "22",
"label": "(22) 8",
"hex": "08"
},
{
"name": "20",
"label": "(20) 9",
"hex": "09"
}
]

View File

@@ -0,0 +1,42 @@
[
{
"name": "18 - (0)",
"label": "(18) 0",
"hex": "00"
},
{
"name": "17 - (1)",
"label": "(17) 1",
"hex": "01"
},
{
"name": "16 - (2)",
"label": "(16) 2",
"hex": "02"
},
{
"name": "15 - (3)",
"label": "(15) 3",
"hex": "03"
},
{
"name": "14 - (4)",
"label": "(14) 4",
"hex": "04"
},
{
"name": "13 - (5)",
"label": "(13) 5",
"hex": "05"
},
{
"name": "12 - (6)",
"label": "(12) 6",
"hex": "06"
},
{
"name": "11 - (7)",
"label": "(11) 7",
"hex": "07"
}
]

View File

@@ -0,0 +1,37 @@
[
{
"name": "(1x REFI) 0",
"label": "0",
"hex": "00"
},
{
"name": "(1.5x REFI) 1",
"label": "1",
"hex": "01"
},
{
"name": "(2x REFI) 2",
"label": "2",
"hex": "02"
},
{
"name": "(3x REFI) 3",
"label": "3",
"hex": "03"
},
{
"name": "(4x REFI) 4",
"label": "4",
"hex": "04"
},
{
"name": "(6x REFI) 5",
"label": "5",
"hex": "05"
},
{
"name": "(MAX REFI) 6",
"label": "6",
"hex": "06"
}
]

View File

@@ -0,0 +1,47 @@
[
{
"name": "(140) 0",
"label": "0",
"hex": "00"
},
{
"name": "(120) 1",
"label": "1",
"hex": "01"
},
{
"name": "(100) 2",
"label": "2",
"hex": "02"
},
{
"name": "(90) 3",
"label": "3",
"hex": "03"
},
{
"name": "(80) 4",
"label": "4",
"hex": "04"
},
{
"name": "(70) 5",
"label": "5",
"hex": "05"
},
{
"name": "(60) 6",
"label": "6",
"hex": "06"
},
{
"name": "(50) 7",
"label": "7",
"hex": "07"
},
{
"name": "(40) 8",
"label": "8",
"hex": "08"
}
]

View File

@@ -0,0 +1,42 @@
[
{
"name": "18 - (0)",
"label": " (18) 0",
"hex": "00"
},
{
"name": "17 - (1)",
"label": " (17) 1",
"hex": "01"
},
{
"name": "16 - (2)",
"label": " (16) 2",
"hex": "02"
},
{
"name": "15 - (3)",
"label": " (15) 3",
"hex": "03"
},
{
"name": "14 - (4)",
"label": " (14) 4",
"hex": "04"
},
{
"name": "13 - (5)",
"label": " (13) 5",
"hex": "05"
},
{
"name": "12 - (6)",
"label": " (12) 6",
"hex": "06"
},
{
"name": "11 - (7)",
"label": " (11) 7",
"hex": "07"
}
]

View File

@@ -0,0 +1,42 @@
[
{
"name": "(10) 0",
"label": "0",
"hex": "00"
},
{
"name": "(7.5) 1",
"label": "1",
"hex": "01"
},
{
"name": "(6) 2",
"label": "2",
"hex": "02"
},
{
"name": "(5) 3",
"label": "3",
"hex": "03"
},
{
"name": "(4) 4",
"label": "4",
"hex": "04"
},
{
"name": "(3) 5",
"label": "5",
"hex": "05"
},
{
"name": "(2) 6",
"label": "6",
"hex": "06"
},
{
"name": "(1) 7",
"label": "7",
"hex": "07"
}
]

View File

@@ -0,0 +1,52 @@
[
{
"name": " 0",
"label": "0",
"hex": "00"
},
{
"name": " 1",
"label": "1",
"hex": "01"
},
{
"name": " 2",
"label": "2",
"hex": "02"
},
{
"name": " 3",
"label": "3",
"hex": "03"
},
{
"name": " 4",
"label": "4",
"hex": "04"
},
{
"name": " 5",
"label": "5",
"hex": "05"
},
{
"name": " 6",
"label": "6",
"hex": "06"
},
{
"name": " 7",
"label": "7",
"hex": "07"
},
{
"name": " 8",
"label": "8",
"hex": "08"
},
{
"name": " 9",
"label": "9",
"hex": "09"
}
]

View File

@@ -0,0 +1,52 @@
[
{
"name": "(10) 0",
"label": "0",
"hex": "00"
},
{
"name": "(9) 1",
"label": "1",
"hex": "01"
},
{
"name": "(8) 2",
"label": "2",
"hex": "02"
},
{
"name": "(7) 3",
"label": "3",
"hex": "03"
},
{
"name": "(6) 4",
"label": "4",
"hex": "04"
},
{
"name": "(5) 5",
"label": "5",
"hex": "05"
},
{
"name": "(4) 6",
"label": "6",
"hex": "06"
},
{
"name": "(3) 7",
"label": "7",
"hex": "07"
},
{
"name": "(2) 8",
"label": "8",
"hex": "08"
},
{
"name": "(1) 9",
"label": "9",
"hex": "09"
}
]

Binary file not shown.

View File

@@ -0,0 +1,78 @@
import json
import dearpygui.dearpygui as dpg
import os
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
timings = {
"tRCD": "mariko/ram_trcd.json",
"tRP": "mariko/ram_trp.json",
"tRAS": "mariko/ram_tras.json",
"tRRD": "mariko/ram_trrd.json",
"tRFC": "mariko/ram_trfc.json",
"tRTW": "mariko/ram_trtw.json",
"tWTR": "mariko/ram_twtr.json",
"tREFI": "mariko/ram_trefi.json"
}
timing_data = {}
for timing_name, rel_path in timings.items():
path = os.path.join(BASE_DIR, rel_path)
if os.path.exists(path):
try:
with open(path, "r") as f:
raw = json.load(f)
steps = {}
if isinstance(raw, list):
for i, entry in enumerate(raw):
if isinstance(entry, dict) and "name" in entry:
steps[i] = entry["name"].strip()
else:
steps[i] = str(entry)
elif isinstance(raw, dict):
for k, entry in raw.items():
if isinstance(entry, dict) and "name" in entry:
steps[int(k)] = entry["name"].strip()
else:
steps[int(k)] = str(entry)
timing_data[timing_name] = steps
except Exception as e:
print(f"Error loading {path}: {e}")
timing_data[timing_name] = {}
else:
print(f"Missing file: {path}")
timing_data[timing_name] = {}
def update_slider_label(sender, app_data, user_data):
timing_name = user_data
step = int(app_data)
name_value = timing_data[timing_name].get(step, "(no name)")
new_label = f"{timing_name}: {name_value}"
dpg.set_item_label(sender, new_label)
# --- GUI ---
dpg.create_context()
dpg.create_viewport(title="EOS Real Timings", width=600, height=500)
with dpg.window(label="Timings", width=580, height=480, tag="main"):
dpg.add_text("Select timings")
for timing_name, steps in timing_data.items():
if steps:
max_step = max(steps.keys())
current_name = steps.get(0, "")
dpg.add_slider_int(
label=f"{timing_name}: {current_name}",
min_value=0,
max_value=max_step,
default_value=0,
callback=update_slider_label,
user_data=timing_name,
width=400
)
else:
dpg.add_text(f"{timing_name}: (JSON not found or invalid)")
dpg.set_primary_window("main", True)
dpg.setup_dearpygui()
dpg.show_viewport()
dpg.start_dearpygui()
dpg.destroy_context()

View File

@@ -0,0 +1,38 @@
# -*- mode: python ; coding: utf-8 -*-
a = Analysis(
['eostimingutil.py'],
pathex=[],
binaries=[],
datas=[],
hiddenimports=[],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz = PYZ(a.pure)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.datas,
[],
name='eostimingutil',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=False,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
)

View File

@@ -0,0 +1,52 @@
[
{
"name": "42",
"label": "(42) 0",
"hex": "00"
},
{
"name": "36",
"label": "(36) 1",
"hex": "01"
},
{
"name": "34",
"label": "(34) 2",
"hex": "02"
},
{
"name": "32",
"label": "(32) 3",
"hex": "03"
},
{
"name": "30",
"label": "(30) 4",
"hex": "04"
},
{
"name": "28",
"label": "(28) 5",
"hex": "05"
},
{
"name": "26",
"label": "(26) 6",
"hex": "06"
},
{
"name": "24",
"label": "(24) 7",
"hex": "07"
},
{
"name": "22",
"label": "(22) 8",
"hex": "08"
},
{
"name": "20",
"label": "(20) 9",
"hex": "09"
}
]

View File

@@ -0,0 +1,42 @@
[
{
"name": "18 - (0)",
"label": "(18) 0",
"hex": "00"
},
{
"name": "17 - (1)",
"label": "(17) 1",
"hex": "01"
},
{
"name": "16 - (2)",
"label": "(16) 2",
"hex": "02"
},
{
"name": "15 - (3)",
"label": "(15) 3",
"hex": "03"
},
{
"name": "14 - (4)",
"label": "(14) 4",
"hex": "04"
},
{
"name": "13 - (5)",
"label": "(13) 5",
"hex": "05"
},
{
"name": "12 - (6)",
"label": "(12) 6",
"hex": "06"
},
{
"name": "11 - (7)",
"label": "(11) 7",
"hex": "07"
}
]

View File

@@ -0,0 +1,37 @@
[
{
"name": "(1x REFI) 0",
"label": "0",
"hex": "00"
},
{
"name": "(1.5x REFI) 1",
"label": "1",
"hex": "01"
},
{
"name": "(2x REFI) 2",
"label": "2",
"hex": "02"
},
{
"name": "(3x REFI) 3",
"label": "3",
"hex": "03"
},
{
"name": "(4x REFI) 4",
"label": "4",
"hex": "04"
},
{
"name": "(6x REFI) 5",
"label": "5",
"hex": "05"
},
{
"name": "(MAX REFI) 6",
"label": "6",
"hex": "06"
}
]

View File

@@ -0,0 +1,47 @@
[
{
"name": "(140) 0",
"label": "0",
"hex": "00"
},
{
"name": "(120) 1",
"label": "1",
"hex": "01"
},
{
"name": "(100) 2",
"label": "2",
"hex": "02"
},
{
"name": "(90) 3",
"label": "3",
"hex": "03"
},
{
"name": "(80) 4",
"label": "4",
"hex": "04"
},
{
"name": "(70) 5",
"label": "5",
"hex": "05"
},
{
"name": "(60) 6",
"label": "6",
"hex": "06"
},
{
"name": "(50) 7",
"label": "7",
"hex": "07"
},
{
"name": "(40) 8",
"label": "8",
"hex": "08"
}
]

View File

@@ -0,0 +1,42 @@
[
{
"name": "18 - (0)",
"label": " (18) 0",
"hex": "00"
},
{
"name": "17 - (1)",
"label": " (17) 1",
"hex": "01"
},
{
"name": "16 - (2)",
"label": " (16) 2",
"hex": "02"
},
{
"name": "15 - (3)",
"label": " (15) 3",
"hex": "03"
},
{
"name": "14 - (4)",
"label": " (14) 4",
"hex": "04"
},
{
"name": "13 - (5)",
"label": " (13) 5",
"hex": "05"
},
{
"name": "12 - (6)",
"label": " (12) 6",
"hex": "06"
},
{
"name": "11 - (7)",
"label": " (11) 7",
"hex": "07"
}
]

View File

@@ -0,0 +1,42 @@
[
{
"name": "(10) 0",
"label": "0",
"hex": "00"
},
{
"name": "(7.5) 1",
"label": "1",
"hex": "01"
},
{
"name": "(6) 2",
"label": "2",
"hex": "02"
},
{
"name": "(5) 3",
"label": "3",
"hex": "03"
},
{
"name": "(4) 4",
"label": "4",
"hex": "04"
},
{
"name": "(3) 5",
"label": "5",
"hex": "05"
},
{
"name": "(2) 6",
"label": "6",
"hex": "06"
},
{
"name": "(1) 7",
"label": "7",
"hex": "07"
}
]

View File

@@ -0,0 +1,52 @@
[
{
"name": " 0",
"label": "0",
"hex": "00"
},
{
"name": " 1",
"label": "1",
"hex": "01"
},
{
"name": " 2",
"label": "2",
"hex": "02"
},
{
"name": " 3",
"label": "3",
"hex": "03"
},
{
"name": " 4",
"label": "4",
"hex": "04"
},
{
"name": " 5",
"label": "5",
"hex": "05"
},
{
"name": " 6",
"label": "6",
"hex": "06"
},
{
"name": " 7",
"label": "7",
"hex": "07"
},
{
"name": " 8",
"label": "8",
"hex": "08"
},
{
"name": " 9",
"label": "9",
"hex": "09"
}
]

View File

@@ -0,0 +1,52 @@
[
{
"name": "(10) 0",
"label": "0",
"hex": "00"
},
{
"name": "(9) 1",
"label": "1",
"hex": "01"
},
{
"name": "(8) 2",
"label": "2",
"hex": "02"
},
{
"name": "(7) 3",
"label": "3",
"hex": "03"
},
{
"name": "(6) 4",
"label": "4",
"hex": "04"
},
{
"name": "(5) 5",
"label": "5",
"hex": "05"
},
{
"name": "(4) 6",
"label": "6",
"hex": "06"
},
{
"name": "(3) 7",
"label": "7",
"hex": "07"
},
{
"name": "(2) 8",
"label": "8",
"hex": "08"
},
{
"name": "(1) 9",
"label": "9",
"hex": "09"
}
]

View File

@@ -0,0 +1,2 @@
python3 eostimingutil.py