A68 ==== > Note: don't tell me to read the manual. I have read it, and unless being > STUPID (which I am probably if the answer is in the manual) I have not > found HOW TO do what I ask here (the manual isn't in my mother tongue, > and I don't get all from it, THAT IS). > > -- question 1: howto include an objet into Code? I'm using (trying to be more accurate) to convert a HP-Asm source to > Jazz's ASS, and I need to do this: GOSUB after_ob > /grob_data > after_ob C=RSTK > D1=C So I need the /obj to be included into the Code object to be created, so > I can get from RSTK the included object's address. The HP-Asm command to include is / followed by the VAR name containing > the object. How do you do that in Jazz? I believe there is a token called INCLOB (inlude object) and is used like this: INCLOB OBJFILE.NAME If this doesn't work, you can DIS the object into a string, store the string into a variable and use INCLUDE: INCLUDE INCLUDE.FILE -- question 2: creation of macros Also, I do I create a macro? In HP-Asm I do code the macro normally, and > I use a dedicated-Code routine (called ->MACRO) that strips out the > prologue, and size 5 quartets, and all data to be leaped. When using Hp-Asm, I had coded dozens of macros, like this one: LC 800 > OUT=C > P= 15 > *LOOP > P=P-1 > GONC LOOP > C=0 X > OUT=C It emits a small click sound, to warn me of errors, even if the sound > is turned off on the HP. To create a macro from it, I would use the ASM > command to create the Code, and then ->MACRO to turn the code into a > string, prologue and size removed. Then, I would write this: And HP-Asm includes the macro code into my Code being created. Howto.. using Jazz (you guessed! You're so clever.. :)) > I THINK this one is in the manual -- you can't make macros (feel free to correct me on this :) > -- question 3: how to break a lib using Jazz, can it? Is Jazz able to break a lib, so I can get its $CONFIG object and check > it before moving it to one of my ports? (I want to check $CONFIG objects > of libs sent to me) Howto.. (let's strip that ok? ;-> > You can, but it only shows up as a LIB hhhhh.... disassemble. Jazz currently doesn't disassemble libraries; but you CAN create one. > -- question 4: how to create a lib using ASS? I have followed the Jazz's manual instructions on that, and I've not > been able to assemble a lib. I wanted to have on my lib a dummy test xROMID 991 > xTITLE testLib > xCONFIG 991_cfg > EXTERNAL pushme LABEL 991_cfg > :: > #3DF > TOSRRP > ; And I put the pushme string into HOME. When I do ASS I get a lib, but > there's no pushme object into when it's installed in port 0 and the HP > restarted (the lib is empty). How can I put an object into a lib? > I think you want to use xNAME and a NIBB command... or CON(1) ASSEMBLE CON(1) 8 RPL xNAME pushme :: ... code here ... ; > spanish, portuguese or swedish. 00 E2 22 76 58 1F 72 BA EA 94 78 F3 A2 63 E0 94 > http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== > -- question 1: howto include an object into Code? Jazz docs Section 2.3 Machine Language Assembly: GOSUB after_ob INCLOB GROBFILE after_ob C=RSTK D1=C > -- question 2: creation of macros Also, I do I create a macro? In HP-Asm I do code the macro normally, and > I use a dedicated-Code routine (called ->MACRO) that strips out the > prologue, and size 5 quartets, and all data to be leaped. When using Hp-Asm, I had coded dozens of macros, like this one: LC 800 > OUT=C > P= 15 > *LOOP > P=P-1 > GONC LOOP > C=0 X > OUT=C That is no macro. Solution ? The same as above. Write a source file like above, sourounded by CODE ... ENDCODE , compile and save to file. Now INCLOB datafile But better would be to label the routine, give it an RTN and use GOSUB to access it blah... GOSUB Clic blah Clic blubber RTN or: INCLUDE Clic.s blah... GOSUB Clic blah > -- question 3: how to break a lib using Jazz, can it? Is Jazz able to break a lib, so I can get its $CONFIG object and check > it before moving it to one of my ports? (I want to check $CONFIG objects > of libs sent to me No. Maybe you want to use Mika's HackV9.2 library. It offers a XSTO, which checks $CONFIG, and won't execute the Code if it isn t a standard config. So you can use a Lib Config aborter/suppressor to avoid execution on startup. HackV9.2 offers also a RCFG to get a libs CONFIG and now you can disassemble and examine it. > -- question 4: how to create a lib using ASS? I have followed the Jazz's manual instructions on that, and I've not > been able to assemble a lib. I wanted to have on my lib a dummy test > And I put the pushme string into HOME. When I do ASS I get a lib, but > there's no pushme object into when it's installed in port 0 and the HP > restarted (the lib is empty). > xROMID 991 xTITLE testLib xCONFIG 991_cfg EXTERNAL pushme LABEL 991_cfg :: #3DF TOSRRP ; LABEL pushme INCLOB pushme * or INCLUDE pushme.s > spanish, portuguese or swedish. I can only reply in english or german. Sorry http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== I want to upgrade my hp48g to 128K, can you help me?? I know I must dessold the current chip and buy an 128k one. I need a schematic with all the steps Pedro Cardoso ==== Try em: http://www.geocities.com/CapeCanaveral/7584/index.html http://freezone.exmachina.net/doegox/ Eva ------------------------------------------ > I want to upgrade my hp48g to 128K, can you help me?? I know I must dessold > the current chip and buy an 128k one. I need a schematic with all the steps Pedro Cardoso ==== New Mini-Challenge: Rearrange a string in all the possible ways. Input: STRING of any length > 1. (Bonus points if it works for len=1) Output: LIST of STRINGS (every possible permutation of the characters). Example: XYZ --> { XYZ XZY YXZ YZX ZXY ZYX } Winner: BYTES * TIME. Usual MC rules. Stand-alone User-RPL program only; no SYSEVAL; no LIBEVAL; no library functions; assumes default flag settings; leaves other stack contents alone; leaves no extraneous junk on the stack; etc etc etc. For what it's worth, Richard Nelson proposed this as a mini-challenge at last Friday's meeting of the Southern California PPC Chapter (hosted by Gary Tenzer), and nobody even came up with a program that worked, let alone a short or fast program. We're getting old much too fast... -Joe- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== joehorn@usa.net a .8ecrit: > New Mini-Challenge: Rearrange a string in all the possible ways. Input: STRING of any length > 1. (Bonus points if it works for len=1) > Output: LIST of STRINGS (every possible permutation of the characters). Example: > XYZ --> { XYZ XZY YXZ YZX ZXY ZYX } Winner: BYTES * TIME. > Here's my first contribution to the MC: The program is recursive, so it should be called PERMS PERMS: << -> S << { } IF S SIZE 1 == THEN S + ELSE 1 S SIZE FOR I S I DUP SUB S 1 I 1 - SUB S I 1 + S SIZE SUB + PERMS LIST-> DUP 2 + ROLL -> T PREFIX << 1 T FOR J PREFIX J 1 + ROLL + J ROLLD NEXT T ->LIST >> + NEXT END >> >> BYTES -> #1A8Ch 243.5 ABCDE 'PERMS' MEM DROP TIM -> 2: {...} 1: 262097.39:31.99431_s on my GX (I use MEM DROP to force a garbage collection before the program) Erwann. ==== Entries so far, on an input of ABCDE : Erwann ABALEA's program 'PERMS': 243.5 bytes, 32 seconds. Hubert Canon's program 'PERMUT': 173.0 bytes, 33 seconds. TinyWanda's proposed program: fun idea but impractical (similar in spirit to BOGOSORT; see it on Goodies Disk #8). My current best (beat this!) is: 153.5 bytes, 4.5 seconds. It runs ABCDEF in 25.6 seconds. It's not recursive, so it can be named anything you wish. For the hackers out there, it uses (among other things) a nifty trick suggested by Richard Nelson: A fast way to obtain all the possible *rotations* of any string is to append the string to itself and then loop through that, SUBbing out successive chunks: Concept: ABC/ --> ABC/ABC/ ^--^ -------> ABC/ ^--^ ------> BC/A All the possible ^--^ -----> C/AB / rotations of ABC/ ^--^ ----> /ABC / Input: ABC/ Run: << DUP DUP + 1 ROT SIZE DUP 4 ROLLD START DUP 1 4 PICK SUB 3 ROLLD 2 OVER SIZE SUB NEXT DROP2 >> Output: ABC/ BC/A C/AB /ABC I'll post the complete MC program if nobody beats 153.5 bytes, ABCDE in 4.5 seconds, ABCDEF in 25.6 seconds. -Joe- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own I'm in a bit of a rush, so here is my entry (which could probably be shortened a bit). Unfortunately I'm going to be out of town for the next 3 days (and need desperately to pack), but if something brilliant comes to mind, I'll post. << -> S << 1 S SIZE FOR i S i DUP SUB NEXT S SIZE ->LIST { } SWAP 1 << -> L C << L 1 << C << -> S D << 0 S SIZE FOR i S 1 i SUB D + S i 1 + S SIZE SUB + NEXT >> >> EVAL >> DOLIST >> >> DOLIST >> >> This comes in at 241 bytes. Using << ABC -> m << TICKS m PRMS TICKS ROT - >> >> as my test timer I'm averaging over 10 tests (6265 6268 6308 6346 6268 6308 6332 6266 6258 6316) 6293.5 ticks, or .76825s. 185.148 byte_secs ==== Darn that Joe Horn. . .how does he get his programs so short?!? Actually, I considered playing with rotations but I got lost in considerations of how to be sure all permutations came up. Trimmed my beastie a bit from last night, but still it isn't getting anywhere near Mr. Horn's program. Still, for what it is worth: << DUP 1 SWAP SIZE FOR i DUP i DUP SUB SWAP NEXT SIZE ->LIST { } SWAP 1 << -> C << 1 << C << -> S D << 0 S SIZE FOR i S 1 i SUB D + S i 1 + S SIZE SUB + NEXT >> >> EVAL >> DOLIST >> >> DOLIST >> This comes in at 216.5 bytes. Using << ABC -> m << TICKS m PRMS TICKS ROT - >> >> as my test timer I'm averaging over 10 tests 6130.9 ticks, and for ABCDE it comes in at an average of 64829.s ticks (7.913 secs). Unfortunately, I don't think this approach is going to yield much in the way of getting down to Mr. Horn's stunning results. Oh well, on that long drive to Amarillo I may think of something. If this isn't over by Friday, I'll try to post something new. Donald http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== Here's my mini-challenge entry. G/GX only (uses list processing). %%HP: T(3)A(D)F(.); @ ARR$ by Joe Horn, 2 Dec 1998. @ Input: String @ Output: List of all its rearrangements. << DUP HEAD 1 ->LIST SWAP TAIL SWAP 1 3 PICK SIZE FOR j OVER j DUP SUB ADD 1 << DUP DUP + 1 ROT SIZE DUP 4 ROLLD START DUP 1 4 PICK SUB 3 ROLLD 2 OVER SIZE SUB NEXT DROP2 >> DOSUBS NEXT SWAP DROP >> BYTES: #64B3h 153.5 Execution time: Handles ABCDEF in 25.4 seconds. +---------+ | CONCEPT | for processing a string beginning with ABCD +---------+ Start with A . Now insert B into all the possible positions (namely, in front and behind) as shown in this diagram: A ^ ^ B B This yields BA and AB, the only two possible arrangements of AB. Now take those and insert C into all the possible positions, as shown in this diagram: B A A B ^ ^ ^ ^ ^ ^ C C C C C C This yields CBA, BCA, BAC, CAB, ACB, and ABC, the six possible arrangements of ABC. Now do the same thing for D : C B A B C A B A C C A B A C B A B C ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ D D D D D D D D D D D D D D D D D D D D D D D D This yields the 24 possible arrangements of ABCD. The process is repeated for each remaining letter (if any). +-------+ | TRICK | +-------+ Rather than *inserting* each character into the string, it's faster to merely add it to the front and then *rotate* the string to obtain all the other positions of the character. This yields a different order of the final strings, but that's okay since the order doesn't matter as long as all the possible rearrangements are generated, which they are. Example: Rather than doing this, B A A B ^ ^ ^ ^ ^ ^ C C C C C C merely do this instead: B A A B ^ ^ C C CBA DUP + --> CBACBA ^^^----> CBA ^^^---> BAC ^^^--> ACB CAB DUP + --> CABCAB ^^^----> CAB ^^^---> ABC ^^^--> BCA Thus we obtain CBA, BAC, ACB, CAB, ABC, and BCA, the six possible arrangements of ABC. Notice that the order of these six strings is different from the order shown under CONCEPT above, but none are repeated and none are missing, and that's all that matters. -Joe- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== It's always SO much easier to improve upon someone else's version: @ bytes: 122.0 @ check: # EE7Fh @ timing: ABCDEF 23.95_secs (jkh's took 27.41_secs on EMU48) << { } OVER SIZE 1 SWAP FOR j OVER j DUP SUB ADD 1 << DUP + 1 j START TAIL DUP 1 j SUB SWAP NEXT DROP >> DOSUBS NEXT SWAP DROP >> -- Werner Huysegoms remove the x before replying http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own DB notes: Darn that Joe Horn. . .how does he get his programs so short?!? Actually, I considered playing with rotations but I got lost in considerations of how to be sure all permutations came up. -------------------------:: o it seemed to me that it was always a folding program... if you could figure out how to fold it just right, it could become a very short loop...??? ( i'm working on my chrstmsa wee-books and i can't concintrate on ANYTHING...! ) ==== Erwann ABALEA a .8ecrit: > PERMS: > << -> S > << { } IF S SIZE 1 == THEN S + > ELSE 1 S SIZE FOR I S I DUP SUB S 1 I 1 - SUB S I 1 + S SIZE SUB + > PERMS > LIST-> DUP 2 + ROLL -> T PREFIX > << > 1 T FOR J PREFIX J 1 + ROLL + J ROLLD NEXT T ->LIST > >> > + NEXT END > >> >> Funny thing... I just wanted to speedup my code and reduce it, so I tried to replace the part LIST-> DUP 2 + ROLL -> T PREFIX << 1 T FOR J PREFIX J 1 + ROLL + J ROLLD NEXT T ->LIST >> + NEXT END by a simple ADD statement, which does exactely the same thing (this part of my program takes a prefix string in level 2, a list of strings in level 1, and adds the prefix to each of the strings of the list)... It is smaller, but also slower! My first version takes 32.04s to find the premutations of ABCDE , and with the ADD version, it takes about 39s!! Why? Erwann. ==== > Input: STRING of any length > 1. (Bonus points if it works for len=1) > Output: LIST of STRINGS (every possible permutation of the characters). > > Example: > XYZ --> { XYZ XZY YXZ YZX ZXY ZYX } Maybe something like that will work (I have not my HP48 with me to test it) : 'PERMUT' Ç DUP LENGTH -> s l Ç IF l 1 <= THEN s 1 ->LIST ELSE 1 l FOR i s 1 i 1 - SUB s i 1 + l SUB + PERMUT s i DUP SUB ADD OBJ-> DROP NEXT l FACT ->LIST END È È -- Hubert Canon ==== How do you find a plot fast? Try plotting this as a function: -1/7500*x^3+6/5*x^2=0 Unfortunately ZAUTO does not work in this case or many like this one. Its there a way of sizing up the plotter automatically. Any good programs ? Eva Sweden > -1/7500*x^3+6/5*x^2=0 > Unfortunately ZAUTO > does not work in this case or many like this one. Leave out =0 For equations whose left-hand side consists of some expression other than the name of the dependent variable, the left-hand and right-hand expressions are *both* plotted [User's Guide] ----------------------------------------------------------- With best wishes from: John H Meyers ==== The FAQ would be an excellent start. -jt >Where can I find highly-detailed information about the 48gx, its hardware, >software, etc? > ==== I am having problems downloading this file to my gx. For some dumb reason the file cannot be found. If anyone else is having problems with this or knows how to download it. Could you please help. ==== >I am having problems downloading this file to my gx. For some dumb >reason the file cannot be found. If anyone else is having problems with >this or knows how to download it. Could you please help. Many people have had problems, and it's mainly due to their browsers not handling the .lib extension and not knowing what to do with it. You have to shift click in Netscape, I don't know about Internet Explorer. I think I might just zip the file on its own just to avoid this problem. Anyways I'm making a 3.5b16 right now. -- has Katarina written any good programs for the 48... are the programs she's written on the site mentioned...??? i've been working on my SnowFlake program for the last couple of days, and it's been taking ALONG time to draw them, since i've been trying to make them the way god makes them...sort of... so yesterday, i was trying to make a 200 by 200 pixel one, and it was taking several hours, and the batteries went dead while it was working on it... so when i put new ones, actually 2 new ones, and one half full one...it didn't come back up...!!! but i noticed that when i took the batteries out, and then rearranged them, or took one out, and put it back in, the screen garble would change...??? i also tried ON/C, ON/D, ON/E, ON/A/F... all without effect... i've tried the hole in the back on many other occasions, and it's never worked, so i didn't try it this time... so anyway, i left the batteries out for about 5 hours, and when i put them back in, it took a little while longer than normal to come up, but then it did...with NO loss of memory...! it just looked up at me with those puppy dog LCD's like, uh...what are you looking at me like that for...??? ==== je cherches quelqu'un qui pourrait rajouter de la m .8emoire sur ma hp48g et qui habiterait pr .8fs de chez moi: Saint-Maur dans le val-de-marne. ==== Allemand. Essayer http://www.cynox.de/start.htm > > je cherches quelqu'un qui pourrait rajouter de la m .8emoire > sur ma hp48g et qui habiterait pr .8fs de chez moi: > Saint-Maur dans le val-de-marne. > -- ECHIP, Inc. ==== I downloaded EQSTK in order to use it with Erable. After tinkering around, I noticed 3 variables that were created. One was EPS which had the value of 1e-9 and I don't recall the other two. After deleting them and 'rebooting' the HP48, the EQSTK wouldn't work. I ended up detatching all of my libraries, turning the calculator on and off, and then manually reattaching the libraries in order to get it to work. Is this normal??? Any suggestions on how to not run into this problem again??? I really like EQSTK and Erable and wish I had enough RAM to try ALG48 also. Al ==== > I downloaded EQSTK in order to use it with Erable. After tinkering > around, I noticed 3 variables that were created. One was EPS which had > the value of 1e-9 and I don't recall the other two. After deleting them > and 'rebooting' the HP48, the EQSTK wouldn't work. I ended up detatching > all of my libraries, turning the calculator on and off, and then > manually reattaching the libraries in order to get it to work. Is this normal??? Any suggestions on how to not run into this problem again??? I really like EQSTK and Erable and wish I had enough RAM to try ALG48 > also. Al: The 3 variables you referred to are from Erable, not EQSTK. They are 'modulo', 'eps' and 'vx'. Do not purge them as they are used by Erable. Be sure to thoroughly read the documentation from Erable. Full documentation of Erable 3.024 is online as well as changes in version 3.2. One tip I would give you is to doublecheck all files you download into the HP48. If there is any kind of hiccuping in transmission, you may have corrupted data, causing all kinds of errors. I believe I had that happen to me with the newest version of Erable, causing me to think wrongly the program wasn't working! A second tip I would give you is create directories where you conduct all your work on the calculator where these sorts of variables do not clutter up your screen. As an example, Left Arrow-->Var Key-->Dir-->'Name of directory' on level 1 of the stack-->CrDir. You can do this with other functions of the HP48 which create all sorts of variables: the Equation Library, Plotting, and the Solver. Indeed, one of the neatest things about the HP48 is its ability to create directory within directory. It is the easist calculator with which to organize programs, notes, etc... as long as you have enough memory. Hope this helps you - J.C. Randerson http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own >I downloaded EQSTK in order to use it with Erable. After tinkering >around, I noticed 3 variables that were created. One was EPS which had >the value of 1e-9 and I don't recall the other two. After deleting them >and 'rebooting' the HP48, the EQSTK wouldn't work. I ended up detatching >all of my libraries, turning the calculator on and off, and then >manually reattaching the libraries in order to get it to work. I'm not exactly sure that I have the answer, but my thaughts might help... In appendix A (FAQ) of the Erable documentation it is mentioned that when you press the ON key *too fast* (when turning the calc off) EQStk will stop working. ON-C will help to get ASTK again working. If this fails you must reinstall EQStk. I'm using Erable and EQStk on my calc without any problems, so I hope it should work on yours also. _______________________________ Do you know the great Frequently Asked Questions? http://www.engr.uvic.ca/~aschoorl/faq/ and the superb HP48 Software Archive? http://www.hpcalc.org to look for *old* HP48 postings see http://www.dejanews.com ==== After moving for the um-teenth million time (ok, the 6th time in 6 years), I just located my old 128K HP ram card, my 256K TDS ram card, and my 512K TDS ram card. I cannot find the bank switching software for the 256K and 512K cards. Does anyone have this program, or does anyone have an address or phone number for them. Al p.s. After getting a new batter for the 128K card, I should be able to load ALG48. ==== This is a multi-part message in MIME format. --------------8D2CA8CBD89B9C2B42B41CF3 I do have the software for the bankswitching of the TDS 256K and 512K ram cards. Unfortunately the software is on 5 1/4 floppys and I have disconnected my 5 1/4 floppy at the time. Please let me know if you don't find any other source and I will reconnect my fdd... Martin > After moving for the um-teenth million time (ok, the 6th time in 6 > years), I just located my old 128K HP ram card, my 256K TDS ram card, > and my 512K TDS ram card. I cannot find the bank switching software for > the 256K and 512K cards. Does anyone have this program, or does anyone > have an address or phone number for them. > Al p.s. After getting a new batter for the 128K card, I should be able to > load ALG48. --------------8D2CA8CBD89B9C2B42B41CF3 name= pedersen.vcf filename= pedersen.vcf begin:vcard n:Pedersen;Martin tel;fax:+49-201-24718-010482 tel;home:+49-561-15184 x-mozilla-html:FALSE org:adr: adr:;;Goethestra§e 6;Kassel;;D-34119;Germany version:2.1 fn:Martin Pedersen end:vcard --------------8D2CA8CBD89B9C2B42B41CF3-- please be aware of one fact: If you have an older TDS card, you should replace the card batteries immediately after the first 'Low Card Battery' warning. This is due to a hardware 'bug' in the older TDS MultiMemory cards, which causes the card controller circuits to burn if such a situation occurs. Hope this helps Greetings Raymond ==== >After moving for the um-teenth million time (ok, the 6th time in 6 >years), I just located my old 128K HP ram card, my 256K TDS ram card, >and my 512K TDS ram card. I cannot find the bank switching software for >the 256K and 512K cards. Does anyone have this program, or does anyone >have an address or phone number for them. Here is their web site, which should provide the information you need: http://www.tdsway.com/ ==== This is a multi-part message in MIME format. --------------7A7EBFD5DC59E4ACB330BB35 library object, to this message. > After moving for the um-teenth million time (ok, the 6th time in 6 > years), I just located my old 128K HP ram card, my 256K TDS ram card, > and my 512K TDS ram card. I cannot find the bank switching software for > the 256K and 512K cards. Does anyone have this program, or does anyone > have an address or phone number for them. > Al p.s. After getting a new batter for the 128K card, I should be able to > load ALG48. --------------7A7EBFD5DC59E4ACB330BB35 begin 644 Switch ==== HELP!!! where can I get a HP48GX manual? http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== Why not try HP? how come you need a manual, since you are rplgod ? Greetings Raymond Anyone know where to get a fast convolution program for the hp48. I want to take in two 1D arrays and convolve them but can't seem to find this function. I can probably write a slow one, as soon as I figure out how to get the length of an array, but am not a good programmer. 3 [1 2 3] 2 [1 1 1] -->conv 1 [1 3 6 5 3] ==== > > Anyone know where to get a fast convolution program for the hp48. I want to > take in two 1D arrays and convolve them but can't seem to find this function. > I can probably write a slow one, as soon as I figure out how to get the length > of an array, but am not a good programmer. > > 3 [1 2 3] > 2 [1 1 1] > -->conv > 1 [1 3 6 5 3] > Here's a post I sent out a few weeks ago on the topic. I retrieved it from dejanews. I sent out a first message, and then the next day I sent this correction. Both messages are here. Dave. ----- I don't speak for HP when I post here. ============================================================== I have a few corrections. First, the vectors are not required to have the last half be zeroes. The only requirement is that the convolved vector will fit in the space alotted, and that the space alotted be a power of two. If the first vector has n elements, and the second has m elements, the convolution will have n+m-1 significant elements. Thus, both starting vectors should be padded with zeroes to be of length n+m-1. This is my theory for today. Counter-examples are welcomed. Second, I can't seem to spell some days. The command is CEIL, not greatly simplifies the padding routine. So the program to create the input vectors for the convolution routine looks more like this: << DUP2 SIZE EVAL SWAP SIZE EVAL + 1 - Calculate minimum vector size LN 2 LN / .0000001 - CEIL 2 SWAP ^ Making sure it is a power of 2 1 ->LIST DUP 4 ROLLD RDM wants a single-element list RDM SWAP ROT RDM Expand both vectors >> This program leaves A and B swapped, but that doesn't matter in the convolution. Starting with [1 2 3 4 5] and [1 2 3 4] we get [1 2 3 4 5 0 0 0] [1 2 3 4 0 0 0 0] which convolves to [1 4 10 20 30 34 31 20] The third example from the previus post would be: [1 3 5 3 1] [7 3 2 1] [1 3 5 3 1 0 0 0] [7 3 2 1 0 0 0 0] [7 24 46 43 29 14 5 1] Bye! Dave. > > > I read a message yesterday dealing with convolution of time- > discrete functions. I wanted to reply today but I couldn't find it. > I hope the original questioner reads this. > > The fellow who asked wanted a program or process to convolve two > vectors, where the vector elements indicate the values of the > functions to be convolved. For example: > > A = [ 1 1 1 1 ] > > B = [ 1 1 1 1 ] > > C= A*B = [ 1 2 3 4 3 2 1 ] where * indicates convlution. > > The theory states that convolution in the time domain is > equivalent to multiplication in the frequency domain. I use that > principle in my proposed solution. First, I require that the > two input vectors be of equal length, having a power of 2 as the > number of elements, and having at least the last half of the > elements equal to zero. Otherwise there is wrap-around in > the Fast Fourrier Transform that makes things really ugly. > > Start: A on level 1, B on level 2. > Result: C on level 1 > > << > FFT Change A to freq domain > OBJ-> OBJ-> DROP ->LIST Turn b(s) into a list > SWAP FFT Change B to freq domain > OBJ-> OBJ-> DROP ->LIST Turn b(s) into list > * Multiply in freq domain > OBJ-> 1 ->LIST ->ARRY Turn c(s) into vector > IFFT Change c to time tomain >> > > Here are my results. I round any 1E-15 numbers to zero. > > B: [ 1 1 1 1 0 0 0 0 ] > A: [ 1 1 1 1 0 0 0 0 ] > > C: [ 1 2 3 4 3 2 1 0 ] > > B: [ 1 2 3 4 5 6 7 8 0 0 0 0 0 0 0 0 ] > A: [ 1 2 3 4 4 3 2 1 0 0 0 0 0 0 0 0 ] > > C: [ 1 4 10 20 34 51 70 90 101 102 92 70 44 23 8 0 ] > > When the vactors are of different length, or not of length 2 exp(n), > fake it. Remember: same length; length is a power of 2; last half > at least is all zeroes. > > B: [ 1 3 5 3 1 0 0 0 0 0 0 0 0 0 0 0 ] > A: [ 7 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 ] > > C: [ 7 24 46 43 29 14 5 1 0 0 0 0 0 0 0 0 ] > > Given any two vectors, the following program will expand them and > pad them to match the rules: > > << > DUP2 SIZE EVAL SWAP > SIZE EVAL MAX Find the size of the longest vector > LN 2 LN / .0000001 - > CIEL 2 SWAP ^ 2 * Determine the size necessary to fit rules > -> B A SC B Vector, A vector, Size of C vector > << > B OBJ-> OBJ-> DROP Open up the B vector > WHILE DUP SC < > REPEAT 0 SWAP 1 + Pad it with zeroes > END > 1 ->LIST ->ARRY Wrap B up as a vector > > A OBJ-> OBJ-> DROP Do the same with A > WHILE DUP SC < > REPEAT 0 SWAP 1 + > END > 1 ->LIST ->ARRY > >> >> > > So if I start with > > 2: [1 3 5 3 1] > 1: [7 3 2 1] > > this second program gives me the vectors shown in the last > example, and we are ready to convolve them. ==== Is there a program to display GPS data from an attached NMEA speaking receiver on at HP48GX. If so, what is it's name and where is it located? Any information would be appreciated. TIA Vic Fraenckel victorf@wizvax.net ==== Title: GxPS v1.0 Beta Class: Communications Author: Jason Grant Supported Platforms: S/Sx/G/Gx Suggested Locations: http://hp48.ml.org/utils/comms/ GxPS is a collection of programs for the HP 48 to exchange various data with a Garmin GPS. Features: o Waypoint upload/download for many models, including the GPS 45, 12(XL), II(+), and III. - waypoints are presented in an easily viewable/editable format - supports icons to some degree (numbers, but not graphics) o Get position from GPS (all models) o Get time and date from GPS (all models) o Synchronize the HP's clock with the GPS's o Display GPS version information (all models) o Turn off GPS You can find it at http://hp48.ml.org/ under communications programs My hp was stolen and I am a college student that really loved the 42 s. I am wondering what calculator to use now, since I can't find one just like the one that I had stolen. I tried the 32 s II, but it is just not the same. If you ==== Try www.ebay.com They normally have about 30 used HP calcs on sale at any given time. My hp was stolen and I am a college student that really loved the 42 s. I > am wondering what calculator to use now, since I can't find one just like the > one that I had stolen. I tried the 32 s II, but it is just not the same. If you simultanously in order to find the limits to solve multiple ==== > simultanously in order to find the limits to solve multiple > Lifeng: Graph them as a list: example: {'x' 'x^2' 'x^3} 'EQ'-->STO ,Right Arrow-->Plot(check your plot type and parameters)-->ERASE-->DRAX-->DRAW and you should have all your functions on the screen. There may be better ways to do this but I've had good results with this method. Also, have you tried the Erable program? It does a good job with limits. You can download it from www.hpcalc.org/ Hope this helps you - J.C. Randerson http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== > simultanously in order to find the limits to solve multiple > > Lifeng: Graph them as a list: example: {'x' 'x^2' 'x^3} 'EQ'-->STO ,Left > Arrow-->Plot(check your plot type and parameters)-->ERASE-->DRAX-->DRAW and > you should have all your functions on the screen. There may be better ways to > do this but I've had good results with this method. Also, have you tried the > Erable program? It does a good job with limits. You can download it from > www.hpcalc.org/ > For some stupid reason I said Right Arrow instead of Left Arrow in the first message - J.C. Randerson http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own > http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own ==== > simultanously in order to find the limits to solve multiple You can only do multiple graphs of functions that can be put into y=f(x) form. Make a list of the right hand sides ( the f(x) algebraics) and store in EQ, then graph as normally. You will get both graphs. Can also work with more than 2 functions, but more is slower. ==== That's not entirely true. You CAN graph z=x^2+y^2 using the wireframe type of graph. Look for wireframe in your manual. On Sat, 28 Nov 1998 19:52:15 -0600, vmhjr@frii.com (Virgil Hancher) > simultanously in order to find the limits to solve multiple You can only do multiple graphs of functions that can be put into y=f(x) form. Make a list of the right hand sides ( the f(x) algebraics) and store in >EQ, then graph as normally. You will get both graphs. Can also work with >more than 2 functions, but more is slower. I would like press control key on my keyboard corrispond to pressing alpha key on the virtual HP. How would I make? How may I communicat between my real HP48GX an the virtual one? ==== How do I enter equations like this into Erable ? y' + ay = 0 i.e.. What is r value if y = EXP(r*x) : y' - pi*y = 0 The answer is r = pi The problem is that I don't know how solve y' equations on my HP48. Eva Hellqvist -------------------------------------------- Fear is that little death that brings total obliteration. I will face my fear. I will permit it to pass over me and through me. And when it has gone past me I will turn to see it's path. Where the fear has gone there will be nothing. DUNE http://perso.cybercable.fr/harold I would like holding down ctrl key on my PC keyboard corresponds to pressing alpha key on the virtual HP48GX. How could I do? Is the way in adding some lines in KML scripts? Sorry for my little English (I'm Italian) and thanks to everyone! ==== I am not big on replying to these news posts, but occasionaly ask a question or two. I really enjoy reading your posts because you are very open minded accepting the good with the bad. Keep up the posts and keep us laughing!!! ==== About a week ago my beloved G began freezing in the middle of what I was doing. Around 60% of the time I turned on my calculator (and within 5 minutes in the other 40% of the the time) the number 4 would appear in the entry area. After performing numerous ON-C's and manual resets (hole under foot) and being unable to correct the problem, I did an ON-A-F (NO) -- same problem. Having left my batteries out for 6 days, I replaced them this morning, selected NO on the recovery screen and was greeted with a 4 on the stack. It was only then that I remembered a post about key contacts and loose cases. Though mine has never been opened, gently flexing or squeezing the case does seem to correlate to the 4 key being pressed. Is there any way, without opening my calculator, to remedy the situation? Inventive solutions allowed -- not enough money to buy a replacement. -- Brought to you by the little, green men on my shoulder. Avi Zollman......................avi.at.zollman.dot.com ==== AUGH!!! Dagnabit! Now it won't even turn on. Looks like it's Office Depot's problem. -- Brought to you by the little, green men on my shoulder. Avi Zollman......................avi.at.zollman.dot.com ==== How do i show time and date in URPL?? > How do i show time and date in URPL?? Show it where? At the top of the screen? -40 SF ----------------------------------------------------------- With best wishes from: John H Meyers ==== On Sun, 29 Nov 1998 21:50:36 +0100, Kristoffer Lidman : How do i show time and date in URPL?? Well, how about << DATE TIME AND >> ? I don't know why you'd want to AND them, that's only useful for binary values, not for normal numbers... If you find the format in which date and/or time is returned to be a bit unclear, try << DATE TIME TSTR >> My .02 Pete ==== No, I mean to show the current time and date in my program, for example in a MSGBOX ==== > No, > I mean to show the current time and date in my program, for example in a > MSGBOX Try DATE TIME TSTR to get a string with the day of the week, date and time in it, suitable for DISP or MSGBOX Or you can then SUB out the parts you want to use if you don't want the whole string. Left Arrow 4 (TIME), then click on A or C for the DATE or TIME functions. Andrew. On Mon, 30 Nov 1998 16:37:11 +0100, Kristoffer Lidman No, >I mean to show the current time and date in my program, for example in a >MSGBOX > -- ************************************************************* * Bagshot Road * * * Bracknell. RG12 3PH * * ************************************************************* Showing the time and date: if you have the new g or gx or the even newer gzx 9000... you can hit the blue key, then the CST key, then the FLAG Menu key, then scroll UP to get to the bottom of the listing... then continue to scroll up... until you find the 40's Flag 40 displays the clock & calendar 41 toggles between 12 and 24 hour displays 42 is either mm/dd/yy or dd.mm.yy 43 has something to do with alarms...??? 44 has more to do with alarms...??? if you have an old sx or the older sp 400... these flags should still work... a very useful program to put on a user key is: Input is a flag number, either positive or negative... << DUP FS? :: CF :: SF IFTE >> this will toggle the flag so you never have to learn which setting represents what function...! ==== I need information on the Infra Red settings that are used to communicate with the above HP printer to try and pass data to a Psion3c. Any help would be much appreciated. Please reply direct to me on 999@fraz.freeserve.com Steve Fraser ==== I'm looking for a list with all syseval and libeval for hp48GX. Does anybody know where can i found it? ==== I've got a problem that has me totally stumped. My GX has started draining a new set of batteries every 3 days. Under normal circumstances, I would expect it to grow about 7 centimeters every day due to the amount of energy it consumes. I have tried leaving it without batteries for a week to no avail. I have removed my HP ram cards and done the same. Still no soap or soup. The resistance between the batt terminals reads less tham 1K while the same reading on my SX is significantly greateer. I hate the idea of paying HP (or anybody else for that matter) 102 bucks for a replacement. I have parts from surgery (using a $29 S to repair an SX with a broken screen), but don't have any idea what is causing it to eat batteries. Any help would be appreciated. ==== I read somewhere that this calculators have some kind of diode that can be fried if batteries are put incorrectly, i mean, reversed. If that happen, your batteries last 2-3 days, what it is happening to you. -=UssU=- Steve Olsen escribi .97 en mensaje <73t009$r3p@bgtnsc01.worldnet.att.net>... >I've got a problem that has me totally stumped. My GX has started draining a >new set of batteries every 3 days. Under normal circumstances, I would expect >it to grow about 7 centimeters every day due to the amount of energy it >consumes. I have tried leaving it without batteries for a week to no avail. I >have removed my HP ram cards and done the same. Still no soap or soup. The >resistance between the batt terminals reads less tham 1K while the same reading >on my SX is significantly greateer. I hate the idea of paying HP (or anybody >else for that matter) 102 bucks for a replacement. I have parts from surgery >(using a $29 S to repair an SX with a broken screen), but don't have any idea >what is causing it to eat batteries. Any help would be appreciated. > ==== Not that it has anything to do with the venerable HP48 or the programming thereof, but if you are a collector or have one on your Christmas list, I am selling some antique HP machines on EBAY. HP 12C http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=45730490 HP25C and Box http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=45705541 HP29C http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=45709823 HP25 http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item HP65 http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=45719069 HP21 http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=45739609 Mix takes a ( short ) string of characters, and returns all the possible Permutations of those characters... Name: Mix CheckSum: # B550h Size: 250 Author: T.Wanda ABCD 250 * .00117 = .29299 size .mmss The time fluctuates wildly, as the technique used here is to simply scramble the characters, check to see if the latest combination in on the list, and if not, add it to it. At the beginning of the program, the number of Permutations are calculated, and when the list reaches that number, the program stops. While the program is running, The LCD displays; The desired number of combinations, A backwards countdown to that total, And the number of itinerations. It often takes many times the itinerations of the Permutations total to find all the desired sets...??? i think that this approach is actually quite useful when you want to do something like this, but don't really have a thorough enough understanding of the phenomena to write a 'good' program to emulate the data...??? (!) %%HP: T(3)A(D)F(.); << CLLCD { } OVER SIZE DUP PERM DUP 1 DISP 0 -> 191 << WHILE DUP REPEAT SWAP ROT RAND OVER SIZE * CEIL -> pi << DUP pi DUP SUB OVER 1 pi 1 - SUB + SWAP pi 1 + OVER SIZE SUB + >> DUP2 POS << 3 ROLLD SWAP >> << DUP 4 ROLLD + SWAP 1 - >> IFTE DUP 3 DISP ' 191' INCR 4 DISP END DROP SWAP DROP SORT >> >> ==== Although I'm very interested in this area, I'm afraid I'm not the programmer kind, and the only ones I can offer you are those you can get at Eric Rechlin's Web Site. > I have a lot of programs of all kinds, if you wanna interchange some ones > write me: > > > blinking cursor (Like TED) in ML, using FNT1. I've tried this in SysRPL but it's too slow because of the blink and the entry at the same time, so I think ML would be a better (faster) solution. Can someone help me ? Paulo Tavares ==== >blinking cursor (Like TED) in ML, using FNT1. I've tried this in SysRPL but >it's too slow because of the blink and the entry at the same time, so I >think ML would be a better (faster) solution. >Can someone help me ? you can use the assembly entry point EDIT_SBR of the meta kernel that provide a one line ML editor. here is the doc: 4.2.4 EDIT_SBR Adress C0053 Description Mini .8editor Call INIT_DISPLAY_LINE first. Input R4 = Screen address. Ca = Max NB of character to input. D1 = Address of the output buffer. ST9 = set to one to use the mini font. Output carry set if the user press the ON key. -- A+ Cyrille de Brebisson Le Meilleur moment pour planter un arbre etait il y a 20 ans. Le Deuxiemme meilleur moment est maintenant The Best Time to plant a tree was 20 years ago. The second best moment is now. http://www.capway.com/brebisso did you take a look at the sources of JAZZ ? Maybe there are the commented sources for TED. The sources of JAZZ can be found at http://www.hpcalc.org Greetings Raymond ==== > blinking cursor (Like TED) in ML, using FNT1. I've tried this in SysRPL but > it's too slow because of the blink and the entry at the same time, so I > think ML would be a better (faster) solution. > Can someone help me ? What should the Code do? Show an entry line? And where? And what should it to after the user typed in something? Put the string on stack? -Gilb- 00 E2 22 76 58 1F 72 BA EA 94 78 F3 A2 63 E0 94 ==== : Can anybody tell me what good will an IR upgrade do??? Depends on which one. If you mean the one where the resistor in the receiver is replaced, you'll get double the reception range. (That brings the reliable data transmission range to a whopping 1.5 ft if both HPs are upgraded !) Further decreasing the resistor apparently (haven't tried it on my GX) brings no further increase in range. BUT it does bring increased power consumption. ==== So the way I see it its not really worth the time as well as battery life.... : Can anybody tell me what good will an IR upgrade do??? > Depends on which one. > If you mean the one where the resistor in the receiver is replaced, you'll > get double the reception range. (That brings the reliable data transmission > range to a whopping 1.5 ft if both HPs are upgraded !) > Further decreasing the resistor apparently (haven't tried it on my GX) > brings no further increase in range. BUT it does bring increased power > consumption. Pete > Ok, I will upgrade to ROM 1.19-6. BTW, I have found the .zip for this update in hpcalc.org, but not in the official HP web site (?) ==== I'm trying to integrate this polynom step by step (not using the inbuilt function): X^2+1 ------- X^3+8 First I FACTOR X^3+8 and the run PARTFRAC on the whole expression then PARTFRAC again on ((7X-4)/12)and get: (5/12) (7/12)X + (-1/3) ------- + ------------------- (X+2) X^2-2X+4 This is now almost what I want. I still want to break up the last expression to (7/12)X -(1/3) ------------ - ------------- (X^2-2X+4) (X^2-2X+4) What function do I have to use to do this? I've tried FACTOR,EXPAND,PARTFRAC but nothing seems to do it the way I want. I now how to do it on paper but I would like to know how to do it on the calc. Now it's much easier to integrate these three expressions. I have calculus test next week and just the answers isn't enough :-( Andreas Doktar I have a problem with the program, I launch an X server on my calc with XSERV command (cant find the shortcut), then I launch ==== R-shift RELEASE Right Arrow (holding the shift puts it in kermit server) This happens to me as well sometimes. There are two versions of the Xmodem connectivity kit on hpcalc.org (at least I assume that is what you're talking about). One is called HP49 xmodem.... while the other is called Xmodem Connectivity kit (new) or something like that. One of these executes a few commands to try and do an object fix on the objects so you don't have to do it manually. Sometimes this causes the files to dissapear for some reason (at least I've had it happen to me). If this happens, I sugggest you try the other ==== I love the HP community, compared to the one of the ti89 which is made of lamers, not saying that the ti89 is shit, its a great calculator, it took a long time for me to choose, its finally the quality of the community that motivated my choice (i chose the the hp ;-) ) and i am not disappointed every time i have a question, i get all the answers i need.Thanx to you HP gourous... Anyway, i am just encouraging this community and i hope the flame will never die.... Matthias 'Anarchy' LOPEZ GjzD7.5883$xS6.6530@www.newsranger.com... ==== Me too. It is a lot of fun (as well as educational =). ==== Well, I think that the equation balancer in Chemlab has a more general approach than EQBIL. In fact, with the Chemlab Eq. bal. you can solve I think that you can press [ATTN], but using DBUG & SST or [CONT] doesn't work like in the 41CX (and sometimes at all) AND What is more frightfull is something like interrupting SINV with [ATTN] The in-place matrix inversion interrupted gives a corrupted matrix. Why not include a question like: Do you really want to quit? [QUIT| | | | | | | | | |CONT| AND ==== Fully agree with you Bhuvanesh. It would be so nice if there was a way ==== Macro, First, when the input is tested, i do it after the user accepts the inputform (so after OK) not after the input of a field. I find it much easier to do it in the messagehandler IfMsgOKKey but i can imagine that it must be done when the user enters the value in a field. The IfMsgSetFieldValue and IfMsgGetFieldValue can be used to store and retrieve data form memory in an otherway than the user has given, see Informbox.h. To test the input i do it after loosing the focus. Example; ' :: IfMsgLooseFocus #=case ( stack: number of field that will win the focus ) :: FLASHPTR IfGetCurrentFieldValue ( stack: nr, value of the field ) ( do the test or other ) ( stack: nr ) TRUE ( TRUE or FALSE, doesn't matter ) ; ; Maybe there are other solutions, i find this the easiest way to do it. Pieter ==== Al d 216 Tue, 30 Oct 2001 09:11:14 +0100, Pieter I take inspiration by the Sample Size field in any of the Confidence Interval input form (look in the statistic menu). If I insert a negative number in this field a message appear and I am forced to insert a positive number or to abort. Well, my lack english language knowledge appears here. I remember that in informbox.h there are some commands about the focus , but I have not understand what focus means. May you explain it to me? What does it mean winning or loosing the focus? (I am sure that this is a stupid question...) ==== because you have :: test case :: ..... ; TRUE <- If test is true this TRUE is skiped! ; Ok you are geting errors but maybe it's not only to say true/false error what's is the stack interface of that message handler? I don't have documentation near so.... But the second one should run, it does to JYA is it? ==== Marco, When a field has the focus than you can enter data in the field, you can also say that the current field has the focus. After entering characters you ==== Look again at what case does. It skips the remainder of the secondary once it executes. The difference: :: TRUE case %1 %2 %3 ; Leaves 1. on the stack. Changing TRUE to FALSE leaves 2. 3. on the stack. :: TRUE IT %1 %2 %3 ; This leaves 1. 2. 3. on the stack. Changing TRUE to FALSE leaves 2. 3. on the stack. ==== APPSman has considerably be improved in version 9.2001: ftp://ftp.math.fu-berlin.de/pub/usr/raut/HP49/tools/APPSman.zip Members of the APAR-list can now also be global names and single commands - no matter whether rompointers or not. For instance, STARTUP may appear as a member of APAR and will of course be executed if pressing OK on the highlighened STARTUP item in the APPS frame. - Wolfgang PS. Since APPSman is small, you load it one sec with the PC Connectivity Kit. For loading the huge extable, Emacs and SDIAG, I recommend the HP49 Conectivity Kit ==== I'm here with James. Just say Yes! to Bill !! ==== You may switch your calculator to complex mode and then solve ==== [1 0 0 -8] PROOT will give you [ (2,0) (-1,1.7320...) (-1,-1.7320...)] Andrew. They are protected by an unregistered version of FileOpen. Unless you can un-protect them you do not have the ability to edit the PDF documents, etc.. You can get a copy of a utility, Advanced PDF Password Recovery which will eliminate the FileOpen protection. YOU MUST GET VERSION 1.31, which is an older version. The latest version 1.33, does not have the ability to get rid of the FileOpen protection. Some people have also reported that they get an error message that the ==== I have uploaded Emacs 1.07. Until it shows up on Eric's site, you can also get it from http://zon.astro.uva.nl/~dominik/hpcalc/emacs/emacs107.zip RECENT CHANGES ============== 0) ROM 1.19 required!!!!! Any of the 1.19-X version will do. 1) Several changes have to do with the Help that Libraries can provide for their commands via the EXTPRG mechanism. Check out Wolfgang Rautenbergs OT49 for an easy way to add help to a library. Emacs can access and display this help in various ways. - The RPLCPL choose box has a HELP key to display library provided help. - The SDIAG command shows library provided help on commands if the SDIAG key is pressed long, or if no stack diagram is available. This makes SDIAG a general help key. For example, to see the stack Diagram of the UserRPL command EXPAND, press the SDIAG key in any of the following situations: - EXPAND or {EXPAND} or EXPAND (the romptr) on the stack - In the command line, when the cursor is on or after the word EXPAND . - When editing a MASD source file and the cursor is on or after xEXPAND . Pressing the key slightly longer in any of these situations will directly dial through to the CAS help text on EXPAND. 2) The SDIAG database has bee upgraded. - SDIAG.lib is now based on the big Entry database at http://zon.astro.uva.nl/~dominik/hpcalc/entries/ Since we do have stack diagrams for so many entries now, the lib got very big and we have made several versions with different content/size (see Installation ). The largest version contains almost 4000 stack diagrams in 55kB. - SDIAG.lib also contains stack diagrams of a few unsupported but stable pointers. Put the cursor on the address and execute SDIAG. 3) Other changes - Default assignment for SDIAG is now LeftShift&LEFT. - RPLED can edit strings containing NULL characters (ROM 1.19-6 required, I think). This still fails for very complicated strings, because MASD has still some problems with compiling decompiled strings. One of the last remaining MASD bugs, I think. - RPLCPL automatically quotes some ML entries with problematic names, like ==== Same here. Hm, a search on Altavista produced: http://wp1.superpages.com/wp/results.phtml?SRC=altavista&STYPE=WS&PS=15&PI=1 &WF=paul&WL=nelson&T=corvallis&S=OR&STYPE=WD&search=Find The current PALM platform isn't powerful enough to emulate a HP48/49. But ==== It needs more powerfull.. at least for emulation. Having emu48 soruces was easy to compile them for WinCE because development tools for WinCE are free. PalmOS and WinCE are nice OS with free dev tools to develop a ==== I had 48g. Now i have 49g. just buy 49g if you can. (49g doesn't have IR port so you can't use it as remote controller for your tv - exactly what my friends at similar university here in Croatia like to do to impress their friends) ==== Equation: sin(x)=cos(x) Solution is: I need to use the command RCIJ in a SysRPL program, but there doesn't seem to exist an xRCIJ command in the rom. The closest I can get is the ^MATRIXRCIJ, but this command crashes my calc (at least my simulator). Is there anything I can use instead?? I've tried to use the command as describes in OK, I'll take a look at Ebay; now I have a good reason to buy a second calculator! Waldemar P.S. exzessiver Gebrauch von Smileys desensibilisiert ;-) 212hhh ... -- In a cruel and evil world, being cynical can allow you to get some entertainment out of it. --Daniel Waters