From f4817b0a5751f2436ec2ba3927c4adaeae886555 Mon Sep 17 00:00:00 2001 From: nishikawa_takeshi Date: Fri, 5 Sep 2008 10:25:53 +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:=E3=83=90=E3=82=A4=E3=83=88=E8=A1=A8?= =?UTF-8?q?=E7=A4=BA=E3=81=AE=E5=8D=98=E4=BD=8D=E9=96=93=E9=81=95=E3=81=84?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E3=80=82=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB?= =?UTF-8?q?=E3=82=B5=E3=82=A4=E3=82=BA=E3=83=81=E3=82=A7=E3=83=83=E3=82=AF?= =?UTF-8?q?=E3=82=92NAND=E3=82=A2=E3=83=97=E3=83=AA=E3=81=AB=E5=AF=BE?= =?UTF-8?q?=E5=BF=9C=E3=80=82=E8=AA=AD=E3=81=BF=E8=BE=BC=E3=81=BF=E6=99=82?= =?UTF-8?q?=E3=81=AE=E7=BD=B2=E5=90=8D=E3=83=81=E3=82=A7=E3=83=83=E3=82=AF?= =?UTF-8?q?=E6=A9=9F=E8=83=BD=E3=82=92=E8=BF=BD=E5=8A=A0(=E3=83=93?= =?UTF-8?q?=E3=83=AB=E3=83=89=E3=82=B9=E3=82=A4=E3=83=83=E3=83=81=E3=81=A7?= =?UTF-8?q?=E3=81=B2=E3=81=A8=E3=81=BE=E3=81=9AOFF=E3=81=AB=E3=81=97?= =?UTF-8?q?=E3=81=A6=E3=81=8A=E3=81=8F)=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/TwlIPL/trunk@2416 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../tools/MasterEditorTWL/MasterEditorTWL.ncb | Bin 11185152 -> 11185152 bytes .../tools/MasterEditorTWL/MasterEditorTWL.suo | Bin 44032 -> 44032 bytes .../MasterEditorTWL/Debug/BuildLog.htm | Bin 15654 -> 10644 bytes .../MasterEditorTWL/MasterEditorTWL/Form1.h | 252 ++++++++---------- .../MasterEditorTWL/Form1.resX | 18 -- .../MasterEditorTWL/Release/BuildLog.htm | Bin 15804 -> 15804 bytes .../MasterEditorTWL/MasterEditorTWL/common.h | 3 + .../MasterEditorTWL/MasterEditorTWL/lang.h | 6 +- .../MasterEditorTWL/MasterEditorTWL/srl.cpp | 129 +++++++-- .../MasterEditorTWL/MasterEditorTWL/srl.h | 6 +- .../MasterEditorTWL/utility.cpp | 57 ++++ .../MasterEditorTWL/MasterEditorTWL/utility.h | 9 + 12 files changed, 287 insertions(+), 193 deletions(-) diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL.ncb b/build/tools/MasterEditorTWL/MasterEditorTWL.ncb index a93290276ac7eba12407724599650ef5519676cd..f3496c3e400be5ee7243a46a8fe2aef958e08857 100644 GIT binary patch delta 127064 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 SF`JepYEl%m^|3~^=f41BfN)Fz delta 134027 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 diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL.suo b/build/tools/MasterEditorTWL/MasterEditorTWL.suo index 785882f43e0d6018b8688bc55e056a4f4db5af63..34747a97aa62b27d38e8f348adc0dec1bdbb2555 100644 GIT binary patch delta 6134 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 delta 7139 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 diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Debug/BuildLog.htm b/build/tools/MasterEditorTWL/MasterEditorTWL/Debug/BuildLog.htm index 7c2f13d51b757785a4c909a07d4ad5a9e8f2e309..02ffc2cd03e4cb8a6441385791332b5d48ec8370 100644 GIT binary patch delta 286 zcmZ2hH6?h%A*Rhom`a!h4H+yMj2KKA%oq%SEJFsP&E9NpStsA&G1QB)WC25j^_$I|aAFxYYw!0k} zO49_z@uq1;msX{Kif^4x3taULiqZ_FbOhg&_VV*~x6su`fR4}z-KOjC9jB;{l1@?z zPZW{Ekk3#bC1{+c)B$^+sS;y#$#GLC+IL80&SZ+Hf2zB!yHemgMx*eS)xDJ)Ejh07 zFBTWSYqtiIppl{&z6tW=m4@8srg36h2_vt;RjICSK>P zLpK7Y-B5kb*H-?h-o|I0KhSd-Swj#6{n%XW2h|8X;{%9Luir_a-yAv9!Z*6k$~MmwjN5nJ424`$B%`{2~s0XCI+iW-_g@ zxA+dL;)#Zwnf}(DWl$DevuDE7KWvpS^gHV{hhj><+uk%uK}5eaQ5c zEwDwljyS)^&jQ6+jP+{BJS!OyA6~f^8is6`jcnN$cvuC+A|l1Z@V^M?2^h=M$OAR5 zoJ@ykkXk@{7~`G5AWdO|rEu2egBYEZVKK-UJ>xn^0(%jdBv2F3ByjFTgBacp>cSch zXeUufVL6Qrm;^G0<&v(|0`&+2ysf4on0KB8NUUnHf$}c>z{$8PaXj+2xkfbKKSAIY NXpE6xUH3k>{sYz8Rh9q% diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h index 46424df9..5fe09921 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.h @@ -362,12 +362,12 @@ private: System::Windows::Forms::Label^ labShared2Size3; private: System::Windows::Forms::Label^ labShared2Size2; private: System::Windows::Forms::Label^ labShared2Size1; private: System::Windows::Forms::Label^ labShared2Size0; -private: System::Windows::Forms::Label^ labKB5; -private: System::Windows::Forms::Label^ labKB4; -private: System::Windows::Forms::Label^ labKB3; -private: System::Windows::Forms::Label^ labKB2; -private: System::Windows::Forms::Label^ labKB1; -private: System::Windows::Forms::Label^ labKB0; + + + + + + private: System::Windows::Forms::TextBox^ tboxShared2Size5; private: System::Windows::Forms::TextBox^ tboxShared2Size4; private: System::Windows::Forms::TextBox^ tboxShared2Size3; @@ -383,7 +383,7 @@ private: System::Windows::Forms::Label^ labSDK; private: System::Windows::Forms::GroupBox^ gboxTWLExInfo; -private: System::Windows::Forms::Label^ labByte2; + private: System::Windows::Forms::Label^ labByte1; private: System::Windows::Forms::Label^ labHex4; private: System::Windows::Forms::Label^ labHex3; @@ -469,9 +469,9 @@ private: System::Windows::Forms::TabPage^ tabCompanyInfo; private: System::Windows::Forms::GroupBox^ gboxForeign; private: System::Windows::Forms::GroupBox^ gboxExFlags; -private: System::Windows::Forms::Label^ labByte3; -private: System::Windows::Forms::Label^ labByte5; -private: System::Windows::Forms::Label^ labByte4; + + + private: System::Windows::Forms::GroupBox^ gboxEULA; private: System::Windows::Forms::GroupBox^ gboxIcon; private: System::Windows::Forms::GroupBox^ gboxParental; @@ -538,6 +538,10 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorBegin; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorEnd; private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause; private: System::Windows::Forms::Label^ labAssemblyVersion; +private: System::Windows::Forms::Label^ labArbit4; +private: System::Windows::Forms::Label^ labArbit3; +private: System::Windows::Forms::Label^ labArbit2; +private: System::Windows::Forms::Label^ labArbit1; @@ -681,7 +685,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; /// void InitializeComponent(void) { - System::Windows::Forms::DataGridViewCellStyle^ dataGridViewCellStyle2 = (gcnew System::Windows::Forms::DataGridViewCellStyle()); + System::Windows::Forms::DataGridViewCellStyle^ dataGridViewCellStyle1 = (gcnew System::Windows::Forms::DataGridViewCellStyle()); this->tboxFile = (gcnew System::Windows::Forms::TextBox()); this->gboxSrl = (gcnew System::Windows::Forms::GroupBox()); this->tboxRemasterVer = (gcnew System::Windows::Forms::TextBox()); @@ -750,6 +754,8 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->numEULA = (gcnew System::Windows::Forms::NumericUpDown()); this->cboxIsInputPerson2 = (gcnew System::Windows::Forms::CheckBox()); this->gboxPerson2 = (gcnew System::Windows::Forms::GroupBox()); + this->labArbit4 = (gcnew System::Windows::Forms::Label()); + this->labArbit3 = (gcnew System::Windows::Forms::Label()); this->labNTSC2Sur = (gcnew System::Windows::Forms::Label()); this->tboxNTSC2 = (gcnew System::Windows::Forms::TextBox()); this->labFax2 = (gcnew System::Windows::Forms::Label()); @@ -768,6 +774,8 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->labPerson2 = (gcnew System::Windows::Forms::Label()); this->labCompany2 = (gcnew System::Windows::Forms::Label()); this->gboxPerson1 = (gcnew System::Windows::Forms::GroupBox()); + this->labArbit2 = (gcnew System::Windows::Forms::Label()); + this->labArbit1 = (gcnew System::Windows::Forms::Label()); this->labNTSC1Sur = (gcnew System::Windows::Forms::Label()); this->labFax1 = (gcnew System::Windows::Forms::Label()); this->labNTSC1Pre = (gcnew System::Windows::Forms::Label()); @@ -826,12 +834,6 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->labShared2Size2 = (gcnew System::Windows::Forms::Label()); this->labShared2Size1 = (gcnew System::Windows::Forms::Label()); this->labShared2Size0 = (gcnew System::Windows::Forms::Label()); - this->labKB5 = (gcnew System::Windows::Forms::Label()); - this->labKB4 = (gcnew System::Windows::Forms::Label()); - this->labKB3 = (gcnew System::Windows::Forms::Label()); - this->labKB2 = (gcnew System::Windows::Forms::Label()); - this->labKB1 = (gcnew System::Windows::Forms::Label()); - this->labKB0 = (gcnew System::Windows::Forms::Label()); this->tboxShared2Size5 = (gcnew System::Windows::Forms::TextBox()); this->tboxShared2Size4 = (gcnew System::Windows::Forms::TextBox()); this->tboxShared2Size3 = (gcnew System::Windows::Forms::TextBox()); @@ -843,10 +845,6 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxSDK = (gcnew System::Windows::Forms::TextBox()); this->labSDK = (gcnew System::Windows::Forms::Label()); this->gboxTWLExInfo = (gcnew System::Windows::Forms::GroupBox()); - this->labByte5 = (gcnew System::Windows::Forms::Label()); - this->labByte4 = (gcnew System::Windows::Forms::Label()); - this->labByte3 = (gcnew System::Windows::Forms::Label()); - this->labByte2 = (gcnew System::Windows::Forms::Label()); this->labByte1 = (gcnew System::Windows::Forms::Label()); this->labHex4 = (gcnew System::Windows::Forms::Label()); this->labHex3 = (gcnew System::Windows::Forms::Label()); @@ -1611,6 +1609,8 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; // // gboxPerson2 // + this->gboxPerson2->Controls->Add(this->labArbit4); + this->gboxPerson2->Controls->Add(this->labArbit3); this->gboxPerson2->Controls->Add(this->labNTSC2Sur); this->gboxPerson2->Controls->Add(this->tboxNTSC2); this->gboxPerson2->Controls->Add(this->labFax2); @@ -1636,6 +1636,24 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->gboxPerson2->TabStop = false; this->gboxPerson2->Text = L"担当者2"; // + // labArbit4 + // + this->labArbit4->AutoSize = true; + this->labArbit4->Location = System::Drawing::Point(209, 207); + this->labArbit4->Name = L"labArbit4"; + this->labArbit4->Size = System::Drawing::Size(37, 12); + this->labArbit4->TabIndex = 15; + this->labArbit4->Text = L"(任意)"; + // + // labArbit3 + // + this->labArbit3->AutoSize = true; + this->labArbit3->Location = System::Drawing::Point(210, 156); + this->labArbit3->Name = L"labArbit3"; + this->labArbit3->Size = System::Drawing::Size(37, 12); + this->labArbit3->TabIndex = 13; + this->labArbit3->Text = L"(任意)"; + // // labNTSC2Sur // this->labNTSC2Sur->AutoSize = true; @@ -1650,7 +1668,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxNTSC2->Location = System::Drawing::Point(66, 200); this->tboxNTSC2->MaxLength = 50; this->tboxNTSC2->Name = L"tboxNTSC2"; - this->tboxNTSC2->Size = System::Drawing::Size(268, 19); + this->tboxNTSC2->Size = System::Drawing::Size(140, 19); this->tboxNTSC2->TabIndex = 11; // // labFax2 @@ -1783,6 +1801,8 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; // // gboxPerson1 // + this->gboxPerson1->Controls->Add(this->labArbit2); + this->gboxPerson1->Controls->Add(this->labArbit1); this->gboxPerson1->Controls->Add(this->labNTSC1Sur); this->gboxPerson1->Controls->Add(this->labFax1); this->gboxPerson1->Controls->Add(this->labNTSC1Pre); @@ -1807,6 +1827,24 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->gboxPerson1->TabStop = false; this->gboxPerson1->Text = L"担当者1"; // + // labArbit2 + // + this->labArbit2->AutoSize = true; + this->labArbit2->Location = System::Drawing::Point(201, 207); + this->labArbit2->Name = L"labArbit2"; + this->labArbit2->Size = System::Drawing::Size(37, 12); + this->labArbit2->TabIndex = 12; + this->labArbit2->Text = L"(任意)"; + // + // labArbit1 + // + this->labArbit1->AutoSize = true; + this->labArbit1->Location = System::Drawing::Point(201, 156); + this->labArbit1->Name = L"labArbit1"; + this->labArbit1->Size = System::Drawing::Size(37, 12); + this->labArbit1->TabIndex = 11; + this->labArbit1->Text = L"(任意)"; + // // labNTSC1Sur // this->labNTSC1Sur->AutoSize = true; @@ -1839,7 +1877,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxNTSC1->Location = System::Drawing::Point(66, 200); this->tboxNTSC1->MaxLength = 50; this->tboxNTSC1->Name = L"tboxNTSC1"; - this->tboxNTSC1->Size = System::Drawing::Size(261, 19); + this->tboxNTSC1->Size = System::Drawing::Size(131, 19); this->tboxNTSC1->TabIndex = 8; // // tboxFax1 @@ -2282,12 +2320,6 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->gboxShared2Size->Controls->Add(this->labShared2Size2); this->gboxShared2Size->Controls->Add(this->labShared2Size1); this->gboxShared2Size->Controls->Add(this->labShared2Size0); - this->gboxShared2Size->Controls->Add(this->labKB5); - this->gboxShared2Size->Controls->Add(this->labKB4); - this->gboxShared2Size->Controls->Add(this->labKB3); - this->gboxShared2Size->Controls->Add(this->labKB2); - this->gboxShared2Size->Controls->Add(this->labKB1); - this->gboxShared2Size->Controls->Add(this->labKB0); this->gboxShared2Size->Controls->Add(this->tboxShared2Size5); this->gboxShared2Size->Controls->Add(this->tboxShared2Size4); this->gboxShared2Size->Controls->Add(this->tboxShared2Size3); @@ -2297,7 +2329,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->gboxShared2Size->Controls->Add(this->cboxIsShared2); this->gboxShared2Size->Location = System::Drawing::Point(547, 54); this->gboxShared2Size->Name = L"gboxShared2Size"; - this->gboxShared2Size->Size = System::Drawing::Size(175, 220); + this->gboxShared2Size->Size = System::Drawing::Size(164, 220); this->gboxShared2Size->TabIndex = 1; this->gboxShared2Size->TabStop = false; this->gboxShared2Size->Text = L"Shared2ファイルサイズ"; @@ -2356,60 +2388,6 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->labShared2Size0->TabIndex = 15; this->labShared2Size0->Text = L"File 0"; // - // labKB5 - // - this->labKB5->AutoSize = true; - this->labKB5->Location = System::Drawing::Point(142, 180); - this->labKB5->Name = L"labKB5"; - this->labKB5->Size = System::Drawing::Size(20, 12); - this->labKB5->TabIndex = 14; - this->labKB5->Text = L"KB"; - // - // labKB4 - // - this->labKB4->AutoSize = true; - this->labKB4->Location = System::Drawing::Point(142, 155); - this->labKB4->Name = L"labKB4"; - this->labKB4->Size = System::Drawing::Size(20, 12); - this->labKB4->TabIndex = 13; - this->labKB4->Text = L"KB"; - // - // labKB3 - // - this->labKB3->AutoSize = true; - this->labKB3->Location = System::Drawing::Point(142, 130); - this->labKB3->Name = L"labKB3"; - this->labKB3->Size = System::Drawing::Size(20, 12); - this->labKB3->TabIndex = 12; - this->labKB3->Text = L"KB"; - // - // labKB2 - // - this->labKB2->AutoSize = true; - this->labKB2->Location = System::Drawing::Point(142, 105); - this->labKB2->Name = L"labKB2"; - this->labKB2->Size = System::Drawing::Size(20, 12); - this->labKB2->TabIndex = 11; - this->labKB2->Text = L"KB"; - // - // labKB1 - // - this->labKB1->AutoSize = true; - this->labKB1->Location = System::Drawing::Point(142, 80); - this->labKB1->Name = L"labKB1"; - this->labKB1->Size = System::Drawing::Size(20, 12); - this->labKB1->TabIndex = 10; - this->labKB1->Text = L"KB"; - // - // labKB0 - // - this->labKB0->AutoSize = true; - this->labKB0->Location = System::Drawing::Point(142, 55); - this->labKB0->Name = L"labKB0"; - this->labKB0->Size = System::Drawing::Size(20, 12); - this->labKB0->TabIndex = 9; - this->labKB0->Text = L"KB"; - // // tboxShared2Size5 // this->tboxShared2Size5->Location = System::Drawing::Point(46, 177); @@ -2505,10 +2483,6 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; // // gboxTWLExInfo // - this->gboxTWLExInfo->Controls->Add(this->labByte5); - this->gboxTWLExInfo->Controls->Add(this->labByte4); - this->gboxTWLExInfo->Controls->Add(this->labByte3); - this->gboxTWLExInfo->Controls->Add(this->labByte2); this->gboxTWLExInfo->Controls->Add(this->labByte1); this->gboxTWLExInfo->Controls->Add(this->labHex4); this->gboxTWLExInfo->Controls->Add(this->labHex3); @@ -2529,42 +2503,6 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->gboxTWLExInfo->TabStop = false; this->gboxTWLExInfo->Text = L"TWL拡張情報"; // - // labByte5 - // - this->labByte5->AutoSize = true; - this->labByte5->Location = System::Drawing::Point(261, 121); - this->labByte5->Name = L"labByte5"; - this->labByte5->Size = System::Drawing::Size(29, 12); - this->labByte5->TabIndex = 34; - this->labByte5->Text = L"Byte"; - // - // labByte4 - // - this->labByte4->AutoSize = true; - this->labByte4->Location = System::Drawing::Point(261, 96); - this->labByte4->Name = L"labByte4"; - this->labByte4->Size = System::Drawing::Size(29, 12); - this->labByte4->TabIndex = 33; - this->labByte4->Text = L"Byte"; - // - // labByte3 - // - this->labByte3->AutoSize = true; - this->labByte3->Location = System::Drawing::Point(261, 71); - this->labByte3->Name = L"labByte3"; - this->labByte3->Size = System::Drawing::Size(29, 12); - this->labByte3->TabIndex = 32; - this->labByte3->Text = L"Byte"; - // - // labByte2 - // - this->labByte2->AutoSize = true; - this->labByte2->Location = System::Drawing::Point(585, 54); - this->labByte2->Name = L"labByte2"; - this->labByte2->Size = System::Drawing::Size(29, 12); - this->labByte2->TabIndex = 31; - this->labByte2->Text = L"Byte"; - // // labByte1 // this->labByte1->AutoSize = true; @@ -2599,6 +2537,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxIsCodec->ReadOnly = true; this->tboxIsCodec->Size = System::Drawing::Size(87, 19); this->tboxIsCodec->TabIndex = 28; + this->tboxIsCodec->TextAlign = System::Windows::Forms::HorizontalAlignment::Right; // // labIsCodec // @@ -2779,7 +2718,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; // this->cboxIsNAND->AutoSize = true; this->cboxIsNAND->Enabled = false; - this->cboxIsNAND->Location = System::Drawing::Point(8, 48); + this->cboxIsNAND->Location = System::Drawing::Point(9, 47); this->cboxIsNAND->Name = L"cboxIsNAND"; this->cboxIsNAND->Size = System::Drawing::Size(121, 16); this->cboxIsNAND->TabIndex = 1; @@ -3416,8 +3355,8 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; // // gridError // - dataGridViewCellStyle2->BackColor = System::Drawing::Color::White; - this->gridError->AlternatingRowsDefaultCellStyle = dataGridViewCellStyle2; + dataGridViewCellStyle1->BackColor = System::Drawing::Color::White; + this->gridError->AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1; this->gridError->BackgroundColor = System::Drawing::SystemColors::Control; this->gridError->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize; this->gridError->Columns->AddRange(gcnew cli::array< System::Windows::Forms::DataGridViewColumn^ >(4) {this->colErrorName, @@ -3685,9 +3624,14 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; { case ECSrlResult::ERROR_PLATFORM: this->errMsg( "本ツールはTWL対応ROM専用です。NTR専用ROMなどのTWL非対応ROMを読み込むことはできません。", - "This tool can only read TWL ROM. This can't read Other data e.g. NTR limited ROM." ); + "This tool can only read TWL ROM. This can't read an other data e.g. NTR limited ROM." ); break; + case ECSrlResult::ERROR_SIGN_DECRYPT: + case ECSrlResult::ERROR_SIGN_VERIFY: + this->errMsg( "本ツールはTWL対応ROM専用です。不正なデータを読み込むことはできません。", + "This tool can only read TWL ROM. This can't read an illegal data." ); + default: this->errMsg( "ROMデータファイルの読み込みに失敗しました。", "Reading the ROM data file failed." ); break; @@ -3845,8 +3789,8 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxTitleIDHi->Text = this->hSrl->hTitleIDHi->ToString("X8"); this->tboxNormalRomOffset->Text = this->hSrl->hNormalRomOffset->ToString("X8"); this->tboxKeyTableRomOffset->Text = this->hSrl->hKeyTableRomOffset->ToString("X8"); - this->tboxPublicSize->Text = this->hSrl->hPublicSize->ToString(); - this->tboxPrivateSize->Text = this->hSrl->hPrivateSize->ToString(); + this->tboxPublicSize->Text = MasterEditorTWL::transSizeToString( this->hSrl->hPublicSize ); + this->tboxPrivateSize->Text = MasterEditorTWL::transSizeToString( this->hSrl->hPrivateSize ); this->cboxIsNormalJump->Checked = *(this->hSrl->hIsNormalJump); this->cboxIsTmpJump->Checked = *(this->hSrl->hIsTmpJump); this->cboxIsSubBanner->Checked = *(this->hSrl->hIsSubBanner); @@ -3878,12 +3822,12 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxIsGameCardOn->Text = gcnew System::String( "OFF" ); } this->cboxIsShared2->Checked = *(this->hSrl->hIsShared2); - this->tboxShared2Size0->Text = this->hSrl->hShared2SizeArray[0]->ToString(); - this->tboxShared2Size1->Text = this->hSrl->hShared2SizeArray[1]->ToString(); - this->tboxShared2Size2->Text = this->hSrl->hShared2SizeArray[2]->ToString(); - this->tboxShared2Size3->Text = this->hSrl->hShared2SizeArray[3]->ToString(); - this->tboxShared2Size4->Text = this->hSrl->hShared2SizeArray[4]->ToString(); - this->tboxShared2Size5->Text = this->hSrl->hShared2SizeArray[5]->ToString(); + this->tboxShared2Size0->Text = MasterEditorTWL::transSizeToString( this->hSrl->hShared2SizeArray[0] ); + this->tboxShared2Size1->Text = MasterEditorTWL::transSizeToString( this->hSrl->hShared2SizeArray[1] ); + this->tboxShared2Size2->Text = MasterEditorTWL::transSizeToString( this->hSrl->hShared2SizeArray[2] ); + this->tboxShared2Size3->Text = MasterEditorTWL::transSizeToString( this->hSrl->hShared2SizeArray[3] ); + this->tboxShared2Size4->Text = MasterEditorTWL::transSizeToString( this->hSrl->hShared2SizeArray[4] ); + this->tboxShared2Size5->Text = MasterEditorTWL::transSizeToString( this->hSrl->hShared2SizeArray[5] ); // アプリ種別 System::String ^app = gcnew System::String(""); @@ -3968,6 +3912,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->tboxSDK->Text += ver->Version + "\r\n"; } } + this->gridLibrary->Rows->Clear(); if( this->hSrl->hLicenseList != nullptr ) { for each( RCLicense ^lic in this->hSrl->hLicenseList ) @@ -3978,7 +3923,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; // ペアレンタルコントロール関連 this->setParentalForms(); - } + } //setSrlForms() // SRLの特殊な設定をフォームにセットする(言語切り替えで表示を変えたいので独立させる) void setSrlFormsCaptionEx() @@ -4153,7 +4098,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->hSrl->hArrayParentalRating[OS_TWL_PCTL_OGN_OFLC] = gcnew System::Byte( rating ); this->hSrl->hArrayParentalEffect[OS_TWL_PCTL_OGN_OFLC] = gcnew System::Boolean( this->cboxOFLC->Checked ); this->hSrl->hArrayParentalAlways[OS_TWL_PCTL_OGN_OFLC] = gcnew System::Boolean( this->cboxAlwaysOFLC->Checked ); - } + } //setParentalSrlProperties() // SRL内のペアレンタルコントロール情報を抜き出してフォームに反映させる void setParentalForms(void) @@ -4310,7 +4255,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->combOFLC->SelectedIndex = index; this->cboxOFLC->Checked = *(hSrl->hArrayParentalEffect[ OS_TWL_PCTL_OGN_OFLC ]); this->cboxAlwaysOFLC->Checked = *(hSrl->hArrayParentalAlways[ OS_TWL_PCTL_OGN_OFLC ]); - } + } //setParentalForms() // リージョン情報からペアレンタルコントロールの編集可能団体をマスクする void maskParentalForms(void) @@ -4383,7 +4328,7 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; default: break; } - } + } //maskParentalForms() // ---------------------------------------------- // SRL関連のフォームのチェック @@ -4945,11 +4890,22 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->labCompany2->Text = gcnew System::String( LANG_COMPANY_J ); this->labDepart2->Text = gcnew System::String( LANG_DEPART_J ); this->labPerson2->Text = gcnew System::String( LANG_PERSON_J ); + this->labArbit1->Text = gcnew System::String( "(任意)" ); + this->labArbit2->Text = gcnew System::String( "(任意)" ); + this->labArbit3->Text = gcnew System::String( "(任意)" ); + this->labArbit4->Text = gcnew System::String( "(任意)" ); // ふりがな情報を有効にする this->tboxFurigana1->Enabled = true; this->labFurigana1->Text = gcnew System::String( LANG_FURIGANA_J ); this->tboxFurigana2->Enabled = true; this->labFurigana2->Text = gcnew System::String( LANG_FURIGANA_J ); + // NTSC-UserIDも日本語版のみ + this->tboxNTSC1->Enabled = true; + this->tboxNTSC2->Enabled = true; + this->labNTSC1Pre->Text = gcnew System::String( LANG_NTSC_1_J ); + this->labNTSC1Sur->Text = gcnew System::String( LANG_NTSC_2_J ); + this->labNTSC2Pre->Text = gcnew System::String( LANG_NTSC_1_J ); + this->labNTSC2Sur->Text = gcnew System::String( LANG_NTSC_2_J ); // TWL仕様 this->gboxTWLExInfo->Text = gcnew System::String( "TWL拡張情報" ); @@ -5148,13 +5104,25 @@ private: System::Windows::Forms::Label^ labAssemblyVersion; this->labCompany2->Text = gcnew System::String( LANG_COMPANY_E ); this->labDepart2->Text = gcnew System::String( LANG_DEPART_E ); this->labPerson2->Text = gcnew System::String( LANG_PERSON_E ); + this->labArbit1->Text = gcnew System::String( "(Arbitrary)" ); + this->labArbit2->Text = gcnew System::String( "(Arbitrary)" ); + this->labArbit3->Text = gcnew System::String( "(Arbitrary)" ); + this->labArbit4->Text = gcnew System::String( "(Arbitrary)" ); // ふりがな情報を削除 this->tboxFurigana1->Clear(); this->tboxFurigana1->Enabled = false; - this->labFurigana1->Text = gcnew System::String(""); + this->labFurigana1->Text = gcnew System::String( LANG_FURIGANA_E ); this->tboxFurigana2->Clear(); this->tboxFurigana2->Enabled = false; - this->labFurigana2->Text = gcnew System::String(""); + this->labFurigana2->Text = gcnew System::String( LANG_FURIGANA_E ); + this->tboxNTSC1->Enabled = false; + this->tboxNTSC1->Text = gcnew System::String(""); + this->tboxNTSC2->Enabled = false; + this->tboxNTSC2->Text = gcnew System::String(""); + this->labNTSC1Pre->Text = gcnew System::String( LANG_NTSC_1_E ); + this->labNTSC1Sur->Text = gcnew System::String( LANG_NTSC_2_E ); + this->labNTSC2Pre->Text = gcnew System::String( LANG_NTSC_1_E ); + this->labNTSC2Sur->Text = gcnew System::String( LANG_NTSC_2_E ); // TWL仕様 this->gboxTWLExInfo->Text = gcnew System::String( "TWL Extended Info" ); diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX index 302e29f7..1f0e93fa 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/Form1.resX @@ -126,24 +126,6 @@ True - - True - - - True - - - True - - - True - - - True - - - True - True diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/Release/BuildLog.htm b/build/tools/MasterEditorTWL/MasterEditorTWL/Release/BuildLog.htm index bf3703ae705f64b91004ef4e8b1f5c98391bf5cf..9889b4a587ba896c6a42943181258c5c4063d8c0 100644 GIT binary patch delta 270 zcmdl}y{CGE9h;ybg8_pvg9(EngBgQ4kZrKppY1CLrtoBIiP+5!S`v&vDMJh$>lrt9 z2`ym7B4;fT4iYv()iT+i&3N-Q*+1NvQkx%ZmVzuX#-d}6wg(dyDQgMo%>sHxjFN^x ikDz#lL60GcA(5eEa-p{7<`(?}AcN7AYz{R{=K%n8@i77b delta 270 zcmdl}y{CGE9h;y5gCT<{gE4~{5Q9jQ&Hij(IWUDMTT8@lcF>Yw1WFlU=vdFVxl3pP zD;7CxiExmxF{+ly{%ppZugU)5#+2IpShEyli3t`RbF@8}ut-@;NN*OU f41*p+5c(9&CMdecryptRomHeader(); + if( r != ECSrlResult::NOERROR ) + { + (void)fclose(fp); + return r; + } +#endif //#ifdef METWL_WHETHER_SIGN_DECRYPT + + // ファイルを閉じる前にROMヘッダ以外の領域から設定を取り出す (void)this->hasDSDLPlaySign( fp ); r = this->searchSDKVersion( fp ); if( r != ECSrlResult::NOERROR ) @@ -453,6 +464,45 @@ ECSrlResult RCSrl::signRomHeader(void) return (ECSrlResult::NOERROR); } // ECSrlResult RCSrl::signRomHeader(void) +// +// ROMヘッダの署名を外す +// +ECSrlResult RCSrl::decryptRomHeader(void) +{ + u8 original[ RSA_KEY_LENGTH ]; // 署名外した後のデータ格納先 + s32 pos = 0; // ブロックの先頭アドレス + u8 digest[ DIGEST_SIZE_SHA1 ]; // ROMヘッダのダイジェスト + ROM_Header rh; + + // <データの流れ> + // (1) 公開鍵で復号した結果(ブロック)をローカル変数(original)に格納 + // (2) ブロックから余分な部分を取り除いて引数(pDst)にコピー + + // 署名の解除 = 公開鍵で復号 + if( !ACSign_Decrypto( original, g_devPubKey_DER, this->pRomHeader->signature, RSA_KEY_LENGTH ) ) + { + return ECSrlResult::ERROR_SIGN_DECRYPT; + } + // 署名前データを復号後ブロックからゲット + for( pos=0; pos < (RSA_KEY_LENGTH-2); pos++ ) // 本来ブロックの先頭は0x00だが復号化の内部処理によって消える仕様 + { + // 暗号ブロック形式 = 0x00, BlockType, Padding, 0x00, 実データ + if( original[pos] == 0x00 ) // 実データの直前の0x00をサーチ + { + break; + } + } + // ベリファイ + // ROMヘッダのダイジェストを算出(先頭から証明書領域の直前までが対象) + ACSign_DigestUnit( digest, this->pRomHeader, (u32)&(rh.certificate) - (u32)&(rh) ); + // this->pRomHeader はマネージヒープ上にあるので実アドレスを取得できない + if( memcmp( &(original[pos+1]), digest, DIGEST_SIZE_SHA1 ) != 0 ) + { + return ECSrlResult::ERROR_SIGN_VERIFY; + } + return (ECSrlResult::NOERROR); +} + // // DSダウンロード署名がSRLに格納されているか調べる // @@ -611,9 +661,8 @@ ECSrlResult RCSrl::searchLicenses(FILE *fp) //System::Diagnostics::Debug::WriteLine( "license " + spl[0] + " " + spl[1] ); } } - return ECSrlResult::NOERROR; -} +} //RCSrl::searchLicenses // // MRC @@ -706,33 +755,14 @@ ECSrlResult RCSrl::mrcNTR( FILE *fp ) } // 値チェック + if( this->pRomHeader->s.rom_type != 0x00 ) { this->hErrorList->Add( gcnew RCMrcError( "デバイスタイプ", 0x13, 0x13, "不正な値です。00hを設定してください。", "Device Type", "Invalid data. Please set 00h.", false, true ) ); } - fseek( fp, 0, SEEK_END ); - u32 filesize = ftell(fp); // 実ファイルサイズ(単位Mbit) - u32 romsize = 1 << (this->pRomHeader->s.rom_size); // ROM容量 - if( (romsize*1024*1024/8) < filesize ) - { - this->hErrorList->Add( gcnew RCMrcError( - "デバイス容量", 0x14, 0x14, "実ファイルサイズよりも小さい値が指定されています。", - "Device Capacity", "Setting data is less than the actual file size.", false, true ) ); - } - else if( filesize < (romsize*1024*1024/8) ) - { - this->hWarnList->Add( gcnew RCMrcError( // 警告 - "デバイス容量", 0x14, 0x14, "実ファイルサイズに比べて無駄のある値が設定されています。", - "Device Capacity", "Setting data is larger than the actual file size.", false, true ) ); - } - if( (filesize % 2) != 0 ) - { - this->hErrorList->Add( gcnew RCMrcError( - "実ファイルサイズ", METWL_ERRLIST_NORANGE, METWL_ERRLIST_NORANGE, "中途半端な値です。通常では2のべき乗の値です。", - "Actual File Size", "Invalid size. This size is usually power of 2.", false, true ) ); - } + u8 romver = this->pRomHeader->s.rom_version; if( ((romver < 0x00) || (0x09 < romver)) && (romver != 0xE0) ) { @@ -866,13 +896,56 @@ ECSrlResult RCSrl::mrcTWL( FILE *fp ) #endif // 値チェック + + fseek( fp, 0, SEEK_END ); + u32 filesize = ftell(fp); // 実ファイルサイズ(単位Mbit) u32 romsize = 1 << (this->pRomHeader->s.rom_size); // ROM容量 - if( (romsize < METWL_ROMSIZE_MIN) || (METWL_ROMSIZE_MAX < romsize) ) + if( *(this->hIsMediaNand) == false ) // カードアプリのときのみのチェック { - this->hErrorList->Add( gcnew RCMrcError( - "デバイス容量", 0x14, 0x14, "指定可能な容量ではありません。", - "Device Capacity", "Invalid capacity.", false, true ) ); + if( (romsize*1024*1024/8) < filesize ) + { + this->hErrorList->Add( gcnew RCMrcError( + "デバイス容量", 0x14, 0x14, "実ファイルサイズよりも小さい値が指定されています。", + "Device Capacity", "Setting data is less than the actual file size.", false, true ) ); + } + else if( filesize < (romsize*1024*1024/8) ) + { + this->hWarnList->Add( gcnew RCMrcError( // 警告 + "デバイス容量", 0x14, 0x14, "実ファイルサイズに比べて無駄のある値が設定されています。", + "Device Capacity", "Setting data is larger than the actual file size.", false, true ) ); + } + if( (romsize < METWL_ROMSIZE_MIN) || (METWL_ROMSIZE_MAX < romsize) ) + { + this->hErrorList->Add( gcnew RCMrcError( + "デバイス容量", 0x14, 0x14, "指定可能な容量ではありません。", + "Device Capacity", "Invalid capacity.", false, true ) ); + } + if( (filesize % 2) != 0 ) + { + this->hErrorList->Add( gcnew RCMrcError( + "実ファイルサイズ", METWL_ERRLIST_NORANGE, METWL_ERRLIST_NORANGE, "中途半端な値です。通常では2のべき乗の値です。", + "Actual File Size", "Invalid size. This size is usually power of 2.", false, true ) ); + } + } //if( *(this->hIsNAND) == false ) + else + { + if( (romsize < METWL_ROMSIZE_MIN_NAND) || (METWL_ROMSIZE_MAX_NAND < romsize) ) + { + this->hErrorList->Add( gcnew RCMrcError( + "デバイス容量", 0x14, 0x14, "NANDアプリに対して指定可能な容量ではありません。", + "Device Capacity", "Invalid capacity.", false, true ) ); + } + u32 allsizeMB = (filesize*1024*1024/8) + this->pRomHeader->s.public_save_data_size + this->pRomHeader->s.private_save_data_size; + if( allsizeMB > METWL_ALLSIZE_MAX_NAND ) + { + this->hErrorList->Add( gcnew RCMrcError( + "実ファイルサイズ", METWL_ERRLIST_NORANGE, METWL_ERRLIST_NORANGE, + "ROMデータの実ファイルサイズとPublicセーブデータおよびPrivateセーブデータのサイズの総和が32MByteを超えています。", + "Actual File Size", + "The sum of this size, the public save data size and private save data size exceed 32MByte.", false, true ) ); + } } + if( this->pRomHeader->s.warning_no_spec_rom_speed != 0 ) { this->hWarnList->Add( gcnew RCMrcError( diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h index 51738c91..43c2647e 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/srl.h @@ -26,8 +26,9 @@ namespace MasterEditorTWL ERROR_FILE_READ, ERROR_FILE_WRITE, // 署名でのエラー - ERROR_SIGN_ENCRYPT, - ERROR_SIGN_DECRYPT, + ERROR_SIGN_ENCRYPT, // 署名できない + ERROR_SIGN_DECRYPT, // 署名解除できない + ERROR_SIGN_VERIFY, // 署名解除した後のダイジェストが合わない // CRC算出でのエラー ERROR_SIGN_CRC, // SDKバージョン取得でのエラー @@ -356,6 +357,7 @@ namespace MasterEditorTWL // ROMヘッダの更新 ECSrlResult calcRomHeaderCRC(void); // ROMヘッダのCRCを再計算 ECSrlResult signRomHeader(void); // ROMヘッダ更新後の再署名 + ECSrlResult decryptRomHeader(void); // ROMヘッダの署名を外す // SRLバイナリから特殊な設定を調べる ECSrlResult hasDSDLPlaySign( FILE *fp ); diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/utility.cpp b/build/tools/MasterEditorTWL/MasterEditorTWL/utility.cpp index 1e23f929..4daa2676 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/utility.cpp +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/utility.cpp @@ -56,6 +56,63 @@ System::String^ MasterEditorTWL::transRomSizeToString( System::Byte ^byte ) return (size.ToString() + unit); } +// +// サイズから単位つきの文字列を取得 +// +// @arg [in] バイト数 +// +// @ret 文字列(単位つき) +// +System::String^ MasterEditorTWL::transSizeToString( System::UInt32 ^size ) +{ + if( size == nullptr ) + { + return (gcnew System::String("")); + } + + System::UInt32 val = *size; + + // Byte単位 + if( val == 0 ) + { + return val.ToString(); + } + if( val < 1024 ) + { + return (val.ToString() + " Byte"); + } + + // KB単位に変換 + if( (val % 1024) != 0 ) + { + return (val.ToString() + " Byte"); // 端数のときは単位変換しない + } + val = val / 1024; + if( val < 1024 ) + { + return (val.ToString() + " KB"); + } + + // MB単位に変換 + if( (val % 1024) != 0 ) + { + return (val.ToString() + " KB"); + } + val = val / 1024; + if( val < 1024) + { + return (val.ToString() + " MB"); + } + + // GB単位に変換 + if( (val % 1024) != 0 ) + { + return (val.ToString() + " MB"); + } + val = val / 1024; + return (val.ToString() + " GB"); +} + // // ペアレンタルコントロールのレーティング値から文字列を取得 // diff --git a/build/tools/MasterEditorTWL/MasterEditorTWL/utility.h b/build/tools/MasterEditorTWL/MasterEditorTWL/utility.h index 0fb64a3e..2db96800 100644 --- a/build/tools/MasterEditorTWL/MasterEditorTWL/utility.h +++ b/build/tools/MasterEditorTWL/MasterEditorTWL/utility.h @@ -32,6 +32,15 @@ namespace MasterEditorTWL // System::String^ transRomSizeToString( System::Byte ^byte ); + // + // サイズから単位つきの文字列を取得 + // + // @arg [in] バイト数 + // + // @ret 文字列(単位つき) + // + System::String^ transSizeToString( System::UInt32 ^size ); + // // ペアレンタルコントロールのレーティング値から文字列を取得 //