1
Discussion - EVE / Re: Modifying RAM_DL on the fly
« on: October 19, 2021, 03:48:41 PM »
Thanks, this confirms my impression of how it is built and you are right, relying on an implementation detail is not desirable.
I read the application note and both techniques are indeed interesting.
However, as I am using a BT817, I went another route with the use of CMD_NEWLIST to place the VERTEX2F items into RAM_G and then call them from my display list with CMD_CALLLIST.
I thought that this would allow direct modification of the RAM_G content but still, no luck. Apparently, the content of the list is read from RAM_G when the swap is done, not at every raster scan, contrary to what is done for bitamps for instance.
But I went further and used CMD_NEWLIST twice: the first contains the VERTEX2F commands, while the second contains the rest of the display items along with CMD_CALLLIST
Then, at every step of my "animation", I modify the VERTEX2F values in RAM_G and create this display list:
This is not as simple as I would have liked, but at least it works.
I read the application note and both techniques are indeed interesting.
However, as I am using a BT817, I went another route with the use of CMD_NEWLIST to place the VERTEX2F items into RAM_G and then call them from my display list with CMD_CALLLIST.
I thought that this would allow direct modification of the RAM_G content but still, no luck. Apparently, the content of the list is read from RAM_G when the swap is done, not at every raster scan, contrary to what is done for bitamps for instance.
But I went further and used CMD_NEWLIST twice: the first contains the VERTEX2F commands, while the second contains the rest of the display items along with CMD_CALLLIST
Then, at every step of my "animation", I modify the VERTEX2F values in RAM_G and create this display list:
Code: [Select]
CMD_DLSTART
CMD_CALLLIST(BaseListAddr)
DL_DISPLAY
CMD_SWAP
This is not as simple as I would have liked, but at least it works.