Complex Lock mode for WP-34s
|
02-20-2019, 10:20 AM
Post: #68
|
|||
|
|||
RE: Complex Lock mode for WP-34s
Thank you Pauli for the tip on the running flags. It was a simple change and now it works as follows:
XEQ.C: case OP_ENTER: if (CmdLineLength && !(XromRunning || Running) ) { //exclude stack lift if there is something in the input line AND if NOT running code i.e. Xrom or program XEQ.C: void cpx_enter(enum nilop op) { if( State2.state_lift || (XromRunning || Running) ) { //Only duplicate if needed, otherwise ignore. CPX LOCK mode cannot run code, but the same exception as with non-cpx lock enter is added to make sure Xrom code does not break. Operation: 1. In interactive mode, in both complex lock mode and not, entering a value into X does not lift the stack. [ENTER] on its own duplicates X, and lifts the stack. Example: [0] [ENTER] [7] [ENTER] [*] gives 0. 2. While running a program, it duplicates the stack. Example: Executing [LBL 07] [0] [ENTER] [7] [ENTER] [*] [RET] gives 49. 3. I verified that Xrom code works, testing the SLV and SLVQ routines and there is no interference. 4. I verified in CPX LOCK mode that a few complex Xrom routines are also working, i.e. ACOS, LOG & LOGXY. I am happy with the modification for my own calculators and will keep on testing as I go along. As said in my earlier mail, my intention is not to try convince anyone, so I'm good to use this hack in the few calculators that I make for friends. I will publish the code changes with the emulator binary and calculator binary on my web site, so I comply with GPL. I will update my files in a few days when I commit my key labels for printing and cutting. I will also include the update to the emulator graphic accordingly. Pauli, I don't think the 6 line hack warrants a branch of its own. I will just keep my mods on my web site. If Nigel decides to include it in the complex branch, I would be ok with that and will then remove my files from my site. Jaco Jaco Mostert, Elec Eng C47 on DM42, 42S, WP34C&S, 28C, 35S, 32Sii, had 11C; used 67, 85; iOS:42s, Free42, WP31S&34S, HCalc; OSX:WP34C. |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)