Board.KolibriOS.org

Official KolibriOS board
It is currently Sat Dec 05, 2020 6:41 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 1140 posts ]  Go to page Previous 162 63 64 65 6676 Next
Author Message
PostPosted: Sat Oct 04, 2014 3:14 am 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1165
В общем есть необходимость прочитать таблицу разделов на жестком. То, что сначало необходимо определить устройство на PCI шине через 62 функцию и как это сделать понятно. А вот что делать потом?

_________________
я лишь учусь


Top
   
PostPosted: Sat Oct 04, 2014 6:06 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
punk_joker wrote:
В общем есть необходимость прочитать таблицу разделов на жестком. То, что сначало необходимо определить устройство на PCI шине через 62 функцию и как это сделать понятно. А вот что делать потом?

А потом нужно делать все то что делает код ядра. Это не совсем вопрос для новичка. Открой код ядра и начни разбираться. Однако в ядре код только для ATA контроллеров.
З.Ы. Не хотелось бы выглядеть невежливым, но пересказывать код словами занятие не совсем умное.
З.З.Ы. Кулаков В. "Программирование дисковых подсистем" тебе в помощь. Более толковой и разжеванной книги я еще не видел.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Sat Nov 08, 2014 11:06 pm 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1165
Вопросы носят чисто образовательный характер:
1. Для получения инфы о разделах, необходим низкоуровневый доступ к накопителям, что и делает ядро (или драйвер?). Так вот, Так вот, Редактору разделов например, необходимо все теже действия повторять или же в ядре необходима реализация некоторого функционала, который предоставлял подобный функционал этой программе?
2. Драйвер имеет доступ к API предоставляемому ядром приложению, или же у него отдельный набор функций взаимодействия с ним?

_________________
я лишь учусь


Top
   
PostPosted: Sun Nov 09, 2014 1:25 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
punk_joker
1. Большинству программ не нужна такая функциональность в ядре, так что проще сделать функцию посекторного чтения/записи. Потому в больших ОС более сложный функционал реализован в программах и/или драйверах.
2. Вот тут нужно спрашивать у более компетентных товарищей, но вроде как драйвер может дополнять/подменять существующий API.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Thu Nov 13, 2014 6:35 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
punk_joker
У драйверов дисковых устройств есть свой API, он описан здесь: http://websvn.kolibrios.org/filedetails ... rs_api.txt
Тебе надо пройти по списку дисков и найти нужный, после чего использовать функциии из DISKFUNC


Top
   
PostPosted: Sat Nov 15, 2014 7:07 am 
Offline

Joined: Wed Mar 28, 2012 9:55 pm
Posts: 3
Приветствую.

Пытаюсь использовать libimg из сишечки. Вроде бы все получается, да вот беда: закралась ошибка где-то при получении адреса функции, судя по возникновению ошибки "неподдерживаемая инструкция" при вызове функции.

Вопрос: как мне это отладить, т.е. как мне извлечь из libimg реальный адрес, на который я должен прыгать?

В mtdebug библиотеку не получилось подгрузить. У меня идеи кончились.


Top
   
PostPosted: Mon Nov 17, 2014 8:30 pm 
Offline
Kernel Developer
User avatar

Joined: Thu Sep 03, 2009 1:52 pm
Posts: 1625
Зачем загружать библиотеку в mtdbg? В отладчик нужно загружать программу, её использующую. mtdbg должен подхватить отладочные символы из map-файла, создаваемого при компиляции.

_________________
Сделаем мир лучше!


Top
   
 Post subject:
PostPosted: Thu Dec 04, 2014 1:19 am 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1165
Вопрос для общего развития. Можно ли окну отправлять события мыши не зависимо от положения курсора? Или же например эмулировать действия мыши в отдельном окне (не активном) и продолжать при этом пользоваться системой в обычном режиме?

_________________
я лишь учусь


Top
   
PostPosted: Thu Dec 04, 2014 2:52 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
punk_joker
Ты решил заново изобрести MOUSEMUL - эмуляция мыши?
Вообще окнам отправляются события мыши (Event 6), если принудительно не запрещать. через bit 31 ф.40.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
 Post subject:
PostPosted: Thu Dec 04, 2014 3:15 am 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1165
Ну MOUSEMUL простш переносит функционал мыш на клавиатуру. Мне же нужно эмулировать работу ыши и выполнять действия заданные в конфиге, желательно чтоб события отправлялись конкретному окну, которое может быть неактивным и вообще свернутым. При этом должна быть возможность продолжать работу с системой.

_________________
я лишь учусь


Top
   
 Post subject:
PostPosted: Thu Dec 04, 2014 3:20 am 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1165
Возможно сейчас это не реализуемо, потому и спрашиваю на будущее.

_________________
я лишь учусь


Top
   
 Post subject: Re:
PostPosted: Thu Dec 04, 2014 3:33 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
punk_joker wrote:
желательно чтоб события отправлялись конкретному окну, которое может быть неактивным и вообще свернутым

Вот этого я вообще не понимаю. Работа с координатами мыши имеет смысл только когда окно развернуто, когда оно свернуто, то оно имеет реально физические размеры 0 и 0. Его по факту нет для системы.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Sat Dec 20, 2014 9:01 pm 
Offline

Joined: Sat Dec 20, 2014 8:37 pm
Posts: 18
Здравствуйте.
У меня есть несколько вопросов о создании консольных приложений на C++ в KolibriOS:

Кратко: Мне необходимы эти функции из console.obj, либо их аналоги, если они есть. Каким образом можно их использовать, что подключить и где взять сам console.obj?

Upd:
Сам же и отвечу:
Функции загружаются из console.obj динамически, сам файл располагается здесь: /sys/lib/console.obj
Пример загрузки на Asm: /programs/develop/libraries/console/examples/
Примеры загрузки на C: /programs/system/shell/system/console.c
Для компиляции кода на C++ (GCC) добавить макросы:
Code:
#define __stdcall __attribute__((stdcall))
#define _cdecl __attribute__((cdecl))
#define _stdcall __attribute__((stdcall))

Никакие дополнительные файлы подключать не нужно.


Last edited by igevorse on Wed Dec 31, 2014 2:13 am, edited 3 times in total.

Top
   
PostPosted: Sat Dec 20, 2014 11:08 pm 
Offline

Joined: Wed May 18, 2005 7:27 pm
Posts: 1001
viewtopic.php?f=23&t=1623

по форуму есть поиск search.php , достаточно набрать в нём console.obj C ++


Top
   
PostPosted: Tue Jan 27, 2015 1:11 pm 
Offline

Joined: Tue Jan 27, 2015 12:12 pm
Posts: 3
Здравствуйте. Вот решился зарегистрироваться и спросит не подскажете-ли как задействовать работу портов?
У меня с трудом через долгие перезапуски открывается ОС "ХР". Какой-то мертвый синий экран не позволяет войти и, на сколько я уже информирован, это действие BSOD с которым возился и ничего не добился. Но ХР все-же открываю и решил установить ОС "Колибри". Шустрая KolibriOS и проблем как будто никаких кроме одного. Почему нет в этой системе портов. Нет дисковода. Нет установки под USB.
Может забыл программы какие установить? Я вообще-то пенсионого возраста и возраст сказывается на трудности в этих компьютерах, но вот как-то бьюсь и чего-то добиваюсь. Интернет не проблема. Программирование на бейсике старых компиляторв тоже не проблема, а ассемблер - это такие дебри, где надо и в голове большую компьютерную память. а и она во мне как решето. Надеюсь что подскажеть и пусть хоть не понятно, но что-то-же усвою на пользу.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 1140 posts ]  Go to page Previous 162 63 64 65 6676 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:  
Powered by phpBB® Forum Software © phpBB Limited