mirror of
https://github.com/elliotnunn/supermario.git
synced 2024-11-27 22:51:28 +00:00
Get Gestalt (ptch 5) building
Now the System 7.1 build relies on these binary blobs: - AppleTalk * - Virtual Memory * - Sound Manager * never part of the build system
This commit is contained in:
parent
4b6e398c8a
commit
9dd3c4bef8
@ -780,7 +780,7 @@ diff --git a/Make/System.make b/Make/System.make
|
|||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/Make/System.make
|
+++ b/Make/System.make
|
||||||
@@ -0,0 +1,564 @@
|
@@ -0,0 +1,566 @@
|
||||||
+########################################################################
|
+########################################################################
|
||||||
+# Whole cloth substitute for the missing System 7.1 makefile
|
+# Whole cloth substitute for the missing System 7.1 makefile
|
||||||
+########################################################################
|
+########################################################################
|
||||||
@ -1031,12 +1031,14 @@ new file mode 100644
|
|||||||
+ hasJaws=FALSE ∂
|
+ hasJaws=FALSE ∂
|
||||||
+ hasLayerlessApps=FALSE ∂
|
+ hasLayerlessApps=FALSE ∂
|
||||||
+ hasManEject=FALSE ∂
|
+ hasManEject=FALSE ∂
|
||||||
|
+ hasMMU=FALSE ∂
|
||||||
+ hasMSC=FALSE ∂
|
+ hasMSC=FALSE ∂
|
||||||
+ hasNiagra=FALSE ∂
|
+ hasNiagra=FALSE ∂
|
||||||
+ hasNonADBKeyLayouts=TRUE ∂
|
+ hasNonADBKeyLayouts=TRUE ∂
|
||||||
+ hasPortableKeyLayouts=FALSE ∂
|
+ hasPortableKeyLayouts=FALSE ∂
|
||||||
+ hasPowerMgr=FALSE ∂
|
+ hasPowerMgr=FALSE ∂
|
||||||
+ hasPwrControls=TRUE ∂
|
+ hasPwrControls=TRUE ∂
|
||||||
|
+ hasPwrMgrClock=TRUE ∂
|
||||||
+ hasRISCV0ResMgrPatches=FALSE ∂
|
+ hasRISCV0ResMgrPatches=FALSE ∂
|
||||||
+ hasSlotMgr=TRUE ∂
|
+ hasSlotMgr=TRUE ∂
|
||||||
+ hasSplineFonts=TRUE ∂
|
+ hasSplineFonts=TRUE ∂
|
||||||
@ -1369,7 +1371,18 @@ diff --git a/OS/ADBMgr/ADBMgr.make b/OS/ADBMgr/ADBMgr.make
|
|||||||
diff --git a/OS/Gestalt/Gestalt.make b/OS/Gestalt/Gestalt.make
|
diff --git a/OS/Gestalt/Gestalt.make b/OS/Gestalt/Gestalt.make
|
||||||
--- a/OS/Gestalt/Gestalt.make
|
--- a/OS/Gestalt/Gestalt.make
|
||||||
+++ b/OS/Gestalt/Gestalt.make
|
+++ b/OS/Gestalt/Gestalt.make
|
||||||
@@ -22,6 +22,10 @@ GestaltObjs = "{ObjDir}GestaltFunction.a.o" ∂
|
@@ -14,14 +14,20 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-GestaltObjs = "{ObjDir}GestaltFunction.a.o" ∂
|
||||||
|
+GestaltObjs = "{ObjDir}GestaltPatchHead.a.o" ∂
|
||||||
|
"{ObjDir}GestaltLookup.c.o" ∂
|
||||||
|
+ "{IfObjDir}Interface.o" ∂
|
||||||
|
+ "{ObjDir}GestaltFunction.a.o" ∂
|
||||||
|
"{ObjDir}GestaltExtensions.a.o"
|
||||||
|
|
||||||
|
"{LibDir}Gestalt.lib" ƒ {GestaltObjs}
|
||||||
Lib {StdLibOpts} -o "{Targ}" {GestaltObjs}
|
Lib {StdLibOpts} -o "{Targ}" {GestaltObjs}
|
||||||
|
|
||||||
|
|
||||||
@ -1380,6 +1393,17 @@ diff --git a/OS/Gestalt/Gestalt.make b/OS/Gestalt/Gestalt.make
|
|||||||
"{ObjDir}GestaltFunction.a.o" ƒ "{ObjDir}StandardEqu.d" ∂
|
"{ObjDir}GestaltFunction.a.o" ƒ "{ObjDir}StandardEqu.d" ∂
|
||||||
"{IntAIncludes}HardwarePrivateEqu.a" ∂
|
"{IntAIncludes}HardwarePrivateEqu.a" ∂
|
||||||
"{IntAIncludes}UniversalEqu.a" ∂
|
"{IntAIncludes}UniversalEqu.a" ∂
|
||||||
|
@@ -36,6 +42,10 @@ GestaltObjs = "{ObjDir}GestaltFunction.a.o" ∂
|
||||||
|
Asm {StdAOpts} -o "{Targ}" "{GestaltDir}GestaltFunction.a"
|
||||||
|
|
||||||
|
|
||||||
|
+"{ObjDir}GestaltPatchHead.a.o" ƒ "{GestaltDir}GestaltPatchHead.a"
|
||||||
|
+ Asm {StdAOpts} -o "{Targ}" "{GestaltDir}GestaltPatchHead.a"
|
||||||
|
+
|
||||||
|
+
|
||||||
|
"{ObjDir}GestaltExtensions.a.o" ƒ "{ObjDir}StandardEqu.d" ∂
|
||||||
|
"{IntAIncludes}HardwarePrivateEqu.a" ∂
|
||||||
|
"{AIncludes}GestaltEqu.a" ∂
|
||||||
diff --git a/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make b/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make
|
diff --git a/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make b/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make
|
||||||
--- a/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make
|
--- a/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make
|
||||||
+++ b/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make
|
+++ b/OS/HFS/Extensions/BTreeMgr/BTreeMgr.make
|
||||||
|
@ -4,213 +4,6 @@ Subject: Amphibian DNA
|
|||||||
The BuildCubeE mechanism for short-circuiting the makefile system to
|
The BuildCubeE mechanism for short-circuiting the makefile system to
|
||||||
point to prebuilt binary code. This might rate a change!
|
point to prebuilt binary code. This might rate a change!
|
||||||
---
|
---
|
||||||
diff --git a/AmphibianDNA/Gestalt.rsrc b/AmphibianDNA/Gestalt.rsrc
|
|
||||||
new file mode 100644
|
|
||||||
diff --git a/AmphibianDNA/Gestalt.rsrc.rdump b/AmphibianDNA/Gestalt.rsrc.rdump
|
|
||||||
new file mode 100644
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/AmphibianDNA/Gestalt.rsrc.rdump
|
|
||||||
@@ -0,0 +1,200 @@
|
|
||||||
+data 'RSRC' (0) {
|
|
||||||
+ $"6000 0818 7074 6368 0005 0001 4E56 FFF4" /* `...ptch....NV.. */
|
|
||||||
+ $"48E7 0F18 282E 0008 2A2E 0010 6706 7001" /* H...(...*...g.p. */
|
|
||||||
+ $"C085 6706 70CE 6000 015E 2005 A055 2C00" /* ..g.p.`..^ ..U,. */
|
|
||||||
+ $"2078 02A6 BC90 6312 2038 02AE A055 B086" /* x....c. 8...U.. */
|
|
||||||
+ $"6308 303C EA4F 6000 013E 598F 2078 02B6" /* c.0<.O`..>Y. x.. */
|
|
||||||
+ $"2068 005C 2F10 4EBA 01AE 2C1F 2006 A722" /* h.\/.N...,. .." */
|
|
||||||
+ $"2D48 FFF4 4A78 0220 6706 7094 6000 0118" /* -H..Jx. g.p.`... */
|
|
||||||
+ $"206E FFF4 2850 2078 02B6 2068 005C 2050" /* n..(P x.. h.\ P */
|
|
||||||
+ $"2650 7E00 6004 28DB 5887 BC87 62F8 4246" /* &P~.`.(.X...b.BF */
|
|
||||||
+ $"7001 2D40 FFFC 486E FFF8 2F2E 000C 4EBA" /* p.-@..Hn../...N. */
|
|
||||||
+ $"00F0 4A40 504F 6632 4A84 6706 3C3C EA51" /* ..J@POf2J.g.<<.Q */
|
|
||||||
+ $"6030 206E FFF4 2278 02B6 2269 005C 2029" /* `0 n.."x.."i.\ ) */
|
|
||||||
+ $"0004 5280 E780 A024 4A78 0220 6704 7C94" /* ..R....$Jx. g.|. */
|
|
||||||
+ $"6010 7000 2D40 FFFC 6008 4A84 6604 3C3C" /* `.p.-@..`.J.f.<< */
|
|
||||||
+ $"EA50 4A46 670C 206E FFF4 A023 3006 6000" /* .PJFg. n...#0.`. */
|
|
||||||
+ $"0096 206E FFF4 2850 4AAE FFFC 6650 2078" /* .. n..(PJ...fP x */
|
|
||||||
+ $"02B6 2068 005C 2E28 0004 6024 2007 5380" /* .. h.\.(..`$ .S. */
|
|
||||||
+ $"E780 2207 E781 29B4 0800 1800 2007 5380" /* .."...)..... .S. */
|
|
||||||
+ $"E780 2207 E781 29B4 0804 1804 2007 5387" /* .."...)..... .S. */
|
|
||||||
+ $"BEAE FFF8 6ED6 2078 02B6 2068 005C 52A8" /* ....n. x.. h.\R. */
|
|
||||||
+ $"0004 202E FFF8 E780 29AE 000C 0800 4A84" /* .. .....).....J. */
|
|
||||||
+ $"670E 202E FFF8 E780 206E 0014 20B4 0804" /* g. ..... n.. ... */
|
|
||||||
+ $"202E FFF8 E780 2985 0804 2078 02B6 2068" /* .....)... x.. h */
|
|
||||||
+ $"005C 2850 2078 02B6 2068 005C 20AE FFF4" /* .\(P x.. h.\ ... */
|
|
||||||
+ $"204C A023 7000 4CEE 18F0 FFDC 4E5E 4E75" /* L.#p.L.....N^Nu */
|
|
||||||
+ $"4E56 0000 48E7 0F18 266E 000C 282E 0008" /* NV..H...&n..(... */
|
|
||||||
+ $"2078 02B6 2068 005C 2050 2850 7C00 2078" /* x.. h.\ P(P|. x */
|
|
||||||
+ $"02B6 2068 005C 2A28 0004 5385 2005 9086" /* .. h.\*(..S. ... */
|
|
||||||
+ $"7201 B280 5DC0 4400 4880 48C0 2E00 DE86" /* r...].D.H.H..... */
|
|
||||||
+ $"2007 E780 B8B4 0800 6404 2A07 6016 2007" /* .......d.*.`. . */
|
|
||||||
+ $"E780 B8B4 0800 6306 2C07 5286 6006 2687" /* ......c.,.R.`.&. */
|
|
||||||
+ $"7001 6008 BC85 66C4 2686 7000 4CEE 18F0" /* p.`...f.&.p.L... */
|
|
||||||
+ $"FFE8 4E5E 4E75 225F 205F A025 2E80 6A02" /* ..N^Nu"_ _.%..j. */
|
|
||||||
+ $"4297 4ED1 0C41 A1AD 6730 2F08 2F0F 2F08" /* B.N..A..g0/././. */
|
|
||||||
+ $"2F00 4AAF 000C 6730 0C41 A3AD 670E 0C41" /* /.J...g0.A..g..A */
|
|
||||||
+ $"A5AD 6624 2F3C 0000 0001 6002 42A7 4EBA" /* ..f$/<....`.B.N. */
|
|
||||||
+ $"FDCC DEFC 0010 205F 6014 48E7 1F38 4EBA" /* ...... _`.H..8N. */
|
|
||||||
+ $"0010 4CDF 1CF8 6006 DEFC 0010 70CE 4E75" /* ..L...`.....p.Nu */
|
|
||||||
+ $"2600 598F 2F0F 2F00 4EBA FF26 508F 241F" /* &.Y././.N..&P.$. */
|
|
||||||
+ $"4A40 6724 2078 02B6 2268 005C 2051 2250" /* J@g$ x.."h.\ Q"P */
|
|
||||||
+ $"E78A 2271 2804 42A7 4267 2F03 486F 0006" /* .."q(.B.Bg/.Ho.. */
|
|
||||||
+ $"4E91 301F 205F 6006 203C FFFF EA51 4E75" /* N.0. _`. <...QNu */
|
|
||||||
+ $"206F 0004 7000 3038 015A 6000 0554 206F" /* o..p.08.Z`..T o */
|
|
||||||
+ $"0004 2278 02AE 7000 3029 0008 6000 0542" /* .."x..p.0)..`..B */
|
|
||||||
+ $"0838 0001 0B22 6700 0530 7000 303C 0110" /* .8..."g..0p.0<.. */
|
|
||||||
+ $"6000 052E 2278 02B6 2269 005C 7000 3029" /* `..."x.."i.\p.0) */
|
|
||||||
+ $"0010 6000 051C 7000 1038 012F 5240 6000" /* ..`...p..8./R@`. */
|
|
||||||
+ $"0510 1038 021E 41FA 0016 2248 1218 6700" /* ...8..A..."H..g. */
|
|
||||||
+ $"04F8 B200 66F6 91C9 2008 6000 04F4 0313" /* ....f... .`..... */
|
|
||||||
+ $"0B02 0106 0704 0508 090C 0D00 2278 02B6" /* ............"x.. */
|
|
||||||
+ $"2269 005C 7000 1029 0012 6000 04D4 2278" /* "i.\p..)..`..."x */
|
|
||||||
+ $"02B6 2269 005C 7000 1029 0013 6000 04C2" /* .."i.\p..)..`... */
|
|
||||||
+ $"2278 02B6 2269 005C 2029 0014 6000 04B2" /* "x.."i.\ )..`... */
|
|
||||||
+ $"7600 2078 02AE 3228 0008 41FA 003C B258" /* v. x..2(..A..<.X */
|
|
||||||
+ $"6706 4A50 66F8 6004 08C3 0001 303C A89F" /* g.JPf.`.....0<.. */
|
|
||||||
+ $"A746 2408 203C 0000 A84C A746 B488 6704" /* .F$. <...L.F..g. */
|
|
||||||
+ $"08C3 0000 1038 0B3E 0200 000F 6604 08C3" /* .....8.>....f... */
|
|
||||||
+ $"0002 2003 6000 046A 067C 0000 7000 0C38" /* .. .`..j.|..p..8 */
|
|
||||||
+ $"0004 012F 6616 4E7A 1003 0801 000E 6606" /* .../f.Nz......f. */
|
|
||||||
+ $"08C0 000C 6036 08C0 000D 6030 0C38 0002" /* ....`6....`0.8.. */
|
|
||||||
+ $"012F 6D00 002C 0C38 0003 0CB1 6D18 2078" /* ./m..,.8....m. x */
|
|
||||||
+ $"02B6 2068 005C 41E8 0018 F010 4200 E9D0" /* .. h.\A.....B... */
|
|
||||||
+ $"1204 03C0 6006 203C 0000 8000 6000 0412" /* ....`. <....`... */
|
|
||||||
+ $"6000 0406 2038 02A6 6000 0406 2278 02B6" /* `... 8..`..."x.. */
|
|
||||||
+ $"2269 005C 0CAF 6C72 616D 0008 6606 2029" /* "i.\..lram..f. ) */
|
|
||||||
+ $"000C 6004 2029 0008 6000 03E6 2078 02AE" /* ..`. )..`... x.. */
|
|
||||||
+ $"0C28 0003 0008 6422 2078 02B6 2068 005C" /* .(....d" x.. h.\ */
|
|
||||||
+ $"3228 0010 0C41 0005 6508 203C 0004 0000" /* 2(...A..e. <.... */
|
|
||||||
+ $"600C 203C 0002 0000 6004 2028 0040 6000" /* `. <....`. (.@`. */
|
|
||||||
+ $"03B0 203C 0000 0400 6000 03A6 2078 02AE" /* .. <....`... x.. */
|
|
||||||
+ $"0C68 0075 0008 660A 203C 0000 0C00 6000" /* .h.u..f. <....`. */
|
|
||||||
+ $"0390 203C 0000 0E00 6000 0386 2078 02AE" /* .. <....`... x.. */
|
|
||||||
+ $"0C68 0075 0008 670A 0C68 0276 0008 6600" /* .h.u..g..h.v..f. */
|
|
||||||
+ $"0368 2038 0664 6000 0368 7000 303C 0003" /* .h 8.d`..hp.0<.. */
|
|
||||||
+ $"6000 035E 0C78 3FFF 028E 6E1C 303C A89F" /* `..^.x?...n.0<.. */
|
|
||||||
+ $"A746 2408 203C 0000 AB03 A746 203C 0000" /* .F$. <.....F <.. */
|
|
||||||
+ $"0100 B488 6606 6010 7000 600C 594F 7014" /* ....f.`.p.`.YOp. */
|
|
||||||
+ $"AB1D 201F 0640 0100 6000 0326 7000 4A38" /* .. ..@..`..&p.J8 */
|
|
||||||
+ $"0291 6B16 1238 01FB 0201 000F 0C01 0001" /* ..k..8.......... */
|
|
||||||
+ $"6608 2078 02DC 1028 0007 6000 0304 2078" /* f. x...(..`... x */
|
|
||||||
+ $"02B6 2068 005C 0C68 000A 0010 6D18 303C" /* .. h.\.h....m.0< */
|
|
||||||
+ $"A89F A746 2408 203C 0000 A085 A346 B488" /* ...F$. <.....F.. */
|
|
||||||
+ $"6704 700F 6002 7000 6000 02D6 7000 0838" /* g.p.`.p.`...p..8 */
|
|
||||||
+ $"0001 0B22 662A 2078 02AE 3228 0008 41FA" /* ..."f* x..2(..A. */
|
|
||||||
+ $"0034 B258 671A 4A50 66F8 0C41 0178 6600" /* .4.Xg.JPf..A.xf. */
|
|
||||||
+ $"02B0 0CB8 0000 2000 02A6 6704 6000 02A2" /* ...... ...g.`... */
|
|
||||||
+ $"1038 0B73 4600 0280 0000 0003 08C0 0002" /* .8.sF........... */
|
|
||||||
+ $"6000 028E 067C 0000 9EFC 000E 204F 42A8" /* `....|...... OB. */
|
|
||||||
+ $"000A 317C FFFF 0004 A058 7201 1028 0004" /* ..1|.....Xr..(.. */
|
|
||||||
+ $"6B08 5281 D000 6B02 5281 A059 4FEF 000E" /* k.R...k.R..YO... */
|
|
||||||
+ $"2001 6000 025C 7000 6000 0256 7000 08C0" /* .`..\p.`..Vp... */
|
|
||||||
+ $"0000 6000 024C 2078 02B6 2068 005C 7000" /* ..`..L x.. h.\p. */
|
|
||||||
+ $"0C68 0004 0010 671A 0C68 0011 0010 6712" /* .h....g..h....g. */
|
|
||||||
+ $"0C68 0013 0010 670A 0C68 0025 0010 6702" /* .h....g..h.%..g. */
|
|
||||||
+ $"7007 6000 021C 2078 02B6 2068 005C 0C68" /* p.`... x.. h.\.h */
|
|
||||||
+ $"000B 0010 6D00 00E8 0C68 0011 0010 6700" /* ....m....h....g. */
|
|
||||||
+ $"00DE 0C68 0018 0010 6700 00D4 2078 0DD8" /* ...h....g... x.. */
|
|
||||||
+ $"D1E8 000C 7000 7200 0830 0002 0000 6702" /* ....p.r..0....g. */
|
|
||||||
+ $"01C1 5240 0C80 0000 0010 66EC 2001 6000" /* ..R@......f. .`. */
|
|
||||||
+ $"01D0 2078 02B6 2068 005C 0C68 000B 0010" /* .. x.. h.\.h.... */
|
|
||||||
+ $"6D00 009C 0C68 0011 0010 6700 0092 0C68" /* m....h....g....h */
|
|
||||||
+ $"0018 0010 6700 0088 7000 41FA 0054 2238" /* ....g...p.A..T"8 */
|
|
||||||
+ $"0DD0 1418 6B00 000C 1618 0701 67F4 05C0" /* ....k.......g... */
|
|
||||||
+ $"60F0 2238 0DD4 0801 0000 6704 08C0 000F" /* `."8......g..... */
|
|
||||||
+ $"0801 0007 6704 08C0 0012 7209 0300 670C" /* ....g.....r...g. */
|
|
||||||
+ $"0838 0000 0BFE 6704 7204 03C0 2078 02AE" /* .8....g.r... x.. */
|
|
||||||
+ $"0C68 067C 0008 6604 7218 03C0 6000 0152" /* .h.|..f.r...`..R */
|
|
||||||
+ $"0002 0403 0B05 0C06 0D07 0708 010B 030C" /* ................ */
|
|
||||||
+ $"020D 0E0E 060F 0810 0911 0512 0A13 1014" /* ................ */
|
|
||||||
+ $"1115 1916 1417 1518 1619 171A FFFF 41FA" /* ..............A. */
|
|
||||||
+ $"0066 7200 2030 1800 B0AF 0008 670A 4A80" /* .fr. 0......g.J. */
|
|
||||||
+ $"6700 0106 5881 60EC 2078 02B6 2068 005C" /* g...X.`. x.. h.\ */
|
|
||||||
+ $"3028 0010 B07A 004C 631A 0C40 0011 6606" /* 0(...z.Lc..@..f. */
|
|
||||||
+ $"41FA 0092 601C 0C40 0018 6600 00DC 41FA" /* A...`..@..f...A. */
|
|
||||||
+ $"008C 600E 5380 E548 C0FA 001A 41FA 0026" /* ..`.S..H....A..& */
|
|
||||||
+ $"D0C0 2030 1800 0C80 FFFF FFFF 6700 00BA" /* .. 0........g... */
|
|
||||||
+ $"6000 00BE 0002 6864 7772 736C 7463 0000" /* `.....hdwrsltc.. */
|
|
||||||
+ $"0000 000A 0400 3011 0000 0000 0400 0011" /* ......0......... */
|
|
||||||
+ $"0000 0000 0400 0011 0000 0000 0400 3891" /* ..............8. */
|
|
||||||
+ $"0000 0000 0400 3891 0000 0000 0000 089B" /* ......8......... */
|
|
||||||
+ $"0000 7E00 0000 089B 0000 7E00 0000 089B" /* ..~.......~..... */
|
|
||||||
+ $"0000 0E00 0000 089B 0000 0000 0000 0899" /* ................ */
|
|
||||||
+ $"0000 0000 0400 3891 0000 0000 0000 0899" /* ......8......... */
|
|
||||||
+ $"0000 0000 202F 0008 0C80 7665 7273 6728" /* .... /....versg( */
|
|
||||||
+ $"0C80 7461 626C 6724 0C80 0000 000D 6710" /* ..tablg$......g. */
|
|
||||||
+ $"0C80 0000 0007 6620 203C 6361 726C 6020" /* ......f <carl` */
|
|
||||||
+ $"203C 6262 6D63 6018 7001 6014 2078 02B6" /* <bbmc`.p.`. x.. */
|
|
||||||
+ $"2268 005C 2011 6008 3F7C EA52 000C 600A" /* "h.\ .`.?|.R..`. */
|
|
||||||
+ $"206F 0004 2080 426F 000C 205F 508F 4ED0" /* o.. .Bo.. _P.N. */
|
|
||||||
+ $"0000 0214 A1AD 0000 0000 6100 0008 41FA" /* ..........a...A. */
|
|
||||||
+ $"FFF0 4E75 701C A71E 2008 6700 0274 2278" /* ..Nup... .g..t"x */
|
|
||||||
+ $"02B6 2348 005C 2448 7008 A522 2488 6700" /* ..#H.\$Hp.."$.g. */
|
|
||||||
+ $"0260 2250 22BC 7FFF FFFF 237C 1234 5678" /* .`"P".....#|.4Vx */
|
|
||||||
+ $"0004 257C 0000 0001 0004 47FA 0130 7600" /* ..%|......G..0v. */
|
|
||||||
+ $"4AB3 3000 671A 2033 3004 D08B 2F00 2F33" /* J.0.g. 30..././3 */
|
|
||||||
+ $"3000 42A7 4EBA F796 4FEF 000C 5083 60E0" /* 0.B.N...O...P.`. */
|
|
||||||
+ $"2438 0108 617A D480 2542 000C 2078 02AE" /* $8..az..%B.. x.. */
|
|
||||||
+ $"0C68 067C 0008 6612 2438 1EF4 D480 2542" /* .h.|..f.$8....%B */
|
|
||||||
+ $"000C 2578 1EF8 0008 6006 2578 0108 0008" /* ..%x....`.%x.... */
|
|
||||||
+ $"2038 0B78 6726 6B24 2240 2078 02AE 0C68" /* 8.xg&k$"@ x...h */
|
|
||||||
+ $"067C 0008 6708 70FB A05C 2540 0008 70FA" /* .|..g.p..\%@..p. */
|
|
||||||
+ $"A05C 2400 612A D082 2540 000C 4EBA 01C8" /* .\$.a*..%@..N... */
|
|
||||||
+ $"3540 0010 4EBA 01E0 1540 0012 4EBA 0220" /* 5@..N....@..N.. */
|
|
||||||
+ $"1540 0013 4EBA 0242 2540 0014 6000 019E" /* .@..N..B%@..`... */
|
|
||||||
+ $"48E7 2060 2078 02AE 0C68 037A 0008 676C" /* H. ` x...h.z..gl */
|
|
||||||
+ $"41F8 030A 2010 6764 2040 3228 0006 3028" /* A... .gd @2(..0( */
|
|
||||||
+ $"0008 3400 5240 4440 E540 2278 011C 2271" /* ..4.R@D@.@"x.."q */
|
|
||||||
+ $"0000 2251 0829 0006 0005 6702 2251 2251" /* .."Q.)....g."Q"Q */
|
|
||||||
+ $"43E9 0012 45FA 003E 7000 1012 B30A 66C4" /* C...E..>p.....f. */
|
|
||||||
+ $"51C8 FFFA 4FEF FFCE 204F 42A8 000C 4268" /* Q...O... OB...Bh */
|
|
||||||
+ $"0016 3142 0018 3141 0016 317C 4544 001A" /* ..1B..1A..1|ED.. */
|
|
||||||
+ $"A205 2028 001C 4FEF 0032 6002 7000 4CDF" /* .. (..O..2`.p.L. */
|
|
||||||
+ $"0604 4E75 062E 4544 6973 6B00 6D61 6368" /* ..Nu..EDisk.mach */
|
|
||||||
+ $"FFFF F948 7379 7376 FFFF F914 7072 6F63" /* ...Hsysv....proc */
|
|
||||||
+ $"FFFF F95A 6B62 6420 FFFF F966 6174 6C6B" /* ...Zkbd ...fatlk */
|
|
||||||
+ $"FFFF FB50 6670 7520 FFFF F990 6D6D 7520" /* ...Pfpu ....mmu */
|
|
||||||
+ $"FFFF F9A2 7261 6D20 FFFF FA70 6C72 616D" /* ....ram ...plram */
|
|
||||||
+ $"FFFF FA70 7164 2020 FFFF FB18 726F 6D20" /* ...pqd ....rom */
|
|
||||||
+ $"FFFF FA90 766D 2020 FFFF FC1A 706F 7772" /* ....vm ....powr */
|
|
||||||
+ $"FFFF FB72 726F 6D76 FFFF F922 7665 7273" /* ...rromv..."vers */
|
|
||||||
+ $"FFFF FE28 7461 626C FFFF FE28 6864 7772" /* ...(tabl...(hdwr */
|
|
||||||
+ $"FFFF FCA6 736C 7463 FFFF FC5A 746D 6772" /* ....sltc...Ztmgr */
|
|
||||||
+ $"FFFF FBEC 6164 6472 FFFF FBA0 612F 7578" /* ....addr....a/ux */
|
|
||||||
+ $"FFFF F934 7067 737A FFFF FA10 6C6D 656D" /* ...4pgsz....lmem */
|
|
||||||
+ $"FFFF FA68 7072 7479 FFFF F9B4 6D69 7363" /* ...hprty....misc */
|
|
||||||
+ $"FFFF F9C4 6E6D 6772 FFFF FC20 7365 7220" /* ....nmgr... ser */
|
|
||||||
+ $"FFFF FC2A 6F73 7474 FFFF FAC6 7462 7474" /* ...*ostt....tbtt */
|
|
||||||
+ $"FFFF FAD0 7874 7474 FFFF FAF0 6673 2020" /* ....xttt....fs */
|
|
||||||
+ $"FFFF FB0E 0000 000D FFFF FE28 0000 0007" /* ...........(.... */
|
|
||||||
+ $"FFFF FE28 0000 0000 FFFF F888 4240 4E75" /* ...(........B@Nu */
|
|
||||||
+ $"303C FF94 60F8 2078 02AE 1028 0008 6E0C" /* 0<..`. x...(..n. */
|
|
||||||
+ $"7003 4A78 0B22 6A0C 7004 6008 7000 1038" /* p.Jx."j.p.`.p..8 */
|
|
||||||
+ $"0CB3 5C00 4E75 0838 0004 0B22 673C 0C38" /* ..\.Nu.8..."g<.8 */
|
|
||||||
+ $"0004 012F 6604 7003 6032 204F F280 0000" /* .../f.p.`2 O.... */
|
|
||||||
+ $"F327 3017 2E48 0C40 1F18 6716 0C40 3F18" /* .'0..H.@..g..@?. */
|
|
||||||
+ $"6710 0C40 3F38 670E 0C40 1F38 6708 7000" /* g..@?8g..@.8g.p. */
|
|
||||||
+ $"600A 7001 6006 7002 6002 7000 4E75 2078" /* `.p.`.p.`.p.Nu x */
|
|
||||||
+ $"02B6 2068 005C 0C68 0005 0010 6D16 7000" /* .. h.\.h....m.p. */
|
|
||||||
+ $"1038 0CB1 0C00 0001 670C 0C00 0003 6D04" /* .8......g.....m. */
|
|
||||||
+ $"5340 6002 7000 4E75 7000 2078 02B6 2068" /* S@`.p.Nup. x.. h */
|
|
||||||
+ $"005C 0C68 000B 0010 6D00 00FC 0C68 0011" /* .\.h....m....h.. */
|
|
||||||
+ $"0010 6700 00F2 0C68 0018 0010 6700 00E8" /* ..g....h....g... */
|
|
||||||
+ $"2238 0DD4 0801 0000 660E 2238 0DD0 0801" /* "8......f."8.... */
|
|
||||||
+ $"0014 6614 6000 00D0 2078 01D4 0810 0006" /* ..f.`... x...... */
|
|
||||||
+ $"6700 00BC 6000 00BC 4E7A 3002 2F03 263C" /* g...`...Nz0./.&< */
|
|
||||||
+ $"0000 1111 4E7B 3002 2078 02AE 263C 0000" /* ....N{0. x..&<.. */
|
|
||||||
+ $"2000 4A98 51CB FFFC 263C 0000 0808 4E7B" /* .J.Q...&<....N{ */
|
|
||||||
+ $"3002 2078 0DD8 D1D0 2268 0050 260F 2838" /* 0. x...."h.P&.(8 */
|
|
||||||
+ $"007C 49FA 003E 41FA 006A 46FC 2700 21C8" /* .|I..>A..jF.'.!. */
|
|
||||||
+ $"007C 97CB 7403 2213 4293 50E9 0010 50D1" /* .|..t.".B.P...P. */
|
|
||||||
+ $"4233 2000 4A93 4E71 4E71 50E9 0010 4211" /* B3 .J.NqNqP...B. */
|
|
||||||
+ $"2681 46FC 2000 21C4 007C 261F 4E7B 3002" /* &.F. .!..|&.N{0. */
|
|
||||||
+ $"6040 50E9 0010 4211 51CA FFCE 2681 220B" /* `@P...B.Q...&.". */
|
|
||||||
+ $"6610 2078 02B6 2068 005C 2668 0008 594B" /* f. x.. h.\&h..YK */
|
|
||||||
+ $"60B2 46FC 2000 21C4 007C 261F 4E7B 3002" /* `.F. .!..|&.N{0. */
|
|
||||||
+ $"600C 50E9 0010 4211 50D1 2E43 4ED4 08C0" /* `.P...B.P..CN... */
|
|
||||||
+ $"0001 08C0 0000 4E75" /* ......Nu */
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
diff --git a/AmphibianDNA/MACE3.c.rsrc b/AmphibianDNA/MACE3.c.rsrc
|
diff --git a/AmphibianDNA/MACE3.c.rsrc b/AmphibianDNA/MACE3.c.rsrc
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
diff --git a/AmphibianDNA/MACE3.c.rsrc.rdump b/AmphibianDNA/MACE3.c.rsrc.rdump
|
diff --git a/AmphibianDNA/MACE3.c.rsrc.rdump b/AmphibianDNA/MACE3.c.rsrc.rdump
|
||||||
|
@ -3450,16 +3450,37 @@ diff --git a/Internal/Asm/DialogsPriv.a b/Internal/Asm/DialogsPriv.a
|
|||||||
diff --git a/Internal/Asm/GestaltPrivateEqu.a b/Internal/Asm/GestaltPrivateEqu.a
|
diff --git a/Internal/Asm/GestaltPrivateEqu.a b/Internal/Asm/GestaltPrivateEqu.a
|
||||||
--- a/Internal/Asm/GestaltPrivateEqu.a
|
--- a/Internal/Asm/GestaltPrivateEqu.a
|
||||||
+++ b/Internal/Asm/GestaltPrivateEqu.a
|
+++ b/Internal/Asm/GestaltPrivateEqu.a
|
||||||
@@ -165,8 +165,8 @@ size equ *
|
@@ -146,7 +146,7 @@
|
||||||
|
__INCLUDINGGESTALTPRIVATEEQU__ SET 1
|
||||||
|
|
||||||
|
|
||||||
|
-gestaltVers EQU 4 ; gestalt version (is this an oxymoron, or what? )
|
||||||
|
+gestaltVers EQU 1 ; gestalt version (is this an oxymoron, or what? )
|
||||||
|
|
||||||
|
;kInitialEntryCount EQU 80 ; initial number of slots at boot time
|
||||||
|
gestaltFlagIsValueMask EQU 1 ; bit in flags that means value is not ProcPtr
|
||||||
|
@@ -165,8 +165,9 @@ size equ *
|
||||||
ENDR
|
ENDR
|
||||||
|
|
||||||
GestaltGlobals RECORD 0
|
GestaltGlobals RECORD 0
|
||||||
+longH
|
+longH
|
||||||
tableH ds.l 1 ; handle to table of longs
|
tableH ds.l 1 ; handle to table of longs
|
||||||
-slotsUsed ds.l 1 ; number of entries in table
|
-slotsUsed ds.l 1 ; number of entries in table
|
||||||
|
+slotsUsed
|
||||||
maxSlots ds.l 1 ; number of entries in table
|
maxSlots ds.l 1 ; number of entries in table
|
||||||
memSize ds.l 1 ; amount of memory in this machine
|
memSize ds.l 1 ; amount of memory in this machine
|
||||||
realTop ds.l 1 ; adjusted memory size
|
realTop ds.l 1 ; adjusted memory size
|
||||||
|
@@ -175,10 +176,6 @@ fpu ds.b 1 ; fpu type
|
||||||
|
mmu ds.b 1 ; mmu type
|
||||||
|
parityStatus ds.l 1 ; parity status
|
||||||
|
myScratch ds.l 1 ; scratch area
|
||||||
|
-emu68k ds.b 1 ; 68k emulator installed flag
|
||||||
|
-nativeCPU ds.b 1 ; native cpu type
|
||||||
|
-nativePageSize ds.l 1 ; native page size
|
||||||
|
-ediskSize ds.l 1 ; edisk size <SM18> CSS
|
||||||
|
GestaltRecSize equ *
|
||||||
|
ENDR
|
||||||
|
|
||||||
diff --git a/Internal/Asm/HardwarePrivateEqu.a b/Internal/Asm/HardwarePrivateEqu.a
|
diff --git a/Internal/Asm/HardwarePrivateEqu.a b/Internal/Asm/HardwarePrivateEqu.a
|
||||||
--- a/Internal/Asm/HardwarePrivateEqu.a
|
--- a/Internal/Asm/HardwarePrivateEqu.a
|
||||||
+++ b/Internal/Asm/HardwarePrivateEqu.a
|
+++ b/Internal/Asm/HardwarePrivateEqu.a
|
||||||
@ -9978,6 +9999,782 @@ diff --git a/OS/Gestalt/GestaltExtensions.a b/OS/Gestalt/GestaltExtensions.a
|
|||||||
************************************************************************
|
************************************************************************
|
||||||
* Common Gestalt Function Return Code
|
* Common Gestalt Function Return Code
|
||||||
************************************************************************
|
************************************************************************
|
||||||
|
diff --git a/OS/Gestalt/GestaltFunction.a b/OS/Gestalt/GestaltFunction.a
|
||||||
|
--- a/OS/Gestalt/GestaltFunction.a
|
||||||
|
+++ b/OS/Gestalt/GestaltFunction.a
|
||||||
|
@@ -9,109 +9,8 @@
|
||||||
|
;
|
||||||
|
; Change History (most recent first):
|
||||||
|
;
|
||||||
|
-; <SM49> 11/19/93 chp When testing for hasEnhancedLTalk, always use ProductInfo flags.
|
||||||
|
-; Remove Cyclone/Tempest boxFlag checks.
|
||||||
|
-; <SM48> 11/8/93 SAM Roll in <MC4> from mc900ftjesus.
|
||||||
|
-; <MC4> 11/8/93 SAM Updated TestForEmu to correctly adjust the logical RAM size when
|
||||||
|
-; an EDisk is present.
|
||||||
|
-; <SM47> 10/28/93 SAM Roll in <MC3> from mc900ftjesus.
|
||||||
|
-; <MC3> 10/28/93 SAM Changed getNativeCPUType to put the PowerPC cpus in the $100
|
||||||
|
-; range.
|
||||||
|
-; <SM46> 10/10/93 SAM Roll in <MC2> from mc900ftjesus.
|
||||||
|
-; <MC2> 10/10/93 SAM Added a universal check for hasEnhancedLTalk in gestaltHardware.
|
||||||
|
-; <SM45> 8/12/93 BG Converted references to gestaltCyclone40 to gestaltQuadra840AV.
|
||||||
|
-; <SM44> 8/7/93 SAM Removed temporary fix to LRAM size made in <SM41>.
|
||||||
|
-; <SM43> 8/4/93 JDR Integrate Sound Manager 3.0 project.
|
||||||
|
-; <SM42> 7/20/93 SAM Added a macro for setting the assembler machine directive to the
|
||||||
|
-; appropriate thing (based on the build time flag "CPU").
|
||||||
|
-; <SM41> 6/29/93 SAM Removed all references to gEDiskSize cuz its not needed. The
|
||||||
|
-; lram value is updated to include the Edisk at initalization (as
|
||||||
|
-; it was in 7.0.1). This still doesnt cover the case of VM
|
||||||
|
-; loading after gestalt (a gibbly fix for PDM is a temporary
|
||||||
|
-; solution). Cyclone this is broken in your ROM.
|
||||||
|
-; <SM40> 6/14/93 SAM Added a test for the hasHardPower bit in Universal info so we no
|
||||||
|
-; longer have to use boxflags for the shutdown dialog crap.
|
||||||
|
-; <SM39> 6/14/93 kc Roll in Ludwig.
|
||||||
|
-; <SM38> 6/3/93 SAM Updated that stupid list of boxflags in hassoftpoweroff to
|
||||||
|
-; reflect the new PDM boxflags.
|
||||||
|
-; <SM37> 5/21/93 CSS Set bits in gestaltFontAttr to indicate settings for double byte
|
||||||
|
-; support.
|
||||||
|
-; <SM36> 4/23/93 SAM Added the temporary PDMEvt2 boxflag to the brain-dead list of
|
||||||
|
-; boxflag based cmp/bne for hassoftpoweroff.
|
||||||
|
-; <SM35> 4/11/93 chp Added a selector to return the HAL type for the runtime CPU.
|
||||||
|
-; This just returns an encoded resource ID from ProductInfo. Also
|
||||||
|
-; added the AppleTalk interrupt level selector from Cyclone.
|
||||||
|
-; <SM34> 4/8/93 KW changed gestaltids for cyclone/tempest products when determining
|
||||||
|
-; if enhanced localtalk is present.
|
||||||
|
-; <SM33> 4/8/93 CSS Use gestalt global for edisk size as the boot globals get hosed
|
||||||
|
-; by VM.
|
||||||
|
-; <SM32> 4/5/93 jb Added TestFor AwacsExists in GetSoundHardware.
|
||||||
|
-; <SM31> 3/30/93 CSS Add EDisk size to logical RAM size in gestaltLogicalRAMSize.
|
||||||
|
-; Before SuperMario, VM was inited before Gestalt. Now this has
|
||||||
|
-; changed. The Gestalt expandmem var realTop(An) used to be fixed
|
||||||
|
-; by Gestalt by taking VM version of RealMemTop and adding the
|
||||||
|
-; Edisk size. Because of how thing are in SuperMario, VM doesn't
|
||||||
|
-; get to affect realTop(An), therefore rather than returning that
|
||||||
|
-; variable, we return RealMemTop (which is the one that VM
|
||||||
|
-; changed). However, for About this Macintosh… to work correctly
|
||||||
|
-; (and show the RAM disk as part of the System Software), we need
|
||||||
|
-; to add the RAM disk size whenever we return RealMemTop.
|
||||||
|
-; <SM30> 2/20/93 SAM Updated all the EMMU stuff. MMU page size, emulator present,
|
||||||
|
-; sys architecture, all updated. Fixed up the Universal ROM
|
||||||
|
-; check.
|
||||||
|
-; <SM29> 02/10/93 HY Remove <SM26> change. We no longer need the gestaltNoAppleTalk bit.
|
||||||
|
-; <SM28> 2/5/93 SAM Added support for Emulated page size.
|
||||||
|
-; <SM27> 2/5/93 SAM Updated the System architecture selector to use universal info.
|
||||||
|
-; <SM26> 01/11/93 HY Added code into getMisc for setting gestaltNoAtlkSupport bit.
|
||||||
|
-; If this bit is set then this machines DOESN'T support AppleTalk.
|
||||||
|
-; <SM25> 1/10/93 RC Soft Power Off now works correctly for PDM
|
||||||
|
-; <SM24> 12/13/92 SAM Added gestaltNativeCPUtype and gestaltSysArchitecture. Restored
|
||||||
|
-; universal code in the hdwr selector. Cleaned things up.
|
||||||
|
-; <SM23> 12/4/92 fau Added gestaltTempest33 to soft-power off. Added all
|
||||||
|
-; Cyclone-type machines to say they have enhanced localtalk --
|
||||||
|
-; this should not be box-flag based. I'll get to it soon.
|
||||||
|
-; <SM22> 11/13/92 mal Added MACE Ethernet to hardware attributes gestalt.
|
||||||
|
-; <SM21> 11/11/92 RB The Mac LC II does not have Soft Power Off.
|
||||||
|
-; <SM20> 11/11/92 fau Changed soundhardware to check for the 'DSPExists' feature flag.
|
||||||
|
-; This means that a DSP is installed and used for sound. Made
|
||||||
|
-; tempest not have a soft power off flag.
|
||||||
|
-; <SM19> 11/9/92 fau Made gestaltSoundHardware return 'dsp ' for a Tempest. Rolled
|
||||||
|
-; back change in <SM18> so the Text-to-speech guys fix it.
|
||||||
|
-; <SM18> 11/6/92 FU Made Cyclone/Tempest return ASC for hardware attributes -- will
|
||||||
|
-; back this as soon as a name-revision is done. This will work
|
||||||
|
-; around a Text-to-speech bug.
|
||||||
|
-; <SM17> 11/3/92 RB (Murali) Under SM, return RealMemTop instead of the cached
|
||||||
|
-; realTop in the gestalt globals. Gestalt was loaded before VM
|
||||||
|
-; did, and so realMemTop may have changed by VM, so always use the
|
||||||
|
-; real thing.
|
||||||
|
-; <SM16> 10/27/92 fau Forgot to change a label to actually execute the
|
||||||
|
-; enhancedlocaltalk code.
|
||||||
|
-; <SM15> 10/27/92 fau Added a gestaltHasEnhancedLtalk check to hardwareAttr to enable
|
||||||
|
-; the bit on Cyclone and Tempest.
|
||||||
|
-; <SM14> 9/3/92 PN Nuke the check for IIci because this is SuperMario.
|
||||||
|
-; <SM13> 8/20/92 CS Fix another problem with BootGlobs changing to StartGlobals per
|
||||||
|
-; roll-in from Reality.
|
||||||
|
-; <SM12> 8/17/92 CCH Change getHardwareAttr to not use OrwellExists bit since it was
|
||||||
|
-; removed.
|
||||||
|
-; <SM11> 7/24/92 RLM change GetEDiskSize, now uses BootGlobs, this removes the
|
||||||
|
-; requirement to have drivres installed before Gestalt
|
||||||
|
-; <SM10> 7/20/92 CSS Names of the sound hardware attributes have changed because they were moved
|
||||||
|
-; from GestaltEqu.a to GestaltEquPriv.a by JDR.
|
||||||
|
-; <SM9> 7/14/92 RB Added a function to return the gestaltSoundHardware attributes.
|
||||||
|
-; <SM8> 7/1/92 RB Added the selectors for the gestalt script manager attributes.
|
||||||
|
-; The script Mgr function for gestalt is in ScripMgrExtensions.a
|
||||||
|
; <SM5> 5/19/92 CS Integrated changes from Reality:
|
||||||
|
; <42> 4/9/92 JSM #1026795,<DTY>: gestaltSerialAttr should be the same for a Mac
|
||||||
|
-; LC II as a Mac LC.
|
||||||
|
-; <SM4> 4/30/92 SES Rolled in a fix of the parity check routine from PatchIIciROM.a.
|
||||||
|
-; Removed check for bootglobs - all ROMs now have bootglobs, so no
|
||||||
|
-; need to check.
|
||||||
|
-; <SM3> 4/28/92 PN Fix OutlineFont Gestalt so that getFontMgrAtr returns the
|
||||||
|
-; correct result
|
||||||
|
-; <SM2> 4/22/92 PN Roll in hasSoftPowerOff to hardware attribute. Add GetOSTable,
|
||||||
|
-; GetToolboxTable, GetExtToolboxTable, GetFSAttr into ROM build.
|
||||||
|
-; Roll in GetQDFeatures and GestaltFontMgrAttr from
|
||||||
|
-; GestaltPatches.a and BassPatches.a.
|
||||||
|
; <41> 12/4/91 csd #1016451: Added support for Scruffy. If Scruffy is running, we
|
||||||
|
; need to set 32-bit capable flag for the
|
||||||
|
; gestaltAddressingModeAttr selector.
|
||||||
|
@@ -291,24 +190,10 @@
|
||||||
|
include 'InternalOnlyEqu.a'
|
||||||
|
INCLUDE 'EDiskEqu.a'
|
||||||
|
INCLUDE 'BootEqu.a'
|
||||||
|
+ INCLUDE 'Devices.a'
|
||||||
|
|
||||||
|
PRINT ON
|
||||||
|
|
||||||
|
- MACRO
|
||||||
|
- SETMACHINE
|
||||||
|
- IF CPU = 020 THEN
|
||||||
|
- MACHINE MC68020
|
||||||
|
- ELSEIF CPU = 030 THEN
|
||||||
|
- MACHINE MC68030
|
||||||
|
- ELSEIF CPU = 040 THEN
|
||||||
|
- MACHINE MC68040
|
||||||
|
- ELSE
|
||||||
|
- AERROR 'Unknown CPU type'
|
||||||
|
- ENDIF
|
||||||
|
- ENDM
|
||||||
|
-
|
||||||
|
- SETMACHINE
|
||||||
|
-
|
||||||
|
;;; Gestalt private equates
|
||||||
|
GestaltTrapID EQU $A1AD ; Gestalt trap number
|
||||||
|
NewGestaltTrapID EQU $A3AD ; newGestalt trap number
|
||||||
|
@@ -453,7 +338,8 @@ error DS.W 1
|
||||||
|
* System Version
|
||||||
|
************************************************************************
|
||||||
|
|
||||||
|
-getSysVersion clr.l d0 ; clear result register <2.9>
|
||||||
|
+getSysVersion move.l 4(sp),a0
|
||||||
|
+ clr.l d0 ; clear result register <2.9>
|
||||||
|
Move.w SysVersion,d0 ; save system version in lsw of result
|
||||||
|
bra stdResult ; save result and exit <2.9>
|
||||||
|
|
||||||
|
@@ -462,7 +348,8 @@ getSysVersion clr.l d0 ; clear result register <2.9>
|
||||||
|
* ROM Version
|
||||||
|
************************************************************************
|
||||||
|
|
||||||
|
-getRomVersion Move.l RomBase,A1 ; get base of ROM
|
||||||
|
+getRomVersion move.l 4(sp),a0
|
||||||
|
+ Move.l RomBase,A1 ; get base of ROM
|
||||||
|
clr.l d0 ; clear result register <2.9>
|
||||||
|
move.w RomVersionOffset(a1),d0 ; put version in lsw of result
|
||||||
|
bra stdResult ; save result and exit <2.9>
|
||||||
|
@@ -501,45 +388,6 @@ getProcessor moveq.l #0,d0 ; clear d0
|
||||||
|
bra stdResult ; save result and exit <2.9>
|
||||||
|
|
||||||
|
|
||||||
|
-************************************************************************ <SM24><SM30>
|
||||||
|
-* System Architecture
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-getSysArchitecture ; If we're running (68k code) and Emu is installed
|
||||||
|
- ; for now, assume Architecture is PPC.
|
||||||
|
- MOVE.L ExpandMem,A1 ; find out where expandMem is
|
||||||
|
- MOVE.L emGestalt(A1),A1 ; get global ptr
|
||||||
|
- TST.B Emu68k(A1) ; Do the globals say we have an emulator? <SM29>
|
||||||
|
- BEQ.S @MC68k ; -> Nope, ol' slow boy. <SM29>
|
||||||
|
-
|
||||||
|
-@PowerPC MOVEQ #gestaltPowerPC,D0 ; Emulator is running. Signal PowerPC architecture
|
||||||
|
- BRA stdResult ; -> Return
|
||||||
|
-@MC68k MOVEQ #gestalt68k,D0 ; Emu is off. Assume 68k
|
||||||
|
- BRA stdResult ; -> Return
|
||||||
|
-
|
||||||
|
-IsEmuInstalled TestFor has68kEmulator
|
||||||
|
- RTS ; On Exit z set = PowerPC, clear = 68k
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-************************************************************************ <SM24>
|
||||||
|
-* Native Processor Type
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-getNativeCPUtype
|
||||||
|
- MOVE.L ExpandMem,A1 ; find out where expandMem is
|
||||||
|
- MOVE.L emGestalt(A1),A1 ; get global ptr
|
||||||
|
- TST.B Emu68k(A1) ; Do the globals say we have an emulator? <SM30>
|
||||||
|
- BEQ.S @MC68k ; -> Nope, ol' slow boy. <SM30>
|
||||||
|
-
|
||||||
|
- MOVEQ.L #0,D0 ; Clear out D0
|
||||||
|
- MOVE.B nativeCPU(A1),D0 ; Get the PowerPC processor type <SM30>
|
||||||
|
- ADD.W #$100,D0 ; Bump the PowerPC CPU type into the $100 range <MC3>
|
||||||
|
-
|
||||||
|
- BRA stdResult ; -> Return
|
||||||
|
-@MC68k MOVE.B CPUFlag,D0 ; Return CPU flag <MC3>
|
||||||
|
- BRA stdResult
|
||||||
|
-
|
||||||
|
-
|
||||||
|
************************************************************************
|
||||||
|
* Keyboard Type
|
||||||
|
* Note: To add new keyboards, simply add types to table before EOT.
|
||||||
|
@@ -612,17 +460,26 @@ getParityStatus Move.l ExpandMem,A1 ; find out where expandMem is
|
||||||
|
************************************************************************
|
||||||
|
|
||||||
|
getMisc clr.l d3 ; clear result
|
||||||
|
- IF not forROM THEN
|
||||||
|
- move.l ROMBase,A0 ; Get ROMBase <SM23>
|
||||||
|
- lea universalROMs,A1 ; Point to the table of Clean/Univeral ROM Sigs
|
||||||
|
- move.w (A1)+,D1 ; Get a ROM id (list is null terminated)
|
||||||
|
- beq.s @checkMemCtrlr ; -> End of table means not universal (huh)
|
||||||
|
- cmp.w D1,ROMHeader.MachineNumber(A0) ; Check a table entry
|
||||||
|
- beq.s @userDelay ; -> Yep, set the hasBootGLobs ROM bit <SM23>
|
||||||
|
- ENDIF
|
||||||
|
- bset #gestaltBootGlobals,d3 ; we have boot globals
|
||||||
|
+ move.l ROMBase,A0 ; Get ROMBase
|
||||||
|
+ move.w ROMHeader.MachineNumber(A0),D1
|
||||||
|
+ lea bootGlobROMs,A0 ; Point to the table of bootGlobbed ROM Sigs
|
||||||
|
+@cleanROMloop cmp.w (a0)+,d1
|
||||||
|
+ beq.s @hasBootGlobs
|
||||||
|
+ tst.w (a0)
|
||||||
|
+ bne.s @cleanROMloop
|
||||||
|
+ bra.s @noBootGlobs
|
||||||
|
+@hasBootGlobs bset #gestaltBootGlobals,d3 ; we have boot globals
|
||||||
|
+@noBootGlobs
|
||||||
|
|
||||||
|
-@userDelay bset #gestaltScrollingThrottle,d3 ; <SM3> <17>
|
||||||
|
+ move.w #UnimplementedTrap,d0
|
||||||
|
+ _GetTrapAddress ,newTool
|
||||||
|
+ move.l a0,d2
|
||||||
|
+ move.l #UserDelayTrap,d0
|
||||||
|
+ _GetTrapAddress ,newTool
|
||||||
|
+ cmp.l a0,d2
|
||||||
|
+ beq.s @noUserDelay
|
||||||
|
+@userDelay bset #gestaltScrollingThrottle,d3
|
||||||
|
+@noUserDelay
|
||||||
|
|
||||||
|
@squareMenus move.b NTSC,d0 ; get a copy of the NTSC byte <17>
|
||||||
|
andi.b #$0F,d0 ; only look at bottom nibble <17>
|
||||||
|
@@ -632,8 +489,10 @@ getMisc clr.l d3 ; clear result
|
||||||
|
@next move.l d3,d0 ; put result into d0 <17>
|
||||||
|
bra stdResult ; save result and exit
|
||||||
|
|
||||||
|
-; <SM4><SES>
|
||||||
|
-; Removed ROM version compare - all ROMs now have bootglobs
|
||||||
|
+; ROMs that have bootglobs
|
||||||
|
+bootGlobROMs
|
||||||
|
+ dc.w $067C ; IIci ROM
|
||||||
|
+ dc.w 0 ; eot
|
||||||
|
|
||||||
|
|
||||||
|
************************************************************************
|
||||||
|
@@ -665,28 +524,21 @@ getPageSize
|
||||||
|
|
||||||
|
@1
|
||||||
|
cmpi.b #2,CPUFlag ; are we on at least an 020?
|
||||||
|
- blo @noPages ; oh well, no page size <2.9>
|
||||||
|
+ blt @noPages ; oh well, no page size <2.9>
|
||||||
|
cmpi.b #PMMU851,MMUType ; do we have some kind of real mmu?
|
||||||
|
- blo.s @normalSize ; nope, use default page size
|
||||||
|
+ blt.s @normalSize ; nope, use default page size
|
||||||
|
Move.l ExpandMem,A0 ; find out where expandMem is
|
||||||
|
Move.l emGestalt(A0),A0 ; get global ptr
|
||||||
|
|
||||||
|
- tst.b emu68k(A0) ; Do the globals say we have a 68k Emulator? <SM30>
|
||||||
|
- bne.s @GetEmuPageSize ; -> Yes, get the saved page size <SM30>
|
||||||
|
-
|
||||||
|
lea myScratch(A0),a0 ; get address of scratch area
|
||||||
|
pmove tc,(a0) ; get a copy of the TC
|
||||||
|
bfextu (a0){8,4},d1 ; get # addr bits for pageSize <2.8>
|
||||||
|
bset d1,d0 ; get our pagesize <2.8>
|
||||||
|
bra.s @saveResult ; done!
|
||||||
|
|
||||||
|
-@GetEmuPageSize Move.l nativePageSize(A0),D0 ; Grab the NanoKernel's page size <SM30>
|
||||||
|
- bra.s @saveResult ; save result and exit <SM28>
|
||||||
|
-
|
||||||
|
@normalSize Move.l #DefaultPageSize,D0 ; use default pagesize
|
||||||
|
@saveResult bra stdResult ; save result and exit <2.9>
|
||||||
|
|
||||||
|
- SETMACHINE ; <SM42>
|
||||||
|
ENDIF ; <2.9>
|
||||||
|
|
||||||
|
@noPages
|
||||||
|
@@ -744,7 +596,6 @@ smallROM move.l #$20000,d0 ; for Mac Plus and 512ke (puny) <3.3>
|
||||||
|
romKnows move.l ROMHeader.RomSize(a0),d0 ; get size of the ROM <3.3>
|
||||||
|
machExit bra stdResult ; save result and exit <2.9>
|
||||||
|
|
||||||
|
- IF ForRom THEN ;<SM2> <PN> <22>
|
||||||
|
************************************************************************
|
||||||
|
* OS trap table base
|
||||||
|
************************************************************************
|
||||||
|
@@ -794,32 +645,6 @@ getFSAttr ; <26>
|
||||||
|
bra stdResult ; <26>
|
||||||
|
; <26>
|
||||||
|
************************************************************************
|
||||||
|
-* Quickdraw feature flags ;<14>
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-getQuickdrawFeatures
|
||||||
|
- moveq #0, d0 ; <SM2> <PN> <26>
|
||||||
|
- move.l # \ ; <SM2> <PN> ;<14>
|
||||||
|
- (1<<gestaltHasColor) | \ ; <SM2> <PN> ;<14>
|
||||||
|
- (1<<gestaltHasDeepGWorlds) | \ ; <SM2> <PN> ;<14>
|
||||||
|
- (1<<gestaltHasDirectPixMaps) | \ ; <SM2> <PN> ;<14>
|
||||||
|
- (1<<gestaltHasGrayishTextOr) \ ; <SM2> <PN> ;<14>
|
||||||
|
- , d0 ; <SM2> <PN>
|
||||||
|
- bra stdResult ;<SM2> <PN> <26>
|
||||||
|
-
|
||||||
|
-************************************************************************
|
||||||
|
-* FontManager Attribute ;<14>
|
||||||
|
-************************************************************************
|
||||||
|
- IF hasSplineFonts THEN
|
||||||
|
-getFontMgrAttr
|
||||||
|
- move.l #(1 << gestaltOutlineFonts) | \
|
||||||
|
- (1 << gestaltPartialFonts) | \
|
||||||
|
- (1 << gestaltDiskCachedFonts) \
|
||||||
|
- , d0 ;<SM37> CSS
|
||||||
|
- bra stdResult ;<SM2> <PN> <26>
|
||||||
|
- ENDIF
|
||||||
|
- ENDIF ; IF ForRom <22>
|
||||||
|
-************************************************************************
|
||||||
|
* QD Version
|
||||||
|
************************************************************************
|
||||||
|
|
||||||
|
@@ -951,8 +776,7 @@ cleanROM move.b SystemInfo,d0 ; get status byte into d1 <2.9>
|
||||||
|
bra stdResult ; save result and exit <2.9>
|
||||||
|
|
||||||
|
universalROMs
|
||||||
|
-cleanROMs dc.w $077D ; SuperMario ROM <PN>
|
||||||
|
- dc.w $067C ; IIci ROM <PN>
|
||||||
|
+cleanROMs dc.w $067C ; IIci ROM <PN>
|
||||||
|
dc.w 0 ; eot <3.1>
|
||||||
|
|
||||||
|
|
||||||
|
@@ -987,24 +811,6 @@ VMInfo clr.l d0 ; VM installs itself, otherwise off <3.3>
|
||||||
|
bra stdResult ; save result and exit <2.9>
|
||||||
|
|
||||||
|
|
||||||
|
-************************************************************************
|
||||||
|
-* Sound Hardware
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-GetSoundHardware
|
||||||
|
- move.l #gestaltASCSnd,d0 ; default is Apple Sound Chip <SM9> rb <SM10> CSS <SM19> <SM20> fau
|
||||||
|
-
|
||||||
|
- TestFor AwacsExists ; Do we have an Awacs audio codec?
|
||||||
|
- beq @check4dsp ; nope, try DSP
|
||||||
|
- move.l #gestaltAwacsSnd, d0 ; yep, so return the appropriate thing
|
||||||
|
- bra stdResult
|
||||||
|
-
|
||||||
|
-@check4dsp TestFor DSPExists ; Are we using the DSP for sound
|
||||||
|
- beq stdResult ; Nope
|
||||||
|
- move.l #gestaltDSPSnd,d0 ; set the DSP type
|
||||||
|
- bra stdResult ; and exit
|
||||||
|
-
|
||||||
|
-
|
||||||
|
************************************************************************
|
||||||
|
* Notification Manager <9>
|
||||||
|
************************************************************************
|
||||||
|
@@ -1036,21 +842,6 @@ getSerialAttr
|
||||||
|
(1<<gestaltHasGPIbToDCDb),d0 ; GPIb connected to DCDb
|
||||||
|
@toStdResult bra stdResult
|
||||||
|
|
||||||
|
-************************************************************************
|
||||||
|
-* Serial HAL Type (universal ROM only)
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-getSerialHALType
|
||||||
|
- moveq #0,d0 ; clear result
|
||||||
|
-
|
||||||
|
- TestFor SerialDMA
|
||||||
|
- beq stdUnknown ; hardware does not use SerialDMA so HAL type is not valid
|
||||||
|
-
|
||||||
|
- move.l #ProductInfo.SHALMask,d0
|
||||||
|
- and.l UnivROMFlags1,d0 ; get HAL type from universal info
|
||||||
|
- lsr.l #2,d0 ; right justify
|
||||||
|
- bra stdResult
|
||||||
|
-
|
||||||
|
************************************************************************
|
||||||
|
* get slot info <2.9>
|
||||||
|
************************************************************************
|
||||||
|
@@ -1093,16 +884,14 @@ getSlotInfo
|
||||||
|
*************************************************************************
|
||||||
|
|
||||||
|
getHardwareAttr
|
||||||
|
- IF ForROM THEN ;<SM2> <PN>
|
||||||
|
movea.l ExpandMem,a0 ; get ptr to expandmem rec
|
||||||
|
movea.l emGestalt(a0),a0 ; get gestalt global ptr
|
||||||
|
cmpi.w #gestaltMacIIci,machType(a0) ; must use tables for pre Mac IIci machines
|
||||||
|
- blo getMachSpecific ; if so, don't use this routine
|
||||||
|
+ blt getMachSpecific ; if so, don't use this routine
|
||||||
|
cmpi.w #gestaltMacClassic,machType(a0) ; no universal tables on XO either <3.3>
|
||||||
|
beq getMachSpecific ; <3.3>
|
||||||
|
cmpi.w #gestaltPowerBook100,machType(a0); no universal tables on Asahi either <6><40>
|
||||||
|
beq getMachSpecific ; <6>
|
||||||
|
- ENDIF ;
|
||||||
|
|
||||||
|
clr.l d0 ; clear result
|
||||||
|
lea AttrTable,a0 ; get gestalt->universal mapping table
|
||||||
|
@@ -1135,55 +924,12 @@ getHardwareAttr
|
||||||
|
;Roll in NewGestaltSelectors from GestaltPatches.a <SM2> <PN>
|
||||||
|
@HasSoftPowerOff
|
||||||
|
; Check for HardPower/SoftPower supplies (please dont use boxflag) <SM39>
|
||||||
|
- IF forROM THEN
|
||||||
|
- TestFor hasHardPowerOff ; See if this power supply is cheap, stupid and manual! <SM39>
|
||||||
|
- bne.s @noSoftPowerOff ; -> Has a cheap power switch. <SM39>
|
||||||
|
- ELSE ; <SM39>
|
||||||
|
-
|
||||||
|
- movea.l ExpandMem,a0 ; get ptr to expandmem rec <SM2> <PN>
|
||||||
|
- movea.l emGestalt(a0),a0 ; get gestalt global ptr <SM2> <PN>
|
||||||
|
-
|
||||||
|
- cmpi.w #gestaltMacSE30,machType(a0) ; if this is an SE/30, we don’t have soft power-off <SM2> <PN>
|
||||||
|
- beq.s @noSoftPowerOff
|
||||||
|
- cmpi.w #gestaltMacLC,machType(a0) ; if this is an LC, we don’t have soft power-off <SM2> <PN>
|
||||||
|
- beq.s @noSoftPowerOff
|
||||||
|
- cmpi.w #gestaltMacLCII,machType(a0) ; if this is an LC II, we don’t have soft power-off <SM26> rb
|
||||||
|
- beq.s @noSoftPowerOff
|
||||||
|
- cmpi.w #boxClassicII,machType(a0) ; if this is an Apollo, we don’t have soft power-off <5><22> <SM2> <PN>
|
||||||
|
- beq.s @noSoftPowerOff ; <SM2> <PN>
|
||||||
|
- cmpi.w #gestaltTempest25,machType(a0) ; if this is a Tempest, we don’t have soft power-off <SM20> fau
|
||||||
|
- beq.s @noSoftPowerOff ; <SM20> fau
|
||||||
|
- cmpi.w #gestaltTempest33,machType(a0) ; if this is a Tempest, we don’t have soft power-off <SM23> fau
|
||||||
|
- beq.s @noSoftPowerOff ; <SM23> fau
|
||||||
|
- ENDIF ; <SM39>
|
||||||
|
- move.l #gestaltHasSoftPowerOff,d1 ; Get the Gestalt bit for SoftpowerOff
|
||||||
|
+ move.l RomBase,a0
|
||||||
|
+ cmp.w #$67C,ROMHeader.MachineNumber(a0)
|
||||||
|
+ bne.s @noSoftPowerOff
|
||||||
|
+ move.l #gestaltHasUniversalROM,d1 ; Get the Gestalt bit for SoftpowerOff
|
||||||
|
bset d1,d0 ; Say we gots SoftPowerOff
|
||||||
|
@noSoftPowerOff
|
||||||
|
-
|
||||||
|
-@IsUniversal
|
||||||
|
- IF not forROM THEN
|
||||||
|
- bsr.s IsROMUniversal ; See if this ROM is universal <SM29>
|
||||||
|
- beq.s @checkMemCtrlr ; -> Nope, skip it <SM29>
|
||||||
|
- ENDIF
|
||||||
|
-@HasUniv move.l #gestaltHasUniversalROM,d1 ; Get the Gestalt bit for Univ <6>
|
||||||
|
- bset d1,d0 ; Say we gots a Universal ROM! <6>
|
||||||
|
-
|
||||||
|
-@checkMemCtrlr move.l UnivInfoPtr,a0 ; Get pointer to ProductInfo record <SM11>
|
||||||
|
- cmp.b #DecoderKinds.OrwellDecoder,DecoderKind(a0) ; Do we have an orwell?
|
||||||
|
- bne.s @EnhLtalk ; IF we have an Orwell THEN
|
||||||
|
- bset #gestaltHasOrwell,d0 ; set the corresponding Gestalt bit
|
||||||
|
-
|
||||||
|
-@EnhLtalk TestFor hasEnhancedLTalk ; Do we have CURIO LocalTalk enhancements?
|
||||||
|
- beq.b @checkMACE ; no, check next feature
|
||||||
|
- bset #gestaltHasEnhancedLtalk,d0 ; That’s a big 10-4.
|
||||||
|
-
|
||||||
|
-@checkMACE TestFor MACEExists ; do we have MACE Ethernet Controller?
|
||||||
|
- beq.s @hardwareExit ; no, exit
|
||||||
|
- bset #gestaltHasMace,d0
|
||||||
|
-
|
||||||
|
-* bra.s @hardwareExit
|
||||||
|
-
|
||||||
|
-@hardwareExit
|
||||||
|
bra stdResult ; return the result in d0
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1204,6 +950,7 @@ AttrTable dc.b gestaltHasVIA1,VIA1Exists
|
||||||
|
dc.b gestaltHasOSS,OSSExists
|
||||||
|
dc.b gestaltHasFMC,FMCExists
|
||||||
|
dc.b gestaltHasRPU,RPUExists
|
||||||
|
+ dc.b gestaltHasOrwell,OrwellExists
|
||||||
|
dc.b gestaltHasJaws,JAWSExists ;<2>
|
||||||
|
dc.b gestaltHasSonic,SonicExists ;<2>
|
||||||
|
dc.b gestaltHasSCSI961,SCSI96_1Exists ;<2>
|
||||||
|
@@ -1213,51 +960,11 @@ AttrTable dc.b gestaltHasVIA1,VIA1Exists
|
||||||
|
ENDWITH
|
||||||
|
|
||||||
|
|
||||||
|
-************************************************************************ <SM30>
|
||||||
|
-* Universal ROM check
|
||||||
|
-************************************************************************
|
||||||
|
-IsROMUniversal
|
||||||
|
- IF NOT forROM THEN
|
||||||
|
- move.l A1,-(SP) ; Save A1
|
||||||
|
- move.l ROMBase,A0 ; Get ROMBase
|
||||||
|
- lea universalROMs,A1 ; Point to the table of Clean/Univeral ROM Sigs
|
||||||
|
-@UnivLupe move.w (A1)+,D1 ; Get a ROM id (list is null terminated)
|
||||||
|
- beq.s @done ; -> End of table means not universal (huh)
|
||||||
|
- cmp.w D1,ROMHeader.MachineNumber(A0) ; Check a table entry
|
||||||
|
- bne.s @UnivLupe ; -> Nope, keep looping
|
||||||
|
- ELSE
|
||||||
|
- moveq #1,D1 ; Yes, set D0
|
||||||
|
-@Done movem.l (SP)+,A1 ; Restore A1
|
||||||
|
- rts
|
||||||
|
-
|
||||||
|
- ENDIF
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-************************************************************************
|
||||||
|
-* AppleTalk Interrupt Disable Level
|
||||||
|
-* - for new machines to supply AppleTalk with the appropriate
|
||||||
|
-* interrupt mask, so AppleTalk doesn't default to disabling Level 4
|
||||||
|
-* and below interrupts ($2400).
|
||||||
|
-* - initially needed for Cyclone/Tempest
|
||||||
|
-*
|
||||||
|
-************************************************************************
|
||||||
|
-
|
||||||
|
-GetAtlkIntLevel
|
||||||
|
- TestFor MACEExists ; Do we have a MACE Ethernet Controller?
|
||||||
|
- Beq stdUnknown ; no, give an error
|
||||||
|
- TestFor PSCExists ; Do we have a PSC DMA/Interrupt Controller?
|
||||||
|
- Beq stdUnknown ; no, give an error
|
||||||
|
- Move.l #$2,d0 ; return interrupt mask level 2
|
||||||
|
- Bra stdResult ; and exit
|
||||||
|
-
|
||||||
|
-
|
||||||
|
************************************************************************
|
||||||
|
* machine-specific selectors
|
||||||
|
************************************************************************
|
||||||
|
|
||||||
|
- IF ( ForRom) THEN ; <2.9>
|
||||||
|
+ IF (1 OR ForRom) THEN ; <2.9>
|
||||||
|
getMachSpecific lea Selectors,a0 ; get address of selector table
|
||||||
|
clr.l d1 ; use d1 as second index
|
||||||
|
|
||||||
|
@@ -1572,18 +1279,14 @@ addLoop tst.l (a3,d3) ; end of table?
|
||||||
|
; Initialize gestalt global values
|
||||||
|
;------
|
||||||
|
|
||||||
|
-initGlobals bsr.s TestForEmu ; Test for a 68k emulator. Update globals if so. <SM30>
|
||||||
|
- bne.s @MachineType ; -> (hasEmu) Everything is setup. <SM30>
|
||||||
|
-
|
||||||
|
- move.l MemTop,D2 ; Get the current Logical RAM size <5>
|
||||||
|
+initGlobals move.l MemTop,D2 ; Get the current Logical RAM size <5>
|
||||||
|
bsr.s GetEDiskSize ; Get the EDisk size in bytes in D0 <5>
|
||||||
|
add.l D0,D2 ; add it to the LRAM size. <5>
|
||||||
|
@SaveLRAM move.l D2,realTop(a2) ; Save Logical RAM size <2.9>
|
||||||
|
|
||||||
|
- IF NOT forROM THEN
|
||||||
|
- bsr.s IsROMUniversal ; Is this a 32 bit clean ROM? <SM29>
|
||||||
|
- beq.s @not32bitClean ; -> Nope. Use Memtop for Log & Phys <1>
|
||||||
|
- ENDIF
|
||||||
|
+ move.l RomBase,A0 ; Check the ROM
|
||||||
|
+ cmp.w #$67C,8(A0) ; Is this a 32 bit clean (i.e. IIci) ROM?
|
||||||
|
+ bne.s @not32bitClean ; -> Nope. Use Memtop for Log & Phys
|
||||||
|
move.l RealMemTop,D2 ; On IIci ROM get Logical from RealMem <11>
|
||||||
|
add.l D0,D2 ; Add in size of RAM disk to logical <11>
|
||||||
|
move.l D2,realTop(a2) ; Save the adjusted Logical size <11>
|
||||||
|
@@ -1592,13 +1295,15 @@ initGlobals bsr.s TestForEmu ; Test for a 68k emulator. Update globals if
|
||||||
|
@not32bitClean move.l MemTop,memSize(a2) ; save Physical memory size
|
||||||
|
|
||||||
|
@CheckForVM move.l VMGlobals,D0 ; Get the Ptr to VM's globals <6>
|
||||||
|
+ beq.s @MachineType ; -> No VM <6>
|
||||||
|
bmi.s @MachineType ; -> No VM <6>
|
||||||
|
|
||||||
|
move.l D0,A1 ; Get VM globals Ptr <6>
|
||||||
|
|
||||||
|
IF NOT forROM THEN
|
||||||
|
- bsr.s IsROMUniversal ; Is this a 32 bit clean ROM? <SM29>
|
||||||
|
- bne.s @GetLogical ; -> Yes The Phys size is already correct <6>
|
||||||
|
+ move.l RomBase,A0 ; Check the ROM
|
||||||
|
+ cmp.w #$67C,8(A0) ; Is this a 32 bit clean (i.e. IIci) ROM?
|
||||||
|
+ beq.s @GetLogical ; -> Yes The Phys size is already correct <6>
|
||||||
|
|
||||||
|
moveq #-5,D0 ; GetPhysicalBytes
|
||||||
|
_MemoryDispatch ; Ask VM how much Physical RAM is in the machine
|
||||||
|
@@ -1629,77 +1334,60 @@ initGlobals bsr.s TestForEmu ; Test for a 68k emulator. Update globals if
|
||||||
|
|
||||||
|
;---------------------------------------------------
|
||||||
|
; GetEDiskSize
|
||||||
|
-; uses the value stored in BootGlobs record
|
||||||
|
-; at bgRamDiskSize
|
||||||
|
;
|
||||||
|
; Exit:
|
||||||
|
; D0 - Size in bytes
|
||||||
|
;---------------------------------------------------
|
||||||
|
- WITH StartGlobals ; <SM11> RLM <SM13> CSS
|
||||||
|
-GetEDiskSize move.l BootGlobPtr,a0 ; get ptr to boot globals at top of RAM <SM11> RLM
|
||||||
|
- move.l sgRamDiskSize(a0), D0 ; size of ram disk, if any <SM11> RLM
|
||||||
|
- rts ; <SM11> RLM
|
||||||
|
- ENDWITH ; (BootGlobs) <SM11> RLM
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-;__________________________________________________________________________________________ <SM30> SAM
|
||||||
|
-; TestForEmu
|
||||||
|
-;
|
||||||
|
-; Tests for the existence of a 68k emulator. Implies a PowerPC architecture. Get the
|
||||||
|
-; CPU id from the 60x processor and save it in Gestalt's globals. Update Gestalt's
|
||||||
|
-; logical and physical RAM size globals if Emu is running.
|
||||||
|
-;
|
||||||
|
-; Entry:
|
||||||
|
-; A2 - Ptr to Gestalt's Globals
|
||||||
|
-; Exit:
|
||||||
|
-; D0 - Clear if no Emulator. Nothing else touched.
|
||||||
|
-; Set if emulator installed, GestaltGlobals.realTop/memSize/pageSize updated
|
||||||
|
-;———————————————————————————————————————————————————————————————————————————————————————————
|
||||||
|
- With NKSystemInfo, ProcessorInfo
|
||||||
|
-TestForEmu MOVE.L Line1111,-(SP) ; Save the F-Line vector
|
||||||
|
- PEA @Continue ; Push the addr of our routine
|
||||||
|
- MOVE.L (SP)+,Line1111 ; Update the vector
|
||||||
|
- MOVE.L SP,D1 ; Save the Stack Ptr case we take an F-Line
|
||||||
|
- MOVEQ #0,D0 ; Clear the "has and emulator" flag
|
||||||
|
- NOP ; Sync the pipeline
|
||||||
|
-
|
||||||
|
- _RiscCoprocessorNop ; Either do nothing, or skip the next instructon
|
||||||
|
- MOVEQ #1,D0 ; Set the "has a 68k emulator" flag
|
||||||
|
-
|
||||||
|
-@Continue MOVE.L D1,SP ; Restore the SP (trash the exception frame if we made one)
|
||||||
|
- MOVE.L (SP)+,Line1111 ; Restore the Vector
|
||||||
|
- NOP ; See above
|
||||||
|
-
|
||||||
|
- MOVE.B D0,emu68k(A2) ; Save the Result in Gestalt's globals
|
||||||
|
- BEQ.S @Done ; -> No, emu. No data page.
|
||||||
|
-
|
||||||
|
- MOVE.L ProcessorInfoPtr,A3 ; Point to the NanoKernel's Processor Info record
|
||||||
|
-
|
||||||
|
- MOVE.L PageSize(A3),nativePageSize(A2) ; Save the native page size in Gestalt's globals
|
||||||
|
- MOVE.W ProcessorVersionReg(A3),D1 ; Get the PowerPC CPU version
|
||||||
|
- MOVE.B D1,nativeCPU(A2) ; Save the native CPU type
|
||||||
|
-
|
||||||
|
- MOVE.L NKSystemInfoPtr,A3 ; Point to the NanoKernel's System Info record
|
||||||
|
-
|
||||||
|
- MOVE.L PhysicalMemorySize(A3),D3 ; Get the Physical Memory Size
|
||||||
|
- MOVE.L D3,memSize(A2) ; Save it in Gestalt's globals
|
||||||
|
- TST.L VMGlobals ; Is VM on?
|
||||||
|
- BMI.S @noVM ; -> Nope
|
||||||
|
-
|
||||||
|
- MOVEQ #-6,D0 ; GetLogicalSize
|
||||||
|
- _MemoryDispatch ; Ask VM how much logical RAM we have
|
||||||
|
-
|
||||||
|
- SUB.L UsableMemorySize(A3),D3 ; Calc ram allocated by the NanoKernel
|
||||||
|
- ADD.L D0,D3 ; Add that to VM's logical size.
|
||||||
|
-
|
||||||
|
-@noVM MOVE.L D3,realTop(A2) ; Save the Logical RAM size
|
||||||
|
-@Done RTS
|
||||||
|
-
|
||||||
|
- EndWith
|
||||||
|
-
|
||||||
|
- IMPORT GESTALTSCRIPTMGR ; <SM8> rb
|
||||||
|
- IMPORT GetSoundAttributes ; found in SndLowLevel.a
|
||||||
|
+GetEDiskSize
|
||||||
|
+ movem.l a1/a2/d2,-(sp)
|
||||||
|
+ move.l RomBase,a0
|
||||||
|
+ cmp.w #$37A,ROMHeader.MachineNumber(a0) ; Portable
|
||||||
|
+ beq.s @returnZero
|
||||||
|
+
|
||||||
|
+ lea DrvQHdr+QHead-QLink,a0
|
||||||
|
+@dqloop move.l (a0),d0
|
||||||
|
+ beq.s @returnZero
|
||||||
|
+ move.l d0,a0
|
||||||
|
+
|
||||||
|
+ move.w dQDrive(a0),d1
|
||||||
|
+ move.w dQRefNum(a0),d0
|
||||||
|
+ move.w d0,d2
|
||||||
|
+ add.w #1,d0
|
||||||
|
+ neg.w d0
|
||||||
|
+ asl.w #2,d0
|
||||||
|
+ move.l UTableBase,a1
|
||||||
|
+ move.l (a1,d0),a1
|
||||||
|
+ move.l (a1),a1
|
||||||
|
+ btst #dRAMBased,dCtlFlags+1(a1)
|
||||||
|
+ beq.s @romBased
|
||||||
|
+ move.l (a1),a1
|
||||||
|
+@romBased move.l (a1),a1
|
||||||
|
+ lea drvrName(a1),a1
|
||||||
|
+ lea @dotEDisk,a2
|
||||||
|
+ clr.l d0
|
||||||
|
+ move.b (a2),d0
|
||||||
|
+@cmploop cmp.b (a2)+,(a1)+
|
||||||
|
+ bne.s @dqloop
|
||||||
|
+ dbra d0,@cmploop
|
||||||
|
+
|
||||||
|
+ lea -CntrlParam.size(sp),sp
|
||||||
|
+ move.l sp,a0
|
||||||
|
+ clr.l CntrlParam.ioCompletion(a0)
|
||||||
|
+ clr.w CntrlParam.ioVRefNum(a0)
|
||||||
|
+ move.w d2,CntrlParam.ioCRefNum(a0)
|
||||||
|
+ move.w d1,CntrlParam.ioVRefNum(a0)
|
||||||
|
+ move.w #drvSizeCode,CntrlParam.csCode(a0)
|
||||||
|
+ _Status ,immed
|
||||||
|
+ move.l CntrlParam.csParam(a0),d0
|
||||||
|
+ lea CntrlParam.size(sp),sp
|
||||||
|
+ bra.s @return
|
||||||
|
+
|
||||||
|
+@returnZero clr.l d0
|
||||||
|
+@return movem.l (sp)+,a1/a2/d2
|
||||||
|
+ rts
|
||||||
|
+
|
||||||
|
+ STRING AsIs
|
||||||
|
+@dotEDisk dc.b 6, '.EDisk', 0
|
||||||
|
|
||||||
|
;-----
|
||||||
|
; Table of built-in Gestalt selectors
|
||||||
|
@@ -1734,24 +1422,10 @@ SelectorTable Selector gestaltMachineType, getMachineType ; machine type
|
||||||
|
Selector gestaltMiscAttr, getMisc ; misc attributes
|
||||||
|
Selector gestaltNotificationMgrAttr, notification ; nmgr attributes
|
||||||
|
Selector gestaltSerialAttr, getSerialAttr ; serial attributes
|
||||||
|
- Selector gestaltSerialHALType, getSerialHALType ; serial HAL resource ID
|
||||||
|
- IF ForRom THEN ; <PN> <SM2>
|
||||||
|
- Selector gestaltOSTable, getOSTable ; base of the OS trap table <PN> <SM2>
|
||||||
|
- Selector gestaltToolboxTable, getToolboxTable ; base of the toolbox trap table <PN> <SM2>
|
||||||
|
- Selector gestaltExtToolboxTable, getExtToolboxTable ; base of the ext. toolbox trap table <PN> <SM2>
|
||||||
|
- Selector gestaltFSAttr, getFSAttr ; return file system attributes <PN> <SM2>
|
||||||
|
- Selector gestaltQuickdrawFeatures, getQuickdrawFeatures ; return ColorQuickdrawfeatures <PN> <SM2>
|
||||||
|
- IF hasSplineFonts THEN
|
||||||
|
- Selector gestaltFontMgrAttr, getFontMgrAttr ; return true if outline fonts <PN> <SM2>
|
||||||
|
- ENDIF
|
||||||
|
- Selector gestaltScriptMgrVersion, GESTALTSCRIPTMGR ; Script Manager version number <SM8> rb
|
||||||
|
- Selector gestaltScriptCount, GESTALTSCRIPTMGR ; Script Manger count of scripts <SM8> rb
|
||||||
|
- Selector gestaltSoundAttr, GetSoundAttributes ; get the sound attributes
|
||||||
|
- Selector gestaltSoundHardware, GetSoundHardware ; get the sound harwdware chip type <SM9> rb
|
||||||
|
- Selector gestaltAtlkIntLevel, GetAtlkIntLevel ; get cpu's desired appletalk interrupt mask level
|
||||||
|
- ENDIF ; <22>
|
||||||
|
- Selector gestaltSysArchitecture, getSysArchitecture ; System Architecture <SM24>
|
||||||
|
- Selector gestaltNativeCPUtype, getNativeCPUtype ; Native Processor Type <SM24>
|
||||||
|
+ Selector gestaltOSTable, getOSTable ; base of the OS trap table
|
||||||
|
+ Selector gestaltToolboxTable, getToolboxTable ; base of the toolbox trap table
|
||||||
|
+ Selector gestaltExtToolboxTable, getExtToolboxTable ; base of the ext. toolbox trap table
|
||||||
|
+ Selector gestaltFSAttr, getFSAttr ; return file system attributes
|
||||||
|
Selector 13, Internal ; special
|
||||||
|
Selector 7, Internal ; special
|
||||||
|
Selector 0, 0 ; EOT
|
||||||
|
@@ -1860,7 +1534,7 @@ findMMUType
|
||||||
|
Move.l ExpandMem,A0 ; find out where expandMem is
|
||||||
|
Move.l emGestalt(A0),A0 ; get global ptr
|
||||||
|
Cmp.w #gestaltMacSE,machType(A0) ; should we bother to find out?
|
||||||
|
- Blo.s @noMMU ; nothing before SE can have one (yes)
|
||||||
|
+ Blt.s @noMMU ; nothing before SE can have one (yes)
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
IF hasMMU or (not ForRom) THEN ;
|
||||||
|
@@ -1869,7 +1543,7 @@ findMMUType
|
||||||
|
cmp.b #HMMU,d0 ; is it an AMU?
|
||||||
|
beq.s @MMUDone ; then we're done
|
||||||
|
cmp.b #PMMU851,d0 ; then make sure there is one at all
|
||||||
|
- Blo.s @noMMU ; no mmu
|
||||||
|
+ Blt.s @noMMU ; no mmu
|
||||||
|
Subq #1,D0 ; convert to right format
|
||||||
|
Bra.s @MMUDone ; go return result
|
||||||
|
ENDIF ;
|
||||||
|
@@ -1954,13 +1628,13 @@ findParityStatus
|
||||||
|
st.b (a1) ; write wrong parity mode
|
||||||
|
clr.b (a3,d2.w) ; write one SIMM with bad parity
|
||||||
|
|
||||||
|
- st.b rpuReset(a1) ; sync up RPU serial line <SM4><SES>
|
||||||
|
- clr.b (a1) ; write good parity mode <SM4><SES>
|
||||||
|
-
|
||||||
|
tst.l (a3) ; parity error if it's a parity SIMM
|
||||||
|
nop ; wait for an interrupt
|
||||||
|
nop
|
||||||
|
|
||||||
|
+ st.b rpuReset(a1) ; sync up RPU serial line
|
||||||
|
+ clr.b (a1) ; write good parity mode
|
||||||
|
+
|
||||||
|
move.l d1,(a3) ; restore contents of longword
|
||||||
|
move #$2000,sr ; turn interrupts back on
|
||||||
|
move.l d4,AutoInt7 ; restore NMI vector
|
||||||
|
diff --git a/OS/Gestalt/GestaltLookup.c b/OS/Gestalt/GestaltLookup.c
|
||||||
|
--- a/OS/Gestalt/GestaltLookup.c
|
||||||
|
+++ b/OS/Gestalt/GestaltLookup.c
|
||||||
|
@@ -10,7 +10,6 @@
|
||||||
|
Change History (most recent first):
|
||||||
|
|
||||||
|
<SM5> 11/10/93 fau Removed ulong typedef since it's now in Types.h.
|
||||||
|
- <SM4> 5/18/93 RC perfomance/bug fix changed a > to >> in FindLong
|
||||||
|
<SM3> 4/8/93 CSS Use GestaltPrivateEqu.h, and remove definitions in this file.
|
||||||
|
<11> 10/28/92 DTY Use Get/Set macros to access ExpandMem.
|
||||||
|
<10> 12/13/90 SAM Making Gestalt check for a nil proc ptr on _NewGestalt calls.
|
||||||
|
@@ -247,7 +246,7 @@ findLong(ulong selector, int* index)
|
||||||
|
min = 0;
|
||||||
|
max = GestaltPtr->slotsUsed-1;
|
||||||
|
do {
|
||||||
|
- i = min + ((max - min) >> 1); /* get middle of range */
|
||||||
|
+ i = min + ((max - min) > 1); /* get middle of range */
|
||||||
|
if (tablePtr[i][0] > selector) /* are we too high? (is that possible?) */
|
||||||
|
max = i;
|
||||||
|
else if (tablePtr[i][0] < selector) /* are we too low? */
|
||||||
diff --git a/OS/HFS/Cache/DiskCache.a b/OS/HFS/Cache/DiskCache.a
|
diff --git a/OS/HFS/Cache/DiskCache.a b/OS/HFS/Cache/DiskCache.a
|
||||||
--- a/OS/HFS/Cache/DiskCache.a
|
--- a/OS/HFS/Cache/DiskCache.a
|
||||||
+++ b/OS/HFS/Cache/DiskCache.a
|
+++ b/OS/HFS/Cache/DiskCache.a
|
||||||
|
Loading…
Reference in New Issue
Block a user