CHDK für SX20

Sx, Sxx, Sxxx, SX1, SXxx, SX1xx, SX2xx, SX4xx, SX5xx, SX6xx, SX7xx

Beitragvon f_m_b » 28.07.2010, 10:27

Hallo CHDKLover
Die Idee mit dem dynamischen "Enum" gefällt mir. :-)
Ich habe die Änderungen jetzt bis auf
CHDKLover hat geschrieben:
Code: Alles auswählen
int get_partition_space(int num);
umgesetzt.
Damit habe ich allerdings noch Probleme, da der verfügbare Speicherbereichs immer nur Daten der aktuell aktiven Partition zurückliefert. D.h. dieser Wert ist erst nach reboot vorhanden.
Meine alte Lösung hatte übrigens das gleiche Problem.

Ich werde mich dafür noch ein wenig einlesen müssen. ;-)
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon CHDKLover » 28.07.2010, 12:15

Hallo f_m_b,
ich hab nochmal in Ruhe überlegt, eigentlich muss man gar keine Liste bauen, da eh nur eine Option angezeigt wird. Ein normaler statischer char* Puffer müsste reichen. Damit wird es auch gleich einfacher.

CHDKLover
A610 100e CHDK-DE: aktuelle Version
Benutzeravatar
CHDKLover
Super-Mod
Super-Mod
 
Beiträge: 878
Bilder: 8
Registriert: 12.09.2007, 18:25
Wohnort: Dresden
Kamera(s): a610 100e

Beitragvon f_m_b » 28.07.2010, 15:17

Hallo CHDKLover

anbei die beiden Patchdateien.

Ein normaler statischer char* Puffer müsste reichen.
Hatte ich bereits vereinfacht. ;-)
Dateianhänge
swapPartition_2.patch
Partition jetzt vorwählbar.
(8.9 KiB) 363-mal heruntergeladen
clock_2.patch
Doppelte Abfrage entfernt
(915 Bytes) 405-mal heruntergeladen
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon f_m_b » 29.07.2010, 06:11

Um den freien Speicherplatz einer Partition zu bestimmen habe ich versucht die Aufrufe
Code: Alles auswählen
_GetDrive_ClusterSize(int drive)
_GetDrive_TotalClusters(int drive)
mit drive ungleich 0 zu verwenden. Die Kamera dankt mir das durch einen Absturz. Ich vermute weitere Partitionen sind einfach noch nicht berücksichtigt.
Ich habe gesehen, das diese Funktionen direkt auf Maschinencode gemappt sind (Im Kommentar stehen die Assembleranweisungen ). Leider kann ich die verwendeten Speicheradressen nicht interpretieren.

Gibt es eine kleine Hilfestellung, das BIN-File in Assembler darzustellen? Vermutlich benötigt man das ja um eine neue Firmware zu portieren?
30.07. Bin bereits fündig geworden und am Lesen.
Zuletzt geändert von f_m_b am 30.07.2010, 08:58, insgesamt 1-mal geändert.
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon f_m_b » 29.07.2010, 22:57

Ich habe eine Frage zu folgendem Fehlerpunkt
MISSING: f_m_b July 24 -> manual focus activ, CHDK <alt> active. No action with Button up, down, left, right, Zoom-In, Zoom-Out


Ich bin mir nicht sicher, ob ich diese Funktion richtig verstanden habe. Das Lesen des Handbuchs bringt mich auch nicht wirklich weiter...
Gibt es diese Funktion nur bei Kameras ohne Möglichkeit der manuellen Fokuseinstellung?
Die Tasten bewirken bei eingeschaltetem DOF-Rechner eine Änderung der Anzeige, aber der manuelle Fokusbalken ändert sich dabei nicht.
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon msl » 29.07.2010, 23:22

Hallo,

es gilt für die SX20 (Kamera hat manuellen Fokus) die Beschreibung für Kameras mit MF im Handbuch auf Seite 71.

Die Werteveränderung wird in der Statusanzeige sichtbar. Der DOF-Rechner wird nicht benötigt.

MF aktivieren. Dann Alt-Modus aktivieren.

Mit Links/Rechts wird die Schrittweiteneinstellung verändert (Anzeige in Statusanzeige).
Mit Zoom wird die eigentliche Objektdistanz entsprechend der Schrittweite verändert (Anzeige in Statusanzeige).
Up/Down unendlich und hyperfokale Distanz.

MF-Balken ist in diesem Modus nicht sichbar.

Gruß msl
Benutzeravatar
msl
Super-Mod
Super-Mod
 
Beiträge: 4567
Bilder: 271
Registriert: 22.02.2008, 11:47
Wohnort: Leipzig
Kamera(s): A720 1.00c
SX220 1.01a

Beitragvon f_m_b » 30.07.2010, 08:22

Danke

ich hatte nur das englische Handbuch gelesen... und die Funktion falsch verstanden.
Sollte mal wieder mein Englisch auffrischen. ;)

Ich habe den Fehler bereits zurückgenommen. :)
http://chdk.wikia.com/wiki/SX20#102b_feedback

Tolles Feature!

PS: MF-Balken wird angezeigt aber nicht aktualisiert. Stört aber nicht besonders.
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon msl » 30.07.2010, 14:23

Hallo,

na gut, dann ist das geklärt. In der engl. Dokumentation ist das auch nicht besonders ausführlich beschrieben.

Aber ein anderes Thema: Deutsche Sprachdatei. Die teilweise unvollständige Anzeige der deutschen Menütexte ist je nach Kamera und deren Display-Auflösung sehr unterschiedlich. Die Texte unterscheiden sich von der Länge nur unwesentlich von der englischen Vorgabe, was garnicht so einfach zu bewerkstelligen ist, da sich viele technische Begriffe englisch kürzer ausdrücken lassen.

Du kannst aber selbst Einfluss nehmen, in dem du dir deine Sprachdatei an das Anzeigeverhalten deiner Kamera anpasst. Hilfreich ist auch der Einsatz von schmalen Fonts.

Eine generelle Lösung wird es da nicht geben. Dazu sind die Anzeige-Bedingungen der ca. 60 CHDK-Kameras zu unterschiedlich.

Gruß msl
Benutzeravatar
msl
Super-Mod
Super-Mod
 
Beiträge: 4567
Bilder: 271
Registriert: 22.02.2008, 11:47
Wohnort: Leipzig
Kamera(s): A720 1.00c
SX220 1.01a

Beitragvon f_m_b » 30.07.2010, 22:02

Hallo
Dein "workaround" mit dem kleineren RBF font funktioniert. :-)
Danke.

Ich habe den Bug mit einer kurzen Erklärung zum workaround abgeschlossen.
http://chdk.wikia.com/wiki/SX20#102b_feedback
Zuletzt geändert von f_m_b am 30.07.2010, 22:49, insgesamt 2-mal geändert.
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon f_m_b » 30.07.2010, 22:27

Sieht ja gar nicht so schlecht aus mit der CHDK-Version für die SX20.

Es bleiben, so wie es momentan aussieht, nur noch die zwei offenen "schwerwiegenderen" Probleme "crash bei Verwendung von Zebra" und "manuelles Laden" übrig.

Zu Zebra:
An dem Punkt "zu wenig Speicher bei Zebra führt zu Abstürzen" bin ich dran. Ich habe bereits eine Lösung für mich selbst gefunden. Ich schreibe direkt in den Bildspeicher und gehe nicht über einen extra Speicher. Auch habe ich eine Möglichkeit gefunden das flackern zu unterdrücken... allerdings mit dem Nachteil, dass der Blink-Modus nicht mehr unterstützt wird.
Ich probiere noch ein wenig... Ich denke für das Forum ist die Lösung noch nicht reif.
Schwierig hierbei ist auch, dass der komplette Code-Teil von gui_osd_draw_zebra doppelt vorliegt.
Ist jemand bekannt ob es hier bereits Aktionen gibt die beiden Teile wieder zu vereinen?

Zu "kein manuelles Laden möglich":
Ich kann nicht abschätzen was für ein Aufwand dahinter steht?

Da ich nicht die Lösung "2MB-Boot+große Fat32 Partition" verwende, komme ich sehr gut mit dem automatischen Laden zurecht.
Und wenn ich mal ohne CHDK starten möchte, hebe ich einfach den Schreibschutz der Karte auf und verwende die original Canon Firmware.
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon f_m_b » 03.08.2010, 10:40

Ich will ein wenig Doku zum erweiterten swap_partitions schreiben...

Ich habe gesehen, dass viele Beiträge ein "screenshot" angehängt haben.
Gibt es ein Skript oder ein mir nicht bekannter Menüpunkt dafür?
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon fe50 » 03.08.2010, 11:09

f_m_b hat geschrieben:Ich habe gesehen, dass viele Beiträge ein "screenshot" angehängt haben.
Gibt es ein Skript oder ein mir nicht bekannter Menüpunkt dafür?

