Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - Making Game Genie codes for my games I make

Reply to topic
Author Message
  • Joined: 06 Sep 2015
  • Posts: 240
  • Location: United States
Reply with quote
Making Game Genie codes for my games I make
Post Posted: Mon Aug 03, 2020 1:21 pm
So I thought of a way to make sure I can play my Game Gear game all the way through once I finish it: Use a Game Genie (which I have) to let me have infinite lives. One problem though: I don't know how to make Game Genie codes. There is a variable here:

lives db

which I would want to in effect null the part of the code which subtracts its value once I hit an enemy. How would I go about making a Game Genie code that would give me infinite lives in my game I am making?
  View user's profile Send private message Visit poster's website
  • Joined: 14 Oct 2008
  • Posts: 349
Reply with quote
Post Posted: Mon Aug 03, 2020 1:32 pm
Seems this is the information on this site:

Note that Game Genie is a ROM patcher, compared to Pro Action Replay which patches RAM.
To make infinite lives, you would replace the instruction which decrements the lives counter with a NOP (or you could change it to an LD, depending on how the code is written. Something that would still function without reducing lives.)

https://www.smspower.org/forums/8070-GameGearGameGenieCodeFormat

https://www.smspower.org/Development/GameGenie
  View user's profile Send private message
  • Joined: 06 Sep 2015
  • Posts: 240
  • Location: United States
Reply with quote
Post Posted: Mon Aug 03, 2020 1:45 pm
So I should wait until it's all completed and disassemble the finished game's code? I took a look at the pages. This looks really hard.
  View user's profile Send private message Visit poster's website
  • Joined: 01 Feb 2014
  • Posts: 536
Reply with quote
Post Posted: Mon Aug 03, 2020 2:40 pm
Could you explain in more detail what you are trying to do?

Do you want to create actual Game Genie codes for others to use with your finished game? Then use the method described in KingMike's link.

Or do you want to make testing easier for yourself while you're still developing the game? Then you don't need a Game Genie at all. Just set your starting lives to $FF (255) or whatever, compile and test that version. Before compiling the final release version then set the number back to the desired default value.
  View user's profile Send private message
  • Joined: 08 Sep 2018
  • Posts: 236
Reply with quote
Post Posted: Mon Aug 03, 2020 4:21 pm
Kagesan wrote
Could you explain in more detail what you are trying to do?

Do you want to create actual Game Genie codes for others to use with your finished game? Then use the method described in KingMike's link.

Or do you want to make testing easier for yourself while you're still developing the game? Then you don't need a Game Genie at all. Just set your starting lives to $FF (255) or whatever, compile and test that version. Before compiling the final release version then set the number back to the desired default value.


For testing purposes, I think even further depending on the compiler and editor they can do debug directives that can be excluded on release builds. As long as things are not totally memory location dependent (else they should be using .org for that anyways) then they should be able to work in debug functions and features that can be left out of a release build.

If they really want game genie codes for it just for fun then thats something that probably needs to be figured out after project completion.
  View user's profile Send private message
  • Joined: 06 Sep 2015
  • Posts: 240
  • Location: United States
Reply with quote
Post Posted: Mon Aug 03, 2020 4:55 pm
Kagesan wrote

Just set your starting lives to $FF (255) or whatever, compile and test that version. Before compiling the final release version then set the number back to the desired default value.

I guess I could do this. Hadn't really thought to do that.

I'll wait until the project is completed to find out how to make an infinite Game Genie code for it. What type of disassembler would I need? Right now I'm using Context to compile the game.
  View user's profile Send private message Visit poster's website
  • Joined: 22 Sep 2019
  • Posts: 83
Reply with quote
Post Posted: Mon Aug 03, 2020 6:33 pm
Gamegearguy wrote
Right now I'm using Context to compile the game.


I mean, you're not. Context is a text editor. You're using something else to compile the game.

Either way, you really shouldn't be looking to disassemble something that you've built yourself. You can use a lst file or whatever your assembler/compiler outputs to figure out what your Game Genie code needs to change.

The easiest thing to do would be to add a flag in the ROM for each cheat, and then your Game Genie code just changes that flag. Use org directives to place the flags so that you know where they'll end up before you even build.
  View user's profile Send private message
Reply to topic



Back to the top of this page

Back to SMS Power!