41CL: Second set of Main RAM - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html) +--- Forum: General Forum (/forum-4.html) +--- Thread: 41CL: Second set of Main RAM (/thread-1180.html) |
41CL: Second set of Main RAM - Ángel Martin - 04-26-2014 02:37 PM Quick on the heels of the previous topic ( 41CL: Second Set of Extended memory ) - here comes the follow-up dealing with MAIN memory, i.e. Data registers and Programs. The method is exactly the same, but one must be careful not to swap the RAM with an invalid copy in the higher page: the status register c in particular is very sensitive to this experiments and balks at improper values! Therefore it's important to "prime the pump" before executing MMSWAP for the first time - and that's the mission of MMCOPY: use it to copy the current contents of the main RAM to the upper page. MMSWAP includes status registers c,d, and e - but none of the others. This scheme provides compatible key assignments but leaves alone the program pointer. Stating the obvious, make sure MMSWAP runs from ROM (HEPAX, or otherwise) - or else you'll get nice pyrotechnics and a likely MEMORY LOST event. Below the program listings for MMCOPY: Code:
and here's the combined MMSWAP and XMSWAP together (lots of shared code): Code:
Cheers, 'AM PS. The attached pdf contains both programs in a nicer format - does anybody know how to get the code properly formatted in the post window??? RE: 41CL: Second set of Main RAM - Ángel Martin - 04-27-2014 06:40 AM Forgot to mention that this is also the perfect method to recover from a MEMORY LOST event: simply swap the Main Memory and your lost configuration is back on line. Another method to "prime the pump": instead of using MMCOPY you can simply copy the RAM block at 0x800 into 0x081. This is faster but does both main and extended memory - thus not so specific. with "800>801" in ALPHA, XEQ "YMCPY". RE: 41CL: Second set of Main RAM - Ángel Martin - 04-28-2014 06:43 AM Updated programs (now including register 10(+) for complete flags compatibility between sets) are attached below, and also in the new versions of the RAMPAGE, AMC_OSX and Power_CL Manuals soon available at TOS. |