Erster Commit: nativer Linux-Port aus macOS-Bytecode
Läuft die Voice Acoustic VA-Remotecontrol (AllDSP AllControl) nativ unter Linux auf echtem wxGTK 3.0 — ohne Wine und ohne dekompilierten App-Code. Ausgeführt wird das unveränderte Python-2.7-Bytecode aus dem macOS-.app; C-Extensions (wxGTK/numpy/ scipy/PortAudio) kommen nativ aus Debian stretch. Enthält: va/ (Original-.pyc + pure-Python-Libs + Assets + launch.py mit den drei Linux-Fixes), Dockerfile/run.sh/entrypoint.sh, reference/ (dekompilierter Quellcode zum Debuggen) und README/STATUS. img.cache (378 MB, regenerierbar) ist per .gitignore ausgeschlossen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
# uncompyle6 version 3.9.3
|
||||
# Python bytecode version base 2.6 (62161)
|
||||
# Decompiled from: Python 3.9.25 (main, Oct 31 2025, 23:16:49)
|
||||
# [GCC 14.2.0]
|
||||
# Embedded file name: user_config_helpers.pyc
|
||||
# Compiled at: 2022-04-20 07:08:28
|
||||
import wx, os, data_model, traceback, one_unit, ConfigParser, protocol, sys, select_keys, select_units, d_protocol, mytime
|
||||
mac_names = 'posix'
|
||||
strid_fixed_membid = {'Gain': 'Gain', 'Mute': 'Mute', 'Protect': 'Protect'}
|
||||
|
||||
def findFreeUI(parent, keySet):
|
||||
for j in range(512):
|
||||
key = data_model.Key(protocol.STRUCT_ID_UI_CONTROL, protocol.MEMBER_ID_UI_CONTROL, j / 256, j % 256)
|
||||
try:
|
||||
val = [_[1] for c in parent.model.get(key)]
|
||||
except:
|
||||
continue
|
||||
|
||||
if val[0] == 0 and key not in keySet:
|
||||
return j
|
||||
|
||||
return
|
||||
|
||||
|
||||
def getString(strID):
|
||||
return one_unit.getString(strID)
|
||||
|
||||
|
||||
def getKeys(frame, uiNumber, memberID=None, structID=None):
|
||||
uiIndex = 0
|
||||
keys = {}
|
||||
if frame.frame.parent.MAC[:4] in ('DEMO', 'VN::'):
|
||||
return keys
|
||||
else:
|
||||
for j in range(512):
|
||||
key = data_model.Key(protocol.STRUCT_ID_UI_CONTROL, protocol.MEMBER_ID_UI_CONTROL, j / 256, j % 256)
|
||||
try:
|
||||
val = [_[1] for c in frame.frame.parent.model.get(key, fast=True)]
|
||||
except:
|
||||
continue
|
||||
|
||||
if val[0] == uiNumber and (memberID == None or memberID == val[2]) and (structID == None or structID == val[1] & 63):
|
||||
keys[uiIndex] = (
|
||||
key, val)
|
||||
uiIndex += 1
|
||||
|
||||
return keys
|
||||
|
||||
|
||||
|
||||
# okay decompiling pycode/user_config_helpers.pyc
|
||||
Reference in New Issue
Block a user