scotws / TaliForth2

A Subroutine Threaded Code (STC) ANS-like Forth for the 65c02
Other
86 stars 23 forks source link

Zero page dynamic #242

Closed cstrotm closed 4 years ago

cstrotm commented 5 years ago

I'm working on a platform file for the Western Design Center w65c134sxb development board. On this board, only zero page adresses above $80 are free and available for TaliForth to use.

This change allows to move the zero page locations upwards, it also makes the initial data stack pointer dynamic relative to the end of the free zero page ram.

I also removed the reference to "see docs/stack.md" that does not exist anymore

scotws commented 5 years ago

Give me a bit to test this (and wrap my head around it, grin).

SamCoVT commented 4 years ago

I think this looks reasonable. My only thought is that: .alias dsp0 zpage_end-8 ; initial Data Stack Pointer in definitions.asm should actually be: .alias dsp0 zpage_end-7 ; initial Data Stack Pointer because zpage_end is defined as $7f rather than $80

scotws commented 4 years ago

Is this something that we should merge now or will it have to be rethought anyway if we build a more modular Tali Forth? I'd be happy to merge it in the meantime, of course.

SamCoVT commented 4 years ago

I think this can be merged for now (note my comment on the dsp0 label - that's the only change I see needed). I suspect that when we move to the new assembler we will have to revisit this, but it looks good for now and makes it easier to move Tali's entire zero page usage to any contiguous location in zero page.