HP-309 === Subject: Re: 50g Equation Library Gone :-( Bytes: 1610 > I did something dumb in the connectivity software and accidentally > deleted my HP 50g equation library. I've searched the 'net but can't > seem to find the original library posted anywhere. Can anyone point > me to where it might be hanging ready to download? You may also want to try here: http://www.hpcalc.org/details.php?id=6515 === Subject: Re: 50g Equation Library Gone :-( Bytes: 2020 > I did something dumb in the connectivity software and accidentally > deleted my HP 50g equation library. I've searched the 'net but can't > seem to find the original library posted anywhere. Can anyone point > me to where it might be hanging ready to download? > Brian You may also want to try here: http://www.hpcalc.org/details.php?id=6515 http://www.hydrix.com/Download/Hp/4950Libraries/ I've bookmarked the site. Knowing me I'll need it again real soon :-) I recognize a few names on the Hydrix website. Are these guys refugees from HPs old calculator division? === Subject: Re: 50g Equation Library Gone :-( (where to get Equation libraries and Periodic Table library for HP50G/49G[+]) >> http://www.hpcalc.org/details.php?id=6515 > http://www.hydrix.com/Download/Hp/4950Libraries/ Both zips currently contain identical files, so take your pick. > I recognize a few names on the Hydrix website. > Are these guys refugees from HPs old calculator division? Hydrix was indeed started by former HP ACO (Australia) folks: See also: http://hydrix.com/aboutus/index.php?id=12 -- .9b === Subject: Re: 49G+ and simplex method Bytes: 1405 SIMP in the list that the last poster gave you seems to run on my 49G +. I haven't tested it with a sample problem to which I have the answer, but the library downloads, loads, and attaches. fine. Les === Subject: Configuration settings for Emu48 as shipped with Debug4x Bytes: 2126 I have discovered that when open the default instance EMU50, download, store and attach a library, but say NO to do you want to save changes? when I close it, the custom changes remain when I open the default configuration again. The *.e49 default files in question do not seem to change--at least their time stamp doesn't. I have tried to locate the most recently changed files after a use of EMU50 or EMU49G+, but I am at a loss to guess where such changes are stored. I am guessing somewhere in the bowels of the registry. The free-standing version of EMU48 doesn't behave this way. I believe that the version that ships with Debug4x has been customized in some way. Could someone enlighten me how? The one thing that I always liked about the standalone Emu48 is that it doesn't seem to make much of a footprint on the computer. If the Debug4x-modified version makes registry changes or stores configuration info in some sort of *.ini or *.cfg file that I can't find, it would be nice to find it! TIA, Les === Subject: Re: Configuration settings for Emu48 as shipped with Debug4x > I have discovered that when open the default instance EMU50, download, > store and attach a library, but say NO to do you want to save > changes? when I close it, the custom changes remain when I open the > default configuration again. The *.e49 default files in question do not seem to change--at least > their time stamp doesn't. AFAIK: (neither does SHARED.BIN, or whatever name may be used for the file holding the HP48 slot 2 card image, when used). the ROM/SHARED files are updated in real time (even though their time stamps aren't changed). [r->] [OFF] === Subject: Re: Configuration settings for Emu48 as shipped with Debug4x [about real-time changes to ROM, upon saving a library to port 2, not being reflected in updating the ROM file modification time] The reason why Emu48 ROM file time stamps are not updated, according to the author of Emu48, is because of the use of so-called memory mapped files. On memory mapped files the time stamp information is not updated by the OS. Topic search on Google: until actually saved, however, allowing both crash recovery not on disk, until saved, much like normal editing of a document. [r->] [OFF] === Subject: Re: Beginner needs SysRPL Help Bytes: 3650 > As a means of exploring lams, loops, etc., you've learned some things with > this example. With SysRpl, you learn by doing (and TTRMing occasionally - > always backup). > favourite little UserRPL programs to SysRPL. I am interested mostly in numerical stuff, and these compute something called the incomplete gamma function by infinite series or continued fraction expansion. (Actually, the original inspiration for my UserRPL and RPN versions of this is the C code in Chapter 6 of Numerical Recipes.) The little programs are perceptibly faster than the UserRPL originals, which frankly weren't too slow themselves, and are about the same size. But since I use extended reals internally I am able to relegate rounding errors to the 14th and 15th digits, which means that all 12 digits returned in a result are all most always right compared to a gold standard result in Maple or Mathematica. This is very gratifying to be able to do on a programmable calculator, even if it has not practical real life use. My next task is to work with complex numbers with real and imaginary parts that are extended reals. I have a UserRPL program that computes the sine and cosine integrals by a complex continued fraction expansion. It seems a little pokey for some arguments, so it will be interesting to see how SysRPL speeds it up. I backup obsessively to the SD card--I have a little routine that archives what I want with one keypress. I have to learn a bit more about argument checking and manipulating the CAS configuration from within a program. I have found that if the 49G+ is not in approx mode and I pass my little programs integer arguments (though the expect reals), the thing just hangs and I have to ON+C it. But if I remember to enter such arguments with a decimal point, the programs work fine irrespective of whether the calc is in approx mode or not. I will have to be sure to have the machine in complex approx mode when working with complex numbers internally. After I get some facility with complex numbers, I hope to get comfortable with arrays, in particular vectors of extended reals. Some differential equation code I have will need them. Les === Subject: HPGCC and inline assembler Bytes: 1966 in the meantime, I really started to like programming-C my calculator. After years and years of User-, Sys-RPL and assembler, from 28S over 48G(x) up to 50g, this refreshing easiness of handling complex (and quick) calculations really embraces me 8) (Although the availability of PC-equipment is a must, which doesn't make this one an alround solution...). Basically, inline assembler works great and if something unusual happens, there is still a workaround available. But sometimes, I still want more: Obviously, triples (that's what I call it), are not properly recognized by GCC inline asm: ...nt mov %0,%1,ror#1nt ...nt I really tried hard, but, no matter what I do, the third argument is always skipped. The instruction only performs mov %0,%1. Additionally, this will give you an unsupported processor message: stmfd sp!,{r3-r5}nt Am I doing (or expecting) something completely wrong or is it just a limitation of the HPGCC implemetation of the ARM assembler? Axel === Subject: Re: HPGCC and inline assembler Bytes: 3046 in the meantime, I really started to like programming-C my calculator. After years and years of User-, Sys-RPL and assembler, from 28S over > 48G(x) up to > 50g, this refreshing easiness of handling complex (and quick) calculations > really > embraces me 8) (Although the availability of PC-equipment is a must, which > doesn't make > this one an alround solution...). Basically, inline assembler works great and if something unusual happens, > there is still > a workaround available. But sometimes, I still want more: Obviously, triples (that's what I call it), are not properly recognized > by GCC inline asm: ...nt > mov %0,%1,ror#1nt > ...nt I really tried hard, but, no matter what I do, the third argument is > always skipped. > The instruction only performs mov %0,%1. Additionally, this will give you an unsupported processor message: stmfd sp!,{r3-r5}nt Am I doing (or expecting) something completely wrong or is it just a > limitation > of the HPGCC implemetation of the ARM assembler? I've used lots of inline assembler in hpgcc, and never had a problem. The only thing I do different is that I usually use one individual asm statement per instruction, therefore I don't need nt but it shouldn't make a difference. I'm not aware of any limitations/bugs of gcc in that area, but in any case the problem is with gcc, not HPGCC (which is a set of libraries, not a compiler). If you keep having problems, you can use any available gcc tolchain (gnuarm or codesourcery are my preferred), try replacing the one we provide with hpgcc. Make sure you use the proper syntax for the register arguments, maybe this can help: http://www.ethernut.de/en/documents/arm-inline-asm.html Claudio === Subject: 50G Serial port - 1200 bauds possible Bytes: 2772 After building my own serial interface, I started a series of tests. It turns out that as I guessed in a previous thread, there is no reason why the calculator cannot communicate at 1200 bauds. I still cannot understand the absurd and arbitrary decision of dropping compatibility with those lower speeds. In any case, I'm not writing this post to complain, but to bring a simple solution: Write the following program, it requires library 256 to be attached: << 16. * 48000000. / INV 0. RND 1. - R->B ->H 11. 18. SUB #07500028h SWAP POKEARM >> [replace the <<, >>, -> symbols with the proper ones] I'll assume it was stored with the name 'SETSPEED'. To use it, simply set all parameters to establish a serial communication at any speed, then go back to the calculator stack and execute: OPENIO 1200 SETSPEED (where SETSPEED obviously calls the program given above) other arbitrary speed). It will work at your selected speed until the port is closed with CLOSEIO. Luckily, the Transfer application doesn't touch the port if it's already open, so it will work even when using the nice UI to transfer files (the screen will show the speed you had selected before, simply disregard since SETSPEED overrides the speed at a much lower level and the UI is not aware of that). I tested it transferring a directory at 110 bauds, 300 bauds, 1200 bauds and it worked fine. I didn't wait for the transfer to finish at 110 bauds because in Kermit mode it was transferring 4 bytes per second (my dir was 8kbytes), that's more than what my patience can take for now. Claudio === Subject: Complex Arithmetic in SysRPL Bytes: 2679 I have reviewed the brief text and the less brief tables in Kalinowski and Dominik with some interest, and I have to tell you that I can't seem to find out the syntax for the most basic of operations--binary arithmetical manipulations of complex numbers. There seems to be no such thing as C%+, C%-, C%*, or C%. But we seem to have C%SQRT, C%LN, C%COS, etc, which I have demonstrated to myself work as you would expect. For example, this little snippet (within a properly delimited program, of course) will compile: C% 2 7 C% 6 8 %+ but it seems only the real parts are added, and 8 is what is returned. Does SysRPL expect one to decompose every complex number to Re and Im parts and add (or subtract) each separately and then use %>C% to recreate a complex number? That is feasible (though cumbersome). Even more cumbersome is multiplication and division. I just find it peculiar that there exist functions to raise complex numbers to real or complex powers, compute trigonometrics, and take square roots or reciprocals, but no clearly documented easy way to carry out basic arithmetic. What am I missing here? And if you can point me to the page reference in Kalinowski and Dominik, I would be a little sheepish but very grateful. I would like to eventually work with long complex numbers--a potentially challenging undertaking since the repertoire of math commands for them is much smaller than that for regular complex numbers--but if I can't figure out how to program basic arithmetic and am sort of stuck! TIA for any direction and your boundless patience. Les === Subject: Re: Complex Arithmetic in SysRPL lcw1964 schrieb im Newsbeitrag >I have reviewed the brief text and the less brief tables in Kalinowski > and Dominik with some interest, and I have to tell you that I can't > seem to find out the syntax for the most basic of operations--binary > arithmetical manipulations of complex numbers. There seems to be no such thing as C%+, C%-, C%*, or C%. > Of course there are functions for complex arithmetic. C%C*C C%C/C C%C+C C%C-C and even C%C*R C%C/R C%C+R C%C-R Internally they decompose the complex numbers and recompose them after the operation. However that doesn't matter for the user... HTH Raymond === Subject: Re: Complex Arithmetic in SysRPL Bytes: 2357 Of course there are functions for complex arithmetic. > C%C*C > C%C/C > C%C+C > C%C-C and even > C%C*R > C%C/R > C%C+R > C%C-R > Raymond, I tried the first four, and can't seem to get the program to compile. ER in the MASD claims the label doesn't exist. I didn't bother trying the last four. Moreover, a full text search of the Kalinowski and Dominik PDF makes no mention of any of those commands. Could they be part of a later enhancement to SysRPL? Do I possible have an out of date extable? I am testing my code on the EMU50 emulator that comes with Debug4x, though I am not working in Debug4x, but rather right in the emulator. I have found that I can always resort to x+, x-, x*, x/, etc., but the point of Sys RPL is to always to use the faster native commands if possible. If I have my heart set on doing full math internally with long complex numbers (real and imaginary parts are extended reals, I may have to write my own routines from scratch anyway! Here's to reviewing high school math.... Les