Camera Services: Difference between revisions

Steveice10 (talk | contribs)
m Some types.
ElementW (talk | contribs)
m Add anchors
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__TOC__
{{Anchor|CAMC}}{{Anchor|cam:c}}
==cam:c (PORT_REG) ==
==cam:c (PORT_REG) ==
Same as [[#cam:u_.28PORT_USER.29|cam:u]]


{{Anchor|CAMS}}{{Anchor|cam:s}}
==cam:s (PORT_CAL) ==
==cam:s (PORT_CAL) ==
Same as [[#cam:u_.28PORT_USER.29|cam:u]]


{{Anchor|CAMQ}}{{Anchor|cam:q}}
==cam:q (PORT_QTM) ==
==cam:q (PORT_QTM) ==
This was added with New3DS.
This was added with New3DS.


{| class="wikitable" border="1"
|-
!  Command Header
!  Description
|-
| 0x00010040
| [[CAMU:StartCapture|StartCapture]]
|-
| 0x00020040
| [[CAMU:StopCapture|StopCapture]]
|-
| 0x0003004?
| [[CAMU:IsBusy|IsBusy]]
|-
| 0x00040040
| [[CAMU:ClearBuffer|ClearBuffer]]
|-
| 0x0005004?
| [[CAMU:GetVsyncInterruptEvent|GetVsyncInterruptEvent]]
|-
| 0x0006004?
| [[CAMU:GetBufferErrorInterruptEvent|GetBufferErrorInterruptEvent]]
|-
| 0x0007????
| [[CAMU:StartRecieving|StartRecieving]]
|-
| 0x00080040
| [[CAMU:IsFinishedRecieving|IsFinishedRecieving]]
|-
| 0x00090100
| [[CAMU:SetTransferLines|SetTransferLines]]
|-
| 0x000A008?
| [[CAMU:GetMaxLines|GetMaxLines]]
|-
| 0x000B0100
| [[CAMU:SetTransferBytes|SetTransferBytes]]
|-
| 0x000C004?
| [[CAMU:GetTransferBytes|GetTransferBytes]]
|-
| 0x000D008?
| [[CAMU:GetMaxBytes|GetMaxBytes]]
|-
| 0x000E0080
| [[CAMU:SetTrimming|SetTrimming]]
|-
| 0x000F004?
| [[CAMU:IsTrimming|IsTrimming]]
|-
| 0x00100140
| [[CAMU:SetTrimmingParams|SetTrimmingParams]]
|-
| 0x0011????
| [[CAMU:GetTrimmingParams|GetTrimmingParams]]
|-
| 0x00120140
| [[CAMU:SetTrimmingParamsCenter|SetTrimmingParamsCenter]]
|-
| 0x00130040
| [[CAMU:Activate|Activate]]
|-
| 0x00140080
| [[CAMU:SwitchContext|SwitchContext]]
|-
| 0x00150080
| [[CAMU:SetExposure|SetExposure]]
|-
| 0x00160080
| [[CAMU:SetWhiteBalance|SetWhiteBalance]]
|-
| 0x00170080
| [[CAMU:SetSharpness|SetSharpness]]
|-
| 0x00180080
| [[CAMU:SetAutoExposure|SetAutoExposure]]
|-
| 0x0019004?
| [[CAMU:IsAutoExposure|IsAutoExposure]]
|-
| 0x001A0080
| [[CAMU:SetAutoWhiteBalance|SetAutoWhiteBalance]]
|-
| 0x001B004?
| [[CAMU:IsAutoWhiteBalance|IsAutoWhiteBalance]]
|-
| 0x001C00C0
| [[CAMU:FlipImage|FlipImage]]
|-
| 0x001D020?
| [[CAMU:SetDetailSize|SetDetailSize]]
|-
| 0x001E00C0
| [[CAMU:SetSize|SetSize]]
|-
| 0x001F0080
| [[CAMU:SetFrameRate|SetFrameRate]]
|-
| 0x00200080
| [[CAMU:SetPhotoMode|SetPhotoMode]]
|-
| 0x002100C0
| [[CAMU:SetEffect|SetEffect]]
|-
| 0x00220080
| [[CAMU:SetContrast|SetContrast]]
|-
| 0x00230080
| [[CAMU:SetLensCorrection|SetLensCorrection]]
|-
| 0x002400C0
| [[CAMU:SetOutputFormat|SetOutputFormat]]
|-
| 0x0025014?
| [[CAMU:SetAutoExposureWindow|SetAutoExposureWindow]]
|-
| 0x0026014?
| [[CAMU:SetAutoWhiteBalanceWindow|SetAutoWhiteBalanceWindow]]
|-
| 0x00270080
| [[CAMU:SetNoiseFilter|SetNoiseFilter]]
|-
| 0x00280080
| [[CAMU:SyncronizeVsyncTiming|SyncronizeVsyncTiming]]
|-
| 0x0029????
| [[CAMU:GetLatestVsyncTiming|GetLatestVsyncTiming]]
|-
| 0x002A????
| [[CAMU:GetStereoCallibrationData|GetStereoCallibrationData]]
|-
| 0x002B????
| [[CAMU:SetPackageParameterWithoutContext|SetPackageParameterWithoutContext]]
|-
| 0x002C0080
| [[CAMU:SetPackageParameterWithContext|SetPackageParameterWithContext]]
|-
| 0x002D????
| [[CAMU:SetPackageParameterWithContextDetail|SetPackageParameterWithContextDetail]]
|-
| 0x002E???
| [[CAMU:GetSuitableY2RStandardCoeffecient|GetSuitableY2RStandardCoeffecient]]
|-
| 0x002F
| [[CAMU:PlayShutterSoundWithWave|PlayShutterSoundWithWave]]
|-
| 0x0030????
| [[CAMU:PlayShutterSound|GetShutterSound]]
|-
| 0x0031000?
| [[CAMU:DriverInitailize|DriverInitialize]]
|-
| 0x0032000?
| [[CAMU:DriverFinalize|DriverFinalize]]
|-
| 0x0033000?
| [[CAMU:GetActivatedCamera|GetActivatedCamera]]
|-
| 0x0034000?
| [[CAMU:GetSleepCamera|GetSleepCamera]]
|-
| 0x00350040
| [[CAMU:SetSleepCamera|SetSleepCamera]]
|-
| 0x00360040
| [[CAMU:SetBrightnessSyncronization|SetBrightnessSyncronization]]
|-
| 0x0037004?
| ???
|-
| 0x0038000?
| ???
|-
| 0x0039004?
| ???
|-
| 0x003A0080
| ???
|-
| 0x003B004?
| ???
|-
| 0x003C0080
| ???
|-
| 0x003D000?
| ???
|-
| 0x003E0000
| ???
|}
Most commands are same as cam:u, although, with different command headers since some commands which are available in cam:u do not exist in cam:q
{{Anchor|CAMU}}{{Anchor|cam:u}}
==cam:u (PORT_USER)==
==cam:u (PORT_USER)==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 197: Line 398:
| 0x003E0040
| 0x003E0040
| [[CAMU:SetBrightnessSynchronization|SetBrightnessSynchronization]]
| [[CAMU:SetBrightnessSynchronization|SetBrightnessSynchronization]]
|-
| 0x003F0040
| Stubbed, always returns 0
|-
| 0x004000C0
| ???
|-
| 0x00410040
| Stubbed, returns D8A053EA if flag is not 1
|-
| 0x00420040
| ???
|-
| 0x00430000
| Stubbed, returns D8A053EA if flag is not 1
|-
| 0x00440000
| Stubbed, returns D8A053EA if flag is not 1
|}
|}


Line 779: Line 998:
|}
|}


