abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 18:22 | Nová verze

    Byla vydána Java 20 / JDK 20. Nových vlastností (JEP - JDK Enhancement Proposal) je 7. Nová Java / JDK vychází každých 6 měsíců. LTS verze je 17.

    Ladislav Hagara | Komentářů: 0
    dnes 16:44 | IT novinky

    Google spustil konverzační AI Bard. Vyzkoušet lze zatím pouze ve Spojených státech a Spojeném království. Více v Bard FAQ.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | Bezpečnostní upozornění

    David Buchanan na svém blogu rozebírá zranitelnost acropalypse (CVE-2023-21036) telefonů Google Pixel. Z výřezu (crop) snímku obrazovky vytvořeného integrovanou aplikací Markup může být možné částečné obnovení původního snímku obrazovky. Viz tweet Simona Aaronse. Vyzkoušet lze webovou aplikaci acropalypse.app. Opraveno v březnové aktualizaci.

    Ladislav Hagara | Komentářů: 1
    dnes 08:00 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Gitea (Wikipedie) byla vydána v nové verzi 1.19.0. Přehled novinek i s náhledy v příspěvku na blogu. Kvůli "převzetí Gitei" společností Gitea Limited byl v prosinci loňského roku představen fork Gitei s názvem Forgejo (Codeberg).

    Ladislav Hagara | Komentářů: 0
    dnes 07:00 | Nová verze

    Byla vydána nová verze 5.11 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Nově je používán zram. Tor Browser byl aktualizován na verzi 12.0.4. Thunderbird na verzi 102.9.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | IT novinky

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Lorelai (ProtonDB).

    Ladislav Hagara | Komentářů: 0
    včera 11:00 | Nová verze

    Curl, řádkový nástroj a knihovna pro přenos dat po různých protokolech, slaví 25 let. Vydána byla nová verze 8.0.0. Mimo jiné řeší 6 zranitelností.

    Ladislav Hagara | Komentářů: 1
    včera 10:00 | Komunita

    V sobotu 25. března proběhne Arduino Day 2023. Od 14:00 lze sledovat oficiální stream. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.

    Ladislav Hagara | Komentářů: 0
    včera 09:00 | Zajímavý projekt

    Fabrice Bellard, tvůrce FFmpeg nebo QEMU, představil TextSynth Server. Jedná se o webový server nabízející REST API k velkým AI jazykovým modelům. CPU verze je k dispozici zdarma jako binárka pod licencí MIT. GPU verze je komerční. Vyzkoušet lze na stránkách TextSynth.

    Ladislav Hagara | Komentářů: 2
    včera 08:00 | Komunita

    Na konferenci LibrePlanet 2023 byly vyhlášeny ceny Free Software Foundation. Oceněni byli Eli Zaretskii za dlouhodobé příspěvky (správce Emacsu), Tad „SkewedZeppelin“ za nové příspěvky (správce DivestOS, distribuce Androidu) a projekt GNU Jami za společenský přínos.

    Fluttershy, yay! | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 279 hlasů
     Komentářů: 1, poslední 6.3. 07:51
    Rozcestník

    Emulátory

    Emulace herních konzolí, počítačů a jiných architektur.
    Informace o skupině
    Založena: 4. 7. 2009
    Členů: 9
    Článků: 2
    Wiki stránek: 1
    Dotazů: 13
    Akcí: 0
    Čtenost: 12 %
    Skóre: 14


    Dotaz: Hacking rom - překlad textu

    robotics avatar 6.7.2009 23:43 robotics | skóre: 29 | blog: o_vsem_moznem
    Hacking rom - překlad textu
    Přečteno: 1678×

    Nevíte prosím někdo, jak přeložit text ve hře na ROMce? Například když mám SNES romku. Třeba hru Aliens3, tak když to otevřu v hexeditoru a zaměním ten anglický text za český a uložím to, tak sice SNES9x napíše "bad checksum", ale hru to spustí a text tam je. Horší to je, když ten text potřebuju zkrátit nebo zarovnat a nebo prodloužit. Když tam něco přidám, třeba mezeru v tom hexeditoru, tak už to SNES9x prostě nespustí :-(. Něco o translate hacking sem našel tady, ale neumím moc anglicky takový technický věci. Jen tam píšou něco o new pointeru čico, že je potřeba nebo co. Moc to nechápu.

    Za každou radu předem děkuji.

    Odpovědi

    robotics avatar 9.7.2009 20:52 robotics | skóre: 29 | blog: o_vsem_moznem
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu

    NIKDO? :-(  Žádnej hacker? :-(

    10.7.2009 01:44 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu
    Skrátiť text v hre Alien 3 problém nie je. Stačí na koniec dať 0xFF.

    Na zmenu polohy slúžia dva bajty za 0x80.

    Farba sa mení za 0x85 (samozrejme tam môže byť len taká farba, ktorá je v palete, takže napr. pred MONAUREAL spôsobí zmena 0x07 na 0x02 to, že to slovo bude zelené a nie červené, ako je pôvodne, ale napr. pri tom úvodnom texte sa farba nedá zmeniť, keďže je pravdepodobne nastavená iba tá paleta, ktorá obsahuje červenú farbu, ostatné sú čierne).

    Poloha aj farba sa dajú meniť kdekoľvek v reťazci.

    Na čo slúži 0x84 som neprišiel (možno sa vyberá ktorá časť pamäte sa použije pri zobrazovaní a teda v podstate, kde je uložený ten font).

    0x82 je pravdepodobne delay.

    Podobných atribútov môže byť v tých textoch viac

    Ďalej je tam pre každú úroveň tabuľka, v ktorej sú adresy na údaje s misiou (nejakú čísla, pri ktorých netuším, čo znamenajú, reťazec s názvom a reťazec s popisom).

    Predĺženie textov môže byť dosť problematické. Aby sa to dalo urobiť, museli by sa v kóde nájsť všetky miesta, ktoré odkazujú na texty a tabuľky s údajmi o misiách a tie by sa museli upraviť. Netuším, či existuje emulátor, v ktorom sa dajú nastavovať breakpointy pri čítaní nejakých dát. Ak áno, tak by sa to možno dalo urobiť a ak nie, tak sa to bude dať urobiť oveľa zložitejšie. ;)

    Aby som to teda zhrnul, preložiť nejakú hru pre SNES môže byť dosť komplikované a treba k tomu kopec skúseností.
    robotics avatar 11.7.2009 12:50 robotics | skóre: 29 | blog: o_vsem_moznem
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu

    Vypadá to složitějc, než sem si myslel :-). Každopádně děkuji za info.

    15.7.2009 17:37 Andreas
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu

    No a co nejaky disassembler ? pak uz na adresach zalezet nebude. po kompilaci by se to zase slozilo zpet... pochybuju ze by to autori delali rucne.

    15.7.2009 19:50 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu
    Já jsem to tak dělal s tím textovým souborem, napsal jsem si program který mě ten text i s tabulkou převed na *.asm a ten jsem po po překladu zase přeložil. :-)

    Problém je že v textu můžou být i netextovské znaky které můžou něco dělat, a taky že diaasemblink nemusí text detekovat jako text a potom přepisování tabulek s textem je složitější.
    robotics avatar 15.7.2009 20:44 robotics | skóre: 29 | blog: o_vsem_moznem
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu

    No dal sem v synapticu vyhledat assembler a vyjelo mi tam dost věcí :-). Vypadáto, že to musí být assembler/dissasembler pro určitej druh procesoru. Předpokládám, že se budu muset naučit i nějaký assembler znaky.

    15.7.2009 23:27 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu
    Potrebný je disassembler špeciálne určený pre SNES (kvôli tomu, ako SNES pracuje s pamäťou).

    Skúšal som hľadať nejaký, aspoň trochu použiteľný, disassembler a našiel som toto. Odkazy na texty (netestoval som to, takže neviem či na úplne všetky) sa dajú nájsť pomerne jednoducho. Už predtým som pomocou emulátora Geiger’s Snes9x Debugger (tie debugovacie funkcie v ňom ale nie sú príliš použiteľné) našiel, kde sa spracovávajú tie reťazce. Ide o funkciu na adrese 81a9de, takže v tom diassemblovanom kóde stačí hľadať text s tou adresou. Niekde pred tým (možno vždy presne pred tým) sa nastavujú registre A a Y, v ktorých je tá adresa reťazca. Takže by bolo vhodné urobiť nejaký program/skript, ktorý tie inštrukcie nájde, a vygeneruje nejaké pole, v ktorom budú adresy, ktoré treba potom meniť... Ten kód vyzerá nejako takto:
    01c662 a0 8a c4      LDY #$c48a     
    01c665 a9 81 00      LDA #$0081     
    01c668 22 de a9 81   JSL $81a9de
    Samozrejme ideálne by bolo potom zistiť, na ktoré časti tej sekcie s textami sa nájdu odkazy (aby sa dali nájsť časti, na ktoré sa pravdepodobne odkazuje iným spôsobom).

    Taktiež by bolo vhodné pozrieť tie funkcie a zistiť, čo presne sa v tých textových reťazcoch spracováva.
    16.7.2009 00:09 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu
    Trochu som to pozeral a zistil som, že je tam dosť veľa komplikovanejších častí, napr.:
    01c66c ad a8 10      LDA $10a8     	; 
    01c66f 0a            ASL      
    01c670 0a            ASL      
    01c671 aa            TAX      
    01c672 bf 86 c4 81   LDA $81c486,X     
    01c676 a8            TAY      
    01c677 bf 88 c4 81   LDA $81c488,X     
    01c67b 22 de a9 81   JSL $81a9de
    Táto časť pravdepodobne (podľa kódu a dát na mieste, na ktoré ten kód odkazuje) odkazuje len na jeden reťazec, takže to nie je zložité.

    Ďalšia komplikovanejšia časť je:
    01cc5a bf f9 ca 81   LDA $81caf9,X     
    01cc5e 48            PHA      
    01cc5f bf fb ca 81   LDA $81cafb,X     
    01cc63 7a            PLY      
    01cc64 22 de a9 81   JSL $81a9de
    Tam už záleží na tom, čo je v registri X. Odhadom sú tam (v tabuľke začínajúcej na adrese 81C486) odkazy na 45 reťazcov.
    10.7.2009 00:48 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Hacking rom - překlad textu
    No prostě co chceš, s textem se musíš vlést do stejného místa, zjistit kde je umístěn kontrolní součet a ten přepočítat.

    Jinak pokud by jsi chtěl měnit délku tak by jsi to musel celé rozkodovat a pochybuji že budeš mít tolik času si stím hrát.

    Překládal jsem hru kde byly texty v jednom souboru a na začátku byla tabulka kde texty začínají takže to bylo jednoduché - přepsat texty a vygenerovat novou tabulku na začátek.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.