LINUX.ORG.RU

5
Всего сообщений: 47

Как настроить доступ к принтеру через dosemu и dosbox?

Как настроить принтер под эмулятором? Manjaro linux, Epson lx-300+II Софт - текстовые редакторы DOS:

dosemu ~/.dosbox/disk/WD/WD.EXE

dosemu ~/.dosbox/disk/LEX/LEXICON.EXE

dosbox — бесит! error 200 с LEX не обрабатывает, после перехода приложения в fullscreen по возвращению уродует либо разрешение экрана, либо зеркалирует рабочие столы на двухмониторной системе. Приходится каждый раз вручную возвращать настройки. И прозрачность убивает. dosbox must die, хорошо, что есть dosemu.

Редакторы брал здесь:

 ,

hikikomori ()

Растянуть изображение в Dosbox

http://0x0.st/iR83.png

С Lines та же фигня. В игре, где есть квадраты, на современных мониторах они выглядят, как прямоугольники. Надо как-то растянуть по-вертикали, чтобы квадраты стали квадратами. На ЭЛТ-мониторе всё нормально.

То есть, я правильно понимаю, что для DOS делали игры, выводя квадраты не с одинаковым количеством пикселей по-горизонтали и по-вертикали? Смотрели, как смотрится на экране, и только потом задавали размеры объектов?

В общем, что делать? Либо параметры для Dosbox. Либо настройки для ffmpeg для растягивания видео на записи геймплея.

 , ,

ZenitharChampion ()

dosbox и раскладка

Всем привет! Продолжаю серию экспериментов «а запущу как я в голой консоли…» на этот раз, dosbox. Запускаться запускается, но раскладка уехала. Например,цифры 7,8,9,0 висят на tab,q,w,e,r, плюс и минус на t,y, а Backspace - u. буквы u,i,o,p висят на клавишах a,s,d,f, то есть раскладка как бы съехала вниз на один ряд и где-то 6-8 символов влево.

keyboardlayout=us103

в ~/.dosbox/dosbox-0.%тут номер версии,не помню%.conf не помогает, другие раскладки тоже ничего не меняют

upd решилось usescancode=false

 

d09 ()

Деление DD на DD в TASM на DOS

Есть V7 DD 0ABCDEFH V5 DW -3, -7, 91 V4=-123

Надо сделать: V7 /= V4 + V5[0]++

Что я сделал: разсплитил V7 на AX и BX (ax = ab, bx = cdef), сложил v4 и v5[0] (заранее инкрементировав v5[0]).

А дальше у меня идеи закончились. Регистра всего 4 в моем распоряжении, ax и bx заняты v7. CX и DX содержат в себе результат выражения V4 + V5[0]++ Код:

;V7 IS SPLITTED TO AX BX. AX = 00AB, BX = CDEF     
    ;V7 /= V4 +V5[0]  
    XOR DX, DX
    XOR CX, CX
    
    MOV DX, V4 ;DL = 85H
    
    INC V5[0] ;V5[0] = 0FFFEH
    
    ADD DX, V5[0] ;FFFE + FF85H
    ADC CX, 0
    
    ;CX DX -> RESULT OF V4 + V5[0]++

Перемещено leave из general

 , , ,

durambes ()

Принципы Юникса в игростроении

Множество мелких программ, каждая из которых делает только 1 действие?

Вот как некоторые игры делают: https://www.myabandonware.com/game/hobbit-the-true-story-26u#download Текстовый квест в виде набора BAT-файлов. Для каждого действия (look, go...) — свой командный файл. Состояние хранится в системных переменных и может быть сохранено в файл или загружено.

Сюжет — посредственная пародия на Хоббита. В Досбоксе должно заработать.

 , , ,

question4 ()

Собрал первую программу под DOS :)

Всё началось с этой темы: Debian 2.0 (комментарий)

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

Оказывается ещё живо :) FreeDOS 1.2 - 25 декабря 2016, ну и DOSBox жив.

И даже есть несколько живых компиляторов.

1) https://github.com/open-watcom/open-watcom-v2

Очень приятно, что ребята которые его пилят, запилили Coverity Scan и Travis. Можно скачать самый новый компилятор https://github.com/open-watcom/travis-ci-ow-builds/archive/master.zip собранный под windows и linux сразу.

Огорчает лишь поддержка стандартов, частично С99 и очень частично C++11, но зато я понял, почему кто-нибудь может начать писать на С89 в 2019 году, всё-таки не все живые компиляторы осилили С99...

2) http://www.delorie.com/djgpp/ Самый настоящий gcc под DOS. Не смотря на неинформативный сайт, с очень скудной помощью: https://imgur.com/a/e5mWNN5 gcc работает. Библиотека С реализована частично, в частности нет файла complex.h, может ещё чего-нибудь нет. Но в целом работает, и не только С, но и С++ и, наверное, другие языки gcc.

И так выглядит моя первая программа под DOS: https://imgur.com/a/qEN79yP

Не знаю зачем я это написал, просто захотелось кому-нибудь рассказать...

А Linux, тут вот причём, компилятор работает под Linux:

i586-pc-msdosdjgpp-gcc -v
Using built-in specs.
COLLECT_GCC=i586-pc-msdosdjgpp-gcc
COLLECT_LTO_WRAPPER=/usr/local/djgpp/libexec/gcc/i586-pc-msdosdjgpp/8.2.0/lto-wrapper
Target: i586-pc-msdosdjgpp
Configured with: ../gnu/gcc-8.20/configure --target=i586-pc-msdosdjgpp --program-prefix=i586-pc-msdosdjgpp- --prefix=/usr/local/djgpp --disable-nls --disable-plugin --disable-lto --enable-lto --enable-libstdcxx-filesystem-ts --enable-libquadmath-support --with-gmp=/home/fsb4000/github/build-djgpp/build/djcross-gcc-8.2.0/tmpinst --with-mpfr=/home/fsb4000/github/build-djgpp/build/djcross-gcc-8.2.0/tmpinst --with-mpc=/home/fsb4000/github/build-djgpp/build/djcross-gcc-8.2.0/tmpinst --enable-version-specific-runtime-libs --enable-languages=c,c++
Thread model: single
gcc version 8.2.0 (GCC) 

 , , , ,

fsb4000 ()

Разрешение экрана и странное поведение dosbox

Здравствуйте.

Проблема в следующем: убил ноут (разрешение было 1366x768), вытащил из него непострадавший жёсткий диск, засунул в десктоп (разрешение 1280x1024), пару конфигов подправил, и живу, как жил, железо подхватилось практически без проблем. xrandr показывает «DVI-I-1 connected primary 1280x1024+0+0», всё отлично.

Но возникла странность в dosbox: у него в конфиге мной прописано подхватывать «родное» разрешение монитора:

fullresolution=original
...
windowresolution=original

Но, несмотря на это, в оконном режиме я имею соотношение сторон 16:9, а в полноэкранном - вообще какой-то кошмар с сервисным сообщением монитора, свидетельствующим о том, что dosbox считает продолжает считать «родным» разрешением старое 1366x168.

Я не понимаю, куда рыть, если есть соображения - буду рад узнать.

Спасибо за внимание.

P.S. принудительно вбить в конфиг разрешение в явной форме пытался - без толку.

 , ,

piyavking ()

DOSBox обновился до версии 0.74-2

Сабж. C 2012-го года до сегодняшнего дня последней версией была версия 0.74. Но, сегодня пришла версия 0.74-2!

Скачать можно здесь: https://sourceforge.net/projects/dosbox/files/dosbox/0.74-2/dosbox-0.74-2.tar...

 ,

saahriktu ()

Делюсь своим конфигом Dosbox

Распаковать этот архив куда-нибудь, например в /home/username/DOS

Конец файла /home/username/.dosbox/dosbox-0.74.conf (раздел [autoexec]) привести к виду:

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.
mount c /home/username/DOS
c:
c:\keyrus\keyrus.com
cls
@type c:\keyrus\startup.txt
@pause
PATH c:\nc
nc
exit

Наслаждайтесь. Тестирование и отзывы приветствутся!

 , ,

ZenitharChampion ()

проблемы с Daggerfall

Я тут намедни решил наконец-то пройти Daggerfall (раз в 7 уже пытаюсь из подземелья выбраться). Проблема в том, что я запускаю его в dosbox через wine. Всё работает отлично, но я не могу пользоваться хоткеями, вообще. Это значит, что fast travel для меня недоступен. Есть ли мысли, как это можно пофиксить?

 ,

ZERG ()

Курсор мыши дергается.

Захотел поиграть в Даггерфол, но мышь странно себя ведет в игре. На стандартных настройках при перемещении курсор «прыгает» на своё предыдущее положение.

Попробовал запускать с переменными окружения SDL_VIDEO_X11_DGAMOUSE=0 и SDL_VIDEO_X11_MOUSEACCEL=«1/1/100» (отключает ускорение мыши). Вроде работает лучше, но когда двигаю курсором, потом останавливаю, курсор 1 раз прыгает вниз. В полноекранном и оконном режиме одинаково. В винде таких проблем не наблюдал.

Как пофиксить?

Из конфига досбокса:

( читать дальше... )

 ,

rumly111 ()

Dosbox, Ubuntu, core=dynamic

Просто любопытно. Может у кого-нибудь найдётся время поговорить и пояснить.

Иногда гоняю старые программки под Dosbox (по моему - удивительная ирония судьбы в том, что при наличии эмулятора под любую ОС эти древние программы сейчас оказались самые платформонезависимые, каким бы жутким ассемблером они не писались)

В Ubuntu, к сожалению, Dosbox сваливается при конфигурации с core=dynamic. (Само окно схлопывается с сообщением «Exit to error: DRC64:Unhandled memory reference»)

У меня параллельно установлены разные линуксы. Так вот, если сидя в Ubuntu запускать бинарник dosbox из примонтированных /mnt/fedora/usr/bin или /mnt/suse/usr/bin, то он прекрасно работает под Ubuntu с тем же конфигом (core=dynamic).

Декларативно версия Dosbox одна и та же везде (0.74).

Собственно, любопытство вызывает что именно происходит. Точно не ядро в линуксах. Точно не библиотеки. Это или какие-то опции компилятора при сборке dosbox должны быть (какие? можно как-то узнать как собирался он в федора или сусе?), или какие-то собственные патчи мейнтейнеров (?) (а так бывает, что один и тот же с виду пакет собирается с разными исходниками по сути? т.е. получается, что пакет АБВГД под Ubuntu и пакет АБВГД под SUSE - буква в букву и с точностью до версии - запросто могут быть совсем разными пакетами?).

Перемещено Shaman007 из talks

 

Deleted ()

Dosbox-daum и ошибка Warning: PAGING_NewPageFault() more than one level

Привет. Я использую Dosbox-daum, собранный из исходников отсюда. При запуске Windows 98 возникает ошибка:

Warning: PAGING_NewPageFault() more than one level, now using level 2
Warning: PAGING_NewPageFault() more than one level, now using level 2
Warning: PAGING_NewPageFault() more than one level, now using level 3
Warning: PAGING_NewPageFault() more than one level, now using level 3

После каждого повышения числа бьётся память. Я уже привык делать бэкап образа диска перед началом работы. Как это починить, чтобы это больше не возникало?

Интересно что сама установка всегда завершается успешно, багу подвержена только загруженная система. В «Безопасном режиме» бага тоже нет.

Как воссоздать. Вот моя сборка. Вот образ пустого жёсткого диска (последняя стабильная версия Dosbox-daum имеет баг - прога не может создать образ сама, он не работает). Скачиваем образ дискеты DOS 6.22 (первой дискеты достаточно) и ISO Win98. В конфиг-файл Досбокса вносим:

[autoexec]
# Lines in this section will be run at startup.
# You can put your MOUNT lines here.
ldgfxrom /media/data/ISO/win98/86c764x1.bin
imgmount a /media/data/ISO/DOS622/Dos6.22.img
imgmount c /media/data/ISO/win98/hdd-2gb.img -size 512,63,64,1023
imgmount d /media/data/ISO/win98/WIN98_RUS.ISO -t iso -fs iso
boot -l a

Файл прошивки видеокарты не обязателен, брал здесь.

Создаёте fdisk-ом разметку на C:, потом форматируете, делаете sys c:. Копируете с D: установщик (или как вариант, прописываете OAKCDROM.SYS и MSCDEX.EXE в конфигурационные файлы на C:). Затем меняете в конфиге boot -l a на boot -l c. А вот и скриншот, и ещё!

 , ,

ZenitharChampion ()

DOSBox: can't init sdl unable to open mouse

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

На всякий случай поясню - речь идёт о запуске без иксов, из консоли. Под иксами всё, разумеется, работает.

 , , , ,

