|Re: Online WP 34s assembler now available|
Message #2 Posted by Neil Hamilton (Ottawa) on 15 July 2011, 6:34 a.m.,
in response to message #1 by Bruce Bergman
Thanks for doing this! I had some vague plans for wrapping a GUI around it some day but this seems easier -- just let you do it. :-D
You might want to put another warning on your page regarding the following:
I think we have discovered an issue between the assembler and the current ZIP bundle. The ZIP bundle is quite old now (19-June-2011?) and both its emulator and calculator binary are incompatible with the assembler.
Since the WP 34s opcode map evolves on timescales that would make a fruit fly blush, the assembler must be mated to the version of emulator/calculator you are using. This is the most probable reason for the current issue.
The assembler takes an optional command line argument to read in a specified opcode map. Maybe you could provide an optional drop down box to select a specific revision. I (we) can supply a selection of these opcode map files if you think it is worth it. (Recall that one of the main reasons for building this tool was as an insurance policy to guard against this very opcode drift.)
Also, you might want a link to the assembler manual on your web page as it gives guidance on how to properly format the ASCII source.
I have used this tool more than anyone and I still generate and use the expanded syntax guidance table it can optionally create. Perhaps access to that generated output might be another option you can add. Email this guide file as well if you'd like -- its BIG at about 480KB!
In some ways this email output route takes me back to my card deck submission days. I would wait a while for my line printer output (several hours?) only to find out that I had missed a continuation character in column 6(?) of a Fortran card. Perhaps your script could detect if the assembler aborted and display this message right away rather than issuing an email to tell you it didn't recognize the opcode "FORBNIP".
This is a great service for those who don't want to get some grease on their hands, but I think for those who are comfortable with running a command-line operation, the actual assembler Perl script or self-contained EXE will give higher performance (no wait for an email) and access to the other command line options. Several of these command line switches are very useful. I particularly like turning the asterisks on ("-s 3", for example) so I can easily see my labels in a disassembly output.
BTW: Is it actually online yet? I have run 3 test jobs through it and have yet to get an email (1st job was about 10 hours ago).
Thanks again! I hope this widens the usage (and I guess I can expect to have to fix more bugs now :-)
Edited: 15 July 2011, 6:38 a.m.