MIC Services: Difference between revisions

No edit summary
MarcusD (talk | contribs)
 
(34 intermediate revisions by 5 users not shown)
Line 7: Line 7:
|-
|-
| 0x00010042
| 0x00010042
| (u32 sharedmemsize, val0, Handle sharedmem_handle)
| [[MIC:MapSharedMem|MapSharedMem]]
|-
|-
| 0x00020000
| 0x00020000
| ?
| [[MIC:UnmapSharedMem|UnmapSharedMem]]
|-
|-
| 0x00030140
| 0x00030140
| (u8 unk0, u8 unk1, u32 unk2, u32 offset, u8 unk3) ? (input offset = offset where the offset field is located in sharedmem, normally sharedmemsize-4)
| [[MICU:StartSampling|StartSampling]]
|-
|-
| 0x00040040
| 0x00040040
| (u8 input) ?
| [[MICU:AdjustSampling|AdjustSampling]]
|-
|-
| 0x00050000
| 0x00050000
| ?
| [[MICU:StopSampling|StopSampling]]
|-
|-
| 0x00060000
| 0x00060000
| This writes an unknown output u8 to cmdreply indexword[2].
| [[MICU:IsSampling|IsSampling]]
|-
|-
| 0x00070000
| 0x00070000
| This writes an unknown handle to the cmdreply output.
| [[MICU:GetEventHandle|GetEventHandle]]
|-
|-
| 0x00080040
| 0x00080040
| (u8 input) ?
| [[MICU:SetGain|SetGain]]
|-
|-
| 0x00090000
| 0x00090000
| This writes an unknown output u8 to cmdreply indexword[2].
| [[MICU:GetGain|GetGain]]
|-
|-
| 0x000A0040
| 0x000A0040
| (u8 input) ?
| [[MICU:SetPower|SetPower]]
|-
|-
| 0x000B0000
| 0x000B0000
| This writes an unknown output u8 to cmdreply indexword[2].
| [[MICU:GetPower|GetPower]]
|-
|-
| 0x000C0042
| 0x000C0042
| (size, [[IPC Command Structure|<translate-header>]], bufptr) ?
| [[MICU:SetIirFilterMic|SetIirFilterMic]]
|-
|-
| 0x000D0040
| 0x000D0040
| (u8 input) ?
| [[MICU:SetClamp|SetClamp]]
|-
|-
| 0x000E0000
| 0x000E0000
| This writes an unknown output u8 to cmdreply indexword[2].
| [[MICU:GetClamp|GetClamp]]
|-
|-
| 0x000F0040
| 0x000F0040
| (u8 input) ?
| [[MICU:SetAllowShellClosed|SetAllowShellClosed]]
|-
|-
| 0x00100040
| 0x00100040
| [[MICU:Initialize|Initialize]]
| When the input value is 0, value 1 is written to an u8 MIC module state field. Otherwise, value 0 is written there. Normally the input value is non-zero.
|}
|}


Line 58: Line 58:


Only one session can be open for this service total(that is, only one process can use this service at a time).
Only one session can be open for this service total(that is, only one process can use this service at a time).
==Encoding==
{| class="wikitable" border="1"
|-
!  Enum
!  Value
|-
| ENCODING_PCM8
| 0
|-
| ENCODING_PCM16
| 1
|-
| ENCODING_PCM8_SIGNED
| 2
|-
| ENCODING_PCM16_SIGNED
| 3
|}
==SampleRate==
{| class="wikitable" border="1"
|-
!  Enum
!  Value
|-
| SAMPLE_RATE_32730
| 0
|-
| SAMPLE_RATE_16360
| 1
|-
| SAMPLE_RATE_10910
| 2
|-
| SAMPLE_RATE_8180
| 3
|}
The actual accurate sampling rate can be calculated using <code>(16756991 / 512) / (SampleRate + 1)</code> where <code>SampleRate</code> is one of the above values.


=See Also=
=See Also=
[[MIC Shared Memory]]
[[MIC Shared Memory]]