Например TDA7294

Форум РадиоКот • Просмотр темы - Изменить функцию в прошивке от сигнализации авто. PIC16F74
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вс июл 13, 2025 07:46:43

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 29 ]  1,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Изменить функцию в прошивке от сигнализации авто. PIC16F74
СообщениеДобавлено: Пн сен 23, 2024 19:48:07 
Родился

Зарегистрирован: Пт авг 18, 2017 21:38:31
Сообщений: 10
Рейтинг сообщения: 0
Приветствую всех!
Хочу переделать функцию от автомобильного двустороннего сигнализации. При активации сигнализации в охрану, активируются датчики объема и удара. Обе датчика подключены к одной линии 25 вывода PIC16F74 контроллера - вот только к датчику объему линия идет через сопротивление. Когда срабатывает датчик объема, то он сажает эту линию (через сопротивление) на массу и активируется предупреждающий сигнал для отпугивания воров и.т.п, а при активации датчика удара то звучит сирена секунд 25.

Так вот в чем дело. Не имеет значения который датчик сработал, удара или объема то, общее срабатывание не более чем 8 раз! После этого хоть кирпичом бей или стекла ломай пока не деактивируешь и заново не активируешь сигналку с ДУ пульта и опять она на 8 срабатывании! Хочу убрать это ограничение.

Что я проделал. Я слил с PIC16F74 прошивку и декомпилировал (.asm) его в MPLAB IDE v8.92. После этого немного подкорректировал его так как он не компилировался в программе (MPLAB X IDE v5.35). После компиляции и записи обратно в PIC, сигналка работает так как и работал раньше.

Собственно дошли до сути вопроса. Может ли кто посмотреть код и посоветовать как отключить это ограничение ? Я сам в этом не профи но как вижу, 25 ножка это RE0 (PORTE0) и я не могу обнаружить в коде обращение к нему чтобы хоть что-то изменить и проверить. Есть кто сможет понять где это функция реализован в коде и подсказать в каком месте ? Заранее спасибо!

Схему и код прилагаю.

Код ASM:
Спойлер
Код:
 LIST   P=16F74
 #include <p16F74.inc>
 __config (_WDT_ON & _PWRTE_ON & _CP_OFF & _BODEN_ON & _HS_OSC)
 


INDF             EQU  H'0000'
TMR0             EQU  H'0001'
PCL              EQU  H'0002'
STATUS           EQU  H'0003'
FSR              EQU  H'0004'
PORTA            EQU  H'0005'
PORTB            EQU  H'0006'
PORTC            EQU  H'0007'
PORTD            EQU  H'0008'
PORTE            EQU  H'0009'
PCLATH           EQU  H'000A'
INTCON           EQU  H'000B'
PIR1             EQU  H'000C'
PIR2             EQU  H'000D'
TMR1             EQU  H'000E'
TMR1L            EQU  H'000E'
TMR1H            EQU  H'000F'
T1CON            EQU  H'0010'
TMR2             EQU  H'0011'
T2CON            EQU  H'0012'
SSPBUF           EQU  H'0013'
SSPCON           EQU  H'0014'
CCPR1            EQU  H'0015'
CCPR1L           EQU  H'0015'
CCPR1H           EQU  H'0016'
CCP1CON          EQU  H'0017'
RCSTA            EQU  H'0018'
TXREG            EQU  H'0019'
RCREG            EQU  H'001A'
CCPR2            EQU  H'001B'
CCPR2L           EQU  H'001B'
CCPR2H           EQU  H'001C'
CCP2CON          EQU  H'001D'
ADRES            EQU  H'001E'
ADCON0           EQU  H'001F'
       
       
 ERRORLEVEL -306      
 org 0
 GOTO 0x139
 org 4

 MOVWF 0x20
 SWAPF STATUS, W
 BCF STATUS, 0x5
 MOVWF 0x2f
 BCF 0x2a, 0
 BTFSC PCLATH, 0x3
 BSF 0x2a, 0
 BCF PCLATH, 0x3
 BTFSC PIR1, 0x1
 GOTO 0x25
 BTFSC PIR1, 0x2
 GOTO 0x14
 BTFSS INTCON, 0x1
 GOTO 0x42
 BCF INTCON, 0x4
 GOTO 0x42
 BCF PIR1, 0x2
 BSF 0x28, 0x3
 MOVF 0x41, W
 BTFSC STATUS, 0x2
 GOTO 0x42
 BTFSS 0x72, 0x7
 BTFSS 0x72, 0x1
 BSF PORTD, 0x3
 DECF 0x41, F
 MOVF 0x65, W
 BTFSC STATUS, 0x2
 GOTO 0x42
 MOVF 0x41, W
 ANDLW 0x3
 BTFSC STATUS, 0x2
 BCF PORTD, 0x3
 GOTO 0x42
 BCF PIR1, 0x1
 BTFSC 0x2a, 0x7
 BTFSC PORTA, 0x4
 GOTO 0x3a
 MOVF 0x6f, W
 BTFSS 0x72, 0
 BTFSC STATUS, 0x2
 GOTO 0x3a
 BSF PCLATH, 0x3
 CALL 0x2a
 BCF PCLATH, 0x3
 MOVWF 0x4b
 BSF 0x73, 0x5
 BSF 0x73, 0x3
 MOVLW 0xd0
 IORWF PORTB, F
 BSF PORTD, 0x2
 BSF PORTC, 0x2
 CALL 0x8f
 MOVLW 0x96
 MOVWF 0x46
 MOVF 0x7d, F
 BTFSS STATUS, 0x2
 DECF 0x7d, F
 MOVF 0x4d, F
 BTFSS STATUS, 0x2
 DECFSZ 0x4d, F
 GOTO 0x42
 BCF PORTC, 0x5
 BTFSC 0x2a, 0
 BSF PCLATH, 0x3
 SWAPF 0x2f, W
 MOVWF STATUS
 SWAPF 0x20, F
 SWAPF 0x20, W
 RETFIE
 BSF PCLATH, 0x3
 GOTO 0x2f2
 BSF PCLATH, 0x3
 GOTO 0x2f4
 BSF PCLATH, 0x3
 GOTO 0x462
 BSF PCLATH, 0x3
 GOTO 0x29e
 BSF PCLATH, 0x3
 GOTO 0x4b8
 BSF PCLATH, 0x3
 GOTO 0x4ca
 BSF PCLATH, 0x3
 GOTO 0x4d7
 BSF PCLATH, 0x3
 GOTO 0x513
 BSF PCLATH, 0x3
 GOTO 0x55e
 BSF PCLATH, 0x3
 GOTO 0x559
 BSF PCLATH, 0x3
 GOTO 0x588
 BSF PCLATH, 0x3
 GOTO 0x5f9
 BSF PCLATH, 0x3
 GOTO 0x604
 BSF PCLATH, 0x3
 GOTO 0x608
 BSF PCLATH, 0x3
 GOTO 0x613
 BSF PCLATH, 0x3
 GOTO 0x617
 BSF PCLATH, 0x3
 GOTO 0x60f
 BSF PCLATH, 0x3
 GOTO 0x685
 BSF PCLATH, 0x3
 GOTO 0x687
 BSF PCLATH, 0x3
 GOTO 0x234
 BSF PCLATH, 0x3
 GOTO 0x237
 BSF PCLATH, 0x3
 GOTO 0x239
 BSF PCLATH, 0x3
 GOTO 0x1d8
 BSF PCLATH, 0x3
 GOTO 0x20b
 BSF PCLATH, 0x3
 GOTO 0x1fb
 BSF PCLATH, 0x3
 GOTO 0x203
 BSF PCLATH, 0x3
 GOTO 0x67b
 BSF PCLATH, 0x3
 GOTO 0x4a1
 BSF PCLATH, 0x3
 GOTO 0x49e
 BSF PCLATH, 0x3
 GOTO 0x5a4
 BSF PCLATH, 0x3
 GOTO 0x5a6
 BSF PCLATH, 0x3
 GOTO 0x4fa
 BSF PCLATH, 0x3
 GOTO 0x508
 BSF PCLATH, 0x3
 GOTO 0x5de
 BSF PCLATH, 0x3
 GOTO 0x7f1
 BSF PCLATH, 0x3
 GOTO 0x223
 BSF PCLATH, 0x3
 GOTO 0x22a
 BSF PCLATH, 0x3
 GOTO 0x5b4
 MOVLW 0xf4
 GOTO 0x9e
 MOVLW 0x92
 GOTO 0x9e
 MOVLW 0x62
 GOTO 0x9e
 MOVLW 0x31
 GOTO 0x9e
 MOVLW 0x18
 MOVWF 0x23
 CLRF 0x24
 CALL 0x4b
 GOTO 0xa2
 GOTO 0xa3
 DECFSZ 0x24, F
 GOTO 0xa1
 DECFSZ 0x23, F
 GOTO 0xa0
 RETURN
 MOVLW 0x3
 GOTO 0xb8
 MOVLW 0x7
 GOTO 0xb8
 MOVLW 0xb
 GOTO 0xb8
 MOVLW 0xf
 GOTO 0xb8
 MOVLW 0x13
 GOTO 0xb8
 MOVLW 0x17
 GOTO 0xb8
 MOVF 0x43, W
 BTFSS STATUS, 0x2
 RETURN
 MOVLW 0x27
 BSF 0x38, 0x1
 MOVWF 0x43
 RETURN
 MOVLW 0x2
 GOTO 0xc6
 MOVLW 0x4
 GOTO 0xc6
 MOVLW 0x6
 GOTO 0xc6
 MOVLW 0x8
 GOTO 0xc6
 MOVLW 0xa
 GOTO 0xc6
 MOVLW 0xc
 MOVWF 0x44
 BCF PORTC, 0x5
 RETURN
 MOVLW 0 
 GOTO 0xd4
 MOVLW 0x1
 GOTO 0xd4
 MOVLW 0x2
 GOTO 0xd4
 MOVLW 0x3
 GOTO 0xd4
 MOVLW 0x4
 GOTO 0xd4
 MOVLW 0x5
 BSF PCLATH, 0x3
 GOTO 0x239
 BTFSS 0x73, 0x1
 BTFSC 0x2a, 0x7
 RETURN
 BTFSS 0x72, 0x4
 RETURN
 BTFSS PORTB, 0x1
 GOTO 0xe1
 MOVF 0x6d, W
 SUBLW 0x1
 BTFSS STATUS, 0
 RETURN
 BSF PCLATH, 0x3
 CALL 0xc9
 MOVF ADRES, W
 SUBLW 0x66
 BTFSC STATUS, 0
 GOTO 0x289
 MOVF ADRES, W
 SUBLW 0xcd
 BTFSC STATUS, 0
 BTFSC 0x73, 0x2
 RETURN
 GOTO 0x274
 MOVLW 0x10
 GOTO 0x10a
 MOVLW 0x20
 GOTO 0x10a
 MOVLW 0x30
 GOTO 0x10a
 MOVLW 0x40
 GOTO 0x10a
 MOVLW 0x50
 GOTO 0x10a
 MOVLW 0x60
 GOTO 0x10a
 MOVLW 0x70
 GOTO 0x10a
 MOVLW 0x80
 GOTO 0x10a
 MOVLW 0x90
 GOTO 0x10a
 MOVLW 0xa0
 GOTO 0x10a
 MOVLW 0xb0
 GOTO 0x10a
 MOVLW 0xc0
 GOTO 0x10a
 MOVLW 0xd0
 GOTO 0x10a
 MOVLW 0xe0
 GOTO 0x10a
 MOVLW 0xf0
 MOVWF 0x24
 MOVLW 0xf
 ANDWF 0x3a, F
 MOVF 0x24, W
 IORWF 0x3a, F
 RETURN
 MOVLW 0xf0
 BSF STATUS, 0x5
 MOVWF 0x2a
 BCF STATUS, 0x5
 BSF 0x2a, 0x3
 RETURN
 BSF 0x28, 0x7
 BSF 0x28, 0x5
 MOVLW 0x96
 MOVWF 0x46
 MOVLW 0x78
 MOVWF 0x47
 MOVLW 0x18
 MOVWF 0x48
 BSF STATUS, 0x5
 MOVWF 0x2b
 BCF STATUS, 0x5
 CALL 0xc9
 RETURN
 CALL 0xaa
 CALL 0xcb
 RETURN
 CALL 0xac
 CALL 0xcd
 RETURN
 MOVWF 0x25
 CALL 0x6d
 BTFSS 0x29, 0x2
 GOTO 0x130
 CALL 0x5f
 BTFSC STATUS, 0x2
 GOTO 0x4e7
 BTFSC 0x72, 0x7
 GOTO 0x4e9
 BTFSS 0x72, 0x4
 GOTO 0x136
 BTFSC 0x2c, 0x2
 GOTO 0x4e9
 DECFSZ 0x25, F
 GOTO 0x12a
 RETURN
 
 
 
 
 
 
  ; GOTO 0x139
 
 
 
 
 
 

 
 
 
 
 
 
 
 BSF PCLATH, 0x3
 GOTO 0x734
 BSF INTCON, 0x7
 CALL 0xc5
 CALL 0xac
 CALL 0x95
 MOVF 0x44, W
 BTFSS STATUS, 0x2
 GOTO 0x13e
 BSF PCLATH, 0x3
 GOTO 0x76f
 CALL 0xf7
 CALL 0x65
 MOVLW 0x14
 MOVWF 0x3f
 BTFSS 0x72, 0x2
 BSF 0x29, 0x3
 CALL 0x8f
 CALL 0x8b
 CALL 0x6d
 BTFSC 0x29, 0x2
 GOTO 0x2fa
 CALL 0xd6
 BTFSC PORTB, 0x6
 BSF PORTC, 0x5
 BTFSS 0x73, 0
 GOTO 0x157
 BSF PORTC, 0x2
 CALL 0x91
 BSF PORTC, 0x5
 BTFSC 0x2b, 0x6
 GOTO 0x34f
 BTFSS 0x2b, 0
 GOTO 0x15d
 BSF PCLATH, 0x3
 GOTO 0x7c2
 BTFSS 0x72, 0x4
 BTFSS 0x72, 0x7
 GOTO 0x162
 BSF PCLATH, 0x3
 GOTO 0x2e5
 BTFSS 0x73, 0x5
 BTFSC 0x73, 0x7
 GOTO 0x166
 GOTO 0x173
 CALL 0x51
 BTFSC STATUS, 0x2
 GOTO 0x16e
 BTFSC PORTE, 0x1
 BCF 0x2b, 0x1
 MOVF 0x4b, W
 BTFSS STATUS, 0x2
 GOTO 0x193
 BCF 0x73, 0x5
 BCF 0x73, 0x7
 CALL 0x85
 CALL 0x4d
 CALL 0x65
 BTFSS 0x28, 0x4
 GOTO 0x193
 CALL 0x51
 BTFSC STATUS, 0x2
 GOTO 0x18b
 BTFSC 0x72, 0
 GOTO 0x4e9
 MOVF 0x4b, W
 BTFSC STATUS, 0x2
 GOTO 0x4ff
 BTFSC 0x2c, 0x6
 GOTO 0x166
 XORLW 0x2
 BTFSS STATUS, 0x2
 GOTO 0x166
 BSF 0x2c, 0x6
 CALL 0xae
 CALL 0x75
 CALL 0x65
 CALL 0x109
 BSF 0x39, 0x3
 CALL 0x4d
 CALL 0x69
 GOTO 0x166
 BCF 0x2b, 0x1
 BTFSC 0x2d, 0
 GOTO 0x4e9
 CALL 0xa8
 CALL 0x85
 CALL 0x9b
 BTFSS PORTA, 0x4
 GOTO 0x4e9
 BTFSC INTCON, 0x1
 GOTO 0x61f
 CALL 0x6d
 BTFSC 0x29, 0x2
 GOTO 0x2fa
 CALL 0xd6
 BTFSC PORTA, 0x4
 GOTO 0x19e
 BTFSS 0x29, 0x6
 CALL 0x87
 GOTO 0x1ad
 BTFSC INTCON, 0x1
 GOTO 0x61f
 CALL 0x6d
 BTFSC 0x29, 0x2
 GOTO 0x2fa
 CALL 0xd6
 CALL 0x5d
 BTFSS 0x29, 0x4
 BTFSS PORTA, 0x1
 GOTO 0x1c5
 BTFSS 0x29, 0x6
 GOTO 0x1bd
 CALL 0x89
 BTFSC STATUS, 0
 GOTO 0x1c5
 BTFSS 0x2a, 0x7
 GOTO 0x1bd
 DECFSZ 0x7a, F
 GOTO 0x1d8
 BTFSC 0x72, 0x4
 GOTO 0x1b5
 BCF PORTC, 0x2
 CALL 0x8f
 BTFSS 0x2a, 0x7
 GOTO 0x1bd
 BCF 0x2a, 0x7
 BTFSC PORTE, 0x1
 BCF 0x2b, 0x1
 CALL 0x85
 CALL 0x4d
 CALL 0x65
 BTFSC PORTE, 0x1
 BCF 0x2b, 0x1
 BCF 0x2a, 0x7
 MOVLW 0x4
 MOVWF 0x7a
 BTFSC 0x28, 0x4
 GOTO 0x3f5
 GOTO 0x1cc
 BTFSC 0x2a, 0x7
 GOTO 0x1c9
 DECFSZ 0x7a, F
 GOTO 0x1d8
 BSF 0x2a, 0x7
 MOVLW 0x2
 MOVWF 0x7a
 BTFSC 0x73, 0x7
 BTFSS 0x2b, 0x1
 GOTO 0x1d8
 BCF 0x73, 0x7
 MOVLW 0x14
 MOVWF 0x4f
 BCF 0x2a, 0x5
 BTFSC 0x73, 0x5
 GOTO 0x1d8
 CALL 0x85
 CALL 0x105
 GOTO 0x614
 BTFSC INTCON, 0x1
 GOTO 0x61f
 CALL 0x6d
 BTFSC 0x29, 0x2
 GOTO 0x2fa
 CALL 0xd6
 BTFSC 0x28, 0x2
 GOTO 0x2d1
 MOVF 0x77, F
 BTFSC STATUS, 0x2
 BTFSC 0x72, 0x4
 GOTO 0x1e8
 BCF 0x2c, 0x2
 BCF 0x2c, 0x3
 BCF 0x2a, 0x1
 GOTO 0x1fb
 CALL 0x4b
 BTFSS 0x2c, 0x3
 GOTO 0x1f0
 BCF 0x2c, 0x3
 CALL 0xc9
 CALL 0xed
 CALL 0x4d
 CALL 0x65
 BTFSS 0x72, 0x4
 GOTO 0x1e4
 BSF PORTC, 0x2
 BTFSS PORTB, 0x6
 CALL 0x91
 BTFSS PORTA, 0x4
 GOTO 0x1f9
 BTFSS PORTB, 0x6
 BSF 0x2c, 0x2
 BTFSC 0x2c, 0x2
 GOTO 0x298
 BTFSS 0x29, 0x7
 GOTO 0x204
 BCF 0x29, 0x7
 BSF 0x39, 0x6
 BSF 0x39, 0x4
 BSF 0x39, 0x3
 CALL 0xac
 CALL 0xf9
 GOTO 0x614
 BTFSC 0x28, 0x4
 GOTO 0x14c
 CALL 0x4b
 BTFSS 0x72, 0
 BTFSC 0x72, 0x6
 GOTO 0x236
 BTFSC 0x73, 0x3
 GOTO 0x210
 BTFSC PORTB, 0x6
 GOTO 0x236
 BTFSC PORTA, 0x4
 GOTO 0x222
 BTFSC 0x2c, 0x4
 BTFSS 0x28, 0x1
 GOTO 0x217
 BCF 0x2c, 0x4
 BCF 0x28, 0x1
 CLRF 0x78
 CLRF 0x43
 BTFSS 0x72, 0x4
 BTFSS 0x2a, 0x2
 GOTO 0x236
 BSF PCLATH, 0x3
 CALL 0x5e4
 MOVF 0x6a, W
 BTFSC STATUS, 0x2
 GOTO 0x236
 CLRF 0x4f
 BSF 0x2a, 0x5
 GOTO 0x31e
 BTFSS PORTB, 0x1
 GOTO 0x228
 MOVF 0x6d, W
 SUBLW 0x1
 BTFSC STATUS, 0
 BCF PORTB, 0x1
 BTFSC 0x2a, 0x2
 GOTO 0x236
 BCF 0x73, 0x6
 BCF 0x2b, 0x1
 BCF 0x28, 0
 MOVF 0x6a, W
 BTFSS STATUS, 0x2
 BTFSC PORTE, 0x1
 GOTO 0x236
 BSF PCLATH, 0x3
 CALL 0
 BCF PCLATH, 0x3
 MOVWF 0x4f
 BSF 0x2a, 0x5
 BCF 0x73, 0x3
 BCF 0x2a, 0x2
 BTFSC PORTA, 0x4
 BTFSC PORTB, 0x6
 GOTO 0x23d
 BSF 0x2a, 0x2
 CLRF 0x7e
 BTFSS 0x28, 0
 GOTO 0x243
 BCF 0x28, 0
 CALL 0xa8
 MOVLW 0 
 CALL 0x6f
 BTFSS 0x72, 0x4

 
 
 
 
 
 
 
 
 
 BTFSS PORTA,4    ;  870
 
 
 
 

 
 
 
 GOTO 0x252
 MOVLW 0x14
 MOVWF 0x3f
 BTFSC PORTE, 0x1
 GOTO 0x24e
 BTFSC PORTC, 0x3
 BTFSC 0x2d, 0
 GOTO 0x24e
 GOTO 0x271
 MOVF 0x44, F
 BTFSC STATUS, 0x2
 GOTO 0x26c
 GOTO 0x271
 BTFSC 0x2a, 0x7
 GOTO 0x271
 MOVF 0x3f, W
 BTFSS STATUS, 0x2
 GOTO 0x271
 MOVLW 0x14
 MOVWF 0x3f
 BTFSC 0x72, 0x3
 CALL 0x55
 CALL 0x4b
 BTFSS 0x28, 0x5
 BTFSC 0x28, 0x6
 GOTO 0x3ee
 BTFSC 0x72, 0
 GOTO 0x270
 BTFSC 0x28, 0x7
 GOTO 0x268
 BTFSC 0x72, 0x3
 GOTO 0x26c
 BTFSC 0x72, 0x4
 CALL 0xbb
 GOTO 0x271
 BTFSC 0x72, 0x3
 GOTO 0x26e
 CALL 0xbd
 GOTO 0x271
 CALL 0xbf
 GOTO 0x271
 CALL 0xc1
 GOTO 0x271
 CALL 0xc3
 BTFSC INTCON, 0x1
 GOTO 0x61f
 GOTO 0x14c
 MOVF 0x4a, W
 BTFSS STATUS, 0x2
 GOTO 0x283
 DECFSZ 0x42, F
 GOTO 0x27a
 GOTO 0x291
 CALL 0xb2
 MOVLW 0xe
 CALL 0x71
 BSF 0x39, 0
 BSF 0x38, 0x1
 BSF 0x39, 0x3
 CALL 0xfb
 CALL 0x4d
 CALL 0x65
 MOVF 0x4a, W
 SUBLW 0x5
 MOVLW 0x5
 BTFSC STATUS, 0
 MOVWF 0x4a
 GOTO 0x1fb
 MOVF 0x4a, W
 SUBLW 0x5
 BTFSS STATUS, 0
 GOTO 0x2cf
 MOVLW 0x19
 NOP   
 DECFSZ 0x42, F
 GOTO 0x293
 BSF 0x73, 0x1
 GOTO 0x1fb
 BSF 0x2a, 0x1
 CALL 0xfd
 MOVLW 0x98
 MOVWF 0x41
 GOTO 0x2af
 BTFSS 0x72, 0x6
 GOTO 0x2a5
 MOVF 0x27, W
 BTFSS STATUS, 0x2
 GOTO 0x1fb
 BTFSC 0x2b, 0x5
 GOTO 0x2a5
 MOVLW 0x64
 MOVWF 0x27
 BSF 0x2b, 0x5
 CALL 0xae
 CALL 0xcf
 GOTO 0x1fb
 MOVLW 0xf
 ANDWF 0x2d, F
 SWAPF 0x2d, W
 IORWF 0x2d, F
 BSF 0x2c, 0x1
 MOVLW 0x98
 MOVWF 0x41
 CALL 0x83
 CALL 0xff
 BSF 0x39, 0x4
 MOVF 0x6d, W
 SUBLW 0x1
 BTFSC STATUS, 0
 BSF PORTB, 0x1
 BCF 0x2c, 0x2
 BSF 0x39, 0x3
 BSF 0x38, 0x1
 CALL 0x4d
 CALL 0x65
 CALL 0xb4
 BSF 0x39, 0x3
 BSF 0x39, 0x4
 BSF 0x38, 0x1
 CALL 0xff
 CALL 0x4d
 CALL 0x67
 BTFSS 0x29, 0x2
 GOTO 0x2c4
 CALL 0x61
 BTFSC STATUS, 0x2
 GOTO 0x2ce
 BTFSS 0x72, 0x7
 GOTO 0x2c8
 BTFSC 0x28, 0x2
 GOTO 0x2d1
 BTFSC INTCON, 0x1
 GOTO 0x61e
 MOVF 0x41, W
 BTFSS STATUS, 0x2
 GOTO 0x2b8 
 
 
 
 
 
 
 
 
 
 
 GOTO 0x2cf
 BSF 0x2c, 0
 MOVLW 0x19
 MOVWF 0x4a
 CLRF 0x41
 BCF PORTD, 0x3
 MOVF 0x6d, W
 SUBLW 0x1
 BTFSC STATUS, 0
 BCF PORTB, 0x1
 BCF 0x2c, 0x2
 BCF 0x2c, 0x3
 BTFSC 0x28, 0x2
 GOTO 0x2f0
 BTFSS 0x2c, 0
 GOTO 0x1fb
 BSF 0x2b, 0
 BCF 0x2c, 0
 BCF 0x2a, 0x1
 BCF 0x2c, 0x1
 BCF 0x72, 0x7
 BCF 0x28, 0x1
 BCF 0x2a, 0x6
 CALL 0x123
 CALL 0x105
 CALL 0x7d
 CALL 0x4d
 CALL 0x69
 BTFSC PORTA, 0x4
 BTFSC PORTB, 0x6
 GOTO 0x1fb
 BCF 0x72, 0x4
 MOVLW 0x1e
 MOVWF 0x77
 GOTO 0x1fb
 BCF 0x2c, 0x4
 BCF 0x28, 0x2
 BCF 0x28, 0x1
 CLRF 0x78
 BCF 0x72, 0x7
 BSF 0x2b, 0
 CALL 0x126
 CALL 0x105
 CALL 0x4d
 CALL 0x65
 BCF 0x29, 0x2
 CALL 0x4b
 BSF PCLATH, 0x3
 CALL 0x42
 BTFSS STATUS, 0x2
 GOTO 0x14c
 BCF 0x2a, 0x5
 MOVLW 0x20
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x3ac
 BCF 0x73, 0x6
 BCF 0x2b, 0x3
 CLRF 0x7e
 BTFSS 0x73, 0
 GOTO 0x310
 BCF 0x73, 0
 BCF PORTC, 0x2
 CALL 0x8f
 CALL 0xaa
 CALL 0xef
 GOTO 0x612
 MOVF 0x77, W
 BTFSS STATUS, 0x2
 GOTO 0x318
 BTFSS 0x72, 0x4
 BTFSC 0x28, 0x1
 GOTO 0x318
 BTFSS 0x72, 0x5
 GOTO 0x356
 BTFSC PORTE, 0x1
 GOTO 0x31e
 MOVLW 0x96
 BTFSS PORTB, 0x6
 BTFSS PORTA, 0x4
 MOVWF 0x4f
 BCF PORTB, 0x1
 CLRF 0x76
 BCF 0x2b, 0x6
 BCF PORTD, 0x7
 BCF 0x72, 0x5
 BTFSC 0x2a, 0x5
 GOTO 0x338
 CALL 0x77
 BTFSC 0x72, 0
 GOTO 0x330
 BTFSS PORTB, 0x6
 BTFSS PORTA, 0x4
 GOTO 0x32e
 CALL 0xef
 CALL 0x49
 GOTO 0x33b
 BTFSC 0x2c, 0x1
 GOTO 0x335
 CLRF 0x4e
 CALL 0xaa
 CALL 0xcb
 CALL 0xef
 GOTO 0x338
 CALL 0xae
 CALL 0xcf
 CALL 0xff
 CALL 0x49
 BSF PCLATH, 0x3
 CALL 0x448
 MOVF 0x68, W
 XORLW 0x2
 BTFSC STATUS, 0x2
 BSF 0x73, 0x4
 MOVF 0x68, W
 BSF PCLATH, 0x3
 CALL 0x30
 BCF PCLATH, 0x3
 MOVWF 0x40
 BSF PORTD, 0x6
 BTFSS 0x2b, 0x3
 GOTO 0x34c
 BSF STATUS, 0x5
 MOVWF 0x22
 BCF STATUS, 0x5
 BSF PORTD, 0x5
 BCF 0x2b, 0x3
 BTFSC 0x2a, 0x5
 GOTO 0x3a9
 GOTO 0x617
 BTFSS 0x2a, 0x5
 BTFSS PORTA, 0x4
 GOTO 0x357
 BTFSC PORTB, 0x6
 GOTO 0x357
 BCF 0x2b, 0x6
 GOTO 0x14c
 BCF 0x2b, 0x6
 CLRF 0x4f
 BCF PORTD, 0x6
 BCF 0x73, 0x4
 MOVF 0x69, W
 BTFSC STATUS, 0x2
 GOTO 0x364
 XORLW 0x2
 BTFSC STATUS, 0x2
 GOTO 0x364
 BSF STATUS, 0x5
 CLRF 0x22
 BCF STATUS, 0x5
 BCF PORTD, 0x5
 BCF STATUS, 0x5
 BCF PORTB, 0x1
 CLRF 0x76
 BSF 0x72, 0x5
 BTFSC 0x2a, 0x5
 GOTO 0x395
 BTFSC 0x72, 0
 GOTO 0x38e
 BTFSC PORTA, 0x4
 BTFSC PORTB, 0x6
 GOTO 0x372
 CALL 0xed
 CALL 0x49
 GOTO 0x39a
 MOVF 0x6c, W
 BSF PCLATH, 0x3
 CALL 0xc
 BCF PCLATH, 0x3
 BTFSS 0x2b, 0x6
 GOTO 0x37a
 BTFSS 0x73, 0x6
 MOVLW 0x1
 MOVWF 0x77
 BSF PORTC, 0x2
 BTFSS PORTB, 0x6
 CALL 0x91
 MOVF 0x6c, W
 BTFSS STATUS, 0x2
 BSF 0x2a, 0x6
 BCF 0x2d, 0x3
 BSF PCLATH, 0x3
 CALL 0x4a6
 BCF PCLATH, 0x3
 BTFSC STATUS, 0x2
 GOTO 0x38e
 CALL 0xae
 BCF 0x72, 0x1
 BSF PCLATH, 0x3
 CALL 0x454
 BCF PCLATH, 0x3
 BCF 0x2b, 0x6
 GOTO 0x590
 BTFSS 0x73, 0x5
 BTFSS 0x73, 0x7
 GOTO 0x392
 CALL 0x85
 CALL 0xa8
 CALL 0xc9
 CALL 0xed
 CALL 0x49
 BTFSC 0x2a, 0x5
 GOTO 0x39f
 BSF PCLATH, 0x3
 CALL 0x454
 BTFSS 0x73, 0x6
 GOTO 0x39f
 MOVF 0x6b, W
 XORLW 0x1
 BTFSS STATUS, 0x2
 CALL 0x7f
 BTFSC 0x2a, 0x5
 GOTO 0x3a9
 BTFSS 0x2b, 0x6
 GOTO 0x617
 CALL 0x4d
 BCF 0x73, 0x6
 BCF 0x2b, 0x3
 BCF 0x2b, 0x6
 GOTO 0x615
 BCF 0x2b, 0x6
 BCF 0x2a, 0x5
 GOTO 0x236
 MOVLW 0x21
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x3c7
 MOVLW 0x1
 XORWF 0x69, W
 BTFSC STATUS, 0x2
 GOTO 0x3c1
 MOVLW 0x3
 XORWF 0x69, W
 BTFSC STATUS, 0x2
 GOTO 0x3c1
 CALL 0x126
 CALL 0x49
 MOVLW 0x4
 BSF STATUS, 0x5
 MOVWF 0x22
 BCF STATUS, 0x5
 BSF PORTD, 0x5
 CALL 0xf1
 GOTO 0x618
 BCF 0x72, 0x5
 CALL 0x77
 CALL 0x123
 CALL 0x49
 BSF 0x2b, 0x3
 GOTO 0x338
 MOVLW 0xfe
 ANDWF 0x37, W
 XORLW 0x40
 BTFSS 0x72, 0
 BTFSS STATUS, 0x2
 GOTO 0x507
 BTFSS 0x73, 0x5
 BTFSC 0x28, 0x4
 GOTO 0x4e7
 BTFSC 0x73, 0x7
 GOTO 0x4e7
 BTFSC 0x2a, 0x7
 GOTO 0x3d7
 BCF 0x28, 0x5
 BCF 0x28, 0x6
 GOTO 0x3f0
 BTFSC PORTD, 0
 BTFSC PORTC, 0
 GOTO 0x507
 MOVLW 0xd0
 IORWF PORTB, F
 BSF PORTD, 0x2
 BSF PORTC, 0x2
 BCF 0x2a, 0x2
 CALL 0x7d
 MOVLW 0x1
 MOVWF 0x4b
 BSF 0x73, 0x7
 BSF 0x2a, 0x5
 BCF 0x2b, 0x1
 MOVF 0x6f, W
 BTFSC STATUS, 0x2
 GOTO 0x4de
 BSF PCLATH, 0x3
 CALL 0x2a
 BCF PCLATH, 0x3
 MOVWF 0x4b
 BSF 0x73, 0x5
 GOTO 0x4de
 BTFSC 0x2a, 0x7
 GOTO 0x4fc
 BCF 0x2b, 0x2
 BTFSC PORTD, 0
 BTFSC 0x2b, 0x1
 GOTO 0x3f8
 GOTO 0x4e9
 BTFSC 0x2b, 0x2
 GOTO 0x3fa
 BSF 0x2b, 0x2
 MOVLW 0x4
 MOVWF 0x4c
 MOVF 0x66, W
 SUBLW 0x1
 BTFSS PORTE, 0x1
 BTFSC STATUS, 0
 GOTO 0x403
 MOVLW 0x1
 MOVWF 0x77
 CALL 0x49
 CALL 0x81
 CALL 0x8b
 BTFSC 0x2a, 0x4
 BTFSC 0x72, 0x2
 GOTO 0x40a
 CALL 0x126
 CALL 0x105
 GOTO 0x619
 CLRF 0x45
 MOVLW 0xf
 ANDWF PORTB, F
 BSF PORTC, 0x2
 CALL 0x8f
 BCF 0x2a, 0x7
 CALL 0x51
 BTFSS STATUS, 0x2
 BTFSC 0x72, 0
 GOTO 0x4e9
 BSF 0x39, 0x2
 CALL 0x126
 CALL 0x4d
 BTFSS 0x28, 0x5
 BTFSC 0x28, 0x6
 GOTO 0x424
 BTFSC 0x2b, 0x2
 GOTO 0x424
 CALL 0xfb
 CALL 0x67
 BTFSS 0x29, 0x2
 GOTO 0x427
 CALL 0x5f
 BTFSC STATUS, 0x2
 GOTO 0x4e7
 GOTO 0x427
 BSF 0x39, 0x3
 CALL 0xf5
 CALL 0x65
 CALL 0x79
 CALL 0x69
 BTFSS 0x29, 0x2
 GOTO 0x42e
 CALL 0x5f
 BTFSC STATUS, 0x2
 GOTO 0x4e7
 CLRF 0x44
 BSF PORTD, 0x2
 BSF PORTC, 0x5
 MOVF 0x4b, W
 BTFSS STATUS, 0x2
 GOTO 0x44c
 CALL 0x51
 BTFSC STATUS, 0x2
 GOTO 0x4e9
 BSF 0x28, 0x4
 MOVLW 0xd0
 IORWF PORTB, F
 CALL 0x49
 MOVF 0x67, W
 BTFSC STATUS, 0x2
 GOTO 0x44c
 MOVLW 0x23
 MOVWF 0x27
 CALL 0x4b
 CALL 0x51
 BTFSC STATUS, 0x2                   
 GOTO 0x4e9
 MOVLW 0x1
 CALL 0x129
 MOVF 0x27, W
 BTFSS STATUS, 0x2
 GOTO 0x440
 GOTO 0x44c
 MOVLW 0xf
 ANDWF PORTB, F
 BSF PORTC, 0x2
 CALL 0x8f
 BCF 0x2a, 0x7
 MOVLW 0x7
 ANDWF 0x4c, F
 BSF 0x39, 0x2
 CALL 0x4d
 CALL 0x67
 BTFSS 0x29, 0x2
 GOTO 0x459
 CALL 0x5f
 BTFSC STATUS, 0x2
 GOTO 0x4e7
 BTFSS PORTB, 0x7
 BTFSC PORTB, 0x6
 GOTO 0x465
 MOVLW 0xa
 CALL 0x129
 CALL 0x51
 BTFSC STATUS, 0x2
 GOTO 0x4e9
 MOVLW 0xd0
 IORWF PORTB, F
 MOVLW 0x19
 CALL 0x129
 CALL 0x87
 MOVF 0x63, W
 BTFSS STATUS, 0x2
 BCF 0x29, 0x6
 CALL 0x49
 MOVLW 0x3
 MOVWF 0x4a
 MOVF 0x62, W
 BSF PCLATH, 0x3
 CALL 0x1e
 BCF PCLATH, 0x3
 MOVWF 0x27
 MOVF 0x45, W
 ADDWF 0x27, F
 ADDWF 0x4a, F
 CALL 0x51
 BTFSC STATUS, 0x2
 GOTO 0x4e9
 BSF PORTC, 0x5
 MOVF PORTB, W
 MOVWF 0x24
 BCF 0x24, 0x7
 MOVF 0x66, W
 BTFSC STATUS, 0x2
 GOTO 0x481
 XORLW 0x2
 BTFSS STATUS, 0x2
 BCF 0x24, 0x4
 BSF 0x24, 0x5
 MOVF 0x24, W
 MOVWF PORTB
 CALL 0x9b
 BTFSS 0x2a, 0x4
 BCF 0x72, 0x2
 CALL 0x4b
 BTFSS 0x2a, 0x4
 GOTO 0x48c
 CALL 0x5b
 GOTO 0x491
 BTFSS 0x72, 0x2
 CALL 0x57
 BTFSC 0x29, 0x3
 GOTO 0x498
 CALL 0x59
 BTFSS 0x29, 0x4
 GOTO 0x498
 MOVF 0x4a, F
 BTFSS STATUS, 0x2
 GOTO 0x49b
 CALL 0x9b
 GOTO 0x4a4
 BTFSS 0x2a, 0x4
 BTFSC PORTA, 0x1
 GOTO 0x4a0
 CALL 0x4b
 MOVF 0x4a, F
 BTFSS STATUS, 0x2
 GOTO 0x49b
 GOTO 0x4a4
 MOVF 0x27, W
 BTFSS STATUS, 0x2
 GOTO 0x487
 BCF PORTC, 0x5
 MOVF PORTB, W
 ANDLW 0xdf
 IORLW 0xd0
 MOVWF PORTB
 BTFSS 0x2a, 0x4
 BCF 0x72, 0x2
 MOVLW 0x14
 CALL 0x129
 MOVLW 0x3
 MOVWF 0x25
 BTFSC 0x29, 0x3
 GOTO 0x4b4
 CALL 0x5d
 BTFSS 0x29, 0x4
 GOTO 0x4cd
 GOTO 0x4bd
 BTFSS 0x29, 0x6
 GOTO 0x4ba
 CALL 0x89
 BTFSC STATUS, 0
 GOTO 0x4bd
 BCF 0x29, 0x6
 CALL 0x99
 BTFSC PORTA, 0x1
 GOTO 0x4cd
 CALL 0x4b
 CALL 0x6d
 BTFSS 0x29, 0x2
 GOTO 0x4c4
 CALL 0x5f
 BTFSC STATUS, 0x2
 GOTO 0x4e7
 BTFSC 0x72, 0x7
 GOTO 0x4e9
 BTFSS 0x72, 0x4
 GOTO 0x4ca
 BTFSC 0x2c, 0x2
 GOTO 0x4e9
 DECFSZ 0x25, F
 GOTO 0x4ae
 GOTO 0x4d1
 INCF 0x45, F
 DECFSZ 0x4c, F
 GOTO 0x44a
 GOTO 0x4e9
 BSF 0x28, 0x4
 BTFSC 0x28, 0x6
 CALL 0x110
 MOVF 0x60, W
 BSF PCLATH, 0x3
 CALL 0x12
 BCF PCLATH, 0x3
 MOVWF 0x4b
 BSF 0x2a, 0x7
 BCF 0x2c, 0x6
 BCF 0x28, 0x5
 BCF 0x28, 0x6
 CALL 0xac
 MOVLW 0x96
 MOVWF 0x46
 CALL 0x101
 BSF 0x39, 0x3
 BSF 0x39, 0x2
 CALL 0x4d
 CALL 0x67
 CALL 0x75
 GOTO 0x619
 BSF 0x2b, 0x4
 BTFSS 0x2b, 0x4
 BCF 0x2b, 0x4
 BCF 0x28, 0x5
 CALL 0x83
 BTFSC 0x28, 0x6
 CALL 0x110
 BCF 0x28, 0x6
 CALL 0xae
 CALL 0xcf
 BTFSS 0x2b, 0x4
 GOTO 0x4f6
 BCF 0x2b, 0x4
 CALL 0x105
 GOTO 0x617
 CALL 0xf3
 BSF 0x39, 0x2
 CALL 0x4d
 CALL 0x65
 CALL 0x7b
 GOTO 0x619
 BCF 0x28, 0x5
 BCF 0x28, 0x6
 GOTO 0x252
 CALL 0x83
 CALL 0xae
 CALL 0xcf
 CALL 0xf3
 CALL 0x4d
 CALL 0x65
 CALL 0x75
 GOTO 0x619
 MOVLW 0x80
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x513
 CALL 0xac
 CALL 0x7d
 BSF PCLATH, 0x3
 CALL 0xd9
 CALL 0x69
 CALL 0xf7
 BSF 0x39, 0x3
 GOTO 0x617
 MOVLW 0x81
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x52c
 BSF STATUS, 0x5
 MOVF 0x23, W
 BCF STATUS, 0x5
 BTFSS STATUS, 0x2
 GOTO 0x14c
 CALL 0xac
 CALL 0x49
 BSF PORTC, 0x7
 MOVLW 0x4
 BSF STATUS, 0x5
 MOVWF 0x23
 BCF STATUS, 0x5
 CALL 0x95
 CALL 0x97
 CALL 0xf1
 BTFSC 0x72, 0x4
 BSF 0x73, 0x1
 MOVLW 0x96
 MOVWF 0x4e
 BCF 0x2c, 0x2
 GOTO 0x618
 MOVLW 0x10
 XORWF 0x37, W
 BTFSC STATUS, 0x2
 BTFSC 0x72, 0
 GOTO 0x545
 BTFSC 0x72, 0x4
 GOTO 0x536
 MOVF 0x77, W
 BTFSC STATUS, 0x2
 GOTO 0x543
 BTFSC 0x72, 0x1
 GOTO 0x53d
 BSF 0x72, 0x1
 BSF 0x38, 0x4
 CALL 0xa8
 CALL 0x103
 GOTO 0x612
 BCF 0x72, 0x1
 BCF 0x38, 0x4
 CALL 0xa8
 CALL 0xc9
 CALL 0xff
 GOTO 0x612
 BSF 0x72, 0x1
 GOTO 0x356
 MOVLW 0x11
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x55c
 CALL 0xa8
 CALL 0xc9
 CALL 0x49
 MOVF 0x64, W
 BSF PCLATH, 0x3
 CALL 0x6
 BCF PCLATH, 0x3
 BSF STATUS, 0x5
 MOVWF 0x21
 BCF STATUS, 0x5
 BTFSC STATUS, 0x2
 GOTO 0x557
 BTFSC PORTD, 0x4
 GOTO 0x559
 BSF PORTD, 0x4
 GOTO 0x55a
 BCF PORTD, 0x4
 CALL 0xed
 GOTO 0x618
 BTFSC 0x72, 0
 GOTO 0x5f4
 MOVLW 0x60
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x579
 BCF 0x2c, 0x6
 MOVLW 0xa
 ADDWF 0x4b, F
 MOVLW 0x29
 SUBWF 0x4b, W
 BTFSS STATUS, 0
 GOTO 0x571
 CALL 0x126
 MOVLW 0x28
 MOVWF 0x4b
 CALL 0x7d
 CALL 0x75
 CALL 0x69
 CALL 0xf7
 GOTO 0x577
 CALL 0xa8
 CALL 0xc9
 CALL 0x7d
 CALL 0x75
 CALL 0x69
 CALL 0x101
 BSF 0x39, 0x3
 GOTO 0x617
 MOVLW 0x61
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x583
 CALL 0xac
 CALL 0x7d
 MOVF 0x4b, W
 BTFSC STATUS, 0x2
 GOTO 0x56f
 GOTO 0x56d
 MOVLW 0xa0
 XORWF 0x37, W
 BTFSC STATUS, 0x2
 BTFSC 0x72, 0
 GOTO 0x59a
 BTFSC PORTA, 0x4
 GOTO 0x59a
 CALL 0xac
 BTFSC 0x72, 0x4
 GOTO 0x591
 CLRF 0x77
 BSF 0x72, 0x5
 BSF 0x72, 0x4
 CALL 0x7f
 MOVLW 0x19
 MOVWF 0x4a
 CALL 0x7d
 CALL 0xff
 CALL 0x4d
 CALL 0x69
 MOVLW 0xe
 CALL 0x6f
 GOTO 0x14c
 MOVLW 0xa1
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5ab
 BTFSC PORTA, 0x4
 BTFSC 0x28, 0x1
 GOTO 0x2f0
 MOVLW 0x96
 MOVWF 0x78
 MOVLW 0x97
 MOVWF 0x43
 MOVLW 0x19
 MOVWF 0x79
 BSF 0x28, 0x1
 BSF 0x39, 0x3
 CALL 0xff
 GOTO 0x618
 MOVLW 0x30
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5c6
 BTFSC 0x72, 0x4
 GOTO 0x5b4
 MOVF 0x77, F
 BTFSC STATUS, 0x2
 GOTO 0x5c6
 BTFSC 0x73, 0x1
 GOTO 0x5be
 BTFSC 0x73, 0x2
 GOTO 0x5ba
 BSF 0x73, 0x2
 GOTO 0x5e5
 BSF 0x73, 0x1
 CALL 0x126
 CALL 0xf1
 GOTO 0x612
 BCF 0x73, 0x1
 BCF 0x73, 0x2
 CALL 0xa8
 CALL 0xc9
 CALL 0xed
 MOVLW 0x9
 MOVWF 0x42
 GOTO 0x612
 MOVLW 0xc0
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5ce
 BCF 0x72, 0x3
 BCF 0x28, 0x6
 BSF 0x2a, 0x3
 GOTO 0x5e5
 MOVLW 0xc1
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5df
 BSF 0x72, 0x3
 BCF 0x2a, 0x3
 BTFSC 0x72, 0x3
 CALL 0x55
 CALL 0xa8
 CALL 0xc9
 CALL 0x7d
 MOVF 0x61, W
 BSF PCLATH, 0x3
 CALL 0x18
 CALL 0xea
 CALL 0x69
 GOTO 0x609
 MOVLW 0x50
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5e7
 BCF 0x28, 0x7
 BCF 0x28, 0x5
 CALL 0x123
 GOTO 0x611
 MOVLW 0x51
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5f4
 CALL 0x116
 CALL 0xc9
 CALL 0x107
 CALL 0x7d
 CALL 0x4d
 CALL 0x69
 CALL 0x93
 BSF 0x2b, 0
 GOTO 0x61a
 MOVLW 0x90
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x5fe
 CALL 0xf7
 CALL 0xb2
 CALL 0x4d
 CALL 0x67
 CALL 0xd3
 GOTO 0x61a
 MOVLW 0xd1
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x60b
 BSF 0x72, 0
 BCF 0x72, 0x3
 BCF 0x28, 0x7
 CLRF 0x77
 CLRF 0x4f
 CALL 0xae
 CALL 0xcf
 CALL 0x107
 GOTO 0x612
 MOVLW 0xd0
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x14c
 BCF 0x72, 0
 CALL 0x126
 CALL 0x105
 BSF 0x2b, 0
 GOTO 0x617
 CALL 0x4d
 CALL 0x65
 GOTO 0x61a
 CALL 0x7d
 CALL 0x4d
 CALL 0x69
 BCF 0x2c, 0x1
 MOVLW 0x14
 MOVWF 0x3f
 GOTO 0x14c
 BSF 0x2b, 0x5
 BSF PORTC, 0x5
 CALL 0x4b
 CLRF 0x4f
 BCF 0x2b, 0x6
 BCF INTCON, 0x1
 BCF 0x29, 0x6
 CLRF 0x49
 BTFSS PORTA, 0x4
 BTFSS 0x73, 0
 GOTO 0x62d
 BCF 0x73, 0
 BSF 0x2b, 0
 BCF PORTC, 0x2
 CALL 0x8f
 BTFSC 0x2a, 0x7
 GOTO 0x7d0
 BTFSS PORTA, 0x4
 GOTO 0x72e
 INCF 0x49, F
 MOVLW 0x32
 MOVWF 0x25
 BSF PORTC, 0x5
 CALL 0x9b
 BTFSC PORTB, 0
 GOTO 0x67a
 DECFSZ 0x25, F
 GOTO 0x634
 BCF PORTC, 0x5
 BTFSC 0x72, 0x4
 GOTO 0x7d0
 BCF 0x72, 0x1
 CALL 0xcf
 CLRF 0x4c
 BCF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 MOVLW 0x5
 MOVWF 0x26
 BCF INTCON, 0x1
 CALL 0x6b
 BTFSS 0x29, 0x2
 GOTO 0x64e
 BSF PCLATH, 0x3
 GOTO 0x7a6
 DECFSZ 0x26, F
 GOTO 0x645
 GOTO 0x65e
 BTFSS PORTB, 0
 GOTO 0x655
 BTFSS PORTA, 0x4
 GOTO 0x7cf
 DECFSZ 0x25, F
 GOTO 0x645
 GOTO 0x7cf
 BSF PORTC, 0x5
 MOVLW 0x32
 MOVWF 0x25
 CALL 0x9b
 BTFSC PORTB, 0
 GOTO 0x640
 DECFSZ 0x25, F
 GOTO 0x658
 GOTO 0x7cf
 MOVF 0x3e, W
 ANDLW 0xf0
 XORLW 0x90
 BTFSS STATUS, 0x2
 GOTO 0x643
 MOVLW 0xf
 ANDWF 0x3e, F
 BSF PCLATH, 0x3
 GOTO 0x7cb
 MOVF 0x4c, W
 CALL 0x73
 CALL 0x4b
 MOVF 0x37, W
 ANDLW 0xf
 MOVWF 0x3e
 CALL 0x6b
 BTFSC 0x29, 0x2
 GOTO 0x66d
 MOVF 0x4c, W
 MOVWF 0x26
 BCF INTCON, 0x1
 CALL 0x63
 INCF 0x4c, F
 MOVLW 0x4
 SUBWF 0x4c, W
 BTFSS STATUS, 0
 GOTO 0x640
 GOTO 0x63f
 BCF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 CALL 0x9d
 BTFSS PORTB, 0
 GOTO 0x685
 BTFSS PORTA, 0x4
 GOTO 0x691
 DECFSZ 0x25, F
 GOTO 0x67d
 GOTO 0x7d0
 INCF 0x49, F
 BSF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 CALL 0x9d
 BTFSC PORTB, 0
 GOTO 0x67a
 BTFSS PORTA, 0x4
 GOTO 0x691
 DECFSZ 0x25, F
 GOTO 0x689
 GOTO 0x7cf
 BCF 0x2b, 0x3
 BCF 0x2b, 0x4
 MOVLW 0x4
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x7cb
 MOVLW 0x8
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x7c0
 BTFSC 0x72, 0x4
 GOTO 0x7d0
 MOVLW 0x9
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x70c
 MOVLW 0x6
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x6ac
 MOVLW 0xa
 XORWF 0x49, W
 BTFSS STATUS, 0x2
 GOTO 0x7d0
 BSF 0x2b, 0x3
 MOVLW 0x9
 BTFSS 0x2b, 0x3
 MOVLW 0x5
 BCF 0x72, 0x1
 CALL 0x73
 CLRF 0x49
 MOVLW 0xc8
 MOVWF 0x25
 BTFSS PORTB, 0
 GOTO 0x6ba
 CALL 0x9d
 BTFSC PORTA, 0x4
 GOTO 0x7cf
 DECFSZ 0x25, F
 GOTO 0x6b2
 GOTO 0x7cf
 BSF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 BTFSC PORTB, 0
 GOTO 0x6d0
 CALL 0x9d
 BTFSC PORTA, 0x4
 GOTO 0x7cf
 DECFSZ 0x25, F
 GOTO 0x6bd
 GOTO 0x7cf
 BSF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 BTFSC PORTB, 0
 GOTO 0x6d0
 CALL 0x9d
 BTFSC PORTA, 0x4
 GOTO 0x8d
 DECFSZ 0x25, F
 GOTO 0x6c8
 GOTO 0x8d
 BCF PORTC, 0x5
 MOVF 0x49, W
 CALL 0x71
 BCF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 BCF INTCON, 0x1
 CALL 0x6d
 BTFSC 0x29, 0x2
 GOTO 0x6e9
 BTFSC PORTB, 0
 GOTO 0x6e4
 BTFSC 0x2b, 0x3
 GOTO 0x6c5
 INCF 0x49, F
 MOVLW 0x10
 SUBWF 0x49, W
 BTFSC STATUS, 0
 CLRF 0x49
 GOTO 0x6c5
 BTFSC PORTA, 0x4
 GOTO 0x8d
 DECFSZ 0x25, F
 GOTO 0x6d6
 GOTO 0x8d
 MOVLW 0x24
 BTFSS 0x2b, 0x3
 MOVLW 0x60
 ADDWF 0x49, W
 MOVWF FSR
 BTFSS 0x37, 0x5
 GOTO 0x6f5
 BTFSC 0x2b, 0x3
 BSF 0x2b, 0x4
 CALL 0xc9
 MOVLW 0 
 GOTO 0x706
 BTFSS 0x37, 0x6
 GOTO 0x6fb
 BCF 0x2b, 0x4
 CALL 0xcb
 MOVLW 0x1
 GOTO 0x706
 BTFSS 0x37, 0x7
 GOTO 0x701
 BCF 0x2b, 0x4
 CALL 0xcd
 MOVLW 0x2
 GOTO 0x706
 BTFSS 0x37, 0x4
 GOTO 0x6d6
 BCF 0x2b, 0x4
 CALL 0xcf
 MOVLW 0x3
 MOVWF INDF
 MOVWF 0x26
 BCF INTCON, 0x1
 CALL 0x7d
 CALL 0x63
 GOTO 0x6d3
 BTFSS 0x2a, 0x4
 GOTO 0x7cf
 BCF PORTC, 0x2
 CALL 0x8f
 MOVLW 0x8
 CALL 0x73
 MOVLW 0xb4
 MOVWF 0x25
 CALL 0x95
 BTFSS PORTB, 0
 GOTO 0x71c
 CALL 0x95
 BSF PORTC, 0x5
 DECFSZ 0x25, F
 GOTO 0x714
 GOTO 0x7cf
 CALL 0x57
 BTFSC 0x72, 0x2
 GOTO 0x723
 CALL 0xae
 CALL 0xcf
 BSF 0x2b, 0
 GOTO 0x7d0
 CALL 0xa8
 CALL 0xc9
 MOVLW 0x11
 MOVWF 0x26
 MOVLW 0x2
 MOVWF 0x25
 MOVLW 0x72
 MOVWF FSR
 BSF 0x2b, 0
 CALL 0x4f
 GOTO 0x7d0
 BTFSC 0x72, 0x4
 GOTO 0x7d0
 INCF 0x49, F
 BSF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 CALL 0x9d
 BTFSC PORTB, 0
 GOTO 0x73c
 BTFSC PORTA, 0x4
 GOTO 0x747
 DECFSZ 0x25, F
 GOTO 0x734
 GOTO 0x7cf
 BCF PORTC, 0x5
 MOVLW 0x64
 MOVWF 0x25
 CALL 0x9d
 BTFSS PORTB, 0
 GOTO 0x72e
 BTFSC PORTA, 0x4
 GOTO 0x747
 DECFSZ 0x25, F
 GOTO 0x73f
 GOTO 0x7d0
 MOVLW 0x3
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x754
 MOVLW 0x4
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x776
 MOVLW 0x5
 XORWF 0x49, W
 BTFSC STATUS, 0x2
 GOTO 0x797
 GOTO 0x7d0
 BCF 0x72, 0x1
 CALL 0xcd
 MOVLW 0x64
 MOVWF 0x25
 BTFSC PORTB, 0
 GOTO 0x762
 BSF PORTC, 0x5
 BSF 0x29, 0x6
 CALL 0x9d
 BTFSS PORTA, 0x4
 GOTO 0x7ba
 DECFSZ 0x25, F
 GOTO 0x758
 GOTO 0x7ba
 BTFSS 0x29, 0x6
 GOTO 0x76c
 BCF 0x29, 0x6
 BTFSC 0x72, 0
 GOTO 0x76a
 BSF 0x72, 0
 CALL 0xc9
 GOTO 0x76c
 BCF 0x72, 0
 CALL 0xcb
 MOVLW 0xc8
 MOVWF 0x25
 CALL 0x9d
 BTFSS PORTA, 0x4
 GOTO 0x7ba
 BTFSS PORTB, 0
 GOTO 0x756
 DECFSZ 0x25, F
 GOTO 0x76e
 GOTO 0x7ba
 CALL 0xcf
 MOVLW 0x64
 MOVWF 0x25
 BTFSC PORTB, 0
 GOTO 0x783
 BSF PORTC, 0x5
 BSF 0x29, 0x6
 CALL 0x9d
 BTFSS PORTA, 0x4
 GOTO 0x7ba
 DECFSZ 0x25, F
 GOTO 0x779
 GOTO 0x7ba
 BTFSS 0x29, 0x6
 GOTO 0x78d
 BCF 0x29, 0x6
 BTFSC 0x28, 0x7
 GOTO 0x78a
 CALL 0x116
 GOTO 0x78d
 BCF 0x28, 0x7
 BCF 0x28, 0x5
 CALL 0xcb
 MOVLW 0xc8
 MOVWF 0x25
 CALL 0x9d
 BTFSS PORTA, 0x4
 GOTO 0x7ba
 BTFSS PORTB, 0
 GOTO 0x777
 DECFSZ 0x25, F
 GOTO 0x78f
 GOTO 0x7ba
 CALL 0xd1
 MOVLW 0x64
 MOVWF 0x25
 BTFSC PORTB, 0
 GOTO 0x7a4
 BSF PORTC, 0x5
 BSF 0x29, 0x6
 CALL 0x9d
 BTFSS PORTA, 0x4
 GOTO 0x7ba
 DECFSZ 0x25, F
 GOTO 0x79a
 GOTO 0x7ba
 BTFSS 0x29, 0x6
 GOTO 0x7b1
 BCF 0x29, 0x6
 BTFSC 0x72, 0x3
 GOTO 0x7ad
 BSF 0x72, 0x3
 BCF 0x2a, 0x3
 CALL 0xc9
 GOTO 0x7b1
 BCF 0x72, 0x3
 BCF 0x28, 0x6
 BSF 0x2a, 0x3
 CALL 0xcb
 MOVLW 0xc8
 MOVWF 0x25
 CALL 0x9d
 BTFSS PORTA, 0x4
 GOTO 0x7ba
 BTFSS PORTB, 0
 GOTO 0x798
 DECFSZ 0x25, F
 GOTO 0x7b3
 MOVLW 0x11
 MOVWF 0x26
 MOVLW 0x1
 MOVWF 0x25
 MOVLW 0x72
 GOTO 0x72a
 BCF 0x2b, 0x5
 CALL 0xa8
 BCF 0x72, 0x1
 CALL 0xc9
 BSF 0x72, 0x5
 BSF 0x72, 0x6
 MOVLW 0x64
 MOVWF 0x77
 BSF 0x38, 0x6
 BSF 0x2b, 0
 GOTO 0x7d0
 BCF 0x72, 0x1
 CALL 0x123
 CALL 0x77
 GOTO 0x7d0
 CALL 0xb0
 BCF PORTC, 0x5
 BCF INTCON, 0x1
 BSF INTCON, 0x4
 BTFSC 0x2b, 0x3
 BTFSS 0x2b, 0x4
 GOTO 0x7da
 BCF 0x2b, 0x3
 BCF 0x2b, 0x4
 BSF PCLATH, 0x3
 GOTO 0x779
 BTFSC 0x2b, 0x5
 GOTO 0x2af
 GOTO 0x14b
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff

 
 
 

 

 
 
 org 800
 
 
 
 
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0 
 RETLW 0 
 RETLW 0x32
 RETLW 0x96
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x4
 RETLW 0x32
 RETLW 0x96
 RETLW 0 
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x1e
 RETLW 0x4b
 RETLW 0x96
 RETLW 0xe1
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0xa
 RETLW 0x14
 RETLW 0x1e
 RETLW 0x28
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0xbd
 RETLW 0xc7
 RETLW 0xd9
 RETLW 0xe7
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x4
 RETLW 0x6
 RETLW 0x9
 RETLW 0xf
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x64
 RETLW 0xa
 RETLW 0xf
 RETLW 0x14
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0 
 RETLW 0x2
 RETLW 0x6
 RETLW 0xc
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x4
 RETLW 0x12
 RETLW 0x4
 RETLW 0x4
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x4
 RETLW 0x12
 RETLW 0x4
 RETLW 0x96
 ANDLW 0x3
 ADDWF PCL, F
 RETLW 0x50
 RETLW 0x54
 RETLW 0x58
 RETLW 0x5c
 BSF STATUS, 0x5
 MOVLW 0x55
 MOVWF 0x3b
 MOVLW 0x4
 MOVWF 0x3a
 MOVLW 0x4
 MOVWF 0x39
 MOVLW 0x57
 MOVWF 0x38
 MOVLW 0x8
 MOVWF 0x37
 MOVLW 0x30
 MOVWF 0x36
 MOVLW 0x12
 MOVWF 0x35
 MOVLW 0x3
 MOVWF 0x34
 MOVLW 0xc
 MOVWF 0x25
 MOVLW 0x30
 MOVWF 0x24
 CLRWDT
 MOVF 0x25, W
 XORLW 0x1
 BTFSC STATUS, 0x2
 GOTO 0x81
 BCF STATUS, 0
 MOVLW 0x1
 BTFSC 0x32, 0x3
 MOVLW 0x10
 MOVWF 0x26
 BTFSS 0x31, 0
 GOTO 0x65
 RLF 0x26, F
 RLF 0x26, F
 BTFSC 0x30, 0
 RLF 0x26, F
 MOVLW 0 
 BTFSC 0x33, 0x1
 IORLW 0x2
 BTFSC 0x33, 0x6
 IORLW 0x4
 ADDWF PCL, F
 MOVLW 0x2e
 GOTO 0x74
 MOVLW 0x74
 GOTO 0x74
 MOVLW 0x5c
 GOTO 0x74
 MOVLW 0x3a
 ANDWF 0x26, F
 MOVLW 0 
 BTFSS STATUS, 0x2
 MOVLW 0x80
 XORWF 0x31, W
 XORWF 0x33, W
 XORWF 0x35, W
 MOVWF 0x26
 RLF 0x26, F
 RLF 0x30, F
 RLF 0x31, F
 RLF 0x32, F
 RLF 0x33, F
 BCF STATUS, 0
 BTFSC 0x3b, 0x7
 BSF STATUS, 0
 RLF 0x34, F
 RLF 0x35, F
 RLF 0x36, F
 RLF 0x37, F
 RLF 0x38, F
 RLF 0x39, F
 RLF 0x3a, F
 RLF 0x3b, F
 DECFSZ 0x24, F
 GOTO 0x57
 DECFSZ 0x25, F
 GOTO 0x55
 MOVF 0x33, W
 BCF STATUS, 0x5
 XORWF 0x37, W
 BSF STATUS, 0x5
 ANDLW 0xf0
 BTFSS STATUS, 0x2
 GOTO 0xc7
 MOVLW 0x3
 ANDWF 0x33, F
 MOVLW 0x3
 BCF STATUS, 0x5
 ANDWF 0x3c, W
 BSF STATUS, 0x5
 XORWF 0x33, W
 BTFSS STATUS, 0x2
 GOTO 0xc7
 MOVF 0x32, W
 BCF STATUS, 0x5
 XORWF 0x3b, W
 BSF STATUS, 0x5
 BTFSS STATUS, 0x2
 GOTO 0xc7
 BSF STATUS, 0
 MOVF 0x27, W
 XORWF 0x28, W
 BTFSS STATUS, 0x2
 GOTO 0xbe
 MOVF 0x30, W
 MOVWF 0x24
 MOVF 0x31, W
 MOVWF 0x25
 MOVF 0x3c, W
 SUBWF 0x24, F
 BTFSS STATUS, 0
 DECF 0x25, F
 MOVF 0x3d, W
 SUBWF 0x25, F
 MOVF 0x25, F
 BTFSC STATUS, 0x2
 GOTO 0xba
 BCF STATUS, 0
 GOTO 0xbe
 MOVF 0x24, W
 BTFSC STATUS, 0x2
 GOTO 0xc6
 SUBLW 0x10
 MOVF 0x30, W
 MOVWF 0x3c
 MOVF 0x31, W
 MOVWF 0x3d
 MOVF 0x27, W
 MOVWF 0x28
 BSF STATUS, 0x2
 BTFSS STATUS, 0
 BCF STATUS, 0x2
 BCF STATUS, 0x5
 GOTO 0x732
 BSF STATUS, 0x5
 MOVLW 0 
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVLW 0x69
 MOVWF ADCON0
 CALL 0x672
 BSF ADCON0, 0x2
 BTFSC ADCON0, 0x2
 GOTO 0xd1
 CLRF ADCON0
 BSF STATUS, 0x5
 MOVLW 0x7
 MOVWF ADCON0
 BCF STATUS, 0x5
 GOTO 0x732
 BSF STATUS, 0x5
 MOVLW 0x4
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVLW 0x41
 MOVWF ADCON0
 CALL 0x672
 BSF ADCON0, 0x2
 BTFSC ADCON0, 0x2
 GOTO 0xe1
 CLRF ADCON0
 BSF STATUS, 0x5
 MOVLW 0x7
 MOVWF ADCON0
 BCF STATUS, 0x5
 CALL 0x2f0
 MOVF ADRES, W
 SUBLW 0xff
 MOVWF 0x32
 MOVLW 0xe
 SUBWF 0x32, F
 BTFSS STATUS, 0
 GOTO 0x1be
 MOVLW 0xcc
 SUBWF 0x32, W
 BTFSC STATUS, 0
 GOTO 0x1b7
 MOVLW 0xb3
 SUBWF 0x32, W
 BTFSC STATUS, 0
 GOTO 0x12f
 MOVLW 0x8e
 SUBWF 0x32, W
 BTFSC STATUS, 0
 GOTO 0x12c
 MOVLW 0x65
 SUBWF 0x32, W
 BTFSC STATUS, 0
 GOTO 0x11f
 MOVLW 0x39
 SUBWF 0x32, W
 BTFSC STATUS, 0
 GOTO 0x111
 MOVLW 0xe
 SUBWF 0x32, W
 BTFSC STATUS, 0
 GOTO 0x10e
 MOVF 0x32, W
 BTFSC STATUS, 0x2
 GOTO 0x13d
 DECF 0x32, W
 ADDWF 0x32, F
 GOTO 0x13d
 MOVLW 0xe
 ADDWF 0x32, F
 GOTO 0x13d
 MOVF 0x32, W
 SUBLW 0x65
 BTFSC STATUS, 0x2
 GOTO 0x13d
 MOVWF 0x33
 MOVLW 0x3
 ADDWF 0x33, F
 BCF STATUS, 0
 RRF 0x33, F
 BCF STATUS, 0
 RRF 0x33, F
 MOVF 0x33, W
 ADDWF 0x32, F
 GOTO 0x13d
 MOVLW 0x65
 SUBWF 0x32, W
 BTFSC STATUS, 0x2
 GOTO 0x13d
 MOVWF 0x33
 DECF 0x33, F
 BCF STATUS, 0
 RRF 0x33, F
 BCF STATUS, 0
 RRF 0x33, F
 MOVF 0x33, W
 SUBWF 0x32, F
 GOTO 0x13d
 MOVLW 0xa
 SUBWF 0x32, F
 GOTO 0x13d
 MOVF 0x32, W
 SUBLW 0xcb
 BTFSC STATUS, 0x2
 GOTO 0x13d
 MOVWF 0x33
 BCF STATUS, 0
 RRF 0x33, W
 ADDWF 0x33, F
 BCF STATUS, 0
 RRF 0x33, F
 BCF STATUS, 0
 RRF 0x33, F
 MOVF 0x33, W
 SUBWF 0x32, F
 MOVF 0x32, W
 MOVWF 0x33
 MOVF 0x6e, W
 BTFSC STATUS, 0x2
 GOTO 0x145
 XORLW 0x2
 BTFSS STATUS, 0x2
 GOTO 0x18b
 CLRF 0x30
 CLRF 0x31
 CLRF 0x33
 MOVLW 0x64
 MOVWF 0x26
 MOVLW 0x7
 MOVWF 0x25
 RRF 0x26, F
 BTFSS STATUS, 0
 GOTO 0x155
 MOVF 0x32, W
 ADDWF 0x30, F
 BTFSC STATUS, 0
 INCF 0x31, F
 MOVF 0x33, W
 ADDWF 0x31, F
 BCF STATUS, 0
 RLF 0x32, F
 RLF 0x33, F
 DECFSZ 0x25, F
 GOTO 0x14c
 MOVF 0x6e, W
 BTFSC STATUS, 0x2
 GOTO 0x160
 XORLW 0x2
 BTFSS STATUS, 0x2
 GOTO 0x176
 CLRF 0x32
 CLRF 0x33
 MOVLW 0x9
 MOVWF 0x25
 MOVLW 0xb8
 SUBWF 0x31, W
 BTFSC STATUS, 0
 GOTO 0x16d
 MOVF 0x32, F
 BTFSC STATUS, 0x2
 GOTO 0x16e
 CLRF 0x32
 BSF STATUS, 0
 MOVWF 0x31
 RLF 0x33, F
 BCF STATUS, 0
 RLF 0x30, F
 RLF 0x31, F
 RLF 0x32, F
 DECFSZ 0x25, F
 GOTO 0x164
 GOTO 0x18b
 CLRF 0x32
 CLRF 0x33
 MOVLW 0x9
 MOVWF 0x25
 MOVLW 0x67
 SUBWF 0x31, W
 BTFSC STATUS, 0
 GOTO 0x183
 MOVF 0x32, F
 BTFSC STATUS, 0x2
 GOTO 0x184
 CLRF 0x32
 BSF STATUS, 0
 MOVWF 0x31
 RLF 0x33, F
 BCF STATUS, 0
 RLF 0x30, F
 RLF 0x31, F
 RLF 0x32, F
 DECFSZ 0x25, F
 GOTO 0x17a
 MOVLW 0x28
 SUBWF 0x33, W
 BTFSC STATUS, 0
 GOTO 0x194
 MOVF 0x33, W
 SUBLW 0x28
 MOVWF 0x32
 MOVLW 0xa0
 GOTO 0x196
 MOVWF 0x32
 MOVLW 0xf0
 MOVWF 0x38
 SWAPF 0x32, W
 ANDLW 0xf
 CLRF 0x26
 MOVWF 0x25
 INCF 0x25, F
 MOVF 0x32, W
 ANDLW 0xf
 MOVWF 0x39
 GOTO 0x1a2
 MOVLW 0x16
 ADDWF 0x39, F
 MOVLW 0xa
 SUBWF 0x39, W
 BTFSS STATUS, 0x1
 GOTO 0x1ae
 ADDLW 0x10
 MOVWF 0x39
 MOVLW 0xa0
 SUBWF 0x39, W
 BTFSS STATUS, 0
 GOTO 0x1ae
 MOVWF 0x39
 INCF 0x26, F
 DECFSZ 0x25, F
 GOTO 0x1a0
 MOVF 0x26, W
 BTFSC STATUS, 0x2
 GOTO 0x1c4
 SWAPF 0x26, W
 ANDLW 0xf0
 MOVWF 0x38
 GOTO 0x1ca
 MOVLW 0xf4
 MOVWF 0x38
 MOVLW 0x61
 MOVWF 0x39
 MOVLW 0xf0
 ANDWF 0x3a, F
 GOTO 0x1c4
 MOVLW 0xfc
 MOVWF 0x38
 MOVLW 0x8a
 MOVWF 0x39
 MOVLW 0xf0
 ANDWF 0x3a, F
 MOVLW 0xf0
 ANDWF 0x39, W
 BTFSS STATUS, 0x2
 GOTO 0x1ca
 MOVLW 0xf0
 IORWF 0x39, F
 SWAPF 0x39, F
 MOVLW 0xf0
 ANDWF 0x3a, F
 MOVF 0x6e, W
 BTFSC STATUS, 0x2
 GOTO 0x1d3
 XORLW 0x2
 BTFSS STATUS, 0x2
 GOTO 0x1d5
 MOVLW 0x9
 GOTO 0x1d6
 MOVLW 0xb
 IORWF 0x3a, F
 GOTO 0x732
 BCF STATUS, 0
 RRF 0x4b, W
 MOVWF 0x26
 SWAPF 0x26, W
 ANDLW 0xf
 MOVWF 0x25
 INCF 0x25, F
 MOVF 0x26, W
 ANDLW 0xf
 MOVWF 0x39
 CLRF 0x26
 GOTO 0x1e6
 MOVLW 0x16
 ADDWF 0x39, F
 MOVLW 0xa
 SUBWF 0x39, W
 BTFSS STATUS, 0x1
 GOTO 0x1f2
 ADDLW 0x10
 MOVWF 0x39
 MOVLW 0xa0
 SUBWF 0x39, W
 BTFSS STATUS, 0
 GOTO 0x1f2
 MOVWF 0x39
 INCF 0x26, F
 DECFSZ 0x25, F
 GOTO 0x1e4
 MOVLW 0xc2
 MOVWF 0x38
 SWAPF 0x39, F
 MOVLW 0xf0
 ANDWF 0x3a, F
 BSF 0x3a, 0x3
 GOTO 0x732
 MOVLW 0xf8
 MOVWF 0x38
 MOVLW 0xd5
 MOVWF 0x39
 MOVLW 0xf0
 ANDWF 0x3a, F
 BSF 0x3a, 0x3
 GOTO 0x732
 MOVLW 0xf8
 MOVWF 0x38
 MOVLW 0xb5
 MOVWF 0x39
 MOVLW 0xf0
 ANDWF 0x3a, F
 BSF 0x3a, 0x3
 GOTO 0x732
 MOVF 0x78, F
 BTFSC STATUS, 0x2
 GOTO 0x210
 MOVLW 0x1
 MOVWF 0x43
 BCF 0x2b, 0x5
 BCF 0x72, 0x6
 BTFSC 0x72, 0x4
 BSF 0x2b, 0
 BCF 0x72, 0x4
 BCF 0x73, 0x1
 BCF 0x73, 0x2
 BCF 0x72, 0x5
 CLRF 0x41
 BCF PORTD, 0x3
 CLRF 0x77
 CLRF 0x78
 CLRF 0x79
 BCF 0x28, 0x1
 BCF 0x72, 0x7
 BCF 0x2a, 0x6
 BTFSC 0x2a, 0x7
 GOTO 0x732
 BCF PORTC, 0x2
 MOVF 0x6e, W
 BTFSC STATUS, 0x2
 GOTO 0x232
 XORLW 0x3
 BTFSS STATUS, 0x2
 GOTO 0x230
 GOTO 0x232
 MOVF 0x6e, W
 BTFSC STATUS, 0x2
 GOTO 0x230
 XORLW 0x3
 BTFSS STATUS, 0x2
 GOTO 0x232
 BCF PORTB, 0x2
 GOTO 0x732
 BSF PORTB, 0x2
 GOTO 0x732
 BSF 0x2b, 0x7
 BSF 0x29, 0
 GOTO 0x23b
 BSF 0x29, 0
 BTFSS 0x29, 0
 BCF 0x29, 0
 BCF 0x2b, 0x7
 CLRF 0x44
 MOVWF 0x21
 INCF 0x21, F
 CLRF 0x22
 BTFSS 0x29, 0
 GOTO 0x24b
 MOVLW 0x5
 SUBWF 0x21, W
 BTFSS STATUS, 0
 GOTO 0x248
 MOVWF 0x21
 INCF 0x22, F
 GOTO 0x241
 MOVF 0x22, W
 BTFSC STATUS, 0x2
 BCF 0x29, 0
 BTFSS 0x2b, 0x7
 BTFSS 0x72, 0x1
 BSF PORTD, 0x3
 BSF PORTC, 0x5
 MOVF 0x65, W
 CALL 0x24
 MOVWF 0x23
 CALL 0x668
 BTFSS 0x29, 0
 GOTO 0x257
 CALL 0x668
 CALL 0x668
 DECFSZ 0x23, F
 GOTO 0x252
 BCF PORTD, 0x3
 BCF PORTC, 0x5
 BTFSC 0x29, 0
 GOTO 0x260
 DECFSZ 0x21, F
 GOTO 0x260
 GOTO 0x732
 MOVF 0x65, W
 BTFSS STATUS, 0x2
 CALL 0x59b
 CALL 0x599
 BTFSS 0x29, 0
 GOTO 0x24b
 CALL 0x59b
 DECFSZ 0x22, F
 GOTO 0x24b
 BCF 0x29, 0
 MOVF 0x21, W
 BTFSS STATUS, 0x2
 GOTO 0x24b
 GOTO 0x732
 MOVWF 0x23
 MOVLW 0x8
 MOVWF 0x22
 BCF PORTC, 0x4
 BTFSC 0x23, 0x7
 BSF PORTC, 0x4
 BSF PORTC, 0x5
 BCF PORTC, 0x5
 RLF 0x23, F
 DECFSZ 0x22, F
 GOTO 0x271
 RETURN
 CLRF 0x44
 CLRF 0x4d
 BCF PORTC, 0x5
 BSF PORTC, 0x6
 BSF PORTC, 0x4
 BSF PORTC, 0x5
 BCF PORTC, 0x5
 MOVLW 0x80
 ADDWF 0x26, W
 CALL 0x26e
 BSF STATUS, 0x5
 BSF PORTC, 0x4
 BCF STATUS, 0x5
 MOVLW 0x10
 MOVWF 0x21
 BSF PORTC, 0x5
 BCF PORTC, 0x5
 BCF STATUS, 0
 BTFSC PORTC, 0x4
 BSF STATUS, 0
 RLF INDF, F
 INCF FSR, F
 RLF INDF, F
 DECF FSR, F
 DECFSZ 0x21, F
 GOTO 0x289
 BCF PORTC, 0x6
 BSF STATUS, 0x5
 BCF PORTC, 0x4
 BCF STATUS, 0x5
 INCF 0x26, F
 INCF FSR, F
 INCF FSR, F
 DECFSZ 0x25, F
 GOTO 0x27a
 RETURN
 CLRF 0x44
 CLRF 0x4d
 BCF PORTC, 0x5
 BTFSS 0x2b, 0
 GOTO 0x2e1
 BSF PORTC, 0x6
 BSF PORTC, 0x4
 BSF PORTC, 0x5
 BCF PORTC, 0x5
 MOVLW 0x30
 CALL 0x26e
 BCF PORTC, 0x6
 BTFSS 0x2b, 0
 GOTO 0x2d2
 BSF PORTC, 0x6
 BSF PORTC, 0x4
 BSF PORTC, 0x5
 BCF PORTC, 0x5
 MOVLW 0x40
 ADDWF 0x26, W
 CALL 0x26e
 INCF FSR, F
 MOVF INDF, W
 CALL 0x26e
 DECF FSR, F
 MOVF INDF, W
 CALL 0x26e
 BCF PORTC, 0x6
 BSF STATUS, 0x5
 BSF PORTC, 0x4
 BCF STATUS, 0x5
 BSF PORTC, 0x6
 CLRF 0x21
 BTFSC PORTC, 0x4
 GOTO 0x2d2
 CALL 0x668
 DECFSZ 0x21, F
 GOTO 0x2bf
 BCF PORTC, 0x6
 BSF STATUS, 0x5
 BCF PORTC, 0x4
 BCF STATUS, 0x5
 MOVLW 0x6
 MOVWF 0x21
 BSF PORTC, 0x5
 CALL 0x59b
 BCF PORTC, 0x5
 DECFSZ 0x21, F
 GOTO 0x2d0
 GOTO 0x2e1
 CALL 0x59b
 GOTO 0x2ca
 BCF PORTC, 0x6
 BSF STATUS, 0x5
 BCF PORTC, 0x4
 BCF STATUS, 0x5
 INCF 0x26, F
 INCF FSR, F
 INCF FSR, F
 DECFSZ 0x25, F
 GOTO 0x2ac
 BSF PORTC, 0x6
 BSF PORTC, 0x4
 BSF PORTC, 0x5
 BCF PORTC, 0x5
 MOVLW 0 
 CALL 0x26e
 BCF PORTC, 0x6
 BCF PORTC, 0x4
 BCF 0x2b, 0
 GOTO 0x732
 BSF PORTC, 0x2
 CALL 0x22a
 BSF 0x72, 0x4
 MOVLW 0xfc
 MOVWF 0x41
 BTFSC 0x72, 0x5
 GOTO 0x2ee
 BSF 0x72, 0x5
 CALL 0x4a1
 BCF PCLATH, 0x3
 GOTO 0x2ac
 BSF 0x2c, 0x5
 GOTO 0x2f5
 BTFSS 0x28, 0x3
 GOTO 0x2f2
 BCF 0x2c, 0x5
 BTFSS 0x28, 0x3
 GOTO 0x421
 CLRWDT
 BCF 0x28, 0x3
 MOVF 0x40, W
 BTFSS STATUS, 0x2
 DECFSZ 0x40, F
 GOTO 0x30c
 BCF PORTD, 0x7
 BTFSS PORTD, 0x6
 GOTO 0x306
 BCF PORTD, 0x6
 BTFSS 0x73, 0x4
 GOTO 0x30c
 MOVLW 0x5
 MOVWF 0x40
 GOTO 0x30c
 BTFSS 0x73, 0x4
 GOTO 0x30c
 BCF 0x73, 0x4
 BSF PORTD, 0x6
 MOVLW 0x4
 MOVWF 0x40
 BSF STATUS, 0x5
 MOVF 0x21, W
 BTFSS STATUS, 0x2
 DECFSZ 0x21, F
 GOTO 0x313
 BCF STATUS, 0x5
 BCF PORTD, 0x4
 BSF STATUS, 0x5
 MOVF 0x22, W
 BTFSS STATUS, 0x2
 DECFSZ 0x22, F
 GOTO 0x31a
 BCF STATUS, 0x5
 BCF PORTD, 0x5
 BSF STATUS, 0x5
 MOVF 0x23, W
 BTFSS STATUS, 0x2
 DECFSZ 0x23, F
 GOTO 0x321
 BCF STATUS, 0x5
 BCF PORTC, 0x7
 BCF STATUS, 0x5
 MOVF 0x27, W
 BTFSS STATUS, 0x2
 DECF 0x27, F
 MOVF 0x76, W
 BTFSS STATUS, 0x2
 DECFSZ 0x76, F
 GOTO 0x32a
 BCF PORTB, 0x1
 BTFSC 0x72, 0
 GOTO 0x359
 BTFSC PORTC, 0x1
 GOTO 0x338
 BSF 0x29, 0x5
 MOVF 0x79, W
 BTFSS STATUS, 0x2
 DECFSZ 0x79, F
 GOTO 0x359
 MOVLW 0x1
 MOVWF 0x43
 BSF 0x28, 0x2
 BCF 0x73, 0
 GOTO 0x359
 BTFSS 0x29, 0x5
 GOTO 0x341
 BTFSS 0x28, 0x1
 GOTO 0x34d
 MOVF 0x79, W
 BTFSS STATUS, 0x2
 GOTO 0x355
 BCF 0x28, 0x1
 GOTO 0x358
 BTFSS 0x2c, 0x4
 BTFSS 0x28, 0x1
 GOTO 0x359
 MOVF 0x78, W
 BTFSS STATUS, 0x2
 DECFSZ 0x78, F
 GOTO 0x369
 BSF 0x72, 0x7
 BCF 0x72, 0x4
 CLRF 0x77
 BSF 0x2b, 0
 GOTO 0x369
 BTFSS PORTA, 0x4
 GOTO 0x358
 BTFSS PORTE, 0x1
 BSF 0x2c, 0x4
 MOVLW 0x96
 MOVWF 0x78
 MOVLW 0x97
 MOVWF 0x43
 MOVLW 0x19
 MOVWF 0x79
 BSF 0x28, 0x1
 BCF 0x29, 0x5
 MOVF 0x77, W
 BTFSS STATUS, 0x2
 DECFSZ 0x77, F
 GOTO 0x369
 MOVLW 0x3
 MOVWF 0x43
 MOVLW 0x19
 MOVWF 0x4a
 BSF 0x72, 0x4
 BCF 0x2a, 0x6
 BSF 0x2b, 0
 BCF 0x2c, 0x2
 MOVLW 0x9
 MOVWF 0x42
 CLRF 0x7e
 BCF 0x73, 0
 BTFSC 0x2a, 0x6
 GOTO 0x395
 BTFSS PORTE, 0x1
 GOTO 0x378
 BTFSC 0x2d, 0x3
 GOTO 0x395
 BSF 0x2d, 0x3
 BCF 0x72, 0x5
 BCF 0x2c, 0x4
 BSF 0x2c, 0x2
 BTFSS 0x2a, 0x7
 BCF 0x2b, 0x1
 CLRF 0x4f
 BCF 0x2b, 0x6
 GOTO 0x395
 BTFSS 0x2c, 0x2
 BTFSS 0x2d, 0x3
 GOTO 0x395
 BCF 0x2d, 0x3
 BTFSC 0x73, 0x7
 BTFSS 0x2a, 0x7
 GOTO 0x380
 BSF 0x2b, 0x1
 BSF 0x2c, 0x3
 BTFSS 0x2b, 0x3
 BTFSS 0x73, 0x6
 GOTO 0x38e
 CLRF 0x4f
 MOVLW 0x32
 BTFSS 0x73, 0x5
 BTFSC 0x73, 0x7
 GOTO 0x38b
 BTFSC PORTA, 0x4
 GOTO 0x38e
 MOVWF 0x4f
 BSF 0x2b, 0x3
 BSF 0x28, 0
 BTFSC 0x72, 0x4
 GOTO 0x395
 MOVF 0x78, F
 BTFSS STATUS, 0x2
 GOTO 0x395
 MOVLW 0x1
 MOVWF 0x43
 BSF STATUS, 0x5
 MOVLW 0x4
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVLW 0x59
 MOVWF ADCON0
 CALL 0x672
 BSF ADCON0, 0x2
 BTFSC ADCON0, 0x2
 GOTO 0x39d
 CLRF ADCON0
 BSF STATUS, 0x5
 MOVLW 0x7
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVF ADRES, W
 SUBLW 0x1e
 BTFSS STATUS, 0
 GOTO 0x3ae
 BTFSC 0x2d, 0
 GOTO 0x3b7
 BSF 0x2d, 0
 BSF 0x2c, 0x2
 BCF 0x2b, 0x1
 GOTO 0x3b7
 MOVF ADRES, W
 SUBLW 0xc8
 BTFSC STATUS, 0
 BSF 0x2b, 0x4
 BTFSS 0x2c, 0x2
 BTFSS 0x2d, 0
 GOTO 0x3b7
 BCF 0x2d, 0
 BSF 0x2c, 0x3
 BTFSC PORTC, 0x3
 GOTO 0x3be
 BTFSC 0x2d, 0x2
 GOTO 0x3c7
 BSF 0x2d, 0x2
 BSF 0x2c, 0x2
 GOTO 0x3c7
 BTFSS 0x2c, 0x2
 BTFSS 0x2d, 0x2
 GOTO 0x3c7
 BCF 0x2d, 0x2
 BSF 0x2c, 0x3
 BTFSS 0x2a, 0x7
 BCF 0x73, 0x1
 MOVLW 0x19
 MOVWF 0x4a
 MOVF 0x4e, W
 BTFSC STATUS, 0x2
 GOTO 0x3cc
 DECF 0x4e, F
 BCF 0x2c, 0x2
 BTFSS PORTC, 0
 GOTO 0x3d4
 BTFSC 0x2d, 0x1
 GOTO 0x3d9
 BSF 0x2d, 0x1
 BSF 0x2c, 0x2
 BCF 0x2b, 0x1
 GOTO 0x3d9
 BTFSS 0x2c, 0x2
 BTFSS 0x2d, 0x1
 GOTO 0x3d9
 BCF 0x2d, 0x1
 BSF 0x2c, 0x3
 BTFSS PORTA, 0x5
 BSF 0x29, 0x7
 MOVF 0x4f, W
 BTFSS STATUS, 0x2
 DECFSZ 0x4f, F
 GOTO 0x3e0
 BSF 0x2b, 0x6
 MOVF 0x3f, W
 BTFSS STATUS, 0x2
 DECF 0x3f, F
 MOVF 0x4a, W
 BTFSS STATUS, 0x2
 DECF 0x4a, F
 MOVF 0x43, W
 BTFSS 0x2c, 0x4
 BTFSC STATUS, 0x2
 GOTO 0x3f1
 BTFSS 0x43, 0x1
 BCF PORTB, 0x3
 BTFSC 0x43, 0x1
 BSF PORTB, 0x3
 DECFSZ 0x43, F
 GOTO 0x3f1
 BCF PORTB, 0x3
 MOVF 0x44, W
 BTFSC STATUS, 0x2
 GOTO 0x3fa
 DECF 0x44, F
 BTFSS 0x44, 0
 GOTO 0x3fa
 MOVLW 0x32
 MOVWF 0x4d
 BSF PORTC, 0x5
 MOVF 0x7e, W
 BTFSS STATUS, 0x2
 DECFSZ 0x7e, F
 GOTO 0x400
 BSF 0x73, 0
 BSF 0x2b, 0
 DECFSZ 0x46, F
 GOTO 0x421
 MOVLW 0x96
 MOVWF 0x46
 MOVF 0x4b, W
 BTFSS STATUS, 0x2
 DECF 0x4b, F
 BSF STATUS, 0x5
 MOVF 0x2a, W
 BTFSC STATUS, 0x2
 GOTO 0x40d
 DECFSZ 0x2a, F
 GOTO 0x40f
 BCF STATUS, 0x5
 BCF 0x2a, 0x3
 BCF STATUS, 0x5
 BTFSS 0x28, 0x7
 GOTO 0x421
 MOVF 0x48, W
 BTFSS STATUS, 0x2
 DECFSZ 0x47, F
 GOTO 0x421
 MOVLW 0x78
 MOVWF 0x47
 MOVF 0x48, W
 BTFSS STATUS, 0x2
 DECFSZ 0x48, F
 GOTO 0x421
 BSF STATUS, 0x5
 MOVF 0x2b, W
 BCF STATUS, 0x5
 MOVWF 0x48
 BSF 0x28, 0x5
 BTFSS 0x2c, 0x5
 BCF PCLATH, 0x3
 RETURN
 BSF STATUS, 0x5
 MOVLW 0x2
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVLW 0x51
 MOVWF ADCON0
 CALL 0x672
 BSF ADCON0, 0x2
 BTFSC ADCON0, 0x2
 GOTO 0x42c
 MOVF ADRES, W
 BSF STATUS, 0x5
 ADDWF 0x2d, F
 RRF 0x2d, F
 BCF STATUS, 0x5
 BTFSC 0x28, 0x3
 GOTO 0x438
 MOVF 0x7d, W
 BTFSS STATUS, 0x2
 GOTO 0x428
 CLRF ADCON0
 MOVLW 0x7
 MOVWF ADCON0
 BCF STATUS, 0x5
 CALL 0x2f0
 MOVF 0x7d, W
 BTFSS STATUS, 0x2
 GOTO 0x424
 RETURN
 MOVF 0x6c, W
 XORLW 0x3
 BTFSS STATUS, 0x2
 RETURN
 BTFSC 0x72, 0x4
 BCF STATUS, 0x2
 RETURN
 MOVF 0x6d, W
 BTFSS STATUS, 0x2
 GOTO 0x44d
 MOVLW 0x64
 GOTO 0x451
 XORLW 0x1
 BTFSS STATUS, 0x2
 GOTO 0x732
 MOVLW 0x96
 MOVWF 0x76
 BSF PORTB, 0x1
 GOTO 0x732
 MOVF 0x6d, W
 XORLW 0x2
 BTFSS STATUS, 0x2
 GOTO 0x45a
 MOVLW 0x64
 GOTO 0x45f
 MOVF 0x6d, W
 XORLW 0x3
 BTFSS STATUS, 0x2
 GOTO 0x732
 MOVLW 0x96
 MOVWF 0x76
 BSF PORTB, 0x1
 GOTO 0x732
 MOVF 0x77, W
 BTFSS STATUS, 0x2
 GOTO 0x467
 BCF 0x38, 0x6
 BTFSC 0x72, 0x4
 BSF 0x38, 0x6
 BTFSC 0x72, 0x1
 BSF 0x38, 0x4
 BTFSC 0x72, 0x5
 BSF 0x38, 0x5
 BTFSC 0x2b, 0x6
 BTFSS 0x73, 0x6
 GOTO 0x475
 MOVF 0x6b, W
 XORLW 0x1
 BTFSS STATUS, 0x2
 GOTO 0x475
 BCF 0x38, 0x5
 BCF 0x72, 0x5
 BTFSC 0x72, 0
 BSF 0x39, 0x7
 BTFSC 0x28, 0x7
 BSF 0x3a, 0
 BTFSC 0x72, 0x3
 BSF 0x3a, 0x1
 BTFSC 0x2a, 0x7
 BSF 0x38, 0x7
 BTFSC 0x2a, 0x1
 BSF 0x39, 0x1
 MOVF 0x78, F
 BTFSC STATUS, 0x2
 BTFSC 0x72, 0x7
 BSF 0x39, 0x5
 BTFSC 0x2c, 0x1
 GOTO 0x495
 MOVF 0x4e, W
 BTFSS STATUS, 0x2
 GOTO 0x48a
 BTFSC 0x73, 0x1
 BSF 0x39, 0x1
 BTFSC 0x73, 0x2
 BSF 0x39, 0
 BTFSC 0x2d, 0x3
 BSF 0x38, 0
 BTFSC 0x2d, 0x2
 BSF 0x38, 0x2
 BTFSC 0x2d, 0
 BSF 0x38, 0x3
 BTFSC 0x2d, 0x1
 BSF 0x3a, 0x2
 GOTO 0x732
 BTFSC 0x2d, 0x7
 BSF 0x38, 0
 BTFSC 0x2d, 0x6
 BSF 0x38, 0x2
 BTFSC 0x2d, 0x4
 BSF 0x38, 0x3
 BTFSC 0x2d, 0x5
 BSF 0x3a, 0x2
 GOTO 0x732
 BTFSC 0x72, 0x5
 GOTO 0x732
 BSF 0x72, 0x5
 BSF PORTD, 0x7
 MOVF 0x68, W
 CALL 0x36
 MOVWF 0x40
 GOTO 0x732
 MOVLW 0x3
 MOVWF 0x26
 BTFSC 0x2a, 0x6
 GOTO 0x4ac
 BTFSC PORTE, 0x1
 GOTO 0x4b3
 BTFSC PORTC, 0x3
 BTFSC 0x2d, 0
 GOTO 0x4b3
 BTFSC PORTC, 0
 GOTO 0x4b3
 BSF STATUS, 0x2
 GOTO 0x732
 CALL 0x59b
 DECFSZ 0x26, F
 GOTO 0x4a8
 BCF STATUS, 0x2
 GOTO 0x732
 MOVLW 0x3
 MOVWF 0x26
 BTFSC PORTB, 0x6
 GOTO 0x4bf
 BTFSC PORTA, 0x4
 GOTO 0x4c4
 BCF 0x2a, 0x7
 BTFSS 0x2d, 0
 BTFSC PORTC, 0
 GOTO 0x4c4
 BCF STATUS, 0x2
 GOTO 0x732
 CALL 0x2f0
 CALL 0x59b
 DECFSZ 0x26, F
 GOTO 0x4ba
 BSF STATUS, 0x2
 GOTO 0x732
 MOVLW 0x3
 MOVWF 0x26
 BTFSS 0x2d, 0
 BTFSC PORTC, 0
 GOTO 0x4d1
 BCF STATUS, 0x2
 GOTO 0x732
 CALL 0x2f0
 CALL 0x59b
 DECFSZ 0x26, F
 GOTO 0x4cc
 BSF STATUS, 0x2
 GOTO 0x732
 BTFSC 0x2a, 0x3
 GOTO 0x732
 BSF STATUS, 0x5
 MOVLW 0x4
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVLW 0x41
 BTFSC 0x2b, 0x4
 MOVLW 0x59
 MOVWF ADCON0
 CALL 0x672
 BSF ADCON0, 0x2
 BTFSC ADCON0, 0x2
 GOTO 0x4e3
 CLRF ADCON0
 BSF STATUS, 0x5
 MOVLW 0x7
 MOVWF ADCON0
 BCF STATUS, 0x5
 MOVF ADRES, W
 SUBLW 0xfa
 BTFSC STATUS, 0
 GOTO 0x4f0
 BCF 0x72, 0x3
 GOTO 0x732
 MOVF 0x61, W
 CALL 0x18
 BTFSC 0x2b, 0x4
 ADDLW 0xd
 SUBWF ADRES, W
 BTFSS STATUS, 0
 GOTO 0x732
 BTFSS 0x2a, 0x3
 BSF 0x28, 0x6
 GOTO 0x732
 MOVLW 0x40
 MOVWF 0x7d
 CALL 0x424
 BSF STATUS, 0x5
 MOVF 0x2d, W
 MOVWF 0x2c
 MOVLW 0x1a
 ADDWF 0x2c, W
 BTFSC STATUS, 0
 MOVLW 0xff
 MOVWF 0x2c
 BCF STATUS, 0x5
 BSF 0x29, 0x6
 GOTO 0x732
 MOVLW 0x40
 MOVWF 0x7d
 BSF STATUS, 0x5
 MOVF 0x2c, W
 MOVWF 0x2d
 CALL 0x424
 BSF STATUS, 0x5
 MOVF 0x2c, W
 SUBWF 0x2d, W
 BCF STATUS, 0x5
 GOTO 0x732
 BCF 0x29, 0x4
 BCF 0x29, 0x3
 MOVLW 0x80
 MOVWF 0x7d
 BCF 0x29, 0x1
 BTFSC 0x29, 0x1
 GOTO 0x522
 CALL 0x2f0
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x557
 BTFSC PORTA, 0x1
 GOTO 0x518
 BSF 0x29, 0x1
 GOTO 0x51a
 BCF 0x29, 0x1
 CLRF 0x7b
 CLRF 0x7c
 BTFSC 0x29, 0x1
 GOTO 0x531
 INCFSZ 0x7c, F
 GOTO 0x52d
 INCF 0x7b, F
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x557
 BTFSC PORTA, 0x1
 GOTO 0x525
 BSF 0x29, 0x1
 GOTO 0x527
 CALL 0x2f0
 MOVF 0x7b, W
 MOVWF 0x74
 MOVF 0x7c, W
 MOVWF 0x75
 BCF STATUS, 0
 RRF 0x7b, F
 RRF 0x7c, F
 BCF STATUS, 0
 RRF 0x7b, F
 RRF 0x7c, F
 BTFSC 0x2a, 0x4
 GOTO 0x546
 MOVF 0x7c, W
 SUBWF 0x75, F
 BTFSS STATUS, 0
 DECF 0x74, F
 MOVF 0x7b, W
 SUBWF 0x74, F
 BSF 0x72, 0x2
 GOTO 0x732
 MOVF 0x7c, W
 ADDWF 0x75, F
 BTFSS STATUS, 0
 GOTO 0x54e
 MOVLW 0x1
 ADDWF 0x74, F
 BTFSC STATUS, 0
 GOTO 0x552
 MOVF 0x7b, W
 ADDWF 0x74, F
 BTFSS STATUS, 0
 GOTO 0x555
 MOVLW 0xff
 MOVWF 0x74
 MOVWF 0x75
 BSF 0x72, 0x2
 GOTO 0x732
 BSF 0x29, 0x3
 GOTO 0x732
 BCF 0x29, 0x4
 MOVLW 0x80
 MOVWF 0x7d
 BCF 0x29, 0x1
 GOTO 0x562
 BCF 0x29, 0x4
 MOVLW 0x40
 MOVWF 0x7d
 BCF 0x29, 0x1
 BTFSC 0x29, 0x1
 GOTO 0x56c
 CALL 0x2f0
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x732
 BTFSC PORTA, 0x1
 GOTO 0x562
 BSF 0x29, 0x1
 GOTO 0x564
 BCF 0x29, 0x1
 CLRF 0x7b
 CLRF 0x7c
 BTFSC 0x29, 0x1
 GOTO 0x57b
 INCFSZ 0x7c, F
 GOTO 0x577
 INCF 0x7b, F
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x732
 BTFSC PORTA, 0x1
 GOTO 0x56f
 BSF 0x29, 0x1
 GOTO 0x571
 CALL 0x2f0
 MOVF 0x74, W
 SUBWF 0x7b, W
 BTFSC STATUS, 0x2
 GOTO 0x583
 BTFSS STATUS, 0
 BSF 0x29, 0x4
 GOTO 0x732
 MOVF 0x75, W
 SUBWF 0x7c, W
 BTFSS STATUS, 0
 BSF 0x29, 0x4
 GOTO 0x732
 BCF 0x29, 0x4
 MOVLW 0x40
 MOVWF 0x7d
 BCF 0x29, 0x1
 BTFSC 0x29, 0x1
 GOTO 0x596
 CALL 0x2f0
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x732
 BTFSC PORTA, 0x1
 GOTO 0x58c
 BSF 0x29, 0x1
 GOTO 0x58e
 BSF 0x29, 0x4
 BCF 0x29, 0x3
 GOTO 0x732
 MOVLW 0 
 GOTO 0x59c
 MOVLW 0x80
 MOVWF 0x23
 CLRF 0x24
 CALL 0x2f0
 DECFSZ 0x24, F
 GOTO 0x59f
 DECFSZ 0x23, F
 GOTO 0x59f
 RETURN
 BSF 0x39, 0x3
 BSF 0x39, 0x2
 BCF 0x2a, 0x7
 MOVLW 0xf
 ANDWF PORTB, F
 MOVLW 0x19
 MOVWF 0x4a
 BCF 0x73, 0x7
 BCF 0x28, 0x4
 CLRF 0x4b
 BCF PORTD, 0x2
 BCF PORTC, 0x5
 BTFSC 0x72, 0x4
 GOTO 0x732
 BCF PORTC, 0x2
 GOTO 0x223
 MOVLW 0x32
 MOVWF 0x49
 CALL 0x687
 BSF PCLATH, 0x3
 BTFSS 0x29, 0x2
 GOTO 0x5db
 BTFSC 0x37, 0x5
 MOVLW 0x1
 BTFSC 0x37, 0x6
 MOVLW 0x2
 BTFSC 0x37, 0x7
 MOVLW 0x4
 BTFSC 0x37, 0x4
 MOVLW 0xc
 MOVWF 0x48
 MOVF 0x48, W
 BSF STATUS, 0x5
 MOVWF 0x2b
 BCF STATUS, 0x5
 BTFSC 0x37, 0x5
 MOVLW 0 
 BTFSC 0x37, 0x6
 MOVLW 0x1
 BTFSC 0x37, 0x7
 MOVLW 0x2
 BTFSC 0x37, 0x4
 MOVLW 0x3
 CALL 0x239
 MOVLW 0x8
 MOVWF 0x3a
 MOVLW 0xf0
 MOVWF 0x38
 SWAPF 0x48, W
 BTFSC 0x37, 0x4
 MOVLW 0x21
 MOVWF 0x39
 CALL 0x107
 CALL 0x69
 BSF PCLATH, 0x3
 DECFSZ 0x49, F
 GOTO 0x5b6
 GOTO 0x732
 BCF 0x2a, 0x4
 MOVF 0x63, W
 XORLW 0x2
 BTFSC STATUS, 0x2
 BSF 0x2a, 0x4
 GOTO 0x732
 BTFSC 0x72, 0
 GOTO 0x732
 MOVF 0x69, W
 SUBLW 0x1
 BTFSC STATUS, 0
 GOTO 0x5ec
 MOVLW 0x96
 MOVWF 0x7e
 BTFSC PORTE, 0x1
 GOTO 0x732
 MOVF 0x6b, W
 XORLW 0x1
 BTFSC STATUS, 0x2
 GOTO 0x5f6
 MOVF 0x6b, W
 XORLW 0x2
 BTFSS STATUS, 0x2
 GOTO 0x732
 BSF 0x73, 0x6
 BCF 0x2b, 0x3
 GOTO 0x732
 BCF 0x2c, 0x5
 MOVLW 0xa0
 XORWF 0x37, W
 BTFSS STATUS, 0x2
 GOTO 0x600
 BSF 0x72, 0x7
 GOTO 0x732
 BCF 0x37, 0
 MOVLW 0x40
 XORWF 0x37, W
 GOTO 0x732
 BCF 0x37, 0
 MOVLW 0x20
 XORWF 0x37, W
 GOTO 0x732
 SWAPF 0x26, W
 ADDLW 0x10
 MOVWF 0x24
 MOVLW 0xf
 ANDWF 0x3a, F
 MOVF 0x24, W
 IORWF 0x3a, F
 MOVLW 0x1
 MOVWF 0x26
 MOVLW 0xa
 GOTO 0x62d
 MOVLW 0x1
 MOVWF 0x26
 MOVLW 0x46
 GOTO 0x62d
 MOVLW 0x5
 MOVWF 0x26
 GOTO 0x62c
 BCF PIR1, 0x1
 BSF STATUS, 0x5
 BSF PORTE, 0x2
 BSF PIR1, 0x1
 BCF STATUS, 0x5
 MOVLW 0x2
 MOVWF 0x25
 BCF PCLATH, 0x3
 CALL 0x6d
 BSF PCLATH, 0x3
 BTFSC 0x29, 0x2
 GOTO 0x65f
 BTFSS PORTA, 0x4
 GOTO 0x62a
 BTFSC INTCON, 0x1
 GOTO 0x65f
 DECFSZ 0x25, F
 GOTO 0x621
 MOVLW 0x4
 MOVWF 0x21
 BCF 0x29, 0x2
 BCF PORTE, 0x2
 BSF STATUS, 0x5
 BCF PORTE, 0x2
 BCF PIR1, 0x1
 BCF STATUS, 0x5
 MOVLW 0x30
 MOVWF 0x25
 MOVLW 0x6
 MOVWF 0x22
 BSF PORTE, 0x2
 CALL 0x668
 BCF PORTE, 0x2
 CALL 0x668
 DECFSZ 0x22, F
 GOTO 0x638
 RRF 0x3d, F
 RRF 0x3a, F
 RRF 0x39, F
 RRF 0x38, F
 RRF 0x3c, F
 RRF 0x3b, F
 BTFSC STATUS, 0
 GOTO 0x64c
 BSF PORTE, 0x2
 CALL 0x670
 BCF 0x3d, 0x7
 BCF PORTE, 0x2
 CALL 0x66e
 GOTO 0x651
 BSF PORTE, 0x2
 CALL 0x66c
 BSF 0x3d, 0x7
 BCF PORTE, 0x2
 CALL 0x66a
 DECFSZ 0x25, F
 GOTO 0x63e
 BSF PORTE, 0x2
 CALL 0x2f0
 BTFSS PORTA, 0x4
 GOTO 0x659
 BTFSC INTCON, 0x1
 GOTO 0x65f
 DECFSZ 0x21, F
 GOTO 0x634
 CALL 0x668
 BCF PORTE, 0x2
 DECFSZ 0x26, F
 GOTO 0x61a
 BCF PIR1, 0x1
 BSF STATUS, 0x5
 BSF PORTE, 0x2
 BSF PIR1, 0x1
 BCF STATUS, 0x5
 CLRF 0x38
 CLRF 0x39
 CLRF 0x3a
 GOTO 0x732
 MOVLW 0xc7
 GOTO 0x675
 MOVLW 0x61
 GOTO 0x675
 MOVLW 0x63
 GOTO 0x675
 MOVLW 0x2f
 GOTO 0x675
 MOVLW 0x31
 GOTO 0x675
 MOVLW 0x1
 NOP   
 NOP   
 MOVWF 0x24
 NOP   
 NOP   
 DECFSZ 0x24, F
 GOTO 0x676
 RETURN
 MOVLW 0x2
 MOVWF 0x25
 BCF PCLATH, 0x3
 CALL 0x6d
 BSF PCLATH, 0x3
 BTFSC 0x29, 0x2
 GOTO 0x67b
 DECFSZ 0x25, F
 GOTO 0x67d
 GOTO 0x732
 BSF 0x2c, 0x7
 BTFSS 0x2c, 0x7
 BCF 0x2c, 0x7
 BCF 0x29, 0x2
 MOVLW 0x7
 MOVWF 0x22
 MOVLW 0x19
 MOVWF 0x7d
 CALL 0x2f0
 MOVLW 0x40
 MOVWF 0x21
 BCF 0x29, 0
 BCF 0x29, 0x1
 CLRF 0x7c
 BTFSC INTCON, 0x1
 GOTO 0x730
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x730
 MOVLW 0x2
 MOVWF 0x7f
 NOP   
 NOP   
 DECFSZ 0x7c, F
 GOTO 0x69f
 GOTO 0x68d
 BTFSC PORTE, 0x2
 GOTO 0x6ac
 MOVLW 0x2
 MOVWF 0x7f
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x730
 MOVLW 0x9c
 SUBWF 0x7c, W
 BTFSS STATUS, 0
 BSF 0x29, 0
 GOTO 0x6ab
 GOTO 0x69a
 NOP   
 DECFSZ 0x7f, F
 GOTO 0x6a6
 BTFSS 0x29, 0
 GOTO 0x68d
 MOVLW 0x78
 MOVWF 0x7b
 NOP   
 DECFSZ 0x7b, F
 GOTO 0x6b7
 GOTO 0x68d
 BTFSS PORTE, 0x2
 GOTO 0x6bc
 MOVLW 0x5
 MOVWF 0x7f
 GOTO 0x6b3
 DECFSZ 0x7f, F
 GOTO 0x6b3
 BTFSC INTCON, 0x1
 GOTO 0x730
 BTFSC 0x29, 0x1
 GOTO 0x6c5
 MOVF 0x7d, W
 BTFSC STATUS, 0x2
 GOTO 0x730
 MOVLW 0x78
 MOVWF 0x7c
 NOP   
 DECFSZ 0x7c, F
 GOTO 0x6cb
 GOTO 0x68d
 BTFSC PORTE, 0x2
 GOTO 0x6d0
 MOVLW 0x5
 MOVWF 0x7f
 GOTO 0x6c7
 DECFSZ 0x7f, F
 GOTO 0x6c7
 MOVF 0x7c, W
 SUBWF 0x7b, W
 RRF 0x37, F
 RRF 0x36, F
 RRF 0x35, F
 RRF 0x34, F
 RRF 0x33, F
 RRF 0x32, F
 RRF 0x31, F
 RRF 0x30, F
 BSF 0x29, 0x1
 DECFSZ 0x21, F
 GOTO 0x6b1
 BTFSS 0x2c, 0x7
 GOTO 0x6e3
 BSF 0x29, 0x2
 GOTO 0x732
 MOVF 0x70, W
 BTFSC STATUS, 0x2
 GOTO 0x6ea
 MOVLW 0x5
 SUBWF 0x70, W
 BTFSS STATUS, 0
 GOTO 0x6ec
 MOVLW 0x1
 MOVWF 0x70
 MOVF 0x70, W
 MOVWF 0x21
 MOVLW 0x50
 MOVWF FSR
 BCF 0x29, 0
 MOVF 0x34, W
 XORWF INDF, W
 BTFSS STATUS, 0x2
 BSF 0x29, 0
 INCF FSR, F
 MOVF 0x35, W
 XORWF INDF, W
 BTFSS STATUS, 0x2
 BSF 0x29, 0
 INCF FSR, F
 MOVF 0x36, W
 XORWF INDF, W
 BTFSS STATUS, 0x2
 BSF 0x29, 0
 INCF FSR, F
 MOVF 0x37, W
 ANDLW 0xf
 XORWF INDF, W
 BTFSS STATUS, 0x2
 BSF 0x29, 0
 BTFSS 0x29, 0
 GOTO 0x70b
 INCF FSR, F
 DECFSZ 0x21, F
 GOTO 0x6f0
 GOTO 0x68d
 BSF 0x29, 0x2
 MOVF 0x34, W
 MOVWF 0x3b
 MOVF 0x35, W
 MOVWF 0x3c
 MOVF 0x36, W
 MOVWF 0x3d
 MOVF 0x37, W
 ANDLW 0xf
 MOVWF 0x3e
 MOVLW 0xf0
 ANDWF 0x37, F
 MOVF 0x37, W
 MOVWF 0x23
 MOVF 0x30, W
 BSF STATUS, 0x5
 MOVWF 0x30
 BCF STATUS, 0x5
 MOVF 0x31, W
 BSF STATUS, 0x5
 MOVWF 0x31
 BCF STATUS, 0x5
 MOVF 0x32, W
 BSF STATUS, 0x5
 MOVWF 0x32
 BCF STATUS, 0x5
 MOVF 0x33, W
 BSF STATUS, 0x5
 MOVWF 0x33
 BCF STATUS, 0x5
 MOVF 0x21, W
 BSF STATUS, 0x5
 MOVWF 0x27
 BCF STATUS, 0x5
 DECFSZ 0x22, F
 GOTO 0x68b
 BSF 0x23, 0
 MOVF 0x23, W
 MOVWF 0x37
 BCF PCLATH, 0x3
 RETURN
 CLRF PORTA
 CLRF PORTB
 CLRF PORTC
 CLRF PORTD
 CLRF PORTE
 BSF STATUS, 0x5
 MOVLW 0xff
 MOVWF PORTA
 MOVLW 0x1
 MOVWF PORTB
 MOVLW 0xb
 MOVWF PORTC
 MOVLW 0x3
 MOVWF PORTD
 MOVLW 0x7
 MOVWF PORTE
 MOVLW 0x8f
 MOVWF TMR0
 MOVLW 0xfa
 MOVWF T2CON
 BCF STATUS, 0x5
 CLRF INTCON
 CLRF PIR1
 MOVLW 0x5f
 MOVWF 0x20
 MOVLW 0x21
 MOVWF FSR
 CLRF INDF
 INCF FSR, F
 DECFSZ 0x20, F
 GOTO 0x74f
 MOVLW 0x3
 MOVWF 0x7a
 MOVLW 0x96
 MOVWF 0x46
 MOVLW 0x78
 MOVWF 0x47
 MOVLW 0x9
 MOVWF 0x42
 MOVLW 0xa8
 MOVWF CCPR1L
 MOVLW 0x61
 MOVWF CCPR1H
 MOVLW 0x31
 MOVWF T1CON
 MOVLW 0x7c
 MOVWF T2CON
 MOVLW 0xb
 MOVWF CCP1CON
 BSF STATUS, 0x5
 MOVLW 0x50
 MOVWF INTCON
 MOVLW 0x7
 MOVWF PIR1
 MOVLW 0x7
 MOVWF ADCON0
 BCF STATUS, 0x5
 BCF PCLATH, 0x3
 GOTO 0x13b
 MOVLW 0x13
 MOVWF 0x25
 MOVLW 0x50
 MOVWF FSR
 CLRF 0x26
 CALL 0x27a
 MOVLW 0x33
 XORWF 0x71, W
 BTFSC STATUS, 0x2
 GOTO 0x79a
 MOVLW 0x1
 MOVWF 0x60
 MOVLW 0x1
 MOVWF 0x61
 CLRF 0x62
 CLRF 0x63
 CLRF 0x64
 CLRF 0x65
 CLRF 0x66
 CLRF 0x67
 CLRF 0x68
 CLRF 0x69
 CLRF 0x6a
 CLRF 0x6b
 CLRF 0x6c
 CLRF 0x6d
 CLRF 0x6e
 CLRF 0x6f
 MOVLW 0x33
 MOVWF 0x71
 MOVLW 0x2
 MOVWF 0x70
 CLRF 0x72
 CLRF 0x73
 MOVLW 0x8
 MOVWF 0x26
 MOVLW 0xa
 MOVWF 0x25
 MOVLW 0x60
 MOVWF FSR
 BSF 0x2b, 0
 CALL 0x29e
 BSF PCLATH, 0x3
 MOVF 0x50, W
 MOVWF 0x3b
 MOVF 0x51, W
 MOVWF 0x3c
 MOVF 0x52, W
 MOVWF 0x3d
 MOVF 0x53, W
 MOVWF 0x3e
 MOVLW 0x7
 ANDWF 0x73, F
 BCF PCLATH, 0x3
 GOTO 0x144
 MOVF 0x34, W
 SUBWF 0x3b, W
 BTFSS STATUS, 0x2
 GOTO 0x7b6
 MOVF 0x35, W
 SUBWF 0x3c, W
 BTFSS STATUS, 0x2
 GOTO 0x7b6
 MOVF 0x36, W
 SUBWF 0x3d, W
 BTFSS STATUS, 0x2
 GOTO 0x7b6
 MOVF 0x37, W
 SUBWF 0x3e, W
 BTFSC STATUS, 0x2
 GOTO 0x7c0
 MOVLW 0x5
 MOVWF 0x26
 MOVF 0x34, W
 MOVWF 0x3b
 MOVF 0x35, W
 MOVWF 0x3c
 MOVF 0x36, W
 MOVWF 0x3d
 MOVF 0x37, W
 MOVWF 0x3e
 BCF PCLATH, 0x3
 GOTO 0x64b
 MOVLW 0x11
 MOVWF 0x26
 MOVLW 0x1
 MOVWF 0x25
 MOVLW 0x72
 MOVWF FSR
 BSF 0x2b, 0
 CALL 0x29e
 GOTO 0x14c
 MOVLW 0x7
 ANDWF 0x4c, F
 MOVF 0x4c, W
 MOVWF 0x70
 INCF 0x70, F
 CALL 0x3c
 MOVWF FSR
 MOVWF 0x23
 MOVF 0x3b, W
 MOVWF INDF
 INCF FSR, F
 MOVF 0x3c, W
 MOVWF INDF
 INCF FSR, F
 MOVF 0x3d, W
 MOVWF INDF
 INCF FSR, F
 MOVF 0x3e, W
 MOVWF INDF
 BCF STATUS, 0
 RLF 0x4c, W
 MOVWF 0x26
 MOVF 0x23, W
 MOVWF FSR
 MOVLW 0x2
 MOVWF 0x25
 BSF 0x2b, 0
 CALL 0x29e
 BSF PCLATH, 0x3
 MOVLW 0x70
 MOVWF FSR
 MOVLW 0x10
 MOVWF 0x26
 MOVLW 0x1
 MOVWF 0x25
 BSF 0x2b, 0
 CALL 0x29e
 GOTO 0x667
 BTFSC 0x2b, 0x3
 GOTO 0x7fb
 MOVLW 0x8
 MOVWF 0x26
 MOVLW 0x8
 MOVWF 0x25
 MOVLW 0x60
 MOVWF FSR
 BSF 0x2b, 0
 CALL 0x29e
 BCF PCLATH, 0x3
 GOTO 0x7cf
 ADDLW 0xff
 ADDLW 0xff
 ADDLW 0xff
 end



Схема:

Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Пн сен 23, 2024 22:25:34 
Потрогал лапой паяльник

Карма: -15
Рейтинг сообщений: -30
Зарегистрирован: Пн июн 03, 2024 22:29:24
Сообщений: 311
Рейтинг сообщения: 0
Дзассемблировать код ? Это круто !

Добавлено after 1 minute 51 second:
Re: Изменить функцию в прошивке от сигнализации авто. PIC16F74
Это вообще мало вероятно , но что бы ещё и бесплатно - это невозможно .


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Пн сен 23, 2024 23:39:41 
Родился

Зарегистрирован: Пт авг 18, 2017 21:38:31
Сообщений: 10
Рейтинг сообщения: 0
Дзассемблировать код ? Это круто !
Вы в первые про это слышите ?

Re: Изменить функцию в прошивке от сигнализации авто. PIC16F74
Это вообще мало вероятно
Всё вероятно, я уже там чтото меняю и оно меняется )

но что бы ещё и бесплатно - это невозможно .
Я в правильный форум попал, там где людям бесплатно помогают ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 00:35:32 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 5
Рейтинг сообщений: 18
Зарегистрирован: Ср сен 11, 2024 10:18:53
Сообщений: 182
Рейтинг сообщения: 0
Я в правильный форум попал, там где людям бесплатно помогают ?

В правильный, если люди правильные исходные данные дают.
Загрузите лучше исходный hex файл, для нормального дизасма.
Глядишь и помощь будет.


Вернуться наверх
 
Выбираем индустриальные и медицинские источники питания MEAN WELL в открытом исполнении

Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 07:24:12 
Нашел транзистор. Понюхал.

Карма: 4
Рейтинг сообщений: 20
Зарегистрирован: Чт сен 19, 2024 19:18:28
Сообщений: 159
Рейтинг сообщения: 0
По идее, нужно сиё творение закинуть в Протеус, запустить симуляцию и пытаться разобрать работу кода и отловить моменты именно втам. Потому что по тексту, содержащему сплошные goto и бессмысленный набор цифр, можно полгода возиться.
Правильный дизассемблер должен сразу подставлять вместо цифр имена регистров и битов.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 07:28:17 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1430
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4564
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
goga55 писал(а):
Когда срабатывает датчик объема, то он сажает эту линию (через сопротивление) на массу и активируется предупреждающий сигнал для отпугивания воров и.т.п
goga55 писал(а):
а при активации датчика удара то звучит сирена секунд 25
А куда сажает при датчике удара ?
Это Вам вопрос-подсказка, по поводу ноги порта :)


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 11:20:41 
Говорящий с текстолитом

