?? robotgoat.asm
字號:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;RUN LOCAL
ALOCAL CALL TURN0
CALL TLOCAL1
ALOCAL1 BTFSS FLAG,1
GOTO ALOCAL1
BTFSS FLAG,0
GOTO ALOCAL1
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TURN3
ALOCAL2 BTFSS FLAG,1
GOTO ALOCAL2
BTFSS FLAG,0
GOTO ALOCAL2
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TLOCAL3
ALOCAL3 BTFSS FLAG,1
GOTO ALOCAL3
BTFSS FLAG,0
GOTO ALOCAL3
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TURN6
ALOCAL4 BTFSS FLAG,1
GOTO ALOCAL4
BTFSS FLAG,0
GOTO ALOCAL4
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
DECFSZ COUNT,F
GOTO ALOCAL
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;go BACK
ABACK CALL TURN0
CALL TBACK1
ABACK1 BTFSS FLAG,1
GOTO ABACK1
BTFSS FLAG,0
GOTO ABACK1
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TBACK2
ABACK2 BTFSS FLAG,1
GOTO ABACK2
BTFSS FLAG,0
GOTO ABACK2
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TURN3
ABACK3 BTFSS FLAG,1
GOTO ABACK3
BTFSS FLAG,0
GOTO ABACK3
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TBACK4
ABACK4 BTFSS FLAG,1
GOTO ABACK4
BTFSS FLAG,0
GOTO ABACK4
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TBACK5
ABACK5 BTFSS FLAG,1
GOTO ABACK5
BTFSS FLAG,0
GOTO ABACK5
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TURN6
ABACK6 BTFSS FLAG,1
GOTO ABACK6
BTFSS FLAG,0
GOTO ABACK6
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
DECFSZ COUNT,F
GOTO ABACK
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ROTATE
AROT CALL TURN0
CALL TROT1
AROT1 BTFSS FLAG,1
GOTO AROT1
BTFSS FLAG,0
GOTO AROT1
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TROT2
AROT2 BTFSS FLAG,1
GOTO AROT2
BTFSS FLAG,0
GOTO AROT2
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TROT3
AROT3 BTFSS FLAG,1
GOTO AROT3
BTFSS FLAG,0
GOTO AROT3
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TROT4
AROT4 BTFSS FLAG,1
GOTO AROT4
BTFSS FLAG,0
GOTO AROT4
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TROT5
AROT5 BTFSS FLAG,1
GOTO AROT5
BTFSS FLAG,0
GOTO AROT5
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
CALL TROT6
AROT6 BTFSS FLAG,1
GOTO AROT6
BTFSS FLAG,0
GOTO AROT6
CALL SETT
MOVF TALLC,W
MOVWF TCOUNT
CALL DELAY
DECFSZ COUNT,F
GOTO AROT
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;20ms*W(n)
DELAY MOVF TCOUNT,W
MOVWF XC
LOOPA MOVLW D'131'
MOVWF YC
LOOPB MOVLW D'253'
MOVWF ZC
LOOPC DECFSZ ZC,1
GOTO LOOPC
DECFSZ YC,1
GOTO LOOPB
MOVLW D'5'
MOVWF COUNT1
LOOPD NOP
NOP
NOP
NOP
NOP
DECFSZ COUNT1,1
GOTO LOOPD
DECFSZ XC,1
GOTO LOOPA
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SETT MOVLW D'4'
MOVWF TCOUNT
CALL DELAY
CLRF FLAG
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TURN0 MOVLW -(D'1550'*D'5')/D'256'
MOVWF T0_TEMP
MOVWF T1_TEMP
MOVWF T2_TEMP
MOVWF T3_TEMP
MOVWF T4_TEMP
MOVWF T5_TEMP
MOVWF T6_TEMP
MOVWF T7_TEMP
MOVLW -(D'1550'*D'5')%D'256'
MOVWF T0_RE
MOVWF T1_RE
MOVWF T2_RE
MOVWF T3_RE
MOVWF T4_RE
MOVWF T5_RE
MOVWF T6_RE
MOVWF T7_RE
MOVLW -(D'1050'*D'5')/D'256'
MOVWF T0_TEMP0
MOVWF T1_TEMP0
MOVWF T2_TEMP0
MOVWF T3_TEMP0
MOVWF T4_TEMP0
MOVWF T5_TEMP0
MOVWF T6_TEMP0
MOVLW -(D'990'*D'5')/D'256'
MOVWF T7_TEMP0
MOVLW -(D'1050'*D'5')%D'256'
MOVWF T0_RE0
MOVWF T1_RE0
MOVWF T2_RE0
MOVWF T3_RE0
MOVWF T4_RE0
MOVWF T5_RE0
MOVWF T6_RE0
MOVLW -(D'990'*D'5')%D'256'
MOVWF T7_RE0
MOVLW -(D'1500'*D'5')/D'256'
MOVWF T8_TEMP
MOVWF T9_TEMP
MOVWF TA_TEMP
MOVWF TB_TEMP
MOVLW -(D'1000'*D'5')/D'256'
MOVWF T8_TEMP0
MOVWF T9_TEMP0
MOVWF TA_TEMP0
MOVLW -(D'11150'*D'5')/D'256'
MOVWF TB_TEMP0
RETURN
TURN1 MOVLW -(D'1850'*D'5')/D'256'
MOVWF T0_TEMP
MOVLW -(D'1250'*D'5')/D'256'
MOVWF T1_TEMP
MOVLW -(D'1250'*D'5')/D'256'
MOVWF T6_TEMP
MOVLW -(D'1850'*D'5')/D'256'
MOVWF T7_TEMP
MOVLW -(D'1850'*D'5')%D'256'
MOVWF T0_RE
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T1_RE
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T6_RE
MOVLW -(D'1850'*D'5')%D'256'
MOVWF T7_RE
MOVLW -(D'750'*D'5')/D'256'
MOVWF T0_TEMP0
MOVLW -(D'1350'*D'5')/D'256'
MOVWF T1_TEMP0
MOVLW -(D'1350'*D'5')/D'256'
MOVWF T6_TEMP0
MOVLW -(D'690'*D'5')/D'256'
MOVWF T7_TEMP0
MOVLW -(D'750'*D'5')%D'256'
MOVWF T0_RE0
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T1_RE0
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T6_RE0
MOVLW -(D'690'*D'5')%D'256'
MOVWF T7_RE0
MOVLW -(D'1700'*D'5')/D'256'
MOVWF T8_TEMP
MOVLW -(D'1300'*D'5')/D'256'
MOVWF TB_TEMP
MOVLW -(D'800'*D'5')/D'256'
MOVWF T8_TEMP0
MOVLW -(D'11350'*D'5')/D'256'
MOVWF TB_TEMP0
RETURN
TURN2 MOVLW -(D'1700'*D'5')/D'256'
MOVWF T9_TEMP
MOVLW -(D'1300'*D'5')/D'256'
MOVWF TA_TEMP
MOVLW -(D'800'*D'5')/D'256'
MOVWF T9_TEMP0
MOVLW -(D'1200'*D'5')/D'256'
MOVWF TA_TEMP0
RETURN
TURN3 MOVLW -(D'1550'*D'5')/D'256'
MOVWF T0_TEMP
MOVWF T1_TEMP
MOVWF T6_TEMP
MOVWF T7_TEMP
MOVLW -(D'1550'*D'5')%D'256'
MOVWF T0_RE
MOVWF T1_RE
MOVWF T6_RE
MOVWF T7_RE
MOVLW -(D'1050'*D'5')/D'256'
MOVWF T0_TEMP0
MOVWF T1_TEMP0
MOVWF T6_TEMP0
MOVLW -(D'990'*D'5')/D'256'
MOVWF T7_TEMP0
MOVLW -(D'1050'*D'5')%D'256'
MOVWF T0_RE0
MOVWF T1_RE0
MOVWF T6_RE0
MOVLW -(D'990'*D'5')%D'256'
MOVWF T7_RE0
RETURN
TURN4 MOVLW -(D'1250'*D'5')/D'256'
MOVWF T2_TEMP
MOVLW -(D'1850'*D'5')/D'256'
MOVWF T3_TEMP
MOVLW -(D'1850'*D'5')/D'256'
MOVWF T4_TEMP
MOVLW -(D'1250'*D'5')/D'256'
MOVWF T5_TEMP
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T2_RE
MOVLW -(D'1850'*D'5')%D'256'
MOVWF T3_RE
MOVLW -(D'1850'*D'5')%D'256'
MOVWF T4_RE
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T5_RE
MOVLW -(D'1350'*D'5')/D'256'
MOVWF T2_TEMP0
MOVLW -(D'750'*D'5')/D'256'
MOVWF T3_TEMP0
MOVLW -(D'750'*D'5')/D'256'
MOVWF T4_TEMP0
MOVLW -(D'1350'*D'5')/D'256'
MOVWF T5_TEMP0
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T2_RE0
MOVLW -(D'750'*D'5')%D'256'
MOVWF T3_RE0
MOVLW -(D'750'*D'5')%D'256'
MOVWF T4_RE0
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T5_RE0
MOVLW -(D'1300'*D'5')/D'256'
MOVWF T9_TEMP
MOVLW -(D'1700'*D'5')/D'256'
MOVWF TA_TEMP
MOVLW -(D'1200'*D'5')/D'256'
MOVWF T9_TEMP0
MOVLW -(D'800'*D'5')/D'256'
MOVWF TA_TEMP0
RETURN
TURN5 MOVLW -(D'1300'*D'5')/D'256'
MOVWF T8_TEMP
MOVLW -(D'1700'*D'5')/D'256'
MOVWF TB_TEMP
MOVLW -(D'1200'*D'5')/D'256'
MOVWF T8_TEMP0
MOVLW -(D'10950'*D'5')/D'256'
MOVWF TB_TEMP0
RETURN
TURN6 MOVLW -(D'1550'*D'5')/D'256'
MOVWF T2_TEMP
MOVWF T3_TEMP
MOVWF T4_TEMP
MOVWF T5_TEMP
MOVLW -(D'1550'*D'5')%D'256'
MOVWF T2_RE
MOVWF T3_RE
MOVWF T4_RE
MOVWF T5_RE
MOVLW -(D'1050'*D'5')/D'256'
MOVWF T2_TEMP0
MOVWF T3_TEMP0
MOVWF T4_TEMP0
MOVWF T5_TEMP0
MOVLW -(D'1050'*D'5')%D'256'
MOVWF T2_RE0
MOVWF T3_RE0
MOVWF T4_RE0
MOVWF T5_RE0
RETURN
TURN7 MOVLW -(D'1850'*D'5')/D'256'
MOVWF T0_TEMP
MOVWF T3_TEMP
MOVLW -(D'1250'*D'5')/D'256'
MOVWF T1_TEMP
MOVWF T2_TEMP
MOVLW -(D'1850'*D'5')%D'256'
MOVWF T0_RE
MOVWF T3_RE
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T1_RE
MOVWF T2_RE
MOVLW -(D'750'*D'5')/D'256'
MOVWF T0_TEMP0
MOVWF T3_TEMP0
MOVLW -(D'1350'*D'5')/D'256'
MOVWF T1_TEMP0
MOVWF T2_TEMP0
MOVLW -(D'750'*D'5')%D'256'
MOVWF T0_RE0
MOVWF T3_RE0
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T1_RE0
MOVWF T2_RE0
RETURN
TURN8 MOVLW -(D'1850'*D'5')/D'256'
MOVWF T4_TEMP
MOVWF T7_TEMP
MOVLW -(D'1250'*D'5')/D'256'
MOVWF T5_TEMP
MOVWF T6_TEMP
MOVLW -(D'1850'*D'5')%D'256'
MOVWF T4_RE
MOVWF T7_RE
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T5_RE
MOVWF T6_RE
MOVLW -(D'750'*D'5')/D'256'
MOVWF T4_TEMP0
MOVLW -(D'690'*D'5')/D'256'
MOVWF T7_TEMP0
MOVLW -(D'1350'*D'5')/D'256'
MOVWF T5_TEMP0
MOVWF T6_TEMP0
MOVLW -(D'750'*D'5')%D'256'
MOVWF T4_RE0
MOVLW -(D'690'*D'5')%D'256'
MOVWF T7_RE0
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T5_RE0
MOVWF T6_RE0
RETURN
TURN9 MOVLW -(D'2000'*D'5')/D'256'
MOVWF T8_TEMP
MOVLW -(D'1000'*D'5')/D'256'
MOVWF T9_TEMP
MOVLW -(D'500'*D'5')/D'256'
MOVWF T8_TEMP0
MOVLW -(D'1500'*D'5')/D'256'
MOVWF T9_TEMP0
RETURN
TURN10 MOVLW -(D'1000'*D'5')/D'256'
MOVWF TA_TEMP
MOVLW -(D'2000'*D'5')/D'256'
MOVWF TB_TEMP
MOVLW -(D'1500'*D'5')/D'256'
MOVWF TA_TEMP0
MOVLW -(D'10650'*D'5')/D'256'
MOVWF TB_TEMP0
RETURN
TSIT MOVLW -(D'1350'*D'5')/D'256'
MOVWF T0_TEMP
MOVLW -(D'1750'*D'5')/D'256'
MOVWF T2_TEMP
MOVLW -(D'1900'*D'5')/D'256'
MOVWF T4_TEMP
MOVLW -(D'650'*D'5')/D'256'
MOVWF T5_TEMP
MOVLW -(D'1200'*D'5')/D'256'
MOVWF T6_TEMP
MOVLW -(D'2450'*D'5')/D'256'
MOVWF T7_TEMP
MOVLW -(D'1350'*D'5')%D'256'
MOVWF T0_RE
MOVLW -(D'1750'*D'5')%D'256'
MOVWF T2_RE
MOVLW -(D'1900'*D'5')%D'256'
MOVWF T4_RE
MOVLW -(D'650'*D'5')%D'256'
MOVWF T5_RE
MOVLW -(D'1200'*D'5')%D'256'
MOVWF T6_RE
MOVLW -(D'2450'*D'5')%D'256'
MOVWF T7_RE
MOVLW -(D'1250'*D'5')/D'256'
MOVWF T0_TEMP0
MOVLW -(D'850'*D'5')/D'256'
MOVWF T2_TEMP0
MOVLW -(D'700'*D'5')/D'256'
MOVWF T4_TEMP0
MOVLW -(D'1950'*D'5')/D'256'
MOVWF T5_TEMP0
MOVLW -(D'1400'*D'5')/D'256'
MOVWF T6_TEMP0
MOVLW -(D'90'*D'5')/D'256'
MOVWF T7_TEMP0
MOVLW -(D'1250'*D'5')%D'256'
MOVWF T0_RE0
MOVLW -(D'850'*D'5')%D'256'
MOVWF T2_RE0
MOVLW -(D'700'*D'5')%D'256'
MOVWF T4_RE0
MOVLW -(D'1950'*D'5')%D'256'
MOVWF T5_RE0
MOVLW -(D'1400'*D'5')%D'256'
MOVWF T6_RE0
MOVLW -(D'90'*D'5')%D'256'
MOVWF T7_RE0
MOVLW -(D'1700'*D'5')/D'256'
MOVWF T8_TEMP
MOVLW -(D'1300'*D'5')/D'256'
MOVWF TA_TEMP
MOVLW -(D'800'*D'5')/D'256'
MOVWF T8_TEMP0
MOVLW -(D'1200'*D'5')/D'256'
MOVWF TA_TEMP0
RETURN
TSLEEP MOVLW -(D'1950'*D'5')/D'256'
MOVWF T0_TEMP
MOVLW -(D'650'*D'5')/D'256'
MOVWF T1_TEMP
MOVLW -(D'1150'*D'5')/D'256'
MOVWF T2_TEMP
MOVLW -(D'2450'*D'5')/D'256'
MOVWF T3_TEMP
MOVLW -(D'1900'*D'5')/D'256'
MOVWF T4_TEMP
MOVLW -(D'650'*D'5')/D'256'
MOVWF T5_TEMP
MOVLW -(D'1200'*D'5')/D'256'
MOVWF T6_TEMP
MOVLW -(D'2450'*D'5')/D'256'
MOVWF T7_TEMP
MOVLW -(D'1950'*D'5')%D'256'
MOVWF T0_RE
MOVLW -(D'650'*D'5')%D'256'
MOVWF T1_RE
MOVLW -(D'1150'*D'5')%D'256'
MOVWF T2_RE
MOVLW -(D'2450'*D'5')%D'256'
MOVWF T3_RE
MOVLW -(D'1900'*D'5')%D'256'
MOVWF T4_RE
MOVLW -(D'650'*D'5')%D'256'
MOVWF T5_RE
MOVLW -(D'1200'*D'5')%D'256'
MOVWF T6_RE
MOVLW -(D'2450'*D'5')%D'256'
MOVWF T7_RE
MOVLW -(D'650'*D'5')/D'256'
MOVWF T0_TEMP0
MOVLW -(D'1950'*D'5')/D'256'
MOVWF T1_TEMP0
MOVLW -(D'1450'*D'5')/D'256'
MOVWF T2_TEMP0
MOVLW -(D'90'*D'5')/D'256'
MOVWF T3_TEMP0
MOVLW -(D'700'*D'5')/D'256'
MOVWF T4_TEMP0
MOVLW -(D'1950'*D'5')/D'256'
MOVWF T5_TEMP0
MOVLW -(D'1400'*D'5')/D'256'
MOVWF T6_TEMP0
MOVLW -(D'90'*D'5')/D'256'
MOVWF T7_TEMP0
MOVLW -(D'650'*D'5')%D'256'
MOVWF T0_RE0
MOVLW -(D'1950'*D'5')%D'256'
MOVWF T1_RE0
MOVLW -(D'1450'*D'5')%D'256'
MOVWF T2_RE0
MOVLW -(D'90'*D'5')%D'256'
MOVWF T3_RE0
MOVLW -(D'700'*D'5')%D'256'
MOVWF T4_RE0
MOVLW -(D'1950'*D'5')%D'256'
MOVWF T5_RE0
MOVLW -(D'1400'*D'5')%D'256'
MOVWF T6_RE0
MOVLW -(D'90'*D'5')%D'256'
MOVWF T7_RE0
RETURN
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -