Changeset 2073


Ignore:
Timestamp:
08/10/12 01:46:49 (10 months ago)
Author:
philmoz
Message:

Updates from waterwingz, c10ud, outslider and mipa87
http://chdk.setepontos.com/index.php?topic=650.msg88919#msg88919
http://chdk.setepontos.com/index.php?topic=650.msg89002#msg89002
http://chdk.setepontos.com/index.php?topic=650.msg89034#msg89034
http://chdk.setepontos.com/index.php?topic=650.msg89068#msg89068

Location:
trunk
Files:
1 added
3 deleted
22 edited

Legend:

Unmodified
Added
Removed
  • trunk/CHDK/LANG/czech.lng

    r719 r2073  
    77  1 "Hlavní menu" 
    88 
    9   2 "Nastavení pro formát RAW" 
    10   3 "Nastavení parametru OSD" 
    11   4 "Nastavení histogramu" 
    12   5 "Nastavení zebry" 
    13   6 "Nastavení skriptu" 
    14   7 "Nastavení zobrazení" 
    15   8 "Ruzné" 
    16   9 "Debugger (ladení programu)" 
    17  10 "Obnovit výchozí nastavení..." 
    18  11 "Uložit nastavení..." 
    19  
    20  12 "Zpet" 
     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 "Uložit nastavení nyní..." 
     19 
     20 12 "Zpìt" 
    2121 
    2222 
    2323 13 "RAW" 
    2424 
    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" 
    3130 
    3231 
     
    3534 21 "Zobrazit OSD" 
    3635 22 "Zobrazit stav" 
    37  23 "Zobrazit nastavení objektivu" 
    38  24 "Zoom" 
     36 23 "Zobrazit rùzné hodnoty" 
     37 24 " Hodnota pøiblížení" 
    3938 25 "Zobrazit DOF kalkulátor" 
    4039 26 "Zobrazit hodiny" 
    41  27 "Nastavit rozmístení prvku na OSD" 
     40 27 "Editor rozvržení prvkù OSD" 
    4241 28 "Baterie" 
    4342 
     
    4645 
    4746 30 "Zobr. živý histogram" 
    48  31 "Struktura histogramu" 
     47 31 "Rozvržení histogramu" 
    4948 32 "Režim histogramu" 
    50  33 "Zobr. v histogr. pre/pod EXP" 
    51  34 "Ignorov. hranic. špicky" 
     49 33 "Zobr. v histogr. pøe/pod EXP" 
     50 34 "Ignorovat hranièní špièky" 
    5251 35 "Automatická velikost" 
    5352 
     
    5655 
    5756 37 "Vykreslovat zebru" 
    58  38 "Mód zebry" 
     57 38 "Režim zebry" 
    5958 39 "Práh podexponování" 
    60  40 "Práh preexponování" 
    61  41 "Obnovit výchozí zobrazení" 
     59 40 "Práh pøeexponování" 
     60 41 "Obnovit pùvodní obrazovku" 
    6261 42 "Obnovit OSD" 
    63  43 "Kreslit pres zebru" 
     62 43 "Kreslit pøes zebru" 
    6463 
    6564 
    6665 44 "Skripty" 
    6766 
    68  45 "Otevrít skript ze souboru..." 
    69  46 "Spoždení zahájení skriptu (.1s)" 
     67 45 "Naèíst skript ze souboru..." 
     68 46 "Prodleva zahájení skriptu (.1s)" 
    7069 47 "Aktuální skript" 
    7170 48 "Parametry skriptu" 
    7271 
    7372 
    74  49 "Nastavení zobrazení" 
     73 49 "Nastavení barev" 
    7574 
    7675 50 "Jazyk..." 
    77  51 "Kód. stránka" 
    78  52 "RBF font menu..." 
     76 51 "Kódová stránka OSD" 
     77 52 "RBF písmo menu..." 
    7978 53 "Barvy" 
    8079 54 "OSD - text" 
     
    8382 57 "Histogram - pozadí" 
    8483 58 "Histogram - okraj" 
    85  59 "Histogram - EXP znacky" 
     84 59 "Histogram - EXP znaèky" 
    8685 60 "Zebra - podexponování" 
    87  61 "Zebra - preexponování" 
    88  62 "Ikona baterie" 
     86 61 "Zebra - pøeexponování" 
     87 62 "Baterie - ikona" 
    8988 63 "Menu - text" 
    9089 64 "Menu - pozadí" 
    91  65 "Prohlížec textu - text" 
    92  66 "Prohlížec textu - pozadí" 
    93  
    94  
    95  67 "Ruzné" 
    96  
    97  68 "Prohlížec souboru" 
    98  69 "Kalendár" 
    99  70 "Prohlížec 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ù" 
    10099 71 "Hry" 
    101100 72 "Baterka" 
    102  73 "Ukázat splash po zavedení" 
    103  74 "Použít zoom-pácku pro MF" 
    104  75 "Tlacítko <ALT> módu" 
    105  76 "Vykreslení 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ížení pameti" 
    116  84 "Výpis RAM pri ALT +/- stisku" 
    117  85 "Vytvorit 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 "Zobrazovat procenta" 
    126  91 "Zobrazovat napetí" 
    127  92 "Zobrazovat ikonu" 
    128  
    129  
    130  93 "Prohlížec textu" 
    131  
    132  94 "Otevrít nový soubor..." 
    133  95 "Otevrí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 režimu <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" 
    135134 97 "Kódová stránka" 
    136  98 "Zalamovat slova" 
     135 98 "Zalamovat podle slov" 
    137136 99 "Povolit aut. posouvání" 
    138137100 "Prodleva aut. posouvání (s)" 
     
    145144 
    146145 
    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" 
     146104 "*** Obnovit nastavení ***" 
     147105 "OPRAVDU obnovit nastavení\nna výchozí hodnoty?" 
     148 
     149106 "*** Informace o sestavení ***" 
     150107 "Verze CHDK: %s %s\nRevize:     %s\nDatum:      %s\nÈas:        %s\nFoák:      %s\nVerze FW:   %s\nKompilér:   %s" 
     151 
     152108 "*** Informace o pamìti ***" 
     153109 "Volná pamì: %d bajtù\nVelikost CHDK: %d bajtù\nNaèteno na: 0x%X" 
    156154 
    157155110 "*** Informace ***" 
    158 111 "Prosím prepnete prístroj\ndo PLAY módu\na zkuste to znovu. :)" 
     156111 "Prosím pøepnìte foák\ndo režimu PROHL͎ENÍ\na zkuste to znovu. :)" 
    159157 
    160158// file browser titles 
    161 112 "Prohlížec souboru" 
    162 113 "Výber souboru skriptu" 
    163 114 "Výber textového souboru" 
    164 115 "Výber RBF-font souboru" 
    165 116 "Výber souboru jazyka" 
     159112 "Prohlížeè souborù" 
     160113 "Vybrat soubor skriptu" 
     161114 "Vybrat soubor textu" 
     162115 "Vybrat soubor RBF písma" 
     163116 "Vybrat soubor jazyka" 
    166164 
    167165// for calendar 
    168166117 "Leden" 
    169167118 "Únor" 
    170 119 "Brezen" 
     168119 "Bøezen" 
    171169120 "Duben" 
    172 121 "Kveten" 
    173 122 "Cerven" 
    174 123 "Cervenec" 
     170121 "Kvìten" 
     171122 "Èerven" 
     172123 "Èervenec" 
    175173124 "Srpen" 
    176 125 "Zárí" 
    177 126 "Ríjen" 
     174125 "Záøí" 
     175126 "Øíjen" 
    178176127 "Listopad" 
    179177128 "Prosinec" 
    180178 
    181179129 " Po" 
    182 130 " Ut" 
     180130 " Út" 
    183181131 " St" 
    184 132 " Ct" 
     182132 " Èt" 
    185183133 " Pá" 
    186184134 " So" 
     
    193191138 "Ano" 
    194192139 "Ne" 
    195 140 "Zrušit" 
     193140 "Storno" 
    196194 
    197195// OSD layout editor 
    198196141 "Histogram" 
    199 142 "DOF kalk." 
    200 143 "RAW/SCR/EXP" 
    201 144 "Soubor hodnot" 
     197142 "DOF kalkulátor" 
     198143 "Zobrazení stavù" 
     199144 "Rùzné hodnoty" 
    202200145 "Ikona baterie" 
    203201146 "Text baterie" 
     
    205203 
    206204// palette 
    207 148 " Stiskni SET pro vykreslení barvy " 
    208 149 "     Stiskni MENU pro ukoncení    " 
     205148 "Stisknìte SET pro vykreslení barvy " 
     206149 "     Stisknìte MENU pro ukonèení" 
    209207150 "Barva" 
    210 151 "%s pro výber barvy" 
     208151 "Použijte %s pro výbìr barvy" 
    211209 
    212210// reversi 
    213211152 "*** Výsledek hry ***" 
    214 153 "Vyhrál jsi! :)" 
    215 154 "Prohrál jsi! :(" 
     212153 "Vyhrál jste! :)" 
     213154 "Prohrál jste! :(" 
    216214155 "Remíza! :/" 
    217215 
     
    220218158 "Toto pole není prázdné!" 
    221219 
    222 159 "Na tahu: Ty     " 
    223 160 "Na tahu: Pocítac" 
    224 161 "  KONEC  " 
    225 162 " Bílá  Cerná " 
    226  
    227 163 "*** O hre ***" 
     220159 "Na tahu: Ty   " 
     221160 "Na tahu: PC   " 
     222161 "    KONEC     " 
     223162 " Bílá   Èerná " 
     224 
     225163 "*** O høe ***" 
    228226 
    229227// sokoban 
    230 164 "Obtížnost" 
    231 165 "     Tahy" 
    232 166 "*** K O N E C ***" 
    233 167 "Skvele!\n  zvládl jsi to!  " 
     228164 " Úroveò" 
     229165 " Tahy" 
     230166 "*** Konec ***" 
     231167 "ANO!\n  Zvládl jste to!  " 
    234232 
    235233// console 
    236 168 "*** SPUŠTEN  ***" 
    237 169 "*** PRERUŠEN ***" 
    238 170 "*** UKONCEN  ***" 
     234168 "*** SPUŠTÌN  ***" 
     235169 "*** PØERUŠEN ***" 
     236170 "*** UKONÈEN  ***" 
    239237 
    240238// file browser 
    241 171 "*** Vymazat adresár ***" 
    242 172 "Opravdu smazat\nVŠECHNY soubory \nz vybraného adresáre?" 
     239171 "*** Vymazat adresáø ***" 
     240172 "OPRAVDU smazat\nVŠECHNY soubory\nz vybraného adresáøe?" 
    243241173 "*** Vymazat soubor ***" 
    244242174 "OPRAVDU vymazat\nvybraný soubor?" 
    245243 
    246244// benchmark 
    247 175 "Výkonostní testy" 
    248 176 "Výpocet..." 
    249 177 "Testování  stisknete [set] pro zahájení" 
     245175 "Výkonnostní testy" 
     246176 "Výpoèet..." 
     247177 "Testování foáku   Stisknìte [SET] pro start" 
    250248178 "Obrazovka" 
    251 179 "Zápis        :" 
    252 180 "Ctení        :" 
    253 181 "Pamet" 
    254 182 "Flash-karta" 
     249179 "Zápis       :" 
     250180 "Ètení       :" 
     251181 "Pamì" 
     252182 "Karta" 
    255253183 "Zápis (RAW) :" 
    256254184 "Zápis (Mem) :" 
    257255185 "Zápis (64k) :" 
    258 186 "Ctení (64k) :" 
     256186 "Ètení (64k) :" 
    259257 
    260258187 "Zakázat vypnutí LCD" 
     
    264262190 "Vložit" 
    265263191 "Smazat" 
    266 192 "Inverze výberu" 
    267 193 "*** Vyjmutí souboru ***" 
    268 194 "Opravdu vyjmout\n%d vybraných souboru\nz %s/?" 
    269 195 "*** Kopírování souboru ***" 
    270 196 "Opravdu kopírovat\n%d vybraných souboru\nz %s/?" 
    271 197 "*** Mazání souboru ***" 
    272 198 "Opravdu vymazat\n%d vybraných souboru?" 
     264192 "Inverzní výbìr" 
     265193 "*** Vyjmutí souborù ***" 
     266194 "OPRAVDU vyjmout\n%d vybraných souborù\nz %s/?" 
     267195 "*** Kopírování souborù ***" 
     268196 "OPRAVDU kopírovat\n%d vybraných souborù\nz %s/?" 
     269197 "*** Mazání souborù ***" 
     270198 "OPRAVDU vymazat\n%d vybraných souborù?" 
    273271199 "Moment prosím..." 
    274272 
    275 200 "Zobrazovat mrížku" 
    276 201 "Otevrít mrížku ze souburu..." 
    277 202 "Cáry" 
    278 203 "Mrížka" 
    279 204 "Výber souboru s mrížkou" 
    280 205 "Aktuální mrížka" 
     273200 "Zobrazit èáry møížky" 
     274201 "Naèíst møížku ze souboru..." 
     275202 "Èáry møížky" 
     276203 "Møížka" 
     277204 "Vybrat soubor s møížkou" 
     278205 "Aktuální møížka" 
    281279 
    282280206 "Redukce šumu" 
    283281 
    284 207 "Potlacit barvy mrížky" 
    285 208 "Barva car" 
    286 209 "Barva výplne" 
     282207 "Potlaèit barvy møížky" 
     283208 "Barva èar" 
     284209 "Barva výplnì" 
    287285 
    288286210 "DOF kalkulátor" 
    289287211 "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. ve 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 'skutecná' clona" 
    304 224 "Zobrazit 'skutecné' ISO" 
    305 225 "Zobrazit 'Market' ISO" 
    306 226 " Zobr. ISO jen pri nast. autom. ISO" 
     288212 "Canon subj. vzd. jako pøed.rov.ostr."  
     289213 "Použít subj. vzdál. EXIF(PC65)" 
     290214 "Zobr. subj. vzdál. v rùz." 
     291215 "Zobr. pøední rov. ostr. v rùz." 
     292216 "Zobr. zadní rov. ostr.  v rùz." 
     293217 "Zobr. hyperf. vzdál.  v rùz." 
     294218 "Zobr. hloub. ostr.  v rùz." 
     295 
     296 
     297219 "Rùzné hodnoty" 
     298220 "Rùzné hodnoty" 
     299221 "Zobr. v režimu náhledu" 
     300222 "Zobrazit pøiblížení" 
     301223 "Zobrazit 'skuteènou' clonu" 
     302224 "Zobrazit 'skuteèné' ISO" 
     303225 "Zobrazit 'market' ISO" 
     304226 "Zobr. ISO jen pøi režimu AutoISO" 
    307305227 "Zobr. nast. expozice Ev (Tv+Av)" 
    308 228 "Zobr. namerené Ev (Bv+Sv)" 
     306228 "Zobrazit namìøené Ev (Bv+Sv)" 
    309307229 "Zobr. nastav. Bv (hod. jasu)" 
    310 230 "Zobrazit namerené Bv" 
    311 231 "Zobr. hodn. preexp. (ne blesk!)" 
    312 232 "Zobr. jas scény" 
    313  
    314 233 "Nastavení videa" 
    315 234 "Nastavení videa" 
    316 235 "Video mód" 
     308230 "Zobrazit namìøené Bv" 
     309231 "Zobr. hodn. pøeexp. (ne blesk!)" 
     310232 "Zobrazit jas scény" 
     311 
     312233 "Parametry videa" 
     313234 "Parametry videa" 
     314235 "Režim videa" 
    317315236 "Datový tok videa" 
    318316237 "Kvalita videa" 
    319317 
    320318 
    321 238 "Rozšírené možnosti" 
    322 239 "Rozšírené možnosti" 
    323 240 "Prekrytí rychlosti záverky" 
    324 241 "         koeficient" 
    325 242 "Prekrytí hodnoty clony" 
    326 243 "Prekrytí hodnoty ISO" 
    327 244 "         koeficient" 
    328 245 "Prekrytí subj. vzdál." 
    329 246 "      koeficient (mm)" 
    330  
    331 247 "Brack. v souvis. režimu" 
    332 248 "Bracketing v souvisl. režimu" 
     319238 "Rozšíøené možnosti focení" 
     320239 "Rozšíøené možnosti focení" 
     321240 "Potlaèit rychlost závìrky" 
     322241 " " 
     323242 "Potlaèit hodnotu clony" 
     324243 "Potlaèit hodnotu ISO" 
     325244 " " 
     326245 "Potlaèit hodn. subj. vzdál. (mm)" 
     327246 " " 
     328 
     329247 "Bracketing v souvis. režimu" 
     330248 "Bracketing v souvis. režimu" 
    333331249 "Hodnota TV Bracketingu" 
    334332250 "Hodnota AV Bracketingu" 
    335333251 "Hodnota ISO Bracketingu" 
    336 252 "         koeficient" 
    337 253 "Subj. rozestup Bracketu(MF)" 
    338 254 "         koeficient (mm)" 
     334252 " " 
     335253 "Subj. hodn. rozestupu Bracketu (mm)" 
     336254 " " 
    339337255 "Typ Bracketingu" 
    340338 
    341339256 "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 "Prepocítat expozici" 
    347 261 "TV expozice - prepoc. por." 
    348 262 "AV expozice - prepoc. por." 
    349 263 "ISO expozice - prepoc. por." 
    350  
    351 264 "Vymazat hodn. prekr. pri spušt." 
    352  
    353 265 "Zobr. hodn. 'Canon' preexp." 
     340257 "Povolit dálk. ovládání" 
     341 
     342258 "Øízení expozice (ne blesk)" 
     343259 "Øízení expozice (ne blesk)" 
     344260 "Pøepoèítat expozici" 
     345261 "TV expozice - pøepoè. poø." 
     346262 "AV expozice - pøepoè. poø." 
     347263 "ISO expozice - pøepoè. poø." 
     348 
     349264 "Smazat hodn. potlaèení@spušt." 
     350 
     351265 "Zobr. hodn. 'Canon' pøeexp." 
    354352 
    355353266 "Zpracování RAW" 
    356 267 "Prosím prepnete fotoaparát\ndo režimu focení a zhotovte\njednu fotografii." 
    357 268 "Výber RAW souboru" 
     354267 "Prosím pøepnìte fotoaparát\ndo režimu záznamu a zhotovte\njednu fotografii." 
     355268 "Vybrat soubor RAW" 
    358356269 "RAW suma" 
    359 270 "RAW prumer" 
    360 271 "Nedostatek místa na karte:\n%dM požadováno, %dM k dispozici." 
    361  
    362 272 "Zobrazit OSD v módu náhledu" 
    363 273 "Spuštení seznamu úkolu" 
    364 274 "Subj. vzdál od cocek" 
    365  
    366 275 "Vymaz. hodn. bracketu & spušt." 
    367  
    368 276 "Vytvorit kartu se dvema oddíly" 
    369 277 "Prepnout oddíly" 
    370 278 "Tímto se ZNICÍ VŠECHNA DATA\nna karte. Pokracovat?" 
     357270 "RAW prùmìr" 
     358271 "Nedostatek místa na kartì:\n%dM požadováno, %dM k dispozici." 
     359 
     360272 "Zobrazit OSD v režimu náhledu" 
     361273 "Spuštìní seznamu úkolu" 
     362 
     363274 "Subj. vzdál od èoèek" 
     364 
     365275 "Smazat hodn. bracketu@spušt." 
     366 
     367276 "Vytvoøit kartu se dvìma oddíly" 
     368277 "Pøepnout oddíly" 
     369278 "Tímto se ZNIÈÍ VŠECHNA DATA\nna kartì. Pokraèovat?" 
    371370279 "Tato karta má pouze jeden oddíl" 
    372371280 "Chyba" 
    373372281 "Varování" 
    374373282 "Informace" 
    375 283 "RGB zebra (pouze preexp.)" 
     374283 "RGB zebra (pouze pøeexp.)" 
    376375 
    377376284 "Stav ND filtru" 
    378377 
    379 285 "Zobr. mrížku v histogramu" 
    380  
    381 286 "OSD varování" 
    382 287 "OSD pozadí varování" 
     378285 "Zobr. møížku Ev v histogramu" 
     379 
     380286 "OSD - varování" 
     381287 "OSD - pozadí varování" 
    383382288 "Barva ikony zbýv. místa" 
    384 289 "Zobr. ikonu místa na karte" 
     383289 "Zobr. ikonu místa na kartì" 
    385384290 "Zbývající místo" 
    386 291 "Zobr. místo na karte v proc." 
    387 292 "Zobr. místo na karte v MB" 
    388 293 "Prostor Text" 
    389 294 "  Zobrazit pocet zbýv. RAW" 
     385291 "Zobr. místo na kartì v proc." 
     386292 "Zobr. místo na kartì v MB" 
     387293 "Text místa" 
     388294 "  Zobr. poèet snímkù RAW" 
    390389295 "Zbývající pro RAW" 
    391390 
    392391296 "Zobrazit stav RAW" 
    393392 
    394 297 "Zobraz. hodnot pri videu" 
    395  
    396 298 "    Druh koef. záverky" 
    397 299 "Uživatel. menu aktivní" 
     393297 "Zobr. hodnoty pøi videu" 
     394 
     395298 " " 
     396299 "Povolit uživatel. menu" 
    398397300 "Uživatelské menu" 
    399 301 " " 
    400  
    401 302 " Zvetš. cocky adapt., 100=1x" 
     398 
     399302 " Mìøítko èoèky adaptéru, 100=1x" 
    402400303 "Zobr. indikát. místa" 
    403 304 "  Velikost na display" 
     401304 "  Velikost na obraz." 
    404402305 "  Šírka/Výška" 
    405 306 "  Prah. limit v %" 
    406 307 "  Prah. limit v MB" 
     403306 "  Práh limitu v %" 
     404307 "  Práh limitu v MB" 
    407405308 "Jednotka varování" 
    408 309 "  Prahov. limit varování" 
    409 310 "Povolit optický ZOOM" 
     406309 "  Práh limitu varování" 
     407310 "Povolit optické pøiblížení" 
    410408311 "Hodiny" 
    411409312 "Nastavení hodin" 
    412410313 "Formát hodin" 
    413411314 "Barva pozadí zbývajícího místa" 
    414 315 "Indikace 12h casu " 
    415 316 "Zobr. pri polovic. namáck." 
     412315 "Indikace 12h èasu" 
     413316 "Zobrazit@namáèknutí spouštì" 
    416414 
    417415317 "Nastavení zobrazení RAW" 
    418416318 "RAW" 
    419417 
    420 319 "Nastavení zobr. místa na karte" 
    421 320 "Místo na karte" 
     418319 "Nastavení zobr. místa na kartì" 
     419320 "Místo na kartì" 
    422420 
    423421321 "Uživatelské Auto ISO" 
    424422322 "Uživatelské Auto ISO" 
    425423323 "Povolit uživ. Auto ISO" 
    426 324 "Min. rychlost záverky" 
    427 325 "Uživ. koefic. (1/FL/koef.)" 
    428 326 "IS koeficient (Tv*koef.)" 
     424324 "Min. rychlost závìrky" 
     425325 "  Uživ. koefic. (1/FL/koef.)" 
     426326 "  IS koeficient (Tv*koef.)" 
    429427327 "Max ISO HI (x10)" 
    430428328 "Max ISO AUTO (x10)" 
    431429329 "Min ISO (x10)" 
    432430 
    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 pri zoomování" 
    439  
    440 336 "Odstr. vadných pixelu" 
     431330 "Menu - barva textu titulku" 
     432331 "Menu - barva pozadí titulku" 
     433332 "Kurzor - barva textu" 
     434333 "Kurzor - barva pozadí" 
     435334 "Centrovat menu" 
     436335 "Ztlumit zvuk pøi zoomování" 
     437 
     438336 "Ruèní odstranìní vadných pixelù" 
    441439337 "Vyp." 
    442 338 "Prum." 
     440338 "Prùmìr" 
    443441339 "RAWconv" 
    444442 
    445 340 "Prekrytí" 
    446 341 "Prekrytí pozadí" 
    447 342 "Zakázat prekrytí" 
    448 343 "  Vcet. AutoIso & Bracketing" 
    449 344 "  Skrýt v " 
     443340 "Potlaèení" 
     444341 "Potlaèení - pozadí" 
     445342 "Zakázat potlaèení" 
     446343 "  Vèet. AutoIso & Bracketing?" 
     447344 "  Skrýt v ?" 
    450448345 "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 "Opravdu vymazat VŠECHNY\nRAW soubory bez odpovídajících JPG\nv DCIM adresári?" 
    459 354 "Opravdu vymazat VŠECHNY\nRAW soubory bez odpovídajících JPG\nve vybraném adresári?" 
    460 355 ""Opravdu vymazat VŠECHNY\nRAW soubory bez odpovídajících JPG\n(Vyjma oznacenýc)" 
    461 356 "Funkce cištení RAW\nse nedá aplikovat na tuto položku" 
    462 357 "*** Cištení RAW souboru ***" 
    463 358 "Cištení RAW" 
     449346 "Zobr. zbýv. èas videa?" 
     450347 "  Frekvence obnovení (~s)" 
     451348 "Zbývající èas videa" 
     452349 "Smazat param. videa@spušt.?" 
     453350 " " 
     454351 " " 
     455352 "Korekce EV" 
     456353 "OPRAVDU vymazat VŠECHNY\nRAW soubory bez odpovídajících JPG\nv adresáøi DCIM?" 
     457354 "OPRAVDU vymazat VŠECHNY\nRAW soubory bez odpovídajících JPG\nve vybraném adresáøi?" 
     458355 "OPRAVDU vymazat VŠECHNY\nRAW soubory bez odpovídajících JPG\n(vyjma oznaèených)" 
     459356 "Funkce èištìní RAW\nse nedá aplikovat na tuto položku" 
     460357 "*** Èištìní RAW souborù ***" 
     461358 "Èištìní RAW" 
    464462  
    465 359 "Uživatel. menu jako základní" 
    466  
    467 360 "Font symbolu" 
    468 361 "Výber souboru se Symboly" 
     463359 "Uživatel. menu jako poèátek" 
     464 
     465360 "Písmo symbolù" 
     466361 "Vybrat soubor symbolù" 
    469467362 "Povolit symboly" 
    470 363 "Barva textu symbolu"  
    471 364 "Barva pozadí symbolu" 
    472  
    473 365 "Uživatelské tonální krivky" 
    474 366 "Uživatelské tonální krivky" 
    475 367 "Otevrít profil krivky..." 
    476 368 "Povolit krivky" 
    477 369 "Výber souboru s krivkami" 
    478  
    479 370 "Prekrytí okraju" 
    480 371 "Prekrytí okraju" 
    481  
    482 372 "Povolit prekrytí okraju" 
    483 373 "Práh prekrytí okraju" 
    484 374 "Barva prekrytí okraju" 
    485  
    486 375 "Parametry dálk. spoušte" 
    487 376 "Parametry dálk. spoušte" 
    488 377 "Povolit dálk. spoušt" 
     468363 "Symbol - barva textu"  
     469364 "Symbol - barva pozadí" 
     470 
     471365 "Uživatelské tonální køivky" 
     472366 "Uživatelské tonální køivky" 
     473367 "Naèíst profil køivky..." 
     474368 "Povolit køivky" 
     475369 "Vybrat soubor s køivkami" 
     476 
     477370 "Pøekrytí okrajù" 
     478371 "Pøekrytí okrajù (nástroj panoramat)" 
     479 
     480372 "Povolit pøekrytí okrajù" 
     481373 "Práh pøekrytí okrajù" 
     482374 "Barva pøekrytí okrajù" 
     483 
     484375 "Parametry dálk. spouštì" 
     485376 "Parametry dálk. spouštì" 
     486377 "Povolit synch. dálk. spouš" 
    489487378 "Povolit synchronizaci" 
    490488379 "Povolit synchr. prodlevu" 
     
    492490381 "Synchr. prodleva 0.1s" 
    493491 
    494 382 "AF key" 
    495 383 "Nahrát vých. hodnoty param." 
    496 384 "Nastavení parametru" 
    497  
    498 385 "Zakázat Raw @ Sport" 
    499 386 "Zakázat Raw @ Burst" 
    500 387 "Zakázat Raw @ EV Bracketing" 
    501 388 "Zakázat Raw @ Timer" 
    502  
    503 389 "Vyjímky" 
    504 390 "Menu vyjímek RAW" 
    505 391 "Varovat pri vyjímkách" 
    506 392 "Vždy vybrat první v menu" 
     492382 "Tlaèítko AF" 
     493383 "Naèíst vých. hodnoty param." 
     494384 "Nastavení parametrù" 
     495 
     496385 "Zakázat RAW @ sport" 
     497386 "Zakázat RAW @ shluk" 
     498387 "Zakázat RAW @ EV Bracketing" 
     499388 "Zakázat RAW @ èasovaè" 
     500 
     501389 "Výjimky" 
     502390 "Menu výjimek RAW" 
     503391 "Varovat pøi výjimkách" 
     504392 "Vždy vybrat 1. položku@menu" 
    507505 
    508506393 "Prodleva (0.1s)" 
    509 394 "Synchroniz. dálk. spoušt" 
    510 395 "Rychlé ovlád. videa" 
     507394 "Synchroniz. dálk. spouš" 
     508395 "Rychlé ovládání videa?" 
    511509396 "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 "Zvuky pri startu" 
    517 402 "Prefix odecteného RAW" 
    518 403 "prípona odecteného RAW" 
    519 404 "Odec. vstup. tmavé hodn." 
    520 405 "Odec. výstup. tmavé hodn." 
     510397 "Zobrazit teplotu?" 
     511398 "Øídit kvalitu videa?" 
     512399 "Povolit vzdálené pøiblížení" 
     513400 "Prodleva pøiblížení 0,1s" 
     514401 "Zvuk pøi startu" 
     515402 "Prefix odeèteného RAW" 
     516403 "Pøípona odeèteného RAW" 
     517404 "Odeè. vstup. tmavé hodn." 
     518405 "Odeè. výstup. tmavé hodn." 
    521519406 "od" 
    522520407 "...%d více souboru" 
    523 408 "Odecítání" 
    524 409 "Odecíst od oznaceného" 
    525 410 "Ukládat parametry" 
    526 411 "Zobrazení Video Ev" 
    527 412 "   Hodnota prekrytí Zoom" 
    528 413 "Prekrytí Zoom" 
    529 414 "Nulovat na zacátku" 
    530 415 "Pripojit RAW príponu" 
     521408 "Odeèítání" 
     522409 "Odeèíst od oznaèeného" 
     523410 "Uložit parametry" 
     524411 "Zobrazení Ev videa" 
     525412 "   Hodnota potlaèení pøiblížení" 
     526413 "Potlaèení pøiblížení" 
     527414 "   Smazat@spušt." 
     528415 "Pøipojit RAW pøíponu" 
    531529416 "  ve Fahrenheitech" 
    532 417 "Otevrít prekrytí okraju" 
    533 418 "Uložit prekrytí okraju" 
     530417 "Naèíst pøekrytí okrajù" 
     531418 "Uložit pøekrytí okrajù" 
    534532419 "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 
     534421 "Naèíst+nastavit pøiblížení" 
     535422 "Režim panoramat" 
     536423 "Synch. blesku na 2. lamelu" 
    539537424 "DNG formát" 
    540 425 "RAW buffer uložen" 
    541 426 "Nemohu otevrít CHDK/badpixel.bin\nProsím spust \nCHDK/SCRIPTS/TEST/badpixel.lua" 
    542 427 "Ukázat ukládací cas RAW" 
    543 428 "Ctverice" 
    544 429 "Souper:" 
    545 430 "Clovek" 
    546 431 "Hrác c.1 vyhrál" 
    547 432 "Hrác c.2 vyhrál" 
    548 433 "Porazil jsem Te" 
    549 434 "Nerozhodne" 
    550 435 "Zakázat RAW @ prekrytí 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é pres USB" 
     538425 "Uložit vyrov. pamì RAW" 
     539426 "Nelze naèíst CHDK/badpixel.bin\nPoužijte nejprve 'Vytvoøit badpixel.bin'" 
     540427 "Zobrazit èas uložení RAW" 
     541428 "Ètveøice" 
     542429 "Soupeø:" 
     543430 "Èlovìk" 
     544431 "Hráè è. 1 vyhrál" 
     545432 "Hráè è .2 vyhrál" 
     546433 "Porazil jsem Tì" 
     547434 "Nerozhodnì" 
     548435 "Zakázat RAW @ pøekrytí okrajù" 
     549436 "Zakázat RAW @ režim Auto" 
     550437 "   POUZE ve videu" 
     551438 " " 
     552439 "Pøípona 'DNG' souboru" 
     553440 "DNG viditelné pøes USB" 
    556554441 "Mastermind" 
    557555442 "dostupné barvy" 
    558 443 "na správné míste" 
     556443 "na správném místì" 
    559557444 "odpovídající barvy" 
    560 445 "SPRÁVNE :-)" 
     558445 "SPRÁVNÌ :-)" 
    561559446 "KONEC HRY" 
    562 447 "[<-] [->] vyber sloupec" 
    563 448 "[UP] [DOWN] vyber barvu" 
    564 449 "[SET] další rádek" 
     560447 "[<-] [->] vybrat sloupec" 
     561448 "[UP] [DOWN] vybrat barvu" 
     562449 "[SET] další øádek" 
    565563450 "Žádná barva 2x" 
    566 451 "reset souboru" 
    567 452 "restartuj prístroj ..." 
    568 453 "Rucne uvolni blesk" 
     564451 "Obnovit písma menu" 
     565452 "restartovat foák..." 
     566453 " " 
     567454 "Potlaèit kvalitu" 
     568455 "Restartovat Lua pøi chybì" 
     569456 "Filtrovat okraje" 
     570457 "Zobrazit vždy" 
     571458 "   Pøekrytí panoramat (%)" 
     572459 "Vytvoøit badpixel.bin" 
     573460 "Pro tuto operaci je nutné být\n v režimu záznamu." 
     574461 "%s zakázáno pøi sestavení" 
     575462 "Potlaèení dotykové obrazovky" 
     576463 "Ovládání AE videa" 
     577464 "Tlaèítka zkratek <Alt>" 
     578465 "Informace o USB" 
     579466 "Zobrazit informace o USB" 
     580467 "Uložit log ROM selhání" 
     581468 "CHYBA: SystemEventInit a System.Create selhalo" 
     582469 "Log ROM selhání nemohl být uložen" 
     583470 "Log ROM selhání byl uložen do ROMLOG.LOG" 
     584 
     585471 "Typ pøepnutí" 
     586472 "Režim ovládání" 
     587473 "Možnosti" 
     588 
     589474 "Nastavení textového pole" 
     590475 "Vybrat znak. sadu text. pole" 
     591476 "Více ->" 
     592477 "Vytvoøit složku" 
     593478 "Pøejmenovat" 
     594479 "Zadejte název složky:" 
     595480 "Zadejte nový název souboru:" 
     596481 "Odstranit složku" 
     597 
     598482 "Aktuální uživatelská køivka" 
     599483 "Tetris" 
     600484 "Zobrazit èíslo oddílu" 
     601485 "Video bez èasového limitu" 
     602486 "CMOS se mùže bìhem dlouhého záznamu pøehøát!" 
     603 
     604//GPS Anfang--------------------------------- 
     605487 "Nastavení GPS" 
     606488 "Zobrazit navigaci" 
     607489 "Zobrazit kompas" 
     608490 "Zobrazit zemìpisné souøadnice" 
     609491 "Zobrazit nadmoøskou výšku" 
     610492 "Save waypoint to each JPG" 
     611493 "GPX-Track - Time Interval           [s]" 
     612494 "GPX-Track Record                  Start" 
     613495 "GPX-Track Record                   Stop" 
     614496 "Quit showing Compass" 
     615497 "Quit showing navigation" 
     616498 "Waiting Time for GPS-Signal         [s]" 
     617499 "Compass    - Sample interval        [s]" 
     618500 "Navigation - Sample interval        [s]" 
     619501 "Time to change to play-mode         [s]" 
     620502 "Time to deactivate backlight        [s]" 
     621503 "Common Settings" 
     622504 "Sampling interval until GPS receipt.[s]" 
     623505 "Attenuation of compass           [1-40]" 
     624506 "Logging    - Settings" 
     625507 "Tagging    - Settings" 
     626508 "Navigation - Settings" 
     627509 "Shutdown at battery level       [0-99%]" 
     628510 "Delayed Tagging - Short string" 
     629511 "0 - 2D-3D Fix" 
     630512 "Blinking LED during Delayed Tagging" 
     631513 "Change to play-mode" 
     632514 "Shutdown backlight" 
     633515 "Change to play-mode" 
     634516 "Shutdown backlight" 
     635517 "Time to change to play-mode         [s]" 
     636518 "Time to deactivate backlight        [s]" 
     637519 "Zobrazit stav GPS" 
     638520 "Alert on low battery" 
     639521 "Set position as home location"  
     640522 "Bring me home                     Start" 
     641523 "Set position as current timezone" 
     642524 "Show track record symbol" 
     643525 "Bring me home                      Stop" 
     644526 "Check change of Timezone" 
     645527 "Audio Warnings                 [on/off]" 
     646528 "GPS - CHDK                     [on/off]" 
     647529 "Bez GPS!" 
     648530 "Timezone has changed!" 
     649531 "Battery below setting!" 
     650532 "Camera will shutdown in %02d seconds!" 
     651533 "Automatic shutdown cancelled!" 
     652534 "Camera will wait for GPS for %01d:%02d" 
     653535 "Navigation to Home Loc is not possible!" 
     654536 "Cant navigate to photo: %s!" 
     655537 "Distance:    = %i m" 
     656538 "Duration:    = %i:%i:%i" 
     657539 "Pace:        = %s km/h" 
     658540 "Direction:   = %i°" 
     659541 "Destination: = %i°" 
     660542 "Navigation to photo: %s started" 
     661543 "latitude=%s  -  longitude=%s " 
     662544 "heading = %i°" 
     663545 "Navigation to Home Loc started" 
     664//GPS Ende----------------------------------------- 
     665 
     666546 "Druhá alternativní MIN spouš" 
     667547 "Druhé alternativní MAX ISO (x10)" 
     668548 "Denní kompen. pøeexp." 
     669549 "Kompenzovat, když pøeexp.>= x%" 
     670 
     671550 "Pro storno [namáèknìte]" 
     672 
     673551 "Povolit start skriptu" 
     674 
     675552 "Zakázat tlaèítko asistence pøiblížení" 
     676 
     677553 "Verze DNG" 
     678554 "Nastavení menu" 
     679555 "Zobr. obrazovku nápov. <ALT>" 
     680556 "  Prodleva obraz. nápov." 
     681557 "Nastavení CHDK" 
     682 
     683// <ALT> mode help screen text 
     684558 "%-17s %-18s"                           // Header format, adjust if needed; but total len must be 35 
     685559 "Zkratky <ALT>"                       // Len must be <= first string in header format (17) 
     686560 "Namáèknutí +"                  // Len must be <= first string in header format (17) 
     687561 "MENU = Menu CHDK"                        // Len must be <= second string in header format (18) 
     688562 "MENU = Uživ. menu"                        // Len must be <= second string in header format (18) 
     689563 "SET/SPOUŠ = Menu/Spuštìní skriptu "   // Len must be <= 35 
     690564 "Fokus  %5s=Inf.  %5s=HyperFocal"       // Len must be <= 35 
     691565 "Manuální fokus" 
     692566 "Skrýt OSD CHDK pøi zmáèknutí" 
     693567 "  * - není k dispoz. v režimu <ALT>"   // Len must be <= 35 
     694 
     695568 "Položka '%s'\npøidána do uživatelského menu" 
     696569 "Uživatelské menu je plné" 
     697 
     698570 "SD karta" 
     699571 "Jazyk a písmo" 
     700 
     701572 "Ruèní blesk (výkon)" 
     702573 "Fast Ev step size" 
     703574 "Zobrazit NÁPOVÌDU" 
     704575 "Use popup to edit value" 
  • trunk/CHDK/SCRIPTS/EDITOR/EDI.lua

    r1361 r2073  
    11--[[ 
    22@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 
    56@param y Editor height 
    67@default y 14 
     8@range y 10 20 
    79@param x Editor width 
    810@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 
    1223--]] 
    1324--[[ 
    14     Version:    2.4 
    15     Author:     Pawel Tokarz aka Outslider 
    16     License:    GPL 3+; see: http://www.gnu.org/licenses/gpl-3.0.html 
     25    Version:    2.7 
     26    Author:     Pawel Tokarz aka outslider 
     27    License:    GPL 3+;see: http://www.gnu.org/licenses/gpl-3.0.html 
    1728                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 
    1934    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 
    2342 
    2443    More info you can find on CHDK Forum http://chdk.setepontos.com/index.php?topic=6465.0 
     
    3251--maximal x and y belong to the user 
    3352 
    34 if n>2 then 
     53if n>1 then 
    3554    print("Newline setting incorrect") 
    3655    print("Using Unix style [\\n]") 
    3756    print("Press any key...") 
    38     wait_click(60000) 
    39     n=2 
    40     end 
    41 if n<1 then 
     57    wait_click(0) 
     58    n=1 
     59    end 
     60if n<0 then 
    4261    print("Newline setting incorrect") 
    4362    print("Using Windows style [\\r\\n]") 
    4463    print("Press any key...") 
    45     wait_click(60000) 
    46     n=1 
    47     end 
    48  
    49 if n==1 then CR="\r" end 
    50 if n==2 then CR="" end 
     64    wait_click(0) 
     65    n=0 
     66    end 
     67 
     68if n==0 then CR="\r" end 
     69if n==1 then CR="" end 
    5170-- /CHECK GIVEN PARAMETERS -- 
    5271 
     
    5473CONSOLE_HEIGHT=y 
    5574CONSOLE_WIDTH=x 
    56 PATH="A/CHDK/SCRIPTS"  --where to open file_browser()? 
     75PATH="A"  --where to open file_browser()? 
    5776EXIT=false 
    5877SAVED='S'              --is file saved? 
     
    6786LETTER_NR=1 
    6887WRITE_KEY=0 
    69 EDI_VERSION="2.4" 
     88EDI_VERSION="2.5" 
    7089--which key does what? 
    7190FILE_MENU_BUTTON="menu" 
     
    7695INSERT_MAP={{"newline"},{"(",")","[","]","{","}"},{"<",">",",","'",":",";"},{"_","+","-","/","\\","="},{"@","!","?","#","\"","."},{"~","&","*","|","^","`"},{"ASCII code"}} 
    7796FUNCTION_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"}} 
     97FILE_MENU={{"Save"},{"Save and exit"},{"Save as..."},{"Exit (no save!)"},--[[{"Select..."},#for selecting]]{"Clear whole file"},{"About EDI"}} 
    7998TOPBAR="EDI - Text editor" 
    8099STATUSBAR="statbar" 
    81100FILENAME="" 
     101FILE_CONTENT={} 
     102KEYS_TABLE={"left","up","right","down","set","shoot_half","shoot_full","menu","display","erase","zoom_in","zoom_out"} 
     103REPEATABLE_KEYS_TABLE={"left","up","right","down","zoom_out","zoom_in"} 
     104SAVE_DIRS={{"A"},{"A/CHDK"},{"A/CHDK/SCRIPTS"},{"Cancel"}} 
     105WAIT_TIME=0--#for selecting 
     106DEBBUG="ok" 
    82107-- /CONFIGURATION -- 
    83108 
    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"} 
     109function get_input(keys_table,repeatable_keys_table,wait_time,repeat_delay) 
    87110    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] 
    90114            end 
    91115        end 
    92116    if PRESSED_KEY~=nil then 
    93117        repeat 
    94             if get_tick_count()-PRESSED_TIME>350 then sleep(100); return PRESSED_KEY end  
     118            if get_tick_count()-PRESSED_TIME>350 then sleep(100);return PRESSED_KEY end  
    95119            until not is_pressed(PRESSED_KEY) 
    96120        end 
    97     wait_click(60000) 
     121    wait_click(wait_time) 
    98122    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 
     129function new_file() 
     130   FILE_CONTENT={""} 
     131   FILE_LINESN=1 
     132   end 
     133 
     134function 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 
    102142    end 
    103143 
     
    107147 
    108148function load_file() 
     149    if s==1 then 
     150        PATH="A/CHDK/SCRIPTS" 
     151        end 
    109152    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 
    129178    end 
    130179 
     
    137186    if SHIFT_Y<0 then SHIFT_Y=0 end 
    138187    print(mk_bar(TOPBAR,CONSOLE_WIDTH)) 
    139     for line_nr=1, CONSOLE_HEIGHT-3 do 
     188    for line_nr=1, CONSOLE_HEIGHT-2 do 
    140189        if FILE_CONTENT[line_nr+SHIFT_Y]==nil then 
    141190            draw_line="" 
     
    155204 
    156205function 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.." " 
    160208    edi_draw() 
    161     input=get_input() 
     209    input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE, WAIT_TIME) 
    162210    if input=="set" then MODE="WRITE" end 
    163211    if input=="up" then 
     
    173221    if input=="left" then 
    174222        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]) end 
     223        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 
    177225        end 
    178226    if input=="right" then 
    179227        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=0 
    181         elseif POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y>=FILE_LINESN then POS_Y=1; POS_X=0 end 
     228        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 
    182230        end 
    183231    if input=="zoom_in" then 
    184232        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=0 
    186         elseif POS_X>string.len(FILE_CONTENT[POS_Y]) and POS_Y>=FILE_LINESN then POS_Y=1; POS_X=0 end 
     233        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 
    187235        end 
    188236    if input=="zoom_out" then 
    189237        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 
    192244        end 
    193245    if input==CHANGE_SUBMODE_BUTTON then JUMP=JUMP+1 end 
    194246    if JUMP>table.getn(JUMPS) then JUMP=1 end 
    195247    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) 
    197249        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 
    200254        if todo=="Clear whole file" then clear() end 
    201255        if todo=="About EDI" then about() end 
     
    214268    write_mode_descript=write_mode_descript.."\6" 
    215269    STATUSBAR=write_mode_descript 
    216     TOPBAR="EDI \6 "..FILENAME.." ["..SAVED.."] " 
     270    TOPBAR="EDI \6 "..FILENAME.." ["..SAVED.."] "..DEBBUG.." " 
    217271    insertion="" 
    218272    edi_draw() 
    219     input=get_input() 
     273    input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE,WAIT_TIME) 
    220274    if input==CHANGE_SUBMODE_BUTTON then 
    221275        WRITE_SUBMODE=WRITE_SUBMODE+1 
     
    223277        if WRITE_SUBMODE>table.getn(KEYMAP) then WRITE_SUBMODE=1 end 
    224278        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="!" end 
     279    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 
    235289    if input=="zoom_out" or(input=="erase" and ERASE_AS_SPACE[WRITE_SUBMODE]~=true) then 
    236290        SAVED="!" 
    237291        if POS_X>0 then 
    238             WRITE_KEY=0; delete=1 
     292            WRITE_KEY=0;delete=1 
    239293        elseif POS_X==0 and POS_Y>1 then 
    240294            POS_X=string.len(FILE_CONTENT[POS_Y-1]) 
     
    254308        end 
    255309    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="" 
    257311        end 
    258312    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) end 
    262         if insertion==nil then insertion=""; SAVED="S" end 
     313        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 
    263317        if insertion=="newline" then 
    264318            insertion="" 
     
    275329        end 
    276330    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) 
    279333        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 
    282337        if todo=="Clear whole file" then clear() end 
    283338        if todo=="About EDI" then about() end 
    284339        end 
     340    if input==nil then WRITE_KEY=0;insertion="" end 
    285341    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])) 
    286342    POS_X=POS_X+string.len(insertion)-delete 
     
    305361            print() 
    306362            end 
    307         input=get_input() 
     363        input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE) 
    308364        if input=="right" then pos=pos+1 end 
    309365        if input=="left" then pos=pos-1 end 
     
    315371        if code[pos]<0 then code[pos]=9 end 
    316372        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. 
    318374        if ascii<256 and ascii>0 then mass="character: "..string.char(ascii) else mass="bad value" end 
    319375        if input=="set" then 
     
    323379                end 
    324380            end 
     381--        if input 
    325382        until exit_loop==true 
    326383    end 
    327384 
    328 function menu(tab,width,height,header,item_width) 
     385function menu(tab,width,height,header,item_width,top_lines) 
    329386    set_console_autoredraw(0) 
    330387    menu_pos_y=1 
     
    335392    if height==nil then print("NO HEIGHT GIVEN!");sleep(3000);return false end 
    336393    if width==nil then print("NO WIDTH GIVEN!");sleep(3000);return false end 
     394    if top_lines==nil then top_lines=0 end 
    337395    repeat 
    338396        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 
     
    341399        if menu_pos_y>table.getn(tab) then menu_pos_y=1 end 
    342400        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 end 
     401        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 
    344402        if menu_pos_y>height-4+menu_shift then menu_shift=menu_pos_y-height+4 end 
    345403        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 
    346407        print(mk_bar(header,width)) 
    347         for line=1,height-3 do 
     408        for line=1,--[[height-3-top_lines]] table.getn(tab) do 
    348409            if tab[line+menu_shift]==nil then 
    349410                draw_line="" 
     
    353414                    item=tab[line+menu_shift][place] 
    354415                    if item_width~=nil then item=item..string.sub("                         ",1,item_width-string.len(item)) end 
     416 
    355417                    if menu_pos_x~=place then draw_line=draw_line.." "..item.." " end 
    356418                    if menu_pos_x==place then draw_line=draw_line.."\16"..item.."\17" end 
     
    367429            end 
    368430        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) 
    370435        if input=="up" then menu_pos_y=menu_pos_y-1 end 
    371436        if input=="down" then menu_pos_y=menu_pos_y+1 end 
    372437        if input=="left" then menu_pos_x=menu_pos_x-1 end 
    373438        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] end 
    375         if input==INSERT_MENU_BUTTON or input==FILE_MENU_BUTTON then exit_menu=true; return nil end 
     439        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 
    376441        until exit_menu==true 
    377442    end 
     
    381446    console_redraw() 
    382447    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") 
    403473    file_h=io.open(file,"w") 
    404474    if (not file_h) then 
    405475        print("Error opening files") 
     476        print("Press any key") 
     477        wait_click(0) 
    406478        return 
    407479        end 
     
    413485    SAVED="S" 
    414486    print("The file has been saved") 
    415     sleep(2000) 
     487    sleep(1200) 
    416488    end 
    417489     
    418 function exit() 
     490function save_as() 
     491    file_tmp=file 
     492    file=nil 
     493    save() 
     494    if file==nil then file=file_tmp end 
     495    end 
     496     
     497function restore() 
    419498    cls() 
    420499    print("EDI has been terminated.") 
    421500    set_console_autoredraw(1) 
    422     set_console_layout(1,1,26,6) -- not sure if these are good values 
     501    set_console_layout(0,0,25,5) -- Thx, msl! 
    423502    EXIT=true 
    424503    end 
    425504     
    426505function 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="!" end 
     506    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 
    429508    end 
    430509     
     
    440519    print("  Author:  Pawel Tokarz") 
    441520    print("  Thanks:  waterwingz, truhli_fredy,") 
    442     print("           philmoz, reyalp") 
     521    print("           philmoz, reyalp & others") 
    443522    print("   ") 
    444523    print("  More info in README.TXT file") 
     
    448527    exit_about=false 
    449528    repeat 
    450         input=get_input() 
     529        input=get_input(KEYS_TABLE,REPEATABLE_KEYS_TABLE) 
    451530        if input==FILE_MENU_BUTTON then exit_about=true end 
    452531        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="!" end 
    455532    end 
    456533 
    457534function main_loop() 
     535    DEBBUG=0 
    458536    insertion="" 
    459537    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 
    461540        if MODE=="WRITE" then edi_write() end 
    462541        until EXIT==true 
    463542    end 
    464543 
    465 set_console_layout(1,1,CONSOLE_WIDTH,CONSOLE_HEIGHT) 
     544set_console_layout(0,0,CONSOLE_WIDTH,CONSOLE_HEIGHT) 
    466545set_console_autoredraw(0) 
    467 load_file() 
    468 main_loop() 
    469  
     546if a==1 then 
     547    new_file() 
     548    else 
     549    load_file() 
     550    end 
     551if EXIT~=true then main_loop() end 
     552 
  • trunk/CHDK/SCRIPTS/EDITOR/README.TXT

    r1361 r2073  
    22'Emacs your camera!' 
    33 
     4Documentation for version 2.7 based on documentation for 2.6. 
    45 
    560. ABOUT 
     
    89     
    910    **** 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 
    1115     
    1216 
     
    1519    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. 
    1620 
     21    SOME PARTS OF THIS DOCUMENTATION MIGHT BE OUTDATED OR CONTAIN BUGS. 
    1722 
    1823 
     
    7176    MENU                - open FILE MENU which is described below. 
    7277    SET                 - end MOVE mode and go into a WRITE mode. 
     78    ERASE               - move to the begin of the file. 
    7379 
    7480    SHOOT_FULL          - END THE SCRIPT WITHOUT ANY SAVES!!! 
     
    9096    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: 
    9197     
    92     press LEFT to get letters:  a, b, c, d, e or f 
    93     press UP to get letters:    g, h, i, j, k or l 
    94     press RIGHT to get letters: m, n, o, p, q, r or s 
    95     press DOWN to get letters:  t, u, v, w, x, y or z 
     98    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 
    96102     
    97103    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. 
  • trunk/core/gui.c

    r2068 r2073  
    18901890    static const char* names[]={ "Video", "Display", "Playback", "Video"}; 
    18911891    static const int keys[] = {KEY_PRINT, KEY_DISPLAY, KEY_PLAYBACK, KEY_VIDEO}; 
    1892 #elif defined(CAMERA_ixus115_elph100hs)  
     1892#elif defined(CAMERA_ixus115_elph100hs) 
    18931893    static const char* names[]={ "Playback", "Video", "Set+ZoomIn" }; 
    18941894    static const int keys[] = {KEY_PLAYBACK, KEY_VIDEO, KEY_SET | KEY_ZOOM_IN }; 
    1895 #elif defined(CAMERA_ixus120_sd940)  
    1896     static const char* names[]={ "Display", "Playback" };  
     1895#elif defined(CAMERA_ixus300_sd4000) 
     1896    static const char* names[]={ "Playback", "Up + Left" }; 
     1897    static const int keys[] = {KEY_PLAYBACK, KEY_UP | KEY_LEFT }; 
     1898#elif defined(CAMERA_ixus120_sd940) || (CAMERA_ixus100_sd780) || defined(CAMERA_ixus105_sd1300) 
     1899    static const char* names[]={ "Display", "Playback" }; 
    18971900    static const int keys[] = {KEY_DISPLAY, KEY_PLAYBACK }; 
    18981901#else 
  • trunk/platform/a580/notes.txt

    r1325 r2073  
    1212NOTES: 
    1313Half Shutter + Left - Sets AFL 
    14 Half Shutter + Right - Toogle OSD on/off 
     14Half Shutter + Right - Show OSD (On / Off) 
    1515Half Shutter + Up - Sets AEL 
    16 Half Shutter + Down - Toggle Histogram (Don't / Always / Shoot) 
    17 Half Shutter + Menu - Toggle Zebra on/off 
    18 Half Shutter + Display - Disable overrides 
     16Half Shutter + Down - Disable overrides (Yes / No) 
     17Half Shutter + Menu - Show Live Histogram (Don't / Always / Shoot) 
     18Half Shutter + Display - Draw Zebra (On / Off) 
    1919 
    2020In Alt: 
    21 Display - Toogle RAW on/off 
    22 Up - Toogle MF 
     21Display - Save RAW (DNG /Off) 
     22Up - Manual Focus (On / Off) 
    2323 
    2424In ALT + Manual mode: 
    25 Display - Sets Infinity 
    26 Down - Sets Hyperfocal 
     25Display - Sets Infinity Focus 
     26Down - Sets HyperFocal Focus 
    2727------- 
    2828Adjustable Alt button supported. 
     
    4444PLEASE TEST: 
    4545------- 
    46 Curves: Seems it works, please test!!! 
    47 ------- 
    4846SDHC 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...) 
    4947 
  • trunk/platform/a580/platform_camera.h

    r1696 r2073  
    4646 
    4747    #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         
    4852    // pattern 
    4953    #define cam_CFAPattern                  0x01000201 // Green  Blue  Red  Green 
  • trunk/platform/ixus100_sd780/kbd.c

    r2021 r2073  
    2121static KeyMap keymap[]; 
    2222static long last_kbd_key = 0; 
     23static long alt_mode_key_mask = 0x00000008; 
    2324 
    2425static int aCount=0; 
     
    123124        } 
    124125 
     126} 
     127 
     128void 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        } 
    125137} 
    126138 
     
    308320 
    309321        //SD780 - Keymap 
    310         { 0, KEY_UP                 , 0x00000008 }, 
     322        { 0, KEY_UP             , 0x00000008 }, 
    311323        { 0, KEY_DOWN           , 0x00000004 }, 
    312324        { 0, KEY_LEFT           , 0x00000001 }, 
    313325        { 0, KEY_RIGHT          , 0x00000002 }, 
    314326 
    315  
    316327        { 1, KEY_SET            , 0x00004000 }, 
    317 //      { 1, KEY_PLAY           , 0x00080000 },  //SD780 Play button 
    318328        { 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 
    320332 
    321333        //xxxf --> xxxd when in movie mode by switch 
    322334        //xxxxxxx4 --> xxxxxxx5 when in lens extended recording mode 
    323335 
    324  
    325336        { 2, KEY_SHOOT_FULL     , 0x00001001 }, 
    326     { 2, KEY_SHOOT_FULL_ONLY, 0x00001000 }, 
     337        { 2, KEY_SHOOT_FULL_ONLY, 0x00001000 }, 
    327338        { 2, KEY_SHOOT_HALF     , 0x00000001 }, 
    328339        { 2, KEY_ZOOM_IN        , 0x00004000 }, 
    329340        { 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 }, 
    333342        { 0, 0, 0 } 
    334343}; 
  • trunk/platform/ixus100_sd780/notes.txt

    r876 r2073  
    55ND filter only, NO iris 
    66 
     7<ALT> key is user defined.  Default is a short press on the Playback key. Can also be set to the DISP key. 
    78 
    89*** Features known BROKEN or NOT supported: 
  • trunk/platform/ixus100_sd780/platform_camera.h

    r1719 r2073  
    3434    #undef  CAM_HAS_MANUAL_FOCUS 
    3535    #undef  CAM_HAS_USER_TV_MODES 
     36 
     37    #define CAM_ADJUSTABLE_ALT_BUTTON       1 
    3638 
    3739    #undef  CAM_REMOTE 
  • trunk/platform/ixus105_sd1300/kbd.c

    r2021 r2073  
    1111} KeyMap; 
    1212 
    13 static long kbd_new_state[3]; 
    14 static long kbd_prev_state[3]; 
    15 static long kbd_mod_state[3]; 
     13static long kbd_new_state[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; 
     14static long kbd_prev_state[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; 
     15static long kbd_mod_state[3] = { 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF }; 
    1616 
    1717static long last_kbd_key = 0; 
    1818extern void _GetKbdState(long*); 
    1919 
    20 #define KEYS_MASK0 (0x00000500) 
     20#define KEYS_MASK0 (0x00000700) 
    2121#define KEYS_MASK1 (0x38000000) 
    2222#define KEYS_MASK2 (0x00005C0B) 
     
    3636} 
    3737 
     38// Keymap values for kbd.c. Additional keys may be present, only common values included here. 
    3839static 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 } 
    5956}; 
    6057 
    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  
    7558long __attribute__((naked,noinline)) wrap_kbd_p1_f() 
    7659{ 
    77  
    7860        asm volatile( 
    7961                "STMFD   SP!, {R1-R5,LR}\n" 
     
    8567} 
    8668 
     69static 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 
     80void __attribute__((naked,noinline)) mykbd_task() 
     81{ 
     82        mykbd_task_proceed(); 
     83        _ExitTask(); 
     84} 
    8785 
    8886void my_kbd_read_keys() 
     
    9391 
    9492        _GetKbdState(kbd_new_state); 
    95         _kbd_read_keys_r2(kbd_new_state); 
    9693 
    9794        if (kbd_process() == 0){ 
     
    107104        } 
    108105 
     106        _kbd_read_keys_r2(kbd_new_state); 
     107 
    109108        usb_remote_key(); 
    110109 
     
    121120/****************/ 
    122121 
     122void kbd_set_alt_mode_key_mask(long key) 
     123{ 
     124    // not needed 
     125} 
     126 
    123127void kbd_key_press(long key) 
    124128{ 
    125129        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                { 
    128134                        kbd_mod_state[keymap[i].grp] &= ~keymap[i].canonkey; 
    129135                        return; 
  • trunk/platform/ixus105_sd1300/lib.c

    r1833 r2073  
    44void vid_bitmap_refresh() 
    55{ 
     6/*  NOTE: This was the old method, i think the new one performs better 
    67    extern int enabled_refresh_physical_screen; 
    78    enabled_refresh_physical_screen=1; 
    89    _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(); 
    918} 
    1019 
     
    4453} 
    4554 
    46 int vid_get_viewport_width() 
    47 { 
    48         return 360; 
    49 } 
    50  
    5155long vid_get_viewport_height() 
    5256{ 
     
    5458} 
    5559 
    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  
  • trunk/platform/ixus105_sd1300/notes.txt

    r1833 r2073  
    22Digic IV, dryos r43 
    33 
    4 Untested alpha port of alpha SDM code from http://chdk.setepontos.com/index.php?topic=5720.690 
    5  
    6 tested (not clear which build or by who): 
    7 - loading, drawing 
    8 - some lua stuff 
    9 - exp override 
    10  
    114current issues/unfeatures: 
    12 - load script = camera shutdown 
    13 - save raw = camera shutdown (some stub must be wrong)  
    145- no video override 
    15 - edge overlay works but disappears soon 
    16 - zebra doesn't seem to be working 
    17 - some other overrides does not seem to work correctly 
    186- modemap is incomplete/incorrect (see stubs_entry.S) 
  • trunk/platform/ixus105_sd1300/platform_camera.h

    r1833 r2073  
    2929    #define CAM_UNCACHED_BIT  0x40000000 // Found @0xffc29e80 
    3030    #define CAM_PROPSET                 3 
    31     #define CAM_NEED_HP                 1 
    3231    #define CAM_MULTIPART               1 
    33     #define CAM_HAS_PLAYBACK_PB         1 
    34     #define CAM_MOVIE_PLE               1 
    35     #define CAM_USES_EXMEM              1 
    36     #define CAM_USE_SET_BUTTON          1  
    3732    #undef  CAM_HAS_MANUAL_FOCUS 
    3833    #undef  CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO 
     
    4035    #undef  CAM_VIDEO_CONTROL 
    4136    #undef  CAM_USE_ZOOM_FOR_MF 
    42     #undef CAM_HAS_ERASE_BUTTON 
    43     #define  CAM_SHOW_OSD_IN_SHOOT_MENU  1 
     37    #undef  CAM_HAS_ERASE_BUTTON 
     38    #define CAM_SHOW_OSD_IN_SHOOT_MENU  1 
    4439    #define CAM_EXT_TV_RANGE            1 
    4540    #define CAM_HAS_ND_FILTER           1 
    4641 
    47     // pattern 
     42    // pattern // TODO: 
    4843    #define cam_CFAPattern 0x02010100 // Red  Green  Green  Blue 
    49     // color 
    50  
     44    // color  // TODO: 
    5145    #define CAM_COLORMATRIX1                               \ 
    5246      827547, 1000000, -290458, 1000000, -126086, 1000000, \ 
     
    5448      5181,   1000000, 48183,   1000000, 245014,  1000000 
    5549 
    56     #define cam_CalibrationIlluminant1 1 // Daylight 
     50    #define cam_CalibrationIlluminant1 1 // Daylight  // TODO: 
    5751    // cropping 
    5852    #define CAM_JPEG_WIDTH  3648 
     
    6660    #define PARAM_CAMERA_NAME 4 // parameter number for GetParameterData 
    6761    #undef  CAM_SENSOR_BITS_PER_PIXEL 
    68     #undef  CAM_WHITE_LEVEL 
    69     #undef  CAM_BLACK_LEVEL 
    7062    #define CAM_SENSOR_BITS_PER_PIXEL   12 
    71     #define CAM_WHITE_LEVEL             ((1<<CAM_SENSOR_BITS_PER_PIXEL)-1) 
    72     #define CAM_BLACK_LEVEL             127 
    73      
    7463 
     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 
  • trunk/platform/ixus105_sd1300/sub/100d/boot.c

    r1833 r2073  
    88const char * const new_sa = &_end; 
    99 
     10extern void task_PhySw(); 
    1011extern void task_CaptSeq(); 
    1112extern void task_InitFileModules(); 
     
    1718{  
    1819        task_t *tcb=(task_t*)((char*)context-offsetof(task_t, context)); 
    19  
    2020        // Replace firmware task addresses with ours 
     21        if(tcb->entry == (void*)task_PhySw)             tcb->entry = (void*)mykbd_task;  
    2122        if(tcb->entry == (void*)task_CaptSeq)                   tcb->entry = (void*)capt_seq_task;  
    2223        if(tcb->entry == (void*)task_InitFileModules)   tcb->entry = (void*)init_file_modules_task; 
     
    2728void CreateTask_spytask() { 
    2829        _CreateTask("SpyTask", 0x19, 0x2000, core_spytask, 0); 
    29         //_CreateTask("InitCHDKPTP", 0x19, 0x2000, init_chdk_ptp, 0); 
    3030}; 
    3131 
     
    292292} 
    293293 
     294void __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 
    294312void __attribute__((naked,noinline)) task_Startup_my() { 
    295313     asm volatile ( 
     
    298316                 "BL      sub_ffc25418\n" 
    299317                 "BL      sub_ffc23638\n" 
    300                  "BL      sub_ffc2b744\n" //  was commented in a480 
     318                 "BL      sub_ffc2b744\n" 
    301319                 "BL      sub_ffc2b930\n" 
    302320                 //"BL      sub_ffc2b7d8\n"    // This should be the DISKBOOT start 
     
    305323                 "BL      sub_ffc2b960\n" 
    306324                 "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"        // + 
    310329                 "BL      sub_ffc27744\n" 
    311330                 "BL      sub_ffc2bae8\n" 
    312                  "BL      sub_ffc216a8\n" // was commented in a480 
     331                 "BL      sub_ffc216a8\n" 
    313332                 "BL      sub_ffc23090\n" 
    314333                 "BL      sub_ffc2b4e0\n" 
  • trunk/platform/ixus105_sd1300/sub/100d/capt_seq.c

    r1833 r2073  
    9595                 "B       loc_ffc5fd00\n" 
    9696"loc_ffc5faf8:\n" 
     97                 "BL      shooting_expo_iso_override\n"                     // added 
    9798                 "BL      sub_ffc6033c\n" 
    98                  "BL      tv_override\n" // added 
     99                 "BL      shooting_expo_param_override\n"               // added 
    99100                 "BL      sub_ffc5db3c\n" 
    100 // copied over from SX10/SX200 
    101 // 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 press 
    105 // end of added code 
    106101                 "LDR     R0, [R4,#0x24]\n" 
    107102                 "CMP     R0, #0\n" 
     
    984979                 "BLEQ    sub_FFC0EB14\n" 
    985980                 "MOV     R0, R4\n" 
    986                  "BL      sub_FFD8F4B8\n" 
    987             //   "BL      apex2us\n"  // + 
     981            //     "BL      sub_FFD8F4B8\n" // - 
     982                 "BL      apex2us\n"  // + 
    988983                 "MOV     R4, R0\n" 
    989984                 // "BL      nullsub_65\n" 
  • trunk/platform/ixus105_sd1300/sub/100d/lib.c

    r1833 r2073  
    1414} 
    1515 
     16void *vid_get_viewport_live_fb() //TODO: 
     17{ 
     18  return (void*)vid_get_viewport_fb(); 
     19} 
  • trunk/platform/ixus105_sd1300/sub/100d/stubs_auto.S

    r1833 r2073  
    1313STUB(FFC0A244) 
    1414STUB(FFC0EB14) 
     15STUB(FFC2422C) 
     16STUB(FFC2423C) 
    1517STUB(FFC2936C) 
    1618STUB(FFC29BB4) 
  • trunk/platform/ixus105_sd1300/sub/100d/stubs_entry.S

    r1833 r2073  
    88 
    99// Values for makefile.inc 
     10//   PLATFORMOSVER = 43 
    1011//   PLATFORMID = 12788 (0x31f4) // Found @ 0xfffe0130 
    1112//   MAXRAMADDR = 0x03ffffff 
     
    3233DEF(physw_status                            ,0x0002f100) // Found @0xffc24574 
    3334DEF(physw_run                               ,0x00001c2c) // Found @0xffc241d8 
     35DEF(physw_sleep_delay                       ,0x00001c2a) // Found @0xffc241d8 
    3436DEF(levent_table                            ,0xffec0320) // Found @0xffec0320 
    3537DEF(FlashParamsTable                        ,0xffefa0e8) // Found @0xffefa0e8 
     
    6163// Keymap values for kbd.c. Additional keys may be present, only common values included here. 
    6264//static KeyMap keymap[] = { 
     65//    { 0, KEY_PLAYBACK        ,0x00000100 }, // Found @0xffea7a88, levent 0x601 
     66//    { 0, KEY_POWER           ,0x00000200 }, // Found @0xffea7a94, levent 0x600 
    6367//    { 0, KEY_MENU            ,0x00000400 }, // Found @0xffea7aa0, levent 0x09 
    6468//    { 1, KEY_LEFT            ,0x08000000 }, // Found @0xffea7adc, levent 0x06 
    6569//    { 1, KEY_ZOOM_OUT        ,0x10000000 }, // Found @0xffea7ae8, levent 0x03 
    6670//    { 1, KEY_ZOOM_IN         ,0x20000000 }, // Found @0xffea7af4, levent 0x02 
     71//    { 2, KEY_SET             ,0x00000001 }, // Found @0xffea7b00, levent 0x08 
    6772//    { 2, KEY_DOWN            ,0x00000002 }, // Found @0xffea7b0c, levent 0x05 
    68 //    { 2, KEY_SHOOT_FULL      ,0x00005000 }, // Found @0xffea7b3c, levent 0x01 
    69 //    { 2, KEY_SHOOT_HALF      ,0x00004000 }, // Found @0xffea7b48, levent 0x00 
    70 //    { 2, KEY_SET             ,0x00000001 }, // Found @0xffea7b00, levent 0x08 
    71 //    { 2, KEY_SHOOT_FULL_ONLY ,0x00001000 }, // Found @0xffea7b3c, levent 0x01 
    7273//    { 2, KEY_DISPLAY         ,0x00000008 }, // Found @0xffea7b18, levent 0x0a 
    7374//    { 2, KEY_RIGHT           ,0x00000400 }, // Found @0xffea7b24, levent 0x07 
    7475//    { 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 
    7579//    { 0, 0, 0 } 
    7680//}; 
     
    101105NSTUB(DoAFLock                                ,0xffc27fe0) //102 
    102106NSTUB(EnterToCompensationEVF                  ,0xffc28090) //104 
    103 NSTUB(ExecuteEventProcedure                   ,0xffc6cef0) //  1 
     107NSTUB(ExecuteEventProcedure                   ,0xffc6cef0) //  2 
    104108NSTUB(ExitFromCompensationEVF                 ,0xffc280d4) //104 
    105109NSTUB(ExitTask                                ,0xffc0eacc) //101 
     
    120124NSTUB(GetCurrentAvValue                       ,0xffd14ed4) //102 
    121125NSTUB(GetDrive_ClusterSize                    ,0xffc55b18) //  4 
    122 NSTUB(GetDrive_FreeClusters                   ,0xffc24258) //  3 
    123 // ALT: NSTUB(GetDrive_FreeClusters, 0xffc55b78) // 4 9/0 
    124126NSTUB(GetDrive_TotalClusters                  ,0xffc55b4c) //  3 
    125127NSTUB(GetFocusLensSubjectDistance             ,0xffd14174) //102 
     
    132134NSTUB(GetPropertyCase                         ,0xffc70bfc) //102 
    133135NSTUB(GetSystemTime                           ,0xffe1bd7c) //101 
     136NSTUB(GetVRAMHPixelsSize                      ,0xffcbe1e8) //102 
     137NSTUB(GetVRAMVPixelsSize                      ,0xffcbe1f4) //102 
    134138NSTUB(GetZoomLensCurrentPoint                 ,0xffd17f9c) //102 
    135139NSTUB(GetZoomLensCurrentPosition              ,0xffe134c8) //102 
  • trunk/platform/ixus105_sd1300/sub/100d/stubs_entry_2.S

    r1833 r2073  
    99NHSTUB(SetZoomActuatorSpeedPercent, NULL_SUB) 
    1010 
     11NHSTUB(GetDrive_FreeClusters, 0xffc55b78) 
  • trunk/platform/ixus300_sd4000/kbd.c

    r2021 r2073  
    2222#define KEYS_MASK1 (0x00000FF0)     // physw_status[1], override 0xF0 (keys) + 0xF00 (feather) 
    2323#define KEYS_MASK2 (0x00000000)     // physw_status[2] 
    24 //static long alt_mode_key_mask = 0x00000000;   // we use two Keys, no need to override 
     24static long alt_mode_key_mask = 0x00000000; 
    2525 
    2626#define SD_READONLY_FLAG    (0x00020000)    // SD-Card Lock Status (locked / unlocked) 
     
    108108} 
    109109 
     110void 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} 
    110120 
    111121void kbd_key_press(long key) { 
     
    283293    { 0, KEY_LEFT       , 0x00000008 }, 
    284294    { 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) 
    286298    { 0, KEY_SHOOT_FULL , 0x00000900 },   // 0x00000800 (KEY_SHOOT_FULL_ONLY) + 0x00000100 (KEY_SHOOT_HALF) 
    287299    { 0, KEY_SHOOT_FULL_ONLY, 0x00000800 }, 
    288300    { 0, KEY_SHOOT_HALF , 0x00000100 }, 
     301    { 1, KEY_SET        , 0x00000040 }, 
    289302    { 1, KEY_ZOOM_IN    , 0x00000010 }, 
    290303    { 1, KEY_ZOOM_OUT   , 0x00000020 }, 
    291304    { 1, KEY_MENU       , 0x00000080 }, 
    292     { 0, KEY_PRINT      , 0x0000000C },   // ALT Key workaround: KEY_UP + KEY_LEFT (camera has no print key) 
    293305    { 0, 0, 0 } 
    294306}; 
  • trunk/platform/ixus300_sd4000/notes.txt

    r1654 r2073  
    2323 
    2424--- CHDK ALT Mode --------------------------------------------------- 
    25 To enter CHDK ALT mode press LEFT + UP on JogDial (Camera has no special button like Print for CHDK). 
     25Camera has a user defined <ALT> key.  Default is a short press on the Playback button. Alternative is tp 
     26press LEFT + UP on JogDial (Camera has no special button like Print for CHDK). 
    2627 
    2728 
  • trunk/platform/ixus300_sd4000/platform_camera.h

    r1779 r2073  
    5353    #define CAM_DATE_FOLDER_NAMING          1 
    5454    //#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      // ToDo 
     55    #define CAM_ADJUSTABLE_ALT_BUTTON       1       
    5656 
    5757    #define PARAM_CAMERA_NAME               4        // parameter number for GetParameterData to get camera name 
Note: See TracChangeset for help on using the changeset viewer.