The Museum of HP Calculators

HP Forum Archive 08

 HP48 RPL HELP. . .Message #1 Posted by Tal on 11 Aug 2002, 1:29 a.m. Hi, All! I have a program that gives at the end a "GROB". This "GROB" displayed on the screen and saved in "XXX" variable(for other time display). I used a temporary ("TEMP") variable. I am wondering if it is must using this temperary variable: . . . @ here is the GROB 'TEMP' STO \<< TEMP \->LCD 3 FREEZE \>> 'XXX' STO XXX \>> Best regards, Tal

 Re: HP48 RPL HELP. . .Message #2 Posted by Vieira, Luiz C. (Brazil) on 11 Aug 2002, 11:38 a.m.,in response to message #1 by Tal Hello, Tal Let me see if I get it: your program lists like this (as is in your post): GROB 'TEMP' STO << TEMP ->LCD 3 FREEZE >> 'XXX' STO XXX >>  The last >> seems to have no counterpart. Is there something else in your program? When the calcualtor finds GROB in a program, it places GROB in stack level-1. GROB is a special name, and sometimes I feel confused about how to use it. What did you expect being stored at 'XXX' at the end of the procedure? If you want to send me the program listing, be my guest. Best regards.

 Re: HP48 RPL HELP. . .Message #3 Posted by James M. Prange on 11 Aug 2002, 2:55 p.m.,in response to message #2 by Vieira, Luiz C. (Brazil) Hi Vieira, "GROB" is RPL jargon for "GRaphics OBject". Presumably, an earlier part of the same program left the GROB in level 1. Tal, Just let the program that makes the GROB end with the GROB on level 1. Now start writing the 'XXX' program in the command line, but instead of using the variable TEMP as the first object, press LeftShift EDIT, then the \|^STK menu key to get into the "interactive stack", and with the arrow on level 1, press ECHO to get a copy of the GROB itself into your command line, and then press CANCEL (or ATTN on the 48S series) to get out of the interactive stack. My explanation sounds a bit complicated, but once you learn the technique, it's really very easy. Regards, James

 Re: HP48 RPL HELP. . .Message #4 Posted by Vieira, Luiz C. (Brazil) on 11 Aug 2002, 7:14 p.m.,in response to message #3 by James M. Prange Hi, James. Thanks for the information. You are right: I confused GROB for PICT. The sort of maneuver with PICT is what I mentioned as confusing; PICT is a name, an object and you can deal with the name as you deal with the object; if you recall its contents to the stack, is becomes a Graphic lll X ccc; if you type in PICT and press [ENTER], you place PICT in the stack, no ' surrounding it; if you have a graphics object in level 1, you can type in PICT and press [STO]. Sometimes I feel confused about what I am dealing with... I thought that the listing posted by Tal was incomplete. I thought a program was created within the main program, so the first << and something else was missed. After your analysis, I realized I was trying to see more than it was really shown. Checking for XXX existence is the best solution. What I did not understand is the fact that the default condition is overwriting existing variables. One question: the 'XXX1' solution would be 'XXX.1' solution for transferred files (flag -36 controls overwriting, as mentioned), but... is there a SysRPL entry that allows the generation of a new file name, like 'XXX.1', when the duplicated file comes from a program command? I did not get into SysRPL so far (I do not have a complete documentation; any suggestion?), but knowing about it would be great! Best regards.