Speedhacking Tool for DVD Writers

vbimport

#1

<HR>

Thread closed

This tool is obsolete and no longer available. Please use the new [thread=97590]OmniPatcher[/thread].<HR>

Speedhacking Tool Pack for LiteOn DVD Writers

What is speedhacking?
DVD writers keep track of various DVD media codes and what speeds media with certain media codes are certified for. The speeds the media is certified for is what the DVD writer will allow you to write the media at. Speedhacking is the process of changing this list of media codes stored in the DVD writer so that it will think that a disc that is certified for a particular speed is actually certified for another speed.

What can I do with speedhacking?
The most popular and common use of speedhacking is making the burner think that your 4x-rated media is actually certified for 8x. This would allow you to burn 4x media at 8x speeds (4x@8x). There are other uses for speedhacking, such as enabling 4x burning for 2x media (2x@4x), or enabling 1x burning for media where 1x burning is turned off (this may interest some people, as LiteOn disabled 1x burning for 1x-certified Princo discs; speedhacking can re-enable 1x burning for these discs).

How is speedhacking different from overclocking?
Overclocking a drive, such as converting the LDW-451S to a LDW-451S@851S, allows the burner to burn at 8x on media that supports 8x burning. Speedhacking deals with the “on media that supports 8x burning” part by making the burner think that certain 4x media supports 8x burning. If your burner doesn’t support 8x burning, telling the burner that your 4x media supports 8x won’t do anything, as the burner will still burn at a max of 4x. You’ll have to overclock your burner first to support 8x burning before a 4x@8x speedhack will do you any good. In short, these are two different, but somewhat related topics. Speedhacking, when used for enabling 4x@8x for certain media, can be seen as a supplement to overclocking.

How can these tools help me?
Without these tools, speedhacking would entail manually editing the drive’s firmware, changing the values of a few bytes here and there. It’s not a particularly difficult process, but not everyone is comfortable manually editing their firmware, not everyone has a hex editor to do the editing with, not everyone knows how to use a hex editor, and because the locations of the bytes that need to be changed varies between firmware versions, not everyone is comfortable searching out the location of the media code tables and figuring out which byte is the right byte to change. Finally, for people who are comfortable doing manual hacks, it is a somewhat tedious and annoying process, especially when dealing with the -R media table where it’s necessary to count bytes to make sure that you’re at the right position. These tools automate the speedhacking process and make it a much easier and less intimidating process.

How safe is speedhacking? Are there any undesirable side effects?
When done correctly, speedhacking should be a perfectly safe process with no side effects (such as changes in write-quality). For each media code that gets speedhacked, only one byte is flipped in the firmware. Speedhacking does NOT affect the EEPROM in any way! However, keep in mind that not all media can be burned very well at overspeed. Only certain good media have been known to burn well at overspeed. Thus, do not be surprised if an overspeed burn turns out poorly, as the media was never designed for overspeeding.

What drives can I use this with?
These tools can only be used on firmwares for LiteOn DVD writers. These tools have been tested successfully on various firmware versions, both old and new, for the 401S, 411S, 451S, 811S, 851S, and 812S. With the exception of old versions of the 401S firmware, these tools should work on any firmware version for any LiteOn DVD writer, including OEM-rebadged LiteOn drives. Additionally, these tools work on both .BIN and .EXE firmwares.

<HR>Latest version is 3.1.1 (27 May 2004)
Download from: http://codeguys.rpc1.org/patchers.html<HR>

F.A.Q.
Q: What about faster reading speeds?
A: The speedhacking tool is for patching burning speeds. Use Readhacker to patch reading speeds.

Q: What media can burn well at overspeed?
A: Check my list at the bottom for media that members of this forum have confirmed to work well at overspeed. If you’re not sure, you could always test it and find out. Just be sure to report back with your results so that people can benefit. :slight_smile: Also, it’s still recommended that you try things out because both burners and media do vary, and just because someone had good results won’t mean that you will, and just because someone had bad results won’t mean that you will.

Q: How do I use this tool? How do I patch my firmware? How do I…?
A: Please read the documentation first. If you still have questions, feel free to post them in this thread, and I’ll try to get them answered.

Q: What about other drives? And tweaking write strategy tables? And why don’t you have to edit the write strategies to get speedhacking to work?
A: I don’t know much about NEC/Pioneer drives. As I gather from reading posts about NEC and Pioneer hacking, it seems that the process on those drives is more involved. In regards to write strategies, the speed is specified independently of the write strategy, which is why speedhacking works without having to mess with the strat tables. Whether or not messing around with the strat tables would make speedhacking work better is unknown (probably yes, but I haven’t played around with it enough to say much). One thing is for sure, though: LiteOn strat tables are convoluted and somewhat difficult to parse (multiple tables scattered all over the place). The formatting and placement of the tables also seem to vary a lot between firmware versions, which has so far discouraged me from doing much with the strat tables (I did try once, and got slightly improved results, but it really wasn’t worth the effort needed). In any case, as speedhacking seems to work fine right now without any tweaking of the write strategies, I’m content leaving things as it is.

