User Tag List

Страница 7 из 9 ПерваяПервая ... 3456789 ПоследняяПоследняя
Показано с 61 по 70 из 87

Тема: Дизассемблирование игры Batty

  1. #61

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,217
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    708
    Спасибо Благодарностей получено 
    1,652
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я собирался всё причесать, подправить, окультурить и т.д., но понял, что вряд ли буду этим заниматься в обозримом будущем (если вообще буду), и решил выложить то, что имею на текущий момент:

    https://github.com/CityAceE/Batty

    Просто запускаете батник и на выходе получите sna с игрой - в комплекте есть всё необходимое.

    Игра разобрана полностью. Любые части кода можно переносить куда угодно, менять переменные, компилировать с любого доступного адреса и т.д. - в итоге всё скомпилируется и будет работать, если внесённые изменения адекватны, то есть, например, буферы не налазят друг на друга, или стек не оказывается в области кода. Проверено целенаправленно и многократно, в том числе и адаптацией данной игры на ПК Специалист.

    Когда я разбирал игру, я комментировал многие строчки кода и переименовывал процедуры, чтобы в дальнейшем можно было понять, что они делают. И чем больше становилось таких описанных и переименованных процедур, тем проще потом становилось разбираться с остальным кодом. Однако на ранних этапах анализа я мог ошибочно расценить назначение тех или иных вещей. На поздних этапах я почти всё это поправил, но, конечно, что-то да осталось. Так что имейте ввиду, что где-то там могут встретиться какие-то ошибочные описания. Но это не значит, что они там есть!

    Буду благодарен, если кто-то разберётся с оставшимися неописанными переменными и процедурами, поправит мои ошибки и сделает pull request.
    С уважением, Станислав.

    Эти 7 пользователя(ей) поблагодарили CityAceE за это полезное сообщение:

    Barmaley_m(30.12.2020), Bedazzle(29.12.2020), Escaper(28.12.2022), ivagor(29.12.2020), mastermind(29.12.2020), nzeemin(29.12.2020), zebest(29.12.2020)

  2. #61
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #62

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а 8080 версия?

  4. #63

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,217
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    708
    Спасибо Благодарностей получено 
    1,652
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    а 8080 версия?
    Я такую в итоге так и не сделал.
    С уважением, Станислав.

  5. #64

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а там много кода используещего стек не по назначению?

    пробежался глазами
    увидел только одну процедуру

    после С300 известно точное расположении всех буферов?
    вижу одна дырка 3К вторая 1К

  6. #65

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,217
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    708
    Спасибо Благодарностей получено 
    1,652
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    а там много кода используещего стек не по назначению?
    Их там почти нет.

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    после С300 известно точное расположении всех буферов?
    Там всё в самом начале в комментариях расписано.
    С уважением, Станислав.

  7. #66

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    мдо там только 425 JR
    плачевная ситуация...

  8. #67

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,217
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    708
    Спасибо Благодарностей получено 
    1,652
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    мдо там только 425 JR
    плачевная ситуация...
    Если вдруг у тебя возникла мысль перевести игру на i8080, то давай я тебе лучше дам исходник для Специалиста. От этого перевода хотя бы прок будет. Но заранее предупреждаю, что в обычной памяти Специалиста места не осталось совсем - всё занято кодом и буферами. Если только использовать место по бокам экрана - а это целых 4 Кб (2+2)!
    С уважением, Станислав.

  9. #68

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Если вдруг у тебя возникла мысль перевести игру на i8080, то давай я тебе лучше дам исходник для Специалиста.
    я думал быстренько сделать порт для zx8080
    чтоб хоть что нибудь было
    тк ПЗУ-шка задерживается (пойдет адаптироватьсо по второму кругу : )
    но я смотрю тут быстренько не получитсо...

    еще и рисуется с исползованием стека
    я думал пройтись автозаменой и наделать макросов
    чтоб особо не думать

    а в условиях специалиста так вообще

    вангую что для него это возможно только если избавиться от экранного буфера и рисовать напрямую в экран со всем миганием...

    - - - Добавлено - - -

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Если только использовать место по бокам экрана - а это целых 4 Кб (2+2)!
    только оно блоками по 16 байт

    в принципе с ADP это не проблема
    оно само туда положит если будет вмещатся
    но нужно иметь такие блоки (тем более в больших количествах)
    или же нарезать малоиспользуемый код на 16 байтные блокии при помощи jp
    но такой код станет еще на 19% жирнее и медленее
    Последний раз редактировалось NEO SPECTRUMAN; 29.12.2020 в 11:25.

  10. #69

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,217
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    708
    Спасибо Благодарностей получено 
    1,652
    Поблагодарили
    574 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    только оно блоками по 16 байт
    Нет же. Два непрерывных куска по 2 Кб.

    Код:
    Границы экрана Спектрума на экране Специалиста:
         981F     B71F
         =============
    9720|9820 ... B720|B820
        |....     ....|
    98DF|98DF ... B7DF|B8DF
         =============
         98E0    B7E0
    Экранная область Специалиста с #9000 по #BFFF
    Последний раз редактировалось CityAceE; 29.12.2020 в 11:29.
    С уважением, Станислав.

  11. #70

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ахда у него же экран повернут
    и все 256 байт "страницы" идут в высоту

    - - - Добавлено - - -

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Нет же.
    тогда там еще 32*64 сверху и снизу
    и достаточно крупными блоками для возможности их использовать

Страница 7 из 9 ПерваяПервая ... 3456789 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Дизассемблирование спектрумовских игр
    от CityAceE в разделе Утилиты
    Ответов: 4
    Последнее: 13.04.2016, 09:44
  2. ранняя версия Batty
    от goodboy в разделе Игры
    Ответов: 18
    Последнее: 24.10.2009, 03:34
  3. World Shaker - игра от Michael Batty, но на PC
    от Shadow Maker в разделе Игры
    Ответов: 6
    Последнее: 01.01.2009, 22:43
  4. Batty
    от CityAceE в разделе Игры
    Ответов: 1
    Последнее: 14.03.2005, 05:55

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •