Skip to content

Instantly share code, notes, and snippets.

@anarsoul
Created December 24, 2019 19:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anarsoul/a436accf73781dc240335541fb0012ff to your computer and use it in GitHub Desktop.
Save anarsoul/a436accf73781dc240335541fb0012ff to your computer and use it in GitHub Desktop.
VS:
/* 0x10010400 (0x00000000) */ 0x00028000 0x50000000 /* SEMAPHORE_BEGIN_1 */ <-- sets semaphore to 2
/* 0x10010408 (0x00000008) */ 0x00000001 0x50000000 /* SEMAPHORE_BEGIN_2 */ <-- wait for sem to be 1
PLBU:
/* 0x10012400 (0x00000000) */ 0x00000200 0x1000010b /* UNKNOWN_2 (PRIMITIVE_SETUP INIT?) */
/* 0x10012408 (0x00000008) */ 0x00000001 0x1000010c /* BLOCK_STEP: shift_min: 0 (0x0), shift_h: 0 (0x0), shift_w: 1 (0x1) */
/* 0x10012410 (0x00000010) */ 0x77004300 0x10000109 /* TILED_DIMENSIONS: tiled_w: 120 (0x78), tiled_h: 68 (0x44) */
/* 0x10012418 (0x00000018) */ 0x0000003c 0x30000000 /* BLOCK_STRIDE: block_w: 60 (0x3c) */
/* 0x10012420 (0x00000020) */ 0x10838000 0x28000fef /* ARRAY_ADDRESS: gp_stream: 0x10838000, block_num (block_w * block_h): 4080 (0xff0) */
/* 0x10012428 (0x00000028) */ 0x00000000 0x10000107 /* VIEWPORT_LEFT: viewport_left: 0.000000 (0xbe77642c) */
/* 0x10012430 (0x00000030) */ 0x44f00000 0x10000108 /* VIEWPORT_RIGHT: viewport_right: 1920.000000 (0xbe776434) */
/* 0x10012438 (0x00000038) */ 0x00000000 0x10000105 /* VIEWPORT_BOTTOM: viewport_bottom: 0.000000 (0xbe77643c) */
/* 0x10012440 (0x00000040) */ 0x44870000 0x10000106 /* VIEWPORT_TOP: viewport_top: 1080.000000 (0xbe776444) */
/* 0x10012448 (0x00000048) */ 0x00010002 0x60000000 /* ARRAYS_SEMAPHORE_BEGIN */ <-- wait for sem is 2, decrease
VS:
/* 0x10010410 (0x00000010) */ 0x1001a5c0 0x300c0000 /* UNIFORMS_ADDRESS: address: 0x1001a5c0, size: 192 (0xc0) */
/* 0x10010418 (0x00000018) */ 0x10017740 0x403d0000 /* SHADER_ADDRESS: address: 0x10017740, size: 976 (0x3d0) */
/* 0x10010420 (0x00000020) */ 0x0330f000 0x10000040 /* SHADER_INFO: prefetch: enabled, size: 976 (0x3d0) */
/* 0x10010428 (0x00000028) */ 0x00000000 0x10000042 /* VARYING_ATTRIBUTE_COUNT: nr_vary: 1 (0x1), nr_attr: 1 (0x1) */
/* 0x10010430 (0x00000030) */ 0x00000003 0x10000041 /* UNKNOWN_1 */
/* 0x10010438 (0x00000038) */ 0x1001a680 0x20020000 /* ATTRIBUTES_ADDRESS: address: 0x1001a680, size: 1 (0x1) */
/* 0x10010440 (0x00000040) */ 0x1001a690 0x20020008 /* VARYINGS_ADDRESS: address: 0x1001a690, size: 1 (0x1) */
/* 0x10010448 (0x00000048) */ 0x12000000 0x00000000 /* DRAW: num: 18 (0x12), index_draw: false */
/* 0x10010450 (0x00000050) */ 0x00000000 0x60000000 /* UNKNOWN_2 */
/* 0x10010458 (0x00000058) */ 0x00000000 0x50000000 /* SEMAPHORE_END: index_draw disabled */ <-- wait for sem to be 0
PLBU:
/* 0x10012450 (0x00000050) */ 0x00022200 0x1000010b /* PRIMITIVE_SETUP: low_prim: false, cull: 2 (0x2), index_size: 1 (0x00000001) */
/* 0x10012458 (0x00000058) */ 0x1001a580 0x81001a44 /* RSW_VERTEX_ARRAY: rsw: 0x1001a580, gl_pos: 0x1001a440 */
/* 0x10012460 (0x00000060) */ 0x00000000 0x1000010a /* UNKNOWN_1 */
/* 0x10012468 (0x00000068) */ 0x12000000 0x00050000 /* DRAW_ARRAYS: count: 18, start: 0, mode: 5 (0x5) */
/* 0x10012470 (0x00000070) */ 0x00010001 0x60000000 /* ARRAYS_SEMAPHORE_END */ <-- sem is 1, decrease, sem is now 0
VS:
/* 0x10010460 (0x00000060) */ 0x1001a840 0x300c0000 /* UNIFORMS_ADDRESS: address: 0x1001a840, size: 192 (0xc0) */
/* 0x10010468 (0x00000068) */ 0x10017740 0x403d0000 /* SHADER_ADDRESS: address: 0x10017740, size: 976 (0x3d0) */
/* 0x10010470 (0x00000070) */ 0x0330f000 0x10000040 /* SHADER_INFO: prefetch: enabled, size: 976 (0x3d0) */
/* 0x10010478 (0x00000078) */ 0x00000000 0x10000042 /* VARYING_ATTRIBUTE_COUNT: nr_vary: 1 (0x1), nr_attr: 1 (0x1) */
/* 0x10010480 (0x00000080) */ 0x00000003 0x10000041 /* UNKNOWN_1 */
/* 0x10010488 (0x00000088) */ 0x1001a900 0x20020000 /* ATTRIBUTES_ADDRESS: address: 0x1001a900, size: 1 (0x1) */
/* 0x10010490 (0x00000090) */ 0x1001a910 0x20020008 /* VARYINGS_ADDRESS: address: 0x1001a910, size: 1 (0x1) */
/* 0x10010498 (0x00000098) */ 0x12000001 0x00000000 /* DRAW: num: 18 (0x12), index_draw: false */
/* 0x100104a0 (0x000000a0) */ 0x00000000 0x60000000 /* UNKNOWN_2 */
/* 0x100104a8 (0x000000a8) */ 0x00018000 0x50000000 /* SEMAPHORE_END: index_draw disabled */ <-- wait for any, increase by 1, sem is not 1
PLBU:
/* 0x10012478 (0x00000078) */ 0x00022600 0x1000010b /* PRIMITIVE_SETUP: low_prim: false, cull: 2 (0x2), index_size: 3 (0x00000003) */
/* 0x10012480 (0x00000080) */ 0x1001a800 0x81001a6c /* RSW_VERTEX_ARRAY: rsw: 0x1001a800, gl_pos: 0x1001a6c0 */
/* 0x10012488 (0x00000088) */ 0x1001a6c0 0x10000100 /* INDEXED_DEST: gl_pos: 0x1001a6c0 */
/* 0x10012490 (0x00000090) */ 0x00010001 0x60000000 /* ARRAYS_SEMAPHORE_END */ <--- wait for sem to become 1
/* 0x10012498 (0x00000098) */ 0x10018d00 0x10000101 /* INDICES: indices: 0x10018d00 */
/* 0x100124a0 (0x000000a0) */ 0x12000000 0x00250000 /* DRAW_ELEMENTS: count: 18, start: 0, mode: 5 (0x5) */
/* 0x100124a8 (0x000000a8) */ 0x00022600 0x1000010b /* PRIMITIVE_SETUP: low_prim: false, cull: 2 (0x2), index_size: 3 (0x00000003) */
<......>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment