Важная информация

User Tag List

Страница 40 из 40 ПерваяПервая ... 3637383940
Показано с 391 по 398 из 398

Тема: Игра "Зона" на ДВК

  1. #391
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от nzeemin Посмотреть сообщение
    Я поправил исходник
    А после трансляции всё сошлось? Я просто получил такой код на своих примерах, а ваш не транслировал.

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

    Цитата Сообщение от nzeemin Посмотреть сообщение
    Alex_K, спасибо. вы очень упорны.
    Не за что. Просто интересно посмотреть как OMSI Pascal транслирует в Макро. Довольно много интересного можно узнать. В OMSI Pascal версии 1.1 ($VER=59.) есть ошибка при выходе из цикла FOR по GOTO, в версии 1.2 ($VER=12.) они её исправили. Ну и много всякого другого.

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

    nzeemin (22.05.2021), Oleg N. Cher (22.05.2021)

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

  4. #392
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,061
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    А после трансляции всё сошлось? Я просто получил такой код на своих примерах, а ваш не транслировал.
    Да, всё сошлось.
    Различие только одном байте в заголовке, как и раньше:
    00000028: 0C 0E

  5. Этот пользователь поблагодарил nzeemin за это полезное сообщение:

    Alex_K (22.05.2021)

  6. #393
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ещё переменная V33156 наверное типа boolean. Да и сравнения if VAR <> false можно заменить на if VAR.

  7. Этот пользователь поблагодарил Alex_K за это полезное сообщение:

    Oleg N. Cher (22.05.2021)

  8. #394
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Исходник PIKNIK.SAV

    Кроме различных версий STALK.SAV существует версия под именем PIKNIK.SAV. Данная версия отличается от STALK различными надписями, но и тем, что она оттранслирована OMSI Pascal 1.2 с использованием библиотеки PASFIS версии 1.2G. Полный дистрибутив этой версии Паскаля я нашёл у hobot-а в этом сообщении. Быстренько перегнал быстрым дизассемблером SavDisasm от nzeemin. Текст на ассемблере для компиляции я не делал, просто повставлял свои комментарии в файл disasm.txt. В итоге оказалось, что в Паскалевских исходниках PIKNIK мало отличается от STALK, различия почти только в выводимых надписях, ну и в одном месте вместо WRITELN используется WRITE.

    Паскалевский текст я переформатировал, люблю когда end стоит на одной колонке с begin. Убрал лишние begin/end, но возможно не все. Склеил несколько идущих подряд WRITE/WRITELN в одну команду. Расставил после каждого оператора комментарии с их адресами в исполнимом модуле.
    Нашёл в этом дистрибутиве в библиотеке SYSLIB.OBJ функцию RAN, её и использую. В строчках оставил управляющие символы переключения алфавита, хотя вероятно их вставили вручную позже, игра писалась под КОИ-7 Н2, но такого исполнимого модуля я не нашёл.

    Сама игра скомпилирована с использованием библиотеки PASFIS.OBJ, для которой нужна аппаратная поддержка FIS, эмулятора FIS в ней нет, поэтому на ДВК с процессорами 1801ВМ1 и 1801ВМ3 игра неработоспособна. С эмулятором EM.SYS не проверял.

    Так что качаем дистрибутив PascalD, распаковываем, туда же кладём PIKNI2.PAS из вложения. Запускаем эмулятор RT-11.

    1. Транслируем игру Паскалем следующими командами:
    .RU PASSIM
    *PIKNI2,PIKNI2=PIKNI2

    Результат:
    ERRORS DETECTED: 0
    FREE MEMORY: 8813 WORDS

    2. Полученный файл на MACRO-11 надо прогнать через оптимизатор:
    .RU PASIMP
    *PIKNI1=PIKNI2


    Результат:
    IMPROVEMENT 484 WORDS 4.7%

    3. Транслируем MACRO-11:
    .MACRO/LIST:PIKNI1 PIKNI1

    4. Собираем исполнимый модуль:
    .LINK/MAP:PIKNI1 PIKNI1,PASFIS,SYSLIB

    5. Сверяем с оригиналом:
    .DIFF/BIN/OUT:PIKNIK PIKNI1.SAV PIKNIK.SAV

    Результат:
    ?BINCOM-I-No differences found

    Вот и всё. Ещё раз ОГРОМНОЕ СПАСИБО nzeemin за сделанные исходники STALK, без них мне пришлось бы очень тяжело.
    Вложения Вложения
    • Тип файла: rar PIKNIK.rar (53.7 Кб, Просмотров: 45)

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

    anasana (18.06.2021), Chewbacca (18.06.2021), Hunta (09.01.2024), nzeemin (18.06.2021), Oleg N. Cher (20.06.2021)

  10. #395
    Veteran Аватар для Radon17
    Регистрация
    01.12.2017
    Адрес
    г. Воронеж
    Сообщений
    1,070
    Спасибо Благодарностей отдано 
    572
    Спасибо Благодарностей получено 
    683
    Поблагодарили
    284 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Удалось разузнать немного о происхождении игры.
    (С)УЛЬЯНОВСК УЛПИ "ГОЛОГРАФИЯ"
    УЛПИ - Ульяновский политехнический институт, ныне УлГТУ
    "Голография" - лаборатория в этом институте.
    Благодаря товарищу, который работает в данном институте, мне удалось узнать контакт бывшего работника этой лаборатории. К сожалению из меня парламентёр неважный, да и про игру я знаю довольно мало... Так что предлагаю выбрать на форуме человека, который позвонит этому бывшему работнику и узнает подробнее. Все мы находимся в равных условиях, лично никто из заинтересованных в Ульяновске вроде бы не присутствует, из контактов имеется только телефон.
    Телефон я дам только одному человеку, чтобы особо не доставали бедного пенсионера.

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

    Alex_K (02.09.2021), anasana (01.09.2021), nzeemin (03.09.2021), Oleg N. Cher (01.09.2021)

  12. #396
    Master
    Регистрация
    19.11.2012
    Адрес
    г. Луганск
    Сообщений
    698
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    82
    Поблагодарили
    55 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Radon17 Посмотреть сообщение
    К сожалению из меня парламентёр неважный, да и про игру я знаю довольно мало...
    Да что вы тушуетесь, сами позвоните, представитесь как знакомый товарища из института, это сразу прибавит доверия.
    Просто сначала предложите ему зарегистрироваться на этом форуме, а если не захочет просто поговорите.

  13. #397
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,061
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Мне на почту на Boosty пришло письмо -- один из моих подписчиков нашёл автора игры.
    Игру написал Сергей Вершинин.
    Сергей передал следующий текст и разрешил опубликовать его здесь на форуме, публикую его без изменений:

    Вот уж не думал, что кто-то сейчас помнит про "Vagabondo". Посмотрел странички про игру - есть признаки, показывающие, что это в самом деле она. Правда, у меня она точно не называлась Сталкер или Зона. На ДВК в оригинале её файл назывался просто VV - чтобы не набирать длинное название. А в program name стояло название на Эсперанто (Vagabondo = бродяга - по названию прототипа).При идею создания: я прочитал в журнале Scientific American о программе, которая играла в игру Rogue. Сама по себе Rogue была эпохальной игрой, но у нас её не было (до того я про неё даже не слышал). Тем более - на ДВК. В статье про саму игру говорилось мало, но мне очень захотелось в неё поиграть.
    Игр у нас в то время был буквально десяток. Единственная игра, которую можно назвать приключенческой, была текстовой, с фиксированным сценарием. Она прямо так и называлась - Adventure. Тоже классика.
    Вот я и начал писать игру сам. Заодно изучая Паскаль, ибо от института у меня сформировалось крайне смутное представление об этом языке - без какой-либо практики. Поскольку про оригинал мало что было известно, я просто наполнял игру тем, что мне нравилось.
    Наверное, больше всего привлекла идея случайного мира - который не задан автором, а генерируется в начале игры. У меня он развёртывался из одного числа, которое получалось из числа, вводимого игроком, генератора случайных чисел и момента нажатия клавиши Ввод. Хмм, перечитал написанное - прямо-таки "вначале было слово", и слово было шестнадцать бит.
    Вообще-то, я не особо задумывался над конкретными деталями, и многое явно можно было сделать лучше, но тогда даже сравнивать было не с чем. Делал для себя, не рассчитывая, что это ещё кого-то заинтересует. В оригинале игрок спускается в подземелье за сокровищами, но я решил добавить туда элементы "Пикника на обочине". Поэтому там и золотой шар, и ведьмин студень, и прочее. Отдельные комнаты, соединённые коридорами, я заменил на уровни одинакового размера, разделённые стенами - так ресурсы использовались эффективнее, а мир стал как-то более насыщенным. Содержание тоже появлялось естественно. Персонажу надо есть - значит, нужна еда. Мир волшебный - значит, нужны волшебные предметы. Символов в коде больше, чем можно нагрузить смыслом - значит, сделаем фоновые предметы, типа надписи "Здесь-то мы его и съели".
    Был вариант, в котором после нахождения золотого шара и выхода на поверхность можно было пойти в подземелье заново. В этом случае всех предметов там было в два раза больше. Потом в три, и так далее. Ещё можно было при компиляции отключить проверку границ массивов, тогда исполняемый файл получался заметно меньше, но можно было залететь в страшное место, откуда не было выхода. Оно называлось "Array bounds error". Например, "зверь" сшибал всё на своём пути, и, если бежать от него вдоль стены, то он делал в стене дырки. Через такую дырку можно было пройти на соседний уровень не по лестнице, а прямо через стены, и какое-то время игра даже продолжала работать. А дальше уже был выход из области данных в область кода - "предметы" там были навалены кучей, но взаимодействие с ними портило уже сам код игры, и она быстро вылетала.
    Позже, когда я аспирантом вёл занятия в университете, разговорились с лаборантами, и их настолько заинтересовала игра, что они были готовы набрать её вручную для УКНЦ. Кажется, проблема была в том, что на ДВК был 8-дюймовый дисковод, а на УКНЦ - 5-дюймовый, но факт в том, что они набрали всё целиком по распечатке. Причём, почему-то запустить её нам так и не удалось. На этом вроде бы, всё и закончилось.
    Когда я начал работать в институте повышения квалификации работников образования, я с удивлением обнаружил, что моё "творение" разошлось по школам в пачке популярных игр.
    Если эта информация кому-нибудь интересна - буду рад. Мне было приятно вспомнить.
    С уважением, Сергей Вершинин

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

    Alex_K (08.01.2024), Hunta (08.01.2024), Radon17 (08.01.2024), randomizer (10.01.2024), shattered (09.01.2024), svofski (08.01.2024), Titus (08.01.2024), zebest (08.01.2024)

  15. #398
    Veteran Аватар для Radon17
    Регистрация
    01.12.2017
    Адрес
    г. Воронеж
    Сообщений
    1,070
    Спасибо Благодарностей отдано 
    572
    Спасибо Благодарностей получено 
    683
    Поблагодарили
    284 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Автор из Ульяновска, работал в той самой лаборатории "Голография"?

Страница 40 из 40 ПерваяПервая ... 3637383940

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

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

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

Похожие темы

  1. Ответов: 17
    Последнее: 26.12.2015, 23:22
  2. Ответов: 31
    Последнее: 15.04.2012, 19:24
  3. [аукцион] "корзины" от ДВК, Э-60
    от Agat в разделе Барахолка (архив)
    Ответов: 8
    Последнее: 08.11.2011, 14:22
  4. Ответов: 0
    Последнее: 15.08.2010, 14:38

Ваши права

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