Announcement

Collapse
No announcement yet.

How to patch PS1 ISO's with ASM codes?

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Thanks for the explanation and links Pyriel. If I ever get motivated enough, I'm going to see what I can do. The reason I want to patch games is that I'm using a PS2 with the POPStarter PS1 emulator and I would like to have my games patched with codes. I have used some old trainers from back in the day from Paradox and others on some games too.

    Comment


    • #17
      Originally posted by orcanaoftime View Post
      I have used some old trainers from back in the day from Paradox and others on some games too.
      Here is 100 patches for USA games, all in one file.
      Back when the release groups made those, they were for BIN CUE releases.

      If you have IMG CCD SUB disc images and the patches do not work, the disc images are easy to convert.
      Just mount the disc image with Daemon Tools, and use ImgBurn to made a BIN version.
      http://OldGameHacking.com/
      http://www.youtube.com/user/DreamcastVideos

      Comment


      • #18
        Originally posted by Mezmorize View Post
        Here is 100 patches for USA games, all in one file.
        Back when the release groups made those, they were for BIN CUE releases.

        If you have IMG CCD SUB disc images and the patches do not work, the disc images are easy to convert.
        Just mount the disc image with Daemon Tools, and use ImgBurn to made a BIN version.
        Thanks for the link Mezmorize, I do have all of those trainers saved from back in the day . When I came across IMG, CCD, SUB type files, I used CDmage to convert to BIN+CUE which worked really well even for files that have more than one .BIN file.

        Comment


        • #19
          Does anyone have a method to search where the values in the SLUS etc are stored, using Gameshark codes in no$psx?

          Comment


          • #20
            Your question doesn't make much sense. If you have GameShark codes, those contain the memory addresses for values to be overwritten. If you're looking to relate that to executable file, you can just load that in a disassembler and find the relevant address. The easiest way I've found to get the actual offset into the file is similar to what I mentioned earlier. Take a string of 16 bytes from the disassembler, load the EXE in a hex editor, and search.

            If you want to be more direct, the PSX EXE is a structured file with different segments described by headers. Find the file offset and load offset values for the executable segment in the headers, and then do the math (Code Address - Segment Load Offset + Segment File Offset = File Location). Sometimes disassemblers will cough up those values in a summary somewhere. I don't remember the exact structure offhand, but it's well-documented.

            Using an emulator anywhere in this wouldn't be very efficient. Unless NO$PSX outputs debug information in the console window or a log, or the game uses modules and it's easier to start your work with memory dumps than trying to search individual files for certain data.
            Last edited by Pyriel; 03-29-2014, 07:15:46 PM.

            Comment


            • #21
              OK, thanks for the answer.

              I guess I was thinking along the lines of something like Magic Engine codes for the Turbo Grafx-16, then using an emulator to find where the values are stored in the rom. I will try your method out.

              Comment


              • #22
                I wonder how add breakpoint on no$psx ?

                Thank you
                Let's be together !!

                Comment


                • #23
                  Originally posted by MasterGrand
                  I wonder how add breakpoint on no$psx ?
                  Click on "Debug" in the tool bar, then click on "Define Break/Condition," then when it asks you to type in your breakpoint, type it like this.

                  Examples:
                  [800970AA]! <-------- This is a "write" breakpoint.
                  [800970AA]? <-------- This is a "read" breakpoint.

                  The exclamation point represents a "write" break point and the question mark represents a "read" breakpoint.
                  You can go here for more info: http://problemkaputt.de/gbahlp.htm#breakpoints
                  As far as I know, setting up the breakpoints in No$psx is the same as setting them up in No$gba.
                  I'm retired from code hacking.
                  I do not take requests!

                  Comment


                  • #24
                    Originally posted by Dybbles View Post
                    Click on "Debug" in the tool bar, then click on "Define Break/Condition," then when it asks you to type in your breakpoint, type it like this.

                    Examples:
                    [800970AA]! <-------- This is a "write" breakpoint.
                    [800970AA]? <-------- This is a "read" breakpoint.

                    The exclamation point represents a "write" break point and the question mark represents a "read" breakpoint.
                    You can go here for more info: http://problemkaputt.de/gbahlp.htm#breakpoints
                    As far as I know, setting up the breakpoints in No$psx is the same as setting them up in No$gba.
                    Thanks dude

                    But what add here ?

                    Let's be together !!

                    Comment


                    • #25
                      That is the space where you can write and change the selected opcode at selected address
                      Learning how to hack real life

                      Comment


                      • #26
                        Originally posted by luc-ita View Post
                        That is the space where you can write and change the selected opcode at selected address
                        Please can you put example to be more clear.

                        Thank you advance
                        Let's be together !!

                        Comment


                        • #27
                          Yeah sorry.

                          Example:
                          In your image I see the address -> 80072AD4
                          Opcode: add r3, r4

                          And you want to change it from add to sub, or something else:
                          right click on that address, click on "Change instruction", write the code "sub r3, r4", then click OK.

                          This is just an example.
                          anyway what game are you hacking? just for curiosity
                          Last edited by luc-ita; 04-26-2016, 12:47:44 PM.
                          Learning how to hack real life

                          Comment


                          • #28
                            Originally posted by luc-ita View Post
                            Yeah sorry.

                            Example:
                            In your image I see the address -> 80072AD4
                            Opcode: add r3, r4

                            And you want to change it from add to sub, or something else:
                            right click on that address, click on "Change instruction", write the code "sub r3, r4", then click OK.

                            This is just an example.
                            anyway what game are you hacking? just for curiosity
                            Hi dude, I like Suikoden 2
                            Let's be together !!

                            Comment


                            • #29
                              How to patch PS1 ISO's with ASM codes small instruction...

                              Comment


                              • #30
                                Originally posted by denben0487 View Post
                                Could you please give some english instructions. Thanks!

                                Comment

                                Working...
                                X