41CL: Second set of Main RAM
|
04-26-2014, 02:37 PM
(This post was last modified: 04-28-2014 06:42 AM by Ángel Martin.)
Post: #1
|
|||
|
|||
41CL: Second set of Main RAM
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??? "To live or die by your own sword one must first learn to wield it aptly." |
|||
04-27-2014, 06:40 AM
Post: #2
|
|||
|
|||
RE: 41CL: Second set of Main RAM
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". "To live or die by your own sword one must first learn to wield it aptly." |
|||
04-28-2014, 06:43 AM
(This post was last modified: 04-28-2014 06:45 AM by Ángel Martin.)
Post: #3
|
|||
|
|||
RE: 41CL: Second set of Main RAM
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.
"To live or die by your own sword one must first learn to wield it aptly." |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)