WP34S: more direct LBLs and XEQs



Post: #9

Hi,

I've just seen that now almost all 1-letter labels can be used directly - an excellent improvement! :-)

But maybe even one more could be added, and that is X. This X is on the decimal point, and this point is not used when entering other numeric labels, so it could be added, too.

Well, at least if I haven't overlooked something ... ;-)

Franz


Post: #10

You have overlooked something. GTO.nnn moves the PC directly to a step number. This isn't a programmable command but its existence makes it impossible to input a GTO X statement. And a label which cannot be reached by all available commands is not as useful as it could be. So we decided to leave this one out.

BTW, the change triggered another change because we have again exhausted all flash. In order not to lose another library region, I have started moving things from XROM to a default library. 'WHO' is already gone from XROM and TVM will leave next. They are not lost but you need to install a library file on the emulator or the device to get them back.

Edit: The change is in (TVM and an enhanced WHO are now in a library.)

A new command, LSEND n, directly sends a library region from the emulator to the calculator (where it arrives in RAM first). The command name may change later but the function will likely not.


Edited: 31 July 2011, 2:27 p.m. after one or more responses were posted


Post: #11

Quote:
You have overlooked something.

Damned, I knew it ... :-(
Post: #12

Quote:
Edit: The change is in (TVM and an enhanced WHO are now in a library.)

Ahh, jeese! I am blushing! I haven't done squat compared to you 3.

Thanks for the thought.


Post: #13

I compiled the lib with your tool. :-)

Post: #14

Very observant :-) These extra labels haven't actually been properly agreed on yet :-) They've been implemented as a proof of concept only at this stage.

However, I'd expect them or something similar to stay since they seem to be quite useful.

We can change the names of the labels freely so long as they remain a single character. Arithmetic labels anyone?


- Pauli


Post: #15

Quote:
Arithmetic labels anyone?

Hmmm? What's this?

Something like "LBL +" and "XEQ +"?

Aaah, then I could finally define my own 'addition routine' ... ;-)

Franz


Post: #16

Quote:
Something like "LBL +" and "XEQ +"?

Aaah, then I could finally define my own 'addition routine' ... ;-)


Exactly.


- Pauli


Post: #17

Quote:
Exactly.

Well, I believe this would rather lead to confusion than being a real benefit.

Why not rather make PEEK and POKE, so we could write self-modifying code? ;-)

Edited: 31 July 2011, 6:05 p.m.


Post: #18

Quote:
Why not rather make PEEK and POKE, so we could write self-modifying code? ;-)

Or implement any 'hidden' bug that we could discover and use it for 'synthetic programming'.

A 'flying goose' (while a program is running) as in the good old HP41 times would be nice, wouldn't it?

You see, I have lots of ideas ... ;-)

Edited: 31 July 2011, 6:14 p.m.


Post: #19

The goose will fly from right to left if you discover the secret key combination. :-)

To get this on track again: We will NOT have the possibility to make '+' doing anything different than adding X to Y and leaving the result in X.

Except...

Except if you precede it with some other key like XEQ. In fact, the newly available label Z is just designed for this purpose. Write something sensible behind the label Z and it will be executed when you press XEQ +. Easy and useful I'd say.


Post: #20

Marcus is right. The arithmetic keys won't change their behaviour. Precede them with XEQ and a routine will be called. I was suggesting the name of that routine be '+' instead of 'Z' as the example.


- Pauli

Post: #21

Quote:
Except if you precede it with some other key like XEQ. In fact, the newly available label Z is just designed for this purpose. Write something sensible behind the label Z and it will be executed when you press XEQ +. Easy and useful I'd say.

Yes, and it's very comfortable as it is.

I was just afraid that by this 'arithmetic labels" it was meant that this LBL Z should be rnamed internally to LBL +, and we had to write LBL + or XEQ + then in a program. THIS would look a bit strange (if not ugly).

Post: #22

I second your suggestion to leave it as it is now.

Post: #23

Quote:
Why not rather make PEEK and POKE, so we could write self-modifying code? ;-)

Nope :-)

If you find synthetics on the 34S I've done my job wrong.

On the other hand, everything is exposed so there should be no benefits from synthetics.


- Pauli


Forum Jump: