SharpDVD - bug fix for protocols.ini

Discussion forum for JP1 software tools currently in use, or being developed, such as IR, KM, RemoteMaster, and other misc apps/tools.

Moderator: Moderators

Post Reply
The Robman
Site Owner
Posts: 21923
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

SharpDVD - bug fix for protocols.ini

Post by The Robman »

re: https://www.hifi-remote.com/forums/viewt ... 921#p135921

I have a fix for the SharpDVD executor in protocols.ini

The following line:
CmdTranslator=Translator(lsb,comp) XorCheck(4,12,0,2,0;3,4)

Should be changed to this in all 3 versions:
CmdTranslator=Translator(lsb,comp) XorCheck(4,12,1,2,0;3,4)

See the thread linked above for a description of WHY this change is needed.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
The Robman
Site Owner
Posts: 21923
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

I have come up with a new fix for the XOR calculation, it should be replaced with the following:

XorCheck(lsb,comp,4,12,7,2,0;4,0)

But while this change works, I do seek the advice of experts here.

The code originally had "3,4" after the semi-colon, which meant it should skip the first 4 bits of the device code data and use the next 12 bits (ie, 3 units of 4-bits each). However, the result of this was that the device code itself was getting skipped in the calculation. If I just change the devSourceOffset from 4 to 0, it brings in the device code but skips the top half of the sub-device code. If I also change the devCount it brings in both halves of the sub-device code but also brings in the top half of the device code, which results in the result being complimented.

So, what I did was, in addition to adding the LSB and COMP non-positional keyword arguments, I added a seed value of 7 to cover the E value. The true E value is 1 but because all the other numbers are LSB, I should add it as 8, but now I also need to complement it, so I found that using value 7 works (ie, binary 0111 representing a decimal value of 1 in lsb-comp format).

Is there a better way to do this?
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Post Reply