meliafaro ()

Как в интерпертаторе dosbox получить значение переменной окружения?

Как в командном интерпретаторе dosbox получить значение переменной окружения? %переменная% почему-то не работает.

 

normann ()

нестандартный подход к linux-based системам

здравствуйте. меня зовут Паша, мне 24. 24 года из них мне нечего делать и я занимаюсь всякой ерундой, в частности, 11 лет из них я пользуюсь линуксом в том или ином виде, и он не принёс мне за все эти годы ничего, кроме боли и страдания. Я долго думал, как я могу отомстить этой системе, максимально извращённо унизив её в ответ. Не так давно я наконец придумал несколько решений.

  • Аналог EndlessOS на основе Slackware.
    Ну, тут всё просто: Slackware с systemd и запущенным поверх них fvwm-crystal (ну или чем-то сравнимо современно-старпёрским по духу, но поверх wayland). Всё прикладное ПО распространяется в виде flatpak/snap-пакетов. Таким образом решаются проблемы с зависимостями в Slackware.
  • Современный десктоп с композитингом и выводом через libcaca.
    Обычный gnome3 с анимациями через llvmpipe, только для вывода используется цветной ASCII ART в высоком разрешении.
  • Аналог Android с виртуальной машиной DOS вместо виртуальной машины Java.
    Тут следует отвести ядру линукса место обычной запускалки чего-то другого, максимально урезав аналог юзерспейса «настоящих линуксов», таким образом максимально унизив эту ОС.

    Вместо виртуальной машины Java я предлагаю запускать виртуальную машину DOS. В самом простом варианте можно сделать так: собрать ядро линукса и initrd с musl и минимальным набором библиотек/ПО, нужных, чтобы запустить какой-нибудь dosbox или dosemu/dosemu2. Больше ничего кроме эмулятора DOS и служебного ПО там не крутится. В итоге получается как бы DOS, но с поддержкой кучи современного оборудования: звуковух, сетевух, тачскринов и так далее. Красота! Проблема в том, что DOS крут именно тем, что даёт прямой доступ к реальному железу. Для этих вещей можно делать слепок состояния виртуальной машины, ну, в смысле, какой софт установлен, делать на его основе образ FreeDOS и перезагружаться в него, чтобы там можно было получить доступ, потом возвращаться назад. Или чтобы изначально был общий FAT32-раздел и был выбор, в каком режиме грузиться: в режиме этого эмулируемого ДОСа или в режиме настоящего ДОСа, но так, чтобы установленное ПО и файлы были общими.

    Поддержка оборудования не совсем простая тема: ведь всякий там WI-FI и вообще сеть нужно настроить. Нужно написать frontend-софт под этот ДОС, который будет каким-то образом взаимодействовать с софтом под нижележащим линуксом. Ну, т.е. написать фронтенд для NetworkManager под DOS, например. И так далее.

    Ещё написать клиенты для дропбокса того же, взаимодействие с монтируемыми FUSE файловыми системами. Ну и заняться модернизацией экосистемы ДОС: нужны клиенты instagram, например, хотя бы чтобы постить скриншоты и фото десктопа с модными эффектами.

    Можно пойти и дальше и сделать на базе этого современный многозадачный защищённый DOS. Каждая программа будет запускаться в специальном контейнере (можно сделать для каждого приложения набор разрешений, как в Андроид), как-то по-умному будет разруливаться взаимодействие задач (через сеть и файловую систему). UKSM будет использоваться, конечно. Поддержка многопользовательских конфигураций, какое-нибудь умное разграничение прав доступа...

    Приложения можно будет устанавливать из специального клона Google Play. Монетизацию нужно обдумать отдельно.

    Если запускать всё это поверх Wayland, а не fbdev, появляется возможность привнести в DOS композитинг и эффекты всякие, анимации там. Ресайзить окошки особо не поресайзишь, но можно будет хоть масштабировать.

    В качестве нижележащей файловой системы вполне можно использовать даже вещи вроде btrfs/ZFS, в случаях, когда в этом будет возникать практическая необходимость. Раз это виртуализация, то и checkpoint-restore тоже будет, и миграция приложений по сети.

    Ну и да, раз уж система получается универсальной, можно задуматься о том, чтобы предустанавливать её и на мобилки тоже. На разные платформы вообще. Convergence, о которой мечтал Шаттлворт.

    А самое главное, под неё уже есть готовая экосистема. Масса приложений, в том числе игр. По-моему, перспективнейший стартап!

  • Linux как запускалка для wine.
    как получить толковую foss операционку из того, что есть
    Свой принципиально новый реактос на базе вайна и линукса
    вполне возможно, что я и первое не сам придумал, а сначала прочёл второе, а потом вспомнил через какое-то время, но забыл, что я это прочёл, а не придумал. жаль, если так.

    но в общем, тут два момента: с одной стороны нужны виндовые фронтенды как-то взаимодействующие с бэкендами под линуксами. а с другой - интересно пофантазировать, как скрещиваются технологии винды и линукса. ZFSonLinux, zram там и так далее. но если уметь запускать, например, каждую виндовую программу в отдельном контейнере под таким десктопом, ограничивая в правах на уровне wine, чтобы было сложней получить нужные привилегии вирусу под винду.

  • Контейнеры для виндовых приложений вообще.
    docker-контейнеры с урезанным wine для запуска каких-то конкретных виндовых приложений. Даже чисто консольных серверных, так даже интереснее.
  • Аналог docker-контейнеров на основе Windows 98 Lite (на самом деле не аналог) / dos extender`ов.
    Windows 98 ужимали до 9 мб. На её основе можно делать маленькие виртуалки для конкретной софтины: одна виртуалка под конкретную софтину или use-case. Если Windows 98 слишком большая и ресурсоёмкая, можно ужимать Windows 95. Кроме того, частичная поддержка win32-софта есть тут (поддерживает в том числе и GUI, не развивается) и тут (развивается, но GUI не умеет). Вот тут описана дискетка, с которой запускается FAR. Да, вы правильно поняли, дискеты в рамках этого проекта тоже будут использоваться (образ «контейнеров» будут распространяться в качестве образов дискет либо физических дискет).

Хотя, пожалуй, самое циничное издевательство над ядром линукса уже придумано. Сложно пойти дальше.

 , , , ,

Deleted ()

Есть ли возможность сделать у dosbox что-то типа снапшота?

Как известно, в некоторых dos-игорях не было возможности сохранения. Нет ли возможности её реализовать сторонними средствами при помощи снапшотов памяти (аналогично спящему режиму)?

 

te111011010 ()

DosBox, Xubuntu и комбинации клавиш

Не работают комбинации клавиш Ctrl+Fn в dosbox в xubuntu 16.04. Зашёл в настройки клавиатуры xfce — там не вижу, чтобы данные комбинации клавиш использовались. Но тем не менее dosbox не реагирует.

 ,

te111011010 ()

SB AWE32 в 2017 году

Имеет ли смысл сабж? Пытаюсь собрать комп для старых квестов. Нашёл в кладовке AWE32. Под досом - работает, но но под ДОСом, как минимум в некоторые квесты на этой машинке играть невозможно: P3-1300 для них быстроват.

Соотвественно, можно поставить Linux, там есть dosbox и scummvm. Но там есть и pulseaudio. Будут хардверные фичи AWE32 использоваться, или он с pulseaudio превратится просто в тормозящую isaшную звуковуху, и лучше ставить SB Live?

 , , , ,

alt-x ()

DosBox на Raspberry Pi

Почему бы и нет? Он собран, опакечен и запускается (raspbian8, RPi 3B). Производительности вроде достаточно чтобы поиграть как минимум в первый x-com. Если бы не одно НО:

Игра использует видеорежим 640х400, я использую монитор 1280х1024, но досбокс отказывается масштабироваться в 2 раза в оконном и полноэкранном режиме. В конфиге указано:

[sdl]
fullscreen=false
fulldouble=false
fullresolution=original
windowresolution=original
output=overlay
autolock=true
sensitivity=100
waitonerror=true
priority=higher
mapperfile=mapper.txt
usescancodes=true

[dosbox]
language=
machine=vgaonly
captures=capture
memsize=24

[render]
frameskip=0
aspect=false
scaler=normal2x

Пробовал scaler=normal3x, output=surface, aspect=true - не реагирует. output=opengl - тормозит, но не масштабирует.

Может кто встречался с подобной проблемой, или знает что то, чего я не понял из вики?

 ,

kirill_rrr ()