gebi  Dołączył: 05 Maj 2006
  Poprawa współpracy korpusów Pentaxa z obiektywami manualnymi
Szkoda, że firmware do Pentax-a nie jest na licencji open source. Na pewno możnaby z tych korpusów wyciągnąć jeszcze o wiele, wiele więcej.
W jednym z wątków na dpreview zauważyłem dwa pomysły jak usprawnić współpracę z obiektywami manualnymi:
- pierwszy polegał na tym, że w trybie Av, obiektyw manualny przy naciśnięciu spustu (do połowy) miałby domykaną przysłonę i dopiero przy domkniętej przysłonie dokonywany byłby pomiar światła. Byłoby ciemno, ale tylko przez chwilkę przed wykonaniem zdjęcia czyli tak jak np. w moim Porście na M42
- drugi pomysł był taki, aby w trybie M, aparat po naciśnięciu przycisku AE-L domykał przysłonę, ale nie mierzył światła a zapamiętywał różnicę w ilości światła wpadającego przez obiektyw w pełni otwarty oraz domknięty. Wtedy aparat przy robieniu zdjęcia wprowadzałby tylko tą korektę do pomiaru dokonanego na otwartym obiektywie i nie trzeba byłoby ponownie mierzyć światła przyciskiem (jeśli nie zmieniliśmy przysłony) przy zmieniającym się oświetleniu.
Oczywiście w ustawieniach użytkownika należy zostawić możliwość wyboru, dla tych, którzy wolą stary sposób pomiaru.

Prawdopodobnie niestety jednak nie doczekamy sie poprawy współpracy z obiektywami manualnymi, ze względu na prostą ekonomię - po prostu trzeba sprzedawać nowe obiektywy, ale może kiedyś? Chyba, że takie zmiany powodowałyby dodatkowe problemy, których nie widać na pierwszy rzut oka.
 

tref  Dołączył: 05 Wrz 2006
nie widzę przeszkód do pobawienia się softem-> dekompilacja, kilka ładnych godzin nad kodem->dokumentacja techniczna sprzętu->wpis kilku nowych linijek-> kompilacja-> a na końcu potrzebny ochotnik do pierwszych testów na żywym organiźmie-co do ostatniego ja się nie podejmuję, ale w końcu takie rzeczy się robi [canonierzy, z rosji chyba, co prawda nie napisali nic własnego, ale odblokowali kilka funkcji, bo droższe i tańsze korpusy miały duuużo cech wspólnych, mimo okrojenia przycisków]
 
sp7foy  Dołączył: 31 Lip 2006
tref napisał/a:
dekompilacja


To jest kod wykonywalny. Czyli zabawa assemblerem bez opisu.

tref napisał/a:
kilka ładnych godzin nad kodem


Tak na początek to kilkaset. Żebyś wiedział co gdzie i co robi.
Zobacz sobie ile zajmuje firmware.

tref napisał/a:
dokumentacja techniczna sprzętu


Rozkręcasz jeden i w kilka godzin wiesz co tam jest.

tref napisał/a:
wpis kilku nowych linijek


Z uwzględnieniem poprawy całej reszty kodu bo przypominam, że nie masz źródła więc wszystkie etykiety nie są etykietami a adresami. Jeden zły skok i zgadnij gdzie jest błąd.

tref napisał/a:
a na końcu potrzebny ochotnik do pierwszych testów na żywym organiźmie-co do ostatniego ja się nie podejmuję


To akurat jest najprostrze.
Jak nie działa to reset. Jeśli sprzęt jest przemyślany to uszkodzony firmware nie jest go w stanie zablokować. Jeśli jednak się uszkodzi bootloader to programator i wziu prosto w scalaka oryginał.

Typ procesora jest znany.
Assembler do niego mam.
 

deeper  Dołączył: 02 Paź 2006
Ehh, tref chyba nie wiesz o czym mowisz...
dekompilujac nie da sie uzyskc kodu zrodlowego, wiec "dopisanie" kilku nowych linijek odpada.
Nawet jezeli udalo by sie dekompilowac oprogramowanie, to zeby zrozumiec to,
trzeba byc mega mózgiem (albo mieszkac na syberii i nie miec nic innego do roboty)
dopiero po przeanalizowaniu praktycznie calosci kodu (w assemblerze) mozna wyciagnac jakies wnioski.
Przy czym warto dodac ze jest to arcy trudne bo komentarzy czy dokumentacji prozno szukac.

Do tego dochodza jeszcze aspekty prawne, dekompilacja prawdopodobnie bedzie przestepstwem, ktos ma licencje, ktos jest włascicielem praw do programu.

Szybciej, taniej i bezpieczniej bedzie napisac prosbe do pentaxa o nowy lepszy soft albo zatrudnic sie u nich... i samemu napisac wlasna wersje :P

A ile zabawy jest w assemblerze(szczegolnie bez dokumentacji i komentarzy), nie znajac procesora, jego rejestrow i obslugiwanych polecen to jak szukanie igly w stogu siana.
Projekt dla sztabu ludzi :)
 
sp7foy  Dołączył: 31 Lip 2006
deeper napisał/a:
nie znajac procesora, jego rejestrow i obslugiwanych polecen


To akurat jest znane.
Zresztą odpowiedź jest w samym firmware na samym początku.
 

deeper  Dołączył: 02 Paź 2006
mimo to...jest mega zabawa
 

tref  Dołączył: 05 Wrz 2006
sp7foy napisał/a:
To jest kod wykonywalny. Czyli zabawa assemblerem bez opisu

no i co? a dokumentację do kodów złośliwych to niby publikują w gazetach???

sp7foy napisał/a:
Tak na początek to kilkaset. Żebyś wiedział co gdzie i co robi.
Zobacz sobie ile zajmuje firmware

tu faktycznie się muszę zgodzić, bo roboty z tym trochę jest, ale nie w takich rzeczach się ludzie grzebią, zresztą jak napisałem (cytuję):
...kilka ładnych godzin nad kodem...
czyli praca dla hobbystów

sp7foy napisał/a:
Z uwzględnieniem poprawy całej reszty kodu

nie do końca, choć trzeba wprowadzić "trochę" modyfikacji.

deeper napisał/a:
Ehh, tref chyba nie wiesz o czym mowisz...

hmm, skąd wiesz??? ja wiem o czym mówię

deeper napisał/a:
Nawet jezeli udalo by się dekompilowac oprogramowanie, to zeby zrozumiec to,
trzeba byc mega mózgiem (albo mieszkac na syberii i nie miec nic innego do roboty)
dopiero po przeanalizowaniu praktycznie calosci kodu (w assemblerze) mozna wyciagnac jakies wnioski.
Przy czym warto dodac ze jest to arcy trudne bo komentarzy czy dokumentacji prozno szukac

nie mówiłem, że jest to łatwe, ale bez przesady. Oczywiście, jeśli ktoś całe informatyczne życie spędza przed kompilatorem języków wysokopoziomowych i z obrzydzeniem patrzy na ASM to jest arcytrudne, ale znając architekturę sprzętu i asemblera danego mikroXXX (kontrolera, procesora-niepotrzebne skreślić) można wnioskować co się dzieje. dalej to już kwestia "pomysłowości" programisty (jak doszedł do tego momentu to umiejętności już ma).

deeper napisał/a:
Do tego dochodza jeszcze aspekty prawne, dekompilacja prawdopodobnie bedzie przestepstwem, ktos ma licencje, ktos jest włascicielem praw do programu.

ah, tylko, że należy wziąć pod uwagę, że niczego nie wolno dekompilować legalnie. Open source masz przecież jak w nazwie ... a cała reszta ma właściciela, więc wiadomo z czym masz do czynienia :-/

deeper napisał/a:
Szybciej, taniej i bezpieczniej bedzie napisac prosbe do pentaxa o nowy lepszy soft

z pewnością, jeśli chcą wypuścić jak canon 2 korpusy na tym samym sofcie i tylko ograniczyć funkcjonalność poprzez "wyjęcie" przycisków to się można prosić... do wiosny...2055 roku
deeper napisał/a:
zatrudnic się u nich... i samemu napisac wlasna wersje

ooo - to jest pomysł :mrgreen:

deeper napisał/a:
nie znajac procesora, jego rejestrow

oczywiście zakładam, że znam architekturę sprzętu-co jest do wyciągnięcia (kostka nie jest na pewno autorską Pentax'a, pewnie jakaś Motorolka albo RISC Intela)
sp7foy napisał/a:
Typ procesora jest znany.
Assembler do niego mam

proszę, napisz, z ciekawości pytam co to za mikro


a tak ku przypomnieniu, wiecie w czym pisało się kompilatory języków wysokopoziomowych? w ASM :-D znam nawet polskich pionierów, np.: prof. JXXX

pozdrawiam i nie krzyczcie...
nie ma rzeczy niemożliwych, czasem są tylko nieopłacalne (ale to pojęcie względne, bo zależy dla kogo co jest opłacalne)
 
sp7foy  Dołączył: 31 Lip 2006
tref napisał/a:
no i co? a dokumentację do kodów złośliwych to niby publikują w gazetach???


Pisanie od zera w assemblerze jest proste.
Poprawianie nieswojego programu jest upierdliwe.
Grzebanie w binarce to koszmarek. Zeszyt 100 kartek na notatki to na początek.

tref napisał/a:
nie do końca, choć trzeba wprowadzić "trochę" modyfikacji.


Czy wiesz jak wygląda binarka?
Bo widzę, że o assemblerze coś wiesz, ale o programie tłumaczącym na binarkę już niewiele. Dodam, że nie masz NIGDZIE etykiet. Wszędzie masz tylko adresy.
Jeśli wstawisz w kod jakikolwiek bajt to wszystkie adresy musisz poprawić. Ale automatem tego nie zrobisz, bo nie da się odróżnić fragmentu kodu wykonywalnego od danych w tym kodzie. Czyli najpierw musisz sobie opisać co gdzie jest.
Przy kodzie 100kB to już się robią dzięsiątki godzin intensywnej pracy.
To nie jest dodanie nieśmiertelności do gierki na Atari.

tref napisał/a:
hmm, skąd wiesz??? ja wiem o czym mówię


Powyżej udowodniłeś, że nie. Masz wrażenie, że wiesz.

tref napisał/a:
można wnioskować co się dzieje. dalej to już kwestia "pomysłowości" programisty (jak doszedł do tego momentu to umiejętności już ma).


Tu jest drugi dowód.

tref napisał/a:
proszę, napisz, z ciekawości pytam co to za mikro


Ależ proszę bardzo:
Fujitsu FR. Dokładny model to zależy od aparatu. Nie pamiętam w którym co siedzi.
Natomiast obecnie chyba wszystkie cyfrówki są na tych procesorach.
Dokładny model jest w nagłówku firmware.
Zresztą pod SoftTune jak się to wczyta to już wiesz wszystko.

tref napisał/a:
a tak ku przypomnieniu, wiecie w czym pisało się kompilatory języków wysokopoziomowych? w ASM :-D


Od zera to żaden problem.
Ale nikt nie poprawiał takiego czegoś od tyłu.
Co innego gdybyś chciał zmienić domyślne ustawienia. Włączyć funkcję wyłączoną czy coś takiego. Wtedy zmienia się wpisy w jednym miejscu, bez przesunięcia reszty kodu. Takie przesunięcie bez posiadania źródła jest uznawane za niewykonalne. Chociaż tylko i wyłącznie z powodu finansowego. Czas potrzebny na taką operację wielokrotnie przewyższa czas napisania od nowa.
 

Canin  Dołączył: 19 Kwi 2006
sp7foy napisał/a:
Wtedy zmienia się wpisy w jednym miejscu, bez przesunięcia reszty kodu. Takie przesunięcie bez posiadania źródła jest uznawane za niewykonalne.

Oczywiście że jest niewykonalne - bo robi się to inaczej. Jeśli chcesz wsunąć kawałek nowego kodu to w to miejsce gdzie ma być wstawiasz skok do jakiegoś pustego miejsca w pamięci, czasem trzeba tam tez przenieść kawałek starego kodu (zrobić kopię) tak aby maksymalnie odseparować go od starego (przenosimy całą procedurę) Nowy kawałek kodu może być napisany z użyciem asemblera (z etykietami i całym tym ułatwiającym życie zapleczem ale skompilowany tak aby zaczynał się od właściwego adresu. Potem skompilowany kawałek wstawiasz w to wyznaczone wolne miejsce i ma działać (chyba że nie działa - co też sie zdaża).
Wadą takiego rozwiązania jest nieporządny kod w którym z czasem ciężko się połapać.
 

deeper  Dołączył: 02 Paź 2006
sp7foy napisał/a:
Czy wiesz jak wygląda binarka?
Bo widzę, że o assemblerze coś wiesz, ale o programie tłumaczącym na binarkę już niewiele. Dodam, że nie masz NIGDZIE etykiet. Wszędzie masz tylko adresy.
Jeśli wstawisz w kod jakikolwiek bajt to wszystkie adresy musisz poprawić. Ale automatem tego nie zrobisz, bo nie da się odróżnić fragmentu kodu wykonywalnego od danych w tym kodzie. Czyli najpierw musisz sobie opisać co gdzie jest.
Przy kodzie 100kB to już się robią dzięsiątki godzin intensywnej pracy.
To nie jest dodanie nieśmiertelności do gierki na Atari.

I wlasnie w tym rzecz, poza tym znajac procesor, jeszcze trzeba wiedziec jak jest reszta smieci w aparacie podlaczona... co na ktorym przerwaniu itd.

Etap fascynacji ASM mam za soba, zajmowalem sie tym dlatego,
ze bardzo podobaly mi sie niesamowite mozliwosci jakie daja jezyki niskiego poziomu,
ale poza tym to niewiele mozna zdzialac co by sie w praktyce przydalo.
 

tref  Dołączył: 05 Wrz 2006
jak każdy dorzuci swoje 5 groszy to możemy się licytować do końca świata.


to jest mój ostatni post w tym temacie, bo uważam że szkoda czasu. Każdy wie swoje, tyle, że ja nie neguję waszych umiejętności i wiedzy, a jedynie chciałem prowadzić zdrową polemikę i wymianę informacji. Nie zobaczyliście z mojej strony nic podobnego do:
deeper napisał/a:
Ehh, tref chyba nie wiesz o czym mowisz...

ani do:
sp7foy napisał/a:
Powyżej udowodniłeś, że nie. Masz wrażenie, że wiesz.


a ja miałem "szczęście zobaczyć"
bez dłuższego komentarza - obrażać kogoś jest łatwo


i tak uszczypliwie dodam:
deeper napisał/a:
bardzo podobaly mi się niesamowite mozliwosci jakie daja jezyki niskiego poziomu,
ale poza tym to niewiele mozna zdzialac co by się w praktyce przydalo

sam sobie zaprzeczasz, coś co ma duże możliwości zawsze jest wykorzystywane.
Oczywiście patrząc od strony informatyki stosowanej, czyli jak zarobić kasę na tworzeniu aplikacji użytkowych nikt nie bawi się asm'em, bo i po co. Łatwiej, taniej, szybciej jest używać języków wysokiego poziomu. Jednak programowanie wszelkiego rodzaju sterowników przeważnie odbywa się poprzez asm.

Potem czytam:
deeper napisał/a:
I wlasnie w tym rzecz, poza tym znajac procesor, jeszcze trzeba wiedziec jak jest reszta smieci w aparacie podlaczona... co na ktorym przerwaniu itd.

pisałem-znając architekturę sprzętu - nie wałkujmy, że białe jest białe, bo jest białe, a jak jest czarne to nie jest białe, bo to się wyklucza...
Po raz kolejny podkreślam (bo zostaje to niezuważone chyba), że wg mnie praca taka nie zajmie 5 minut (z tego co piszecie, widzę, że tak właśnie wnioskujecie z moich wypowiedzi) lecz sporo czasu, ale jak już napisałem opłacalność jest sprawą bardzo subiektywną...
- pisząc o pomysłowości programisty miałem na myśli sposób implementacji wymaganej funkcjonalności, nie wiem jak to zrozumieliście, ale tę część zrzucam na moje może niezbyt jasne sformułowanie.
pozdrawiam
z wyrazami szacunku (mimo wszystko) Panowie, miłego wieczoru

 

Fafniak  Dołączył: 19 Kwi 2006
panowie....mam prosbe idzcie napic sie browca tudziez innego borygo....albo na zdjecia bo juz was sluchac(czytac?) nie mozna :mrgreen:
 

tref  Dołączył: 05 Wrz 2006
P.S.
tak jak napisałem, kończę tę "nierówną walkę", nie ma w emotkach uścisku dłoni, więc proszę o uruchomienie wyobraźni:
<<uscisk dłoni>>
stuknijmy się kufelkiem i róbmy zdjęcia zamiast sobie udowadniać
nie czuję urazy i mam nadzieję, że Wy także nie czujecie
pozdrawiam
 

Michu  Dołączył: 18 Kwi 2006
Z ostatniej wymiany zdań zrozumiałem tylko post Fafniaka.
 

Fafniak  Dołączył: 19 Kwi 2006
Michu napisał/a:
Z ostatniej wymiany zdań zrozumiałem tylko post Fafniaka.
- ale caly cz o borygo ? :mrgreen:
 

Michu  Dołączył: 18 Kwi 2006
Fafniak napisał/a:
- ale caly cz o borygo ?

Nie - no cały. A borygo za chwilę pójdzie w ruch - zamierzam zmęczyć MiB II a podobno bez alkoholu to ciężki kawałek filmu...
 

Fafniak  Dołączył: 19 Kwi 2006
Michu, 8-)
 

MKw  Dołączył: 20 Kwi 2006
Napisze kilka slow od siebie bo w polowie lat dziwiedziesiatych zarabialem na zycie programowaniem glownie w assemblerze, ale tez bezposrednio w kodzie maszynowym.
Tak czy siak sadze ze napisanie softu bylo by szybsze i latwijsze niz przerabianie istniejacego bez zadnej do niego dokumentacji, powiem wiecej bylo by moim zdaniem tez calkowicie nieoplacalne jego dekompilowanie i analizowanie ;-)
Zreszta ilu ludzi dzisiaj zna assembler :lol: Teraz sie doklada dyskow pamieci i procesorow jak cos nie dziala wystarczajaco szybko. To juz nie te czasy kiedy sie siedzialo nad kodem aby sie zamkna w 1024 bajtach a nie w 1029 :-P
 

Michu  Dołączył: 18 Kwi 2006
O! Pojawił się następny do odstrzału.
 

Fafniak  Dołączył: 19 Kwi 2006
Michu, - spoko wlasnie laduje muszkiet :evil: 8-)

Wyświetl posty z ostatnich:
Skocz do:
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach