XVilka
В идеале оно конечно верно, только один принципиальный вопрос: как отделить нужный код в BIOSе от ненужного?
NB: выбор "нужный-ненужный" определяется спецификой конкретной задачи. Для каких-то задач надо, например, сохранить Setup-меню, в других случаях можно работать на жестком дефолте (даже не инициализируя текстовый режим), а в третьих - вообще перешить весь ROM с нуля, как в CoreBoot.
В любом случае нужны
1) тысячи человеко-часов каторжной работы, плюс
2) достоверные исходники BIOS для каждой конкретной платформы.
Я вовсе не отвергаю Ваше предложение: есть задачи, для которых овчинка стоит выделки. Какие могут быть варианты их решения?
1) работать с ворованным/взломанным BIOSом: минимум затрат, минимум технической поддержки и никаких шансов для выхода на открытый рынок. Годится для разовых шабашек и закрытых проектов; работает только на одной конкретной доске, переносимость не гарантируется, легального рынка нет.
2) заказать легальные исходники BIOS у производителя: максимум затрат и всяческих проверок на вшивость, полноценная техническая поддержка и полное право на продажи конечного продукта. Открывать исходный код (даже твой собственный) никакая лицензия не разрешит. Переносимость (во всяком случае для одного семейства чипсетов) гарантируется. Идеальный вариант для перспективных коммерческих проектов.
3) использовать альтернативный 32-разрядный загрузчик CoreBoot, заточенный под Линукс-ядро. Очень заманчиво во всех отношениях, но в Колибри под него очень много всего надо перепиливать. К тому же этот загрузчик приходится индивидуально затачивать под каждую систему. Почти все платформы, на которых CoreBoot достоверно и стабильно работает - унылое старьё.
Но есть и кое-что интересное: ASUS M4A78/785, AsRock 939A785, GigaByte GA-MA78* - это всё мои клиенты. Еще в декабре их не было - явно не обошлось без слива из АМД...
yogev_ezra, как насчет CoreBoot-загрузки - может, объединим усилия? (правда, Vortex'ов там в списке нет совсем)
Kolibri-А
-
Евангелие от Иоанна: стих 1[/size]
Code: Select all
; В начале было Слово: B32: mov ax, os_stack ; Selector for os
Я буду рад помочь, чем смогу - только скажите, чем? В принципе, для Vortex это не нужно, там в заводском BIOS уже есть поддержка загрузки floppy image из BIOS, просто эта опция присутствует не на всех версиях BIOS, и я сейчас ищу подходящуюart_zh wrote:yogev_ezra, как насчет CoreBoot-загрузки - может, объединим усилия? (правда, Vortex'ов там в списке нет совсем)
Clean-room reverse engineering еще никто не отменял. ![Smile :)](./images/smilies/icon_smile.gif)
А по поводу Setup-меню, не проще ли его на самой Колибри реализовать? Не вижу в нем особого смысла, если честно.
![Smile :)](./images/smilies/icon_smile.gif)
А по поводу Setup-меню, не проще ли его на самой Колибри реализовать? Не вижу в нем особого смысла, если честно.
Last edited by XVilka on Wed Feb 09, 2011 6:19 pm, edited 1 time in total.
Я зашился с новым графическим движком, приветствуются любые отзывы/тесты/багфиксы. Кстати, подобная графика имхо и Вам не помешает - никакой привязки к AMD/ATI там нет.yogev_ezra wrote:Я буду рад помочь, чем смогу - только скажите, чем? В принципе, для Vortex это не нужно, там в заводском BIOS уже есть поддержка загрузки floppy image из BIOS, просто эта опция присутствует не на всех версиях BIOS, и я сейчас ищу подходящую
Готов потестировать, только скажите, как. Мы используем Kolibri Trunk (Auto-Build by CleverMouse).art_zh wrote:Я зашился с новым графическим движком, приветствуются любые отзывы/тесты/багфиксы. Кстати, подобная графика имхо и Вам не помешает - никакой привязки к AMD/ATI там нет.
yogev_ezra
Еще нечего тестировать - код сырой, ядро вылетает, не успев дорисовать все иконки. Я включу А-версию в автосборку как только добьюсь стабильной работы графики.
Интересно было бы обсудить общую концепцию (пока она еще не закостенела) и вставку тайловой графики в основной транк в соответствующей теме.
И еще - я выкинул (за ненадобностью) генератор графических обоев из graph32.inc . Мне они нафиг не нужны, но в транке без них нельзя. Кто возьмется привинтить обои к тайловому движку?
XVilka
Сетап, помимо всего прочего, дает возможность ручной настройки контроллера памяти. Тащить ее в Колибри - значит грузить ядро в голый кэш с неинициализированным RAMом. Та еще задачка...
Еще нечего тестировать - код сырой, ядро вылетает, не успев дорисовать все иконки. Я включу А-версию в автосборку как только добьюсь стабильной работы графики.
Интересно было бы обсудить общую концепцию (пока она еще не закостенела) и вставку тайловой графики в основной транк в соответствующей теме.
И еще - я выкинул (за ненадобностью) генератор графических обоев из graph32.inc . Мне они нафиг не нужны, но в транке без них нельзя. Кто возьмется привинтить обои к тайловому движку?
XVilka
Сетап, помимо всего прочего, дает возможность ручной настройки контроллера памяти. Тащить ее в Колибри - значит грузить ядро в голый кэш с неинициализированным RAMом. Та еще задачка...
Вот, поскольку сейчас экспериментирую с загрузкой колибри без биоса - возникла задачка, зачем вообще нам 16-битный загрузчик? Может на 32 бита перепишем? Выкинем еще немного кода?
P.S. Кстати, теперь AMD coreboot официально поддерживает и сама код контрибьютит. А еще гугл вливание большое сделал.
P.S. Кстати, теперь AMD coreboot официально поддерживает и сама код контрибьютит. А еще гугл вливание большое сделал.
XVilka
С настройкой чипсета и контроллера памяти CoreBoot конечно справится лучше чем BIOS.
Вот только bios-диски придется выкинуть, вместе с VM-режимом.
Может и фиг с ними?
SB700 отлично эмулирует PATA-режим для SATA-дисков, а без флэшки во встроенной системе вполне можно обойтись...
С настройкой чипсета и контроллера памяти CoreBoot конечно справится лучше чем BIOS.
Вот только bios-диски придется выкинуть, вместе с VM-режимом.
Может и фиг с ними?
SB700 отлично эмулирует PATA-режим для SATA-дисков, а без флэшки во встроенной системе вполне можно обойтись...
фиг с ними, с дисками, а усб - все-равно только пока в учи-режиме работает, пока можно и без него
Такие эксперименты лучше отдельной веткой проводить, а сливать с основными только после полной проверки. Мне например на транковом ядре /bdX/X/ диски нужны, а если речь исключительно про ветку Колибри-А, то тут уж автор ответвления сам решает.
Mario
CoreBoot надо затачивать надфилем буквально под каждый провод на конкретной матери.
Тут даже по "удачным" инсталляциям можно судить - то мыш не пашет, то питание не выключается...
Так что ни о каком сливе экспериментального кода в транк речь не идёт.
Но сама идея
"Колибри - в ROM, а BIOS - к черту!" (С)
достаточно красивая, чтобы ее попробовать.
CoreBoot надо затачивать надфилем буквально под каждый провод на конкретной матери.
Тут даже по "удачным" инсталляциям можно судить - то мыш не пашет, то питание не выключается...
Так что ни о каком сливе экспериментального кода в транк речь не идёт.
Но сама идея
"Колибри - в ROM, а BIOS - к черту!" (С)
достаточно красивая, чтобы ее попробовать.
наверное более конкрентее или правильнее сказать - чипсет!art_zh wrote:CoreBoot надо затачивать надфилем буквально под каждый провод на конкретной матери.
Имеешь по нему доки открытые, или даже биос сорец, или куски сорцов работы с "чипсетовыми глубинами" - тогда "на коне" в данном деле. Не только надфилем, но и "алмазной пастой" доводить надо!
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Такого уродства и избыточности насмотришься, порой в BIOS коде, что диву даешься, какие индусы его писали и какой менеджер проекта его тупо компилил, что там штук 5-6, например клон-процедур работы с PCIcfg...
да, но надо иметь определенную долю фанатизма, профессионализма и интреса, чтобы заниматься этим очень низкоуровневым, "узкозаточенным" делом с большим расходом сил, времени и сомнительным по сути результатом. Хорошо, когда путями хаживал хотябы кто то и как то, например AWARD BIOS!art_zh wrote:Но сама идея
"Колибри - в ROM, а BIOS - к черту!" (С)
достаточно красивая, чтобы ее попробовать.
"Вкусняшка" копаться в нем, хоть и отживает, наверное свое... жаль!
VaStaNi
Дело не в чипсете (на него документацию найти несложно), а именно в проводах - они на каждой материнке проведены по-своему.
Пример из жизни: шина PCIe управляется с Северного моста RS780; регистровая модель управления шиной хорошо и понятно документирована, даже типовые протоколы треннинга линий детально прописаны. Только сигнал Bus_Reset заведён на разъём неизвестно откуда. А без него этот самый треннинг не идёт.
После четырёх часов ручной трассировки проводников (под микроскопом!) установлено, что Reset управляется не с NB, и даже не из SB, а вообще через SIO. Так бьло ASUSу удобно. А MSI его вполне может через GPIO Южного моста нарисовать - и так везде!
Дело не в чипсете (на него документацию найти несложно), а именно в проводах - они на каждой материнке проведены по-своему.
Пример из жизни: шина PCIe управляется с Северного моста RS780; регистровая модель управления шиной хорошо и понятно документирована, даже типовые протоколы треннинга линий детально прописаны. Только сигнал Bus_Reset заведён на разъём неизвестно откуда. А без него этот самый треннинг не идёт.
После четырёх часов ручной трассировки проводников (под микроскопом!) установлено, что Reset управляется не с NB, и даже не из SB, а вообще через SIO. Так бьло ASUSу удобно. А MSI его вполне может через GPIO Южного моста нарисовать - и так везде!
Как я тебя понимаю...
Я тебе мысленно памятник воздвиг после прочтения. Тройной респект!
Кстати тут у меня мать и кажется 780я и AMDшная... или тебе этого добра довольно уже?
Я тебе мысленно памятник воздвиг после прочтения. Тройной респект!
Кстати тут у меня мать и кажется 780я и AMDшная... или тебе этого добра довольно уже?
svn1928: добавлена поддержка процессоров Phenom и Fusion
VaStaNi
Не знаю куда девать
Но очень бы хотелось чтоб хоть кто-то оттестил...
VaStaNi
Не знаю куда девать
![Smile :)](./images/smilies/icon_smile.gif)
Но очень бы хотелось чтоб хоть кто-то оттестил...
Who is online
Users browsing this forum: No registered users and 5 guests