0,]']>S}Wup8d%qy)6o;]AsVl3 ^  000000000000000000000000000000@0988  @@@@@G@GGH@ I J NOKONNNNNNNNNNNOO*        Aaa aaAa a aAaa aAaa aaA  BBBBBBBB""""""""""""""""""""""""BB""bbBBBBBB"""""B"bbBbBBBBBBBBBBBBBBBBBBBBBBBBB"B`0 `0` `` ` ` ``p0='a8'a='='a='a='a='='a='a='a='='a/'a*'a/'a*'a`0 ``` @ `` ` ` ``p0='a='a='='a='a='a='='a='a='a='='a?'a?'a?'"6GB"pG""""B"""""B"""c##c#c#c###C## C#C## C## C### C @   @   @ @ @ @@     @ CCC##ccc# CccC #C# C @ @`@` ` `    @  @ AAa AAA A A A AA AAaA AAaaaAa b bb b bb b b b bbb   bB&rq       BBB B Bb b bBb b b b b b b bBBB b bbbbb B B B BB"A Aa AA AAA A A A AA AAAA A A AAAaA0PP0000PPPP 00000PPPPPP0PP`````` ``@@     @@@@@@@@@@ ``` ` `````@ @@@@         &'@P@@@""""BBBB""""BBBB""""BBBB""""BBBBdddd       d ddD D D DDD$    m    d        Aaa aaAa a aAAa aAaa aaA  !BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB   d        d@ b4c`aVe`0c``0c ba`0``0`0c@dipg0`` ```00`0`0`0`0`0`` ``` `@@`BBBBB"B"BBBBBBBB$'$'$'$'/'a/'a/'/'a='a='a='='a='a='a='='a``0c ba`0``` b0c@dp b0a` ``` ` ` `P ```` ``` `pP0 $'b bd'     ! ! ! ! ! ! !! !!cdcdcdcdcd c d c d c d c d c dcdcd pt zpt zpt zpt zpt zpt zpt zpt ~)bUPPPPPPPPPPPPPPPPP"t"""""""""B" cdcd c d c d c d c dcdcd)bUpPpP`P`PPPPP@P@P0P0P P PPPPPP"t"""""""""B"   dtb BBB """""""""      d b4caTe"0c! !!  !"-"B-BB("B-""-"B-BB("B-""-"B-BB("B-""-"B-BB("B-""-"B-BB("B-""-"B-BB("B-""/"B/BB*BB/B"/"B/BB*BB'BBBBBB"B"BBBBBBB$'$'$'$'/'a/'a/'/'a='a='a='='a='a='a='$'bBm" @@0c ba@0@@@ b0c@dp b0a@ @@`@ @ @ @P @@@`@ @@@ pP0 20p0tdydy0p0t«ʾkk,R찂qr#Y&Y0Q4q̢,N,@K3ITe5Tu5im̢,N,h h 9]}6-- Moods Plateau-SF gives you a -- ASSEMBLY 2023 fantasy console demo -- labeled: A BIT NOISE -- Built by Raztaman -- My code is a mess, just like me! rndm=math.random sin=math.sin cos=math.cos max=math.max min=math.min circler=0 kerroin=0 counter=274 cunter=99990 xx=235 yy=120 x=144 lasku=0 tim=0 k=0 velo=0 velox=0 cls(9) ti=0 tii=0.0 -- --VAIHDETAAN PALETTE --Sweetie 16 og="1a1c2c5d275db13e53ef7d57ffcd75a7f07038b76425717929366f3b5dc941a6f673eff7f4f4f494b0c2566c86333c57" --lost century pal="d1b187c77b58ae5d4079444a4b3d44ba91589274414d453977743bb3a555d2c9a58caba14b726e574852847875ab9b8e" --cretaceous-16 pal2="313432323e42454b4b3a5f3b7c4545675239625055516b43796c647182459e805c998579ac9086a6a296b4ab8fbcb7a5" --steam lords pal3="213b253a604a4f7754a19f7c77744f775c4f603b3a3b2137170e192f213b433a604f527765738c7c94a1a0b9bac0d1cc" --parchment and ink pal4="f1e2bee6d1a1f0d696caac77a58a62886243c0977a944431d2bc76ad9d62887c56594a45a9a99487867a445162000000" function lp(s) for i=0,15 do r=tonumber(string.sub(s,i*6+1,i*6+2),16) g=tonumber(string.sub(s,i*6+3,i*6+4),16) b=tonumber(string.sub(s,i*6+5,i*6+6),16) poke(0x3fc0+(i*3)+0,r) poke(0x3fc0+(i*3)+1,g) poke(0x3fc0+(i*3)+2,b) end end --PALETTE VAIHDETTU -- function TIC()t=time()//64 cunter=cunter+1 velo=velo+0.19 --intro if cunter>100000 then if cunter<100002 then music(03) end end if cunter>100000 then print(b,0-39+sin(t/44)*40,120,1,false,rndm(2,5)) for x=0,235 do for y=0,120 do pix(x-rndm(0,2),y,sin(t/3)+1%2) end end print(a,40+sin(t/44)*40,120+cos(t)*6,rndm(11,14),false,1) print("loading and",42,42,10,true,1) print("decrunching..",52,52,10,true,1) a,b=sin(t/4)*20,cos(t/4)*20 counter=counter+2 for i=0,20 do circ(60+a+rndm(0,4),70+sin(t/55)*48,rndm(1,15),rndm(5,9)%3) circ(160+a+rndm(0,5),70+b*0.95,rndm(3,45),rndm(5,9)%2) end if cunter>100000 then if cunter<100920 then rect(10,10,0+t/2+rndm(0,4),4,11) end end if cunter>100920 then rect(10,10,140-rndm(0,19),4,rndm(2,3)) end if counter==276 then cls(rndm(1,6)) counter=0 end if cunter==101000 then cunter=0 music(02) end end --intro end if velo>145 then velo=-20 end --TIME BECOMES A LOOP -- PART1 if cunter<550 then lp(pal) k=k+1 if k<15 then print("We are experiencing difficulties",33,42,rndm(9,12)) print("No AMIGA found!",37,79,rndm(13,15),false,2) end if k>30 then cls(rndm(1,8)) end if k==59 then k=0 end end -- PART2 1st plasma if cunter==549 then cls(rndm(0,15)) end if cunter>550 then --plasma1 if cunter<825 then for y=0,135 do for x=0,239 do tim=t q=sin(x/4+tim)+sin(y/12+cunter)+sin(x/6+tim/44) colour=(q*x/55)+(x+y%3)--scanlines pix(x,y,colour) end end end end -- PART3 2nd plasma if cunter>825 then if cunter<1100 then for y=0,135 do for x=0,239 do tim=t q=sin(x/4+tim)+sin(y/2+tim/5)+sin(x/6+tim/64) colour=(q*y/11)--(x%2+y%3)--scanlines pix(x,y,colour) end end end end -- PART 4 moods txt if cunter>1100 then if cunter<1650 then tim=0 for j=0,120 do if j==29 then cls(rndm(11,12)) end end for i=20,0,-2 do --roundefu o,p=110/i,i+t x,y=120+sin(i*55+t+rndm(3,7))*o,68+sin(i+t+0.6)*o circ(x,y,o/i*rndm(1,5),i+t+sin(x+y%2)) circb(x,y,o/i,i+t+sin(x+y%3)) print("m00ds",61+rndm(0,1),17,rndm(2,3),true,4) print("pLAteau",36+rndm(0,1),96,rndm(2,3),false,4) spr(268,103,52,0,2) spr(269,119,52,0,2) spr(284,103,68,0,2) spr(285,119,68,0,2) end end end -- PART5 if cunter==1650 then circ(194,44,35,5) circ(14,124,15,9) end if cunter==1925 then lp(pal2) end if cunter>1650 then if cunter<2200 then print("A BIT NOISE",4,60,rndm(0,15),false,4) for x=1,239 do for y=1,134 do if rndm()>0.17 then dx=rndm(-1,1) dy=rndm(-1,1) pix(x,y,pix(x+dx,y+dy)) end end end end end -- PART6 if cunter>2200 then if cunter<2475 then -- cls(rndm(0,4)) rect(rndm(240),rndm(136),rndm(30),rndm(30),15) for i=0,22999 do x,y=rndm(240),rndm(136) pix(x,y,max(pix(x,y)-1,0)) end rect(44,40,150,58,0) print("greetings to",52,43,rndm(5,15),false,2) print("hoffi, aeeben",49,64,rndm(5,15),false,2) print("and accession",46,84,rndm(5,15),false,2) end end if cunter>2475 then if cunter<2750 then -- cls(rndm(5,15)) rect(rndm(239),rndm(135),rndm(40),rndm(40),15) for i=0,22999 do x,y=rndm(239),rndm(135) pix(x,y,max(pix(x,y)-1,0)) end rect(33,40,178,58,0) print("also a shout out",34,44,rndm(4,15),false,2) print("to all conscious",37,64,rndm(4,15),false,2) print("AI's around!",55,84,rndm(4,15),false,2) end end -- PART 7 if cunter==2749 then cls(15) end if cunter>2750 then if cunter<3025 then lp(pal2) rect(rndm(240),rndm(136),rndm(30),rndm(30),15) for i=0,19999 do x,y=rndm(240),rndm(136) a=pix(x-1,y)+pix(x+1,y)+pix(x,y-1)+pix(x,y+1) pix(x,y,max(pix(x,y)*0.5+a*0.125,0)) end end if cunter==3025 then cls(15) end if cunter>3025 then if cunter<3300 then lp(pal3) rect(rndm(240),rndm(136),rndm(30),rndm(30),15) for i=0,19999 do x,y=rndm(240),rndm(136) a=pix(x-1,y)+pix(x+1,y)+pix(x,y-1)+pix(x,y+1) pix(x,y,max(pix(x,y)*0.5+a*0.125,0)) end end end if cunter==3299 then cls(0) velo=0 end -- PART 8 if cunter>3300 then if cunter<3850 then rect(57,44,135,40,10) lp(pal2) print("THAT ROUTINE ORIGINATES",62,46,rndm(1,5),false,1) print("FROM ONE OF THE GRAND",63,56,rndm(1,6),false,1) print("WIZARDS OF SHADER CODING..",56,66,rndm(1,6),false,1) print("NUSAN",91,74,rndm(1,15),true,2) --SPRITE ANIM if tim<10 then spr(262,103,8,1,2) spr(263,119,8,1,2) spr(278,103,24,1,2) spr(279,119,24,1,2) spr(266,103,94,1,2) spr(267,119,94,1,2) spr(282,103,110,1,2) spr(283,119,110,1,2) tim=tim+1 end if tim>9 then if tim<20 then spr(264,103,8,1,2) spr(265,119,8,1,2) spr(280,103,24,1,2) spr(281,119,24,1,2) spr(264,103,94,1,2) spr(265,119,94,1,2) spr(280,103,110,1,2) spr(281,119,110,1,2) tim=tim+1 end end if tim>19 then if tim<30 then spr(266,103,8,1,2) spr(267,119,8,1,2) spr(282,103,24,1,2) spr(283,119,24,1,2) spr(262,103,94,1,2) spr(263,119,94,1,2) spr(278,103,110,1,2) spr(279,119,110,1,2) tim=tim+1 end end if tim>29 then if tim<40 then spr(264,103,8,1,2) spr(265,119,8,1,2) spr(280,103,24,1,2) spr(281,119,24,1,2) spr(264,103,94,1,2) spr(265,119,94,1,2) spr(280,103,110,1,2) spr(281,119,110,1,2) tim=tim+1 end end if tim==39 then tim=0 end --SPRITE ANIM END spr(268,24,velo,0,2) spr(269,40,velo,0,2) spr(284,24,velo+16,0,2) spr(285,40,velo+16,0,2) spr(268,190,velo,0,2) spr(269,206,velo,0,2) spr(284,190,velo+16,0,2) spr(285,206,velo+16,0,2) for x=1,239 do for y=1,134 do if rndm()>0.61 then dx=rndm(-1,1) dy=rndm(-1,1) pix(x,y,pix(x+dx,y+dy)) end end end end end -- PART 9 -- plasmat end if cunter>3850 then if cunter<4125 then lp(pal) for y=0,135 do for x=0,239 do tim=t q=sin(x/8+tim/6)+sin(y/10+cunter/3)+sin(x/6+tim/44) colour=(q*x/55)--+(x+y%2)--scanlines pix(x,y,colour) end end end end if cunter>4125 then if cunter<4400 then lp(pal3) for y=0,135 do for x=0,239 do tim=t q=sin(x/8+tim/5)+sin(y/10+cunter/3)+sin(x/6+tim/44) colour=(q*x/55)--(x+y%2)--scanlines pix(x,y,colour) end end end end if cunter==4400 then cls(12) lp(pal) tim=0 music() music(0) end -- PART 10 -- Nusanefu with balls if cunter>4400 then if cunter<5500 then tim=tim+1 if tim==275 then cls(14) end if tim==550 then lp(pal3) cls(13) end if tim==825 then cls(14) end if tim==1100 then cls(13) end circ(rndm(240),rndm(136),rndm(30),rndm(4,15)) d=max(sin(t/7)*60-30,0) for i=0,9999 do x,y=rndm(240),rndm(136) a=pix(x-1,y)+pix(x+1,y)+pix(x,y-1)+pix(x,y+1) pix(x+d*(rndm()-0.5),y+d*(rndm()-0.5),max(pix(x,y)*0.5+a*0.125,0)) end end end -- PART 11 if cunter>5500 then if cunter<6050 then lp(pal4) rect(76,56,96,22,rndm(7)) print("ASSEMBLY",77,57,15,true,2) print("MMXXIII",84,67,15,true,2) for x=1,239 do for y=1,134 do if rndm()>0.97 then dx=rndm(-1,1) dy=rndm(-1,1) pix(x,y,pix(x+dx,y+dy)) end end end end end -- PART 12 if cunter==6050 then lp(pal) end if cunter>6325 then if cunter<6600 then print("is it a plasma?",120,66,15,5) end end if cunter==6325 then lp(pal2) end if cunter==6600 then lp(pal4) end if cunter>6875 then if cunter<7149 then print("at least it's got balls",70,66,15,12) end end if cunter==6875 then lp(pal3) end if cunter>6050 then if cunter<7149 then circ(rndm(240),rndm(136),rndm(20),rndm(4,15)) d=max(sin(t/97)*60-50,rndm(0,3)) for i=0,9999 do x,y=rndm(240),rndm(136) a=pix(x-1,y)+pix(x+1,y)+pix(x,y+1)+pix(x,y+1) pix(x+d*(rndm()-0.2),y+d*(rndm()-1.5),max(pix(x,y)*0.5+a*0.125,0)) end end end -- PART 13 if cunter==7150 then lp(og) ti=0.0 end if cunter>7150 then if cunter<7700 then ti=ti+0.029 for i=0,32639 do x=i%240-sin(ti/4)*29-120 y=i/240-sin(ti/4)*19-68 u=math.atan2(y,x)*2/5.29 v=19/(x*x+y*y)^sin(0.01/44+ti/155)*555 poke4(i,u//2.6~v//0.3) end if cunter>7150 then if cunter<7700 then print("spider",164,5+sin(ti*5)*2,rndm(11,13),true,2) print("hypn0",165,16+sin(ti*6)*2,rndm(11,13),true,2) print("twist",165,28+sin(ti*7)*2,rndm(11,14),true,2) end end end end if cunter==7700 then lp(pal3) ti=0 end -- PART 14 if cunter>7700 then if cunter<8800 then ti=ti+0.29 kerroin=kerroin+0.1 for i=0,32642 do x=i%240-sin(ti/3)*2-120 y=i/240-sin(ti/3)*2-65+sin(ti*6)%2 u=math.atan2(y,x)/2.29+kerroin v=9/(x*x+y*y)^.07+ti/999*kerroin*25 poke4(i+sin(ti),u//1~v//1) end if cunter>7700 then if cunter<7975 then print("WE HYPNOISE YOU",34,60,rndm(0,2),true,2) end end if cunter>7975 then if cunter<8250 then print("CREATIVITY IS GOOD",16,60,rndm(0,2),true,2) end end if cunter>8250 then if cunter<8525 then print("MAKE MORE DEMOS",36,60,rndm(0,4),true,2) end end if cunter>8525 then if cunter<8799 then print("BE WELL",91,60,rndm(0,4),true,2) end end end end -- PART 15 if cunter==8800 then lp(og) music(04) cls(7) end if cunter>8800 then if cunter<9075 then for x=1,239 do for y=1,134 do if rndm()>0.07 then dx=rndm(-1,1) dy=rndm(-1,1) pix(x,y,pix(x+dx,y+dy)) end end end a,b=sin(t/4)*20,cos(t/4)*20 circ(60+a+rndm(0,4),90+sin(t/5)*48,rndm(1,25),rndm(5,9)%3) circ(150+a+rndm(0,5),80+b*0.95,rndm(3,45),rndm(5,9)%2) circ(30+a+rndm(0,4),60+sin(t/5)*48,rndm(1,25),rndm(5,9)%3) circ(120+a+rndm(0,5),100+b*0.95,rndm(3,45),rndm(5,9)%2) print("COMMODORE #1",39,60,rndm(1,15),true,2) end end -- END PART if cunter==9075 then music(01) lasku=0 lp(og) cls(0) end if cunter>9075 then if cunter<30000 then cls(0) circler=circler+1 lasku=lasku+0.22 if lasku<670 then rect(5,5,110,130,14) end if lasku<170 then for y=7,132 do for x=7,112 do tim=t q=sin(x/4+tim)+sin(y/2+tim)+sin(x/6+tim/64) colour=(q*y/11)--(x%2+y%3)--scanlines pix(x,y,colour) end end print("Moods Plateau-SF",120,18,12) print("presented:",120,26,12) print("a bit noise",128,38+rndm(0,1),rndm(1,8)) print("--a.ka something for",120,50,14) print("--the adhd minded",120,58,14) print("This is the first tic-80",120,80,12) print("release from me/us! ",120,90,12) print("Hope you love it as",120,107,12) print("much as me doing it.",120,117,12) end if lasku>170 then if lasku<339 then for y=7,132 do for x=7,112 do tim=t q=sin(x/8+tim/2)+sin(y/10+cunter/3)+sin(x/6+tim/44) colour=(q*x/5)--+(x+y%2)--scanlines pix(x,y,colour) end end print("Cheers to all",120,18,12) print("byte jammers",120+rndm(0,1),27,rndm(10,12)) print("for giving tips",120,38,12) print("and inspiration",120,48,12) print("(and some code)",120,58,12) print("Original hoffipolkka",120,76,12) print("by sensei",120,86,12) print("Heatbeat",171,85+rndm(0,2),rndm(12)) print("All the other stuff",120,106,12) print("by",120,116,12) print("Raztaman",134,115+rndm(0,2),rndm(4)) velo=5 end end end end if lasku>339 then if lasku<509 then for x=7,130 do for y=7,110 do if rndm()>0.27 then dx=rndm(-1,1) dy=rndm(-1,1) pix(x,y,pix(x+dx,y+dy)) end end end for y=7,132 do for x=7,112 do tim=t q=sin(x/2+tim/55)+cos(y/10+cunter/33)+sin(x/6+tim/44) colour=(q*x/2)--+(x+y%1)--scanlines pix(x,y,colour) end end velox=velox+0.15 spr(268,44,10+velox/2,0,4) spr(269,76,10+velox/2,0,4) spr(284,44,10+velox/2+32,0,4) spr(285,76,10+velox/2+32,0,4) print("Since assembly",120,12,12) print("raised the time",120,22,12) print("limit for virtual",120,32,12) print("console entries",120,42,12) print("we can keep listening",120,52,12) print("to this eternal ear",120,62,12) print("worm for a while.",120,72,12) print("Get my music @",120,101,12) print("helaku.bandcamp.com",120,111,12) for x=0,115 do for y=0,134 do if rndm()>0.37 then dx=rndm(-1,1) dy=rndm(-1,1) pix(x,y,pix(x+dx,y+dy)) end end end ti=0 end end if lasku>509 then if lasku<672 then for y=7,132 do for x=7,112 do ti=ti+0.25 q=sin(x/44+ti)+sin(y/24+ti)+sin(x/64+ti/4) colour=(q*y/11)--(x%2+y%3)--scanlines pix(x,y,colour-4) end end if lasku>670 then if lasku<672 then music() end end print("Greetings to",120,22,12) print("SONIK CLIQUE ORANGE",120,33,12) print("CNCD REBELS ADAPT",120,43,12) print("RAZOR 1911 ACCESSION",120,53,12) print("FAIRLIGHT SPACEBALLS",120,63,12) print("JUMALAUTA PARADOX",120,73,12) print("KOMPLEX MELON LEMON.",120,83,12) print("BOMB SQUAD TRSI DCS",120,93,12) print("BRAINSTORM DAMONES",120,103,12) print("STYLE CUBICLE TPOLM",120,113,12) end end if lasku>676 then if lasku<810 then --lp(pal2) ti=ti+0.02 for y=0,134 do for x=0,239 do q=sin(x/44+ti)+cos(y/24+ti)+sin(x/6+ti/64) colour=(q*y/5)+(x%1+y%2)--scanlines pix(x,y,colour/5) end end rect(52,5,134,60,0) print("",120,22,12) print("",120,32,12) print("Remember to",54,15,2,true,2) print("make more",62,27,2,true,2) print("scene stuff",54,39,2,true,2) print("Now go back to bzm!",61,58,2,true,1) end end if lasku>675 then if lasku<676 then music(05) ti=0 end end if lasku>810 then music() print("The end, my friend..",70,60,12) end --TIME STOPS THE LOOP end