Talk:Qt Resource Container (QRC): Difference between revisions
Jump to navigation
Jump to search
(o0) |
(VPO FPO Decoding) |
||
Line 10: | Line 10: | ||
***In the case you want to patch 1 byte... you are patching a huge area instead | ***In the case you want to patch 1 byte... you are patching a huge area instead | ||
***Using hardcoded offsets is a safe way to break compatility when the files changes in with newer firmwares and good for softbricking, there is no advise of incompatibility problems | ***Using hardcoded offsets is a safe way to break compatility when the files changes in with newer firmwares and good for softbricking, there is no advise of incompatibility problems | ||
==VPO FPO Decoding== | |||
If you are interested in decoding the vpo & fpo files, use cgc-disasm.exe (wrote by eustolio at: http://www.ps3hax.net/showthread.php?t=25618&p=229602&viewfull=1#post229602 ) | |||
sce-cgcdisasm -o outfile imputfile (shader) | |||
# profile sce_vp_rsx | |||
# parameterCount 20 | |||
# instructionCount 4 | |||
# registerCount 1 | |||
# attributeInputMask Attr0 | |||
# attributeOutputMask None | |||
# userClipMask 0: DISABLE, 1: DISABLE, 2: DISABLE, 3: DISABLE, 4: DISABLE, 5: DISABLE | |||
index: type: name: semantic: res or resIndex | |||
#0: float4: oldpos: in.POSITION0: ATTR0 | |||
#1: float4: newpos: out.POSITION0: HPOS | |||
#2: float2: oldcrd: in.TEXCOORD0: ATTR8 | |||
#3: float4: oldnrm: in.TEXCOORD1: ATTR9 | |||
#4: float4: newcol: out.COLOR0: COL0 | |||
#5: float: _Fresnel: : UNDEFINED | |||
#6: float: _Falloff: : UNDEFINED | |||
#7: float: _Brightness: : UNDEFINED | |||
#8: float: _MipmapBias: : UNDEFINED | |||
#9: float4: _Eye: : UNDEFINED | |||
#10: float4x4: _MVM: : C[256] | |||
#11: float4: _MVM[0]: : C[256] | |||
#12: float4: _MVM[1]: : C[257] | |||
#13: float4: _MVM[2]: : C[258] | |||
#14: float4: _MVM[3]: : C[259] | |||
#15: float4x4: _MIT: : UNDEFINED | |||
#16: float4: _MIT[0]: : UNDEFINED | |||
#17: float4: _MIT[1]: : UNDEFINED | |||
#18: float4: _MIT[2]: : UNDEFINED | |||
#19: float4: _MIT[3]: : UNDEFINED | |||
DP4 o[0].w, v[0], c[259]; | |||
DP4 o[0].z, v[0], c[258]; | |||
DP4 o[0].y, v[0], c[257]; | |||
DP4 o[0].x, v[0], c[256]; | |||
END | |||
sce-cgcdisasm -h outfile imputfile (for header) | |||
#ifndef _lib_moyou_lines0_params_H_ | |||
#define _lib_moyou_lines0_params_H_ | |||
typedef struct { | |||
int res; | |||
int resindex; | |||
int dvindex; | |||
} CellGcm_lib_moyou_lines0_params_Table; | |||
typedef struct { | |||
float defaultvalue[4]; | |||
} CellGcm_lib_moyou_lines0_params_DefaultValueTable; | |||
enum CellGcm_lib_moyou_lines0_params_Enum { | |||
CELL_GCM_lib_moyou_lines0_params_oldpos = 0, | |||
CELL_GCM_lib_moyou_lines0_params_newpos = 1, | |||
CELL_GCM_lib_moyou_lines0_params_oldcrd = 2, | |||
CELL_GCM_lib_moyou_lines0_params_oldnrm = 3, | |||
CELL_GCM_lib_moyou_lines0_params_newcol = 4, | |||
CELL_GCM_lib_moyou_lines0_params___Fresnel = 5, | |||
CELL_GCM_lib_moyou_lines0_params___Falloff = 6, | |||
CELL_GCM_lib_moyou_lines0_params___Brightness = 7, | |||
CELL_GCM_lib_moyou_lines0_params___MipmapBias = 8, | |||
CELL_GCM_lib_moyou_lines0_params___Eye = 9, | |||
CELL_GCM_lib_moyou_lines0_params___MVM = 10, | |||
CELL_GCM_lib_moyou_lines0_params___MVM_0 = 11, | |||
CELL_GCM_lib_moyou_lines0_params___MVM_1 = 12, | |||
CELL_GCM_lib_moyou_lines0_params___MVM_2 = 13, | |||
CELL_GCM_lib_moyou_lines0_params___MVM_3 = 14, | |||
CELL_GCM_lib_moyou_lines0_params___MIT = 15, | |||
CELL_GCM_lib_moyou_lines0_params___MIT_0 = 16, | |||
CELL_GCM_lib_moyou_lines0_params___MIT_1 = 17, | |||
CELL_GCM_lib_moyou_lines0_params___MIT_2 = 18, | |||
CELL_GCM_lib_moyou_lines0_params___MIT_3 = 19, | |||
}; | |||
CellGcm_lib_moyou_lines0_params_Table lib_moyou_lines0_params[20] = { | |||
{2113, -1, -1}, /* index:0, "oldpos" */ | |||
{2243, -1, -1}, /* index:1, "newpos" */ | |||
{2121, -1, -1}, /* index:2, "oldcrd" */ | |||
{2122, -1, -1}, /* index:3, "oldnrm" */ | |||
{2245, -1, -1}, /* index:4, "newcol" */ | |||
{3256, -1, -1}, /* index:5, "_Fresnel" */ | |||
{3256, -1, -1}, /* index:6, "_Falloff" */ | |||
{3256, -1, -1}, /* index:7, "_Brightness" */ | |||
{3256, -1, -1}, /* index:8, "_MipmapBias" */ | |||
{3256, -1, -1}, /* index:9, "_Eye" */ | |||
{2178, 256, -1}, /* index:10, "_MVM" */ | |||
{2178, 256, -1}, /* index:11, "_MVM[0]" */ | |||
{2178, 257, -1}, /* index:12, "_MVM[1]" */ | |||
{2178, 258, -1}, /* index:13, "_MVM[2]" */ | |||
{2178, 259, -1}, /* index:14, "_MVM[3]" */ | |||
{3256, -1, -1}, /* index:15, "_MIT" */ | |||
{3256, -1, -1}, /* index:16, "_MIT[0]" */ | |||
{3256, -1, -1}, /* index:17, "_MIT[1]" */ | |||
{3256, -1, -1}, /* index:18, "_MIT[2]" */ | |||
{3256, -1, -1}, /* index:19, "_MIT[3]" */ | |||
}; | |||
CellGcm_lib_moyou_lines0_params_DefaultValueTable lib_moyou_lines0_params_default_value[0] = { | |||
}; | |||
#endif //_lib_moyou_lines0_params_H_ |
Revision as of 09:21, 14 November 2013
External Links
- QRC modding by eustolio: http://www.scenespain.net/foro/tutoriales-ps3/tutorial-xmb-custom-cambia-el-color-e-iconos-base-del-xmb/ (2011 may 29)
- Corrections: None :)
- XMB wave modding by glowball: http://www.ps3hax.net/showthread.php?t=25618 (2011 july 1) and http://www.ps3hax.net/showthread.php?t=58673 (2013 july 4)
- Corrections:
- The concept of PAL/NTSC wave is wrong. The wave is common for all PS3 models, resolutions, aspect ratios, and regions. The 8 bytes at the start of the file doesnt has any relationship with PAL/NTSC
- There is no javascript inside the QRC container, the supposed .js file used in glowball method is a chunk of data containing several .mnu files (included the padding between them)
- The idea of an "imaginary" javascript hides the real explain of the structure or what you are patching, making users to dont understand a word and promoting the "blind testing"
- In the case you want to patch 1 byte... you are patching a huge area instead
- Using hardcoded offsets is a safe way to break compatility when the files changes in with newer firmwares and good for softbricking, there is no advise of incompatibility problems
- Corrections:
VPO FPO Decoding
If you are interested in decoding the vpo & fpo files, use cgc-disasm.exe (wrote by eustolio at: http://www.ps3hax.net/showthread.php?t=25618&p=229602&viewfull=1#post229602 )
sce-cgcdisasm -o outfile imputfile (shader)
# profile sce_vp_rsx # parameterCount 20 # instructionCount 4 # registerCount 1 # attributeInputMask Attr0 # attributeOutputMask None # userClipMask 0: DISABLE, 1: DISABLE, 2: DISABLE, 3: DISABLE, 4: DISABLE, 5: DISABLE index: type: name: semantic: res or resIndex #0: float4: oldpos: in.POSITION0: ATTR0 #1: float4: newpos: out.POSITION0: HPOS #2: float2: oldcrd: in.TEXCOORD0: ATTR8 #3: float4: oldnrm: in.TEXCOORD1: ATTR9 #4: float4: newcol: out.COLOR0: COL0 #5: float: _Fresnel: : UNDEFINED #6: float: _Falloff: : UNDEFINED #7: float: _Brightness: : UNDEFINED #8: float: _MipmapBias: : UNDEFINED #9: float4: _Eye: : UNDEFINED #10: float4x4: _MVM: : C[256] #11: float4: _MVM[0]: : C[256] #12: float4: _MVM[1]: : C[257] #13: float4: _MVM[2]: : C[258] #14: float4: _MVM[3]: : C[259] #15: float4x4: _MIT: : UNDEFINED #16: float4: _MIT[0]: : UNDEFINED #17: float4: _MIT[1]: : UNDEFINED #18: float4: _MIT[2]: : UNDEFINED #19: float4: _MIT[3]: : UNDEFINED DP4 o[0].w, v[0], c[259]; DP4 o[0].z, v[0], c[258]; DP4 o[0].y, v[0], c[257]; DP4 o[0].x, v[0], c[256]; END
sce-cgcdisasm -h outfile imputfile (for header)
#ifndef _lib_moyou_lines0_params_H_ #define _lib_moyou_lines0_params_H_ typedef struct { int res; int resindex; int dvindex; } CellGcm_lib_moyou_lines0_params_Table; typedef struct { float defaultvalue[4]; } CellGcm_lib_moyou_lines0_params_DefaultValueTable; enum CellGcm_lib_moyou_lines0_params_Enum { CELL_GCM_lib_moyou_lines0_params_oldpos = 0, CELL_GCM_lib_moyou_lines0_params_newpos = 1, CELL_GCM_lib_moyou_lines0_params_oldcrd = 2, CELL_GCM_lib_moyou_lines0_params_oldnrm = 3, CELL_GCM_lib_moyou_lines0_params_newcol = 4, CELL_GCM_lib_moyou_lines0_params___Fresnel = 5, CELL_GCM_lib_moyou_lines0_params___Falloff = 6, CELL_GCM_lib_moyou_lines0_params___Brightness = 7, CELL_GCM_lib_moyou_lines0_params___MipmapBias = 8, CELL_GCM_lib_moyou_lines0_params___Eye = 9, CELL_GCM_lib_moyou_lines0_params___MVM = 10, CELL_GCM_lib_moyou_lines0_params___MVM_0 = 11, CELL_GCM_lib_moyou_lines0_params___MVM_1 = 12, CELL_GCM_lib_moyou_lines0_params___MVM_2 = 13, CELL_GCM_lib_moyou_lines0_params___MVM_3 = 14, CELL_GCM_lib_moyou_lines0_params___MIT = 15, CELL_GCM_lib_moyou_lines0_params___MIT_0 = 16, CELL_GCM_lib_moyou_lines0_params___MIT_1 = 17, CELL_GCM_lib_moyou_lines0_params___MIT_2 = 18, CELL_GCM_lib_moyou_lines0_params___MIT_3 = 19, }; CellGcm_lib_moyou_lines0_params_Table lib_moyou_lines0_params[20] = { {2113, -1, -1}, /* index:0, "oldpos" */ {2243, -1, -1}, /* index:1, "newpos" */ {2121, -1, -1}, /* index:2, "oldcrd" */ {2122, -1, -1}, /* index:3, "oldnrm" */ {2245, -1, -1}, /* index:4, "newcol" */ {3256, -1, -1}, /* index:5, "_Fresnel" */ {3256, -1, -1}, /* index:6, "_Falloff" */ {3256, -1, -1}, /* index:7, "_Brightness" */ {3256, -1, -1}, /* index:8, "_MipmapBias" */ {3256, -1, -1}, /* index:9, "_Eye" */ {2178, 256, -1}, /* index:10, "_MVM" */ {2178, 256, -1}, /* index:11, "_MVM[0]" */ {2178, 257, -1}, /* index:12, "_MVM[1]" */ {2178, 258, -1}, /* index:13, "_MVM[2]" */ {2178, 259, -1}, /* index:14, "_MVM[3]" */ {3256, -1, -1}, /* index:15, "_MIT" */ {3256, -1, -1}, /* index:16, "_MIT[0]" */ {3256, -1, -1}, /* index:17, "_MIT[1]" */ {3256, -1, -1}, /* index:18, "_MIT[2]" */ {3256, -1, -1}, /* index:19, "_MIT[3]" */ }; CellGcm_lib_moyou_lines0_params_DefaultValueTable lib_moyou_lines0_params_default_value[0] = { }; #endif //_lib_moyou_lines0_params_H_