- Игра Scramble для БК-0010
-
? Trunk17@ - 22.08.2018 08:34
Ищю игру детства. Клон игры Scrabler для бк-0010 https://www.youtube.com/watch?v=m-PDf1Su6gA с горизонтальным сайдскролером(как в оригинале). И это не игра Дженгурова 1992 г.в. где вертикальный скролинг.
-
? Александр... - 04.09.2018 04:23
Ну таких игр было штук 5, наверное. Первая игра Савина была на эту тему. Она так и называлась Вертолет. :) У DIM была похожая. Sopwith, может быть, кандидатом. Cave Rescurer из той же темы.
-
? Manwe - 04.09.2018 09:06
Bomber
-
? Trunk17@ - 04.09.2018 11:21
Увы. Не они. Там точно была тема космоса, там были космический корабль, похожий на оригинал, из врагов помню летающие тарелки, очень назойливые и трудные для прохождения. Похожа на space shuttle (https://www.youtube.com/watch?v=gFcB6K-bcc4), но более динамичная и со спрайтами оригинала scrabler-а.
-
? BD - 05.09.2018 00:13
*непобедимый*
-
? Manwe - 12.09.2018 00:50
Тогда Xenon: https://youtu.be/OmR_vR_kEO8
-
? Trunk17@ - 12.09.2018 08:21
Увы, нет. Xenon это похожий порт на Zyaps с Speccy.
-
? Manwe - 12.09.2018 09:40
Grizzly Shuttle?
Chronos?
-
? Manwe - 12.09.2018 12:42
Scent? https://youtu.be/jwmkF1kzul4
¤
Plane? https://youtu.be/PMVGax6PtfY (надоедливые тарелочки :)
-
? Manwe - 12.09.2018 19:29
Dark Fusion 2 https://youtu.be/oQ2zqgA1wsw
Flasse https://youtu.be/3yoeXx75Lkw
Bilateral Stamp (никогда её раньше не видел, где бы скачать?) https://youtu.be/zItfTs9pcpU
Cave Rescuer https://youtu.be/cV58xevdcEE
-
? Trunk17@ - 14.09.2018 18:30
Вот прям почти оно, Plane и Flasse, только направление не то. Там точно летел слева направо. Причем тарелки прямо максимально похожи на те, что в Flasse и визуально, и поведением AI.
-
? Manwe - 14.09.2018 18:55
Может быть это была какая-то левая модификация Flasse? Или графика из Flasse вставлена в другую игру.
-
? Manwe@ - 29.10.2018 19:58
Вот здесь потыкайте в названия игр, посмотрите скриншоты:
https://r-games.net/games/flight/
-
? ak@ - 30.10.2018 12:55
Manwe вот ,Bilateral Stamp,overkill если чё правильное название
-
? ak@ - 30.10.2018 13:00
сорри ,линк забыл =)
http://forum.pk-fpga.ru/viewtopic.php?f=23&t=5549
странно что раньше невидел
-
? ak@ - 30.10.2018 13:42
в рекламе кстати несколько игрушек пару из них даже было у меня ....но сейчас нет =)
-
? Manwe - 31.10.2018 20:17
а что за "драйвер EIS/FIS" там в описании упомянут?
-
? BD - 31.10.2018 20:26
mul/div полноценные из 326й прошивки (10й вектор). даже gid уже забыл как в MBR СМК их прописывать в загрузчик ))
-
? gid - 01.11.2018 09:49
Почему забыл?
Надо будет - руки вспомнят.
-
? Manwe - 01.11.2018 13:43
Прописать в загрузчик не проблема, в документации к контроллеру АльтПро описано.
Вопрос в том где именно эту библиотеку размещать в памяти, ну и собственно сама библиотека нужна.
¤
Я правильно понимаю, что можно прописать библиотеку в загрущчик логического диска, смонтировать его програамой EM и загрузиться с него де?
-
? gid - 01.11.2018 14:37
Там же, в документации к контроллеру (если я ничего не путаю) и написано, что это резидентный драйвер, он, если есть в МБР, загружается в сегмент по адресу 170000, в ту же страницу, где таблица разделов находится. И всегда доступен, пока кто-нибудь его не затрёт своими данными.
И ещё там было написано, как писать свои резидентные драйверы, чтобы туда же запихивать и использовать.
¤
Т.е. если использовать СМК и прописать в MBR драйвер EIS/FIS, он будет доступен прозрачно так же, как и эмулятор EIS/FIS в КНГМД с ПЗУ 326. И ничего никуда грузить не надо, всё делается автоматически, даже вектор 10 устанавливается при загрузке драйвера.
-
? BD - 01.11.2018 15:38
вот где взять готовый? д.б. перемещаемым и начинаться с NOP.
-
? BD - 01.11.2018 15:43
без него в ОС БК не работают архиваторы LZ/UZ и UNZIP.
-
? gid - 01.11.2018 16:57
Вот я, например, драйвер EIS в МБР подключал программой SETMBR, которая вместе с SERVICE2 идёт. Хотя этим вроде бы ещё какая-то прога занималась. Но сейчас уже не помню.
-
? Manwe - 05.11.2018 23:01
Что-то я не нашёл как потом удалить этот драйвер EIS из MBR...
-
? Manwe - 05.11.2018 23:35
Я так понимаю, можно взять этот драйвер с нулевой дорожки, сделать отдельный исполняемый файл для его резидентной загрузки и присовокупить к Overkill.
-
? Manwe - 06.11.2018 00:31
Минуточку, а не решается ли всё одной командой? MOV #160016,@#10
¤
Из документации к контроллерам AltPro:
160016 Точка входа эмулятора расширенной арифметики
Эмулируются команды EIS: MUL, DIV, ASH и ASHC.
Чтобы подключить эмулятор, занесите адрес его начала в вектор 10(8). При прерывании по резервной команде происходит обращение к эмулятору. Если код команды, вызвавшей прерывание, не является кодом одной из вышеперчисленных команд, происходит выход по вектору 4 с установленным битом C (стандарт RT11), иначе - выполняется программная эмуляция команды.
Имеется возможность подключения пользовательского драйвера расширенной арифметики (см. ниже).
-
? Manwe - 06.11.2018 17:34
Выковыриваю драйвер EIS из MBR. Хочу сделать его отдельно запускаемым перед игрой, чтобы игра не зависела от содержимого MBR.
Вырисовываются проблемы на горизонте:
1. Какие-то драйвера уже могут быть загружены, например тот же EM2 (представление логического диска под видом дисковода A: или B:), нельзя их перетирать;
2. Драйвер EIS должен определять не загружен ли он уже (из MBR или отдельно), и если да, то повторно не устанавливаться (а то может не хватить памяти);
3. В теории бывают разные драйвера EIS и просто так сравнением кода не определишь загружен EIS-драйвер или нет.
-
? Manwe - 06.11.2018 18:07
Вот что сразу непонятно:
запускаю EM2 в чистой MKDOS. Драйвер помещается по адресу 170000.
Первое слово - длина. 334 байта. Примерно так и есть (на самом деле 322).
Второе слово - список адресов ячеек-указателей, через которые производится адресация к данному участку памяти, список оканчивается нулем (цитата из документации). Там число 175776, как и ожидалось.
Третье слово - 0. Конец списка.
Казалось бы, следом должен начаться сам драйвер. С драйвером EIS так и было. А вот с EM2 - не так!
Четвёртое слово - какой-то мусор (54363).
И только с адреса 170010 начинается сам драйвер. Это же значение прописано в @#175776.
Налицо нарушение протокола! Или я чего-то не понимаю?
-
? Manwe - 06.11.2018 19:13
Ну ладно, я написал свой установщик EIS :)
gid, можно его как-то закинуть на диск "Overkill"? Там на образе дискеты 0 свободных блоков, но в реальности файлы занимают не всю дискету.
-
? gid - 06.11.2018 21:35
там файловая система - андосный Fat12, т.е. кластер 4 сектора, и иногда в конце файла остаётся много пустого места.
Только это слишком грязный и ненадёжный хак - прятать нужные данные в конце кластера.
Я мало интересовался, что там к чему, вот что мне известно:
¤
ENDBLOK - главный файл.
грузится из загрузчика по адресу 40000.
содержит в себе заставку, монитор БК10 и андос, в общем всю 4-ю страницу.
точка входа - 137410. там восстанавливается системная область 0..400
и загружается файл SFOGUS.EXE
¤
обозначения: * - защита, v - вирус, # - проверки
¤
SFOGUS.EXE - стартовый игровой файл. *v
грузится по адресу 500, точа входа 26110.
помещает по адресу 137500 модуль загрузки подгрузок. 137500 - jmp, 137502 - call
загружает и запускает FOGUS, DEMO5.BS, READ.BS
¤
READ.BS - адрес загрузки 500, точка входа 25530 *v
загружает и запускает SFOGUS.EXE
¤
FOGUS - адрес загрузки 500, точка входа 26530, #
загружает и запускает OPROS
¤
OPROS - адрес загрузки 500, точка входа 31670, *
загружает и запускает INSLOT1
¤
INSLOT1 - адрес загрузки 1000, точка входа 7300
загружает INSLOT2 по адресу 40000, а запускает по адресам 100000..137777
загружает и запускает STORY0
¤
¤
DEMO5.BS - адрес загрузки 500, точка входа 32030 *v#
загружает LEVEL5.VN по адресу 40000 в стр 6(?)
загружает LEVEL5.N1 по адресу 40000 в стр 2
загружает LEVEL5.N2 по адресу 40000 в стр 7
загружает и запускает LEVEL5.DEM
¤
LEVEL5.DEM - адрес загрузки 500, точка входа 37000
загружает LEVEL6.V по адресу 40000 в стр 1
загружает LEVEL6 по адресу 1000, точка входа 37000
¤
STORY0 - адрес загрузки 500, точка входа 14300
1. загружает STORY1 по адресу 40000 в стр 1
загружает STORY2 по адресу 40000 в стр 2
загружает STORY3 по адресу 40000 в стр 3
загружает STORY4 по адресу 40000 в стр 7
2. загружает STORY5 по адресу 40000 в стр 1
загружает STORY6 по адресу 40000 в стр 2
загружает STORY7 по адресу 40000 в стр 3
загружает STORY8 по адресу 40000 в стр 7
3. загружает STORY9 по адресу 40000 в стр 1
загружает STORY10 по адресу 40000 в стр 2
загружает STORY11 по адресу 40000 в стр 3
загружает STORY12 по адресу 40000 в стр 7
4. загружает STORY13 по адресу 40000 в стр 1
загружает STORY14 по адресу 40000 в стр 2
загружает STORY15 по адресу 40000 в стр 3
загружает STORY16 по адресу 40000 в стр 7
5. загружает STORY17 по адресу 40000 в стр 1
загружает и запускает SBOR_112 по адресу 1000, точка входа - 1000SBOR_112 - адрес загрузки 1000, точка входа 1000
загружает LEVEL1.V по адресу 40000 в стр 1
загружает MENU2.V по адресу 40000 в стр 2
загружает MENU3.V или MENU3K.V по адресу 40000 в стр 3 в зависимости от ранее выбраных условий
загружает NAGRUZ7.V по адресу 40000 в стр 7
запускает MENU3.V или MENU3K.V по адресу 75640
¤
MENU3.V - адрес загрузки 40000, точка входа 75640
загружает DYNAMIC по адресу 1000
загружает LEVEL1 по адресу 500, запускает с адреса 500
¤
MENU3K.V - адрес загрузки 40000, точка входа 75640
загружает DYNAMIC по адресу 1000
загружает LEVEL1.K по адресу 500, запускает с адреса 500
¤
LEVELn, LEVELn.K - адрес загрузки 500, точка входа 37000
¤
LEVELn.V - адрес загрузки 40000 в стр 1
¤
INFOn и ORDERn - фигня какая-то
¤
¤
т.е. для корректного взлома достаточно вычистить всего 4 файла:
SFOGUS.EXE
READ.BS
OPROS
DEMO5.BS
¤
Если INFOn и ORDERn бесполезный мусор - то можно их удалить и будет место для загрузчика драйвера EIS.
Или придумывать, какой файл запаковать БКпаком и прицепить туда драйвер EIS.
Или модифицировать ENDBLOK. т.е. кусок монитора БК10 там запаковать, в свободное место понапихать нужного, запустить это нужное, потом распаковать монитор БК10, чтоб всё как было стало.
¤
В общем, я простых путей не вижу.
-
? Manwe - 06.11.2018 22:59
А как объяснить что если в ANDOS выделить все файлы и директории, их суммарный размер в блоках намного меньше 1600?
-
? gid - 07.11.2018 09:32
в ANDOS на диск из 1600 блоков помещается всего 397 кластеров. если выделить все файлы и директории, то они покажут используемый размер как раз в 397 кластеров. Ни единого свободного нету.
Однако из-за того, что размер кластера - 4 блока, то последний из них в файле бывает заполнен незначительно. И если считать размеры файлов в байтах, то получается, что дискета заполнена на 2/3 всего. Из-за этого то многие и не любят АНДОС.
И если смотреть размер такой дискеты не в АНДОС, а в МКДОС, то оно будет показывать не правду, а какие-то свои представления о файловой структуре ФАТ.
-
? Manwe - 07.11.2018 14:25
Спасибо, теперь вник с кластерами.
Размер файла SFOGUS.EXE 30336, до полного кластера (34000) остаётся 3442 байта - можно впихнуть туда всё что угодно :)
-
? BD - 07.11.2018 15:13
-----
то оно будет показывать не правду, а какие-то свои представления о файловой структуре ФАТ.
------
andos.drv (andos.usr) не имеет представления о fat. просто конверирует каталог в понятный мкдос (п/п TRANSDIR, фрагментацию тоже не понимает). В 512 байтах что-то еще сделать сложно.
в MCbeta, если какой-то ахтунг и нет метки 51414 по смещению 402 в 0 блоке и запись не возможна - выводит на панели [!] инверсией ))
-
? Manwe - 07.11.2018 22:41
Всё-таки полезно решать задачи, не подсматривая в чужие решения :)
Написал тест для своего эмулятора расширенной арифметики. Сравнил с драйвером из SETMBR.
Прогон одиннадцати команд ASH с разнообразными параметрами и типами адресации показал, что моя программа на 23% быстрее.
Завтра доберусь до остальных команд.
-
? Manwe - 15.11.2018 00:03
Смотрю Overkill в отладчике - смешно:
MUL #100,R0
Не мог человек просто сделать
SWAB R1
ASR R1
ASR R1
?
Надо поковырять что там ещё есть. А то, может, и не нужен ей полноценный драйвер расширенной арифметики?
А то на моём она в какой-то момент вылетает. Хотя он проходит все синтетические тесты на 100%.
-
? Manwe - 15.11.2018 11:38
В памяти в десяти разных местах лежит такой код:
MOV #160016,@10
MUL #100,R1
¤
Эту дичь нужно заменить во всех местах на
SWAB R1
CLC
ROR R1
ASR R1
NOP
¤
Я заменял в отладчике на ходу, смотрел игру в режиме демо - всё работает, ничего не вылетает, никаких обращений к драйверу расширенной арифметики больше нет. Может быть в каком-нибудь другом месте игры (концовка? уровень с боссом?) ещё всплывёт MUL или DIV, но пока нет.
¤
Осталось определить в каком файле хранится этот код. Простым поиском по "160016" (0xE00E) не нашёл ни в одном файле.
gid, есть идеи?
-
? Manwe - 15.11.2018 12:05
а, ясно - файл LEVEL5.DEM заксорен числом 10133...
-
? gid - 15.11.2018 12:41
нету идей.
и, честно говоря, мне пофиг.
Я даже в писишные игры не играю (потому что нет денег на новую видеокарту, чтоб современный графоний смотреть, и нет лишних денег на электричество, ибо наше правительство вконец охуело с тарифами, и времени лишнего нету тоже), не то что в это БКшное убожество.
-
? Manwe - 15.11.2018 12:46
Правительство да. Надо сделать игру про это :)
Что до клёвых игр, то есть дешёвый вариант: GameBoy Advanced или Nintendo DS - там умопомрачительная библиотека игр, половина из которых стоят всех БК-шных и современных PC-шных игр вместе взятых. И время экономится: в GameBoy Advanced или Nintendo DS можно играть по дороге в метро или в автобусе.
-
? Manwe - 15.11.2018 15:24
Хм, простая замена кусков кода в исходном файле привела к неожиданному результату: всё работает, но корабль "разбивается" об воздух буквально сразу.
Нет там каких-нибудь подводных камней типа подсчёта контрольной суммы файла или ещё чего-нибудь в этом роде? Я лишь расксорил файл, заменил фрагменты кода и заксорил обратно. Сам код выглядит как и при замене в отладчике "на горячую". Проблема возникла в каком-то другом месте.
-
? gid - 15.11.2018 15:42
Есть. там всё есть. Я когда его хакал, убрал только защиту от копирования. Всё остальное - абсолютно нетронуто.
-
? Manwe - 15.11.2018 18:54
Прогресс: демо-режим хакнул. Теперь работает без MUL.
Игровой режим, оказывается, сделан отдельным исполняемым файлом с точно таким же кодом :) Сейчас буду искать и ковырять этот файл.
-
? Manwe - 15.11.2018 21:57
Не первый раз уже такая проблема: при переносе файлов между системами ANDOS и MKDOS содержимое портится. Долго бился над тем, что первый уровень игры не работает, а потом заново скопировал LEVEL1.K и всё заработало. Засада в том, что все уровни вплоть до 6-го не проверишь - не проходить же игру до конца!
-
? Manwe - 16.11.2018 00:32
Вроде, доделал.
Потестируйте, пожалуйста, кто любит играть в леталки :)
https://zx-pk.ru/threads/29756-patchi-k-igram.html
-
? Дмитрий - 16.11.2018 11:18
>> Я когда его хакал, убрал только защиту от копирования
А в чем состояла защита? Как работала?
-
? gid - 16.11.2018 12:31
Не помню. Запустите образ нехакнутого оверкилла и всё увидите.
Я уже не в том возрасте, когда интересна вся эта возня с защитами. Просто пока руки помнят, снял её и забыл.
-
? ak@ - 16.11.2018 19:45
вставьте оригинальный диск..и далее подгружался ролик с рекламой автора ...покупать эту оригинальную игру и другие по адресу =)
с игрой поставлялся специальный копировщик который её только и копировал ....при копировании чемто другим выдавал надпись что ранее
наверное какойто скытый сектор который просто так некопировался или проверка контрольной суммы =)
-
? ak@ - 16.11.2018 19:47
помоему гдето валяется некрэкнутый =) нужен?
-
? S_V_B - 16.11.2018 21:08
/*Я уже не в том возрасте, когда интересна вся эта возня с защитами.*/
А я думал что мы как раз в том возрасте.. чтобы впадать в маразм..
Когда возня с SilverLight доводит до тошноты..:)
-
? ak@ - 16.11.2018 21:18
=) ха ха ха
-
? BD@ - 16.11.2018 22:55
)) осваивал flash, когда их адоба еще не купила (макромедия, относительно web). все было понятно, даже скрипты. а сейчас.. тафик то не поддается подсчету.. хошь видео, хошь картинки по 5мб грузи на телефоны ))
-
? Manwe - 25.07.2019 11:29
Trunk17, вот ещё вариант леталки Flasse с переделанными спрайтами. Может, она?
http://thesands.ru/bk0010/FLS2.png
http://thesands.ru/bk0010/FLS2.bin
- << Форум