Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
— |
unicard:firmware [2018/10/14 22:47] (aktuální) |
||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | ====== Firmware ====== | ||
+ | ---- | ||
+ | ===== Název souboru s firmware ===== | ||
+ | |< 100% >| | ||
+ | || @red: | | ||
+ | <tab>Firmware Unicard je distribuován v souborech "unicard.app". Pokud je za "unicard" ještě další text, označuje tento text typ počítače, pro který je firmware určený. V současné době (07/2018) jsou rozpracované firmware Unicard pro 4 druhy počítačů SHARP: | ||
+ | |< 50% 20% >| | ||
+ | ^ typ počítače ^ název firmware ^ | ||
+ | | MZ700 EU |@#D6EFC2:<wrap download>{{:unicard:firmware:unicard700_EU.zip}}</wrap>| | ||
+ | | MZ700 JP |@#D6EFC2:<wrap download>{{:unicard:firmware:unicard700_JP.zip}}</wrap>| | ||
+ | | MZ800 |@#D6EFC2:<wrap download>{{:unicard:firmware:unicard800.zip}}</wrap>| | ||
+ | | MZ1500 |@#D6EFC2:<wrap download>{{:unicard:firmware:unicard1500.zip}}</wrap>| | ||
+ | <WRAP round tip>\\ Při update firmware je třeba pracovat s extrahovanými soubory **unicard*.app**.</WRAP> | ||
+ | ---- | ||
+ | ===== Update firmware ===== | ||
+ | |< 100% >| | ||
+ | || @red: | | ||
+ | <tab>Update firmware provádí Unicard a nepotřebujeme pro něj JTAG programátor. Stačí mít v počítači SHARP Unicard s připravenou SD kartou a pokud se parametry stávajícího firmware Unicard liší od nového firmware na SD kartě, po zapnutí počítače provede bootloader Unicard update firmware automaticky. | ||
+ | ==== Příprava SD karty ==== | ||
+ | - naformátujeme SD kartu na souborový systém FAT32 | ||
+ | - vybereme podle typu počítače správný firmware (//unicard700_EU.app, unicard700_JP.app, unicard800.app, unicard1500.app//) | ||
+ | - nakopírujeme firmware do rootu SD karty | ||
+ | - přejmenujeme firmware na ** unicard.app ** | ||
+ | ==== Update ==== | ||
+ | <tab>Vložíme SD kartu do počítače SHARP a zapneme ho. Pokud je vše v pořádku, objeví se na obrazovce monitoru informace o průběhu update. Po jeho ukončení proběhne standardní boot počítače. Soubor **unicard.app** můžeme ponechat v rootu SD karty. Pokud bootloader Unicard zjistí shodu parametrů stávajícího firmware s firmware na SD kartě, update neprovede. | ||
+ | |||
+ | [{{unicard:firmware:unicardfw_update.jpg|//Průběh update firmware Unicard//}}] | ||
+ | ==== Omezení při update firmware ==== | ||
+ | <tab>Pro update firmware platí dvě omezení: | ||
+ | * musí souhlasit kontrolní součet firmware | ||
+ | * parametry nového firmware se musí lišit od parametrů aktuálního firmware Unicard | ||
+ | |||
+ | <WRAP round tip>\\ V případě potřeby lze tedy bez problémů provádět i update starší verze firmware přes novější.</WRAP> | ||
+ | ---- | ||
+ | ===== Struktura souborů s firmware ===== | ||
+ | |< 100% >| | ||
+ | || @red: | | ||
+ | <tab>Každý soubor obsahující firmware Unicard se skládá z hlavičky délky 512 byte a vlastního zakódovaného firmware. | ||
+ | [{{unicard:firmware:unicardfw_head_hex.jpg|//Hlavička ve firmware Unicard//}}] | ||
+ | ==== Popis struktury hlavičky ==== | ||
+ | ^ Offset ^ Význam ^ Obsah ^ Délka ^ | ||
+ | | 0 byte | identifikační signatura | @#00a2e8:<color white>**UNICARD_**</color> | 8 byte | | ||
+ | | 9 byte | verze | @#00a2e8:<color white>**n**</color> | 1 byte | | ||
+ | | 10 byte | oddělovač verze a subverze | @#00a2e8:<color white>**.**</color> | 1 byte | | ||
+ | | 11 byte | subverze | @#00a2e8:<color white>**nn**</color> | 2 byte | | ||
+ | | 13 byte | velikost souboru včetně hlavičky (unsigned long) | @#00a2e8:<color white>** nn nn nn nn**</color> | 4 byte | | ||
+ | | 17 byte | kontrolní součet souboru firmware (unsigned long) | @#00a2e8:<color white>** nn nn nn nn**</color> | 4 byte | | ||
+ | | 21 byte | CR LF | @#00a2e8:<color white>**0D0A**</color> | 2 byte | | ||
+ | | 23 byte | identifikace počítače **MZ_ID** - v současné době: <WRAP> | ||
+ | * // MZ700_EU// | ||
+ | * // MZ700_JP// | ||
+ | * // MZ800 // | ||
+ | * // MZ1500 // | ||
+ | </WRAP> | @#00a2e8:<color white>**MZ_ID**</color> | podle délky MZ_ID | | ||
+ | | 23 byte + délka MZ_ID | CR LF | @#00a2e8:<color white>**0D0A**</color> | 2 byte | | ||
+ | | 23 byte + délka MZ_ID + 2 byte | nepoužito | @#00a2e8:<color white>**volné**</color> | zbytek do 512 byte | | ||
+ | |||
+ | <tab>Případný čtenář může zaslat návrh na využití volných byte v hlavičce firmware. Zatím tu mám návrh od Bohouše - jakou modifikaci, kdo to překládal; co měl k obědu a jaké bylo počasí a výhled na týden dopředu. Já jsem navrhoval oslavnou báseň na Bohouše s vynecháním místa na drobný oslavný rým pro Mikeše a Martina :-D. | ||
+ | ==== Popis struktury firmware ==== | ||
+ | <tab>Od 513. byte (0x0200H) se nachází vlastní binární kód firmware Unicard. Tento kód je kryptovaný, firmware nelze tedy přímo prohlížet. Jak bylo v popisu hlavičky zmíněno, soubor obsahuje kontrolní součet, který zabraňuje možnosti update poškozeným firmwarem. Při update se kontrolní součet ověří a pokud nesouhlasí s kontrolním součtem uvedeným v hlavičce, update se neprovede. |