Jump to content
Ikrananka

Backdrop Plane - Change Colour Mid Scanline?

Recommended Posts

I know that the backdrop plane of the VDP can only be set to one solid colour (or transparent/black).  But, I'm curious to know if it is possible to "trick" the VDP into changing the backdrop colour as it draws each scanline so that, for example, vertical coloured bars can be shown in the border area?  Or is this kind of timing trick not possible with the TMS9928A/9929A?

Share this post


Link to post
Share on other sites

There's something like what you're describing done in Sudoku (the Team Pixelboy Budget Series game) but it's tricky, doesn't work perfectly and I would expect it to be doable only because the game is not as CPU-intensive as most games.

 

Share this post


Link to post
Share on other sites
39 minutes ago, Ikrananka said:

I know that the backdrop plane of the VDP can only be set to one solid colour (or transparent/black).  But, I'm curious to know if it is possible to "trick" the VDP into changing the backdrop colour as it draws each scanline so that, for example, vertical coloured bars can be shown in the border area?  Or is this kind of timing trick not possible with the TMS9928A/9929A?

The only way to get a feedback where the scanline on the screen is to read the status vdp register to see if there's 5 sprites on a line or bit c is on.  I tried to attempt that, but wasn't successful.  However, I was able to do a screen load trick for Cookie Monster by turning off the screen midway the screen in decreasing for() with dummy math problem per frame.

  • Like 1

Share this post


Link to post
Share on other sites

Thanks for the feedback.  I'm thinking of a non-CPU demanding case such as displaying a static colour bar test pattern that not only fills the active screen but also the backdrop, e.g.:

 

 1581128184_Screen5.jpg.b9570d136b37f280b921cd07fbb4fd70.jpg

 

Or perhaps it is all done in the backdrop and there are no other planes used.  Is that possible do you think?

Share this post


Link to post
Share on other sites

That would be extremely CPU demanding, and probably wouldn't work very well. I don't know how many changes you can get per scanline, but likely only a couple. It's easy enough to find out though, it's only a handful of instructions to write the background register and increment in a tight loop. You don't need delays on the VDP registers. If you reset the loop on the NMI, then you should be able to get a stable picture and can zoom in to see how many changes per scanline you get. My bet is 2.5. ;)

 

The trick of changing data on a certain scanline was used on the TI in the Don't Mess With Texas demo. See starting at 5:22, three effects. Usually there's a little slop in detecting either by sprite collision or 5S, but Rasmus pulled off some really stable effects there. ;) 

 

 

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...