Страница 3 из 3

Re: Где и как написать программу времен DOS

Добавлено: 03 апр 2016, 21:07
pup
в юниксоидной консоли как-то всё много проще, чем на этой картинке :-)

устанавливать Qbasic и осваивать его интерфейс может оказаться дольше/сложнее, чем на чем-то знакомом сделать. но если нет вообще ничего - тогда ой)
в отправили - симолов возврата каретки не вижу!

ух, до чего же древний файл)

Re: Где и как написать программу времен DOS

Добавлено: 03 апр 2016, 21:20
pup
а можно скриншот поближе, что ли? там же всё написано. и в мануале всё разжевано.

Re: Где и как написать программу времен DOS

Добавлено: 03 апр 2016, 21:21
Maxekb77
если винда xp, то можно попробовать через гипертерминал подключится

Re: Где и как написать программу времен DOS

Добавлено: 03 апр 2016, 21:27
aftaev
pup писал(а):а можно скриншот поближе, что ли? там же всё написано. и в мануале всё разжевано.
Напиши что отправить, сделаю и сделаю крупный скрин.

Re: Где и как написать программу времен DOS

Добавлено: 03 апр 2016, 21:51
pup
для начала
A
d
00 0010
A
r
A
s
(после каждой строчки - энтер слать)
потом, там шестью джамперами выставляются какие-то настройки. у меня форматирование кривое у доковсого файла и куча ненужных символов. такие древние файлы мс офис фор мак не понимает. а чо, тебе перевести инструкцию нужно?

Re: Где и как написать программу времен DOS

Добавлено: 03 апр 2016, 22:37
SVP
aftaev писал(а):Мне нужно: открыл *.bas скомпилировал в ехе и готово
Скорее всего не получится.
Бейсики в основном интерпретируемые были...
И не уверен я, что как таковой стандарт был повсеместно внедрен и ваш код ему следует.
По крайней мере смутно помню, что с совместимостью на уровне исходников были реальные танцы с бубном.

Верный путь: накачать мануалов к бейсику, понять как работает и написать на С/C++.

Re: Где и как написать программу времен DOS

Добавлено: 04 апр 2016, 00:19
nomad
SVP писал(а):Верный путь: накачать мануалов к бейсику, понять как работает и написать на С/C++.

Код: Выделить всё

1  ' This program shows how to pull a reading from the gageport
2  ' in the computer mode. the gage can be changed in line 40 by
3  ' modifying the last 4 digits of the string to correspond to the
4  ' gage you want to use. This program just pulls a single reading
5  ' from channel A of a gageport.
6  '
10 OPEN "COM1:9600,N,7,2,cs,ds,cd" FOR RANDOM AS #1 - Открываем ком порт как файл #1 https://msdn.microsoft.com/en-us/library/office/gg264163.aspx
15 PAUSE! = .125
20 PRINT "Press any key to read Gage Port"
22 '
25 WHILE INKEY$ = "": WEND
30 PRINT #1, "A"; : GOSUB 100           ' В канал А... ; Читаем в JUNK
35 PRINT #1, "d"; : GOSUB 100           ' Пишем d ; Читаем в JUNK
40 PRINT #1, "00 0010": GOSUB 100       ' Пишем адрес\номер датчика\прибора; Читаем в JUNK
41 '
42 '
45 PRINT #1, "A"; : GOSUB 100           ' В канал А...; Читаем в JUNK
50 PRINT #1, "r"; : GOSUB 100           ' Пишем r; Читаем в JUNK
55 PRINT #1, "A"; : GOSUB 100           ' В канал А.. ; Читаем в JUNK
60 PRINT #1, "s"; : GOSUB 100           ' Пишем s; Читаем в JUNK
65 PRINT JUNK$                          ' Выводим значение (последнее прочтенное) из JUNK на экран 
70 END                                  ' Quit
90 '
100             
110 T! = TIMER                       
120 WHILE TIMER < T! + PAUSE!: WEND     ' ждем PAUSE
130 LINE INPUT #1, JUNK$                ' Читаем из порта в JUNK https://msdn.microsoft.com/ru-ru/library/office/gg264130.aspx
140 RETURN                              ' returns to program here
Открыть GPMATTEC.DOC с линухе нормально я не смог, но из того, что смог там разглядеть, там есть о том, что значат d, r и s
Сам этот скрипт читает одно значение (или одну строку) с устройства и для вас ИМХО никакого практического значения не имеет и запускать его нет смысла. Это просто пример того, как можно прочитать

Re: Где и как написать программу времен DOS

Добавлено: 04 апр 2016, 00:25
aftaev
nomad писал(а):Сам этот скрипт читает одно значение (или одну строку) с устройства и для вас ИМХО никакого практического значения не имеет
Для проверки роботоспособности девайса хватит ;)

Re: Где и как написать программу времен DOS

Добавлено: 04 апр 2016, 00:35
torvn77
Ну что вы к нему пристали, хочется человеку запустить программу на qbasic, пусть делает, если найдёт нужное, то скорее всего должно выйти.

Re: Где и как написать программу времен DOS

Добавлено: 04 апр 2016, 00:41
AndyBig
aftaev писал(а):отправлял их через прогу СОМ и что получал в ответ
Как уже написали - после каждой строки нужно передавать символы перевода строки 0x0D 0x0A (\r\n). У Вас эти символы не передавались, а девайс скорее всего именно по ним и ориентируется в чтении команды из порта :)
Команда PRINT шлет указанный текст и эти символы после него, вот из этого и исходите.

Re: Где и как написать программу времен DOS

Добавлено: 04 апр 2016, 00:42
nomad
aftaev писал(а):Для проверки роботоспособности девайса хватит
Тогда ответ на ваш вопрос тут http://www.freebasic.net/
У меня даже под линухом ваша "проверка" скомпилилась. Запускал так

Код: Выделить всё

./bin/fbc 1.bas -lang qb -x 1.prog
Удачи :)

Re: Где и как написать программу времен DOS

Добавлено: 04 апр 2016, 00:49
aftaev
Поставил Qbasic версию 645... - не работает, Поставил версию 456...
Файл - открыть - выбрал нужный файл.
F11 - все откомпилировалсь без проблем, создал ЕХЕ файл.
На экране пишет нажмите кнопку, жму появляется 0.

Все что требовалось узнать что нужен Qbasic

Re: Где и как написать программу времен DOS

Добавлено: 17 апр 2016, 17:48
alex09
Если запускаете exe файл в win XP и выше уже не получится работать напрямую с портами сом и lpt, XP перехватывает управление. Под win98 еще можно переписать программу QB под DOS только уже на Visual Basic 6.0 . Как вариант найти старый комп обязательно с шиной ISA ( любая материнка, где есть LPT имеет встренную шину ISA), сделать системную досовскую дискету и загрузится под дос и запустить свой exe файл.

Re: Где и как написать программу времен DOS

Добавлено: 10 июл 2016, 10:25
ART_ME
aftaev писал(а):Поставил Qbasic версию 645... - не работает, Поставил версию 456...
Файл - открыть - выбрал нужный файл.
F11 - все откомпилировалсь без проблем, создал ЕХЕ файл.
На экране пишет нажмите кнопку, жму появляется 0.
Все что требовалось узнать что нужен Qbasic
Так как есть второй комп с FDD, то скачиваешь и записываешь на дискеты DOS или Win95 и запускаешь комп с дискеты, qbasic там уже есть. Операция нудная, но дискеты эти пригодятся еще не раз. :)
Ну а по листингу видно, что и обычного гипертерминала достаточно: посылаешь А - получаешь В, посылаешь С - получаешь D. Гипер тупо скачивается с XP и запускается из-под семерки без проблем.