1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

DOSBox. Инструкция по использованию

Тема в разделе "Кладезь мудрости", создана пользователем Virgil, 3 авг 2006.

  1. Virgil Администратор

    Virgil

    Администратор

    Регистрация:
    2 янв 2005
    Сообщения:
    11.143
    Статья по использованию DOSBox на данный момент находится в нашей wiki и разделена на несколько частей.

    DOSBox в "вопросах и ответах".

    О DOSBox'е.
    - Что это такое и зачем оно нужно?
    - Какую версию использовать?
    - Как запустить игру в DOSBox'е?
    - Как запустить PC-booter игру (т.е. игру, запускающуюся напрямую с образа дискеты)?

    Команды DOSBox'а.
    - Я запустил DOSBox — получил чёрный экран и командную строку, что писать?
    - Как мне получить содержимое папки с игрой в DOSBox’е?
    - У меня есть образ диска/дискеты и я не хочу его записывать на реальный носитель или загружать в виртуальный привод для игры, есть ли способ подключать образ в DOSBox'е напрямую?

    Горячие клавиши DOSBox'а.
    - Как перевести игру в полноэкранный режим?
    - Как записать видео-ролик или сделать скриншот игры? Как записать музыку?
    - У меня не проигрываются видеоролики, записанные в DOSBox'е!
    - Игра идет слишком быстро/медленно, что делать?
    - Есть ли в DOSBOx'е возможность сохраняться в любой момент (как например в эмуляторе Super Nintendo)?
    - Как переназначить клавиши в DOSBox'е?

    Частые проблемы при запуске игр.
    - На моем ноутбуке при переходе в полноэкранный режим изображение глючит или игра вообще вылетает.
    - Картинка сжата или, наоборот, хочется, чтобы пропали пустые полосы по бокам экрана в полноэкранном режиме
    - Где мне искать файл настроек dosbox.conf?
    - В игре нет звука или музыки, хотя они должны быть
    - Я монтирую диск с игрой, как написано, перехожу на него и запускаю игру с помощью команды GAMES\GAME\GAME.EXE (пример), но ничего не работает.

    DOSBox для пользователей.

    DOSBox для знатоков.

    Прочие полезные ссылки:

    DOSBox.conf - полное описание.

    Примеры запуска игр в DOSBox.

    Краткая инструкция по запуску glide-игр в особой сборке DOSBox.

    Описание DOSBox.

    Русский перевод интерфейса DOSBox и ридми-файла к нему (с официального сайта) (продублировано в аттаче)


    Видео на 10 минут про основные моменты


    Относительно самой темы


    Здесь обсуждается только использование программы DosBox для запуска старых DOS же игр. Когда описываете проблему - пишите о ней развёрнуто т.е. что делали, в какой последовательности, где происходит ошибка и т.п. Все сообщения, не удовлетворяющие этим условиям будут удаляться без предупреждения - не хочу видеть здесь помойку. Та же учесть постигнет нетлёнки авторов, задающих вопросы, разобранные в этом посте. Так, что соизвольте сначала поискать ответ на интересующий вас вопрос.
     

    Вложения:

    Последнее редактирование: 15 июн 2021
    RobinGood, ZaRR, Mel Shlemming и 91 другим нравится это.
  2.  
  3. compart

    compart

    Регистрация:
    23 фев 2008
    Сообщения:
    4.323
    Запускал и в 0.71, и в 0.72, последующие версии мне не нравятся (глючат).
    На сайте DosBox-а указана именно версия 0.71 (если не ошибаюсь).
    С проблемой уже разобрались, но вот неплохо бы эту информацию поместить на страницу с игрой.

    Dungeon Keeper
    http://www.old-games.ru/forum/showthread.php?t=19856&page=14

    ЗЫ
    К слову, в TDC Release 6 есть аж 16 версий игры Digger, и вот не факт, что та, что есть на сайте, изначальная и верная... и это и к другим мелким играм относится...

    Goody - пропадает лестница, Planet of Zoom - где то на 10 уровне зацикливает полет, с Livingstone Supongo и Shamus то же какие то проблемы были, не могу сейчас вспомнить что конкретно, но использую другие версии, отличные от тех, что на сайте выложены...

    Уже вдоволь намучившись с Goody и перейдя на другую версию игры, заметил на сайте DosBox-а
    "Sometimes the game no longer accepts the command for using the ladder (enter button)"
    http://www.dosbox.com/comp_list.php?showID=358&letter=G

    А есть еще и такая версия
    [​IMG]
    [​IMG]

    И судя по всему, если посмотреть ролик на ютубе, должна быть такая же версия Livingstone, с начальной заставочной картинкой.
     
    Последнее редактирование модератором: 19 июл 2015
  4. kreol Старший офицер Чёрной Гвардии

    kreol

    Администратор

    Регистрация:
    2 июл 2007
    Сообщения:
    112.512
    Об этом просьба рассказать подробнее, если можно.
     
  5. compart

    compart

    Регистрация:
    23 фев 2008
    Сообщения:
    4.323
    del
     
    Последнее редактирование: 13 июл 2013
  6. Alkofribas

    Alkofribas

    Регистрация:
    12 июл 2013
    Сообщения:
    4
    War Wizard

    Скачал игру с Abandonia,запустил с помощью Досбокса 0.74.Главное меню появилось,выбрал Start new game,ввел имя,выбрал пол,нажал Save,появилось меню Memory,выбрал первую строку,ввел свое название,нажал Save.Далее появляется сообщение об ошибке: ERR:Cannot open init dungeon wplayer\savegam1\cara_v\cara_v.dgn in ngw(). Помогите решить проблему,заранее благодарю.
     
  7. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Советую скачать с нашего сайта.
     
  8. Alkofribas

    Alkofribas

    Регистрация:
    12 июл 2013
    Сообщения:
    4
    Скачал отсюда и запустил-так же не запускается,с той же ошибкой.
     
  9. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    kreol и Alkofribas нравится это.
  10. Alkofribas

    Alkofribas

    Регистрация:
    12 июл 2013
    Сообщения:
    4
    Благодарю,игра запускается!
     
  11. kreol Старший офицер Чёрной Гвардии

    kreol

    Администратор

    Регистрация:
    2 июл 2007
    Сообщения:
    112.512
    1. Объединено с темой по DOSBox'у.
    2. Данную сборку ("корейскую") можно ведь и с нашего сайта скачать.
    3. На страничке с игрой потом укажу, что запускать её стоит именно в данной сборке (здорово, что напомнил).
     
  12. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    http://www.vogons.org/viewtopic.php?f=31&t=7745
     
    kreol нравится это.
  13. Дарк Шнайдер Недопустимо инфантилен

    Дарк Шнайдер

    Регистрация:
    18 окт 2004
    Сообщения:
    21.873
    DOSBox SVN Daum builds Jul. 25. 2013
    http://ykhwong.x-y.net/

     
    compart, A.P.$lasH, kreol и ещё 1-му нравится это.
  14. netsky2004

    netsky2004

    Регистрация:
    31 янв 2007
    Сообщения:
    1.434
    Пишу сюда так как я уверен что это сбой Досбокса. Wolfenstein работал в старом DOSе и до версии 7.10 всегда нормально, но тут столкнулся с проблемой с уровнем 14 в Spear of Destiny (v1.4): собрал все золото, но 100% treasure показывать не хочет, показывает только 98%. Переигрывал несколько раз, менял настройки в DOSbox, но бесполезно. DOSbox у меня SVN версия вроде свежая b и не могу понять что за странный сбой со счетчиком?
     
    Последнее редактирование: 28 июл 2013
  15. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Любые баги игр будем сваливать на досбокс? И с чего такая уверенность, что собрано именно 100%, а не на самом деле 98%?
     
    Eraser нравится это.
  16. Eraser Чистильщик

    Eraser

    Хелпер

    Регистрация:
    29 дек 2001
    Сообщения:
    10.249
    Собственно, Вольф и без Досбокса запускается в XP, можно же загрузить сейв и убедиться.
     
  17. VladimIr V Y Анимешник/Ретроманьяк

    VladimIr V Y

    Регистрация:
    27 май 2006
    Сообщения:
    9.540
    netsky2004,

    А каким образом эмулятор может вызывать сбои в геймплее?
     
  18. R4kk00n Benched arcade playa

    R4kk00n

    Модератор

    Регистрация:
    28 мар 2005
    Сообщения:
    9.195
    VladimIr V Y, у меня был прецедент с MAME+ и Mars Matrix. Не берусь ничего утверждать ничего в данном случае ничего.

    fixxed for teh great justice!
     
    Последнее редактирование: 29 июл 2013
  19. Рыжий Тигра Сам себе «пират»

    Рыжий Тигра

    Регистрация:
    3 май 2012
    Сообщения:
    1.823
    Кривой эмуляцией, например. Особенно напоровшись на защиту от отладки и эмуляции. :-(
     
  20. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
    Возникла необходимость задействовать виртуальный принтер, попробую поделиться опытом.

    На VOGONS, в основном, пытаются на реальных USB-девайсах из DosBox печатать, а мне нужен был именно виртуальный, т.к. много всякого непотребства на него выводить планировалось, в том числе командные коды и дёргать реальный принтер не хотелось.

    Как вы знаете, стандартный DosBox принтер вообще не поддерживает - позиционируется как игровая машинка, нужен SVN-Daum. Заходим к нему в настройки, наивно ставим в секции [printer] параметр printer=true, пишем в консоли echo Yahoo! > PRN и понимаем, что нифига не печатает.

    И правильно делает, никто ведь не знает, на каком порту принтер висит. Заходим в секцию [parallel]. Печатать будем на LPT1. В числе доступных значений у параметра parallel1 есть file. Казалось бы, это именно то, что нам нужно.

    Код:
    [printer]
    printer=true
    dpi=360
    width=85
    height=110
    printoutput=png
    multipage=false
    docpath=.
    timeout=0
    
    [parallel]
    parallel1=file
    Пишем в консоли echo Yahoo! > PRN

    Где наш файл?

    Не поверите, он в каталоге CAPTURE - там же, где и все скриншоты с видеороликами. Расширение у файла PRT, все команды и данные сохраняются в сыром виде. Простейший DIR > PRN создаст текстовый файл со списком файлов.

    Во-первых, если вам этого достаточно, секция [printer] не понадобится - параметра parallel1=file из [parallel] для такого функционала достаточно. Таким образом:

    Код:
    [parallel]
    parallel1=file
    И каждая сессия печати будет сохраняться в CAPTURE в виде файла с расширением PRT.

    Мне этого мало - желательно, чтобы работало графическое представление, стили шрифтов, плотность печати. Пробуем настроить.

    Код:
    [parallel]
    parallel1=printer    # виртуальный матричный принтер
    Теперь печать должна идти через виртуалку, параметры которой настраиваются в секции [printer]. Оставляем стандартные параметры:

    Код:
    [printer]
    printer=true
    dpi=360
    width=85
    height=110
    printoutput=png
    multipage=false
    docpath=.
    timeout=0
    Пишем в консоли echo Yahoo! > PRN

    Где наш файл?

    Уже не в CAPTURE. Теперь, чтобы выставить путь для сохранения документа, нужно изменить параметр docpath. Какой подвох ожидает трудолюбивого настройщика? Точка, указанная в качестве значения по умолчанию - это не текущий каталог, из которого производилась печать, там вы свой файл не найдёте. Это рабочий каталог самой программы DosBox.

    Другими словами, к виртуальном диску, на котором расположено ваше приложение, он никак не относится. Этот путь указывает на каталог реального винчестера. Например, C:\ или D:\PrintOutput (завершающую обратную косую можно не ставить - программа добавляет её в любом случае). Между прочим, имя файла указывать нельзя, это именно каталог, а имя формируется автоматически.

    Как же будет называться файл?

    Если printoutput = ps (PostScript), в зависимости от параметра multipage DosBox создаёт pageN.ps (multipage = false) или docN.ps (multipage = true), где N - первое возможное число от 1. Это значит, что счётчик не просто накапливается - проверяется первый доступный вариант. Скажем, если у вас на винте находятся page1.ps, page2.ps и page3.ps, а вы удалили page2.ps, при следующей печати будет повторно зайдествован индекс 2.

    Если printoutput = png или bmp, вариант с именем doc вам не встретится, только page.

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

    "Какое-то время" задаётся параметром timeout. Если поставить слишком маленькое значение timeout и программа не успеет распечатать страницу за этот промежуток (скажем, изображение медленно уходит на печать), большая страница разделится на несколько маленьких.

    Если он равен нулю, ситуация налаживается - DosBox ждёт вечно. Так ли это хорошо? Пока вы не допечатаете до конца страницы, он не сохранит изображение. Программа может отправить команду "конец страницы", но при простейшем type filename > PRN этого не происходит. Сделаем это сами - напишем простенькую утилитку FF (form feed), которая отправит на принтер 0Ch - конец страницы. Прикрепляю её к сообщению. Всего 11 байт, можно добавить в батник, печатающий текст.

    Код:
    type %1 > prn
    ff
    Как только FF завершит работу, DosBox создаст новое изображение с текущей страницей, даже если она не заполнена до конца.

    (если ручками в конце файла поставить этот же символ - 0Ch, получится то же самое, выбирайте сами - тот же Turbo Assembler при создании листинга программы именно так и поступает)

    Итак, принтер печатает в PNG и всё почти замечательно. Одна проблема - вместо кириллицы идут кракозябры. Я совершенно не помню, как это делалось в DOS - на тот момент (конец 90-х) у меня не было принтера, так что если я где и читал, как это решалось, уже забыл.

    К счастью, исходники принтера в DosBox неплохо читаются и служебные команды понять можно. Кодовая таблица 866 в наличии есть, но она не выбрана - по умолчанию во все 4 слота для кодировки ставится таблица 437.

    Если то, что у меня получилось - велосипед, отвернитесь и не читайте, я другого способа не знаю :)

    Берём контрольную последовательность 01Bh, 028h, 074h и ставим для принтера в слот первой кодировки таблицу 866, которая идёт у них 14-й по счёту.

    Интересно, что в этом месте у принтерного патча есть небольшой глючок, частенько встречающийся у многих программеров:

    PHP:
    case 0x274// Assign character table (ESC (t)
            
    if (params[2] < && params[3] < 16)
            {
               
    charTables[params[2]] = codepages[params[3]];
                   
    ...
    а должно быть 15потому что:

    const 
    Bit16u codepages[15] = {0437932850851853855860863865852857862864866};
    Ошибка некритичная, потому что при попытке выбрать 15-й элемент массива подставляется стоящая дальше в памяти нулевая ячейка, а ноль в качестве индекса, как видно по началу массива, допускается:

    Код:
    case 0: // Italics, use cp437
    Вот и всё. Итак, чтобы печатать в PNG кириллицу, достаточно сделать следующее:

    Код:
    [printer]
    printer=true
    dpi=360
    width=85
    height=110
    printoutput=png
    multipage=false
    docpath=c:
    timeout=0
    
    [parallel]
    parallel1=printer
    ...и запустить перед печатью мою утилитку - прикреплённый к этому сообщению файл pr866.com. Как правило, достаточно сделать это один раз при старте DosBox.

    Если файл не создаётся, значит страница заполнена не до конца. Печатайте через батник:

    Код:
    type %1 > prn
    ff
    Если я где-то ошибся, поправьте, не сочтите за труд.

    Будьте здоровы и счастливы, большой привет.
     

    Вложения:

    • pr866.zip
      Размер файла:
      380 байт
      Просмотров:
      248
    • ff.zip
      Размер файла:
      368 байт
      Просмотров:
      178
    Последнее редактирование: 1 авг 2013
    phase, Sherhan007, Vladimir 777 и 7 другим нравится это.
  21. kreol Старший офицер Чёрной Гвардии

    kreol

    Администратор

    Регистрация:
    2 июл 2007
    Сообщения:
    112.512
    A.P.$lasH, я, наверное, всё подробно прочитаю вечером, но считаю, что это просто замечательное руководство. И его, наверное, стоит перенести в wiki.

    Да, это общеизвестный факт, и это очень плохо. Потому что есть игры - игры, да, - в которых нужен принтер. Пример - раритетнейшая детская игра Designasaurus. На сайте есть. Там детям предлагается (в одном из режимов) придумать и нарисовать из элементов собственного динозавра, а потом распечатать рисунок на принтере. Но современные дети, если вдруг кто-нибудь из них захочет поиграть в эту игру, такой радости лишены.

    Уточню, что в этом последнем абзаце своего сообщения я ни на что не намекаю и ни о чём не прошу, а просто рассказываю о том, что такое существует. Так что игры, в которых задействован принтер, БЫВАЮТ.

    ---------- Сообщение добавлено в 16:56 ---------- Предыдущее сообщение размещено в 16:55 ----------

    Да, и вопрос: эту утилиту можно будет выложить на сайте (понятно, с указанием авторства)?
     
    hobot и A.P.$lasH нравится это.
  22. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
    Если она потребуется, я ничего против не имею.

    Мне казалось, что есть более красивый способ, но сходу не нашёл.
     
    hobot нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление