Колибри N3 (MENUETOS RE). Выпуск 2. Версия 0.3.1.0. Март 2005
* Ядро обратно совместимо с 0.78 pre 6 + (прежние изменения не вошедшие
в официальное ядро, сборка Ивана Поддубного).
Дополнительно к этому произведены следующие изменения и доработки:
1) Расширена системная функция 66 (ebx=3), доработкой от mike.dld
(смотрите файлы SYSFUNCR.TXT и SYSFUNCS.TXT)
2) Расширена системная функция 18 (ebx=7). Доработка моя.
(смотрите файлы SYSFUNCR.TXT и SYSFUNCS.TXT)
3) Доделана системная функция 26, теперь она соответствует функции 21.
Доработка моя. (смотрите файлы SYSFUNCR.TXT и SYSFUNCS.TXT)
4) Уменьшена вероятность появления бага отрисовки экрана, который иногда
появлялся при убивании приложения имеющего окно. Доработка моя.
Хоть это не относится к доработке ядра, но всё таки:
5) Скорректированы задержки при запуске системы в файле AUTORUN.DAT,
для правильного запуска на "слабых" компьютерах.
Проверял на Cyrix233MX и AMD K5-133(100).
Если у вас более быстрый процессор 600 МГц и
более можете уменьшить задержки или взять этот файл из первого выпуска
Колибри N3 (но только из него!).
Я (Mario79 или Марат, уж кого как устроит...) сделал следующие работы:
* Внесены "серьёзные" изменения в следующие приложения:
ICON - многопоточность, динамическая подгрузка картинок, вывод изображения
из буфера, а не поточечно. Теперь размер файла всего 8000h при этом
в нём, теоретически, умещается 48 иконок. Я проверил только 21.
Старая программа для 48 иконок занимала 5000h*48=960 Кб.
CPU - новый "дизайн" - "контраст" и удобное расположение кнопок удаления
процессов делают "убивание" приложений максимально удобным, теперь
сложно промахнуться! Также исправлен баг по которому в "старом" CPU
процессы отображались только на первой странице, то есть если нажать
на "NEXT PAGE", то процессы не отображаются даже, если их количество
превысило лимит первой страницы. Некоторое неприятное "моргание"
окна приложения обусловлено тем, что только так можно получать
достоверные результаты в "реальном" времени. Любое изменение
алгоритма приводило к ошибкам вывода. Также строка запуска увеличена
до 60-и символов (старый 30) и исправлен баг, по которому вместо
знака "~" вводилось "^".
@PANEL - новый "дизайн" - закос по ХРюшку, озвучка по спикеру с
отключением, переключение раскладки клавиатуры - щелчок мышью по
надписи (синий кубик En) или Ctrl+Shift (обе любые, но не нужно
нажимать сразу 3 кнопки и более, так как это не корректно
обрабатывается, даже в Windows, и получится не то, что нужно),
переключение языка системы - щелчок мышью по надписи (зелёный
кубик Ru) или Shift+Shift.
В выпуске 2 доработано: автовозврат фокуса приложению, после
переключения раскладки клавиатуры по Ctrl+Shift, вызов CALENDAR
щелчком по часам, вызов SETUP отдельной кнопкой 'S'.
ICONMNGR - доработан для нового ICON, методы применения остались те же,
разве, что теперь в автозагрузке прописан сам ICON.
SETUP - доработан для переключения раскладок вызовом из @PANEL, идея
принадлежит русской команде, я её только продолжил.
В выпуске 2 доработано: запрос значений при запуске функцией 26,
восстановлена возможность выбора доступа к LBA и PCI.
MENU - исправлен баг с пересеканием стека потоков и основного стека.
Уменьшен размер 2-х буферов 58 функции, каждый из которых кушал
по 64 Кб, теперь использовано стандартно необходимое
количество 16 Кб.(видимо всех ввело в заблуждение число указанное
в поле буфера в файле SYSFUNCS.TXT, а ведь это всего лишь ссылка
на адрес буфера)
Также, как и для многих программ, уменьшен размер образа в памяти
с 1 Мб до 64 Кб.
В выпуске 2 доработано: убрано ограничение на количество нажатий
на списки при одном запуске, так как я ввел кольцевое использование
стека потоков, исправлен баг с порчей отрисовки некоторых пунктов
списка, из-за неправильной организации стека потоков.
GIFVIEW - введен старт с параметром для просмотра GIF картинок запуском
через SYSXTREE.
* Исправлены баги:
END - теперь полностью выводится по центру экрана при любом
разрешении экрана.
GRSCREEN - убрана лишняя задержка при выводе картинки и уменьшен размер
буфера для 58 функции с 64 Кб, до стандартно
необходимых 16 Кб.(аналогично MENU, читайте выше)
* Изменены:
INFO - соответственно дистрибутиву.
DEVELOP -соответственно реальному расположению приложений.
* Оптимизированы в плане размера образа в ОЗУ (кроме уже перечисленных):
PONG,MBLOCKS,FIRE,CROWNSCR,CIRCLE,TRANSP,TINYFRAC,COLORS,KEYASCII,
EYES,TUBE,LIFE,3DCUBE,TRANTEST,CDPLAY,CDP,MIXER,MIDIPLAY,HEXVIEW,
SCANCODE,CALC,EXAMPLE(2,3),THREADS,FS,CSLIDE,HEXHD,SYSMETER,CPUSPEED,
MEMUSE,SYSTRACE,PCIDEV,RDFDEL,RD2HD,IR,MAGNIFY,CALENDAR,LAUNCHER.
В размере остальных приложений я не был уверен, по этому их не изменял.
Благодаря отсутствию документации большинство програмистов меоси не
задумывалось над этим вопросом, а он весьма важен. Лишь благодаря
хорошему человеку Trans'у всё встало на свои места! Trans спасибо тебе
от меня и от тех, кто присоединится к этому спасибо в дальнейшем.
* Сжаты упаковщиком MXP:
AC97WAV,FREE3D04,SDLFIRE,3DCUBE,@PANEL,BMPVIEW,C4,CALC,CDP,CMD,COLORREF,
CROWNSCR,EXAMPLE2,FS,HDREAD,HEED,HTTPS,ICONEDIT,ICONMNGR,INFO,LC,MBLOCKS,
MFAR,MHC,MP3S,NNTPC,PCIDEV,PIC4,PONG3,POPC,SB,SMTPS,STACKCFG,SYSTREE,TETRIS,
VRR,XPAINT28,YM, PHENIX, 3DTCUB10, 3DETX59B, CPUID903, CPUID904,FREECELL.
Остальные программы либо не сжимаются, либо их сжатый размер превышает
исходный (так как в код добавляется распаковщик), либо сжатие программы
приводило к её полной или частичной не работоспособности.
Например, новый TINYPAD использует SYSXTREE, и наоборот. Такие программы
сжимать нельзя. В принципе нельзя сжимать программы, при запуске которых,
им передаются параметры. Например MV, JPEGVIEW, TYNIPAD и др.
* Обновления и добавление приложений от русскоязычных программистов:
TINYPAD - DoomEdArchangel (бывший Fagotus). Введены 2 меню: файл и код.
Работа с файлами через диалоги из ASCL Павлюшина Евгения.
Исправлен баг - в заголовке всегда выводится реальное имя
файла. Диалоговые окна при ошибках и выходе. Очень удобная
полоса прокрутки. Перемещение курсора на нужное место в тексте
щелчком мыши. Горячие клавиши на компиляцию текста и компиляцию
текста с запуском.
Ещё куча полезностей и новых мелких багов. ;-)
SCREEN SHOOTER - DoomEdArchangel. Расширяет возможности VIRTUAL SCREEN 2,
в плане созданий снимков экрана. Позволяет записывать на
HD (кнопка Print Screen) или на RD (Alt+Print Screen).
Разумеется запись на RD производится только при наличии
свободного места. Выход из программы - Scroll Lock.
SYSXTREE81 - Павлюшин Евгений. Много исправлений мелких багов.
В выпуск 2 мной (Mario79) добавлена связка JPE файлов с
JPEGVIEW, так как по сути это те же файлы JPG, а также
добавлена связка GIF файлов с GIFVIEW.
XPAINT29 - Павлюшин Евгений. Чё то изменилось, автор подробно не расписал.
PHENIX - Павлюшин Евгений. Игрушка - летим, стреляем, китайские
приставки вспоминаем. :-)
3DTCUB10 - Павлюшин Евгений. Текстурированный кубик, в принципе ранний
вариант развиваемого сейчас полноценного 3D движка для игр.
3DETX59B - Павлюшин Евгений. 3D-Движок. Будущая основа для полноценных
трехмерных игр под MeOS.
CALENDAR - Ивушкин Андрей (Willow). Что описывать? Календарь!
И так вроде понятно. :-)
BGI FONT DEMO - Ивушкин Андрей (Willow). Демонстрация реализации первых
векторных шрифтов под MeOS. Хорошее начало!
RTF READER - Ивушкин Андрей (Willow). Просмотр текста формата RTF.
CPUID923, CPUID924 - Сергей Кузьмин (Wildwest). Определение модели и
характеристик процессора. Отличия одной программы
от другой в разном расчёте рейтинга для
AthlonXP c учётом FSB.
HUNTER - Trans. Аркадная игра "Охотник".
* Новые приложения от буржуйских программистов:
PCI DEVICE ENUMERATION - Jason Delozier. Просмотр шины PCI и вывод на
экран списка найденных устройств.
COLOR SLIDER - Jason Delozier. Пример реализации контрола для выбора цвета.
FREECELL - Alexandr Gorbovets. Карточная игра, я правила не знаю. :-)
ARCANII - Jacek Jerzy Malinowski. Новый взгляд на реализацию Арканоида.