Announcement

Collapse
No announcement yet.

Need help with GBA codetypes

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Need help with GBA codetypes

    I've looked at some codes in the db but can't figure out the ROM patching technique.

    The ROM address is 0x35A4

    I can't figure out what codetype will patch 0000 to ROM address 0x35A4.
    Can someone please explain to me how they work? DS codes are easy compared to this.
    Last edited by 47iscool; 04-07-2014, 11:50:34 PM.

  • #2
    its should be like this for rom address

    cb codetype
    880035A4 0000

    ar3 codetype
    018035A4 00000000
    Last edited by lee4; 04-08-2014, 01:12:34 AM.
    lee4 Does Not Accept Codes Requests !
    When lee4 asks a question it does not mean lee4 will look at your game
    *How to create and use SegaCD codes >click here<*
    >)

    Comment


    • #3
      Originally posted by lee4 View Post
      its should be like this for rom address

      cb codetype
      880035A4 0000

      ar3 codetype
      018035A4 00000000
      Not working with VBA. I know this is the correct address because I patched the ROM with 0000 and it worked.

      The game is Corvette and the code disables the countdown timer. I even entered the code as a CB code too, maybe VBA is problematic with these codetypes?
      Last edited by 47iscool; 04-08-2014, 08:53:10 AM.

      Comment


      • #4
        Use AR Crypt with code type z0C. If the address is 0x080035A4 and you're writing 0x0000 to it, you should get:

        Code:
        A329B888 3CBFBB1F
        A05A144C 078B0074
        VBA will take this as a Code Breaker code:
        Code:
        880035A4 0000
        Edit: I just ran the game just to follow along.
        Code:
        080035A4 8510    strh r0,[r2,#0x28]
        You're replacing this store with 0x0000 (lsl r0,r0,#0x0). If you were going for a NOP, in Thumb, 0x46C0 is the value. I think you're used to seeing 0x0000 as the value for it since that's how it is in MIPS.
        I only bother with things that interest me.

        Comment


        • #5
          Originally posted by Demonic722 View Post
          Use AR Crypt with code type z0C. If the address is 0x080035A4 and you're writing 0x0000 to it, you should get:

          Code:
          A329B888 3CBFBB1F
          A05A144C 078B0074
          VBA will take this as a Code Breaker code:
          Code:
          880035A4 0000
          The first one works, thanks! I don't understand what you mean by z0C though, what does it mean? BTW
          "880035A4 0000" doesn't work as a CB code, at least not in VBA.

          GBA codetypes are more confusing than anything I've ever seen.
          Last edited by 47iscool; 04-08-2014, 10:35:56 AM.

          Comment


          • #6
            Open AR Crypt or visit the Enhacklopedia.

            I only bother with things that interest me.

            Comment


            • #7
              Copied and pasted into a text file for further reference. Thanks D722. About the NOP value, I thought it was 0x00000000 because if I'm not mistaken that's the same NOP value the DS uses is it not? I thought the DS and GBA had similar CPU's. Thanks for the info.

              Comment


              • #8
                The DS and GBA can both perform ARM (32-bit opcodes) and Thumb (16-bit opcodes) instructions. The value for NOP in ARM is 0xE1A00000; Thumb is 0x46C0. 0x00000000 in ARM, if I'm not mistaken, is the value for the instruction andeq r0,r0,r0. Which debugger are you using by the way?
                I only bother with things that interest me.

                Comment


                • #9
                  Originally posted by Demonic722 View Post
                  The DS and GBA can both perform ARM (32-bit opcodes) and Thumb (16-bit opcodes) instructions. The value for NOP in ARM is 0xE1A00000; Thumb is 0x46C0. 0x00000000 in ARM, if I'm not mistaken, is the value for the instruction andeq r0,r0,r0. Which debugger are you using by the way?
                  Uh, well I guess you could say Cheat Engine. I searched the value of the timer and the ESI address from the writes is 0x03000148, which I searched for the timer on VBA and it gave me the exact same address. The EDI it gave me was 0x000035A8 which is 4 addresses ahead of 0x35A4. It's more simple than I thought it would be, I could never get the hang of using the no$GBA debugger.

                  Like so:

                  Address of timer in CE's list: 0x02391F10
                  ESI address in CE's "find what writes to this address": 0x03000148> Which the actual address in the GBA RAM
                  EDI address in CE's "find what writes to this address": 0x000035A8>ASM that causes the write.
                  Click image for larger version

Name:	CV.png
Views:	1
Size:	94.0 KB
ID:	162548
                  Last edited by 47iscool; 04-08-2014, 12:06:46 PM. Reason: spelling

                  Comment


                  • #10
                    Ah, alright. I thought you were using MESS because I was going to recommend NO$GBA as an alternative since it displays the values of the instructions in the debugger.
                    I only bother with things that interest me.

                    Comment


                    • #11
                      Originally posted by Demonic722 View Post
                      Ah, alright. I thought you were using MESS because I was going to recommend NO$GBA as an alternative since it displays the values of the instructions in the debugger.
                      Well I would say that it (CE+VBA) is faster when you need to find what's writing what where.
                      Last edited by 47iscool; 04-08-2014, 01:00:56 PM.

                      Comment


                      • #12
                        Another question, what is the NOP value for the original GameBoy Mono? Is it "EA" like the NES?

                        Comment


                        • #13
                          Game Boy Mono? The Game Boy/Color? I know that it uses z80 and I think the value for it is 0x00.
                          I only bother with things that interest me.

                          Comment


                          • #14
                            Originally posted by Demonic722 View Post
                            Game Boy Mono? The Game Boy/Color? I know that it uses z80 and I think the value for it is 0x00.
                            Thanks

                            I've heard the term mono thrown around for the original GameBoy, so that's what I've called for a while.

                            Comment


                            • #15
                              can someone convert these codes to codebreaker format?

                              I tried both online and offline converter, they would not convert properly,
                              please help.

                              Street Fighter Alpha 3 - GBA | AR3

                              Easier Super Combos[See Notes]
                              4699B64C D258B4C7
                              AD86124F 2823D8DA

                              Easier Raging Demon[See Notes]
                              4699B64C D258B4C7
                              AD86124F 2823D8DA
                              731A5435 479DECE8
                              924AC84E 6409D6B3

                              source:
                              http://gamehacking.org/vb/threads/44...0360#post70360
                              lee4 Does Not Accept Codes Requests !
                              When lee4 asks a question it does not mean lee4 will look at your game
                              *How to create and use SegaCD codes >click here<*
                              >)

                              Comment

                              Working...
                              X