Page 3 of 5

Re: Eee PC 701

Posted: Mon Apr 13, 2009 11:11 pm
by ДедОк
Работай, пока ноут не вырубится... или две сопли в батарейный отсек, и на них тестер китайский, в качестве вольтметра...:)

Re: Eee PC 701

Posted: Sun Jul 19, 2009 1:54 pm
by Assembler
Прочитал и непонял. Разрешение в Kolibri 1024х600 поддерживается или нет? Хотел её ставить на нетбук.

Re: Eee PC 701

Posted: Sun Jul 19, 2009 2:10 pm
by Heavyiron
Именно такое разрешение - вряд ли, другое дело, что можно подобрать другое - стандартное, которое на конкретной модели нетбука будет смотреться более-менее приемлемо (с натяжкой, конечно).

Re: Eee PC 701

Posted: Sun Jul 19, 2009 2:21 pm
by Assembler
Спасибо! Буду думать.

Re: Eee PC 701

Posted: Sun Jul 19, 2009 3:32 pm
by Mario
Assembler
У меня субноут RoverBook NEO U800 (описание тут и тут) и для Vesa поддерживается только 800*600. Хотя режим и устанавливается, но монитор аппаратно отображает только 800*480. Я вышел из такой ситуации программно ограничив область отрисовки экрана. Включив в код ядра следующий кусок:

Code: Select all

	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: Select all

	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.

Re: Eee PC 701

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

Re: Eee PC 701

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

Re: Eee PC 701

Posted: Mon Jul 20, 2009 10:58 am
by Assembler
Ага, но ведь на нижней строке находится панель задач, "я имел ввиду как у виндовс", то получается она тоже будет отрезана. И как тогда системой управлять. Да, задачка однако.

Re: Eee PC 701

Posted: Mon Jul 20, 2009 11:32 am
by Mario
Mario wrote:Код который я привел просто устанавливает ограничение для Колибри - ниже 600-й строки не отрисовывать, потому что их все равно не видно.
Все будет как надо, в том числе и панель задач. Операциооная ситема ниже 600-й строки рисовать не будет - Ничего! Не будет рисовать даже фоновую картинку ниже 600-й строки. Потому что все что ниже, все равно не видно пользователю.

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

Re: Eee PC 701

Posted: Mon Jul 20, 2009 11:33 am
by <Lrz>
Код, приведенный выше для "обрезки" экрана, не приведет к не отображению панели задач. Т.к. это код говорит ОС Колибри, что бы использовать для формирования рабочей области только 600 строк.

Re: Eee PC 701

Posted: Mon Jul 20, 2009 11:40 am
by Assembler
Вот теперь понятно. Будет просто масштабирование экрана до разрешения 1024х600. Что меня вполне устраивает.Теперь осталось нетбук купить. Спасибо Вам!

Re: Eee PC 701

Posted: Mon Jul 20, 2009 12:07 pm
by Mario
Ты так и не понял. Это не масштабирование!
При масштабировании берется вся картинка 1024*768 и конвертируется в 1024*600. при этом будут искажения в изоражении.
Данный кусок кода просто приводит к урезанию используемой область экрана, раз ее все равно не видно. Если такое ядро запустить на обычном компьютере, где отображается 1024*768, то нижние 168 строк просто будут черные, потому что туда отрисовка производиться не будет вообще. Только в верхние 600 строк.

Re: Eee PC 701

Posted: Mon Jul 20, 2009 6:27 pm
by Gluk
продолжу мысль Mario..
..и панель задач (та что с Пуском) будет над этой чернотой

Re: Eee PC 701

Posted: Mon Jul 20, 2009 8:32 pm
by Assembler
У меня это неукладывается в голове. А к чему тогда эта "панель задач" привязывается? Не, надо мне тогда разбираться с кодом. Приведённый пример кода мне понятен. Буду учиться тогда дальше. Ещё раз Спасибо Всем!

Re: Eee PC 701

Posted: Mon Jul 20, 2009 10:14 pm
by Mario
Assembler
Панель вызывает функцию:

Code: Select all

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