From 61479059f3991574db93f16ddefbcef8ce2f5400 Mon Sep 17 00:00:00 2001 From: nishikawa_takeshi Date: Thu, 11 Dec 2008 12:49:21 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=9E=E3=82=B9=E3=82=BF=E3=82=A8=E3=83=87?= =?UTF-8?q?=E3=82=A3=E3=82=BF:SRL=E3=82=AF=E3=83=A9=E3=82=B9=E3=82=92?= =?UTF-8?q?=E3=80=8C=E3=83=AC=E3=83=BC=E3=83=86=E3=82=A3=E3=83=B3=E3=82=B0?= =?UTF-8?q?=E8=A1=A8=E7=A4=BA=E4=B8=8D=E8=A6=81=E3=80=8D=E3=81=AB=E5=AF=BE?= =?UTF-8?q?=E5=BF=9C=E3=81=95=E3=81=9B=E3=81=9F=E3=80=82=E6=8F=90=E5=87=BA?= =?UTF-8?q?=E7=A2=BA=E8=AA=8D=E6=9B=B8=E3=81=A8GUI=E3=81=AF=E3=81=BE?= =?UTF-8?q?=E3=81=A0=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlToolsRED@70 7061adef-622a-194b-ae81-725974e89856 --- .../MasterEditorTWL/MasterEditorTWL.ncb | Bin 11340800 -> 11340800 bytes .../MasterEditorTWL/MasterEditorTWL.suo | Bin 68096 -> 67584 bytes .../MasterEditorTWL/Debug/BuildLog.htm | Bin 20262 -> 11882 bytes .../MasterEditorTWL/MasterEditorTWL/srl.cpp | 162 ++++++++++-------- .../MasterEditorTWL/MasterEditorTWL/srl.h | 11 +- .../MasterEditorTWL/utility.cpp | 58 +++++++ .../MasterEditorTWL/MasterEditorTWL/utility.h | 7 + 7 files changed, 167 insertions(+), 71 deletions(-) diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL.ncb b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL.ncb index 6cbc770776a90f57e5393236075ea77a1550625a..25bdeee44391fd47fd1556ba270a68c5798d66c8 100644 GIT binary patch delta 45355 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 diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL.suo b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL.suo index d36a376d308adf6edba5f7368a46f70d23dbb7d5..c6049c891dbd1ad37497fe66be5c34cf50a9bd22 100644 GIT binary patch delta 4447 zcmai%3tW}u9mn72J?C%}6z~Y9pdgx>C}3I+Q4iA?s0*|-?Si$uWv-uINP zaF$g#tB%;}PWi-6Q9~rc(J`u*Wm$Ja8Bi`XRt7k_#!ZB~dd(lB;PatEXbL1{j?U_u zynw<oE2u4WU~`}7vscetBmV`iA8v++;odDuu100KTHNqGt{byLlz7|3>8Um8O3t2qs^ymO^%+~j*-0yZRgfe) z-L4C&#LAND^U1RAXm~Kjoqcyt3zf9iBZppaxDt`|X4a{T?wqgGr@AqBm5{UQbnzYoUqCT$I_4&h{^8CspmE&zW^k6&jPK=Sx4?l0HSl{Ue`Wl;Nrdxmx{De^oPU zv@PCKd+Z2@wEOaNZ}DK?9R3GSGe${q@laP^*g?L>eW}=~TrntVRgc)Fo}GSoiz!xw z6=u!AW_?tC`O3#qb|xfcn)NGeTyn%Kk03Wzf#-bWNaZ8lDb#kXB9bqUHTJdP&-Ok9f-JoSc2_esYe>?^Y~$RC%9?!%Up^ErSjf zA?mWIPN%r4#J&82te+evanGLgmcOG0`X2bD^4w5$JKAGaO$$kimVx%WfwpJ>n1^m7 zq+nH=PW3u%Ih`KuVz;lLod$VqP^80&+k*y-((6}7DqmOF=qsyZbk(Y8C7%A@NZmT8 z_VluqE7TM`C0m9?t5|(-U5YK0`L|*IBX!oA@09;YTASksvS7<_>>mE}Rqe2*KJj&wG}SP3=dTLsU2 zs|^D$wYK1581&M0XzhpZ1066d3F+@3#t4*Rg9eatTc>e{$%oP zHf$Ey7L)HU0r_?)m#;!e%zs&bwduX!`*xbU6Hubol-L(g;vIPQ-~+=rQ+$0g4kOL5 zf9UL@{{Q;|lzrc(OU12j|4TAACr6@oz9to`q9xTEuIsmVQ@%x+fZAe$Sf^!8LdpiZ zK#v%<&M@|56MP$_TMc90SKyep@nLV&{8R};fta2p`yTBJ8)lf5NluzYJrR zqxi>j>bPNClMV39chS!zbM;~gdA(7pKk_v5fuWA;gqr0_mX0dC;jT`3W0~^)qstAL zUnP3mVXwkb+*1Dg@lBO`R4E_z5wyn$LF2R>M;JSTNH&bVCp>YAVcGDh1c*Gty2Fn! zY>Z*NKNg<&KEo2>r`gyOSe4dH1AY4%o@{OaD>dwC!}u~?2#-H&sbM$6-%o(pU>NqncB0rT;1^?ZgFQeoig-uz|xTN6Nx1wA)i6Q?-DW|#$ga+ znT~q!1fvTH^Vr<_u=tp9W;zh9f#-2J7E}~_KVDf zIBghgsnviB^0Nl=Z4Bt&Q z7^V|cgA2x9LZsAwcz)a*2w-zC)tuRRNSTLgL+{@2QBheq@C)%)y#xOX>3tuF>nDeJ zmxep=jVRYXESBSw-oY1GB(~JOl2RMf%(jz~`uLtr&z#2qhj|Ps86Odk0md1mzL&Y~ zSr==&1^{L9<3|@ADpwMfiNzKRpiQi?*9PN9<_nK1ecP-CF|(Y6hx>bY&PAnRoQCe$vHXhdft1&Y z&^UO$K*k%!jXcq?Uk9+Mh7}sdWnBc1rZcVC2J%2T0na!Sz%KbSTHhGf1@~8?V+=Q1 z7bThU-L5?8Ufb+sZ#!I})XF>t5m$syNu+9ccgym%4i3E aap`tnwpRgbQjb23w*F6>FINStJo|fkxx2jp delta 3808 zcmb`KdsI}{6~^zmb7y!6!+=vn3o_sXLRAnIqN0xRQ9&D!B_y#CLwpd8RkWi^QOhJ^ zv3aYK>7e))iwcYNN4d0NJ1)4KpP~&qDM|Fcai~ z0x%V{w6?aA+tgFE&^xBspkD{f3XBH62J8V7L=6=Nydn7$ga5>6~Oik`|;C{+n zcbg#lHJfzAP7-3YTcK*mj5@9di8wsPeW8NncuFxWmMjQOI+cvg;3_=G()D071o~}10aF8;^ZusWHxGBZq927&H z4;Fx5(_vRSiNoh9^t?@8E66Y?W#)yd={n_3T}`%`4%%9A6F!(W7exw#YCPZ2Uk_U` z4`ZnUUp0VgipEfU!5*rfZ=9SZnJ@%M+-Uj*}uAZMmPFoTc zhuY+j&BsItj~?4w=uJgoA`Ns+Fm@uQGFQeh?yeUX66^+iy$60T*r%@d!+!t{fDe_% zdA0Je%Ot#u@^va~oI%wyEMl>I@&0h(DH#c_QB_&yA->UKr_uUdh zm_3*^TFt~=qM~>b)oyi?^H>t4Mn#hING;W#sHLx>pt(;OXk3%_7nYgn%H!vNn z6#w#Vy4gKigwxv<4Zd#@{mR!=+31jtHFllmjEKMos$1VcH-|)+u&`;wusm5=VH4iI zRv`la{nR#!lxNoKydp*SWU4Ai<4-C_ztJlE+e5nl+impsjzT6`mx;lH~n z+ah>T4dKg9cM&;xoY1UjJVgDH?WQ2^!q5l8Do<}n)~l*?&&LLpeY%X?7(@4)ZqK`J za_(?aMB{tpSYxAu+al<*{x+)L<|v(xLR_79O&(S*T?WR2m4LP0;8%d}tp%((0k34X zb$~Ut*8t~j0<7^e-3-{gpe;`#Mqa75SBbo-?*nX~fVRXFh`C^$(hT@70PlGh+G+KO z9pED1XF2a{&<$J$tObJW;1O^G2>hcFM_(ZKpC8nW`_cTSIlfi? z?fy=J;tn{%|8r|c|K%H3W(qp>`B0jAGoLE1M|ZIM%ew2$f==f-sOVBhzYcQCr7@!F zh$u}!54a<#%0CT1P{mH=Ux$ATubRDJ*b4Zd!Ww^`$$)ogKAN!R0DM$oD+H|Z zVk`p4E7hJ?Vl4c#fNd_|L@u}xa6vxQu*P%M4OlA!tnn%>R`E;9b0g(|^GIna@Eer& zrccA-i0e91I**o%G5?p`lKj6G*Z~(CJ zykU*)G~k7J7O=*&?Gj(AYkt8CJgS)MTD=knz@Gzbmq6RY|3I7wc)MVYM~t@&w%edB zuMsgfd`D^A2=CF{MzhlR<#-EXdw}+R4|5_1oX9_DTyPNh0k8!qjpIPX4tT55G7yI$ zX6vOij(a0^z(1n2ClDtgX8XC)e8<*txZt^xsYIT*St_weX*@Esl;(!_FGFl3h1&D7 z_JmWAd#BrT1i#2zoe>K$XP0SDV56C<4ZwOCs?o&Ue%^0!rt3!O-~F~P7n%n?0&Mj_ z71u5zP5?b2ux65dPj%7FJQ^eUM^C!Wlnc+Fmr!Bm;trOx-Xy4S(hW~-uMTd?UFW|S zlzlL=<9n+Gt@U)Hy?@WA@drEH3+k?~6?FX>8+Pej8hp;taUGAqxy?qm>L>rVwn{JR zdPmQ0xfI-yPIZ@4$@!CL88hyH=-@fpb$%`_XueI>CBgE8@6Ez{%_)3Ki@z!Vj`5k4 zN0a}+;Yq?aNogGCA?C?9MQO7U7pT1F+U4;a;5Al@uhyZ!I5v~*6Zt7vueoQ`VUV*|x{O8Hh{;4R_zl#zgTIMvvCDQNr zy-w5TJ7`Umm0Azn#G$VnZOWTQm6t<18uDcC5Q;BafIkC5uyOJkH{bNX_I7WzS>)*d E0^{hEIRF3v diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/Debug/BuildLog.htm b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/Debug/BuildLog.htm index 8a3f2edadfa23a3e99dd7b3c3103d1fc495870b5..1180434697129818c96d3145980ac2d06c43129a 100644 GIT binary patch delta 283 zcmZ2BkMUK^1~WE669zK|Qw9?T10XbEFk~>9{M*EIa}C=rw#ln_WhNUK$!y*wD8`7X zZu3K-Vvw*o7VRsP!&oQFaj{LdU_CPVf(g%L0ds}TUo?w2G1YG_HwGJHfnkjGW)~|n zCZG;oj9U3t!->qCYGgRrI^aZRk5rjXRd3cKpkHeP8D(onoMu1BEsG7C{;Gm6*IPI0VXOYoCt5GL|2lv6oGr?X@jMI8pR#UaB$<|e|0=6-<{|QQ=xhH6W zk~E7GS%YnBWx)u5Nush0s$T;(EkBhS7wI3v+mdpg^-|1C>mzbNqb&xM>O8ZbQ$0R@ z_^z+{_lTcgiRtEh_mtY3@#cVT&3UXT%rrmJ6L2EfEodL&WU!lK9Rb!gUqp`PnAJFq zG&%t46_g=Im6zk=ThTc_+jWrN4EwYZ%aXzG3LWEjLIaW$yUmSClt6SLh+IYu^ z$hC{qPHJjWuVWt@eNw-MUEH4fWyQVLAFaCB2K}MUuKel=L@^sB*Er(X@WVmHcE z1WcMa91bb8Tnciq1#GF(8tA?wunmINkZASx7u?#nN#NQnB3D8xkv$d8O0|c=)sZ#D zKjM3_Eh3wpnWL#VY;nu?XYm6pp9!6Ah_CS9=fIfaPw}I;%Qm>;wj-3@|$pcboxo`ip%0A;{LVzDF0#f7&>CU@$_q{Mc^03 z@@iDq zemYGC+OUYdDL^(haIux~?wp^7n3Qqq+!;DFSG_4pz@7o71k^e#1-vIPZh>cl9)h}z zTW@kq(zA$5u>|BA?w!g3E71u_fYTj4vv%+jKyumTQ}M0%6+7`Ac4BFvGs7Pm0rMB*QrrJV6BEh+ diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.cpp b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.cpp index a96ce2d..684688e 100644 --- a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.cpp +++ b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.cpp @@ -312,79 +312,100 @@ ECSrlResult RCSrl::setRomInfo(void) this->hShared2SizeArray[5] = (this->pRomHeader->s.shared2_file5_size * unit) + unit; } - // カードリージョン - const u32 map = this->pRomHeader->s.card_region_bitmap; - this->IsRegionJapan = ((map & METWL_MASK_REGION_JAPAN) != 0)?true:false; - this->IsRegionAmerica = ((map & METWL_MASK_REGION_AMERICA) != 0)?true:false; - this->IsRegionEurope = ((map & METWL_MASK_REGION_EUROPE) != 0)?true:false; - this->IsRegionAustralia = ((map & METWL_MASK_REGION_AUSTRALIA) != 0)?true:false; + // ペアレンタルコントロール情報の取得 - // ペアレンタルコントロール - this->setParentalControlInfo(); + const u32 region = this->pRomHeader->s.card_region_bitmap; - return ECSrlResult::NOERROR; -} // ECSrlResult RCSrl::setRomInfo(void) - -// ROMヘッダ内のペアレンタルコントロール情報をフィールドに反映させる -void RCSrl::setParentalControlInfo(void) -{ - // リージョンに含まれていないものは読み込まない + // すべての団体を「不可」に初期化 this->hArrayParentalIndex = gcnew cli::array(PARENTAL_CONTROL_INFO_SIZE); - - int i; for( i=0; i < PARENTAL_CONTROL_INFO_SIZE; i++ ) { this->hArrayParentalIndex[i] = -1; } - // リージョンに含まれている団体をリストアップ - u32 region = this->pRomHeader->s.card_region_bitmap; - switch( region ) + // リージョンとレーティングを取得 + if( this->setRegionInfo( region ) ) { - case METWL_MASK_REGION_JAPAN: - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_CERO ); // リージョンに含まれない団体の情報は読み込まない - break; + this->setUnnecessaryRatingInfo( region ); // レーティング表示が不要かどうかを調べる(これがないと全年齢と区別できない) + if( !this->IsUnnecessaryRating ) + { + this->setRatingInfo( region ); // リージョンに含まれる団体のレーティング情報を取得 + } + } - case METWL_MASK_REGION_AMERICA: - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_ESRB ); - break; + return ECSrlResult::NOERROR; +} // ECSrlResult RCSrl::setRomInfo(void) - case METWL_MASK_REGION_EUROPE: - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_USK ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_GEN ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_PRT ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_BBFC ); - break; +// ROMヘッダ内のリージョン情報をフィールドに反映させる +bool RCSrl::setRegionInfo( u32 region ) +{ + this->IsRegionJapan = ((region & METWL_MASK_REGION_JAPAN) != 0)?true:false; + this->IsRegionAmerica = ((region & METWL_MASK_REGION_AMERICA) != 0)?true:false; + this->IsRegionEurope = ((region & METWL_MASK_REGION_EUROPE) != 0)?true:false; + this->IsRegionAustralia = ((region & METWL_MASK_REGION_AUSTRALIA) != 0)?true:false; - case METWL_MASK_REGION_AUSTRALIA: - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_OFLC ); - break; + // リージョンに含まれる団体がなかったらリージョンは不正 + if( MasterEditorTWL::getOgnListInRegion( region ) == nullptr ) + { + this->hParentalErrorList->Add( gcnew RCMrcError( + "カードリージョン", 0x1b0, 0x1b3, "仕向地の組み合わせが不正です。ペアレンタルコントロール情報は無視して読み込まれました。", + "Card Region", "Illigal Region. Parental Control Information is ignored in reading.", true, true ) ); + return false; + } + return true; +} - case (METWL_MASK_REGION_EUROPE|METWL_MASK_REGION_AUSTRALIA): - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_USK ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_GEN ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_PRT ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_BBFC ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_OFLC ); - break; +// ROMヘッダ内のレーティング表示不要フラグを調べてフィールドに反映させる +void RCSrl::setUnnecessaryRatingInfo( u32 region ) +{ + System::Collections::Generic::List ^ognlist = MasterEditorTWL::getOgnListInRegion( region ); + if( ognlist == nullptr ) // リストがnullptrなら不正 + { + return; + } -#if defined(METWL_VER_APPTYPE_SYSTEM) || defined(METWL_VER_APPTYPE_SECURE) || defined(METWL_VER_APPTYPE_LAUNCHER) - case METWL_MASK_REGION_ALL: - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_CERO ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_ESRB ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_USK ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_GEN ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_PRT ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_PEGI_BBFC ); - this->setOneRatingOrgInfo( OS_TWL_PCTL_OGN_OFLC ); - break; -#endif //#if defined(METWL_VER_APPTYPE_SYSTEM) || defined(METWL_VER_APPTYPE_SECURE) || defined(METWL_VER_APPTYPE_LAUNCHER) + // ROMヘッダのフラグを調べる + this->IsUnnecessaryRating = (this->pRomHeader->s.unnecessary_rating_display != 0)?true:false; + if( !this->IsUnnecessaryRating ) + { + return; // 不要でないならこれ以降のチェックは必要ない(レーティング情報の取得に移る) + } - default: - this->hParentalErrorList->Add( gcnew RCMrcError( - "カードリージョン", 0x1b0, 0x1b3, "仕向地の組み合わせが不正です。ペアレンタルコントロール情報は無視して読み込まれました。", - "Card Region", "Illigal Region. Parental Control Information is ignored in reading.", true, true ) ); - break; + // リージョンに含まれる団体のレーティング情報に余計なデータが登録されていないかチェック + bool noerror = false; + for each( int ogn in ognlist ) + { + bool b = false; + if( this->pRomHeader->s.parental_control_rating_info[ ogn ] == (OS_TWL_PCTL_OGNINFO_ENABLE_MASK | 0) ) // 全年齢しか許さない + { + b = true; + } + noerror = noerror | b; // すべて全年齢となっていないときはエラーとみなす + } + if( !noerror ) + { + this->IsUnnecessaryRating = false; // エラーのときはROMヘッダに不要と登録されていても無視する + this->hParentalErrorList->Add( gcnew RCMrcError( + "ペアレンタルコントロール情報", 0x1b0, 0x1b3, "レーティング表示が不要かどうかを判断できません。再設定してください。", + "Parental Control Info.", "Can't judge wheather rating display is unnecessary.", true, true ) ); + } +} + +// ROMヘッダ内のペアレンタルコントロール情報をフィールドに反映させる +void RCSrl::setRatingInfo( u32 region ) +{ + // リージョンに含まれている団体をリストアップ + // (含まれていない団体のレーティングを読み込まない) + System::Collections::Generic::List ^ognlist = MasterEditorTWL::getOgnListInRegion( region ); + if( ognlist == nullptr ) // リストがnullptrなら不正 + { + return; + } + + // リージョンに含まれる団体のレーティング情報を調べる + for each( int ogn in ognlist ) + { + this->setOneRatingOrgInfo( ogn ); } } @@ -504,23 +525,30 @@ void RCSrl::setParentalControlHeader(void) int i; for( i=0; i < PARENTAL_CONTROL_INFO_SIZE; i++ ) { - cli::array ^ages = MasterEditorTWL::getOgnRatingAges( i ); // 設定可能年齢リストを取得 - u8 rating; - if( this->hArrayParentalIndex[i] < 0 ) // 未定義 + if( this->IsUnnecessaryRating ) { - rating = 0x00; + rating = OS_TWL_PCTL_OGNINFO_ENABLE_MASK | 0; // レーティング表示が不要のときは「全年齢」と同じ値にする } else { - int index = this->hArrayParentalIndex[i]; - if( index == ages->Length ) // 審査中 + cli::array ^ages = MasterEditorTWL::getOgnRatingAges( i ); // 設定可能年齢リストを取得 + + if( this->hArrayParentalIndex[i] < 0 ) // 未定義 { - rating = OS_TWL_PCTL_OGNINFO_ENABLE_MASK | OS_TWL_PCTL_OGNINFO_ALWAYS_MASK; + rating = 0x00; } - else // レーティング年齢を設定 + else { - rating = OS_TWL_PCTL_OGNINFO_ENABLE_MASK | ages[ index ]; + int index = this->hArrayParentalIndex[i]; + if( index == ages->Length ) // 審査中 + { + rating = OS_TWL_PCTL_OGNINFO_ENABLE_MASK | OS_TWL_PCTL_OGNINFO_ALWAYS_MASK; + } + else // レーティング年齢を設定 + { + rating = OS_TWL_PCTL_OGNINFO_ENABLE_MASK | ages[ index ]; + } } } this->pRomHeader->s.parental_control_rating_info[i] = rating; diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.h b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.h index 0eaac8d..4f79798 100644 --- a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.h +++ b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/srl.h @@ -275,7 +275,8 @@ namespace MasterEditorTWL property System::String ^hLatency; // MROM/1TROM/Illegal // ペアレンタルコントロール - property cli::array ^hArrayParentalIndex; // 表示用のコンボボックスのインデックス + property cli::array ^hArrayParentalIndex; // 表示用のコンボボックスのインデックス + property System::Boolean IsUnnecessaryRating; // レーティング表示不要フラグ // TWL専用情報 一部編集可能 property System::UInt32 NormalRomOffset; @@ -364,9 +365,11 @@ namespace MasterEditorTWL ECSrlResult setRomHeader(void); // ROMヘッダにROM固有情報フィールドの値を反映させる // ペアレンタルコントロールの設定 - void setParentalControlInfo(void); - void setOneRatingOrgInfo( int ogn ); - void setParentalControlHeader(void); + bool setRegionInfo( u32 region ); // リージョンを取得(エラー情報も登録) @ret リージョンが正しいかどうか + void setUnnecessaryRatingInfo( u32 region ); // レーティング情報が不要かどうかを取得(エラー情報も登録) + void setRatingInfo( u32 region ); // リージョンに含まれる団体のレーティングを取得 + void setOneRatingOrgInfo( int ogn ); // 1つの団体のレーティングを取得(エラー情報も登録) + void setParentalControlHeader(void); // ROMヘッダにフィールドの値を反映させる // ROMヘッダの更新 ECSrlResult calcRomHeaderCRC(void); // ROMヘッダのCRCを再計算 diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.cpp b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.cpp index f4ccdfa..86778d2 100644 --- a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.cpp +++ b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.cpp @@ -181,6 +181,64 @@ System::String^ MasterEditorTWL::getOgnName( int ogn ) return name; } +// +// リージョンに含まれる団体のリストを返す(不正なリージョンのときはnullptr) +// +// @arg [in] リージョン +// +System::Collections::Generic::List^ MasterEditorTWL::getOgnListInRegion( u32 region ) +{ + System::Collections::Generic::List ^list = gcnew System::Collections::Generic::List; + + switch( region ) + { + case METWL_MASK_REGION_JAPAN: + list->Add( OS_TWL_PCTL_OGN_CERO ); // リージョンに含まれない団体の情報は読み込まない + break; + + case METWL_MASK_REGION_AMERICA: + list->Add( OS_TWL_PCTL_OGN_ESRB ); + break; + + case METWL_MASK_REGION_EUROPE: + list->Add( OS_TWL_PCTL_OGN_USK ); + list->Add( OS_TWL_PCTL_OGN_PEGI_GEN ); + list->Add( OS_TWL_PCTL_OGN_PEGI_PRT ); + list->Add( OS_TWL_PCTL_OGN_PEGI_BBFC ); + break; + + case METWL_MASK_REGION_AUSTRALIA: + list->Add( OS_TWL_PCTL_OGN_OFLC ); + break; + + case (METWL_MASK_REGION_EUROPE|METWL_MASK_REGION_AUSTRALIA): + list->Add( OS_TWL_PCTL_OGN_USK ); + list->Add( OS_TWL_PCTL_OGN_PEGI_GEN ); + list->Add( OS_TWL_PCTL_OGN_PEGI_PRT ); + list->Add( OS_TWL_PCTL_OGN_PEGI_BBFC ); + list->Add( OS_TWL_PCTL_OGN_OFLC ); + break; + +#if defined(METWL_VER_APPTYPE_SYSTEM) || defined(METWL_VER_APPTYPE_SECURE) || defined(METWL_VER_APPTYPE_LAUNCHER) + case METWL_MASK_REGION_ALL: + + list->Add( OS_TWL_PCTL_OGN_CERO ); + list->Add( OS_TWL_PCTL_OGN_ESRB ); + list->Add( OS_TWL_PCTL_OGN_USK ); + list->Add( OS_TWL_PCTL_OGN_PEGI_GEN ); + list->Add( OS_TWL_PCTL_OGN_PEGI_PRT ); + list->Add( OS_TWL_PCTL_OGN_PEGI_BBFC ); + list->Add( OS_TWL_PCTL_OGN_OFLC ); + break; +#endif //#if defined(METWL_VER_APPTYPE_SYSTEM) || defined(METWL_VER_APPTYPE_SECURE) || defined(METWL_VER_APPTYPE_LAUNCHER) + + default: + list = nullptr; + break; + } + return list; +} + // // バイト列に特定のパターンが含まれるかどうかマッチングする // diff --git a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.h b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.h index 99c4628..1fb36e6 100644 --- a/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.h +++ b/build/tools/MasterEditor/MasterEditorTWL/MasterEditorTWL/utility.h @@ -55,6 +55,13 @@ namespace MasterEditorTWL // System::String^ getOgnName( int ogn ); + // + // リージョンに含まれる団体のリストを返す(不正なリージョンのときはnullptr) + // + // @arg [in] リージョン + // + System::Collections::Generic::List^ getOgnListInRegion( u32 region ); + // // バイト列に特定のパターンが含まれるかどうかマッチングする //