D-139 ==== Does anyone know if the HP49 can be set to not transform vectors into quadrants one and four? Example When entering this vector r=4 theta=2 phi=-1, It will be displayed as r=4 theta=-1.14 phi=-1, because the caluculator does not work in the left two quadrants. Is there a way around this it realy messes up magnitude and unit vector calculations. I am trying to get around converting everything to cartesian coordinate systems by hand before doing the real calculations. Anyway, if anyone knows a work around I would appreciate it. Or if anyone has written some good vector manipulation programs I would like to know. I use vectors alot in electromagnetics. ==== What you mean is that you set 3-D coordinate display mode to SPHERE, angle mode to RAD, and then you entered (with angle symbols) [ 4 <)2 <)-1 ] and then the calc displayed [ 4. <)-1.14159265359 <)1. ] (note that the sign of phi has changed, and is not as you posted) Note that 2 + 1.14159265359 equals pi When you entered phi as a negative value, you flipped the orientation of the vector in real space; the calc displays only physically meaningful positive values for phi, and shows the real cylindrical quadrant. Give that calc an A in vector coordinate transformation :) ==== It remains to be seen whether this is another source of the apparent discrepancy between expectation and result, but if we say DEG SPHERE and then enter the rectangular 3D vector [ -3 -4 0 ] it displays in spherical polar coordinates as [ 5 <)-126.869897646 <)90 ] The angle <)-126 (theta) is in quadrant III, right? What about <)90 ? Well, the calculator is measuring angles between the vector and the Z-axis, which range from zero to 180 degrees, with 90 degrees representing vectors in the XY plane (Z=0), but if the user is thinking in terms of measuring the angle of *elevation* from the XY plane (-90 to +90), then that angle is the *complement* (90-phi) of the angle which the calculator thinks in terms of. Given r, theta, and *elevation* angle (on separate stack levels), to convert to a vector in *calculator* spherical coordinates (r, theta, phi), use << SIN ACOS SPHERE ->V3 >> '->v3' STO And to do the reverse: << SPHERE V-> COS ASIN >> 'v->' STO ==== I'm working on the corresponding compressor, but it has turned out to be a depressing task. For example, the grobs cannot have more than 255 rows or columns (HP reserved only two nibbles for these fields). I don't think it's the most suitable option. HPThifu, if you know bz or tnt, why not use them? If you need the fastest runtime decompression, try Mika's UPK in GD#10. http://www.hpcalc.org/viewzip.php?id=241&file=UTILS/UPK.DOC ==== I'm sorry, I left out a very important detail that caused me some headaches in the beginning too. To use that lib you HAVE to be in approx mode, not exact. Switch to aprox. mode and enter your matrix or if you already have it on the stack, just press RS [ENTER]. The program does not support ZINT's. All your problems should vanish now. PS. A shortcut to switch to approx mode is RS [ENTER] hold. ; ==== Also try searching Google for posts that contain the word ESD with Dave Arnett as the author. My 48GX that failed this test passes when I put RAM cards in both slots. The fact that the ESD test only flashes momentarily is normal on 48G[X] calculators; it does exactly this on my 48G (rom M) and 48GX (rom R), which were both manufactured in 1993 in Singapore (where everyone is evidently trained to take stop-action flash pictures using only their eyes :) Now I recall reading somewhere exactly what the bars mean, which is similar to NOTBAKcase but also deals with access pointers. I cannot find NOTBAKcase in the '49G. The '48GX address for accNBAKcase is 71BB6. . I suspect that you just got the problems that I had with infinity. Your HP49G takes infinity for a name, a variable which has no value. Enter infinity on the stack. If you see 'oo' (with quotes), then, press [ON]-[C] for a warmstart. Then, enter the integral, enter 'X=TAN(Y)' and press SUBST. Take the resulting integral on the EQW and EXPAND the integration limits ATAN(-inf) and ATAN(inf). They will be EXPANDed to -Pi/2 and Pi/2. Press ENTER to put the integral back to the stack and press ->NUM, so that a numeric approximation is calculated. (Be patient, this takes time...) Does it work now? I don't know how and why the infinities are sometimes taken for names, but when this happens, the only thing that I know is to warmstart. John has explained that it might happen because .. but then the question remains, how the heck this can happen ???? :-/ ==== The HP49G can't collect int(e^(-x^2/2)dx, x=-oo .. +oo) * int(e^(-y^2/2)dy, y=-oo .. +oo) to int(int(e^-(x^2+y^2)/2)dx, x=-oo .. +oo)dy, y=-oo .. +oo). (Except if you wrote some program that does some MATCHing ;-) ) So the nested integral has tho be entered manually. I left the exercise for the HP49G. I didn't manage to get the SUBSTitution right. I enter x=r*cos(v) and press SUBST. The result is: int(int(cos(v)*sqrt(e^(y^2)*e^(r^2*cos(v)^2))/(e^(y^2)*e^(r^2*cos(v)^2))dr, r=-00/cos(v)..oo/cos(v))dv, y=-oo..00) Trying to EXPAND -oo/cos(v) returns +oo. (?????) Now, the second SUBSTitution y=r*sin(v) renames the existing integration variable r in the integral to rt. So the question still remains, can all the re-writing be done on the HP49G? . ==== What do you get as solution for the differential equation on your TI89? I managed to get a solution by doing the substitution Y(X)=P(X)*EXP(alpha*X), dividing by EXP(alpha*X), and then trying a polynomial for P(X). This results in alpha=-a1/a0 and a set of recursive definitions for the coefficients a2, a3,...an of the polynomial, leaving the two coefficients a0 and a1 as free parameters, which can be adjusted according to the initial conditions. This solution alone gives a huge spectrum of different polynomials, which multiplied with EXP(alpha*X) satisfy the DEQ. But I suspect that Y(X)*P(X)*EXP(alpha*X^n) would also do. (n is integer and P(X) some polynomial of X. How does the TI89 represent this huge spectrum of solutions? ==== I get (translated into HP'ish) 'Y(X)=n1*COS(X)/X+n2*SIN(X)/X', which checks out. ==== could it be that some of the solutions P(X)*EXP(alpha*X) are the oscillating solutions with an imaginary/complex alpha? Anyway, Y(X)*P(X)*EXP(alpha*X^2) is also a solution with the remarcable property that a0 and all even coefficients vanish. Could that family of solutions be related to Y(X)=n1*COS(X)/X+n2*SIN(X)/X' with n1=0 ??? It is a1 and all *odd* coefficients that vanish. The coefficient a0 and alpha are then free for choise. Some polynomial of this family *could* correspond to Y(X)=n1*COS(X)/X+n2*SIN(X)/X' with n2=0 and ==== Lists of numbers are often directly transferable, since their structure is unchanged and their prolog word (ROM address of each object type) is also unchanged between 48 and 49; however, there are particular values of real numbers (e.g. single-digit integers) which are usually abbreviated in the calc by using direct ROM pointers to identical-valued real numbers, and these few values are unfortunately *not* transferable. Take, for example, the list { 1.23 4 }; if this list is created on an HP48, then transferred in binary to an HP49 (where it appears as a string beginning with HPHP48-x) and then fixed with the FIXOB program (which basically just accepts the wrong HPHP48-x binary prefix, after checking for a valid single object within the transferred string), then on the HP49 you end up with { 1.23 External }, in which both the list itself and the real value 1.23 are completely compatible between 48 and 49, but the HP48's internal ROM address which it used for the common real constant 4. is not compatible with the 49's ROM address for the same constant. There is a little trick which can be used to get around this problem, which relies on the fact that no internal ROM addresses are used for real values in numeric arrays (vectors and matrices), so all that we need do is to change any list of real/complex values into a vector, e.g. { 1.23 4 } LIST-> ->ARRY, giving [ 1.23 4 ], which can be transferred with no problem to the 49, where an AXL command will transform it back into the original list. In general, binary real/complex arrays and ordinary graphic objects (not grey-scale) are completely compatible between 48 and 49. Before transferring a numeric array from a 49 to a 48, however, be sure to do ->NUM on it, to make sure that it really is a numeric array, because HP49 symbolic arrays, which may look just like numeric arrays when displayed, may still be an object type with a structure completely unknown to any HP48; the ->NUM command will convert its new type to the old type, which can then be transferred. Programs named FIXOB, OBJFIX, or FIXIT are available to make any HP48 or HP49 try to extract binary objects from transferred files which may have come from a different calculator type; these programs at least make a superficial test of object validity, to protect against an immediate crash if the object isn't actually valid at all. If you simply use a hex editor on your PC instead, to change a binary object file's prefix from HPHP48-x to HPHP49-x (or vice versa), it will be okay if the object is valid in its new home, but take note that you might get a crash if by any chance it is not. Eduardo M. Kalinowski's hpconv program can also be used on a PC (or can be compiled for other platforms); hpconv attempts to analyze and translate saved binary object files, converting supported ROM pointers using ROM address tables; hpconv does work, for example, to convert the list { 1.23 4 } (where 4 is an internal ROM pointer, rather than the actual value) from an HP48 binary to an HP49 binary, or vice versa. Hpconv should also work to convert many UserRPL and some SysRPL programs, in binary form, but I have no experience to know how wide a range of objects it can handle. Hpconv (Windows executable and source for version 1.4): http://www.hpcalc.org/hp48/pc/programming/hpconv14.zip http://www.hpcalc.org/hp48/pc/programming/hpconv14.tgz [r->] [OFF] ==== andreaskoeller2000@yahoo.com (Andreas Koeller) wrote: Strictly speaking, this is incorrect -- it depends. Many (most?) FFT programs nowadays are mixed-radix, and so they do not require a length that is a power of 2. -- Bhuvanesh Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== Yes - the FFT doesn't require a power of two, but many implementations do. This is mainly due to the compactness of code on a binary machine. If I recall correctly, the mathematically most efficient FFT radix is 3... Regards Steen ==== Steen Schmidt wrote in message news:... And this is one of those implementations. Dan ==== I've noticed somehting odd, while doing some debugging... When *exactly* does MENU (or TMENU) update the screen? Is there any way to force the update? My program does not display the menu *when* I expect it, and does not at all, if I am single-stepping through the program (although pressing the SST key produces the correct result as if the menu had been displayed)... I've looked through the AUG, but it says nothing about when the screen will update. It appears that MENU does not update at all, until control is passed back to the keyboard (in my case when a 'key wait' state occurs..but NOT when in debug...?????) Can anyone help? Geoff NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Aaaahhh!! There's a solution... but I can't remember I'll work on it Regards Raul R. G. Newbury escribi227 en el mensaje news:JcldVHe8EppF-pn2-37vTYpyF7YCs@localhost... NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Perhaps I didn't understand you... What do you want? a) updating during prg execution b) upduting during prg debuggin If a), -1 WAIT for b) my calc does it exactly when TMENU is executed... Can you give us more information? R. G. Newbury escribi227 en el mensaje news:JcldVHe8EppF-pn2-37vTYpyF7YCs@localhost... References: NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== R. G. Newbury (Geoff) wrote: The entire display (stack area, status area, edit area and menu) is generally updated all at once, but only when the calculator is ready for more user input, which most commonly is after your program has finished and has returned to the operating system, as you've noticed. When you want to wait for a keypress using 0 WAIT, replacing 0 WAIT by -1 WAIT encourages the system to immediately refresh the graphic image of the menu area, which otherwise it will not do. You can also immediately refresh the menu image at any time (although the menu is used to label keys which your program or the system may not yet be ready to accept) by calling the internal system entry point DispMenu.1 (exactly as does -1 WAIT). You can even immediately refresh the entire display at any time, by calling SysDisplay (unless there are pending keystrokes in the key buffer, which skips displaying now, on the expectation that it will save time to process pending keys first). [r->] [OFF] References: NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Re: when the screen gets updated HALT also updates the entire screen, so you can insert a HALT and then start SSTing from there. [r->] [OFF] ==== I write a bit earlier about that malicous cable I bought. All self tests seem to work, except the FullROM test (7, after pressing [on]+F4 at the same time). It says: Lines: 4 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2615.200 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2615.200 ==== Which are the differences among Home,port 0,port 1and port 2? Thanks... ==== Emanuele Robibaro wrote in message news:i2fe8.20163$v7.807810@twister1.libero.it... The home directory is where directories and subdirectories are stored. It is where you will probably save most of your files, at least temporarily. It shares memory with port 0 (aka ERAM). Together they can hold up to about 241KB. Port 1 (aka IRAM) is regular RAM (like Port 0/Home) but is more secure. It can hold up to 255KB. Port 2 (Flash) is flash memory and is the most secure place to store stuff that you will not need to change and stuff that is important. The flash can hold up to about 1 MB (1024KB). It does not depend on batteries. Ports can not be broken into subdirectories (only Home can). Ports can hold libraries and backups. All above info taken from Advanced Users Guide page 11-1. -Scott Content-Transfer-Encoding: 7bit ==== On Mon, 25 Feb 2002 00:43:06 GMT, Scott Spillman wrote: Here we have another example 49 manual's poor quality. This time it's in the form of inaccurate or blatantly false information. Specifically, Home and port 0 together are referred to as IRAM. ( they have been since the SX. In that case the acronym was literal since IRAM was the only Internal RAM present in the machine. ) Port 1 (which is actually composed of two independent 128K memory banks (more accurately the CE2 and NCE3 memory controllers - what used to be port 1 and 2 in the GX ) ) is referred to as ERAM. Hope this clears things up... ---------------------------------------------------------------------------- --- Jonathan Busby - Remove the random permutation of NOSPAM from my e-mail address before replying. ==== I've looked around at hpcalc.org, I've searched the cshp48 archives on google. Didn't find anything that matched my problem: When I connect the serial PC-link cable to my HP49, it locks up and the screen just shows vertical lines and blocks. It doesn't matter which serial port I use on my PC. I can't reset or boot the calculator (not to mention do anything useful) until I unplug the cable. When I turn on the calculator afterwards, it resets by itself and the screen contrast is set rather dark. Has anybody experienced this before? Roman -- It compiles. Let's ship it! Organization: Halfling Soft MIME-Version: 1.0 ==== On Tue, 26 Feb 2002, Roman Katzer wrote: I hope you're not using the cable that comes with an HP200... Even if the connector is physically the same, the signals are definitely different. This kind of cable *must not* be used. -- Erwann ABALEA - RSA PGP Key ID: 0x2D0EABD5 ----- Je ne suis pas capable d'entrer dans mon logiciel Outlook,car a chaque fois que j'essais je suis oblig216 d'y aller de mani217re autonome. -+- AL in : Guide du Neuneu Usenetien - Frappez avant d'entrer -+- References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014745650 208.145.205.253 (26 Feb 2002 11:47:30 -0600) Lines: 24 ==== Roman wrote: Where did you get your cable? Is your cable listed here: http://www.HolyJoe.Net/cable.htm Previous discussion: http://groups.google.com/groups?selm=2953da04.0112181917.6a8abb86%40posting. google.com If that doesn't resolve the situation, does your calc serial# start with ID93... (or lower) ? [r->] [OFF] -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- NNTP-Posting-Host: synergy.kawo2.rwth-aachen.de ==== Hi John, On Tue, 26 Feb 2002 11:58:14 -0600, in comp.sys.hp48 you wrote: At a local store which does carry HP49Gs. Seems like I have the first kind. Darn that *censored* store! Thanks for the info! Roman PS: sorry, pm was unintended. -- Insomniac programmer: while (!asleep) sheep++; ==== I did, my memory is intact :). Now my question is, Pivo, you've had this happen many times? What? Is this common? Is it a rom version issue, i'm still using v18? Thanks for the advice, Mark NNTP-Posting-Host: dutw623.wbmt.tudelft.nl Mime-Version: 1.0 ==== Mark wrote: Yes, I am capable of multiple paperclips in one night! :-) Your crash looks a bug in the EQW or a low memory bug. I could find anything of the sort that has been fixed. If it happens more often report it Ususally when debugging some of my larger ML programs. Three times a week perhaps. It isn't, but I urge you to upgrade to 1.19-6 it is much more stable to see what has been fixed (or changed) take a look at: http://www.hpcalc.org/viewzip.php?id=3240&file=49.html You're welcome -- This message was written with 100% recycled electrons Pivo ==== Who is the problem with the Erich's homepage ? I use the URL ca-on.hpcalc.org, but I can't find te page since the tuesday of the last week. Can you help me? Sorry my english, I'm chilean, this is my first message :-))))) ... References: <85c61b5b.0202261200.68b5c2ef@posting.google.com> NNTP-Posting-Host: 3639245663.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== Juan de Cartagena wrote: www.hpcalc.org, http://hpcalc.beachnet.org, and http://ca-on.hpcalc.org all work for me. Not perfect, but close enough so that I can understand it. Regards, James ==== Hi, John. Sorry for replying late - no web access at weekends. Now you know how I waste my free time! You're right about the NoEdit?case stuff: Much ado about nothing ;-) I've noticed that InitEdModes is not needed at all, so I guess the following routine should suffice... UPKEY v3 :: TakeOver EditExstCase :: GOTO PTR 3B382 ; CHR 90 DoKeyOb ; ...but just for the curious. Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - ==== Hi, John. Sorry for replying late - no web access at weekends. Now you know how I waste my free time! You're right about the NoEdit?case stuff: Much ado about nothing ;-) I've noticed that InitEdModes is not needed at all, so I guess the following routine should suffice... UPKEY v3 :: TakeOver EditExstCase :: GOTO PTR 3B382 ; CHR 90 DoKeyOb ; ...but just for the curious. Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - ==== Hi, John. Sorry for replying late - no web access at weekends. Now you know how I waste my free time! You're right about the NoEdit?case stuff: Much ado about nothing ;-) I've noticed that InitEdModes is not needed at all, so I guess the following routine should suffice... UPKEY v3 :: TakeOver EditExstCase :: GOTO PTR 3B382 ; CHR 90 DoKeyOb ; ...but just for the curious. Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - References: <3C74B0B1.9040101@messages.to> <69197042.0202231356.211f55d4@posting.google.com> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014707345 208.145.205.253 (26 Feb 2002 01:09:05 -0600) Lines: 43 ==== Karl Nelson asked (message is below). Kalinowski's tutorial basically takes care of all explaining, although most everything is right there in Mika's very condensed digest. Keep looking; perhaps, like many little puzzles, the whole thing will just suddenly flash Eureka (but don't run down the street dressed the same as Archimedes :) Some file called entries.all lists many unsupported entry points (as they were originally in SX), but so does Mika's ent_srt.zip Email at my-deja.com is now gone for good, isn't it? (Google announced that it would be dropped in December 2001) ----- Original message ----- Would any kind soul like to expand section 1. Introduction to this document a little so we who are _not_ sysRPL gurus can better use it? I don't mean write a sysRPL tutorial, but just a few words on how to use each section and maybe some column headers. (They are not the same throughout the document, it seems.) Sure, it's obvious to the guru, but it would sure help me. Karl. P.S. Are there any other entry lists out there on the net besides this and those on hpcalc.org? There sure seems to be a lot of programs using entries not listed in any of these tables. Example: (from keyman's RclK) ptr 3fbc9. That's a GX-only entry; where is it on the SX? How did the author find out about it? If this (and others I encounter when trying to translate GX->SX) aren't in tables, how could I find them? I assume the people who have made tables had some procedure to help them. -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- References: <3C764096.F3E7BC96@alumnos.uva.es> <3C766129.6C41695A@miu.edu> <3C7663FB.E4AE4C73@alumnos.uva.es> <3C76A0AC.D34E4930@alumnos.uva.es> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== I wrote: M207ximo Casta226eda Riloba replied: So there's an eyewitness report that in rom version 1.05, MAP did what the sample program APLY did on the 48G, without forcing mode changes, etc. But somewhere between then and now (1.19-6), MAP jumped ship and joined the Dark Side, forcing unnecessary mode changes, deleting variables, etc., and finally giving the wrong answer, even to what could essentially be just a simple numeric number-crunching, which should be capable of having an existence apart from the symbolic feature set, should it not? Was that necessary? Anyway, that's why, if you want a simple, good old APLY program, you still need to add one yourself; we provided a universal HP48/49 version earlier in this thread, together with an alternate version which operates on a single column only. http://groups.google.com/groups?selm=ahern-2009991539330001%40whitestar.llnl .gov http://groups.google.com/groups?selm=7rvfb7%24l5n%241%40nnrp1.deja.com But again, did XNUM always go through the whole mode-change and delete variables thing? Are there any parallel universes where the 49G evolved differently? Que sera, sera. [r->] [OFF] Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014744859 208.145.205.253 (26 Feb 2002 11:34:19 -0600) Lines: 12 ==== Even on 49G 1.19-6, one can resort to: [ 30. ] << DEG SIN >> MAP ==> [ .5 ] If you can't join 'em, beat 'em! [r->] [OFF] -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- ==== Tim wrote in message news:... Hi Tim. Perhaps you can use the command TRAN, to transpose the matrix. You can also change the display settings. Press MODE and then the menu button DISP. In the DISPLAY MODES screen, go to the check field Stack: _Small and check it, and the uncheck _Textbook. The objects on the stack will be then shown in the tiny font. Greetings, Nick. References: NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Tim wrote: For displaying as a single column, try: << -55 CF IFERR TRN THEN ARRY-> 1 + ->ARRY END >> For another way to wrap the display of all objects, see http://groups.google.com/groups?selm=871497%24hb8%241%40nnrp1.deja.com (add an obvious missing newline character in the FSEX program listing) However, replace the FONTH program with this better one: HOME 256 ATTACH @ do this first, then enter the following program: << :GetFontHeight: #2623Dh SYSEVAL R~SB >> 'FONTH' STO [r->] [OFF] X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 ==== Is this possible with an hp48g? Nick Karagiaouroglou wrote in message news:cd9ca36b.0202250115.15ea1696@posting.google.com... news:... is matrix font these ==== To use the command TRAN, yes. But not displaying the stack in smaller font, except if you have installed some program that does this. I think, if you have the HP48G without any additional software, it might be better for you, to write some program that displays the matrix row for row (or column for column) as John has already adviced. Greetings, Nick. Tim wrote in message news:... Mime-Version: 1.0 ==== Hi, I'm running Rom 1.19-6 in RPN mode on an HP49G and have the following question: Is there a way I can overlay two plot equations of the Fast3D type? For example, I have the following in my Fast3D EQ list on the Plot Setup menu (LeftShift,2D/3D): { Z1(X,Y) Z2(X,Y) } Where Z1 and Z2 are defined in my Y= Fast3D plot window as: Z1(X,Y)= SQ.Root(1-X^2-Y^2) Z2(X,Y)= -SQ.Root(1-X^2-Y^2) My Plot Window parameters (LeftShift,WIN) are set as follows: X-Left: -1. X-Right: 1. Y-Near: -1. Y-Far: 1. Z-Low: -1. Z-High 1. Step Indep: 10. Step Depnd: 8 I am, of course, attempting to do a Fast3D plot of the upper and lower parts of a transparent, 3D sphere. When I execute a DRAW, only the first equation in the list is plotted. Is this the way Fast3D is supposed to work? I haven't tried WireFrame yet, but would anyone know if WireFrame mode will plot and overlay more than one equation? Thanks. Tom Content-Type: text/plain; charset=US-ASCII ==== No way that I know of (assuming that faces have to be kept opaque). The plotting algorithm is probably made more efficient by assuming that what is being drawn represents a function, therefore I suppose it's totally normal behavior that only one function is drawn at a time. It won't all by itself, but you can draw each surface separately, get the results on the stack (PICT RCL), and then compute an or on the two grobs (PICT GOR). -- David Haguenauer ==== I have an HP48SX that is eating batteries at an alarming rate. After giving it much thought the only thing I could come up with that might kill fresh alkalines in 3 days was if the IR was constantly on. I got an IR detector from Radio Shack and sure enough the IR LED is always on if the batteries have any charge in them. It is even lit when the calculator power is off. Is there a way to disable the IR? I don't really need it. Would it work to simply remove the LED or is there a system check that would fail if I disconnected it? Thanks for your help Tim K ==== kienbaumt@charter.net (Tim Kienbaum) wrote in message news:<63867f10.0202241819.414b072c@posting.google.com>... Hi Tim! There is the command CLOSEIO, which should do what you want. Try it and see if this helps. Greetings, Nick. NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Nick Karagiaouroglou escribi227 en el mensaje news:cd9ca36b.0202250048.7291bd51@posting.google.com... news:<63867f10.0202241819.414b072c@posting.google.com>... ...but if It is even lit when the calculator power is off... References: <63867f10.0202241819.414b072c@posting.google.com> NNTP-Posting-Host: 3639245931.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== R Lion wrote: So it very likely won't help, but I can't see how it could hurt either. Along with Nick's suggestion, try clearing flag -33 and setting flag -34. Maybe a buggy library? Try removing all libraries and doing an ON-C warmstart. Of course, disconnecting the LED should cause any of the self-tests that include the Wireless loopback (IRLB) test to fail. I don't know whether it would cause any non-obvious problems though. I'd save the hardware modification for a last resort. Regards, James NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== James M. Prange escribi227 en el mensaje news:a5drj0$3s3$1@newsreader.mailgate.org... I'm really confused... ==== kienbaumt@charter.net (Tim Kienbaum) writes: Then the calculator is broken. Diagonal cutters. Should be fine. References: <63867f10.0202241819.414b072c@posting.google.com> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Did they forget to have OFF do CLOSEIO in the 48SX? I'll bet on short circuit, if the betting pool is still open :) [r->] [OFF] ==== R Lion wrote in message news:... I remember having read before a looooong time, that the IO port of the HP95LX will continue to consume mAs if the user doesn't de-activate it, even when the HP95LX is off. So I thought perhaps something similar happens with the 48SX, or maybe my RAM cells are getting totaly corrupt and I must reboot. ;-) Greetings, Nick. References: <63867f10.0202241819.414b072c@posting.google.com> NNTP-Posting-Host: 3639245663.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Nick Karagiaouroglou wrote: I'm not familiar with the 95LX, but quoting from the HP 48 PRM, under CLOSEIO: When the HP 48 turns off, it automatically closes the serial and IR ports.... So it seems to me that Tim's problem is very likely due to a hardware failure. But perhaps someone could write malicious or buggy software that would result in the IR still transmitting when the calculator is, or at least appears to be, turned off. If it were my calculator, I'd try to eliminate any possibility of software problems before modifying the hardware. Regards, James ==== Hi, All! I am wondering what is the program that in use on the cover of HP Journal regarding to HP48S/SX (June 1991 Vol.42 No.3). URL: http://library.hp41.org/Library/Files/ppc/hp_journal/hp9106.pdf Best regards, Tal ==== Tal wrote: Thanks for the link, Tal! ;-) Do you mean the User-RPL program starting with the comment line @Program to compute a list of prime numbers, or the PC program running on the HP Vectra? If the former, well it's a User-RPL program that computes a list of prime numbers. If the latter, then oh boy you're looking at the full-featured version of the Program Development Link (PDL or PCLINK II), a great piece of software beta-tested by members of the Handheld and Portable Computer Club (HPCC) in 1990/1991. A demonstration version is available at www.hpcalc.org: http://www.hpcalc.org/hp48/pc/link/ipdldemo.zip I'm afraid that it's no longer sold by HP. I guess the only way to get it complete is to persuade a lucky guy to email his copy ... or if only someone knew a web-site where it could be downloaded ... if only ... http://www.satlan.com/survey/nicklin/data/pdl.zip Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - ==== Steen Schmidt wrote: Excellent, Steen! Maybe I should have provoked you a long time back! ;-) Mathematica would need much more memory than Derive, so it wouldn't be a good idea to use it on a TI-89 (the same way as the Maple-powered Cassiopeia was a bad idea). -- Bhuvanesh ==== This is the first time I'm seeing you getting so defensive, Nick ;-) -- Bhuvanesh nk@imos-consulting.com (Nick Karagiaouroglou) wrote in message news:... ==== timite_h@yahoo.fr (=?ISO-8859-1?Q?Timit=E9_Hassan?=) wrote: Because it is interesting and challenging! It is relatively easy, for example, to port GMP (the GNU multiple-precision library) to the TI-89/92+/V200. There is even an MC68000-optimized version of GMP. A static linkable GMP library for TIGCC would be nice. And look at the progress, even with not much support from TI (besides the SDK and the programming contests): every built-in HP49G command (or almost every command -- I don't remember) has been programmed for the TI-89, as well as several that the HP49G doesn't have. A note: my intention here (or anywhere else) is never to provoke wars -- I dislike both flame wars and real, physical wars. -- Bhuvanesh ==== Oops, I forgot to answer this one... timite_h@yahoo.fr (=?ISO-8859-1?Q?Timit=E9_Hassan?=) wrote: Kind of, except it's numeric. My NSeries program does this. For the tanh(tan(x))-tan(tanh(x)) example to order 7 about zero, I get, approximately: 4.337*10^-7/x^5 - 6.475*10^-8/x - 9.406*10^-9*x^3 - 0.0444*x^7 The first three terms are pretty small, and the dominant term is -0.0444*x^7. -- Bhuvanesh ==== Steen Schmidt wrote: I haven't seen it used anywhere except on the HP49G... He isn't American. I think he was being sarcastic. -- Bhuvanesh ==== timite_h@yahoo.fr (=?ISO-8859-1?Q?Timit=E9_Hassan?=) wrote: That's why we develop our own stuff without relying on TI. This could be considered a numeric matrix inversion problem. There's a fast program for numeric matrix inversion at http://www.perez-franco.com/symbulator/download/am.html I agree. Like what? (Not arguing, just curious... and I mean math stuff.) Well, IMHO it's minor relative to the CAS, but it would be nice to have. -- Bhuvanesh ==== jcrand@pcisys.net (J.C. Randerson) wrote It was the author of the program, *not* TI, who decided to release a Flash app version for purchase. TI cannot sell something they do not own. -- Bhuvanesh ==== jcrand@pcisys.net (J.C. Randerson) wrote: ... and even more problems with Maple! :-) -- Bhuvanesh ==== Steen Schmidt wrote: Gosper algorithm? My NSeries program can do all of these. Let programs reach from one folder to another? Use an absolute reference like myfoldermyprog(). That's what you meant, right? You probably know this, but... Samuel Stearley has written an autocompletion program for the TI-89. -- Bhuvanesh NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== OH NO!!!! Don't start again, please. You are a little late Bhuvanesh escribi227 en el mensaje news:662e00ed.0202241728.550ad12b@posting.google.com... ==== Hi Bhuvanesh! Hmm, now that you say it, I realize that my buffer had an overflow. ...done ...Buffer watcher installed. Buffer will be emptied every 30 seconds. Greetings, Nick. P.S. Too allergic against F22-Raptors and other human made instruments for death and destruction. ;-) P.P.S But the aerodynamics of it....!!!!! lalu_bhatt@yahoo.com (Bhuvanesh) wrote in message news:<662e00ed.0202241649.341a394b@posting.google.com>... ==== lalu_bhatt@yahoo.com (Bhuvanesh) wrote in message news:<662e00ed.0202241801.2d4b144f@posting.google.com>... Well there are better things to do than developping software for and making a company such as TI,earning more money. Especially when this company has such an awful attitude toward those developpers and people such as O.Miclo doing better work for its calculators(for free) them some of these unemployees. And why this algoritm is not built-in and used for numeric matrix computations ? There is a pretty obvious one,the memory management. The limitations input the calculator to solve problems it would have easily solved without them. And they certainly severely slow down the calculator for some complex problems. There is another one given by you. The unability to used nested list. and what about the autosimplification which input you to control the simplification of a result ? Now there are a lot not related to math. In fact PCtools98 enables to manage your datas via a tree directory structure.Unfortunately this directory structure is useable only via the PCtools 98 files manager. ==== Here is my site: http://www.geocities.com/sstear70 My auto completion tsr also suppoorts variables, folders, system variables, and has a replacement for the unit menu that is faster and more efecient. -Samuel ==== lalu_bhatt@yahoo.com (Bhuvanesh) wrote in message news:<662e00ed.0202241710.f3ac624@posting.google.com>... Well i find more interesting to develop softwares for my PC.Especially when you have to develop TI68k software on the PC despite the QWERTY keyboard of the TI92+/Voyage 200. Now tell me,if there is already a M68K optimised version of GMP then it should be easy to port it to the TI68k ? Or have you a lot of troubles with TI68k software limitations ? There are a lot of functionnalities of the HP49G that the TI89 doesn't have even with third party software. What about: I/O protocols ? Built-in SDK ? Advanced memory management ? Fast user language with debug mode and access to a lot of low level functionnalities ? 2 user languages ? Extreme customability ? And believe me the TI89 is very far to have as much functionnalities as the HP48GX if we take in account third party software. ==== lalu_bhatt@yahoo.com (Bhuvanesh) wrote in message news:<662e00ed.0202241728.550ad12b@posting.google.com>... Well i was talking of functions returning exact results.And i was not talking of such a simple example that should be easily solvable by the TI89 if it has the right algorithm and/or no stupid limitations such as the 64 KB one. ==== timite_h@yahoo.fr (=?ISO-8859-1?Q?Timit=E9_Hassan?=) wrote: Hmm, I wonder whether it's possible to write a TSR that maps between a user-input path (e.g. thisisapathfilename) and the PCTools98 representation. I'm not familiar with PCTools98, though, and this might only work for keyboard input. -- Bhuvanesh ==== Sigh. Kevin and I (especially me) over did it with the tsrs. This would be quite hard. A better option would be if Lar's rpn program was modified to support multiple folder heirarchies: it prints one folder name in the status line while another is active. This is quite possible because the folder text in the status is not automatically changed when the current folder is changed. Anyways I think that developement of the rpn program has finished and it is not open source. If it was open source I would already have tried to build options to store stack data to the home history. Or load history pairs into the stack. -Samuel R Lion escreveu na mensagem ... way www.hpcalc.org look for Port or look in GD's(goodies disks) for hiport NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Thank you Regards Raul HPhreacker 2002(250) escribi227 en el mensaje news:a5baoj$61ovd$1@ID-88878.news.dfncis.de... ==== Thanks for your reply, I have attached the library and it is installed properly. Here's what it does: I go to the LIBrary, then hit F key below SIMP to run it. SVEQ and SVLE which are supposed to INIT the matrix and solve it also return that error. If I try SOLVE or TRACE I get a different error that states TRACE Error: Problem Uninitialized. I have tried different matrices all with the same error, but I can get them to work with Simplex 1.04 or RREF. I'm using the latest beta ROM 119-6. Also, I get the same errors with the emulator. Simplex 1.04 works, but the step-by-step mode doesn't show which row operations its doing, and it doesn't always follow the rules of picking pivot points as I understand them. I'm trying to get the SIMP library working to see if it would at least show row operations in the TRACE (step-by-step) mode. Or, perhaps you would know if it shows the row operations? Thanks Content-Type: text/plain; charset=us-ascii ==== According to Google, my first post to this group (which is the only group I'm regularly reading and posting to) is now about a year old. I would like to thank the whole group for the support you have given me in this year, for your help with all sorts of questions and for the nice time I have had in this community. Reading this group has transformed me from an innocent HP49 user to a programming guru, and I hope that I have helped or will be able to help somebody with my own posts. There have been bad news for the group in this year, but I'm convinced that it will live on. Thank you!! Thomas -- Thomas Rast If you cannot convince them, confuse them. -- Harry S. Truman ==== i am having trouble with my 49g. i am trying to learn how to create my user-defined functions. i followed the procedures to the last detail from the user guide, but keep getting invalid definition errors. is there some resource besides the guide that might explain how to create your own functions? also, is there a good resource for those of us new to using hp calculators. i don't want to irritate the expert users that come to this user group for more advanced discussions. any suggestions would be greatly appreciated! X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 ==== goto http://www.hpcalc.org/ m. baumgardner wrote in message news:43936bad.0202231808.4732a898@posting.google.com... Content-Type: text/plain; charset=US-ASCII ==== User-defined functions are nothing more than programs that begin by creating local variables from values on the stack. A function that takes two arguments and returns their sum may be written, in RPN mode, as follows: << -> x y << x y + >> >> An alternate syntax is: << -> x y 'x+y' >> Store any of these programs in 'F' ('F' STO) to be able to call the function as 'F(5,2)' which will evaluate to 7. The second version can be created in the variable F using the DEFINE command: 'F(x,y)=x+y' DEFINE Sure. You can go to http://www.hpcalc.org, then have a look at the HP48 and HP49 FAQs. -- David Haguenauer References: <3053eba9.0202231514.38d6fc3b@posting.google.com> NNTP-Posting-Host: 3639245918.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== Dan Kalish wrote: I note that if I repeat the ON-D G test with more ON-D G tests without doing another ON-C warmstart, I get the same result every time. If I do an ON-C and then try again, I get a different value. The values don't seem to have any correlation to the battery value. Also note that if I do ON-D ENTER to initialize the test time, then ON-D G, and then ON-D T to check the fail time, I see that it does indeed show that a failure occurred. I really don't know what this battery test is good for, on either the S or G series. If I want to test the batteries on a 48, then I try an IR print command. On a 49G, I try copying an object to port 2. So? Just be prepared to do a system halt (warmstart). A system halt: aborts all current execution; clears the stack, the return stack, all local memories, last arguments, the recovery stack, the command stack, and the graphics display; turns off user mode; sets the last error number to zero and the last error message to an empty string; detaches all libraries currently attached to the home directory, and executes the configuration programs of all libraries in the various ports; reestablishes the home directory as the current directory; activates the math menu; leaves global or port variables, alarms, and key assignments unchanged. All flags are also left unchanged, except flag -62, which is cleared. The above is plagiarized from Bill Wickes's HP 48 Insight's book. That's not so bad. Actually, I think it's downright innocuous, particularly if you're expecting it. I only wished that they'd built in a way to skip the library configurations. Note that you have to do a warmstart after any of these system tests. No. The battery test (like a lot of information about these calculators) isn't listed in the User's Guide, but it is listed in Donnelly's Handbook. Regards, James ==== Hi, James: James M. Prange wrote in message news:... ... Other useful tests are: IR-Loopback ON-D EVAL Self-Test ON-E After each of these tests, its necessary to perform a system halt. Just make sure you know how to do it before trying any of these tests. If you're unsure, DON'T. Don't try it on a weekend, when you won't be able to ask your school or HP for help. Is this a feature (a battery test) or an error message? Is this just semantics or is there a real difference? Dan X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300 ==== -- Marco Polo marco.polo@katai.cina --- James M. Prange ha scritto nel messaggio news:a59edb$g7k$1@newsreader.mailgate.org... without do don't I ON-D T failure So, the test fails also in your 48 exactly as in mine. Could you tell model and year? Well, i found something about the battery test fail in the faq. My question is very simple: why the test works fine on my HP48sx rev. E and fails on the three GXs i have tried (all Indonesian, 2001, black screen, rev. R)? Is something going wrong with some calculators produced in a certaint time or *all* the G series fail this way? -- Marco Polo marco.polo@katai.cina --- ==== I´m trying to connect a PC with my HP48 using a home-made connector. But I don't know what could I use in the calculator's side. I´ve heard that some mouses have inside a connector which fits propertly. What mouses are those? Is there any other connector that could be used? Thank you. X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 ==== I found a connector in the little cheapo $5.00 serial mouse that you may find at Target, WalMart or RadioShack, etc. -Jerrod Jose I wrote in message news:a5avhe$5l3ui$1@ID-123492.news.dfncis.de... Content-Type: text/plain; charset=US-ASCII ==== [Hex, Go, Othello] I don't know, but, as a general rule, http://www.hpcalc.org knows. I suggest that you look under the Games/Board category. Your posts will be read by more pepople if you avoid asking the question exclusively in the subject line, by the way. -- David Haguenauer ==== Nick wrote: Just a wild hypothesis, but let's say that somehow the stopsign (where the compiler's upward directory search stops) somehow got set to the *current* directory context, below HOME. That would do it -- all user commands would in fact get compiled as names, much as happens after performing an internal SetHiddenRes (which buries you in the Hidden Directory context, from which you can recover by invoking the keyboard's UPDIR). [r->] [OFF] X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 NNTP-Posting-Host: news4 Message-ID: <3c788e76$1_3@corp-news.newsgroups.com> X-Authenticated-User: 309676343 ==== I have been using the 49G. Between the 48G and 49G I like them both. My room mate has a TI-89 and I haven't used it at all. I've looked at, and that is all. With the options between the TI-89 and 48G/49G, I'd stick with the HP products. If you do get a calculator, I'd go for a 49G. Ya could get my 48GX off of me, but I don't think I want to get rid of it :) Hey, may as well start an HP collection eh ? hehe. Happy calculating ! ==== Hi All, While working in the equation writter my 49 seems to have locked up. The screen has strange characters on it and the only resposes I can get out of the thing are 1)the on button ,on and off no shifting required. 2)beeping when I hold the on button down. Thats it, ON-F3 no response, ON-F1-F6 no response. Is there anything else I can try or am I doomed to the dreaded paperclip fix? Doomed because I haven't backed up recently :( Is this a fluke, a version 18 bug ???? Thanks, Mark ==== The paperclip isn't that bad. I've had many occasions when all my mem was retrieved. Just try it -- This message was written with 100% recycled electrons Pivo ==== mark_emily@hotmail.com (Mark) wrote in message news:<5d6c87f3.0202240102.6e474119@posting.google.com>... PRESS THE RESET BUTTON References: Content-Type: text/plain; charset=us-ascii ==== James M. Prange schrieb: Here's an ML metronome, feed it a real (or ZINT), abort with ON: ( %bpm -> ) EQU ATTNFLG 80EAB :: CK1&Dispatch real :: * Formula to calculate delay loop length * found by counting and using the 49's * stat features * Not really perfect but close -1.14165639069 %^ 12200273.0998 %* COERCE CODE GOSBVL POP# SAVE B=A.A D0=(5) ATTNFLG A=PC ?ABIT=0.0 -> odd { LA 000A0 { LC 800 OUT=C { P+1 UPNC } { P+1 UPNC } C=O.XS OUT=C { P+1 UPNC } { P+1 UPNC } A-1.A UPNC } C=B.A { C-1.A UPNC } C=DAT0.A ?C#0.A UP } GOTO end $0 *odd { LA 000A0 { LC 800 OUT=C { P+1 UPNC } { P+1 UPNC } C=O.XS OUT=C { P+1 UPNC } { P+1 UPNC } A-1.A UPNC } C=B.A { C-1.A UPNC } C=DAT0.A ?C#0.A UP } *end LOADRPL ENDCODE ; ; Tested, should work. Still, better make a backup. Thomas -- Thomas Rast If you cannot convince them, confuse them. -- Harry S. Truman ==== I have written a program that outputs a matrix. Problem is the matrix is too long for the screen. Can I get this matrix to wrap so that a row matrix is shown on 2-4 lines. Perhaps is there an alternative with making the font smaller so the there are more lines on the screen. Are any or both of these solutions possible; how would I achieve them ? Tim ==== Which is the best music player? And where can I find some classical music? Thanks ==== J. Yuan schrieb It depends, my proposal, search for mig on http://www.hpcalc.org/ If you like Bach, and you do not want to create your own songs (only replay): http://www.math.fu-berlin.de/~raut/ If you want to help, debugging a Bach Sinfonia 4, contact me. regards Heiko X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== I do like Bach a lot, in that pack you mentioned, the Bach Violin Concerto for 2 Violins seem to be missing, I would love to hear that. How do you debug the music? How do you enter the notes? Would love to help. Regards, J Yuan Heiko Arnemann wrote in message news:3c78eac9$0$75151$ba620e4c@news.skynet.be... music? Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit ==== Thank you very much. It worked! One more trick in the bag... Mike Bill Storey wrote: ==== Hey I deleted my IOPAR (no i didn't mean too) for my HP48G. Could someone give me the values for it? Thanks, -- OurGodlivz www.RedemptionVA.com Redefining Interactive NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Don't worry: next time you transfer, select your options with the I/O inform and it will be created again. OurGodlivz escribi227 en el mensaje news:btaf8.5137$E11.3662@nwrddc02.gnilink.net... ==== I wrote: Is there a built-in 49G function for the exact integer square root of an exact integer of any size? There doesn't seem to be, for as of 1.19-6, ^ZINTSQRT seems interested only in perfect squares (and otherwise factors the input, sort of), while ^ZSQRT seems to rely upon an extended real approximation, which is useful only for a limited argument size. If not hiding there in ROM someplace, is there then a program for the desired general function? All right, then go away and try to make one, as a Mini-Challenge, just to see how easy it is, or try this Newton's method kluge (must be entered or downloaded in *exact* mode) << R->I << :^IDIV2: #3E9006h FLASHEVAL DROP >> -> q << DUP -3 CF @ next 2 lines are commented { @ DUP SIZE R->I 2 q EVAL 12 - 0 MAX OVER 100 PICK3 ^ q EVAL @ I->R v/ CEIL R->I 10 ROT ^ * DUP :^ZSQRT: #E0006h FLASHEVAL DROP 1 + @ replaces commented lines DO DUP2 q EVAL DUP ROT + 2 q EVAL SWAP UNTIL OVER - DUP SIZE == END NIP } IFT >> >> 'ISQRT' STO For example, try 5E100 as an argument, then do 5 * (in exact mode), and see that the golden ratio 5*(1+sqrt(5))/10 must be 1.61803398874989484820458683436563811772030917980576... For all I know, this program may still have an obscure bug, caused by truncation in ^ZSQRT (note that CEIL was necessary in my original version, where IP wouldn't suffice, and that 1 + is necessary after ^ZSQRT), but the idea in today's software factories is to get it out the door, and see whether customers will buy it anyway, for that's where the bottom line is ;-) [r->] [OFF] Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== [...] You're right, ^ZSQRT isn't good at very large arguments. I guess you must program your way out of it. This is from my memory, but there may be an easier solution after all. If I find it, I'll post it here. Regards Steen NNTP-Posting-Host: 195.77.28.142 Content-Type: text/plain; charset=ISO-8859-1 ==== Marco Polo wrote: And I forgot to be polite, sorry. Yes, make sure to let them know it too - they can forget how good it is and change it! :-) Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - -- Posted via Mailgate.ORG Server - http://www.Mailgate.ORG ==== I used an audio patch cable that goes between the soundcard and a cd rom drive (internal). Fits great, but only has 3 wires...left pin 1 empty on the HP side of the cable.... I'll rip apart a mouse and see if it has 4 lines and upgrade if that is the case. Mark Jose I wrote in message news:a5eap4$6eh8b$1@ID-123492.news.dfncis.de... ==== Hi, Does anyone know of a program to calculate, the propagation of gaussian beams through varius optical components? Frank ==== Hi, I'm new this and have been trying some simple programs but I can't figure out how to save them after editing them. I bring the program up and make the changes and then hit ENTER like the documentation says but the program changes don't get saved -it simply goes into the stack. Do I have to reenter the name of the program in order to save it with the same name after editing? Any help appreciated Thanks Tom References: NNTP-Posting-Host: 3639245824.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 7bit ==== Tom McEwen wrote: Well, you could put the name on the stack, enclosed in single quotes, and then press STO. Easier is to press LeftShift and then the menu key with the name. Note that if you're using a 49G, you might use the VISIT command. It's easier to help if you tell us which calculator you're asking about. Regards James References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014781814 208.145.205.253 (26 Feb 2002 21:50:14 -0600) Lines: 124 ==== Tom McEwen wrote: By bring up the program, do you mean that you simply recalled the program to the stack? If so, then that object on the stack is treated as a *copy* of the memory file, and what you do to it does not change the safely saved original file -- fortunately! Otherwise, suppose a named variable contained the number 123.0 and then you recalled that variable and took its square root on the stack; how would you feel if that caused the original stored value to be replaced by its square root as well? Many are the ways that you can proceed from here: o Having edited a copy on the stack, and satisfied that you want to store the edited copy back into the original variable, press left-shift and then the menu key for that variable. In the context of the VAR[iables] menu, left-shift acts like a STO key (and right-shift like a RCL key). Make sure that you release the shift key before pressing the menu key; otherwise different functions may be performed on the 49G (which distinguishes shift and hold from shift and release). o Don't even bother recalling a copy of the variable to the stack; instead, just type the single-quote key ['], which is a shifted function on the 49G or a special separate key on the 48G/48S, then press the menu key for the variable, then ENTER; this puts the 'name' of the variable on the stack. On the 49G press left-shift cursor-down (left-shift EDIT on 48G); this invokes a function called VISIT, which edits the given variable in user memory (actually it recalls it to the stack first and stores it back later, but who cares). When you press ENTER and no syntax errors are detected, the edited version is then stored. If you press CANCEL before ENTER, then no changes are stored. o You can start by putting the quoted 'name' on the stack, but then press the cursor-up key instead; this starts the Interactive Stack application on the 49G or 48G. When the stack cursor is at any 'name' on the stack, pressing shift and VIEW [B] will do a VISIT on that named variable. Which shift key? Whichever works! On the 48G, right-shift [+/-] acts similarly, although not identically (we won't distinguish VISIT from VISITB here :) One reason why I like the very last of these methods is that you can do a save of your editing anytime you want (by pressing ENTER), and then you will be able to immediately start some more editing by invoking another VISIT, without skipping a beat to get another copy of either the variable's content or its name back onto the stack. I like saving my work safely into a stored variable, rather than leaving it open to being accidentally deleted from the stack, and this last method duplicates on my calc exactly what I'm doing as I type this message -- saving it safely into a stored file after every sentence ot two, so that it will be sure to still be there, even if someone suddenly pulls the plug on my network file server for a while :) When the VAR[iables] menu is displayed, the left/right shift keys act like STO/RCL when followed by a variable's menu key, so you need only find the right menu key; you don't need to create the quoted 'name' again. If the next question is, oops! -- what if I accidentally stored into the wrong variable! Then the answer is: Stop! Don't move! Collect your thoughts! Press Alpha (twice if needed to lock alpha), then type LAST and press ENTER (the just-clobbered original contents of the variable you just stored into will re-appear); then press STO (replacing your almost-lost treasured program :) then type LAST again (this now also recalls what you had accidentally stored into the wrong variable!) The keyboard ANS (49G) or ARG (48G) functions may be used in place of typing LAST (which is also an abbreviation for LASTARG). For the above miracle recovery to work, you must do it before you press any other keys or functions; otherwise it may be too late. By the way, LAST STO also recovers from an accidental use of the keyboard (or TOOL menu) PURGE key (with a 'name' on the stack). Who at HP was so thoughtful to provide for this way to recover from accidental keyboard STO or PURGE? Was it Wickes? Unfortunately, it only works when STO or PURGE was invoked from the keyboard key definition, not if you typed STO or PURGE, or used a list of names with STO or PURGE, or ran a program which did STO or purge; it also may not work if you are using Vectored Enter functions (AlphaENTER, BetaENTER). I read that back in HP71B days, you could lock variables against modification and/or purging; well, those were the peak times when HP calculators were being designed by folks who did not have marketers dictating absolutely everything (although apparently it was marketers who kept the 71B from being even much greater). And it's been downhill ever since ;-) Enjoy the HP4x -- the last good products of an era :) [r->] [OFF] -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- ==== Hi, I have problems trying to start emu48. I took version 1.25 from www.hpcalc.org. I read that I need a ROM dump so I thought I could use one of the ROM dumps that could also be found there (GX revision K-R) but it didn't work. :-( After selecting a KML script and the dump file I get an error message: This file is not a valid document. I read something about the convert tool and tried it without success. I even tried the .29 patch of emu48. So I really don't know what types of ROM dumps exist and what type I need to get emu48 started. I know that I can create my own dump from a calculator but it should work this way too, right? Would be much easier for me... Maybe there is someone who can explain to me what I have to do..? NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== If you want, I e-mail you an Emu48 with *all* for running... I wait for your answer Regards Raul V.J212nkel escribi227 en el mensaje news:d8a54ab2.0202270744.7731083e@posting.google.com... ==== Hi I'm the prowd owner of a hp48gx, but it's a little slow sometimes. What is the most efficient way (speedwise) to evaluate an algebraic at a sertain x-value, if you're going to do it numerously? I've tried with the following little program, but it isn't fast enough: 2: 'f(x)' 1: x-value Ğ OVER SWAP X SWAP 2 ->LIST VMATCH DROP EVAL ğ where -> is the right arrow and V is the down arrow Thanks /Gregory References: <58bf4996.0202270506.5a2f62ff@posting.google.com> Content-Type: text/plain; charset=iso-8859-1 ==== Gregory McMuffin schrieb: You could try the following instead: << 'X' STO EVAL >> For 'SQ(X)+X+1' 5 it times at 0.29 seconds (TEVAL, in approximate mode). However it creates or overwrites the variable X. My preferred way for doing substitutions by hand is 'X' SWAP = SUBST This takes 0.41 seconds for the same example, and I don't know if SUBST is available on the 48 at all. Thomas -- Thomas Rast If you cannot convince them, confuse them. -- Harry S. Truman ==== Hello. This happens even with user files on the ROM. I don´t know what cable did you use, but I think the SERIAL PORT would be damaged if it were the case. Try to reflash with a new version (with a good cable) and see what happens. As I said, the user objects in the flash ROM also cause the error under the self test, so erase them (first make a backup) and try again. Bye. Julio Cesar Ramos. NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== A mi me pasa lo mismo... Juan de Cartagena escribi227 en el mensaje news:85c61b5b.0202261200.68b5c2ef@posting.google.com... ==== funcsionan para mi! mark r. Juan de Cartagena wrote in message news:85c61b5b.0202261200.68b5c2ef@posting.google.com... X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 ==== what program will do this (ie display smaller font) I am very interested in being able to do just that. Since the large font on the hp48 is excessively large, and the limit to only 4 lines can be annoying. The matrix i am talking about is only usually 8 elements long and would be really nice if i coud see the whole. Nick Karagiaouroglou wrote in message news:cd9ca36b.0202260206.7d48c488@posting.google.com... news:... matrix row the of ==== Hi Tim! You could for example try MetaKernel. Visit http://www.hpcalc.org/hp48/apps/mk/ and see for yourself. If it is too big and you don't have enough memory, some of the many editors and viewers at http://www.hpcalc.org/hp48/apps/editors/ or matrix editors at http://www.hpcalc.org/hp48/apps/matrix/ could be just fine for you. As John said, there are many tricks to allow you to view only one row/column at a time. I would also add to these tricks the following: Make a GROB out of the matrix using the small font and view the GROB instead. Something like: << ERASE {#0 #0 } PVIEW ->ROW ->LIST 1 << 1 ->GROB PICT SWAP { #0 } NSUB 1 - 6 * R->B + SWAP REPL >> DOSUBS 7 FREEZE It takes the matrix from the stack, and cycles through its rows, making each one to a GROB and superimposing each one with the current PICT. Unforunately the program doesn't pad the matrix. Hope that this helped you, Nick. Tim wrote in message news:... References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014830352 208.145.205.253 (27 Feb 2002 11:19:12 -0600) Lines: 48 ==== Tim wrote [re displaying a small array on a full screen]: Nick was referring to the smaller fonts in the 49G; the 48's small font is, well, small (and proportional rather than constant-width for alpha). In any HP48 (not 49!), put any small array on the stack and try this program (type each hex value very carefully!) << DUP ARRY-> OBJ-> 1 > { * } IFT { 1 } + ->ARRY :TURNMENUOFF: #4E2CFh SYSEVAL ->STR CLLCD 1 8 :COERCE2: #194F7h SYSEVAL :Disp5x7: #3A4CEh SYSEVAL 7 FREEZE >> Up to eight array elements will be displayed vertically, in beautifully readable standard 5x7 font, on a full screen (no menu!) The display will revert to normal upon the next keypress. The :labels: in the above listing are optional, for information only (they are the names of internal system functions called via SYSEVAL) NOTE: HP48 ONLY! Backup memory before use. ----- Okay, here's the 49G version (not 48!): << DUP ARRY-> OBJ-> 1. > { * } IFT { 1. } + ->ARRY :TURNMENUOFF: #2F034h SYSEVAL ->STR CLLCD 1. 8. :COERCE2: #3F481h SYSEVAL :Disp5x7: #25EBCh SYSEVAL 7. FREEZE >> NOTE: HP49 ONLY! Backup memory before use. [r->] [OFF] -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- ==== PICT + ==== If I would have any trouble because my HP49G/48X does not solve a problem, I would not be an Engineer. Even in the school, I learned to do anything by hand, but *UNDERSTANDING* what I am doing. Calculators with CAS were only allowed for checking and saving time on trivial calculations. In my school, on my math and physics classes, the teachers used to apply the tests in a manner which any calculator, even the 49g or TI89 were completely useless. We had no other choice than put the calc in the bag and THINK to solve the problem, many of them were easily solved with a few steps, once you found the correct way (of course, this is the hard part). I can surely say that pressign a button on a calc NEVER solved anything. If you really want to use the calc, you first need to be sure of what you are doing. However, the HP48/49 is an Engineer´s great tool, but it is only for make the job EASIER and TO SAVE TIME (the time is money), but never to replace the brain. It´s only an extension of your brain. When I am carrying the Hp48/49 I feel good, but when I don´t, I feel as a good Engineer as I am always, even when don´t have any calculator nor computer near. I am the master, not the Hp49 or the computer. only my personal opinion. Regards. Julio Cesar Ramos. ==== Mark McDougall wrote: Have you tried a hardware reset? Turn the calculator over and remove the upper right rubber foot; you should see a small hole with the letter R next to it. Insert a straightened out paper-clip straight in as far as it will go. Good luck, James References: <3C73CDE1.4040000@optushome.com.au> <3C73CEDE.8040500@optushome.com.au> NNTP-Posting-Host: 3639245804.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 7bit ==== I wrote: Slight correction: on some calculators it the upper left foot instead. Good luck, James Newsgroups: comp.sys.hp48 ==== James M. Prange wrote: Yup, no dice! :( Thanks anyway... -- -- | Mark McDougall | Electrical Engineers do it | | with less resistance! ==== Hello ! I'm looking for assembly language compression routines (like bz or tnt), which I could use in my progs. Indeed, I've compiled a prog with a LOT of graphics, and I would like to compress them first, and expand them when I launch the program, in order to reduce its size. Any ideas ? Thanks, HPThifu Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 7bit ==== How about using an RLE compressor to pack your GROBs, then use the built-in decompressor for unpacking? Simple RLE compression is sufficient for GROBs, and the decompressor is very fast. Maybe Jordi Hidalgo can help you getting the suitable compressor. Raymond hpThifu schrieb im Newsbeitrag news:ed8d14d9.0202211052.2080749d@posting.google.com... ==== Greetings, I am trying to get the port of SIMPLEXK by Kevin Ruhland for the HP49 (ported as SIMP by Martin A. Lang) to work on my 49G calculator. Any matrix I enter, including the one in the .txt file, will return an error (XXXX Error: Bad Argument Type) when I try to execute one of the matrix manipulation programs within the library. I'm entering the matrices using the MTRW matrix editor function. The built in matrix functions such as RREF work fine on the same matrices. Has anyone been able to get this to work? Thanks for any help. ==== eeyan_short@hotmail.com (Ian) wrote in news:639ffc1a.0202211356.4a5c2b94 @posting.google.com: I also have the SIMP lib installed and it works fine. There's a conflict with the original Solve command but that could be resolved using libeval. Try reinstalling the library. Also, have you ATTACHed the library after installing. I have it on port 2 and it works fine. It should work on most ROM versions (I have 1.19-6). Otherwise, give a detalied example of what you're entering and I'll try to guide you. I you can't make it work, try Simplex 1.04. It's the fastest Simplex prog I've seen for the 49, all SysRPL. In addition, it supports exact artithmetics and Dual simplex. It's not a lib, it's easy to install and weighs only 2kb. http://www.hpcalc.org/details.php?id=4801 Regards, Diego ==== Hi! First of all; this works: << -> A B << 'A+B' EVAL > However I would like to use a prompt for the individual values (and from what I can gather the INPUT command produces a string value, thus I need to converte it back to a numerical value by OBJ->) < 'A' STO OBJ-> 'B' STO < Which returns <> when executed. %#¤¤¤ :) Give me a hint anyone! I guess it's better to use calculations on the stack using RPN rather than evaluating algebraic expressions, would this be a correct approach(?): < 'A' STO OBJ-> 'B' STO < Which OF COURSE returns <> when executed. LAMO I'm guessing it has to do with how the hp49g deals with global variables or perhaps a flag setting? I don't know. Under any circumstance: HELP! Regards Deja Vuuu /a devoted HP49G user in algebraic mode until 2 hours ago.... References: NNTP-Posting-Host: 3639246045.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== Deja Vuuu wrote: Various things come to mind. Put RESULT after EVAL and use ->TAG. Include another EVAL after the nested program There's really no need to nest the programs unless you're using a local variable structure anyway. You could rewrite your program to: << A INPUT OBJ-> 'A' STO B INPUT OBJ-> 'B' STO 'A+B' EVAL RESULT ->TAG >> Which leaves you with global variables to clean up later, so local variables may be better: << A INPUT OBJ-> B INPUT OBJ-> -> A B << 'A+B' EVAL RESULT ->TAG >> >> or << 0 DUP -> A B << A INPUT OBJ-> 'A' STO B INPUT OBJ-> 'B' STO 'A+B' EVAL RESULT ->TAG >> >> or don't bother to use variables at all: << A INPUT OBJ-> B INPUT OBJ-> + RESULT ->TAG >> Not necessarily. For simple expressions, or if I'm working the problem out as I write the program, I'll use the stack and RPN because I find that easier. But if I have a fairly complicated algebraic expression available, I may very well simply type that in rather than translating it to RPN format. Well, change that to: << A INPUT B INPUT OBJ-> 'B' STO OBJ-> 'A' STO << A B + RESULT ->TAG >> EVAL >> or, simpler: << A INPUT B INPUT OBJ-> 'B' STO OBJ-> 'A' STO A B + RESULT ->TAG >> and it should work. There's usually more than one way to skin a cat with these calculators. Because the program quotes mean that it's put on the stack as is, unevaluated. Add an EVAL if that's what you want the calculator to do. ???? Both. Disclaimer: I didn't actually try out my examples. Write back if you still have problems. Regards, James References: NNTP-Posting-Host: 3639246045.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== PS: I wrote: Sorry, I wrote Both while I was still under my initial impression that the problem had something to do with the 49G being in Exact mode. Actually it has to do with how the calculator handles global variables, local variables, quoted objects, and objects in general. Try using the debugger to single-step through programs; this should help you to understand what's going on. Regards, James ==== Hi DejaVuuu! dejavuuu@operamail.com (Deja Vuuu) wrote in message news:... Did you notice the difference between the program that works and the program that doesn't work? The first does a local variable assignment with -> A B and a fillowing program that is part of the local variable structure. The construct -> A B << 'A+B' EVAL >> can be considered as a unit that assignes values to the locals A and B *and* executes the procedure that follows automatically. The second simply stores some values in the *global* variables A and B. The next step simply puts the procedure <> on the stack without evaluating it, because this is not a local variable structure. In such cases you must put explicitely EVAL after your procedure <> . This EVAL will evaluate the program that is on stack level 1, and evaluating programs is the same as running them. If you don't want to do that, but you would rather like the local variable structure, you could do: << A INPUT OBJ-> B INPUT OBJ-> -> A B << RESULT : 'A+B' EVAL >> The part -> A B << RESULT : 'A+B' EVAL >> is the local variable structure. It's up to you what you use, stack or algebraic objects. You could also do: << A INPUT OBJ-> B INPUT OBJ-> -> A B 'A+B' RESULT : SWAP Now the local variable structure is: -> A B 'A+B' I hope this did help. By the way, do you perhaps wanted to tag the result of A+B with the label RESULT :? If so, then add the command ->TAG. << A INPUT OBJ-> B INPUT OBJ-> -> A B << 'A+B' EVAL RESULT : ->TAG >> or << A INPUT OBJ-> B INPUT OBJ-> -> A B 'A+B' RESULT : ->TAG Greetings, Nick. Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== dejavuuu@operamail.com (Deja Vuuu) writes: First, you are storing in the wrong order. After the B INPUT, you will have the A value on level two an the B value on level one. So you need to store B first. Second, you don't need to place the result statement in <<>> brackets. Doing so will merely place the statement on the stack. Just remove the extra <<>>s. You may be confused with the use of local varialbles that are stored using the '-> varname' method which is different than OBJ->. -Al -- Place your hand on a hot stove for a minute and it seems like an hour. Sit with a pretty girl for an hour and it seems like a minute. That's relativity. -Albert Einstein ==== Hi! James M. Prange and Nick Karagiaouroglou, I would like to thank you both, I've just made my first working program on the hp49g wohoo!!! :) Black and Scholes option pricing model (European CALL): %%HP: T(1)A(R)F(.); ĞShare price, [So]: INPUT Exercise price [X]: INPUT Risk free rate, [Rf]: INPUT Share volatility, [SD]: INPUT Maturity, [T]: INPUT OBJ-> 'T1' STO OBJ-> 'SD1' STO OBJ-> 'RF1' STO OBJ-> 'X0' STO OBJ-> 'S0' STO Ğ SD1 SD1 * 2. / RF1 + T1 * S0 LN X0 LN - + T1 F SD1 * / 'Zd1' STO @F=sqroot Ğ Zd1 T1 F SD1 * - 'Zd2' STO Ğ 0. 1. Zd1 UTPN NEG 1. + 'Nd1' STO 0. 1. Zd2 UTPN NEG 1. + 'Nd2' STO Ğ S0 Nd1 * T1 RF1 * NEG EXP X0 * Nd2 * - European Call Option ->TAG ğ EVAL ğ EVAL ğ EVAL ğ EVAL ğ and Black and Scholes option pricing model (European PUT): %%HP: T(1)A(R)F(.); ĞShare price, [So]: INPUT Exercise price, [X]: INPUT Risk free rate, [Rf]: INPUT Share volatility, [SD]: INPUT Maturity (in years), [T]: INPUT OBJ-> 'T1' STO OBJ-> 'SD1' STO OBJ-> 'RF1' STO OBJ-> 'X0' STO OBJ-> 'S0' STO Ğ SD1 SD1 * 2. / RF1 + T1 * S0 LN X0 LN - + T1 F SD1 * / 'Zd1' STO Ğ Zd1 T1 F SD1 * - 'Zd2' STO @F=sqroot, I don't know the notation. Ğ 0. 1. Zd1 NEG UTPN NEG 1. + 'Nd1' STO 0. 1. Zd2 NEG UTPN NEG 1. + 'Nd2' STO Ğ T1 RF1 * NEG EXP X0 * Nd2 * S0 Nd1 * - European Put Option ->TAG ğ EVAL ğ EVAL ğ EVAL ğ EVAL ğ Thanks again! Regards, Deja Vuuu nk@imos-consulting.com (Nick Karagiaouroglou) wrote in message news:... References: NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Deja Vuuu wrote: | I would like to use a prompt for individual values | < 'A' STO | OBJ-> 'B' STO | < | Which returns <> when executed. Yes, an inner program of the form << ... >> is supposed to be simply put on the stack, the sole exception being when it is part of a local variable structure, which the above is not -- the arrow character in the name of the OBJ-> command is not the arrow command -> (a one-character command name) which is used to represent local variable structures. The program delimiters in the UserRPL language are actually provided so that you can quote programs in this way (quote meaning that the program is just put on the stack, rather than being immediately executed); the built-in compiler actually inserts something you don't see displayed, to cause this quoting, and then inserts commands at the beginning and end of the quoted program itself which display the << and >> symbols. Even if you corrected that one point, you would still get the values of 'A' and 'B' reversed, unless you re-arranged it further, because the stack is last-in, first-out. Other approaches: << Enter A and B { :A: 010:B: {1,0} V } INPUT OBJ-> 'B' STO 'A' STO >> Note: Insert only a newline character (right-shift period on 49G) in place of 010 above (but keep the spaces following :A: and :B:) Actually, if all you want is the sum, without saving the values in permanent variables, you could replace 'B' STO 'A' STO with + A+B ->TAG Or use PROMPT: << Enter A, press CONT PROMPT Enter B, press CONT PROMPT + A+B ->TAG >> Or use INMENU: << { A B } INMENU >> For the INMENU program, see: http://groups.google.com/groups?selm=8pl979%24am1%241%40nnrp1.deja.com | a devoted HP49G user in algebraic mode until 2 hours ago.... Don't go back, go forward! [Y2K USA presidential election campaign slogan] [r->] [OFF] References: <22eb8.75071$3J1.2305675@news2.tin.it> <3C6E19D4.4C781887@miu.edu> <3C72FB00.E959BC1@miu.edu> NNTP-Posting-Host: 3639246045.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== John H Meyers wrote: Yes, don't include the quotation marks from my post. John didn't bother with the A() parameter, which isn't required unless the object includes complex numbers or vectors in polar format. If any of these had been included, it would be somewhat problematic to know which it should be: A(R), A(D), or A(G). Although it isn't a requirement, my practice is to give the header a line of its own. Good catch, John. Thank you. I had in mind programs written on a PC or 49G specifically for the 49G, but of course programs written in UserRPL for the 48 will often work on the 49G, and one can even use the 48 to write programs for the 49G if one chooses to do so. Of course, ASCII transfers are required in these cases. If you inadvertently download a 48 program that has whole-numbered reals in Exact mode, I think that the easiest way to change the resulting integers back to reals is to set the 49G to Approximate mode and then either VISIT the variable and ENTER it, or RCL the object, EDIT it, ENTER it, and STO it with the original name (using shortcut keys as you see fit). Regards, James Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ==== There is nowhere a HP49 - Gauss - Elimination - Solution to find? :o( Another Question (a simple one): Another Student showed me on his HP48 how to enter matrices with those [ and ]. I tried it and it workes well till I tried to enter variables ... the HP48 has a special Key for 'apostrophe' with which he tipped them in, but as I tried it on the HP49 by Rightshift - EQW it does not work ... - jens PS: @ cyber: just wrote you back, guess, you will check your mail, too, when look in here. NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== HP48 does not use symbolic matrices if you haven't MetaKernel or a special matrix editor like AIO (I think this is the name, but I'm not sure) Raul RingMaker / Daemon escribi227 en el mensaje news:a52rr2$ola$07$1@news.t-online.com... the as when X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== --------------------------------------------------------------------- Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 7bit VERSION shows: HP49-B, Revision #1.19-6 The STO- function is counterintuitive (to me at least). When I execute the following: << 11 't' STO 1 't' STO- t >> I get a result of -10 where I would have expected +10 STO- does the subtraction backwards from all the other HP's that I have had experience with. It's just my opinion ... but ... 't' should not change after executing << 1 't' STO+ 1 't' STO- >> What were they thinking? /mbs --- Mark Sawyer Sawyer Software Solutions, LLC Tel: 603-228-9214 / Cell: 603-496-3509 / Fax: 603-228-4810 --------------------------------------------------------------------- Content-Type: text/x-vcard; name=Mark Sawyer.vcf Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename=Mark Sawyer.vcf BEGIN:VCARD VERSION:2.1 N:Sawyer;Mark FN:Mark Sawyer ORG:Sawyer Software Solutions, LLC TITLE:Consultant TEL;WORK;VOICE:(603) 228-9214 TEL;CELL;VOICE:(603) 496-3509 TEL;WORK;FAX:(603) 228-4810 ADR;WORK:;;2 Lincoln Drive;Bow;NH;03304-3209;USA LABEL;WORK;ENCODING=QUOTED-PRINTABLE:2 Lincoln Drive=0D=0ABow, NH 03304-3209=0D=0AUSA EMAIL;PREF;INTERNET:Mark@MySawyer.net REV:20020221T054208Z END:VCARD ------—extPart 000 0051 01C1BA70.976E8270-- References: NNTP-Posting-Host: 3639246045.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; charset=Windows-1252 Content-Transfer-Encoding: 7bit ==== Mark Sawyer wrote: I think not. Try << 11 't' STO 't' 1 STO- t >> to get the result that you expected. That it stills depends on which order the arguments are in. Regards, James Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== 1 11 - -> -10, right.? Where's the rpoblem? had No. 1 Of course it should. To add one to 't', do either 1 't' + or 't' 1 + - the order of the arguments doesn't matter with plus. It does with minus though. Do you see a difference between '1-11' and '11-1'? That you'd read the manual? Regards Steen Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== Thank you to James and Steen for their replies ... how embarrassing ... it never occurred to me that the 'variable' argument to STO- could be on either level 1 or 2 of the stack ... with the obvious result being a difference in the order of evaluation ... /mbs ==== In article , Mark Sawyer wrote: Note that the STO/ command is also sensitive to order. ==== Mark Sawyer writes: Others have explained the argument order on the recent RPL machines. But I thought I should point out that the first HP handheld with storage arithmetic was the HP-45, and that *early* HP-45s did the storage arithmetic backwards. It was fixed in a later ROM release. ==== Look at http://www.geocities.com/hp4x for the new version (v.0.2) of the EQ library for HP49G. J. Yuan schrieb im Newsbeitrag news:ZwZ88.17717$bh3.119392@rwcrnsc52.ops.asp.att.net... I ==== J. Yuan wrote in message news:... I am programing a hexagon-like game (based on squares instead of hexes) for the 49, I am fairly sure that Go is, and I am also planning on doing a port of Orbix sometime in the near future. I might make an AI pack combination game eventualy. Dylan Stewart X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== Why make it out of square, that ruins the strategy of Hex. But good job. Thanks for the reply. Dylan Stewart wrote in message news:460a25b9.0202210722.21b28d40@posting.google.com... news:... NNTP-Posting-Host: 195.77.28.142 Content-Type: text/plain; charset=ISO-8859-1 ==== George Tsiros wrote: Do you mean a nasty, angry girl? :-) Sorry... Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - -- Posted via Mailgate.ORG Server - http://www.Mailgate.ORG ==== kcress@surfnetusa.nospam.com wrote in message news:<3c72b7e1.2019814@news.surfnetusa.com>... If you do more hex math than anything else, you may be interested in this tip from Bill Wickes which he posted here many years ago. Enter the following program and store it in the home directory using the name alphaENTER. (alpha is the letter, not the word; get it by pushing the alpha _key_, right shift, A). << # SWAP + OBJ->> Now set flag -63 (-63 SF). Then, whenever you are in user mode (left-shift alpha or set flag -62), you have a hex calculator. All entries will automatically be treated as hex, no need for typing #. Disable the program by clearing flag -63. (But first exit user mode with ls alpha or it will try to convert your CF command to hex!) Maybe you can combine this with Nick's suggestion to get in alpha mode, too--I haven't tried it. Karl. ==== Okay....... Point taken George. I'll give this a try Karl! Thanks again ---KJC--- Subject: Re: How to evaluate these and similar equations??? References: <6f991d04.0202190812.4c0e99ef@posting.google.com> Content-Type: text/plain; charset=us-ascii ==== Nick Karagiaouroglou wrote: < snip > I tried the folloring approach: write y(x) as e^u(x) This leads to xu''u + 2(x+1)u'u + xu = 0 ==== Steen Schmidt wrote in message news:... Hi guys! I tried to solve the integral through numeric evaluation and then XQ. Í substitute in the original integral X=TAN(Y), which ´transforms the integral limits from -inf, inf to -Pi/2, Pi/2. It takes about 2.1 minutes and then the result is 2.50662827463. (This is indeed SQRT(Pi)*SQRT(2), Steen :-) ). But the HP49G can't convert this number to SQRT(Pi)*SQRT(2) with XQ. It converts it to 41788/16671 instead. Also the following strange behavior: Enter inf and press ATAN. You get Pi/2. Now go to the EQW, enter ATAN(inf) and press ENTER. (inf being oo, the infinity character of the HP49). Now try to expand or eval this, nothing happens. And if you try ->NUM, you get the error Undefined name. The HP49G expects infinity to be defined, i.e. contain some numeric value? Try 3 'inf' STO. It works! Now ATAN(inf) ->NUM doesn't case errors but returns 1.2490457724! Great! ;-) Can we thus scale infinity on the HP49G to best fit our needs? ;-) Why not make Pi and e also scalable that way? Perhaps we can square the circle then...;-) Greetings, Nick. ==== Hans Kristian Ruud wrote in message news:<3C74D145.71513A5C@inenco.no>... Following your proposal and after dividing with u I get x*u''+x*(u')^2+2*u+x. This is also not solvable with the built-in CAS ,of the HP49G. Are you sure that you substitute y(x)=e^(u(x)) ? Greetings, Nick. Subject: Re: How to evaluate these and similar equations??? References: <6f991d04.0202190812.4c0e99ef@posting.google.com> <3C74D145.71513A5C@inenco.no> Content-Type: text/plain; charset=us-ascii ==== Nick Karagiaouroglou wrote: OOPS.... I managed to get the paper-and-pencil calculation wrong. For the (wrong) equation that I arrived at, HP49 produces an answer though. With profuse apologies - hans kristian - ==== Is it true the HP32Sii had been discontiued? Bill ==== http://cgi.ebay.com/aw-cgi/eBayISAPI.dll?ViewItem&item=1334249838 ==== Hi, All! I would appreciate it if there would be a possibility of receiving a copy of the article from HP Journal regarding to HP48S/SX (June 1991 Vol.42 No.3) as an attachment. email: td@chem.ch.huji.ac.il Best regards, Tal NNTP-Posting-Host: 195.77.28.142 Content-Type: text/plain; charset=ISO-8859-1 ==== Tal wrote: Do you mind if it's just a link? http://library.hp41.org/Library/Files/ppc/hp_journal/hp9106.pdf Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - -- Posted via Mailgate.ORG Server - http://www.Mailgate.ORG ==== Hi I wonder if any of you HP 49 fans have seen a program to convert the HP 49 into a Metronome ? I didn't see any on the hpclac.org page. Thanks - Vincent Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014329570 208.145.205.253 (21 Feb 2002 16:12:50 -0600) Lines: 11 ==== Hang it by a string and give it an initial push :) [r->] [OFF] -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== On the 49G, you can invoke the function of any keyboard key by supplying its row, column, and shift plane (rc.p) to the new KEYEVAL command, e.g. the review function (right-shifted cursor-down key) can be invoked via -35.3 KEYEVAL (third row, fifth key, right-shift). Actually, the same can be done on the 48G[X], but by choosing an appropriate argument for LIBEVAL instead; for example, the same review function on the 48G[X] is #A3010h LIBEVAL (see the end of this post for a caution about its use), and for other keys in general, it is #ApNNNh LIBEVAL, where 'p' is the keyplane digit (1-6 only), and NNNh is the key number (in hex), starting with 000h to 005h for the top row of keys, 006h to 00Bh for the second row, etc. To use the more familiar row-column.shiftplane (rc.p) notation instead, just as for the user-key assignment ASN and STOKEYS commands, you can use the following program on any 48S[X] or 48G[X], as Erich Niklaus originally posted on 2000/11/07: << QUOTE :Ck&DecKeyLoc: #41CA2h SYSEVAL :Key>StdKeyOb: #3FB1Ah SYSEVAL :DoKeyOb: #40454h SYSEVAL >> HOME 'KEYEVAL' STO Cautions: 48S[X] and 48G[X] only, backup memory before trying it! The :tags: are not necessary; I include them FYI only. Note that the above program accepts either positive or negative rc.p values, and performs the default (original) keyboard function either way; it doesn't interpret positive rc.p as being potentially modified to reflect user-key assignments, as does the 49G (which I have yet to see anyone use :) In case your manual isn't handy, here are the keyplane '.p' values: .1 No-shift .2 Left-shift .3 Right-shift .4 Alpha .5 Alpha+left .6 Alpha+right Keyplanes .21 and .31 (shift and hold on 49G) have no counterpart on the 48S[X] and 48G[X]. BTW, the #ApNNNh LIBEVAL method still works in the 49G, although you don't need it since you already have KEYEVAL, but the key numbers NNNh may of course be different than on the 48G. The above 'KEYEVAL' program works on either 48S[X] or 48G[X], but some rc.p values and functions differ between S and G keyboards, so all programs invoking standard keyboard functions in this way may need adjustment when transferred to different calcs. A caution about #A3010h LIBEVAL (review) on the 48G[X]: Do not execute this while editing, nor directly from the command line, or it will crash your calc! [r->] [OFF] NNTP-Posting-Host: 192.38.216.34 Mime-Version: 1.0 ==== OK, concerning all this tech stuff, I just want to know one thing: Can I make the arrow keys work in alpha mode? I don't fully understand all you're posting, although I appreciate it very much. My idea was to bind the arrow key function (whatever they are) to the right-shift arrow keys in alpha mode, so you could press right-shift and actually move around the command line instead of just typing in the arrows! :-) Is this possible with the info you posted, and if yes, what's the safest way to do it? thanx, Artur References: <3C74B0B1.9040101@messages.to> NNTP-Posting-Host: 3639245804.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== 6·paqs E·mail wrote: But then you couldn't use those keys for typing in the up-arrow, left-arrow, down-arrow, ann rho characters. Seems to me that it's just as easy to simply turn off alpha mode when you want to use them for moving the cursor. Regards, James References: <3C74B0B1.9040101@messages.to> NNTP-Posting-Host: 3639245804.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== I wrote: ann should be and, of course. Also, RightShift doesn't lock; it turns off as soon as you press a key, so you'd have to press it again every time that you wanted to move the cursor another column or row. Or perhaps I entirely missed the point of want you want to do? Easier, I should've said. Regards, James NNTP-Posting-Host: 192.38.216.34 Mime-Version: 1.0 ==== Hi! James M. Prange wrote: I don't need those keys for the arrow symbols. If I'm ever going to use them, I'll take them from the character browser. I'm aware that the shift key doesn't lock, and you're right that it's not faster if you're going to move more than 2 places. But if you're only going to move the cursor 1 or 2 places, it would be faster (for me) to have this functionality on the RS-arrow keys. Can you give me a tip on how to do that? :-) regards, Artur Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 30 ==== Artur--- Rewrite the keyboard handler. :) Seriously, from what I understand, the left and right shift keys are handled in a manner completely differently from the other keys once you get beyond the interrupt handler. You can use the sysrpl command GETTOUCH to determine that the shift keys have been pressed, however in User RPL you don't get anything until a fully-formed keystroke has been accomplished (including shift plane). How do I intend to get around this limitation? The same way I'm getting around the problem of an alpha keyboard that just doesn't lend itself very well to data entry: Thumbscript. http://www.thumbscript.com Than way, the arrow keys are free to do movement within the edit line. Hope it helps, Henry C. Gernhardt, III remove _NOSPAM to reply direct NNTP-Posting-Host: 192.38.216.34 Mime-Version: 1.0 ==== I still have the impression that I'm being misunderstood... From what I read of John's initial post, it's possible to bind different keystrokes to other keys, right? (The KEYEVAL command and the equivalent SYSEVALS on the 48GX) What I want is: In alpha mode, when I first press the right shift key and then press an arrow key, I want the cursor to move. I simply want the movement commands to override the default characters (3 arrows and rho) when right shift is pressed before the arrow key in alpha mode. I know I'll get 2 keystrokes for every movement, but it's still faster (for me) for 1 and 2 moves than to turn off alpha, and then turn it on again. I got the impression that this was possible by some means (as mentioned by John), but I'm not sure how. Any help? ==== I have hp48g and wish to do write an program to do operations on a matrix. The matrix wil be 1 row of 8 or 9 entries (the spectrum of a sound - full octives). i wish to do operations on them such as; [a1 a2 a3 ... an] - [b1 b2 ... b3] (A weighting) i also want to be able to do a specific function on each element something like, where the psuedo code is something like this; ( ' represents a note and will not be part of the code). a = [a1 a2 a3 ... an] 'this is entered into the stack for i = 1 to n Bn = f(an) 'f is a function end Bt = B1 + B2 + ... + Bn. Then Bt is displayed on the stack. If any1 can help me on this I would be greatly appreciated. I have to do this kind of thing at work regularly and wish to increase by effciency, this may help me do it accurately. Thanks Tim ==== Hi Tim! Tim wrote in message news:... If you mean subtracting b1 from a1, b2 from a2, and so on, then you don't need to program anything. The HP48 can directly subtract matrices/vectors of the same dimensions. Example Enter [2 5 7] and [1 2 8] and press - to get [1 3 -1] You can you the function DOSUBS, but you must first vonvert the matrix to a list. Example: Apply ^2 to each element of the vector [2 4 5 7] and return the result as a vector: << OBJ-> ->LIST @vector->list 1 @Apply to each *one* element of the list << 2 ^ >> @the program for squaring DOSUBS @Do to all elements of the list OBJ-> -ARRY @list->vector The procedure that will be applied to each element can also be defined separately. F(X)=X^2 DEFINE << OBJ-> ->LIST @vector->list 1 @Apply to each *one* element of the list 'F' @the program for squaring DOSUBS @Do to all elements of the list OBJ-> -ARRY @list->vector Here you can convert to a list and use SigmaLIST (Sigma is the greek capital S) OBJ-> ->LIST SigmaList OBJ-> ->ARRY Or make a one column matrix out of the vector, put it in SigmaDAT and use the statistics function TOT. ->OBJ 1 2 ->LIST ->ARRY SigmaSTO TOT Greetings, Nick. ==== Hi, Please, How use the command Series, and is possible evaluate a infinite serie in my HP49, How do I evaluate this Thank you. ==== samuelsr@cantv.net (Samuel Sosa) wrote in message news:... Hi Samuel! The command SERIES takes three arguments: 1) The function of which you want the series. Example 'SIN(X)' 2) An equations with the variable at the left hand side and the point at the right hand side. Example 'X=0' 3) The degree of the series, for example 5 Series returns 2 things: A list at stack level 2 and an equation of the form 'h=X' at stack level one. (h is a very small quantity.) To use the list at stack level 2, you must first substitute 'h=X' to every algebraic object in the list. With the list at stack level two and 'h=X' at stack level 1, press SUBST. Then press OBJ-> to explode the list, and DROP to drop the list element count. Now you have the labeled contents of the list on the stack. Note that the series (Expans) is not always truncated, so with Expans on stack level 2 and Remain on thack level 1, use TRUNC to truncate the series. An additional hint: If you try EXP(-1/X) X=0 3 SERIES then you get Unsigned inf error. In such case you must specify from which direction X approches 0. Enter EXP(-1/X) X=0+0 3 SERIES if X goes to 0 from positive values or EXP(-1/X) X=0-0 3 SERIES if X goes to 0 from negative values. If you for example want the series for X->2 from values greater than 2, then you must enter X=2+0. Greetings and I hope that it helped you, Nick. ==== R Lion wrote in message news:... Yes, but where is he? Still out there Aderfe Petro? Greetings, Nick. ==== Albert- do you have any intentions of implementing pseudographs in GraphWriter? Sure, most graph problems don't involve pseudographs, but there are possibilities and problems in that field. Mime-Version: 1.0 ==== Daniel Jensen wrote: GraphWriter already lets you have loops and multiple edges, is that what you want? -- Dr. Albert Graf Email: Dr.Graef@t-online.de, ag@muwiinfa.geschichte.uni-mainz.de WWW: http://www.musikwissenschaft.uni-mainz.de/~ag ==== I already know how to add new functions to the hp39/40 (with a library), but how can I make new commands? if I use the same as on HP48/49: ASSEMBLE CON(1) 8 RPL xNAME COMMAND :: ... ; it says 'Invalid Syntax' on my HP40 when I enter 'COMMAND', because of the algebraic mode of the calc. Thanks for your answers. References: NNTP-Posting-Host: 3639245633.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== Deja Vuuu wrote: Congratulations! Your first non-trivial 49G program that actually does what you intended is certainly a notably achievement, and helps to justify the cost and your choice of calculator. A few suggestions, but please don't take them as harsh criticism. Before uploading a program for viewing or editing, set the translation option to 3 by doing 3 TRANSIO; that way it will be translated to pure ASCII. If you're posting the program to the newsgroup, this also ensures that everyone will see the same characters in their newsreader. Also, if comments are being wrapped, insert an @ character at the beginning of the part wrapped to a new line. I don't see the reason for the nested programs. Try copying your programs to differently named variables or a separate directory, and then edit out the four nested pairs of program delimiters and the four EVAL commands from each program. If I'm not mistaken, your programs will return exactly the same results but be smaller and faster. Beyond that, I note that you're using global variables, and expect that you don't have any use for them after the program is finished. If you use local variables, you won't have these left in your directory, and the programs will be faster. Using the only stack and stack manipulation commands and no variables may be even better, if you can keep track of what the stack looks like. Regards, James ==== Hi, Nick: nk@imos-consulting.com (Nick Karagiaouroglou) wrote in message news:... Can I use a slide rule or at least a trig table? Bring 'em on! But don't ask me how to extract square roots in decimal; I've forgotten. I found the HP48G under the bed. The cats must have been playing with it. Thanks for your concern about the withdrawal pains. Did you know that I had been quite happy with an HP16C but then needed a graphing calculator so I could take the Praxis exam and apply for a Math teaching license. When the HP16C died, I started learning more and more about the HP48G and getting more and more impressed. ==== RingMaker / Daemon wrote in message news:... Lines: 18 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300 ==== I just purchased a HP48gx (rev. R, made in Indonesia in year 2001) with black screen (wonderful :-))) ) and painted keys :-((( I noticed something strange: if i try to test the batteries (ON - D - MTH) i can see the test only for a fraction of second and then i get only ESD XXXXX where XXXX is a five-digit hexadecimal. Nothing similar happens on my 48sx. I tested also other GXs in the shop, with the same result, even with fresh batteries. Any suggestion? Thanks in advance Marco Polo -- Marco Polo marco.polo@katai.cina --- ==== Is there a way to do it? ==== Hello, is there a way to make HP40 solve GAUSS maticises? ==== Alberto wrote: Hmm... It looks Spanish, let's translate it with www.dictionary.com: Somebody knows as objects of security in system for the comnados Hp49 and sight three related to this subject somebody are created knows so that they serve. Gosh, I didn't know that there are comnados in English too! :-) Let's hope that Alberto asked how backup objects are managed on the HP49G. The following programs work on any HP48 and HP49G: OBJECT TO BACKUP (2:id/lam name 1:any -> 1:backup) :: 0LASTOWDOB! CK2NOLASTWD CK&DISPATCH1 #60 OB>BAK #70 OB>BAK ; BACKUP TO OBJECT (1:backup -> 1:any) :: CK1NoBlame NOTBAKcase SETTYPEERR BAK>OB ; As an alternative to the latter: :: CK1NoBlame CK&DISPATCH1 #9F BAK>OB ; All entries are supported except: OB>BAK EQU #21674 [48SX/GX] NOTBAKcase EQU #27224 [48SX/GX] OB>BAK EQU #2F255 [49] NOTBAKcase EQU #22210 [49] (Tested on 1.19-6. NOT IN STABLE REGION!) Hope this helps. Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - References: <6f991d04.0202190812.4c0e99ef@posting.google.com> <6f991d04.0202201029.54411ba6@posting.google.com> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Nick at night wrote: Not for me it doesn't! 3 'oo' STO ==> STO Error: Bad Argument Type 'oo' TYPE ==> 9 [Algebraic, not an ID] And within the algebraic, the symbol oo itself is a ROMPTR. Of course, you can create a name using oo S~N But heck, 3 pi S~N STO can be used as well, and then the subsequently compiled program << pi >> also produces 3, thanks to the compiler always searching for variables first :) As you see, you can! The compiler searching for variables before looking elsewhere is very handy for replacing built-in commands with alternates which work better or faster, which was a life-saver on the 48S/48G (e.g. with VARS and ORDER, which could be horribly slow). [r->] [OFF] ==== John H Meyers wrote in message news:... Sorry, in the moment of the discovery, I forgot what I exactly did. Go to the EQW, and press the buttons [ALPHA] [BLUE-SHIFT] [1] [ENTER]. That is, enter oo not by simply pressing its key, but as a character. This leaves the *name* 'oo' on the stack. Note the difference to the other constants, which in the EQW can be input as characters or as functions from their corresponding keys. Fine, this and other *apparently* absurd things will be collected and used in the Higher-Math-Marathon. :-) Anyway, there is also some portion of shakespearean spirit in this: Enter Infinity :-) Nick. ==== Hans Kristian Ruud wrote in message news:<3C75370C.AD113F35@inenco.no>... Oh well, as long as Nick-Cerberus is watching... ;-) I also tried to make this DE a bit easier for the HP49G. I substitute Y(X)=F(X)*EXP(a*X) just to check if one exponential part can then be removed by division with EXP(a*X). This workes but the remaining DE is still not solvable with the HP49G: X*F''(X)+(2*a*X+2)*F'(X)+((a^2+1)*X+2*a)*F(X)=0 Perhaps try a polynomial? Or try a polynomial to the original De? Greetings, Nick. References: <6f991d04.0202190812.4c0e99ef@posting.google.com> <6f991d04.0202201029.54411ba6@posting.google.com> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== In the Nick of time: Should that be [0] instead of [1] ? If so, I still get object type 9 on the stack, into which I can not store -- what am I doing wrong? So here is the complete BITS.DOC, from Joseph K Horn on Goodies Disk #10: MYSTERY PROGRAM MINI-CHALLENGE ------------------------------ --> S/SX/G/GX The following bizarre-looking User RPL program takes any real integer and returns the number of bits required to express it in binary. Example: input 6, it outputs 3, because 6 requires 3 bits (viz. 110). Mini-Challenge: figure out why it works. Have fun! -jkh- %%HP: T(3); << 0 1 ROT FOR DEPTH 1 + DEPTH STEP >> [End] ==== Red Alert! SOS!!! First of all it should be: [ALPHA] [BLUE-SHIFT] [0] [ENTER] ^ But on my HP49G 1.19-6 even with [BLUE-SHIFT] [0] [ENTER] in the EQW, I enter the *name* 'oo'. When I do [BLUE-SHIFT] [0] [ENTER] from the command line then I enter the algebraic infinity. That means that I can't enter and work with infinity in the EQW!!! That's the reason for on my HP49G. When I enter infinities in the EQW, they are entered as names and not as the special alg. objects. What is going on here? This doesn't happen with i and e. Last resource: I press [ON]-[C] now! Ratatatatatatat....(HP49G warmstarts). I try [BLUE-SHIFT] [0] [ENTER] in the EQW. Now it is the right oo, the infinity.!! I'll keep an eye on this and report again, if it reappears. But still, can anybody tell my why it happened? Greetings, Nick. NNTP-Posting-Host: granby.demon.co.uk ==== In message , on Fri, 22 Feb 2002 at 07:16:52, John H Meyers wrote: Nice. An interesting side-effect is that if I single-step this (on the emulator) using DBUG then it finishes with a FOR error - too few arguments error on the last iteration, but if I run it normally then it finishes without any errors. Regards, -- Bruce Horrocks Hampshire England bh@granby.demon.co.uk ==== Hi everybody! I tried a polynomial function Y(X)=sum(x=0,N,a(0)*X^n) as a test function for the solution of X*d1d1Y(X)+2*d1Y(X)+X*Y(X)=0 . Take some N for the sum, i.e. 10, and EVAL this. In a couple of (lengthy ;-) ) seconds you have a(0)+a(1)*X+...+a(10)*X^10. If you do 'Y(X)' ENTER SWAP = SUBST you get a 'Invalid Expression' on the stack. Why? What is invalid in this expression? If you first edit the expression Y(X)=a(0)+a(1)*X+...+a(10)*X^10 to Y(X)=a0+a1*X+...+a10*X^10 ( coefficients are now not a(0), a(1), ... a(10) but a0, a1, ... a10 ) then SUBSTitutuin works fine and you can derive relations for the coefficients that must be true, in order for the polynomial to be a solution. But why the 'Invalid Expression' ? All objects in Y(X)=a(0)+a(1)*X+...+a(10)*X^10 are allowed in algebraic objects (?) :-/ Greetings, Nick. Hans Kristian Ruud wrote in message news:<3C75370C.AD113F35@inenco.no>... ==== Hi! Can you explain to me how exactly you did this? Which flags must be set and what to put inin the HP? I always get an EVAL ERROR: Undefined Name Thanx and Greets! ==== On 20 feb 2002, GuyLian@gmx.li (GuyLian) wrote IIRC the antiderivate of e^(-x^2/2) can't be expressed with a finite number of elementary functions. This might be a source to the calculators problem. The integral can be evaluated with numeric integration as Nick shows further down in this thread. Also, it can be calculated in the following way, which I suppose is what your teacher wants: Let I = int(e^(-x^2/2)dx, x=-oo .. +oo) then we can also say I=int(e^(-y^2/2)dy, y=-oo .. +oo) and I^2 = int(e^(-x^2/2)dx, x=-oo .. +oo) * int(e^(-y^2/2)dy, y=-oo .. +oo) and since e^(-x^2/2)*e^(-y^2/2) = e^-(x^2+y^2)/2 I^2 = int(int(e^-(x^2+y^2)/2)dx, x=-oo .. +oo)dy, y=-oo .. +oo) (some sound assumtions has to made here) Now, let x=r cos v and y=r sin v. Then the integral is transformed to (left as an excercise for the reader :)) I^2 = int(int(r*e^(-r^2/2)dr, r=0..oo)dv, v=0..2*Pi) int(r*e^(-r^2/2)dr, r=0..oo = 1 (yes, you can calculate this with the calc if you want to.) int(dv, v=0..2*Pi) = 2*Pi (trivial) so I^2 = 2*Pi and then I=+/-sqrt(2*Pi) but since e^(-x^2/2) >0 for all (real) x, then the integral I must also be >0 and only +sqrt(2*Pi) is a valid solution. That is: the answer is sqrt(2*Pi) = sqrt(2)*sqrt(Pi). I haven't tried doing these tricks within the EQW - it would be nice to know if it actually works there. But on the other hand - if you have calculated this integral once, you probably won't do it again outside a test... The calculation above is taken from G.Blom: Sannolikhetsteori med till212mpningar. Studentlitteratur 1984. where it is used to show that the area under the graph of the density function for a random variable with normal (or Gaussian) distribution is exactly unity (probably to convice the reader that the function in question really is a density function). Regards Jesper ==== Is there a straightforward way to translate HP48 binary files into HP49 binary files in a PC. I'm trying to trasfer data between EMU48/HP48 and EMU48/HP49. Seems the only practical way is to trasfer the data to the physical calculator and then trasfer it back to EMU48 in ASCII. I tried editing the data by just changing the beginning charachters of the file from 49 to 48, but that crashed EMU48. ANy ideas; Thanks References: <44bc82ce.0202221710.34005bea@posting.google.com> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Luis Horszowski wrote: What files? What data? Do you mean your own programs? Every program is originally created as some text; the text then gets digested by a compiler into an internal binary form. Digested is a good analogy here: if the olympic athletes want to achieve the shortest possible sprinting times, they'd better have long finished digesting their original raw food into fast-acting glucose, already stored exactly where it's needed (in their muscles, not still being chewed, etc.) Similarly, if we want a low-cost device to deliver fast answers the moment we press some buttons, the digested program objects had better know exactly where to get either the next CPU code or the next-needed RPL object, and to that end, each program object contains not arbitrary codes still needing further analysis, but actually the direct, hard-coded ROM addresses of CPU instructions and other required data, instantly accessible, so that's what a binary executable calc object is -- and it's therefore necessarily unique to the ROM of that particular calc. The HP49 is so different internally from the HP48 (different memory organization and access, flash memory instead of ROM and plug-in cards, expanded and all-new commands, new menus, new applications, new flags, an entirely new CAS, new object types and functions, etc.) that most of the ROM locations could not be the same, hence binary HP48 and HP49 objects are almost completely incompatible! Therefore, almost anything that you'd like to transfer between an HP48 and an HP49 must first be transformed back into its plain original text, which you can then transfer instead, and then you can re-compile it, using the other calculator's own compiler, which is based on its own ROM. Now you know why HP prefixes each *binary* calc object with either HPHP48-x or HPHP49-x when exchanging files with other calcs or computers; if one calc is a 48 and the other is a 49 then the binary files are almost always incompatible; each calc's immune system is programmed to reject binary files from non-compatible calcs, and if you try to force a transplant by suppressing that rejection mechanism, the patient gets very sick :) Since you can have both a virtual HP48 and another virtual HP49 running in your PC at the same time (via Emu48/49), there's no need for any physical calculator at all! All that you need do is to decompile your program into a string, then copy that string to the other calc, then re-compile. To decompile a user object into a string, just recall it to the stack and perform a ->STR command; actually you should first also do STD 64 STWS to make sure that all significant number digits always get displayed in the string, so a short, complete helper program to make a string might be << STD 64 STWS ->STR >> Then you may do Edit > Copy String to copy that string to the clipboard, then Edit > Paste String on the other Emu48 calc to deposit that string onto the other calc stack, and finally, to re-compile the string again, just do STR-> or OBJ-> (note that you do *not* use Save Object or Load Object!) Actually, on your emulated HP49, you might as well have another helper program to recompile strings which came from an HP48, to make sure that your HP49 is in Approximate mode when compiling, because the HP48 omits displaying decimal points when real numbers are decompiled, and the HP49 in Exact mode would then interpret those as exact integers, which are a new and different object type, which didn't exist in the HP48 and might give different results. << -105. SF STR-> >> @ HP49 program to compile HP48 UserRPL If you forget and are in Exact mode instead, when you do STR-> or OBJ->, you can fix this later by simply setting Approximate mode and re-EDITing your program (but just press ENTER, no changes); starting an EDIT automatically makes a string in the edit line, and then pressing ENTER automatically recompiles that string. Do exactly the same if you receive an ascii file using Kermit, because a Kermit transfer in ascii mode also automatically creates a string in the sending calc, and automatically compiles the same received string in the receiving calc, which accomplishes all that you need for transferring user programs or data objects between calcs. If you transfer using Kermit and see instead a string beginning with HPHP48-x then this means that you tried to transfer in binary mode instead, which the receiving calc properly refused to digest, so just do -35 CF (set ascii mode) on the sending calc and re-send (note that the receiving calc *automatically* recognizes whether incoming files from another calc are binary or ascii!) Are we done yet? Well, perhaps you'd also like to transfer files between your emulated calc(s) and the PC itself, on which you are running the emulator(s); you can, of course, use Edit > Save Object and Edit > Load Object to transfer between calc stack and PC file, but as you know, this saves and loads *binary* objects, which are specific to only one calculator model, as well as being unreadable by people. Sometimes that's exactly what you want; most downloads from www.hpcalc.org contain directly loadable binary files, for example, and by eliminating the compiler step, it's both more efficient and more sure of being precisely the same object in the end. SysRPL/ML programs must also be saved in binary, because the built-in calc decompiler used for ->STR doesn't handle them (you'd have to use the SysRPL/ML decompiler instead); library files and memory backup files can also only be saved as binary files. What if you want to save ascii files on your PC? Since ascii is only a 7-bit character set while ISO-8859-1 (the 48G/49G internal character set) is an 8-bit character set, whenever we use real calcs we usually let Kermit translate between these internal and external formats, representing program delimiters as << >> for example. But to transfer text between our virtual calc emulator and our PC, it's much easier to use Copy/Paste String, rather than Kermit, so once again, a pair of additional helper programs could be handy for doing the ascii translations that Kermit would have done for us when using real calcs; the programs we can use for this (in Emu48 itself) can be found right here: http://groups.google.com/groups?selm=3AB195F4.6E36010D%40miu.edu And here's a summary of all the ascii equivalents for ISO-8859-1: http://groups.google.com/groups?selm=8013hf%24apm%241%40nnrp1.deja.com Enough? A great mathematician confided That a Moebius strip is one-sided. You'll get quite a laugh If you cut it in half For it stays in one piece when divided. [r->] [OFF] ==== I type: [ 1 0 0 1 ] FFT [ (2,0) (1,1) (0,0) (1,-1) ] then i try [ 1 1 1 1 1 1 0 0 0 0 ] FFT and it given invalid dimension. Why? Most of the time, but not allways i give a vector longer than 4 it fails, but not allways. ==== In article , Joonas Timo Taavetti Kekoni writes: Pad your vector with zeros to a dimension of 16. FFT by definition is a fast form of a general DFT, which uses a decimation based on having a vector sized in a power of two. 4 worked, 10 did not. Try either 8 or 16. Bill alternate E-dress wtstorey@ieee.org.no.spam.please (Use the obvious) ==== Joonas Timo Taavetti Kekoni wrote in message news:... FFT stands for fast Fourier Transform. ALL dimensions of the array must be an integral power of two. The following dimensions work: 1, 2, 4, 8, 16, 32, 64 ... . If you want the transform of [ 1 1 1 1 1 1 0 0 0 0 ] (10 elements), you must make it [ 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0] (16 elements). Try it. Dan ==== Which one?....I'm studying electrical engineering... Regards... References: NNTP-Posting-Host: 3639246341.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== Emanuele Robibaro wrote: Oh, come on now. This newsgroup has hp48 as part of the name. Do you seriously expect that you'd get advice to buy a TI in this newsgroup? And if you'd asked on a TI newsgroup, would you expect advice to buy an HP? Regards, James Content-Transfer-Encoding: 7bit ==== Hi James, James M. Prange wrote: Why not? That's what I tell my friends in my classes with whom I am competing ;-) -- Aaron ==== Emanuale, Of course, the final decision is yours. Do you have a friend(s) who have these calculators so that you can at least try them before you buy? I think you might be better with the 49G than the 48G. The 49G is more expensive, but is a very capable machine, and you can upgrade the ROM to the latest version from the web. It is a worthwhile upgrade (and its free.) There are some disadvantages with the 49G, but these are subjective. In my opinion, they are: 1. The keyboard look and feel of the 49G - many HP traditionalists don't like it. I didn't initially, but I have become used to it. It is significantly different from the 48G(X). 2. The display cover sometimes gives a rainbow effect in some lighting conditions. My solution to this was to remove the cover. I now find the display much easier to read than the 48G(X). However, the screen is now vulnerable to damage if the calculator cover is not in place. But then, that is why the cover is there - for protection. 3. Documentation. This is not a subjective view. The documentation that comes with the 49G is very poor compared to that which comes with the 48G(X). However, there is help available in this newsgroup, from several sites on the web, and, if you really want a lot of detail about the 49G and engineering (not electrical) then there is Gilbert Urroz's two volumes available from greatunpublished.com (in English). I do not have a TI-89, but it is popular. If you don't like the unusual, or if you must have what everyone else has, then the TI-89 might be your choice. If you like something a bit different, but useful and powerful, I think the 49G should be your choice. This is my unashamedly biased opinion. Regards, Mark, Emanuele Robibaro wrote in message news:Idpd8.5215$v7.224318@twister1.libero.it... Content-Type: text/plain; charset=us-ascii ==== What do ou expect to hear in comp.sys.*HP48*? Be a man. Get the 48. -Al Emanuele Robibaro writes: -- Place your hand on a hot stove for a minute and it seems like an hour. Sit with a pretty girl for an hour and it seems like a minute. That's relativity. -Albert Einstein ==== From: Earl White Subject: HP49G for Sale in Sydney, Aus Date: Friday, 22 February 2002 5:57 PM I'm simply not using my HP49G as much as I should, so I've decided to sell it. A$250 ono. I'm in Sydney, NSW. Thanks, - Earl ==== If I press [TOOL] then [NXT] I see CASCM and HELP. They both seem to list the same functions. The same thing in [EQW]. Can anyone tell me the difference or intent? References: <2ODd8.62397$Ig2.16860293@news1.elcjn1.sdca.home.com> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Ed Brawley wrote: HELP expects no argument, and always starts at the beginning of the command list. CASCMD expects a string argument (command name), but if the stack is empty it generates an empty string itself (no error); then it tries to go to that name in the list. After that different start, then both commands act similarly (including both hatching a goose egg at their conclusion :) The Reverend Henry Ward Beecher Called a hen a most elegant creature. The hen, pleased with that, Laid an egg in his hat - And thus did the hen reward Beecher! - Oliver Wendell Holmes, Sr. [whose son served on the U.S. Supreme Court] http://www.lucidcafe.com/lucidcafe/library/96mar/holmes.html http://www.nybooks.com/articles/829 References: NNTP-Posting-Host: 3639245633.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== Vincent Strollo wrote: Other than JHM's pendulum method, it should be easy enough to come up with something using the BEEP and WAIT commands in a loop. Possibly garbage collections would cause a delayed beat now and then, but I guess that you could get around that by including MEM in the loop to force a garbage collection every time. Regards, James ==== Hello! I have a problem,where can I get equation solver for symbolic equations like it is equation solver on hp48/49? And where is command ->Q (to convert 0.333333 to 1/3) on hp49????? Thanx _________________________________________ Tommy / ICQ#:146961951 Current ICQ status: SMS: (Send an SMS message to my ICQ): +2783142146961951 More ways to contact me: http://wwp.icq.com/146961951 _________________________________________ X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300 ==== do the following: press: [alpha][alpha] XQ [enter] this will convert it. Micah Toma262 Stropnik wrote in message news:a565vu$pkj$1@planja.arnes.si... like ICQ to References: <3C74B0B1.9040101@messages.to> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Artur wrote: A note for 49G owners: Unlike your new calc, which doesn't use the cursor keys for any alpha letters or symbols, the HP48 cursor keys all generate various letters or symbols in all alpha ahift modes, so you have to shift out of and back into alpha mode to move the cursor around while editing. Yes, you can assign all the alpha right-shifted HP48 cursor keys to the same functions as the unshifted cursor keys, if you really want to (to save up to one whole keystroke, sometimes :) For example, with any version of the Jazz library (even lite) loaded into a 48G[X], you can make these assignments: ROMPTR 0A1 00A ASS 25.6 ASN ROMPTR 0A1 00F ASS 34.6 ASN ROMPTR 0A1 010 ASS 35.6 ASN ROMPTR 0A1 011 ASS 36.6 ASN If you don't have Jazz but you do have ASC-> from http://www.hpcalc.org/details.php?id=2377 http://www.hpcalc.org/hp48/utils/memory/asc.zip then you can do this instead on a 48G[X]: 29E201A0A0006C3 ASC-> 25.6 ASN 29E201A0F0079FE ASC-> 34.6 ASN 29E201A00106128 ASC-> 35.6 ASN 29E201A01107871 ASC-> 36.6 ASN This can also be done on a 48S[X] using ROM addresses (PTR xxxxx in place of ROMPTR 0A1 yyy) for each key; the addresses can be found in Mika Heiskanen's ent_srt.doc, in a table below the heading: Default Keys for SX [left as an exercise for the determined reader, best attempted after consuming a whole 6-paq :] Mika's everything document (more compact than Kalinowski's :) http://www.hpcalc.org/details.php?id=1782 http://www.hpcalc.org/hp48/programming/entries/ent_srt.zip [r->] [OFF] References: <3C74B0B1.9040101@messages.to> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Re: Making alpha right-shifted cursor keys move the cursor [HP48 only] As requested by Artur Meinild (who's been patiently waiting for this since 2001/10/24 :) More info: If you hold down the re-assigned alpha shifted HP48 cursor key, it will repeat, just as do the unshifted cursor keys, so you can move the cursor further without having to keep pressing a shift key, especially if your reflexes are really fast (as to exactly when to release the key ;-) But why didn't Keyman work, as was originally suggested here: http://groups.google.com/groups?th=57bea298243598e Everything you ever wanted to know about the HP48, but didn't even know to ask: http://www.hpcalc.org/details.php?id=1782 [by Mika Heiskanen] http://www.hpcalc.org/hp48/programming/entries/ent_srt.zip [r->] [OFF] References: <3C74B0B1.9040101@messages.to> <3C74D262.1060304@messages.to> NNTP-Posting-Host: 3639245633.mi.dial.hexcom.net Mime-Version: 1.0 Content-Type: text/plain; ==== 6·paqs E·mail wrote: If any of what I write here if incorrect, then I hope that someone more knowledgeable will point out my errors. It doesn't seem possible to do what you want in UserRPL with the built-in command line editor, even by making use of JHM's LIBEVALs or the KEYEVAL program that he reposted. The ASN command requires a single object to assign to a key. Using the LIBEVAL method, we need the argument for the LIBEVAL plus the LIBEVAL command, so they need to be within a program to be assigned to a key. Similarly, for the KEYEVAL method, we need the keycode and the name KEYEVAL within a program. Perhaps more straightforward would be to use the entries for moving the cursor, but then you need the entry number and SYSEVAL within a program. While in the command line and in immediate entry mode, pressing a key that has a program assigned to it seems to have the effect of pressing ENTER and then executing the program. While in the command line and in program entry or algebraic/program entry mode, pressing a key that has a program assigned to it just causes a beep. That said, perhaps one the alternative editors available at www.hpcalc.org would be more to your liking. Also, I don't know, but maybe KEYMAN would allow you to do what you want. Regards, James References: NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== The following slightly augmented 48S/48G program is fully identical to the 49G's KEYEVAL command, in which negative rc.p (row, column, keyplane) always performs the default keyboard function, and positive rc.p returns a user key assignment instead, if one exists and user mode (flag -62) is set: << DUP :Ck&DecKeyLoc: #41CA2h SYSEVAL ROT 0 > :Key>U/SKeyOb: #3FA57h :Key>StdKeyOb: #3FB1Ah IFTE SYSEVAL :DoKeyOb: #40454h SYSEVAL >> HOME 'KEYEVAL' STO Note: 48S/48G only! (and backup memory, just in case) As usual, the :tags: (entry point names) are superfluous, and may be omitted to shrink the program. WARNING: Do not invoke the review key (shifted cursor-down key) by typing, e.g. -35.3 KEYEVAL (or -35.2 KEYEVAL on 48S[X]) into the edit line and then pressing ENTER; this could hang or crash the HP48, possibly with a Memory Lost (it would be prudent never to invoke KEYEVAL from the command line!) In the 49G, note that there's no such thing as a Bad Argument Type for the built-in KEYEVAL command (try any type of object!) [r->] [OFF] ==== Artur wrote: Here are the assignments you wish: UPKEY (25.6) :: NoEdit?case CHR 90 GOTO PTR 3B382 (SX: 3A95B) ; DOWNKEY (35.6) :: NoEdit?case CHR 8F GOTO PTR 3B4AF (SX: 3A663) ; RIGHTKEY (36.6) :: NoEdit?case CHR 97 GOTO PTR 3B4F5 (SX: 3A8ED) ; LEFTKEY (34.6) :: NoEdit?case CHR 8E GOTO PTR 3B441 (SX: 3A843) ; Notes: * Entries tested on my versions J, P and R. * The repeating feature works. * They don't work in the EquationWriter, just beep. (Inserting Modifier won't work). * I've observed one difference from the standard behaviour: if they're executed without a command line active, the correspondent char is placed into the command line but the ALPHA state is not retained, even if alpha lock is set. This is due to the word UnLockAlpha present in InitKeyModes, which is called by InitEdModes, which is called by NoEdit?case. If it's annoying, I suggest the following version: UPKEY v2 :: TakeOver EditExstCase :: GOTO PTR 3B382 ; ClrAlgEntry ClrPrgmEntry CLRLOWERCASE INSERT_MODE LastEdit=0 CHR 90 DoKeyOb ; For the rest of arrow keys the programs are easily obtained. It uses some unsupported entries, but they're static: (SX and GX) ClrPrgmEntry EQU #1155C CLRLOWERCASE EQU #539AE LastEdit=0 EQU #40CC3 Hope this helps. Regards, Bye. Jordi Hidalgo HPCC member #1046 johil@tv3mail.com - References: <3C74B0B1.9040101@messages.to> <3C74D262.1060304@messages.to> <3C74D5F1.907BB157@earthlink.net> <3C74FDAB.90502@messages.to> <7fcf10a1.0202220235.134a0e17@posting.google.com> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Hi, Jordi! That was quite an impressive amount of work and research (and testing !!!) Well, if the 48GX alpha arrow characters are going to be disabled from being generated throughout an entire editing session, why bend over backwards to enable them again for only the very first character that *begins* an edit? (and as you say, it acts weirdly - turns off Alpha again, which takes mucho extra work to bypass). I suspect that our friend would never start off trying to create an arrow character as the first character in a brand new command line; if he did ever want to do so, he could either turn off user mode or use CHARS, as he said, just as he would *have* to do at all times thereafter, anyway. He also won't be trying to move the cursor even before typing his very first character of a new command (when there is no cursor to move, anyway). But if he did start right off, with no existing command line, to hit alpha right-shift and a cursor key, with said keys acting as if unshifted at all times, unconditionally, then all that would happen would be to perform STACK, PICTURE, VIEW or SWAP, which can be exited from or undone most readily. But Microsoft has spent millions of dollars (and forced everyone else to do likewise) to add such indispensible features as the What's this? button, so that when I come upon a cryptic GUI entry labeled Widget factor, I can click What's this? and then click on that entry box, and then up pops precisely the information I need to know, which invariably says Enter the Widget factor, so why shouldn't I aim to provide just as complete and thorough a job in every HP calc program? Uh-oh, this took me ten minutes to write, and it added no vital new functionality whatsoever, so I shouldn't even have invested the effort to reply ;-) ----------------------------------------------------------- With best wishes from: John H Meyers ==== I have made a program that do that: in Alpha Mode if you press an arrow key long enough (about half a second) it will start moving the cursor in the text, it makes your cursor work like if you don't have Alpha Mode turned ON. This program is in the MetaKernel section and is to be used with it. Thanks for the attention. 6·paqs E·mail <6paq@messages.to> wrote in message news:3C74FDAB.90502@messages.to... then shift keystrokes for turn ==== John H Meyers wrote in message news:... Would any kind soul like to expand section 1. Introduction to this document a little so we who are _not_ sysRPL gurus can better use it? I don't mean write a sysRPL tutorial, but just a few words on how to use each section and maybe some column headers. (They are not the same throughout the document, it seems.) Sure, it's obvious to the guru, but it would sure help me. Karl. P.S. Are there any other entry lists out there on the net besides this and those on hpcalc.org? There sure seems to be a lot of programs using entries not listed in any of these tables. Example: (from keyman's RclK) ptr 3fbc9. That's a GX-only entry; where is it on the SX? How did the author find out about it? If this (and others I encounter when trying to translate GX->SX) aren't in tables, how could I find them? I assume the people who have made tables had some procedure to help them. References: NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== Tim wrote: You and I have the only ones left :) Well, the 48G[X] included a built-in (but slightly buggy) APLY program, which manifested itself after you typed TEACH and looked in the HOME EXAMPLES PRGS directory, and was also listed (still buggy) in the optional AUR manual. Rather than copy the program, here's a short version (with bugs fixed) which works on any 48G[X]: << -55 CF 1 CF #E803Ch LIBEVAL >> 'APLY' STO Note that LIBEVAL is *not* syseval The stack arguments are: [[ array or matrix ]] function The function may be any program, function or command, which may even be enclosed in a list, e.g.: [ 1 2 3 4 ] { SQ } APLY ==> [ 1 4 9 16 ] But here's a program which works on all 48S[X], 48G[X], or even 49G: << -> f << 1. OVER SIZE OBJ-> 1. > { * } IFT FOR n n DUP2 GET f EVAL PUT NEXT >> >> 'APLY' STO In the 49G it avoids pausing to reply to dialog boxes which demand variable deletion, radians mode, and other flag/mode changes, which MAP (like every other CAS command) requires [pardon my kicking the 49G, but it looks so much like a football :] But wait a minute -- didn't MAP once work *without* doing all this? Does anyone still have an old ROM version to try it on? Here is even a version for applying a function to just one column of a matrix (this may be useful for a statistics matrix or regression analysis, to transform one column using any function): Arguments: [[ matrix ]] Column_number function Program: << -> c f << 1. OVER SIZE OBJ-> DROP2 FOR n n c 2. ->LIST DUP2 GET f EVAL PUT NEXT >> >> 'APLYC' STO There are, of course, some functions, such as multiplying or dividing by a constant, which do not require any special function to apply E.g. [ 1 2 3 4 ] 2 * ==> [ 2 4 6 8 ] Say, did you guys ever play against the HP-ACO soccer team? [r->] [OFF] NNTP-Posting-Host: ai15.aula.eis.uva.es Mime-Version: 1.0 ==== John H Meyers escribi227: OK, let's try. VERSION Version HP49-C Revision #1.05 Copy.... VER 4.19990717 Is that old enough? :) Let's start with these flags: RCLF { # 880000004000FF0h # 0h # 12014002000000h # 0h } I didn't know exactly what to test, so I used this matrix (TYPE 29.) and MAPped << X SOLVE >> and << 'X' SOLVE >> into it: [[ 'X-3.' 'X-2.' ] [ 'SIN(X)' 'SQ(X)+1.' ]] With X undefined, << 'X' SOLVE >> MAP asks to change to radian mode. NO errors out SOLVE Error: Mode switch cancelled, and the stack returned is: 8: [[ .... ]] @ The original matrix 7: [ 'SIN(X)' 'SQ(X)+1.' ] 6: 164 2h @ 164 being something like a round #. @ I'm not into System, are these the BINTs? 5: [ 'X-3.' 'X-2.' ] 4: 'X-2.' 3: 164 2h 2: 'X-3.' 1: 'X' If the mode switch is accepted, everything goes right. If the matrix has more than one 'trigonometric cell', the calc only asks once for a mode change. Your APLY program fails here with PUT Error: Bad Argument Type. It leaves: 3: [[ 'X=3.' 'X=2.' ] [ 'SIN(X)' 'SQ(X)+1.' ]] 2: 3. 1: { 'X=... } @ The *list* of solutions for 'SIN(X)' That's after having changed into RADians. When in DEGrees, it also asks for a mode change, but leaves the stack cleaner if rejected: 4: ... @ Original matrix 3: 1. 2: 'X-3.' 1: 'X' Accepting the change errors in PUT. When MAPping or APLYing << SIN >> to a RANdoM matrix, no mode change is done and both MAP and APLY work as expected. Now, let's stick to RADians and change the second row of the matrix into 'X-3.' and 'X-2.' so that SOLVE returns only one solution and APLY can work with it. STOre something into 'X': 3 X STO << 'X' SOLVE >> MAP returns the expected answer: 1: [[ 'X=3.' 'X=2.' ] [ 'X=3.' 'X=2.' ]] BUT the 'X' variable disappears! Doing this in exact mode with the matrix still containing reals, we are asked to change mode. If we answer NO, we get garbage again. If we answer YES, we get the correct matrix. In any case, 'X' disappears. Exactly the same happens with APLY. If the matrix contains integers, we are not asked to change mode independently of which mode we are in (exact or approx). Make sure you have X defined, your matrix contains reals, and you are in approx mode. << X SOLVE >> MAP errors with SOLVE Error: Bad Argument Type as expected, leaving garbage in the stack. The X variable hasn't disappeared. APLY fails too. Now, the best of our performance tonight. Turn into exact mode. STOre an integer into 'X' and << X SOLVE >> MAP the matrix. No 'errors' (except if you need a mode change and you don't accept it). The 'X' var disappears. The calc returns 1: [[ { } 'X=2' ] [ 'X=3' 'X=2' ]] APLY fails because of the list. You may get reals instead of integers if the matrix had them and you were in approx mode. References: <3C764096.F3E7BC96@alumnos.uva.es> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit NNTP-Posting-Host: 208.145.205.253 X-Trace: corp.newsgroups.com 1014390446 208.145.205.253 (22 Feb 2002 09:07:26 -0600) Lines: 86 ==== M207ximo Casta226eda Riloba kindly responded to my inquiry about trying MAP in an old ROM version (e.g. 1.05), to see whether it forced mode changes, etc. Let me summarize what was written by saying that it tried to apply the CAS command SOLVE (which sometimes generates a list of results) to a symbolic matrix. The principal reason that this fails (as well as when MAP is replaced with APLY) is that lists are not valid matrix elements, even in a symbolic matrix, so naturally even a valid program such as APLY is bound to error when the function being applied generates invalid matrix elements, just as even this simplest of commands fails: [ 5. ] 1. { .5 } PUT In addition, because the command or function being applied was itself a CAS command, this clouded the issue of whether MAP itself was demanding mode changes, or whether this was only the result of the other CAS commands. What I was looking to be tested was using MAP to apply a non-CAS function, which would reveal whether MAP itself was forcing the CAS mode-settings to be changed, e.g.: DEG [ 30. ] << SIN >> MAP The above will properly reveal whether MAP itself was forcing mode changes in your ROM version 1.05, which it certainly does in ROM 1.19-6, in which the wrong result is obtained, whereas DEG [ 30. ] << SIN >> APLY always produces the correct result: [ .5 ] Version 1.05 may sometimes have allowed a list to appear within a symbolic matrix, but later ROM versions may have become less tolerant of what sorts of objects are allowed as matrix elements. No doubt 'VX' contained 'X', so 'X' was purged upon demand of the CAS. This is one of the most illogical things about the CAS, namely that the variable named in 'VX' must always be purged, even from a higher directory, even if it has nothing whatsoever to do with the command being executed, e.g. if 'VX' contains 'X' then 'Y=5.' 'Y' SOLVE will still purge 'X', and then will fail anyway if 'Y' happens to exist. Purging 'X' from the current (or higher) directory also can't assure that another 'X' doesn't exist in an even higher directory, so if a similar project were started again today, we might guess that it would not be designed this same way again, unable to function because some variables of a given name exist anywhere at all, even with flag -3 (numeric results) cleared. Do you have time to try the above simple example in your older ROM and post the results, viz.: DEG [ 30. ] << SIN >> MAP Thanks for any new forthcoming research :) [r->] [OFF] -----= Posted via Newsfeeds.Com, Uncensored Usenet News =----- http://www.newsfeeds.com - The #1 Newsgroup Service in the World! -----== Over 80,000 Newsgroups - 16 Different Servers! =----- NNTP-Posting-Host: ai18.aula.eis.uva.es Mime-Version: 1.0 ==== John H Meyers escribi227: Yes, it did. I think it was discussed here as a dangerous thing, and it was forbidden in older ROMs. In fact, in ROM 1.05 you can store lists, matrices, programs... in a matrix. Well, I did try and reported it. Maybe it was too buried in the body of the message (and language is not one of my strong points, I can't even order my ideas). Does DEG { 4 4 } RANM << SIN >> MAP fit? No mode change in 1.05, and the results are the same using APLY. References: <3C764096.F3E7BC96@alumnos.uva.es> <3C766129.6C41695A@miu.edu> <3C7663FB.E4AE4C73@alumnos.uva.es> NNTP-Posting-Host: thames.mum.edu Mime-Version: 1.0 ==== M207ximo Casta226eda Riloba wrote: The most convincing thing would be to see any actual numeric values before and after applying << SIN >>, which would prove beyond a shadow of a doubt whether or not DEG mode was still in effect, but all the above says is that random 1-digit integers or reals (from RANM) were input, while we know not what was output, and if certain flags were already set, the CAS might this time also have been silent about any mode changes. DEG [ 30. ] << SIN >> MAP should result in [ .5 ] (Does it?) With version 1.19-6, the above results in [ -.988031624093 ], so if the result was indeed [ .5 ] at an earlier time, then we know that yet another command, which once acted exactly as expected, veered off the track while we weren't watching, much as did the MES commands, which have since been put back on track again, just in time to keep various original Engineering/Physics Equation libraries (especially those with units) from becoming seriously broken. And that's why we need an independent, non-CAS 'APLY' command, for those few people, once quaintly known as engineers, who still need to specify correct numeric values (in units actually used on production shop floors, or by surveyors, etc.) for various factory robots to continue to be able to stamp out parts :) Could this be why various current HP models seem to be going out of production? Were HP engineers all forced to switch to the 49G, from which they can only produce algebraic formulas to feed to those aforementioned robots, which don't actually digest such input? Maybe the final production runs of 49G (if any are still to come) should lock the Algebraic mode on, and do away with RPN, which only makes people who remember that era expect too much :) Now JYA/BP, I have roasted the 48G just as much, over the long haul, so don't feel bad -- equal time has been devoted to all :) And when we add up all the pluses and minuses, in this zero sum universe of ours, we can only get zero anyway (of course, that could either be 0+0 or 0-0, which may still make a profound difference to the CAS :) Nothing is new under the Sun, as all has been said before: To-morrow, and to-morrow, and to-morrow, Creeps in this petty pace from day to day, To the last syllable of recorded time. Life's but a walking shadow, a poor player That struts and frets his hour upon the stage, And then is heard no more; it is a tale Told by an idiot, full of sound and fury, Signifying nothing. http://education.yahoo.com/reference/shakespeare/plays/4155.html http://www.nccbuscc.org/nab/bible/ecclesiastes/ecclesiastes1.htm NNTP-Posting-Host: ai13.aula.eis.uva.es Mime-Version: 1.0 ==== John H Meyers escribi227: What I meant with the results are the same using APLY is that DEG { 4 4 } RANM DUP << SIN >> MAP SWAP << SIN >> APLY - returned a matrix of zeros. Anyway, you are right again, I didn't say that the first matrix was not full of zeros. Yes, it does. The calc doesn't ask to change modes nor changes them itself. [...] Maybe there's a reason for not upgrading the ROM? One last thing about mode change: Aprox mode: DEG 1 XQ doesn't ask a thing. Exact mode: DEG 1 XNUM asks to change into radians. If cancelled, errors out, changes to approximate mode, stays in degrees mode, and returns 1 (exact integer). This is more problematic when XNUMming 'SIN(30)', of course. Content-Transfer-Encoding: 7bit ==== I just uploaded KEYMAN 2.2002 for the 49. I used HPComm 304. It was a corrupt upload I assume because the file began HP%%blah blah blah So I used Obfix in OT49. I then attached it to port two... Now I cannot start the calc. No cold boot. No warm boot. No pin reset. I was given the option to recover memory once and when I said no it cycled on what looked like the garbage collection screen. Just streams of barf on the screen. I will try it again now... :( Any ideas? Mike Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit ==== 1.19-6 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit ==== I was able to re-load 1-19.6,(enter + on). It loaded as normal but it is still freaked! It boots, goes through the parisse flicker then turns off. Then I have to stick it. On A F, or the like, does not work. hmmmmm :( mike pissed off ==== Can i write and test any code i write for the hp48g on my pc ? What software will i need to do this ? thanks Tim NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== I use Emu48. Look in www.hpcalc.org for this and others emulators. Regards. Raul Tim escribi227 en el mensaje news:M%Ed8.865$RV3.5514@news-server.bigpond.net.au... Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit ==== There is HPShell, and HP-IDE. The first for user RPL and the latter for sys-Rpl. Both are very good and, of course, available at HPCalc.org. Cheers Mike Tim wrote: ==== Thank you for this great help. Samuel. ==== Hello. I'm starting to learn sys-rpl and I use Jazz on my calc. My question is what I have to do to deal with arrays with Jazz and to store them as local variables. Is it possible? How can I work after with that array? I did a program in User-RPL that converted a real array into a symbolic array and vice-versa, and I would like to write that program in SYS-RPL. Thanks. akula NNTP-Posting-Host: cable53a069.usuarios.retecal.es Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit ==== Because I'm lazy ;-), I'd look in www.hpcalc.org... Regards Raul akula escribi227 en el mensaje news:3c762337.3298222@news.ya.com... X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 ==== You certainly found time for the trivial and unnecessary act of starting this thread. There's nothing wrong with favoring one calculator over the other but now that you started the discussion why not stick with it? Peace Maker wrote in message >