PDA

Просмотр полной версии : Патчи к играм



Manwe
16.11.2018, 00:15
Предлагаю выкладывать в этой теме патчи к играм.
Начну с игры, над которой бился последние несколько дней.

"Overkill" (http://forum.pk-fpga.ru/viewtopic.php?f=23&t=5549)

http://files.pk-fpga.ru/storage/pictures/soft/OverKill/overkill_15.png

Изначально игра распространялась на дискетах, была защищена от копирования и даже содержала в себе вирус.
С этими проблемами справился многоуважаемый gid ещё в 2014-ом году.
Но как следует из описания на сайте (http://forum.pk-fpga.ru/viewtopic.php?f=23&t=5549), игра привязана к подпрограммам прошивки контроллера дисковода, а потому не запускается с жёсткого диска или требует прописывания драйвера расширенной арифметики в начальный загрузчик HDD, что может быть в ряде случаев нежелательно.

Поэтому я расковырял игру и выяснил, что из расширенной арифметики она использует только команду MUL, причём всегда умножает регистр R1 на число 64 :)
Написал патч, который расшифровывает 6 файлов игры, находит в них последовательности с использованием MUL и заменяет на другой код (который делает то же самое, но гораздо быстрей).

Во вложении - патч, исходники и инструкция.
66925

На тот случай, если в игре присутствуют MULы, которые я не нашёл (чтобы это узнать, надо пройти всю игру), сделал запасной вариант: драйвер расширенной арифметики, который эмулирует только умножение регистра R1 на 64, и ничего больше. Работает только при наличии контроллера SMK. Нужно запускать перед стартом игры. К сожалению, на дискете с игрой нет места, чтобы записать этот драйвер. Но в теории можно втиснуть его в один из исполняемых файлов.
Если вдруг окажется, что в игре используются другие команды расширенной арифметики (игра будет вылетать всё время в одном и том же месте по вектору @#10) - пишите. Полный драйвер я тоже написал. Надеюсь просто, что он не пригодится.

Manwe
08.01.2019, 19:56
"White Thunder" (https://r-games.net/48250-white-thunder-1.html)

https://r-games.net/uploads/posts/2019-01/1547018108_1.png

Изначально игра шла только на БК-0010 с контроллером дополнительной памяти A16(M), была защищена паролем и зашифрована XORом.
Автор случайно оставил в коде подсказку к расшифровке, и вот результат.
Теперь игра запускается на любой БК с контроллером SMK или A16, в AnDOS и MKDOS. Единственное, для БК-0011 пришлось убрать обращение к звуковой процедуре из Монитора БК-0010.

67578

67577

speedy
22.02.2019, 23:11
Приветствую! Thunder не смог запустить.. После патча виснет наглухо. Может не так что-то делаю? У меня 11м и смк 64..
Спасибо.

goodboy
23.02.2019, 18:50
"White Thunder"
похоже вдохновлялись графикой с DarkFusion и Thunderceptor

Manwe
24.02.2019, 15:17
Приветствую! Thunder не смог запустить.. После патча виснет наглухо. Может не так что-то делаю? У меня 11м и смк 64.Контроллер СМК новодельный он Назима или оригинальный старый от АльтРро?
На эмуляторе игра работает в конфигурации БК-0011м+СМК512?
Я делаю так: скачиваю с r-games.net файл thunder-1_crack.zip, гружусь с этого образа диска и запускаю файл crack_th.

speedy
25.02.2019, 01:44
Контроллер СМК новодельный он Назима или оригинальный старый от АльтРро?
На эмуляторе игра работает в конфигурации БК-0011м+СМК512?
Я делаю так: скачиваю с r-games.net файл thunder-1_crack.zip, гружусь с этого образа диска и запускаю файл crack_th.

Да, все так. СМК от Назима новодел. Образ качал с r-games.. С дискеты и с винчестера результат одинаковый.. Попробую запустить как Вы говорите в эмуляторе..
Спасибо.

speedy
25.02.2019, 22:45
Вы правы.. На эмуляторе запускается без проблем. записал видос посмотрите что происходит: https://youtu.be/V1LUAq8R_SA

Manwe
26.02.2019, 12:48
Вы правы.. На эмуляторе запускается без проблем. записал видос посмотрите что происходит: https://youtu.be/V1LUAq8R_SAПоначалу выглядит как и должно. Потом просто чёрный экран держится?
Если так, то проблема, вероятно, в переключении страниц памяти контроллера. Возможно, сам контроллер барахлит.
Такое было уже с нашей демкой "Good Apple", обсуждали на форуме bk0010.org - у человека не запускалась на реальной БК, я написал кучу тестов для проверки, оказалось что у него хардварная проблема.
В принципе, я могу и для игры Thunder написать тесты, чтобы выяснить в какой момент происходит сбой. Но сперва лучше проверить на той же демке "Good Apple" - работает ли она: http://www.pouet.net/prod.php?which=78066

speedy
26.02.2019, 12:58
Я пробовал запускать эту демку ... тоже не запускается. правда это было давно. могу еще раз попробовать конечно. а какое решение может быть? это брак контроллера?

Manwe
26.02.2019, 20:28
Я пробовал запускать эту демку ... тоже не запускается. правда это было давно. могу еще раз попробовать конечно. а какое решение может быть? это брак контроллера?Если демка не запускается, то брак контроллера или может быть неисправность на разъёме МПИ со стороны БК.

speedy
26.02.2019, 23:16
Если демка не запускается, то брак контроллера или может быть неисправность на разъёме МПИ со стороны БК.

но что интересно... все остальное работает. я перебрал почти весь r-games.net. а может есть какой-то тест, чтоб убедиться в этом..? А потом к Назиму обратиться может он сможет помочь ?

спасибо.

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

Похоже моя букшка 11я сдохла. На 10ке запустил thunder и все работает. Не подскажете кому можно в ремонт отправить? Слышал Господин MM может помочь..
С одной стороны хорошо что проблема проявилась..

Manwe
27.02.2019, 12:37
но что интересно... все остальное работает. я перебрал почти весь r-games.net. а может есть какой-то тест, чтоб убедиться в этом..?Остальные игры не используют переключение страниц дополнительной памяти контроллера SMK. Поэтому лучший тест – демки. «Good Apple» и «Однажды».

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


Похоже моя букшка 11я сдохла. На 10ке запустил thunder и все работаетВ теории может быть проблема с патчем. У меня поначалу на БК-0010 всё работало, а на БК-0011м висло на процедуре проигрывания звуковых эффектов через динамик. Обращение к системному регистру динамика вешало компьютер. Я не смог сходу испоавить это и просто заменил все обращения к диамику на NOPы. Если патч определяет, что запущен на БК-0011м, он делает именно это.
Соответственно, проблема может быть такая: либо патч неправильно определил на какой модели БК запущен, либо вычистил не все обращения к динамику. Но это только в теории. На практике я проверял на реальной БК-0011м с СМК-512 и всё работало.

speedy
27.02.2019, 13:08
Остальные игры не используют переключение страниц дополнительной памяти контроллера SMK. Поэтому лучший тест – демки. «Good Apple» и «Однажды».

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

В теории может быть проблема с патчем. У меня поначалу на БК-0010 всё работало, а на БК-0011м висло на процедуре проигрывания звуковых эффектов через динамик. Обращение к системному регистру динамика вешало компьютер. Я не смог сходу испоавить это и просто заменил все обращения к диамику на NOPы. Если патч определяет, что запущен на БК-0011м, он делает именно это.
Соответственно, проблема может быть такая: либо патч неправильно определил на какой модели БК запущен, либо вычистил не все обращения к динамику. Но это только в теории. На практике я проверял на реальной БК-0011м с СМК-512 и всё работало.

Еще есть такой глюк.. в некоторых играх если задать управление джойстиком.. оно задается, но потом в игре работает не корректно .. т.е. могут не работать какие-то элементы типа.. в право двигается, а в лево нет и т.д. но бывает что все нормально работает. и еще.. запустил бейсик 86 (c бк10 под 11м) вот что пишет: https://drive.google.com/open?id=14XQ2H85Gn0aYaOKPp4GFpvd3ceuO4md7
может это как-то связано.

Manwe
27.02.2019, 19:31
Скорее всего, с самой БК что-то не то. Раз и порт джойстика глючит, и порт для подключения дополнительного ОЗУ.

Manwe
27.12.2019, 11:38
"Miami Cobra" (http://thesands.ru/bk0010/Miami_Cobra_BK0011_patched.zip)

http://thesands.ru/bk0010/miami_cobra.png


Изначально игра работала только с дискеты. Для запуска с жёсткого диска приходилось монтировать логический диск с игрой как виртуальный дисковод в MKDOS. Под другими системами игра не запускалась.

Что исправлено:
1. Теперь игра работает в любой операционной системе (использует для загрузки стандартный EMT 36).
2. Подгружается таблица рекордов.
3. Не виснет на разогнанной БК (из заставки убран скролл экрана, из-за которого происходило зависание).
4. Убрано раздражающее ожидание при старте игры.

Рекомендуется играть на турбированной БК-0011м (6 МГц).

Во вложении - исправленная игра.
71104

hobot
27.12.2019, 14:03
О! Великий и могучий Manwe ! Ты сильный и отважный воин, а легенды о твоих подвигах на охоте рассказывают у Большого костра на всех праздниках. Кхм... неужели и под ОС БК будет работать?


Во вложении - исправленная игра.
Miami_Cobra_BK0011_patched.zip (https://zx-pk.ru/attachment.php?attachmentid=71104&d=1577435554)

Manwe
29.12.2019, 06:59
неужели и под ОС БК будет работать?если система сидит не в 3, 6 или 7-ой странице памяти БК, то будет работать.

hobot
29.12.2019, 14:25
если система сидит не в 3, 6 или 7-ой странице памяти БК, то будет работать.

https://pic.maxiol.com/thumbs2/1577618696.1520060856.20191229112306562.png (https://pic.maxiol.com/?v=1577618696.1520060856.20191229112306562.png&dp=2)

Manwe
05.12.2020, 11:03
Пропатчил King's Valley - теперь работает с джойстиком (параллельно с клавиатурой) и выдаёт звук на Covox (если пожелает пользователь):
https://manwe.pdp-11.ru/?/games/patches

https://manwe.pdp-11.ru/articles/games/kings-valley.gif

также добавил переназначение управления в игру "КЛАД" (качать там же).

NEO SPECTRUMAN
06.12.2020, 01:11
Manwe, очень полезный ввкод для масштабирования RESIZE :v2_yahoo:

и ставитсо вокруг картинке (есть в расширенном режиме)

хттп://картинко.жпг

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

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


"Overkill"
уже было подумал какаято играбельная игра под бека
нет не играбельно

а на скриншотах прям похоже на нормальную игру
https://files.pk-fpga.ru/storage/pictures/soft/OverKill/overkill_10.png https://files.pk-fpga.ru/storage/pictures/soft/OverKill/overkill_15.png

лучше патчи cybernoid-а
чтоб пропускалась реклама самарских жестких дисков