Карма: 25
Рейтинг сообщений: 450
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1633
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
Что происходит после reset МК? Устройство снова готово – да?
Идея: с напр. компаратором отсчитать примерно 5 понижений уровня вывода 25.
Если выполняется - сброс. Но это дополнительная схема. Возможно с внешним МК.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 11:54:43 
Нашел транзистор. Понюхал.

Карма: 4
Рейтинг сообщений: 20
Зарегистрирован: Чт сен 19, 2024 19:18:28
Сообщений: 159
Рейтинг сообщения: 0
В Протеусе не оказалось PIC16F74. Поставил MPLAB, создал проект, запустил. Мдя, жэсть. Учитывая, что тыщщу лет не занимался ПИК-ами, толком ниче не понял. Ассемблер в общих чертах помню, но ковырять огромнейшую простыню дизасма - сизифов труд. Нужно пошагово идти по всем этим строкам, разбирая всю логику работы прошивки.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 18:02:19 
Родился

Зарегистрирован: Пт авг 18, 2017 21:38:31
Сообщений: 10
Рейтинг сообщения: 0
Извините за задержку появились дела, вопрос актуален и отвечу всем!

Загрузите лучше исходный hex файл, для нормального дизасма. Глядишь и помощь будет.
Исходный hex:
Вложение:
Комментарий к файлу: Исходный hex:
PIC16F74-X56.HEX [22.57 KiB]
Скачиваний: 120


