[Coco] More Color Forth
spereira1952 at comcast.net
spereira1952 at comcast.net
Mon Jan 26 19:41:27 EST 2015
Thank you very much, once again, Darren, and Art!
Manually pushing the return address onto the stack prior to pushing the start, end and exec addresses has done the trick!
I now have this little brute force routine working, and I can move on to doing the LOADM side of things. After that will be trying to make it more user-friendly, like being able to specify your own file name…
Again, thanks also go out to Brett Gordon. His behind the scenes error checking and advice have also been of great value.
Stand by for my next status update…
smp
- - -
Stephen Pereira
Bedford, NH 03110
KB1SXE
>
>On Jan 25, 2015, at 3:46 PM, Darren A <mechacoco at gmail.com> wrote:
>
>>On Sun, Jan 25, 2015 at 12:01 PM, Stephen Pereira wrote:
>>
>>
>>What I am concerned about is whether or not I am getting the addresses
>>onto the stack in the right order, and with the correct byte order.
>>
>>The reason I’m asking is that this code “kind of works” in my Color
>>Forth. I do get a file onto disk called SCRN1TO8.BIN, but it is 21 blocks
>>long, instead of 4 blocks, like I expected.
>>
>>Finally, while my Drivewire UI shows the disk activity start and end, my
>>code does not return to the command line in Color Forth, so I am also
>>concerned about that. I see in the “Disk Basic Unravelled” that the SAVEM
>>command dose end with an RTS, so I did expect my code to return.
>>
>>
>
>I think the problem is that you do a JSR to $CF7E instead of JMP. The JSR
>pushes a return address onto the stack in front of your address
>parameters. The SAVEM code doesn't expect that to be there. A return
>address could be manually pushed prior to the parameters and then you can
>JMP to $CF7E and have it return.
>
>- Darren
>
>--
>Coco mailing list
>Coco at maltedmedia.com
>https://pairlist5.pair.net/mailman/listinfo/coco
More information about the Coco
mailing list