that x port will just be handled differently by the hardware than the other ports.
it holds pointers and this port can also be used to pass immediates to the dataloop's registers.
It is a special port because of the above reasons, and also because it is the only port you can't point to with a pointer.
(no pointing to pointers)
and yeah, it is mostly going to be used for I/O stuff. This port will also be faster to access than main RAM though, so you could also use it like a small amount of "fast RAM"
I'm thinking of holding 8-16 pointer regs in this port. Probably 8 due to size constraints.
I may or may not add simple increment and decrement ops for the pointers. It would be really nice for iterating through arrays, but it is also a bit awkward to implement :/
I might use CCA based pointer registers?
I'll probably include the stack in this port aswell, as I only need 1 address location for that. It would also give you the bonus of being able to use the stack as a pointer
it holds pointers and this port can also be used to pass immediates to the dataloop's registers.
It is a special port because of the above reasons, and also because it is the only port you can't point to with a pointer.
(no pointing to pointers)
and yeah, it is mostly going to be used for I/O stuff. This port will also be faster to access than main RAM though, so you could also use it like a small amount of "fast RAM"
I'm thinking of holding 8-16 pointer regs in this port. Probably 8 due to size constraints.
I may or may not add simple increment and decrement ops for the pointers. It would be really nice for iterating through arrays, but it is also a bit awkward to implement :/
I might use CCA based pointer registers?
I'll probably include the stack in this port aswell, as I only need 1 address location for that. It would also give you the bonus of being able to use the stack as a pointer