Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
;
; ╔═════════════════════════════════════════════════════════════════════════╗
; ║ This file is generated by The Interactive Disassembler (IDA) ║
; ║ Copyright (c) 2005 by DataRescue sa/nv,║
; ║ Licensed to: Lennart Reus, 1 user, std, 07/2003 ║
; ╚═════════════════════════════════════════════════════════════════════════╝
;
; ───────────────────────────────────────────────────────────────────────────
; File Name : C:\work\testdll\debug\1.BIN
; Format : Binary file
; Base Address: 0000h Range: 0000h - 0096h Loaded length: 0096h; Processor : AVR [ATtiny_11_12]
; Target assembler: AVR Assembler; ═══════════════════════════════════════════════════════════════════════════
; Segment type: Pure code
.CSEG ; ROM
.org 0
rjmp __RESET ; External Pin, Power-on Reset, Brown-out Reset and Watchdog Reset
; ───────────────────────────────────────────────────────────────────────────
.org 1
rjmp INT0_ ; External Interrupt Request 0
.org 2; ███████████████ S U B R O U T I N E ███████████████████████████████████████
; Pin Change Interrupt
; public I_O_Pins
I_O_Pins:
reti
; End of function I_O_Pins; ───────────────────────────────────────────────────────────────────────────
.org 3
rjmp TIMER0_OVF0 ; Timer/Counter0 Overflow
.org 4; ███████████████ S U B R O U T I N E ███████████████████████████████████████
; EEPROM Ready
; public EE_RDY
EE_RDY:
reti
; End of function EE_RDY.org 5
; ███████████████ S U B R O U T I N E ███████████████████████████████████████
; Analog Comparator
; public ANA_COMP
ANA_COMP:
reti
; End of function ANA_COMP; ───────────────────────────────────────────────────────────────────────────
.dw 0x9518 ; Х; ███████████████ S U B R O U T I N E ███████████████████████████████████████
; External Pin, Power-on Reset, Brown-out Reset and Watchdog Reset
; public __RESET
__RESET: ; CODE XREF: ROM:0000j; FUNCTION CHUNK AT 0072 SIZE 00000023 BYTES
ldi r30, 9
ldi r20, 0
ldi r21, 0
ldi r22, 0
ldi r23, 0
ldi r24, 0
ldi r25, 0
ldi r26, 0
rjmp loc_72
; End of function __RESET
; ███████████████ S U B R O U T I N E ███████████████████████████████████████; Timer/Counter0 Overflow
; public TIMER0_OVF0
TIMER0_OVF0: ; CODE XREF: ROM:0003j
in r0, SREG
dec r30
st Z, r0
dec r30
st Z, r27
dec r30
subi r21, -1
sbci r20, -1
ldi r27, -0x77 ; 'Й'
out TCNT0, r27
inc r30
ld r27, Z
inc r30
ld r0, Z
inc r30
out SREG, r0
reti
; End of function TIMER0_OVF0
; ███████████████ S U B R O U T I N E ███████████████████████████████████████; External Interrupt Request 0
; public INT0_
INT0_: ; CODE XREF: ROM:0001j
in r0, SREG
dec r30
st Z, r0
dec r30
st Z, r28
dec r30
st Z, r27
dec r30
inc r26
cpi r26, 6
breq loc_2D
rjmp loc_4C
; ───────────────────────────────────────────────────────────────────────────loc_2D: ; CODE XREF: INT0_+Aj
ldi r26, 0
out TCCR0, r26
cp r23, r21
cpc r22, r20
brcc loc_34
cbi PORTB, PORTB3
cbi PORTB, PORTB4loc_34: ; CODE XREF: INT0_+10j
cp r25, r21
cpc r24, r20
brcc loc_3C
cp r21, r23
cpc r20, r22
brcc loc_3C
sbi PORTB, PORTB3
cbi PORTB, PORTB4loc_3C: ; CODE XREF: INT0_+15j INT0_+18j
ldi r27, 1
ldi r28, 0
cp r27, r21
cpc r28, r20
brcc loc_46
cp r21, r25
cpc r20, r24
brcc loc_46
cbi PORTB, PORTB3
sbi PORTB, PORTB4loc_46: ; CODE XREF: INT0_+1Fj INT0_+22j
ldi r27, -0x77 ; 'Й'
out TCNT0, r27
ldi r21, 0
clr r20
ldi r27, 1
out TCCR0, r27loc_4C: ; CODE XREF: INT0_+Bj
inc r30
ld r27, Z
inc r30
ld r28, Z
inc r30
ld r0, Z
inc r30
out SREG, r0
reti
; End of function INT0_
; ███████████████ S U B R O U T I N E ███████████████████████████████████████
sub_55: ; CODE XREF: __RESET+75p __RESET+77p ...
ser r16
ser r17loc_57: ; CODE XREF: sub_55+4j
subi r16, 1
sbci r17, 0
brne loc_57
ser r16
ser r17loc_5C: ; CODE XREF: sub_55+9j
subi r16, 1
sbci r17, 0
brne loc_5C
ret
; End of function sub_55
; ███████████████ S U B R O U T I N E ███████████████████████████████████████
sub_60: ; CODE XREF: __RESET+6Fp
cli
ldi r27, 0x1F
out PORTB, r27
ldi r28, 0x18
out DDRB, r28
ldi r27, 0
out TCCR0, r27
ldi r28, -0x77 ; 'Й'
out TCNT0, r28
ldi r27, 2
out MCUCR, r27
ldi r28, 0x40 ; '@'
out GIMSK, r28
out TIMSK, r27
ldi r27, 0
out EECR, r27
sei
ret
; End of function sub_60; ───────────────────────────────────────────────────────────────────────────
; START OF FUNCTION CHUNK FOR __RESETloc_72: ; CODE XREF: __RESET+8j
ldi r23, 0x10
ldi r22, 2
ldi r25, 0x4A ; 'J'
ldi r24, 1
rcall sub_60
ldi r21, 0
clr r20
cbi PORTB, PORTB3
cbi PORTB, PORTB4
sbi PORTB, PORTB3
rcall sub_55
sbi PORTB, PORTB4
rcall sub_55
cbi PORTB, PORTB3
cbi PORTB, PORTB4
rcall sub_55
sbi PORTB, PORTB3
rcall sub_55
sbi PORTB, PORTB4
rcall sub_55
cbi PORTB, PORTB3
rcall sub_55
cbi PORTB, PORTB4
rcall sub_55
rjmp loc_94
; ───────────────────────────────────────────────────────────────────────────loc_8B: ; CODE XREF: __RESET:loc_94j
ldi r28, -0x68
ldi r27, 0x3A ; ':'
cp r28, r21
cpc r27, r20
brcc loc_94
ldi r21, 0
clr r20
cbi PORTB, PORTB4
cbi PORTB, PORTB3loc_94: ; CODE XREF: __RESET+83j __RESET+88j
rjmp loc_8B
; END OF FUNCTION CHUNK FOR __RESET
; ───────────────────────────────────────────────────────────────────────────
.dw 0xCFFF ; ╧
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1
.byte 1.exit ;