Download Tetris & Dr. Mario Highscore saving ROM Hack

Tetris & Dr. Mario Highscore saving Game
Spread the love:
Parameter Info
Console: SNES
Original Game: Tetris & Dr. Mario
Type: Improvement
Genre: Puzzle
Modifications: GP
Creator: lytron
Date Created: 03/03/2015
Last Modified: 03/08/2015
Parameter Info
File Name: tetrismariosave.zip
Downloads: 28
Requirements: Header (SNES)
Version: 1.0
Rating:

Tetris & Dr. Mario Highscore savingDescription

Don’t think this is gonna be a 100% Gold Remake, it’ll have its differences. Extra battles (some’ll be optionals, tough but rewarding), Hoenn Pokemon (in every area, and hard to find) New areas, Remapped some dungeons (so your old guides wont work) , Extra recurring characters (some’ll hate you, some’ll help you)

Note that the hack is incomplete but feel free to enjoy the hack as-is.

Tetris & Dr. Mario Highscore savingRead Me

This hack makes it possible to save the highscore records for the SNES game "Tetris & Dr. Mario" - the european release only.
The result was formerly produced as present for Derek Alexander,  formerly known as the Happy Video Game Nerd.

****************Sim City - Sylt Patch Infos**************
*							*
*	Dieser Download stammt von der Website:		*
*	    	 www.pantalytron.com			*
*-------------------------------------------------------*
*	Das benötigte ROM heißt: Tetris & Dr Mario (E) [!].sfc	*
*	Mit dem CRC32-Wert: 523E4153 			*
*********************************************************


************Original Nachricht,des Autors****************


------------Open Letter to Derek--------------

A small look into Tetris & Dr. Mario

... and an Open Letter to Derek Alexander, formerly known as The Happy Video Game Nerd.

Dear Derek,

how's it going? Survived your move to Seattle?

I say straight why I write this. Remember that you complained about Tetris & Dr. Mario having no battery backup? Well, I spent today and the evening yesterday on it to write a little hack that should do it. You can download the IPS-Patch for it here (it's both for headered and unheadered ROM files, but make sure you use a (E)-ROM). Maybe someone other, more talented of your fans can do you a nice Repro Cartridge with it.

There is a funny episode in hacking this, something that confused me. When I told the game that it has battery backup now, this message popped up after leaving the title screen:

When I examined the code, i found the following procedure:

The game is, as you know, INTENDED to have no battery backed up storage. But it writes a random value into it anyway. Immediately after that, it loads that value back and looks if it is the same or not. If it is, it jumps to the blue screen.

The thing is: If there is no battery backed up storage, loading a value from the place where it should be gives you a random value back. So, it basically checks if there is such a thing, and if, the game refuses to be played. After thinking about it half a day, I remembered that I heard from someone that this was a way of copy protection. Do you remember/know Copy Stations? That were adapters that you could put in the cartridge slot and that allowed you among other things to copy ROMs to 3.5'' floppy disks ("Yeah, those were the days..."). And I remember vaguely to be told that these Copy Stations always gave the SNES the impression that it has a Game with Battery Backup, and this was an "indicator" of something being fishy.

... did I bore you to death right now?

Anyways, thanks for your show. Keep up the good work!

... and let Nekbone return! ;)


~~~

Some technical blablah:

Used the "Tetris & Dr. Mario (E)"-ROM.

    The current highscore of a game is stored in $7E0B0B. This is the storage of the highest highscore that is shown while playing in both Dr. Mario and Tetris.
    The Dr. Mario is (permanently?) stored in $7E1E8A, too.
    The values in $7E1E8A get set at $80/8222. This is a transfer loop that transfers $D3 byte starting at $80/82B2 to $(7E/)1E04 onwards.
    (Note by the way:
    There is a "we jump to a address from a table"-subroutine at $81/8B03, the decider is at $7E/0BB5)
    $81/8B34 is one of the subroutines of the address table, it is the thing that replaces the old highest (and second highest) highscore.
    The highest Tetris highscore (with name) is stored at $7E/1E30-A, number two is at $7E/1E3B-45, number three starts at $7E/1E46.
    It seems like there already is a checksum calculator for the highscores, and it's at $80/827B, and it gets stored to $1E02/3.

---Lytron