SysFn 4

Kernel-side graphics support
  • Mario wrote:
    Lrz wrote:
    б) Шрифт может выводиться и без фона. В этом случае формировать его как картинку в памяти не очень выгодно, хотя и можно. Для отрисовки шрифта без фона программа или библиотека должна выводить/накладывать шрифт попиксельно.
    Все это очень замечательно, когда все происходит на уроне ядра, где нет переходов с Ring0 на Ring3. При взаимодействии же ядра и приложения каждая точка вызывается int 0x40, что не есть правильно с точки зрения производительности.
    Вот такие дела, та же самая фигня, что и в ttf-выводе, была в font library. Значит, эта библиотека не может быть использована в браузере и многих других программах, к сожалению.
    Ладно, я считаю, что вопрос себя исчерпал, а тему можно закрывать. Это "не нужно".

    yogev, а как, по-твоему, функция выводит не-моноширинный текст, а? :) Для каждой буквы рассчитываются её координаты. В конце концов мы получаем координаты конечной буквы, мы знаем её ширину, и знаем, с какой точки отрисовка началась...
  • I think the Fancy fonts should not be inside the kernel, but in a library.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • hindplayr, +1. I think that topic is exhausted :)
  • * Y=Cnnn (биты):
    * C=1 перенаправить вывод в область пользователя, задано в edi
    * nnn - не используется в текущем виде, должно быть 0 (zero)
    Религия запрещает использовать?

    Единственно ICON не сможет новые шрифты использовать, так как отрисовывает их поверх области иконки и лишь потом выводит изображение.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • В трех битах нельзя вернуть данные. В трех битах можно определить новую подфункцию, но это будет нелогично. В общем, нафиг всё, даешь библиотеку.
  • SoUrcerer wrote:В трех битах нельзя вернуть данные. В трех битах можно определить новую подфункцию, но это будет нелогично. В общем, нафиг всё, даешь библиотеку.
    Так используй MMX регистры. Целых 64 бита, чо.
  • SoUrcerer wrote:В трех битах можно определить новую подфункцию, но это будет нелогично.
    Почему нелогично? Мне вот религия не помешала так сделать, когда было нужно "впихнуть невпихуемое".
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Мне кажется, что возврат значения в ESI или EDI, о чем говорилось в чате -- нарушение соглашения вызова mcall. Нужно делать или отдельную функцию, или подфункцию для получения длины.

    SoUrcerer, напиши, что предлагается сделать. К примеру:
    • Y=CnnA (биты):
      • A=1 вернуть размер строки в пикселях в eax [размер по оси x]*65536 + [размер по оси y]
      • C=1 перенаправить вывод в область пользователя, задано в edi
      • nn - не используется в текущем виде, должно быть 0 (zero)
  • Возвращать в ESI/EDI, действительно, бессмысленно.

    Если кому-то нужны шрифты 16x8 (моноширинный), 16x12 (немоноширинный) и возможность считать длину не-моноширинных шрифтов в ядре (с возвратом в eax) - обращайтесь.
    Внимание, это займет дополнительные 10 кб в памяти, и никому не нужно, потому что никто не будет переписывать существующие программы под новые шрифты.
  • В общем ясно, что снова всё накрылось. Похуй, что реализовать определение длинны строки просто как 2 пальца обоссать и уже браузер стал бы читабельнее за счёт использования char2, как и другие программы. Но нет, мы будем ждать очередную новую феерическую библиотеку и ещё 7 лет ебаться с этими шрифтами 8х5.
    Из хаоса в космос
  • SoUrcerer wrote:Внимание, это займет дополнительные 10 кб в памяти, и никому не нужно, потому что никто не будет переписывать существующие программы под новые шрифты.
    Это почему? Я вот при проектировании FileBrowser компонента Box_Lib постарался учесть будущие подвижки и оставил резервные поля.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Ну, конечно Кириллу плевать на стандарты вообще -дальше хоть трава не расти.
    Spoiler:"Что с меня взять? Я же только дизайнер. Починяйте давайте автосборку!"
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Стандарты Маратушки все ломают автосборку, а он пушистик.
    Spoiler:
    03.03.2013-v1-625x416.png
    03.03.2013-v1-625x416.png (129.05 KiB)
    Viewed 11509 times
    Из хаоса в космос
  • : А правила на форуме уже действуют? Или пока что нет и обиженным можно материться?
    Last edited by lev on Tue Mar 12, 2013 11:35 pm, edited 1 time in total.
  • Who is online

    Users browsing this forum: No registered users and 2 guests