Tool-assisted game movies
When human skills are just not enough

Submission #3132: tall's SNES Dragon's Lair in 09:17.82

Console: Super NES
Game name: Dragon's Lair
Game version: USA
ROM filename: Dragon's Lair (U) [!].smc
Emulator: (unknown)
Movie length: 09:17.82
FrameCount: 33469
Re-record count: 8289
Author's real name: John B.
Author's nickname: tall
Submitter: tall
Submitted at: 2011-04-28 18:11:44
Text last edited at: 2011-04-29 00:38:03
Text last edited by: tall
Download: Download (2522 bytes)
Status: decision: cancelled
Submission instructions
Discuss this submission (also rating / voting)
List all submissions by this submitter
List pages on this site that refer to this submission
View submission text history
Back to the submission list
Author's comments and explanations:

Emulator Details

  • Snes9x 1.51
  • Left+Right, Up+Down enabled


  • Uses hardest difficulty setting
  • Aims for fastest time
  • Takes damage to save time
  • Unlocks a secret message

Special Thanks

I want to put this section first to give recognition to someone really wonderful. marcolaranja and I originally were coauthoring this run. I had more time to work on the run, and after several weeks of a busy schedule, Marco graciously bowed out. You will be hard pressed to find someone as friendly as marco. He was the first to discover the quick way to the first exit, and how to beat the last level without damage boosting. Some of his input remains in level 1-2.

Other thanks to:

  • Tompa, for discovering an even better skip to the first exit
  • StarFighters76, whose maps on gamefaqs saved me the hassle of actually playing the game.

Useful memory addresses

I found an obscene number of memory addresses that were essential in optimizing.

Address Type Name Description
7E054B b s X-Speed Speed along the X-axis.
7E054A b u X-Subspeed The fractional value of the player's speed. Unlike other games that only use this for acceleration, different values affect your overall speed.
7E0522 w u X-Position Player's exact position on the X-axis
7E0BAC w u "X" Player's approximate position. This is strange because this value has dead zones at the beginning and end of a level. Every time the least significant byte of X-position overflows, this increments*.
7E054D b s Y-Speed Speed along the Y-Axis
7E054C b u Y-Subspeed The fractional value of the player's speed.
7E0525 w u Y-Position Player's exact position on the Y-Axis
7E0526 w u "Y" Similar to "X," but there appear to be no dead zones.
7E0524 b u X-Region X-Position overflow counter.
7E0527 b u Y-Region Y-Position overflow counter.

  • In this sense it's similar to pixel and subpixel values, but you can be on different pixels for the same value of "X."
Enemies' HP works the opposite of most games. They start at 0 and go up. There usually will not be more than 4 enemies on the screen, but here are all of them.

Enemy Address
1 7E0595
2 7E05D0
3 7E060B
4 7E0646
5 7E0681
6 7E06BC
7 7E06F7
8 7E0732

Some stages have a movable object that you have to push by running into it. To help with the last such stage, I found these addresses.

Address Type Name
7E075E b s Object Speed
7E075D b u Object Subspeed
7E074B w u Object X-Position (right)
7E0755 w u Object X-Position (center)
7E0763 w u Object X-Position (left)

It is fun to enable cheats and give yourself infinite health, lives, and time.
Address Name
7E1036 # Shields
7E1028 # Lives
7E1030 # Gold
7E1031 Minutes
7E1032 Tens
7E1033 Seconds
7E0FCC Frames

Tricks Used

Damage Boost
Damage boosting appears in this game. It is best suited for giving the player a super high jump. This is used to skip large sections of levels. The Expert difficulty limits the player to one shield, meaning you can only take 1 hit before collecting another.
Speed Dampening
The player's speed gets butchered in the air. You lose 20 subspeed or more per frame until your total speed hovers around 3.6. However, during your throw or duck animations, you lose only 4 subspeed per frame. Any time you see me throw with no apparent reason, that's what's going on.
Fast Climbing
When climbing, you can start a new climb animation by repressing "up." Release as soon as you've stopped moving from one pull and your next pull will begin 5 frames faster. Over the course of the game, that's no small potatoes!
Level end abuse
There is some weird variation at the end of levels depending on whether you run through, duck, or come to an abrupt stop. These may all result in the same timer value, but some can cause the next level to start 1 or 2 frames faster. I optimized this as much as I could.

Stage by stage comments

...may come later. If you have any questions, put em in the thread.

Similar submissions (by title and categories where applicable):