Home | FCOS

Новости


В этом разделе помещена лента новостей, касающихся FCOS. Здесь описываются изменения в ядре, приложениях, драйверах и утилитах. Если Вы захотите установить новые версии FCOS, драйверов и приложений, заходите в раздел [Закачать!].


25/10/2001г. FVR v1.47

В процедуре Shade организован учет коэффициента преломления Kt, задаваемого в материалах объектах. По нормали определяется, входит ли луч в объект, или выходит. Соответственно, получаются разные результаты работы процедуры Trace. На данный момент имеется недоработка: в процедуру Trace передаются не все данные о среде распространения лучей.


24/10/2001г. FVR v1.46

В процедуре Shade стал учитываться коэффициент Kr отражения лучей от объекта. Для этого потребовалось рекуррентно вызывать процедуру Trace. Отдельное внимание стало уделяться вопросу оптимизации работы с векторными величинами. Здесь очень пригодились бы инструкции XMM-расшерения. Иногда приходится жертвовать вызовами HSV\mat для ускорения работы. На данный момент ассемблерная версия программы работает в 2.5 раза медленнее программы-прототипа на C++.


21/10/2001г. HSV\mat v1.17

Исправлен макрос, обеспечивающий возведение числа 2 в произвольную действительную степень. Во-первых, он стал работать с отрицательной степенью. Для этого пришлось выделить расчет положительной степени в отдельный макрос. Во-вторых, стало возможным вычисление степени до 231 (или 2–31). Более высокие (по модулю) степени приравниваются к 31 (или –31). Это избавляет от ошибки переполнения счетчика. Кстати, сам счетчик расширен с 16 до 32 бит.


20/10/2001г. FVR v1.45

В процедуре Shade обеспечено вычисление коэффициентов Kd диффузной и Ks зеркальной освещенности. Обе величины зависят от мощности, цвета и расположения всех источников сцены.


19/10/2001г. FVR v1.43

Введена в рассмотрение структура источников точечного света. Для единообразия шапка этой структуры совпадает с шапкой структуры объектов. Точечные источники хранятся наравне с геометрическими объектами в сегменте GS. В качестве примера на сцене размещен один источник.


18/10/2001г. FVR v1.40

В процедуре Shade обеспечен расчет фоновой освещенности объекта, на который попал луч. Используется материал объектов.


17/10/2001г. FVR v1.39

Введено понятие «материал». Для отладочных целей после треугольников и источников света размещены два материала — красного и зеленого цветов. За материалами закреплен сегмент данных FS, а за объектами — GS.


16/10/2001г. FVR v1.38

В процедуре Shade обеспечен блок инициализации, в котором обрабатываются входные аргументы, а так же присваиваются исходные значения локальным переменным.


15/10/2001г. FVR v1.37

Разделён модуль исходных кодов tras.inc, с выделением из него модуля shad.inc, в котором теперь размещены процедуры Shade и Shadow.


14/10/2001г. FVR v1.36

Началась разработка процедуры Shade. Пока она обеспечивает только возврат цвета (1.0, 1.0, 1.0). Реализована вся структура локальных переменных и входных аргументов.


13/10/2001г. HSV\mat v1.15

Разаработана процедура Vector\RayPoint, которая по лучу и коэффициенту выдает точку на этом луче.


12/10/2001г. FCOS v6.11

При запуске FCOS производится переключение на 40-символьный текстовый режим.


11/10/2001г. HSV\mat v1.13

Исходные коды супервизора разделены на отдельные inc-модули: syst, intg, real, vect, matr.


10/10/2001г. FVR v1.35

В процедуре Trace сделано «затухание» луча по экспоненте в зависимости от расстояния до объекта — параметра t. Объекты окрасились в градации серого.


08/10/2001г. HSV\mat v1.10

Разработаны процедуры PovXY, Exp_X, Two_X, Ten_X с модификациями _rd (для любых действительных чисел) и _gz (для положительных чисел). В качестве экспериментальной была оставлена процедура PowXY_lp, которая медленно работает и сбоит в окрестности нуля.


30/09/2001г. FVR v1.34

Для отладочных целей в состав FVR влючена процедура graphic, которая в окне FVR строит график любой функции. Здесь же началась разработка функций xy, ex.


30/09/2001г. FVR v1.32

Пересмотрены и исправлены процедуры RendScen, Trace, Intersect и в плотную подошел к Shade и Shadow. Все счетчики стали 32-х битными. Геометрические объекты и источники света стали неразличимы на уровне счетчиков, хотя при обработке все объекты анализируются корректно.


27/09/2001г. FCOS v6.10

Написаны (в Kernel\Base) процедуры PackSco1 и UnPkSco1, которые архивируют и разархивируют ICO-картинку в CR1 (256 цветов). Эти процедуры работают только с данными о цвете и не используют предваряющие информационные поля. Все параметры (в/из) передаются через регистры.


13/09/2001г. FCOS v6.08

В процедуру IdentCPU добавлено определение процессоров младших моделей (от i8086 до i80486), не имеющих инструкции CPUID. Теперь FCOS может по результатам тестирования процессора сообщить пользователю о невозможности работы системы на данном процессоре.

В процедуру IdentCPU добавлено маскирование битов степпинга в коде идентификации процессора. Это необходимо для одинакового распознавания процессоров с различным степпингом.


12/06/2001г. FCOS v6.06

Процедуры InitTask, Ini8259A, IdentCPU, PrCPU_ID, ProtMode, RealMode перенесены из модуля fcosbase.inc в новый модуль fcosinit.inc. В дальнейшем этот модуль будет содержать процедуры определения различных периферийных устройств, поддерживать технологию Piug&Play и др.


30/05/2001г. FCOS v6.05

Созданы процедуры IdentCPU (для RealMode) и PrCPU_ID (для ProtMode), которые соответственно идентифицируют (с сохранением полученных данных в SEG DATA) процессор и его параметры, и выводят в stdout всю доступную о CPU информацию.

Если Ваш процессор не опознан (или неправильно опознан), большая просьба сообщить на eMail: fndp@rambler.ru
кодовое число (CPU code) и настоящее имя процессора.
Например:

  Vendor ID: GenuineIntel
  CPU code: 00000660
  CPU type: Celeron 300A 


30/05/2001г. FCOS v6.03

Началась реализация концепции гибкой обработки ошибок в файловой системе. Теперь gamma-уровень AFS (пока это модуль v_86.inc) будет передавать код ошибки сквозь уровни betta- и alpha- приложению FCOS, которое само будет решать: игнорировать ошибку, самостоятельно обработать её или отдать ядру FCOS для стандартной обработки.


24/05/2001г. Converters

Исправлены независимые программы (на С++) wintodos и dostowin с тем, чтобы они корректно обрабатывали символы 'ё' и 'Ё'. Раньше вместо них в текст вставлялись пробелы.


14/03/2001г. FCOS v6.02

Написаны процедуры C256t16M и C16Mt256, которые преобразуют цвет палитры в TrueColor и назад. Проведён эксперимент с двойным преобразованием цветов 256=>16M=>256. Работа с графикой сильно замедляется.

В дальнейшем планируется перевести FCOS на работу в 16M-цвете (TrueColor) с 8-битовым alpha-каналом прозрачности.


12/03/2001г. FCOS v6.00

Организован новый модуль HSV\gfx=052h «Поддержка видеоадаптера». Он обеспечивает все низкоуровневые операции с экраном и работу с графическими примитивами.


11/03/2001г. FCOS v5.98

В HSV\mem реализована процедура TestMem, которая проверяет всю память (с шагом 64 байта) и вызывает процедуру PrAllMem, которая выдает в stdout сообщение:

 Avaliable memory: 0xxxxxxxxh bytes
Если в файле variable.run указывается значение ScoreMEM меньше количества физической памяти, то берется именно это значение, иначе — реальное количество физической памяти.


**/**/200*г. FCOS v5.**

*


02/04/2000г. FCOS v5.00

Написана процедура _if_draw, которая при необходимости прорисовывает линию между узловыми точками символов. Если точка одиночна, вокруг нее рисуется прямоугольник. Теперь растровый шрифт можно отображать с произвольным растяжением, не ухудшая «читабельность». При этом процедура Drw1Symb оптимизирована под масштаб 1:1, обеспечивая максимальную скорость при выводе стандартного текста.


**/0*/2000г. FCOS v4.**

*


09/02/2000г. FCOS v4.00

Началась реализация идеи о «Нижней Линии TBR» (DLT). 20 пикселей внизу экрана отводятся под область, где находятся часы и пиктограммы приложений.


**/0*/2000г. FCOS v3.**

*


29/01/2000г. FCOS v3.75

Все попытки избавиться от фирменного инициализатор мыши не увенчались успехом, поэтому выделено ~29kB в сегменте данных мыши. В процедуре MouDwIni загружается и запускается mouseini.dat. Занимать место инициализатора в дальнейшей работе нельзя, т.к. там находятся какие-то отработчики перехваченных прерываний.
       Добавлены процедуры Sxy~, Box~, Smp~ ~Mouse (точнее, восстановлена их работоспособность). Процедура IniMouse ликвидирована полностью.


**/**/****г. FCOS v3.**

*


16/12/1999г. FCOS v3.50

Отлажены и оптимизированы коды переключателя задач и драйвера мыши высокого уровня. Ликвидировал основные «глюки» дисковода и мыши. Теперь осуществляется корректный возврат в DOS.

Начась работа по составлению системной палитры FCOS.


**/1*/1999г. FCOS v3.**

*


10/11/1999г. FCOS v3.25

Обеспечена основа многозадачности: выделил два TSS. Пока работает кооперативная многозадачность в ограничении: вторая задача вызывается, как процедура со своим LDT.


**/1*/1999г. FCOS v3.**

*


11/10/1999г. FCOS v3.00

FCOS переписан с «чистого листа». За основу взят листинг 16-1 книги «Assembler: учебный курс». Теперь FCOS загружается из под MS-DOS и переходит в защищённый режим. Будет реализована многозадачность и защита памяти системы и приложений. Станет возможным использование памяти за пределами первого мегабайта сегментами, размер которых превышает 64kB.


17/09/1999г. FCOS v2.56

Написана функция GetSiCoT (AX=0000Bh, fnFCOS), которая возвращает в (ES:BX) адрес таблицы значений sin и cos

FVR полностью перенен в отдельный файл fvr.exe, причём сама система размещается в файле fcos.exe.


**/0*/1999г. FCOS v2.**

*


30/06/1999г. FCOS v2.00

Некоторые участки FCOS и FVR переведены в режим «Ideal Mode» Tasm 2.0.

Изменен SetBox: теперь AdrPix вызывается только один раз на всю графическую линию, что позволяет сократить число вызовов процедуры рассчета адреса в видеопамяти и переключения видеостраниц.

Немного оптимизированы (упрощены) процедуры из модуля fcoskern.inc.


**/0*/1999г. FCOS v1.**

*


27/06/1999г. FCOS v1.50

Сделан вызов функций, обслуживающих интерфейсные пиктограммы. Их адреса хранятся в массиве ArWndPct DD CP_Prop, CP_Quit, ....
       Реализована пиктограмма CP_Quit. В отработчике пиктограммы CP_Prop сделан вызов процедуры DrwGamma. Отработчики CP_Full и CP_Mini реализованы без учёта своппингов на диск (только пересчёт и перерисовка).

После вызова InitScrn в процедуре InitFCOS добавил задержку около секунды для нормального открытия графического экрана, иначе графика «глючит».


**/0*/1999г. FCOS v1.**

*


13/04/1999г. FCOS v1.05

Проект переведен на программирование в Tasm 3.1 + Tlink 5.1. Началось перенесение FCOS из C++ в TASMе.
       Написаны (по аналогии с версией на C++) процедуры SetPix и SetBox.


**/**/****г. FCOS v*.**

*

Return to top of pageReturn to top of page

В начало  |   FCOS: Новости, Установка, Закачать!, Приложения, Драйверы, FCOS book


Rambler's Top100

Последнее обновление 21.11.2005 г.
©  Fwcs Corporation  Design,  2005 г.

Hosted by uCoz