Forum CDRinfo.pl

Forum CDRinfo.pl (https://forum.cdrinfo.pl/)
-   Komputery - oprogramowanie i sprzęt (https://forum.cdrinfo.pl/f113/)
-   -   Tłumaczenie gry - edycja pliku wykonywalnego (https://forum.cdrinfo.pl/f113/tlumaczenie-gry-edycja-pliku-wykonywalnego-89020/)

SMBA 16.06.2011 23:12

Tłumaczenie gry - edycja pliku wykonywalnego
 
Tłumaczę pewną DOSową grę.
Część tekstów jest w plaintexcie w oddzielnych plikach, ale część znajduje się bezpośrednio w pliku .exe
Jak się do tego zabrać?
Edytory hexów odpadają ponieważ nie mógłbym przekroczyć nigdy oryginalnej ilości znaków.
Próbowałem deasemblera IDA Pro: wyeksportowałem zdeasemblowany kod do pliku i próbowałem go skompilować, ale wszystkie znane mi asemblery (MASM, TASM, NASM, FASM) wywalały błędy. Wyczytałem w końcu:
Cytat:

First IDA uses something of a hybrid asm syntax, based on the Intel syntax. I often use some simple scripts to dump functions in a nasm compatible syntax. If you are going to save the entire database as a .asm file using File/Produce, then you will probably need to do a lot of editing depending on what assembler you intend to use.
więc i IDA odpada :/

Jakieś pomysły jakich narzędzi użyć? Może jakiś inny deasembler (choćby płatny ;) )? Pe Explorer odpada bo nie obsługuje plików DOSa :/

Berion 17.06.2011 10:39

Nie da się maszynowego z automatu przepisać na ASM. IDA służy do analizy binarek.

Można w hexie jeśli jesteś tak oblatany w maszynowym i umiesz sobie poprawić exporty itd.

To czego szukasz to programy "typu" ResHack.

SMBA 17.06.2011 10:53

Problem w tym że ResHack jest tylko dla aplikacji Win32, podobnie dwa inne programy tego typu, które testowałem.

Kris 17.06.2011 10:58

Najprostsze pytanie - próbowałeś skontaktować się z autorem i poprosić o kod źródłowy?

SMBA 17.06.2011 11:00

To było pierwsze o czym pomyślałem, próbowałem znaleźć dane kontaktowe ale firma zbankrutowała 10 lat temu.

SMBA 17.06.2011 20:46

Sorry za double posta ale nie mogłem już wyedytować.
Z kodu już z pewnością nici - znalazłem w końcu emaila jednego z twórców, odpowiedź na moje pytanie o kod:
Cytat:

Thanks for your kind inquiry, but I'm afraid all of that code has disappeared into the Digital Dustbin of Time.

It was fun while it lasted!
:(

Berion 18.06.2011 10:17

Dlatego napisałem "typu" (nie wiem jak się nazywa grupa programów do edycji zasobów w plikach wykonywalnych, pewnie ma jakąś nazwę ;d).

Miałem kiedyś fajną stronkę crackerską z różnymi narzędziami do różnych OSów, zapytaj Desdena. On się kiedyś interesował "w tym kierunku", czasem się loguje jeszcze na forum. ;]

SMBA 13.09.2011 23:12

Mam pytanie wciąż związane z tym tłumaczeniem ale już inne - czy byłby ktoś z forum stworzyć aplikację która by "pakowała" kilka plików do jednego wg specyfikacji? (oczywiście tutaj i teraz podaję tylko ogóły jak to wygląda)
Kod:

2 - Header
51 - Comment
41 - Unknown
2 - Number Of Files
32 - Unknown

// for each file
  1 - null
  8 - Filename (terminated by spaces/nulls)
  4 - File Extension (including the . [dot])
  1 - null
  4 - File Offset
  4 - File Size
  2 - Unknown
  2 - Unknown

To chyba będzie najlepszy opis, złączyłem dwa które znalazłem w sieci bo w obu były drobne braki ale w różnych miejscach ;)
Ogółem chodzi o to że pliki z grafiką (.PCX) są przetrzymywane razem po kilka-naście-dziesiąt sztuk w plikach ("archiwach") GLX.
Grafiki te muszę koniecznie wyedytować by ukończyć tłumaczenie a w aktualnym sytuacji jest to baardzo uciążliwe:
O ile z wyodrębnieniem grafik z tego pliku nie ma problemu bo znalazłem program który to potrafi to zrobić to już podłożyć zmodyfikowanych plików nie potrafi:
muszę zadbać o to by zmodyfikowany plik był idealnie tego samego rozmiaru co oryginał lub edytować ręcznie wpisy (dobrze nazwałem?) offsetów każdego z plików graficznych, nawet po modyfikacji tylko jednego pliku (szczególnie jeśli znajduje się on na początku).
Oczywiście Header, Comment i Unknown dla każdego pliku GLX są takie same.
Byłbym bardzo wdzięczny gdyby jakiś programista chciał pomóc :)

PS. Tutaj wgląd na kod heksadecymalny (powycinany z moich notatek więc może być nieczytelny):
http://img217.imageshack.us/img217/5356/unled1fi.gif
u góry początek jednego pliku glx z opisami, u dołu fragment porównania dwóch plików glx (na zielono różnice)

Berion 14.09.2011 10:52

W przypadku PCX to raczej nie problem z rozmiarem bo 4 i 8bit w danej rozdzielczości zawsze będą mieć ten sam (jak z 16 nie wiem, 24 nie widziałem i nie wiem nawet czy obsługują taki clut :P). Jeśli tylko chcesz podmieniać pliki to ja bym tego w ogóle nie rozpakowywał tylko użył bintools i napisał do niego batcha.

SMBA 14.09.2011 16:50

Właśnie w tym problem że po edycji w GIMPie zmienił się rozmiar.
Początkowo myślałem że to coś z paletą się stało ale po dodaniu kilku pikseli w miejscu jednokolorowego tła rozmiar pliku powiększył się.

"ja bym tego w ogóle nie rozpakowywał tylko użył bintools i napisał do niego batcha."
Żebym ja tylko biedny laik umiał to zrobić...

Berion 14.09.2011 18:39

Ilość załączników: 1
Jeśli są to normalne 4 lub 8bit PCX to rozmiar po edycji nie ulegnie zmianie. Tyczy się to zresztą jakiegokolwiek formatu graficznego w 4/8bit, który nie kompresuje jakiś części pliku i ma stały nagłówek zawierający wszystkie podstawowe informacje o obrazku.

Składnia:
Kod:

binsert.exe <offset> <plik wkładany> <plik do którego się wkłada>
Program napisał ffgriever. Jest dobrze przeze mnie przetestowany, więc można mu ufać w tej materii. Jak się boisz używać nie wiadomo czego i od kogo to Ci dam src (jest w którymś poście, w załączniku na GPP).

SMBA 14.09.2011 19:13

Więc wygląda na to nie są normalne pliki pcx 4/8bit
Ale wielkie dzięki za pomoc - na pewno się przyda, najwyżej pobawię się w wyrównywanie rozmiaru do oryginalnego, src nie trzeba :)


Wszystkie czasy w strefie CET. Aktualna godzina: 16:11.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.