Похоже что VESA32 просто не существует.
Перевод из VBE3
"Начиная с VBE3 все функции VESA опционально доступны для 16-ти и 32-х битного защищённого режима через новую "Точку Входа Защищённого Режима". Эта точка входа может быть использована для прямого вызова функций VESA как 16-ти битного защищённого кода. Приложения или ОС не должны вызывать код БИОС непосредственно, но должны сперва сделать копию образа БИОС и вызывать функции в этом перемещённом блоке памяти.
Точка входа находится в особом "Информационном Блоке Защищённого Режима" который должен быть расположен в пределах первых 32-х килобайт образа БИОС. (Если информационный блок не найден то БИОС не поддерживает новый интерфейс)"
Дальше необходимо создать 7 16-ти битных селекторов и два 16-ти битных сегмента для данных и стека. Прежде чем передавать и принимать данные необходимо создать 16-ти битные сегменты для данных потому что 16-ти битный код БИОС не может работать с 32-х битными сегментами и указателями.
Ясно почему эти дополнительные "возможности" никто не использует.
Плоская модель памяти
Да, водимо я ошибался, таблици ACPI тоже в низу памяти, так что беру свои слова обратно.
Я так понимаю, что процесс переделки может занять несколько недель и имеет смысл выпустить некий "последний совместимый с МЕОС" релиз, а затем начать работу над новым релизом 0.7, в котором будут эти изменения и возможно изменения в оконной системе от Майка.
ЗЫ: В принципе сегодняшняя Силлабле тоже несовместима с Atheos, от которой она произошла.
ЗЫ: В принципе сегодняшняя Силлабле тоже несовместима с Atheos, от которой она произошла.
Wildwest
Я хотел подождать до июля. За это время подготовить изменения и решить проблему с программами без исходников. Может сделать пробную версию на основе того дистриба что будет.
Я хотел подождать до июля. За это время подготовить изменения и решить проблему с программами без исходников. Может сделать пробную версию на основе того дистриба что будет.
>Я хотел подождать до июля
Я никого не тороплю, просто хочется иметь хоть какую-то определенность (план развития), а то у нас каждый месяц какие-то обсуждения и в итоге две трети идей остаются обсужденными, но не реализованными.
Я никого не тороплю, просто хочется иметь хоть какую-то определенность (план развития), а то у нас каждый месяц какие-то обсуждения и в итоге две трети идей остаются обсужденными, но не реализованными.
Wildwest
Ничего не напоминает?итоге две трети идей остаются обсужденными, но не реализованными
>Ничего не напоминает?
Легендарный MeFS
Легендарный MeFS
и опять проголосовало полтора десятка человек...
Вот что получилось:
http://infinity-sound.narod.ru/flat.7z
0x00000000 -> 0x7FFFFFFF приложения 2Gb
0x80000000 -> 0xFDBFFFFF ядро и куча ядра
0xFDC00000 -> 0xFDFFFFFF таблицы страниц 4Mb
0xFE000000 -> 0xFFFFFFFF Видеопамять 32Mb
Ядро взлетело вверх так что перекомпилировать программы не надо.
http://infinity-sound.narod.ru/flat.7z
0x00000000 -> 0x7FFFFFFF приложения 2Gb
0x80000000 -> 0xFDBFFFFF ядро и куча ядра
0xFDC00000 -> 0xFDFFFFFF таблицы страниц 4Mb
0xFE000000 -> 0xFFFFFFFF Видеопамять 32Mb
Ядро взлетело вверх так что перекомпилировать программы не надо.
Я немного отстал от темы: что конкретно нужно изменять в своих программах, чтоб обеспечить работу в новой модели?
Почему не запустятся старые проги?
Почему не запустятся старые проги?
Nable
Программы менять не надо. Просто копируешь файлы в дистрибутив.
Программы менять не надо. Просто копируешь файлы в дистрибутив.
Serge
Я вот чето не понял почему видео память фиксирована и имеет размер 32МБайта.
Тут вопрос есть ли сервис в колибри для того чтобы закрепить физическии аддреса за собой в своем(или ядра) виртуальном пространстве?
Я вот чето не понял почему видео память фиксирована и имеет размер 32МБайта.
Тут вопрос есть ли сервис в колибри для того чтобы закрепить физическии аддреса за собой в своем(или ядра) виртуальном пространстве?
Pavia
Это должна быть общедоступная часть LFB. В Колибри программы могут писать в видеопамять напрямую через специальный селектор. Его можно вычислить по gdt но надёжнее получить через системный вызов. Когда появилась страничная память он стал не нужен но остался для совместимости. В принципе драйвер должен отображать на эти адреса столько памяти сколько надо для текущего видеорежима а остальные страницы оставлять неприсутствующими. Остальной локальной видеопамятью должен управлять драйвер. Размер взят с запасом на максимальное разрешение 3072*1536*32bpp. Реально сейчас отображается 8 Мб независимо от режима.
Сервисы есть. Две функции map_page и commit_pages (в memory.inc) Отображают страницы по любым адресам. Для приложений они недоступны. Если надо отобразить регистры устройств то можно зарезервировать диапазон адресов через alloc_kernel_space а потом отобразить на него нужные страницы.
Это должна быть общедоступная часть LFB. В Колибри программы могут писать в видеопамять напрямую через специальный селектор. Его можно вычислить по gdt но надёжнее получить через системный вызов. Когда появилась страничная память он стал не нужен но остался для совместимости. В принципе драйвер должен отображать на эти адреса столько памяти сколько надо для текущего видеорежима а остальные страницы оставлять неприсутствующими. Остальной локальной видеопамятью должен управлять драйвер. Размер взят с запасом на максимальное разрешение 3072*1536*32bpp. Реально сейчас отображается 8 Мб независимо от режима.
Сервисы есть. Две функции map_page и commit_pages (в memory.inc) Отображают страницы по любым адресам. Для приложений они недоступны. Если надо отобразить регистры устройств то можно зарезервировать диапазон адресов через alloc_kernel_space а потом отобразить на него нужные страницы.
Плоское ядро уже довольно стабильно, по крайней мере на моей системе. Уже можно имхо сливать его с trunk, чтобы упростить и ускорить разработку и избежать неразберихи с ядрами Или есть еще какие принципиальные недоработки?
Heavyiron
Принципиальных нет. Надо поправить отладчик.
И ещё проверить сетевой код.
Принципиальных нет. Надо поправить отладчик.
И ещё проверить сетевой код.
Who is online
Users browsing this forum: No registered users and 32 guests