Confirmed reports of media codes that work well when speedhacked.
*) CMC MAG/F01/00, 4x +R media, burned at 8x
*) CMC MAG/R01/00, 2.4x +R media, burned at 4x
*) MCC/002/00, 4x +R media, burned at 8x
*) RICOHJPN/R00/01, 2.4x +R media, burned at 8x
*) RICOHJPN/R01/02, 4x +R media, burned at 8x
*) RITEK/R01/01, 2.4x +R media, burned at 6x
*) YUDEN000/T01/00, 4x +R media, burned at 8x
*) BeAll G4001, 4x -R media, burned at 8x
*) MCC 00RG200, 1x/2x -R media, burned at 4x
*) RITEKG03, 1x/2x -R media, burned at 4x
*) RITEKG04, 4x -R media, burned at 8x
*) TAIYOYUDEN, 1x/2x -R media, burned at 4x

Special thanks to… ala42 for posting the +R hacking instructions that I used to develop the +R/W patching process… ala42 again for helping me out when I was trying to figure out the format of the -R/W codes… pinto2 for writing the graphical guide for the commandline tool (which he discontinued after the GUI came out)… and everyone in the forum for your encouragement and support. :slight_smile:

Enjoy! :slight_smile:


#2

Wow. What a nice surprise. I’m sure there are many people that will benefit from this. :bigsmile:

I don’t use +R media yet so I can’t test it.

I’d be interested in anyone who uses it and has comments :smiley:

Once again, nice job!

Note: Burning at speeds higher than the media is rated may (or may not) produce a significant reduction in write quality. Test your media (with Kprobe) and compare burns at 4x to burns at 8x to determine for yourself if the results are acceptable.


#3

Ill try it out and post back results…

Thanks and good work Code!


#4

code65536, out of curiosity:
If someone wants to add a different media for 8x writing they could (or you could) just write a new .patch file and then add it to the config.pl file? If so how would you create a new .patch file?


#5

@code65536
Can you add RITEK G04 - R to the list of supported media or is there something special about +R media? I can burn G04s in the Pioneer A07/107, thanks to NIL 's hack, with no problem.


#6

Originally posted by Ssseth
code65536, out of curiosity:
If someone wants to add a different media for 8x writing they could (or you could) just write a new .patch file and then add it to the config.pl file? If so how would you create a new .patch file?

*Edit: This post was written for version 1. Much of it does not apply to the newer versions.

Yep, that’s exactly how it’s done. :slight_smile: My way of doing it is actually very simplistic.

~blah.a.patch contains the original string that the speedhacker should search for.
~blah.b.patch contains the modified string that should replace the string specified in blah.a.patch, assuming that it was found (if the string specified in .a.patch wasn’t found, either because the FW has already been modified or because the media code simply doesn’t exist, it’ll let you know)

The reason I did it like this was because having the program search for the code instead of remembering exactly where each code is located is what allows it to work for different drives, different firmware versions, and even for executables. But in order to search for the code, I had to tell the program what it was looking for. I had the option of either hard-coding this search info into the program (which means that any changes would involve editing the program) or storing that search info outside the program, hence the .patch files and config.pl.

So in order to support a new media code, all you have to do is to create a new .a.patch file containing the original media code data that it should search for. And create a .b.patch that specifies what you want that to be changed to. If you compare the .a.patch files and the .b.patch files, they differ by only 1 byte.

If you’re curious, feel free to take a look at the source code. I was too lazy to write this up in C/C++, so I did it in Perl (for those of you not familiar with it, it’s a popular Unix scripting language). The downside is that I have to bundle a Perl interpreter (only a few hundred KB when compressed). The upside is that it was much faster to code than anything for C/C++ and you also get to see and/or modify the the source code. :slight_smile:


#7

Just so people know this also works on the Sony DW-U18A :smiley:


#8

This is a great patch for all speed-hackers… :iagree:

Have tested this one and it works on all FW for 811S, 851S and 812.

:cool:

EDIT: I made a “grapfic GUIDE” on the fly, for users not common with Command Prompt.
Comments welcome. :wink:


#9

*Edit: This post was written for version 1. Much of it does not apply to the newer versions.

I would’ve added more 4x +R codes, but I didn’t know which to add, because I didn’t know which 4x +R discs have been known to burn okay at 8x; I didn’t want to add the code to enable 8x burning for something that is already having trouble burning at 4x. It seems that these 3 codes (MCC, RICOH, and RITEK) are the 3 most requested ones (TY makes good 4x media that burns at 8x, but I think the official FW already allows 8x on the TY 4x), so that’s why they were added. If people have suggestions for others, let me know. :slight_smile:

As for -R media codes, I didn’t add any patches for -R media because I wasn’t entirely sure of what I was doing; I’ve never hacked -R media codes before, and they are stored in a different format than the +R codes. I created a patch for Ritek G04 that I think would work, but I’m not sure if I changed the byte correctly and since I don’t have a 812S, I can’t verify that I changed the byte correctly… so bf6239 or anyone else who has a 812 firmware speedhacked for 8x -R, could you send me a copy of your firmware (along with what media codes you know have been tweaked) so that I could do some comparisons to make sure that I’m changing the right byte and to the right value?


#10

@code65536
I looked at the -R media codes and as you said they have a different format. It appears that the last byte is the speed code but i could be wrong. Most of the 4X media has X’54’ or “R” where as 1x media has a X"52" or “P”. I don’t know what the 8x code should be. Thanks for the tool


#11

Originally posted by bf6239
@code65536
I looked at the -R media codes and as you said they have a different format. It appears that the last byte is the speed code but i could be wrong. Most of the 4X media has X’54’ or “R” where as 1x media has a X"52" or “P”. I don’t know what the 8x code should be. Thanks for the tool

*Edit: This post was written for version 1. Much of it does not apply to the newer versions.

Oops! I misread your message and thought that you were saying that you had a speedhacked LiteOn firmware when you only had a speedhacked Pioneer firmware. :slight_smile: Sorry! (yea, you can disregard my PM, bf6239)

Yes, the 1x discs are 0x50 § and the 4x discs are 0x52 ®, so I’m guessing that the 8x are going to be 0x54 (T). But that’s only a guess. I have no idea if it’s right or not. Interestingly, the RITEKG05 code in the US0A firmware has code 0x52, which makes it a 4x media, not 8x… Unfortunately, I don’t have a 812S, so I can’t check to see if my guess about 0x54 is right or not. …and of the 49 -R media codes found in US0A, 48 of them had either 0x52 or 0x50, and one had an undefined 0x00 code, so it doesn’t look like there’s much to work with here in terms of -R hacking. :sad:


#12

nice job on creating this automation tool code65536 :wink:


#13

code65536: so I’m guessing that the 8x are going to be 0x54 (T)

Maybe it enables 6x write?

If you need untouched US01.bin or US0A.bin let me know and Ill email you mine… Send me a PM with your email addy… ( I dont want to post it here because of spamming…


#14

Originally posted by code65536
Yes, the 1x discs are 0x50 § and the 4x discs are 0x52 ®, so I’m guessing that the 8x are going to be 0x54 (T). But that’s only a guess. I have no idea if it’s right or not.
The Speed ID table is located directly behind the media name table, one byte for each media with the usual +R speed id coding.


#15

*Edit: This post was written for version 1. Much of it does not apply to the newer versions.

I’m thinking that it’s not possible to speedhack -R media for the 812S… +R media can speedhack just fine, but -R doesn’t seem to like it…

I realized that I kinda did have a 812S unit to test with–I used one of the (incomplete) mods to OC my 451@851 to a 812 so that I could test this the speedhacks on the 812…

  1. Testing +R speedhacks worked. My OC’ed 812 recognized a RICOH disc as 4x, and after the speedhack, it was recognized as 8x (by both Nero and Smart-Burn).
  2. Testing -R by changing 0x52 to 0x53 for RITEKG04. Didn’t work: my disc was still recognized as 4x by both Nero and SB.
  3. Tested using 0x54. Same result: 4x.
  4. Tested using 0x56. Same result: 4x.
  5. I decided to give the RITEKG04 a 0x50, which was what the 2x media in the media list was using. Flashed, rebooted, and guess what? Despite giving it what I thought was the 2x code, Nero and SB still recognized my disc as 4x. Curious.

Has anyone been able to burn any -R media at 8x on the 812S? If so, could you please tell me what media code was used and what firmware (version, and whether it was hacked or original) that was used?

*Edit: nevermind, ala42’s post shed some light on what needed to be done… it’s just that his post came in while I was still typing this one, so I didn’t read his post before posting this. :slight_smile:

My drive is back to a 451@851 now. That was fun.


#16

Originally posted by ala42
The Speed ID table is located directly behind the media name table, one byte for each media with the usual +R speed id coding.

Ooh. Thanks. I guess I spoke too soon with my previous post. :slight_smile: I’ll look into tweaking with that table and seeing what results I get with that. Thanks!


#17

Speedhack is so popular that the download link has now been blocked by GeoCities because “the allocated data transfer” has been exceeded. Can anyone post the file another place? Thanks!


#18

@code65536

I have hacked my firmware to burn Ritek G04 DVD-R @ 8x following a guide i think was on this forum, from memory to get 8x you need to change the byte (?) to 1E.

If you like i can send you my firmware, but i can’t for the life of me remember where the guide i followed was. :frowning:

here’s a screen grab to show it can be done…


#19

@Hans

Thanks. Ala42’s post showed me what needed to be done. Because the -R codes are done in a table following the actual media codes instead of having each speed code directly associated with the media code, it’ll take a bit more work to make a generalized patcher, but it shouldn’t be too bad. :slight_smile: I’ll play around with it a bit more in a few hours.

@gurubhakti

I’ve added a mirror to my original post.


#20

@code65536

Got it. Thanks!