Проект Turbo DOS + System Mini

Всё, что касается программирования на старых языках или для старых систем

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 10 окт 2024, 17:54

uav писал(а):В принципе, для расцвечивания текста и некоторых других целей раньше использовали ANSI.SYS - он много чего умеет.

Понимаете, на мое имхо, существующих возможностей интерпретатора к сегодняшнему дню мало... :roll: Там и циклы нужны полноценные (ибо даже в cmd есть только довольно убогий, хотя и очень полиморфный, цикл for), и музыкальное приложение я уже прикинул (оно должно играть в равномерно темперированном строе, показывать "теги" трека и текст песни, если он есть), и менюшки-экранчики-окошки можно было бы рисовать для удобства работы в системе (причем, пользовательские, без обращения к паскалю-си-бейсику)...

Доработанный язык интерпретатора мог бы очень многое, по сравнению с Microsoft'овским оригиналом, притом что синтаксис и семантика основных команд остались бы прежними. Это, должно быть, было бы удобно, так как command/cmd - всё-таки основной интерпретатор под эту ветку систем, и для многих самых привычный.
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение uav » 10 окт 2024, 17:55

Prizrak, а этот уже имеющийся у Вас новый command.com - с какими версиями DOS он совместим? Стандартные команды DOS (типа DIR, COPY и т.д.) он тоже выполняет?
Аватара пользователя
uav
Мастер Даунгрейда
 
Сообщения: 3247
Зарегистрирован: 22 дек 2008, 14:21

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 10 окт 2024, 18:20

uav писал(а):Prizrak, а этот уже имеющийся у Вас новый command.com - с какими версиями DOS он совместим? Стандартные команды DOS (типа DIR, COPY и т.д.) он тоже выполняет?

Я его пока недолго разрабатывал, это только предуведомление, чтобы не углубляться в программу в одночку, не простучав почву заранее... :roll:

Сейчас он умеет выполнять простые команды, воде CD, ECHO, COLORSET (это смена цветовой палитры, которые потом планируется подтягивать из файлика color.ini - по COLORSET 0 воодружаются стандартные цвета DOS). Задача сначала стояла наладить приветствие, выход из программы, выдачу приглашения, захват командной строки, показ сообщений об ошибках и т.п.

Чтобы она умела DIR и COPY, нужно дальше налаживать транспонирование библиотечного модуля DOS. Вы же понимаете, что в cmd, к примеру, существенно больше ключей у команд, чем в command.com - поэтому придется долго возиться с различными вариантами DIR, MOVE, COPY и т.д.

Не серчайте, что я на самой ранней стадии разработки выхожу в народ - не хотелось бы на что-нибудь напороться на более поздних этапах...
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 10 окт 2024, 18:24

uav писал(а):Prizrak, а этот уже имеющийся у Вас новый command.com - с какими версиями DOS он совместим? Стандартные команды DOS (типа DIR, COPY и т.д.) он тоже выполняет?

Что касается совместимости, то пока он крутится на эмуляторе dosbox. Когда он уже будет уметь некий конгломерат команд для командного режима - надо будет проверять на виртуалках под MS DOS 5.x и 6.x, потому что это по крайней мере реально актуальные для компьютеров 1990-х системы. Очевидно, многие более ранние конфигурации ни на что подобное окажутся не способны - для них даже 16 цветов могут быть непосильны... :cry:
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение clihlt » 10 окт 2024, 19:12

Prizrak, а Вы не боитесь, что с таким развитым функционалом да ещё и на паскале писанный он отъест слишком большой объём памяти и запускаемым программам оставшейся будет не хватать? Вы его выгружаете из памяти при запуске других программ, или он у Вас в верхней памяти располагается?
Последний раз редактировалось clihlt 10 окт 2024, 19:15, всего редактировалось 1 раз.
С уважением,
Владислав Васильев (aka clihlt).
Аватара пользователя
clihlt
Мастер Даунгрейда
 
Сообщения: 617
Зарегистрирован: 20 мар 2023, 21:17
Откуда: Брянск, СССР

Re: Проект Turbo DOS + System Mini

Сообщение rvg » 11 окт 2024, 08:00

clihlt, я отвечу на ваш вопрос. Скорее всего этот вопрос (о памяти) не учитывался. Поэтому. Вся дискуссия - это сотрясание воздух (только). Помню. Сделал я одну дискетку с поддержкой зеленого цвета, напихал туда разных прог типа как на Нортоновской. Отдал чуваку, а он такой - не запустилась, зависла на загрузке и всё.
Аватара пользователя
rvg
Мастер Даунгрейда
 
Сообщения: 661
Зарегистрирован: 18 июл 2023, 14:12

Re: Проект Turbo DOS + System Mini

Сообщение clihlt » 11 окт 2024, 08:51

rvg писал(а):Скорее всего этот вопрос (о памяти) не учитывался.

А зря. Хотя машины на базе MS-DOS это не 8-ми битные игрушки, но ресурсов памяти там кот наплакал и к их учёту и распределению надо подходить весьма аккуратно и вдумчиво. И писать такое целиком на борландовском паскале я уж точно не стал бы, если только побаловаться и забросить.

По ходу диалога в этой ветке я подметил то, что автор над этим вопросом совсем не задумывался, оттого и задал его, наперёд зная ответ. ;)
Последний раз редактировалось clihlt 11 окт 2024, 11:30, всего редактировалось 1 раз.
С уважением,
Владислав Васильев (aka clihlt).
Аватара пользователя
clihlt
Мастер Даунгрейда
 
Сообщения: 617
Зарегистрирован: 20 мар 2023, 21:17
Откуда: Брянск, СССР

Re: Проект Turbo DOS + System Mini

Сообщение uav » 11 окт 2024, 09:54

Как я понял, это пока ведь просто "проба пера".
А так да, конечно, нужно проблему с памятью учитывать. (Хотя до размера килобайт этак 30-40 можно и не волноваться особо, особенно если можно его закинуть в верхнюю память.)
Ну и в конечном итоге, соглашусь, какие-нибудь ассемблерные вставки, наверно, придётся использовать, чистым Turbo/Borland Pascal вряд ли получится обойтись...

И ещё - Prizrak, а Вы используете патченный от ошибки Runtime error 200 модуль CRT (точнее, TURBO.TPL)?
Там, кстати, есть ещё несколько патчей, в некоторых delay некорректно работает. Я вот этот использую:
https://www.phantom.sannata.org/viewtop ... 30#p746530
Там с delay всё в порядке.
Последний раз редактировалось uav 11 окт 2024, 09:59, всего редактировалось 2 раз(а).
Аватара пользователя
uav
Мастер Даунгрейда
 
Сообщения: 3247
Зарегистрирован: 22 дек 2008, 14:21

Re: Проект Turbo DOS + System Mini

Сообщение rvg » 11 окт 2024, 10:08

Сорри, я там немного не так сказал (типа, сотрясание воздуха). Стоит, вопринимать не дословно. Просто, не роботы мы - ведь :P люди-человеки. Вообще - это хорошо, что налаживается - какая-та атмосфера обсуждения и это Гут!
Аватара пользователя
rvg
Мастер Даунгрейда
 
Сообщения: 661
Зарегистрирован: 18 июл 2023, 14:12

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 25 окт 2024, 12:53

Прошу извинить уважаемых форумцев за некоторое время отсутствия! Пока что занимался более насущными делами... :cry:

clihlt писал(а):Prizrak, а Вы не боитесь, что с таким развитым функционалом да ещё и на паскале писанный он отъест слишком большой объём памяти и запускаемым программам оставшейся будет не хватать? Вы его выгружаете из памяти при запуске других программ, или он у Вас в верхней памяти располагается?

Спасибо, этот вопрос надо будет ставить... В принципе, Turbo Pascal не таким уж большим объемом памяти оперирует, даже с учетом "кучи" (даже она может отъесть какие-то сотни килобайт, а статические переменные оперируют десятками). Во всяком случает, этой самой "кучей" предполагается пользоваться весьма осторожно... ;)
Последний раз редактировалось Prizrak 25 окт 2024, 12:57, всего редактировалось 1 раз.
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 25 окт 2024, 12:54

uav писал(а):И ещё - Prizrak, а Вы используете патченный от ошибки Runtime error 200 модуль CRT (точнее, TURBO.TPL)?
Там, кстати, есть ещё несколько патчей, в некоторых delay некорректно работает. Я вот этот использую:
https://www.phantom.sannata.org/viewtop ... 30#p746530
Там с delay всё в порядке.

Изучу вопрос... :roll: Кажется, это паскаль из известной казахстанской сборки, в которой, в частности, был модуль Graph, пропатченный для 800x600.

Delay у меня, вроде бы, нормально работает, с поправкой на ускорение dosbox'а... Если речь идет об ускорении - то не совсем понимаю, для чего его патчить: на реальной машине это может привести к еще более неадекватгому поведению... :oops:
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение uav » 25 окт 2024, 13:47

Prizrak, в модуле CRT Turbo Pascal есть известный баг, из-за которого программы на достаточно быстрых компьютерах (больше нескольких сот мегагерц) вылетают с ошибкой 200.
Есть много разных исправлений для этого, самые примитивные при этом портят работу Delay - она начинает неправильно отсчитывать время.
Вот про это я и пишу.
Аватара пользователя
uav
Мастер Даунгрейда
 
Сообщения: 3247
Зарегистрирован: 22 дек 2008, 14:21

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 26 окт 2024, 09:29

uav писал(а):Prizrak, в модуле CRT Turbo Pascal есть известный баг, из-за которого программы на достаточно быстрых компьютерах (больше нескольких сот мегагерц) вылетают с ошибкой 200.
Есть много разных исправлений для этого, самые примитивные при этом портят работу Delay - она начинает неправильно отсчитывать время.
Вот про это я и пишу.

Да, я понял, о чем Вы. Сомневаюсь, конечно, что казахстанская сборка не пропатчена - но надо будет протестить потом на виртуалке... Если начнет вылетать - придется патчить самостоятельно. На dosbox'е всё пока ведет себя адекватно, тьфу-тьфу-тьфу... :roll:
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение Prizrak » 30 окт 2024, 12:29

Чтобы уважаемое сообщество понимало, как должна выглядеть конечная программа, приведу пару иллюстраций. Это пока начальный этап, но интерпретатор уже умеет работать с некоторыми элементарными командами, вроде CLS, CD, ECHO и т.п., а также обрабатывает ряд функций для цвета и звука. :oops:
Вложения
Command_01.png
Выдача интерпретатора на некоторые команды
Command_01.png (22.41 Кб) Просмотров: 23004
Command_02.png
Экран "О программе" по команде ABOUT
Command_02.png (24.79 Кб) Просмотров: 22991
Command_03.png
Переключение цветов по команде COLORSET 0
Command_03.png (21.55 Кб) Просмотров: 22999
Аватара пользователя
Prizrak
Мастер Даунгрейда
 
Сообщения: 288
Зарегистрирован: 09 окт 2024, 19:20
Откуда: Минск
Железо: Ноутбук HP, планшетник Android

Re: Проект Turbo DOS + System Mini

Сообщение rvg » 30 окт 2024, 16:11

Если уж на-то пошло (на батниках программировать, хотя в принципе - это можно сказать Бейсик :D ). Вам - нужно, обзавестись реальным компьютером на Дос, чтобы смотреть не виснеть ли он при операциях. Во всяком случае, я поступил бы так. Ведь я рассказывал, хотя там вкратце (был рассказ). Я сделал загрузочную дискету, чтобы загружаться с неё и устанавливать Windows. Добавил при инициализации (в Config.sys - загрузку файла Ansi.sys (забыл последняя И или Игрек), в Autoexec.bat был прописан новый Промпт (приглашение в цвете). И как мне кажется больше ничего. Естественно, я загружался с него, а вот дал товарищу, типа - на, сделал "Спасительныы Диск". Позже сообщает (друг), на пол-пути зависло и фсё. Пришлось убирать Ansi.sys.
Аватара пользователя
rvg
Мастер Даунгрейда
 
Сообщения: 661
Зарегистрирован: 18 июл 2023, 14:12

Пред.След.

Вернуться в Программирование

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

cron