Колибри OS. Версия 0.7.0.0. Июнь 2007

Произведены следующие изменения и доработки в ядре:

   От Евгения Гречникова (Diamond) - Российская Федерация
     1) Исправление ошибок в коде работы с файловыми системами.
     2) Новая системная функция 68.20 для перераспределения блока памяти
        (см. Список системных функций по номерам).
     3) Скорректирован код определения COM-мыши, объединён код обработки
        данных от COM1- и COM2-мышей.
     4) Нормальная обработка события о перерисовке фона, ускорение перерисовки.
     5) Удаление устаревшего кода.
     6) Выбор неизвестного или неподдерживаемого видеорежима в синем
        загрузочном экране приводит к возврату к настройкам
        (а не к необходимости Ctrl+Alt+Del; предложил Wildwest).
     7) В настройках можно полностью отключить DMA-режим при работе с жёсткими
        дисками (а не только запись); по предложению andrew_programmer
        такой режим установлен по умолчанию: DMA-код работает не на всех
        конфигурациях, но если он всё же работает, лучше его включить.
     8) Поддержка относительных путей для функции 70; новая системная функция
        30 для работы с текущей папкой (см. Список системных функций по номерам).
     9) Поддержка упакованных (с помощью kpack) скинов.
     10) Ускорение процедуры отрисовки фона для VGA и VESA2 режимов.
     11) Мелкие доработки и багфиксы, не стоящие подробного упоминания.

   От Сергея Семёнова (Serge) - Российская Федерация
     1) Динамическое выделение ring0-стека для потока.
     2) Уменьшение объёма используемой ядром памяти.
     3) Переход на плоское ядро (приложения загружаются по адресу 0,
        ядро размещается в старших адресах - 0x80000000+).
     4) Добавление строк с сообщением о копирайте во все файлы исходников ядра.
     5) Мелкие доработки и багфиксы, не стоящие подробного упоминания.

   От Марата Закиянова (Mario79) - Российская Федерация
     1) Память под фоновую картинку выделяется динамически.
        Это снимает ограничение 800*600 для её размера, а также экономит
        память в случае малых размеров.

   От Михайлова Ильи (Ghost) - Российская Федерация
     1) Fast System Call (поддержка системных вызовов sysenter,syscall).

   От Михаила Семеняко (mike.dld) - Республика Беларусь
     1) Библиотека FDO (Formatted Debug Output) включена в ядро;
        вывод многих сообщений модифицирован с её использованием.
     2) Драйвер сетевой карты RTL8169.
     3) Вывод svn-ревизии ядра в синем загрузочном экране
        (используется совместно с Victor п.1))

   От vhanla
     1) Окно перемещается только в случае щелчка на заголовке
        (а не просто попадания курсора мыши на заголовок при нажатой кнопке).
     2) Кнопка срабатывает только в случае щелчка в её области
        (а не просто нажатия мыши в области с последующим отпусканием где-то).

   От Виктора Григорьева (Victor) - Российская Федерация
     1) Включение строки с номером svn-ревизии во все файлы исходников ядра.

   От kastigar - Украина
     1) Обработка PS/2-мыши вынесена в отдельный драйвер.
     2) Поддержка расширенных режимов для PS/2-мышей с колёсиком и 5 кнопками;
        новые флаги в системной функции 37.2; новая функция 37.7
        (см. Список системных функций по номерам).

   От SPraid - Российская Федерация
     1) Загрузка user-mode библиотек (COFF-формата) для ядра.
     2) В случае загрузки с жёсткого диска с помощью специального загрузчика
        разбор конфигурационного файла sys.conf и перенаправление
        указанных там путей на заданные для функции 70.
     3) Функция 70 понимает обращение /sys - /rd/1 для нормальной загрузки,
        /HDx/y/KOLIBRI в случае пункта 2).


С приложениями произведены следующие доработки и исправления:

   * Обновления и добавление приложений:
     KFAR - Евгений Гречников (Diamond), версия 0.35: чтение параметров из
            ini-файла; быстрый переход к предопределённым в ini-файле папкам по
            RCtrl+; выделение файлов по Insert, Grey[+] (выделить по маске),
            Grey[-] (снять выделение по маске), Grey[*] (инвертировать);
            множественное удаление и копирование (выделенных элементов);
            удаление и копирование папок происходит вместе со всей файловой
            подструктурой папки.
     KFM - Марат Закиянов (Mario79), версия 0.44i: выделение файлов по
            Insert, Ctrl+A=Ctrl+Grey[+] (выделить всё), Ctrl+Grey[-] (снять
            выделение), Ctrl+Grey[*] (инвертировать); множественное удаление,
            копирование и перемещение (выделенных файлов) с индикатором
            прогресса; обработка мыши; создание папки; полоса прокрутки в
            панелях; F1 показывает список используемых клавиш;
            F4 - редактирование файлов в стороннем приложении согласно
            ассоциации в ini-файле; оптимизация.
     FASM - Павел Рымовский (Heavyiron), обновление до версии 1.67.21
     RDSAVE - Павел Рымовский (Heavyiron), добавлен путь по умолчанию для
                      резервного сохранения, который можно поменять в исходнике
     CALC - Павел Рымовский (Heavyiron), версия 1.32, изменение arccos
     MGB - Михаил Семеняко (mike.dld), версия 0.3
     ICON - SPraid, использует функцию 70
            Павел Рымовский (Heavyiron), ускорение отрисовки
            Кирилл Липатов (Leency), изменены изображения
     MTDBG - Евгений Гречников (Diamond), поддержка syscall и sysenter
     @PANEL - Евгений Гречников (Diamond), поддержка Alt+Tab/Alt+Shift+Tab;
                      не показывает потоков, не создавших окна
              SPraid, Alt+F4 не убивает саму панель и иконки
     CPUID - Сергей Кузьмин (Wildwest), Павел Рымовский (Heavyiron),
             Кирилл Липатов (Leency), версия 2.21
     CALENDAR - ДедОк, возможность установки системных даты/времени
     JPEGVIEW - Марат Закиянов (Mario79), модифицирован для работы с новым
                ядром; если при загрузке системы мало физической памяти, то
                устанавливает монохромный фон; понимает параметры COL0-COL9,
                означающие то же, что и BOOT ("вызван при загрузке системы"),
                но указывающие цвет монохромного фона при ограниченной памяти
                Евгений Гречников (Diamond), IPC-сервис по распаковке
                JPEG-данных для других программ
     PCIDEV - Илья Михайлов (Ghost), оптимизация, добавление информации в
              базу данных, определение IRQ устройства, нормализация версии PCI
     FTPS, RSQUARE, POPC, DESKTOP - Евгений Гречников (Diamond),
              используют функцию 70
     DESKTOP - Евгений Гречников (Diamond), поддержка упакованных
              (с помощью kpack) скинов; поддержка запуска с параметром - именем
              файла скина (для вызова через KFAR и KFM по Enter на файле)
     GMON - Илья Михайлов (Ghost), небольшие изменения и багфиксы
     KERPACK - Евгений Гречников (Diamond), работа с новым (плоским) ядром
     KPACK - Евгений Гречников (Diamond), упакованному файлу ставятся такие
             же дата/время, какие были у исходного
     VIEW3DS - macgub, версия 0.04
     AIRC - hidnplayr, версия 0.5: вместо IP сервера можно задавать его
            доменное имя
     FARA - Евгений Гречников (Diamond), использование для графики наряду
            с LZMA-сжатием JPEG-сжатие

   * Приложения, написанные на FASM'е, используют макрос mcall вместо int 0x40.
     Некоторые старые приложения заодно модифицированы для использования
     новых возможностей функции 0, а также стандартного заголовка исполнимых
     файлов взамен устаревшего - Павел Рымовский (Heavyiron)