ÎÌÌÌ̈ˆˆ¬ªªª¬ˆˆˆ¬ÌÌ̬ÌÀ̬ÌÀ̬ÌÀÌÌÌìÌÀÀî̬ÀÌÀ¬ÀÀÀ¬ÀÀÀ¬ÀÀÎÌÌÌ̈ˆˆ¬ªªª¬ˆˆˆ¬ÌÌ̬ÌÌ̬ÌÀ̬ÌÀÌÌÌìÌÀÀî̬ÀÌ̬ÀÀÀ¬ÀÀÀ¬ÀÀ¬ÌÌ̬ªªª¬ª¬ª¬ªÊ̬ªªªŒˆˆˆÌÀÌÎÌÌÎ̬̪ªÀ쬪ÀÀÀÌîÀìîÌÌîî¬ÌÌ̬ªªª¬ª¬ª¬ªÊ̬ªªªŒˆˆˆÌÀÌÎÌÌÎ̬̪ªÀ쬪ÀÀÀÌîÀìîÌÌîî >À?ð Ðî Ð ýÝÿìêðЀ™ ððù« à ð°x� ÐŒ·¼  ðÿàÀààz¶ зààðਠðfÿÐðûðàþ `¨ˆ à`ð ðÈõË Ý Àà ¹m� o  [`ÞÎ`–ð |Ààðà ¨`à¼ÐÐÀІ ·¸N°  ЩfŸ¦àð ý †ÿàÀxëØýðð ÐÐîl�À ð× w``ð `pÖzöü¨Ð yí �ðpÀà�ž hªð p�æÍðpÝ ð€w ð ðêš�ð ûÙ `  ßðx΀pÚeÕ Ð¾ ë †¶G Ú ýÐ wj࿹ÐÎ €çÏp— jm°¨xö É ÕŸ оààt‡½àÞ ü`ï   Ðð° ª �ð��ìYm`à èÐÿ  uî­š ÍðÀëþlTĨÐÐÇïð‡€`îžàðà ð °Š À~ªWÈÖøÐ° ð uìð½ ÐÀ»àPEŰÐÞî`ØÍ�¯îàðÀÀ Ð`Š   œðŠvÙøüàÏýàà ðÅà ï°«ð`à« Ð EÖàààÐ º†°ðÐÿ ç ð¦ Àð àÀÀnµ›À€€`ïîàà ÙÊ ðà°[`VØëÀ pð° `àÐ Ðz Ð à€¶Ìî ßË ÆÉ °ÖØð ð{€ Úè™ ðýÞüÞ ð`W„}ôþÿ žà©fÐ Ï °Þªÿßïý°ð`f° ÐÙ÷ÐÜÛ© àp � € xîðÞàïø°ÖàÀŠúàà ðPÄ„ ÚÏ �à €¿ ü  æ»ð€ ð– í ûË îÞÚn``y É �·¹ÏÀð] ¨×`Ø©œpÐ Þûüàf«šðð`¬¶ð� À°ÌÎ Ë› Àðüþ€ ðð …à Œ `ððº¹Þ ʗÀ°à° ÉÐ  m†z `¦æ÷íÛ î ÿLEêŸÐ lŠ    ޼ž­  Ð`û€ÐàÐ À‰…ÐððÅ�ÊðÎ Ïùàï ¦é�™Ì· ž` ð€ ü `þÞ  à ðEéðpŸ–œðÐÀ°ð�Æý½�˜€à�ð PPð� ðØ�­�o  þgÿ« à°Ø`�`¼o� j»v Ú`ðïïí°ß°lîøŸ �Úà®��ÀÞþîœî ŒÆÀÚ@àÐÍë ‡ ÏÐðÏ�Vn ðÐ߀€j¨Û é vˆÝ`Ø à �fpÐ� ¯ ¦àïŸýüÍ Àÿ°ß×pí®Zç­Ýððoì ê¶Øíà€à�XëN@ˆüôÈÿß àÞ  «žÏß ß Ün�àðà�Ûpv ÿ   ` ðˆ®ïðÐ ü�ÏþlÉzÇúÉ Ï pŸÐ`†ðDèê‰ PV<¼ðà ·šªÊÍÀÜ»�ðîÀ€šàÙ� à ð РРÐ`€Àðð àйîî u·Üúðÿ l† lÐðü@|U ÄëMОÅó çÚ�¸y ýí ð°æ ™fÞs•àà˜í°� €  yžÌz ¯ý𠫨ê pÛPpÌÈÏ Ål�Ö®F$ X ¤ ɾ ¾àðÏ|æ púë�–­® ïÎvp7 Ð Œ �mÀ묉�è  ý V Ð › À à ¨ààX\à¾fçÙÐ\�€–ÿ°ðÍç» h[Ф©þ½ÿ°¼Î oú�€Ð «ÌЗ—ÝúÞðf lé° k Ë~ žÐÀ ­`€ ÐЯ eü§Л ààÏ‹ øÔÆövÜæ ÀÆ … û¯ «üy`4 ªºÀPDgù¯êìî ÿ·MLzj` pÌ®y«ÏÎ`ãp ûª†€ ßà ªÐ� àæÝÛ ù† àý õ û¼Ê ¶½Î…ÞÕ€e̓jÝ m €ª¿ dpÇKD Øk À�¾úý[ÌneGä g�ЍÐÌ— Ûíúà : �j©�iËÜZT} ©ž€ÿí Û𯊠P {†Ìÿük ð‹àP© ]v ƒi•ÓÙ«`wVð KÏàf¬©Ê ­iU}®¹Þ°Z ïðЋ–ööŠÀ°èúúîoàF¤;�º¹ è» Þð<¥„Pˆ   аf�ëz†Ç ]ÍÉ š¬ðꯨÇä]Me¦5†F¬žk`pUÝÊÿDjW˜@ ` °�fPUà ÷°¹õ[mo ˆß Àº`öF] öç  EP™` ÐÀÐÀ�š©`Èy}w·üÀÐ|Àðpf iÖ¼àäbdªfDîø` ‡xU à�°d™VfÀŸoÀ``àíûÊ ÖUél» ÐÅ«��éà~Ö`–Ô€`ªÉp PT§U`t ¯ðÿýyêë˜Ö†ºðÐ_`°À©Ð@„leõOME$`PXÔ  ezU­ù™¨UDãðÊF—`v ÀPw ]êà ` �ù�? ð›heÀ4°�¸ª–ºà¯ëUzUiŠîÐÝ ÝþK™†©æŠV_`gØ ÀöÐDÀjeß……tBy]P`Ûà´†™†Ðôpe`‡u4 ÀP«ì½¥`f…ýH­¶ðæ àP ÒÔ¸©g·†ªPišÜx†™ºÅ _WiV˜‰ ðÿ�¤yØ`yýj¸× c†�Œóè @^HGF²@æW7ù–neFu› –„—† pøPf”¸±Ü {gWÍä €æ°o Ç& EΠg›WT[…ˆk�jjÍÈÀпUjUW‰é f·à?°�N‡jgåŸw`åf€>0vjf`¥øe jdf FoVtéßՎφfUµð�H­wÙ¨yCçfX`¹¶–ñÊóOhf¨í@™�Ök�ˆ g#ÿfU¹·É»j•Õɰ {ÚµÕF à«fY‡™¹Ù`gH�øH�¦S zÐ@¹v¶5F`hh€ˆ ‡žüôp€ee]ŒTdðùîà¶VPUšÊ •kˆ€Y?æeæP§JÆ` tp–• J„ èÍVÀe´ÂT8p°§\FŠv˜À vª›Õel « :e¶v‰ºöÞV�S�v7ô€|f dj¾kZ¹GjŒfàþUPÕÅ Pg”f”ÄP�–�~ðUFUdl¨Î˜YVeÅP{`–æš„`ÀmhØ•ÆÚT`ÆËD¸ §)FÃc€€ùÉ8•Ô` �]ÉÀÆÀçN­©uÌ=w_dgiDLkÜößÖ…Pì˜FFªx{ÆTTVfö–d¨Åß.^a •I‰V¼„wÜMCÓîgÔRTº x¼qŒ‰d€ §ë[ܕġ` «ùTêÚkýXÌžå 3žöC³¥PÆedg\ÅKcvöìµU�_FMMvf™w´•ðÆðF(‰tdf6²–FK@e`€\Ö �%•2RÐdvvUŽv«~44«$f ™`€Y¼WEÈw¥FÞåF¨&C LzjeiYæ;ç4Cdg°Þ6"óWghSZêÌU° Ä¸zVµ*�Nni§fW¥Egf`­°Sö´Îi–F¥¥wmFJdi†‰†ŠÅ¤`ýBE”fG\WNf kcDbu™3¹iD°ùDöÚf4Ã*Yô½j¥«Õ§•/EbCbæêŸÃZ¢fäYŠCBEeõ\†eZfSzfeö%e$NdefYD4FfP §"ŽPObyKv:j&JDGtid8%ܪDÑdY%(htUP 3VTS7“5ŠT3€ PuYE¡Ja3V4Ok&FU§¥¥ºV]¬hKR 6gä|)%5öóc&ÔccTVIU³Q2CgUP1f8UUvIFf4 †Y¯ <Ц°5Bvj†5¤#Ã¥„•HdECr 0f(…iEx|Iwzæ61(9 uwJ€6C5�ÑT=Sy¶ØQFF%s&TCcg»›ˆ¥Ü‰:CÔSE€/F8Ve$3e¤0d3f•eX•0a2bVEP%¢†U…gvyfDt'åfÎì[9¶j6&%9SdHYId4(º†Ó&D3b˜©sŠf36538YyS$U$35uòU6‰€tÉUE2³xTfdUy´f¶‘f3c4R£‚Ò–ÖDb32f¤CCXUcU•US%PbiV:)SVh^†hEax1¢‘_U"zf“+@RbƒsxI5Ss€êŠ0eRe33w‡f!o@2`E•¶&dBSiÕX“!ht!1VbC3"aU3dÅgÅ7Ps@5Cf(hmB63$C„E31XsV†ED5fhESwR6uXhQD‡V2!BV!6'&1Rb51‡q7Q%5vs#!S1VS(c hg1ƒ8F$rEbQVATƒfR#CTA!G6(RWD5DgadDD‚3eU4Sr�fD&33v-- title: Fire Demo -- author: Tim Oertel -- desc: Inspired by the Doom fire demo on tic80.com -- site: https://manax.org -- license: MIT License (change this to your license of choice) -- version: 0.1 -- script: lua PAD_UP=0 PAD_DOWN=1 PAD_LEFT=2 PAD_RIGHT=3 PAD_A=4 PAD_B=5 PAD_X=6 PAD_Y=7 function BOOT() -- poke(0x3FF0, 0) -- Set up palette poke(0x3FC0, 0x00) poke(0x3FC1, 0x00) poke(0x3FC2, 0x00) for c = 1, 7 do poke(0x3FC0 + c*3, 0xFF - 0x08 * c) poke(0x3FC1 + c*3, 0xFF - 0x10 * c) poke(0x3FC2 + c*3, 0x00) trace("palette["..c.."] = ".. string.format("%02X",peek(0x3FC0+c*3)).. string.format("%02X",peek(0x3FC1+c*3)).. string.format("%02X",peek(0x3FC2+c*3))) end for c = 8, 15 do poke(0x3FC0 + c*3, 0xFF - 0x04 * c) poke(0x3FC1 + c*3, 0xFF - 0x10 * c) poke(0x3FC2 + c*3, 0x00) trace("palette["..c.."] = ".. string.format("%02X",peek(0x3FC0+c*3)).. string.format("%02X",peek(0x3FC1+c*3)).. string.format("%02X",peek(0x3FC2+c*3))) end -- Set up palette map for c = 0, 7 do poke(0x3FF0+c, (c*2+1 << 4) | (c*2)) -- Little endian trace("map["..c.."] = ".. string.format("%02X", peek(0x3FF0+c))) end -- Game init cls(0) for x = 0, 239 do pix(x, 135, math.random(0,1)) end end c = 0 pause = false function TIC() -- Game updates if (keyp(48)) then pause = not pause end -- "Draw" screen if (not pause) then for y = 0, 135 do for x = 0, 239 do c = pix(x, y) if (c == 0) then pix(x, y, 0) else if (y < 90) then if (math.random() < .15) then c = c + 1 end elseif (c < 0x07) then if (math.random() < .04) then c = c + 1 end elseif (c < 0x0B) then if (math.random() < .10) then c = c + 1 end else if (math.random() < .15) then c = c + 1 if (c > 0x0F) then c = 0 pix(x, y, c) end end end if (math.random() < .05) then pix(x + math.random(-1,1), y- math.random(1,2), c) else pix(x, y, c) end end end end for x = 0, 239 do c = pix(x, 135) if (c == 0 or c > 0x08) then pix(x, 135, math.random(0,1)) end end end end