Hey guys, I'm back again with more questions about how DPC+ does things with playfield data and what exactly I can do with it.
So far I'm able to use it as it was meant to. No problems. I love being able to define 4 separate screen quadrants with different resolutions, which I do take advantage of. The right 1/4 of the screen I have at a high resolution to act as a life/energy counter and inventory. The left 3/4 I use for the game and I use the vertical scroll technique. This means of course that I define the levels using the playfield: data table. This works just dandy, but with only 4K of graphics data to store and play with, this makes me limit my levels, especially since i use 22 line resolution (for a nice even 4x4 playfield block look) and with all the sprites/enemies I have in this game. So I thought of some ways I could possibly get around this so the game doesn't end up being so small.
I changed the game to act more like a fetch quest. Which means you enter the same levels to do different tasks, but even with that method, it still means i can only have 3 or 4 different levels in total. I was okay with this, but as I have continued my 20K of available program space started to get smaller and smaller the more I added, which also means that I can't do everything I want to do in this game. So now I'm reimagining it once again. I thought, why not turn it into a Rogue Like? Kind of like Rogue Legacy. Where every time you play a stage, it's different every time. I thought I could accomplish this by perhaps sectioning out the levels into different pieces and have the game arrange these sections into a complete level by random, so it'd be different every time. I, of course, would design the sections to all be interchangeable. However, the only method I know of in Batari DPC+ is using the playfield: data table. Now sure, I could get it to jump to certain parts of the table using the Data Fetchers, but I'd rather have the program look at different tables and then piece a bunch of the parts of the tables into one big table in DPC+'s display RAM, so I can scroll from top to bottom without having it have to jump around. Problem of course is that there is nothing in Batari that would allow me to do this. I could do some inline assembly to send data to the display memory of DPC+ to make a level before you start it, but I have a feeling that the format of this bank is done in a way where it constantly changes and it's just not stored there entirely to scroll through, like you would in a ROM Table. I had a look at in the debugger in STELLA and there were certain values I was looking for in the 4K DPC+ Display RAM that I know my playfield table stage would represent and I just wasn't seeing it.
So, I'm just curious to see if anyone would have any idea how I could do something like that, or if it is even at all possible!