We just reached 30,000 articles on this wiki! 🥳
If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Notes:7 Grand Dad/Data

From The Cutting Room Floor
Jump to navigation Jump to search

This is a sub-page of Notes:7 Grand Dad.

Hmmm...
To do:
  • Make a Data Crystal page if necessary.
  • There's more, such as:
    • More player states
    • Other things, such as object handlers.
    • Stuff for the basketball minigame
    • Position handlers.
    • Title screen values, cutscene values, and map values.
    • Text tables.
    • More ROM Addresses.
  • Dissect the game to see if there are more bytes changed from the original.
  • Look for sets of identical bytes.

Note: These are also affected and seen in the original game as well, but not worth documenting in the original game.

7 Grand Dad is a hack of the North-American version of The Flintstones: The Rescue of Dino and Hoppy, but some bytes are changes, and some are identical or left over. Mostly, the game is the same as the original.

iNES

7 Grand Dad has Mapper 4, named MMC3. It has Horizontal mirroring, NTSC-Region, and 128KB of PRG ROM, while also having 256KB of CHR ROM, which is quite different than the original US Version. The Rescue of Dino & Hoppy has Mapper 1, which is MMC1, and has 16x16 PRG-ROM Pages, along with 0x8 CHR-ROM Pages, and horizontal mirroring, suggests that 7 Grand Dad was not changed much, and appears that the data could be identical to the original.

Header

4E 45 53 1A 08 20 40 00 00 00 00 00 00 00 00 00

ROM Addresses

Hmmm...
To do:
  • Compare this address with the original game.
  • Needs proper documentation.

Located at 00058030 to 00059970 are the title screen graphics for 7 Grand Dad. This address has difference than the final game, which overwrites nearly all of the tiles with 7 Grand Dad graphics.

RAM Addresses

Keybind effects

Hmmm...
To do:
  • Needs to be properly documented and what offset?
  • Compare the bytes with the final game.

7 GRAND DAD LEVEL SELECT THING.gif

On the title screen, text data for the 1992 date can be found at 0000F670 to 0000F680. If Select is pressed, it will have an effect on RAM Address 0x303, and the number will change. It is defaulted to 1. Initially, the game checks for address 00E0 with value 20, reserved for the Select button input, but it's unknown if this value has any effect.

In-game, however, pressing Up + Select will change addresses 0x305 and 0x308, to value 03. Toggle cheat 0320:00 in order to disable the pause function, to see how it works. Initially, the game checks for address 00E0 with value 18, reserved for the Up and Select button input, but it's unknown if this value has any effect.

General

  • 03C0, 001B, 00ED and 001C - Sound number.
  • 00FC, 00FD, 00FE, 00FF, 0100 - Music handler. Freezing these values will corrupt the music handler and make weird noises. Don't touch that!
  • 038A - Scene ID.

Title Screen

  • 0000 - Title screen handler. Freezing the values will produce garbage results.
  • 0001 - Title screen handler (1). Freezing the values will produce garbage results.
  • 0002 - Position for the "PUSH START BUTTON!" text. Freezing the values will modify the text position.
  • 0003 - Title screen data. Freezing the values will produce garbage results.
  • 0004 - Title screen data. Freezing the values will produce garbage results.
  • 0061, 0078 - Title screen data, PPU/Graphic data, palette data. Freezing the values will produce garbage results.
E0 E2 02 1F 1F 1F 00 02 
1F 1F 1F 1F E0 E2 02 1F
1F 1F 00 02 1F 1F 1F 1F
  • 0079, 007B - Title screen handler. Freezing the values will produce garbage results.
  • 00FC, 00FD, 00FE, 00FF, 0100 - Music handler. Freezing these values will corrupt the music handler and make weird noises. Don't touch that!
  • 01E4, 01F4, 01F6 - A "PUSH START BUTTON!" text handler, title screen handler. Freezing the values will get a softlock.
  • 0200 to 0237 - Graphics and tile positions for the little Fred thing on the title screen. Freezing the values using a cheat code will modify the tile's position, as well as its graphic.
1C 01 00 6F 1C 11 00 
77 1C 21 00 7F 2C 31 
00 6F 2C 03 00 77 2C 
13 00 7F 19 29 01 6D 
19 39 01 75 19 0B 01 
7D 19 1B 01 85 29 2B 
01 6D 29 3B 01 75 29 
0D 01 7D 29 1D 01 85
  • 0303 - The "Number". Freezing this value will change the number.
  • 86C3, 86C4 - Debug menu value. The values needed to activate are:
    • 86C3, compare with 25, freeze at C5 - button press routine
    • 86C3, compare with 25, freeze at CC - debug menu
    • 86C4 compare with 87, freeze at 86 - Debug menu

