// JUMP 1 KEY function pi(){ uart("PC IMAGE 00\n"); uart("PC LINE 00 2C 4F 2C 01\n"); uart("PC LINE 00 2B 4F 2B 01\n"); } var gb=0x1,x=5,y=6,v=0,jf=0,k,w=3,db=0,sb=0,sz=0,s=0; function er(ex,ey){ uart(0x80,0x0e,0x03,ex,ey,1,255,255,255,255,255,255,255,255); } function ch(cx,cy,it){ uart(0x80,0x06,0x14,cx,cy,it); } function dr(gb){ var j=0,i,g0,g1; while(j<16){ g0=gb>>j&1; g1=gb>>(j+1)&1; uart(0x80,0x08,0x01,80-j*5,42); while((g0==g1)*(j<15)){ j=j+1; g1=gb>>(j+1)&1; } uart(75-j*5,42,g0); j=j+1; } } function it(qb,it,iy){ var j=0; while(j<16){ if(qb>>j&1>0){ uart(0x80,0x06,0x14,69-j*5,iy,it); if((j>0)*(qb>>(j-1)&1<1){ uart(0x80,0x0e,0x03,77-j*5,iy,1,255,255,255,255,255,255,255,255); } } j=j+1; } er(0,iy); } function jp(){ k=inkey(); if((k==32)*(jf<1)){ jf=1;v=-3; uart(0x80,0x0b,0x09,0,14,0,5,5,255,5,255); } er(x*5-1,y*4+10); er(x*5-1,y*4+7); y=y+v; if(jf>0){ v=v+1; } ch(x*5-1,y*4+9+s%2,0x0e); ch(x*5-1,y*4+7+s%2,3); if(y>5){ jf=0; v=0; } if((db>>10&1>0)*(y==3)){ db=db&0xfbff; s=s+100; uart(0x80,0x0b,0x09,7,7,5,5,5,255,5,255); } if((sb>>10&1>0)*(y==3)){ sz=1; sb=sb&0xfbff; video(0); } if((gb>>10&1>0)*(y>5)){ er(x*5-1,27); ch(x*5-1,39,1); video(1); log(sz); uart(0x80,0x0b,0x09,4,9,5,1,4,255,4,255); sleep(1000); uart(0x80,0x0b,0x09,4,255,5,255,5,255,4,255); exit(); } } function main(){ var d; while(1){ if(gb>>13==7){ d=0; }else{ d=(rnd(10)<1); } gb=(gb<<1)+d&0xffff; db=(db<<1)+(rnd(10)<1)&0xffff; sb=(sb<<1)+(rnd(20)<1)&0xffff; s=s+1; if(sz>0){ sz=sz+1; } if(sz>31){ sz=0; video(1); } dr(gb); jp(); it(db,0x35,22); it(sb,0x1e,22); lc(5,10); log("SCORE ",s,"\n"); uart(0x80,0x0b,0x09,5,255,5,255,5,255,5,255); } } cls(); pi(); main();
グラフィックとサウンドの華やかなゲームですね。PanCakeのデフォルト背景はゲームに中々使われないだろうと思っていましたが、意外にも合いますね。スピードアップ時にIchigoLatte画面を消すというアイデアも面白いです。