From c09eacf35a6b5831e3e0895863245c41935313fe Mon Sep 17 00:00:00 2001 From: mizu Date: Mon, 25 Feb 2013 00:53:49 +0000 Subject: [PATCH] git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlToolsRED@591 7061adef-622a-194b-ae81-725974e89856 --- build/tools/A9Ovl_Chk/a9ovlchk.exe | Bin 506880 -> 506880 bytes build/tools/A9Ovl_Chk/main.dcu | Bin 13689 -> 13689 bytes build/tools/A9Ovl_Chk/main.pas | 4 +-- build/tools/A9Ovl_Chk/main.~pas | 47 +++++++++++++++++++++++------ 4 files changed, 40 insertions(+), 11 deletions(-) diff --git a/build/tools/A9Ovl_Chk/a9ovlchk.exe b/build/tools/A9Ovl_Chk/a9ovlchk.exe index 2e481af930da17f3f05299e073f0431572820f64..4d17ced1a0dcb9b7c5ddc34ff640e2be55ad432b 100755 GIT binary patch delta 2421 zcmZvc3rrkE7{_;@%wmP!)k0rFOBEBUwCv@u)}-b7;7DV9@D#x+2L;*M2WJBfi5N~# zr1g4oL}7R%uUJzl)TTLdv9=1Sn$YxOn@ED`!`ft#YPShdt~oP)vs__i7H1W#uO%hHeRKU%h{qI$Pne7L-9l@LQLjd&$W@V*L71oDtW&3FguC#PBS z4Y}8h-$B<%F~LblAs-Wba8>YBhM?391n4E}Su{0?1i@{c@fk^U3r=2}_*I7BZu;y2 zr7o+g?7S18^c;)iRFczzH=uM<#hP3~T5!o$n?^fA^!vXvnniLdn{d}a*SACv1ef)i z@`E<2SX|CAra?oCc+{}xx5W0JdqAsu2J*P*_rMp8OBEE#<4Jlh2OC-nuUp^w*x<&u0hj10a|Hr!Kfzj zD}+_~^WkL{ZjrabdUsQ@=JTfV;Z5d~Me-hE?8NKQULtkk7_e*Y#IHkwbH7ifRNRRYqhM?8gI-^u;6Em{PP;1Z^!HRvmJwSO$S6)yP zG+!(%C@4K{lp7drfNK=a@Zy#L9i1v7ANAt8m21AFbTrR(*Zfl!JUOlj^Tj;*53->T zC%yJh`~wPFBgtSu@e!6J$b28`fL~TzVHhT|+F$})I|WczCNEPuy~mw56Ji~VRR%Ss znUN%>WG6j+c*V0ZY_X^_8=cZJs57LeUPN5zqOQ}?P zJYk;yMB{BCemk6Ii??wAPoiua%*4UV9vNCVQss>l77>v5y0@i){?D2;WBu4qJraU@=?U zP%OTuk%kiSDXsHdNl2u&gj>s2FNd$4Ut}xi)(+_bDhJ%q1B~no7g8|n(@7z5fJG0; zg+=0fFeD>_{c&X8uS2(11{(RnH+FW53qB< z`Z67p9u9bAF~IB%b3m;g;OBrLJwWAv8+w3o=|UY0Z!I#(rX&uq=mD7=P@xCdIiOn) u@NmEtJz$sv=wd+oUvNN5`J!DgK;?iUJ;3ShCsAHB)|6tN6i6)z2o6|kQa5W*Ooy6<8j}C6wYw~)}x%YFv z=iGB|UoE~^i!XLmk5I#z9q1P{X+=RFq96nh8-w8qfk)#+K{%>)$JF^OAuPSVuCC^Y zA*1?GSyhzayO1S3oO$%n+ZE|G$1vmu+1E?m01P@ydW`u$ssW}YOn1$zUSt`I>GY~~sH zdu5ePN!7&Ajklm<d z9P_1Ya=?Mhwk;P^7|@x#$#j?pIvxj(LDl3hhmuv>gFDd)(%*xhL&M}(HcXI5dSSRm zUg*X8oj%AY&-VN2e1hHVbA`ZB$R6fKGgrslOUw;tZaf+4#ZP7`(EOmE){ zZhhX0dxg2rNJ$WH??_bYye=QV&gx{Ilu2}bI1U{oVjqr#a?O4CRcO*+AKnRdditQi zubu1q@nICQ4qD)B7{C=ljmP0ulvA<1Io@XV20^cN^z;ntxm)&l;TXM5|1?wvmMmKU zaP>ljEtKxxE&TwNJ=bTuELU8GGU|QO49pCQ3t58FZ}Xzupe!s(cNl73a%oueZ}<3V zK#~*>;Z2b?Wp&XN%vLM9{M0>HMp}k&6N(|av#^^#$@a5YpZ{;nJ!;Ec8c&1_^0$Pk zEU}tT^ujmm=F$i(!bw`x0}7nm6U@ayL%3uA`5462D(8E!+2}sf6-ihmpUJ; z&&N_6?B?scIYsH(>b_ER0@c0qfR5J{HU>I6MdyC0jwu?uTB{6+R%#6e1@{~#w})|Z z;{ga=K5(i@g5B3gF1NF}!%vsn(FoScrV9Xf&$YM0ef7QOwm!u|kUQ6Q$2gHISy!}H z_!fmP5Ab{7K-*zPUzIBO4yOvzA?MIJ{3FUMgvl-NuunORAZVTRj-Lcm);s-lu<&QN zWr7@^4|gy;X9lj-@{BDixd#|Ff1hawTi$ruPwlB^N`lSK&` z=4<~BKW4NV?M8=j!1%Fo%t;Hh8cp!%2RTGrtbI{2@`|-)#TY2oexn#gCEBP*fk|hZ zgDk>#VS=StBUqTvVp~hJ?KsE=|r~$PcFrWssalo`1Fvyt4DfP5ks6>|&o&$QRjL8v MD&V|WsZGoI9~h@pX#fBK diff --git a/build/tools/A9Ovl_Chk/main.dcu b/build/tools/A9Ovl_Chk/main.dcu index 169b680ccfbd7f8f09a029dc9b0efcc925b916cc..030910eb34d16de597a5d69d94d6aab121ab6145 100644 GIT binary patch delta 566 zcmeyF^)pNHE&~H!r6~i$V!ucy1`wFWU{k=6o0yrWSCCk|z%O#6;wwHz!OcAUr&t+h zZoV#}&CYX#hk@Y*NNxAj4U-F%g(oY@DDm7t2(ADNCIJOMAOsfx1w|(BSLU9)UdEk~ zWAb+y4Mv&C3bHxk2E0(?j=64Te0iIZfuYy+%PyD6i)D2fBPL&vm0--6{8Cntv0^f} zoFZe#WL>!=#wn90$brOH%E?MC0qXCaTJh`u|8CbSV0ZoB3gTsKnEXI)EzpQQd63fO z@(MsBP5{Y{$uH%TfkyZ$NLXZmH1|dTmG5E!`3Pq{O9X026zy-Rt^emkpdN1LAtX zxx655#AFL4Ep51(68>(WAl!t~a8#~YM$Y73B?-ow$;*`F#U{Xv`tSPUHS>ShC;v!jlzclz6Tn1Xq9slYoM65P}PUf+CamD|1g?FXPV0 zGWolV2BXAe1=$>N9bTw$$6PlvzP!!Iz|iaZWtYR`#j-k#A(Jo2N-(BOekrTSSTdPg zPLZ)?vaVbbodtff_ zp6Ubip6KKdMM=gRlk*fU8NW$^X(n z84D)gR*Gg^Gud2O59rb~WlP2nn-?f&F|u$0eZN^qwVsPHb@L>BMJ7hq&07rbGcqT8 TGf$pktj}Cs%)I%C@m59v%7?&9 diff --git a/build/tools/A9Ovl_Chk/main.pas b/build/tools/A9Ovl_Chk/main.pas index 7a5b359..9fbe9f7 100644 --- a/build/tools/A9Ovl_Chk/main.pas +++ b/build/tools/A9Ovl_Chk/main.pas @@ -184,10 +184,10 @@ begin s := 'game_code = '; for i:=1 to 4 do s[12+i] := romh.game_code[i]; //ListBox_log.Items.Add(s); //game code - //ListBox_log.Items.Add('version = '+inttostr(romh.rom_version)); + //ListBox_log.Items.Add('rom version = '+inttostr(romh.rom_version)); //ListBox_log.Items.Add(' '); Writeln(flog,s); - Writeln(flog,'version = '+inttostr(romh.rom_version)); + Writeln(flog,'rom_version = '+inttostr(romh.rom_version)); Writeln(flog);//改行 //オーバレイチェック diff --git a/build/tools/A9Ovl_Chk/main.~pas b/build/tools/A9Ovl_Chk/main.~pas index acf0f10..acc612c 100644 --- a/build/tools/A9Ovl_Chk/main.~pas +++ b/build/tools/A9Ovl_Chk/main.~pas @@ -24,6 +24,7 @@ type private { Private 宣言 } function CheckSrlHeader:integer; + function fstring(s:string):string; public { Public 宣言 } end; @@ -99,11 +100,32 @@ var implementation +function TForm1.fstring(s:string):string; +var + s1,s2,s3:string; + n,nn:integer; +begin + //'='まで切り出す + n := pos('=',s); + s1 := copy(s,0,n-1); + while length(s1) < 16 do s1 := s1+' '; + //';'まで切り出す + nn := pos(';',s); + s2 := copy(s,n,nn-n); + while length(s2) < 16 do s2 := s2+' '; + //残り + s3 := copy(s,nn,length(s)); + + Result := s1+s2+s3; + +end; + + function TForm1.CheckSrlHeader: integer; var Rec: TSearchRec; sf,s,ss: String; - i,n,Count,err_files,ng_entry: integer; + i,j,n,Count,err_files,ng_entry: integer; fsrl: file; flog:TextFile; romh: TRomh; @@ -162,10 +184,10 @@ begin s := 'game_code = '; for i:=1 to 4 do s[12+i] := romh.game_code[i]; //ListBox_log.Items.Add(s); //game code - //ListBox_log.Items.Add('version = '+inttostr(romh.rom_version)); + //ListBox_log.Items.Add('rom version = '+inttostr(romh.rom_version)); //ListBox_log.Items.Add(' '); Writeln(flog,s); - Writeln(flog,'version = '+inttostr(romh.rom_version)); + Writeln(flog,'rom version = '+inttostr(romh.rom_version)); Writeln(flog);//改行 //オーバレイチェック @@ -177,6 +199,7 @@ begin nums := romh.main_ovt_size div 32;//Ovl count noc_size :=0;//範囲外トータルsize noc_sectors := 0;// 同セクタ + j := 0;//通し番号 for i := 0 to nums-1 do begin if CB_add_ovt.Checked then begin //OVT @@ -199,10 +222,10 @@ begin ss := '(A9 Overlay'+inttostr(i); //max_sectors = (DHT_OVERLAY_MAX/512 - total_sectors) / (nums-i); if (total_sectors < 1024)then max_sectors := (1024 - total_sectors) div (nums-i) - else max_sectors := 0; + else max_sectors := 0; //CARDブート時、マイナスはエラー(FAT Broken)になる btm := fat.bottom and $fffffe00; //512単位 if (fat.bottom and $1ff)<>0 then inc(btm,512);//上方向に丸める - if max_sectors = 0 then begin//最大達したら丸ごと検証外 + if max_sectors = 0 then begin//丸ごと検証外 top := fat.top; sectors := (btm-top) shr 9;//div 512 if (top and $1ff)<>0 then inc(sectors); @@ -215,18 +238,21 @@ begin if size<>0 then begin inc(top,512);////上方向に丸める //先頭の未検証部分 .. 不要? - s := 'offset'+inttostr(i)+' = 0x'+ inttohex(fat.top,8) + s := 'offset'+inttostr(j)+' = 0x'+ inttohex(fat.top,8) +' ; 0x'+ inttohex(fat.top,8) +'-0x' + inttohex(top-1,8)+ss; //ListBox_log.Items.Add(s); + s := fstring(s);//整形 Writeln(flog,s); - s := 'length'+ inttostr(i) + ' = 0x' + inttohex(size,4) + s := 'length'+ inttostr(j) + ' = 0x' + inttohex(size,4) + ' ; '+ inttostr(size)+' bytes'; //ListBox_log.Items.Add(s); + s := fstring(s);//整形 Writeln(flog,s); inc(noc_size,512); inc(noc_sectors); inc(all_sectors); + inc(j); ng_flg:=true; end; size := btm - top; @@ -244,17 +270,20 @@ begin end; if sectors > 0 then begin//残りあり size := sectors shl 9; - s := 'offset'+inttostr(i)+' = 0x'+ inttohex(top,8) + s := 'offset'+inttostr(j)+' = 0x'+ inttohex(top,8) +' ; 0x'+ inttohex(top,8) +'-0x' + inttohex(btm-1,8)+ss; //ListBox_log.Items.Add(s); + s :=fstring(s);//整形 Writeln(flog,s); - s := 'length'+ inttostr(i) + ' = 0x' + inttohex(size,4) + s := 'length'+ inttostr(j) + ' = 0x' + inttohex(size,4) + ' ; '+ inttostr(size)+' bytes'; //ListBox_log.Items.Add(s); + s := fstring(s);//整形 Writeln(flog,s); inc(noc_size,size); inc(noc_sectors,sectors); + inc(j); end; if ng_flg then inc(ng_entry); end;