RM fails to open KM file
Moderator: Moderators
RM fails to open KM file
I am having a problem using RM 1.68, RDFs1.25. I can't open any KM .txt file. This zip file: https://www.hifi-remote.com/forums/dload ... le_id=3625 contains one example, but I fail with any of my KM files. The zip file contains the KM file and the rmaster.err file.
I tried to import your KM and some of my old ones save with KM 9.05 and got the same error message. It appears that the import function in RM is broke for files created with KM 9.05. I'm sure Greg will spot this and be able to fix RM accordingly. I opened my old files created with 7.35 from years ago and they worked.
If you open your KM file, the error is in the line
if you replace it with:
It imports to RM.
THIS CHANGE IS NOT BACKWARDS COMPATIBLE WITH KM. You'll have to replace that line with the original code to open in KM.
RM needs to be updated for the changes in the functions import (fNo in place of fEFC) with this version of KM. This should get you going until Greg has time to fix.
Code: Select all
fFunctions,fNo,fByte2,bButtons,bFunctions,fNotes,Device Combiner,,kFunctions,kBoundDev,kBoundKey,kShift,b$FunctionsCode: Select all
fFunctions,fEFC,fByte2,bButtons,bFunctions,fNotes,Device Combiner,,kmFunctions,kBoundDev,kBoundKey,kShift,b$-FunctionsTHIS CHANGE IS NOT BACKWARDS COMPATIBLE WITH KM. You'll have to replace that line with the original code to open in KM.
RM needs to be updated for the changes in the functions import (fNo in place of fEFC) with this version of KM. This should get you going until Greg has time to fix.
Looks like there's been a change to the format of saved KM files in v9.05.
This new format isn't consistent with RM's code for importing KM files.
I'll see if I can find the time to make the appropriate changes to RM.
This new format isn't consistent with RM's code for importing KM files.
I'll see if I can find the time to make the appropriate changes to RM.
-- Greg
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
It could be argued that the fix should be made to KM, not RM.jetskier wrote:RM needs to be updated for the changes in the functions import (fNo in place of fEFC) with this version of KM. This should get you going until Greg has time to fix.
-- Greg
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
Thanks
Thanks for the help guys. I really just wanted to migrate this device to RM from KM, to support the COM/SKIP button. Since this would be one way, one time, the workaround will get me going for now. Thanks again.
-
mr_d_p_gumby
- Expert
- Posts: 1370
- Joined: Sun Aug 03, 2003 12:13 am
- Location: Newbury Park, CA
Looks like we missed that one in the process of adding the EFC5 coding. The "fNo" is just plain wrong. It should have been one of the following:gfb107 wrote:It could be argued that the fix should be made to KM, not RM.jetskier wrote:RM needs to be updated for the changes in the functions import (fNo in place of fEFC) with this version of KM. This should get you going until Greg has time to fix.
fOBC
fEFC3
fEFC5
KM does not actually use that info from the saved file. One possible way around this is for RM to also not use that info. If you look at the 4th row in the saved KM file (row with the setup code), you'll see one item that is either OBC or EFC. That could be used to determine the nature of the codes in the codes column.
Note that "fNo" will sometimes be seen as "fYes". It is accidentally indicating the setting of the Using Extender option on the Setup sheet. I will fix this in the next release of KM.
Mike England
RM already uses the function type in the 4th row.
During parsing of the KM file, RM has to figure out when it has reached the actual function definitions and button assignments. RM does this by building a couple of search strings that it compares against the beginning of the line.
For upgrades that use OBCs, it used "fFunctions,fOBC," and "Functions,OBC,".
For upgrades that use EFCs, it used "fFunctions,fEFC," and "Functions,EFC,".
This was necessary to support different versions of KM files, without actually coding for specific KM versions.
To fix this, I was going to add a third string "fFunctions,fNo,", but it sounds like I should also add "fFunctions,fYes,".
Or do you have a better way to determine when I have reached the function definitions?
During parsing of the KM file, RM has to figure out when it has reached the actual function definitions and button assignments. RM does this by building a couple of search strings that it compares against the beginning of the line.
For upgrades that use OBCs, it used "fFunctions,fOBC," and "Functions,OBC,".
For upgrades that use EFCs, it used "fFunctions,fEFC," and "Functions,EFC,".
This was necessary to support different versions of KM files, without actually coding for specific KM versions.
To fix this, I was going to add a third string "fFunctions,fNo,", but it sounds like I should also add "fFunctions,fYes,".
Or do you have a better way to determine when I have reached the function definitions?
-- Greg
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
-
mr_d_p_gumby
- Expert
- Posts: 1370
- Joined: Sun Aug 03, 2003 12:13 am
- Location: Newbury Park, CA
I guess you'd have to have both fNo and fYes in order to work with KM v9.05 files. I have changed it back to fOBC and fEFC for the next version (not quite ready to release yet). You can check the row 4 item to determine if the codes are EFC3 or EFC5, though it'll probably be obvious when you load the actual codes.
The only other thing I can think of would be if you can wildcard that part of the search, and just match the rest of the line. That would still be a reliable way to recognize the function definitions.
(Sorry for causing you the extra work.)
The only other thing I can think of would be if you can wildcard that part of the search, and just match the rest of the line. That would still be a reliable way to recognize the function definitions.
(Sorry for causing you the extra work.)
Mike England
Not a problem. I'll change the code so that it matches part of the line after the fOBC, fEFC, fNO, or fYes,
-- Greg
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)
Original RemoteMaster developer
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST)