




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
纯为个人思路,无特殊,惊人语句.初学完的;程序功能:最原始简单版俄罗斯方块;硬件连接:接双色点阵;晶振型号:12M;单片机:STC89C52;编写时间:;编程人:HANGBITP2.0 ;点阵行输入HWBITP2.1 HZBITP2.2 LIEBITP2.3 ;点阵列输入LWBITP2.4LZBITP2.5WEIBITP2.6DUANBITP2.7XIANEQUP1BiaoXBIT20H.0 Biao_zBIT20H.1;按键是否按下标志Biao_yBIT20H.2Biao_xBIT20H.3 Dou_zBIT20H.4 ;按键相应标志位Ying_zBIT20H.5Dou_yBIT20H.6Ying_yBIT20H.7Dou_xBIT21H.0Ying_xBIT21H.1Biao_ZYBIT21H.2Biao_ztBIT21H.3 ;开始、暂停标志KEY_zBITP0.0 ;左、右、旋转按键KEY_yBITP0.1KEY_xBITP0.2ORG0000HAJMPStartORG0003HAJMPInt0_serORG000BHAJMPT0_serORG0030H;*Start:MOVR0,#08HMOVR1,#51HMOVR3,#03HMOVR4,#08H/MOV46H,#99MOV40H,#03HMOV30H,#0FEHMOV33H,#0FEHMOV37H,#80HMOVTMOD,#01HMOVTH0,#(65536-10000) / 256MOVTL0,#(65536-10000) MOD 256SETBEASETBEX0SETBET0SETBIT0SETBTR0;*Main:CALLZhanting ;暂停响应CALLXianshi ;点阵显示CALLCMkey_z ;左移按键CALLCMkey_y ;右移按键CALLCMkey_x ;旋转按键CALLPanduan_z ;判断是否可以左移CALLPanduan_y ;判断是否可以右移CALLPanduan_x ;判断是否可以旋转CALLPanduan_xia ;判断是否可以下移CALLPanduan_xh ;判断消行CALLSaomiao_xh ;扫描消行CALLJifen ;计算分值CALLJifenXianshi ;分值显示ORLPCON,#01HAJMPMain;* Zhanting:JBBiao_zt,Out_zt ;判断是否暂停Zhanti:MOVA,37H ;显示STARTRLCAMOV37H,AMOVLIE,CCLRLWSETBLWDJNZR0,ZhantiMOVR0,#08HCLRLZSETBLZMOVA,37HRLCARRAMOV37H,AZhan:SETBHANGCLRHWSETBHWDJNZR0,ZhanMOVR0,#08HMOVA,38HINC38HMOVDPTR,#TABZMOVCA,A+DPTRMOV39H,AZhant:MOVA,39HRLCAMOV39H,AMOVHANG,CCLRHWSETBHWDJNZR0,ZhantMOVR0,#08HCLRHZSETBHZCALLDelayCALLDelayQing:SETBHANGCLRHWSETBHWDJNZR0,QingMOVR0,#08HQing1:SETBHANGCLRHWSETBHWDJNZR0,Qing1MOVR0,#08HCLRHZSETBHZDJNZR4,ZhantiMOVR4,#08HCLRCYMOVA,38HSUBBA,#08HMOV38H,A/MOV38H,#00HMOVA,44HMOV34H,#00HCJNEA,#10,ZhantingINC38HMOV44H,#00HMOVA,38HCJNEA,#31,ZhantingMOV38H,#00HAJMPZhantingOut_zt:RET;*Xianshi: ;移动积木显示 SETBHANGCLRHWSETBHWDJNZR0,XianshiMOVR0,#08HLoop:MOVA,30HRLCAMOV30H,AMOVHANG,CCLRHWSETBHWDJNZR0,LoopMOVR0,#08HCLRHZSETBHZMOVA,30HRLCARLAMOV30H,ACALL XingzMOVA,31HINC31HMOVCA,A+DPTRMOV32H,ACALLHengyiLoop1:MOVA,32HRLCAMOV32H,AMOVLIE,CCLRLWSETBLWDJNZR0,Loop1MOVR0,#08HCLRLZSETBLZCALLDelayCALLQingpingBeijing: ;背景显示SETBHANGCLRHWSETBHWDJNZR0,BeijingMOVR0,#08HLoop3:MOVA,33HRLCAMOV33H,AMOVHANG,CCLRHWSETBHWDJNZR0,Loop3MOVR0,#08HCLRHZSETBHZMOVA,33HRLCARLAMOV33H,AMOVA,R1MOV50H,ALoop2:MOVA,50HRLCAMOV50H,AMOVLIE,CCLRLWSETBLWDJNZR0,Loop2MOVR0,#08HINCR1CLRLZSETBLZCALLDelayCALLQingpingCJNER1,#59H,Xianshi0MOVR1,#51HMOV31H,#00HRETXianshi0:AJMPXianshi;*确认显示形状Xingz:MOVA,40HCJNEA,#0,S1MOVDPTR,#TAB0RETS1:CJNEA,#1,S2CALLXuanz1RETS2:CJNEA,#2,S3CALLXuanz2RETS3:CJNEA,#3,S4CALLXuanz3RETS4:CJNEA,#4,S5CALLXuanz4RETS5:CJNEA,#5,S6CALLXuanz5RETS6:CALLXuanz6RETXuanz1:MOVA,41HCJNEA,#0,Xu1MOVDPTR,#TAB1RET Xu1:CJNEA,#2,Zhuan1MOVDPTR,#TAB1RET Zhuan1:MOVDPTR,#TAB1_1RETXuanz2:MOVA,41HCJNEA,#0,Zhuan2_1MOVDPTR,#TAB2RET Zhuan2_1: CJNEA,#1,Zhuan2_2MOVDPTR,#TAB2_1RET Zhuan2_2: CJNEA,#2,Zhuan2_3MOVDPTR,#TAB2_2RET Zhuan2_3: MOVDPTR,#TAB2_3RETXuanz3:MOVA,41HCJNEA,#0,Zhuan3_1MOVDPTR,#TAB3RET Zhuan3_1: CJNEA,#1,Zhuan3_2MOVDPTR,#TAB3_1RET Zhuan3_2: CJNEA,#2,Zhuan3_3MOVDPTR,#TAB3_2RET Zhuan3_3: MOVDPTR,#TAB3_3RETXuanz4:MOVA,41HCJNEA,#0,Zhuan4_1MOVDPTR,#TAB4RET Zhuan4_1: CJNEA,#1,Zhuan4_2MOVDPTR,#TAB4_1RET Zhuan4_2: CJNEA,#2,Zhuan4_3MOVDPTR,#TAB4_2RET Zhuan4_3: MOVDPTR,#TAB4_3RETXuanz5:MOVA,41HCJNEA,#0,Zhuan5_1MOVDPTR,#TAB5RET Zhuan5_1: CJNEA,#2,Zhuan5_2MOVDPTR,#TAB5RET Zhuan5_2:MOVDPTR,#TAB5_1RETXuanz6:MOVA,41HCJNEA,#0,Zhuan6_1MOVDPTR,#TAB6RET Zhuan6_1: CJNEA,#2,Zhuan6_2MOVDPTR,#TAB6RET Zhuan6_2:MOVDPTR,#TAB6_1RET;*确认左右移动Hengyi:CJNER3,#03H,H1RETH1:MOVA,32HRLACJNER3,#02H,H2AJMPOUT1H2:RLACJNER3,#01H,H3AJMPOUT1H3:RLACJNER3,#00H,H4AJMPOUT1H4:MOVA,32HRRACJNER3,#04H,H5AJMPOUT1H5:RRACJNER3,#05H,H6AJMPOUT1H6:RRACJNER3,#06H,H7AJMPOUT1H7:RRAOUT1:MOV32H,ARET;*左移按键CMkey_z:JBKEY_z,Loopz0JBDou_z,Loopz2SETBDou_zRETLoopz2:INC42HJBYing_z,OutzSETBYing_zSETBBiao_zRETLoopz0:CLRDou_zCLRYing_zOutz:RET;* 右移按键CMkey_y:JBKEY_y,Loopy0JBDou_y,Loopy2SETBDou_yRETLoopy2:INC42HJBYing_y,OutySETBYing_ySETBBiao_yRETLoopy0:CLRDou_yCLRYing_yOuty:RET;* 旋转按键CMkey_x:JBKEY_x,Loopx0JBDou_x,Loopx2SETBDou_xRETLoopx2:INC42HJBYing_x,OutxSETBYing_xSETBBiao_xRETLoopx0:CLRDou_xCLRYing_xOutx:RET;* 左移防冲突Panduan_z:JBCBiao_z,ZuoyiRETZuoyi:SETBBiao_ZYCALLHangyiMOVA,36HJBACC.7,YesZuoCALLHangerMOVA,36HJBACC.7,YesZuoCALLHangsanMOVA,36HJBACC.7,YesZuo ;已到边上,不用移动MOV45H,R3DECR3MOVA,35HCJNEA,#0,Zuo_0;防移动冲突背景AJMPYesZuo Zuo_0:CJNEA,#1,Zuo_1AJMPYesZuo Zuo_1:CJNEA,#2,Zuo_2CALLXuan_1AJMPYesZuo Zuo_2:CJNEA,#3,Zuo_3CALLXuan_2AJMPYesZuo Zuo_3:CJNEA,#4,Zuo_4CALLXuan_3AJMPYesZuo Zuo_4:CJNEA,#5,Zuo_5CALLXuan_4AJMPYesZuo Zuo_5:CALLXuan_5YesZuo:RET;* 右移防冲突Panduan_y:JBCBiao_y,YouyiRETYouyi:SETBBiao_ZYCALLHangyiMOVA,36HJBACC.0,YesyouCALLHangerMOVA,36HJBACC.0,YesyouCALLHangsiMOVA,36HJBACC.0,Yesyou ;已到边上MOV45H,R3INCR3MOVA,35HCJNEA,#0,You_0 ;防右移冲突背景AJMPYesyou You_0: CJNEA,#1,You_1AJMPYesyou You_1:CJNEA,#2,You_2CALLXuan_1AJMPYesyou You_2:CJNEA,#3,You_3CALLXuan_2AJMPYesyou You_3:CJNEA,#4,You_4CALLXuan_3AJMPYesyou You_4:CJNEA,#5,You_5CALLXuan_4AJMPYesyou You_5:CALLXuan_5Yesyou:RET;*旋转防冲突Panduan_x:JBCBiao_x,XuanzhuanRETXuanzhuan:;方形不用旋转MOVA,40HCJNEA,#0,BieRETBie:MOVA,35HCJNEA,#0,PanyiRETPanyi:MOV43H,41HINC41HMOVA,40HCJNEA,#1,NoyiMOVA,35HCJNEA,#1,XuanyiMOV41H,43HRETXuanyi: MOVA,41H ;一字型防出边界CJNEA,#1,Yi_1AJMPYi_h Yi_1:CJNEA,#3,Yi_sAJMPYi_h Yi_s: ;一字型防冲突背景 CALLHangyiMOVA,36HANLA,#83HCJNEA,#0,Noxuan Yi_h:MOVA,35HCJNEA,#2,Yi_h2CALLXuan_1CALLYesxuanRET Yi_h2:MOVA,35HCJNEA,#3,Yi_h3CALLXuan_2CALLYesxuanRET Yi_h3:MOVA,35HCJNEA,#4,Yi_h4CALLXuan_3CALLYesxuanRET Yi_h4:MOVA,35HCJNEA,#5,Yi_h5CALLXuan_4CALLHangsiMOVA,36HANLA,54HCJNEA,#0,NoxuanCALLYesxuanRET Yi_h5:CALLXuan_5CALLHangsiMOVA,36HANLA,55HCJNEA,#0,NoxuanCALLYesxuanRET Noyi: ;另外五种变形防出边界冲突背景CALLYouchuMOVA,35HCJNEA,#1,Xuanzh1CALLYesxuanRET Xuanzh1: ;防冲突背景CJNEA,#2,Xuanzh2CALLXuan_1CALLYesxuanRET Xuanzh2:CJNEA,#3,Xuanzh3CALLXuan_2CALLYesxuanRET Xuanzh3:CJNEA,#4,Xuanzh4CALLXuan_3CALLYesxuanRET Xuanzh4:CJNEA,#5,Xuanzh5CALLXuan_4CALLYesxuanRET Xuanzh5:CALLXuan_5Yesxuan:MOVA,41HCJNEA,#4,OutqMOV41H,#00HOutq:RETNoxuan:MOV41H,43HRETYouchu: ;防右出边界子程序CALLHangyiMOVA,36HJBACC.0,NoxuanCALLHangerMOVA,36HJBACC.0,NoxuanCALLHangsanMOVA,36HJBACC.0,NoxuanRET Xuan_1: ;防冲突子程序CALLHangyiMOVA,36HANLA,54HCJNEA,#0,No_zyxRET Xuan_2:CALLHangyiMOVA,36HANLA,55HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,54HCJNEA,#0,No_zyxRET Xuan_3:CALLHangyiMOVA,36HANLA,56HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,55HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,54HCJNEA,#0,No_zyxRET Xuan_4:CALLHangyiMOVA,36HANLA,57HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,56HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,55HCJNEA,#0,No_zyxRET Xuan_5:CALLHangyiMOVA,36HANLA,58HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,57HCJNEA,#0,No_zyxCALLHangerMOVA,36HANLA,56HCJNEA,#0,No_zyxRETNo_zyx:JBCBiao_ZY,No_zNo_x:AJMPNoxuan ;旋转冲突背景No_z:MOVR3,45H ;左、右冲突背景RET;*一秒下移子程序Panduan_xia: MOVA,34HCJNEA,#100,Out_xMOV34H,#00HMOVA,30HRLAMOV30H,AINC35HOut_x:RET;*判断是否可下移Panduan_xh:MOVA,35HCJNEA,#00H,X1RETX1:CJNEA,#01H,X2CALLXH1RETX2:CJNEA,#02H,X3CALLXH2RETX3:CJNEA,#03H,X4CALLXH3RETX4:CJNEA,#04H,X5CALLXH4RETX5:CJNEA,#05,X6CALLXH5RETX6:CALLXH6RET;*XH1:CALLHangyiMOVA,36HANLA,54HCJNEA,#0,WanRETXH2:CALLHangyiMOVA,36HANLA,55HCJNEA,#0,WanCALLHangerMOVA,36HANLA,54HCJNEA,#0,WanRETWan:;游戏结束AJMP$XH3:;防下移冲突背景子程序CALLHangyiMOVA,36HANLA,56HCJNEA,#0,Noxia3CALLHangerMOVA,36HANLA,55HCJNEA,#0,Noxia3CALLHangsanMOVA,36HANLA,54HCJNEA,#0,WanRETNoxia3:CALLHangsanMOVA,36HCJNEA,#0,WanCALLHangyiMOVA,36HORLA,55HMOV55H,ACALLHangerMOVA,36HORLA,54HMOV54H,ACALLSMHang ;扫描行RETXH4:CALLHangyiMOVA,36HANLA,57HCJNEA,#0,Noxia4CALLHangerMOVA,36HANLA,56HCJNEA,#0,Noxia4CALLHangsanMOVA,36HANLA,55HCJNEA,#0,Noxia4RETNoxia4:CALLHangsiMOVA,36HCJNEA,#0,WanCALLHangyiMOVA,36HORLA,56HMOV56H,ACALLHangerMOVA,36HORLA,55HMOV55H,ACALLHangsanMOVA,36HORLA,54HMOV54H,ACALLSMHang ;扫描行RETXH5:CALLHangyiMOVA,36HANLA,58HCJNEA,#0,Noxia5CALLHangerMOVA,36HANLA,57HCJNEA,#0,Noxia5CALLHangsanMOVA,36HANLA,56HCJNEA,#0,Noxia5RETNoxia5:CALLHangyiMOVA,36HORLA,57HMOV57H,ACALLHangerMOVA,36HORLA,56HMOV56H,ACALLHangsanMOVA,36HORLA,55HMOV55H,ACALLHangsiMOVA,36HORLA,54HMOV54H,ACALLSMHang;扫描行RETXH6:CALLHangyiMOVA,36HORLA,58HMOV58H,ACALLHangerMOVA,36HORLA,57HMOV57H,ACALLHangsanMOVA,36HORLA,56HMOV56H,ACALLHangsiMOVA,36HORLA,55HMOV55H,ACALLSMHang ;扫描行RETSMHang: ;积木停止,出新积木SETBBiaoXMOV30H,#0FEHMOV31H,#00HMOV34H,#00HMOV35H,#00HRET;*Hangyi:CALLXingzMOVA,#01HMOVCA,A+DPTRMOV32H,ACALLHengyiMOV36H,32HRETHanger:CALLXingzMOVA,#00HMOVCA,A+DPTRMOV32H,ACALLHengyiMOV36H,32HRETHangsan:CALLXingzMOVA,#07HMOVCA,A+DPTRMOV32H,ACALLHengyiMOV36H,32HRETHangsi:CALLXingzMOVA,#06HMOVCA,A+DPTRMOV32H,ACALLHengyiMOV36H,32HRET ;*扫描是否消行Saomiao_xh:JBCBiaoX,SaomiaoRETSaomiao:MOV41H,#00H ;消行MOVR3,#03HMOVA,42HMOVB,#07HDIVABMOV40H,BMOVA,54HCJNEA,#0FFH,Sao1MOV54H,#00HINCR5Sao1:MOVA,55HCJNEA,#0FFH,Sao2MOV55H,54HMOV54H,#00HINCR5Sao2:MOVA,56HCJNEA,#0FFH,Sao3MOV56H,55HMOV55H,54HMOV54H,#00HINCR5Sao3:MOVA,57HCJNEA,#0FFH,Sao4MOV57H,56HMOV56H,55HMOV55H,54HMOV54H,#00HINCR5Sao4:MOVA,58HCJNEA,#0FFH,Sao5MOV58H,57HMOV57H,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,ARET;* 得分显示JifenXianshi:MOVXIAN,#0BFHSETBWEICLRWEIMOVA,46HMOVB,#10DIVABMOVDPTR,#TABMOVCA,A+DPTRMOVXIAN,ASETBDUANCLRDUANCALLDelayMOVXIAN,#7FHSETBWEICLRWEIMOVA,BMOVCA,A+DPTRMOVXIAN,ASETBDUANCLRDUANCALLDelayMOVXIAN,#0FFHSETBWEICLRWEIRET;* 暂停标志位Int0_ser:CPLBiao_ztRETI;* 定时计数,并出随机数T0_ser:MOVTH0,#(65536-10000) / 256 MOVTL0,#(65536-10000) MOD 256INC34HINC42HINC44HRETI;* 清屏子程序Qingping:CLRLIECLRLWSETBLWDJNZR0,QingpingMOVR0,#08HCLRLZSETBLZRET;* 延时子程序Delay:MOVR6,#10D1:MOVR7,#10DJNZR7,$DJNZR6,D1RET;* 随机积木7类型TAB0:DB18H, 18H, 00H, 00H, 00H, 00H, 00H, 00H;田字型TAB1:DB00H, 3CH, 00H, 00H, 00H, 00H, 00H, 00H;一字型 TAB1_1: DB10H, 10H, 00H, 00H, 00H, 00H, 10H, 10HTAB2:DB38H, 20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国工业烤箱市场发展前景预测及投资战略咨询报告
- 中国智能条形显示屏行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 中国小麦行业市场调查研究及投资前景预测报告
- 2025年 甘肃招聘聘用制教师考试试题附答案
- 2025年中国电链锯行业市场全景分析及投资策略研究报告
- 2023-2029年中国装修板材行业市场深度评估及投资战略规划报告
- 中国大楔角Ⅴ带项目投资可行性研究报告
- 中国海南养老地产行业市场发展监测及投资潜力预测报告
- 中国养蚕及深加工行业市场全景调研及投资规划建议报告
- 卧铺车行业深度研究分析报告(2024-2030版)
- 劳务施工总承包合同
- DB37-T4827-2025 水利工程运行管理标牌设置指南
- 2025届高考物理说题大赛-以电学实验为例
- 休学一年后复学申请书
- 水下无线光通信高灵敏度调制编码与接收技术研究
- 汽车金融不良资产分类研究-深度研究
- 2025年光伏发电项目合同能源管理合同
- 2025年河北交通投资集团有限公司招聘笔试参考题库含答案解析
- 2020-2021学年河南省郑州市八下期末数学试卷(原卷版)
- 家具公司工艺流程
- 《吸入性肺炎的护理》课件
评论
0/150
提交评论