So I decided to poke deeply around the firmware. There is a LOT of information about each media code that is stored in the firmware. Not just speed limits. It’s speculated that these extra tables (I found 8 of them for the +R codes alone; haven’t tried parsing the tables for the other 3 media types) contain write strategy information and who knows what else about each media code. In all, for the +R codes, each media code has, between all 8 tables, 197 bytes of information stored about it! I compared the RICOHJPNR01 entries for GS0F and GS0H, and I found that 19 bytes have been changed all together in 5 different tables. Because GS0F has had a much happier time burning RICOHJPNR01 media at 8x, I decided to try something: I patched the GS0H firmware by importing GS0F’s RICOHJPNR01 data.
*) This is my attempt ever at patching something as complicated as this. I’m not entirely sure what I was doing.
*) This is definitely to be considered experimental!
*) It seems that my error rates were a bit lower with the GS0F data imported in. But then again, this might just be caused by random factors (and unless I get other data points from other people, I’m going to say that this is the result of random variation).
*) This did not resolve the slowdown problem!
*) There is one caveat: because I had stuff running that I didn’t want to stop, I didn’t reboot after loading the FW. Since I modified only the data area of the FW, I don’t think that a restart would be necessary. But I can’t be sure. I will retest as soon as I get a chance to restart.
If you want to test it out to see if it produces different results than the official GS0H on your drive, you can download it here:
*Edit: Decided that I should probably remove this link, as the experiment failed.