匯編俄羅斯方塊8.8點(diǎn)陣_第1頁
匯編俄羅斯方塊8.8點(diǎn)陣_第2頁
匯編俄羅斯方塊8.8點(diǎn)陣_第3頁
匯編俄羅斯方塊8.8點(diǎn)陣_第4頁
匯編俄羅斯方塊8.8點(diǎn)陣_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、純?yōu)閭€人思路,無特殊,驚人語句.初學(xué)完的;程序功能:最原始簡單版俄羅斯方塊;硬件連接:接雙色點(diǎn)陣;晶振型號:12M;單片機(jī):STC89C52;編寫時間:;編程人:HANGBIT;點(diǎn)陣行輸入HWBITHZBITLIEBIT;點(diǎn)陣列輸入LWBITLZBITWEIBITDUANBITXIANEQUP1BiaoXBITBiao_zBIT;按鍵是否按下標(biāo)志Biao_yBITBiao_xBITDou_zBIT;按鍵相應(yīng)標(biāo)志位Ying_zBITDou_yBITYing_yBITDou_xBITYing_xBITBiao_ZYBIT; 開始、暫停標(biāo)志; 左、右、旋轉(zhuǎn)按鍵Biao_ztBITKEY_zBITKE

2、Y_yBITKEY_xBITORG0000HAJMPStartORG0003HAJMPInt0_serORG000BHAJMPT0_serORG0030H*Start:MOVR0,#08HMOVR1,#51HMOVR3,#03HMOVR4,#08H/MOV46H,#99MOV40H,#03HMOV30H,#0FEHMOV33H,#0FEHMOV37H,#80HMOVTMOD,#01HMOVTH0,#(65536-10000)/256MOVTL0,#(65536-10000)MOD256SETBEASETB EX0SETBET0SETBIT0SETBTR0;Main:CALLZhanting;暫

3、停響應(yīng)CALLXianshi;點(diǎn)陣顯示CALLCMkey_z;左移按鍵CALLCMkey_y;右移按鍵CALLCMkey_x;旋轉(zhuǎn)按鍵CALLPanduan_z;判斷是否可以左移CALLPanduan_y;判斷是否可以右移CALLPanduan_x;判斷是否可以旋轉(zhuǎn)CALLPanduan_xia;判斷是否可以下移CALLPanduan_xh;判斷消行CALLSaomiao_xh;掃描消行CALLJifen;計算分值CALLJifenXianshi;分值顯示ORLPCON,#01HAJMPMain;Zhanting:JBBiao_zt,Out_zt;判斷是否暫停Zhanti:MOVA,37H;顯

4、示STARTRLCAMOV37H,AMOVLIE,CCLRLWSETBLWDJNZR0,ZhantiMOVR0,#08HCLRLZSETBLZMOVA,37HRLCARRAMOV37H,AZhan:SETBHANGCLRHWSETBHWDJNZR0,ZhanMOVR0,#08HMOVA,38HINC38HMOVDPTR,#TABZMOVCA,A+DPTRMOV39H,AZhant:MOVA,39HRLCMOVMOVCLRSETBDJNZMOVCLRSETBCALLCALLQing:SETBCLRSETBDJNZMOVQing1:SETBCLRSETBDJNZMOVCLRSETBDJNZ39H,

5、AHANG,CHWHWR0,ZhantR0,#08HHZHZDelayDelayHANGHWHWR0,QingR0,#08HHANGHWHWR0,Qing1R0,#08HHZHZR4,ZhantiMOVR5,#08HCLRCYMOVA,38HSUBBA,#08HMOV38H,A/MOV38H,#00HMOVA,44HMOV34H,#00HCJNEA,#10,ZhantingINC38HMOV44H,#00HMOVA,38HCJNEA,#31,ZhantingMOV38H,#00HAJMPZhantingOut_zt:RET;Xianshi:;移動積木顯示SETBHANGCLRHWSETBHWD

6、JNZR0,XianshiMOVR0,#08HLoop:MOVA,30HRLCAMOVHANG,CCLRHWSETBHWDJNZR0,LoopMOVR0,#08HCLRHZSETBHZMOVA,30HRLCARLAMOV30H,ACALLXingzMOVA,31HINC31HMOVCA,A+DPTRMOV32H,ACALLHengyiLoop1:MOVA,32HRLCAMOV32H,AMOVLIE,CCLRLWSETBLWDJNZR0,Loop1MOV R7,#08HCLRLZSETBLZCALLDelayCALLQingpingBeijing:;背景顯示SETBHANGCLRHWSETBHW

7、DJNZR0,BeijingMOVR0,#08HLoop3:MOVA,33HRLCAMOV33H,AMOVHANG,CCLRHWSETBHWDJNZR0,Loop3MOVR0,#08HCLRHZSETBHZMOVA,33HRLCARLAMOV 33H,AMOVA,R1MOV50H,ALoop2:MOVA,50HRLCAMOV50H,AMOVLIE,CCLRLWSETBLWDJNZR0,Loop2MOVR0,#08HINCR1CLRLZSETBLZCALLDelayCALLQingpingCJNER1,#59H,Xianshi0MOVR1,#51HMOV31H,#00HRETXianshi0:A

8、JMPXianshi確認(rèn)顯示形狀*Xingz:MOVA,40HCJNEA,#0,S1MOV DPTR,#TAB0RET51: CJNECALLRET52: CJNECALLRET53: CJNECALLRET54: CJNECALLRET55: CJNECALLRET56: CALLRETXuanz1:MOVCJNEMOVRETXu1:CJNEMOVA,#1,S2Xuanz1A,#2,S3Xuanz2A,#3,S4Xuanz3A,#4,S5Xuanz4A,#5,S6Xuanz5Xuanz6A,41HA,#0,Xu1DPTR,#TAB1A,#2,Zhuan1DPTR,#TAB1RETZhuan1

9、:MOVDPTR,#TAB1_1RETXuanz2:MOVA,41HCJNEA,#0,Zhuan2_1MOVDPTR,#TAB2RETZhuan2_1:CJNEA,#1,Zhuan2_2MOVDPTR,#TAB2_1RETZhuan2_2:CJNEA,#2,Zhuan2_3MOVDPTR,#TAB2_2RETZhuan2_3:MOVDPTR,#TAB2_3RETXuanz3:MOVA,41HCJNEA,#0,Zhuan3_1MOVDPTR,#TAB3RETZhuan3_1:CJNEA,#1,Zhuan3_2MOV DPTR,#TAB3_1RETZhuan32:CJNEA,#2,Zhuan3_3

10、MOVDPTR,#TAB3_2RETZhuan3_3:MOVDPTR,#TAB3_3RETXuanz4:MOVA,41HCJNEA,#0,Zhuan4_1MOVDPTR,#TAB4RETZhuan4_1:CJNEA,#1,Zhuan4_2MOVDPTR,#TAB4_1RETZhuan4_2:CJNEA,#2,Zhuan4_3MOVDPTR,#TAB4_2RETZhuan4_3:MOVDPTR,#TAB4_3RETXuanz5:MOVA,41HCJNEA,#0,Zhuan5_1MOV DPTR,#TAB5RETZhuan51:CJNEA,#2,Zhuan5_2MOVDPTR,#TAB5RETZh

11、uan52:MOVDPTR,#TAB5_1RETXuanz6:MOVA,41HCJNEA,#0,Zhuan6_1MOVDPTR,#TAB6RETZhuan61:CJNEA,#2,Zhuan6_2MOVDPTR,#TAB6RETZhuan62:MOVDPTR,#TAB6_1RET*確認(rèn)左右移動Hengyi:CJNER3,#03H,H1RETH1:MOVA,32HRLCJNER3,#02H,H2AJMPH2:RLCJNEAJMPH3:RLCJNEAJMPH4:MOVRRCJNEAJMPH5:RRCJNEAJMPH6:RRCJNEAJMPH7:RROUT1:MOVRETOUT1AR3,#01H,H3

