|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Июн 11, 2004 01:38:37 CreateProcess запускает как win32 так и dos16 exe-шники. Но параметры у CreateProcess только от win32, а если создать ярлык к exe-шнику dos16, то в опциях можно проставить параметры виртуальной машины, т.е. EMS, XMS память и т.д. Как такое делается програмно? Какой функцией отдать exe-шник виртуальной машине и как установить параметры работы? PS: Существует ли полноценный эмулятор ms-dos 6.22 для WinXP ? |
|
|
Дата: Июн 11, 2004 02:16:38 >CreateProcess запускает как win32 так и dos16 exe-шники. угу > Но параметры у CreateProcess только от win32, что ты понимаешь под "параметрами"? аргументы командной строки? размеры окна? > а если создать ярлык к exe-шнику dos16, CreateProcess ярлык не запускает. это делает start.exe, который представляет собой лишь переходником к ShellExecuteEx > то в опциях можно проставить параметры виртуальной машины, которая есть WOW > т.е. EMS, XMS память и т.д. Как такое делается програмно? V86MMGR_Set_EMS_XMS_Limits (на низком уровне) через ключи командной строки ntvdm.exe/wowexec.exe или через реестр, которые описаны в MSDN (на верхнем) >Какой функцией отдать exe-шник виртуальной машине и как установить параметры работы? считать ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Control\WOW здесь путь к виртуальной машине > PS: Существует ли полноценный эмулятор ms-dos 6.22 для WinXP ? да, и не один. dos box с sourceforge. прекрасно пускает айс для дос, игрушки типа Алладина и Уфо ну и т.д. |
|
|
Дата: Июн 11, 2004 03:58:04 что ты понимаешь под "параметрами"? аргументы командной строки? размеры окна? Я имел ввиду SECURITY_ATTRIBUTES процесса и потоков, STARTUPINFO и прочее, что касается win32, но совершенно не относится к dos16. Про ntvdm.exe я знаю. Просто было интересно, еть ли какое-нибудь API для работы с виртуальной машиной. Порылся я в MSDN-е, но так ничего и не нашел :-( Не подскажешь, где именно описаны ключи? dos box с sourceforge. прекрасно пускает айс для дос, игрушки типа Алладина и Уфо ну и т.д. Рулез. Где его взять? Да, и еще интересно, как он ведет себя со звуком? Сможет ли этот dos box SB 5.1 Live! заюзать как старого доброго SB16 ? |
|
|
Дата: Июн 11, 2004 04:11:32 > Про ntvdm.exe я знаю. > Просто было интересно, еть ли какое-нибудь API для работы с виртуальной машиной. разумеется есть. соотвествующие функции начинаются с префикса VMD или V86, только их немного, да и те большей частью доступны из ядра. все взаимодействие идет через реестр и autoexec/config файлы, а так же ярлыки и пифки. > Порылся я в MSDN-е, но так ничего и не нашел :-( > Не подскажешь, где именно описаны ключи? странно... поищи по сочетанию NTVDM AND LPT_timeout > Рулез. Где его взять? http://dosbox.sourceforge.net с исходниками ;) мой любимый эмуль. > Да, и еще интересно, как он ведет себя со звуком? эмулирует бластер про, гуся и какой-то там синтезатор миди, уже и не помню, но все старые гусевые демки очень хорощо идут и отлично звучат, практически без потери качества. кстати, звук можно записывать в файл ;) > Сможет ли этот dos box SB 5.1 Live! заюзать как старого доброго SB16 ? конечно. >> V86MMGR_Set_EMS_XMS_Limits здесь я конкретно тормознул. такой функции нет в XP :-( |
|
|
Дата: Июн 11, 2004 04:28:25 Все, в MSDN все нашел. Спасибо! У меня сейчас чвязь никакая, так что DOSBox попозже качну. Спасибо за ссылку. Все же интересно... Ну память там всякая, base, xms, ems, хрен с ней, но звук? Как он звук эмулит? Он что, тащит за собой реализацию софтварного рендера звука для всех карточкек и отлавливает все обращения к портам в коде что-ли? |
|
|
Дата: Июн 11, 2004 15:55:16 кто dos box или XP? dos box эмилит процессор (так что он могет работать даже не на x86) и железо, а звук выводит через виндовый драйвер. обращения к портам он не отлавливает, т.к. он их сам же их и эмулирует ;) про "все карточки" никто не говорит, пока он эмулит только две - баластер и гусь. а XP просто виртуализует порты, эмулируя бластер. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.047 |