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,56 @@
|
||||
# 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: future.pyc
|
||||
# Compiled at: 2022-04-20 07:08:29
|
||||
from threading import *
|
||||
import copy, mytime, traceback, sys, inspect, mytime, wx
|
||||
|
||||
class Future:
|
||||
|
||||
def __init__(self, delay, func, *param):
|
||||
self.__done = 0
|
||||
self.__result = None
|
||||
self.__status = 'working'
|
||||
self.__C = Condition()
|
||||
self.__T = Thread(target=self.Wrapper, args=(func, param, delay))
|
||||
self.__T.setName('FutureThread')
|
||||
self.__T.start()
|
||||
self.calledFrom = inspect.getouterframes(inspect.currentframe(), 2)[1][3]
|
||||
self.funcName = func.__name__
|
||||
curframe = inspect.currentframe()
|
||||
calframe = inspect.getouterframes(curframe, 2)
|
||||
return
|
||||
|
||||
def __repr__(self):
|
||||
return '<Future at ' + hex(id(self)) + ':' + self.__status + '>'
|
||||
|
||||
def __call__(self):
|
||||
self.__C.acquire()
|
||||
while self.__done == 0:
|
||||
self.__C.wait()
|
||||
|
||||
self.__C.release()
|
||||
a = copy.deepcopy(self.__result)
|
||||
return a
|
||||
|
||||
def Wrapper(self, func, param, delay):
|
||||
self.__C.acquire()
|
||||
mytime.sleep(delay)
|
||||
try:
|
||||
self.__result = wx.CallAfter(func, *param)
|
||||
except:
|
||||
self.__result = 'Exception raised within Future, function ' + self.funcName + ' called from ' + self.calledFrom
|
||||
print mytime.displayTime(), self.__result
|
||||
traceback.print_exc(file=sys.stdout)
|
||||
|
||||
self.__done = 1
|
||||
self.__status = `(self.__result)`
|
||||
self.__C.notify()
|
||||
self.__C.release()
|
||||
return
|
||||
|
||||
|
||||
|
||||
# okay decompiling pycode/future.pyc
|
||||
Reference in New Issue
Block a user