12、OUT1AR3,#00H,H4OUT1A,32HAR3,#04H,H5OUT1AR3,#05H,H6OUT1AR3,#06H,H7OUT1A32H,ARET左移按鍵*;CMkey_z:JBKEY_z,Loopz0JBDou_z,Loopz2SETBDou_zLoopz2:INC42HJBYing_z,OutzSETBYing_zSETBBiao_zRETLoopz0:CLRDou_zCLRYing_zOutz:RET右移按鍵;CMkey_y:JBKEY_y,Loopy0JBDou_y,Loopy2SETBDou_yRETLoopy2:INC42HJBYing_y,OutySETBYing_yS

13、ETBBiao_yRETLoopy0:CLRDou_yCLRYing_yOuty:RET旋轉(zhuǎn)按鍵*;CMkey_x:JBKEY_x,Loopx0JBDou_x,Loopx2SETBDou_xRETLoopx2:INC42HJBYing_x,OutxSETBYing_xSETBBiao_xRETLoopx0:CLRDou_xCLRYing_xOutx:RET左移防沖突;Panduan_z:JBCBiao_z,ZuoyiRETZuoyi:SETBBiao_ZYCALLHangyiMOVA,36HJB,YesZuoCALLHangerMOVA,36HJB,YesZuoCALLHangsanMOVA,

14、36HJB,YesZuo;已到邊上,不用移動MOV45H,R3DECR3MOVA,35HCJNEA,#0,Zuo_0;防移動沖突背景AJMPYesZuoZuo_0:CJNEA,#1,Zuo_1AJMPYesZuoZuo_1:CJNEA,#2,Zuo_2CALLXuan_1AJMPYesZuoZuo_2:CJNEA,#3,Zuo_3CALLXuan_2AJMPYesZuoZuo_3:CJNEA,#4,Zuo_4CALLXuan_3Zuo4:AJMPYesZuoCJNEA,#5,Zuo_5CALLXuan_4AJMPYesZuoZuo_5:CALLXuan_5YesZuo:RET右移防沖突;Pan

15、duan_y:JBCBiao_y,YouyiRETYouyi:SETBBiao_ZYCALLHangyiMOVA,36HJB,YesyouCALLHangerMOVA,36HJB,YesyouCALLHangsiMOVA,36HJB,Yesyou;已到邊上MOV45H,R3INCR3MOVA,35H防右移沖突背景CJNEA,#0,You_0AJMPYesyouYou0:CJNEA,#1,You_1AJMPYesyouYou_1:CJNEA,#2,You_2CALLXuan_1AJMPYesyouYou_2:CJNEA,#3,You_3CALLXuan_2AJMPYesyouYou_3:CJNE

16、A,#4,You_4CALLXuan_3AJMPYesyouYou_4:CJNEA,#5,You_5CALLXuan_4AJMPYesyouYou_5:CALLXuan_5Yesyou:旋轉(zhuǎn)防沖突RET;Panduan_x:JBCBiao_x,XuanzhuanMOVA,40HCJNEA,#0,BieRETBie:MOVA,35HCJNEA,#0,PanyiRETPanyi:MOV43H,41HINC41HMOVA,40HCJNEA,#1,NoyiMOVA,35HCJNEA,#1,XuanyiMOV41H,43HRETXuanyi:MOVA,41H;一字型防出邊界CJNEA,#1,Yi_1AJ

17、MPYi_hYi_1:CJNEA,#3,Yi_sAJMPYi_hYi_s:;一字型防沖突背景CALLHangyiXuanzhuan:;方形不用旋轉(zhuǎn)MOV A,36HANLA,#83HCJNEA,#0,NoxuanYi_h:MOVA,35HCJNEA,#2,Yi_h2CALLXuan_1CALLYesxuanRETYi_h2:MOVA,35HCJNEA,#3,Yi_h3CALLXuan_2CALLYesxuanRETYi_h3:MOVA,35HCJNEA,#4,Yi_h4CALLXuan_3CALLYesxuanRETYi_h4:MOVA,35HCJNEA,#5,Yi_h5CALLXuan_4C

18、ALLHangsiMOVA,36HCJNEA,#0,NoxuanCALLYesxuanRETYi_h5:CALLXuan_5CALLHangsiMOVA,36HANLA,55HCJNEA,#0,NoxuanCALLYesxuanRETNoyi:;另外五種變形防出邊界沖突背景CALLYouchuMOVA,35HCJNEA,#1,Xuanzh1CALLYesxuanRETXuanzh1:;防沖突背景CJNEA,#2,Xuanzh2CALLXuan_1CALLYesxuanRETXuanzh2:CJNEA,#3,Xuanzh3CALLXuan_2CALLYesxuanRETXuanzh3:CJNEA

19、,#4,Xuanzh4CALLXuan_3CALLYesxuanRETXuanzh4:CJNEA,#5,Xuanzh5CALLXuan_4CALLYesxuanRETXuanzh5:CALLXuan_5Yesxuan:MOVA,41HCJNEA,#4,OutqMOV41H,#00HOutq:RETNoxuan:MOV41H,43H防右出邊界子程序RETYouchu:CALLHangyiMOVA,36HJB,NoxuanMOVA,36HJB,NoxuanCALLHangsanMOVA,36HJB,NoxuanRETXuan_1:CALLHangyiMOVA,36HANLA,54HCJNEA,#0

20、,No_zyxRETXuan_2:CALLHangyiMOVA,36HANLA,55HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,54HCJNEA,#0,No_zyxRETXuan_3:CALLHangyiMOVA,36HANLA,56HCALLHanger防沖突子程序CJNE A,#0,No_zyxCALLHangerMOVA,36HANLA,55HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,54HCJNEA,#0,No_zyxRETXuan_4:CALLHangyiMOVA,36HANLA,57HCJNEA,#0,No_zyx

21、CALLHangerMOVA,36HANLA,56HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,55HCJNEA,#0,No_zyxRETXuan_5:CALLHangyiMOV A,36HANL A,58HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,57HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,56HCJNEA,#0,No_zyxRETNo_zyx:JBCBiao_ZY,No_zNo_x:AJMPNoxuan;旋轉(zhuǎn)沖突背景No_z:MOVR3,45H;左、右沖突背景RET一秒下移子程序*Pan

22、duan_xia:MOVA,34HCJNEA,#100,Out_xMOV34H,#00HMOVA,30HRLAMOV30H,AINC35HOutx:RET判斷是否可下移;Panduan_xh:MOVA,35HCJNEA,#00H,X1RETX1:CJNEA,#01H,X2CALLXH1RETX2:CJNEA,#02H,X3CALLXH2RETX3:CJNEA,#03H,X4CALLXH3RETX4:CJNEA,#04H,X5CALLXH4RETX5:CJNEA,#05,X6CALLXH5RETX6:CALLXH6RET;XH1:MOVA,36HANLA,54HCJNEA,#0,WanRETXH

23、2:CALLHangyiMOVA,36HANLA,55HCJNEA,#0,WanCALLHangerMOVA,36HANLA,54HCJNEA,#0,WanRETWan:;游戲結(jié)束AJMP$XH3:;防下移沖突背景子程序CALLHangyiMOVA,36HANLA,56HCJNEA,#0,Noxia3CALLHangerMOVA,36HANLA,55HCJNEA,#0,Noxia3CALLHangsanMOV A,36HANL A,54HCJNEA,#0,WanRETNoxia3:CALLHangsanMOVA,36HCJNEA,#0,WanCALLHangyiMOVA,36HORLA,55H

24、MOV55H,ACALLHangerMOVA,36HORLA,54HMOV54H,ACALLSMHang;掃描行RETXH4:CALLHangyiMOVA,36HANLA,57HCJNEA,#0,Noxia4CALLHangerMOVA,36HANLA,56HCJNEA,#0,Noxia4CALL HangsanMOVA,36HANLA,55HCJNEA,#0,Noxia4RETNoxia4:CALLHangsiMOVA,36HCJNEA,#0,WanCALLHangyiMOVA,36HORLA,56HMOV56H,ACALLHangerMOVA,36HORLA,55HMOV55H,ACALL

25、HangsanMOVA,36HORLA,54HMOV54H,ACALLSMHang;掃描行RETXH5:CALLHangyiMOVA,36HANLA,58HCALLHangerMOVA,36HANLA,57HCJNEA,#0,Noxia5CALLHangsanMOVA,36HANLA,56HCJNEA,#0,Noxia5RETNoxia5:CALLHangyiMOVA,36HORLA,57HMOV57H,ACALLHangerMOVA,36HORLA,56HMOV56H,ACALLHangsanMOVA,36HORLA,55HMOV55H,ACALLHangsiMOVA,36HORLA,54H

26、MOV54H,ACALL SMHang ; 掃描行RETXH6:CALLHangyiMOVA,36HORLA,58HMOV58H,ACALLHangerMOVA,36HORLA,57HMOV57H,ACALLHangsanMOVA,36HORLA,56HMOV56H,ACALLHangsiMOVA,36HORLA,55HMOV55H,ACALLSMHang;掃描行RETSMHang:;積木停止,出新積木SETBBiaoXMOV30H,#0FEHMOV31H,#00HMOV34H,#00HMOV35H,#00HRET*Hangyi:CALLMOVMOVCMOVCALLMOVRETHanger:C

27、ALLMOVMOVCMOVCALLMOVRETHangsan:CALLMOVMOVCMOVCALLMOVXingzA,#01HA,A+DPTR32H,AHengyi36H,32HXingzA,#00HA,A+DPTR32H,AHengyi36H,32HXingzA,#07HA,A+DPTR32H,AHengyi36H,32HRETHangsi:CALLXingzMOVA,#06HMOVCA,A+DPTRMOV32H,ACALLHengyiMOV36H,32HRET掃描是否消行*Saomiao_xh:JBCBiaoX,SaomiaoRETSaomiao:MOV41H,#00H;消行MOVR3,#

28、03HMOVA,42HMOVB,#07HDIVABMOV40H,BMOVA,54HCJNEA,#0FFH,Sao1MOV54H,#00HINCR5Sao1:MOVA,55HCJNEA,#0FFH,Sao2MOV55H,54HINCR5Sao2:MOVA,56HCJNEA,#0FFH,Sao3MOV56H,55HMOV55H,54HMOV54H,#00HINCR5Sao3:MOVA,57HCJNEA,#0FFH,Sao4MOV57H,56HMOV56H,55HMOV55H,54HMOV54H,#00HINCR5Sao4:MOVA,58HCJNEA,#0FFH,Sao5MOV58H,57HMOV5

29、7H,56HMOV56H,55HMOV55H,54HMOV54H,#00HINCR5Sao5:RET*得分顯示Jifen:CJNER5,#0,Jia1RETJia1:MOVA,R5MOVR5,#00HCJNEA,#1,Jia2INC46HRETJia2:CJNEA,#2,Jia3MOVA,#3ADDA,46HMOV46H,ARETJia3:CJNEA,#3,Jia4MOVA,#7ADDA,46HMOV46H,ARETJia4:MOVA,#10ADDA,46HMOV46H,AJifenXianshi:MOVXIAN,#0BFHSETBWEICLRWEIMOVA,46HMOVB,#10DIVABM

30、OVDPTR,#TABMOVCA,A+DPTRMOVXIAN,ASETBDUANCLRDUANCALLDelayMOVXIAN,#7FHSETBWEICLRWEIMOVA,BMOVCA,A+DPTRMOVXIAN,ASETBDUANCLRDUANCALLDelayMOVXIAN,#0FFHSETBWEICLRWEIRET*暫停標(biāo)志位Int0_ser:CPLBiao_ztRETI;T0_ser:MOVMOVINCINCINCRETI;*;Qingping:CLRLIECLRLWSETBLWDJNZR0,QingpingMOVR0,#08HCLRLZSETBLZRET;Delay:MOVR6,#10D1:MOVR7,#10DJNZR7,$TH0,#(65536-10000)/256TL0,#(65536-10000)MOD25634H42H44H清屏子程序延時子程序定時計數(shù),并出隨機(jī)數(shù)DJNZR6,D1RET*隨機(jī)積木7類型; 田字型; 一字型;L 型;T 字型TA

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論