Список форумов shedevr.org.ru shedevr.org.ru
Группа перевода приставочных игр "ШЕДЕВР"
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

TMNT TF (nes) вопрос?

 
Начать новую тему   Ответить на тему    Список форумов shedevr.org.ru -> Экстремальный ромхакинг
Предыдущая тема :: Следующая тема  
Автор Сообщение
Balin2003



Зарегистрирован: 28.11.2004
Сообщения: 10

СообщениеДобавлено: Сб Сен 05, 2009 1:00 pm    Заголовок сообщения: TMNT TF (nes) вопрос? Ответить с цитатой

Помогите начинающему ромхакеру.
Если я правильно понял, то
$E421: B5 A2 LDA $A2, X
берет значение выбранного персонажа первого игрока ($A2) для последующей загрузки спрайтов. Проверил заменой на LDA $A3, X - все так - грузит спрайты от персонажа второго игрока (правда потом сбивается на нормальные, но это чек уже в главном цикле).
Но я никак не могу найти где конкретно идет загрузка спрайтов и иконки для первого игрока.
Не могли бы вы мне с этим помочь (желательно с комментариями, так как я только день как начал разбираться в принципах работы Nes) ?
И, если не тяжело, подскажите по какому адресу расположены координаты размещения иконок персонажей в меню выбора?
Заранее благодарен.
Еще такая штука:
Попытался я сделать чтобы на нажатие select $a2 становилось равно $a3.
Для этого эту часть
Код:
$F32A:8C 16 40  STY $4016 = #$FF
$F32D:A0 08     LDY #$08
$F32F:AD 16 40  LDA $4016 = #$FF
$F332:85 04     STA $04 = #$00
$F334:4A        LSR
$F335:05 04     ORA $04 = #$00
Заменил на
Код:
$F32A:8C 16 40  STY $4016 = #$FF
$F32D:A0 08     LDY #$08
$F32F:AD 16 40  LDA $4016 = #$FF
$F332:4C 90 FE  JMP $FE90
$F335:05 04     ORA $04 = #$00
И добавил
Код:
$FE90:A5 91     LDA $91 = #$00    ;берет значение нажатой кнопки
$FE92:C9 20     CMP #$20             ;сравнивает select ли это
$FE94:D0 05     BNE $FE9B            ;ветка если нет
$FE96:A5 A3     LDA $A3 = #$00   ;берет значение а3
$FE98:85 A2     STA $A2 = #$00   ;сохраняет его в а2
$FE9A:AD 16 40  LDA $4016 = #$FF ;оригинальный код
$FE9D:85 04     STA $04 = #$00    ;который был
$FE9F:4A        LSR                       ;заменен на джамп
$FEA0:4C 35 F3  JMP $F335          ;джамп обратно

Результат. Совсем не работает управление первого игрока, ром крашится на выборе персонажа. Что я сделал не так?
_________________
Just Balin, the Moria King.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Griever
RRC2008
RRC2008


Зарегистрирован: 15.07.2005
Сообщения: 112
Откуда: Н.Новгород

СообщениеДобавлено: Сб Сен 05, 2009 7:09 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
где конкретно идет загрузка спрайтов и иконки для первого игрока

Какой конкретно? На экране выбора персонажей и VS экране это тайловая карта, а не спрайт.

Цитата:
Попытался я сделать чтобы на нажатие select $a2 становилось равно $a3.



Цитата:
Код:
$F32F:AD 16 40  LDA $4016 = #$FF
$F332:4C 90 FE  JMP $FE90

Цитата:
Код:
$FE9A:AD 16 40  LDA $4016 = #$FF ;оригинальный код
$FE9D:85 04     STA $04 = #$00    ;который был

Ну ты понел?!

А вообще, зачем ты врезал свой код в процедуру опроса портов джойстика - не нужно игре мешать, и уж тем более не нужно делать это в цикле опроса сдвигового регистра.
Обычно, это делается в цикле NMI:

Read_Joy_Buffer во втором по вложенности цикле содержит процедуру опроса порта джойстика, в которую ты пытался врезать свой код.
_________________
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Balin2003



Зарегистрирован: 28.11.2004
Сообщения: 10

СообщениеДобавлено: Сб Сен 05, 2009 9:36 pm    Заголовок сообщения: Ответить с цитатой

Насколько я понимаю, процедура прогрузки графики персонажа в начале раунда, в общих чертах такова:
1.смотрится который персонаж выбран (берется a2)
2.......
3.загружаются спрайты выбранного персонажа
4.......
5.ему присваивается idle анимация
6.......
Вот собственно где в коде находятся пункты 3 и 5, мне и хотелось бы узнать.

Цитата:
координаты размещения иконок

Имееются в виду x,y координаты портрета, например, Кейси Джонса.

Хм, похоже весь мой код был одним большим багом
врезал куда нужно и изменил код
Код:
$FE90:A5 91     LDA $91
$FE92:C9 20     CMP #$20
$FE94:F0 07     BEQ $FE9D
$FE96:A5 91     LDA $91
$FE98:05 92     ORA $92
$FE9A:85 93     STA $93
$FE9C:60        RTS
$FE9D:A5 A3     LDA $A3
$FE9F:85 A2     STA $A2
$FEA1:60        RTS

Всё работает.

П.С. Спасибо за быстрый ответ.
_________________
Just Balin, the Moria King.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Гость






СообщениеДобавлено: Пн Сен 07, 2009 9:39 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
Имееются в виду x,y координаты портрета, например, Кейси Джонса.

Тайловая карта, пережатая RLE. Хочешь изменить координаты - правь тайловую карту.
Вернуться к началу
Shredder



Зарегистрирован: 20.02.2007
Сообщения: 73
Откуда: Россия, Самара.

СообщениеДобавлено: Вт Сен 08, 2009 5:06 am    Заголовок сообщения: Ответить с цитатой

Balin2003, а, что именно ты хочешь там сделать?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Balin2003



Зарегистрирован: 28.11.2004
Сообщения: 10

СообщениеДобавлено: Ср Сен 09, 2009 12:32 am    Заголовок сообщения: Ответить с цитатой

Хотел разобраться в ромхакинге в целом, а в частности попробовать-таки добавить нового персонажа. Про проблемы с графикой, банками и проч. знаю, твою тему читал. Но я упорный, все же хочу попробовать.
_________________
Just Balin, the Moria King.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Balin2003



Зарегистрирован: 28.11.2004
Сообщения: 10

СообщениеДобавлено: Пт Янв 29, 2010 5:53 am    Заголовок сообщения: Ответить с цитатой

Дошли руки немного разобраться с черепахами все-таки.
Докладываю. В prg банках оказалось полным полно свободного места, которое можно использовать под свои данные.
Проверено на примере версус скрина с прогрузкой иконки и имени для восьмого персонажа.
Если в chr будет хотя бы вполовину столько же места, то создание дополнительных персонажей вполне возможно.
_________________
Just Balin, the Moria King.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Griever
RRC2008
RRC2008


Зарегистрирован: 15.07.2005
Сообщения: 112
Откуда: Н.Новгород

СообщениеДобавлено: Вс Янв 31, 2010 10:19 am    Заголовок сообщения: Ответить с цитатой

Вот.
_________________
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов shedevr.org.ru -> Экстремальный ромхакинг Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group