Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
donuts
Зарегистрирован: 05.12.2003 Сообщения: 57 Откуда: Тверь
|
Добавлено: Пт Дек 05, 2003 8:56 pm Заголовок сообщения: Перевод GB игр |
|
|
Люди помогите!
Решил перевести Final Fantasy Adventure на GB.
Вопросы такие:
1) Таблица, которую я создал (именно для англю рома), содержит не только буквы, символы и цифры, но и пары букв...Т.е. некоторые хекс-коды обозначают две буквы! Как спрашивается такое чудо на русский перевести?
2) Вопрос по поинтерам. Чему равен header у GB ромов? Я знаю что на NES'e он равен 10, на SNES'e - 200. Подскажите! А то никак не могу поинтеры найти... Или на GB их нет...???
3) Реально ли этот ром вообще перевести?
Спасибо.
P.S. Тольке не предлагайте ФАКи на Зофаре там вес примеры даются для НЕСа и СНЕСа. А про то, что хекс-код может содержать 2 или 3 буквы, и что с этим делать вообще ничего не сказано(хотя может я не видел просто). Хочеться чтоб все по-русски объяснили |
|
Вернуться к началу |
|
|
Axel Советник
Зарегистрирован: 14.11.2003 Сообщения: 680
|
Добавлено: Пн Дек 08, 2003 7:30 pm Заголовок сообщения: Re: Перевод GB игр |
|
|
donuts писал(а): | Решил перевести Final Fantasy Adventure на GB. |
и чего вас сразу на подвиги тянет ? :)
Цитата: | 1) Таблица, которую я создал (именно для англю рома), содержит не только буквы, символы и цифры, но и пары букв...Т.е. некоторые хекс-коды обозначают две буквы! Как спрашивается такое чудо на русский перевести? |
это значит текст сжат, и тебе нужно прочитать что такое MTE/DTE...
Цитата: | 2) Вопрос по поинтерам. Чему равен header у GB ромов? Я знаю что на NES'e он равен 10, на SNES'e - 200. Подскажите! А то никак не могу поинтеры найти... Или на GB их нет...??? |
размер хедера 192 байта (такой же как у GBA)
только он тебе не поможет ;)
поинтеры для GBC 2х байтовые и лежат либо чуть выше, чибо чуть ниже собственно "текста" ссылаются они на адреса в пределах
16k блоков (а может 32k, АнС поправь если я не прав...)
которые называют "банками", соответсвенно двигать их
можно тоже только в этих пределах...
увидеть границы банка довольно легко - разглядывая ром
в чем нибудь типа TileMolester'a будет видно, что Ром "полосатый"
т.е. там будут видны черные зоны...это и есть границы банков...
Цитата: | 3) Реально ли этот ром вообще перевести? |
если ты еще не переводил ни одной игрушки, я бы не советовал начинать именно с такой...
...хотя нереального ничего нет... но нужно оооочень хотеть
и быть готовым потратить на этот перевод месяцев 6...
(понимая, что игры для GBA переводятся ЛЕГЧЕ при условии, что это не Golden Sun и не FFTA... ) _________________ Всех их вместе переведём! |
|
Вернуться к началу |
|
|
donuts
Зарегистрирован: 05.12.2003 Сообщения: 57 Откуда: Тверь
|
Добавлено: Пн Дек 08, 2003 10:52 pm Заголовок сообщения: |
|
|
1) А почему 6 месяцев... текст я весь выдрал, перевел его уже почти!
2) Да и где почитать про MTE\DTE, чтоб все хорошо было написано...
3) Дык, что получается, что изменить длину строки я не смогу???
Еще раз Тхэнкс. |
|
Вернуться к началу |
|
|
Axel Советник
Зарегистрирован: 14.11.2003 Сообщения: 680
|
Добавлено: Вт Дек 09, 2003 9:16 am Заголовок сообщения: |
|
|
donuts писал(а): | 1) А почему 6 месяцев... текст я весь выдрал, перевел его уже почти! |
ну, может я и погорячился (на почве предыдущей дискуссии)
Цитата: | 2) Да и где почитать про MTE\DTE, чтоб все хорошо было написано... |
с этим сложнее
для начала попробуй почитать в хелпе для Translhextion,
там довольно сносно...(в разделе о таблицах)
Цитата: | 3) Дык, что получается, что изменить длину строки я не смогу???
|
не то, чтобы совсем не можешь, но это сильно зависит от разработчиков игры...
вобщем, я посоветовал бы, не кидаться на амбразуру (переводить весь текст), а перевести 2-3 предложения и подвигать их туда-сюда... _________________ Всех их вместе переведём! |
|
Вернуться к началу |
|
|
АнС RRC2008
Зарегистрирован: 08.11.2003 Сообщения: 2818
|
Добавлено: Вт Дек 09, 2003 4:28 pm Заголовок сообщения: |
|
|
Цитата: | ссылаются они на адреса в пределах
16k блоков (а может 32k, АнС поправь если я не прав...) |
64K
Цитата: | текст я весь выдрал, перевел его уже почти! |
представляю я...
Цитата: | игры для GBA переводятся ЛЕГЧЕ |
Да, но только потому, что есть такие мощные эмуляторы, как VBA. |
|
Вернуться к началу |
|
|
Axel Советник
Зарегистрирован: 14.11.2003 Сообщения: 680
|
Добавлено: Вт Дек 09, 2003 4:45 pm Заголовок сообщения: |
|
|
ты уверен ?.... вроде получается, что банки по 16kb
Код: | GB Memory Map
--------------------------- FFFF | 32kB ROMs are non-switchable and occupy
I/O ports + internal RAM | 0000-7FFF are. Bigger ROMs use one of two
--------------------------- FF00 | different bank switches. The type of a
Internal RAM | bank switch can be determined from the
--------------------------- C000 | internal info area located at 0100-014F
8kB switchable RAM bank | in each cartridge.
--------------------------- A000 |
16kB VRAM | MBC1 (Memory Bank Controller 1):
--------------------------- 8000 | Writing a value into 2000-3FFF area will
16kB switchable ROM bank | select an appropriate ROM bank at
--------------------------- 4000 | 4000-7FFF. Writing a value into 4000-5FFF
16kB ROM bank #0 | area will select an appropriate RAM bank
--------------------------- 0000 | at A000-C000.
|
| MBC2 (Memory Bank Controller 2):
| Writing a value into 2100-21FF area will
| select an appropriate ROM bank at
| 4000-7FFF. RAM switching is not provided.
|
Цитата: | Да, но только потому, что есть такие мощные эмуляторы, как VBA. |
нет, потому что там проще поинтеры искать _________________ Всех их вместе переведём! |
|
Вернуться к началу |
|
|
АнС RRC2008
Зарегистрирован: 08.11.2003 Сообщения: 2818
|
Добавлено: Вт Дек 09, 2003 4:54 pm Заголовок сообщения: |
|
|
Цитата: | ссылаются они на адреса в пределах 16k |
2 байта адресуют смещение от 0 до 65535. |
|
Вернуться к началу |
|
|
АнС RRC2008
Зарегистрирован: 08.11.2003 Сообщения: 2818
|
Добавлено: Вт Дек 09, 2003 4:58 pm Заголовок сообщения: |
|
|
Цитата: | нет, потому что там проще поинтеры искать |
Нееет! Поинтеры везде легко искать, а вот карту тайлов, палитру и сжатую графику гораздо легче ломать с таким инструментом. |
|
Вернуться к началу |
|
|
Fish
Зарегистрирован: 15.11.2003 Сообщения: 425 Откуда: издалека...
|
Добавлено: Вт Дек 09, 2003 5:43 pm Заголовок сообщения: |
|
|
АнС писал(а): | Цитата: | ссылаются они на адреса в пределах 16k |
2 байта адресуют смещение от 0 до 65535. | Это факт, но доступно может быть только окно какого-то размера (например - 16кб, как на Спектруме(?)). Такие ограничения имеют место быть у GB?
АнС писал(а): | Цитата: | игры для GBA переводятся ЛЕГЧЕ |
Да, но только потому, что есть такие мощные эмуляторы, как VBA. | Это тоже факт. Жаль, что г-да программеры чаще всего 'забывают' встроить в эмулятор отладчик... |
|
Вернуться к началу |
|
|
donuts
Зарегистрирован: 05.12.2003 Сообщения: 57 Откуда: Тверь
|
Добавлено: Вт Дек 09, 2003 11:59 pm Заголовок сообщения: |
|
|
Так люди, я совсем ламак в этом деле...
Так сколько байт нужно отнимать от адреса конкретной чтобы найти поинтер для этой конкретной строки..
Помогите, мне очень хочется перевести.
Я начал дело...не могу бросить на середине... |
|
Вернуться к началу |
|
|
Axel Советник
Зарегистрирован: 14.11.2003 Сообщения: 680
|
Добавлено: Ср Дек 10, 2003 9:45 am Заголовок сообщения: |
|
|
donuts писал(а): | Так сколько байт нужно отнимать от адреса, чтобы найти поинтер для этой конкретной строки... |
я испытаний не проводил, но видимо алгоритм такой:
1. режешь РОМ на кусочки по 16k (нумеруя имена файлов...)
2. с каждым "кусочком" обращаешся как с ROMом, в нем
поинтеры по идее указывают на смещение относительно начала файла
(считая с нуля )...
то есть, если у тебя есть файл в котором "строка" начинается
с адреса 03E8h, то вероятно поинтер выглядит как два байта E803h
или 03E8h... соответственно если ты двигаешь такую строку "назад"
на 10 байт то поинтер станет F203 (или наоборот, не помню я как у GB
дела с индианностью (big endian или little endian))
...после этого склеиваешь все кусочки обратно и пробуешь получилось или нет _________________ Всех их вместе переведём! |
|
Вернуться к началу |
|
|
|