Board.KolibriOS.org

Official KolibriOS board
It is currently Thu Feb 20, 2020 1:13 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 1138 posts ]  Go to page Previous 147 48 49 50 5176 Next
Author Message
PostPosted: Sun Mar 24, 2013 9:51 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
Попробовал выводить изображение в память, которая по адресу FE000000h. Проблемы прибавились.

Остаются артефакты после мышиного указателя:
Spoiler: Show
Image

А это при запуске программы:
Spoiler: Show
Image

Проверял в VirtualBox и в Bochs.

Как же тогда тут быть?


Top
   
PostPosted: Sun Mar 24, 2013 9:58 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
0CodErr wrote:
Попробовал выводить изображение в память, которая по адресу FE000000h. Проблемы прибавились.

1) Да, но зачем?
2) Код курсора в ядре каким чудом узнает, что "картинка ожила"?
0CodErr wrote:
Как же тогда тут быть?

Пользоваться функциями ядра для вывода, НЕ?

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


Top
   
PostPosted: Sat Mar 30, 2013 4:21 pm 
Offline

Joined: Thu Mar 28, 2013 8:27 am
Posts: 10
Люди, кто подскажет как заставить нашу "птичку" видеть на машине ещё что нибудь кроме внутреннего пространства образа. Я имею ввиду винты, сидюки и флешки? Уж больно хоттца её полноценной осью видеть. Помогите.


Top
   
PostPosted: Sat Mar 30, 2013 4:33 pm 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5083
Какая конфигурация компьютера? Пункт "b" на голубом экране включён?

_________________
Через тернии к звездам


Top
   
PostPosted: Sat Mar 30, 2013 8:06 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jul 11, 2012 3:17 am
Posts: 224
скромный вопрос, равносильно ли вот такое объявление:
Code:
str_table   dd 1024 dup (0)

вот такому:
Code:
    mov     eax,68
    mov     ebx,11
    int     0x40
    mov     eax,68
    mov     ebx,12
    mov     ecx,4096
    int     0x40
    mov     [str_table],eax
...
...
str_table   dd 0

если нет, то в чём разница?


Top
   
PostPosted: Sat Mar 30, 2013 8:22 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Не равносильно. В первом случае память выделяется сразу, и выравнивать адреса нужно вручную. Во втором случае начало адреса будет выравнено на 4к - но память будет выделена блоками по 4 Кб. Если в программе много malloc/realloc, то, вангую, будет не очень хорошо.


Top
   
PostPosted: Sat Mar 30, 2013 8:26 pm 
Offline
KSoC/GSoC Student

Joined: Wed Jul 11, 2012 3:17 am
Posts: 224
SoUrcerer wrote:
то, вангую, будет не очень хорошо.

вот с этим и столкнулся, хотел сделать динамическое выделение строк, но первым способом объявления, дюжит дольше (таблица указателей под динамически выделенные строки), а вот во второй раз уже держит меньше. Будем разбираться как поступить.


Top
   
PostPosted: Mon Apr 01, 2013 3:29 am 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5083
Для чего функция 53.11 "Прочитать данные сетевого стека"? Сейчас всё чтение данных из сокета в Liza идёт через 53.3 "Прочитать байт из сокета".
Spoiler: Show
Я пока ещё очень слаб в сетях, моим проводником в них был Дима и о 53.11 я даже не догадывался, пока esevece не добавил эту функцию в один из включаемых файлов C-- (O_o)

_________________
Через тернии к звездам


Top
   
PostPosted: Mon Apr 01, 2013 7:31 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Мде... прямо ф.35 и ф.36 или как PIO и DMA доступ к жесткому диску.
Скорость считывания данных на порядок выше будет, если ф.53.11 вместо ф.53.3 использовать.

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


Top
   
PostPosted: Thu Apr 04, 2013 3:52 am 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5083
Зачем нужна "Функция 68, подфункция 1 - переключиться на следующий поток выполнения." и где её следует применять?

_________________
Через тернии к звездам


Top
   
PostPosted: Thu Apr 04, 2013 7:56 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Ее можно применять если нужен опрос чего-либо в цикле. Заменяет ф.5 по сути в этом случае. Ну, или программе нечего делать и она может отдать свое время другим потокам.

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


Top
   
PostPosted: Thu Apr 04, 2013 4:16 pm 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5083
Не совсем понял зачем оно. То есть программа засыпает пока окно неактивно? И выполнение продолжается, когда окно активируется?
Видел эту функцию где-то в коде перед запуском нового потока.

_________________
Через тернии к звездам


Top
   
PostPosted: Thu Apr 04, 2013 4:24 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Нет же. Просто если твоя программа уже сделала всё, что должна была, и видит, что нет никаких событий, которые нужно обработать - то она просто передает управление другим программам.


Top
   
PostPosted: Sat Apr 06, 2013 2:28 am 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5083
Пытаюсь разобраться в функции 4, пишущей прямиком в память. Выходит кривая чёрная полоса.
Code:
   w = strlen(#text)*6;
   mem = malloc(w*9*4);
   for (i=0; i<w*9*4; i++) ESBYTE[mem+i]=0xFF; //делаем фон белым

   $mov eax, 4
   $mov ebx,0 << 16+0
   $mov ecx,0x88000000
   $mov edi, mem
   $mov edx, #text
   $int 0x40

   PutPaletteImage(mem,w,9,100,100,32,0); //рисуем, 32 - глубина цвета

_________________
Через тернии к звездам


Top
   
PostPosted: Sat Apr 06, 2013 8:53 am 
Offline
User avatar

Joined: Mon Jul 25, 2011 6:22 pm
Posts: 93
Leency wrote:
Пытаюсь разобраться в функции 4, пишущей прямиком в память. Выходит кривая чёрная полоса.
Code:
   w = strlen(#text)*6;
   mem = malloc(w*9*4);
   for (i=0; i<w*9*4; i++) ESBYTE[mem+i]=0xFF; //делаем фон белым

   $mov eax, 4
   $mov ebx,0 << 16+0
   $mov ecx,0x88000000
   $mov edi, mem
   $mov edx, #text
   $int 0x40

   PutPaletteImage(mem,w,9,100,100,32,0); //рисуем, 32 - глубина цвета

А что за строка text и зачем её размер умножать на 6?

_________________
Программист не тот, кто постоянно пишет КОД, а тот кто сможет понять чужой КОД!!!


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 1138 posts ]  Go to page Previous 147 48 49 50 5176 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


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