Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Старый софт »   DOS/16M
RSS

DOS/16M

Использование

<<Назад  Вперед>> Страницы: 1 2 3 4
Печать
 
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
Интересуют некоторые моменты работы DOS/16M на 286-м.
1. Где-нибудь он используется?
2. Постоянное переключение реального/защищенного режимов - довольно длительная и небезопасная операция на 286 (имеется в виду возврат к реальному). Как? Даже Windows и OS/2 этот вопрос толком не решили.
3. Взаимозаменяемость с DOS/4G. Представим, что есть программа, которая использует 4 Мб памяти через DOS/4G, и больше ничего от 386-го ей не надо. Если ее пересобрать с DOS/16M, она будет работать на 286-м?
DOS Logic
Advanced Member
d(-_-)b

Откуда: Украина. Ивано-Франковск
Всего сообщений: 4778
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
1 июля 2006
На 286 нет возврата в реальный режим, только перегрузка

это в 386 он есть)
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
DOS Logic
Да, в 286 он штатно не предусмотрен. Но через контроллер клавиатуры можно было ухитрится сбросить процессор, и он снова стартовал в реальном режиме. Этот костыль, хоть и часто использовался, но был довольно-таки тормознутым и ненадженым. Именно по этому я и задал вопрос №2.
DOS Logic
Advanced Member
d(-_-)b

Откуда: Украина. Ивано-Франковск
Всего сообщений: 4778
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
1 июля 2006
OS/2 писала слишком серезная кантора чтобы использовать какие-то не документированные костыли :) там такого небыло
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
DOS Logic
В OS/2 1.x IBM использовали целый набор мозгодробительных костылей, чтобы хоть как-то и все фичи 286-ого использовать и с DOS быть совместимыми. Например, нижнее ОЗУ резервировалось для эмуляции DOSа, и в защищенном режиме это было просто неиспользуемая дыра (огромная по тем меркам). Или, например, драйвера писались одновременно под два режима. Они и рады были б обойтись "клавиатурным" костылем, но он не удовлетворял всем требованиям.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Ребята, вы о чем? "Клавиатурный костыль" - это документированная возможность сброса процессора, введенная еще с 8086-й машины и работающая на всех современных. А причину сброса биос узнает с помощью байта отключения (CMOS[0x0F]). Начиная с 286-й ввели 5-ть кодов, как раз для работы с защищенным режимом: 6-8 - сброс после работы в защищенном режиме, 9 - сброс после копирования блока памяти из основной в расширенную (используется обработчиком INT 15h), и 0xA - сброс и немедленная передача управления по адресу, лежащему в 0000h:0476h. Например память биос подсчитывает и тестирует именно в защищенном режиме, возвращаясь к продолжению POST-процедур посредством сброса через "клавиатурный костыль" (код сброса - 0x8).

Так что переход из защищенного в реальный режим прокатит на всех 286-х машинах. Скажу больше, это прокатит и на всех других машинах. Я это использовал для экстренного выхода из вин 3.11 в реальный режим на 386-й машине.

PS: а программисты мелкософта, кто бы что ни думал о этой конторе, были отличными профи - именно они нашли выход, когда оказалось, что в 286-м процессоре не предусмотрена процедура перехода в реальный режим. И мелкософт никогда бы не решился на это будь вероятность несовместимости - тогда еще была хоть какая то конкуренция ОС.
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
AndNot
[q]
Ребята, вы о чем?
[/q]
Мы все о том же. Ну не предусмотрели в 286 штатный возврат к реальному режиму, как в 386. И чтобы это сделать нужно было использовать "клавиатурный костыль" - т.е. сбросить процессор, и он по-новому стартанет в реальном режиме. Только вот беда, это слишком долго и ненадежно. Поэтому Windows 2.x/3.х на 286-м работают в реальном режиме, а OS/2 1.x на 286-м пользуется костылями, описанными выше.
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
DOS Logic Покурите матчасть, пожалуйста

http://en.wikipedia.org/wiki/LOADALL
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Zelya, в 286-м есть штатный режим перехода в реальный из защищенного - по сбросу. А то, что для этого не использовалась отдельная команда, так это косяк инженеров интела, считавших, что защищенный режим настолько хорош, что если кто-то в него перейдет, то выходить в реальный ему не захочется. По крайней мере такие байки гуляли в мою молодость. Но, еще раз подчеркну, это не костыль, это строго документированная функция, которой придерживались все последующие процессоры. Собственно и вмешался из-за слова "костыль", поскольку сброс через контроллер клавиатуры был вполне стандартизирован. В те времена инженерам приходилось бороться за каждый бит, вот и получали биты конфигурации там, где их логически быть не должно бы. Особенно этим грешат видеоадаптеры, у которых вообще такая мешанина битов, что впору психушку вызывать. Однако все пользуются ягой и ВГА и не вякают, считая что так и должно быть :)
Что касается скорости, то выбора все равно нет - бери что дают. Кстати, не скажу за счет dos/16m, но Borland Pascal использует защищенный режим как раз под 286-е машины. Помню злился на них за это, приходилось писать свои либы для адаптации паскаля к 32-х разрядному защищенному режиму :) Я это к тому, что на паскале можно прекрасно испытать защищенный режим 286-х машин.


alecv написал:
[q]
DOS Logic Покурите матчасть, пожалуйста

http://en.wikipedia.org/wiki/LOADALL
[/q]
DOS Logic был прав. Что касается команды loadall. Найдите хоть один 286-й камень, который не поддерживал бы эту команду ;) Тогда и обсудим, документированная это команда, или нет.
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
AndNot написал:
[q]
А то, что для этого не использовалась отдельная команда, так это косяк инженеров интела, считавших, что защищенный режим настолько хорош, что если кто-то в него перейдет, то выходить в реальный ему не захочется. По крайней мере такие байки гуляли в мою молодость.
[/q]
Такая байка гуляет и сейчас. Так что думаю, это совсем не байка.

AndNot написал:
[q]
Но, еще раз подчеркну, это не костыль, это строго документированная функция, которой придерживались все последующие процессоры.
[/q]
Хоть мы и сваливаемся в жесткий флейм, но все-таки я останусь при своем мнении - это костыль. Сам факт бутания процессора и десятки проблем связанных с этим, ради того чтобы вернуться в реальный режим - непорядок. Была такая шутка, что Intel задизайнили 386, увидев как программисты OS/2 мучаются с 286-м.

AndNot написал:
[q]
Borland Pascal использует защищенный режим как раз под 286-е машины
[/q]
Очень интересная информация! Спасибо!
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
AndNot написал:
[q]
DOS Logic был прав. Что касается команды loadall. Найдите хоть один 286-й камень, который не поддерживал бы эту команду Тогда и обсудим, документированная это команда, или нет.
[/q]
Встречная просьба: покажите хоть один мануал от Intel, где эта команда документирована.
Кай
Гость
Divine Assassin

Откуда: извне (from beyond)
Всего сообщений: 13709
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
8 авг. 2010
[q]
хоть один мануал от Intel, где эта команда документирована.
[/q]
http://www.google.ru/url?q=htt...KBKONSc1tw

Искать в тексте по Program State Change.
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
Кай Уууу. Cтраницу можно ? Program State Change находится 45 раз, все в главе про Interrupt and exception handling. И потом, это Pentium, у него программная модель несколько отличается от 286.

Вдобавок, педевикия дает АИ, что LOADALL на некоторых старых 286 работала не совсем как на новых. "The idea had to be mostly discarded, furthermore, due to errata in some early Intel 80286 processors before the E-2 stepping"
Кай
Гость
Divine Assassin

Откуда: извне (from beyond)
Всего сообщений: 13709
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
8 авг. 2010
[q]
Кай Уууу.
[/q]
Угу. Погоди. А то у меня случится device overflow. Похоже, ты прав. В общедоступных документах нет конкретики.

В необщедоступных, как-то так: http://www.rcollins.org/articles/loadall/tspec_a3_doc.html Но не выполнено условие "от Интела"...
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
alecv написал:
[q]
Встречная просьба: покажите хоть один мануал от Intel, где эта команда документирована.
[/q]
Был 15-ти страничный конфиденциальный документ от интела, в котором и описывалась эта команда. С документом работала уйма народа, включая ibm и микрософт, потому об этой команде стало известно и остальным. Честно говоря влом искать те бумаги. Да и не вижу смысла, поскольку эта команда используется в таком софте как:
- ms dos 3.3 и выше;
- OS/2;
- CodeView (точнее он лишь знает эту команду);
То есть особо приближенные к интелу не стеснялись использовать эту "недокументированную" команду.
Ну и на "закуску". Поздние 386-е и 486-е модели не имели команды LOADALL, они просто эмулировали ее 286-ю версию (опкод 0x0f, 0x05) посредством BIOS. Сами понимаете, что в BIOS слишком мало места, чтобы пихать в него малонужный код. Видимо были очень серьезные основания для этого.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Кай написал:
[q]
В необщедоступных, как-то так: http://www.rcollins.org/articles/loadall/tspec_a3_doc.html
[/q]
О! Самое то!
Anderson1
Advanced Member


Откуда: Москва
Всего сообщений: 2098
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
27 фев. 2011
Zelya написал:
[q]
Windows 2.x/3.х на 286-м работают в реальном режиме
[/q]
Ничего подобного - Windows 3.1 работает на 286 в защишённом ака стандартном режиме, ибо в реальном уже не умеет (последняя винда умевшая реальный режим это 3.0a) и прекрасно из защищённого режима выходит обратно в DOS.

DOS Logic написал:
[q]
OS/2 писала слишком серезная кантора чтобы использовать какие-то не документированные костыли :)
[/q]
Это Microsoft-то? Да это главные изобретатели недокументированных функций как принципа :)
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Anderson1 написал:
[q]
Ничего подобного - Windows 3.1 работает на 286 в защишённом ака стандартном режиме, ибо в реальном уже не умеет (последняя винда умевшая реальный режим это 3.0a) и прекрасно из защищённого режима выходит обратно в DOS.
[/q]
А ведь точно! Помню в заголовочных файлах паскаля от борланда wincrt и windos) использовались селекторы 16-ти битного защищенного режима. И у Фаронова есть пример переделки wincrt и windos, для использования функций GDI. Прекрасно помню, там тоже был защищенный режим.


Anderson1 написал:
[q]
DOS Logic написал:
[q]
OS/2 писала слишком серезная кантора чтобы использовать какие-то не документированные костыли
[/q]
Это Microsoft-то? Да это главные изобретатели недокументированных функций как принципа
[/q]
Если найдете полуось от микрософта, Вы станете богаче Билла, который Гейтс ;)
Кай
Гость
Divine Assassin

Откуда: извне (from beyond)
Всего сообщений: 13709
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
8 авг. 2010
[q]
Это Microsoft-то? Да это главные изобретатели недокументированных функций как принципа
[/q]
Вообще-то "это" IBM...
Anderson1
Advanced Member


Откуда: Москва
Всего сообщений: 2098
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
27 фев. 2011
AndNot написал:
[q]
Если найдете полуось от микрософта, Вы станете богаче Билла, который Гейтс ;)
[/q]
OS/2 1.0 и 1.1. Ссылки на скачку дистрибутивов у гугла. Копирайты в OS/2 1.1 "Microsoft Operating System/2" и обычный MS-ный хорошо видны например тут. Где забирать мои ~50 млрд баксов? ;)

Кай написал:
[q]
Вообще-то "это" IBM...
[/q]
Емнимс, только IBM с версии 1.2. Более ранние это совместное творчество MS и IBM.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Anderson1 написал:
[q]
AndNot написал:
[q]
Если найдете полуось от микрософта, Вы станете богаче Билла, который Гейтс
[/q]
OS/2 1.0 и 1.1. Ссылки на скачку дистрибутивов у гугла. Копирайты в OS/2 1.1 "Microsoft Operating System/2" и обычный MS-ный хорошо видны например тут. Где забирать мои ~50 млрд баксов?
[/q]
Микрософт был лишь исполнителем, а музыку заказывала IBM. Потому полуось принято считать айбиэмовской, а не мелкософтской. Это вполне нормальная практика. Вы же называете писюки IBM PC AT/XT? А ведь в них айбиэмовского с гулькин хрен, в основном заказняк у других фирм.
Так что увы, 50 лярдов пока полежат у Билла :)

Anderson1 написал:
[q]
Емнимс, только IBM с версии 1.2. Более ранние это совместное творчество MS и IBM.
[/q]
ИМХО скорее 1.3, которая благодаря уходу мелкософта стала ощутимо менее требовательна к ресурсам и шустрее, что как бы намекает :biggrin:
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
Извините что возвращаюсь к топику ;) а этот DOS/16M он что, платный ?
ReDmit
Full Member


Откуда: Нижний Новгород
Всего сообщений: 269
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
25 апр. 2012
Судя по страничке на офсайте, для заказа DOS/16M нужно связаться с авторами.
jossk
Newbie


Откуда: Kiev
Всего сообщений: 52
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
3 апр. 2006
А у кого-то DOS/16M SDK есть ?
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Народ, если не секрет, то зачем вам это старье? Разве еще есть спрос на написание программ под такие старые машины? Извиняюсь за оффтоп, но действительно интересно.
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
AndNot

AndNot написал:
[q]
Народ, если не секрет, то зачем вам это старье? Разве еще есть спрос на написание программ под такие старые машины? Извиняюсь за оффтоп, но действительно интересно.
[/q]
А Вы почитайте на самом вершочке "железные призраки прошлого" :)

Anderson1

Anderson1 написал:
[q]
Ничего подобного - Windows 3.1 работает на 286 в защишённом ака стандартном режиме, ибо в реальном уже не умеет (последняя винда умевшая реальный режим это 3.0a) и прекрасно из защищённого режима выходит обратно в DOS.
[/q]
Простите, ошибся. Действительно, Win 3.1 работает только в защищенном, даже Win 3.0 можно на 286-м в защищенном запустить.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Zelya, а почему бы не использовать альтернативные экстендеры? Вот здесь наверное самый лучший: http://www.japheth.de/HX.html
Правда 16-ти битную версию не юзал, не могу сказать поддерживает ли она гуй и прочие ништяки. Зато бесплатно и практически под любой язык. Ну и далеко не на последнем месте тот факт, что автор потихоньку развивает продукт.
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
AndNot
Интересует не просто экстендер, а максимальная взаимозаменяемость с DOS/4G.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Zelya, а заменяемость на каком уровне?
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
AndNot
Возможность перекомпилировать сорсы без внесения существенных изменений.
AndNot
Full Member


Откуда: Penza, Russia
Всего сообщений: 215
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 июня 2006
Ясно. Или все-таки правильнее не совместимость с dos4g, а возможность перекомпиляции сорсов под 16-ти и 32-х разрядный защищенный режим? Это все-таки не одно и то же :)
Zelya
Member


Откуда: Львов
Всего сообщений: 187
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 янв. 2009
AndNot
Ну, грубо говоря, имеются сорсы писанные под DOS/4G, и хочется с минимальными изменениями (а в идеале, вобще без них) запустить это дело на 286-м :)
<<Назад  Вперед>> Страницы: 1 2 3 4
Печать
Полигон-2 »   Старый софт »   DOS/16M
RSS

0 посетителей просмотрели эту тему за последние 15 минут
В том числе: 0 гостей, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS