📄 slq.asm
字号:
INCLUDE "SLQ.H"
INCLUDE "P16C65.INC"
LIST P=16C65
START ORG .0
GOTO MAIN
NOP
NOP
NOP
ZD00 ORG .4
MOVWF TMP_W
MOVF STATUS , .0
MOVWF TMP_OPTION
BTFSC INTCON ,INTF
GOTO ZD01
BCF INTCON,T0IF
;BTFSS WB, .0
;GOTO ZD02
;BCF WB, .0
;MOVLW .1
;MOVWF JS
ZD02 MOVF JS, .0
CALL TABLE
MOVWF TMR0
MOVF JS, .0
SUBWF L1, .0
BTFSS STATUS ,C
GOTO ZD03
BSF PORTE, .0
ZD04 MOVF JS, .0
SUBWF L2, .0
BTFSS STATUS,C
GOTO ZD05
BSF PORTB, .1
ZD06 MOVF JS, .0
SUBWF L3, .0
BTFSS STATUS,C
GOTO ZD07
BSF PORTB, .2
ZD08 MOVF JS, .0
SUBWF L4, .0
BTFSS STATUS,C
GOTO ZD09
BSF PORTB, .3
ZD10 MOVF JS, .0
SUBWF L5, .0
BTFSS STATUS,C
GOTO ZD11
BSF PORTB, .4
ZD12 MOVF JS, .0
SUBWF L6, .0
BTFSS STATUS, C
GOTO ZD13
BSF PORTB, .5
ZD14 MOVF JS, .0
SUBWF L7, .0
BTFSS STATUS ,C
GOTO ZD15
BSF PORTB, .6
ZD16 MOVF JS, .0
SUBWF L8, .0
BTFSS STATUS ,C
GOTO ZD17
BSF PORTB, .7
ZD18 MOVF JS , .0
SUBWF L9, .0
BTFSS STATUS, C
GOTO ZD19
BSF PORTC, .0
ZD20 MOVF JS , .0
SUBWF L10, .0
BTFSS STATUS ,C
GOTO ZD21
BSF PORTC, .1
ZD22 MOVF JS , .0
SUBWF L11, .0
BTFSS STATUS ,C
GOTO ZD23
BSF PORTC, .2
ZD24 MOVF JS , .0
SUBWF L12, .0
BTFSS STATUS ,C
GOTO ZD25
BSF PORTC, .3
ZD26 MOVF JS , .0
SUBWF L13, .0
BTFSS STATUS ,C
GOTO ZD27
BSF PORTC, .4
ZD28 MOVF JS , .0
SUBWF L14, .0
BTFSS STATUS ,C
GOTO ZD29
BSF PORTC, .5
ZD30 MOVF JS , .0
SUBWF L15, .0
BTFSS STATUS ,C
GOTO ZD31
BSF PORTC, .6
ZD32 MOVF JS , .0
SUBWF L16, .0
BTFSS STATUS ,C
GOTO ZD33
BSF PORTC, .7
ZD34 MOVF JS , .0
SUBWF L17, .0
BTFSS STATUS ,C
GOTO ZD35
BSF PORTD, .0
ZD36 MOVF JS , .0
SUBWF L18, .0
BTFSS STATUS ,C
GOTO ZD37
BSF PORTD, .1
ZD38 MOVF JS , .0
SUBWF L19, .0
BTFSS STATUS ,C
GOTO ZD39
BSF PORTD, .2
ZD40 MOVF JS , .0
SUBWF L20, .0
BTFSS STATUS ,C
GOTO ZD41
BSF PORTD, .3
ZD42 MOVF JS , .0
SUBWF L21, .0
BTFSS STATUS ,C
GOTO ZD43
BSF PORTD, .4
ZD44 MOVF JS , .0
SUBWF L22, .0
BTFSS STATUS ,C
GOTO ZD45
BSF PORTD, .5
ZD46 MOVF JS , .0
SUBWF L23, .0
BTFSS STATUS ,C
GOTO ZD47
BSF PORTD, .6
ZD48 MOVF JS , .0
SUBWF L24, .0
BTFSS STATUS ,C
GOTO ZD49
BSF PORTD, .7
ZD50 INCF JS, .1
ZD51 MOVF TMP_OPTION , .0
MOVWF STATUS
MOVF TMP_W, .0
RETURN
ZD01 BCF INTCON,INTF
;BSF WB, .0
INCF FB, .1
MOVLW .1
MOVWF JS
GOTO ZD02
TABLE ADDWF PCL, .1
NOP
RETLW W1
RETLW W2
RETLW W3
RETLW W4
RETLW W5
RETLW W6
RETLW W7
RETLW W8
RETLW W9
RETLW W10
RETLW W11
RETLW W12
RETLW W13
RETLW W14
RETLW W15
RETLW W16
RETLW W17
RETLW W18
RETLW W19
RETLW W20
RETLW W21
RETLW W22
RETLW W23
RETLW W24
RETLW W24
RETLW W24
RETLW W24
ZD03 BCF PORTE, .0
GOTO ZD04
ZD05 BCF PORTB, .1
GOTO ZD06
ZD07 BCF PORTB, .2
GOTO ZD08
ZD09 BCF PORTB, .3
GOTO ZD10
ZD11 BCF PORTB, .4
GOTO ZD12
ZD13 BCF PORTB, .5
GOTO ZD14
ZD15 BCF PORTB, .6
GOTO ZD16
ZD17 BCF PORTB, .7
GOTO ZD18
ZD19 BCF PORTC, .0
GOTO ZD20
ZD21 BCF PORTC, .1
GOTO ZD22
ZD23 BCF PORTC, .2
GOTO ZD24
ZD25 BCF PORTC, .3
GOTO ZD26
ZD27 BCF PORTC, .4
GOTO ZD28
ZD29 BCF PORTC, .5
GOTO ZD30
ZD31 BCF PORTC, .6
GOTO ZD32
ZD33 BCF PORTC, .7
GOTO ZD34
ZD35 BCF PORTD, .0
GOTO ZD36
ZD37 BCF PORTD, .1
GOTO ZD38
ZD39 BCF PORTD, .2
GOTO ZD40
ZD41 BCF PORTD, .3
GOTO ZD42
ZD43 BCF PORTD, .4
GOTO ZD44
ZD45 BCF PORTD, .5
GOTO ZD46
ZD47 BCF PORTD, .6
GOTO ZD48
ZD49 BCF PORTD, .7
GOTO ZD50
JP00 BSF PORTA, .2
NOP
BTFSC XS, .7
GOTO JP01
BSF PORTE, .1
JP02 BTFSC XS, .4
GOTO JP03
BSF PORTE, .2
JP04 MOVLW .128
MOVWF K
CALL CS00
MOVLW .16
MOVWF K
CALL CS00
BCF PORTA, .2
NOP
BSF PORTA, .3
NOP
BTFSC XS, .6
GOTO JP05
BSF PORTE, .1
JP06 BTFSC XS, .2
GOTO JP07
BSF PORTE, .2
JP08 MOVLW .64
MOVWF K
CALL CS00
MOVLW .8
MOVWF K
CALL CS00
BCF PORTA, .3
NOP
BSF PORTA, .4
NOP
BTFSC XS, .5
GOTO JP09
BSF PORTE, .1
JP10 BTFSC XS, .1
GOTO JP11
BSF PORTE, .2
JP12 MOVLW .32
MOVWF K
CALL CS00
MOVLW .4
MOVWF K
CALL CS00
BCF PORTA, .4
NOP
BSF PORTA, .5
NOP
BTFSC XS, .4
GOTO JP13
BSF PORTE, .1
JP14 MOVLW .150
CALL YS00
BCF PORTA, .5
NOP
BTFSS AX, .0
GOTO JP00
RETURN
JP01 BCF PORTE, .1
NOP
GOTO JP02
JP03 BCF PORTE, .2
NOP
GOTO JP04
JP05 BCF PORTE, .1
NOP
GOTO JP06
JP07 BCF PORTE, .2
NOP
GOTO JP08
JP09 BCF PORTE, .1
NOP
GOTO JP10
JP11 BCF PORTE, .2
NOP
GOTO JP12
JP13 BCF PORTE, .1
NOP
GOTO JP14
CS00 MOVLW .30
SUBWF K, .0
BTFSC STATUS, C
GOTO CS01
BTFSS PORTA, .1
GOTO CS03
CS02 MOVF K, .0
ANDWF YX, .0
BTFSC STATUS, Z
GOTO CS04
BTFSS YX, .0
GOTO CS06
MOVF K, .0
ANDWF AX, .0
BTFSC STATUS,Z
GOTO CS04
INCF YS, .1
MOVF YS, .0
SUBWF JY, .0
BTFSC STATUS,Z
GOTO CS07
CS04 MOVLW .75
CALL YS00
RETURN
CS01 BTFSC PORTA, .0
GOTO CS02
CS03 MOVF K, .0
ANDWF AX, .0
BTFSC STATUS , Z
GOTO CS04
BTFSS YX, .1
GOTO CS05
BSF YX, .1
CALL AJ00
CS05 COMF K, .0
IORWF AX , .1
BSF YX, .0
MOVLW .1
MOVWF YS
GOTO CS04
CS06 BSF YX, .0
MOVF K, .0
IORWF AX , .1
MOVLW .1
MOVWF YS
GOTO CS04
CS07 BSF YX, .1
GOTO CS04
AJ00 MOVLW .128
SUBWF K, .0
BTFSC STATUS,Z
GOTO AJ01
MOVLW .64
SUBWF K, .0
BTFSC STATUS,Z
GOTO AJ02
MOVLW .32
SUBWF K, .0
BTFSC STATUS,Z
GOTO AJ03
MOVLW .16
SUBWF K, .0
BTFSC STATUS,Z
GOTO AJ04
MOVLW .8
SUBWF K, .0
BTFSC STATUS,Z
GOTO AJ05
CALL K600
AJ06 RETURN
AJ01 CALL K100
GOTO AJ06
AJ02 CALL K200
GOTO AJ06
AJ03 CALL K300
GOTO AJ06
AJ04 CALL K400
GOTO AJ06
AJ05 CALL K500
GOTO AJ06
K100 MOVLW .255
MOVWF XS
MOVLW .96
MOVWF YX
RETURN
K200 MOVLW .0
MOVWF XS
MOVLW .128
MOVWF YX
BSF AX, .0
RETURN
K300 MOVLW .1
SUBWF GN, .0
BTFSC STATUS,Z
GOTO K301
MOVLW .2
SUBWF GN, .0
BTFSC STATUS,Z
GOTO K302
MOVLW .3
SUBWF GN, .0
BTFSC STATUS,Z
GOTO K303
MOVLW .4
SUBWF GN, .0
BTFSC STATUS,Z
GOTO K304
INCF GN, .1
MOVLW .5
SUBWF GN, .0
BTFSS STATUS,Z
GOTO K305
MOVLW .1
MOVWF GN
K305 RETURN
K301 MOVLW .128
MOVWF XS
MOVLW .120
MOVWF YX
MOVLW .1
MOVWF GH
GOTO K305
K302 MOVLW .64
MOVWF XS
MOVLW .120
MOVWF YX
MOVLW .2
MOVWF GH
GOTO K305
K303 MOVLW .32
MOVWF XS
MOVLW .120
MOVWF YX
MOVLW .3
MOVWF GH
GOTO K305
K304 MOVLW .24
MOVWF XS
MOVLW .124
MOVWF YX
MOVLW .4
MOVWF GH
GOTO K305
K600 INCF SG, .1
MOVLW .4
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K601
K602 MOVLW .1
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K603
MOVLW .2
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K604
MOVLW .3
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K605
K606 RETURN
K601 MOVLW .24
MOVWF SG
GOTO K602
K603 MOVLW .24
MOVWF XS
GOTO K606
K604 MOVLW .20
MOVWF XS
GOTO K606
K605 MOVLW .18
MOVWF XS
GOTO K606
K400 MOVLW .1
SUBWF GH, .0
BTFSC STATUS, Z
GOTO K401
MOVLW .2
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K403
MOVLW .3
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K405
MOVLW .4
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K407
K408 RETURN
K401 MOVLW .1
MOVWF TS
INCF TB, .1
MOVLW .25
SUBWF TB, .0
BTFSS STATUS,Z
GOTO K402
MOVLW .1
MOVWF TB
MOVLW .0
MOVWF ZTA
CALL KM00
K402 MOVF TB, .0
MOVWF ZTA
BSF ZTB, .0
CALL KN00
GOTO K408
K403 INCF HS, .1
MOVLW .11
SUBWF HS, .0
BTFSS STATUS,Z
GOTO K404
MOVLW .1
MOVWF HS
K404 MOVLW .0
MOVWF ZTA
CALL KM00
MOVF HS, .0
MOVWF ZTA
BSF ZTB, .0
CALL KN00
GOTO K408
K405 INCF TG, .1
MOVLW .25
SUBWF TG, .0
BTFSS STATUS,Z
GOTO K406
MOVLW .1
MOVWF TG
K406 MOVF TG, .0
MOVWF ZTA
CALL KM00
GOTO K408
K407 MOVLW .1
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K412
MOVLW .2
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K410
MOVLW .3
SUBWF SG, .0
BTFSC STATUS,Z
GOTO K411
GOTO K408
K412 INCF RE, .1
MOVLW .25
SUBWF RE, .0
BTFSS STATUS,Z
GOTO K409
MOVLW .0
MOVWF RE
GOTO K409
K410 INCF YE, .1
MOVLW .25
SUBWF YE, .0
BTFSS STATUS,Z
GOTO K409
MOVLW .0
MOVWF YE
GOTO K409
K411 INCF BL, .1
MOVLW .25
SUBWF BL, .0
BTFSS STATUS,Z
GOTO K409
MOVLW .0
MOVWF BL
K409 CALL KL00
GOTO K408
K500 MOVLW .1
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K501
MOVLW .2
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K503
MOVLW .3
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K505
MOVLW .4
SUBWF GH, .0
BTFSC STATUS,Z
GOTO K507
K502 RETURN
K501 MOVF TB, .0
MOVWF ZTA
BCF ZTB, .0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -