User talk:Kozarovv: Difference between revisions

From PS4 Developer wiki
Jump to navigation Jump to search
(45 intermediate revisions by 4 users not shown)
Line 1: Line 1:
==Rough draft==
=Rough draft=


===psfour2pstwo===
==psfour2pstwo==
* --gs-kernel-cl="DarkCloud2"
* --gs-kernel-cl="fantavision"


Special case kernel plugins?
====idle detect====
 
* --detect-idle-vif
* --detect-idle-ee
* --detect-idle-iop
* --detect-idle-intc
* --detect-idle-chcr
 
====other====
 
* --force-point-sampling
* Project Snowblind US mipmap offset 0019506C  bc1f    loc_19508C
 
====vu====
 
Looks like VU sync always(?), not like ps2.
 
====todo====
 
seems to be like internal threads, not real threads. Emu print with that.
<pre>_____________________________________________________________________________
| Emotion Engine:      | Input Output Processor (iop)  | x Extra?          |
|-----------------------|-------------------------------|-------------------|
| e-dbg                | i-fw                          | x-stdlib          |
| e-r59                | i-debug                      | x-emu            |
| e-mem                | i-cdvd                        | x-lpnr            |
| e-dmac                | i-dmac                        | x-cdvd            |
| e-timer              | i-gmif                        | x-isofs          |
| e-sio                | i-intc                        | x-log            |
| e-dramc              | i-mem                        | x-mcd            |
| e-intc                | i-memcard                    | x-replay          |
| e-sif                | i-mtap                        | x-rtc            |
| e-gif                | i-pad                        | x-save            |
| e-vif0                | i-pif                        | x-osd            |
| e-vif1                | i-sched                      | x-snap            |
| e-ipu                | i-sif                        | x-host            |
| e-jit                | i-sio2                        | x-trphy          |
| e-hook                | i-timer                      | x-audio          |
| e-Lua                | i-usb                        | x-pad            |
| e-gs                  | i-spu2                        | x-srvc            |
| e-sched              | i-EndSlice                    | x-dialog          |
|                      | i-r30                        | x-dlc            |
|                      | i-jit                        | x-stream          |
|                      | i-Lua                        | x-mem            |
|                      | i-thread                      | x-core            |
|-----------------------|-------------------------------|-------------------|</pre>
 
==Shaders==
 
===SB header===
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
|- bgcolor="#cccccc"
! Offset !! Size !! Description !! Example
|-
| 0x00 || 2 bytes || SB Version || 00 04 (00.04)
|-
| 0x02 || 2 bytes || Compiler Version || F9 F1 (63985)
|-
| 0x04 || 8 bytes || Association Hash || B2 09 E0 A5 00 00 00 00
|-
| 0x0C || 1 byte || Shader Type || 02
|-
| 0x0D || 1 byte || Code Type || 01
|-
| 0x0E || 1 byte || UseShaderResourceTable || 00/01 (true/false)
|-
| 0x0F || 1 byte || Compiler Type || 03
|-
| 0x10 || 4 bytes || Code Size || E8 00 00 00 (232)
|-
| 0x14 || 4 bytes || ? || 00 00 00 00
|-
| 0x18 || 12 bytes? || System Attribute Info - Num Threads || 40 00 01 00  01 00 00 00  00 00 00 00
|-
|}
<pre>
'''Shader Type'''
 
*(unknown)            0
*kShaderTypeVsShader  1
*kShaderTypeFsShader  2
*kShaderTypeCsShader  3
*kShaderTypeGsShader  4
*kShaderTypeHsShader  5
*kShaderTypeDsShader  6
 
 
'''Code type'''
 
*kCodeTypeIl  0
*kCodeTypeIsa  1
*kCodeTypeScu  2
 
 
'''UseShaderResourceTable'''
 
*false  0
*true  1
 
 
'''Compiler Type'''
 
*kCompilerTypeUnspecified 0
*kCompilerTypeOrbisPsslc  1
*kCompilerTypeOrbisEsslc  2
*kCompilerTypeOrbisWave  3
*kCompilerTypeOrbisCuAs  4</pre>
 
===GNM Header===
 
{| border="1" cellspacing="0" cellpadding="5" border="#999" class="wikitable" style="border:1px solid #999; border-collapse: collapse;"
|- bgcolor="#cccccc"
! Offset !! Size !! Description !! Example
|-
| 0x00 || 4 bytes || Magic || 72 64 68 53 Shdr
|-
| 0x04 || 4 bytes || Version || 00 07 00 02 (0007.0002)
|-
| 0x08 || 1 byte || Shader type || 04 (Compute)
|-
| 0x09 || 1 byte || Shader header size in DW || 0D (13)
|-
| 0x0A || 1 byte || Has shader aux data || 00/01 ? 
|-
| 0x0B || 1 byte || Target GPU types || 03 (Base|NEO)
|-
| 0x0C || 4 bytes || padding || 00 00 00 00
|-
|}

Revision as of 18:03, 30 September 2019

Rough draft

psfour2pstwo

idle detect

  • --detect-idle-vif
  • --detect-idle-ee
  • --detect-idle-iop
  • --detect-idle-intc
  • --detect-idle-chcr

other

  • --force-point-sampling
  • Project Snowblind US mipmap offset 0019506C bc1f loc_19508C

vu

Looks like VU sync always(?), not like ps2.

todo

seems to be like internal threads, not real threads. Emu print with that.

_____________________________________________________________________________
| Emotion Engine:       | Input Output Processor (iop)  | x Extra?          |
|-----------------------|-------------------------------|-------------------|
| e-dbg                 | i-fw                          | x-stdlib          |
| e-r59                 | i-debug                       | x-emu             |
| e-mem                 | i-cdvd                        | x-lpnr            |
| e-dmac                | i-dmac                        | x-cdvd            |
| e-timer               | i-gmif                        | x-isofs           |
| e-sio                 | i-intc                        | x-log             |
| e-dramc               | i-mem                         | x-mcd             |
| e-intc                | i-memcard                     | x-replay          |
| e-sif                 | i-mtap                        | x-rtc             |
| e-gif                 | i-pad                         | x-save            |
| e-vif0                | i-pif                         | x-osd             |
| e-vif1                | i-sched                       | x-snap            |
| e-ipu                 | i-sif                         | x-host            |
| e-jit                 | i-sio2                        | x-trphy           |
| e-hook                | i-timer                       | x-audio           |
| e-Lua                 | i-usb                         | x-pad             |
| e-gs                  | i-spu2                        | x-srvc            |
| e-sched               | i-EndSlice                    | x-dialog          |
|                       | i-r30                         | x-dlc             |
|                       | i-jit                         | x-stream          |
|                       | i-Lua                         | x-mem             |
|                       | i-thread                      | x-core            |
|-----------------------|-------------------------------|-------------------|

Shaders

SB header

Offset Size Description Example
0x00 2 bytes SB Version 00 04 (00.04)
0x02 2 bytes Compiler Version F9 F1 (63985)
0x04 8 bytes Association Hash B2 09 E0 A5 00 00 00 00
0x0C 1 byte Shader Type 02
0x0D 1 byte Code Type 01
0x0E 1 byte UseShaderResourceTable 00/01 (true/false)
0x0F 1 byte Compiler Type 03
0x10 4 bytes Code Size E8 00 00 00 (232)
0x14 4 bytes ? 00 00 00 00
0x18 12 bytes? System Attribute Info - Num Threads 40 00 01 00 01 00 00 00 00 00 00 00
'''Shader Type'''

*(unknown)             0
*kShaderTypeVsShader   1
*kShaderTypeFsShader   2
*kShaderTypeCsShader   3
*kShaderTypeGsShader   4
*kShaderTypeHsShader   5
*kShaderTypeDsShader   6


'''Code type'''

*kCodeTypeIl   0
*kCodeTypeIsa  1
*kCodeTypeScu  2


'''UseShaderResourceTable'''

*false  0
*true   1


'''Compiler Type'''

 
*kCompilerTypeUnspecified 0
*kCompilerTypeOrbisPsslc  1
*kCompilerTypeOrbisEsslc  2
*kCompilerTypeOrbisWave   3
*kCompilerTypeOrbisCuAs   4

GNM Header

Offset Size Description Example
0x00 4 bytes Magic 72 64 68 53 Shdr
0x04 4 bytes Version 00 07 00 02 (0007.0002)
0x08 1 byte Shader type 04 (Compute)
0x09 1 byte Shader header size in DW 0D (13)
0x0A 1 byte Has shader aux data 00/01 ?
0x0B 1 byte Target GPU types NEO)
0x0C 4 bytes padding 00 00 00 00