From a83eb10e8920166ba844143bbc172cd909657d54 Mon Sep 17 00:00:00 2001 From: nishikawa_takeshi Date: Mon, 20 Apr 2009 08:51:53 +0000 Subject: [PATCH] =?UTF-8?q?TWL=E3=83=95=E3=82=A3=E3=83=B3=E3=82=AC?= =?UTF-8?q?=E3=83=BC=E3=83=97=E3=83=AA=E3=83=B3=E3=82=BF:=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E6=99=82=E3=81=AB=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB?= =?UTF-8?q?=E3=83=88=E3=81=AE=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E5=90=8D?= =?UTF-8?q?=E3=82=92=E8=A1=A8=E7=A4=BA=E3=81=99=E3=82=8B=E3=81=93=E3=81=A8?= =?UTF-8?q?=E3=81=AB=E3=81=97=E3=81=9F=E3=80=82=E3=82=AB=E3=83=BC=E3=83=89?= =?UTF-8?q?=E3=82=A2=E3=83=97=E3=83=AA=E3=81=A7TAD=E5=87=BA=E5=8A=9B?= =?UTF-8?q?=E3=81=8C=E9=81=B8=E6=8A=9E=E3=81=95=E3=82=8C=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=82=8B=E3=81=A8=E3=81=8D=E3=81=AE=E3=82=A8=E3=83=A9=E3=83=BC?= =?UTF-8?q?=E5=88=A4=E5=AE=9A=E3=82=92=E4=BF=AE=E6=AD=A3=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@265 7061adef-622a-194b-ae81-725974e89856 --- .../FingerPrinterTWL/FingerPrinterTWL.ncb | Bin 10759168 -> 10759168 bytes .../FingerPrinterTWL/FingerPrinterTWL.suo | Bin 34816 -> 35328 bytes .../FingerPrinterTWL/FingerPrinterTWL.vcproj | 2 +- .../FingerPrinterTWL/Form1.cpp | 17 ++++++++++------- .../FingerPrinterTWL/fingerprint_console.cpp | 8 +++++++- .../FingerPrinterTWL/fingerprint_util.h | 8 ++++++++ .../FingerPrinterTWL/fingerprinter_util.cpp | 15 +++++++++++++++ 7 files changed, 41 insertions(+), 9 deletions(-) diff --git a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL.ncb b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL.ncb index 053b234482f0bf9bf54444bfc579fc0b264058ea..0710ce2f5d94bd8b6fb6a35921bd916320b74ca0 100644 GIT binary patch delta 27454 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 AYybcN diff --git a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL.suo b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL.suo index 4f58fe397fa18ce22f39b78cc413f3eae61968d2..9620a8d37d635855dbb31e53af600e58c0922876 100644 GIT binary patch delta 2470 zcmZvdYfzL`7{||f_uXZYi_1k|5tbEEynrs36>V4907ZqAMMZJUONyEr>I|4-1&(1k z)s#MTu`zE=<4jJD`hM$!L1vRWBBqrMO*1uReGsAsE<$Mc-uxx8o3 zIqyr`J6cu1E+`4BQ}a#GgtJv*lFQqi91>5-rJ1qfV<%d(D69LJDDQvRGwaAQ%iji#}_?IWt^i$}W^?UvE@ zK~{K3Fn&}ujjf@IM3*r*wp)5FLgGleIMHTBn1){ zP(_lcfwa+X_YQ<07CO`Br0&D5p- z+Lo&}>hUMjaaWGv%X7%s&yGEc!J`Ckld&!To|GG@_t4x{b~6BeY^cn{-}#^bu*(L8 zfJ+5nHyLmrE`AUmTN^S$tWb_GU!8Kz5pIui?+Vd6I`};$kExDXh#x9~Cl>d>72>Cyhbm9TW74>u>w3r<+XNIb;wQ z0Vh~OxBW@v(yes8U>0@GniT)QcFOy}7Mf)4#}=BPCu{wZY~!k_-g}OGMLBfWZ!?;T zzLKsUOu%o*ZNzWE9dH-$<@g@_0PcYw!S8^!y7R2}k^I4x<8G(+P|#)fG&A4j0QI@= zkhHfMzLGAD66><%R_bn8M!ogvPgoR1mCP}EDpyL{RggpbJ*z0IH025Xj2Q12NkK;` z6*hKKg578MN{daFHCVxBjatfH(c&cymj$#uX$+SiGLhe2Nv`}nI$U2%H$52%|KATG zG~-ZZyfoStNsWF@Ev3#Xr`|h$?n(Nsszd8H87_8D-^o8YaJb| zUqx?JIi9dwy0OA-_`J*UfSN9y{2m7lH>O}QI~W_^RQHT;)zfVh8D9Jjei~yr@ruLh&-5S5R0~?4Ct^4f$s_m~c6D58vHH5dO${wa|Ts5wCj|MxXL7jK=gr z40c&KL>BsGb36IguO=CreP)lTG!~7~s)HRdG!8Kx@EK(&=SAd~k=yx&>8STbC z56sS{h5LqDH>mdADmoFHRL(ynJU4%;o&g7xzUAiU;F z5$+4*7~3j3BjnW)DZY+y{Q2g=HzV95Ow_LO(<<@_pH=y%Dng0#$oZ5mDQBnl8c*n|+~*d$Hm9WZ zq3ZKU_2CT)s@#O@gH((I7L~`T2qhAb^Zd!m@j6meo~dFAoKxkKRfG~#kz;J5n6Bh_ z$UK$LR?z|HQF*zFyaAOeua0m_RlY(+UUUNBvJx(I-RVH{IQnwyWut9-x7Fz0St!r! GN&FA|eAWU0 delta 2641 zcmb`JT~L%&7{||f_uXarh{aWrFXJN=M3`ZLErbQI-$MQH&*#h~1)b zy67T!bc&`6$MH@}<-ILMX(n=}#B|DWnz||bvhu^ZB0V zob$fH<67`-?fke#H?^d}Cc9oPgrK`xnw|$|u;KoYejvW{)`#8OFMTF0K;BB~)vwy; z!JURtMNTe_+I8x&{-jR<7(Sa_=I=uBZm1F312sWhx({hHdGNUl}$VY8XuyLdV5?%7sh?Z7t&)DQVPM(nFFzXex}6v$JFoB%-29Wp#4wqZOC^C znwqzcK5-P<29RxwrCw*P9-g3e5m+Dn>8z$Ir;Gga-&)F#6WKX0RS@EdKjt*moT&5o zhIhe5E1qj8Wm3DX8xK+*N@{G28CmSN$TFilYN)3cLxzY`J1ZigDX|h}&*b42jqZ@%AV~L;M0} z2OfA^04qY!WP9Lq6!$5%5xx&T58S3$HT?aG9Z+l^*dfKb726ATM6o`_xW9m09qRCP z1vwBbp8bGgyed|R?HCwGjrV7>@FT9fj8*yRGVXM+@&s2vxiC5kZb`cRX2r;IUB<0E z(z=;T%wQ+v7t(0qR|REfcwNGMaU-_LP$K?9%8b`f2q%rXRt8L0oI=7S8=%u6B+e;T zgY<%8A1TJ!k0FlKMTpz3hAu&D;gQ&X2${1&C9by^nh%H9Vo^Xr-VVIk*<6ZomczLO zDMym?+?b=ujaMtid=vh7`)pP$AAT_xz;-Lfej|Jb(s1-Ec@H(KiX2LIc`qGR>>b6{ zf(>sl(cyYuZFEjD`JouLUy7u|VQ zu02h^xo->=Er}nFI_VjXG6$;evQehKfQ+&ghWEM4n&GOelQjDLV%p(prJD7L^JZ7Z zsu*`XsgfpIk5OSkKDE@Ypfyci8tELRlOA_$M0LZvs>EVDh`Bi>^;Y(4FKhIma!NaE zF&8}YX?e@d6A6heMQ%#NWEtiP;x%mnHsbBpN2>*pXollZ?G9~>=s5k0mRyqLOG zHhkRp&gGe~xghi};-O-QtrUu2)X?{{ac6Ie7QSE%%l1c-&Uzeraf$m`YB-dP-d3QI qx##I{liTpNV4g3%dX*~H+Kl?X{#aZ${8fP~40l(3|9hu;oPPs&KFJCI diff --git a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/FingerPrinterTWL.vcproj b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/FingerPrinterTWL.vcproj index eb30221..054d5f8 100644 --- a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/FingerPrinterTWL.vcproj +++ b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/FingerPrinterTWL.vcproj @@ -2,7 +2,7 @@ rTad->Checked && !(this->rh->s.titleID_Hi && TITLE_ID_MEDIA_MASK) ) - { - throw gcnew Exception("Cannot make TAD file from the software intended for Game Card."); - } - this->fingerprintRomHeader(); OverwriteRomHeader( this->srlbin, this->rh ); @@ -188,6 +183,10 @@ void Form1::procSaveRomButton() { throw gcnew Exception("The input ROM file has not read yet."); } + if( this->rTad->Checked && !(this->rh->s.titleID_Hi & TITLE_ID_HI_MEDIA_MASK) ) + { + throw gcnew Exception("Cannot make TAD file from the software intended for Game Card."); + } System::String ^format = nullptr; System::String ^ext = nullptr; if( this->rTad->Checked ) @@ -200,8 +199,11 @@ void Form1::procSaveRomButton() format = "rom format (*.srl)|*.srl|All files (*.*)|*.*"; ext = ".srl"; } + // デフォルトのファイル名を決める + System::String ^defname = System::IO::Path::GetFileNameWithoutExtension( this->tboxFile->Text ) + + ".fp" + ext; - System::String ^rompath = SaveFileUsingDialog( this->prevDir, format, ext ); + System::String ^rompath = SaveFileUsingDialog( this->prevDir, defname, format, ext ); if( !rompath ) { return; @@ -222,9 +224,10 @@ void Form1::procDragDrop( System::String ^rompath ) { this->commonOpenRom( rompath ); this->tboxFile->Text = rompath; - this->tboxFile->SelectionStart = rompath->Length; // 入りきらないときに右端を表示する + this->tboxFile->SelectionStart = rompath->Length; this->rSrl->Checked = true; this->rTad->Checked = false; + this->prevDir = System::IO::Path::GetDirectoryName( rompath ); } catch( System::Exception ^ex ) { diff --git a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_console.cpp b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_console.cpp index 943ada7..d8b260c 100644 --- a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_console.cpp +++ b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_console.cpp @@ -87,7 +87,7 @@ void fingerprintConsole( cli::array ^args ) { throw gcnew System::Exception( "Arguments error." ); } - + // 入出力ファイルのパス System::String ^srcpath = args[0]; System::Console::WriteLine( "Input file: {0}", srcpath ); @@ -210,6 +210,12 @@ void fingerprintConsole( cli::array ^args ) System::Console::WriteLine(); } + // ありえないオプション + if( isTad && !(rh.s.titleID_Hi & TITLE_ID_HI_MEDIA_MASK) ) + { + throw gcnew Exception("Cannot make TAD file from the software intended for Game Card."); + } + // maketad if( isTad ) { diff --git a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_util.h b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_util.h index 1b24f89..3054803 100644 --- a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_util.h +++ b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprint_util.h @@ -71,6 +71,14 @@ System::String^ OpenFileUsingDialog( System::String ^defdir, System::String ^fil // @ret 取得したファイル名 エラーのとき nullptr System::String^ SaveFileUsingDialog( System::String ^defdir, System::String ^filter, System::String ^extension ); +// セーブするファイルをダイアログで取得 +// @arg [in] デフォルトのディレクトリ +// @arg [in] デフォルトのファイル名 +// @arg [in] 拡張子フィルタ +// @arg [in] ファイルの拡張子が不正なときに追加するときの正しい拡張子 +// @ret 取得したファイル名 エラーのとき nullptr +System::String^ SaveFileUsingDialog( System::String ^defdir, System::String ^defname, System::String ^filter, System::String ^extension ); + // ---------------------------------------------------------------------- // 外部プログラムの実行 // ---------------------------------------------------------------------- diff --git a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprinter_util.cpp b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprinter_util.cpp index de50146..8856e11 100644 --- a/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprinter_util.cpp +++ b/build/tools/MasterEditor/FingerPrinterTWL/FingerPrinterTWL/fingerprinter_util.cpp @@ -490,6 +490,17 @@ System::String^ OpenFileUsingDialog( System::String ^defdir, System::String ^fil // @arg [in] ファイルの拡張子が不正なときに追加するときの正しい拡張子 // @ret 取得したファイル名 エラーのとき nullptr System::String^ SaveFileUsingDialog( System::String ^defdir, System::String ^filter, System::String ^extension ) +{ + return (SaveFileUsingDialog( defdir, nullptr, filter, extension )); +} + +// セーブするファイルをダイアログで取得 +// @arg [in] デフォルトのディレクトリ +// @arg [in] デフォルトのファイル名 +// @arg [in] 拡張子フィルタ +// @arg [in] ファイルの拡張子が不正なときに追加するときの正しい拡張子 +// @ret 取得したファイル名 エラーのとき nullptr +System::String^ SaveFileUsingDialog( System::String ^defdir, System::String ^defname, System::String ^filter, System::String ^extension ) { System::String ^retfile; System::Windows::Forms::SaveFileDialog ^dlg = gcnew (System::Windows::Forms::SaveFileDialog); @@ -505,6 +516,10 @@ System::String^ SaveFileUsingDialog( System::String ^defdir, System::String ^fil dlg->Filter = filter; dlg->FilterIndex = 1; dlg->RestoreDirectory = true; + if( defname ) + { + dlg->FileName = defname; + } if( dlg->ShowDialog() != System::Windows::Forms::DialogResult::OK ) {