Bones-69 Posted May 29, 2010 Share Posted May 29, 2010 (edited) I remember that when 4 or 5 sprites were lined up they would start to become invisible on the original hardware. My emulator of choice is Win994a and I notice that in regards to sprite reproduction it is not faithful (it is better!), as sprites never go invisible in Win994a. I would like my game to be playable on original hardware and can not remember if the sprites went invisible when they were lined up horizontal or vertical. My plan was to display the game score as sprites rather than placed characters due to colour set contradictions. Can anyone confirm for me if the sprite issue happened on the horizontal or vertical plane? Also, if it turns out the sprite flicker was for horizontal sprites, can I confirm which how many sprites were able to be displayed without problems? Currently the maximum score in my game is 99999 so I am hoping that 5 sprites will display properly. Ultimately I am trying to avoid having to reserve extra characters for a second set of numbers.... Thanks! Edited May 29, 2010 by Bones-69 Quote Link to comment Share on other sites More sharing options...
+adamantyr Posted May 29, 2010 Share Posted May 29, 2010 It's horizontal, and you can have a maximum of four sprites on a line. The lowest numbered sprites have priority. You can get around the issue; a lot of old hardware had sprite scanline limitations. The most common method was to rotate sprites so that each one had a "visible" slot in a given frame of time. This causes the "flicker" effect you see on a lot of game systems, the NES in particular. Adamantyr Quote Link to comment Share on other sites More sharing options...
matthew180 Posted May 29, 2010 Share Posted May 29, 2010 Sorry, but the limit is 4 sprites on a horizontal line. Emulators can provide us all 32, but the real hardware simply does not have enough time to process more than 4 per scan line. The parts of any sprite over the 4th will not be drawn. The flicker comes from programs that detect 5 or more sprites on a line and do "sprite rotation" so every sprite gets displayed at least once every 4 frames or so. Matthew Quote Link to comment Share on other sites More sharing options...
Bones-69 Posted May 29, 2010 Author Share Posted May 29, 2010 Thanks guys. While this is not really what I really wanted to hear, I appreciated the info. Looks like it is time to shuffle some characters and try and gain another 5 that I can recycle from the same colour set. Quote Link to comment Share on other sites More sharing options...
Opry99er Posted May 29, 2010 Share Posted May 29, 2010 Ahhh, shoehorning characters into sets.... What wonderful times. Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted May 29, 2010 Share Posted May 29, 2010 If you use double sized sprites you can actually have 8 characters horizontally. With a bit of spacing one can write GAME OVER on top of the character display. If you’re not including the word SCORE, you should be able to display 99999. Quote Link to comment Share on other sites More sharing options...
Bones-69 Posted May 29, 2010 Author Share Posted May 29, 2010 I spent a few hours shuffling characters and have come up with a workable solution but I have to say, I would have never considered using magnified sprites to trick the TI into displaying additional horizontal "sprited" characters! In this instance it wasn't practical because my problem was actually running our of definable characters (so I chose to solve the problem by actually using sprites), but what a clever idea to fool the TI into doing something it won't normally do. This one is certainly going into my little box of tricks for future reference. Quote Link to comment Share on other sites More sharing options...
Willsy Posted May 30, 2010 Share Posted May 30, 2010 I spent a few hours shuffling characters and have come up with a workable solution but I have to say, I would have never considered using magnified sprites to trick the TI into displaying additional horizontal "sprited" characters! In this instance it wasn't practical because my problem was actually running our of definable characters (so I chose to solve the problem by actually using sprites), but what a clever idea to fool the TI into doing something it won't normally do. This one is certainly going into my little box of tricks for future reference. IIRC the latest version of Classic99 emulates 5-on-a-line and tears the sprites the same way as the hardware. Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted May 31, 2010 Share Posted May 31, 2010 I spent a few hours shuffling characters and have come up with a workable solution but I have to say, I would have never considered using magnified sprites to trick the TI into displaying additional horizontal "sprited" characters! Double size sprites is like going from 8x8 to 16x16 pixels. Magnification is like keeping 8x8 pixels, but each pixel in the pattern memory will show up as 2x2 pixels on screen. With both set (size and magnification) you'll go from standard 8x8 to 16x16 pixels, with each pixel in memory showing up on screen as 2x2 pixels (effectively looking like a 32x32 pixel monster). You could use magnification only, but then digits would have to be less detailed (not impossible). With sprite size set only you'll get same resolution on screen and those 8 characters to play with horizontally. You'll have to load patterns of digits into the sprite pattern table yourself every time the score needs updating though. Quote Link to comment Share on other sites More sharing options...
Bones-69 Posted May 31, 2010 Author Share Posted May 31, 2010 Double size sprites is like going from 8x8 to 16x16 pixels. I understand sprite magnification. I just never ever thought about using CALL MAGNIFY(3) sprites to display something in this manner (periods added for sprite clarity); GA ........ ME ........ OV ........ ER TI ......... 99 ......... 4/ ......... A! 1............2 .............3 ..........4 (SPRITE) 128........132..........136...... 140 (ASCII code) What can I say? It's a clever idea as opposed to using 4 times the number of Magnify(1) sprites to display text if you are trying to sneak in another "colour set" - without a full A-Z character commitment. Quote Link to comment Share on other sites More sharing options...
sometimes99er Posted May 31, 2010 Share Posted May 31, 2010 (edited) Hehe, my mind is/was more set on Assembly than XB. And with XB it's all "magnify". Made this for reference only. Edited May 31, 2010 by sometimes99er Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.