IR Services: Difference between revisions

m Undo revision 12392 by Socram8888 (talk)
Wwylele (talk | contribs)
(5 intermediate revisions by 3 users not shown)
Line 89: Line 89:
| 0x00010182
| 0x00010182
| [[2.0.0-2]]
| [[2.0.0-2]]
| InitializeIrnop
| [[IRUSER:InitializeIrnop|InitializeIrnop]]
|-
|-
| 0x00020000
| 0x00020000
Line 103: Line 103:
| ClearSendBuffer
| ClearSendBuffer
|-
|-
| 0x0005....
| 0x000500C0
| [[2.0.0-2]]
| [[2.0.0-2]]
| WaitConnection
| WaitConnection
Line 111: Line 111:
| RequireConnection (u8 input)
| RequireConnection (u8 input)
|-
|-
| 0x0007....
| 0x000702C0
| [[2.0.0-2]]
| [[2.0.0-2]]
| AutoConnection
| AutoConnection
|-
|-
| 0x0008....
| 0x00080000
| [[2.0.0-2]]
| [[2.0.0-2]]
| AnyConnection
| AnyConnection
Line 143: Line 143:
| SendIrnopLarge (u32 size, ((Size<<8) <nowiki>|</nowiki> 10), inbufptr)
| SendIrnopLarge (u32 size, ((Size<<8) <nowiki>|</nowiki> 10), inbufptr)
|-
|-
| 0x000F....
| 0x000F0040
| [[2.0.0-2]]
| [[2.0.0-2]]
| ReceiveIrnop
| ReceiveIrnop
|-
|-
| 0x0010....
| 0x00100042
| [[2.0.0-2]]
| [[2.0.0-2]]
| ReceiveIrnopLarge
| ReceiveIrnopLarge
Line 181: Line 181:
| 0x00180182
| 0x00180182
| [[2.2.0-X]]
| [[2.2.0-X]]
| InitializeIrnopShared (u32, u32, u32, u32, u32, u8, 0, handle)
| [[IRUSER:InitializeIrnopShared|InitializeIrnopShared]]
|-
|-
| 0x00190040
| 0x00190040
Line 247: Line 247:
IRU is for regular IR comms. IRUSER uses a custom IR protocol(above the physical layer). Both of these services use IrDA-SIR. The IR hardware seems to only support IrDA-SIR, other physical protocols such as the one for TV-remotes are not supported(going by the datasheet linked [[Hardware|here]] for a different IC at least).
IRU is for regular IR comms. IRUSER uses a custom IR protocol(above the physical layer). Both of these services use IrDA-SIR. The IR hardware seems to only support IrDA-SIR, other physical protocols such as the one for TV-remotes are not supported(going by the datasheet linked [[Hardware|here]] for a different IC at least).


The protocol used with IRUSER involves encryption(?) implemented in software. IRUSER is used for the [[Circle Pad Pro]]. This same IRUSER service uses the New3DS HID hardware when running on New3DS(note that the main service for New3DS HID is ir:rst).
The protocol used with IRUSER involves encryption(?) implemented in software. IRUSER is used for the [[Circle Pad Pro]]. This same IRUSER service uses the New3DS HID hardware when running on New3DS. Note that the main service for New3DS HID is ir:rst, and these two service are mutually exclusive: when one is initialized and reading data from New3DS HID, the other cannot access it.