Базилюк писал(а):
По идее, нужно сиё творение закинуть в Протеус, запустить симуляцию и пытаться разобрать работу кода и отловить моменты именно втам. Потому что по тексту, содержащему сплошные goto и бессмысленный набор цифр, можно полгода возиться.
Да и я заметил, что goto переходы по адресам а не по названием.
Я питался в Протеус но PIC16F74 там не оказалось но, Протеус предлагает его добавить и в таком случае прошивку не дает в него загрузить.
Я пробовал и в MPLAB симулятор запускать но дело вот в чем. В MPLAB при симуляции циклически что-то происходит и не доходит дело до PORTE 0. Когда я на самом блоке сигналки отключаю кабель блока антенны и затем включаю блок то релюшки тоже циклически щелкают - скорее всего блок сигналки ожидает ответа от блока антенны и как мне реализовать блок антенны для MPLAB я не в курсе да еще и симулировать массу на 25 пин якобы блок датчика удара.


Аlex писал(а):
А куда сажает при датчике удара ? Это Вам вопрос-подсказка, по поводу ноги порта :)
Так я писал, что PORTE 0 сажает на массу но в самом коде не могу обнаружить обращение к этому порту и для меня это тупик, так как я этот язык 3 дня как начал осваивать - как решу свою проблему так и забуду его опять ))


veso74 писал(а):
Что происходит после reset МК? Устройство снова готово – да? Идея: с напр. компаратором отсчитать примерно 5 понижений уровня вывода 25. Если выполняется - сброс. Но это дополнительная схема. Возможно с внешним МК.
Если сигналка находится в охране и сделать сброс то она после загрузки начинает орать ((


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 18:33:15 
Нашел транзистор. Понюхал.

Карма: 4
Рейтинг сообщений: 20
Зарегистрирован: Чт сен 19, 2024 19:18:28
Сообщений: 159
Рейтинг сообщения: 0
В MPLAB при симуляции циклически что-то происходит и не доходит дело до PORTE 0. ((

Да, я это тоже заметил. Зацикливается где-то на АЦП. Симуляция входных сигналов в MPLAB работает как-то хреново и запутанно. Я не помню, как её пользоваться. Раньше я использовал связку MPLAB + Proteus.
В общем, тут нужно просто долго и кропотливо разбирать код, раскладывая всё по полочкам.

Цитата:
goto переходы по адресам а не по названием.

А другого и не будет. Машинные команды не содержат названий, они содержат только адреса. Названия переходов нужно самостоятельно присваивать.
Хекс можно попытаться через AID-у прогнать, она может попытаться восстановить сишный вид текста.

Цитата:
но в самом коде не могу обнаружить обращение к этому порту

Просто выполните поиск по тексту PORTE. Найдете инструкции BTFSC PORTE, 0x1 - это означает чтение ноги 1.

Цитата:
так как я этот язык 3 дня как начал осваивать

хыхыхы, а я уже лет 15 как не использовал этот язык :) Поэтому так же сложно разбираться. Что-то помню, что-то нет. В принципе, там всего то набор из 35 инструкций, не слишком сложно Но текста прошивки много, много времени будет потрачено


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 21:54:12 
Родился

Зарегистрирован: Пт авг 18, 2017 21:38:31
Сообщений: 10
Рейтинг сообщения: 0
Просто выполните поиск по тексту PORTE. Найдете инструкции BTFSC PORTE, 0x1 - это означает чтение ноги 1.
Уважаемый, PORTE, 0x1 это разве не RE1 ? если это всё же RE0 то тогда всё понятно. В коде присутствует обращение к PORTE, 0x1 и если это RE0 то буду копаться и разбираться. Я искал в коде именно PORTE, 0.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 23:17:56 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 5
Рейтинг сообщений: 18
Зарегистрирован: Ср сен 11, 2024 10:18:53
Сообщений: 182
Рейтинг сообщения: 5
Я искал в коде именно PORTE, 0.

Гору осилит идущий. Вот вам более - менее читабельный асм.
Проверяйте в железе, изменяйте, пробуйте. Думаю всё получится ! :)


Вложения:
signal.asm [166.78 KiB]
Скачиваний: 129
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 23:28:25 
Нашел транзистор. Понюхал.

Карма: 4
Рейтинг сообщений: 20
Зарегистрирован: Чт сен 19, 2024 19:18:28
Сообщений: 159
Рейтинг сообщения: 0
PORTE, 0x1 в данном случае означает не номер бита (ножки), а значение, с которым сравнивается число из регистра.
Ошибся, давно не занимался PIC16.


Последний раз редактировалось Базилюк Ср сен 25, 2024 08:30:41, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 23:39:01 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1430
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4564
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
goga55 писал(а):
Так я писал, что PORTE 0 сажает на массу но в самом коде не могу обнаружить обращение к этому порту и для меня это тупик, так как я этот язык 3 дня как начал осваивать - как решу свою проблему так и забуду его опять ))
Вы писали, что один из датчиков сажает на массу. А про второй умолчали.
Так что делает второй датчик ? Тоже на массу сажает ? Как тогда их программа различает ? :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Вт сен 24, 2024 23:49:07 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 5
Рейтинг сообщений: 18
Зарегистрирован: Ср сен 11, 2024 10:18:53
Сообщений: 182
Рейтинг сообщения: 0
BTFSS PORTE, RE0
BTFSC PORTE, RE0
это непосредственно определение состояния 0 или 1 входа RE0
И в программе их нет, там сделано немного иначе.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Ср сен 25, 2024 00:25:13 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1430
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4564
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
zAries писал(а):
там сделано немного иначе
Конечно иначе.

Ну, раз ТС не понимает намёков, тогда вот ему функцию :
СпойлерИзображение
Надеюсь, объяснять не нужно, что тут делается.

Добавлено after 17 minutes 57 seconds:
PORTE, 0x1 в данном случае означает не номер бита (ножки), а значение, с которым сравнивается число из регистра.
Зависит от команды.
Если это btfsc(s), то в операнде - номер бита. А значит, там должен быть "0".


Вложения:
2024-09-25_00-05-17.png [12.86 KiB]
Скачиваний: 382
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Ср сен 25, 2024 05:32:07 
Родился

Зарегистрирован: Пт авг 18, 2017 21:38:31
Сообщений: 10
Рейтинг сообщения: 0
Гору осилит идущий. Вот вам более - менее читабельный асм. Проверяйте в железе, изменяйте, пробуйте. Думаю всё получится ! :)
Огромное спасибо! Я пробовал в IDA но ничего у меня не получалось )) У вас какая версия ? Код заработал сразу но с глюками, сравнив с моим кодом понял в чем дело - сейчас всё ок!

Базилюк писал(а):
PORTE, 0x1 в данном случае означает не номер бита (ножки), а значение, с которым сравнивается число из регистра.
Спасибо за подсказку!

Аlex писал(а):
Вы писали, что один из датчиков сажает на массу. А про второй умолчали.
Так что делает второй датчик ? Тоже на массу сажает ? Как тогда их программа различает ? :)
И второй сажает на массу. Если посмотреть на схему то видно, что 25 ножка идет на две вывода, один просто через диод (это удара, т.е. сигналка будет орать секунд 25), а второй через сопротивление 10 ком и диод - это объема, сигналка будет выдавать предупреждения т.е. 3 раза щелкнет колоколом и при этом подмигивая аварийными. Это всё как-то различает программа благодаря резистору.

Аlex писал(а):
Ну, раз ТС не понимает намёков, тогда вот ему функцию :
СпойлерИзображение
Надеюсь, объяснять не нужно, что тут делается.
Нет, намеков точно не понял )) В функции по скрину понял, что там ожидается масса с датчиков проводя при этом эксперименты, отключить ограничение пока не удалось ))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Ср сен 25, 2024 07:18:59 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 5
Рейтинг сообщений: 18
Зарегистрирован: Ср сен 11, 2024 10:18:53
Сообщений: 182
Рейтинг сообщения: 0
Нет, намеков точно не понял ))
В функции по скрину понял, что там ожидается масса с датчиков проводя при этом эксперименты, отключить ограничение пока не удалось ))

Нет, там происходит аналого-цифровое преобразование.
Напряжение со входа преобразуется в код.
В одном случае получается меньше (когда к массе притянуто),
в другом - больше (когда через резистор).
А потом этот код, уже с чем то сравнивают.
Так и различают, какой датчик на линии сработал.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Ср сен 25, 2024 08:24:17 
Нашел транзистор. Понюхал.

Карма: 4
Рейтинг сообщений: 20
Зарегистрирован: Чт сен 19, 2024 19:18:28
Сообщений: 159
Рейтинг сообщения: 0
Если это btfsc(s), то в операнде - номер бита. А значит, там должен быть "0".

Тады ой :) Ну я ж говорю, я ж лет 15 не брал в руки ПИК16. Сейчас чето по памяти всплывает. Но видимо не достаточно хорошо всплывает, надо маны читать.

Ага, всё верно, операнд - это номер позиции бита, он от 0 до 7. Тогда в связи с этим, мой предыдущий пост прошу считать недействительным.
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Изменить функцию в прошивке от сигнализации авто. PIC16F
СообщениеДобавлено: Ср сен 25, 2024 12:18:55 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1430
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4564
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
goga55 писал(а):
Нет, намеков точно не понял
Выше уже всё расписали про АЦП.
Но как-то странно, что Вы не задались вопросом "А как программа разливает датчики ?", при условии, что они оба (по Вашему мнению) подают одинаковый сигнал на ногу проца.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  1,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y