Jump to content
IGNORED

Any Cheats/Tips to Bypass 4-Sprite Maximum on Horizontal Line Limit in XB?


LynxHandyCaster

Recommended Posts

If you haven't already accomplished the F18A upgrade you're in for a real treat. VGA out to a nice 19" Samsung monitor ($10 at Goodwill) makes everything better in the TI world. Remember in the Wizard of Oz when everything B&W turns to color? It's simply that dramatic! New graphic card also removes the four horizontal Sprite limit.

 

  • Like 1
Link to comment
Share on other sites

Hmmm...been toying with upgrading to an F18A. My picture quality is already great on my 8-year-old Samsung monitor TV (has every input except HDMI), so I would only get it for the 80-column text and for removing the sprite/scan line limitation. However, I'm reluctant to part with $78 to but one (if I can even find it). Thanks, everyone, for your input.

  • Like 1
Link to comment
Share on other sites

Hmmm...been toying with upgrading to an F18A. My picture quality is already great on my 8-year-old Samsung monitor TV (has every input except HDMI), so I would only get it for the 80-column text and for removing the sprite/scan line limitation. However, I'm reluctant to part with $78 to but one (if I can even find it). Thanks, everyone, for your input.

 

Yes the 80 columns is REALLY nice, especially in programs like Multiplan, BA-Writer, TIMXT, the 9640 Menu System and 4A/DOS. Then there are the enhanced graphics in game programs like TI-Scramble. I might add that you cannot even play the totally awesome new Super Mario Bros. port done by Rasmus without it.

 

One word of warning about the F18A....once you see it's clear and crisp output, you'll never be satisfied with the normal composite output again. I guess that's probably why it's become the #1 Modification for the TI.

Link to comment
Share on other sites

Hmmm...been toying with upgrading to an F18A. My picture quality is already great on my 8-year-old Samsung monitor TV (has every input except HDMI), so I would only get it for the 80-column text and for removing the sprite/scan line limitation. However, I'm reluctant to part with $78 to but one (if I can even find it). Thanks, everyone, for your input.

 

The F18A is available here. Matt will be making more on demand.

 

...lee

Link to comment
Share on other sites

There is another way, you could have 4 sprites + 1 set of 4 character patterns defined the same way as the sprites. Let's say that's the 5th "sprite" .... when it comes to moving, the first 4 would move as expected. The fifth one should 'become' a sprite (and the one next to become a set of 4 patterns) ... of course, you'd have to line up the sprites to the correct pixel line for the patterns otherwise it will stand out.

  • Like 1
Link to comment
Share on other sites

The F18A will be back in stock very soon, apologizes for the lack of availability recently. Also, I know the price is heavy compared to other technology available these days, but this is a hobby project and I'm not making thousands of units (sorry to burst everyone's bubble on that, but the whole world is not clamoring to get a retro-computer... ;-) ) I am also planning to release the board files and BOM in the future, so anyone who wants to make one themselves can do so.

 

As for ways to "bypass" the 4-sprites-on-a-line limit on the original 9918A VDP, there is no way. There are various methods of doing sprite-rotation to give all sprites priority so they show up at least every few frames, but this leads to sprite flickering. Your results will vary depending on the method you employ and how many sprites you are trying to display on a scan line.

 

I always hated the limit too, which is why I removed the limitation in the F18A. I tried to add features I always wanted from my TI, that would let programmers get on with making their software instead of spending time and CPU cycles working around limitations.

  • Like 2
Link to comment
Share on other sites

Short of using an E/A subroutine, are there any cheats or tips that can bypass the 4-sprite on a horizontal line visibility limitation in TI Extended Basic? I need 5 visible sprites on a horizontal line for my project. Thanks.

The F18A. The limit is hardware induced, not software.

Some emulators like Classic99. Limit can be turned off.

 

 

You can do it, but you will have some flicker.

Yep, that's one way to go, but I guess you need something faster than XB (was "short of using an E/A subroutine").

 

 

Out of curiosity, what are you doing that requires more than 4 sprites on a horizontal line?

Yeah, I'd like to know too. There are different challenges, solutions and workarounds with almost any case (different needs, nice to haves etc.).

 

Before I knew about the limitation I was trying to use it to make moving letters for a game title.

Yeah, some titles were probably made shorter because of that, and others had the title tilt downwards (or upwards) (to have 4 or less sprites per horizontal line).

 

100 CALL CLEAR::READ T$::FOR I=1 TO LEN(T$)::L$=SEG$(T$,I,1)::IF L$=" " THEN 120
110 CALL SPRITE(#S+1,ASC(L$),2,80-S*2,35+I*6)::S=S+1
120 NEXT I
130 GOTO 130
140 DATA THIS IS A RATHER LONG MESSAGE
 

 

There is another way, you could have 4 sprites + 1 set of 4 character patterns defined the same way as the sprites. Let's say that's the 5th "sprite" .... when it comes to moving, the first 4 would move as expected. The fifth one should 'become' a sprite (and the one next to become a set of 4 patterns) ... of course, you'd have to line up the sprites to the correct pixel line for the patterns otherwise it will stand out.

Good ideas, and usually this opens up more possibilities with faster languages (incl. compiled XB).

 

 

As for ways to "bypass" the 4-sprites-on-a-line limit on the original 9918A VDP, there is no way. There are various methods of doing sprite-rotation to give all sprites priority so they show up at least every few frames, but this leads to sprite flickering. Your results will vary depending on the method you employ and how many sprites you are trying to display on a scan line.

 

I always hated the limit too, which is why I removed the limitation in the F18A. I tried to add features I always wanted from my TI, that would let programmers get on with making their software instead of spending time and CPU cycles working around limitations.

I guess most of it to me is more about nostalgia, fun and challenges, and working "with the limitations" and possibilities. But sure, both directions goes with the "if only and what if". ;)

  • Like 2
Link to comment
Share on other sites

Back in the day, I wrote code that would move an Asteroids spaceship around the screen using no sprites. And it was smooth as butter, not block by block like Tombstone City. It was a simple matter of mapping 4 (sometimes 6) chars on screen and then manipulating their definition pattern to shift the image up down left right. As the image left the "box", new chars were placed and the parts of the ship were shifted into those blocks.

 

I think I defined 16 different directions the ship could point, so it rotated smoothly. It was a blast to fly the ship around the screen! And I was so proud that I used no sprites to make it happen.

 

Anyways, perhaps you could get away with something like that.

 

Darryl

Link to comment
Share on other sites

Out of curiosity, what are you doing that requires more than 4 sprites on a horizontal line?

 

Before I knew about the limitation I was trying to use it to make moving letters for a game title.

I'm just now getting back into programming for the TI, which I had as a young adult. I now have an actual PEB with 2 half-height floppy drives and a 32k memory expansion, things I didn't have back then. Having a full TI system has spurred me on to do something I never could have done back in the Ferg (but wanted to do): teach myself Assembly language on the TI.

 

First, though, I need to reacquaint myself with Basic and Extended Basic, so I'm in the middle of creating a small sliding tile game (remember those?) using a 4x4 grid. I had planned to use a sprite to serve as a sort of point-and-click mouse cursor (using the joystick) for the player to make the moves. But the 4-sprite limitation, coupled with the fact that I don't want to make the grid 3x3 just to accommodate a cursor, has made me realize that player input (at least for now) will be done with the keyboard.

 

Once I get the game done (I call it Ty-Le-Oh), I'll post it here, and then I'll begin the daunting task of converting it into a machine language game as I teach myself Assembler.

Link to comment
Share on other sites

The F18A will be back in stock very soon, apologizes for the lack of availability recently. Also, I know the price is heavy compared to other technology available these days, but this is a hobby project and I'm not making thousands of units (sorry to burst everyone's bubble on that, but the whole world is not clamoring to get a retro-computer... ;-) ) I am also planning to release the board files and BOM in the future, so anyone who wants to make one themselves can do so.

 

As for ways to "bypass" the 4-sprites-on-a-line limit on the original 9918A VDP, there is no way. There are various methods of doing sprite-rotation to give all sprites priority so they show up at least every few frames, but this leads to sprite flickering. Your results will vary depending on the method you employ and how many sprites you are trying to display on a scan line.

 

I always hated the limit too, which is why I removed the limitation in the F18A. I tried to add features I always wanted from my TI, that would let programmers get on with making their software instead of spending time and CPU cycles working around limitations.

Matthew, I hope you didn't infer that I thought your F18a was overpriced at $78; I certainly didn't mean to imply that it is. I know it's a hobby for you and that you have to cover your costs.

 

I do want to get an F18a when it becomes available again. I have already submitted my email to you via your online store so that I can be notified when they're ready for purchase. In addition to removing the sprite limitation and increasing picture quality, I'm really looking forward to 80-column capabilities to help me in my quest to learn and program in Assembly language.

Link to comment
Share on other sites

First, though, I need to reacquaint myself with Basic and Extended Basic, so I'm in the middle of creating a small sliding tile game (remember those?) using a 4x4 grid. I had planned to use a sprite to serve as a sort of point-and-click mouse cursor (using the joystick) for the player to make the moves. But the 4-sprite limitation, coupled with the fact that I don't want to make the grid 3x3 just to accommodate a cursor, has made me realize that player input (at least for now) will be done with the keyboard.

As Retrospect suggested, I guess that game can have the tiles as background graphics, and whenever you have to slide one or more tiles, pick up one (turn on sprite and remove background), move and put it down (turn on background and remove sprite), and repeat this process if many tiles have to be moved in "one move". You could also move without sprites. If a tile is 3 by 3 characters, and you move them one character at a time, then there's still a sliding effect.

 

;)

Link to comment
Share on other sites

As Retrospect suggested, I guess that game can have the tiles as background graphics, and whenever you have to slide one or more tiles, pick up one (turn on sprite and remove background), move and put it down (turn on background and remove sprite), and repeat this process if many tiles have to be moved in "one move". You could also move without sprites. If a tile is 3 by 3 characters, and you move them one character at a time, then there's still a sliding effect.

 

;)

Hmmm...that could work. I'll try that. Thanks, sometimes99er! Edited by MillipedeMan
Link to comment
Share on other sites

Hmmm...been toying with upgrading to an F18A. My picture quality is already great on my 8-year-old Samsung monitor TV (has every input except HDMI), so I would only get it for the 80-column text and for removing the sprite/scan line limitation. However, I'm reluctant to part with $78 to but one (if I can even find it). Thanks, everyone, for your input.

 

I've said a lot about the beauty of playing games with a stock TMS9918A on a CRT monitor elsewhere in these forums, so I certainly understand your being satisfied with the picture quality on your Samsung (best CRTs I ever used were Samsungs), But honestly, no monitor hooked up to 4A video comes anywhere near the clarity of an F18A equipped system. The best comparison is to fire up your favorite TI emulator on a PC connected to a LCD or LED display, and turn off any video filters in the software. This is EXACTLY what the picture quality is like with an F18A on real hardware...no colour bleeding whatsoever!! (which I praise or damn depending on the application).

 

Plus you get a massive colour palette, unlimited (well to the maximum available) sprites per line, 80 column display (among other custom resolutions) and the ability to directly connect any VGA monitor - flat panel or CRT.

 

You get all this, AND the most impressive Super Mario Bros port ever released for a non-Famicon machine absolutely free in these forums! (not to mention a Scramble clone that is as good as playing the original on MAME.

 

It's nice if you can keep a stock console for authenticity (and that true retro-computer look), but adding an F18A will be the best $80 you've ever invested in your TI-hobby.

  • Like 3
Link to comment
Share on other sites

 

You get all this, AND the most impressive Super Mario Bros port ever released for a non-Famicon machine absolutely free in these forums! (not to mention a Scramble clone that is as good as playing the original on MAME.

 

What he said! If you could only get one single upgrade for your TI (out of all the others available), the F18A, IMHO is the one I'd personally go for.

 

Now while I'm on the subject of goodies for the TI, if you could only get one single cartridge for your TI, the FlashROM 99 is the one I'd go for.

Link to comment
Share on other sites

Now while I'm on the subject of goodies for the TI, if you could only get one single cartridge for your TI, the FlashROM 99 is the I'd go for.

 

Now hold on there...I think everyone will agree that « Securities Analysis » is the absolute best cartridge to have as a TI hobbyist in 2016! I mean, honestly, how often do you turn on your computer and NOT insert that cartridge!?!?

 

And really, who wants or needs the convenience of saving nearly all cartridges (we're getting there) ever released for the TI on a single cartridge (and a few SDs) anyway? What good is having a 35 year old TI if the ROM port is never going to wear out???

 

So unless you can claim some kind of advantage in being able to access and load ALL your games faster on your 4A than on your PC without ever swapping cartridges, what is the point really?

 

There's also one very important thing to remember, no one has ported Securities Analysis to a compatible bin yet, have they!? That should tell you everything!

 

Sorry Ω, but I think you have to agree that I've just destroyed your proposition quite effectively! So there!

Edited by PeBo
  • Like 2
Link to comment
Share on other sites

 

Now hold on there...I think everyone will agree that « Securities Analysis » is the absolute best cartridge to have as a TI hobbyist in 2016! I mean, honestly, how often do you turn on your computer and NOT insert that cartridge!?!?

 

And really, who wants or needs the convenience of saving nearly all cartridges (we're getting there) ever released for the TI on a single cartridge (and a few SDs) anyway? What good is having a 35 year old TI if the ROM port is never going to wear out???

 

So unless you can claim some kind of advantage in being able to access and load ALL your games faster on your 4A than on your PC without ever swapping cartridges, what is the point really?

 

There's also one very important thing to remember, no one has ported Securities Analysis to a compatible bin yet, have they!? That should tell you everything!

 

Sorry Ω, but I think you have to agree that I've just destroyed your proposition quite effectively! So there!

 

 

116451.gif ROFL

 

 

gallery_35324_1027_5013.jpg

Link to comment
Share on other sites

What I enjoy the most about vintage TI app software, is that it is a living testament to the Y2K bug.

 

While the rest of the world thought that the Y2K bug was an exaggerated myth, vintage computer hobbyist learned first hand that the 2 digit year was indeed a software killer at midnight on January 1st, 2000.

 

Since (as Opry99er kindly pointed out) we all use these apps in our daily lives, I would like to provide the following work around:

 

1960 & 1988 have the same dates as 2016

1970, 1981, 1987 & 1998 have the same dates as 2015

1969, 1975, 1986 & 1997 have the same dates as 2014

1963, 1974, 1985 & 1991 have the same dates as 2013

1984 has the same dates as 2012

 

if you follow the 80's, a clear pattern emerges that can fool your software into thinking that Y2K never happened (kinda like pulling a Marty McFly - but without a flux capacitor).

 

You can now all FINALLY balance your checkbooks and verify that you're broke because of your hobby!!!

(and yes, I do accept donations for my valuable assistance in this matter)

  • Like 1
Link to comment
Share on other sites

 

It's nice if you can keep a stock console for authenticity (and that true retro-computer look), but adding an F18A will be the best $80 you've ever invested in your TI-hobby.

 

Also remember that the F18A, since the V1.6 firmware, has the option to enable simulated scan lines. Since the VGA screen has twice the scan lines as the original 9918A, to make the simulated scan lines the F18A reduces the intensity of every other VGA scan line by about 70% (I don't remember exact amount). The feature can be enabled via a jumper on the F18A board, or via software written to take advantage of the new F18A features.

Link to comment
Share on other sites

 

Also remember that the F18A, since the V1.6 firmware, has the option to enable simulated scan lines. Since the VGA screen has twice the scan lines as the original 9918A, to make the simulated scan lines the F18A reduces the intensity of every other VGA scan line by about 70% (I don't remember exact amount). The feature can be enabled via a jumper on the F18A board, or via software written to take advantage of the new F18A features.

 

In another thread we noted that one of the advantages of the CRT is how it naturally anti-aliases or softens between the pixels.

  • Like 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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