Hello and happy Friday!
It seems that when you load a buffer with a block from the CF card, the buffer number is left on the stack. I can’t figure out where this is happening and so I cannot submit a proposed fix. Sorry!
To reproduce:
- With a CF card installed, do
1 list. Then do0 o. This will prompt you to enter text for line0on block 1. Enter1 2 3 4. - Type
flushto save the block. - Repeat the process with block 2, except with text
5 6 7 8. - Type
xxto make sure that the stack is cleared. - Type
1 2 thruto load and execute blocks 1 and 2. - Check the stack with
.s - On my machine the result is:
20953 1 2 3 4 20953 5 6 7 8This is the buffer address followed by the contents of the block. I imagine the buffer address will vary on different machines. - The expected stack result is:
1 2 3 4 5 6 7 8.
You can verify the expected result by running the same test using Tali Forth in py65mon, using 4 block-ramdrive-init and editor-wordlist >order to initialize the block ramdrive system before performing the above tests. You can also run the block-ramdrive-init version on the Planck machine and it will work the same way.
If it would be better for me to submit this on the Gitlab site, I’m glad to do so.
Best wishes, Ben