Post Reply 
HP 50g Programming Methods???
11-05-2017, 03:27 PM (This post was last modified: 11-05-2017 03:32 PM by TravisE.)
Post: #11
RE: HP 50g Programming Methods???
(11-05-2017 06:07 AM)Carsen Wrote:  I have decided to master UserRPL and then proceed to learn SystemRPL. This is because UserRPL is the most familiar and comfortable method of programming I know. The main purpose of learning systemRPL for me is increasing the speed of the program and doing the "impossible" with the HP 50g.

This is how I got into SysRPL. I became familiar with UserRPL first, and when I felt I was ready, I started working toward SysRPL in small steps. The nice thing is that since the two are internally one and the same language, it's trivial to mix User- and SysRPL routines. So you can start out by writing a full program in UserRPL, then add some very small, simple bits of SysRPL in just a few specific places where you need some extra speed or need to do something UserRPL can't. As you become more comfortable with SysRPL, you may find yourself gradually using more and more SysRPL in your projects.

Another useful thing to do with SysRPL is creating new commands by writing your own small wrappers around SysRPL objects or calls so that you can use them conveniently from UserRPL code, thereby extending the user language. There are a lot of useful built-in SysRPL routines which are sadly not available from UserRPL out of the box… but you can change that! This is a good way to practice writing the SysRPL code for doing the proper argument checking, object conversion, etc., needed to safely interface with UserRPL code.

Quote:One last question. Is Assembly different from System RPL?

Yes. The 50g has two types of ASM: There is the assembly language for the Saturn processor, which is emulated on the 50g, and this is what most of the low-level parts of the original calculator system are written in (including the Sys/UserRPL implementation itself); and there is the assembly language for the actual ARM processor the 50g uses, which contains the Saturn emulator and the software interfacing the hardware to the emulated Saturn-based OS. The higher-level parts of the Saturn system are largely implemented in (Sys)RPL code.

I haven't dealt with ASM much, so others will probably be able to answer that better.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
HP 50g Programming Methods??? - Carsen - 11-04-2017, 01:38 AM
RE: HP 50g Programming Methods??? - pier4r - 11-04-2017, 08:04 AM
RE: HP 50g Programming Methods??? - Helix - 11-04-2017, 10:22 PM
RE: HP 50g Programming Methods??? - Arno K - 11-04-2017, 12:58 PM
RE: HP 50g Programming Methods??? - pier4r - 11-04-2017, 01:01 PM
RE: HP 50g Programming Methods??? - Arno K - 11-04-2017, 02:32 PM
RE: HP 50g Programming Methods??? - DavidM - 11-04-2017, 05:02 PM
RE: HP 50g Programming Methods??? - Carsen - 11-05-2017, 06:07 AM
RE: HP 50g Programming Methods??? - TravisE - 11-05-2017 03:27 PM
RE: HP 50g Programming Methods??? - DavidM - 11-05-2017, 04:54 PM
RE: HP 50g Programming Methods??? - Carsen - 11-07-2017, 09:11 PM
RE: HP 50g Programming Methods??? - Carsen - 11-10-2017, 05:43 AM
RE: HP 50g Programming Methods??? - pier4r - 11-10-2017, 07:57 PM
RE: HP 50g Programming Methods??? - Carsen - 11-12-2017, 08:07 PM



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