From 1ec1268e97cd9b7a6ce3d6f192511daf5131008a Mon Sep 17 00:00:00 2001 From: Zane Kaminski Date: Fri, 2 Apr 2021 01:45:41 -0400 Subject: [PATCH] Fix 24-bit format bug --- bin/driver7M5.bin | Bin 1591 -> 1627 bytes bin/rom8M.bin | Bin 8388608 -> 8388608 bytes rdisk.c | 5 +++-- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bin/driver7M5.bin b/bin/driver7M5.bin index 7e8613deef36f2e78e0f7183c72a0081c4264b8b..6920c07841b88154099f585bb991a322daf99abb 100755 GIT binary patch delta 338 zcmdnabDL*EAY<3WAOj{=g^ex3jEp6lXE3f}5(@0s=ho*^$z%}O@`r&Toq^F|auADV zeF=jd81^wZF-(K9AtI>cDTY%FR~X*$I50S-m+&}n>Zda>>??SmVB)34z?}XKNHV2; zP{?9X*Z?y9nbUd(4j|@n|LM>wC*oznvngGufW!Gc1Bc&aCkK^ywfKO3zfuMM`hbQ7 zp-K(~93ZU;Pe6vHJxEvqHgu7J76XsR0fQO__67P0Qw%g2SeP8{|2KAEU=gih;9y`z zkzeKdia|}$i$Nw~0mw1wT#7Xe3@m~`{sb^f0LW?sv1}NCEQbFzKr>LRN^E0{Yt&G7?{&OC7b}!>4yxo70F963=AxSK>i{yO90540bg|batulanhY!q Z4hjs$4h$>_4F5|Co&d>$$un3F0|31}Kc@fy diff --git a/bin/rom8M.bin b/bin/rom8M.bin index c6835323222bf03accb1e239e198ace0b257071b..d253312f3f9c24f10bd90313955f64064e6f4f3c 100755 GIT binary patch delta 854 zcmY+;Nla5w7>41$!<9>^GCR`J7Ob`otrip&@lr&vDi#$-wAZOuaH?7ytL>s{;zCR` zvL&tz8;v39&M59+>(WFQ#DxoSVN6U+@V(UyIeGqk=bW4`Czs3FbEdo{Z_V5C_HpIC z%kpSs!li_*il^|?rBqui>4I9Xj9IICheKr{N8^ChjQp^Jyv7e5y~IWyvr4%VOz^a8R7x@4^`= z84c;r!U3^cwa>E=P3*N9QN=dreysDG_`NZy(?`wE7!Gen#9qn%NikKB9+;_BNHUwD z!y+zsBqMI|ndPE+#4P7hPfauXN2Yzshlf)Q3g)2%DoWu%8Jw7p1t>=aDp7@M)Swm% zu?UN?1WU0Db#TFrdU)W44-II?VD-l2ttFRhtuofYNu@37IK@*y>0UObRP1uYr zXvJ2vVH-5GBZ>}eM<;fm3*Fd>78xPXhegv&_b3a;WB(ip;Z+`vuT!fo6^26u6x)zPZ${`h@hazm$Y!{0KaRDzMr)`g!P&_*^5>9{=L8s9n!0dF)o$4^e_H&!R%4LdUBNy(Wz)AI$l|b{8m~!Q)2d| zL<|d%4B{w; za16tU;5bHb0w-|_QJh8$qd0@J7{fV?<2)uXi3_-hOSp_FOe2mfxQc7IjvGiIiJO?g oEzIIJ?jVJ`NaG&v;{oQ7!8{(~5gy|So+689SSYV}p7;Iy5AU=jHvj+t diff --git a/rdisk.c b/rdisk.c index 75ffb7a..3d2c5d5 100644 --- a/rdisk.c +++ b/rdisk.c @@ -235,8 +235,9 @@ OSErr RDCtl(CntrlParamPtr p, DCtlPtr d) { case kFormat: if (!c->status.diskInPlace || c->status.writeProt || !c->ramdisk) { return controlErr; } - char zero = 0; - patch24(c->ramdisk, &zero); + long long zero = 0; + if (*MMU32bit) { copy24(c->ramdisk, &zero, sizeof(zero)); } + else { copy24(c->ramdisk, StripAddress(&zero), sizeof(zero)); } return noErr; case kVerify: if (!c->status.diskInPlace) { return controlErr; }