I'm glad to report that finally the natural complex number entry is featured on the 41Z module!
This capability is implemented in the function "IMAGINE" - which until now was just a dummy place holder, but has become the heart of the matter now.
Assuming you have it assigned to the ENTER^ key, then the data entry sequence can't be more intuitive:
Re(z), ENTER^, Im(z), ENTER^
This will place the data in the XY registers appropriately, as well as lifting the complex stack automatically.
IMAGINE uses the "partial entry sequence" feature of the 41 OS - not for the faint of heart! Im(z) is entered by writing the digits and special characters into Alpha during the data entry process. The routine also updates the display at the same time to provide the feedback to the user.
During the process the keyboard is redefined, allowing only the following active keys:
- ENTER^ & R/S to terminate the entry
- numeric keypad
- back arrow to delete the previous entry
- comma for the decimal part
- EEX for the exponent field
- CHS for negative mantissa and exponent fields.
It supports both decimal choices for the radix, either comma or period as controlled by user flag 28. Features nice logic to control the sequence.
Once completed the information in the Alpha register is converted to numeric by using ANUM. Its built-in logic for it will resolve possible wrong typing, like repeated commas or EEX signs. Note that even on the new 35S there's the same issue, yielding 'Invalid Syntax' errors!
Arguably the wrong entries should be prevented during the process but that'll have to wait... let's say it's perfect and ready for users knowing their way around :)
Needless to say this doesn't replace the other methods to enter complex numbers, still available as until now. (Using ZREAL^, ZIMAG^, or ZENTER^)
Hope you enjoy it, will be posted at TOS in a couple of days I hope.
Best,
ÁM
Edited: 30 Sept 2009, 9:27 a.m.