{{Anchor|Y2R}}{{Anchor|Y2RU}}{{Anchor|y2r:u}}
== y2r:u ==
== y2r:u ==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 786: Line 1,006:
|-
|-
| 0x00010040
| 0x00010040
| SetInputFormat(InputFormat)
| [[Y2R:SetInputFormat|SetInputFormat]]
|-
|-
| 0x00020000
| 0x00020000
| GetInputFormat()
| [[Y2R:GetInputFormat|GetInputFormat]]
|-
|-
| 0x00030040
| 0x00030040
| SetOutputFormat(OutputFormat)
| [[Y2R:SetOutputFormat|SetOutputFormat]]
|-
|-
| 0x00040000
| 0x00040000
| GetOutputFormat()
| [[Y2R:GetOutputFormat|GetOutputFormat]]
|-
|-
| 0x00050040
| 0x00050040
| SetRotation(Rotation)
| [[Y2R:SetRotation|SetRotation]]
|-
|-
| 0x00060000
| 0x00060000
| GetRotation()
| [[Y2R:GetRotation|GetRotation]]
|-
|-
| 0x00070040
| 0x00070040
| SetBlockAlignment(BlockAlignment)
| [[Y2R:SetBlockAlignment|SetBlockAlignment]]
|-
|-
| 0x00080000
| 0x00080000
| GetBlockAlignment()
| [[Y2R:GetBlockAlignment|GetBlockAlignment]]
|-
|-
| 0x00090040
| 0x00090040
| SetSpacialDithering(bool)
| [[Y2R:SetSpacialDithering|SetSpacialDithering]]
|-
|-
| 0x000A0000
| 0x000A0000
| GetSpacialDithering()
| [[Y2R:GetSpacialDithering|GetSpacialDithering]]
|-
|-
| 0x000B0040
| 0x000B0040
| SetTemporalDithering(bool)
| [[Y2R:SetTemporalDithering|SetTemporalDithering]]
|-
|-
| 0x000C0000
| 0x000C0000
| GetTemporalDithering()
| [[Y2R:GetTemporalDithering|GetTemporalDithering]]
|-
|-
| 0x000D0040
| 0x000D0040
| SetTransferEndInterrupt(bool)
| [[Y2R:SetTransferEndInterrupt|SetTransferEndInterrupt]]
|-
|-
| 0x000E0000
| 0x000E0000
| GetTransferEndInterrupt()
| [[Y2R:GetTransferEndInterrupt|GetTransferEndInterrupt]]
|-
|-
| 0x000F0000
| 0x000F0000
| GetTransferEndEvent(Handle*)
| [[Y2R:GetTransferEndEvent|GetTransferEndEvent]]
|-
|-
| 0x00100102
| 0x00100102
Line 843: Line 1,063:
|-
|-
| 0x00140000
| 0x00140000
| IsFinishedSendingYuv(bool* state)
| [[Y2R:IsFinishedSendingYuv|IsFinishedSendingYuv]]
|-
|-
| 0x00150000
| 0x00150000
| IsFinishedSendingY(bool* state)
| [[Y2R:IsFinishedSendingY|IsFinishedSendingY]]
|-
|-
| 0x00160000
| 0x00160000
| IsFinishedSendingU(bool* state)
| [[Y2R:IsFinishedSendingU|IsFinishedSendingU]]
|-
|-
| 0x00170000
| 0x00170000
| IsFinishedSendingV(bool* state)
| [[Y2R:IsFinishedSendingV|IsFinishedSendingV]]
|-
|-
| 0x00180102
| 0x00180102
| SetReceiving(unsigned int pDst, unsigned int imageSize, short transferUnit, short transferStride, 0, Handle dstProcess).
| [[Y2R:SetReceiving|SetReceiving]]
|-
|-
| 0x00190000
| 0x00190000
| IsFinishedReceiving(bool* state)
| [[Y2R:IsFinishedReceiving|IsFinishedReceiving]]
|-
|-
| 0x001A0040
| 0x001A0040
| SetInputLineWidth(short)
| [[Y2R:SetInputLineWidth|SetInputLineWidth]]
|-
|-
| 0x001B0000
| 0x001B0000
| GetInputLineWidth()
| [[Y2R:GetInputLineWidth|GetInputLineWidth]]
|-
|-
| 0x001C0040
| 0x001C0040
| SetInputLines(short)
| [[Y2R:SetInputLines|SetInputLines]]
|-
|-
| 0x001D0000
| 0x001D0000
| GetInputLines()
| [[Y2R:GetInputLines|GetInputLines]]
|-
|-
| 0x001E0100
| 0x001E0100
| SetCoefficientParams(0x10-byte CoefficientParams)
| [[Y2R:SetCoefficientParams|SetCoefficientParams]]
|-
|-
| 0x001F0000
| 0x001F0000
| GetCoefficientParams()
| [[Y2R:GetCoefficientParams|GetCoefficientParams]]
|-
|-
| 0x00200040
| 0x00200040
| SetStandardCoefficient(StandardCoefficient)
| [[Y2R:SetStandardCoefficient|SetStandardCoefficient]]
This command is equivalent to SetCoefficientParams(GetStandardCoefficientParams(StandardCoefficient)).
|-
|-
| 0x00210040
| 0x00210040
| GetStandardCoefficientParams(StandardCoefficient)
| [[Y2R:GetStandardCoefficientParams|GetStandardCoefficientParams]]
|-
|-
| 0x00220040
| 0x00220040
| SetAlpha(short)
| [[Y2R:SetAlpha|SetAlpha]]
|-
|-
| 0x00230000
| 0x00230000
| GetAlpha()
| [[Y2R:GetAlpha|GetAlpha]]
|-
|-
| 0x00240200
| 0x00240200
| SetDitheringWeightParams(0x20 bytes DitheringWeightParams)
| [[Y2R:SetDitheringWeightParams|SetDitheringWeightParams]]
|-
|-
| 0x00250000
| 0x00250000
| GetDitheringWeightParams
| [[Y2R:GetDitheringWeightParams|GetDitheringWeightParams]]
|-
|-
| 0x00260000
| 0x00260000
| StartConversion
| [[Y2R:StartConversion|StartConversion]]
|-
|-
| 0x00270000
| 0x00270000
| StopConversion
| [[Y2R:StopConversion|StopConversion]]
|-
|-
| 0x00280000
| 0x00280000
| IsBusyConversion(bool * state)
| [[Y2R:IsBusyConversion|IsBusyConversion]]
|-
|-
| 0x002901C0
| 0x002901C0
Line 910: Line 1,129:
|-
|-
| 0x002A0000
| 0x002A0000
| PingProcess(unsigned char * connectedNumber)
| [[Y2R:PingProcess|PingProcess]]
|-
|-
| 0x002B0000
| 0x002B0000
| DriverInitialize
| [[Y2R:DriverInitialize|DriverInitialize]]
|-
|-
| 0x002C0000
| 0x002C0000
| DriverFinalize
| [[Y2R:DriverFinalize|DriverFinalize]]
|-
|-
| 0x002D0000
| 0x002D0000
Line 1,133: Line 1,352:
| alpha
| alpha
|}
|}
[[Category:Services]]