Post Reply 
Executing FOCAL programs from ROM vs. RAM
04-11-2019, 06:53 AM
Post: #4
RE: Executing FOCAL programs from ROM vs. RAM
I just had a quick look. A return address is checked for ?xxx, if that '?' nibble is non-zero, it is assumed to be ROM. This means that execution of user programs (FOCAL/RPN) is not possible in ROM page 0 (first 4K). It can very well exist in page 1 and up, but as you know the first that has some is page 6.

It seems from a quick look that you can execute in higher RAM addresses, but it cannot store that on the return stack, as it is compressed, which is why I believe it is limited to 1FF which is 9 bits and 3 bits to tell the byte position (7 locations needed).

Yes, both RAM and ROM PC addresses are 16-bit, but it has to separate ROM from RAM execution, which is why flag 10 is used, so I just called it a 17-bit address... Smile

I think it would be reasonable simple to grow extended memory to be bigger, though some code would need to change as it is cheating, taking advantage of that if it was not page 2, it can only be 3. Things like that.

However, I have not really found any big need for such large extended RAM memory. I have never filled much more than the first part of it. I even bought a couple of those extended memory modules and have them plugged in, but I do not think I ever really used them.

4K ROM pages are much more useful to me.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Executing FOCAL programs from ROM vs. RAM - hth - 04-11-2019 06:53 AM



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