Board.KolibriOS.org
http://board.kolibrios.org/

Eee PC 701
http://board.kolibrios.org/viewtopic.php?f=25&t=785
Page 3 of 5

Author:  ДедОк [ Mon Apr 13, 2009 11:11 pm ]
Post subject:  Re: Eee PC 701

Работай, пока ноут не вырубится... или две сопли в батарейный отсек, и на них тестер китайский, в качестве вольтметра...:)

Author:  Assembler [ Sun Jul 19, 2009 1:54 pm ]
Post subject:  Re: Eee PC 701

Прочитал и непонял. Разрешение в Kolibri 1024х600 поддерживается или нет? Хотел её ставить на нетбук.

Author:  Heavyiron [ Sun Jul 19, 2009 2:10 pm ]
Post subject:  Re: Eee PC 701

Именно такое разрешение - вряд ли, другое дело, что можно подобрать другое - стандартное, которое на конкретной модели нетбука будет смотреться более-менее приемлемо (с натяжкой, конечно).

Author:  Assembler [ Sun Jul 19, 2009 2:21 pm ]
Post subject:  Re: Eee PC 701

Спасибо! Буду думать.

Author:  Mario [ Sun Jul 19, 2009 3:32 pm ]
Post subject:  Re: Eee PC 701

Assembler
У меня субноут RoverBook NEO U800 (описание тут и тут) и для Vesa поддерживается только 800*600. Хотя режим и устанавливается, но монитор аппаратно отображает только 800*480. Я вышел из такой ситуации программно ограничив область отрисовки экрана. Включив в код ядра следующий кусок:
Code:
   movzx eax,word [BOOT_VAR+0x900C]  ; Y max
;start fix for U800L
   cmp   eax,600
   jne   @f
   mov   eax,480
@@:
;end fix for U800L
   dec   eax
   mov   [Screen_Max_Y],eax

Этот код вставлен в файл ядра kernel.asm начинеся со строки номер 356.
Соответсвенно если у тебя в синем экране загрузки Колибри показывается выбор разрешения 1024*768, то применив фикс ты сможешь получить искомое 1024х600. В твоем случае код будет такой:
Code:
   movzx eax,word [BOOT_VAR+0x900C]  ; Y max
;start fix for U800L
   cmp   eax,768
   jne   @f
   mov   eax,600
@@:
;end fix for U800L
   dec   eax
   mov   [Screen_Max_Y],eax

Разумеется все это актуально, только если в Vesa есть режим 1024*768.

Author:  Assembler [ Sun Jul 19, 2009 7:50 pm ]
Post subject:  Re: Eee PC 701

Спасибо за обзор нетбука!
В Vesa есть режим 1024х768. Приведённый твой код мне понятен. То есть тогда у меня будет идти обрезание 768 до 600, или это просто будет реальные 600, на которые система будет расчитывать, при выводе остального на экран. Непонимаю.
Только перед твоим постом уже отказался от покупки нетбука, теперь передумал опять :).
Вот только с кодом чуть разберусь, и можно попробывать под нетбучное разрешение сделать :).

Author:  Mario [ Sun Jul 19, 2009 7:59 pm ]
Post subject:  Re: Eee PC 701

Assembler
Видеокарта устанавливает режим 1024*768, и Flat Panel (экран субноута) его понимает, но отображает из него только верхние 600 строк. Код который я привел просто устанавливает ограничение для Колибри - ниже 600-й строки не отрисовывать, потому что их все равно не видно.
Тебе нужно взять исходники ядра http://kolibrios.org/?p=Download
Вставить этот кусок кода. Скомпилировать ядро в Fasm. И заменить файл kernel.mnt в образе Kolibri.img
Под виндой есть программа WinImage, под Linux образ можно смонтировать в файловую систему.
Если не хватает места (оригинальное ядро сжато программой kerpack), то удали в Games или Demos что-нибудь ненужное.

Author:  Assembler [ Mon Jul 20, 2009 10:58 am ]
Post subject:  Re: Eee PC 701

Ага, но ведь на нижней строке находится панель задач, "я имел ввиду как у виндовс", то получается она тоже будет отрезана. И как тогда системой управлять. Да, задачка однако.

Author:  Mario [ Mon Jul 20, 2009 11:32 am ]
Post subject:  Re: Eee PC 701

Mario wrote:
Код который я привел просто устанавливает ограничение для Колибри - ниже 600-й строки не отрисовывать, потому что их все равно не видно.

Все будет как надо, в том числе и панель задач. Операциооная ситема ниже 600-й строки рисовать не будет - Ничего! Не будет рисовать даже фоновую картинку ниже 600-й строки. Потому что все что ниже, все равно не видно пользователю.

З.Ы. Если тебя напрягает самого сделать могу скидать сам, только ты сначала субноут купи.

Author:  <Lrz> [ Mon Jul 20, 2009 11:33 am ]
Post subject:  Re: Eee PC 701

Код, приведенный выше для "обрезки" экрана, не приведет к не отображению панели задач. Т.к. это код говорит ОС Колибри, что бы использовать для формирования рабочей области только 600 строк.

Author:  Assembler [ Mon Jul 20, 2009 11:40 am ]
Post subject:  Re: Eee PC 701

Вот теперь понятно. Будет просто масштабирование экрана до разрешения 1024х600. Что меня вполне устраивает.Теперь осталось нетбук купить. Спасибо Вам!

Author:  Mario [ Mon Jul 20, 2009 12:07 pm ]
Post subject:  Re: Eee PC 701

Ты так и не понял. Это не масштабирование!
При масштабировании берется вся картинка 1024*768 и конвертируется в 1024*600. при этом будут искажения в изоражении.
Данный кусок кода просто приводит к урезанию используемой область экрана, раз ее все равно не видно. Если такое ядро запустить на обычном компьютере, где отображается 1024*768, то нижние 168 строк просто будут черные, потому что туда отрисовка производиться не будет вообще. Только в верхние 600 строк.

Author:  Gluk [ Mon Jul 20, 2009 6:27 pm ]
Post subject:  Re: Eee PC 701

продолжу мысль Mario..
..и панель задач (та что с Пуском) будет над этой чернотой

Author:  Assembler [ Mon Jul 20, 2009 8:32 pm ]
Post subject:  Re: Eee PC 701

У меня это неукладывается в голове. А к чему тогда эта "панель задач" привязывается? Не, надо мне тогда разбираться с кодом. Приведённый пример кода мне понятен. Буду учиться тогда дальше. Ещё раз Спасибо Всем!

Author:  Mario [ Mon Jul 20, 2009 10:14 pm ]
Post subject:  Re: Eee PC 701

Assembler
Панель вызывает функцию:
Code:
   mcall   14
   mov   [screen_size],eax

Описание:
Quote:
Функция 14 - получить размеры экрана.
Параметры:
eax = 14 - номер функции
Возвращаемое значение:
eax = [xsize]*65536 + [ysize], где
xsize = x-координата правого нижнего угла экрана = размер по горизонтали - 1
ysize = y-координата правого нижнего угла экрана = размер по вертикали - 1

Вычитает свою высоту из ysize и задает соответсвующие начальные координаты и размеры своего собственного окна в котором и отрисовывается.

Page 3 of 5 All times are UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/