Changes

no edit summary
Line 7: Line 7:     
This has max_sessions 30. IPC handling is done by the main-thread.
 
This has max_sessions 30. IPC handling is done by the main-thread.
  −
As of 10.x these services only support using Hid and BLE devices, other devices such as audio are not usable.
      
[11.0.0+] sdknso moved various functions/etc from "nn::bluetooth::" into "nn::bluetooth::hal::". This includes all functions exposing btdrv. These btdrv functions now automatically initialize the service if needed, the dedicated initialization function is now a stub since calling it is no longer needed. The internal "nn::bluetooth::user::" functions implementing [[#bt]] were moved to "nn::bluetooth::hal::user::", these are called by the the user-facing "nn::bluetooth::" functions.
 
[11.0.0+] sdknso moved various functions/etc from "nn::bluetooth::" into "nn::bluetooth::hal::". This includes all functions exposing btdrv. These btdrv functions now automatically initialize the service if needed, the dedicated initialization function is now a stub since calling it is no longer needed. The internal "nn::bluetooth::user::" functions implementing [[#bt]] were moved to "nn::bluetooth::hal::user::", these are called by the the user-facing "nn::bluetooth::" functions.
Line 955: Line 953:     
== StartAudioOut ==
 
== StartAudioOut ==
 +
Takes an input u32, a [[#PcmParameter]], a nn::TimeSpan, returns an output nn::TimeSpan and u64.
    
== StopAudioOut ==
 
== StopAudioOut ==
 +
Takes an input u32, no output.
    
== GetAudioOutState ==
 
== GetAudioOutState ==
 +
Takes an input u32, returns an output [[#AudioOutState]].
    
== GetAudioOutFeedingCodec ==
 
== GetAudioOutFeedingCodec ==
 +
Takes an input u32, returns an output [[#AudioCodec]].
    
== GetAudioOutFeedingParameter ==
 
== GetAudioOutFeedingParameter ==
 +
Takes an input u32, returns an output [[#PcmParameter]].
    
== AcquireAudioOutBufferAvailableEvent ==
 
== AcquireAudioOutBufferAvailableEvent ==
 +
Takes an input u32, returns an output Event handle.
 +
 +
sdknso uses an user-specified EventClearMode.
    
== SendAudioData ==
 
== SendAudioData ==
 +
Takes an input u32, a type-0x9 input buffer, returns an output u64.
    
== AcquireAudioControlInputStateChangedEvent ==
 
== AcquireAudioControlInputStateChangedEvent ==
 +
No input, returns an output Event handle.
 +
 +
sdknso uses an user-specified EventClearMode.
    
== GetAudioControlInputState ==
 
== GetAudioControlInputState ==
 +
Takes a type-0xA output buffer containing an array of [[#AudioControlButtonState]], returns an output s32.
    
== AcquireAudioConnectionStateChangedEvent ==
 
== AcquireAudioConnectionStateChangedEvent ==
 +
No input, returns an output Event handle.
 +
 +
sdknso uses an user-specified EventClearMode.
    
== GetConnectedAudioDevice ==
 
== GetConnectedAudioDevice ==
 +
Takes a type-0xA output buffer containing an array of [[#Address]], returns an output s32.
    
== IsManufacturingMode ==
 
== IsManufacturingMode ==
Line 1,619: Line 1,634:  
| 0x50 || {above size} || Same as [[#LeEventInfo]]+0x4A.
 
| 0x50 || {above size} || Same as [[#LeEventInfo]]+0x4A.
 
|}
 
|}
 +
 +
= AudioEventType =
 +
This is "nn::bluetooth::hal::AudioEventType". This is an u32 enum.
 +
 +
= PcmParameter =
 +
This is "nn::bluetooth::system::PcmParameter". This is a 0xC-byte struct with 4-byte alignment.
 +
 +
= AudioOutState =
 +
This is "nn::bluetooth::system::AudioOutState". This is an u32 enum.
 +
 +
= AudioCodec =
 +
This is "nn::bluetooth::system::AudioCodec". This is an u32 enum.
 +
 +
= AudioControlButtonState =
 +
This is "nn::bluetooth::system::AudioControlButtonState". This is a 0x10-byte struct.
    
= Notes =
 
= Notes =