Patching GDI images

Discussion in 'Sega Dreamcast Development and Research' started by wombat, Jul 9, 2015.

  1. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    What do you need by the console output of selfboot.bat ? Do you want the selfboot.nrg ?
     
  2. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    Oh I see, the log how can I copy the text when I press any bouton it's closed like the writting text at the end...
     
  3. -=FamilyGuy=-

    -=FamilyGuy=- Site Supporter 2049

    Joined:
    Mar 3, 2007
    Messages:
    3,032
    Likes Received:
    891
    Try running it from a console and outputting the text in a file like this: "selfboot.bat >> log.txt"
    I don't use windows often anymore so I'm not sure exactly.
     
  4. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    It's ok :

    FG's SB DATA Pack! - SELFBOOT v1.4 - All-32bit edition

    This .bat Will create a 45000LBA data/data
    backup from extracted files with no need
    to apply LBA hacks to the bins. However
    some non-LBA based copy protection might need
    to be cracked in order for the backup to works.
    GO to the DCRipping Database for a list of
    copy protections.
    http://www.bucanero.com.ar/dreamcast/ripdb/?

    Put around 65 megs in the data1 folder and
    ALL the files in the data folder Duplicated
    files will be burnt only once.

    You can add a 0.0 dummy file in data to accelarate
    loadings, it won't apear in the filesystem.

    The ip.bin must be in the root folder.

    FamilyGuy 2008 - 2012

    Press any key to start ...

    Running IP.BINHACK on the ip.bin ...


    *** IP.BINHACK!v3 ***

    This program will hack an
    IP.BIN to a 45000 LBA and
    won't modify the BOOT.BIN

    If LBA.BIN is detected it
    will hack the BOOT.BIN in
    CDDA mode to the LBA stated
    in LBA.BIN

    If WINCEOS is detected it
    will hack the BOOT.BIN in
    WINCEOS mode.

    The BOOT.BIN specified in
    the IP.BIN must be in the
    data folder. The hacked
    file will be named IP.HAK

    To use with any type of backups
    WIDELY based on ECHELON's binhack


    Checking files ...

    Binhacking ...

    Hacking 1ST_READ.BIN in DATA/DATA mode!

    DONE !

    IP.HAK created !

    Building 1st session ...

    Total translation table size: 0
    Total rockridge attributes bytes: 0
    Total directory bytes: 68
    Path table size(bytes): 10
    174 extents written (0 MB)



    *********************************
    **********ISO FILLER*************
    *********************************



    VERSION 0.1
    Written for FamilyGuy by IberDC Dev Team ( Indiket & Neoblast )

    The program will let you choose an image file to open.
    It will fill until it is 69 120 000 bytes

    Insert ISO image namefile ( example : image.iso )


    Please Wait...


    Done!


    Building 2de session ...

    NO Rock Ridge present
    Disabling Rock Ridge / XA / AA
    Warning: Neither Rock Ridge (-R) nor TRANS.TBL (-T)
    name translations were found on previous session.
    ISO (8.3) file names have been used instead.
    9.58% done, estimate finish Wed Sep 21 17:27:03 2016
    10.54% done, estimate finish Wed Sep 21 17:27:03 2016
    11.50% done, estimate finish Wed Sep 21 17:27:03 2016
    12.46% done, estimate finish Wed Sep 21 17:27:03 2016
    13.42% done, estimate finish Wed Sep 21 17:27:03 2016
    14.37% done, estimate finish Wed Sep 21 17:27:03 2016
    15.33% done, estimate finish Wed Sep 21 17:27:03 2016
    16.29% done, estimate finish Wed Sep 21 17:27:03 2016
    17.25% done, estimate finish Wed Sep 21 17:27:03 2016
    18.21% done, estimate finish Wed Sep 21 17:27:03 2016
    19.16% done, estimate finish Wed Sep 21 17:27:03 2016
    20.12% done, estimate finish Wed Sep 21 17:27:03 2016
    21.08% done, estimate finish Wed Sep 21 17:27:07 2016
    22.04% done, estimate finish Wed Sep 21 17:27:07 2016
    23.00% done, estimate finish Wed Sep 21 17:27:07 2016
    23.95% done, estimate finish Wed Sep 21 17:27:07 2016
    24.91% done, estimate finish Wed Sep 21 17:27:07 2016
    25.87% done, estimate finish Wed Sep 21 17:27:06 2016
    26.83% done, estimate finish Wed Sep 21 17:27:06 2016
    27.79% done, estimate finish Wed Sep 21 17:27:06 2016
    28.75% done, estimate finish Wed Sep 21 17:27:06 2016
    29.70% done, estimate finish Wed Sep 21 17:27:06 2016
    30.66% done, estimate finish Wed Sep 21 17:27:06 2016
    31.62% done, estimate finish Wed Sep 21 17:27:06 2016
    32.58% done, estimate finish Wed Sep 21 17:27:06 2016
    33.53% done, estimate finish Wed Sep 21 17:27:05 2016
    34.49% done, estimate finish Wed Sep 21 17:27:05 2016
    35.45% done, estimate finish Wed Sep 21 17:27:05 2016
    36.41% done, estimate finish Wed Sep 21 17:27:05 2016
    37.37% done, estimate finish Wed Sep 21 17:27:05 2016
    38.32% done, estimate finish Wed Sep 21 17:27:05 2016
    39.28% done, estimate finish Wed Sep 21 17:27:05 2016
    40.24% done, estimate finish Wed Sep 21 17:27:05 2016
    41.20% done, estimate finish Wed Sep 21 17:27:05 2016
    42.16% done, estimate finish Wed Sep 21 17:27:05 2016
    43.12% done, estimate finish Wed Sep 21 17:27:05 2016
    44.07% done, estimate finish Wed Sep 21 17:27:05 2016
    45.03% done, estimate finish Wed Sep 21 17:27:05 2016
    45.99% done, estimate finish Wed Sep 21 17:27:05 2016
    46.95% done, estimate finish Wed Sep 21 17:27:05 2016
    47.91% done, estimate finish Wed Sep 21 17:27:05 2016
    48.86% done, estimate finish Wed Sep 21 17:27:05 2016
    49.82% done, estimate finish Wed Sep 21 17:27:05 2016
    50.78% done, estimate finish Wed Sep 21 17:27:04 2016
    51.74% done, estimate finish Wed Sep 21 17:27:04 2016
    52.70% done, estimate finish Wed Sep 21 17:27:04 2016
    53.65% done, estimate finish Wed Sep 21 17:27:04 2016
    54.61% done, estimate finish Wed Sep 21 17:27:04 2016
    55.57% done, estimate finish Wed Sep 21 17:27:04 2016
    56.53% done, estimate finish Wed Sep 21 17:27:04 2016
    57.49% done, estimate finish Wed Sep 21 17:27:04 2016
    58.45% done, estimate finish Wed Sep 21 17:27:04 2016
    59.41% done, estimate finish Wed Sep 21 17:27:04 2016
    60.36% done, estimate finish Wed Sep 21 17:27:04 2016
    61.32% done, estimate finish Wed Sep 21 17:27:04 2016
    62.28% done, estimate finish Wed Sep 21 17:27:04 2016
    63.24% done, estimate finish Wed Sep 21 17:27:04 2016
    64.20% done, estimate finish Wed Sep 21 17:27:04 2016
    65.15% done, estimate finish Wed Sep 21 17:27:04 2016
    66.11% done, estimate finish Wed Sep 21 17:27:04 2016
    67.07% done, estimate finish Wed Sep 21 17:27:04 2016
    68.03% done, estimate finish Wed Sep 21 17:27:04 2016
    68.99% done, estimate finish Wed Sep 21 17:27:04 2016
    69.94% done, estimate finish Wed Sep 21 17:27:04 2016
    70.90% done, estimate finish Wed Sep 21 17:27:04 2016
    71.86% done, estimate finish Wed Sep 21 17:27:04 2016
    72.82% done, estimate finish Wed Sep 21 17:27:04 2016
    73.78% done, estimate finish Wed Sep 21 17:27:04 2016
    74.74% done, estimate finish Wed Sep 21 17:27:04 2016
    75.69% done, estimate finish Wed Sep 21 17:27:04 2016
    76.65% done, estimate finish Wed Sep 21 17:27:04 2016
    77.61% done, estimate finish Wed Sep 21 17:27:04 2016
    78.57% done, estimate finish Wed Sep 21 17:27:04 2016
    79.52% done, estimate finish Wed Sep 21 17:27:04 2016
    80.48% done, estimate finish Wed Sep 21 17:27:04 2016
    81.44% done, estimate finish Wed Sep 21 17:27:04 2016
    82.40% done, estimate finish Wed Sep 21 17:27:04 2016
    83.36% done, estimate finish Wed Sep 21 17:27:04 2016
    84.32% done, estimate finish Wed Sep 21 17:27:04 2016
    85.27% done, estimate finish Wed Sep 21 17:27:04 2016
    86.23% done, estimate finish Wed Sep 21 17:27:04 2016
    87.19% done, estimate finish Wed Sep 21 17:27:04 2016
    88.15% done, estimate finish Wed Sep 21 17:27:04 2016
    89.10% done, estimate finish Wed Sep 21 17:27:04 2016
    90.06% done, estimate finish Wed Sep 21 17:27:04 2016
    91.02% done, estimate finish Wed Sep 21 17:27:04 2016
    91.98% done, estimate finish Wed Sep 21 17:27:05 2016
    92.94% done, estimate finish Wed Sep 21 17:27:05 2016
    93.90% done, estimate finish Wed Sep 21 17:27:05 2016
    94.85% done, estimate finish Wed Sep 21 17:27:05 2016
    95.81% done, estimate finish Wed Sep 21 17:27:05 2016
    96.77% done, estimate finish Wed Sep 21 17:27:05 2016
    97.73% done, estimate finish Wed Sep 21 17:27:05 2016
    98.69% done, estimate finish Wed Sep 21 17:27:05 2016
    99.65% done, estimate finish Wed Sep 21 17:27:05 2016
    Total translation table size: 0
    Total rockridge attributes bytes: 0
    Total directory bytes: 185624
    Path table size(bytes): 232
    521858 extents written (1019 MB)


    Done!


    Merging the isos ...

    leadin
    data1.iso
    data2.iso
    nrgheader
    1 fichier(s) copié(s).
    Hacking the nrgheader ...

    *********************************
    **********NRGHEADER*************
    *********************************



    VERSION 0.1
    Written for FamilyGuy by Indiket

    The program will open a file in the program's folder.
    It writes the adress of the beginning of the nrgheader file (starting with CUEX)
    at the place where it's written HERE (the adress being in hex 4 bytes long).

    Insert ISO image namefile ( example : data-data.nrg )


    Please Wait...
    Opening file...
    Checking if it's CUEX (43 55 45 58): 43 55 45 58
    Address of the first CUEX (filled with 0): 0x3e593000
    Value to change: 3e 59 30 0
    Time to replace HERE with the address of CUEX
    Done!
    Cleaning Files ...

    DONE !

    The backup is now done! Run it in NullDC (using DEAMON tools)
    or burn it to a disc to test it out! If it doesn't work,
    go to the Dreamcast Ripping DataBase to find if your
    game as a non-lba based copy protection.

    Thanks to Xzyx987X for the nrgheader technique,
    ECHELON for the BINHACK program, M$ for bat files,
    Neoblast and Indiket for the Fill.exe program
    and Indiket for the NRGHEADER program !

    FamilyGuy 2008

    Press any KEY to quit ...
     
  5. -=FamilyGuy=-

    -=FamilyGuy=- Site Supporter 2049

    Joined:
    Mar 3, 2007
    Messages:
    3,032
    Likes Received:
    891
    That looks very normal. Maybe just try to use an older version of daemon tools, maybe they dropped support for such old nrg format. I use a daemon tools lite 4.30.4.0027 in a XP vm and it works well.

    Bonne chance!

    PS:

    You shoul put a quote environment around the console text, to make it less clunky in the thread.
     
  6. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    Thanks for your help again. I'll try with this version of daemon tool.
    I don't see what do you mean in your last sentence
    If you or someone else have time to have a look here my selfboot.nrg with 1st_read.bin ppf patch and orginal patch like give japanese cake and the ip.bin modified by the great megavolt's tool :
    http://frd.li/e12b52db2917679f8e4aa180a9cb4140
    here the .cdi ppf patched with cdi4dc :
    http://frd.li/e1f1dce924069abd2b0351d72cac9d73
    and finally the .cdi file with patch "original" :
    http://frd.li/e1f1dce924069abd2b0351d72cac9d73

    Now I try to build some .gdi maybe it will work like this, after all, the patch is for gdi's file.
    I will try my best ;-)
     
  7. -=FamilyGuy=-

    -=FamilyGuy=- Site Supporter 2049

    Joined:
    Mar 3, 2007
    Messages:
    3,032
    Likes Received:
    891
    I meant to put the text in a quote environment, like
    You don't need to change the flags in the IP. BIN if you use binhack32 BTW, it does it for you.
     
    fafadou likes this.
  8. Rocky5

    Rocky5 Site Supporter 2015

    Joined:
    Jan 17, 2014
    Messages:
    524
    Likes Received:
    95
    When I patched the CDI images, I extracted the image so I had all the files I then replaced the 1st_read.bin with the scrambled version included in the download, hex edited the extracted ip.bin (added the 1) then used bootmake to build a new CDI using the ip.bin that was extracted, burned it and that it.

    I done it when he first released the patches, I also patched the GDI version for my UGC.
     
    fafadou likes this.
  9. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    Ah ok family guy I do like
    Thanks for your proceeding, I did the same as you I think. I used GDI2DATA for exctracting the files. Do you use another one ?
    But normally we must have the same files... I do like you said again maybe I have forgot something, now I know the 1st_read.bin patch is ok.
     
  10. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    I tried to patch recv and it works at the first time.
    I think my files are not patchable...
    I have a last favor, could send me or put in firedrop (for a short time) your soa patch version please ?
     
  11. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
  12. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    Of course I have found my way when the complete patch version is available ^^
     
  13. AlligatorTaffy

    AlligatorTaffy Member

    Joined:
    Aug 3, 2016
    Messages:
    5
    Likes Received:
    0
    I know this is a tad off topic, but I have been poking and prodding around in my gdi dump of PSOv2 and I have been trying to see which locations to apply the PSO-Patcher-v2 patches to force the image to connect to Sylverant and avoid the Hunter License check. I have looked around in the source for the strings to hex edit in so I can just hex the new values in before rebuilding the gdi. Any suggestions or is there any one out there that have done this already? Using boot and swap discs with GDEmu, in general, is a pain.
     
  14. S4pph4rad

    S4pph4rad Site Supporter 2015

    Joined:
    Nov 28, 2014
    Messages:
    140
    Likes Received:
    114
    The patches are located in patches.h of the source code. But they are memory addresses, not locations on the disc. Some of the addresses could be referencing locations in 1ST_READ.BIN, but I don't think any of them are because most of the PSOv2 addresses in patches.h are in the 0x8C32xxxx range, but 1ST_READ.BIN is typically loaded at 0x8c010000 in most games. Unless PSO loads it's 1ST_READ somewhere different from normal DC games, those patches probably require a patcher that can modify memory.

    Such a patcher doesn't exist yet, because if it did people would be using it to pre-patch games with widescreen.
     
  15. -=FamilyGuy=-

    -=FamilyGuy=- Site Supporter 2049

    Joined:
    Mar 3, 2007
    Messages:
    3,032
    Likes Received:
    891
    The 1st_read.bin can be a few MBs though, so this address could be in it.

    IIRC, the binaries are encrypted/obfuscated so you can't plainly see the server address, but the version that was made for dc-talk is in clear text. That might not help you to make a patched gdi, but it might be a good source of info for someone trying to reverse engineer the binaries to do so.
     
  16. citrus3000psi

    citrus3000psi Housekeeping, you want towel?

    Joined:
    Nov 8, 2013
    Messages:
    1,051
    Likes Received:
    418

    Do you still have this tool? I'm looking to add some RGB patches in
     
  17. -=FamilyGuy=-

    -=FamilyGuy=- Site Supporter 2049

    Joined:
    Mar 3, 2007
    Messages:
    3,032
    Likes Received:
    891
    It's called RebuildGDI and can be found there: http://sheep.host22.com/

    PS: I'm working on a similar feature for gditools, that won't extract the data though. But now you gave me the idea to allow patching the 1st_read.bin on the fly, as long as its size doesn't change!
     
    Last edited: Dec 7, 2016
    citrus3000psi likes this.
  18. Rocky5

    Rocky5 Site Supporter 2015

    Joined:
    Jan 17, 2014
    Messages:
    524
    Likes Received:
    95
    I fixed the link, I moved to my google drive a while ago and forgot to update the link :$
     
  19. Shenmue_Trilogy

    Shenmue_Trilogy Rapidly Rising Member

    Joined:
    Oct 29, 2015
    Messages:
    98
    Likes Received:
    40
    Need some help. I would like to patch gdi images with the widescreen codes and play it with GDEMU. So my question is how do you I know from the posted widescreen codes here which hex value should I change and which hex value should I use?

    For example:

    MSR Widescreen
    02106B5C - 3F99999A
    021111F4 – 3F900000
     
  20. fafadou

    fafadou Gutsy Member

    Joined:
    Aug 3, 2016
    Messages:
    473
    Likes Received:
    185
    I am not sure but I found a tool who can change your ip.bin without use hexedit and you can change the widescreen inside.
    I find it and I'll give you. I hope it can help you.

    Megavolt 85 in page 2 on this topic
    Maybe it can help you
     
    Last edited: Dec 10, 2016
sonicdude10
Draft saved Draft deleted
Insert every image as a...
  1.  0%

Share This Page