APT:SendCaptureBufferInfo: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
Line 39: Line 39:
|-
|-
| 0
| 0
| ?
| Pixel bytesize * 0x7000 + base0. (main-screen. base0 = Pixel bytesize * 0x19000 + base1, base1 = indexword3 value)
|-
|-
| 1
| 1
Line 45: Line 45:
|-
|-
| 2
| 2
| ?
| Pixel bytesize * 0x14000 + base. (base = 0, sub-screen)
|-
|-
| 3
| 3
| Same as wordindex 2(different when the above u8 flag is non-zero).
| Same as wordindex 2. When the above u8 flag!=0, this is: Pixel bytesize * 0x19000 + base. (base = indexword2 value, main-screen)
|-
|-
| 4
| 4
Line 63: Line 63:
|}
|}


The user process initializes this structure using data from [[GSPGPU:ImportDisplayCaptureInfo]].
The user process initializes this structure using data from [[GSPGPU:ImportDisplayCaptureInfo]]. The pixel bytesize is determined by the [[LCD|0x1EF00X70]] color format for that screen. When the color-format is RGBA, the pixel bytesize used is value 3.


=Description=
=Description=
The input size is clamped to 0x20-bytes by NS. The input buffer with the clamped size is then copied to a NS state buffer. The size field for this state buffer is also set to this clamped size.
The input size is clamped to 0x20-bytes by NS. The input buffer with the clamped size is then copied to a NS state buffer. The size field for this state buffer is also set to this clamped size.

Revision as of 05:26, 14 May 2014

Request

Index Word Description
0 Header code [0x00400042]
1 Size
2 (Size<<14) | 2
3 Input buffer ptr

Response

Index Word Description
0 Header code
1 Result code


Capture info structure

Index Word Description
0 Pixel bytesize * 0x7000 + base0. (main-screen. base0 = Pixel bytesize * 0x19000 + base1, base1 = indexword3 value)
1 u8: 0 = framebuffer addresses from GSP captureinfo+0 / captureinfo+4 match, otherwise this is value 1 when those addresses don't match.
2 Pixel bytesize * 0x14000 + base. (base = 0, sub-screen)
3 Same as wordindex 2. When the above u8 flag!=0, this is: Pixel bytesize * 0x19000 + base. (base = indexword2 value, main-screen)
4 Main-screen 0x1EF00X70 value.
5 Normally zero.
6 Normally zero.
7 Sub-screen 0x1EF00X70 value.

The user process initializes this structure using data from GSPGPU:ImportDisplayCaptureInfo. The pixel bytesize is determined by the 0x1EF00X70 color format for that screen. When the color-format is RGBA, the pixel bytesize used is value 3.

Description

The input size is clamped to 0x20-bytes by NS. The input buffer with the clamped size is then copied to a NS state buffer. The size field for this state buffer is also set to this clamped size.