Post Reply 
A new RPL firmware for the 50g
01-01-2014, 01:15 PM
Post: #8
RE: A new RPL firmware for the 50g
(01-01-2014 06:39 AM)Han Wrote:  I really don't see the point of re-implementing SysRPL. The whole point of SysRPL was that it served as an intermediate layer between assembly code and UserRPL in order to not have to code every individual command in assembly. However, if you're going to use C (as an example) to create commands that will replace the UserRPL ones, then there is no point in preserving the underlying SysRPL layer. Instead, you would have hooks for C code in its place. This will mean a lot of SysRPL code will no longer be compatible. However, I think the tradeoff is for the better -- SysRPL code for much more legible C code.

I agree. It would only be useful if we had an automatic "library re-compiler", that could take libs from hpcalc.org and make them run in the new firmware, so that we get a lot of existing user code working out of the box.
But that's way too ambitious at this point, and would tie us to almost an "emulation", which we don't want to do.


(01-01-2014 06:39 AM)Han Wrote:  What is still needed is some common library code as I am sure that many of the UserRPL commands will have overlapping code. For example, one method for solving a linear system involves Kramer's Rule, which uses determinants. The best way to see what sort of core math library is necessary would be to decompile the existing ROM.

Allow me to stop you right there. If we reverse-engineer the ROM, then it's not a clean room implementation and subject to copyright issues and lawsuits from HP.
The idea is to get the Advanced User guide, and provide similar functionality based only on publicly available information. Copying algorithms is unacceptable.
Besides, that will also help keep our minds fresh, avoiding to repeat past design decisions that may no longer apply to current hardware (4-bit addressing, 5-nibble numbers, etc).

(01-01-2014 06:39 AM)Han Wrote:  If anything, this would actually be more useful in general. A community-driven disassembly of the current ROM with comments could not only preserve the algorithms but also enable you to readily implement the same algorithms in whatever language you prefer. It also opens up paths to better algorithms since more people will have their eyes on the code. Such code could serve to teach those interested in calculator development about the link between software and hardware. And lastly, long-standing bugs can finally be fixed for those who want to remain as close to the "official" firmware as possible.

You are thinking more in the lines of creating an open source version of the existing ROM. I'd rather have a new system that cannot be legally challenged, and where we can make true architectural decisions. And in the future it could be ported to run on different hardware (should HP retire the 50g).


(01-01-2014 06:39 AM)Han Wrote:  Another route would be to simply import existing (free) libraries and build from scratch (much more difficult and time consuming).

As for HP releasing the source -- I have raised this question myself many times, and the answer has always been no. Not even for the HP48 series, because its source is the base for the HP50G, which is still being sold.

I wouldn't count on that.


(01-01-2014 06:39 AM)Han Wrote:  Just out of sheer curiosity -- are there a lot of folks who know ARM assembly programming?

ARM assembler, I'd think not so many (one here!), but it can be written in C/C++, so we have plenty of very capable people out there. I can handle the low-level part myself.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: A new RPL firmware for the 50g - Han - 01-01-2014, 06:39 AM
RE: A new RPL firmware for the 50g - Claudio L. - 01-01-2014 01:15 PM
RE: A new RPL firmware for the 50g - Han - 01-01-2014, 07:27 PM
RE: A new RPL firmware for the 50g - Han - 01-02-2014, 03:44 AM
RE: A new RPL firmware for the 50g - Han - 01-03-2014, 03:14 PM



User(s) browsing this thread: 1 Guest(s)