Jump to content
retroillucid

CollectorVision Game System

Recommended Posts

Yep, even Donkey Kong.  Get to the level with multiple teapots with most of them in the same row, and you'll see a bunch of flickering.  It's because the TMS chip stops at 4 sprites per line.

Edited by ChildOfCv

Share this post


Link to post
Share on other sites

Does the Phoenix with the F18a option fix the flicker? I would assume it does, but I will ask this nonetheless.

As long as the game itself isn't programmed to explicitly flicker. If the game is programmed to only have 4 active sprites vs changing the order of the visible sprites, then the F18a wouldn't fix the flicker. I can't think of any examples off the top of my head where this was done though. 

Share this post


Link to post
Share on other sites

No, that's sprite masking, not flicker.

 

It is necessary to switch the F18A into 4 sprite mode for the penguin spite masking to work (by removing jumper USR1).  I'm guessing that sprite masking is bypassed/disabled when the F18A is in the 32 sprite mode - is that likely the case?

 

Apart from Antarctic Adventure, what other games are known to use sprite masking?  I'd like to test them out in both 4 and 32 sprite modes to see if they behave in the same way.

Share this post


Link to post
Share on other sites

It is necessary to switch the F18A into 4 sprite mode for the penguin sprite masking to work (by removing jumper USR1).  I'm guessing that sprite masking is bypassed/disabled when the F18A is in the 32 sprite mode - is that likely the case?


You mean the programmer didn't just place 4 invisible sprites on the left edge of the screen to crop off the penguin's lower body?

 

Apart from Antarctic Adventure, what other games are known to use sprite masking?  I'd like to test them out in both 4 and 32 sprite modes to see if they behave in the same way.


Can't think of any off the top of my head. The best way to find such instances of sprite masking would be to simply play games on an F18A-equiped ColecoVision (or on the Phoenix) and keep an eye out for graphic glitches. :)

Share this post


Link to post
Share on other sites

You mean the programmer didn't just place 4 invisible sprites on the left edge of the screen to crop off the penguin's lower body?


I'm not a programmer and have no clue how sprite masking works.  So, is what you said a possible technique that they used that would explain the observed behaviour between the F18A 4 and 32 sprite modes?

Share this post


Link to post
Share on other sites

I'm not a programmer and have no clue how sprite masking works.  So, is what you said a possible technique that they used that would explain the observed behaviour between the F18A 4 and 32 sprite modes?


It's a very simple technique: You place 4 invisible (i.e. completely transparent) sprites on the left side of 16 consecutive scanlines, and all other sprites on those scanlines will not appear, because of the 4-sprites-per-scanline limit of the ColecoVision's VDP. It doesn't matter if the sprites are completely transparent or not, all sprites are the same for the VDP.

Actually, I think it's not so much a question of placing these invisible sprites on the left side of the screen, but more a question of having those sprites appear before the sprites you want to mask in the sprite attribute table in VRAM. But that's the idea anyway.

Having all 32 sprites displayable on any and all scanlines makes using this masking technique impossible. That's why the Penguin's lower body is visible when it falls down a crack with the F18A (or Phoenix running in full F18A mode). Edited by Pixelboy

Share this post


Link to post
Share on other sites

It's a very simple technique: You place 4 invisible (i.e. completely transparent) sprites on the left side of 16 consecutive scanlines, and all other sprites on those scanlines will not appear, because of the 4-sprites-per-scanline limit of the ColecoVision's VDP. It doesn't matter if the sprites are completely transparent or not, all sprites are the same for the VDP.

Actually, I think it's not so much a question of placing these invisible sprites on the left side of the screen, but more a question of having those sprites appear before the sprites you want to mask in the sprite attribute table in VRAM. But that's the idea anyway.

Having all 32 sprites displayable on any and all scanlines makes using this masking technique impossible. That's why the Penguin's lower body is visible when it falls down a crack with the F18A (or Phoenix running in full F18A mode).

 

Thanks - I understand now.

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

×
×
  • Create New...