From: Jordan Rabet Date: Thu, 13 Mar 2014 14:34:01 +0000 (+0100) Subject: SHDR : uniform table (untested) X-Git-Tag: v0.2.0~165 X-Git-Url: https://chaos.moe/g/?a=commitdiff_plain;h=1a01acbd8e026cf09634606fcf5a3473c2243d94;p=corbenik%2Fctrulib.git SHDR : uniform table (untested) --- diff --git a/libctru/include/ctr/SHDR.h b/libctru/include/ctr/SHDR.h index 34400bd..92c4687 100644 --- a/libctru/include/ctr/SHDR.h +++ b/libctru/include/ctr/SHDR.h @@ -32,6 +32,12 @@ typedef struct{ u32 header; }DVLE_outEntry_s; +typedef struct{ + u32 symbolOffset; + u16 startReg; + u16 endReg; +}DVLE_uniformEntry_s; + typedef struct{ SHDR_type type; u32 mainOffset, endmainOffset; @@ -39,6 +45,9 @@ typedef struct{ DVLE_constEntry_s* constTableData; u32 outTableSize; DVLE_outEntry_s* outTableData; + u32 uniformTableSize; + DVLE_uniformEntry_s* uniformTableData; + char* symbolTableData; }DVLE_s; typedef struct{ diff --git a/libctru/source/SHDR.c b/libctru/source/SHDR.c index b644f8e..446a6ce 100644 --- a/libctru/source/SHDR.c +++ b/libctru/source/SHDR.c @@ -43,6 +43,11 @@ DVLB_s* SHDR_ParseSHBIN(u32* shbinData, u32 shbinSize) dvle->outTableSize=dvleData[11]; dvle->outTableData=(DVLE_outEntry_s*)&dvleData[dvleData[10]/4]; + + dvle->uniformTableSize=dvleData[13]; + dvle->uniformTableData=(DVLE_uniformEntry_s*)&dvleData[dvleData[12]/4]; + + dvle->symbolTableData=(char*)&dvleData[dvleData[14]/4]; } goto exit;