From 9de465fa4127a942a9e7f8d1651d816bf0e73034 Mon Sep 17 00:00:00 2001 From: goyuken Date: Fri, 3 May 2013 17:11:14 +0000 Subject: [PATCH] saturn: the policy of the yabause team values backwards compatibility of savestates highly, so that there are a number of awkward things in savestating where certain variables are regenerated instead of being stored directly to keep compatibility. this has gotten to the point that if you, while paused, save slot 1, load slot 1, save slot 2, then the slot 1&2 saves will not be byte-identical. this commit fixes a certain case of that. i don't know whether this actually fixes any tangible user problems, though. --- BizHawk.MultiClient/output/dll/libyabause.dll | Bin 563712 -> 563712 bytes yabause/src/libyabause/libyabause.vcxproj | 1 - .../src/libyabause/libyabause.vcxproj.filters | 3 --- yabause/src/memory.c | 10 +++++----- 4 files changed, 5 insertions(+), 9 deletions(-) diff --git a/BizHawk.MultiClient/output/dll/libyabause.dll b/BizHawk.MultiClient/output/dll/libyabause.dll index 909a2d49575abe5824b2a1dd66edd5c25dbd38be..35f27b4651a38e0a87881cce266166fd8516bee6 100644 GIT binary patch delta 26623 zcmb5W2Urx>7yrGpyED5Y$fzhNprBwcv%SsiV#BUrH#Y3pNn%T4TojE_ESOcVCKgQW z73*RLHTFWR*fCMFcGTEW-tQgOl;8jVJn#FO=QC$+nLD?hd+uR2soSfiZm*UhDizFJ zXX9jMp8jdGmp%7>;?kbOdz&KMJ2_`>b6FnT+gO&b_O_7aYdOBnth0OL5N`Ie*WMsG z{`uaKvOMa4K3A38G(!< zs*y$!F*iEglg(I}x}ImuGG@TGxynAwR`p4S+2T3H9#B5Z_srt9GSap%KzBJFfpkI|Ye%+Q^W-6n6b>N4J6+FH877W?8im$*h zlRSINK4)foHkV6gVm)Ey`za6Z-8P|oD5Jc8&@(@zKjZVf4M|hx?DkBokjgkc#T9xh zZ|&OFr{Z78;q`P5>&c{V+Zv`)GUGfuD-U4GdBVfTGmAX)!gG}Q2RvOOdNE&lwny}4 zDtpRD_Gb2M`yx`WR_5>Utcw1MiS$HO8=!o%-Sb_wflQ+3QMG;c^f-h`7+Bhy+&_lzQ3TE6JmvJC({#O@uAihlzt}U(Foap- zxoAjLUS93#YIHH9w-IBKifQI~W9hBDN49mde#0Zrl2^YnEzLXCcL#4?RN#~q!S-kz#rGX^=u8jRaB zQ>5i$HUHfm=E1u+03wQ<>FEpX16D;Q8vSP z#Kz5O6B-X;+IyZf9-_QE)6>04UFN%OQ=5com?oa3ttvB_o?We~;(Dc3HRf(wQLAZ1 ztr(yLDsNFMbw?L7*PAdyovvaUlIye7&lriEnXML>KvFzgy@yF4d*-O^%tP{Oj@rgt zBSMCH1T%sx%}^g_ej&+o)v?UCWcFP3m&`4%@(1;z^1+#1SpI07u|!xi$-0&5@Uk@2 z<7iwPD*GIbOUU$ITB&ZQw8^>ROESk>OG0A7GBtlRKCVy}P4i^Yq9jc&;Anh8Ch4_C zeZAye@ew6yQJJL0TD92j|5j$ge;)T2<}cd+BL8cnN^<(k49oPMTdTgxFulDS*Q@&| zl{r6ANL;Wr7pB?H5Cc(RBhx!h~G$NT^ zbseT6Iq6kbS3dvTTj*7{FV8IZ#+_7mtiWihNIZq4(80^>$U0gYy)MF6sHc-H^EjeChm-$$U!<-?g}cFHXa!9S-SnD2-8e z@%@POg#RY-B`K-o@kjM~wJ3%9ji2>Z`J&J$sTV)nRT)ZCa7)O11`5-P=mZsrWK4Co$-gsxC&#D$ zlacjjyjGoEjFQL4upby@-f}Xo2HTN|BPVO%^;smUCfliO#&VYbC8%JT;VdTT1e+x92X+X@r9^8D^hdK+}TVlcle2e-dOkYGN$ zV5s+bZS)}e=T#k6S3h+$EoA~NC383}C88@zp`ALt!eY4;4Ak_XB3g<-I@LuBle}x| zvP~H@_(?qk6{Jahh&-~8iY)RNqH+$3Jy3wle#IEnJ_?szakykBd3!Wq1DJXR-_V!s z{pV$3H(F)+Ws5`cvdjsn@^xBefy`~lu81f+#nNdJRfA3(B?dAF*^aW=xMq?>fvv2} zJ4HqaY$eoTn!uWv46;vPlbEWcijMu3nM)SySi%e;Mm_tj^5hD#P0vnHepo|v26ij6 zh}&YwB(mPfMryQOx~9MJEhT4-Y`i;as5;?j)0kQe=1}qFE<>4FZDNF> z>O{m@5rsJ4ys^c_41&J&-NnV}L3g|Xyd2!HQ=v!?@_h;}K~Ro24)))ypYOkUUX>|H zTC4Nld^tVnaCQLy`bwAZ<3pLW+vR3;ifKA27p90} zsJg@SHZg6AFQ*-jLrsUOlXH-h{Agz@lT@#!F@(nNoaPbnCe5B4#nqb7of4IPRV_nn4aj4 z;`8ZEV-mmF*Lvk{W+kLCJIPGx6)SS^~(#yd{xCbZ{*&m9F|5dvKzLIL;ojfWWl91?Y zx3{=hE*O=IN=PnjgOWazOA0~bGLefq<4x5N$lWjfKisq#)OGVOxDueCrEW0 zt9J^txz-NJJdK+nmr#$s^wdYZv}sI8de0a>!51CL$d#lums^$`M)QA0JT}&37ih(; z3CU43F7%%=y3;b~BR+k6$@Bj-ayxD0L!z{^UsX+_gXW(oC>>L}gFLEvI1Szv5W5=`dGf7HCv8J^!Z53=Ik?N)DtsWE;YWxsb>@pkDb7>@;SjcVP$i3$?Ov0152Mey3Cn zBoBJA4)58nY+1&As2AD;*%kjrV>pwkzXqIgsVEz;$pRyaFc%vHX$2EdLOMB(r=T zxG)51;Neh=dmt023{(ZG1KB_>P!p&PEEO0KSURH{(g%PPFaazE>p(U*0#4yydR~`w z(}v1gKJB?Gt-wVN^kIVoCXAA+Jhf;f$?wD7DPLGqp$OiYo9k2c`6Y9QhVOlUr1xwR zHZu1NG%jp7%hv>r!4QxFCWB>QA9w>Qj$rwAU^w^&%m53)YOoU=2C9)P9|t;vL0~jU z1?hl*&EPn=3Lb)2BUy5?KWp-^ZTJNP*s7(re^FBH0p3~z*mevI)^P*bnN@7}i;I6d z(tgaHKD`gU%8d%1G7YP_Pj(cpz3)#T(Sz7g%p)>)5L>?OLo|Fw3d^qrS>O=334%Un zc{}I>QJeiGUEZ^%kT!$a@w#Ays)ATh2Q&m$ z&b|Fb7D#S?p$I z@M2PaHannn6wJh=QYCM2O6)f{UUBG5A%t?~E zkgcW+=tov8WaFVu9xh~`FdfO&MeLz~v^k8T<4{Fc-`8aIkL)9+Ihpqpo5(w6Gm7OC zipua^u`BrM&n7Q_Vh1s9(sMEF${)R37UNi9q88#9?ntv@#Y4TMfM$^c%){7!0?LPB zlJF@-^{}**!KeHd1=$|&is0Zu8Ht-4*1MMc3FAFMrzg@uwG7KRzRQ>u@-wp z2zkDi9j0_mCw4h0@R*B~hy{b4E(gUD?q41}au{b4E-z*l~9 zAt@ezn96nA*xvlU?NDcc-BCimKTKsIsDyY*Uq1$an95dQho7*W&>gtH?+;U{B%iOx zV5}j(tY_OQkL@D2bTF0!H?TdGK7U{e0*uysdjqRs+>^afkzgno3BCYh!Pj6S*zTu% zHg*f#|LG4?`4QAZJS82p0Db&nD#wBqepI_yJ_q-g{b4GfWV4mzt%GhK!8>!(-UI|s z`v_$UyC-gSDm)f(O?E>mfnmT6JYXyM4HN?V9+nRV5ul`$<7sb$gQpeArOcW@ayGL? zozjrH6zl>Qz*A5J_`MiOFy2ocNGoUtI)FZ4IQYBdz~E^&OG@5A_$}=9rst9R1eDsx z@-e^#+JGc50<81%wO@V@DYsM=JT0xHrK5?km7Nmw0x9M8v%C%@kld|Mvs!X}D?7aG zGQ{ix=fPvZk?z~ry^P?kxShSKVp7O6FN}dy(j=QrV=j@S*|28zllHsVcG|q-SlBVM zGQBHzv8jwU`2-D46}|QMuuYWiD+gHq5g3$%u>m(hOfI%xF!2!F5s(1~(LG=npmCq5 zg8S{D<*zJX>j?HTU^$G+fglh9!a+4q8wel>d6JR;TQKKWwkp3CH+#Toa0T22&%g(8 z<`^lnpB-r|#6#>+SV=$!nt;xrFBk#70#m`6V=!MBr79pGKuzWzQH7CX``JcX#VNVT zdr8>??88PE&;d8WeeeQ&1f@>0e0fj>)CLCN1c_i8_yH^d>p-?w%7J>*ioeOFZufT2 zWq(q+BTln?ec%EKpdZ))j)Hvf02G0sGpINC5=;RLz#6a%1f9ix4g@d+ctAFI1+;lk z2%s)#3_5~=U@Z7PkLCC!xLNQ0>Q^>Miyda#X;z~u)#9dH$DA8plE)5V+}*FkC;%hC zSda>401sFKR)Z|C8=M9O-~o66J^;-PEErH3#DMz10vdrffyhF3A6%TK!1<|CV=T+0r(kg z2K&GXkPq&G7l6SlgT4DMvE`V6rhlRgEVRS-yjL!>bye=4{$Tl4U<)`54&H;RhP(-$ zfg+%}gBb(91iQg;a19iLs&_HdL4Pm}tOk3*ac~Lz0SZB7lp6<glxp_J-m(M|Sg z)GcIt2wnpfl7c}vs0j?f!?Xz_c~8|E;=RR&YNMXX@6YmHy2YMhn1$Yzw^@hEz4jp* z113Gf>;N0U0g(0ty$;rbec(562fPNsPjM&$-NA4$1?&NN;2sDngz5%~U?7+X2v`ji z;o;#7Py$tWxVO(;)}#(=@fy2Uvp~Z&TiDpBbk5hUIV_Q2cyKn{XQfb&97_K!_dz5~ zpR{+Hajh{?yDfNt6ILbC6e3^@vLvKy5`0Bu?gO?}K=h~Z8glmm>#3jo5`7CSuTWiZ z9`}?`+*6+T!&IuhD<85Wl}t@<$P>0D!`vXfpR%UPD>NLRo|{$>oR;%3?M+bdw5ULN zcP!A5jZfKYOqh3iAsehxchhn_ne&Vd^=^B?wq{CaA&h}vNTVnH#a8lGd&yo^YfqI# z=MeQf_E@P$a%k#xExGuP{jyX@DfyWqElGUOrnv{d$I>psvM$DqP;h*6+)GM$KCzN} za2!7s_&_M)CjkysP4jaAVYmNzS_Y-(2k1I*4@7;$*$e64L4M*c?jJB5Umfq5rsUl8 z!v6>^gP&9!-%8E#Z~f44PZUZkM4@R(sMx2MQMnM6`FD6Y8j=kH(U?zs3MV3N3b+EQ zp%RITQ6-sXAV3RJu<&fcS*v2z3YAi=xa@x!j~>7_PTe86A_M->m##+qF(5yyP(kCV zR7!9jc7jg~6B!e)r2Aet8p;{1(rJ&F{w5 z*X9SxLw0KZEN)b(FA!J=lDsU#m0_6UBt*&mYS|`WTDR+#7B3d1$BSvX%EScUG8z}( z0^ZED9Nxz?gro1fnH3a@>G9oU=S**3T`#ZVE;Fi`WjRklw2Ns%>abiD)rPVhNzt=m zq(93wOH`kOuQ0xwGEIJ1)u(r_Lm7K`j;9p+x#$m5`3OXmEnxyArKvwm%mg`lT zSw*^*cIcSR^Vb(fz|#MsVv+_Mpoc9N%NyPo^r#_ zR)3hvqu_&|X3-o^sSIcwl?_SvirgAia&_8M6-i(i*H+E$DlR6ILb(v)4&^FEUaZFP zl=jt2U?6Fj$~t66DCbmli}}~%<+K0wc*QCiN0E=xD5iuL{xFphWMvp$SlwEfcsS;PKYQ{7? zL3!_Ii$6?dek|!-nKLU3YLJ{rt}@B0%(XIXg}1sm(3{r0o3eNsol5d#NUp*0lrw(j z`NLH1A@##K1GA9y4d)s$C&(}1Tx_JVCdX68`)TJ7Q#p{_4d*1yfLc(A&9t6`z)%tw z!8H=-#g~U>W>!&=lf#k+=bpX(y$O9|<9NyeKlA-zDmQ@ZendORQ`CUQQCZu&s{yxw;Wsk0Tv1K; z#CXxS)Z0hkij}Gciel2&fVKaGEHhwt+C**{xMC`d2#q9FO_(ALK6;Z(TsftxR@0K2 zXOkTkDBBiI{Wbq!;hJ?Ex(siC!c3DDrkZL@Iv7nb7+{8BC zQbp!lx%x3D-hC`i@ACJSe^A*W!MBsf$y@#`b+#|;ExBjqep3}SE2-a?maas z3Bw^NMt_*f?&Q9M8&-L7Th!`U+U?-9+>dE*VFZ5$V+_`9ep@n9g&)f1F})9E3-#$W!9p5I*scpijxAFV zLZk9TdR0`A6Ut}fuTb$OE!x0>1Y3X?sM>OTDG&@QfN5YBh{MB!!89-nc)%jC z3>*QEK?urpfJUG>XbXmeFTi-1xP1kQxLl zBng+@nYiqtUvs9t88yxjymR551bW6^k_T~=O?nf+$C1FM+^@n<^bc1@ee)o`U%CJ% zp6{2@tNeunjv#k2ZJ&X+fWfl?glWcIEw}tJw&A}|<2Z_EkjKqnU!5jU+cxztIE2vS zy_tC8xtgWEz`^2Ssjj{m-b3+R4;Aw}soIJQXU-7^6+21SR$QI(?pye_L<=3#ang|} zh%WeR>bzE*u59RM#l^mUjZsaL{Kd~@a;X(Jsx0Y_=-(Ut9o?05Y0aetzqo-9QxwTb z4-^WR3m3f@+h0}6psQqad#)d|mXu52Vwp5zP2eUlRb`QQ zFp1Rb#C0qC14{S}y>6_f!zy-53-V+NANJ#ZRoLiYFI zW=0kcz_hG%lwI+;hUW*t+x12{I-n$2(BC__CpS!uFOknDaosEJ9M19D5m+RCdD<_p zkY;_kYRq+#+?SiDYmFTF;4{CR>6eTBa=l;f@ynB>em`!S^35o+vmZB!sYR^)xmEa6 z&#nHPO@p!udY77*iR4 z5FGa{hJ7>%N#Rm!zy5~fM@+!{094lU%T|8b*)RJN)G{JKJA>o9;Cq>=7rcL@aAixo zk0AX8I5Q1ri*Mn&1P0IybOFiWYmg3>fXyHWoC9~jOQ4y^@s&UwAcA(F5BMCUfq7sR z$Ogy3HSidGoCudD?}mF37(g@76(obN!A!6OYzDdD9Jm8s0Zl4i3hDw8v;#@tbC3q+ zgH<3KoB-FrV^9qENzmQEJ_!Z2!%crM9?S&G!A@`j+yZ|A?PQLR1bPq;dVmx#1uO!a zz(H^sJOYX|>>{8JaDt8?8B73k!78vDoOR=J2fP76Q_vH@3|fOEFd9q;OTkuf6kG>| zfSn3w8)yKUfNo$om;@Gpb>INF0DK_kJCq5&2aCZLU^;@!Rqzz3F$cmxeb5+m0mDEl zm}*zVmCmm3}QdNG=^1YHhVc<0aM zhA?oc6#sycP%J~oEXDo{6yEM0&dxBW$h>)6x1e#EaLa+kU=w*ek2?a#aL#-#JLs3? zm?dB@I7+52K)0RpZd<_Fl+uEqu|mLg@B;9^z>Nz=ftlbWcnktoV3Gn6^a9htI&bYo zoK}rL&+C`K74m4Eci<9kHB+|vTC6^B1ca@Fk?4(F#_ix3J2}6So5QRl{a11Cn9bha ztGP_MVQaYiOk;9?EoWvnlBjiDRc026TgM%#a%5sjZ%v=NhJGqLEfw9>5k0)93-risMP?3hZbGS}NbgPD66QBj zL_=G=5u4%DW5$!tTM_I=#%$$c7z6onD~fwcZf-?!rx$GF>L`C6OKz^`;#Lpe#?j9% zM{Gy-I5KNHvg3W*xp?LRdAl9ix03K3c>6SO{0{5{jLZ9ICwEWO@+srIL+BTvb7_22aVU)eofnUDmn}|1HZJQ_>3Ga#BV+|N5P@Liou68kg~R z5$u18725B~JNF1$}t__HtkJNvr-$!`6WJw7nOCoTBM zRTwhvf3mQj-d?6}amhH)Ulx>%L+k&^d!?Gc?-~#D=cT_mD9Ky(fAVf56F+jbTHbsA z-v*5SR7CxGA4*=g;qTh-{-3-p{CU&IT75Uk(~nS_m5HI4t5-9q(x-_~J>4C(XFQ!W zmGE>nbf5gw5P90HB;OT7<)@N;#a!jOJKp_odZTE6bH0W{%CF|=FYRj2S88&jkH7s; zY$)!L9z-WvV(}$>+d5sIbiO`oKNR}{cI>#LnZ)$`wMt1Lu)aIutVVzE)77Uxfum~4 zxveH{mlwG4BQOPi>V~gckFcllLmY*#A3oI7$kM|xygP`(?U~2 z4hS?5!~OQKqwn>4V$o>2Fu`QDMpKumPIhZFvCI@wpwU#ppOK0+nik5JCrC@JCJuks zo1xXTWpnHnO6$W?AX!GchgbZ?}BQNV`Byb7mY_5U8mN z+jeK5rcXI?^keZur6DI_)_00`#cYBvp41G&xXdH%gOL33$fxAlG&#|?k>mtv3^*eG z6{P80vA;h#{S3YyPJ62vHxRbp1=6RCrYm#F>n)>M#VG%(O8W4c{>%yQAzqWKbgvE5 z@RZV(H2guxYyL2mFF|9(Q&xbUV2nRZfF)JjGtEgwl{SOl2$>?q@e7CEXvUawT{gQ-Tz$;VESRjia&_ z80BXlBxSZgOy!zbjdxDCCP9h6C>KO(j1`lwe<+46FRQk9RAXT;_8CZ>Dw;@`C@rdB z_6#J+RWt*c_T)?z&1z;E8CzAeqjXYj4cu?ZP#l@W9Hr?5Q#d_J(?R*PCb<=*2`~G+ z-pAr!CLlRG6Cd9D{-{SvM{BwSE!9J*YVhZuqw1LL-jUIoV2;^ECf3xvfcT=8W(ZTp zd%cz>hV|qq`JD|kAxyc*`Wimms`=Z&vG|F%Mnlc3aH#Fb)|!rZ?(^1~hC!)9NtQN{ zNn~SdO*o9>;}G0KgNFZT@IGj*v9n6@nAAwrRMTbE(I}$oY7}{pIkh#4Ox$PSUH~Z| zfl9=sA}s}Ec)v>2XjJZkOE`RA#-C=p;Nwil98l;F7v9Gi7d93DsDzZq$omoo-5Yp# zK*C!bX9HM112PjRV7w$z)EXY@lurd2AQNPPD6XVQ5!lS=b9iSz`NcHgkC4N(GXHP< zf6h<(cGh%^q{aRFHCg>j+AP0@{MK1hTq(2tKT)Y2&<%j^$njC+b{9?6Qdzjo0|lg1 zS50_*MQ8l+A7D3ud8JU~e};x9{!>EK|62*HT!MFbSB<5#J7o+$w;YS_UqRkDd?$)9 zKLy{ArXe1Zh6}zz+IWP&_J_Yi+*B~FBpmfEo|%AWCiUle{;()F~jXwzsMm2uthLy3K?}?T!MLYob7aZ9nDy|08K1Dq3jxJPu9J zpr1er$RxUn8V7zvIAWrvs{DV6_%vhV7O0WB1kw04{l1BsFE8P+tLv<-?~d1Z(D&94 z){oNvs6VDZtG}s#sV~w87ryh9F~&S<|F1m%&aBc5^bq# zv04UNMp)7;vn`7)Tilid7L~P(HNvX1x~yZY-&lXN{%l=i-DJ(S9wKq1|kE*<0G%+dJ8N*puy_+rPF?wtsJ*ZTHyS3++qoE9@KXUi&`#LHjZL z75gpwpZ2Hrm-YZhc}JL|zQf=U9Zemr90`ujj?WxPjzNymj;|f5j%kiLjzx}4$9l&J z$4$orN1;O_#)@@BL9~gj#02qkah~{-xKi9G?hz{IVXzZe1^vrOWg%LqDL93$ zLWZzT@Cp}%D?)+rr|?90DHI7RU4X8vuAeSlw?%hOcUxDe`%CvmSEN(u)p}7MM{c{c z<=xZti}h>uTlM?&2lf38KO43fP8#wJFAM=jqtStJO*eXsOO3h4%f`FL2gavHt*N3Z z%49S(HnlSKHhpRO%Jict*L2Zz&2-1~z*J}oHAk9b%m$2gAM*tB_vRqW8%rr`Ce7_=*oVMWXD8Dx?_RkXU7&tuH&fVH^+6ypNLPV^-5ULF z{So~I{qOohePcsALr=p{!*~NJ6ty+U)2W(D^{SX^W1coMMVM=v?dG=TYL*6;+ZLs* zldZRHsBNrmvTdPlg>9=X$9Bd>c#F2OTXe)>+*>%>pt_wL-5di^;qM$X9djMa9ETjo zFy?56nudM&9j{570LXCLPX=hx1u&biJXook(2IOief9p`g0x3soV_g`JN zTz|SAyA&y`A{C8hgi=BoK`&T^c0wm%sE{Ho6@C$R35SJzObDe;qpPN?sY}px)_txU ztNTGmbgOh*b-Q&Bb+2_QeXzcYzNWsR-lFe8bm`jK;m`GILuo^lK`_`1E<<}mXDt5# zh7pD@4HL)~r8d0Ma|2`48e@&3v9Ym(v7524aj0>$@f+i0ayw8P>V9vmX&P<%+T<}k z#`1q_s%VZdw>E!cK5RZ|{>}W#Tx70m>0w!6S#Q~5xn#L+xo-)ywzV#>F1G$+U2DB; zyNRi4a3bBs*38RED!fIio z@Lp)3`&qYHw?p@*?y=6HPti}+ztOYk2D3plw1oD%WVmkl!*JhF(HLQ@ZESAbY20f( zWIS$sWh^q5GSxKoGp#pmF=d@VzZ?KK?r95zQ+#}5t`>mW?5 zA~qM>iVL7XY*M_`Mj9u53+3@r8sZ%5oZwuI#=depYq{*Mjjr9U9M>b)bJuICGBQ|2 z8*H%Eg?d7Fp+8#vyP&{Qsjk!M8teLFR!q=M(w)*>)cv7*1|?BOAF8jTH|gW_t@XY1 z1NFo7WAv%|bUo2$>euKu>38b)>VMVe=?nCau|vE^Pw|FuLrqK>tHJFw#2eaR)+8B* z873OOGt4wBF#KZJWY}#u1oiTp;fmoFRLpx!qSD4NV|8OgqtzH^j5j7=A`Lc~L2(%Eb=Io5n9^JnHH^C0sG^Oxo` zW|QTlq2XUt)b0?&83m8xvj0OqpiEGk8PlBm~FJ}E89fd6x$42hHb&$+YOzh z2W)CPZx69owpYOx=J zXuYo;)3I@EcH}uOJMKB2I~XxqtSvSaO`=0=B#(7RvAftu94HPGe-M8Zw?mbj7O#sB z#lJA;6;f%5mnuk=rK(blR9k8w86>M)lBC8`b4-pzsS6fFk~B~nDvgpxOJ7M7p*+8r zWsPi(M~VicD5<7@8+mFkk~}Dts%X3;UpL?g~LVcet*tE?GBPw?wyIcLOSh)z{KH z^qpZ?jKDPdR{yjggou4UBqYM`JI{lM$FHZsR=T9c)a`jc<&BrlqE}FgXsnO_xo#Os`FW z=5iSE8s>T!@i=n_^KkRG<}~wkbB1||c?)ciQ|9yLhvsMI_vTWTU`qw;01iuU%K*z5 z%XG_p%R0+0%YMv>-=L!ISRPtFSV~)KSnFEN))v-8>j3Ly>kKHXP1e2EgVrZ7O0+OY zy4gOr&9%7~**4fjSQuR}`YHBR_MI>#&e*To@578>96^oH5|+-8J8}+?D0p>pJGT;QGV$ zw8WIif+oZ`YRKIB+VWBpY#$?qRN)Y;2!p&{@h;H5lN!e+R#Y1V=7FkJ&sGz@gE)K#H!d-?N|++ z#J=K4(n!!oS2!zP6br@DQ2LFec2Ymg?+MZjl3PU^p70d;NcEn8Ye}R(5uB4swojPDcedI1f4%u5uVRy=$mz zp=%c%pFCFaJ*pKbR1pNBiO@|LB77sv5|$I)G)*&iIeia(KbY#5_2&&Y4R;KG85+QB z>u(&1&3KBuIjKx#Od+Nwrgo-I*o~K)R-67XJ;Ty4$SN?+Jl9OH2ySDKs*UL{S{hqM zTEH%deWM2z1zn6%-RM9cssGP*aHe` zBGk+f3U zN?f(I@%3D7UEN&$u}hD4rMb3Z|2pIP-Bn2UuL4$)g`OxS@InQlx}d|ymIsX5Nc>!A zw~!;8hUI%tcp(%Efx1e%Se;(y(zVug(+z~dGZ7Xr(XD_LydN9fRc!Dtbt)2V(pscB z24YxZSYy~`ID&1d0GrZBLn&h;D3-m()5aUvaH3%&4#ZhzE%x=3rhL;~({tF2jm<;N z>qw$XTZ_1-YAeNdvi892{@gmrI@h|~dc=CoItY8kLR*$?ukEbuciT&w#vVdGuceI~ z_>TeE6NiTZm@F%CWZ3VhA+{0Ia6s53=88tCtCTHWlYCNDXJco37=a6&>zxOj=biVQ zZ=GdbEnGdYq`z|=z?s13QWUZZdX5ej>_SIjFjns((r}u_78|Q~>!(A#Ue^a1LJdYJ z(_an08w|z)rn9EsVXOaT4z&nmBd4w8o@Ch!+vKT5V~w@e!P(1V9gOCTwSH?&vu?BI zV7yJX*ESW-Pz~*i?EM|z;Hb0IamMk~QCci7))Mt%H}MP9e<6-F@5LagCZ>CPsjsv| zIxJn3RL)?uBf;4ZYcU;~>X!3?)9h;EN=7S|y4JgPyJ3^b2O9;aSc9gN5t^YX-wA7l zGr~pTnh>gs(G9^s&eR>phVot)sdwr>$3~K+Kcj!8k2FZI(2@;bV9VHPI0N(I4|yCz zu~kUMfyPuA6N`-7jR!EMca4R{GNw9ETYXKLu-HzS&Z8&la^`5WXl{osV!U~=`4@Ax zImdj$d>NK%n5C*E)}pgCvb3^vw~V*UBhPHwIC3CF+Zexw(X#Fw>tX9L>vd~^^^VnN zEwUmvEA|v{`MU zEzZ`|*231tmSCHWga2Ne!mhS!?SZl#76v1_rM;JZoITsV*Per;!!i3QXzdI3e$FvY z;w*xuRlEM#3KF4nzJsk?==#g$e&Z^l3P<4N9YGXJNc>9fzqqf=_rP6bgR{ zZ-ja}r>>7~uP#S-Sa%G%B~N!jm#^dWmGn0KLL96!^($a3Z@@I&uK!D~F~t6-N56+% zoMSkL$yyIPsu4D@2rIbhAY%*6SdVdo@e$_gUodQnj0%(5q=muT8D?&lX**6Cdrdi} z!=_`Hzs06<=DL`;Ddy4W;0fkb^Aw!BcbiX}@0n{^>RAMf5k3~t5@%^@8E2brBes0o zLmNlRR?$XBbPT2^Y^HH-FE*vxYtrR9r3^s}`)}GdW7^lhB@2#_~^WeJKVclcR#oG8CD??=~ zWec{|u?aRaMz1l(t{qO>$+i);FQF^lwyCys*iOW@#P*AAt!=Yyhi#87*LKl%)mC7; zXL|%U&KuiD*x3OXVR}faX0K&;!hYy&A7FPU*r(dlVQEqK!fBWiSLCx(h@&#LW{0DZ zqq*#17%AJ@^Bq}^osPY*w{PIc{?VZp1K_BsE9yjxDB*0?0lKU=@wU@O);*3L?1Fez zED-O(_3&JLBYqUsQUFZu>QXHj+eXPQ#mUF84y5b|Z7AtiS{q3=x5AIt+Kteja&Lf& zKI}Sqh9>VM{*)D&ZEUs0WOW+ju8&8qmkGG zR@QLn^FvS*EDS73Y6=sp2aXZLaNe9GO~dhFskBu(D4l~Hs&$5v$okks7CN`WhB=ON z!VM_+*G|D@bXi@ZE6(+~Ynp4eYo2R`>x%0hU0g|=A{jlP5(2QF$717ZFANZph2ijA zjP@_CBAidZl6C$M*tm~kY2DSm!s4o|uZzP(8-0>~3eKa8^y}d2IjO&;f9lpN3}vwu zbcE)b43)RV;58gHtTXS&LQq~yemSk8svn^{a$1RsFVKD0JSoJXL8(EuK zTU$F=$HB1Q4t4$~O!`_d>3@Q9DYk{#t?(7DhZ+fX#NbTsfFr0cRQME!$MFk#?U2qna z><8L{lUN>cjnIZ$$~vn!1!q&|Jh*>WJGVLaJ5M?8HgRX8A=5-wqaJrTas&DE{ZZO~=uw*RfOe%ILy zPMp^};M6q@_I)-SfLdc~X!y;>V@4lbes!VOhe4~)Gi`#cf7`Sk_Te5F_E#-`z-D-7 zQCMrE2d&nw)?U_8)`_qg(ybZPR9t1GD-&;d`Z#a7l9YO~>N-9kQFcZH*8 zu&e_nLXWS*s?V_+GVvvAu)6r+pC43*+pQ?BCfl?8LqVzS?#6 zZT4Mo4dufg4{(IyaMfJ)%+{x_+2J@{eIvW+7CDx~vq;zdL3kHW!?XCtp%N?LjMZA~ zD)uK0zlY;$7Y^6Q#7kJ~Z*j7SfIG=1wUT;DBVnh`m41=7!_|^6-Iv}=LGti4hKqI} z?Dy|6NE=|-oORxIK6k2J63m_DX8Os5z2#Ta6?jY-oSbW$B^X2l;jy1({@Lt>>#o535+~&< z7K5d^rKja{Xq+EmHXb5#CGBTqb0iF+hRwBoNT5?26n0n?ItXZqmF#XW2o8E zSQquh#$rpT*uLTjae_EqB=C-I6AwVoUK7Wlj|-$bFnb^209VeL#7>u$U}=+Y97=h&EKc1O7FVH$@W_-`&0( zhszgYvNT*ufg@yy^QN<&t3*L9gfoLvj7K4A7@c2Yt&}L__rfyWSzR}MPpFy!Fr|Oc zlbemTl^1-c;oRkL^0lJp)|>R^7)x1O6KrLh@i&J^dnSB4h4#PfZ|p^wjwf&?f9qW7 zQe ziBO!^Oz>2fh8jwi)eu^c$0@=XyuTx~OOh~FIEtBCOZS;>ur3&fj0l6?kY?C!@Zk># zp_p~`j5=d`<0$hX*n12tX(Nn~R*MoZQD~D>$ca0Jw3`k#{Q#yzx|s1p%fdHtsAWBByoV4jIHfwoKH8wm3CbW$H~05q{BLIFLjstLlcja zrs6#6l@3XP@We+sYe5Y+!y&A@b1>%O*I4VDobEl&GtP4GAyjcCz`-&Ce}A~-QWS6s zA9_e3)c)6IHcRh;CHS*`y?%@SPaMQ_FvqEPbR>K!i?ByMHheHtHM)$QVOb9|{y!y~ zYfP1O9LEoqoP(rzNu7w`T~w^+emVc=qPe^cnF_Yb%ch%2GN)$EaOw#!i6x-EIocc* zjnEZh;e{Hwrm5WlSGHxCw!AbUWh&+^`#i^2=k0Tz-|hSTe9zg0RoP3yPHWvMSEfEn zm-Tkzrjcs)Gsjxf*|2-8ChPZ!);#;Becw(+2@OU6ERPmPH%BX?`=bW|3y7A` zjpR@%Un@n5%a!O{Nj32WU-68cTEO_<*K75qaD&}uH!Ff`Eaw?NvTCiPNWbr`pRJ2r z(($$o<96&h_B^}RK8CC-5@j(_jA1=ggHEh^x?jyI*TjkYx4c;wphMx}! zIOMkmsv#5(1^-rDLfBO=wMt2HCXdsMoljD7Scl7%*Oj$U>MiJk9mwt`==5IQxByv-(3l6}O`hfX%@1yaQqR5HWrNH+j{# zV?1Jk_Gb>pKwGSs`Mg=cCVd6s7&EKQ(~Lj|&Zmzx90Q&UQP>DEt0DSqvf5!S>2{XA zz+TK4l-mu6x@-0gdmu`9GE=*bo4AkM@)E1(UbMSN6$({fk(h-t;*yU=t@s>u@<{Y? z20BBS3B`#8eE9{&qKL|uI9n-3rSqxN;GE_J286j2zMKqQ9_)^DCD%g*<})OPoWu2C z1tSOZ{DF!&<-IKNh4Fr1}3+=M*VTN|&-F!OGk#?IYl9l)gh1rpRe>I(TQc zJWno?SECa5B4@skPhr6#N^fO=k_8wmN_0aoew74)ZA5_`ilhp4vO0@6YZWJQ<~Fq) zz4HMb(5(KWhO`uRRm@`}wRMC@sLk?lv1sLe|~e99Yfu-RaEsez(p&?EVJmKkA)<#B_QOy)-|= zpFm`k>%SOZ8{RQ-+2^o2kNM1N;;^eVn92AE(Jz<^SZKN};krDN`;h7E&Wm zy9O)kjYurfckqI2Bi~qHylT8=9EleViAeEgJJKh%$=qe`!P|dLFESLKR5 zVLpaa5QMX{-33G?0h+9YVEyQxce^-)y}be6GjL^}b1>JN@2&QVy)t^ciEQ?)*X4!5 zx9R?K{&YW&we>P_z zxHQnU>SffntG)}B*Yv#gOvpN&OY(|1Zw{tt<<1 delta 26635 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 E1v9OP!~g&Q diff --git a/yabause/src/libyabause/libyabause.vcxproj b/yabause/src/libyabause/libyabause.vcxproj index 9037a1d759..1b8bd6f722 100644 --- a/yabause/src/libyabause/libyabause.vcxproj +++ b/yabause/src/libyabause/libyabause.vcxproj @@ -105,7 +105,6 @@ - diff --git a/yabause/src/libyabause/libyabause.vcxproj.filters b/yabause/src/libyabause/libyabause.vcxproj.filters index 9497b872cb..3c30dacc79 100644 --- a/yabause/src/libyabause/libyabause.vcxproj.filters +++ b/yabause/src/libyabause/libyabause.vcxproj.filters @@ -93,9 +93,6 @@ Source Files - - Source Files - Source Files diff --git a/yabause/src/memory.c b/yabause/src/memory.c index fcf8309776..c4d40ad8e0 100644 --- a/yabause/src/memory.c +++ b/yabause/src/memory.c @@ -1067,8 +1067,8 @@ int YabSaveState(const char *filename) ywrite(&check, (void *)&temp, sizeof(int), 1, fp); temp = (yabsys.CurSH2FreqType == CLKTYPE_26MHZ) ? 268 : 286; ywrite(&check, (void *)&temp, sizeof(int), 1, fp); - temp32 = (yabsys.UsecFrac * temp / 10) >> YABSYS_TIMING_BITS; - ywrite(&check, (void *)&temp32, sizeof(u32), 1, fp); + //temp32 = (yabsys.UsecFrac * temp / 10) >> YABSYS_TIMING_BITS; + ywrite(&check, (void *)&yabsys.UsecFrac, sizeof(u32), 1, fp); ywrite(&check, (void *)&yabsys.CurSH2FreqType, sizeof(int), 1, fp); ywrite(&check, (void *)&yabsys.IsPal, sizeof(int), 1, fp); /* @@ -1299,11 +1299,11 @@ int YabLoadState(const char *filename) yread(&check, (void *)&yabsys.MaxLineCount, sizeof(int), 1, fp); yread(&check, (void *)&temp, sizeof(int), 1, fp); yread(&check, (void *)&temp, sizeof(int), 1, fp); - yread(&check, (void *)&temp32, sizeof(u32), 1, fp); + yread(&check, (void *)&yabsys.UsecFrac, sizeof(u32), 1, fp); yread(&check, (void *)&yabsys.CurSH2FreqType, sizeof(int), 1, fp); yread(&check, (void *)&yabsys.IsPal, sizeof(int), 1, fp); - YabauseChangeTiming(yabsys.CurSH2FreqType); - yabsys.UsecFrac = (temp32 << YABSYS_TIMING_BITS) * temp / 10; + //YabauseChangeTiming(yabsys.CurSH2FreqType); + //yabsys.UsecFrac = (temp32 << YABSYS_TIMING_BITS) * temp / 10; if (headerversion > 1) {