Closed redking00 closed 6 years ago
Looks pretty cool! I'll have to check it out in more detail later. One suggestion I have: list the version (i.e. commit hash) of Krakatau used and instructions for Pyinstaller so that others can rebuild the exe if necessary.
To build a single exe I wrote a merged version (kasm.py) of the two scripts (assemble.py and disassemble.py, from your latest commit) which uses a new argument (-d) to switch between the two functions. I'll fork Krakatau and I will send you a PR, it would be nice if you include this in the main repo. Thanks for your suggestion, I'll include this information in the next commit. I'm sorry, English is not my first language. :)
I've been thinking about rewriting the assembler and disassembler in Javascript. I figured that would make it easier to use, both in Electron apps and in the browser. What do you think?
That would be nice! I was considering that option when I started Volcano but for the moment is a TODO. Javascript would open some interesting possibilities to your project. I encourage you to do it!
I finished rewriting Krakatau in Javascript, but I'm not sure how to integrate it into Volcano, because I can't figure out how to run/build Volcano. Could you please include instructions for how to do this?
If not, I can try to figure it out on my own, but I might end up doing it a different way than you prefer.
Volcano uses child_process to spawn the kasm executable with arguments. An option is to use the same method to spawn a headless electron process with the new Krakatau script but personally i would prefer to make a direct call to the krakatau api without spawning new processes at all. Are you planning to upload the code to github?. If it is ready i can try to integrate it in the next release. Volcano distribution is composed of two asar files (app.asar and volcano.asar) plus the krakatau folder, see "resources" into the installation folder. The krakatau folder contains the platform specific files from src/krakatau. Volcano.asar contains the files from src/ui and app.asar the rest. You can unpack the asar files to clarify my explanation. I'll include this information with some inprovements in the next commit (may be tomorrow)
I'll upload it and send a pull request as soon as I can figure out how to make Volcano work.
I have sent you a repo transfer with the krakatau-js module and I have a question: which cases are supposed to return more than one result from the assemble function?
You can put any number of classes in a single assembly file.
Here's an example: https://github.com/Storyyeller/Krakatau/blob/master/examples/multipleclasses.j
Thank you, I had not been aware of that.
I'm working in a tiny IDE for your great assembler / disassembler tool. I should be grateful if you would examine it. https://github.com/redking00/Volcano