diff options
author | Alec Murphy <alec@checksum.fail> | 2017-03-19 13:29:44 -0400 |
---|---|---|
committer | Alec Murphy <alec@checksum.fail> | 2017-03-19 13:29:44 -0400 |
commit | 2372e744bbbcc1664a13f91e4ff5a8c5e4b5ee1f (patch) | |
tree | 52f4fffe5023b9f73f72609cd4bd460a2d1cabda | |
parent | fc583a356e715b2cb7752603ed7f3ee01b8980a3 (diff) |
Fixed CPU usage and screen flicker; added Pause screen stub, option to run sound on dedicated core.
-rw-r--r-- | ITEMS.GR | bin | 0 -> 3184 bytes | |||
-rw-r--r-- | Items.bmp | bin | 0 -> 145274 bytes | |||
-rw-r--r-- | MMFONT.HC | 2 | ||||
-rw-r--r-- | MMGAME.HC | 90 | ||||
-rw-r--r-- | MMSOUND.HC | 8 | ||||
-rw-r--r-- | MMSPRITE.HC | 13 | ||||
-rw-r--r-- | SFX_MMPAUSE.RAW | 1 | ||||
-rw-r--r-- | SFX_MMSELECT.RAW | 1 |
8 files changed, 97 insertions, 18 deletions
diff --git a/ITEMS.GR b/ITEMS.GR Binary files differnew file mode 100644 index 0000000..a15c816 --- /dev/null +++ b/ITEMS.GR diff --git a/Items.bmp b/Items.bmp Binary files differnew file mode 100644 index 0000000..d03974b --- /dev/null +++ b/Items.bmp @@ -15,6 +15,8 @@ U0 Text(U8 *_Text, I64 ScrOffsetX, I64 ScrOffsetY, I64 _Color) { // Alpha if(_Text[TextOffset]>0x40 && _Text[TextOffset]<0x5B) { MMFontOffsetX = 24*(_Text[TextOffset]-0x41); MMFontOffsetY = 27; }; if(_Text[TextOffset]>0x51 && _Text[TextOffset]<0x5B) { MMFontOffsetX += 2; }; + // Selector + if(_Text[TextOffset]==0x3E) { MMFontOffsetX = 48; MMFontOffsetY = 159; }; FontClip = DCExt(MMFont, MMFontOffsetX, MMFontOffsetY, MMFontOffsetX+23, MMFontOffsetY+23); GrBlot(Buffer, ScrOffsetX+ScrOffsetIncr, ScrOffsetY, FontClip); DCDel(FontClip); @@ -186,7 +186,6 @@ U0 ReadyMsg() { if (RMFlop==0) { Text("READY", 262, 216, WHITE); } RMFlop++; if (RMFlop>1) { RMFlop = 0; }; - GrUpdateScrn; Sleep(60); }; }; @@ -195,25 +194,21 @@ U0 MMTeleportIn() { UpdateBgr; MMSprite(SPR_Megaman, MMInvFlop, MMX, TelY, ((32*3)*5), ((32*3)*0), ((32*3)*6)-1, ((32*3)*1)-1, MMDir); DrawMMLifeMeter; - GrUpdateScrn; - Sleep(0); + Sleep(1); }; Sfx(SFX_MMTELIN); UpdateBgr; MMSprite(SPR_Megaman, MMInvFlop, MMX, MMY-MMJumpY, ((32*3)*5), ((32*3)*1)+2, ((32*3)*6)-1, ((32*3)*2)-1, MMDir); DrawMMLifeMeter; - GrUpdateScrn; - Sleep(0); + Sleep(1); UpdateBgr; MMSprite(SPR_Megaman, MMInvFlop, MMX, MMY-MMJumpY, ((32*3)*5), ((32*3)*2)+2, ((32*3)*6)-1, ((32*3)*3)-1, MMDir); DrawMMLifeMeter; - GrUpdateScrn; - Sleep(0); + Sleep(1); UpdateBgr; MMSprite(SPR_Megaman, MMInvFlop, MMX, MMY-MMJumpY, ((32*3)*5), ((32*3)*0), ((32*3)*6)-1, ((32*3)*1)-1, MMDir); DrawMMLifeMeter; - GrUpdateScrn; - Sleep(0); + Sleep(1); }; U0 InitGameSettings() { BgrIncrX=0; @@ -262,6 +257,71 @@ U0 InitGameSettings() { NewEnemy(MMX+(16*MMPixScale)+(48*MMPixScale), MMY, 15, 0, 10, 1, 0); NewEnemy(MMX+(128*MMPixScale)+(48*MMPixScale), MMY, 15, 0, 10, 1, 0); }; + +U0 ItemSelect() +{ + Bool xblk=FALSE; + Bool xcur=FALSE; + I64 iSysTimerCnt; + I64 isx=36; + I64 isy=60; + I64 isxctr=0; + I64 isyctr=0; + Sfx(SFX_MMPAUSE); + while (isyctr<14) { + isx=36; + isxctr=0; + while (isxctr<10) { + iSysTimerCnt=SysTimerRead; + xblk=FALSE; + if (isyctr>0 && isyctr<13) { + if (isxctr>0 && isxctr<9) { + xblk=TRUE; + }; + }; + if (xblk) { + GrBlot(,258+isx,16+isy,IX_WND); + } else { + GrBlot(,252+isx,12+isy,IX_BORDER); + }; + while (SysTimerRead<iSysTimerCnt+550) { + Sleep(1); + }; + isx+=24; + isxctr++; + }; + isy+=24; + isyctr++; + }; + // 24 + + Text(" P", 319, 93+(24*1), WHITE); + Text(" EXIT", 319, 93+(24*10), WHITE); + + while (ScanKey) { Sleep(1); }; + iSysTimerCnt=SysTimerRead; + while (SysTimerRead<iSysTimerCnt+180000) { + Sleep(1); + }; + + while (InU8(0x60)!=0x1C) { + Sleep(100); + if (xcur) { + Text(">", 319, 93+(24*1), LTGRAY); + } else { + GrBlot(,319,93+(24*1),IX_WND); + }; + if (!xcur) { xcur=TRUE; } else { xcur=FALSE; }; + }; + + iSysTimerCnt=SysTimerRead; + while (SysTimerRead<iSysTimerCnt+180000) { + Sleep(1); + }; + while (InU8(0x60)==0x1C) { Sleep(1); }; + while (ScanKey) { Sleep(1); }; +} + U0 GameLoop() { UpdateBgr; ReadyMsg; @@ -582,16 +642,18 @@ U0 GameLoop() { if (MMInvFlop>1) { MMInvFlop = 0; }; }; if (MMInvCtr>48) { MMInvCtr = 0; MMInvFlop = 0; }; + if (MMScanCode==0x1C && MMDeath==0) { + ItemSelect; + }; DrawMMLifeMeter; DrawDebugText(FALSE); - GrUpdateScrn; while (SysTimerRead<SysTimerCnt+60000) { - Sleep(0); + Sleep(1); }; }; }; // Start Application. -U0 MegaMan() { +U0 MegaMan(I64 sfx_cpu=0) { LoadSprites; MMExit = 0; SettingsPush; @@ -610,9 +672,8 @@ U0 MegaMan() { *gr.fp_draw_ms = &HideMs; DCFill(Buffer,TRANSPARENT); Sfx(MUS_DEMO); - Spawn(&PCSP); + Spawn(&PCSP,,,sfx_cpu); GameLoop; - GrUpdateScrn; }; // Exit game. Sfx(MUS_STOP); @@ -623,7 +684,6 @@ U0 MegaMan() { DCFill(DCAlias(),TRANSPARENT); *gr.fp_draw_grab_ms = PtrMsGrab; *gr.fp_draw_ms = PtrMsStd; - GrUpdateScrn; DocClear; SettingsPop; }; @@ -21,7 +21,9 @@ Adam("I64 SFX_LEN[0x3F];"); #define SFX_MMJUMP 0x12 #define SFX_MMHIT 0x13 #define SFX_MMDEATH 0x14 -#define SFX_ENHIT 0x15 +#define SFX_MMPAUSE 0x15 +#define SFX_MMSELECT 0x16 +#define SFX_ENHIT 0x17 SFX_OFS[9]=0; SFX_LEN[9]=0; @@ -49,7 +51,7 @@ U0 PCSP() PCSP_PLAY=FALSE; }; }; - Sleep(0); + Sleep(1); }; }; @@ -86,4 +88,6 @@ LoadSfx("SFX_MMSHOT.RAW"); LoadSfx("SFX_MMJUMP.RAW"); LoadSfx("SFX_MMHIT.RAW"); LoadSfx("SFX_MMDEATH.RAW"); +LoadSfx("SFX_MMPAUSE.RAW"); +LoadSfx("SFX_MMSELECT.RAW"); LoadSfx("SFX_ENHIT.RAW"); diff --git a/MMSPRITE.HC b/MMSPRITE.HC index d8bce8f..4f65135 100644 --- a/MMSPRITE.HC +++ b/MMSPRITE.HC @@ -1,26 +1,37 @@ -CDC *SPR_Evilman; +CDC *SPR_Evilman; +CDC *SPR_Items; CDC *SPR_Logo; CDC *SPR_Megaman; CDC *SPR_MegamanB; CDC *SPR_Tiles; CDC *SprClip; +CDC *IX_WND; +CDC *IX_BORDER; + U0 LoadSprites() { SPR_Evilman = GRRead("MM"); + SPR_Items = GRRead("ITEMS"); SPR_Logo = GRRead("LOGO"); SPR_Megaman = GRRead("MM"); SPR_MegamanB = GRRead("MMB"); SPR_Tiles = GRRead("TILES"); + IX_BORDER = DCExt(SPR_Items,506,13,542,45); + IX_WND = DCExt(SPR_Items,72,18,96,44); + DCFill(IX_WND,BLACK); DCColorChg(SPR_Evilman, BLUE, RED); DCColorChg(SPR_Evilman, LTCYAN, LTRED); }; U0 FreeSprites() { DCDel(SPR_Evilman); + DCDel(SPR_Items); DCDel(SPR_Logo); DCDel(SPR_Megaman); DCDel(SPR_MegamanB); DCDel(SPR_Tiles); + DCDel(IX_WND); + DCDel(IX_BORDER); }; U0 MMSprite(CDC *SprDC, I64 InvSpr, I64 ScrOffsetX, I64 ScrOffsetY, I64 SprOffsetX, I64 SprOffsetY, I64 SprClipX, I64 SprClipY, I64 SprDir) { diff --git a/SFX_MMPAUSE.RAW b/SFX_MMPAUSE.RAW new file mode 100644 index 0000000..d40a3e0 --- /dev/null +++ b/SFX_MMPAUSE.RAW @@ -0,0 +1 @@ +€€€€€€€€€€€€€€€€€€€€€€€€€okk]]]]^_]___^__a_hro…„„„„„„ƒ„…„…„„‚pqh`bacabacccbdcebptzŠ‡ˆˆ‰ˆ‰‡ˆ‡‡†ˆ†‰€srcddeefeffegfggggvw‡ŒŠŒ‹‹ŠŠ‰ŠŠ‹‰‹ˆ}vndifhgigihihiijhnxŒŽŒŒŒŒŒŒŒ|uhhiijikjkikkkkljs|ŒŽŽŽŽŽŽŽŠ{phkjkjjjllllmkmmlv†’ŽŠvlllllllmmmmmmnnon|’‘‘‘‘’‘‘‘‘‘†olmmmnlmnnoomnooopˆ“’“‘’’’’’‘’’‘“|knmonnmonooonooomw““““”’‘’“’’’’’‘‘’‘slnnnmooonpnpoqorm…˜’”’“’”’“’“’“‘””ˆkonooonoooopppoppr‘•“•”“““’“““““‘”“zlqnpopnpopoppporn}–“””””“““““““’“‘”Œqnooooppppppqpqqqq‡–”””””•“”““’““““’€ooopoppppppppqqqpxŽ–“”“•“””“”““““’”Œyooooppqppppqqqqpt€‘–””“”“”“”’”“““”‘vnooppppppppqrqqqz„“•””“””””•“”’“’–‰}unpopppoqprprprou~‡—”•”•””””“““““““€}pnpoqopppprpqqqo}€‹—“•”•“•“”““’”‘–‰}|nqoppqpqpqpqqrpu‚~‘—””•””•””“’““’’ynppqopoqoqqrprp}€‚”–”””“”””””“““•ˆ|€snpqqpoppqqqqpqu~‡•••””””“””“”’”‘~ropppppppprqrqq}‚~‹–”•”””•“”“’”’”‡}€|pnpqqoppqqqpqqv—””“•“•“”’”’”€~ynppqppppprprrr~ƒ“•“”””“•“”““’–…}vnqoqoqoqprpsox€…–”•“•””””“”“”~€~rnppppoppqrprp€‚~‹—“•“”“•””’”’”…}}nopppppppqpqow‚€‚~–“•””””““““•Ž}€€yopopppppqqrqr€€€’–””””””“”““”„}€~€unqpqppppqprox}…••””””“•“”’”}~€~v~~~€~€’“““’’‘“’’’’‘‘‘‘‘‘’‘‘‘‘ŽŽŽŽŽŽŽŽŽŒŒŒŒŽŒŒŒŒ‹ŒŒŒŒŒŒ‹Œ‹‹Š‹‹‹‹‹‹Š‰‹‹Š‹Š‰ŠŠŠŠ‰Šˆˆ‰‰‰ˆ‰ŠŠ‰Šˆˆ‡ˆˆˆ‰ˆˆ‰‰ˆˆˆˆ‡†ˆ‡‡‡‡‡‡‡†‡‡†‡ˆ††††††…‡††…‡‡†††††…†……„……†……„………………………„…„„„„ƒ„ƒ„„„ƒ„…„„„„„„„„„ƒ‚‚ƒƒƒƒ„‚ƒƒƒƒƒƒƒƒƒƒ‚„‚ƒ„‚ƒƒ„‚‚‚‚‚‚‚‚‚‚ƒ‚ƒ‚‚ƒ‚‚‚‚‚‚‚‚ƒ‚ƒ‚‚‚‚slpi^__^_````a```aabcbdbgurt„ˆ‡‡†ˆ‡‡†‡†††††‡††††‡vptgccccdcddeeeeeefffffflxt}ŒŠŠŠ‰Š‰‰Š‰Š‹ŠŠ‰‰‰‰ˆ‰‰wtsefffghghfhihhigiijijhp|x‡ŽŒŒŒŒŒŒŒ‹ŒŒ‹xxrgihihjiijjjkjjklklkmjt||ŽŽŽŽŽŽŽŒ‹yznijjjjlklkjklllklkllmjw|„“‘‘‘ŽŽŠ{xlkklmlllkllmmmmlmnomnlx~“‘’‘‘‘‘‘‘‘‘ŽŽ’‰{timklkmmllmmmnononnnoonyƒ“““’’’’’‘‘‘‘‘‘‘‘‘Šzpknlmmmmnnnnnmnooooopooz‹”’”’’‘’’’’’‘‘‘‘‘’‘‘‘’‰wnlmmmnnnnnnmnpooopoopop~’•““’““’’‘’’“‘‘‘‘‘’’‘’ˆplmmmnmonnnooooooopoqopp„–“““““““’’’‘’‘’’‘’‘“„mnmononnmoppoooooppppppqŒ–““““““’“’’‘“‘“‘“‘‘“”~jpmomnnnnpnnopnpppppopou“”””“““”“”’’’’‘‘’’‘’‘“xkonnmomnnpnononpoqorprn|—“•””“”’“”“‘“’’’’’‘‘’‘’qmnnonnnnppoooooppqpqoroƒ—“”“““”““““‘“’’’’’’‘‘“‡nnonnnnnoooonoooooppppppˆ—“•”“““’“““‘’’’’’’’‘‘‘’€mnnomnnnpoopnooppoppqqpv‹•“”““””“’““’‘‘’’“’’‘’Ž{omnnnmooooonoonopppoppq|Œ–“•““““““““’’““’’’‘‘“‡xnmononnnnoononpppppoqouŒ•’•““““““’’‘“’’’’‘’‘‘ymnnnnnnoopoooooppopoqoz€—’•’”’““”“’’’‘’‘“‘‘”‹}ylnmonnnopoooonpppppppq~•’”“”““’”’“’“‘’’“’‘”ƒ}wkolnnnnpoonpnopppppqov‘”””“““”““’’’‘’“‘’‘‘‘}}vlomomnnoopopopppopoqp{€“””““”““”“’’‘‘’‘’’‘‘‘‘‘‘‘ŽŽŽŽŽŽŽŽŽŽŽŒŽŒŒŒŒŒŒŒ‹‹‹‹‹‹‹‹Š‹ŒŠŠŠŠŠŠŠŠŠŠŠ‹Š‰‰‰‰‰‰‰‰‰‰‰‰‰ˆˆˆ‰ˆˆˆˆˆ‰ˆˆ‡ˆ‡‡ˆ†‡‡‡‡‡‡ˆ‡‡‡‡†††‡……†‡†††††††††…„„……„………„„…………†………„…„„„„„„„„„ƒ„„„„ƒ„„ƒ……„ƒƒƒƒƒ„ƒƒ‚ƒƒ‚„ƒƒƒƒƒƒ„‚‚ƒƒƒƒ‚ƒ‚ƒ‚‚ƒ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚€‚‚uh_^^^_^_^```_aa`aaababbccccdnw‡‡‡‡†ˆ‡ˆ‡‡‡‡†‡†††‡††††…‡†‡…undbdcccecddedfdfegffegggfhgiuz‹Œ‹‹‹ŒŠŒ‹‹‰‹‰‹ŠŠŠŠŠŠ‰ŠˆŠˆŠ†utgfffgggfghighhhhjiihiikikhnz{ŽŽŽŒŒŽŒŒŒŒ‹Œ‹‹Ž„uxihjijiiikjjjjjkjlklkmkmkmjs~{Ž‘ŽŽŽŽŽŽŽŽŽŽŽ‚w{liijkkkjkklkllmlmnmmnlmnolx}Ž“’‘’‘‘‘Žy{ojlkllllmmmmmlmmmnnmnnmooo|€}Ž“‘’‘’’’‘‘‘‘’’‘‘‘Ž~z|okllmnnmmmnnmnmonnnononooq~€~•’”’“’“’’’’’‘‘‘’‘‘‘‘‘’‹{|}qknlmmmmnnnnnnoooooooppqov€€~‹–‘“’“““’’‘“’’’’’‘‘’‘’ˆ{|~tlnmnnnmonnnoooopooqopoqox€~Š–’“’”““’”““’’’’’’‘’‘“„{~}uknnoonnmnpnooooopppppprn|€~‰•“•“““”’“”“‘“’’’’’’‘’‘€|}~vkomnmnnonpooooopppqppppq€~‡–”•””““““”“““’’’’“’’’‘’}||~wlomomoopooooooppppppppps€~‡–“”””““’“““““‘’‘“‘“‘’‘“Œ{~|~xmnnnnoooooooopqpqpppqqov‚~†•””””“’“”““““’’’‘‘“’’“ˆz~|~ymonnnnpoooooopqpppqppqpz‚‚~„•””•“”“”““’””’’’’’’‘’‘“„||~znmnnnopopopopppppppoqqp|~„””””””““’”““’’’“’’’’’’‘€|~|{omomoooooopoppppqpppqps~‚“”””””’““““”’“’’‘“‘“‘“Ž~~~}~}omnmnoonooonppppqopoqot€€€€€“•”””““”““’”’“’“’“‘’‘”‰{}}}}}pnnnpoooonooppqpqoqorpx€€€’•“”“”“““““““’‘’’’‘“‘”†|~|~}}pmnnnooooooooppqop}€€~–’”’“’“““‘’’“’’’‘‘‘’‘‘‘ŽŽŽŽŽŽŽŽŽŒŒŒ‹Œ‹‹ŒŒŒŒŠ‹ŠŠ‹‹‹‹‹‹‹ŠŠŠŠ‰ŠŠ‹Š‰ŠŠ‰ˆ‰‰ˆˆ‰‰‰‰‰‰Š‰ˆˆˆˆˆˆˆ‡ˆ‡ˆˆˆˆ‡ˆ‡‡†ˆ†‡ˆ‡†‡‡‡‡†…††††‡†††…‡†††‡†………†………†„…„„……………„…„„„ƒƒ„ƒ…„„„„„„„„„……„„ƒƒƒ„ƒ„„ƒƒ„ƒƒƒ„ƒƒƒƒƒƒƒƒ‚‚„„‚‚‚ƒ‚ƒƒƒ‚‚‚‚‚‚ƒ‚‚‚ƒƒ‚‚‚‚‚‚‚‚‚‚‚€€‚‚‚‚‚onl^^^^_]ipo„‚……|npd^a_b_cqp}ˆ„†„††vpj_babc`krz‡‡…‡…ˆsndbdcfceow†‰‡‰‡‡‰}phcfeefdjuƒŒˆŠ‰ŠŠˆxkeefffefoŒŠ‹ŠŠŠ‹ƒpgfgggghiz‹Œ‹‹ŠŒŠ‹zgfhhhgjfp‰ŠŽ‹‹ˆmfjhiiiih€ŒŽŒŽ‹{fjiijikfsŽŽŽŒ‰lglhkijji…’ŒŽygkiljjlhvŽŒ†ljkjlklko†‘ŽwilklkllmzŽ‘okmlllllu„‘†xnkllmmlr|‹’‘’‹}tllnmnloy’‘‘€zqknlmmly}ˆ“‘‘‘’„|ylmmlokt~“’’‹|}skomomp~}„”‘‘’|{nmnnnmz|”‘’“…z€vmnnonu|‚’’“’“Œ}}}pmnomr~~|Š”’‘“|€yompmp{€|•‘““…{~tlponw|‡”“‘”‰|}{pnpnu€~Ž••~~xnpop}€~ƒ”’’“ƒ}~~rnony~|Š•‘”ˆ|€~€zopmt€~€€’””~€tnoq}~|‰””“‚}€~€|qooz‚~€~•“‰}€€wnov€€~…“–Ž€}~sns~€€~Œ—’ƒ~€~€znp{€€“–‡~€€umw€€ˆ—~€€€€~os€€€€‘“€€€‚wp}~†—‡}qx‚€}Ž}€€€‚ys€€‚~ƒ‚€u|~€Š‡~€€€€{y€€€‚‡€€€}€€€‚€€€€€€€€€€€€€€~€€€€€†€€€€z~€€ˆ‡~€€~‚{x€€‚}…t|‚€~‘Š}ƒ€€‚uu€€‚~Š•€‚|p|‚~ƒ–~€€€€€rr€€€€€€€‘—ƒ€€€€wnz€€€Š˜Ž€€€€€{or~~…•—‰€€‚~snv€€˜’ƒ€vqr{‚€€€~•–‹€€‚zqpu€‚~‡••”„~‚}rpqx‚“–•~€€€tpqr€~Ž—”–‡~‚woqpv‚~ˆ—•””””””““’““““’’’‘’‘’’‘‘‘‘‘ŽŽŽŽŽŽŽŽŽŒŒŒŒŒŒ‹Œ‹‹Œ‹‹Œ‹‹‹‹‹ŠŠ‰ŠŠŠ‰Š‹Š‹Š‰‰‰‰‰‰ˆ‰ŠŠ‰‰‰ˆˆˆˆˆˆ‡ˆˆˆˆˆˆ‡‡‡ˆ‡‡‡‡‡†‡‡‡††‡††††‡‡†‡†††††††……†…„…………………†…………………„„„„„„…„„ƒƒƒ„…„„„…„„ƒƒƒƒƒ„ƒƒƒƒƒƒƒ‚ƒƒƒƒƒƒ„ƒƒƒƒƒƒ‚‚‚‚‚‚‚ƒ‚‚‚‚‚‚‚ƒ‚‚‚‚‚‚‚‚€€‚€€‚‚€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€~~~~€€€~€~~€~€~~~~~~~~~€€~€~€€€~€~~~~~€€~€€€€€€€~€~€€€€€~~€~~€~€~~~~€~€~€€~€€€€~€~~~~~~~€~~~€€~€€€~~€~€€€~€€€~~€€€~~€€€€€~€~~€€~€~~~€€~€~~~~~~~€€€€~~~€€~~€~€~~€€~€~€~€~~€~~~€~€€~€€€~€~~€€€~€~~€~~€~~€~€~€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€
\ No newline at end of file diff --git a/SFX_MMSELECT.RAW b/SFX_MMSELECT.RAW new file mode 100644 index 0000000..cfa900b --- /dev/null +++ b/SFX_MMSELECT.RAW @@ -0,0 +1 @@ +€€€€€€|lkmjblmlmmnlolplqjx{mnpfernpoppqoqoqpr†xnrmalsrrqsrsrrssr‚ˆvrrfdrusttttuttus}Œ…uvmbkuwuwuwuwuwt{ŠvrfgoyvyvwxxxxxvˆŒ€ukhitzxzwzx{wzw„|nijky{yzy{{zzy~Ž‹tiljp{z{{{{z{{|Œ‘Ž’„jllju|{||{{{}zˆ’‘winlny|~|~{zƒ’’“‡lnnmo|~|}}}|}~“’’ynnols}~}|‹”‘“‘ƒtonpmx~~~€|…”’’•ˆ}tmpnp{~€~€~‚‘”’”}popor€~€~€~•“““{oqoov~‚}ˆ•“””ˆ|‚vpopnz€‚””“•Ž~€€soqpr}€€Ž—’•’‚~}roqot~‚~Š–””•‡~€{oqqqv‚~~…•”“–}‚vprqq{‚‘–•–’€€spqqq€~‹˜”•”ˆ}‚~‚}rprpv‚‡•–”–Œ‚zpqppx‚‚’—”—’€€€€wprrr|ƒ~—•”•…~€€€sqrqr€ˆ—”••Œ}‚~~}rqsqw‚”–”—€€€‚zqqrpz€Ž˜•••„€wpsqszŠ–••—‰€€€€€€sqsqr‚•—”—~‚€€€‚}rqrqv‘—”–•ƒ€‚xppsn„™”–—‰~‚€€€€vpsqu‘˜“˜Ž€€€€€€€sqsp—•–”‚€€€}qrqxˆ—•–‡~‚ƒxqpv€—–}~€€€vqr~‚‘˜“ƒ€‚~tp{„•–†€€€€€}pvˆ™Œ~€€€~‚wr‚~Ž•€€€€€€€€s{ƒ’†‚~~~‚~‚|x‚~†‹~€€€€~€„‚€‚‚ƒ€€}‚‚€‚Š†~‚€y}‚€€‚€‚€‚€ƒ~…’‚‚{t‚€‚€‚€‚~”~€rwƒ€‚€‚‚Œ™‡‚wo}‚‚€€†–”ƒ€|pt‚€‚€‚€‚€’™€tpv‚€‚€‚€}——€wqrxƒ€~†–•–ˆypqr~‚€€€€€”–••psqt€€€€˜“˜tpspw€€~ˆ–”•–•••””••”“”’“”“““‘‘’’’’’‘‘‘‘‘ŽŽŽŽŽŽŽŽŽŒŒŒŒŒ‹ŒŒŒŒŠ‹‹‹‹‹‹ŠŒ‹‹‰ŠŠŠŠŠ‹ŠŠŠŠŠ‰ŠŠ‰‰‰‰‰‰‰‰‰Šˆˆˆˆ‡‰ˆˆˆ‰ˆ‰ˆˆ‡‡‡†‡‡‡‡ˆ†ˆˆˆ‡‡‡†††††††…††††††‡…‡†……………†……„…………†……†„„„ƒ…„„ƒ„„„„„„„„„„„„„„…„„ƒƒƒƒƒƒƒƒ‚„ƒƒ‚ƒƒƒƒƒ„ƒƒ‚ƒ‚ƒƒƒ‚‚‚ƒƒ‚‚‚‚‚ƒuk`_``_ep…‚…ƒ„ƒƒƒƒƒ„ƒƒƒƒƒ‚‚ƒ}ka`a`abpƒ…„„„„„…„…„„„…„…„ƒ„„ƒm``b`b`n………„…………„……†……………ƒ†‚‡p_baab`k‡††††‡†…………††………†„†ƒˆt_cbbbah‡‡†‡†††‡†‡†††††…†……„ˆxacaccagƒˆ†‡‡‡…‡†††††‡†……†††‡yebbccbi}‰†‡‡ˆ‡‡‡‡††††††††…††yibcccbkxˆ‰‡‡‡‡ˆ‡‡‡‡‡ˆ‡ˆ‡‡†‡…vndbddcnt‚Š‡‰†‡‡‡‡‡ˆ†‡‡‡†‡‡‡†trgcddcqr{‹†‰‡‰‡ˆˆ‡††ˆ†‡‡‡‡ˆ„rtlcedertwŠˆˆˆ‰ˆˆˆˆˆˆˆ†‡‡ˆ†ˆƒstqdddfsus„‰ˆˆˆˆˆˆ‰ˆˆ‰‡ˆ†ˆ‡ŠrstfddgsusŠˆ‰ˆˆ‡ˆˆˆˆˆˆˆ‡‰‡Š~rtukddiuusy‰‰ˆ‰‰‰ˆˆ‡‰ˆ‡‰‡‰‡Š}rtupddjuuuu†Šˆ‰ˆŠ‰‰ˆˆˆ‰ˆˆˆ‡Š{rutuhdlvtvtŒ‡ŠˆŠˆŠˆ‰‡ˆ‰ˆˆˆ‰zrutwlcnvuvtzŠ‰‰ˆ‰‰‰ˆ‰‰Šˆˆ‡ˆŠxsusvqdnvuuuu†Šˆ‰ˆ‰Š‰‰‰‰‰Šˆ‰‡vsuuvtgpwuvuu€Œˆ‰ˆ‰‰‰‰‰Š‰‰ˆŠ†utuutvmqvtvuuz‹‰Šˆ‰‰‰‰‰‰ˆŠˆŠ…ttuuuvrrwtuvuv‡ŠŠ‹‰‰ˆ‰ˆŠˆŠˆ‹„tuuuvuwwutvuvt‚Œ‰‹ŠŠŠ‰‰ŠˆŠ‡Œ‚tuvsws{}tvwvws|‹ŠŠ‰ŠŠ‰ˆ‰ˆŠ‡‹€tuutwt}„tvwwvuwˆ‹ˆ‹‰ŠŠŠ‰‰‰ˆ‹|tvuuvt}Šwuvvuwt‚ˆ‹‰ŠŠ‹Š‰‰‰Š|sutuvt~Ž|tvwuwu|‹‰‹ŠŠŠ‹ŠŠ‰‰‰ztvsvuu€‚uvvvuvw‰ŠŠŠŠ‰ŠŠŠŠŠˆysuuwvuƒˆxtvvvvuƒŒ‰ŠŠŠŠ‰ŠŠŠˆwuvvuvu†‹Š}twuvvu~ŒŠŠŠŠŠŠŠ‰Š†vuvvwuvˆ‹‹‚svvvvuwŠŠŠŠŠ‹‰‹ˆ‹„vvvvwuw‰Š‰‰vuuvuwu…Œ‰‹‰‹ˆ‹‰‹‚tvwvwtz‰Š‰‹{tvvvwt}ŠŠ‰Š‰‹‰Œ€tvvvvt|Š‹‰Œ‚uvvvvuy‰‹‰Š‹Š‹‰‹~twuuwu}ŒŠŠŠ‡vuvvwvv…Œ‰‹‰Š‰ŠŠ}twvvwt‰Š‰‹{twuvvu}Œ‰‹‰ŠŠŠŠ{twuvvu‰‹‰‹tvvwvuy‹ŠŠŠŠŠŠŠyuwvvwvƒ‰‹‰Œ‡vuvwvwu…ŒŠ‰ŠŠŠˆwuwwvvt…Œ‰‹‹Š‹ztwvvwtŒŠŠŠŠŠ‡vvvuuvw‡‹‰ŠŠ‰ŒswvvwvyŠ‹‰‹‰‹†vvvvwvx‰Š‰ŠŠŠŠ‡tuvvwwu†Œˆ‹‰‚vvvuwuyŠ‹ŠŠ‰‹‰‹yuvvvwuˆŒˆŒtwvuwu{‹Š‰Š‰‹‰Œ€twuuvuzŠŠŠ‰Œtvvuvu}‹‰ŠŠŠ‹ˆ‹…uvvvvvu†ŒŠŠŒ~txuvvtŠ‹‹ŠŠ‹Š‰ytvuvvt€ŒŠŠŠ{txvvvt€Œˆ‹ˆ‹Š‹ŠŒtvvvvuz‹ŠŠ‹yuvuvvt‚Œ‰‹‰‹‰‹‰Œ…tvuwvvuˆ‹‰Šxuvvvvv…Š‹‰Š‰‰‹ŠŠyuvwuwtŒŠ‰vwvvvvv†‹‰‹‰ŠŠŠŠŠŒtvuuwt|‹‹†vvvuvvw‡‹‰‹Š‹Š‹‹‰‹„tvwvwvw‡‚vuwuvuyŠ‹ŠŠŠ‹ŠŠ‰‹Š‰xuwwvwu€Žvuwvwu{Š‹‰‹ŠŠ‰Œ‰‹‰Œ}tvwvvuzŽuwvvwu|‹ŠŠ‹‰ŠŠ‹ŠŒ‰Œ„uvuvvvuŠ~twuvvu~‰‹ŠŠŠ‰ŠŠ‹‰Šˆxtwvuvt„~sxuwwuŒ‰Š‰Š‰‹ŠŠ‰Š‰‹}svvvwt{|uwvvwu‚‰‹ŠŠŠ‹‰ŠŠŠ‰‹„twuvvvwvuvvvvu„ŠŠ‰‹‰ŠŠŠ‰ŠŠŠ‰wvuwuxsqxvwvvu†Œ‰‹‰ŠŠ‹ŠŠŠ‰Š‰‹{uvvuxrkxvvvvwˆ‹‰Š‰‹ŠŠŠŠ‹‰‹‰‹ƒuuvvwqguvvvvx‰Œ‰ŠŠŠŠŠŠŠ‰‰ŠŠ‹‡wuuuxpeqxuwuzŠ‹ŠŠŠ‹Š‹Š‹Š‹‰Šˆ‹|svuwndmxuwu|‹ŠŠŠ‰‹‰‹‰‹‰‹‰Šˆ‹‚svuvmegvvvu}‹‰ŠŠŠŠ‹Š‰ŠŠŠˆŠˆ‹ˆvuuvkefqvvu~‰‹‰‹ŠŠŠŠŠŠŠ‰ˆ‰‰‹{uvvjfemwuuˆ‹‰‹ŠŠŠŠ‹‰‰ˆ‰ŠˆŠrvuhffgvvuƒ‰ŠŠŠŠŠ‰‰‰‰Šˆ‰‰‰‰‰ˆ‰‰‰‰‰‡‰ˆ‰ˆˆˆˆˆˆ‰ˆ‰ˆ‰‡‡‡‡ˆ‡‡‡‡‡‡‡‡‡†‡‡†††…†††‡††‡†††…†‡†††…†…††………„…………………………†…„„„……„„ƒ„ƒ„„„„„„„„„„ƒ…„„„ƒƒƒƒƒ„ƒ„„ƒƒƒƒƒƒƒƒƒƒƒƒƒ‚ƒƒƒƒƒƒƒƒ‚ƒ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚ƒƒ‚‚€€‚‚€€€€‚‚€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€~€~€~~€~~€~~~€€~~€€~~~€~€~~€~~~~€~~~~€€€~€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€€
\ No newline at end of file |