Jump to content
IGNORED

TV screen jitters when restarting Raiders of the Lost Ark


Keith Weisshar

Recommended Posts

Why does the TV screen jitter when restarting Raiders of the Lost Ark? This effect is seen on YouTube at

around 2:14 on the timeline.

 

Because, the Atari 2600 has to resync with the TV. The Atari 2600 has no video memory, so it has to draw the screen every frame. I believe resetting will run the first routine that clear and reset the 128 byte of RAM, skipping the drawing routine since drawing the screen takes 50% of CPU power. Then at the end of the reseting routine, it'll enable the drawing routine which would not sync with the TV right away. Hence, seeing partial image since it ran out of cycles from the previous 2 routine. Next routine would just start the attract mode and the drawing routine should work as intended.

 

Example of games rolling:

 

Mouse Trap rolls screen when it reset the board. Buck Roger rolls the screen when it bankswitch from the landscape mode to UFO mode. The screen rolls with 3D Tic Tac Toe when the CPU is thinking, which the drawing routine is skipped to delicate CPU time to the thinking routine.

Edited by Kiwi
Link to comment
Share on other sites

My question is how high are you to actually be playing this game?? I tried and tried to play this back in the day and could never figure anything out :( now I have seen the videos of it being played and I still think how the hell did they figure that out?

Link to comment
Share on other sites

My question is how high are you to actually be playing this game?? I tried and tried to play this back in the day and could never figure anything out :( now I have seen the videos of it being played and I still think how the hell did they figure that out?

 

The game requires 2 controllers. One for movement and using item I think. The other for selecting your inventory and button to drop a item. Most people would get confuse, thinking this game need 1 controller.

Edited by Kiwi
Link to comment
Share on other sites

Many games lose sync when resetting. The advantage is that it is a "quick 'n' dirty" solution...it only needs a 3-byte jump (or 2-byte branch) to the cold start address to implement. I don't believe that Atari (the company) had a problem with this method, so long as the running game itself was stable.

Link to comment
Share on other sites

Do you have a list of games that uses a cold start method of resetting?

The reset does not actually reset the console. It is simply a switch, and it's up to the programmer to write some code to check it. If they did not write this code in the game program then the switch would have no effect at all.

 

 

So any game that resets from a press of this switch is using the cold start method. In other words, every single Atari game does it. :)

Link to comment
Share on other sites

But if a programmer wanted to avoid the screen flicker when the reset switch was pressed, it wouldn't take much effort to implement a delay until the appropriate instant before executing a cold start to keep the VSYNC in sync.

Yes, it is very easy to do. Just set up a bit flag somewhere in ram that can be checked. While reset is being held ignore moving the player, updating the score etc... Once it is released do a cold start at an appropriate scanline so that the scanlines will remain stable, and ensure Vsync gets hit at the right time. I do this with some of my hacks as I really hate jumping screens. Even worse is when the game doesn't kill the audio while reset is being held. That's where you get all the annoying screeching from.

 

 

Anyhow it costs more rom to do this, so the easiest way is to just jump to reset and not worry about the picture jumping. That's what a lot of old games did.

Link to comment
Share on other sites

The reset does not actually reset the console. It is simply a switch, and it's up to the programmer to write some code to check it. If they did not write this code in the game program then the switch would have no effect at all.

Correct.

 

 

So any game that resets from a press of this switch is using the cold start method. In other words, every single Atari game does it. :)

Incorrect. As you've stated, it's up to the programmer how the switch was implemented. The program (upon detecting a switch press) could jump to the cold start address and start over just as if you turned the machine off and back on (subsequently causing the sync glitch)...or jump to some other point that does not reexecute the routine in the same manner (avoiding the sync glitch)...or jump to some other point that is completely unrelated to machine initialization.

 

 

As far as a list goes, I don't know the advantage of trying to compile such a list. But if a program causes a sync glitch from a game reset switch press, it's usually due to using that method of resetting a game. Some games feature multiple entry points into the cold start address routine, in order to preserve certian variables (such as which game selection you've chosen).

Link to comment
Share on other sites

 

So any game that resets from a press of this switch is using the cold start method. In other words, every single Atari game does it. :)

Incorrect. As you've stated, it's up to the programmer how the switch was implemented. The program (upon detecting a switch press) could jump to the cold start address and start over just as if you turned the machine off and back on (subsequently causing the sync glitch)...or jump to some other point that does not reexecute the routine in the same manner (avoiding the sync glitch)...or jump to some other point that is completely unrelated to machine initialization.

 

It depends on your definition of cold start. I define a cold start as the program running some routine to restart itself, and a hot start as a hardware related reboot (like a power on/off). Might be incorrect in my interpretation, but the idea that I was shooting for is that the reset switch is not physically restarting the system through any hardware means.

 

 

Edit:

 

I have hot and cold mixed up. However, the idea I'm shooting for is still the same. Hardware reboot vs software reboot.

Edited by Omegamatrix
Link to comment
Share on other sites

^^ ...unless the game select screen is shown, or the chalise is already in the yellow castle. If either is true, all objects are returned to preset locations, then scrambled based on the current framecounter "seed" if it's the 3rd game. If the chalise had been in the castle with the tune playing, the kernel uses only 2 of the 3 frames in the display loop...so if game reset is used to redisplay the game select screen, the winning tune plays at a slower rate due to all 3 frames now being displayed.

Adventure is a game that never goes back to the routine used for cold start. Besides zeroing all ram, that routine resets the missile sprites to the borders...so if you "fry" the console to begin execution at a random address, the side panels will be in the wrong spots.

Link to comment
Share on other sites

. I define a cold start as the program running some routine to restart itself, and a hot start as a hardware related reboot (like a power on/off).

 

Usually it's the other way 'round and it's called "warm start" instead of "hot"... Cold start is a hardware related reboot (like a power on/off) and a warm start it's some software method.

 

Think of it in terms of an engine that cools if turned off, so if you start it, that's a "cold start" - from the cold state.

Link to comment
Share on other sites

. I define a cold start as the program running some routine to restart itself, and a hot start as a hardware related reboot (like a power on/off).

 

Usually it's the other way 'round and it's called "warm start" instead of "hot"... Cold start is a hardware related reboot (like a power on/off) and a warm start it's some software method.

 

Think of it in terms of an engine that cools if turned off, so if you start it, that's a "cold start" - from the cold state.

Yes I know. I said so in the edit of my post above.

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