Post Reply 
[split] Emu71 on Linux memory crashes
10-27-2023, 12:43 AM
Post: #4
RE: [split] Emu71 on Linux memory crashes
(10-26-2023 04:25 PM)floppy Wrote:  My current analysis show that it must be an addressing conflict during the use of a program (because a word in dictionnary cannot be found after a first execution.. and the memory loss appear.. even after update to EMU71 V1.17).

By defining a test HERE 0 , 0 , 0 , 0 , HERE SWAP - .
20 OK { 0 }
has the same behaviour like HERE 4 5 * NALLOT HERE SWAP - .
20 OK { 1 }

Now for storing and retrieving data from such vocabularies entries, what to use? N@ or @?
And storing would be N! or ! ?.

I dont see the reason why ! or @ are not listed in the Forth manual page 14. And could be the differences. Any hint is welcome.

Standard 16-bit Forth uses @ for fetch and ! for store. The 71B uses nibbles (4-bits, half a byte) as the atomic address increment instead of bytes, so the N@ and N! commands are used to replace @ and !, and C@ / C! for byte-sized values, but you have to also shift the logic of your programs to access nibble-sized values. Porting existing Forth code that assumes 16-bit values will essentially never work as-is, due to the nibble vs. byte assumptions underlying the logic.

--Bob Prosperi
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: [split] Emu71 on Linux memory crashes - rprosperi - 10-27-2023 12:43 AM



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