DOSBox: debug.exe reads file — processes commands incorrectly
I’m trying to use DOSBox with debug.exe on a 64-bit system. It works perfectly fine if I enter the commands manually. When I redirect input from a file with:
debug < [file]
it doesn't work. On every line except for the first it displays an error similar to this: DOSBox will eventually hang and crash. Is there any way to fix this? The input file I am trying to process as commands is:
a 100 jmp 145 db 'Hello, World!', 0D, 0A, 'Press any key to continue . . .$' a 145 mov ah, 09 mov dx, 102 int 21 mov ah, 08 int 21 int 20 rcx 100 n hello.com w q
46.3k 8 8 gold badges 108 108 silver badges 200 200 bronze badges
asked Mar 26, 2016 at 1:20
FacelessTiger FacelessTiger
89 1 1 gold badge 1 1 silver badge 11 11 bronze badges
copying the text to a file and piping it into debug.com perfectly works for me, creating a hello.com which prints the message
Mar 26, 2016 at 9:26
4 Answers 4
I can reproduce the behavior you are seeing in this scenario:
- DOSBox 0.74 on Windows and Linux
- DEBUG.EXE from Windows XP copied to DOSBox
- DEBUG.EXE from various versions of MS-DOS will cause problem including unexpected hangs. See this Stackoverflow question for another related problem.
I found a version of DEBUG.COM from FreeDOS that works as expected. I have made DEBUG.COM available for download from my website. Alternatively you can download the ZIP File from Softpedia and extract DEBUG.COM .
When I run DEBUG.COM I get this:
S:\>debug.com hello Hello, World!
1 1 1 silver badge
answered Mar 26, 2016 at 14:43
Michael Petch Michael Petch
46.3k 8 8 gold badges 108 108 silver badges 200 200 bronze badges
Had same problem in DosBox 0.74 with DEBUG.EXE script redirection. Discovered that it could be fixed by changing the end-of-line characters in the script file from [CR][LF] to just [CR] when redirecting into DEBUG.EXE.
Pasting your file into the Scite editor and viewing the line-end characters showed this:
I used an option in Scite to change the EOL characters to [CR] alone, getting
saved the file, and was able to redirect it into DEBUG.EXE with no problem. Not sure why [CR][LF] causes the issue with DEBUG.EXE, but hope this helps.
DEBUG.COM handles either EOL sequence with no glitch, so makes sense to use it instead, especially with its extended features. But one can use DEBUG.EXE it seems, with this fix, FWIW. The Scite editor is a neat tool.
answered Aug 14, 2017 at 13:55
Guy Coutanche Guy Coutanche
21 1 1 bronze badge
I found the same problem running a script file for Debug within Dosbox. but I found another editor: Notepad2. runs great and small and changes color to highlight assembler words. Had to use debug ver 1.25 though.
answered Aug 25, 2017 at 2:12
11 1 1 bronze badge
Than you Michael Petch. I was trying everything to get the output of FreeDos clone of MS-DEBUG to save into a text file. But it was not the path, the speed, or the memory allotment that was blocking the redirection of output. It was indeed the line feed and cursor return combination. I quickly wrote a program to take out cursor return and leave line feed. It now redirects! I can also take out the line feed and leave the cursor returns, and DEBUG redirects to file as well. The small glitch is I have to access Windows outside the or close the DosBox window, for the outputted DEBUG code to become visible in a directory listing.
This is how I redirect DEBUG output to a file:
answered Apr 30, 2018 at 19:39
Benjamin Lindsey Weber Benjamin Lindsey Weber
- assembly
- dosbox
- x86-16
-
The Overflow Blog
Linked
Related
Hot Network Questions
Subscribe to RSS
Question feed
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.11.10.814
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.
Illegal command dosbox что делать
Мне надо запустить ассемблерную прогу через DsBox, но я никак не могу его настроить. В инете написано, что надо монтировать диск С. У меня папка с Tasm находится в диске С (см.фото). Но как я не пытаюсь настроить его, ничего не выходит. Можете мне, пожалуйста, помочь его настроить, чтоб запустить наконец эту прогу?
Изображения
tasm.jpg (38.7 Кб, 159 просмотров) |
Регистрация: 15.02.2010
Сообщений: 15,572
mount d c:\TASM
Форумчанин
Регистрация: 18.12.2015
Сообщений: 141
Не могли бы дать какое-то объяснение, что это за D и зачем его монтировать? У меня D - это привод. Я прописал строку как вы и написали. А что дальше? Как запустить программу саму?
Участник клуба
Регистрация: 16.06.2011
Сообщений: 1,419
kyle16 а гугл не пробовал спросить? http://www.thg.ru/software/20050228/
..и вообще для WinXP досбокс не нужен. Все проги прекрасно запускаются на виртуальной машине NTVDM (если конечно у тебя не 64-битная система)
Нашедшего выход - затаптывают первым..
Форумчанин
Регистрация: 18.12.2015
Сообщений: 141
Сообщение от R71MT
kyle16 а гугл не пробовал спросить? http://www.thg.ru/software/20050228/
Пробовал. Много сайтов уже перепробовал.
..эмм, так будет ответ как настроить этот DosBox?
Или мне спросить на других форумах?
Я уже задолбался с ним. Уже месяц не могу настроить. Сил моих больше нет.. И никто не поможет. Все умничают "спроси у гугла", "учи матчасть" и т.п., а хорошего ответа дать никто не может.
Регистрация: 09.01.2008
Сообщений: 26,238
Сообщение от kyle16
Я уже задолбался с ним. Уже месяц не могу настроить. Сил моих больше нет.. И никто не поможет.
ОМГ. Да что же там МЕСЯЦ настраивать?!
ладно.
попробуем вместе настроить.
Может быть, за полмесяца вместе справимся
1) Вы, судя по всему (скриншот) установили себе DosBox
т.е. у Вас есть ярлычок для запуска DosBox
нажмите правой кнопкой мышки на этом ярлычке, выберите в выпавшем меню "Свойства" и покажите, что у Вас на закладке "Ярлык" в поле "Объект" ?
например, у меня Windows 7 64 бита,
в свойства ярлычка прописано:
"C:\Program Files (x86)\DOSBox-0.74\DOSBox.exe" -userconf
дальше. нажмите Win+R (или мышкой на Пуск - потом "Выполнить"
и напишите такую команду
"C:\Program Files (x86)\DOSBox-0.74\DOSBox.exe" -editconf notepad.exe
нажмите кнопку выполнить.
Внимание! если DosBox установлен у Вас в другую папку, то укажите свой путь к программе DOSBox.exe
если сделаете всё правильно, откроется блокнот с загруженным файлом конфигурации.
что там и как - можно почитать в документации (см. например, DOSBox 0.74 Manual.txt в каталоге программы) , но Вам это на первом этапе не так важно.
Вам нужно опуститься вниз, в самый конец файла и найти там секцию, которая называется [autoexec]:
dosbox1.png
вот ниже [autoexec] и напишите две строчки:
mount c c:\TASM c:
// т.е. сделайте так, как на моём скриншоте
после этого сохраните файл конфигурации и закройте блокнот.
если Вы всё сделали правильно, то у Вас загрузится DosBox
и каталог C:\TASM будет смонтирован (подключён к программе) в качестве диска C:
можете в открывшейся командной строке написать dir и нажать клавишу "Enter", будет выведен список файлов, которые у Вас находятся в каталоге.
дальше можете использовать запуск компилятора TASM.EXE с командной строкой, в которой будет указано, что нужно компилировать, TLINK.EXE с командной строкой, в которой будет указано, что нужно собрать.
и, собственно, можно запускать полученные после компиляции EXE и COM файлы.
p.s. Так же можно запускать ЛЮБЫЕ DOS программы, включая старые игры.
Последний раз редактировалось Serge_Bliznykov; 29.06.2017 в 14:52 .
Serge_Bliznykov |
Посмотреть профиль |
Найти ещё сообщения от Serge_Bliznykov |
Getting error "Illegal Command: qbasic.exe" on dosbox after successful installation on ubuntu
Do you still have this problem? Can you try using DOSBox Staging and type dir or ls command after switching to virtual drive C: ?
Dec 15, 2020 at 19:59
1 Answer 1
It seems that the qbasic.exe file is not in the directory you are mounting. Either find the qbasic.exe file and save it in that directory (in this case your qbprogs directory) or following the below steps.
Download the olddos.exe file from the following link:
After downloading it just copy it to your working directory. (here qbprogs) and then open terminal and type
dosbox
After that, mount your working folder using
mount c /home/myname/qbprogs
After that, change the directory by typing
After this instead of directly typing command qbasic.exe, first install oldox.exe by following command
olddos.exe
After installation. Use
qbasic.exe
Illegal command dosbox что делать
Итак, поскольку вопросы по запуску ДОСа не прекращаются, я решил создать отдельную тему.
Для того, чтобы запускать приложения старой персоналки нам необходимо:
Подсоединяем ЗЫЗ к компу, синхронизируем. Запускаем SeiPSPTool.
Name: Пишем DosBox
PBP file: указываем EBOOT.PBP от DosBox'а
PSP Unit: Диск PSP
Давим Generate.
Теперь переходим на диск ЗЫЗы, PSP/GAME/DOSBOX. Там должен находиться файл dosbox.conf,
если его там нет, скопируйте его туда из папки с ДосБоксом на компе. Открываем dosbox.conf
на диске ЗЫЗы. Гоним курсор в самый низ.
Там такие строчки:
[autoexec]
# Lines in this section will be run at startup.
mount c ms0:/psp
c:
cd civrus
civ.exe
Усё, Теперь раскрываем архив с цивилизацией на нашу ЗЫЗу в папку /PSP/
Отсоединяем ЗЫЗ от компа, на ЗЫЗе заходим в стик, запускаем ДосБокс, и.
Через несколько секунд Civilization нам предлагают выбрать тип монитора.
Полную раскладку 102 клавиш можно найти здесь: http://www.niwra.nl/psp/p-sprint-c/doc/
В разделе The default Keymap написано как переключать между группами клавиш и какие комбинации
каким клавишам соответствуют. Переводить не вижу смысла ибо там и так всё понятно.
По данной схеме вы можете запустить любое другое Дос-приложение, в том числе и приложения
защищенного режима DPMI. Мне доподленно не известно поддерживается ли VCPI, но учитывая что есть
поддержка EMS - это вероятно.
ЗЫ. Я писал это без ЗЫЗы под рукой, так что могут быть неточности. Вечером проверю и поправлю, если что.
В принципе, всё должно работать.
ЗЫЗЫ. Есть ещё эмулятор х86 Bochs, его пользовать сложнее, его описание я размещу позже, если конечно меня никто не опередит.