Jak zrozumieć działanie programu po disasembly w AT90S2313? Potrzebne wskazówki!
AVR - ATMEL AT90S2313 - disasm ?
From: "Radek Antoniuk" <warden_at_nospam_anim.pl>
Subject: AVR - ATMEL AT90S2313 - disasm ?
Date: Tue, 30 Nov 2004 02:21:03 +0100
Hej,
Mam taki problem.
Mam 2 pliki sluzace do zaprogramowania ukladu jak w temacie.. Mam tez
schemat logiczny.
Problem polega na tym, ze chce 'zobaczyc' jak dziala ten program. Wiem co on
ma robic, ale chce zobaczyc 'jak' to robi.
Udalo mi sie zdisassemblowac plik hex do postaci ASMa, ale nie bardzo teraz
wiem co z tym dalej zrobic...
Za dlugie troche na analize reczna, a chcialbym miec to w jakims sensownym
jezyku (np. C, pascal, cokolwiek nie tak bardzo mnemonikowego :) )
Ma ktos jakis pomysl jak to ugryzc?
Jesli ktos bedzie zainteresowany to pod ponizszymi linkami schemat ukladu i
pliki o ktorych wspomnialem:
http://warden.anim.pl/atmel/schg.jpg
http://warden.anim.pl/atmel/ASM.txt
http://warden.anim.pl/atmel/schg.hex
http://warden.anim.pl/atmel/schg.eep
--
Pozdrawiam,
Radek 'Warden' Antoniuk
From: Grzegorz Kurczyk <mousetrap_at_nospam_control.slupsk.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Tue, 30 Nov 2004 08:11:59 +0100
Użytkownik Radek Antoniuk napisał:
Hej,
Mam taki problem.
Mam 2 pliki sluzace do zaprogramowania ukladu jak w temacie.. Mam tez
schemat logiczny.
Problem polega na tym, ze chce 'zobaczyc' jak dziala ten program. Wiem co on
ma robic, ale chce zobaczyc 'jak' to robi.
Udalo mi sie zdisassemblowac plik hex do postaci ASMa, ale nie bardzo teraz
wiem co z tym dalej zrobic...
Za dlugie troche na analize reczna, a chcialbym miec to w jakims sensownym
jezyku (np. C, pascal, cokolwiek nie tak bardzo mnemonikowego :) )
Ma ktos jakis pomysl jak to ugryzc?
Uuuu masz Waść wymagania ;-)
Jak sobie wyobrażasz "dekompilację" czegoś co było prawdopodobnie
napisane w czystym assemblerze (tak mi się przynajmniej widzi po
zawartości tego pliku .txt) do źródłówki języka wysokiego pozomu ?!
Jak mawiają Czesi: Ne, ne pane Havranek, to se ne da ;)
Pozdrawiam
Grzegorz Kurczyk
From: "T.M.F." <tfrancuz_at_nospam_mp.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Tue, 30 Nov 2004 10:50:42 +0100
Uuuu masz Waść wymagania ;-)
Jak sobie wyobrażasz "dekompilację" czegoś co było prawdopodobnie
napisane w czystym assemblerze (tak mi się przynajmniej widzi po
zawartości tego pliku .txt) do źródłówki języka wysokiego pozomu ?!
Jak mawiają Czesi: Ne, ne pane Havranek, to se ne da ;)
Dokladnie. Jesli by to bylo pierwotnie napisane w C to czasami spotyka
sie programy, ktore na podstawie kodu wynikowego odtwarzaja zrodlowy,
tyle, ze nie spotkalem sie z czyms takim dla AVR.
Natomiast ze schematu w dosyc oczywisty sposob wynika jak ten program
dziala - w sensie zapalania diod i zczytywania klawiszy - bo o to ci
chyba chodzi?
From: Grzegorz Kurczyk <mousetrap_at_nospam_control.slupsk.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Tue, 30 Nov 2004 18:41:11 +0100
Użytkownik T.M.F. napisał:
Dokladnie. Jesli by to bylo pierwotnie napisane w C to czasami spotyka
sie programy, ktore na podstawie kodu wynikowego odtwarzaja zrodlowy,
tyle, ze nie spotkalem sie z czyms takim dla AVR.
Hehe... widziałem coś takiego... ale produkt wyjściowy to dość koszmarna
mieszanka C i assemblera. Jakies cyferkowe nazwy procedur i "zmiennych"
(no bo niby skąd miały by w binarce być oryginalne etykiety źródłowe).
Sczerze... jak mam cos takiego analizować... to wolę w disassemblerze :)
Pozdrawiam
G.K.
From: "Piotrek Sz." <zumek_at_nospam_gazeta.SKASUJ-TO.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Tue, 30 Nov 2004 18:52:28 +0000 (UTC)
A gdybyś użył disassemblera , zamiast AVR Studio to otrzymał byś cos takiego:
..
avr008C: clr r24 ; 008C 2788
clr r25 ; 008D 2799
ldi r16, 0xEF ; 008E EE0F
mov r11, r16 ; 008F 2EB0
ldi r16, 0xFF ; 0090 EF0F
out PORTD, r16 ; 0091 BB02
out DDRD, r16 ; 0092 BB01
ldi r16, 0x1F ; 0093 E10F
out DDRB, r16 ; 0094 BB07
ldi r16, 0xF7 ; 0095 EF07
out PORTB, r16 ; 0096 BB08
ldi r16, 0x04 ; 0097 E004
out TCCR0, r16 ; 0098 BF03
ldi r16, 0x02 ; 0099 E002
out TIMSK, r16 ; 009A BF09
ldi r16, 0x01 ; 009B E001
out TCCR1B, r16 ; 009C BD0E
sei ; 009D 9478
..
Chyba bardziej czytelne , od Twojego "źródła" ???
Pzdr.
Piotrek Sz.
PS
Mniemam , że to w celach poznawczych , a nie zarobkowych ;-)
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
From: Grzegorz Kurczyk <mousetrap_at_nospam_control.slupsk.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Wed, 01 Dec 2004 00:37:14 +0100
Użytkownik Piotrek Sz. napisał:
A gdybyś użył disassemblera , zamiast AVR Studio to otrzymał byś cos takiego:
..
avr008C: clr r24 ; 008C 2788
clr r25 ; 008D 2799
out TCCR1B, r16 ; 009C BD0E
sei ; 009D 9478
..
Chyba bardziej czytelne , od Twojego "źródła" ???
No toż przecie tak napisałem ;-)
Cytuję sam siebie:
"Sczerze... jak mam cos takiego analizować... to wolę w disassemblerze :)"
Posdrawiam
Grzegorz Kurczyk
From: "Radek Antoniuk" <warden_at_nospam_anim.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Wed, 1 Dec 2004 01:20:06 +0100
Mniemam , że to w celach poznawczych , a nie zarobkowych ;-)
Gorzej - zaliczenie na uczelni :P
Hm, szczerze? Czytelniejszy jest jednak asm avr'owy, przynajmniej tak mi sie
wydaje, chociaz to Wy siedzicie w temacie.
Ale z opisow ktore sa obok rozkazow prawie dosc jasno wynika co one robia,
prawie... :/
--
Pozdrawiam,
Warden
From: J.F. <jfox_nospam_at_nospam_poczta.onet.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Wed, 01 Dec 2004 13:38:10 +0100
On Tue, 30 Nov 2004 18:52:28 +0000 (UTC), Piotrek Sz. wrote:
A gdybyś użył disassemblera , zamiast AVR Studio to otrzymał byś cos takiego:
A propos - co to za disassembler ?
J.
From: "Piotrek Sz." <zumek_at_nospam_gazeta.SKASUJ-TO.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Wed, 1 Dec 2004 13:32:40 +0000 (UTC)
J.F. <jfox_nospam_at_nospam_poczta.onet.pl> napisał(a):
A propos - co to za disassembler ?
J.
Skoro dla AVR-ów , to jak może się nazywać ???
http://www.mikrocontroller.net/attachment.php/8471/disavr.exe
To "stara" wersja , więc ma kłopoty z nowszymi procami ale w sieci jest tego
pewnie zatrzęsienie ;-)
Pzdr.
Piotrek Sz.
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
From: J.F. <jfox_nospam_at_nospam_poczta.onet.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Wed, 01 Dec 2004 22:55:11 +0100
On Wed, 1 Dec 2004 13:32:40 +0000 (UTC), Piotrek Sz. wrote:
J.F. <jfox_nospam_at_nospam_poczta.onet.pl> napisał(a):
A propos - co to za disassembler ?
Skoro dla AVR-ów , to jak może się nazywać ???
Dissassembler Uniwersalny Procesorow Atmela, w skrocie ... :-)
J.
From: "Radek Antoniuk" <warden_at_nospam_anim.pl>
Subject: Re: AVR - ATMEL AT90S2313 - disasm ?
Date: Wed, 1 Dec 2004 01:20:57 +0100
Dokladnie. Jesli by to bylo pierwotnie napisane w C to czasami spotyka
sie programy, ktore na podstawie kodu wynikowego odtwarzaja zrodlowy,
tyle, ze nie spotkalem sie z czyms takim dla AVR.
Natomiast ze schematu w dosyc oczywisty sposob wynika jak ten program
dziala - w sensie zapalania diod i zczytywania klawiszy - bo o to ci
chyba chodzi?
Hm, tak, dokladnie o to mi chodzi, tzn chodzi mi o powiazanie tego kodu
jakimis 'blokami' ze schematem..
--
Pozdrawiam,
Warden