GSPGPU:ImportDisplayCaptureInfo: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
m Capture info entry: changed link of "Framebuffer format" to be relevant (info was moved away from "LCD" page a while ago)
No edit summary
 
(3 intermediate revisions by 2 users not shown)
Line 21: Line 21:
| Result code
| Result code
|-
|-
| 2-9
| 2-5
| Output 0x20-byte capture info structure.
| Capture info for the top screen
|-
| 6-9
| Capture info for the bottom screen
|}
|}


=Capture info entry=
=Capture info=
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Line 32: Line 35:
|-
|-
| 0
| 0
| [[LCD#Framebuffers|Framebuffer]] process virtual address, for the main screen this is the 3D left framebuffer
| Left framebuffer VA
|-
|-
| 1
| 1
| For the main screen: 3D right framebuffer process vaddr
| Right framebuffer VA (top screen only)
|-
|-
| 2
| 2
| Framebuffer [[GPU/External_Registers#Framebuffer_format|format]], this u16 is stored in the low u16 for LCD register 0x1EF00X70.
| [[GPU/External_Registers#Framebuffer_format|Format]]
|-
|-
| 3
| 3
| Value for [[LCD|0x1EF00X90]], controls framebuffer width
| [[GPU/External_Registers#LCD_Source_Framebuffer_Setup|Stride]] (offset 0x90)
|}
 
=Capture info structure=
{| class="wikitable" border="1"
|-
!  Index Word
!  Description
|-
| 0-3
| Capture info entry for the main screen.
|-
| 4-7
| Capture info entry for the sub screen.
|}
|}


=Description=
=Description=
This returns the current framebuffer state. The returned framebuffer addresses are for the currently used(first/second) framebuffers.
This returns the current framebuffer state. The returned framebuffer addresses are for the new framebuffers (the ones that will be displayed next frame, after VBlank) for the process with GPU rights.

Latest revision as of 21:00, 2 January 2025

Request

Index Word Description
0 Header code [0x00180000]

Response

Index Word Description
0 Header code [0x00180240]
1 Result code
2-5 Capture info for the top screen
6-9 Capture info for the bottom screen

Capture info

Index Word Description
0 Left framebuffer VA
1 Right framebuffer VA (top screen only)
2 Format
3 Stride (offset 0x90)

Description

This returns the current framebuffer state. The returned framebuffer addresses are for the new framebuffers (the ones that will be displayed next frame, after VBlank) for the process with GPU rights.