Cutscene

  • 03C0 - What text?

In Map

  • 03E5 - Player X
  • 03C1 - Player X
  • 03D3 - Player Y
  • 03AF - Player Y
  • 047B - Y player (2)
  • 0493 - X player (2)
  • 0410 - Some kind of state?
  • 0463 - A setting for the player.
    • E0 - Normal progression
    • E1 - Pass-through
  • 0553 - Player sprite
  • 053B - Palette?

In Debug Menu

  • 0012 - Cursor position.
  • 001B, 00ED and 001C - Sound number.
  • 03C0 - Cursor position/Sound number.

Basketball Minigame

With the free movement mode toggled with a cheat code, we can see even more stuff!

  • 031B - Check?
  • 031C - Check?
  • 0323 - Ball check?
  • 0324 - Check?
  • 0325 - Check? (1)
  • 0326 - Timer (In seconds)
  • 0327 - Timer (In minutes)
  • 0323 - Check?
  • 0345 - Check if ball touched?
  • 0379 - Control stuff?
  • 039D - Fred Input thing?
  • 039E - AI Input thing?
  • 039F - Input stuff?
  • 03B0 - Opponent check?
  • 03B1 - Ball holding?
  • 03C1 - Animation frame?
  • 03C3 - ???
  • 03F9 - ???
  • 0463 - Freezing this value will make the player invisible.
  • 0464 - Freezing this value will make the opponent invisible.
  • 0379 - Basketball Player state 1
  • 0380 - Basketball Player state 2
  • 0453 - Ball stuff.
  • 0495 - Ball X Position
  • 0494 - Ball Y Position.
  • 047D - Ball Stuff 1
  • 04DD - Ball Stuff 2
  • 04DB - Ball Stuff 3

In-game

  • 0320 - Pause state, freezing this value to 00 will not pause the game, allows for better understanding on how the Up + Start cheat works.
  • 0308 - Number of hearts. Pressing Up + Start will set this value to 03
  • 0309 - Number of heart counter. You can pick up powerups in barrels to increase your counter.
  • 0305 - Number of lives. Pressing Up + Start will set this value to 03
  • 030A - Weapon ID. You can get them in barrels.
    • 00 - Nothing
    • 01 - Slingshot
    • 02 - Stone Axe
    • 03 - Slingshot (Duplicate)
    • 04 - Egg
  • 030B - Number of coins. You can get them in enemies.
  • 0312 - Number of power. Hold A to charge.
  • 0303 - Level ID. Press select on the title screen to pick up to 5 levels.
    • 00
    • 01
    • 02
    • 03
    • 04
    • 05
    • 06
    • 07
    • 08
    • 09
    • 0A
    • 0B
    • 0C
    • 0D
    • 0E
    • 0F
    • 10
    • 11
    • 12
    • 13
  • 86C3 and 86C4 - Values to access the debug menu.

Objects

General

  • 0328 - Number of objects on screen?
  • 036A, 036B, 036C, 036D - Object ID. Freezing this value using a cheat code will place a object with a improper palette. Here's a list:
    • 00 - Crashes the game, but it is supposed to be the player object.
    • 01 - Jumping caveman enemy.
    • 02 - Yellow Bird enemy.
    • 03 - Dino enemy.
    • 04 - White Bird enemy.
    • 05 - Small Bird enemy.
    • 06 - UFO Enemy.
    • 07 - Jumping Enemy.
    • 08 - Jumping Enemy. (1)
    • 09 - Yellow Bird enemy. (1)
    • 0A - Sabertooth cat
    • 0B - Snake
    • 0C - Sabertooth cat (1)
    • 0D - Plant
    • 0E - Moai statue
    • 0F - Shooting enemy
    • 10 - Flying enemy
    • 11 - Running enemy
    • 12 - Enemy
    • 13 - Moai Statue (1)
    • 14 - Enemy
    • 15 - Enemy
    • 16 - Enemy that moves back and forth
    • 17 - Enemy
    • 18 - Skeleton Enemy
    • 19 - Lobster enemy
    • 1A - Enemy
    • 1B - Enemy.
    • 1C - Static enemy.
    • 1D - Flying Enemy (1).
    • 1E - Tooth Fish
    • 1F - Jumping Enemy
    • 20 - Sword Swallower
    • 21 - Jumping Enemy.
    • 22 - Boss.
    • 23 - Jumping Enemy.
    • 24 - Enemy.
    • 25 - Static enemy.
    • 26 - Walking turret
    • 27 - Moving enemy.
    • 28 - Unknown enemy.
    • 29 - Time Machine Part.
    • 2A - The "Big Man" boss.
    • 2B - Boss.
    • 2C - Another Boss.
    • 2D - Mammoth
    • 2E - Boss.
    • 2F - Nothing.
    • 30 - Boss
    • 31 - Enemy
    • 32 - Nothing.
    • 33 - What appears to be a claw.
    • 34 - A moving hook.
    • 35 - A egg weapon pickup.
    • 36 - A platform.
    • 37 - 3F - Barrel.
    • 40 - Dragon flames
    • 41 - 48 - Weird objects.
    • 49 - 4C - Softlocks the game.
    • 4D - 4F - Weird Objects.
    • 50 - Coconut.
    • 51 - Jumping enemy.
    • 52 - Falling object
    • 53 - A bat.
    • 54 - Crusher.
    • 55 - a Claw frame.
    • 56 - a Claw frame.
    • 57 - nothing.
    • 58 - nothing
    • 59 - a log.
    • 5A - nothing
    • 5B - A strange object.
    • 5C - A swinging platform
    • 5D - A bubble.
    • 5E - A bubble.
    • 5F - Lever.
  • 0466 - Object status
    • E0 - Normal.
    • E1 - Defeated.
  • 0555 - Object Graphics
  • 0556 - Object Graphics (1)
  • 0557 - Object Graphics (2)
  • 0558 - Object Graphics (3)
  • 0559 - Object Graphics (4)
  • 0541 - Object graphics (5)
  • 0540 - Object graphics (6)
  • 0526 - Object graphics (7)
  • 0527 - Object Graphics (8)
  • 053E - Object Graphics (9)

Player States

  • 0369 - Weapon ID (attack)
  • 041B - Player jump state. If a non-zero value is set, you will fly in the air.
  • 0451 - Player walk state, if set to 03 or FD, you will walk forever.
  • 0313 - Player state 1, value 40 is attacking
  • 0314 - Player state 2, value 40 is attacking
  • 0315 - Power-up state ( Powerups can be selected on the pause menu, but you can spend coins with them. )
    • 81 - FLY - Fly in the air! You spend 5 coins every time you fly.
    • 82 - JUMP - You can jump forever! Press A button to jump.
    • 84 - DIVE - Swim in the air! You spend 5 coins every time you swim.
  • 0453 - Some kind of charge state?
  • 0463 - Player State 5.
    • 00 - Free-movement mode
    • C0 - Normal
    • C2 - strange flag that enables the player to walk really fast.
    • C8 - lose a life.
    • D0 - run really fast and jump high.
  • 038B - Player state 3, presumably activates some kind of free movement mode if entered a level using the map, if set to a non-zero value, example: 038B:81. State 81 in-gameplay is the walking state.

An example of free movement if this cheat is activated:

Basketball minigame In-Game
7 GRAND DAD FREE MOVEMENT MODE 2.gif 7 GRAND DAD FREE MOVEMENT 1.gif

Although, in game, you still die at the bottom. The basketball minigame actually has up, down, left and right inputs to freely move, while in-game you press A to jump really high and move really fast, and well, it's kind of awkward. Additionally, it sets 0x463 to 0x0, a debug flag that enables the aforementioned free-movement in-game, not in the basketball minigame. The Basketball minigame has a different debug flag. This flag was also present in the original, likely a discarded free movement flag that is supposed to tie-in with the Debug Mode.

  • 03AF - Player state 4, if set to a non-zero value, it will activate invincibility. This is also a flag where if the player gets hit, it will grant invincibility for a short time.
  • 0553 - Player animation. ID DE is the sprite id of a Skeleton Standing.
  • 056B - unknown
  • 053B - Player direction/graphics/palette?

Positions

  • 05F5 - Y Scroll 1
  • 05F2 - Y Scroll 2
  • 05F4 - X Scroll 1
  • 05F0 - X Scroll 2

Player

  • 047B - Player Y Position.
  • 0583 - Player Y Speed.
  • 0493 - Player X, I guess. (80 - 90)
  • 059B - Player X Velocity 2
  • 05CB - Player X Velocity (14 - EC)
  • 05B3 - Player gravity.

Object

  • 047A - Spawns some kind of "Object".
  • 047F - Object Y Position.
  • 0495 - Hitbox updater object
  • 0496 - Object X Position updater 1
  • 0497 - Object X position.
  • 0498 - Object X Position updater 2

An example of an object's position being modified with cheat codes:

7 GRAND DAD OBJECT POSITION.gif