An idea for Extender RDF's
Posted: Thu Dec 02, 2010 10:23 am
There has been an ongoing discussion about Extender RDF's and this topic has boiled back to the top of my mind and I have been thinking about it.
Anyway, what if we did something like this:
In the RDF directory, there are two RDF's as we have today, let's use the Atlas for example:
30333033 is the unextended RDF
3A333A33 is the extended RDF
Now, instead of the extended RDF duplicating everything that is in the unextended RDF, the extended RDF has a reference to the unextended RDF (as some others have done to make the maintenance easier)
OEMRemote = 30333033
What this does is tell the tools that for everything that is not specified in this RDF, go get it from the unextended RDF. That way there is a button list, valid setup code list, protocol list, etc that doesn't have to be maintained twice. The extended RDF's would only specify those things that are different.
We could then also include the extender hex code into the RDF so that IR/RMIR can do a "new" for the extended remote and could incorporate what Extinstall does directly. Some form of tag that signals that this is the hex file for the remote. Ideally waht followed would be the output of the assemblers that we extender writers use so that no intermediate conversion would need to be done. (i.e. the contents of the HEX file for the Samsung processors)
This way, we get a couple of benefits:
1: easy to maintain and consistency between the unextended and extended RDF's. If the unextended remote changes (i.e. someone decides that a protocol is a different variant) then both are changed at the same time.
2: less stuff to distribute with an extender. We're now down to a stripped down RDF and a users manual. Install the RDF into the RDF directory and read the book.
3: the benefit of a "new->remote" with the extender in it
This will require work on the tools part. The good thing is that if the new RDF doesn't reference the unextended RDF and is completely specfified then there should be no issues. And Extinstall will still work as it does today, so we don't have to go back and back-port everything.
thoughts?
Anyway, what if we did something like this:
In the RDF directory, there are two RDF's as we have today, let's use the Atlas for example:
30333033 is the unextended RDF
3A333A33 is the extended RDF
Now, instead of the extended RDF duplicating everything that is in the unextended RDF, the extended RDF has a reference to the unextended RDF (as some others have done to make the maintenance easier)
OEMRemote = 30333033
What this does is tell the tools that for everything that is not specified in this RDF, go get it from the unextended RDF. That way there is a button list, valid setup code list, protocol list, etc that doesn't have to be maintained twice. The extended RDF's would only specify those things that are different.
We could then also include the extender hex code into the RDF so that IR/RMIR can do a "new" for the extended remote and could incorporate what Extinstall does directly. Some form of tag that signals that this is the hex file for the remote. Ideally waht followed would be the output of the assemblers that we extender writers use so that no intermediate conversion would need to be done. (i.e. the contents of the HEX file for the Samsung processors)
This way, we get a couple of benefits:
1: easy to maintain and consistency between the unextended and extended RDF's. If the unextended remote changes (i.e. someone decides that a protocol is a different variant) then both are changed at the same time.
2: less stuff to distribute with an extender. We're now down to a stripped down RDF and a users manual. Install the RDF into the RDF directory and read the book.
3: the benefit of a "new->remote" with the extender in it
This will require work on the tools part. The good thing is that if the new RDF doesn't reference the unextended RDF and is completely specfified then there should be no issues. And Extinstall will still work as it does today, so we don't have to go back and back-port everything.
thoughts?