マスタエディタ:タイトル名のチェック強化。バナーのチェックで中韓の領域のチェックを省く。特殊な設定を提出書に記述するように変更。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2529 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
nishikawa_takeshi 2008-09-16 12:01:10 +00:00
parent ce114a7157
commit fbce384c92
10 changed files with 61 additions and 19 deletions

View File

@ -3735,18 +3735,18 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause;
private:
System::Void stripItemEnglish_Click(System::Object^ sender, System::EventArgs^ e)
{
this->changeEnglish();
this->stripItemEnglish->Checked = true;
this->stripItemJapanese->Checked = false;
this->changeEnglish();
this->updateGrid();
}
private:
System::Void stripItemJapanese_Click(System::Object^ sender, System::EventArgs^ e)
{
this->changeJapanese();
this->stripItemEnglish->Checked = false;
this->stripItemJapanese->Checked = true;
this->changeJapanese();
this->updateGrid();
}
@ -3899,10 +3899,12 @@ private: System::Windows::Forms::DataGridViewTextBoxColumn^ colErrorCause;
// <>ˆÓ<CB86>«
{
this->sucMsg(
"マスターROMデータは作成されませんが、書類に記載されるCRCは現在の入力を反映して再計算されます。"
+ "\nまた、提出確認書に記載されるROMデータファイル名は、提出手順書にしたがい、 \"" + srlfile + "\"となります。",
"Re-calculation of CRC code descibed in a submission sheet is based on current input forms, and, "
+ "\na ROM data file name discribed in the sheet is \"" + srlfile + "\"."
"マスターROMデータは作成されませんが、書類には現在の入力が反映されます。"
+ "\n・書類に記載されるCRCは現在の入力を反映して再計算されるため、読み込んだファイルとは異なる場合があります。"
+ "\n・提出確認書に記載されるROMデータファイル名は、提出手順書にしたがい、 \"" + srlfile + "\"となります。",
"A submission sheet description is based on current input information."
+ "\n・CRC code described in the sheet is different from one of input ROM data. "
+ "\n・a ROM data file name discribed in the sheet is \"" + srlfile + "\"."
);
}

View File

@ -161,6 +161,13 @@ void Form1::setDeliverableProperties(void)
this->hDeliv->hCaption += ("(" + this->tboxCaptionEx->Text + ")");
}
// 特殊なアプリ種別
this->hDeliv->hAppTypeOther = this->tboxAppTypeOther->Text;
if( this->hDeliv->hAppTypeOther != nullptr )
{
this->hDeliv->hAppTypeOther->Replace("\r\n","");
}
// 一部のROM情報を登録
if( this->combBackup->SelectedIndex != (this->combBackup->Items->Count - 1) )
{

View File

@ -143,17 +143,6 @@ void Form1::setSrlForms(void)
this->tboxAppType->Text = gcnew System::String( "UNKNOWN" );
}
System::String ^appother = gcnew System::String("");
if( *(this->hSrl->hIsLaunch) == false )
{
appother += "Not-Launch.\r\n";
}
if( *(this->hSrl->hIsDataOnly) == true )
{
appother += "DataOnly.\r\n";
}
this->tboxAppTypeOther->Text = appother;
// アクセスコントロール その他
System::String ^acc = gcnew System::String("");
if( *(this->hSrl->hIsCommonClientKey) == true )
@ -228,7 +217,27 @@ void Form1::setSrlForms(void)
// SRLの特殊な設定をフォームにセットする(言語切り替えで表示を変えたいので独立させる)
void Form1::setSrlFormsCaptionEx()
{
// 特殊な設定は備考欄に書き加えておく
if( System::String::IsNullOrEmpty( this->tboxFile->Text ) )
{
return;
}
System::String ^appother = gcnew System::String("");
if( *(this->hSrl->hIsLaunch) == false )
{
if( this->stripItemJapanese->Checked == true )
appother += "ランチャー非表示.\r\n";
else
appother += "Not Display On the Launcher.\r\n";
}
if( *(this->hSrl->hIsDataOnly) == true )
{
if( this->stripItemJapanese->Checked == true )
appother += "データ専用.\r\n";
else
appother += "Data Only.\r\n";
}
this->tboxAppTypeOther->Text = appother;
this->tboxCaptionEx->Clear();
if( (this->hSrl->hHasDSDLPlaySign != nullptr) && (*(this->hSrl->hHasDSDLPlaySign) == true) )
{

View File

@ -3,7 +3,7 @@
#define METWL_WHETHER_PLATFORM_CHECK // プラットフォームがTWL対応以外かどうかをチェックする
#define METWL_WHETHER_SIGN_DECRYPT // 署名を外してダイジェストをベリファイする
#define METWL_WHETHER_MRC // MRC機能を含めるか
//#define METWL_LIGHT_CHECK // 提出条件を緩くするか
#define METWL_LIGHT_CHECK // 提出条件を緩くするか
// 定数
#define METWL_ERRLIST_NORANGE 0 // エラーのアドレス範囲を指定しないことを表す特別な値

View File

@ -94,6 +94,7 @@ namespace MasterEditorTWL
property System::String ^hPEGI_PRT;
property System::String ^hPEGI_BBFC;
property System::String ^hOFLC;
property System::String ^hAppTypeOther; // 特記事項
// constructor and destructor
public:

View File

@ -788,6 +788,7 @@ ECSrlResult RCSrl::searchSDKVersion( FILE *fp )
System::UInt16 relstep = (System::UInt16)(0xffff & sdkcode);
System::String ^str = nullptr;
str += (major.ToString() + "." + minor.ToString() + " ");
//System::Diagnostics::Debug::WriteLine( "relstep = " + relstep.ToString() );
// RELSTEPの解釈
// PR1=10100 PR2=10200 ...
@ -946,6 +947,24 @@ ECSrlResult RCSrl::mrcNTR( FILE *fp )
"Game Title", "Please use 00h for an unused part.", false, true ) );
}
result = true;
for( i=1; i < TITLE_NAME_MAX; i++ )
{
char prev = this->pRomHeader->s.title_name[i-1];
char curr = this->pRomHeader->s.title_name[i];
if( (prev == 0x00) && (0x21 <= curr) && (curr <= 0x5f) ) // 途中に00hがあるとダメ
{
result = false;
break;
}
}
if( !result )
{
this->hErrorList->Add( gcnew RCMrcError(
"ソフトタイトル", 0x0, 0xb, "スペース部分には20hを登録してください。",
"Game Title", "Please use 20h for an space part.", false, true ) );
}
result = true;
for( i=0; i < GAME_CODE_MAX; i++ )
{
@ -1642,6 +1661,10 @@ void RCSrl::mrcBanner(FILE *fp)
u32 end = (size < 0x1240)?(size):(0x1240); // NTR互換領域までのときはTWL拡張領域をサーチしない
for( i=0x240; i < end; i+=2 )
{
if( (0x840 <= i) && (i < 0xA40) ) // 中韓のフォント箇所はチェックしない
{
continue;
}
u16 index = banner[i+1];
u16 indexbak = index;
index = (index << 8) + banner[i];