📄 main.asm
字号:
;>>>> if(KEY_LEFT==1)
LDPK _KEY_LEFT
LAC _KEY_LEFT
SUBK 1
BNZ L9
.line 14
;>>>> hand_num=hand_num-1;
LDPK _hand_num
LAC _hand_num
SUBK 1
SACL _hand_num
.line 15
;>>>> if(hand_num==0)
LAC _hand_num
BNZ L10
.line 16
;>>>> hand_num=8;
LACK 8
SACL _hand_num
L10:
.line 17
;>>>> HAND_SHOW(hand_num);
SACL *+
CALL _HAND_SHOW
MAR *-
L9:
.line 19
;>>>> if(KEY_UP==1)
LDPK _KEY_UP
LAC _KEY_UP
SUBK 1
BNZ L11
.line 21
;>>>> if(hand_num<5)
SSXM
LDPK _hand_num
LAC _hand_num
SUBK 5
BGEZ L12
.line 23
;>>>> if(pin_num1==98)
LDPK _pin_num1
LAC _pin_num1
SUBK 98
BNZ L13
.line 24
;>>>> pin_num1=14;
;>>>> else
LACK 14
SACL _pin_num1
B L14
L13:
.line 26
;>>>> pin_num1=pin_num1+1;
ADDK 99
SACL _pin_num1
L14:
.line 27
;>>>> HAND_PINNUM(pin_num1);
SACL *+
CALL _HAND_PINNUM
MAR *-
L12:
.line 29
;>>>> if(hand_num==5)
LDPK _hand_num
LAC _hand_num
SUBK 5
BNZ L15
.line 31
;>>>> if(pin_num2==98)
LDPK _pin_num2
LAC _pin_num2
SUBK 98
BNZ L16
.line 32
;>>>> pin_num2=5;
;>>>> else
LACK 5
SACL _pin_num2
B L17
L16:
.line 34
;>>>> pin_num2=pin_num2+1;
ADDK 99
SACL _pin_num2
L17:
.line 35
;>>>> HAND_PINNUM(pin_num2);
SACL *+
CALL _HAND_PINNUM
MAR *-
L15:
.line 37
;>>>> if(hand_num==6)
LDPK _hand_num
LAC _hand_num
SUBK 6
BNZ L18
.line 39
;>>>> if(pin_num1==98)
LDPK _pin_num1
LAC _pin_num1
SUBK 98
BNZ L19
.line 40
;>>>> pin_num1=14;
;>>>> else
LACK 14
SACL _pin_num1
B L20
L19:
.line 42
;>>>> pin_num1=pin_num1+1;
ADDK 99
SACL _pin_num1
L20:
.line 43
;>>>> HAND_PINNUM(pin_num1);
SACL *+
CALL _HAND_PINNUM
MAR *-
L18:
.line 45
;>>>> if(hand_num==7|hand_num==8)
LDPK _hand_num
LAC _hand_num
SUBK 8
LARK AR3,1
BZ LL12
LARK AR3,0
LL12:
LAC _hand_num
SUBK 7
LARK AR4,1
BZ LL13
LARK AR4,0
LL13:
MAR * ,AR0
SAR AR4,*
SSXM
LAC *
SAR AR3,*
OR *
ANDK 0FFFFh
BZ L11
.line 47
;>>>> if(pin_num3==499)
LDPK _pin_num3
LAC _pin_num3
SUBK 499
BNZ L22
.line 48
;>>>> pin_num3=5;
;>>>> else
LACK 5
SACL _pin_num3
B L23
L22:
.line 50
;>>>> pin_num3=pin_num3+1;
ADDK 500
SACL _pin_num3
L23:
.line 51
;>>>> HAND_PINNUM(pin_num3);
MAR * ,AR1
SACL *+
CALL _HAND_PINNUM
MAR *-
L11:
.line 54
;>>>> if(KEY_DOWN==1)
LDPK _KEY_DOWN
LAC _KEY_DOWN
SUBK 1
BNZ L24
.line 56
;>>>> if(hand_num<5)
SSXM
LDPK _hand_num
LAC _hand_num
SUBK 5
BGEZ L25
.line 58
;>>>> if(pin_num1==14)
LDPK _pin_num1
LAC _pin_num1
SUBK 14
BNZ L26
.line 59
;>>>> pin_num1=98;
;>>>> else
LACK 98
SACL _pin_num1
B L27
L26:
.line 61
;>>>> pin_num1=pin_num1-1;
ADDK 13
SACL _pin_num1
L27:
.line 62
;>>>> HAND_PINNUM(pin_num1);
MAR * ,AR1
SACL *+
CALL _HAND_PINNUM
MAR *-
L25:
.line 64
;>>>> if(hand_num==5)
LDPK _hand_num
LAC _hand_num
SUBK 5
BNZ L28
.line 66
;>>>> if(pin_num2==5)
LDPK _pin_num2
LAC _pin_num2
SUBK 5
BNZ L29
.line 67
;>>>> pin_num2=98;
;>>>> else
LACK 98
SACL _pin_num2
B L30
L29:
.line 69
;>>>> pin_num2=pin_num2-1;
ADDK 4
SACL _pin_num2
L30:
.line 70
;>>>> HAND_PINNUM(pin_num2);
MAR * ,AR1
SACL *+
CALL _HAND_PINNUM
MAR *-
L28:
.line 72
;>>>> if(hand_num==6)
LDPK _hand_num
LAC _hand_num
SUBK 6
BNZ L31
.line 74
;>>>> if(pin_num1==14)
LDPK _pin_num1
LAC _pin_num1
SUBK 14
BNZ L32
.line 75
;>>>> pin_num1=98;
;>>>> else
LACK 98
SACL _pin_num1
B L33
L32:
.line 77
;>>>> pin_num1=pin_num1-1;
ADDK 13
SACL _pin_num1
L33:
.line 78
;>>>> HAND_PINNUM(pin_num1);
MAR * ,AR1
SACL *+
CALL _HAND_PINNUM
MAR *-
L31:
.line 80
;>>>> if(hand_num==7|hand_num==8)
LDPK _hand_num
LAC _hand_num
SUBK 8
LARK AR3,1
BZ LL14
LARK AR3,0
LL14:
LAC _hand_num
SUBK 7
LARK AR4,1
BZ LL15
LARK AR4,0
LL15:
MAR * ,AR0
SAR AR4,*
SSXM
LAC *
SAR AR3,*
OR *
ANDK 0FFFFh
BZ L24
.line 82
;>>>> if(pin_num3==5)
LDPK _pin_num3
LAC _pin_num3
SUBK 5
BNZ L35
.line 83
;>>>> pin_num3=499;
;>>>> else
SPLK #499,_pin_num3
B L36
L35:
.line 85
;>>>> pin_num3=pin_num3-1;
ADDK 4
SACL _pin_num3
L36:
.line 86
;>>>> HAND_PINNUM(pin_num3);
MAR * ,AR1
BLKD _pin_num3+0,*+
CALL _HAND_PINNUM
MAR *-
L24:
EPI0_10:
.line 89
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 193,000000000H,1
.sym _TIGHT_SET,_TIGHT_SET,32,2,0
.globl _TIGHT_SET
.func 194
;>>>> void TIGHT_SET(argument1,argument2,argument3,argument4,argument5,i)
******************************************************
* FUNCTION DEF : _TIGHT_SET
******************************************************
_TIGHT_SET:
LF11 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,17
LAR AR0,*0+,AR2
.sym _argument1,-3+LF11,4,9,16
.sym _argument2,-4+LF11,4,9,16
.sym _argument3,-5+LF11,4,9,16
.sym _argument4,-6+LF11,4,9,16
.sym _argument5,-7+LF11,4,9,16
.sym _i,-8+LF11,4,9,16
.sym _HANZI_CON,1,52,1,256,,16
.line 2
;>>>> int HANZI_CON[16];
.line 4
;>>>> WAIT_KEY(i);
LARK AR2,-8+LF11
MAR *0+
LAC * ,AR1
SACL *+
CALL _WAIT_KEY
MAR *-
.line 5
;>>>> Delay1S();
CALL _Delay1S
.line 6
;>>>> if(KEY_LEFT==1)
LDPK _KEY_LEFT
LAC _KEY_LEFT
SUBK 1
BNZ L37
.line 7
;>>>> {if(caidan==1)
LDPK _caidan
LAC _caidan
SUBK 1
BNZ L38
.line 8
;>>>> {TIGHT_BILI(1,HANZI_CON,HANZI_BILI,HANZI_BILI+16,HANZI_YINZI,HANZI_YINZI+16,0xFFB9);
LACK -71
SACL *+
LALK _HANZI_YINZI+16
SACL *+
LALK _HANZI_YINZI+0
SACL *+
LALK _HANZI_BILI+16
SACL *+
LALK _HANZI_BILI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 9
;>>>> DAOZHILING(2,HANZI_CON);}
MAR * ,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _DAOZHILING
SBRK 2
L38:
.line 10
;>>>> if(caidan==2)
LDPK _caidan
LAC _caidan
SUBK 2
BNZ L39
.line 11
;>>>> {TIGHT_BILI(2,HANZI_CON,HANZI_BILI,HANZI_BILI+16,HANZI_YINZI,HANZI_YINZI+16,0xFFB9);
LACK -71
SACL *+
LALK _HANZI_YINZI+16
SACL *+
LALK _HANZI_YINZI+0
SACL *+
LALK _HANZI_BILI+16
SACL *+
LALK _HANZI_BILI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 12
;>>>> TIGHT_BILI(1,HANZI_CON,HANZI_QISHI,HANZI_QISHI+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBB);}
LACK -69
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_QISHI+16
SACL *+
LALK _HANZI_QISHI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _TIGHT_BILI
SBRK 7
L39:
.line 13
;>>>> if(caidan==3)
LDPK _caidan
LAC _caidan
SUBK 3
BNZ L40
.line 14
;>>>> {TIGHT_BILI(1,HANZI_CON,HANZI_ZHONGNIAO,HANZI_ZHONGNIAO+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBD);
LACK -67
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_ZHONGNIAO+16
SACL *+
LALK _HANZI_ZHONGNIAO+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 15
;>>>> TIGHT_BILI(2,HANZI_CON,HANZI_QISHI,HANZI_QISHI+16,HANZI_ZHONGNIAO,HANZI_ZHONGNIAO+16,0xFFBB);}
LACK -69
SACL *+
LALK _HANZI_ZHONGNIAO+16
SACL *+
LALK _HANZI_ZHONGNIAO+0
SACL *+
LALK _HANZI_QISHI+16
SACL *+
LALK _HANZI_QISHI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _TIGHT_BILI
SBRK 7
L40:
.line 16
;>>>> if(caidan==4)
LDPK _caidan
LAC _caidan
SUBK 4
BNZ L41
.line 17
;>>>> {TIGHT_BILI(2,HANZI_CON,HANZI_ZHONGNIAO,HANZI_ZHONGNIAO+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBD);
LACK -67
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_ZHONGNIAO+16
SACL *+
LALK _HANZI_ZHONGNIAO+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 18
;>>>> DAOZHILING(1,HANZI_CON);}
MAR * ,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _DAOZHILING
SBRK 2
L41:
.line 19
;>>>> if(caidan==1)
LDPK _caidan
LAC _caidan
SUBK 1
BNZ L42
.line 20
;>>>> caidan=4;
;>>>> else
LACK 4
SACL _caidan
B L37
L42:
.line 22
;>>>> caidan=caidan-1;
SACL _caidan
L37:
.line 24
;>>>> if(KEY_RIGHT==1)
LDPK _KEY_RIGHT
LAC _KEY_RIGHT
SUBK 1
BNZ L44
.line 25
;>>>> {if(caidan==1)
LDPK _caidan
LAC _caidan
SUBK 1
BNZ L45
.line 26
;>>>> {TIGHT_BILI(1,HANZI_CON,HANZI_BILI,HANZI_BILI+16,HANZI_YINZI,HANZI_YINZI+16,0xFFB9);
LACK -71
SACL *+
LALK _HANZI_YINZI+16
SACL *+
LALK _HANZI_YINZI+0
SACL *+
LALK _HANZI_BILI+16
SACL *+
LALK _HANZI_BILI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 27
;>>>> TIGHT_BILI(2,HANZI_CON,HANZI_QISHI,HANZI_QISHI+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBB);}
LACK -69
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_QISHI+16
SACL *+
LALK _HANZI_QISHI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _TIGHT_BILI
SBRK 7
L45:
.line 28
;>>>> if(caidan==2)
LDPK _caidan
LAC _caidan
SUBK 2
BNZ L46
.line 29
;>>>> {TIGHT_BILI(1,HANZI_CON,HANZI_QISHI,HANZI_QISHI+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBB);
LACK -69
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_QISHI+16
SACL *+
LALK _HANZI_QISHI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 30
;>>>> TIGHT_BILI(2,HANZI_CON,HANZI_ZHONGNIAO,HANZI_ZHONGNIAO+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBD);}
LACK -67
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_ZHONGNIAO+16
SACL *+
LALK _HANZI_ZHONGNIAO+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _TIGHT_BILI
SBRK 7
L46:
.line 31
;>>>> if(caidan==3)
LDPK _caidan
LAC _caidan
SUBK 3
BNZ L47
.line 32
;>>>> {TIGHT_BILI(1,HANZI_CON,HANZI_ZHONGNIAO,HANZI_ZHONGNIAO+16,HANZI_HENGLIE,HANZI_HENGLIE+16,0xFFBD);
LACK -67
SACL *+
LALK _HANZI_HENGLIE+16
SACL *+
LALK _HANZI_HENGLIE+0
SACL *+
LALK _HANZI_ZHONGNIAO+16
SACL *+
LALK _HANZI_ZHONGNIAO+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _TIGHT_BILI
SBRK 7
.line 33
;>>>> DAOZHILING(2,HANZI_CON);}
MAR * ,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _DAOZHILING
SBRK 2
L47:
.line 34
;>>>> if(caidan==4)
LDPK _caidan
LAC _caidan
SUBK 4
BNZ L48
.line 35
;>>>> {DAOZHILING(1,HANZI_CON);
MAR * ,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 1
SACL *+
CALL _DAOZHILING
SBRK 2
.line 36
;>>>> TIGHT_BILI(2,HANZI_CON,HANZI_BILI,HANZI_BILI+16,HANZI_YINZI,HANZI_YINZI+16,0xFFB9);}
LACK -71
SACL *+
LALK _HANZI_YINZI+16
SACL *+
LALK _HANZI_YINZI+0
SACL *+
LALK _HANZI_BILI+16
SACL *+
LALK _HANZI_BILI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
LACK 2
SACL *+
CALL _TIGHT_BILI
SBRK 7
L48:
.line 37
;>>>> if(caidan==4)
LDPK _caidan
LAC _caidan
SUBK 4
BNZ L49
.line 38
;>>>> caidan=1;
;>>>> else
LACK 1
SACL _caidan
B L44
L49:
.line 40
;>>>> caidan=caidan+1;
ADDK 5
SACL _caidan
L44:
.line 42
;>>>> if(KEY_UP==1)
;>>>> switch(caidan)
;>>>> case 1:
LDPK _KEY_UP
LAC _KEY_UP
SUBK 1
BNZ L51
B L52
L53:
.line 47
;>>>> if(pin_num1==4)
LDPK _pin_num1
LAC _pin_num1
SUBK 4
BNZ L54
.line 48
;>>>> pin_num1=1;
;>>>> else
LACK 1
SACL _pin_num1
B L55
L54:
.line 50
;>>>> pin_num1=pin_num1+1;
ADDK 5
SACL _pin_num1
L55:
.line 51
;>>>> LCD_NUM(pin_num1,0xFFB9);
MAR * ,AR1
LACK -71
SACL *+
BLKD _pin_num1+0,*+
CALL _LCD_NUM
SBRK 2
.line 52
;>>>> break;
;>>>> case 2:
B L51
L57:
.line 54
;>>>> if(pin_num2==32)
LDPK _pin_num2
LAC _pin_num2
SUBK 32
BNZ L58
.line 55
;>>>> pin_num2=5;
;>>>> else
LACK 5
SACL _pin_num2
B L59
L58:
.line 57
;>>>> pin_num2=pin_num2+1;
ADDK 33
SACL _pin_num2
L59:
.line 58
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -