Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Dec 12, 2019 4:25 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 311 posts ]  Go to page Previous 1 2 3 4 5 621 Next
Author Message
 Post subject:
PostPosted: Mon Mar 20, 2006 12:16 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Очередное обновление эмулятора. Поддержка чтения и запуска программ с жесткого диска (папка/папки, которая/ые будет восприниматься как жесткий диск, настраиваются в ini-файле). Поддержка системных функций 32 и 33 (удаление файла с рамдиска, запись файла на рамдиск). Теперь работает mfar.


Top
   
 Post subject:
PostPosted: Mon Mar 20, 2006 4:32 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Mar 20, 2006 10:44 am
Posts: 557
Будь добр, добавь работу с порами ВВ, я делал это для MeDebug с помощью GiveIO (для NT), для функции 43 я сделала просто заглушку возвращаюшую всегда успешный результат.


Top
   
 Post subject:
PostPosted: Mon Mar 20, 2006 6:47 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Вообще-то работу с портами ввода-вывода операционные системы запрещают не зря - а если два приложения одновременно полезут на один и тот же порт? В Kolibri этого нет, поскольку там порты требуется резервировать перед использованием. GiveIO предоставляет доступ к одним и тем же портам ввода-вывода для всех приложений. GiveIO требует прав админа (впрочем, с этим можно примириться). Разрешать доступ ко всем портам все-таки нехорошо (программы могут и глючить, а могут и выполнять злонамеренные действия, а работа некоторых портов вообще должна управляться системой, иначе появятся страшные глюки). А какие конкретно порты имеются в виду? Или это был абстрактный вопрос?


Top
   
 Post subject:
PostPosted: Tue Mar 21, 2006 10:08 am 
Offline
Kernel Developer
User avatar

Joined: Mon Mar 20, 2006 10:44 am
Posts: 557
Конкретно интересуют 0x295 и 0x296 (они используются в моём GMon), а вообше эмулятор используют в основном для быстрого тестирования написаных программ, и если автор обращается к портам, то он сам отдаёт себе отчёт о возможных проблемах. На край можно не давать доступа к интерфейсу ATA (0x1f0-0x1f7, 0x170-0x177, 0x1e8-0x1ef, 0x168-0x16f, 0x3f6-0x3f7, 0x376-0x377, 0x3ee-0x3ef, 0x36e-0x36f), (наверное это самое критичное), или предупреждать пользователя.


Top
   
 Post subject:
PostPosted: Tue Mar 21, 2006 2:33 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Логично. Будет сделано.


Top
   
 Post subject:
PostPosted: Fri Mar 24, 2006 7:45 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Готово. В ini-файл добавлен параметр EnablePorts - порты, указанные в этом параметре, можно зарезервировать функцией 46, после чего (только после резервирования!) использовать. По умолчанию он пуст, и в абсолютном большинстве случаев его следует оставлять пустым. В приведенном выше случае следует написать "EnablePorts=295 296" или, что эквивалентно, "EnablePorts=295-296". В принципе можно написать "EnablePorts=0-ffff", но я так делать крайне не рекомендую. При непустом значении параметра под NT/2k/XP+ требуются права админа.

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
 Post subject:
PostPosted: Mon Mar 27, 2006 8:14 am 
Offline
Kernel Developer
User avatar

Joined: Mon Mar 20, 2006 10:44 am
Posts: 557
Отлично, всё работает!
Есть ещё идея : во время работы программы следить за ESP (точнее запоминать его минимальное значение), по завершению сообщать размер используемого стека, это сможет помочь уменьшить размер занимаемой памяти в некоторых программах.


Top
   
 Post subject:
PostPosted: Tue Mar 28, 2006 5:37 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Идея хорошая, но обращаться стоит скорее к mike.dld и halyavin'у: MeOSEmul и MeOsDebug полностью эмулируют программу, включая и эмуляцию процессора; KlbrInWin исполняет программу на реальном процессоре, а эмулирует только системные функции (потому он, собственно говоря, и быстрый и весит поменьше MeOSEmul и тем более Delphi'йского MeOsDebug). Так что максимум, что может KlbrInWin, - отслеживать esp при вызове системных функций, а это не совсем то, что требуется.
В принципе можно ещё выдавать список страниц памяти (0x1000 = 4 Кб), к которым было обращение, без существенного увеличения накладных расходов. Но это довольно далеко от заданного вопроса.

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
 Post subject:
PostPosted: Wed Mar 29, 2006 1:42 am 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 689
diamond
Глянул сегодня на последнюю версию. В режиме возврата сканкодов не работают управляющие клавиши и цифровая клавиатура. Проверял на Tinypad4 и MFAR9.


Top
   
 Post subject:
PostPosted: Mon Apr 03, 2006 5:11 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
fixed (я забивал на префикс 0xE0) Теперь tinypad и mfar9 работают (так же, как и в самой Kolibri)

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
 Post subject:
PostPosted: Mon Apr 03, 2006 5:24 pm 
Offline

Joined: Thu Jan 26, 2006 8:47 pm
Posts: 284
Теперь VirtualKolibri ругается Cannot open input file


Top
   
 Post subject:
PostPosted: Mon Apr 03, 2006 6:11 pm 
Offline
User avatar

Joined: Fri Jan 27, 2006 3:06 pm
Posts: 1071
В .ini файле заново внеси изменения (наверняка ты просто заменил его новым, когда архив распаковал)


Top
   
 Post subject:
PostPosted: Fri May 05, 2006 4:02 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Эмулятор переехал на
http://diamondz.land.ru/KlbrInWin.7z
http://diamondz.land.ru/KlbrInWin_src.rar
Обновление, теперь поддерживаются новые подфункции 70-й функции (чтение файлов и папок с длинными именами). Попутно пофиксена пара мелких багов.
VirtualKolibri не изменилась, можно использовать адреса, указанные выше, но на всякий случай также доступна с
http://diamondz.land.ru/VirtualKolibri.exe
http://diamondz.land.ru/VirtualKolibri.asm

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
 Post subject:
PostPosted: Fri May 05, 2006 5:08 pm 
Offline

Joined: Thu Jan 26, 2006 8:47 pm
Posts: 284
небольшой недочет: при нажатии слеша на дополнительной клавиатуре выводятся символы "p/" а не просто "/". В предыдущей версии все ок


Top
   
 Post subject:
PostPosted: Sat May 06, 2006 10:27 am 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 689
При чтении с разделов >1 читается с первого, т.е. если читать с /hd0/2, то прочитается /hd0/1


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 311 posts ]  Go to page Previous 1 2 3 4 5 621 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited