diff --git a/res/ACTION.HGR.UNCOMPRESSED/MAGNET.MADNESS b/res/ACTION.HGR.UNCOMPRESSED/MAGNET.MADNESS new file mode 100644 index 0000000..a480e41 Binary files /dev/null and b/res/ACTION.HGR.UNCOMPRESSED/MAGNET.MADNESS differ diff --git a/res/ACTION.HGR/MAGNET.MADNESS b/res/ACTION.HGR/MAGNET.MADNESS new file mode 100644 index 0000000..55bf242 Binary files /dev/null and b/res/ACTION.HGR/MAGNET.MADNESS differ diff --git a/res/ATTRACT/MAGNET.MADNESS b/res/ATTRACT/MAGNET.MADNESS new file mode 100644 index 0000000..0b3c460 --- /dev/null +++ b/res/ATTRACT/MAGNET.MADNESS @@ -0,0 +1,8 @@ +# +# Attract mode for MAGNET.MADNESS +# This file is automatically generated +# + +MAGNET.MADNESS=A + +[eof] diff --git a/res/CACHE00.IDX b/res/CACHE00.IDX index fbcdc91..1cd8c6c 100644 Binary files a/res/CACHE00.IDX and b/res/CACHE00.IDX differ diff --git a/res/CACHE01.IDX b/res/CACHE01.IDX index 2951ce0..f417775 100644 Binary files a/res/CACHE01.IDX and b/res/CACHE01.IDX differ diff --git a/res/CACHE10.IDX b/res/CACHE10.IDX index 394763e..3553501 100644 Binary files a/res/CACHE10.IDX and b/res/CACHE10.IDX differ diff --git a/res/CACHE11.IDX b/res/CACHE11.IDX index 82b188f..ece539b 100644 Binary files a/res/CACHE11.IDX and b/res/CACHE11.IDX differ diff --git a/res/GAMEHELP/MAGNET.MADNESS b/res/GAMEHELP/MAGNET.MADNESS new file mode 100644 index 0000000..dcdcc45 --- /dev/null +++ b/res/GAMEHELP/MAGNET.MADNESS @@ -0,0 +1,21 @@ + + + + Activate the magnets to attract the + + marble to the goal + + + + joystick, keyboard, or mouse + + activate with + + N + W E + S + + + +Esc* * * * * * * * * * * * * * * * *quit +[eof] diff --git a/res/GAMES.CONF b/res/GAMES.CONF index 2814507..4982c57 100755 --- a/res/GAMES.CONF +++ b/res/GAMES.CONF @@ -49,10 +49,11 @@ 10000,INTL.HOCKEY=International Hockey 10000,KARATE.CHAMP=Karate Champ 00001,KONO=Kono -00001,MU.TORERE=Mu Torere +00001,MAGNET.MADNESS=Magnet Madness 00001,MICROGOLF=Micro Golf 00001,MICROCHESS=MicroChess 00000,MPL=Million Perfect Letters +00001,MU.TORERE=Mu Torere 00001,NIMWIT=Nimwit 00001,NINE.MENS=Nine Men's Morris 10001,ONE.ON.ONE=One on One diff --git a/res/SS/ACTBOARD.CONF b/res/SS/ACTBOARD.CONF index 210b591..ac23576 100644 --- a/res/SS/ACTBOARD.CONF +++ b/res/SS/ACTBOARD.CONF @@ -12,6 +12,7 @@ MICROCHESS ROCK.N.SCROLL NINE.MENS PENSATE +MAGNET.MADNESS GO WARI FOX.AND.GEESE diff --git a/res/SS/ACTNZ.CONF b/res/SS/ACTNZ.CONF index f012967..5655194 100644 --- a/res/SS/ACTNZ.CONF +++ b/res/SS/ACTNZ.CONF @@ -10,6 +10,7 @@ NIMWIT THE.DAM.BUSTERS WARI ONE.ON.ONE +MAGNET.MADNESS AMER.CHALLENGE MU.TORERE TAG.TEAM diff --git a/res/SS/CATBOARD.CONF b/res/SS/CATBOARD.CONF index 47a3dde..9b84adb 100644 --- a/res/SS/CATBOARD.CONF +++ b/res/SS/CATBOARD.CONF @@ -10,6 +10,7 @@ KONO MU.TORERE REVERSI GO +MAGNET.MADNESS CHECKERS SEEGA NINE.MENS diff --git a/res/SS/TITLENZ.CONF b/res/SS/TITLENZ.CONF index f7033d4..5e3f0f5 100644 --- a/res/SS/TITLENZ.CONF +++ b/res/SS/TITLENZ.CONF @@ -4,6 +4,7 @@ TOMAHAWK WINTER.GAMES +MAGNET.MADNESS WORLD.KARATE TAG.TEAM PENSATE diff --git a/res/TITLE.HGR.UNPACKED/MAGNET.MADNESS b/res/TITLE.HGR.UNPACKED/MAGNET.MADNESS new file mode 100644 index 0000000..5b1a2e0 Binary files /dev/null and b/res/TITLE.HGR.UNPACKED/MAGNET.MADNESS differ diff --git a/res/TITLE.HGR/MAGNET.MADNESS b/res/TITLE.HGR/MAGNET.MADNESS new file mode 100644 index 0000000..dfa6539 --- /dev/null +++ b/res/TITLE.HGR/MAGNET.MADNESS @@ -0,0 +1 @@ +€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€?|?|O?~GyO€€€€0€€€€€€€€€€€€€€€€€€€U*U€€€€€*U***U*3€€€€?@€€ŸÀÿO|O~Oy€€€€€€€€€€€€€€€€€Ns8€€Nsg9€gNsg9Ns€€€€€€€€€€€€€0€€€0*U*U*U*U***U*\Zjj€€€€€TT**U***U*3€€€€€€þÿ€€Ox€@O?€~€€ƒüü˜ó±Æ‡Ÿ€³€€€€N€€Nsg9€g@sg9Ns~+UTT*U*3€€€0*U*U*U*U***U*\ZjjU*U*U*U**U***U*3€€¿þÿù€€G~Ox~OcO€~€€°æ˜˜Ì™ŽŸþ㇃€€€p€U*U**UTT*U*3€€€0|?*~|~|?*~3€€ÿçÿŸÿÿù€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U*|T|3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ÿ€€€€?@€€€€~?~ygy€€€0*U*U*UU***U**U*UU*UUT*U*U*U*U*3€€€€€€€Ÿ°Œø°€€€€€€€€€€€€€€€€€ €Ì™ƒ³†Ì™æƒ€€0*U*U*U€€€€€€€€€€€p?|s?|Oq?~GyGO€€€€0T*U**U*U*U*UT*U*U*UUTT**U*U*U*3€€€æÌ±°˜³°æŒ³æà€€€€€€€€€€€€€€ €æüñø³˜ó猀U***U*€€p?€€€€üÿãÿüÿó¿üÏÿñ¿þ‡€€þƒ€þ‡€€€€0*UJ**UU*U*U**U*UU*UUTT*T*U*U*U2€€€€€€€†üðñÃÏùá‡ðóãø€¾øø™ž¼€Æ‡°æøðã €€€€*U*UU*U€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€?|?|O?~GyO€€€€0*U*U*U*U***U*€€€€€U*U€€T**U***U*3€€UT*U*U€€?@OxO~Oy€€€€€€€€€€€€€€€€€Ns8€€Nsg9€gNsg9Ns€€€€€€€€€€€€€0€€€0*U*U*U*U***U*\Zjj*U*U*UT**U***U*3€€*U*U*3€€€€Ox€@O?€~€€€€€€€€€€€€€€€€€€N€8Nsg9€g@sg9Ns|+UTT*U*3€€€0*U*U*U*U***U*\zjU*U*U*U**U***U*3€€€€€€àà°˜€€~Ox~OcO€~€€³æ˜˜Ì™˜³æ€Æ€€€p€U*U**UTT*U*3€€€0€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0€€Ìက€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U*€€€€€€€0€€€€€€€€€€€€€€€€*U*U*U*U*U*U*U*€€€€€€€€€€€€€€€€€€€€€€€€Àÿ€€€€ÿÿŸÿÿüÿóÿÏüÿÿ€€€€0*U*U*UU***U**U*UU*UUT*U*U*U*U*3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ €€€€€À‡€€€€€€€€ €Ì™€€€€€p€€€øŸþÇÿùŸþçÿøŸÿãÿüÿãÿçÿ€€€€0T*U**U*U*U*UT*U*U*UUTT**U*U*U*3€€€¼ø°àñ³žæŒ³Æç€€€€€€€€€€€€€€ €æŒÀ™°ð±àŒ€ƒ³ÆÏ™ƒ†€€€€€€€€€€€€x~Gygxc|€€|€|€€€€0*UJ**UU*U*U**U*UU*UUTT*T*U*U*U2€€€€€€€†Ì³æÌ™³†à°æŒ€æÌ±˜³æ€æ€°æÌ™ƒæ€€€€€€€€€€€€€€€€€€€xÿ€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€?|?|O?~GyO€€€€0*U*U*U*U***U*\ZjjU*U*UTT**U***U*3€€€€€€€ð¿ü€€¿àÿOxO~O€~€€Ÿ€Œ˜ƒ°€€˜€€€€€€€Ns8€€Nsg9€gpg9Ns*U*U*U*UTT*U*3€€€0*U*U*U*U***U*\Zjj*U*U*UT**U***U*3€€ÿó¿üÏÿñ€€OxGOO?€~€€€€€€€€€€€€€€€€€€N€8Nsg9€gNsg9Ns€€€€€€*UTT*U*3€€€0*U*U*U*U***U*\*UjU*U*U*U**U***U*3€€¿þÇÿùÇÿ€€~O*(OCO€~€€ž¼˜ðø™³æà €0€€€€€€€€€€€€€€€€€€€€€€€U*U**UTT*U*3€€€0€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0€€ÿÇÿ€€€€€ø?€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U*€€€€€€€0€€€€€€€Ÿ¸¼øð€€€€€€€€€€€€€€€€ €ø˜ƒŸ†Àƒ€€€0T*U**U€€€€€€€€€€c|€|O|€€€€€€€€0*U*U*UU***U**U*UU*UUT*U*U*U*U*3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ €€€€€€€€€€€*U*U*U€€?p€€€x~Gy~gxc|cg€€€€0T*U**U*U*U*UT*U*U*UUTT**U*U*U*3€€€€€€€€€€€€€€€€*U*U*U*U*U*U*U*€æøøð±ààÀT*U*U*U€€€€€€€€€€€øŸþÇÿùÿçÿøŸÿãÿü€€ü‡€ü€€€€0*UJ**UU*U*U*~U*UUTT*€€€*€€€0€€€€€€€†Ìñ³æÌ™³†à°æ¸€æÌ±˜ƒþ€Æƒ°æü™ã瀀€€€€UTT**U€€€€€€€þÿ€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€~?|?|O~GyG€€€€0*U*U*U*U***U*\ZjjU*U*UTT**U***U*3€€*U*U*3€€€€`Ox~O~O€~€€³€Œ˜€°€€˜€€€€€€€Ns8€€Nsg9€gpg9Ns*U*U*U*UTT*U*3€€€0*U*U*U*U***U*\Zjj*U*U*UT**U***U*3€€€à̱°˜³œ€€OxGOO?€~€€€€€€€€€€€€€€€€€€N€8Nsg9€gNsg9Ns€€€€€€*UTT*U*3€€€0*U*U*U*U***U*\*UjU*U*U*U**U***U*3€€¾€³æ€€€€€~O*(OCO~€€€€€€€€€€€€€€€€€0€€€€€€€€€€€€€€€€€€€€€€€U*U**UTT*U*3€€€p?€€€€€€€€€€€€þÿ?€üƒ€€€€pÿÿÿðÿÿãÿÿÿ¿üG‡€€€0*U*U*UU***U**U*UU*UU*U*€€€€€€€0€€€€€€àà°æÌ™ƒ€€€€€€€€€€€€€€€€ €Ì™ƒ³€Àƒ€€€€€€ €¾Ì€€€€€€ÿ€€€ÀÿÿÿÏÿñ¿þÇÿùŸþçÿ€þ‡€þ‡€€€€€0*U*U*UU***U**U*UU*UUT*U*U*U*U*3€€€¼€à±€³€†€ƒ€€€€€€€€€€€€€€€€ €€€€€€€€€€€™˜³˜³æŒ€€€?`?€€€üÿãÿüÿó¿üÏÿñ¿þÿñÿóÿ‡€€€€0€€@**U€€€€€€€€€€€€U*UUTT*€€€€€€€0€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€üÿ?€€€€€€€€€€€€p?|sOq?~Gy€€x€x€€€€0~O*~|U*UT|*U***U*3€€€€€€€æÌ™³ÆÏ™ã‡à°æà€æÌ±˜³†€††°æŒð³æŒ€€€€€€€€|€€€€€€€ÿÿ€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0*U*U*U*U***U*\ZjjU*U*UTT**U***U*3€€c|s?|€€ðÿOx~O~O€~€€³æü˜ãóÇŸ€Ÿ€€€€Nc€€Ns|g9€gpgyGs*U*U*U*UTT*U*3€€€0*U*U*U*U***U*\Zjj*U*U*UT**U***U*3€€Oq?~€€€€OxGOO€~€€ž€ð˜À™€ƒ˜ãÇ€€€€~€xOg9€|g?~sg9N€€€€€€*UTT*U*3€€€0*U*U*U*U***U*\*UjU*U*U*U**U***U*3€€~€~€€€€€~O*(OO~€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U**UTT*U*3€€€p?€€€0*UJ**U€€~?€ÿ€€€€xyg|g€€€0*U*U*UU***U**U*UU*UU*U*€€€€€€€0€€€€€€°Î±æÌ™ƒ€€€€€€€€€€€€€€€€ €Ì™ƒ³ÆÏÏLJ€U*U*U*€€€€€€|ƒ€€€@q?|Oq?~Gy~g€~€~€€€€€0€€€€*U€€*€€€€€€€€€U*UUT€€€*U*U*U*3€€€æ€°°€ƒ€†€ƒ€€€€€€€€€€€€€€€€ €¾€€€€€€€Œ€*U*UU*U€€ÿÿ?@€€€|c|s?|Oq?~qs€€€€0*UJ**UU*U*U**U*UU*UUTT*T*U*U*U2€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€UTT*T*€€€€€€€€Ÿ€€€p?|€p€p?~G€€€x€x€€€€0~O*~~€€€€€U*U~T|*U***U*3€€€€€€€¼Ìñ³†Ì™ƒ†À³æ¼€æøà™ž¼€æƒ°æø€ã猀€€€€U*U*U2€€€€€~ÿ~G~Oy€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€0*U*U*U*U***U*\ZjjU*U*UTT**U***U*3€€€€€€€æŒ€€€qOx~O?~O€~€€ŸæÌ™³°æÌ™À™³€€€€~A€€Ns|g9€|c~qgyGs*U*U*U*UTT*U*3€€€0*U*U*U*U***U*\Zjj*U*U*UT**U***U*3€€€€€€€€à°€€g?~OxGOO€~€€³€˜˜À€ƒ˜³æŒ€€€€~€p?g9€|c?|qg9N?€€€€€€*UTT*U*3€€€0*U*U*U*U***U*\*UjU*U*U*U**U***U*3€€€€€€€°€€€€€~O*(OO~€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U**UTT*U*3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€æ€€€€ÿÿ?€€€€€üÿÿüÿóÏÿ¿þÿóÿƒ€€€0*U*U*UU***U**U*UU*UU€€€€*U*U*U*3€€€€€€°Æ±üøðƒ€€€€€€€€€€€€€€€€ €ü™ƒŸæÌ™ã€€€à€€€€€€€€€€€€€€€€€àÿøŸþçÿøŸÿãÿüÿó¿€ÿƒ€ÿƒ€€€€€0T*U**U*U*U*UT*U*U*UUTT**U*U*U*3€€€†øøùñ³¼æ€óÇ€€€€€€€€€€€€€€ €æ€€€€€€€Œ€€€€€€€€€€€~?€€€€þÇÿñ¿þÇÿùŸþçÿøŸÿÿðÿñÿƒ€€€€0*UJ**UU*U*U**U*UU*UUTT*T*U*U*U2€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€?|€€€€€€€€?|?|O?~GyO€€€€0€€€€€€€€€€€€€€€€€€€U*U€€€€€*U***U*3€€€€€€€€€€€À‡€àƒ€€€€€€€€€€€€€€€€€ð€€€€€€€?|O€€€ÿOÿÿO~Oy€€€€€€€€€€€€€€€€€~q8€€?g€|c?|q~xG?x?€€€0*U*U*U*U***U*\ZjjU*U*UTT**U***U*3€€?~Gy€€ùÿOx€@?~O€~€€ƒæÌ™ã±æÏ™À™³€€€€~€€Nsg9€|c|s9Ns*U*U*U*UTT*U*3€€€0*U*U*U*U***U*\Zjj*U*U*UT**U***U*3€€O€€€€€g?~Ox~OsO€~€€ƒ¼üüø™ž³þ³†Œ€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€*UTT*U*3€€€0*U*U*U*U***U*\*UjU*U*U*U**U***U*3€€€0€€€€€€€€€~O*(O~O~€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U**UTT*U*3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€?@€€€€||sO?~s€€€0*U*U*UU***U**U*UU*UUT*U*U*U*U*3€€€€€€°Î±°ÌÁ€€€€€€€€€€€€€€€€ €Ì™ƒ³æÌ™Ãƒ€€€€€€U*U€€€€€€€€€€€`x~gxc|s?€€€€€€€0T*U**U*U*U*UT*U*U*UUTT**U*U*U*3€€€¼Ì±°˜³†¾€³æ€€€€€€€€€€€€€€€ €æøðññ™ãÀ€€€€€*U€€þÿ?€€€€þÇÿñ¿þÇÿùŸþçÿøŸÿƒ€€ÿ€ÿƒ€€€€0*UJ**UU*U*U**U*UU*UUTT*T*U*U*U2€€€€€€€¼Œ€€€À€€à°à€€€€°˜€€€†€°æ€€€à€€€€€€***U*3€€€€€€€€€€?|?|O?~GyO€€€€0€€€€€€€€€€€€€€€€€€€U*U€€€€€*U***U*3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€OÿÿO~Oy€€€€€€€€€€€€€€€€€~s8€€Ng?€|g?~syOx?€€€0*U*U*U*U***U*\ZjjU*U*UTT**U***U*3€€€€€€€€€€€€Ox€@O€~€€ƒæÌ™ƒ³æÀ™À™³€€€€N€€Nsg9€g@s9Ns*U*U*U*UTT*U*3€€€0*U*U*U*U***U*\Zjj€€€€€€T**U***U*3€€€€€€€€€€€€G~Ox~OsO€~€€žæ˜˜Ì™ƒŸÌ±††€€€€€€€€€€€€€€€€€€€€€€€€€€U*U**UTT*U*3€€€0~?*~|~?*~3€€€€€€€€€€€€€~O*(~G~O~€€€€€€€€€€€€€€€€€0*U*U*UU***U**U*UU*UU*U*~T|3€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€ \ No newline at end of file diff --git a/res/dsk/magnet madness (4am pack).po b/res/dsk/magnet madness (4am pack).po new file mode 100644 index 0000000..d2717f9 Binary files /dev/null and b/res/dsk/magnet madness (4am pack).po differ diff --git a/res/history.md b/res/history.md index fa705ab..8dbf4d6 100644 --- a/res/history.md +++ b/res/history.md @@ -12,6 +12,7 @@ - Hi-Res Football - Hi-Res Soccer - Kono +- Magnet Madness - Micro Golf - MicroChess - Million Perfect Letters diff --git a/res/notes/wishlist.txt b/res/notes/wishlist.txt index 5e271b7..bc8838c 100644 --- a/res/notes/wishlist.txt +++ b/res/notes/wishlist.txt @@ -88,7 +88,6 @@ Win, Lose, or Draw (+ Second Edition, Junior Edition) [DHGR][128K] (Junior Editi //idea:Bez collection Place Ball Slide Glide -Magnet Madness Zig Zag Flag Shag Fuelish Future Mix Matcher diff --git a/res/ports/magnet-madness/Makefile b/res/ports/magnet-madness/Makefile new file mode 100644 index 0000000..43273e0 --- /dev/null +++ b/res/ports/magnet-madness/Makefile @@ -0,0 +1,55 @@ +# https://sourceforge.net/projects/acme-crossass/ +ACME=acme + +# https://github.com/mach-kernel/cadius +CADIUS=cadius + +EXOMIZER=exomizer mem -lnone -P23 -f -q + +BUILDDIR=build +DISKVOLUME=MAGNET.MADNESS +LOADER=$(BUILDDIR)/LOADER.SYSTEM\#FF2000 +EXE=$(BUILDDIR)/MAGNET.MADNESS\#068000 +COMPRESSED1=src/OBJ1.X +COMPRESSED2=src/OBJ2.X +SOURCES=$(wildcard src/*.a) $(COMPRESSED1) $(COMPRESSED2) +RES=$(wildcard res/*) $(wildcard ../common/res/*) +BUILDDISK=$(BUILDDIR)/$(DISKVOLUME).po + +.PHONY: clean mount all + +$(BUILDDISK): $(EXE) $(LOADER) $(RES) + +$(LOADER): $(SOURCES) | $(BUILDDIR) + $(ACME) src/loader.a + $(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$(LOADER)" -C + @touch "$@" + +$(EXE): $(SOURCES) $(COMPRESSED1) $(COMPRESSED2) | $(BUILDDIR) + $(ACME) src/magnet.madness.a + $(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$(EXE)" -C + @touch "$@" + +$(RES): $(BUILDDIR) + $(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$@" -C + @touch "$@" + +$(COMPRESSED1): + $(EXOMIZER) src/OBJ1@0x0900 -o "$@" + +$(COMPRESSED2): + $(EXOMIZER) src/OBJ2@0x5000 -o "$@" + +mount: $(BUILDDISK) + @open "$(BUILDDISK)" + +clean: + rm -rf "$(BUILDDIR)" + +$(BUILDDIR): + mkdir -p "$@" + $(CADIUS) CREATEVOLUME "$(BUILDDISK)" "$(DISKVOLUME)" 140KB -C + +all: clean mount + +.NOTPARALLEL: diff --git a/res/ports/magnet-madness/src/OBJ1 b/res/ports/magnet-madness/src/OBJ1 new file mode 100644 index 0000000..cead9b8 Binary files /dev/null and b/res/ports/magnet-madness/src/OBJ1 differ diff --git a/res/ports/magnet-madness/src/OBJ1.X b/res/ports/magnet-madness/src/OBJ1.X new file mode 100644 index 0000000..0a7b9bd Binary files /dev/null and b/res/ports/magnet-madness/src/OBJ1.X differ diff --git a/res/ports/magnet-madness/src/OBJ2 b/res/ports/magnet-madness/src/OBJ2 new file mode 100644 index 0000000..23642f1 Binary files /dev/null and b/res/ports/magnet-madness/src/OBJ2 differ diff --git a/res/ports/magnet-madness/src/OBJ2.X b/res/ports/magnet-madness/src/OBJ2.X new file mode 100644 index 0000000..32a7b94 Binary files /dev/null and b/res/ports/magnet-madness/src/OBJ2.X differ diff --git a/res/ports/magnet-madness/src/loader.a b/res/ports/magnet-madness/src/loader.a new file mode 100644 index 0000000..6eb1605 --- /dev/null +++ b/res/ports/magnet-madness/src/loader.a @@ -0,0 +1,25 @@ +!cpu 6502 +*=$2000 +!to "build/LOADER.SYSTEM#FF2000",plain + + !src "../common/src/constants.a" + !src "../common/src/macros.a" + + +READ_ENTIRE_FILE parm_boot_open, parm_boot_read + jmp (entry) + +parm_boot_open + !byte 3 + !word filename + !word $2100 + !byte 0 + +parm_boot_read + !byte 4 + !byte 1 +entry !word $8000 + !word $FFFF + !word 0 + +filename + !text 14,"MAGNET.MADNESS" diff --git a/res/ports/magnet-madness/src/magnet.madness.a b/res/ports/magnet-madness/src/magnet.madness.a new file mode 100644 index 0000000..9073fe3 --- /dev/null +++ b/res/ports/magnet-madness/src/magnet.madness.a @@ -0,0 +1,41 @@ +!cpu 6502 +*=$8000 +!to "build/MAGNET.MADNESS#068000",plain + + !src "../common/src/constants.a" + !src "../common/src/macros.a" + + jmp start + +compressed_data + !bin "src/OBJ1.X" + !bin "src/OBJ2.X" +FORWARD_DECRUNCHING = 1 +SHOW_PROGRESS_DURING_DECRUNCH = 1 +kExoProgressWidth = 7 ; depends on total size, max 38 + !src "../common/src/exodecrunch.a" + +start + +INIT_MACHINE + jsr decrunch ; compressed data contains target address + bit GFXMODE + bit PAGE1 + bit HIRES + bit FULLGFX + jsr decrunch_no_reset_progress +!if * != $B057 { + !serious "Adjust prelaunch to patch JSR at ", * +} + jsr $900 + bit CLEARKBD + jsr PRODOS_MLI + !byte CMD_QUIT + !word + ++ !byte 4 + +get_crunched_byte + lda compressed_data + inc get_crunched_byte+1 + bne + + inc get_crunched_byte+2 ++ rts diff --git a/res/ports/nimwit/Makefile b/res/ports/nimwit/Makefile index 5c54932..352e7a7 100644 --- a/res/ports/nimwit/Makefile +++ b/res/ports/nimwit/Makefile @@ -11,7 +11,7 @@ DISKVOLUME=NIMWIT LOADER=$(BUILDDIR)/LOADER.SYSTEM\#FF2000 EXE=$(BUILDDIR)/NIMWIT\#068000 COMPRESSED1=src/OBJ1.X -COMPRESSED1=src/OBJ2.X +COMPRESSED2=src/OBJ2.X SOURCES=$(wildcard src/*.a) $(COMPRESSED1) $(COMPRESSED2) RES=$(wildcard res/*) $(wildcard ../common/res/*) BUILDDISK=$(BUILDDIR)/$(DISKVOLUME).po @@ -37,7 +37,7 @@ $(RES): $(BUILDDIR) $(COMPRESSED1): $(EXOMIZER) src/OBJ1@0x0900 -o "$@" -$(COMPRESSED1): +$(COMPRESSED2): $(EXOMIZER) src/OBJ2@0x5000 -o "$@" mount: $(BUILDDISK) diff --git a/src/index/artwork.idx.a b/src/index/artwork.idx.a index f2d1328..337bf10 100644 --- a/src/index/artwork.idx.a +++ b/src/index/artwork.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2246349 + !be24 2268284 !le16 571 diff --git a/src/index/attract.idx.a b/src/index/attract.idx.a index 445f3a0..e0fe2f1 100644 --- a/src/index/attract.idx.a +++ b/src/index/attract.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2233336 + !be24 2255187 !le16 978 diff --git a/src/index/cache00.idx.a b/src/index/cache00.idx.a index a3b5cf4..e3df651 100644 --- a/src/index/cache00.idx.a +++ b/src/index/cache00.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2223807 - !le16 385 + !be24 2245461 + !le16 399 diff --git a/src/index/cache01.idx.a b/src/index/cache01.idx.a index 33dcb3e..1e0ac7c 100644 --- a/src/index/cache01.idx.a +++ b/src/index/cache01.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2225821 - !le16 692 + !be24 2247529 + !le16 706 diff --git a/src/index/cache10.idx.a b/src/index/cache10.idx.a index 8d07f84..b262951 100644 --- a/src/index/cache10.idx.a +++ b/src/index/cache10.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2228169 - !le16 619 + !be24 2249931 + !le16 633 diff --git a/src/index/cache11.idx.a b/src/index/cache11.idx.a index 0de82e1..83672f0 100644 --- a/src/index/cache11.idx.a +++ b/src/index/cache11.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2231201 - !le16 974 + !be24 2253017 + !le16 988 diff --git a/src/index/count00.a b/src/index/count00.a index 0860c8d..179606b 100644 --- a/src/index/count00.a +++ b/src/index/count00.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 31 +!word 32 diff --git a/src/index/count01.a b/src/index/count01.a index 8be9fcf..2b8fe1b 100644 --- a/src/index/count01.a +++ b/src/index/count01.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 46 +!word 47 diff --git a/src/index/count10.a b/src/index/count10.a index bed4c12..e011533 100644 --- a/src/index/count10.a +++ b/src/index/count10.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 48 +!word 49 diff --git a/src/index/count11.a b/src/index/count11.a index b7e1d10..fa7ba0b 100644 --- a/src/index/count11.a +++ b/src/index/count11.a @@ -3,4 +3,4 @@ ; ; This file is automatically generated ; -!word 67 +!word 68 diff --git a/src/index/coverfade.idx.a b/src/index/coverfade.idx.a index 9335955..adb2bcb 100644 --- a/src/index/coverfade.idx.a +++ b/src/index/coverfade.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2246920 + !be24 2268855 !le16 306 diff --git a/src/index/credits.idx.a b/src/index/credits.idx.a index 77d7a95..de5d551 100644 --- a/src/index/credits.idx.a +++ b/src/index/credits.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2247570 + !be24 2269505 !le16 336 diff --git a/src/index/decrunch.idx.a b/src/index/decrunch.idx.a index 153bc79..6f58ef1 100644 --- a/src/index/decrunch.idx.a +++ b/src/index/decrunch.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2247906 + !be24 2269841 !le16 303 diff --git a/src/index/demo.idx.a b/src/index/demo.idx.a index a02f9ea..90f3702 100644 --- a/src/index/demo.idx.a +++ b/src/index/demo.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 1806963 + !be24 1816154 !le16 69 diff --git a/src/index/dfx.idx.a b/src/index/dfx.idx.a index 136013a..e0c2554 100644 --- a/src/index/dfx.idx.a +++ b/src/index/dfx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2236954 + !be24 2258805 !le16 1640 diff --git a/src/index/dgr.fizzle.idx.a b/src/index/dgr.fizzle.idx.a index 9d5e2b7..bd5bebe 100644 --- a/src/index/dgr.fizzle.idx.a +++ b/src/index/dgr.fizzle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2247302 + !be24 2269237 !le16 67 diff --git a/src/index/dgr.idx.a b/src/index/dgr.idx.a index 19ae86c..38603fa 100644 --- a/src/index/dgr.idx.a +++ b/src/index/dgr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2246337 + !be24 2268272 !le16 12 diff --git a/src/index/dhgr.idx.a b/src/index/dhgr.idx.a index 3213d5f..ba4b9b0 100644 --- a/src/index/dhgr.idx.a +++ b/src/index/dhgr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2245447 + !be24 2267382 !le16 838 diff --git a/src/index/dtitle.idx.a b/src/index/dtitle.idx.a index 7702b71..f1294a9 100644 --- a/src/index/dtitle.idx.a +++ b/src/index/dtitle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2243346 + !be24 2265260 !le16 271 diff --git a/src/index/fx.idx.a b/src/index/fx.idx.a index c3beebd..054659d 100644 --- a/src/index/fx.idx.a +++ b/src/index/fx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2234314 + !be24 2256165 !le16 2640 diff --git a/src/index/gamehelp.idx.a b/src/index/gamehelp.idx.a index eb09fbb..e06275c 100644 --- a/src/index/gamehelp.idx.a +++ b/src/index/gamehelp.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2238952 - !le16 1161 + !be24 2260803 + !le16 1182 diff --git a/src/index/gr.fizzle.idx.a b/src/index/gr.fizzle.idx.a index eb3e064..8c25cb6 100644 --- a/src/index/gr.fizzle.idx.a +++ b/src/index/gr.fizzle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2247226 + !be24 2269161 !le16 76 diff --git a/src/index/gr.idx.a b/src/index/gr.idx.a index ad42231..4730328 100644 --- a/src/index/gr.idx.a +++ b/src/index/gr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2246285 + !be24 2268220 !le16 52 diff --git a/src/index/helptext.idx.a b/src/index/helptext.idx.a index fca49a8..513a584 100644 --- a/src/index/helptext.idx.a +++ b/src/index/helptext.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2247369 + !be24 2269304 !le16 201 diff --git a/src/index/hgr0.idx.a b/src/index/hgr0.idx.a index 9290158..2053827 100644 --- a/src/index/hgr0.idx.a +++ b/src/index/hgr0.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2243617 + !be24 2265531 !le16 383 diff --git a/src/index/hgr1.idx.a b/src/index/hgr1.idx.a index fb7d8f9..b3d7426 100644 --- a/src/index/hgr1.idx.a +++ b/src/index/hgr1.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2244000 + !be24 2265914 !le16 138 diff --git a/src/index/hgr2.idx.a b/src/index/hgr2.idx.a index a978352..2bfb4a3 100644 --- a/src/index/hgr2.idx.a +++ b/src/index/hgr2.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2244138 + !be24 2266052 !le16 92 diff --git a/src/index/hgr3.idx.a b/src/index/hgr3.idx.a index 4fae45b..789bbd6 100644 --- a/src/index/hgr3.idx.a +++ b/src/index/hgr3.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2244230 - !le16 215 + !be24 2266144 + !le16 236 diff --git a/src/index/hgr4.idx.a b/src/index/hgr4.idx.a index efe8a35..ded9dcf 100644 --- a/src/index/hgr4.idx.a +++ b/src/index/hgr4.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2244445 + !be24 2266380 !le16 713 diff --git a/src/index/hgr5.idx.a b/src/index/hgr5.idx.a index 5f9bf2c..bbb65d8 100644 --- a/src/index/hgr5.idx.a +++ b/src/index/hgr5.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2245158 + !be24 2267093 !le16 285 diff --git a/src/index/hgr6.idx.a b/src/index/hgr6.idx.a index 5a623ed..dcd3314 100644 --- a/src/index/hgr6.idx.a +++ b/src/index/hgr6.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2245443 + !be24 2267378 !le16 4 diff --git a/src/index/joystick.idx.a b/src/index/joystick.idx.a index 240393d..98557ce 100644 --- a/src/index/joystick.idx.a +++ b/src/index/joystick.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2248209 + !be24 2270144 !le16 2370 diff --git a/src/index/miniattract0.idx.a b/src/index/miniattract0.idx.a index bfa2027..c0edc04 100644 --- a/src/index/miniattract0.idx.a +++ b/src/index/miniattract0.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2241233 - !le16 639 + !be24 2263105 + !le16 660 diff --git a/src/index/miniattract1.idx.a b/src/index/miniattract1.idx.a index 87a7e60..dc1e324 100644 --- a/src/index/miniattract1.idx.a +++ b/src/index/miniattract1.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2241872 + !be24 2263765 !le16 526 diff --git a/src/index/prelaunch.idx.a b/src/index/prelaunch.idx.a index 572b6b7..e8d64a6 100644 --- a/src/index/prelaunch.idx.a +++ b/src/index/prelaunch.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2232175 - !le16 1161 + !be24 2254005 + !le16 1182 diff --git a/src/index/res.cover.idx.a b/src/index/res.cover.idx.a index ac20172..07f5d7b 100644 --- a/src/index/res.cover.idx.a +++ b/src/index/res.cover.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 644651 + !be24 652331 !le16 8184 diff --git a/src/index/res.help.idx.a b/src/index/res.help.idx.a index a59ac01..ad2e0e5 100644 --- a/src/index/res.help.idx.a +++ b/src/index/res.help.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 661027 + !be24 668707 !le16 8184 diff --git a/src/index/res.title.idx.a b/src/index/res.title.idx.a index 26041f7..9d62f6c 100644 --- a/src/index/res.title.idx.a +++ b/src/index/res.title.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 652835 + !be24 660515 !le16 8192 diff --git a/src/index/search00.idx.a b/src/index/search00.idx.a index cad5661..6ff20fd 100644 --- a/src/index/search00.idx.a +++ b/src/index/search00.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2222783 - !le16 1024 + !be24 2244397 + !le16 1064 diff --git a/src/index/search01.idx.a b/src/index/search01.idx.a index 928044a..4dfdc94 100644 --- a/src/index/search01.idx.a +++ b/src/index/search01.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2224192 - !le16 1629 + !be24 2245860 + !le16 1669 diff --git a/src/index/search10.idx.a b/src/index/search10.idx.a index 33b9af7..37e6f48 100644 --- a/src/index/search10.idx.a +++ b/src/index/search10.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2226513 - !le16 1656 + !be24 2248235 + !le16 1696 diff --git a/src/index/search11.idx.a b/src/index/search11.idx.a index 14f009e..64f375a 100644 --- a/src/index/search11.idx.a +++ b/src/index/search11.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2228788 - !le16 2413 + !be24 2250564 + !le16 2453 diff --git a/src/index/sfx.idx.a b/src/index/sfx.idx.a index 50fee10..2c4d353 100644 --- a/src/index/sfx.idx.a +++ b/src/index/sfx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2238594 + !be24 2260445 !le16 358 diff --git a/src/index/slideshow.idx.a b/src/index/slideshow.idx.a index a4cbc86..baae968 100644 --- a/src/index/slideshow.idx.a +++ b/src/index/slideshow.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2240113 + !be24 2261985 !le16 1120 diff --git a/src/index/title.idx.a b/src/index/title.idx.a index 6f9f034..dcbd32e 100644 --- a/src/index/title.idx.a +++ b/src/index/title.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2242398 - !le16 948 + !be24 2264291 + !le16 969 diff --git a/src/index/xsingle.idx.a b/src/index/xsingle.idx.a index 5caa610..7497701 100644 --- a/src/index/xsingle.idx.a +++ b/src/index/xsingle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 2222251 - !le16 532 + !be24 2243842 + !le16 555 diff --git a/src/prelaunch/nimwit.a b/src/prelaunch/nimwit.a index 2414576..51bff66 100644 --- a/src/prelaunch/nimwit.a +++ b/src/prelaunch/nimwit.a @@ -1,18 +1,18 @@ ;license:MIT !cpu 6502 -!to "build/PRELAUNCH.INDEXED/NIMWIT",plain +!to "build/PRELAUNCH.INDEXED/MAGNET.MADNESS",plain *=$106 !source "src/prelaunch/common.a" +ENABLE_ACCEL lda #$4C - sta $B931 + sta $B057 jsr $8000 +DISABLE_ACCEL +RESET_VECTOR $100 - jmp $B934 + jmp $B05A !if * > $1C0 { !error "code is too large, ends at ", *