The Robman wrote:Hi Lyndel, can you please review my spreadsheet and tell me if this is what you are looking for?  If it is, I have no problem with us adopting it, if Graham and Bengt agree (as they'd have to do the actual work).
Mfritze wrote:While the Apple Remote uses the NEC IR protocol for the timing, the 32-bit data package is in a different format. It consists of two 16 bit LSB words. 
For some reason, 
within those 16 bit words, the bit fields are listed in the wrong order in the table following.  (Does "LSB" account for this??) So when he says that first 11 bit vendor, then 5 bits "Command page", it is the other way around, first the Command page (should be a shortened version of our [D]evice), then 11 bit vendor (corresponds to an extended version of  our [S]ubdevice). Likewise, the content of the second 16 bit word should also be read in reverse order. 
"Our classic" IRP reads {...}<...>(16,8,D:8,S:8,C,F,PairID,(...)*){S=135,C=...,....}, while 
Lyndels version reads {...}<...>(16,-8,D:5,S:11,C:1,F:7,PairID:8,1,^108m,(16,-4,1,^108m)*)
                          {C=...,S=1087}[...]
See also my previous post: there are three more hard "1"s in the Wiki version. I.e. every "Wiki-Apple" is an "Apple", but not the other way around.
Interestingly enough, 
the version preceeding Mfritze's edits was more-or-less identical to ours. Mfrize obviously changed it without citing valid sources. With this background, it does not feel justified  to adopt the Wiki version as the more correct one. 
So I tend to  this alternative: In IrpProtocols.xml just add the Wiki version as an alternative version (like for example NEC-Shirrif).  Apple should take preference over the new one, in the sense of prefer-overs. That way, no other changes are needed, in particular not to protocols.ini or Remotemaster. DecodeIR stays as relevant as possible, while rendering from Mfritze's parameters will be possible in IrScutinizer and IrpTransmogrifier.