Honda Navigation Hacking: Difference between revisions

m
→‎Use Backup DVD-R Image Hack: More details of the hack
m (→‎Reversing existing binaries: SH4 is under Renesas in v6.0 of IDA)
m (→‎Use Backup DVD-R Image Hack: More details of the hack)
Line 82: Line 82:
=== Use Backup DVD-R Image Hack ===
=== Use Backup DVD-R Image Hack ===


The navigation software checks for a "stamped" DVD disc to try and prevent piracy.  Unfortunately it also prevents you from making a legitimate backup of your DVD.  This sucks and for the the price of a replacement DVD I didn't want to take the chance of damaging my DVD while working on this project so I modified the firmware to allow burned DVDs to be used.  I'm not going to release the exact details here but I will talk about how the check works.
The navigation software checks for a "stamped" DVD disc to try and prevent piracy.  Unfortunately it also prevents you from making a legitimate backup of your DVD.  This sucks and for the the price of a replacement DVD I didn't want to take the chance of damaging my DVD while working on this project so I modified the firmware to allow burned DVDs to be used.  I'm really glad I did because during the hot summer we had here my DVD got warped and stopped working after being in the parking lot all day.  This would have sucked but luckily it was a DVD-R and not my original.


The software checks the DVD media info.  If you have linux you can play with dvd+rw-mediainfo which can dump the raw DVD info.  The software checks the [http://en.wikipedia.org/wiki/Book_type| BookType], Layers and [http://www.dvdburning.biz/terms/opposite-track-path-otp.htm OTP].  It uses this info to determine if the DVD is stamped (from the factory) or a burnable disk.
The software checks the DVD media info.  If you have linux you can play with dvd+rw-mediainfo which can dump the raw DVD info.  The software checks the [http://en.wikipedia.org/wiki/Book_type| BookType], Layers and [http://www.dvdburning.biz/terms/opposite-track-path-otp.htm OTP].  It uses this info to determine if the DVD is stamped (from the factory) or a burnable disk.
These checks happen in the CDiscPhysicalInfo::IsDiscDVD_R() method of HMIManager.dll.  You can see the checks and where it branches here.  Replace the branching with NOPs (0900) and the checks will fall down to the successful message.  The strings you see in the binary are for the debugging output.  This is normally not visible on the console but really handy that it's still in the binary files ;D


== Software ==
== Software ==
388

edits