⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 secsys14.lst

📁 keeloq滚动码解码大全
💻 LST
📖 第 1 页 / 共 5 页
字号:
  00000009            00189 TRISA   EQU     1001B           ; PORTA: TRI-STATE VALUE
  00000008            00190 WRCFG   EQU     1000B           ; PORTA: EEPROM WRITE TRI-STATE VALUE
  00000009            00191 RDCFG   EQU     1001B           ; PORTA: EEPROM READ TRI-STATE VALUE
  00000000            00192 TRISB   EQU     00000000B       ; PORTB: TRI-STATE VALUE
  000000FF            00193 TRISC   EQU     11111111B       ; PORTC: TRI-STATE VALUE
  00000000            00194 E_OK    EQU     000H            ;  0  VALID RESPONSE
                      00195 
                      00196 ;****** STATE DEFINITIONS **************
  000000A5            00197 ARMEDS  EQU     0A5H            
  0000005A            00198 DRIVES  EQU     05AH
  0000003C            00199 IMMOBS  EQU     03CH
  000000C3            00200 LEARNS  EQU     0C3H
  00000042            00201 ALARMS  EQU     042H
                      00202 
                      00203 ;****** FLAGS DEFINITIONS **************
  00000000            00204 NORMAL  EQU     0H              ; NORMAL PROGRAM FLOW
  00000001            00205 PASS1   EQU     1H              ; LEARN FIRST PASS
  00000002            00206 PASS2   EQU     2H              ; LEARN SECOND PASS
  00000003            00207 LFLASH  EQU     3H              ; FLASH LED
  00000004            00208 PFLASH  EQU     4H              ; FLASH PLIGHT
  00000005            00209 NTQ106  EQU     5H              ; INDICATE NTQ106 TRANSMISSION RECEIVED
  00000006            00210 RESYNC  EQU     6H              ; RESYNCH ACTIVE BIT
  00000007            00211 RPT     EQU     7H              ; REPEATED CODE
MPASM 02.50 Released         SECSYS14.ASM   1-11-2002  15:33:39         PAGE  5


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00212 
                      00213 ;****** FLAGS1 DEFINITIONS **************
  00000000            00214 BITIN   EQU     0H              ; RF DATA BIT
  00000001            00215 S_RSTR  EQU     1H              ; FLAGS MUST BE RESTORED
  00000002            00216 ENTRY   EQU     2H              ; ENTRY FLAG            
  00000003            00217 BAT_LOW EQU     3H              ; ENCODER BATTERY LOW INDICATOR
                      00218 
                      00219 
                      00220 ;****** STATUS REGISTER BIT DEFINITIONS *****************
  00000000            00221 CARRY   EQU       0             ; CARRY
  00000001            00222 DC      EQU       1             ; DIGIT CARRY
  00000002            00223 ZERO    EQU       2             ; ZERO
  00000003            00224 PD      EQU       3             ; POWER DOWN
  00000004            00225 TO      EQU       4             ; TIMEOUT
  00000005            00226 PA0     EQU       5             ; PAGE SELECT [0 OR 1]
  00000006            00227 PA1     EQU       6             ; PAGE SELECT [0 OR 1]
  00000007            00228 OVF     EQU       7             ; RTCC OVERFLOW
                      00229 
                      00230 ;**************************************************************************
                      00231 ; PAGE 0: 
                      00232 ;**************************************************************************
0000                  00233         ORG 00H
                      00234 
                      00235 ;**************************************************************************
                      00236 ;
                      00237 ; FUNCTION     : RESET ()                               
                      00238 ;
                      00239 ; DESCRIPTION  : PROGRAM RESET ROUTINE
                      00240 ;
                      00241 ; PAGE          : 0
                      00242 ;
                      00243 ;**************************************************************************
0000                  00244 RESET   
0000   0C07           00245         MOVLW   00000111B               ; SETUP RTCC PRESCALER
0001   0002           00246         OPTION                          ; 1 : 256
                      00247 
0002   05A3           00248         BSF     STATUS,PA0              ; SELECT PAGE #1
0003   0AB4           00249         GOTO    RESET_P1                ; GOTO MAIN PROGRAM LOOP
                      00250 
                      00251 ;**************************************************************************
                      00252 ; UPPER PAGE CALLS
                      00253 ;**************************************************************************
                      00254 
0004   0B71           00255 SENDC   GOTO    SENDC1                  ; UPPER PAGE CALL TO SENDC
                      00256 
0005                  00257 TST_LEARN
0005   0B49           00258         GOTO    TST_LEARN1              ; CALL LEARN BUTTON TEST ROUTINE
                      00259 
0006                  00260 TST_RTCC
0006   0B0B           00261         GOTO    TST_RTCC1
                      00262 
0007                  00263 EE_WRITE0
0007   0B8A           00264         GOTO    EEWRITE                 ; CALL EEPROM WRITE ROUTINE
MPASM 02.50 Released         SECSYS14.ASM   1-11-2002  15:33:39         PAGE  6


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00265 
0008                  00266 M_LOOP0
0008   05A3           00267         BSF     STATUS,PA0
0009   0B06           00268         GOTO    M_LOOP
                      00269 
                      00270 ;**************************************************************************
                      00271 ;
                      00272 ; FUNCTION      : ROT_SHIFT()                           
                      00273 ;
                      00274 ; DESCRIPTION   : RIGHT ROTATE 66 BIT RECEIVE SHIFT REGISTER
                      00275 ;
                      00276 ; PAGE          : 0
                      00277 ;
                      00278 ;**************************************************************************
000A                  00279 ROT_SHIFT
000A   032C           00280         RRF     CSR8,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER
000B   0337           00281         RRF     CSR7,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER
000C   0336           00282         RRF     CSR6,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER   
000D   0335           00283         RRF     CSR5,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER   
000E   0334           00284         RRF     CSR4,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER   
000F   032B           00285         RRF     CSR3,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER   
0010   032A           00286         RRF     CSR2,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER   
0011   0329           00287         RRF     CSR1,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER  
0012   0328           00288         RRF     CSR0,1                  ; [1] RIGHT ROTATE RECEIVE SHIFT REGISTER  
0013   0800           00289         RETLW   E_OK                    ; [2] 
                      00290 ;**************************************************************************
                      00291 ;
                      00292 ; FUNCTION      : ROTR()                                
                      00293 ;
                      00294 ; DESCRIPTION   : ROTATE 16 BIT SHIFT REGISTER RIGHT
                      00295 ;
                      00296 ; PAGE          : 0
                      00297 ;
                      00298 ;**************************************************************************
0014                  00299 ROTR
0014   0330           00300         RRF     TMP1,F
0015   0331           00301         RRF     TMP2,F
0016   04F0           00302         BCF     TMP1,7
0017   0603           00303         BTFSC   STATUS,CARRY
0018   05F0           00304         BSF     TMP1,7
0019   0800           00305         RETLW   0
                      00306 ;**************************************************************************
                      00307 ;
                      00308 ; FUNCTION      : ROTL()                                
                      00309 ;
                      00310 ; DESCRIPTION   : ROTATE 16 BIT SHIFT REGISTER LEFT
                      00311 ;
                      00312 ; PAGE          : 0
                      00313 ;
                      00314 ;**************************************************************************
001A                  00315 ROTL
001A   0371           00316         RLF     TMP2,F
001B   0370           00317         RLF     TMP1,F
MPASM 02.50 Released         SECSYS14.ASM   1-11-2002  15:33:39         PAGE  7


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

001C   0411           00318         BCF     TMP2,0
001D   0603           00319         BTFSC   STATUS,CARRY
001E   0511           00320         BSF     TMP2,0
001F   0800           00321         RETLW   0
                      00322 
                      00323 ;**************************************************************************
                      00324 ;
                      00325 ; FUNCTION      : EEREAD ()                             
                      00326 ;
                      00327 ; DESCRIPTION   : READ 16 BIT VALUE FROM EEPROM AND DECRYPT
                      00328 ;
                      00329 ; PAGE          : 0
                      00330 ;
                      00331 ;**************************************************************************
0020                  00332 EEREAD
0020   020C           00333         MOVFW   ADDRESS
0021   002E           00334         MOVWF   OUTBYT
0022   05EE           00335         BSF     OUTBYT,7                ; COMMAND = READ
0023   0904           00336         CALL    SENDC                   ; SEND COMMAND
0024   0C09           00337         MOVLW   RDCFG
0025   0005           00338         TRIS    PORTA                   ; DIO = INPUT
0026   0C10           00339         MOVLW   16D                     ; 16 BITS TO READ
0027   0039           00340         MOVWF   CNT1
                      00341 
0028   0525           00342 READ0   BSF     PORTA,CLK               ; CLOCK HIGH
0029   0371           00343         RLF     TMP2,F                  ; SHIFT LO BYTE
002A   0411           00344         BCF     TMP2,0                  ; ASSUME BIT WILL BE 0
002B   0605           00345         BTFSC   PORTA,DIO               ; READ DIO LINE
002C   0511           00346         BSF     TMP2,0                  ; COPY BIT TO REGISTER
002D   0425           00347         BCF     PORTA,CLK               ; CLOCK LOW
002E   0370           00348         RLF     TMP1,F                  ; SHIFT HI BYTE
002F   02F9           00349         DECFSZ  CNT1,F                  ; LOOP COUNTER
0030   0A28           00350         GOTO    READ0
0031   0445           00351         BCF     PORTA,CS                ; END READ CYCLE
                      00352 
                      00353 ; ******* DECRYPT 16-BIT WORD READ FROM EEPROM ***************
                      00354 
0032                  00355 IFNC    
0032   0C10           00356         MOVLW   16D
0033   0039           00357         MOVWF   CNT1
                      00358 
0034   091A           00359 IFNC1   CALL    ROTL
0035   0C07           00360         MOVLW   07H                     ; MASK ONLY LOWER 3 BITS
0036   0150           00361         ANDWF   TMP1,W
0037   002E           00362         MOVWF   OUTBYT                  ; TEMPORY STORE RESULT
0038   0C08           00363         MOVLW   (EE_KEY-KEYBASE)        ; GET BASE ADDRES OF EEPROM KEY
0039   01CE           00364         ADDWF   OUTBYT,W                ; ... AND ADD TO RESULT
003A   093F           00365         CALL    KEY_LOOKUP              ; KEY BYTE FROM KEY LOOKUP TABLE
003B   01B1           00366         XORWF   TMP2,F
003C   02F9           00367         DECFSZ  CNT1,F  
003D   0A34           00368         GOTO    IFNC1
                      00369 
003E   0800           00370         RETLW   0H
MPASM 02.50 Released         SECSYS14.ASM   1-11-2002  15:33:39         PAGE  8


LOC  OBJECT CODE     LINE SOURCE TEXT
  VALUE

                      00371 
                      00372 ;**************************************************************************
                      00373 ; Memory Map ROM Keys
                      00374 ;**************************************************************************
003F                  00375         ORG     3FH
003F                  00376 KEY_LOOKUP
003F   01E2           00377         ADDWF   PC,1                    ; ADD OFFSET TO PROGRAM COUNTER

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -