Jump to content
  • 0
Yazwho

Block Clear\Fill VRAM

Question

I know you're very far along when it comes to the design and implementation of the VERA sub-system. However I figure I'd throw this out just in case.

Is there any chance block clear\fill functionality could be included so we can clear out blocks of VRAM?

Right now the bitmap mode has considerable limitations as we can't just clear the previous frame without resorting to a pixel by pixel approach. It will sadly mean this mode is left to mostly showing static images.

One possibility would be to add a bit to the CTRL register, so if set when we write to DATA0 it could fill the 256 bytes at ADDR_H, ADDR_M with the value. (As a programmer, obv I'd prefer something even quicker! 😉

It would open up the possibility to do something a little inventive with the mode.

  • Like 2

Share this post


Link to post
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Ah well, worth an ask. Bit of a shame to have to mostly stick to tile modes.

 

Share this post


Link to post
Share on other sites
  • 0
Posted (edited)

Edited: I just realized you did that cool demo, you're obviously not developing in BASIC.  But yeah, Screen RAM can be pretty efficiently filled/cleared in assembly, let me know if you need any tips.

But yeah, perhaps that even isn't fast enough for what you want to do.  But with 2 channels and auto incrementing, there might be possibilities.

Edited by x16tial

Share this post


Link to post
Share on other sites
  • 0
1 hour ago, x16tial said:

Edited: I just realized you did that cool demo, you're obviously not developing in BASIC.  But yeah, Screen RAM can be pretty efficiently filled/cleared in assembly, let me know if you need any tips.

But yeah, perhaps that even isn't fast enough for what you want to do.  But with 2 channels and auto incrementing, there might be possibilities.

It means for anything you do, say plot a cube, you have to essentially draw it twice every frame as you need to blank out the previous render. Really expensive. I guess it's pretty limited given the size of vram, but still.

I still have hope though, even if the code is frozen for release (which makes total sense), the 'P' part of FPGA means it can be changed in the future, so maybe post release some functionality will be added.

Share this post


Link to post
Share on other sites
  • 0

I'll fully admit to not being an expert here.  But I think the VERA has enough memory to double buffer the 1bpp 640x480 bmp mode.   Does that still not work for the frame rate you're trying to achieve?

Share this post


Link to post
Share on other sites
  • 0

You have enough VRAM to do double buffering in 2bpp mode. If you want to make a game with 3D rendering, 4 colors is your limitation. Otherwise, you can make your own 3D graphics expansion card or... just get a Raspberry Pi.

Share this post


Link to post
Share on other sites
  • 0
Posted (edited)
6 minutes ago, SlithyMatt said:

You have enough VRAM to do double buffering in 2bpp mode.

Wouldn't double-buffered 2bpp 640x480 mode require 153600 bytes, when we only have 131072 in VRAM (including palette and sprite registers)? Please tell me if I calculated this wrong; I would be happy to realize that there is in fact more VRAM than I thought.

 

Edited by Elektron72

Share this post


Link to post
Share on other sites
  • 0

I calculate that it would take 150k to double buffer 640x480x2bpp... am I missing something?  But I'm also wondering how helpful it is to say "just get a Raspberry Pi", when of course that's always an option, along with myriad other platforms, including PC's, when what I'm thinking the purpose of this discussion is to figure things out on *this* platform, the X16.

Share this post


Link to post
Share on other sites
  • 0

I should have clarified. I meant at 320x240. Full resolution is not what you are going to use for most games.

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
Answer this question...

×   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.


×
×
  • Create New...

Important Information

Please review our Terms of Use