A79 ==== If I have an equation, say (315*t + 105*t^3)/315 on my hp49g with ROM 1.18, how can I express that as t + (1/3)*t^3?? What commands can I use? Are there any flags regarding this? you can use PARTFRAC there is a flag that governs the order in which the polinomials are displayed flag -114 set: 1+x+x^2....x^n ==== in standardstettings (exact mode) , just put it in the stack or select it in the EQW and press PARTFRAC (ALG menu). if you want it ordered ascending (t, t^2, t^3 ..) there is a certain flag (-114) for this. | If I have an equation, say (315*t + 105*t^3)/315 on my hp49g with ROM ==== ==== ==== Using PARTFRAC in this case returns: t^3+3*t ------- ==== Somebody know if there are somekind of special considerations to use the compiler ASM in the HP49?, I know that this compiler expects a string in level one and it(the source) have to end with the @ caracter (yes, the caracter must to be on a line by itself,and all the ==== ==== When you perform PC=(A) it jumps as you said to the address saved in A[A] It's equivalent to doing something like: D0=A A=DAT0.A PC=A If you look at the start of a prologue, it always contain the address PRLG If you do: D0=(5)DOCODE A=DAT0.A or D0=(5) Any_porlogue_address A=DAT0.A You will always get the same address. This address contains the code on how to push the object on the stack and is also used to know if the object is either an object itself or a pointer to ==== you dare call me a geek any more ;-) (view with a fixed font) Direct versus Indirect Execution RPL uses the following CPU registers to hold what are called 'the RPL pointers': B.A - pointer to the next available slot in the return stack D.A - available memory in nibbles DIV 5 D0 - pointer to runstream D1 - pointer to top of data stack Under normal circumstances, D0 points at the next location in the runstream. This location contains either a pointer to the object to be executed (indirect execution) or the object itself (direct execution). Passing execution from one object to another is done by a small slice of machine code known as the 'inner loop': =LOOP A=DAT0 A D0=D0+ 5 PC=(A) The first five nibbles of any object contain the address of the prologue for that particular object type. The prologue contains the code to execute that object. indirect execution ------------------ In case the runstream contains a pointer to the object, it can easily be seen that the inner loop causes the object's prologue to be executed, and advances D0 correctly to the next position in the runstream. Remark that, upon invocation of the prologue, A.A contains the object's address. runstream object prologue +-----+ +-----+ +-----+ +-----+ |.....| | | | | | | | | +-----+ | | | | +-----+ +-----+ Let's have a look at a couple of prologues: =DOREAL D=D-1 A * address #02933 HS=0 0 GOC L0298F D1=D1- 5 * write to next stack position DAT1=A A A=DAT0 A * inner loop D0=D0+ 5 PC=(A) .. L0298F GOTO L02D52 Every object prologue (save for primary code objects) starts with the same 5 nibbles, D=D-1 to decrement available memory and a 3-nibble NOP. This is particularly convenient for data objects, as their execution will simply put them on the stack - consuming one stack level, or 5 nibbles. There is a second use for the first five nibbles as we'll see further on. The GOC instruction handles the case where we run out of memory and a garbage collection is necessary. The rest of the code simply puts the data object on the stack and resumes execution of the next object in the runstream with the inner loop. In fact, every data object has this same code as prologue. =DOCODE D=D-1 A * address #02DCC HS=0 0 D=D+1 A LC(5) #A C=C+A A RSTK=C RTN A code object is executed straight away, not put on the stack. So the D=D-1 instruction has to be cancelled by a D=D+1, and then execution must continue 10 nibbles beyond the start of the code object (skipping the prologue pointer and length field). =DOCOL D=D-1 A HS=0 0 GOC .. C=B A CD0EX DAT0=C A D0=D0+ 5 AD0EX B=A A D0=D0+ 5 A=DAT0 A D0=D0+ 5 PC=(A) B.A contains the pointer to the next free position in the return stack. =DOCOL copies D0 there (pointer to next slot in runstream), augments the pointer, and passes control to the object following :: . =SEMI CON(5) (*)+5 C=B A CD0EX D0=D0- 5 A=DAT0 A AD0EX B=A A D=D+1 A A=DAT0 A D0=D0+ 5 PC=(A) =SEMI does the opposite of =DOCOL: it pops the return stack and passes control to the object at the popped address. Remark that =SEMI is a primary code object (PCO) and is always executed indirectly. direct execution ---------------- When the runstream contains the object itself, a metaprologue is executed. The first five nibbles of any object prologue are always the same, and their hexadecimal representation represents the address of the metaprologue: #028FC Actually, the first five nibbles read CF820 from low to high; but when these are read into the A register using A=DAT0 A, they show up with 'C' in nibble 0, 'F' in nibble 1 etc. runstream prologue metaprologue (#028FC) adjusting code +-----+ +-----+ +-----+ | | | | +-----+ +-----+ +-----+ +-----+ |.....| |.....| | | | | | | | | | | +-----+ +-----+ +-----+ +-----+ | | +-----+ After execution of the inner loop, D0 is not pointing to the next object, but simply five nibbles into the current one. Moreover, the object prologue is not executed, and A.A does not point to the object as in the indirect case. The metaprologue must therefore adjust D0 and execute the prologue, for any object. Ten nibbles before every object prologue is a pointer to code that does just that, for that object type. Thus, the metaprologue (=PRLG) simply reads: =PRLG LC(2) #A A=A-C B PC=(A) A.A contained the address of the object's prologue in the first place, and apparently A.B is always greater than #0A. Let's take a look at the adjusting code for DOREAL: #02C49 D0=D0- 5 AD0EX * A=D0 D0=A D0=D0+ 5 D0=D0+ 16 D=D-1 A * object prologue repeated GOC L02C91 D1=D1- 5 DAT1=A A A=DAT0 A D0=D0+ 5 PC=(A) Pretty straightforward.. D0 and A.A are correctly adjusted, then the object's prologue is effectively repeated, save for the now superfluous 3-nibble NOP. The adjusting code for DOCODE reads: #02E20 C=DAT0 A * read length D0=D0- 5 AD0EX * A.A has to point at the object C=C+A A D0=C D0=D0+ 5 LC(5) #A * object prologue repeated C=C+A A RSTK=C RTN In this case D0 points at the code object's length field, so it is read and added to the object's absolute address. Similarly, the 5 nibbles immediately preceding an object's prologue contain a pointer to code that skips the object - and then branches back into a loop that skips the next object etc., as may be required in if-then-else situations for instance. for DOCODE, the skip code looks like: #0309A C=DAT0 A AD0EX C=C+A A D0=C GONC L03061 * (BET) This is the same code as the adjusting code, but simplified because A.A does not have to point to the object and the prologue does not have to be executed. Now, for =DOCOL, the adjusting code is more complicated. To determine the new value of D0, the end of the secondary has to be determined by successive SKIPOB's, which may take a relatively long time to execute, especially if there are many composite objects included. This is really a pity since the length of a secondary can be determined at compile time and could have been included to make these skips faster. There is a way to do this yourself: instead of coding :: body ; code the following: ASSEMBLE CON(5) =DOCODE REL(5) EndOfCode C=C+CON A,10 A=C A NIBHEX 8D * first part of a GOVLNG instruction (or CON(2) #D8) RPL :: body ; ASSEMBLE EndOfCode RPL Since the secondary has been converted to a Code object, skipping is very fast indeed. How does it work? Remark that executing a secondary indirectly requires A.A to point at :: and D0 to point at the next object in the runstream (which here simply means pointing past ; (SEMI)). At the code object's first statement, D0 points beyond EndOfCode, which is correct. Then, for a code object, C.A contains the address of its first executable statement (take a look at the prologue again). So we have to alter A.A to point at :: and then execute =DOCOL. It can be seen that, since C.A points at 'C=C+CON A,10', adding the 10 makes it point at ::. Now, the NIBHEX instruction really means the two nibbles 8D which are the first two of the GOVLNG instruction, so 8D followed by :: will result in a GOVLNG =DOCOL instruction, which expects D0 to point at the next object in the runstream (it does) and A.A to point at ::. This is shorter than the equivalent PC=(A) instruction. I could have used the conventional, easier and more general ASSEMBLE CON(5) =DOCODE REL(5) EndOfCode A=PC A=A+CON A,10 PC=(A) RPL :: body ; ASSEMBLE EndOfCode but that's two bytes longer. Using the short version still constitutes a 10-byte penalty though, but especially for long lists or secondaries that get executed often, the time savings is well worth it. Remark that although the secondary is embedded, it is executed indirectly. If in a library or so you have more than one routine to put inside a Code object, the size can be further reduced to: ASSEMBLE CON(5) =DOCODE REL(5) EndOfCode GOTO XeqRPL RPL :: body ; ASSEMBLE EndOfCode . ASSEMBLE XeqRPL A=A+CON A,14 PC=(A) RPL which is shorter if you apply it to more than one routine. Beware, though that this trick will only work if the XeqRPL part is included in the same secondary as the GOTOs, or if the library is in a non-covered port. The XeqRPL part may be included in a code ==== Werner, when are you finally going to make a book out of your HINTS file? The things you have pulled out and published here is really the best documentation I have seen. - Carsten ==== [read in previous post] ==== First of all, I know this has to be a FAQ, and I have seen some recommendations on groups.google.com and here. Anyway, I got my trusty HP20S nicked, and I was looking forward to buying an HP 4XXX for some time. Since it seems that I am now forced to do this, I wanted to know what do people recommend (either 48gx or 49g, I guess). I understand that 48gx is very well supported, has been around for a long time and all that. The 49g is newer, flashier and sleekier (?). I understand that the programs available for the 48 will work on the 49 (even though I'm not too sure of this). I want to have access to a wide variety of programs, so I wouldn't like to be contrained by the ==== Jose, Firstly, the latest HP 49g will give you a larger memory - 1.5MB (512KB RAM and 1MB Flash ROM for data storage) and will let you benefit from the biggest and most comprehensive library of 3rd party calculator programs, games and software applications. Then, with an advanced built-in Computer Algebra System (CAS), the HP 49G boasts truly dynamic symbolic manipulation, and symbolic and numeric solving. Whether your needs are complex arithmetic, calculus functions, or solving a system of linear equations, the advanced built-in CAS is flexible and dynamic, yet user-friendly. Working with complex equations or expressions? The HP 49G automatically prompts you to switch to complex mode. Interested in learning how to get the right answer? Then choose the CAS step-by-step mode for dynamic derivation, integration and linear algebra problem solving. All steps and results are displayed in textbook mode for easy viewing and understanding. Leading-Edge Design: Smooth edges, soft curves, and a sleek, sturdy design, make the HP 49G ideal for either hand-held or desktop use. It comes in an appealing, light metallic blue with a matching translucent blue slide-on cover that helps minimize screen and keyboard damage. The user friendly HP 49G key board has large keys with soft edges, and generous key spacing to minimize undesired key presses. Alpha letters appear on the keys. Choose to input and view equations and expressions on the big 131 x 64 pixel, high contrast screen in textbook mode, just as they appear in textbooks or on the blackboard. For complex equations and expressions, you can minimize the need to scroll by selecting a smaller font size. There are four sizes and styles to choose from. Customize your inputs and outputs Choose from three input modes according to your preference: familiar textbook, traditional algebraic or efficient RPN, and two default-screen history display options: textbook or algebraic. Fast, Flexible and Intelligent Editor Edit expressions, text, graphs and pro g rams quickly and easily just the way you want to. More than just a passive editor, you can isolate and evaluate sub-expressions as well as cut, paste, and copy objects, just like on a computer. Unsure how to correctly enter an equation or expression? The intelligent Editor automatically inserts missing pparentheses and prompts your next input, both in real-time. Finally, the HP 49G goes beyond analyzing sample data: you will be ==== ==== Given an equality on the stack, you can do operations on both sides just as you would on paper, which is neat. With an inequality, ==== well, I indeed don't think three spc two spc plus , but I don't think ==== ==== ==== Don't make presumptions about what I've done and haven't done. I've written a number of phrases in my life in prefix, postfix, and infix. Given my favorite hobby language is Scheme, I've done more than a bit of writing ala prefix and don't have a problem differentiating (+ 2 3) from (+ 23). I don't typically engage in the programming contests in this group without writing down programs on paper and have yet to have any trouble figuring out where one number ends and the next begins. I'll grant the issue can come up when dealing with either prefix or postfix notation and it is hard to see it being a problem with infix. This does not tranlate into compactness nor into clarity. But they don't. :P Harder to understand I doubt. Difficult to get used to after years of ==== actually, smartass, in algebraic mode I hit SIN then I enter 30 in the parenthesis and hit enter... ==== ==== (snip) I've exhausted all my points in this area, and given your response I'm tempted to simply repeat some of them, but I won't. I grant that it's entirely possible to write postfix neatly and well. (snip) I confused my point a bit with extraneous information, so here it is: . The fact that students formally learn addition in postfix style is neither an argument for or against postfix. It's irrelevant. Your response is confusing. You doubt that infix in a horizontal format with all those parentheses and new operators and limited old operators sentence, did you somehow gather that I was talking about postfix at any ==== I would like to know what is happenning in the HP Handheld Users 2001 Conference , and probably I am not the only one. page: http://www.jps.net/joehorn/hhc2001/ But the only news I saw there is that it wasn't cancelled. We need to know more: ==== What you want is not built in. Of course one could first download a font that includes this sign, and then write some program that replaces the equal sign with the approx. sign. But this would be only for viewing. The 49G couldn't do anything with some approximated equations because replacing the equal sign with the approx. sign would also turn the equation to something else or even introduce syntax errors. Example 1: In the equation 'X=Y' the equal sign could be replaced with the approx. equal sign. That would (presummably) turn the equation to a name: 'X~Y' (where ~ denotes the approx. equal sign) Example 2: Replacing = with ~ in 'SIN(X)=COX(Y)' introduces a syntax error, because ~ is not a math operation that the HP49G knows about. So it interpretes it as a name, which can't go directly after SIN(X). Greetings, Nick. ==== I don't see any use for an approximated equation. Math is (pretends to ==== One possibility (if this is in fact integrated into the HP49G) would be to compute the absolute value of the left side minus the right ==== The pointer 03685 is FINDELN This is the HP48 version and works ONLY with array of real or array of complex. If you want the generic version that also works with symbolic matrices, you have to use the CAS entry: ^FINDELN Doing: FPTR2 ^FINDELN with MASD or : ==== ==== It stands for Reverse Polish Notation Basically, instead of entering 2+2 (as in algebraic mode) you would enter: 2 (ENTER) 2 (ENTER) + First you have to choose RPN mode from the MODE menu. It takes some time to learn it, but after a while, you won't even want to try algebraic mode on your HP anymore. That's my opinion. For sure some people prefer algebraic instead. Eric. answer something for me? Do you know who JYA is? If not push ON-D then SIN and ==== I learn new things every day... ==== ==== ==== (snip) Well... yeah =) A number x is always equal to x, but he's interested in defining x in one base and reading it in another. ==== My point was: HEX DEC etc. don't change the way numbers are stored, but ==== Solving differential equations. Any good examples out there? It stinks to have a caclulator that can do it and not be able to figure out the syntax to make it work. The Command Reference is only slightly better then useless. For example; does d1Y(X) really have to be keyed in char by char? There's no way to select it? Some examples would be great! Preferrably RPN style entry. ==== ==== ==== !RPL !NO CODE :: CK1NOLASTWD CK&DISPATCH1 real :: %2 %^ %PI %* ; ; @ when i try to transfer it to my 49g using ascii mode, i get an error on the hp49 screen (Invalid Syntax: %^) and the file doesn't transfer. If i use binary mode, it transfers but it adds the extra character at the end of everyline. thanks erik ==== You have to put quote marks ( ) around your file, then the HP will recognize it as a string: !RPL !NO CODE :: CK1NOLASTWD CK&DISPATCH1 real :: %2 %^ %PI %* ; ; @ ==== ==== ==== I'd like to import Ascii UserRPL text files to the 49G EMU emulater on the PC. This translation is done automically when sending over the cable to the real HP49 but EMU imorts them as untranslated strings. I have found utilities by JHM and others to do this job with the 48 emulation but they use unsupported entry points so crash when using the 49G emulation. Are there any equivelent 49G utilities. ==== Go to the Transfer form (APPS 2 5) on both EMU48 and the real calculator. Choose the same options on both. Now hit ENTER and it should work. If you want to do the transfer with HPComm, I guess you have to use binary transfer. ==== I want to transfer directly from an Ascii file on the PC into EMU on the PC to debug code without going the link to a HP49. I know the transfer to the HP49 through the link automatically translates the file but it's slow, adds extra steps and loses all the ascii file comments. the the 49G ==== string and returns one or more objects. It may also give a Syntax ==== Try transfering a program in mode 3 from the HP49G to a PC file then import even though it will transfer, translate and run perfectly on the HP49. I'd like to be able to debug Ascii files purely on the PC using EMU and ==== ==== ==== ==== ==== ==== well i feel like an idiot, the problem was my cable...i discovered ==== ==== yes it is. the hp48/49 uses exactly that. start bit, 8 data bits and at least one stop bit. the strt bit is a '0' and the stop bit is a '1', also the ==== yes it is. the hp48/49 uses exactly that. start bit, 8 data bits and at least one stop bit. the strt bit is a '0' and the stop bit is a '1', also the ==== There's a document called rplman.(mumble-extension) that is at least in one of the Goodies disks that explains the differences between Forth and RPL. ... actually, I'm not very happy with what I said. I'll have to think about this some more. You also don't have an input stream, and it's not as convenient to modify the dictionary directly, and it's not as convenient to alter the inner and outer interpreters, and I'm not sure if these last two ==== No. I stay mainly on the Intel Pentium platform, although I do find Neal's ==== ==== HP did make provisions to transfer programs and data to the 48 by using an IR Printer Module (82242A) on the 41 and having the 41CV Emulator ==== Well, you said it. It is indeed an old and *very good* printer. It is an HP from the past. It can't do everything new printers do, but what it does, it does perfectly and has no problem after about 8 years printing. That was one reason why I decided to keep it. In addition to that, if I would buy a printer for under, say 150 US$, I could also throw this money out of the window. Greetings, Nick. I guess I'll just try the direct route here. I have three questions that I would appreciate if somebody could help me out, even just a hint or suggestion or prod in the right direction would be very appreciated. I've been trying for weeks to figure these out Alas! to no avail. 1) Adding functions: In the statistics aplet it has a function named xGETOBJ. I am confused as how to do this. I am assuming it has something to do with the ASSEMBLE CON(1) 0*(hasFORM)+0*(hasINTG)+0*(hasWHERE)+0*(hasVUNS) CON(1) 0*(hasDER)+0*(hasINV)+0*(hasCOLCT)+0*(hasEXPND) CON(1) 0*(hasHELP)+0*(hasPDATA) RPL that preceeds it. I can't figure out what this means, or if it even has anything to do with adding a new function. Perhaps it only works running from a library? 2) Infrom boxes in the 39/40 I can't figure out how to get an Inform box to accept either an ID or a string as input. It automatically decompiles them to numerical values. I've tried setting decomposition from FOUR to ZERO, but then I can't figure out how to convert it to properly display. In the stats aplet it uses InpFormVEntry, InpFormVExit and InpFormViewUI. I have used these in my program, but it runs then exits and causes no problems at all. It just seems to skip the whole thing. How can I get the inform box to accept a string or ID without decompiling them. I've tried messing with message handlers, but they haven't been successful yet. 3) How do I compile an attached library? The stats aplet has a library attached to it of 1539. When I try compiling the source on my computer, it makes a 5.? Kb file, that won't sent to the calc because it doesn't have the library attached to it. I've tried and tried to figure this stuff out, but I've been at a wall now for two weeks. If somebody has it in thier power to throw me a rope down off the top, I'll do my best to scale it. This is perhaps an extreme silly question but (as it seem to be a common behavior lately) Wolfgang: I'm in your kill-list or you just don't care about this potential problem? Saludos Jorge M. Valenzani I'm trying to get info for the 39/40. It's just that when i've asked questions specifically about them before I have recieved few if any replies. It's probably because people know less about them and don't respond because they don't know, but just in case people weren't responding because of a strange bias against those two calcs. . . i figured I just go the general route. ;-) tried I don't know that you can purchase a printed copy, but you can download the PDF version. Start at http://www.hp.com/calculators/techsupport/graphing/49g_userguide/, choose a language and whether you want the User's Guide (and Pocket Guide) or the Advanced User's Guide. If you want the English version of the AUG, it's available at http://www.hpcalc.org/hp49/docs/misc/49g_aug.zip. There is a lot of information available at http://www.hpcalc.org/. ROMPTR library library. ATTACH anyway. I stand corrected. It is indeed possible that ATTACH could leave some things undone, and of course the config object might not include ATTACH. In a perfect world the author would document the required procedure, and ==== The HP28S reference manual (that I can no longer locate), had a program that allowed you to calculate the time value of money . You could enter and solve for variables like interest rate, monthly payment, number of months/years, etc. I would greatly appreciate any information that would help me locate this program. looking Remember that in the HP40 and HP39 the STEP 1 is not necessary. So you can do without it ... It is possible that it is an 150ns. The HP is so slow that you can use the slowest RAM you can buy. The L means LowPower. There are big differents in the amount of power a chip uses when it is not in use. :) This is important, because most of the time the chip is not enabled. Without a data sheet of the Saturn we can't say it. But I think that even 200ns is fast enought. Buy the slowest. Faster RAMs need more power. Look fine for me. No, it doesn't matter if the chips is faster, but look at the power he needs! Is this power you're describing the maximum operating current (Icc) ? If so, this particular chip has 50 mA max Icc, comparing to the 60, 70 or 80+ mA max Icc of other chips I've found. Is this OK or should I buy a chip with a larger maximum operating current? And, I've just remembered to ask you something extra : so the speed is not so important (all the chips will work), it's only that slower chips need less power and are less expensive? I'm sorry but I don't really understand what you're trying to say with this comparison. Could you just explain me why this chip is entitled slow sram, although in the pdf manual there is written that it is designed for high speed low power circuit tehnology? I haven't noticed that other chips would be entitled slow SRAM and I checked as many pdf manuals I could find. PS-Do you know whether it's possible to upgrade to more than 256kb mem using ONLY 2 smd chips, one of them being a replacement for the original 32kb chip (can I use 2 512kb chips instead of 2 128kb chips - if not, why so?) No, look at the standby current. This is the way it goes. But the data sheet is much more important. When a data sheet says a chip is slow, what does this mean? Normaly it is slower than other chips from the same factory. But compared to other chips? But speed is not important. If you can buy different kind of RAM, look at the data sheet and buy the one with the lowest standby power. I have seen large differents here. Remenber most of the time you HP will be off. And if it is on most off the time your RAM is off. There are only very short periods when a RAM is in use. So compare two different RAMs the standby power will sucks the most out off your batteries. Well, at first I have never seen inside a GX. I only have a SX and build myself the ramcards. It is possible to use a bigger RAM when there is the bankswitchlogic for this in a HP. Or you can switch the memorybanks by hand. :) I have 1MB Ramcard for my SX with three hardware switches. So you can select one of eight 128k card. I have done this because a HP48SX doesn't suppord cards with more than 128kb. I know that a GX can use bigger cards in his second slot. So I think there is bankswitchlogic. Perhaps it is necessary that you use a chip like 74HC138(9) for more than one RAM-chip. And it is not necessary to use an extra chip if you only have one RAM, because the extra chip is for generate the extra CS-Signal out of the Adress-Signal. I know, it's the second time I bother you with this silly flags questions, but I'm trying to write a full and complete list of all flags - thanks to J. M. Prange for answering me in the last post. Reading the mr. Parisse description posted long time ago about the CAS flags, I have these doubts: irrational square; clear - I imagine: 'i' is the imaginary unit) flag -121: If set I've readed that xLN returns LN(ABS). Actually what returns for deafult the command xLN? Sorry, I still don't know SysRPL, so I hope someone here can explain this point for the list compiling. Sure I have to learn SysRPL in the future (it's an year I'm saying it!) :o) flag -122: I understood that if a 0/0 occurs, then the CAS set this flag; in which case this flag is cleared? flag -123: It refers to Real/Complex and Exact/Approx switching only? flag -127: Mr Parisse, is it unused? I ask 'cause in your list it didn't appear. flag -128: If set, all vars are real vars: how this affect computations? I've tried to play with the calc varying this flag, but nothing seemed to change to me. PS: Someone knows if flags -77, -78 and -96 are used? i is/not simplified I thougt it's the other way around: If xLN returns LN(ABS()) then Set Flag ?? in Allow/Forbid ANY Mode Swith (AFAIK) The -77 might duplicate -76, that is: Filer Confirm of Purge -78 is some sort of KERNEL PARAMETER related. But How? and download ALG48 docs from professor Parisse's page. There is a lot of old flag-info, which almost works for the 49G. I also use RPN and am also relatively young - the way you treat other poeple does not necessarily have to do anything with your age symbolic rules are only important to those who want to make it important. the content is what is important. Whatever we call a thing, whatever we say it is, it is not. For whatever we say is words, and words and words and not things. The words are maps, and the map is not the territory. this should make it work in windows (free!) http://sources.redhat.com/cygwin/ of AUG. The 48G series AUR Manual says that E is The configuration table is corrupt (bad checksum for table data). and that F is The system RAM card was removed. As for how that applies to the 49G, your guess is as good as mine.