1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
| yurpos |
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователи Сообщений: 11 Пол: Мужской Реальное имя: yurpos Jabber: yurpos Репутация: 0 |
Подскажите пожалуйста, можно ли Pascal загрузить без запуска WINDOWS? и если можно, то какую версию лучше использовать? и можно ли запустить его с флешки?
|
![]() ![]() |
| OCTAGRAM |
Сообщение
#2
|
![]() Большевик–концептуал ![]() ![]() ![]() Группа: Пользователи Сообщений: 194 Пол: Мужской Реальное имя: Иван Левашев Jabber: bu_gen@octagram.name Skype: i.levashew QQ: 3152538431 Ада: Сторонник Embarcadero Delphi: Сторонник Free Pascal: Разработчик Turbo Pascal: Установлен Репутация: 1 |
Могу проверить в DOSBox расширители.
Я тут ещё повспоминал, и довспомался до прерываний. Во-первых, есть аппаратное прерывание клавиатуры, но его нетривиально обрабатывать. В принципе, я писал обработчик на Turbo Pascal, это было нужно, чтоб одновременно нажатые клавиши в танках знать. Массив Boolean был. Но там нужно с портами ввода/вывода аккуратно работать, на прерывания маску ставить и снимать, иначе клавиатура отваливается. Из защищённого режима такое перехватить — дополнительные сложности. А вот есть другое прерывание, которое вызывается ДОСовским обработчиком прерывания клавиатуры после трансляции кода клавиши в символ (то есть, уже русифицированный). Вот можно это прерывание перехватить, и узнавать о нажатии мгновенно. Из защищённого режима DOS можно взаимодействовать с реальным режимом. Там в DPMI есть всякие вызовы. Есть вызов кода в реальном режиме по известному адресу. Можно, наоборот, попросить DPMI выделить в реальном режиме процедуру, вызов которой будет транслироваться в вызов процедуры в защищённом режиме. Но для прерывания это вроде бы маловато, потому что при вызове прерывания в стек кладётся не только адрес следующей инструкции после возврата, но и состояние флагов, и возврат делается инструкцией iret (Interrupt RETurn) или инструкциями popf, retf. Это решаемо, можно после выделения в реальном режиме процедуры попросить ещё DPMI выделить память в реальном режиме, и вписать туда по шаблону инструкции, которые вызовут ранее выделенную процедуру в реальном режиме. И адрес этой последней памяти записать в таблицу прерываний, сохранив прошлое значение. В прошлое значение, как я понимаю, тоже просто так перейти не получится из-за того, что прошлый обработчик будет пытаться освободить флаги со стека, а обычные процедуры так не делают. Тут тоже можно коменсировать это перемычкой в реальном режиме. И так получается, что программа защищённого режима вклинивается в цепочку обработчиков прерываний в реальном режиме. Возможно, в DPMI уже есть поддержка замены обработчиков прерываний, и получится обойтись без перемычек. Сообщение отредактировано: OCTAGRAM - -------------------- If you want to get to the top, you have to start at the bottom
|
yurpos Pascal под DOS 7.08.2017 14:58
OCTAGRAM А если не Windows, то что?
Linux + School Pak для… 7.08.2017 17:14
yurpos
А если не Windows, то что?
я наверно двигаюсь з… 7.08.2017 18:04
OCTAGRAM Может быть, у вас такая проблема только из-за моду… 7.08.2017 18:18
yurpos
Может быть, у вас такая проблема только из-за мод… 7.08.2017 18:58
Федосеев Павел Сейчас уже не существует старого форума wasm.ru, н… 8.08.2017 4:05
yurpos
Время программного цикла у ПЛК сравнительно не вы… 8.08.2017 13:01
OCTAGRAM А что подразумевается под «реальным временем»? По … 8.08.2017 16:18
OCTAGRAM Насколько мне известно, BIOS/EFI умеют эмулировать… 8.08.2017 13:39
yurpos
Насколько мне известно
))) для меня пока это то… 8.08.2017 14:13
Федосеев Павел FreeDOS раньше загружалась с CD-ROM. Если всё прям… 8.08.2017 14:33
yurpos
для ускорения работы с жёсткими дисками
работа … 8.08.2017 15:42
Федосеев Павел Я работал только с FreeDOS 1.0 и 1.1. Для возможно… 8.08.2017 14:55
Федосеев Павел Это, конечно, не относится к теме. Но новый компью… 10.08.2017 1:37
yurpos Добрый день, спасибо огромное за советы, что то я … 5.09.2017 15:51
OCTAGRAM В Turbo Pascal — действительно такие ограничения. … 5.09.2017 16:34
Федосеев Павел Возвращайтесь в Windows.
Другой вариант - 32-разр… 5.09.2017 23:01
yurpos
Возвращайтесь в Windows.
В Windows программа ра… 6.09.2017 14:05
OCTAGRAM Пробовал HX DOS Extender в чистом FreeDOS. Запуска… 6.09.2017 19:14
Федосеев Павел Какая-то странная тема.
С одной стороны непростые … 7.09.2017 10:40
yurpos
Какая-то странная тема.
С одной стороны непростые… 7.09.2017 15:50
OCTAGRAM ... распараллеливание вычислений?
... Работа в нес… 7.09.2017 17:11
yurpos ...самое доступное решение — это GNAT...
Сразу в… 7.09.2017 19:19
OCTAGRAM А это смотря какой. Если для голых досок, но с мно… 8.09.2017 4:53
yurpos
Ещё такой вариант.
Почитал руководство по ADA).… 8.09.2017 13:32![]() ![]() |
|
Текстовая версия | 23.12.2025 4:53 |