Ein paar Möglichkeiten:
* Die einfache Variante: per AV Out der Kamera & analogem Input (Grabber etc.) am PC.
* Hier im Forum schwirrt irgendwo ein Patch von CHDKLover 'rum, speichert den Liveview auf die Karte...
* Bei einer Kamera mit CHDK-PTP Support kannst Du das Bild ja direkt abgreifen
* yuvconvert.c aus'm CHDK source tree, in Verbindung mit einem Lua Script wie hier: http://chdk.setepontos.com/index.php/topic,5415.0.html ...
◄"The grass was greener, The light was brighter"►  ◄fe50 home►  ◄TRAIL-Magazin►  ◄RTFM !►
Benutzeravatar
fe50
CHDK-Legende
CHDK-Legende
 
Beiträge: 1106
Registriert: 25.04.2008, 14:28
Wohnort: B'Württemberg
Kamera(s): Ixus50 101b, Ixus860 100c, SX10 101a

Beitragvon f_m_b » 05.08.2010, 10:09

Ich habe eine kleine Kurzzusammenfasung zur Erweiterung "Swap partitions" angehängt.

Ich habe die Änderungen auf Basis von Rev. 360 durchgeführt.
Bräuchte noch einen kleinen Tipp von Euch: Reicht das Bin-File und die Revisionsangabe zum Testen aus? Weiß jeder wo er die passende CHDK-Struktur herbekommt?

"create card with two partitions" habe ich abgeklemmt, da ich noch daran arbeite.
Ansonsten viel Spaß beim Testen und ich bin auf/für Änderungswünsche gespannt und offen.

Sollte ein Interesse auf Erweiterungen bestehen, werde ich noch ein wenig weiter daran arbeiten, falls nicht würde ich mich mit dem Stand bereits zufrieden geben.

Patch-File: Ich habe beide Änderungen "swap partitions" und "configure partitions" in ein patch File gelegt.
Falls jemand "swap partitions" nach intensivem Test einbuchen möchte gebt mir bitte kurz bescheid, dann trenne ich die beiden Funtionen zum einbuchen wieder auf.

Ich komme immer wieder an meine Grenzen, wenn ich in die Assembler-Ebene rutschen müsste, da ich die reinen Assemblerbefehle ohne Kontext und Adressauflösung nicht verstehe. Ich habe leider nur IDA-Light und damit geht's, mangels ARM-Unterstützung, nicht wirklich weiter (400€ für die Vollversion ist mir zu heftig ;-)). Gibt es eine alternative Disassembler-Lösung für Windows?

@fe50: Danke für die Tipps mit dem Screenshot. Leider habe ich keinen Grabber, CHDK-PTP ist leider noch nicht portiert. Kurzum, ich habe eine weitere nicht so optimale Lösung mit meiner alten Kamera gefunden. ;-)
Dateianhänge
swapPartition_3.patch
based on Rev. 360.
swap partitition (full)
create partition (only GUI)
(48.28 KiB) 368-mal heruntergeladen
DISKBOOT.BIN
based on Rev. 360.
swap partitition (full)
create partition (only GUI)
(241.96 KiB) 391-mal heruntergeladen
SwapPartition.pdf
Kurze Zusammenfassung der erweiterten Funktion: &quot;Swap Partitions&quot;
(504.4 KiB) 382-mal heruntergeladen
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

Beitragvon fe50 » 05.08.2010, 11:24

f_m_b hat geschrieben:Ich habe leider nur IDA-Light und damit geht's, mangels ARM-Unterstützung, nicht wirklich weiter (400€ für die Vollversion ist mir zu heftig ;-)). Gibt es eine alternative Disassembler-Lösung für Windows?
Nichts direkt vergleichbares, Du kannst Dir Pelican's ARMu mal anschauen, das ist schon recht tauglich: http://pel.hu/armu & http://chdk.setepontos.com/index.php/topic,5100.0.html
◄"The grass was greener, The light was brighter"►  ◄fe50 home►  ◄TRAIL-Magazin►  ◄RTFM !►
Benutzeravatar
fe50
CHDK-Legende
CHDK-Legende
 
Beiträge: 1106
Registriert: 25.04.2008, 14:28
Wohnort: B'Württemberg
Kamera(s): Ixus50 101b, Ixus860 100c, SX10 101a

Beitragvon f_m_b » 05.08.2010, 22:19

Danke fe50
Ich schau's mir am Wochenende mal etwas genauer an. :-)
f_m_b
CHDK-Begeisterter
CHDK-Begeisterter
 
Beiträge: 148
Registriert: 30.05.2010, 21:59
Kamera(s): -

VorherigeNächste

Zurück zu S/SX-Serie

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste