Jump to content
Trinity

Starship hack?

Recommended Posts

Would it be easy to hack starship so that it does not have the rotating colors/screen saver thing going on when it's not being played?

 

Same thing with a lot of games now that I think about it...

 

Thanks

Share this post


Link to post
Share on other sites

Changing ROM address $F062 from $DE to $2E should work...it will be incrementing an invalid RAM address instead of the screen saver EOR value variable.

Share this post


Link to post
Share on other sites

ha ha, :roll:

 

No really, I just like to have starship running on one of my 2600's as a 'screensaver'. And the changing colors are annoying.

Share this post


Link to post
Share on other sites

Jefferson Starship it is :)

 

Great! it doesn't cycle colors anymore. :) Now I need a harmony cart...

 

Game 3 is fn' great as a screen saver! Thanks Nukey!!!

 

How about this, Would it be possible to get rid of the time limit? I wonder how high the score could go up to then...? (100000 would be nice) LOL

Edited by Trinity

Share this post


Link to post
Share on other sites

My guess is the score maxes out at 99. The game probably just ends at 99 points (Air-Sea Battle and Street Racer do this, as do, I'm sure, other early titles), so you'd have to hack that too. Don't ask me how, though, :)

 

It's possible the score might reset to zero, or even crash the game. I don't think Bob Whitehead was banking on anyone hitting 99 points, so it's possible he may not have bothered to put any kind of check in place for that. After all, Star Ship is only a 2K game, and every byte of that 2K was precious.

 

In any event, I'm about 99% confident that three-digit scores are impossible in Star Ship.

 

 

(On another note, I always thought it'd be cool to play these games in one of the random "screen saver" color schemes, or to be able to cycle through them with a switch like the Game Select switch, and play with the color scheme you last landed on.)

Share this post


Link to post
Share on other sites

The scores are held in $AE and $AF for the 2 players, BCD mode (i.e...hex, but treated as decimal). So not only is it impossible for 3 digits to be held in ram, but the existing display kernel would also lack the means to show it. The scores would simply roll over from 99 to zero and have no other effect if you managed to do it within the time limit of 127 x 64 frames (or roughly two and a quarter minutes per player...a common timer limit in early Atari stuff). Disabling/hacking the timer is kinda pointless, really...the game would just continue forever.

 

BTW a partially reverse-engineered disassembly was made by Manuel (Cybergoth) Polik. You can read it as plain text here.

  • Like 2

Share this post


Link to post
Share on other sites

Starship is one of my all time favorites for the VCS. So it is very interesting to know these things.:)

Share this post


Link to post
Share on other sites

It's the "screensaver"...and pretty much all of the early 2600 games had something similar. Ya see...back in the old B.C. (before cartridge) days, dedicated Pong-type console developers thought it was pretty cool how their gadgets could display a dotted line, two much shorter lines, and a dot. So cool that they unwittingly cranked up the contrast/intensity of those images...so they'd be permanent reminders to viewers that their console had been used on a given television :)

 

Consumers didn't find it to be so cool.

 

As a selling point, Atari stepped up to explain that programming in a routine to shift the displayed colors of any unattended Atari games' objects would not result in this unwanted etching.

 

And there was much rejoicing.

 

OK...so it was bullshit in the long run. But consumers still bought the idea.

  • Like 1

Share this post


Link to post
Share on other sites

It's the "screensaver"...and pretty much all of the early 2600 games had something similar. Ya see...back in the old B.C. (before cartridge) days, dedicated Pong-type console developers thought it was pretty cool how their gadgets could display a dotted line, two much shorter lines, and a dot. So cool that they unwittingly cranked up the contrast/intensity of those images...so they'd be permanent reminders to viewers that their console had been used on a given television :)

 

Consumers didn't find it to be so cool.

 

As a selling point, Atari stepped up to explain that programming in a routine to shift the displayed colors of any unattended Atari™ games' objects would not result in this unwanted etching.

 

And there was much rejoicing.

 

OK...so it was bullshit in the long run. But consumers still bought the idea.

 

And back in the day, Having a 25" color TV was like being next to God Allmighty... A lot of my friends got 'subordinated" to some shitty TV to play on because their parents would not let 'that TV game' near their TV.LOL

Share this post


Link to post
Share on other sites

....I remember a lady who played Tetris so much on their big projection screen, she ended up with a Tetris "Tower" burned-in the middle of the screen! New shows: Tetris sports, news, sitcoms, commercials and Pac-Man running around too!

Share this post


Link to post
Share on other sites

I figured out a way to use Stella as a screen saver! So what I wanted to do, was to have the attract screen for an Atari VCS game running for awhile, and then stop, and then start again with a different game. I know that Stella can be launched from the command line, but how to launch it, wait for awhile, stop it, and then start again with a different game? The solution I found, is to have two separate batch files running in two different DOS windows at the same time. One launches Stella with a list of games, and the other waits for a period of time (20 or 30 seconds works well), and then stops any instance of Stella that is running. I set this all up to run on a Windows XP machine.

 

So here are the batch files. Of course, you'll have to change the Launcher batch to point to the folders where your games are...

 

:: LaunchVCS.cmd - Launches a new game as soon as the game running is stopped...

:LOOP

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\001. Pitfall II.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\002. Pitfall!.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\005. Space Invaders.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\006. H.E.R.O.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\Try\spacerocks20121129_NTSC.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\Try\SuperPongNew.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\Try\D.K.VCS_130617_NTSC.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\Favorites\Juno First.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\009. Yars' Revenge.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\010. Asteroids.bin"

"C:\Program Files\Stella\Stella.exe" "C:\_Emulation\AtariVCS\AATop100\021. Centipede.bin"

GOTO LOOP

 

The key to this next one, is a utility called, "pskill" from Microsoft's SysInternals tools: http://technet.microsoft.com/en-us/sysinternals/bb896683.aspx

 

:: WaitAndKill.cmd - Let Stella run for awhile, then kill it...

:LOOP

:: sleep 30 seconds

ping -n 31 127.0.0.1>nul

:: Stop Stella

pskill Stella.exe

:: Do it again

GOTO LOOP

The one downside of doing it this way, is sometimes the DOS windows show in-between stopping and re-starting Stella. Here's a video of the result. I set the wait time to be rather short, so you can see a wide variety of games without waiting too long. I decided to use AC/DC guitar riffs for the sound-track...

 

Share this post


Link to post
Share on other sites

Oh, one other cool thing... ...while this is running, you can press "F2" and start playing any game while its attraction screen is showing. When the time runs out, the game will quit and then go on to the next game. Stopping it is a bit of a challenge. I used "ctrl-shift-esc" to launch the Task Manager. I then selected one of the running batches and pressed "ctrl-C" to stop the batch. You only need to stop the Launcher.

Share this post


Link to post
Share on other sites

RE: the original post, I suggest flipping the TV type switch to B&W on your console or emulator.

 

The hack I want for this game is for the Left Controller to correspond to player one so I don't have to unplug my AtariVox+ from the Right Controller port and plug another joystick in. Apparently this convention was not set when Starship came out.

Share this post


Link to post
Share on other sites
On 8/22/2019 at 3:09 PM, gliptitude said:

RE: the original post, I suggest flipping the TV type switch to B&W on your console or emulator.

That only strips the color hue...you'd still have shifting shades of grey for a screensaver.

 

Hack for swapped sticks:

StarShip(joyswap).bin StarShip.asm

  • Like 2
  • Thanks 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...