Skip to content

Commit adfc1f0

Browse files
committed
13296b
1 parent 71a094c commit adfc1f0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+2732
-29
lines changed

5.ch8

382 Bytes
Binary file not shown.

5.htm

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<center><input onchange="with(new FileReader)readAsArrayBuffer(files[0]),onload=s=>{play(new Uint8Array(result))}"type=file><canvas id=Z width=64 height=32 style="width:320px;height:160px"></canvas><script>S=0;w=[];keys=[96,103,104,105,100,101,102,97,98,99,81,87,69,82,84,89];play=q=>{if(S)clearInterval(S);var p,t,f,a,m,B,g,l,u,r,D,x,n,e,v,c,h,b,d,k,E,y,z,A;p=(C=Z.getContext("2d")).createImageData(64,32);for(a=8192;a--;)p.data[a]=a%4-3?0:255;t=new (AudioContext=this.AudioContext||webkitAudioContext||0);m=[];for(a=80;a--;)m[a]=eval("0x"+"F999F26227F1F8FF1F1F99F11F8F1FF8F9FF1244F9F9FF9F1FF9F99E9E9EF888FE999EF8F8FF8F88"[a]+"0");V=new Uint8Array(new ArrayBuffer(16));B=[];g=512;r=u=l=0;for(a=q.length;a--;)m[a+512]=q[a];S=setInterval(()=>{u&&u--;r&&r--;t&&r&&!f&&(f=t.createOscillator(),f.start||(f.noteOn=f.start),f.stop||(f.noteOff=f.stop),f.connect(t.destination),f.type=3,f.start(0));t&&!r&&f&&(f.stop(0),f=0);for(D=4;D--;){n=m[g]<<8|m[g+1];e=n>>12;v=n&4095;c=n&255;h=n&15;b=n>>8&15;d=V[b];k=V[n>>4&15];if(224==n)for(a=8192;a--;)p.data[a]=a%4-3?0:255;238==n&&(g=B.pop());1==e&&(g=v-2);2==e&&(B.push(g),g=v-2);if(3==e&&d==c||4==e&&d!=c||5==e&&d==k||9==e&&d!=k||14==e&&(158==c&&w[d]||161==c&&!w[d]))g+=2;6==e&&(V[b]=c);7==e&&(V[b]=d+c);8==e&&(h||(V[b]=k),1==h&&(V[b]|=k),2==h&&(V[b]&=k),3==h&&(V[b]^=k),4==h&&(V[15]=+(255<(V[b]+=k))),5==h&&(V[15]=+(0<=(V[b]-=k))),6==h&&(V[15]=d&1,V[b]/=2),7==h&&(V[15]=+(0<=(V[b]=k-d))),14==h&&(V[15]=d>>7,V[b]*=2));10==e&&(l=v);11==e&&(g=v+V[0]);12==e&&(V[b]=Math.floor(Math.random()*c));if(13==e)for(V[15]=0,a=h;a--;)for(y=8;y--;)E=m[l+a]>>7-y&1,z=d+y,A=k+a,E&&(63<z&&(z-=63),31<A&&(A-=31),x=4*(64*A+z)+3,p.data[x]?p.data[x]=0:(p.data[x]=255,V[15]=1));if(15==e){7==c&&(V[b]=u);10==c&&(~(V[b]=w.a(!0))||(g-=2));21==c&&(u=d);24==c&&(r=d);30==c&&(l+=d,V[15]=+(4095<l),l&=4095);41==c&&(l=5*d);if(51==c)for(a=3;a--;)m[l+a]=(""+d)[a];if(85==c)for(a=b;a--;)m[l+a]=V[a];if(101==c)for(a=b;a--;)V[a]=m[l+a]}g+=2}C.putImageData(p,0,0)},16)};onkeydown=q=>{w[keys.indexOf(q.keyCode)]=!0};onkeyup=q=>{w[keys.indexOf(q.keyCode)]=!1};load=(r,x)=>{x=new XMLHttpRequest;x.open('GET',r+".ch8");x.responseType='arraybuffer';x.send();x.onload=()=>{play(new Uint8Array(x.response))}};load(0)</script><br>Demo<br><button onclick=load(1)>Rocket2<button onclick=load(2)>Breakout<button onclick=load(3)>X-mirror<button onclick=load(4)>Cave
1+
<center><input onchange="with(new FileReader)readAsArrayBuffer(files[0]),onload=s=>{play(new Uint8Array(result))}"type=file><canvas id=Z width=64 height=32 style="width:320px;height:160px"></canvas><script>S=0;w=[];keys=[96,103,104,105,100,101,102,97,98,99,81,87,69,82,84,89];play=q=>{if(S)clearInterval(S);var p,t,f,a,m,B,g,l,u,r,D,x,n,e,v,c,h,b,d,k,E,y,z,A;p=(C=Z.getContext("2d")).createImageData(64,32);for(a=8192;a--;)p.data[a]=a%4-3?0:255;t=new (AudioContext=this.AudioContext||webkitAudioContext||0);m=[];for(a=80;a--;)m[a]=eval("0x"+"F999F26227F1F8FF1F1F99F11F8F1FF8F9FF1244F9F9FF9F1FF9F99E9E9EF888FE999EF8F8FF8F88"[a]+"0");V=new Uint8Array(new ArrayBuffer(16));B=[];g=512;r=u=l=0;for(a=q.length;a--;)m[a+512]=q[a];S=setInterval(()=>{u&&u--;r&&r--;t&&r&&!f&&(f=t.createOscillator(),f.start||(f.noteOn=f.start),f.stop||(f.noteOff=f.stop),f.connect(t.destination),f.type=3,f.start(0));t&&!r&&f&&(f.stop(0),f=0);for(D=4;D--;){n=m[g]<<8|m[g+1];e=n>>12;v=n&4095;c=n&255;h=n&15;b=n>>8&15;d=V[b];k=V[n>>4&15];if(224==n)for(a=8192;a--;)p.data[a]=a%4-3?0:255;238==n&&(g=B.pop());1==e&&(g=v-2);2==e&&(B.push(g),g=v-2);if(3==e&&d==c||4==e&&d!=c||5==e&&d==k||9==e&&d!=k||14==e&&(158==c&&w[d]||161==c&&!w[d]))g+=2;6==e&&(V[b]=c);7==e&&(V[b]=d+c);8==e&&(h||(V[b]=k),1==h&&(V[b]|=k),2==h&&(V[b]&=k),3==h&&(V[b]^=k),4==h&&(V[15]=+(255<(V[b]+=k))),5==h&&(V[15]=+(0<=(V[b]-=k))),6==h&&(V[15]=d&1,V[b]/=2),7==h&&(V[15]=+(0<=(V[b]=k-d))),14==h&&(V[15]=d>>7,V[b]*=2));10==e&&(l=v);11==e&&(g=v+V[0]);12==e&&(V[b]=Math.floor(Math.random()*c));if(13==e)for(V[15]=0,a=h;a--;)for(y=8;y--;)E=m[l+a]>>7-y&1,z=d+y,A=k+a,E&&(63<z&&(z-=63),31<A&&(A-=31),x=4*(64*A+z)+3,p.data[x]?p.data[x]=0:(p.data[x]=255,V[15]=1));if(15==e){7==c&&(V[b]=u);10==c&&(~(V[b]=w.a(!0))||(g-=2));21==c&&(u=d);24==c&&(r=d);30==c&&(l+=d,V[15]=+(4095<l),l&=4095);41==c&&(l=5*d);if(51==c)for(a=3;a--;)m[l+a]=(""+d)[a];if(85==c)for(a=b;a--;)m[l+a]=V[a];if(101==c)for(a=b;a--;)V[a]=m[l+a]}g+=2}C.putImageData(p,0,0)},16)};onkeydown=q=>{w[keys.indexOf(q.keyCode)]=!0};onkeyup=q=>{w[keys.indexOf(q.keyCode)]=!1};load=(r,x)=>{x=new XMLHttpRequest;x.open('GET',r+".ch8");x.responseType='arraybuffer';x.send();x.onload=()=>{play(new Uint8Array(x.response))}}</script><br>Demo<br><button onclick=load(1)>Rocket2<button onclick=load(2)>Breakout<button onclick=load(3)>X-mirror<button onclick=load(4)>Cave<button onclick=load(5)>Tron

advancecomp/advdef.exe

884 KB
Binary file not shown.

advancecomp/advmng.exe

913 KB
Binary file not shown.

advancecomp/advpng.exe

869 KB
Binary file not shown.

advancecomp/advzip.exe

891 KB
Binary file not shown.

advancecomp/authors.txt

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
===================
2+
AdvanceCOMP Authors
3+
===================
4+
5+
6+
AUTHORS
7+
=======
8+
9+
The author of AdvanceCOMP and releated utilities is
10+
Andrea Mazzoleni.
11+
12+
You can contact me sending an email at:
13+
14+
15+
16+
17+
ACKNOWLEDGMENTS
18+
===============
19+
20+
A lot of other people helped submitting patches, bug reports
21+
and generic comments. A special mention to:
22+
23+
* Filipe Estima

0 commit comments

Comments
 (0)