NFORenum - automatická oprava pseudo-spritů =========================================== NFORenum je schopen automaticky opravovat urÄité chyby v pseudo-spritech. Lze opravit následujÃcà chyby, pÅiÄemž platà uvedená omezenÃ: Akce 0, <num-props>: Hodnota je zmÄnÄna na hodnotu odpovÃdajÃcà poÄtu bytů v akci a hodnotÄ <num-info>. Tato oprava může selhat v pÅÃpadÄ, že <num-info> nenà správnÄ. ([*] Když je opravená hodnota 00, 01 nebo je o vÃce než 2 nižšà než původnà hodnota.) Akce 0, <num-info>: Opraveno až po <num-props>, a pouze když <num-props> je 01 a vlastnost, kterou nastavujete nemá promÄnlivou délku. V tomto pÅÃpadÄ je "vlastnostà s promÄnlivou délkou" myÅ¡lena vlastnost, která nenà typu BYTE, EXTENDED BYTE, WORD nebo DOUBLEWORD. Akce 2, <num-sprites> pro domy/polÃÄka průmyslu: ZmÄnÄno na správný poÄet bloků spritů (<sprite> následován 3 nebo 6 byty metadat), ale jen v pÅÃpadÄ, že ani původnà ani nová hodnota nejsou 00. Standardnà akce 2, <feature>: ZmÄnÄno na hodnotu <feature> pÅedcházejÃcà akce 1 v pÅÃpadÄ, že tato akce 2 vyžaduje sprity z akce 1, nebo když je hodnota chybná. ([*] Když se mÄnà z chybné hodnoty, nebo mezi akcà 2 standardnÃho formátu (feature 00..05,0B) a akcà 2 ve formátu pro domy/polÃÄka průmyslu (feature 07/09)). ZmÄnÄný sprite bude poté opÄt znovu zkontrolován. VariaÄnÃ/náhodná akce 2, <feature>: Opraveno na hodnotu <feature> v akcÃch 2, na které tato akce odkazuje pouze v pÅÃpadÄ, že vÅ¡echny tyto akce majà tuto hodnotu stejnou. Po opravÄ bude sprite opÄt znovu zkontrolován. VariaÄnà akce 2, <nvar>: Opraveno pouze v pÅÃpadÄ, že existuje hodnota, která souhlasà s délkou spritu. Náhodná akce 2, <nrand>: Opraveno pouze v pÅÃpadÄ, že existuje hodnota, která souhlasà s délkou spritu a jenž má pouze jeden bit hodnoty 1. Akce 3, <feature>: Viz. variaÄnÃ/náhodná akce 2. Akce 3, <num-cid>: Opraveno pouze v pÅÃpadÄ, že existuje hodnota, která souhlasà s délkou spritu. [*] Tato oprava může selhat v pÅÃpadÄ, že hodnota <num-ids> je chybná. Akce 4, <num-ent>: PoÄet ÅetÄzců nalezených v této akci 4. Akce 6: Koncový byte FF bude pÅidáv v pÅÃpadÄ, že po této úpravÄ bude sprite správnÄ. Akce 7/9, <varsize>: Opraveno pouze v pÅÃpadÄ, že délka spritu, promÄnná a typ podmÃnky vÅ¡echny souhlasà s opravenou hodnotou. Pro testy bitů je tato hodnota opravena na 01. Akce A, <num-sets>: Opraveno pouze v pÅÃpadÄ, že existuje hodnota, která souhlasà s délkou spritu. Akce E, <num>: Opraveno pouze v pÅÃpadÄ, že existuje hodnota, která souhlasà s délkou spritu. Akce 12, <num-def>: Opraveno pouze v pÅÃpadÄ, že existuje hodnota, která souhlasà s délkou spritu. VÅ¡echny akce obsahujÃcà ÅetÄzce (4, 8, B, F): Koncový byte 00 bude pÅidán v pÅÃpadech, kdy NFORenum pÅi analýze ÅetÄzce narazà na konec spritu. [*] Tyto opravy mohou být nespolehlivé a standardnÄ nejsou aktivnÃ. K jejich aktivaci je tÅeba zadat parametr -a/--autocorrect v pÅÃkazu dvakrát. Ve vÅ¡ech pÅÃpadech automatické opravy se mÄnà logika analýzy kódu; v nÄkterých situacÃch jsou tyto zmÄny výrazné. Jestliže nÄkteré chybové zprávy nedávajà smysl, zkuste soubor analyzovat bez automatické opravy a možná zÃskáte rozumnÄjÅ¡Ã výsledek. Aby automatická oprava spritů funguvala, je tÅeba mÃt také zapnutou funkci auto- matického formátovánà kódu (beautifier). Jestliže je beautifier vypnut, když NFORenum narazà na parametr -a/--auto-correct, bude se program chovat jako by dalÅ¡Ã parametr na pÅÃkazové Åádce byl "--beautify convertonly=on". Beautifier pak můžete kdykoli vypnout, což se hodà pÅi zkouÅ¡enà auto-korektoru na sucho. V tomto pÅÃpadÄ je jednou z možnostà zadat parametr "-aab-". (Pozn.: NepoužÃvejte "-ab- -a". To druhé "-a" opÄt zapne beautifier, což jste zajisté nechtÄli udÄlat.) PÅidejte parametr "--lock" v pÅÃpadech, kdy chcete zajistit, že pÅÃkaz @@BEAUTIFY umÃstÄný v kódu aktivuje automatické opravy.