Changeset 2085
- Timestamp:
- 08/17/12 09:07:14 (9 months ago)
- Location:
- branches/tsvstar-uitest
- Files:
-
- 32 edited
-
CHDK/LANG/croatian.lng (modified) (6 diffs)
-
CHDK/LANG/czech.lng (modified) (11 diffs)
-
CHDK/LANG/english.lng (modified) (1 diff)
-
CHDK/LANG/german.lng (modified) (1 diff)
-
CHDK/SCRIPTS/EDITOR/EDI.lua (modified) (24 diffs)
-
CHDK/SCRIPTS/EDITOR/README.TXT (modified) (5 diffs)
-
core/conf.c (modified) (1 diff)
-
core/gui.c (modified) (5 diffs)
-
core/gui_lang.h (modified) (1 diff)
-
core/gui_menu.c (modified) (6 diffs)
-
core/gui_osd.c (modified) (2 diffs)
-
core/gui_user_menu.c (modified) (4 diffs)
-
include/conf.h (modified) (1 diff)
-
platform/a580/notes.txt (modified) (2 diffs)
-
platform/a580/platform_camera.h (modified) (1 diff)
-
platform/ixus100_sd780/kbd.c (modified) (3 diffs)
-
platform/ixus100_sd780/notes.txt (modified) (1 diff)
-
platform/ixus100_sd780/platform_camera.h (modified) (1 diff)
-
platform/ixus105_sd1300/kbd.c (modified) (6 diffs)
-
platform/ixus105_sd1300/lib.c (modified) (3 diffs)
-
platform/ixus105_sd1300/notes.txt (modified) (1 diff)
-
platform/ixus105_sd1300/platform_camera.h (modified) (4 diffs)
-
platform/ixus105_sd1300/sub/100d/boot.c (modified) (6 diffs)
-
platform/ixus105_sd1300/sub/100d/capt_seq.c (modified) (2 diffs)
-
platform/ixus105_sd1300/sub/100d/lib.c (modified) (1 diff)
-
platform/ixus105_sd1300/sub/100d/stubs_auto.S (modified) (1 diff)
-
platform/ixus105_sd1300/sub/100d/stubs_entry.S (modified) (6 diffs)
-
platform/ixus105_sd1300/sub/100d/stubs_entry_2.S (modified) (1 diff)
-
platform/ixus300_sd4000/kbd.c (modified) (3 diffs)
-
platform/ixus300_sd4000/notes.txt (modified) (1 diff)
-
platform/ixus300_sd4000/platform_camera.h (modified) (1 diff)
-
platform/s100/platform_camera.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/tsvstar-uitest/CHDK/LANG/croatian.lng
r1975 r2085 12 12 5 "Zebra parametri" 13 13 6 "Parametri skripti" 14 7 " Postavke izgleda"14 7 "Boje" 15 15 8 "Razno" 16 16 9 "Debug parametri" … … 71 71 72 72 73 49 " Postavke izgleda"73 49 "Boje" 74 74 75 75 50 "Jezik..." … … 475 475 369 "Odaberi datoteku krivulja" 476 476 477 370 " Crtanje rubova"478 371 " Crtanje rubova"477 370 "Panorama-crtanje rubova" 478 371 "Panorama-crtanje rubova" 479 479 480 480 372 "Omoguæi crtanje rubova" … … 533 533 534 534 421 "Uèitaj+postavke Zooma" 535 422 " Zakljuèaj crtanje rubova"535 422 "Panorama" 536 536 423 "Bljesak na zadnju lamelu" 537 537 424 "DNG format" … … 546 546 433 "Jesam te" 547 547 434 "Nerijeeno" 548 435 "Onemoguæi Raw u crtanju rubova"548 435 "Onemoguæi Raw u Panorami" 549 549 436 "Onemoguæi Raw u Auto modu" 550 550 437 " SAMO u videu" … … 672 672 673 673 551 "Omoguæi'start skripte'" 674 675 552 "Onemoguæi ZOOM dugme" 676 677 553 "DNG verzija" 678 554 "Postavke izbornika" 679 555 "<ALT> pomoæni prozor" 680 556 "Pomoæni prozor-odgoda" 681 557 "CHDK postavke" 682 683 // <ALT> mode help screen text 684 558 "%-20s %-14s" // Header format, adjust if needed; but total len must be 35 685 559 "<ALT> kratice" // Len must be <= first string in header format (20) 686 560 "Shutter Half Press +" // Len must be <= first string in header format (20) 687 561 "MENU=CHDK Menu" // Len must be <= second string in header format (14) 688 562 "MENU=User Menu" // Len must be <= second string in header format (14) 689 563 "SET=Script Menu, SHUTTER=Run Script" // Len must be <= 35 690 564 "Focus %5s=Inf. %5s=HyperFocal" // Len must be <= 35 691 565 "Manual Focus" 692 566 "Hide CHDK OSD while pressed" 693 567 " * - nedostupno u <ALT> modu " // Len must be <= 35 694 695 568 "'%s'\ndodano u korisnièki izbornik" 696 569 "Korisnièki izbornik je pun" 697 698 570 "SD kartica" 699 571 "Jezik i font" 700 701 // 702 572 "Bljeskalica (snaga)" 703 573 "Brzi EV korak" 704 574 "Prikai pomoæni prozor" 705 575 "Koristi popup za ureðivanje" 706 707 576 "Dodaj skriptu u korisnièki izbornik" 708 709 577 "Lijevo, Desno & Jogdial = Vrijednost" 710 578 "Zoom = Odabir faktora" 711 579 "SET = Potvrdi, DISP = Odbaci" 712 580 "MENU = Uklj./Isklj." 713 714 581 "Beskrajan fokus" 715 582 "Fokus faktor" -
branches/tsvstar-uitest/CHDK/LANG/czech.lng
r1975 r2085 7 7 1 "Hlavní menu" 8 8 9 2 " Nastavení pro formát RAW"10 3 "Nastavení parametruOSD"11 4 " Nastavení histogramu"12 5 " Nastavení zebry"13 6 " Nastavení skriptu"14 7 "Nastavení zobrazení"15 8 "R uzné"16 9 " Debugger (ladení programu)"17 10 "Obnovit výchozí nastavení..."18 11 "Uloit nastavení ..."19 20 12 "Zp et"9 2 "RAW (digitální negativ)" 10 3 "Nastavení OSD" 11 4 "Histogram (graf expozice)" 12 5 "Zebra (zobrazení pøe/pod exponování)" 13 6 "Skript (programování foáku)" 14 7 "Nastavení barev" 15 8 "Rùzné vìci" 16 9 "Parametry ladìní" 17 10 "Obnovit nastavení na výchozí..." 18 11 "Uloit nastavení nyní..." 19 20 12 "Zpìt" 21 21 22 22 23 23 13 "RAW" 24 24 25 14 "Ukládat ve formátu RAW" 26 15 "Sloucit dlouhodob. expozici" 27 16 "Pouze první RAW v sérii snímku" 28 17 "RAW soubor v adresári s JPEG" 29 18 "Prefix RAW souboru " 30 19 "Prípona RAW souboru" 25 14 "Ukládat RAW" 26 16 "Pouze první RAW v sérii" 27 17 "Soubor RAW v adresáøi s JPEG" 28 18 "Prefix souboru RAW" 29 19 "Pøípona souboru RAW" 31 30 32 31 … … 35 34 21 "Zobrazit OSD" 36 35 22 "Zobrazit stav" 37 23 "Zobrazit nastavení objektivu"38 24 " Zoom"36 23 "Zobrazit rùzné hodnoty" 37 24 " Hodnota pøiblíení" 39 38 25 "Zobrazit DOF kalkulátor" 40 39 26 "Zobrazit hodiny" 41 27 " Nastavit rozmístení prvku naOSD"40 27 "Editor rozvrení prvkù OSD" 42 41 28 "Baterie" 43 42 … … 46 45 47 46 30 "Zobr. ivý histogram" 48 31 " Strukturahistogramu"47 31 "Rozvrení histogramu" 49 48 32 "Reim histogramu" 50 33 "Zobr. v histogr. p re/pod EXP"51 34 "Ignorov . hranic. picky"49 33 "Zobr. v histogr. pøe/pod EXP" 50 34 "Ignorovat hranièní pièky" 52 51 35 "Automatická velikost" 53 52 … … 56 55 57 56 37 "Vykreslovat zebru" 58 38 " Módzebry"57 38 "Reim zebry" 59 58 39 "Práh podexponování" 60 40 "Práh p reexponování"61 41 "Obnovit výchozí zobrazení"59 40 "Práh pøeexponování" 60 41 "Obnovit pùvodní obrazovku" 62 61 42 "Obnovit OSD" 63 43 "Kreslit p res zebru"62 43 "Kreslit pøes zebru" 64 63 65 64 66 65 44 "Skripty" 67 66 68 45 " Otevrít skript ze souboru..."69 46 " Spodenízahájení skriptu (.1s)"67 45 "Naèíst skript ze souboru..." 68 46 "Prodleva zahájení skriptu (.1s)" 70 69 47 "Aktuální skript" 71 70 48 "Parametry skriptu" 72 71 73 72 74 49 "Nastavení zobrazení"73 49 "Nastavení barev" 75 74 76 75 50 "Jazyk..." 77 51 "Kód . stránka"78 52 "RBF fontmenu..."76 51 "Kódová stránka OSD" 77 52 "RBF písmo menu..." 79 78 53 "Barvy" 80 79 54 "OSD - text" … … 83 82 57 "Histogram - pozadí" 84 83 58 "Histogram - okraj" 85 59 "Histogram - EXP zna cky"84 59 "Histogram - EXP znaèky" 86 85 60 "Zebra - podexponování" 87 61 "Zebra - p reexponování"88 62 " Ikona baterie"86 61 "Zebra - pøeexponování" 87 62 "Baterie - ikona" 89 88 63 "Menu - text" 90 89 64 "Menu - pozadí" 91 65 "Prohlíe c textu- text"92 66 "Prohlíe c textu- pozadí"93 94 95 67 "R uzné"96 97 68 "Prohlíe c souboru"98 69 "Kalendá r"99 70 "Prohlíe c textu"90 65 "Prohlíeè textù - text" 91 66 "Prohlíeè textù - pozadí" 92 93 94 67 "Rùzné" 95 96 68 "Prohlíeè souborù" 97 69 "Kalendáø" 98 70 "Prohlíeè textových souborù" 100 99 71 "Hry" 101 100 72 "Baterka" 102 73 " Ukázat splash po zavedení"103 74 "Pouít zoom-páckupro MF"104 75 "Tla cítko <ALT> módu"105 76 "Vykresl ení palety"106 77 " Informace o programu"107 78 " Informace o pameti"108 109 110 79 " Debug"111 112 80 " Ukázat PropCases"113 81 "Stránka PropCase "114 82 " Ukázat ladícíhodnoty"115 83 "Prohlíe ní pameti"116 84 " Výpis RAM pri ALT +/- stisku"117 85 "Vytvo rit bootovací kartu..."118 119 120 86 " Baterie a místo na karte"121 122 87 " Napetí MAX(mV)"123 88 " Napetí MIN(mV)"124 89 " Krokovat po 25"125 90 "Zobr azovat procenta"126 91 "Zobr azovat napetí"127 92 "Zobr azovat ikonu"128 129 130 93 "Prohlíe c textu"131 132 94 "Otev rít nový soubor..."133 95 "Otev rít naposledy otevrený"134 96 "Vybrat RBF font"101 73 "Zobr. úvod. obraz.@naètení" 102 74 "Pouít páèky pøiblí. pro MF" 103 75 "Tlaèítko reimu <ALT>" 104 76 "Vykreslit paletu" 105 77 "Zobrazit inf. o sestavení" 106 78 "Zobrazit inf. o pamìti" 107 108 109 79 "Ladìní" 110 111 80 "Zobrazit data ladìní" 112 81 "Stránka PropCase/ParamsData" 113 82 "Zobrazit rùzné hodnoty" 114 83 "Prohlíeè pamìti" 115 84 "Akce ladìní ALT +/-" 116 85 "Vytvoøit bootovací kartu..." 117 118 119 86 "Nastavení zobrazení baterie" 120 121 87 "MAX napìtí baterie (mV)" 122 88 "MIN napìtí baterie (mV)" 123 89 "Velikost kroku (ON= 25, OFF= 1 mV)" 124 90 "Zobr. procenta baterie" 125 91 "Zobr. napìtí baterie" 126 92 "Zobr. ikonu baterie" 127 128 129 93 "Prohlíeè textových souborù" 130 131 94 "Otevøít nový soubor..." 132 95 "Otevøít naposledy otevøený" 133 96 "Vybrat RBF písmo" 135 134 97 "Kódová stránka" 136 98 "Zalamovat slova"135 98 "Zalamovat podle slov" 137 136 99 "Povolit aut. posouvání" 138 137 100 "Prodleva aut. posouvání (s)" … … 145 144 146 145 147 104 "*** Výchozí nastavení ***" 148 149 105 "Opravdu vrátit nastavení na výchozí hodnoty?" 150 151 106 "*** Informace o programu ***" 152 107 "CHDK Ver: %s, #%s\nDatum: %s\nCas: %s\nPrístr: %s\nFW Ver: %s\nCompiler: %s" 153 154 108 "*** Informace o pameti ***" 155 109 "Volná pamet: %d bytu" 146 104 "*** Obnovit nastavení ***" 147 105 "OPRAVDU obnovit nastavení\nna výchozí hodnoty?" 148 149 106 "*** Informace o sestavení ***" 150 107 "Verze CHDK: %s %s\nRevize: %s\nDatum: %s\nÈas: %s\nFoák: %s\nVerze FW: %s\nKompilér: %s" 151 152 108 "*** Informace o pamìti ***" 153 109 "Volná pamì: %d bajtù\nVelikost CHDK: %d bajtù\nNaèteno na: 0x%X" 156 154 157 155 110 "*** Informace ***" 158 111 "Prosím p repnete prístroj\ndo PLAY módu\na zkuste to znovu. :)"156 111 "Prosím pøepnìte foák\ndo reimu PROHLÍENÍ\na zkuste to znovu. :)" 159 157 160 158 // file browser titles 161 112 "Prohlíe c souboru"162 113 "V ýber souboruskriptu"163 114 "V ýber textového souboru"164 115 "V ýber RBF-font souboru"165 116 "V ýber souborujazyka"159 112 "Prohlíeè souborù" 160 113 "Vybrat soubor skriptu" 161 114 "Vybrat soubor textu" 162 115 "Vybrat soubor RBF písma" 163 116 "Vybrat soubor jazyka" 166 164 167 165 // for calendar 168 166 117 "Leden" 169 167 118 "Únor" 170 119 "B rezen"168 119 "Bøezen" 171 169 120 "Duben" 172 121 "Kv eten"173 122 " Cerven"174 123 " Cervenec"170 121 "Kvìten" 171 122 "Èerven" 172 123 "Èervenec" 175 173 124 "Srpen" 176 125 "Zá rí"177 126 " Ríjen"174 125 "Záøí" 175 126 "Øíjen" 178 176 127 "Listopad" 179 177 128 "Prosinec" 180 178 181 179 129 " Po" 182 130 " Ut"180 130 " Út" 183 181 131 " St" 184 132 " Ct"182 132 " Èt" 185 183 133 " Pá" 186 184 134 " So" … … 193 191 138 "Ano" 194 192 139 "Ne" 195 140 " Zruit"193 140 "Storno" 196 194 197 195 // OSD layout editor 198 196 141 "Histogram" 199 142 "DOF kalk ."200 143 " RAW/SCR/EXP"201 144 " Soubor hodnot"197 142 "DOF kalkulátor" 198 143 "Zobrazení stavù" 199 144 "Rùzné hodnoty" 202 200 145 "Ikona baterie" 203 201 146 "Text baterie" … … 205 203 206 204 // palette 207 148 " StiskniSET pro vykreslení barvy "208 149 " Stiskn i MENU pro ukoncení"205 148 "Stisknìte SET pro vykreslení barvy " 206 149 " Stisknìte MENU pro ukonèení" 209 207 150 "Barva" 210 151 " %s pro výber barvy"208 151 "Pouijte %s pro výbìr barvy" 211 209 212 210 // reversi 213 211 152 "*** Výsledek hry ***" 214 153 "Vyhrál js i! :)"215 154 "Prohrál js i! :("212 153 "Vyhrál jste! :)" 213 154 "Prohrál jste! :(" 216 214 155 "Remíza! :/" 217 215 … … 220 218 158 "Toto pole není prázdné!" 221 219 222 159 "Na tahu: Ty "223 160 "Na tahu: P ocítac"224 161 " KONEC"225 162 " Bílá Cerná "226 227 163 "*** O h re ***"220 159 "Na tahu: Ty " 221 160 "Na tahu: PC " 222 161 " KONEC " 223 162 " Bílá Èerná " 224 225 163 "*** O høe ***" 228 226 229 227 // sokoban 230 164 " Obtínost"231 165 " Tahy"232 166 "*** K O N E C***"233 167 " Skvele!\n zvládl jsito! "228 164 " Úroveò" 229 165 " Tahy" 230 166 "*** Konec ***" 231 167 "ANO!\n Zvládl jste to! " 234 232 235 233 // console 236 168 "*** SPUT EN ***"237 169 "*** P RERUEN ***"238 170 "*** UKON CEN ***"234 168 "*** SPUTÌN ***" 235 169 "*** PØERUEN ***" 236 170 "*** UKONÈEN ***" 239 237 240 238 // file browser 241 171 "*** Vymazat adresá r***"242 172 "O pravdu smazat\nVECHNY soubory \nz vybraného adresáre?"239 171 "*** Vymazat adresáø ***" 240 172 "OPRAVDU smazat\nVECHNY soubory\nz vybraného adresáøe?" 243 241 173 "*** Vymazat soubor ***" 244 242 174 "OPRAVDU vymazat\nvybraný soubor?" 245 243 246 244 // benchmark 247 175 "Výkon ostní testy"248 176 "Výpo cet..."249 177 "Testování stisknete [set] pro zahájení"245 175 "Výkonnostní testy" 246 176 "Výpoèet..." 247 177 "Testování foáku Stisknìte [SET] pro start" 250 248 178 "Obrazovka" 251 179 "Zápis :"252 180 " Ctení:"253 181 "Pam et"254 182 " Flash-karta"249 179 "Zápis :" 250 180 "Ètení :" 251 181 "Pamì" 252 182 "Karta" 255 253 183 "Zápis (RAW) :" 256 254 184 "Zápis (Mem) :" 257 255 185 "Zápis (64k) :" 258 186 " Ctení (64k) :"256 186 "Ètení (64k) :" 259 257 260 258 187 "Zakázat vypnutí LCD" … … 264 262 190 "Vloit" 265 263 191 "Smazat" 266 192 "Inverz e výberu"267 193 "*** Vyjmutí soubor u***"268 194 "O pravdu vyjmout\n%d vybraných souboru\nz %s/?"269 195 "*** Kopírování soubor u***"270 196 "O pravdu kopírovat\n%d vybraných souboru\nz %s/?"271 197 "*** Mazání soubor u***"272 198 "O pravdu vymazat\n%d vybraných souboru?"264 192 "Inverzní výbìr" 265 193 "*** Vyjmutí souborù ***" 266 194 "OPRAVDU vyjmout\n%d vybraných souborù\nz %s/?" 267 195 "*** Kopírování souborù ***" 268 196 "OPRAVDU kopírovat\n%d vybraných souborù\nz %s/?" 269 197 "*** Mazání souborù ***" 270 198 "OPRAVDU vymazat\n%d vybraných souborù?" 273 271 199 "Moment prosím..." 274 272 275 200 "Zobraz ovat mríku"276 201 " Otevrít mríku ze souburu..."277 202 " Cáry"278 203 "M ríka"279 204 "V ýber souboru s mríkou"280 205 "Aktuální m ríka"273 200 "Zobrazit èáry møíky" 274 201 "Naèíst møíku ze souboru..." 275 202 "Èáry møíky" 276 203 "Møíka" 277 204 "Vybrat soubor s møíkou" 278 205 "Aktuální møíka" 281 279 282 280 206 "Redukce umu" 283 281 284 207 "Potla cit barvy mríky"285 208 "Barva car"286 209 "Barva výpln e"282 207 "Potlaèit barvy møíky" 283 208 "Barva èar" 284 209 "Barva výplnì" 287 285 288 286 210 "DOF kalkulátor" 289 287 211 "DOF kalkulátor" 290 212 "Canon subj. vzd. jak pred.rov.ostr."291 213 "Pouít EXIF subj. vzdál.(PC65)"292 214 "Zobr. subj. vzdál. v e smí."293 215 "Zob . prední rov.ostr. ve smí."294 216 "Zob . zadní rov.ostr. ve smí."295 217 "Zob . hyperf.vzdál. ve smí."296 218 "Zob . hloub. ostr. ve smí."297 298 299 219 " Smíené hodnoty"300 220 " Smíené hodnoty"301 221 "Zobr. v módu náhledu"302 222 "Zobrazit zoom"303 223 "Zobrazit 'skute cná' clona"304 224 "Zobrazit 'skute cné' ISO"305 225 "Zobrazit ' Market' ISO"306 226 " Zobr. ISO jen pri nast. autom.ISO"288 212 "Canon subj. vzd. jako pøed.rov.ostr." 289 213 "Pouít subj. vzdál. EXIF(PC65)" 290 214 "Zobr. subj. vzdál. v rùz." 291 215 "Zobr. pøední rov. ostr. v rùz." 292 216 "Zobr. zadní rov. ostr. v rùz." 293 217 "Zobr. hyperf. vzdál. v rùz." 294 218 "Zobr. hloub. ostr. v rùz." 295 296 297 219 "Rùzné hodnoty" 298 220 "Rùzné hodnoty" 299 221 "Zobr. v reimu náhledu" 300 222 "Zobrazit pøiblíení" 301 223 "Zobrazit 'skuteènou' clonu" 302 224 "Zobrazit 'skuteèné' ISO" 303 225 "Zobrazit 'market' ISO" 304 226 "Zobr. ISO jen pøi reimu AutoISO" 307 305 227 "Zobr. nast. expozice Ev (Tv+Av)" 308 228 "Zobr . namerené Ev (Bv+Sv)"306 228 "Zobrazit namìøené Ev (Bv+Sv)" 309 307 229 "Zobr. nastav. Bv (hod. jasu)" 310 230 "Zobrazit nam erené Bv"311 231 "Zobr. hodn. p reexp. (ne blesk!)"312 232 "Zobr .jas scény"313 314 233 " Nastavenívidea"315 234 " Nastavenívidea"316 235 " Video mód"308 230 "Zobrazit namìøené Bv" 309 231 "Zobr. hodn. pøeexp. (ne blesk!)" 310 232 "Zobrazit jas scény" 311 312 233 "Parametry videa" 313 234 "Parametry videa" 314 235 "Reim videa" 317 315 236 "Datový tok videa" 318 316 237 "Kvalita videa" 319 317 320 318 321 238 "Rozí rené monosti"322 239 "Rozí rené monosti"323 240 "P rekrytí rychlosti záverky"324 241 " koeficient"325 242 "P rekrytí hodnotyclony"326 243 "P rekrytí hodnotyISO"327 244 " koeficient"328 245 "P rekrytí subj. vzdál."329 246 " koeficient (mm)"330 331 247 "Brack .v souvis. reimu"332 248 "Bracketing v souvis l. reimu"319 238 "Rozíøené monosti focení" 320 239 "Rozíøené monosti focení" 321 240 "Potlaèit rychlost závìrky" 322 241 " " 323 242 "Potlaèit hodnotu clony" 324 243 "Potlaèit hodnotu ISO" 325 244 " " 326 245 "Potlaèit hodn. subj. vzdál. (mm)" 327 246 " " 328 329 247 "Bracketing v souvis. reimu" 330 248 "Bracketing v souvis. reimu" 333 331 249 "Hodnota TV Bracketingu" 334 332 250 "Hodnota AV Bracketingu" 335 333 251 "Hodnota ISO Bracketingu" 336 252 " koeficient"337 253 "Subj. rozestup Bracketu(MF)"338 254 " koeficient (mm)"334 252 " " 335 253 "Subj. hodn. rozestupu Bracketu (mm)" 336 254 " " 339 337 255 "Typ Bracketingu" 340 338 341 339 256 "Autostart" 342 257 "Povolit dálk. ovládání (USB)"343 344 258 " Rízení expozice (bez blesku)"345 259 " Rízení expozice (bez blesku)"346 260 "P repocítat expozici"347 261 "TV expozice - p repoc. por."348 262 "AV expozice - p repoc. por."349 263 "ISO expozice - p repoc. por."350 351 264 " Vymazat hodn. prekr. prisput."352 353 265 "Zobr. hodn. 'Canon' p reexp."340 257 "Povolit dálk. ovládání" 341 342 258 "Øízení expozice (ne blesk)" 343 259 "Øízení expozice (ne blesk)" 344 260 "Pøepoèítat expozici" 345 261 "TV expozice - pøepoè. poø." 346 262 "AV expozice - pøepoè. poø." 347 263 "ISO expozice - pøepoè. poø." 348 349 264 "Smazat hodn. potlaèení@sput." 350 351 265 "Zobr. hodn. 'Canon' pøeexp." 354 352 355 353 266 "Zpracování RAW" 356 267 "Prosím p repnete fotoaparát\ndo reimu focenía zhotovte\njednu fotografii."357 268 "V ýber RAW souboru"354 267 "Prosím pøepnìte fotoaparát\ndo reimu záznamu a zhotovte\njednu fotografii." 355 268 "Vybrat soubor RAW" 358 356 269 "RAW suma" 359 270 "RAW prumer" 360 271 "Nedostatek místa na karte:\n%dM poadováno, %dM k dispozici." 361 362 272 "Zobrazit OSD v módu náhledu" 363 273 "Sputení seznamu úkolu" 364 274 "Subj. vzdál od cocek" 365 366 275 "Vymaz. hodn. bracketu & sput." 367 368 276 "Vytvorit kartu se dvema oddíly" 369 277 "Prepnout oddíly" 370 278 "Tímto se ZNICÍ VECHNA DATA\nna karte. Pokracovat?" 357 270 "RAW prùmìr" 358 271 "Nedostatek místa na kartì:\n%dM poadováno, %dM k dispozici." 359 360 272 "Zobrazit OSD v reimu náhledu" 361 273 "Sputìní seznamu úkolu" 362 363 274 "Subj. vzdál od èoèek" 364 365 275 "Smazat hodn. bracketu@sput." 366 367 276 "Vytvoøit kartu se dvìma oddíly" 368 277 "Pøepnout oddíly" 369 278 "Tímto se ZNIÈÍ VECHNA DATA\nna kartì. Pokraèovat?" 371 370 279 "Tato karta má pouze jeden oddíl" 372 371 280 "Chyba" 373 372 281 "Varování" 374 373 282 "Informace" 375 283 "RGB zebra (pouze p reexp.)"374 283 "RGB zebra (pouze pøeexp.)" 376 375 377 376 284 "Stav ND filtru" 378 377 379 285 "Zobr. m ríkuv histogramu"380 381 286 "OSD varování"382 287 "OSD pozadí varování"378 285 "Zobr. møíku Ev v histogramu" 379 380 286 "OSD - varování" 381 287 "OSD - pozadí varování" 383 382 288 "Barva ikony zbýv. místa" 384 289 "Zobr. ikonu místa na kart e"383 289 "Zobr. ikonu místa na kartì" 385 384 290 "Zbývající místo" 386 291 "Zobr. místo na kart ev proc."387 292 "Zobr. místo na kart ev MB"388 293 " Prostor Text"389 294 " Zobr azit pocet zbýv.RAW"385 291 "Zobr. místo na kartì v proc." 386 292 "Zobr. místo na kartì v MB" 387 293 "Text místa" 388 294 " Zobr. poèet snímkù RAW" 390 389 295 "Zbývající pro RAW" 391 390 392 391 296 "Zobrazit stav RAW" 393 392 394 297 "Zobr az. hodnot pri videu"395 396 298 " Druh koef. záverky"397 299 " Uivatel. menu aktivní"393 297 "Zobr. hodnoty pøi videu" 394 395 298 " " 396 299 "Povolit uivatel. menu" 398 397 300 "Uivatelské menu" 399 301 " " 400 401 302 " Zvet. cocky adapt., 100=1x" 398 399 302 " Mìøítko èoèky adaptéru, 100=1x" 402 400 303 "Zobr. indikát. místa" 403 304 " Velikost na display"401 304 " Velikost na obraz." 404 402 305 " írka/Výka" 405 306 " Pr ah. limitv %"406 307 " Pr ah. limitv MB"403 306 " Práh limitu v %" 404 307 " Práh limitu v MB" 407 405 308 "Jednotka varování" 408 309 " Pr ahov. limitvarování"409 310 "Povolit optick ý ZOOM"406 309 " Práh limitu varování" 407 310 "Povolit optické pøiblíení" 410 408 311 "Hodiny" 411 409 312 "Nastavení hodin" 412 410 313 "Formát hodin" 413 411 314 "Barva pozadí zbývajícího místa" 414 315 "Indikace 12h casu"415 316 "Zobr . pri polovic. namáck."412 315 "Indikace 12h èasu" 413 316 "Zobrazit@namáèknutí spoutì" 416 414 417 415 317 "Nastavení zobrazení RAW" 418 416 318 "RAW" 419 417 420 319 "Nastavení zobr. místa na kart e"421 320 "Místo na kart e"418 319 "Nastavení zobr. místa na kartì" 419 320 "Místo na kartì" 422 420 423 421 321 "Uivatelské Auto ISO" 424 422 322 "Uivatelské Auto ISO" 425 423 323 "Povolit uiv. Auto ISO" 426 324 "Min. rychlost záv erky"427 325 " Uiv. koefic. (1/FL/koef.)"428 326 " IS koeficient (Tv*koef.)"424 324 "Min. rychlost závìrky" 425 325 " Uiv. koefic. (1/FL/koef.)" 426 326 " IS koeficient (Tv*koef.)" 429 427 327 "Max ISO HI (x10)" 430 428 328 "Max ISO AUTO (x10)" 431 429 329 "Min ISO (x10)" 432 430 433 330 " Barva textu titulku menu"434 331 " Barva pozadí titulku menu"435 332 " Barva textu cursoru"436 333 " Barva pozadí cursoru"437 334 "Centrovat Menu"438 335 "Ztlumit zvuk p ri zoomování"439 440 336 " Odstr. vadných pixelu"431 330 "Menu - barva textu titulku" 432 331 "Menu - barva pozadí titulku" 433 332 "Kurzor - barva textu" 434 333 "Kurzor - barva pozadí" 435 334 "Centrovat menu" 436 335 "Ztlumit zvuk pøi zoomování" 437 438 336 "Ruèní odstranìní vadných pixelù" 441 439 337 "Vyp." 442 338 "Pr um."440 338 "Prùmìr" 443 441 339 "RAWconv" 444 442 445 340 "P rekrytí"446 341 "P rekrytípozadí"447 342 "Zakázat p rekrytí"448 343 " V cet. AutoIso & Bracketing"449 344 " Skrýt v "443 340 "Potlaèení" 444 341 "Potlaèení - pozadí" 445 342 "Zakázat potlaèení" 446 343 " Vèet. AutoIso & Bracketing?" 447 344 " Skrýt v ?" 450 448 345 "Zakázat @ Video Rec?" 451 346 "Zobr. zbýv. cas videa"452 347 " Frekv . obnovení (sec)"453 348 "Zbývající cas videa"454 349 " Mazat param. videa pri startu"455 350 " Povolit rychlé nastavení Ev"456 351 " Krokovat po (1 EV)"457 352 " EV korekce"458 353 "O pravdu vymazat VECHNY\nRAW soubory bez odpovídajících JPG\nv DCIM adresári?"459 354 "O pravdu vymazat VECHNY\nRAW soubory bez odpovídajících JPG\nve vybraném adresári?"460 355 " "Opravdu vymazat VECHNY\nRAW soubory bez odpovídajících JPG\n(Vyjma oznacenýc)"461 356 "Funkce citení RAW\nse nedá aplikovat na tuto poloku"462 357 "*** Citení RAW souboru***"463 358 " Citení RAW"449 346 "Zobr. zbýv. èas videa?" 450 347 " Frekvence obnovení (~s)" 451 348 "Zbývající èas videa" 452 349 "Smazat param. videa@sput.?" 453 350 " " 454 351 " " 455 352 "Korekce EV" 456 353 "OPRAVDU vymazat VECHNY\nRAW soubory bez odpovídajících JPG\nv adresáøi DCIM?" 457 354 "OPRAVDU vymazat VECHNY\nRAW soubory bez odpovídajících JPG\nve vybraném adresáøi?" 458 355 "OPRAVDU vymazat VECHNY\nRAW soubory bez odpovídajících JPG\n(vyjma oznaèených)" 459 356 "Funkce èitìní RAW\nse nedá aplikovat na tuto poloku" 460 357 "*** Èitìní RAW souborù ***" 461 358 "Èitìní RAW" 464 462 465 359 "Uivatel. menu jako základní"466 467 360 " Font symbolu"468 361 "V ýber souboru se Symboly"463 359 "Uivatel. menu jako poèátek" 464 465 360 "Písmo symbolù" 466 361 "Vybrat soubor symbolù" 469 467 362 "Povolit symboly" 470 363 " Barva textu symbolu"471 364 " Barva pozadí symbolu"472 473 365 "Uivatelské tonální k rivky"474 366 "Uivatelské tonální k rivky"475 367 " Otevrít profil krivky..."476 368 "Povolit k rivky"477 369 "V ýber souboru s krivkami"478 479 370 "P rekrytí okraju"480 371 "P rekrytí okraju"481 482 372 "Povolit p rekrytí okraju"483 373 "Práh p rekrytí okraju"484 374 "Barva p rekrytí okraju"485 486 375 "Parametry dálk. spout e"487 376 "Parametry dálk. spout e"488 377 "Povolit dálk. spout"468 363 "Symbol - barva textu" 469 364 "Symbol - barva pozadí" 470 471 365 "Uivatelské tonální køivky" 472 366 "Uivatelské tonální køivky" 473 367 "Naèíst profil køivky..." 474 368 "Povolit køivky" 475 369 "Vybrat soubor s køivkami" 476 477 370 "Pøekrytí okrajù" 478 371 "Pøekrytí okrajù (nástroj panoramat)" 479 480 372 "Povolit pøekrytí okrajù" 481 373 "Práh pøekrytí okrajù" 482 374 "Barva pøekrytí okrajù" 483 484 375 "Parametry dálk. spoutì" 485 376 "Parametry dálk. spoutì" 486 377 "Povolit synch. dálk. spou" 489 487 378 "Povolit synchronizaci" 490 488 379 "Povolit synchr. prodlevu" … … 492 490 381 "Synchr. prodleva 0.1s" 493 491 494 382 " AF key"495 383 "Na hrát vých. hodnoty param."496 384 "Nastavení parametr u"497 498 385 "Zakázat R aw @ Sport"499 386 "Zakázat R aw @ Burst"500 387 "Zakázat R aw@ EV Bracketing"501 388 "Zakázat R aw @ Timer"502 503 389 "V yjímky"504 390 "Menu v yjímek RAW"505 391 "Varovat p ri vyjímkách"506 392 "Vdy vybrat první vmenu"492 382 "Tlaèítko AF" 493 383 "Naèíst vých. hodnoty param." 494 384 "Nastavení parametrù" 495 496 385 "Zakázat RAW @ sport" 497 386 "Zakázat RAW @ shluk" 498 387 "Zakázat RAW @ EV Bracketing" 499 388 "Zakázat RAW @ èasovaè" 500 501 389 "Výjimky" 502 390 "Menu výjimek RAW" 503 391 "Varovat pøi výjimkách" 504 392 "Vdy vybrat 1. poloku@menu" 507 505 508 506 393 "Prodleva (0.1s)" 509 394 "Synchroniz. dálk. spou t"510 395 "Rychlé ovlád . videa"507 394 "Synchroniz. dálk. spou" 508 395 "Rychlé ovládání videa?" 511 509 396 "Teplota" 512 397 "Zobrazit teplotu "513 398 " Rídit kvalitu videa"514 399 "Povolit dálkový Zoom"515 400 "Prodleva Zoomu 0.1s"516 401 "Zvuk y pri startu"517 402 "Prefix ode cteného RAW"518 403 " prípona odecteného RAW"519 404 "Ode c. vstup. tmavé hodn."520 405 "Ode c. výstup. tmavé hodn."510 397 "Zobrazit teplotu?" 511 398 "Øídit kvalitu videa?" 512 399 "Povolit vzdálené pøiblíení" 513 400 "Prodleva pøiblíení 0,1s" 514 401 "Zvuk pøi startu" 515 402 "Prefix odeèteného RAW" 516 403 "Pøípona odeèteného RAW" 517 404 "Odeè. vstup. tmavé hodn." 518 405 "Odeè. výstup. tmavé hodn." 521 519 406 "od" 522 520 407 "...%d více souboru" 523 408 "Ode cítání"524 409 "Ode císt od oznaceného"525 410 "U kládat parametry"526 411 "Zobrazení Video Ev"527 412 " Hodnota p rekrytí Zoom"528 413 "P rekrytí Zoom"529 414 " Nulovat na zacátku"530 415 "P ripojit RAW príponu"521 408 "Odeèítání" 522 409 "Odeèíst od oznaèeného" 523 410 "Uloit parametry" 524 411 "Zobrazení Ev videa" 525 412 " Hodnota potlaèení pøiblíení" 526 413 "Potlaèení pøiblíení" 527 414 " Smazat@sput." 528 415 "Pøipojit RAW pøíponu" 531 529 416 " ve Fahrenheitech" 532 417 " Otevrít prekrytí okraju"533 418 "Uloit p rekrytí okraju"530 417 "Naèíst pøekrytí okrajù" 531 418 "Uloit pøekrytí okrajù" 534 532 419 "Povolit v Prohlíení" 535 420 "Volná vnitrní pamet" 536 421 " Otevrít + nastavit Zoom"537 422 " Zamknout prekrytí okraju"538 423 "Synch. blesku na zadnílamelu"533 534 421 "Naèíst+nastavit pøiblíení" 535 422 "Reim panoramat" 536 423 "Synch. blesku na 2. lamelu" 539 537 424 "DNG formát" 540 425 " RAW buffer uloen"541 426 "Ne mohu otevrít CHDK/badpixel.bin\nProsím spust \nCHDK/SCRIPTS/TEST/badpixel.lua"542 427 " Ukázat ukládací casRAW"543 428 " Ctverice"544 429 "Soupe r:"545 430 " Clovek"546 431 "Hrá c c.1 vyhrál"547 432 "Hrá c c.2 vyhrál"548 433 "Porazil jsem T e"549 434 "Nerozhodn e"550 435 "Zakázat RAW @ p rekrytí okraju"551 436 "Zakázat RAW @ Auto Mode"552 437 " Povolit blesk ve videu?"553 438 " Výkon blesku"554 439 " ´DNG´ prípona"555 440 "DNG viditelné p res USB"538 425 "Uloit vyrov. pamì RAW" 539 426 "Nelze naèíst CHDK/badpixel.bin\nPouijte nejprve 'Vytvoøit badpixel.bin'" 540 427 "Zobrazit èas uloení RAW" 541 428 "Ètveøice" 542 429 "Soupeø:" 543 430 "Èlovìk" 544 431 "Hráè è. 1 vyhrál" 545 432 "Hráè è .2 vyhrál" 546 433 "Porazil jsem Tì" 547 434 "Nerozhodnì" 548 435 "Zakázat RAW @ pøekrytí okrajù" 549 436 "Zakázat RAW @ reim Auto" 550 437 " POUZE ve videu" 551 438 " " 552 439 "Pøípona 'DNG' souboru" 553 440 "DNG viditelné pøes USB" 556 554 441 "Mastermind" 557 555 442 "dostupné barvy" 558 443 "na správné míste"556 443 "na správném místì" 559 557 444 "odpovídající barvy" 560 445 "SPRÁVN E:-)"558 445 "SPRÁVNÌ :-)" 561 559 446 "KONEC HRY" 562 447 "[<-] [->] vyb ersloupec"563 448 "[UP] [DOWN] vyb erbarvu"564 449 "[SET] dalí rádek"560 447 "[<-] [->] vybrat sloupec" 561 448 "[UP] [DOWN] vybrat barvu" 562 449 "[SET] dalí øádek" 565 563 450 "ádná barva 2x" 566 451 "reset souboru" 567 452 "restartuj prístroj ..." 568 453 "Rucne uvolni blesk" 564 451 "Obnovit písma menu" 565 452 "restartovat foák..." 566 453 " " 567 454 "Potlaèit kvalitu" 568 455 "Restartovat Lua pøi chybì" 569 456 "Filtrovat okraje" 570 457 "Zobrazit vdy" 571 458 " Pøekrytí panoramat (%)" 572 459 "Vytvoøit badpixel.bin" 573 460 "Pro tuto operaci je nutné být\n v reimu záznamu." 574 461 "%s zakázáno pøi sestavení" 575 462 "Potlaèení dotykové obrazovky" 576 463 "Ovládání AE videa" 577 464 "Tlaèítka zkratek <Alt>" 578 465 "Informace o USB" 579 466 "Zobrazit informace o USB" 580 467 "Uloit log ROM selhání" 581 468 "CHYBA: SystemEventInit a System.Create selhalo" 582 469 "Log ROM selhání nemohl být uloen" 583 470 "Log ROM selhání byl uloen do ROMLOG.LOG" 584 585 471 "Typ pøepnutí" 586 472 "Reim ovládání" 587 473 "Monosti" 588 589 474 "Nastavení textového pole" 590 475 "Vybrat znak. sadu text. pole" 591 476 "Více ->" 592 477 "Vytvoøit sloku" 593 478 "Pøejmenovat" 594 479 "Zadejte název sloky:" 595 480 "Zadejte nový název souboru:" 596 481 "Odstranit sloku" 597 598 482 "Aktuální uivatelská køivka" 599 483 "Tetris" 600 484 "Zobrazit èíslo oddílu" 601 485 "Video bez èasového limitu" 602 486 "CMOS se mùe bìhem dlouhého záznamu pøehøát!" 603 604 //GPS Anfang--------------------------------- 605 487 "Nastavení GPS" 606 488 "Zobrazit navigaci" 607 489 "Zobrazit kompas" 608 490 "Zobrazit zemìpisné souøadnice" 609 491 "Zobrazit nadmoøskou výku" 610 492 "Save waypoint to each JPG" 611 493 "GPX-Track - Time Interval [s]" 612 494 "GPX-Track Record Start" 613 495 "GPX-Track Record Stop" 614 496 "Quit showing Compass" 615 497 "Quit showing navigation" 616 498 "Waiting Time for GPS-Signal [s]" 617 499 "Compass - Sample interval [s]" 618 500 "Navigation - Sample interval [s]" 619 501 "Time to change to play-mode [s]" 620 502 "Time to deactivate backlight [s]" 621 503 "Common Settings" 622 504 "Sampling interval until GPS receipt.[s]" 623 505 "Attenuation of compass [1-40]" 624 506 "Logging - Settings" 625 507 "Tagging - Settings" 626 508 "Navigation - Settings" 627 509 "Shutdown at battery level [0-99%]" 628 510 "Delayed Tagging - Short string" 629 511 "0 - 2D-3D Fix" 630 512 "Blinking LED during Delayed Tagging" 631 513 "Change to play-mode" 632 514 "Shutdown backlight" 633 515 "Change to play-mode" 634 516 "Shutdown backlight" 635 517 "Time to change to play-mode [s]" 636 518 "Time to deactivate backlight [s]" 637 519 "Zobrazit stav GPS" 638 520 "Alert on low battery" 639 521 "Set position as home location" 640 522 "Bring me home Start" 641 523 "Set position as current timezone" 642 524 "Show track record symbol" 643 525 "Bring me home Stop" 644 526 "Check change of Timezone" 645 527 "Audio Warnings [on/off]" 646 528 "GPS - CHDK [on/off]" 647 529 "Bez GPS!" 648 530 "Timezone has changed!" 649 531 "Battery below setting!" 650 532 "Camera will shutdown in %02d seconds!" 651 533 "Automatic shutdown cancelled!" 652 534 "Camera will wait for GPS for %01d:%02d" 653 535 "Navigation to Home Loc is not possible!" 654 536 "Cant navigate to photo: %s!" 655 537 "Distance: = %i m" 656 538 "Duration: = %i:%i:%i" 657 539 "Pace: = %s km/h" 658 540 "Direction: = %i°" 659 541 "Destination: = %i°" 660 542 "Navigation to photo: %s started" 661 543 "latitude=%s - longitude=%s " 662 544 "heading = %i°" 663 545 "Navigation to Home Loc started" 664 //GPS Ende----------------------------------------- 665 666 546 "Druhá alternativní MIN spou" 667 547 "Druhé alternativní MAX ISO (x10)" 668 548 "Denní kompen. pøeexp." 669 549 "Kompenzovat, kdy pøeexp.>= x%" 670 671 550 "Pro storno [namáèknìte]" 672 673 551 "Povolit start skriptu" 674 675 552 "Zakázat tlaèítko asistence pøiblíení" 676 677 553 "Verze DNG" 678 554 "Nastavení menu" 679 555 "Zobr. obrazovku nápov. <ALT>" 680 556 " Prodleva obraz. nápov." 681 557 "Nastavení CHDK" 682 683 // <ALT> mode help screen text 684 558 "%-17s %-18s" // Header format, adjust if needed; but total len must be 35 685 559 "Zkratky <ALT>" // Len must be <= first string in header format (17) 686 560 "Namáèknutí +" // Len must be <= first string in header format (17) 687 561 "MENU = Menu CHDK" // Len must be <= second string in header format (18) 688 562 "MENU = Uiv. menu" // Len must be <= second string in header format (18) 689 563 "SET/SPOU = Menu/Sputìní skriptu " // Len must be <= 35 690 564 "Fokus %5s=Inf. %5s=HyperFocal" // Len must be <= 35 691 565 "Manuální fokus" 692 566 "Skrýt OSD CHDK pøi zmáèknutí" 693 567 " * - není k dispoz. v reimu <ALT>" // Len must be <= 35 694 695 568 "Poloka '%s'\npøidána do uivatelského menu" 696 569 "Uivatelské menu je plné" 697 698 570 "SD karta" 699 571 "Jazyk a písmo" 700 701 572 "Ruèní blesk (výkon)" 702 573 "Fast Ev step size" 703 574 "Zobrazit NÁPOVÌDU" 704 575 "Use popup to edit value" -
branches/tsvstar-uitest/CHDK/LANG/english.lng
r2083 r2085 705 705 575 "Use popup to edit value" 706 706 707 576 "Base" 708 577 "Profile Manager" 709 578 "Profiles" 710 579 "Profile Menu" 711 580 "Main Menu" 712 581 "" 713 707 576 "Add script to User Menu" 708 709 577 "Left, Right & Jogdial = Change Value" 710 578 "Zoom = Adjust Increment Factor" 711 579 "SET = Confirm, DISP = Cancel" 712 580 "MENU = Turn On/Off" 713 714 581 "Infinity Focus" 715 582 "Chg Focus Factor" 716 717 583 "Base" 718 584 "Profile Manager" 719 585 "Profiles" 720 586 "Profile Menu" 721 587 "Main Menu" 722 588 "" 723 -
branches/tsvstar-uitest/CHDK/LANG/german.lng
r2070 r2085 719 719 575 "Popup-Menü für Werteeingaben" 720 720 721 576 "Skript in Benutzer-Menü einfügen" 722 723 577 "Li, Re & Drehrad = Werteänderung" 724 578 "Zoom = Eingabeschrittweite wählen" 725 579 "SET = Bestätigen, DISP = Abbruch" 726 580 "MENU = Funktion Ein-/Ausschalten" 727 728 581 "unendlicher Fokus" 729 582 "Fokus Schrittweite" -
branches/tsvstar-uitest/CHDK/SCRIPTS/EDITOR/EDI.lua
r1975 r2085 1 1 --[[ 2 2 @title EDI - text editor 3 @param n Newline (1=Windows 2=Unix) 4 @default n 1 3 @param n Newline (0=Windows 1=Unix) 4 @default n 0 5 @values n Windows Unix 5 6 @param y Editor height 6 7 @default y 14 8 @range y 10 20 7 9 @param x Editor width 8 10 @default x 40 9 --new file option doesn`t work yet 10 --@param a Write new file? [T=1/N=0] 11 --@default a 0 11 @range x 30 50 12 @param s Browser in SCRIPTS? (1=Yes) 13 @default s 1 14 @range s 0 1 15 @param a Write a new file? (1=Yes) 16 @default a 0 17 @range a 0 1 18 @param b Do backups? (0=No) 19 @default b 1 20 @range b 0 1 21 --@param z Has this camera zoom?(0=NO) 22 --@default z 1 12 23 --]] 13 24 --[[ 14 Version: 2. 415 Author: Pawel Tokarz aka Outslider16 License: GPL 3+; see: http://www.gnu.org/licenses/gpl-3.0.html25 Version: 2.7 26 Author: Pawel Tokarz aka outslider 27 License: GPL 3+;see: http://www.gnu.org/licenses/gpl-3.0.html 17 28 in order to use with GPL<3: You can also use it with GPL<3 software. 18 29 30 ---------------------------------------------------------------- 31 | This version requires CHDK with Virtual Keyboard module!!! | 32 ---------------------------------------------------------------- 33 19 34 Changelog for 2.x series: 20 - file_browser() - new CDHK function used instead of lua browser 21 - 'menu', 'display' and 'shoot_half' buttons might be changed now (by setting global variables) 22 - small cleaning the code 35 - 'new file' option added 36 - empty file opening fixed (however really empty file can't be saved, it'll contain \n at least...) 37 - usage of text_box() for 'save as...' and new file name (thx for TobiMarg, tsvstar, philmoz, msl and others) 38 - some changes in menu() function 39 - fixed bug while browser is closed 40 - erase in MOVE mode jumps to the begin of the file 41 - more staff added but might be not mentioned 23 42 24 43 More info you can find on CHDK Forum http://chdk.setepontos.com/index.php?topic=6465.0 … … 32 51 --maximal x and y belong to the user 33 52 34 if n> 2then53 if n>1 then 35 54 print("Newline setting incorrect") 36 55 print("Using Unix style [\\n]") 37 56 print("Press any key...") 38 wait_click( 60000)39 n= 240 end 41 if n< 1then57 wait_click(0) 58 n=1 59 end 60 if n<0 then 42 61 print("Newline setting incorrect") 43 62 print("Using Windows style [\\r\\n]") 44 63 print("Press any key...") 45 wait_click( 60000)46 n= 147 end 48 49 if n== 1then CR="\r" end50 if n== 2then CR="" end64 wait_click(0) 65 n=0 66 end 67 68 if n==0 then CR="\r" end 69 if n==1 then CR="" end 51 70 -- /CHECK GIVEN PARAMETERS -- 52 71 … … 54 73 CONSOLE_HEIGHT=y 55 74 CONSOLE_WIDTH=x 56 PATH="A /CHDK/SCRIPTS" --where to open file_browser()?75 PATH="A" --where to open file_browser()? 57 76 EXIT=false 58 77 SAVED='S' --is file saved? … … 67 86 LETTER_NR=1 68 87 WRITE_KEY=0 69 EDI_VERSION="2. 4"88 EDI_VERSION="2.5" 70 89 --which key does what? 71 90 FILE_MENU_BUTTON="menu" … … 76 95 INSERT_MAP={{"newline"},{"(",")","[","]","{","}"},{"<",">",",","'",":",";"},{"_","+","-","/","\\","="},{"@","!","?","#","\"","."},{"~","&","*","|","^","`"},{"ASCII code"}} 77 96 FUNCTION_MAP={{"print","shoot"},{"is_key","if"},{"then","end"},{"sleep","wait_click"},{"function","@title"},{"@param","@default"},{"--[[","--]]"}} 78 FILE_MENU={{"Save"},{"Save and exit"},{" Exit (no save!)"},{"Clear whole file"},{"About EDI"}}97 FILE_MENU={{"Save"},{"Save and exit"},{"Save as..."},{"Exit (no save!)"},--[[{"Select..."},#for selecting]]{"Clear whole file"},{"About EDI"}} 79 98 TOPBAR="EDI - Text editor" 80 99 STATUSBAR="statbar" 81 100 FILENAME="" 101 FILE_CONTENT={} 102 KEYS_TABLE={"left","up","right","down","set","shoot_half","shoot_full","menu","display","erase","zoom_in","zoom_out"} 103 REPEATABLE_KEYS_TABLE={"left","up","right","down","zoom_out","zoom_in"} 104 SAVE_DIRS={{"A"},{"A/CHDK"},{"A/CHDK/SCRIPTS"},{"Cancel"}} 105 WAIT_TIME=0--#for selecting 106 DEBBUG="ok" 82 107 -- /CONFIGURATION -- 83 108 84 function get_input() 85 KEYS_TABLE={"left","up","right","down","set","shoot_half","shoot_full","menu","display","erase","zoom_in","zoom_out"} 86 REPEATABLE_KEYS_TABLE={"left","up","right","down","zoom_out","zoom_in"} 109 function get_input(keys_table,repeatable_keys_table,wait_time,repeat_delay) 87 110 PRESSED_KEY=nil 88 for key_nr=1, table.getn(REPEATABLE_KEYS_TABLE) do 89 if is_pressed(REPEATABLE_KEYS_TABLE[key_nr]) then PRESSED_KEY=REPEATABLE_KEYS_TABLE[key_nr] 111 if (wait_time==nil or wait_time<0) then wait_time=0 end 112 for key_nr=1, table.getn(repeatable_keys_table) do 113 if is_pressed(repeatable_keys_table[key_nr]) then PRESSED_KEY=repeatable_keys_table[key_nr] 90 114 end 91 115 end 92 116 if PRESSED_KEY~=nil then 93 117 repeat 94 if get_tick_count()-PRESSED_TIME>350 then sleep(100); return PRESSED_KEY end118 if get_tick_count()-PRESSED_TIME>350 then sleep(100);return PRESSED_KEY end 95 119 until not is_pressed(PRESSED_KEY) 96 120 end 97 wait_click( 60000)121 wait_click(wait_time) 98 122 PRESSED_TIME=get_tick_count() 99 for key_nr=1, table.getn(KEYS_TABLE) do 100 if is_key(KEYS_TABLE[key_nr]) then PRESSED_KEY=KEYS_TABLE[key_nr]; return KEYS_TABLE[key_nr] end 101 end 123 for key_nr=1, table.getn(keys_table) do 124 if is_key(keys_table[key_nr]) then PRESSED_KEY=keys_table[key_nr];return keys_table[key_nr] end 125 end 126 return nil 127 end 128 129 function new_file() 130 FILE_CONTENT={""} 131 FILE_LINESN=1 132 end 133 134 function give_me_filename() 135 dir_name=menu(SAVE_DIRS,CONSOLE_WIDTH,CONSOLE_HEIGHT,"select a directory",20,2) 136 if (dir_name=="Cancel") then return(nil) end 137 file_name=textbox("File name", "Enter file name", "new_file.txt", 16) 138 if (file_name==nil or file_name=="") then FILENAME="new_file.txt" end 139 out=dir_name.."/"..file_name 140 FILENAME=file_name 141 return out 102 142 end 103 143 … … 107 147 108 148 function load_file() 149 if s==1 then 150 PATH="A/CHDK/SCRIPTS" 151 end 109 152 file=file_browser(PATH) 110 for li=0,string.len(file) do 111 char=string.sub(file,string.len(file)-li,string.len(file)-li) 112 if char~="/" then 113 FILENAME=char..FILENAME 114 else break 115 end 116 end 117 --lets try to load this file-- 118 file_h=io.open(file,"r") 119 print("take file content by lines") 120 FILE_CONTENT={} 121 line=1 122 repeat 123 FILE_CONTENT[line]=file_h:read("*line") 124 FILE_LINESN=line-1 125 line=line+1 126 until FILE_CONTENT[line-1]==nil 127 file_h:close() 128 print(FILE_LINESN) 153 if file==nil then 154 print("No file selected!") 155 restore() 156 else 157 for li=0,string.len(file) do 158 char=string.sub(file,string.len(file)-li,string.len(file)-li) 159 if char~="/" then 160 FILENAME=char..FILENAME 161 else break 162 end 163 end 164 --lets try to load this file-- 165 file_h=io.open(file,"r") 166 print("Loading, wait...") 167 FILE_CONTENT={} 168 line=1 169 repeat 170 FILE_CONTENT[line]=file_h:read("*line") 171 FILE_LINESN=line-1 172 line=line+1 173 until FILE_CONTENT[line-1]==nil 174 file_h:close() 175 if FILE_CONTENT[1]==nil then FILE_CONTENT={""} end 176 if FILE_LINESN==0 then FILE_LINESN=1 end 177 end 129 178 end 130 179 … … 137 186 if SHIFT_Y<0 then SHIFT_Y=0 end 138 187 print(mk_bar(TOPBAR,CONSOLE_WIDTH)) 139 for line_nr=1, CONSOLE_HEIGHT- 3do188 for line_nr=1, CONSOLE_HEIGHT-2 do 140 189 if FILE_CONTENT[line_nr+SHIFT_Y]==nil then 141 190 draw_line="" … … 155 204 156 205 function edi_move() 157 STATUSBAR="[MOVE]["..JUMPS[JUMP].."\18]["..POS_X..","..POS_Y.."]" 158 -- if string.len(file)<20 then filepath=file else filepath=string.sub(file,1,7).."."..string.sub(file,string.len(file)-12,string.len(file)) end 159 TOPBAR="EDI \6 "..FILENAME.." ["..SAVED.."] " 206 STATUSBAR="["..MODE.."]["..JUMPS[JUMP].."\18]["..POS_X..","..POS_Y.."/"..FILE_LINESN.."]" 207 TOPBAR="EDI \6 "..FILENAME.." ["..SAVED.."] "..DEBBUG.." " 160 208 edi_draw() 161 input=get_input( )209 input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE, WAIT_TIME) 162 210 if input=="set" then MODE="WRITE" end 163 211 if input=="up" then … … 173 221 if input=="left" then 174 222 POS_X=POS_X-1 175 if POS_X<0 and POS_Y>1 then POS_Y=POS_Y-1; POS_X=string.len(FILE_CONTENT[POS_Y])176 elseif POS_X<0 and POS_Y==1 then POS_Y=FILE_LINESN; POS_X=string.len(FILE_CONTENT[POS_Y]) end223 if POS_X<0 and POS_Y>1 then POS_Y=POS_Y-1;POS_X=string.len(FILE_CONTENT[POS_Y]) 224 elseif POS_X<0 and POS_Y==1 then POS_Y=FILE_LINESN;POS_X=string.len(FILE_CONTENT[POS_Y]) end 177 225 end 178 226 if input=="right" then 179 227 POS_X=POS_X+1 180 if POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y<FILE_LINESN then POS_Y=POS_Y+1; POS_X=0181 elseif POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y>=FILE_LINESN then POS_Y=1; POS_X=0 end228 if POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y<FILE_LINESN then POS_Y=POS_Y+1;POS_X=0 229 elseif POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y>=FILE_LINESN then POS_Y=1;POS_X=0 end 182 230 end 183 231 if input=="zoom_in" then 184 232 POS_X=POS_X+5 185 if POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y<FILE_LINESN then POS_Y=POS_Y+1; POS_X=0186 elseif POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y>=FILE_LINESN then POS_Y=1; POS_X=0 end233 if POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y<FILE_LINESN then POS_Y=POS_Y+1;POS_X=0 234 elseif POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y>=FILE_LINESN then POS_Y=1;POS_X=0 end 187 235 end 188 236 if input=="zoom_out" then 189 237 POS_X=POS_X-5 190 if POS_X<0 and POS_Y>1 then POS_Y=POS_Y-1; POS_X=string.len(FILE_CONTENT[POS_Y]) 191 elseif POS_X<0 and POS_Y==1 then POS_Y=FILE_LINESN; POS_X=string.len(FILE_CONTENT[POS_Y]) end 238 if POS_X<0 and POS_Y>1 then POS_Y=POS_Y-1;POS_X=string.len(FILE_CONTENT[POS_Y]) 239 elseif POS_X<0 and POS_Y==1 then POS_Y=FILE_LINESN;POS_X=string.len(FILE_CONTENT[POS_Y]) end 240 end 241 if input=="erase" then 242 POS_X=0 243 POS_Y=1 192 244 end 193 245 if input==CHANGE_SUBMODE_BUTTON then JUMP=JUMP+1 end 194 246 if JUMP>table.getn(JUMPS) then JUMP=1 end 195 247 if input==FILE_MENU_BUTTON then 196 todo=menu(FILE_MENU,CONSOLE_WIDTH,CONSOLE_HEIGHT,"File menu", 16)248 todo=menu(FILE_MENU,CONSOLE_WIDTH,CONSOLE_HEIGHT,"File menu",nil,2) 197 249 if todo=="Save" then save() end 198 if todo=="Save and exit" then save();exit() end 199 if todo=="Exit (no save!)" then exit() end 250 if todo=="Save as..." then save_as() end 251 if todo=="Save and exit" then save();restore() end 252 --if todo=="Select..." then MODE="SELECT" end #for selecting 253 if todo=="Exit (no save!)" then restore() end 200 254 if todo=="Clear whole file" then clear() end 201 255 if todo=="About EDI" then about() end … … 214 268 write_mode_descript=write_mode_descript.."\6" 215 269 STATUSBAR=write_mode_descript 216 TOPBAR="EDI \6 "..FILENAME.." ["..SAVED.."] " 270 TOPBAR="EDI \6 "..FILENAME.." ["..SAVED.."] "..DEBBUG.." " 217 271 insertion="" 218 272 edi_draw() 219 input=get_input( )273 input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE,WAIT_TIME) 220 274 if input==CHANGE_SUBMODE_BUTTON then 221 275 WRITE_SUBMODE=WRITE_SUBMODE+1 … … 223 277 if WRITE_SUBMODE>table.getn(KEYMAP) then WRITE_SUBMODE=1 end 224 278 end 225 if input=="left" and WRITE_KEY==1 then LETTER_NR=LETTER_NR+1; delete=1;SAVED="!"226 elseif input=="left" and WRITE_KEY~=1 then LETTER_NR=1; WRITE_KEY=1;SAVED="!"227 elseif input=="up" and WRITE_KEY==2 then LETTER_NR=LETTER_NR+1; delete=1;SAVED="!"228 elseif input=="up" and WRITE_KEY~=2 then LETTER_NR=1; WRITE_KEY=2;SAVED="!"229 elseif input=="right" and WRITE_KEY==3 then LETTER_NR=LETTER_NR+1; delete=1;SAVED="!"230 elseif input=="right" and WRITE_KEY~=3 then LETTER_NR=1; WRITE_KEY=3;SAVED="!"231 elseif input=="down" and WRITE_KEY==4 then LETTER_NR=LETTER_NR+1; delete=1;SAVED="!"232 elseif input=="down" and WRITE_KEY~=4 then LETTER_NR=1; WRITE_KEY=4;SAVED="!"233 end 234 if input=="zoom_in" or (input=="erase" and ERASE_AS_SPACE[WRITE_SUBMODE]==true) then WRITE_KEY=0; insertion=" ";SAVED="!" end279 if input=="left" and WRITE_KEY==1 then LETTER_NR=LETTER_NR+1;delete=1;SAVED="!" 280 elseif input=="left" and WRITE_KEY~=1 then LETTER_NR=1;WRITE_KEY=1;SAVED="!" 281 elseif input=="up" and WRITE_KEY==2 then LETTER_NR=LETTER_NR+1;delete=1;SAVED="!" 282 elseif input=="up" and WRITE_KEY~=2 then LETTER_NR=1;WRITE_KEY=2;SAVED="!" 283 elseif input=="right" and WRITE_KEY==3 then LETTER_NR=LETTER_NR+1;delete=1;SAVED="!" 284 elseif input=="right" and WRITE_KEY~=3 then LETTER_NR=1;WRITE_KEY=3;SAVED="!" 285 elseif input=="down" and WRITE_KEY==4 then LETTER_NR=LETTER_NR+1;delete=1;SAVED="!" 286 elseif input=="down" and WRITE_KEY~=4 then LETTER_NR=1;WRITE_KEY=4;SAVED="!" 287 end 288 if input=="zoom_in" or (input=="erase" and ERASE_AS_SPACE[WRITE_SUBMODE]==true) then WRITE_KEY=0;insertion=" ";SAVED="!" end 235 289 if input=="zoom_out" or(input=="erase" and ERASE_AS_SPACE[WRITE_SUBMODE]~=true) then 236 290 SAVED="!" 237 291 if POS_X>0 then 238 WRITE_KEY=0; delete=1292 WRITE_KEY=0;delete=1 239 293 elseif POS_X==0 and POS_Y>1 then 240 294 POS_X=string.len(FILE_CONTENT[POS_Y-1]) … … 254 308 end 255 309 if input=="set" and WRITE_KEY==0 then MODE="MOVE" 256 elseif input=="set" and WRITE_KEY~=0 then WRITE_KEY=0; insertion=""310 elseif input=="set" and WRITE_KEY~=0 then WRITE_KEY=0;insertion="" 257 311 end 258 312 if input==INSERT_MENU_BUTTON then 259 WRITE_KEY=0; insertion="";SAVED="!"260 insertion=menu(INSERT_MAP,CONSOLE_WIDTH,CONSOLE_HEIGHT,"Insert a special char" )261 if insertion==nil then insertion=menu(FUNCTION_MAP,CONSOLE_WIDTH,CONSOLE_HEIGHT,"Insert a function",10 ) end262 if insertion==nil then insertion=""; SAVED="S" end313 WRITE_KEY=0;insertion="";SAVED="!" 314 insertion=menu(INSERT_MAP,CONSOLE_WIDTH,CONSOLE_HEIGHT,"Insert a special char",nil,2) 315 if insertion==nil then insertion=menu(FUNCTION_MAP,CONSOLE_WIDTH,CONSOLE_HEIGHT,"Insert a function",10,2) end 316 if insertion==nil then insertion="";SAVED="S" end 263 317 if insertion=="newline" then 264 318 insertion="" … … 275 329 end 276 330 if input==FILE_MENU_BUTTON then 277 WRITE_KEY=0; insertion=""278 todo=menu(FILE_MENU,CONSOLE_WIDTH,CONSOLE_HEIGHT,"File menu" )331 WRITE_KEY=0;insertion="" 332 todo=menu(FILE_MENU,CONSOLE_WIDTH,CONSOLE_HEIGHT,"File menu",nil,2) 279 333 if todo=="Save" then save() end 280 if todo=="Save and exit" then save();exit() end 281 if todo=="Exit (no save!)" then exit() end 334 if todo=="Save and exit" then save();restore() end 335 if todo=="Save as..." then save_as() end 336 if todo=="Exit (no save!)" then restore() end 282 337 if todo=="Clear whole file" then clear() end 283 338 if todo=="About EDI" then about() end 284 339 end 340 if input==nil then WRITE_KEY=0;insertion="" end 285 341 FILE_CONTENT[POS_Y]=string.sub(FILE_CONTENT[POS_Y],1,POS_X-delete)..insertion..string.sub(FILE_CONTENT[POS_Y],POS_X+1,string.len(FILE_CONTENT[POS_Y])) 286 342 POS_X=POS_X+string.len(insertion)-delete … … 305 361 print() 306 362 end 307 input=get_input( )363 input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE) 308 364 if input=="right" then pos=pos+1 end 309 365 if input=="left" then pos=pos-1 end … … 315 371 if code[pos]<0 then code[pos]=9 end 316 372 ascii=code[1]*100+code[2]*10+code[3] 317 --code 0 is legal, but this char makes all the chars after \0 invisible, so it's probably useless; this is just to avoid confusion.373 --code 0 is legal, but this char makes all the chars after \0 invisible, so it's probably useless;this is just to avoid confusion. 318 374 if ascii<256 and ascii>0 then mass="character: "..string.char(ascii) else mass="bad value" end 319 375 if input=="set" then … … 323 379 end 324 380 end 381 -- if input 325 382 until exit_loop==true 326 383 end 327 384 328 function menu(tab,width,height,header,item_width )385 function menu(tab,width,height,header,item_width,top_lines) 329 386 set_console_autoredraw(0) 330 387 menu_pos_y=1 … … 335 392 if height==nil then print("NO HEIGHT GIVEN!");sleep(3000);return false end 336 393 if width==nil then print("NO WIDTH GIVEN!");sleep(3000);return false end 394 if top_lines==nil then top_lines=0 end 337 395 repeat 338 396 if menu_pos_x<1 and menu_pos_y>1 then menu_pos_y=menu_pos_y-1;menu_pos_x=table.getn(tab[menu_pos_y]) end … … 341 399 if menu_pos_y>table.getn(tab) then menu_pos_y=1 end 342 400 if menu_pos_x>table.getn(tab[menu_pos_y]) and menu_pos_y<table.getn(tab) then menu_pos_y=menu_pos_y+1;menu_pos_x=1 end 343 if menu_pos_x>table.getn(tab[menu_pos_y]) and menu_pos_y>=table.getn(tab) then menu_pos_y=1; menu_pos_x=1 end401 if menu_pos_x>table.getn(tab[menu_pos_y]) and menu_pos_y>=table.getn(tab) then menu_pos_y=1;menu_pos_x=1 end 344 402 if menu_pos_y>height-4+menu_shift then menu_shift=menu_pos_y-height+4 end 345 403 if menu_pos_y<=menu_shift then menu_shift=menu_pos_y-1 end 404 for line=0, top_lines do 405 print("") 406 end 346 407 print(mk_bar(header,width)) 347 for line=1, height-3do408 for line=1,--[[height-3-top_lines]] table.getn(tab) do 348 409 if tab[line+menu_shift]==nil then 349 410 draw_line="" … … 353 414 item=tab[line+menu_shift][place] 354 415 if item_width~=nil then item=item..string.sub(" ",1,item_width-string.len(item)) end 416 355 417 if menu_pos_x~=place then draw_line=draw_line.." "..item.." " end 356 418 if menu_pos_x==place then draw_line=draw_line.."\16"..item.."\17" end … … 367 429 end 368 430 print(mk_bar("SELECT-["..menu_pos_x..","..menu_pos_y.."]",width)) 369 input=get_input() 431 for line=0, height-4-top_lines-table.getn(tab) do 432 print("") 433 end 434 input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE) 370 435 if input=="up" then menu_pos_y=menu_pos_y-1 end 371 436 if input=="down" then menu_pos_y=menu_pos_y+1 end 372 437 if input=="left" then menu_pos_x=menu_pos_x-1 end 373 438 if input=="right" then menu_pos_x=menu_pos_x+1 end 374 if input=="set" then exit_menu=true; return tab[menu_pos_y][menu_pos_x] end375 if input==INSERT_MENU_BUTTON or input==FILE_MENU_BUTTON then exit_menu=true; return nil end439 if input=="set" then exit_menu=true;return tab[menu_pos_y][menu_pos_x] end 440 if input==INSERT_MENU_BUTTON or input==FILE_MENU_BUTTON then exit_menu=true;return nil end 376 441 until exit_menu==true 377 442 end … … 381 446 console_redraw() 382 447 print(mk_bar("Saving procedure...",CONSOLE_WIDTH)) 383 print("--make a backup...") 384 backup_file=file..".BAK" 385 print(" *backup:",backup_file) 386 print("--open files") 387 file_h=io.open(file,"r") 388 backup_file_h=io.open(backup_file,"w") 389 if (not file_h or not backup_file_h) then 390 print("Error opening files") 391 sleep(3000) 392 return 393 end 394 for file_line in file_h:lines() do 395 backup_file_h:write(file_line) 396 backup_file_h:write("\n") 397 end 398 file_h:close() 399 backup_file_h:close() 400 print("--backup done") 401 print() 402 print("--saving file") 448 if (b~=0 and file~=nil) then 449 print("--make a backup...") 450 backup_file=file..".BAK" 451 print(" *backup:",backup_file) 452 print("--open files") 453 file_h=io.open(file,"r") 454 backup_file_h=io.open(backup_file,"w") 455 if (not file_h or not backup_file_h) then 456 print("Error opening files") 457 print("Press any key") 458 wait_click(0) 459 return 460 end 461 for file_line in file_h:lines() do 462 backup_file_h:write(file_line) 463 backup_file_h:write("\n") 464 end 465 file_h:close() 466 backup_file_h:close() 467 print("--backup done") 468 print() 469 end 470 if file==nil then file=give_me_filename() end 471 if file==nil then return(nil) end 472 print("--saving file") 403 473 file_h=io.open(file,"w") 404 474 if (not file_h) then 405 475 print("Error opening files") 476 print("Press any key") 477 wait_click(0) 406 478 return 407 479 end … … 413 485 SAVED="S" 414 486 print("The file has been saved") 415 sleep( 2000)487 sleep(1200) 416 488 end 417 489 418 function exit() 490 function save_as() 491 file_tmp=file 492 file=nil 493 save() 494 if file==nil then file=file_tmp end 495 end 496 497 function restore() 419 498 cls() 420 499 print("EDI has been terminated.") 421 500 set_console_autoredraw(1) 422 set_console_layout( 1,1,26,6) -- not sure if these are good values501 set_console_layout(0,0,25,5) -- Thx, msl! 423 502 EXIT=true 424 503 end 425 504 426 505 function clear() 427 ans=menu({{"NO","YES"}},CONSOLE_WIDTH,CONSOLE_HEIGHT,"Are you sure?",5 )428 if ans=="YES" then FILE_CONTENT={""}; FILE_LINESN=1; POS_X=0; POS_Y=1;SAVED="!" end506 ans=menu({{"NO","YES"}},CONSOLE_WIDTH,CONSOLE_HEIGHT,"Are you sure?",5,2) 507 if ans=="YES" then FILE_CONTENT={""};FILE_LINESN=1;POS_X=0;POS_Y=1;SAVED="!" end 429 508 end 430 509 … … 440 519 print(" Author: Pawel Tokarz") 441 520 print(" Thanks: waterwingz, truhli_fredy,") 442 print(" philmoz, reyalp ")521 print(" philmoz, reyalp & others") 443 522 print(" ") 444 523 print(" More info in README.TXT file") … … 448 527 exit_about=false 449 528 repeat 450 input=get_input( )529 input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE) 451 530 if input==FILE_MENU_BUTTON then exit_about=true end 452 531 until(exit_about==true) 453 -- ans=menu({{"OK"}},CONSOLE_WIDTH,CONSOLE_HEIGHT-5,"EDI - version: "..EDI_VERSION,5)454 -- if ans=="YES" then FILE_CONTENT={""}; FILE_LINESN=1; POS_X=0; POS_Y=1; SAVED="!" end455 532 end 456 533 457 534 function main_loop() 535 DEBBUG=0 458 536 insertion="" 459 537 repeat 460 if MODE=="MOVE" then edi_move() end 538 DEBBUG=DEBBUG+1 539 if MODE=="MOVE" --[[or MODE=="SELECT" #for selecting]] then edi_move() end 461 540 if MODE=="WRITE" then edi_write() end 462 541 until EXIT==true 463 542 end 464 543 465 set_console_layout( 1,1,CONSOLE_WIDTH,CONSOLE_HEIGHT)544 set_console_layout(0,0,CONSOLE_WIDTH,CONSOLE_HEIGHT) 466 545 set_console_autoredraw(0) 467 load_file() 468 main_loop() 469 546 if a==1 then 547 new_file() 548 else 549 load_file() 550 end 551 if EXIT~=true then main_loop() end 552 -
branches/tsvstar-uitest/CHDK/SCRIPTS/EDITOR/README.TXT
r1975 r2085 2 2 'Emacs your camera!' 3 3 4 Documentation for version 2.7 based on documentation for 2.6. 4 5 5 6 0. ABOUT … … 8 9 9 10 **** ATTENTION! **** 10 EDI 2.4 requires file_browser() function which is aviable since changeset 1359! If you have an obsolete CHDK version you'll need to use older EDI version (2.3 for example) 11 Since version 2.6 EDI uses textbox() function which is currently aviable in experimental branch. Because of that 'new file' and 'Save as...' options can not be used in other branches (stable 1.0 and reyalp-flt as well). If 'new file' or 'Save as...' option is used in these branches an error occurs! 12 13 While none of above functions is used, EDI 2.7 should work (althought it was not tested). 14 11 15 12 16 … … 15 19 I've tested this script only on SX130IS with no problems. A few users were able to use it on other CHDK-supported cameras. Nevertheless THERE IS NO VARRANTY FOR THIS SOFTWARE, IT'S FREE AND MIGHT BE BUGGY. It's rather not likely, but still possible that it could damage file you are editing or even filesystem on SD card. This never happened, but who knows. USE THIS SCRIPT ON YOUR OWN RISK. 16 20 21 SOME PARTS OF THIS DOCUMENTATION MIGHT BE OUTDATED OR CONTAIN BUGS. 17 22 18 23 … … 71 76 MENU - open FILE MENU which is described below. 72 77 SET - end MOVE mode and go into a WRITE mode. 78 ERASE - move to the begin of the file. 73 79 74 80 SHOOT_FULL - END THE SCRIPT WITHOUT ANY SAVES!!! … … 90 96 STATUSBAR in WRITE mode describes, which letters/digits are aviable under which keys. STATUSBAR like above means, that you are able to write lowercase letters as follows: 91 97 92 press LEFT to get letters: a, b, c, d, e orf93 press UP to get letters: g, h, i, j, k orl94 press RIGHT to get letters: m, n, o, p, q, r ors95 press DOWN to get letters: t, u, v, w, x, y orz98 press LEFT to get letters: a, b, c, d, e, f 99 press UP to get letters: g, h, i, j, k, l 100 press RIGHT to get letters: m, n, o, p, q, r, s 101 press DOWN to get letters: t, u, v, w, x, y, z 96 102 97 103 When you press a key once you'll get first letter, twice - second and so on. If you need to write another letter just press different letter key. If you need a letter that is aviable under the same key as previous just press SET once and the key. This is just like writing SMS'es on mobile phone. -
branches/tsvstar-uitest/core/conf.c
r2083 r2085 465 465 CONF_INFO(292, conf.show_alt_helper_delay, CONF_DEF_VALUE, i:3, NULL), 466 466 CONF_INFO(293, conf.help_was_shown, CONF_DEF_VALUE, i:0, NULL), 467 468 CONF_INFO(1294, conf.menuedit_popup, CONF_DEF_VALUE, i:1, NULL), 467 CONF_INFO(294, conf.menuedit_popup, CONF_DEF_VALUE, i:1, NULL), 468 469 // NOTE : there must be USER_MENU_ITEMS entries in this section 470 CONF_INFO(295, conf.user_menu_script_file[ 0], CONF_CHAR_PTR, ptr:"", NULL), 471 CONF_INFO(296, conf.user_menu_script_file[ 1], CONF_CHAR_PTR, ptr:"", NULL), 472 CONF_INFO(297, conf.user_menu_script_file[ 2], CONF_CHAR_PTR, ptr:"", NULL), 473 CONF_INFO(298, conf.user_menu_script_file[ 3], CONF_CHAR_PTR, ptr:"", NULL), 474 CONF_INFO(299, conf.user_menu_script_file[ 4], CONF_CHAR_PTR, ptr:"", NULL), 475 CONF_INFO(300, conf.user_menu_script_file[ 5], CONF_CHAR_PTR, ptr:"", NULL), 476 CONF_INFO(301, conf.user_menu_script_file[ 6], CONF_CHAR_PTR, ptr:"", NULL), 477 CONF_INFO(302, conf.user_menu_script_file[ 7], CONF_CHAR_PTR, ptr:"", NULL), 478 CONF_INFO(303, conf.user_menu_script_file[ 8], CONF_CHAR_PTR, ptr:"", NULL), 479 CONF_INFO(304, conf.user_menu_script_file[ 9], CONF_CHAR_PTR, ptr:"", NULL), 480 CONF_INFO(305, conf.user_menu_script_file[10], CONF_CHAR_PTR, ptr:"", NULL), 481 CONF_INFO(306, conf.user_menu_script_file[11], CONF_CHAR_PTR, ptr:"", NULL), 482 CONF_INFO(307, conf.user_menu_script_file[12], CONF_CHAR_PTR, ptr:"", NULL), 483 CONF_INFO(308, conf.user_menu_script_file[13], CONF_CHAR_PTR, ptr:"", NULL), 484 485 // NOTE : there must be USER_MENU_ITEMS entries in this section too 486 CONF_INFO(309, conf.user_menu_script_title[ 0], CONF_CHAR_PTR, ptr:"", NULL), 487 CONF_INFO(310, conf.user_menu_script_title[ 1], CONF_CHAR_PTR, ptr:"", NULL), 488 CONF_INFO(311, conf.user_menu_script_title[ 2], CONF_CHAR_PTR, ptr:"", NULL), 489 CONF_INFO(312, conf.user_menu_script_title[ 3], CONF_CHAR_PTR, ptr:"", NULL), 490 CONF_INFO(313, conf.user_menu_script_title[ 4], CONF_CHAR_PTR, ptr:"", NULL), 491 CONF_INFO(314, conf.user_menu_script_title[ 5], CONF_CHAR_PTR, ptr:"", NULL), 492 CONF_INFO(315, conf.user_menu_script_title[ 6], CONF_CHAR_PTR, ptr:"", NULL), 493 CONF_INFO(316, conf.user_menu_script_title[ 7], CONF_CHAR_PTR, ptr:"", NULL), 494 CONF_INFO(317, conf.user_menu_script_title[ 8], CONF_CHAR_PTR, ptr:"", NULL), 495 CONF_INFO(318, conf.user_menu_script_title[ 9], CONF_CHAR_PTR, ptr:"", NULL), 496 CONF_INFO(319, conf.user_menu_script_title[10], CONF_CHAR_PTR, ptr:"", NULL), 497 CONF_INFO(320, conf.user_menu_script_title[11], CONF_CHAR_PTR, ptr:"", NULL), 498 CONF_INFO(321, conf.user_menu_script_title[12], CONF_CHAR_PTR, ptr:"", NULL), 499 CONF_INFO(322, conf.user_menu_script_title[13], CONF_CHAR_PTR, ptr:"", NULL), 500 469 501 CONF_INFO(1295, conf.scene_script_mode, CONF_DEF_VALUE, i:0, conf_change_scene_script), 470 502 CONF_INFO(1296, conf.profile_menu_mode, CONF_DEF_VALUE, i:1, conf_change_pmenu_mode), -
branches/tsvstar-uitest/core/gui.c
r2083 r2085 223 223 sprintf(tgtbuf,"%s|%s|%s|%s|\n", insert_as_type, title, conf.script_file,buf); 224 224 add_to_profile_menu(tgtbuf); 225 gui_mbox_init(LANG_MENU_USER_MENU, (int)"Script added to PROFILE menu", MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); 225 226 ufree(tgtbuf); 226 227 } … … 249 250 } 250 251 251 252 extern void add_script_to_user_menu( char * , char *); 253 254 static void gui_add_script_to_user_menu(int arg) { 255 if ( conf.user_menu_enable==3 ) 256 add_script_to_user_menu( conf.script_file , script_title ); 257 else 258 gui_add_script_to_profmenu(arg); 259 } 252 260 253 261 static const char* gui_script_autostart_modes[]= { "Off", "On", "Once"}; … … 261 269 MENU_ITEM (0x5c,LANG_MENU_LUA_RESTART, MENUITEM_BOOL, &conf.debug_lua_restart_on_error, 0 ), 262 270 #endif 263 MENU_ITEM (0x35, (int)"Add script to profile menu", MENUITEM_PROC, gui_add_script_to_profmenu,0 ),271 MENU_ITEM (0x35,LANG_MENU_USER_MENU_SCRIPT_ADD, MENUITEM_PROC, gui_add_script_to_user_menu, 0 ), 264 272 MENU_ITEM (0x5d,LANG_MENU_SCRIPT_DEFAULT_VAL, MENUITEM_PROC, gui_load_script_default, 0 ), 265 273 MENU_ITEM(0x5e,LANG_MENU_SCRIPT_PARAM_SET, MENUITEM_ENUM, gui_script_param_set_enum, &conf.script_param_set ), … … 1946 1954 static const char* names[]={ "Video", "Display", "Playback", "Video"}; 1947 1955 static const int keys[] = {KEY_PRINT, KEY_DISPLAY, KEY_PLAYBACK, KEY_VIDEO}; 1948 #elif defined(CAMERA_ixus115_elph100hs) 1956 #elif defined(CAMERA_ixus115_elph100hs) 1949 1957 static const char* names[]={ "Playback", "Video", "Set+ZoomIn" }; 1950 1958 static const int keys[] = {KEY_PLAYBACK, KEY_VIDEO, KEY_SET | KEY_ZOOM_IN }; 1951 #elif defined(CAMERA_ixus120_sd940) 1959 #elif defined(CAMERA_ixus300_sd4000) 1960 static const char* names[]={ "Playback", "Up + Left" }; 1961 static const int keys[] = {KEY_PLAYBACK, KEY_UP | KEY_LEFT }; 1962 #elif defined(CAMERA_ixus120_sd940) || (CAMERA_ixus100_sd780) || defined(CAMERA_ixus105_sd1300) 1952 1963 static const char* names[]={ "Display", "Playback" }; 1953 1964 static const int keys[] = {KEY_DISPLAY, KEY_PLAYBACK }; … … 2434 2445 { 2435 2446 #if CAM_HAS_ZOOM_LEVER 2436 y = shortcut_text(x, y, SHORTCUT_TOGGLE_RAW,(int)"Infinity Focus", 0, MAKE_COLOR(COLOR_ALT_BG, COLOR_FG)); 2447 if (SHORTCUT_TOGGLE_RAW != SHORTCUT_SET_INFINITY) 2448 y = shortcut_text(x, y, SHORTCUT_TOGGLE_RAW, LANG_HELP_INF_FOCUS, 0, MAKE_COLOR(COLOR_ALT_BG, COLOR_FG)); 2437 2449 #else 2438 y = shortcut_text(x, y, SHORTCUT_TOGGLE_RAW, (int)"Chg Focus Factor", 0, MAKE_COLOR(COLOR_ALT_BG, COLOR_FG));2450 y = shortcut_text(x, y, SHORTCUT_TOGGLE_RAW, LANG_HELP_CHG_FOCUS_FACTOR, 0, MAKE_COLOR(COLOR_ALT_BG, COLOR_FG)); 2439 2451 #endif 2440 2452 } -
branches/tsvstar-uitest/core/gui_lang.h
r2083 r2085 707 707 #define LANG_MENU_MENUEDIT_POPUP 575 708 708 709 #define LANG_PROFILE_BASE 576 710 #define LANG_MENU_PROFILE_MANAGER 577 711 #define LANG_MENU_PROFILE_MANAGER_TITLE 578 712 713 #define LANG_MENU_GOTO_PROFMENU 579 714 #define LANG_MENU_GOTO_MAINMENU 580 715 #define LANG_EMPTY_STRING 581 716 717 #define GUI_LANG_ITEMS 581 709 #define LANG_MENU_USER_MENU_SCRIPT_ADD 576 710 711 #define LANG_MENU_EDIT_CHG_VAL 577 712 #define LANG_MENU_EDIT_ADJ_FACTOR 578 713 #define LANG_MENU_EDIT_CONFIRM 579 714 #define LANG_MENU_EDIT_ON_OFF 580 715 716 #define LANG_HELP_INF_FOCUS 581 717 #define LANG_HELP_CHG_FOCUS_FACTOR 582 718 719 #define LANG_PROFILE_BASE 583 720 #define LANG_MENU_PROFILE_MANAGER 584 721 #define LANG_MENU_PROFILE_MANAGER_TITLE 585 722 723 #define LANG_MENU_GOTO_PROFMENU 586 724 #define LANG_MENU_GOTO_MAINMENU 587 725 #define LANG_EMPTY_STRING 588 726 727 #define GUI_LANG_ITEMS 588 718 728 719 729 //------------------------------------------------------------------- -
branches/tsvstar-uitest/core/gui_menu.c
r2084 r2085 1092 1092 break; 1093 1093 case MENUITEM_INT: 1094 if ( *(curr_menu->menu[imenu].value) < 0)1094 if ( (*(curr_menu->menu[imenu].value) < 0) && (curr_menu->menu[imenu].type & MENUITEM_F_UNSIGNED) ) 1095 1095 strcpy(tbuf,"Off"); 1096 1096 else 1097 sprintf(tbuf, "%d", *(curr_menu->menu[imenu].value));1097 sprintf(tbuf, "%d", *(curr_menu->menu[imenu].value)); 1098 1098 gui_menu_draw_value(tbuf, len_int); 1099 1099 break; … … 1111 1111 case MENUITEM_TEXT: 1112 1112 if ( !is_cur_marked ) 1113 gui_menu_draw_text(lang_str(curr_menu->menu[imenu].text),1);1113 gui_menu_draw_text(lang_str(curr_menu->menu[imenu].text),1); 1114 1114 else { 1115 1115 sprintf(tbuf, "* %s *", lang_str(curr_menu->menu[imenu].text) ); … … 1255 1255 xx = (w-len)>>1; 1256 1256 else 1257 xx = 0;1257 xx = 4; 1258 1258 1259 1259 draw_filled_rect(x, yy, x+xx, yy+rbf_font_height()-1, bg ); … … 1268 1268 int i; 1269 1269 1270 count_visible = 8; 1270 // Create body 1271 static int mbox_map[] = 1272 { 1273 (int)"", 1274 0, // valuename 1275 (int)"", 1276 (int)"", 1277 LANG_MENU_EDIT_CHG_VAL, 1278 #if CAM_HAS_ZOOM_LEVER 1279 LANG_MENU_EDIT_ADJ_FACTOR, 1280 #endif 1281 LANG_MENU_EDIT_CONFIRM, 1282 (int)"", 1283 (int)"" 1284 }; 1285 1286 count_visible = sizeof(mbox_map)/sizeof(mbox_map[0]); 1287 1288 mbox_map[1] = curr_menu->menu[gui_menu_curr_item].text; 1289 if ( curr_menu->menu[gui_menu_curr_item].type & MENUITEM_QUICKDISABLE) 1290 mbox_map[count_visible-2] = LANG_MENU_EDIT_ON_OFF; 1291 else 1292 { 1293 mbox_map[count_visible-2] = (int)""; 1294 count_visible--; 1295 } 1296 1271 1297 y = (camera_screen.height-(count_visible-1)*rbf_font_height())>>1; 1272 1298 … … 1275 1301 gui_menu_disp_incr(); 1276 1302 1277 // Create body1278 static char* mbox_map[] =1279 {1280 "",1281 "", // valuename1282 "",1283 0,1284 "",1285 "",1286 #if CAM_HAS_ZOOM_LEVER1287 "arrow/jogdial=change value, ZOOM=incrementor",1288 #else1289 "arrow/jogdial=change value",1290 #endif1291 "" // bottom line1292 };1293 1294 mbox_map[1] = lang_str(curr_menu->menu[gui_menu_curr_item].text);1295 if ( curr_menu->menu[gui_menu_curr_item].type & MENUITEM_QUICKDISABLE)1296 mbox_map[7]="DISP=Cancel, MENU=turn on/off, SET=Confirm";1297 else1298 mbox_map[7]="DISP=Cancel, SET=Confirm";1299 1300 1303 // Display body 1301 1304 cl = conf.menu_color; 1302 for ( yy=y, i=0; i<count_visible; i++, yy += rbf_font_height() ) { 1303 if ( !mbox_map[i] ) 1304 continue; 1305 gui_menuedit_draw_text( lang_str((int)mbox_map[i]), (i<4) ); 1306 } 1305 for ( yy=y, i=0; i<count_visible; i++, yy += rbf_font_height() ) 1306 if ( mbox_map[i] ) 1307 gui_menuedit_draw_text( lang_str((int)mbox_map[i]), (i<4) ); 1307 1308 } 1308 1309 … … 1321 1322 1322 1323 cl = conf.menu_cursor_color; 1323 yy = y + 3*rbf_font_height();1324 yy = y + 2*rbf_font_height() + rbf_font_height()/2; 1324 1325 1325 1326 int* valueptr = menuitem_get_valueptr( curr_menu, gui_menu_curr_item ); 1326 1327 if (!valueptr) 1327 1328 strcpy(tbuf,"---"); 1328 else if (*valueptr<0)1329 strcpy(tbuf,"[Off]");1330 1329 else { 1331 1330 switch (curr_menu->menu[gui_menu_curr_item].type & MENUITEM_MASK) 1332 1331 { 1333 1332 case MENUITEM_INT: 1334 sprintf(tbuf, "[%d]", *valueptr); 1333 if ((*valueptr<0) && (curr_menu->menu[gui_menu_curr_item].type & MENUITEM_F_UNSIGNED)) 1334 strcpy(tbuf,"[Off]"); 1335 else 1336 sprintf(tbuf, "[%d]", *valueptr); 1335 1337 break; 1336 1338 case MENUITEM_ENUM: 1337 sprintf(tbuf,"[%s]",((enum_callback_func_t*)curr_menu->menu[gui_menu_curr_item].value)(0, curr_menu->menu[gui_menu_curr_item].arg) ); 1339 if (*valueptr<0) 1340 strcpy(tbuf,"[Off]"); 1341 else 1342 sprintf(tbuf,"[%s]",((enum_callback_func_t*)curr_menu->menu[gui_menu_curr_item].value)(0, curr_menu->menu[gui_menu_curr_item].arg) ); 1338 1343 break; 1339 1344 case MENUITEM_ENUM2: 1340 sprintf(tbuf,"[%s]", gui_change_enum2(&curr_menu->menu[gui_menu_curr_item], 0) ); 1345 if (*valueptr<0) 1346 strcpy(tbuf,"[Off]"); 1347 else 1348 sprintf(tbuf,"[%s]", gui_change_enum2(&curr_menu->menu[gui_menu_curr_item], 0) ); 1341 1349 break; 1342 1350 default: -
branches/tsvstar-uitest/core/gui_osd.c
r2035 r2085 256 256 if (gui_mode==GUI_MODE_ALT && conf.subj_dist_override_koef>1) { 257 257 gui_print_osd_state_string_chr("FACTOR:",gui_subj_dist_override_koef_enum(0,0)); 258 }258 } 259 259 } 260 260 if ((conf.iso_override_value>0 && conf.iso_override_koef && !(conf.override_disable==1)) || gui_mode==GUI_MODE_OSD) … … 281 281 #endif 282 282 if (conf.override_disable == 1) gui_print_osd_state_string_chr("NO ", "OVERRIDES"); 283 // TODO: show power283 // TODO: show power 284 284 if (conf.flash_manual_override && conf.flash_video_override_power>0 ) gui_print_osd_state_string_chr("Flash:", "Manual Override"); 285 285 #ifdef OPT_EDGEOVERLAY -
branches/tsvstar-uitest/core/gui_user_menu.c
r2083 r2085 63 63 } 64 64 65 66 void gui_load_user_menu_script(const char *fn) 67 { 68 if (fn) { 69 script_load(fn, SCRIPT_LOAD_LAST_PARAMSET ); 70 load_params_names_cfg(); 71 72 // exit menu system on the assumption the user will want to run the script just loaded 73 74 gui_set_mode(&altGuiHandler); 75 kbd_reset_autoclicked_key(); 76 rinit(); 77 } 78 } 79 80 81 void add_script_to_user_menu( char * fname , char * title ) 82 { 83 int i ; 84 /* 85 * Insert script info at end of existing entries 86 */ 87 for(i = 1; i < USER_MENU_ITEMS + 1; i++) 88 { 89 if(!user_submenu_items[i].text) // insert script title & full filename in next available spot 90 { 91 strcpy(conf.user_menu_script_file[i-1], fname) ; 92 strcpy(conf.user_menu_script_title[i-1], title) ; 93 94 user_submenu_items[i].symbol = 0x35; 95 user_submenu_items[i].opt_len = 0 ; 96 user_submenu_items[i].type = MENUITEM_PROC; 97 user_submenu_items[i].text = (int) conf.user_menu_script_title[i-1]; 98 user_submenu_items[i].value = (int *) gui_load_user_menu_script ; 99 user_submenu_items[i].arg = (int) conf.user_menu_script_file[i-1] ; 100 101 char buf[200]; 102 sprintf(buf,lang_str(LANG_USER_MENU_ITEM_ADDED), lang_str(user_submenu_items[i].text)); 103 gui_mbox_init(LANG_MENU_USER_MENU, (int)buf, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); 104 return; 105 } 106 } 107 gui_mbox_init(LANG_MENU_USER_MENU, LANG_USER_MENU_FULL, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); 108 } 109 110 65 111 void del_user_menu_item(int* cur_memnu_item_indx) 66 112 { … … 77 123 { 78 124 user_submenu_items[i] = user_submenu_items[i+1]; 125 strcpy(conf.user_menu_script_file[i-1], conf.user_menu_script_file[i] ) ; 126 strcpy(conf.user_menu_script_title[i-1], conf.user_menu_script_title[i] ) ; 127 if( user_submenu_items[i].value == (int *) gui_load_user_menu_script ) { 128 user_submenu_items[i].text = (int) conf.user_menu_script_title[i-1]; 129 user_submenu_items[i].arg = (int) conf.user_menu_script_file[i-1] ; 130 } 79 131 } 80 132 … … 89 141 static void move_user_menu_item(int* cur_memnu_item_indx, int dir) 90 142 { 143 int src_index, dst_index ; 144 char tbuff[CONF_STR_LEN]; 145 146 src_index=*cur_memnu_item_indx ; 147 dst_index=*cur_memnu_item_indx + dir; 148 91 149 // Move current user menu item up (dir = -1) or down (dir = 1) 92 CMenuItem tmp_menu_item = user_submenu_items[*cur_memnu_item_indx + dir]; 93 user_submenu_items[*cur_memnu_item_indx + dir] = user_submenu_items[*cur_memnu_item_indx]; 94 user_submenu_items[*cur_memnu_item_indx] = tmp_menu_item; 95 *cur_memnu_item_indx += dir; 150 151 CMenuItem tmp_menu_item = user_submenu_items[dst_index]; 152 user_submenu_items[dst_index] = user_submenu_items[src_index]; 153 user_submenu_items[src_index] = tmp_menu_item; 154 155 src_index-- ; dst_index--; 156 157 strncpy(tbuff, conf.user_menu_script_file[dst_index],CONF_STR_LEN-1) ; 158 strncpy(conf.user_menu_script_file[dst_index], conf.user_menu_script_file[src_index],CONF_STR_LEN-1) ; 159 strncpy(conf.user_menu_script_file[src_index], tbuff, CONF_STR_LEN-1); 160 161 strncpy(tbuff, conf.user_menu_script_title[dst_index],CONF_STR_LEN-1) ; 162 strncpy(conf.user_menu_script_title[dst_index], conf.user_menu_script_title[src_index],CONF_STR_LEN-1) ; 163 strncpy(conf.user_menu_script_title[src_index], tbuff,CONF_STR_LEN-1) ; 164 165 src_index++ ; dst_index++ ; 166 167 if( user_submenu_items[src_index].value == (int *) gui_load_user_menu_script ) { 168 user_submenu_items[src_index].text = (int) conf.user_menu_script_title[src_index-1]; 169 user_submenu_items[src_index].arg = (int) conf.user_menu_script_file[src_index-1] ; 170 } 171 172 if( user_submenu_items[dst_index].value == (int *) gui_load_user_menu_script ) { 173 user_submenu_items[dst_index].text = (int) conf.user_menu_script_title[dst_index-1]; 174 user_submenu_items[dst_index].arg = (int) conf.user_menu_script_file[dst_index-1] ; 175 } 176 177 *cur_memnu_item_indx += dir; 178 96 179 } 97 180 … … 153 236 void user_menu_save() { 154 237 int x; 155 for (x=0; x<USER_MENU_ITEMS; x++) {238 for (x=0; x<USER_MENU_ITEMS; x++) { 156 239 /* 157 240 * First entry in user_submenu_items is reserved for the "Main Menu" 158 241 * conf.user_menu_vars only traks/saves the real user entries. 159 242 */ 160 conf.user_menu_vars[x] = lang_strhash31(user_submenu_items[x+1].text); 161 } 243 244 if( user_submenu_items[x+1].text ) 245 { 246 if ( user_submenu_items[x+1].value ==(int *) gui_load_user_menu_script ) 247 { 248 conf.user_menu_vars[x] = -1 ; // flag script entries specially 249 } 250 else 251 { 252 conf.user_menu_vars[x] = lang_strhash31(user_submenu_items[x+1].text); // otherwise save a hash 253 } 254 } 255 else 256 { 257 conf.user_menu_vars[x] = 0 ; 258 *(char *)conf.user_menu_script_title[x] = 0; 259 *(char*)conf.user_menu_script_file[x] = 0 ; 260 } 261 } 162 262 } 163 263 164 264 void user_menu_restore() { 165 int x; 166 CMenuItem* item=0; 167 168 for (x=0; x<USER_MENU_ITEMS; x++) { 169 /* 170 * First entry in user_submenu_items is reserved for the "Main Menu" 171 * conf.user_menu_vars only traks/saves the real user entries. 172 */ 173 item = find_mnu(&root_menu, conf.user_menu_vars[x]); 174 if ( item ) 175 user_submenu_items[x+1] = *item; 176 } 177 } 265 int x,y ; 266 CMenuItem* item=0; 267 /* 268 * First entry in user_submenu_items is reserved for the "Main Menu" 269 * conf.user_menu_vars only tracks/saves the real user entries. 270 */ 271 272 for (x=0, y=1; x<USER_MENU_ITEMS; x++, y++) { 273 274 if( conf.user_menu_vars[x] == -1 ) // special flag- there is no hash for script entries 275 { 276 user_submenu_items[y].symbol = 0x35; // restore the script entry 277 user_submenu_items[y].opt_len = 0 ; 278 user_submenu_items[y].type = MENUITEM_PROC; 279 user_submenu_items[y].text = (int) conf.user_menu_script_title[x]; 280 user_submenu_items[y].value = (int *) gui_load_user_menu_script ; 281 user_submenu_items[y].arg = (int) conf.user_menu_script_file[x] ; 282 283 } 284 else 285 { 286 if(conf.user_menu_vars[x] >0 ) // look up the menu text 287 item = find_mnu(&root_menu, conf.user_menu_vars[x]); 288 else item = NULL ; 289 290 if ( item ) // add back in if found 291 { 292 user_submenu_items[y] = *item; 293 } 294 else // otherwise clear the menu entry 295 { 296 user_submenu_items[y].text = 0; 297 break ; // and exit - all done ! 298 } 299 } 300 } 301 } 302 -
branches/tsvstar-uitest/include/conf.h
r2083 r2085 384 384 int scene_script_mode; // strhash31 of last called menuitem "mode" 385 385 int profile_menu_mode; // 0-by default open main menu, 1-by default open profile menu 386 387 // full path & filename 388 char user_menu_script_file[USER_MENU_ITEMS][CONF_STR_LEN]; 389 // @title string from file 390 char user_menu_script_title[USER_MENU_ITEMS][CONF_STR_LEN]; 391 386 392 } Conf; 387 393 -
branches/tsvstar-uitest/platform/a580/notes.txt
r1975 r2085 12 12 NOTES: 13 13 Half Shutter + Left - Sets AFL 14 Half Shutter + Right - Toogle OSD on/off14 Half Shutter + Right - Show OSD (On / Off) 15 15 Half Shutter + Up - Sets AEL 16 Half Shutter + Down - Toggle Histogram (Don't / Always / Shoot)17 Half Shutter + Menu - Toggle Zebra on/off18 Half Shutter + Display - D isable overrides16 Half Shutter + Down - Disable overrides (Yes / No) 17 Half Shutter + Menu - Show Live Histogram (Don't / Always / Shoot) 18 Half Shutter + Display - Draw Zebra (On / Off) 19 19 20 20 In Alt: 21 Display - Toogle RAW on/off22 Up - Toogle MF21 Display - Save RAW (DNG /Off) 22 Up - Manual Focus (On / Off) 23 23 24 24 In ALT + Manual mode: 25 Display - Sets Infinity 26 Down - Sets Hyper focal25 Display - Sets Infinity Focus 26 Down - Sets HyperFocal Focus 27 27 ------- 28 28 Adjustable Alt button supported. … … 44 44 PLEASE TEST: 45 45 ------- 46 Curves: Seems it works, please test!!!47 -------48 46 SDHC multi-partition boot and swap supported. (Tested with 2GB SD (2MB FAT12 and FAT32 the rest), can someone test it with a larger card 8GB, 16GB...) 49 47 -
branches/tsvstar-uitest/platform/a580/platform_camera.h
r1975 r2085 46 46 47 47 #define CAM_DNG_LENS_INFO { 58,10, 232,10, 26,10, 55,10 } // See comments in camera.h 48 49 #undef CAM_MENU_BORDERWIDTH 50 #define CAM_MENU_BORDERWIDTH 10 51 48 52 // pattern 49 53 #define cam_CFAPattern 0x01000201 // Green Blue Red Green -
branches/tsvstar-uitest/platform/ixus100_sd780/kbd.c
r2061 r2085 21 21 static KeyMap keymap[]; 22 22 static long last_kbd_key = 0; 23 static long alt_mode_key_mask = 0x00000008; 23 24 24 25 static int aCount=0; … … 123 124 } 124 125 126 } 127 128 void kbd_set_alt_mode_key_mask(long key) 129 { 130 int i; 131 for (i=0; keymap[i].hackkey; ++i) { 132 if (keymap[i].hackkey == key) { 133 alt_mode_key_mask = keymap[i].canonkey; 134 return; 135 } 136 } 125 137 } 126 138 … … 308 320 309 321 //SD780 - Keymap 310 { 0, KEY_UP , 0x00000008 },322 { 0, KEY_UP , 0x00000008 }, 311 323 { 0, KEY_DOWN , 0x00000004 }, 312 324 { 0, KEY_LEFT , 0x00000001 }, 313 325 { 0, KEY_RIGHT , 0x00000002 }, 314 326 315 316 327 { 1, KEY_SET , 0x00004000 }, 317 // { 1, KEY_PLAY , 0x00080000 }, //SD780 Play button318 328 { 1, KEY_MENU , 0x00000800 }, 319 // { 1, KEY_POWER , 0x00010000 }, //SD780 Power button 329 { 1, KEY_POWER , 0x00010000 }, //SD780 Power button 330 { 1, KEY_PLAYBACK , 0x00080000 }, //SD780 Play button 331 { 1, KEY_PRINT , 0x00080000 }, // <ALT> key 320 332 321 333 //xxxf --> xxxd when in movie mode by switch 322 334 //xxxxxxx4 --> xxxxxxx5 when in lens extended recording mode 323 335 324 325 336 { 2, KEY_SHOOT_FULL , 0x00001001 }, 326 { 2, KEY_SHOOT_FULL_ONLY, 0x00001000 },337 { 2, KEY_SHOOT_FULL_ONLY, 0x00001000 }, 327 338 { 2, KEY_SHOOT_HALF , 0x00000001 }, 328 339 { 2, KEY_ZOOM_IN , 0x00004000 }, 329 340 { 2, KEY_ZOOM_OUT , 0x00002000 }, 330 { 2, KEY_PRINT , 0x00000040 }, //doesn't exist 331 { 2, KEY_DISPLAY , 0x00000040 }, //swapped for print atm 332 //We will see if I can make KEY_DISPLAY a long KEY_DISPLAY... 341 { 2, KEY_DISPLAY , 0x00000040 }, 333 342 { 0, 0, 0 } 334 343 }; -
branches/tsvstar-uitest/platform/ixus100_sd780/notes.txt
r1975 r2085 5 5 ND filter only, NO iris 6 6 7 <ALT> key is user defined. Default is a short press on the Playback key. Can also be set to the DISP key. 7 8 8 9 *** Features known BROKEN or NOT supported: -
branches/tsvstar-uitest/platform/ixus100_sd780/platform_camera.h
r1975 r2085 34 34 #undef CAM_HAS_MANUAL_FOCUS 35 35 #undef CAM_HAS_USER_TV_MODES 36 37 #define CAM_ADJUSTABLE_ALT_BUTTON 1 36 38 37 39 #undef CAM_REMOTE -
branches/tsvstar-uitest/platform/ixus105_sd1300/kbd.c
r2061 r2085 11 11 } KeyMap; 12 12 13 static long kbd_new_state[3] ;14 static long kbd_prev_state[3] ;15 static long kbd_mod_state[3] ;13 static long kbd_new_state[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; 14 static long kbd_prev_state[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; 15 static long kbd_mod_state[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; 16 16 17 17 static long last_kbd_key = 0; 18 18 extern void _GetKbdState(long*); 19 19 20 #define KEYS_MASK0 (0x00000 500)20 #define KEYS_MASK0 (0x00000700) 21 21 #define KEYS_MASK1 (0x38000000) 22 22 #define KEYS_MASK2 (0x00005C0B) … … 36 36 } 37 37 38 // Keymap values for kbd.c. Additional keys may be present, only common values included here. 38 39 static KeyMap keymap[] = { 39 /* tiny bug: key order matters. see kbd_get_pressed_key() 40 * for example 41 */ 42 43 { 0, KEY_MENU , 0x00000400 }, 44 { 0, KEY_DISPLAY , 0x00000100 }, // Playback button 45 46 { 1, KEY_LEFT , 0x08000000 }, 47 { 1, KEY_ZOOM_IN , 0x20000000 }, 48 { 1, KEY_ZOOM_OUT , 0x10000000 }, 49 50 { 2, KEY_SHOOT_FULL , 0x00005000 }, // 0101 51 { 2, KEY_SHOOT_HALF , 0x00004000 }, // 0100 52 53 { 2, KEY_UP , 0x00000800 }, 54 { 2, KEY_DOWN , 0x00000002 }, 55 { 2, KEY_RIGHT , 0x00000400 }, 56 { 2, KEY_SET , 0x00000001 }, 57 { 2, KEY_PRINT , 0x00000008 }, // I used DISP. key for this. 58 { 0, 0 , 0x00000000 } 40 { 0, KEY_PLAYBACK ,0x00000100 }, // Found @0xffea7a88, levent 0x601 41 { 0, KEY_PRINT ,0x00000100 }, // ALT menu on PLAYBACK button 42 { 0, KEY_POWER ,0x00000200 }, // Found @0xffea7a94, levent 0x600 43 { 0, KEY_MENU ,0x00000400 }, // Found @0xffea7aa0, levent 0x09 44 { 1, KEY_LEFT ,0x08000000 }, // Found @0xffea7adc, levent 0x06 45 { 1, KEY_ZOOM_OUT ,0x10000000 }, // Found @0xffea7ae8, levent 0x03 46 { 1, KEY_ZOOM_IN ,0x20000000 }, // Found @0xffea7af4, levent 0x02 47 { 2, KEY_SET ,0x00000001 }, // Found @0xffea7b00, levent 0x08 48 { 2, KEY_DOWN ,0x00000002 }, // Found @0xffea7b0c, levent 0x05 49 { 2, KEY_DISPLAY ,0x00000008 }, // Found @0xffea7b18, levent 0x0a 50 { 2, KEY_RIGHT ,0x00000400 }, // Found @0xffea7b24, levent 0x07 51 { 2, KEY_UP ,0x00000800 }, // Found @0xffea7b30, levent 0x04 52 { 2, KEY_SHOOT_FULL ,0x00005000 }, // Found @0xffea7b3c, levent 0x01 53 { 2, KEY_SHOOT_HALF ,0x00004000 }, // Found @0xffea7b48, levent 0x00 54 { 2, KEY_SHOOT_FULL_ONLY ,0x00001000 }, // Found @0xffea7b3c, levent 0x01 55 { 0, 0, 0 } 59 56 }; 60 57 61 62 long __attribute__((naked)) wrap_kbd_p1_f() ;63 64 static void __attribute__((noinline)) mykbd_task_proceed()65 {66 while (physw_run){67 _SleepTask(10);68 69 if (wrap_kbd_p1_f() == 1){ // autorepeat ?70 _kbd_p2_f();71 }72 }73 }74 75 58 long __attribute__((naked,noinline)) wrap_kbd_p1_f() 76 59 { 77 78 60 asm volatile( 79 61 "STMFD SP!, {R1-R5,LR}\n" … … 85 67 } 86 68 69 static void __attribute__((noinline)) mykbd_task_proceed() 70 { 71 while (physw_run){ 72 _SleepTask(10); 73 74 if (wrap_kbd_p1_f() == 1){ // autorepeat ? 75 _kbd_p2_f(); 76 } 77 } 78 } 79 80 void __attribute__((naked,noinline)) mykbd_task() 81 { 82 mykbd_task_proceed(); 83 _ExitTask(); 84 } 87 85 88 86 void my_kbd_read_keys() … … 93 91 94 92 _GetKbdState(kbd_new_state); 95 _kbd_read_keys_r2(kbd_new_state);96 93 97 94 if (kbd_process() == 0){ … … 107 104 } 108 105 106 _kbd_read_keys_r2(kbd_new_state); 107 109 108 usb_remote_key(); 110 109 … … 121 120 /****************/ 122 121 122 void kbd_set_alt_mode_key_mask(long key) 123 { 124 // not needed 125 } 126 123 127 void kbd_key_press(long key) 124 128 { 125 129 int i; 126 for (i=0;keymap[i].hackkey;i++){ 127 if (keymap[i].hackkey == key){ 130 131 for (i=0;keymap[i].hackkey;i++){ 132 if (keymap[i].hackkey == key) 133 { 128 134 kbd_mod_state[keymap[i].grp] &= ~keymap[i].canonkey; 129 135 return; -
branches/tsvstar-uitest/platform/ixus105_sd1300/lib.c
r1975 r2085 4 4 void vid_bitmap_refresh() 5 5 { 6 /* NOTE: This was the old method, i think the new one performs better 6 7 extern int enabled_refresh_physical_screen; 7 8 enabled_refresh_physical_screen=1; 8 9 _RefreshPhysicalScreen(1); 10 */ 11 extern int full_screen_refresh; 12 extern void _ScreenUnlock(); 13 extern void _ScreenLock(); 14 15 full_screen_refresh |= 3; 16 _ScreenLock(); 17 _ScreenUnlock(); 9 18 } 10 19 … … 44 53 } 45 54 46 int vid_get_viewport_width()47 {48 return 360;49 }50 51 55 long vid_get_viewport_height() 52 56 { … … 54 58 } 55 59 56 // Y multiplier for cameras with 480 pixel high viewports (CHDK code assumes 240)57 int vid_get_viewport_yscale() {58 return 2;59 }60 61 void *vid_get_viewport_live_fb()62 {63 return vid_get_viewport_fb();64 }65 -
branches/tsvstar-uitest/platform/ixus105_sd1300/notes.txt
r1975 r2085 2 2 Digic IV, dryos r43 3 3 4 Untested alpha port of alpha SDM code from http://chdk.setepontos.com/index.php?topic=5720.6905 6 tested (not clear which build or by who):7 - loading, drawing8 - some lua stuff9 - exp override10 11 4 current issues/unfeatures: 12 - load script = camera shutdown13 - save raw = camera shutdown (some stub must be wrong)14 5 - no video override 15 - edge overlay works but disappears soon16 - zebra doesn't seem to be working17 - some other overrides does not seem to work correctly18 6 - modemap is incomplete/incorrect (see stubs_entry.S) -
branches/tsvstar-uitest/platform/ixus105_sd1300/platform_camera.h
r1975 r2085 29 29 #define CAM_UNCACHED_BIT 0x40000000 // Found @0xffc29e80 30 30 #define CAM_PROPSET 3 31 #define CAM_NEED_HP 132 31 #define CAM_MULTIPART 1 33 #define CAM_HAS_PLAYBACK_PB 134 #define CAM_MOVIE_PLE 135 #define CAM_USES_EXMEM 136 #define CAM_USE_SET_BUTTON 137 32 #undef CAM_HAS_MANUAL_FOCUS 38 33 #undef CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO … … 40 35 #undef CAM_VIDEO_CONTROL 41 36 #undef CAM_USE_ZOOM_FOR_MF 42 #undef CAM_HAS_ERASE_BUTTON43 #define CAM_SHOW_OSD_IN_SHOOT_MENU 137 #undef CAM_HAS_ERASE_BUTTON 38 #define CAM_SHOW_OSD_IN_SHOOT_MENU 1 44 39 #define CAM_EXT_TV_RANGE 1 45 40 #define CAM_HAS_ND_FILTER 1 46 41 47 // pattern 42 // pattern // TODO: 48 43 #define cam_CFAPattern 0x02010100 // Red Green Green Blue 49 // color 50 44 // color // TODO: 51 45 #define CAM_COLORMATRIX1 \ 52 46 827547, 1000000, -290458, 1000000, -126086, 1000000, \ … … 54 48 5181, 1000000, 48183, 1000000, 245014, 1000000 55 49 56 #define cam_CalibrationIlluminant1 1 // Daylight 50 #define cam_CalibrationIlluminant1 1 // Daylight // TODO: 57 51 // cropping 58 52 #define CAM_JPEG_WIDTH 3648 … … 66 60 #define PARAM_CAMERA_NAME 4 // parameter number for GetParameterData 67 61 #undef CAM_SENSOR_BITS_PER_PIXEL 68 #undef CAM_WHITE_LEVEL69 #undef CAM_BLACK_LEVEL70 62 #define CAM_SENSOR_BITS_PER_PIXEL 12 71 #define CAM_WHITE_LEVEL ((1<<CAM_SENSOR_BITS_PER_PIXEL)-1)72 #define CAM_BLACK_LEVEL 12773 74 63 64 #undef CAM_BITMAP_WIDTH 65 #define CAM_BITMAP_WIDTH 720 // Actual width of bitmap screen in bytes 66 67 #undef CAM_USES_ASPECT_CORRECTION 68 #define CAM_USES_ASPECT_CORRECTION 1 69 70 #define CAM_ADJUSTABLE_ALT_BUTTON 1 71 72 #define CAM_ZEBRA_ASPECT_ADJUST 1 73 74 #define CAM_STARTUP_CRASH_FILE_OPEN_FIX 1 75 -
branches/tsvstar-uitest/platform/ixus105_sd1300/sub/100d/boot.c
r1975 r2085 8 8 const char * const new_sa = &_end; 9 9 10 extern void task_PhySw(); 10 11 extern void task_CaptSeq(); 11 12 extern void task_InitFileModules(); … … 17 18 { 18 19 task_t *tcb=(task_t*)((char*)context-offsetof(task_t, context)); 19 20 20 // Replace firmware task addresses with ours 21 if(tcb->entry == (void*)task_PhySw) tcb->entry = (void*)mykbd_task; 21 22 if(tcb->entry == (void*)task_CaptSeq) tcb->entry = (void*)capt_seq_task; 22 23 if(tcb->entry == (void*)task_InitFileModules) tcb->entry = (void*)init_file_modules_task; … … 27 28 void CreateTask_spytask() { 28 29 _CreateTask("SpyTask", 0x19, 0x2000, core_spytask, 0); 29 //_CreateTask("InitCHDKPTP", 0x19, 0x2000, init_chdk_ptp, 0);30 30 }; 31 31 … … 292 292 } 293 293 294 void __attribute__((naked,noinline)) taskcreate_PhySw_my() { 295 asm volatile( 296 "STMFD SP!, {R3-R5,LR}\n" 297 "LDR R4, =0x1C20\n" 298 "LDR R0, [R4,#0x10]\n" 299 "CMP R0, #0\n" 300 "BNE loc_FFC2423C\n" 301 "MOV R3, #0\n" 302 "STR R3, [SP]\n" 303 "LDR R3, =mykbd_task\n" // Changed 304 // "MOV R2, #0x800\n" 305 "MOV R2, #0x2000\n" // + stack size for new task_PhySw so we don't have to do stack switch 306 "B sub_FFC2422C\n" // Continue code 307 "loc_FFC2423C:\n" 308 "B sub_FFC2423C\n" // Continue code 309 ); 310 } 311 294 312 void __attribute__((naked,noinline)) task_Startup_my() { 295 313 asm volatile ( … … 298 316 "BL sub_ffc25418\n" 299 317 "BL sub_ffc23638\n" 300 "BL sub_ffc2b744\n" // was commented in a480318 "BL sub_ffc2b744\n" 301 319 "BL sub_ffc2b930\n" 302 320 //"BL sub_ffc2b7d8\n" // This should be the DISKBOOT start … … 305 323 "BL sub_ffc2b960\n" 306 324 "BL sub_ffc290dc\n" 307 "BL CreateTask_spytask\n" 308 "BL sub_ffc2bad0\n"// was commented in a480 for "BL CreateTask_spytask\n" 309 "BL sub_ffc24208\n" 325 "BL CreateTask_spytask\n" // + 326 "BL sub_ffc2bad0\n" 327 //"BL sub_ffc24208\n" 328 "BL taskcreate_PhySw_my\n" // + 310 329 "BL sub_ffc27744\n" 311 330 "BL sub_ffc2bae8\n" 312 "BL sub_ffc216a8\n" // was commented in a480331 "BL sub_ffc216a8\n" 313 332 "BL sub_ffc23090\n" 314 333 "BL sub_ffc2b4e0\n" -
branches/tsvstar-uitest/platform/ixus105_sd1300/sub/100d/capt_seq.c
r1975 r2085 95 95 "B loc_ffc5fd00\n" 96 96 "loc_ffc5faf8:\n" 97 "BL shooting_expo_iso_override\n" // added 97 98 "BL sub_ffc6033c\n" 98 "BL tv_override\n"// added99 "BL shooting_expo_param_override\n" // added 99 100 "BL sub_ffc5db3c\n" 100 // copied over from SX10/SX200101 // added to avoid some incorrect behavior if overrides are used.102 // it can cause some unexpected side effects. In this case, remove this code!103 "MOV R0, #0\n"104 "STR R0, [R4,#0x24]\n" // fixes overrides behavior at short shutter press105 // end of added code106 101 "LDR R0, [R4,#0x24]\n" 107 102 "CMP R0, #0\n" … … 984 979 "BLEQ sub_FFC0EB14\n" 985 980 "MOV R0, R4\n" 986 "BL sub_FFD8F4B8\n"987 //"BL apex2us\n" // +981 // "BL sub_FFD8F4B8\n" // - 982 "BL apex2us\n" // + 988 983 "MOV R4, R0\n" 989 984 // "BL nullsub_65\n" -
branches/tsvstar-uitest/platform/ixus105_sd1300/sub/100d/lib.c
r1975 r2085 14 14 } 15 15 16 void *vid_get_viewport_live_fb() //TODO: 17 { 18 return (void*)vid_get_viewport_fb(); 19 } -
branches/tsvstar-uitest/platform/ixus105_sd1300/sub/100d/stubs_auto.S
r1975 r2085 13 13 STUB(FFC0A244) 14 14 STUB(FFC0EB14) 15 STUB(FFC2422C) 16 STUB(FFC2423C) 15 17 STUB(FFC2936C) 16 18 STUB(FFC29BB4) -
branches/tsvstar-uitest/platform/ixus105_sd1300/sub/100d/stubs_entry.S
r1975 r2085 8 8 9 9 // Values for makefile.inc 10 // PLATFORMOSVER = 43 10 11 // PLATFORMID = 12788 (0x31f4) // Found @ 0xfffe0130 11 12 // MAXRAMADDR = 0x03ffffff … … 32 33 DEF(physw_status ,0x0002f100) // Found @0xffc24574 33 34 DEF(physw_run ,0x00001c2c) // Found @0xffc241d8 35 DEF(physw_sleep_delay ,0x00001c2a) // Found @0xffc241d8 34 36 DEF(levent_table ,0xffec0320) // Found @0xffec0320 35 37 DEF(FlashParamsTable ,0xffefa0e8) // Found @0xffefa0e8 … … 61 63 // Keymap values for kbd.c. Additional keys may be present, only common values included here. 62 64 //static KeyMap keymap[] = { 65 // { 0, KEY_PLAYBACK ,0x00000100 }, // Found @0xffea7a88, levent 0x601 66 // { 0, KEY_POWER ,0x00000200 }, // Found @0xffea7a94, levent 0x600 63 67 // { 0, KEY_MENU ,0x00000400 }, // Found @0xffea7aa0, levent 0x09 64 68 // { 1, KEY_LEFT ,0x08000000 }, // Found @0xffea7adc, levent 0x06 65 69 // { 1, KEY_ZOOM_OUT ,0x10000000 }, // Found @0xffea7ae8, levent 0x03 66 70 // { 1, KEY_ZOOM_IN ,0x20000000 }, // Found @0xffea7af4, levent 0x02 71 // { 2, KEY_SET ,0x00000001 }, // Found @0xffea7b00, levent 0x08 67 72 // { 2, KEY_DOWN ,0x00000002 }, // Found @0xffea7b0c, levent 0x05 68 // { 2, KEY_SHOOT_FULL ,0x00005000 }, // Found @0xffea7b3c, levent 0x0169 // { 2, KEY_SHOOT_HALF ,0x00004000 }, // Found @0xffea7b48, levent 0x0070 // { 2, KEY_SET ,0x00000001 }, // Found @0xffea7b00, levent 0x0871 // { 2, KEY_SHOOT_FULL_ONLY ,0x00001000 }, // Found @0xffea7b3c, levent 0x0172 73 // { 2, KEY_DISPLAY ,0x00000008 }, // Found @0xffea7b18, levent 0x0a 73 74 // { 2, KEY_RIGHT ,0x00000400 }, // Found @0xffea7b24, levent 0x07 74 75 // { 2, KEY_UP ,0x00000800 }, // Found @0xffea7b30, levent 0x04 76 // { 2, KEY_SHOOT_FULL ,0x00005000 }, // Found @0xffea7b3c, levent 0x01 77 // { 2, KEY_SHOOT_HALF ,0x00004000 }, // Found @0xffea7b48, levent 0x00 78 // { 2, KEY_SHOOT_FULL_ONLY ,0x00001000 }, // Found @0xffea7b3c, levent 0x01 75 79 // { 0, 0, 0 } 76 80 //}; … … 101 105 NSTUB(DoAFLock ,0xffc27fe0) //102 102 106 NSTUB(EnterToCompensationEVF ,0xffc28090) //104 103 NSTUB(ExecuteEventProcedure ,0xffc6cef0) // 1107 NSTUB(ExecuteEventProcedure ,0xffc6cef0) // 2 104 108 NSTUB(ExitFromCompensationEVF ,0xffc280d4) //104 105 109 NSTUB(ExitTask ,0xffc0eacc) //101 … … 120 124 NSTUB(GetCurrentAvValue ,0xffd14ed4) //102 121 125 NSTUB(GetDrive_ClusterSize ,0xffc55b18) // 4 122 NSTUB(GetDrive_FreeClusters ,0xffc24258) // 3123 // ALT: NSTUB(GetDrive_FreeClusters, 0xffc55b78) // 4 9/0124 126 NSTUB(GetDrive_TotalClusters ,0xffc55b4c) // 3 125 127 NSTUB(GetFocusLensSubjectDistance ,0xffd14174) //102 … … 132 134 NSTUB(GetPropertyCase ,0xffc70bfc) //102 133 135 NSTUB(GetSystemTime ,0xffe1bd7c) //101 136 NSTUB(GetVRAMHPixelsSize ,0xffcbe1e8) //102 137 NSTUB(GetVRAMVPixelsSize ,0xffcbe1f4) //102 134 138 NSTUB(GetZoomLensCurrentPoint ,0xffd17f9c) //102 135 139 NSTUB(GetZoomLensCurrentPosition ,0xffe134c8) //102 -
branches/tsvstar-uitest/platform/ixus105_sd1300/sub/100d/stubs_entry_2.S
r1975 r2085 9 9 NHSTUB(SetZoomActuatorSpeedPercent, NULL_SUB) 10 10 11 NHSTUB(GetDrive_FreeClusters, 0xffc55b78) -
branches/tsvstar-uitest/platform/ixus300_sd4000/kbd.c
r2061 r2085 22 22 #define KEYS_MASK1 (0x00000FF0) // physw_status[1], override 0xF0 (keys) + 0xF00 (feather) 23 23 #define KEYS_MASK2 (0x00000000) // physw_status[2] 24 //static long alt_mode_key_mask = 0x00000000; // we use two Keys, no need to override 24 static long alt_mode_key_mask = 0x00000000; 25 25 26 26 #define SD_READONLY_FLAG (0x00020000) // SD-Card Lock Status (locked / unlocked) … … 108 108 } 109 109 110 void kbd_set_alt_mode_key_mask(long key) 111 { 112 int i; 113 for (i=0; keymap[i].hackkey; ++i) { 114 if (keymap[i].hackkey == key) { 115 alt_mode_key_mask = keymap[i].canonkey; 116 return; 117 } 118 } 119 } 110 120 111 121 void kbd_key_press(long key) { … … 283 293 { 0, KEY_LEFT , 0x00000008 }, 284 294 { 0, KEY_RIGHT , 0x00000002 }, 285 { 1, KEY_SET , 0x00000040 }, 295 { 0, KEY_POWER , 0x00000010 }, 296 { 0, KEY_PLAYBACK , 0x00004000 }, 297 { 0, KEY_PRINT , 0x00004000 }, // ALT Key = PLAYBACK - other workaround: KEY_UP + KEY_LEFT (camera has no print key) 286 298 { 0, KEY_SHOOT_FULL , 0x00000900 }, // 0x00000800 (KEY_SHOOT_FULL_ONLY) + 0x00000100 (KEY_SHOOT_HALF) 287 299 { 0, KEY_SHOOT_FULL_ONLY, 0x00000800 }, 288 300 { 0, KEY_SHOOT_HALF , 0x00000100 }, 301 { 1, KEY_SET , 0x00000040 }, 289 302 { 1, KEY_ZOOM_IN , 0x00000010 }, 290 303 { 1, KEY_ZOOM_OUT , 0x00000020 }, 291 304 { 1, KEY_MENU , 0x00000080 }, 292 { 0, KEY_PRINT , 0x0000000C }, // ALT Key workaround: KEY_UP + KEY_LEFT (camera has no print key)293 305 { 0, 0, 0 } 294 306 }; -
branches/tsvstar-uitest/platform/ixus300_sd4000/notes.txt
r1975 r2085 23 23 24 24 --- CHDK ALT Mode --------------------------------------------------- 25 To enter CHDK ALT mode press LEFT + UP on JogDial (Camera has no special button like Print for CHDK). 25 Camera has a user defined <ALT> key. Default is a short press on the Playback button. Alternative is tp 26 press LEFT + UP on JogDial (Camera has no special button like Print for CHDK). 26 27 27 28 -
branches/tsvstar-uitest/platform/ixus300_sd4000/platform_camera.h
r1975 r2085 53 53 #define CAM_DATE_FOLDER_NAMING 1 54 54 //#define CAM_DRAW_EXPOSITION 1 // not required because Canon Firmware does always show it on Shutter half press 55 //#define CAM_ADJUSTABLE_ALT_BUTTON 1 // ToDo55 #define CAM_ADJUSTABLE_ALT_BUTTON 1 56 56 57 57 #define PARAM_CAMERA_NAME 4 // parameter number for GetParameterData to get camera name -
branches/tsvstar-uitest/platform/s100/platform_camera.h
r2061 r2085 36 36 #define CAM_HAS_JOGDIAL 1 37 37 #undef CAM_HAS_ERASE_BUTTON 38 #define CAM_KEY_CLICK_DELAY 10 // camera requires additional delay for click command 38 39 39 40 #define CAM_ADJUSTABLE_ALT_BUTTON 1
Note: See TracChangeset
for help on using the changeset viewer.