|
|
Здравствуйте, гость ( Вход | Регистрация )
|
|
mamaich
|
#1 @ 20.06.2008 - 10:15
|
|
RomMaster ![]() ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 1558 Регистрация: 29.01.2004 Пользователь №: 1549 Спасибо сказали: 64 раз(а) |
Эмулятор QEMU 0.91 - http://bellard.org/qemu. На сайте уже есть более новая версия, но быстродействие в ней от двух до трех раз ниже, чем у версии 0.91, поэтому переход на нее пока не планируется.
Главное отличие данного эмулятора от всех остальных - это динамическая перекомпиляция исполняемого кода х86 в код АРМ. Куски кода транслируются один раз, и сохраняются в буфере для дальнейшего использования. На моей машине (HTC Universal, 128 Mb RAM, 624Mhz CPU), скорость эмуляции составляет до 25% от скорости работы того же кода на реальном Pentium 90Mhz. Эмулируется полноценный компьютер с SB16 звуковой картой (без поддержки MIDI), SVGA карта Cirrus Logic 5446, до 2 дисководов и HDD, и до одного CDROM. Информацию по настройке можно найти на сайте автора или здесь в Wiki - wiki:QEMU-HOWTO.Требования: - Операционная система: WM5, WM6, WM 6.1, WM 6.5. Совместимость с 2003SE сейчас поломана. - Процессор: xscale, qualcomm (под другими так же может работать) с частотой 500мгц и выше, под device эмулятором тоже запускается. Разгон процессора КПК - рекомендуется. Быстрая SD-карта так же приветствуется. - VGA экран желателен, на QVGA картинка масштабируется с потерей качества и призводительности. - 128 Мб оперативной памяти. Запускается на устройствах с 64 Мб оперативной памяти после софт резета или с включением свап-файлов (см ниже ключ "-useswap"). - Желательна аппаратная клавиатура, тк наэкранная клавиатура не доделана. Запуск: - распаковать архив в корень SD-карты. Если SD карта называется не "Storage Card", либо архив распакован в подкаталог SD карты - необходимо исправить пути. - исправить файл cmdline.txt, заменив путь к файлу образа жесткого диска на свой. Все слеши (\) необходимо удваивать, например вместо "\Storage Card\80M.img" путь должен выглядеть как "\\Storage Card\\80M.img". Русские буквы в путях поддерживаются, убедитесь только что файл сохранен в windows кодировке. При добавлении ключей - каждый ключ должен быть на отдельной строке. - исправить файл plugins_ini.txt (файл создается при первом запуске, и в него будут прописаны значения по-умолчанию). В нем находится настройка UI и экспериментального плагина, перехватывающего работу с файлами и открывающего вместо этого реальные файлы с девайса (огромный выигрыш в скорости). Необходимо изменить PathToFiles на путь к каталогу, в котором находятся "подсовываемые" файлы. В случае, если ДОС обращается к файлу, скажем "c:\heroes2\data\heroes2.agg" то для того чтобы обращение было перенаправлено к файлу "\storage card\qemu\heroes2\data\heroes2.agg", то PathToFiles должен содержать строку "\storage card\qemu" без кавычек и без удваивания слешей и без завершающего слеша. При этом сам файл "c:\heroes2\data\heroes2.agg" должен существовать в образе жесткого диска, но может иметь нулевой размер. - Запустить. Если запустилось, но тут же выкинуло - смотрим файл qemu-out.txt, в нем видно сообщение об ошибке. Если в логах "Cannot load qemu_ui.dll" - возможно, не хватило памяти. В программе реализована поддержка свап-файлов. Для ее включения - добавьте в конец файла cmdline.txt строку "-useswap" (без кавычек). Свап файлы создаются в подкаталоге "swap" рядом с qemu.exe, и при корректном завершении работы программы удаляются автоматически. При использовании свап-файлов наблюдается некоторое замедление работы программы, так что если памяти достаточно - лучше свап файлы не использовать. Что планируется в дальнейшем: Дальнейшая оптимизация кода QEMU невозможна, поэтому увеличение скорости эмуляции будет реализовываться за счет подключаемых плагинов. Плагин устанавливает хуки в код эмулируемого приложения, и выполняет наиболее частые/трудоемкие участки кода самостоятельно не используя эмуляцию. Тем самым достигается значительный прирост в скорости, и появляется возможность адаптации программ под особенности работы на КПК (в частности, под стилус). Отладка технологии производится на игре Heroes of Might and Magic 2, в дальнейшем появятся дополнительные плагины для других программ (не исключено, что в будущем плагины станут платными). Поддержка: Для желающих финансово простимулировать работу над проектом, привожу свои кошельки: RUR: R339434335513, USD: Z588578204369, EUR: E230290760889 История изменений (старые сообщения удалены): 13 марта 2009 В данном билде реализован новый принцип. Вместо "общей" оптимизации qemu в плане повышения быстродействия(тут лимит уже исчерпан), будет проводиться ее оптимизация под конкретные программы, в ущерб совместимости с остальным (в дальнейшем выбор программы будет реализовано в виде отключаемых плагинов). В данный момент - приоритетный продукт "Heroes Of Might And Magic 2". Описание тулбара: на тулбар вынесены только кнопки, которые могут понадобиться при игре в героев. Для того чтобы "зафиксировать" в нажатом состоянии любую кнопку (например, shift) - достаточно на нее нажать и подержать с секунду. Правые две кнопки тулбара - переключение на полный экран и выход, левее от них темносерый квадрат - "прокрутка". 30 марта 2009 Проапгрейдил Heroes 2 до Price Of Loyality. Новый архив во вложении. Поменялся код "акселерирующего" плагина, Succession Wars более не поддерживается. Добавил плагин перехватывающий int 21h, настройки в файле plugins.ini (см выше). Теперь герои 2 - весьма играбельные. Имеется глюк. При выборе старой компании от Succession Wars, после тыканья в "фотографию" царя за которого играем, игра тупит порядка минуты перед тем как продолжить загрузку (в SW такого не было, и при выборе новых компаний такого глюка тоже нет). 31 марта 2009 Добавлена поддержка ключа "-useswap". Свап файлы создаются в подкаталоге "swap" рядом с ЕХЕ файлом, и удаляются автоматически при корректном завершении программы. Так же в данном билде буфер под сгенерированный код выделяется динамически, тем самым QEMU сможет запускаться и на устройствах с небольшим размером свободной памяти (естественно в ущерб производительности). 6 апреля 2009 Приложил обновленный архив qemu_her2_pol_new.rar. Данный билд поддерживает как VGA так и QVGA устройства, скорее всего под WM 2003 не запустится (эмулятор 2003 просто виснет при старте qemu.exe, а реального девайса у меня нет). Поддержка QVGA реализована как масштабрование из VGA картинки путем выкидывания лишних пикселей. В данном билде переименован файл plugins.ini в plugins_ini.txt, чтобы его можно было редактировать непосредственно на КПК например, в WORD. В архив положен "большой" тулбар toolbar-big.qtb, его включение производится установкой строки "Toolbar=\..полный путь..\toolbar-big.qtb" в plugins_ini.txt. Перехватчик int 21 и акселератор для heroes 2 pol вынесены в отдельные DLLки, их исходные тексты приложены к данному сообщению (plugin_examples.rar). В дальнейших планах сделать универсальную эмуляцию мыши для поддержки разных программ (сейчас вся эмуляция вшита в код heroes2.dll, хочу вынести в отдельный модуль), и написать хоть какую-нибудь инструкцию для плагинописателей. Сообщение отредактировал mamaich - 6.04.2009 - 12:02
Прикрепленные файлы
qemu_her2_pol_new.rar ( 30.11 мегабайт )
Кол-во скачиваний: 379
plugin_examples.rar ( 12.78 килобайт )
Кол-во скачиваний: 193-------------------- HTC Universal
|
![]() |
maskin
|
#2 @ 20.06.2008 - 11:31
|
|
старожил ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 683 Регистрация: 15.03.2004 Пользователь №: 2863 Спасибо сказали: 21 раз(а) |
mamaich
Все конечно замечательно, но оформи тему пожалуйста по правилам. И дай скриншоты. Я как человек, не работавший с линуксом вообще не понимаю что такое QEMU (а таких людей, гораздо больше чем линуксоидов). Я понимаю, что ты разработчик, умный и талантливый, но все-таки для тех кто в танке и не знает умных слов, объясни, что такое QEMU для чего служит и как выглядит. Цитата При создании новой темы всегда указывайте в названии полное наименование игры/программы (без указания версии!), а в описании темы указывайте платформу, для которой данная игра/программа предназначена. Заголовок (шапка) каждой темы данного раздела должна иметь структуру: [Название игры (программы)] [версия (если это программа)] [Если это программа для эмулятора, то обязательно указывайте платформу (например – Sega, Game Boy Color, PalmOS, Java и т.п.)] [По возможности, указывайте системные требования КПК для терпимой эмуляции данной игры/программы] [Скриншот с pocketgear.com или handango.com] (вставлять с помощью кнопки IMG) [Описание (желательно на русском)] [Ссылка на официальный сайт (обязательно, если это эмулятор)] Да и еще, у особо невезучих, на работе рапида запрещена Сообщение отредактировал maskin - 20.06.2008 - 11:35 -------------------- Живи и не мешай жить другим !
|
Xlab
|
#3 @ 22.06.2008 - 15:09
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
mamaich
ты просто гений!! я уже 2 дня сижу ставлю разные OS я разделяю их на 4 типа: 1)не запускаются, ошибки с дровами или ненаходит загрузочную дискетку(мало) 2)не запускаются, заступариваются на ввобе чего-то(причем я могу ввести все и ввожу с наэкранной клавиатуры но есть системы которые заступориваюся и не чуствуют мою клаву но это 1 штука такая остальные чувствуют и ввожу что хочу) 3)запускаются, трампампам все ок все ок запускается и там где должен быть GUI и все такое бац - черный экран и намертво все виснет и даже кпк. облом, а так все шло... 4)запускаются, но, как выяснилось крайне примитивные, по типу того линукса что на 10мб харде... и всетаки: 1)что это за черный экран?! 2)одна ось почти запустилось но когда подгружала дрова заступорилась на мыше - говориит мол занят. как быть? её можно отключить? эту мышь если у мну ее всеравно нет? 3)сделай возможность втыкать побольше хардов а А В ЦЕЛОМ СПАСИБО!!! P.S. много ось тут - OsZoo Сообщение отредактировал Xlab - 22.06.2008 - 15:10 -------------------- ходячий отжиг
|
Xlab
|
#4 @ 22.06.2008 - 22:52
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
так. не буду еще раз расписывать мой восторг, добавлю пару поправок поповоду qemu:
-пользователи без внешней клавы могут спокойно поверх qemu выдвинуть обычную наэкранную клавиатуркулаву(реско, и.т.п.) -PocketConsole на мой взляд, совсем не нужен(у меня он просто не идет). особенно тем кто использует реско експлорер или CeCommander. и вопрос: КАК ОТРУБИТЬ ДРАЙВЕР МЫШИ?! ХЕЛП!! Сообщение отредактировал Xlab - 22.06.2008 - 22:53 -------------------- ходячий отжиг
|
mamaich
|
#5 @ 23.06.2008 - 02:01
|
|
RomMaster ![]() ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 1558 Регистрация: 29.01.2004 Пользователь №: 1549 Спасибо сказали: 64 раз(а) |
mamaich ты просто гений!! я уже 2 дня сижу ставлю разные OS Благодарности должны идти автору QEMU. Они в новый билд добавляют "оптимизирующий компилятор", который в теории должен увеличить скорость эмуляции процентов на 30-50. Вот подожду когда код стабилизируется от багов - и на КПК портирую. По проблемам: Цитата 1)не запускаются, ошибки с дровами или ненаходит загрузочную дискетку(мало) Тут совет - сравнить работу на настольной QEMU. Есть шанс что это ее баг. К примеру тот же фоллаут не запускается и на ПК. Цитата 2)не запускаются, заступариваются на ввобе чего-то(причем я могу ввести все и ввожу с наэкранной клавиатуры но есть системы которые заступориваюся и не чуствуют мою клаву но это 1 штука такая остальные чувствуют и ввожу что хочу) ссылку на образ жесткого диска в студию. Цитата 3)запускаются, трампампам все ок все ок запускается и там где должен быть GUI и все такое бац - черный экран и намертво все виснет и даже кпк. облом, а так все шло... опять же - ссылку. Цитата 4)запускаются, но, как выяснилось крайне примитивные, по типу того линукса что на 10мб харде... Windows 95 запсукается отлично (и тормозно). Цитата 1)что это за черный экран?! Не имея ссылки на hdd могу только гадать на кофейной гуще. Может быть тут баг в эмуляции видеокарты (я искусственно зарезал размер видеопамяти до 2 мб, по-дефолту было 4 мб), и может гдето накосячил. А может просто оперативки не хватает. Мне надо воспроизвести баг у себя. Скорее всего банально кончилась оперативка. Цитата 2)одна ось почти запустилось но когда подгружала дрова заступорилась на мыше - говориит мол занят. как быть? её можно отключить? эту мышь если у мну ее всеравно нет? Эмулируется PS/2 мышь. Отключить ее в исходниках в принципе можно - но нет смысла, лучше разобраться с проблемой и ее исправить, по времени это займет столько же. Давай ссылку на ось! Цитата 3)сделай возможность втыкать побольше хардов а Можно подключить 3 жестких диска и 1 сидиром, либо 4 жестких диска. Это ограничение стандартного IDE контроллера (насчет 1 сидюка - это лимит qemu), и нет смысла городить огород добавляя дополнительные устройства. -------------------- HTC Universal
|
Xlab
|
#6 @ 23.06.2008 - 12:29
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
опять же по пунктам ^^
1)по поводу багов QEMU и дискет - согласен. все делал по инструкции а не работает. 2)MenuetOS -вот эта ось ступорится при попытке ввести цифру видеорежима(на компе все норм) 3)по поводу черного экранна - практически все графические оси какие я тестил: ReactOS Haiku Ubuntu(хехе ну я знал что она не пойдет) 4)Windows 95 у меня и на PocketDOS запускался, я его даже тестировать не стал 5)MonaOS - эта ось конфликтует с драйвером мышки 6)харды подключать не получилось. там всего 2 - хард и сиди, как не крути -------------------- ходячий отжиг
|
maskin
|
#7 @ 23.06.2008 - 17:47
|
|
старожил ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 683 Регистрация: 15.03.2004 Пользователь №: 2863 Спасибо сказали: 21 раз(а) |
Xlab
Если не влом, сделай подробную инструкцию "для чайников" + скрины как работать с данным эмулем. А мы ее википедируем -------------------- Живи и не мешай жить другим !
|
mamaich
|
#8 @ 24.06.2008 - 02:02
|
|
RomMaster ![]() ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 1558 Регистрация: 29.01.2004 Пользователь №: 1549 Спасибо сказали: 64 раз(а) |
Xlab Если не влом, сделай подробную инструкцию "для чайников" + скрины как работать с данным эмулем. А мы ее википедируем Инструкцию писать пока еще рано. Вот как сделаю Front End (и соответственно откажусь от PocketCMD) - тогда можно будет, и со скриншотами. Только по срокам ничего сказать не могу. Может сделаю в эти выходные, а может и через месяц. Сообщение отредактировал mamaich - 24.06.2008 - 02:04 -------------------- HTC Universal
|
Xlab
|
#9 @ 24.06.2008 - 07:07
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
я уже наделал скринов с примером запуска Minix и пишу инструкцию xD
да там без покет кмд все идет если иметь хороший эксплорер(файловый, с поддержкой редактирования ярлыков) -------------------- ходячий отжиг
|
maskin
|
#10 @ 24.06.2008 - 10:22
|
|
старожил ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 683 Регистрация: 15.03.2004 Пользователь №: 2863 Спасибо сказали: 21 раз(а) |
mamaich
Эх, жалко что у тебя PSP-хи нет, так бы ты и для нее собрал (там тоже через gcc делается)... -------------------- Живи и не мешай жить другим !
|
Xlab
|
#11 @ 26.06.2008 - 10:51
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
ну и? кто википидировать хотел?
-------------------- ходячий отжиг
|
maskin
|
#12 @ 27.06.2008 - 09:34
|
|
старожил ![]() ![]() ![]() ![]() ![]() Профиль Группа: Модераторы Сообщений: 683 Регистрация: 15.03.2004 Пользователь №: 2863 Спасибо сказали: 21 раз(а) |
Xlab
Ща, добровольцев найти надо А пока в шапку перенесу -------------------- Живи и не мешай жить другим !
|
V83
|
#13 @ 27.06.2008 - 11:52
|
![]() --- Профиль Группа: Ветераны Сообщений: 8460 Регистрация: 5.04.2004 Пользователь №: 3405 Спасибо сказали: 144 раз(а) |
Xlab
ну и? кто википидировать хотел? biggrin.gif Я только завтра-послезавтра смогу. А чего сразу там не писал? Вика - она только на первый взгляд страшная. А так - куда проще форума Xlab О, спасибо за хорошие скриншоты! В общем, сделаю завтра всё -------------------- Asus P750 WM6.1 128MB RAM
|
Xlab
|
#14 @ 27.06.2008 - 17:16
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
в шапку эт зря. В шапке - должно быть краткое описание + обновления от мамаича(спс за лоадер кстати, но в корень было не обязательно все класть я клал на карту. это в мануале я положил в корень чтобы не заморачивать никого названиями карт ^^) а вот мануал я сейчас по просьбе Димы пытаюсь в вику засунуть. там пусть и живет, а тут надо этот мануал подтереть
-------------------- ходячий отжиг
|
V83
|
#15 @ 27.06.2008 - 17:44
|
![]() --- Профиль Группа: Ветераны Сообщений: 8460 Регистрация: 5.04.2004 Пользователь №: 3405 Спасибо сказали: 144 раз(а) |
В шапке - должно быть краткое описание + обновления от мамаича Так точно. -------------------- Asus P750 WM6.1 128MB RAM
|
V83
|
#16 @ 28.06.2008 - 23:57
|
![]() --- Профиль Группа: Ветераны Сообщений: 8460 Регистрация: 5.04.2004 Пользователь №: 3405 Спасибо сказали: 144 раз(а) |
Xlab
ну и? кто википидировать хотел? biggrin.gif wiki:QEMU-HOWTO - готово, я тебе не дождался, сделал как и обещал. Вычитывай -------------------- Asus P750 WM6.1 128MB RAM
|
V83
|
#17 @ 29.06.2008 - 15:14
|
![]() --- Профиль Группа: Ветераны Сообщений: 8460 Регистрация: 5.04.2004 Пользователь №: 3405 Спасибо сказали: 144 раз(а) |
Xlab
Кстати, а почему "енот"? -------------------- Asus P750 WM6.1 128MB RAM
|
(_roma_)
|
#18 @ 29.06.2008 - 16:01
|
|
Почитатель ![]() ![]() Профиль Группа: Пользователи Сообщений: 40 Регистрация: 28.06.2008 Пользователь №: 72762 Спасибо сказали: 0 раз(а) |
Ждем поддержку low-ramных машин.
|
Xlab
|
#19 @ 29.06.2008 - 16:12
|
![]() провинившийся ![]() ![]() ![]() ![]() Профиль Группа: Пользователи Сообщений: 444 Регистрация: 14.04.2006 Пользователь №: 32686 Спасибо сказали: 19 раз(а) |
http://www.oszoo.org/wiki/index.php/Minix3_1_1_x86.tar
а почему линукс - пингвин? (_roma_) у тебя меньше 24мегабайт? -------------------- ходячий отжиг
|
(_roma_)
|
#20 @ 29.06.2008 - 17:09
|
|
Почитатель ![]() ![]() Профиль Группа: Пользователи Сообщений: 40 Регистрация: 28.06.2008 Пользователь №: 72762 Спасибо сказали: 0 раз(а) |
RoverPC N6 QVGA + 27 свободно + XCPUScalar + Virtual Display + qemu launcher = Мелькнувший темный экран < 1 сек (с заголовком QEMU) и все.
|
![]() ![]() |
|
Текстовая версия | Мобильный скин | Сейчас: 4.09.2010 - 03:05 |