MSF
#20
29 декабря 2000 |
|
Scorpion - Попала мне в руки Этакая тоненькая книжечка с замысловатым названием: "Краткое описание функций Профессионального Расширения Теневого сервис Монитора компьютера "Scorpion ZS 256 Turbo".
AY-Track: By: Macros,15.12.2000,Kotlas/Limenda ______________________________________________________________ Скажу вам честно - давно я хотел написать подобный текст... Да все как-то откладывал на потом. И вот, совершенно случайно попала мне в руки Этакая тоненькая книжечка с замысловатым названием: "Краткое описание функций Профессионального Расширения Теневого сервис Монитора компьютера "Scorpion ZS 256 Turbo". Полистав ее немного, я понял: Это знак Свыше о том, что ждать больше нельзя! Честное слово вам даю - ни одного слова не исправлял и ничего не добавлял своего. Я просто перепечатал слово в слово, взяв смелость прокомментировать лишь некоторые особые перлы. В общем, пользователи "Скорпионов" меня поймут! Союзу: Scorpion, mOA, и Exess team посвяща- ется... ...Изначально в компьютере стояла микросхема ПЗУ объемом 64К, и под теневой сервис-монитор (ТСМ) использовалось чуть больше 1бКб. По мере расширения функций встроенного ПО этот объем был полностью занят. Предполагалось, что часть ПО, названная Профессиональным (!) Расширением и содержащая недостающие функции, будет размещаться в ОЗУ, а поставляться на дискетах. Однако, в процессе создания программы появились идеи, реализацию которых невозможно было "втиснуть" даже в такие увеличившиеся рамки. Прим: Давайте немного посчитаем. Объем дискеты - примерно 72ОКб. А товарищи утверждают, что этого им было мало. Как такое может быть ? Очевидно там windowsO.1 должна была располагаться! ...Ко всему сказанному, следует добавить, что время работы ряда функций, даже после оптимизации по скорости, оставляло желать лучшего. Прим: Смею предположить, что после оптимизации скорость работы понизилась еще на 25% (Copyleft) mOA :8) Было решено увеличить объем ПЗУ компьютера, добавив Проф.Расширение туда. До недавнего времени мы отказывались от установки таких ПрофПЗУ на обычные компьютеры, так как часть новых функций "не успевала" за компьютером (!). Однако дальнейшая оптимизация позволила снять эти ограничения, не ускорив, правда, работу (Перл!!! - прим). Неожиданно (!) оказалось возможным увеличить объем ПЗУ без каких-либо доработок компьютера. Был найден красивый (!) и оригинальный (!) способ - вместо обычной микросхемы ПЗУ в ту же панельку вставляется миниатюрная плата с ПЗУ типа 27010 или 27020, устанавливаемыми также на панельке. ...Для уменьшения места, занимаемого файлами копии памяти, можно попытаться использовать компрессирование данных. Для этого в меню Save & Load нужно перевести флажок Compression в состояние On. Пункт Degree позволяет выбрать размер "окна" просмотра, от которого зависи степень сжатия и время работы. Прим: Помнится, stupid все время компрессию включал. Так вот, gens-4 депачился две минуты (!!!). Зависимость между этими величинами прямая, хотя и нелинейная. Заметим, что чем больше этот параметр (максимальное значение 254 (!!!)), тем больше степень сжатия, однако время работы может составить до 5 минут (!) на один банк памяти (!!! А максимальная компрессия - 5%). Примененный компрессор несимметричный - обратный процесс распаковки данных протекает на порядок быстрее (ну не знаю... - прим) ...Манипуляторы поддерживаются встроенным в компьютер программным обеспечением - в частности, возможен выбор пунктов меню. Базовые слова форт-системы анализатора (печатается с сокращением) : NOP - нет операции (полезная команда! -прим). DUP - дублировать содержимое вершины стека. На стеке создается копия верхнего элемента. SWAP - перестановка двух элементов на вершине стека. OVER - копирование второго от вершины элемента стека. Копия помещается на вершину стека. ROT - циклический сдвиг трех верхних элементов стека. DROP - удаление верхнего элемента стека. + - получить значение суммы двух верхних элементов стека. -,/,* - разность,частное,произведение :-) AND,XOR,OR - получить значение логической операции над двумя верхними элементами стека. NOT - инвертировать значение, находящееся на вершине стека. = - Истина при равенстве элементов, в противном случае Ложь. BIT - разместить на вершине стека значение байта с номером n1 в элементе n2. RD - Истина, если команда считывает из памяти, и Ложь, если считывания не происходит. WR - то же, для записи. ACF - помещает на вершину стека значение Истина, если команда использует доступ к ячейке памяти, для других команд помещается значение Ложь. ...Для каждого файла в памяти должна быть отведена специальная 28-ми (!,прим) байтная область-дескриптор управления файлом (fcb) и буфер как минимум на 1 сектор. ...Подфункция r_ms подобна многократному выполнению функции r_sec,с той лишь разницей, что значение, указанное в поле dma не изменяется. В случае ошибки полагается, что все сектора не считались. Ниже приведены данные об изменениях и дополнениях в обычных ПЗУ и ПрофПЗУ. К сожалению, в этом списке отмечены не все нововведения (как жаль,какой бы был rulez ! - прим), появлявшияся по мере работы. Принято, что обычные ПЗУ имеют номер 2.xx и код версии начиная с 0, а ПрофПЗУ - номер версии, начиная с 3.0 и код версии, начиная с 64. Прим: Печатается с сокращением,т.к. их там 3 страницы очень мелкого текста. 2.3 (1) нет сведений. 2.4a (3) Изменен реассемблер, подпрограммы печати из 48Basic'а, добавлен вызов через rst8 код 86h для печати экрана. 2.4b (3) Изменены меню: совмещены меню клавиатуры, добавлен пункт выбора скорости работы платы, ошибка при выводе каталога диска из монитора. 2.4c (3) Исправлена ошибка вывода каталога. Обнаружена ошибка: не устанавливается нормальная скорость работы, неправильно указывается режим в команде Slow. 2.4d (3) Устранена ошибка, связанная с установкой скорости. 2.5a (3) Начато встраивание файловой системы для дисковых операций монитора. 2.5e (6) Скорее всего, исправлена ошибка позицирования на стандартных дискетах, приводящая к неправильной записи файла из монитора. Для этого изъята подпрограмма общей проверки и настройки на диск. 2.60 (7) Правильно анализируется отсутствие дискеты в дисководе. 2.6а (7) Исправлена небольшая ошибка. 2.7а (8) Исправлены ошибки реассемблера (несущественные) Прим: Всего-то печаталось hl вместо bc и lx вместо af ;-) 2.90 (11) Убрано меню About. Иногда не выдается серийный номер. 2.90 (12) Исправлена выдача серийного номера. 2.91 (14) Незначительные косметические изменения, кое-где оптимизировано по скорости (небось, опять введен новый тормоз,прим). 2.93 (15) Чисто тестовый вариант для ПрофПЗУ. Не работает. 2.93 (15) Чисто тестовый вариант для ПрофПЗУ. Работает. 2.94 (16) Кроме повторного увеличения дисковых констант для работы с медленными дисководами, добавлен второй блок проверки индексного импульса после сброса ВГ93, необходимо для турбоплат. Прим: Тут mOA, вероятно, гонит пургу про медленные дисководы. Все дело в том, что запись каждого сектора ведется побайтно (или даже побитово :-)), а подпрограмма передвижения головки на соседний трек жрет 100 фреймов в лучшем случае. И это при том-то, что монитор имеет прямой доступ к портам ВГ93 !!! 2.95 (18) Некоторые изменения в программе реакции на NMI для поддержки модема :- 3.0b (64) Полностью изменена подпрограмма обслуживания клавиатуры (читай - в связи с тем, что при разрушенных системных переменных действие токена INKEY$ становится непредсказуемым, пришлость писать свою подпрограмму опроса клавиатуры. Минус ЧКб свободного места в ПЗУ). Очень медленно работают дисковые операции (не комплексуй, mOA, мы прекрасно понимаем, что это - следствие увеличения временных констант для медленных дисководов ;-)) 3.0c (64) К дисковым операциям добавлены работа с целыми секторами (видать,г-н Зонов просек, что народ не поймет побайтное считывание с диска... :-)) 3.0d (65) Увеличена задержка ожидания индексного импульса, необходимо для некоторых дисководов (конечно-конечно,г-н mOA, мы все понимаем. Успокойтесь, вам вредно нервничать). 3.2a (72) Исправлена ошибка не выхода на загрузку с дискет в меню 128 BASIC. 3.40 (74) Исправлена ошибка TR-DOS, связанная с выдачей ошибочной команды - обычно позицирования - в начале каждого цикла команд. 3.9a (89) Исправлен дефект, благодаря которому не работал выход в TR-DOS из меню 128 BASIC. 3.9b (90) Исправления в ПЗУ для правильной работы команды Format в is-dos. 3.9c (91) Вновь работает выход в TR-DOS из меню 128 BASIC. 3.9d (92) Ускорение п/п печати символов (небось, через plot, прим). 3.9e (93) Исправление ошибок предыдущей версии. 3.9f (94) Пункт Sound в меню. Прим: И как-же это такой гений г-н mOA не смог обеспечить полное отключение звука при входе в ТСМ ? 4.01 (97) Исправлена ошибка при трассировании команды ret. В ближайших планах расширение функций теневого сервис-монитора (не знаю, как вам, а мне уже страшно - прим), связанных с поддержкой устройств, установленных на контроллере SMUC. Кроме этого, ведется работа по русификации ТСМ (причем, заметьте: в теневике используется полноценный 256-ти символьный фонт, а из кодов русских букв почему-то вычитается #80). Кроме того, будет создана операционно независимая (как это ? - прим) система псевдомногозадачности.
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября