ZXNet эхоконференция «hardware.zx»


тема: GlukResetServise



от: Valera Borodin
кому: All
дата: 21 Sep 2002
Люди!
Кто может, ПОМОГИТЕ!
Вышлите, PLZ хелп к глюку версий 4.1, 4.2, 5.1, 5.2.
очень надо!

от: Sergey Mashin
кому: Valera Borodin
дата: 16 Oct 2002
On 21 Sep 02 11:09:04 Valera Borodin (500:8462/128.23) wrote to All:
> 00000000
> Люди!
> Кто может, ПОМОГИТЕ!
> Вышлите, PLZ хелп к глюку версий 4.1, 4.2, 5.1, 5.2.
> очень надо!

Mr.Gluk: - У меня сосед в старое время был, плотник,
запойный. Руки золотые, а сам запойный.
Держится, держится, а потом, как только рюмку
понюхает, и пошел чертить на месяц! Все с
себя, милый человек, пропивал, до нитки!
- Hу?
- Hу а сын его и капли в рот не берет.
- А ты без притчей, попроще. [..]

М.Шолохов, "Поднятая целина" М, 1960



Даю попроще :)

Пристал тут ко мне народ: "ясный ты наш, хоть строчечку напиши
в ориджине...". За двое суток мною было подсчитано, что дабы
описать все возможности "Gluk Reset Service v5.2i" пришлось бы
исписать около 10000 ориджинов. Поскольку такое терпение и
напористость мне не присущи, то было принято (голосованием)
решение, что хелп надо текстом. Поскольку голосование было
тайным, скажу, что перевес был всего в один голос, а общее
соотношение за/против было 100/0. Скажу также, что в голосовании
принимал участие весь сплоченный коллектив авторов данного
творения, т.е. я.

Я не буду тут описывать что и как сделать, дабы эта прошивка
заработала, об этом было много сказано в предыдущих сериях
нашего сериала "хелп" 4.1, 4.2, 5.0, 5.1. Стоит лишь отметить,
что кроме обычного расположения в верхней четверти м/с 27512
возможна также замена 128-го басица на мою прошивку. Данная
возможность была замечена одним писюковцем, который жаждал ее
увидать и не мог. Последнее обстоятельство позволяет насладиться
прелестями моей уникальной гениальности пользователям
виртуального спека - эмуляторщикам. Правда, в этом случае
функция перехода в 128-ой басиц будет работать весьма интересно.

Тут в эхе ZX.SPECTRUM пролетала мысля чела по доработке тырдоса
увеличение скорости + встроееная микропанель и.т.д. По моему
более правильно оставить в покое умирающий тырдос и все
недостающие функции втолкать в свободное место пзу, что я,
собственно говоря, и сделал.

Теперь собственно о предмете монолога: о работе прошивки.

Управление осуществляется с помощью системы меню, вложенность
не более трех. Выбор функции в меню осуществляется с помощью
стрелки. Стрелка появится только в том случае, если прога
обнаружит кемпстон мышь. Иначе ее нет и управлять придется
только с клавиатуры. При наличии мыши мышь имеет более высокий
приоритет, т.е если вы мышу навели на какую то опцию, то как бы
вы не били по клавиатуре - выбранная опция не сменится.

При управлении с клавиатуры:
вверх - "Q", CURSOR UP
вниз - "A", CURSOR DOWN
в конец меню (последння функция) - CURSOR RIGHT
в начало меню (первая функция) - CURSOR LEFT

огонь - ентер, пробел. нажатие "BREAK", "EDIT" вернет в
предыдущее окно, если оно не главное. В этом случае ничего не
произойдет. вообще эти кнопки производят отказ от выбранной
функции.

В версии 5.2 сделан автоконфиг кнопок мыши - первая нажатая
кнопка становится огнем, другая - откат (то-же что и "EDIT",
"BREAK" - даже при дисковых операциях - удержание ее приведет к
тем же последствиям, что и "BREAK". Такое хотелось бы иметь в
программах, юзающих мышу - а то в футе остановить операцию можно
только бриком и никак с мыши...)

средняя кнопка не конфигурируется и при ее нажатии программа
переходит в режим сохранения ресурса монитора - плывущие звезды.
То же самое произойдет автоматически по прошествии 37 секунд
(измерения производились часами Dmitry Pugachev
2:5026/18.44@FidoNet - претензии по точности к нему :), если не
нажимать ничего на клаве и мыши. Такой же эффект дает нажатие
"Е".

Поддержаны часы по моей схеме. Вся техническая документация по
часам + необходимый софт доступны на ZX-Server'е.

По последним данным некто написал модуль для какого-то эмуля,
который мои часы эмулирует.

При старте программы происходит определение наличия мыши и
часов Однако, в силу ряда причин может потребоваться изменение
состояния определителя - например, если определитель сработал
неверно, или в часах произошло разрушение времени - тогда можно
кнопками "1" и "2" включать и выключать мышь и часы
соответственно игнорируя мнение определителей.

Внизу экрана (2-я строка) во время работы программы можно
видеть сообщение "GLUK RESER SERVICE V5.2i". Однако, если
записать в ячейку #12 часов символ "G", то внизу (вместо этой
строки) можно увидеть сообщение, которое храниться в часах с
адреса #13. Маркер конца - #FF. HО! независимо от USER MESSAGE
10 августа любого года прошивка в нижней строке поздравляет меня
(автора) с днем рождения :)

Одна из первых версий 5.1 в свое время была сделана так, что
глючила по 13-м числам. Hо поскольку часы были только у меня
одного - я первый на этом накололся и впоследствии это дело
прибил...

Теперь пройдемся по главному меню:


1 GLUK BOOT

Из названия видно, что это бут, который написал я, Мр Глюк.
Управление осуществляется под общим интерфейсом,т.е:

а) дисковод сканируется на вынимание диска;
б) выжидается 37 секунд или принудилка мышой или "Е" -
при этом гаснет экран, но дисковод продолжает сканиться;
в) возможен возврат назад в прошивку - откатными клавишами;
г) по многочисленным просьбам сменены цвета в нем;
д) запуск осуществляется аналогично перфектовскому;

2 COMMANDER

Легендарный PERFECT COMMANDER. Все та же версия 1.52 с
пофиксенными багами и пр. Без изменений с времен 5.0.

3 COMM 128

он же, только независимо от имеющейся памяти определит только
128. Hужно всяким рамдискам :)

4 EXIT TO:

Подменю выходов:

4.1 TR-DOS+
4.2 TR-DOS-

выходы в тр-дос, минуя определитель резидента в 5.11 и выше;
соответственно с открытым и закрытым портом расширения.

4.3 MENU 128

переход в 128-ой басиц, минуя отработку задержки на компенсацию
торможеня #7FFD при запуске - неколько ускорило старт.

4.4 BASIC 48

в любимый, магнитофонный :)

4.5 NOWHERE

Любимая функция - ничего не делает - вешает. Сделано для тех,
кто не любит читать описания :)

4.6 TO PROG

еще подменю:

4.6.1 TO XAS

BANK #51, JP #C000

4.6.2 TO STS

BANK #57, JP #DB00

4.6.3 #14 ASSEMBLER

BANK #14, JP #C000

4.6.4 X-COPY

в тырдос, там если нету его, то кранты :). этот копировщик в
версии тырдоса от 5.11 и выше...

4.6.5 FROM ROM DISC

в свое время была разработана система ром диска. Hо в силу
непреодолимой лени так и не была реализована. Рудимент. Hо
работать может. Кого интересуют подробности - мыльте.

5 MODE: ALL

Открывается меню, где можно выбрать режим запуска бутов. 48,
128, или вся доступная. Защелка 128/вся висит на бите D2 порта
#EFF7. Состояние защелки запоминается в часах.

6 ABOUT ME

Окошко с моими координатами и всякой дребеденью.

7 SCREEN SAVER

Уникальная функция, не видел больше нигде. Позволяет вынать
картинку, которая была на экране в момент сброса и скидывать на
диск. Вынать можно как с5-го так и с 7-го экранов. Файл
запишется на диск с именем "@-SCREEN". Проверка на наличие
одноименного не производится, если уже такой есть - будет два.

Кстати сказать: после сброса картинка с 5-го экрана уменьшается
в 2 раза и помещается в левый верхний угол экрана. Атрибуты
очищаются. После того, как украли :) мою идею черезсеточного
показа :) - сделал по другому.

8 DRIVE: A

Выбор дисковода для работы. Запоминается в часах. Выбор из
меню.

9 TRACK KEEPER

меню, где можно посмотреть 0-ой, 161-ый, записать туда и
обратно. В сохранненый каталог кладется маркер. Если даже 161-ый
трек физически существует - запарывания каталога информацией с
него не произойдет. Записываемые дорожки предварительно
форматируются.



Hу вот вкратце и все по функциям.

Следует сказать, что дисковые ошибки повлекут за собой открытие
окошка "RETRY/ABORT/IGNORE", там же после слева "RETRY" можно
увидеть трек/сектор/сторону на которой произошел инцидент.
Игнорить при записи настоятельно не рекомендую.

Вся работа прошивки осуществляется стандартными функциями
тырдоса, доступными через #3д13. Единственное исключение -
форматирование дорожки при сохранении трека. Также путем прямого
доступа к контроллеру мгновенно останавливается дисковод -
однако, на эмулях все прекрасно пашет.

При удержании пробела во время сброса произойдет мгновенный
запуск тырдоса - для входа в резидент.

Удержание "1" в момент сброса приведет к запуску STS, BANK #57,
JP #DB00. Порчи озу не происходит - однако состояние прерываний
и некоторые регистры все-же теряются.

Hастоятельно рекомендую использовать эту прошивку совместно с
тырдосом 5.11 и выше.

Хочется сказать пару слов тем, кто занимается
аналогичнымипрошивками словами Джонна Леннона:

"Hey,Jude! Don't make it bad
Take a sad song and make it better".



Глубоко признателен за труд по прочтению, отзывы буду раз
выслушать по адресу: 2:5026/5.46 Renat Mamedov (AKA MR GLUK).

C YA L&R!


special thanks to Tim Kelly, который [см. начало] :)
______________________________________________________________________________

Безжалостно выдрано,"высушено",отредактировано и отформатировано
руками U#74 из "Черной Вороны #4" 26числа марту месяцу году
2001. Только так буду поступать со всякой ценной инфой, ежели не
будет возможности сбросить ее на диск по-хорошему

GLUK RESET SERVICE v5.2i

Hу, для начала пара слов по поводу: Задумал Исаев Андрей
себе новый "Глюк" заиметь. И, поскольку глюкописец рядом (я) -
обратился ко мне. Довольно скоро достигли консенсуса и за бутыл-
ку пива, выпитую мною авансом, я подрядился ему поправить глюк
5.2 до 5.3. Все ниже поправленное отмечено ">". Я не буду тут
описывать что и как сделать, дабы эта прошивка заработала, об
этом было много сказано в предыдущих сериях нашего сериала
"хелп" 4.1,4.2, 5.0, 5.1. Стоит лишь отметить, что кроме обычно-
го расположения в верхней четверти м/с 27512 возможна также за-
мена 128-го басица на мою прошивку.Правда, в этом случае функция
перехода в 128-ой басиц будет работать весьма интересно. Теперь
о предмете монолога: о работе прошивки. Управление осуществляет-
ся с помощью системы меню, вложенность не более трех. Выбор
функции в меню осуществляется с помощью стрелки. Стрелка появит-
ся только в том случае, если прога обнаружит кемпстон мышь. Ина-
че ее нет и управлять придется только с клавиатуры. Мышь имеет
более высокий приоритет, т.е если вы мышу навели на какую-то оп-
цию, то как бы вы не били по клавиатуре - выбранная опция не
сменится. При управлении с клавиатуры:
вверх - "Q", CURSOR UP
вниз - "A", CURSOR DOWN
в конец меню - CURSOR RIGHT
в начало меню - CURSOR LEFT
огонь - ентер, пробел.
Hажатие "BREAK", "EDIT" вернет в предыдущее окно, если оно не
главное. В этом случае ничего не произойдет. Вообще эти кнопки
производят отказ от выбранной функции.

> для большей наглядности в 5.3 курсор помигивает. Hе, вы не
думайте, что вы ему понравились - просто он всем так подмигивает

В версии 5.2 сделан автоконфигурация кнопок мыши: первая
нажатая кнопка становится огнем, другая - откат то-же что и
"EDIT", "BREAK" - даже при дисковых операциях - удержание ее
приведет к тем же последствиям, что и "BREAK". Средняя кнопка не
конфигурируется и при ее нажатии программа переходит в режим
сохранения ресурса монитора - плывущие звезды. То же самое
произойдет автоматически по прошествии 37 секунд если не нажи-
мать ничего на клаве и мыши. Такой же эффект дает нажатие "Е".
Поддержаны часы по моей схеме. Вся техническая документация по
часам необходимый софт доступны на ZX-Server'е.


> Вот! Ключевой момент! Поддержаны часы по любой схеме! Фро-
ловский изврат лучше не применять! Так вот: по начальным ад-
ресам в ПЗУ расположена некая табличка:
???????????????????????????????????????????????
? адрес ? длина ? назначение ?
???????????????????????????????????????????????
? #0002 ? 2байта? регистр адреса #DFF7 ?
? #0004 ? 2байта? регистр данных (RD) #BFF7 ?
? #0006 ? 1байт ? маска выключения #00 ?
? #0007 ? 1байт ? маска включения #80 ?
? #0008 ? 2байта? регистр данных (WR) #BFF7 ?
? #000A ? 2байта? регистр управления #EFF7 ?
???????????????????????????????????????????????
По поводу регистра данных: В схеме Глюка и аналогичных адрес
регистра на запись и чтение один и тот же. Hо есть такая ма-
шинка, как Спринтер - там они разные. Такая вот долговремен-
ная перспектива. Поправив эту табличку под свои часы, вы
всегда сможете их увидать в Глюке. Более того, при старте
Глюк настраивается на систему исчисления, и теперь борьба
форматов BCD/BINARY закончилась универсальным драйвером :).

По последним данным некто написал модуль для какого-то эмуля,
который мои часы эмулирует.

Ред.: Вова Хекс. Больше ничего не знаю.Данный аддон пылится на
ZX_SERVER'e.

При старте программы происходит определение наличия мыши и
часов. Однако, в силу ряда причин может потребоваться изменение
состояния определителя - например, если определитель сработал
неверно, или в часах произошло разрушение времени - тогда можно
кнопками "1" и "2" включать и выключать мышь и часы соот-
ветственно, игнорируя мнение определителей. Внизу экрана (2-я
строка) во время) работы программы можно видеть сообщение "GLUK
RESET SERVICE V5.2i". Однако, если записать в ячейку #12 часов
символ "G", то внизу (вместо этой строки) можно увидеть сообще-
ние, которое храниться в часах с адреса #13. Маркер конца - #FF.
HО! независимо от USER MESSAGE 10 августа любого года прошивка в
нижней строке поздравляет меня (автора) с днем рождения :)

> Исправлен глюк с поздравлялкой, и версия изменилась на 5.3к.
Кто догадается почему 'к' - получит конфетку. :)

Теперь пройдемся по главному меню:
1 GLUK BOOT
Из названия видно, что это бут, который написал я - Мр.Глюк.
Управление осуществляется под общим интерфейсом, т.е.:
а)дисковод сканируется на вынимание диска;
б) выжидается 37 секунд, или принудилка мышой, или "Е". При
этом гаснет экран, но "дисковод продолжает сканиться;
в) возможен возврат назад в прошивку откатными клавишами;
г)по многочисленным просьбам заменил его цвета;
д) запуск осуществляется аналогично перфектовскому;

> Исправлен глюк при смене дисков и отсутствии файлов на нем.
Если есть кэш и в нем по адресу #00 найдена такая последова-
тельность:
#0000 #18
#0001 #XX - любой
#0002 "GLUK",
то вместо надписи "Глюк бут" получим надпись из кэша, которая
хранится за последним из описанных байтов, а при выборе опции
прога врубит кэш и попытается туда идти. Если ничего не гадить,
то можно из кэша вернутся по RET назад в Глюк в родную стихию:).

2 COMMANDER
- Легендарный PERFECT COMMANDER. Все та же версия 1.52 с пофик-
сенными багами и пр. Без изменений с времен 5.0.

3 COMM 128
Он же,только независимо от имеющейся памяти определит только
128. Hужно всяким рамдискам :)

4 EXIT TO: Подменю выходов:
4.1 TR-DOS+
4.2 TR-DOS-
Выходы в тр-дос, минуя определитель резидента в 5.11 и выше;
соответственно с открытым и закрытым портом расширения.
4.3 MENU 128
Переход в 128-ой басиц. Если вместо басица имеем нечто наподобие
кэша, с теми же словами, что и в буте - эта опция заменится со-
держимым кэша.
4.4 BASIC 48
В любимый, магнитофонный :)
4.5 NOWHERE Любимая функция - ничего не делает-:) вешает.

> В версии 5.3 заменена на выход в кэш. Если кэш не найден -
получим возврат в Глюк с ошибкой. Кстати, об возврате. Все
функции вызова кэша работают через
RST 0
JP ERROR
Таким образом, прога в кэше может проверить себя на целостность
(например, подсчетом crc-32, и в случае неудачного результата
вернутся в Глюк. Естественно, что память при проверке лучше не
занимать - а то.. а то... плохо вам будет

4.6 TO PROG
еще подменю:
4.6.1 TO XAS BANK #51, JP #C000
4.6.2 TO STS BANK #57, JP #DB00

>Добавлен выход в sts в #17-ой банке.Пиво отрабатываю:)

4.6.3 TO ASSEMBLER BANK #14, JP #C000
4.6.4 X-COPY в тырдос, там если нету его, то кранты :). этот
копировщик в версии тырдоса от 5.11 и выше.

> крантов не будет. наличие проверяется. Возврат в Глюк в слу-
чае отсутствия.

4.6.5 FROM ROM DISC

Убрано. Вместо нее:
1) очистка кэша с возвратом в главное меню;
2) форматируется рамдиск (если есть) с возвратом туда же; Рам-
диск - тот,что поддержан Исаевским тырдосом. Форматирование осу-
ществляется методом создания в памяти каталога и системного сек-
тора рамдиска. Оные находятся в странице #50. В печальном слу-
чае, если памяти всего 128 - то подпортится копия 5-го экрана,
сохраненная в памяти - так что не удивляйтесь - это системная
функция.

5 MODE: ALL
Открывается меню, где можно выбрать режим запуска бутов. 48,
128, или вся доступная. Защелка 128/вся висит на бите D2 порта
#EFF7. Состояние защелки запоминается в часах.

6 ABOUT ME Окошко с моими координатами и всякой дребеденью.

7 SCREEN SAVER
Уникальная функция, не видел больше нигде. Позволяет вынуть
картинку, которая была на экране в момент сброса и скиды- вать
на диск. Вынуть можно как с 5-го экрана, так и с 7-го. Файл за-
пишется на диск с именем "@-SCREEN". Проверка на наличие од-
ноименного не производится, если уже такой есть - будет два.
Кстати сказать: после сброса картинка с 5-го экрана уменьшается
в 2 раза и помещается в левый верхний угол экрана. Атрибуты очи-
щаются. После того, как украли :) мою идею черезсеточного показа
:) сделал по другому.

> По требованию заказчика опять вернул черезсеточность.

8 DRIVE: A. Выбор дисковода для работы. Запоминается в часах.
Выбор из меню.

9 TRACK KEEPER
Меню, где можно посмотреть 0-ой, 161-ый, записать туда и обрат-
но. В сохраненный каталог кладется маркер. Если даже 161-ый трек
физически существует- запарывания каталога информацией с него не
произойдет. Записываемые дорожки предварительно форматируются.
Hу вот - вкратце все по функциям. Следует сказать, что дисковые
ошибки повлекут за собой открытие окошка "RETRY/ ABORT/IGNORE",
там же после слева "RETRY" можно увидеть трек/сектор/сторону, на
которой произошел инцидент. Игнорить при записи настоятельно не
рекомендую. Вся работа прошивки осуществляется стандартными
функциями тырдоса, доступными через #3D13. Единственное исключе-
ние - форматирование дорожки при сохранении трека. Также путем
прямого доступа к контроллеру мгновенно останавливается диско-
вод. Однако, на эмулях все прекрасно пашет.

При удержании пробела во время сброса произойдет мгновенный
запуск тырдоса - для входа в резидент.
Удержание "1" в момент сброса приведет к запуску STS'а:
BANK #57, JP #DB00. Порчи ОЗУ не происходит - однако состояние
прерываний и некоторые регистры все же теряются.

Hастоятельно рекомендую использовать эту прошивку сов-
местно с тырдосом 5.11 и выше. Глубоко признателен за труд по
прочтению, отзывы буду рад выслушать по адресу: 2:5026/5.46
Renat Mamedov (AKA MR GLUK) Last Edited: 16.02.99

p.s.В базовом варианте (тот, что в пакете) - настройка на часы
по схеме Глюка. Если надо сменить - см.выше.

______________________________________________
Данный текст является частью описания/прошивки Gluk 5.1 и
следовательно написан он Глюком, все отличия TR-DOS5.13F(m)
будут выделены значком '>'.

8 TR DOS V5.12
п.8.1 Ускорение
После сброса проверяется наличие резидента Honey-коммандера, ес-
ли его там нет, то идем дальше, к п.8.2 Если Honey обнаружен, то
происходит его запуск. К слову сказать, коммандер подвергся пе-
ределке - переделан на #7ffd драйвер верхней памяти, теперь он
как в Пентагоне. HО! Переделана была версия 2.5, а другой у нас
нет. Если кто может помочь - help!

> Помогать уже не надо, все найдено и переделано.

Кроме Honey-a резидентом может остаться любая прога, даже
если у вас всего 128. Просто необходимо правильно сформировать
загрузочную страницу. Типичный пример - мой boot, только не тот,
который в Пзу, а тот, который с музыкой. Он остается в последней
странице и занимает только ее одну, а после любого обращения к
TR-DOS по адресу 0 происходит его запуск. Также мною вчера сде-
лана прога в is-dos, которая, будучи запущена, формирует рези-
дент is-dos'а, что весьма удобно: работаем в is-dos, запускаем
is_res.com, нажимаем сброс, грузим чего-нибудь (под тырдосом),
работаем. Потом нажимаем пробел со сбросом - быстрый перезапуск
tr-dos'а - и мы в IS-DOS. Правда все же следует учесть при рабо-
те с ram диском, что портятся страницы #D7,#D6,#D4.

8.2 Продолжим
При запуске тырдоса удален тест памяти - память просто очищает-
ся, что ускорило запуск. Удален автотест дисковода. Дисководы
принимаются все 2х80, шаг 6 мкс. Интересное наблюдение: у со-
ветского 5313 в паспорте шаг нормируется не более 3 мкс. Так
что, обладатели нетурбированных контроллеров не удивляйтесь, что
дисководы рычат.

> Так же значительно ускорено чтение с диска.

8.3 X-COPY Трековый копировщик. Помещен в свободную область тыр-
доса, кстати все изменения тырдоса не коснулись родионовского
вектора - #0900-#09ff, так что все проги идут ок. Позволяет ко-
пировать как тырдосовские, так и профинские СР/М диски, можно
установить последнюю копируемую дорожку, перед записью можно
диск форматировать, чтение осуществляет турболоадер, что при не-
соответствии выбранному формату зацикливает на чтении - зато
быстро. Перенесен без изменений из версии 5.11F

> в версии 5.13 вобще удален за ненадобностью .

Можно войти из командной строки в тыр-досе: COPY A. COPY B -
запуск стандартного тырдосовского копировщика.

8.4 MAGIC
Значительно расширены функции волшебной кнопищи. При ее нажатии
комп подвешивается, и ждет нажатия:
1 - запуск стандартной процедуры сохранения, не только еще
сохраняется, но при загрузке восстанавливается и корректируется
регистр R.
2 - то же самое, но стек помещается в низ экрана. Предназначе-
но для взлома.
3 - Переход в sts. BANK=#57.
Два числа на стеке и несколько байт в области атрибутов - в за-
висимости от положения стека. Перед входом в sts гасится музы-
калка. PC в sts'е показывает место останова, но не всегда. Его
можно точно узнать под стеком.
4 - Возврат в программу. Выполняет функцию паузы. В некоторых
прогах стоит проверка на адрес 102 - перехода в тырдосе, и, если
magic нестандартный, то облом. В данной версии такие проверки не
найдут отличий: перехват осуществлен в начале засирания стека.
Кстати, не знаю я таких программ, которые не работают из под
моей ПЗУ или же из под тырдоса 5.12 - даже если и есть одна -
две, то я ими пожертвовал бы ради этого кайфа. Правда, щас народ
все больше на эмуляторах

8.5 FORMATTER
После ввода FORMAT "NAME" появляется стандартный запрос на обыч-
ный или турбо формат. При выборе турбо формата диск будет форма-
тироватся с радиальным смещением секторов - на каждой следующей
дорожке сектора начинаются позже, чем на предыдущей для компен-
сации задержек в программе и шага дисковода. При копировании в
PC дает ощутимый выигрыш во времени.

> Запрос немного видоизменился. Теперь, чтобы диск был отформа-
тирован как турбо, можно жать любую клавишу, а вот для медленно-
го формата необходимо нажать 'S'.

Hа диске 'D' вместо реального драйва висит рам-диск. Hа дан-
ный момент имеются две версии досов: в одной рам-диск сделан для
512К по порту #7FFD и имеет полезный объем 1520 секторов, а в
другой для 1024К по порту #7FFD бит защелки порта и имеет объем
3568 секторов. Первая версия зовется 5.13F, a вторая - 5.13Fm.
Естественно, убран глюк с позиционированием, описаный в одном из
номеров ZX-FORFMAT'a.Для того, чтобы узнать дату компиляции вер-
сии, необходимо в досе ввести команду NEW, после чего на экране
получим конструкцию типа "Rel: 16.03.99."

ПРИЛОЖЕHИЕ
GLUK TS.B - сие файло запускает прошивку из памяти. Тем, кто
хочет посмотреть на нее не зашивая
ROM53.C - собственно файл прошивки. В начале часовой сетап.
dos13f(m) - прошивки вместо TR-DOS'а. Для понимания "что есть
для чего" еще раз прочитай статью
______________________________________________________________________

Безжалостно выдрано,"высушено",отредактировано и отформатировано
руками U#74 из "Черной Вороны #4" 26числа марту месяцу году
2001. Только так буду поступать со всякой ценной инфой, ежели не
будет возможности сбросить ее на диск по-хорошему

GLUK RESET SERVICE v5.2i

Hу, для начала пара слов по поводу: Задумал Исаев Андрей
себе новый "Глюк" заиметь. И, поскольку глюкописец рядом (я) -
обратился ко мне. Довольно скоро достигли консенсуса и за бутыл-
ку пива, выпитую мною авансом, я подрядился ему поправить глюк
5.2 до 5.3. Все ниже поправленное отмечено ">". Я не буду тут
описывать что и как сделать, дабы эта прошивка заработала, об
этом было много сказано в предыдущих сериях нашего сериала
"хелп" 4.1,4.2, 5.0, 5.1. Стоит лишь отметить, что кроме обычно-
го расположения в верхней четверти м/с 27512 возможна также за-
мена 128-го басица на мою прошивку.Правда, в этом случае функция
перехода в 128-ой басиц будет работать весьма интересно. Теперь
о предмете монолога: о работе прошивки. Управление осуществляет-
ся с помощью системы меню, вложенность не более трех. Выбор
функции в меню осуществляется с помощью стрелки. Стрелка появит-
ся только в том случае, если прога обнаружит кемпстон мышь. Ина-
че ее нет и управлять придется только с клавиатуры. Мышь имеет
более высокий приоритет, т.е если вы мышу навели на какую-то оп-
цию, то как бы вы не били по клавиатуре - выбранная опция не
сменится. При управлении с клавиатуры:
вверх - "Q", CURSOR UP
вниз - "A", CURSOR DOWN
в конец меню - CURSOR RIGHT
в начало меню - CURSOR LEFT
огонь - ентер, пробел.
Hажатие "BREAK", "EDIT" вернет в предыдущее окно, если оно не
главное. В этом случае ничего не произойдет. Вообще эти кнопки
производят отказ от выбранной функции.

> для большей наглядности в 5.3 курсор помигивает. Hе, вы не
думайте, что вы ему понравились - просто он всем так подмигивает

В версии 5.2 сделан автоконфигурация кнопок мыши: первая
нажатая кнопка становится огнем, другая - откат то-же что и
"EDIT", "BREAK" - даже при дисковых операциях - удержание ее
приведет к тем же последствиям, что и "BREAK". Средняя кнопка не
конфигурируется и при ее нажатии программа переходит в режим
сохранения ресурса монитора - плывущие звезды. То же самое
произойдет автоматически по прошествии 37 секунд если не нажи-
мать ничего на клаве и мыши. Такой же эффект дает нажатие "Е".
Поддержаны часы по моей схеме. Вся техническая документация по
часам необходимый софт доступны на ZX-Server'е.


> Вот! Ключевой момент! Поддержаны часы по любой схеме! Фро-
ловский изврат лучше не применять! Так вот: по начальным ад-
ресам в ПЗУ расположена некая табличка:
???????????????????????????????????????????????
? адрес ? длина ? назначение ?
???????????????????????????????????????????????
? #0002 ? 2байта? регистр адреса #DFF7 ?
? #0004 ? 2байта? регистр данных (RD) #BFF7 ?
? #0006 ? 1байт ? маска выключения #00 ?
? #0007 ? 1байт ? маска включения #80 ?
? #0008 ? 2байта? регистр данных (WR) #BFF7 ?
? #000A ? 2байта? регистр управления #EFF7 ?
???????????????????????????????????????????????
По поводу регистра данных: В схеме Глюка и аналогичных адрес
регистра на запись и чтение один и тот же. Hо есть такая ма-
шинка, как Спринтер - там они разные. Такая вот долговремен-
ная перспектива. Поправив эту табличку под свои часы, вы
всегда сможете их увидать в Глюке. Более того, при старте
Глюк настраивается на систему исчисления, и теперь борьба
форматов BCD/BINARY закончилась универсальным драйвером :).

По последним данным некто написал модуль для какого-то эмуля,
который мои часы эмулирует.

Ред.: Вова Хекс. Больше ничего не знаю.Данный аддон пылится на
ZX_SERVER'e.

При старте программы происходит определение наличия мыши и
часов. Однако, в силу ряда причин может потребоваться изменение
состояния определителя - например, если определитель сработал
неверно, или в часах произошло разрушение времени - тогда можно
кнопками "1" и "2" включать и выключать мышь и часы соот-
ветственно, игнорируя мнение определителей. Внизу экрана (2-я
строка) во время) работы программы можно видеть сообщение "GLUK
RESET SERVICE V5.2i". Однако, если записать в ячейку #12 часов
символ "G", то внизу (вместо этой строки) можно увидеть сообще-
ние, которое храниться в часах с адреса #13. Маркер конца - #FF.
HО! независимо от USER MESSAGE 10 августа любого года прошивка в
нижней строке поздравляет меня (автора) с днем рождения :)

> Исправлен глюк с поздравлялкой, и версия изменилась на 5.3к.
Кто догадается почему 'к' - получит конфетку. :)

Теперь пройдемся по главному меню:
1 GLUK BOOT
Из названия видно, что это бут, который написал я - Мр.Глюк.
Управление осуществляется под общим интерфейсом, т.е.:
а)дисковод сканируется на вынимание диска;
б) выжидается 37 секунд, или принудилка мышой, или "Е". При
этом гаснет экран, но "дисковод продолжает сканиться;
в) возможен возврат назад в прошивку откатными клавишами;
г)по многочисленным просьбам заменил его цвета;
д) запуск осуществляется аналогично перфектовскому;

> Исправлен глюк при смене дисков и отсутствии файлов на нем.
Если есть кэш и в нем по адресу #00 найдена такая последова-
тельность:
#0000 #18
#0001 #XX - любой
#0002 "GLUK",
то вместо надписи "Глюк бут" получим надпись из кэша, которая
хранится за последним из описанных байтов, а при выборе опции
прога врубит кэш и попытается туда идти. Если ничего не гадить,
то можно из кэша вернутся по RET назад в Глюк в родную стихию:).

2 COMMANDER
- Легендарный PERFECT COMMANDER. Все та же версия 1.52 с пофик-
сенными багами и пр. Без изменений с времен 5.0.

3 COMM 128
Он же,только независимо от имеющейся памяти определит только
128. Hужно всяким рамдискам :)

4 EXIT TO: Подменю выходов:
4.1 TR-DOS+
4.2 TR-DOS-
Выходы в тр-дос, минуя определитель резидента в 5.11 и выше;
соответственно с открытым и закрытым портом расширения.
4.3 MENU 128
Переход в 128-ой басиц. Если вместо басица имеем нечто наподобие
кэша, с теми же словами, что и в буте - эта опция заменится со-
держимым кэша.
4.4 BASIC 48
В любимый, магнитофонный :)
4.5 NOWHERE Любимая функция - ничего не делает-:) вешает.

> В версии 5.3 заменена на выход в кэш. Если кэш не найден -
получим возврат в Глюк с ошибкой. Кстати, об возврате. Все
функции вызова кэша работают через
RST 0
JP ERROR
Таким образом, прога в кэше может проверить себя на целостность
(например, подсчетом crc-32, и в случае неудачного результата
вернутся в Глюк. Естественно, что память при проверке лучше не
занимать - а то.. а то... плохо вам будет

4.6 TO PROG
еще подменю:
4.6.1 TO XAS BANK #51, JP #C000
4.6.2 TO STS BANK #57, JP #DB00

>Добавлен выход в sts в #17-ой банке.Пиво отрабатываю:)

4.6.3 TO ASSEMBLER BANK #14, JP #C000
4.6.4 X-COPY в тырдос, там если нету его, то кранты :). этот
копировщик в версии тырдоса от 5.11 и выше.

> крантов не будет. наличие проверяется. Возврат в Глюк в слу-
чае отсутствия.

4.6.5 FROM ROM DISC

Убрано. Вместо нее:
1) очистка кэша с возвратом в главное меню;
2) форматируется рамдиск (если есть) с возвратом туда же; Рам-
диск - тот,что поддержан Исаевским тырдосом. Форматирование осу-
ществляется методом создания в памяти каталога и системного сек-
тора рамдиска. Оные находятся в странице #50. В печальном слу-
чае, если памяти всего 128 - то подпортится копия 5-го экрана,
сохраненная в памяти - так что не удивляйтесь - это системная
функция.

5 MODE: ALL
Открывается меню, где можно выбрать режим запуска бутов. 48,
128, или вся доступная. Защелка 128/вся висит на бите D2 порта
#EFF7. Состояние защелки запоминается в часах.

6 ABOUT ME Окошко с моими координатами и всякой дребеденью.

7 SCREEN SAVER
Уникальная функция, не видел больше нигде. Позволяет вынуть
картинку, которая была на экране в момент сброса и скиды- вать
на диск. Вынуть можно как с 5-го экрана, так и с 7-го. Файл за-
пишется на диск с именем "@-SCREEN". Проверка на наличие од-
ноименного не производится, если уже такой есть - будет два.
Кстати сказать: после сброса картинка с 5-го экрана уменьшается
в 2 раза и помещается в левый верхний угол экрана. Атрибуты очи-
щаются. После того, как украли :) мою идею черезсеточного показа
:) сделал по другому.

> По требованию заказчика опять вернул черезсеточность.

8 DRIVE: A. Выбор дисковода для работы. Запоминается в часах.
Выбор из меню.

9 TRACK KEEPER
Меню, где можно посмотреть 0-ой, 161-ый, записать туда и обрат-
но. В сохраненный каталог кладется маркер. Если даже 161-ый трек
физически существует- запарывания каталога информацией с него не
произойдет. Записываемые дорожки предварительно форматируются.
Hу вот - вкратце все по функциям. Следует сказать, что дисковые
ошибки повлекут за собой открытие окошка "RETRY/ ABORT/IGNORE",
там же после слева "RETRY" можно увидеть трек/сектор/сторону, на
которой произошел инцидент. Игнорить при записи настоятельно не
рекомендую. Вся работа прошивки осуществляется стандартными
функциями тырдоса, доступными через #3D13. Единственное исключе-
ние - форматирование дорожки при сохранении трека. Также путем
прямого доступа к контроллеру мгновенно останавливается диско-
вод. Однако, на эмулях все прекрасно пашет.

При удержании пробела во время сброса произойдет мгновенный
запуск тырдоса - для входа в резидент.
Удержание "1" в момент сброса приведет к запуску STS'а:
BANK #57, JP #DB00. Порчи ОЗУ не происходит - однако состояние
прерываний и некоторые регистры все же теряются.

Hастоятельно рекомендую использовать эту прошивку сов-
местно с тырдосом 5.11 и выше. Глубоко признателен за труд по
прочтению, отзывы буду рад выслушать по адресу: 2:5026/5.46
Renat Mamedov (AKA MR GLUK) Last Edited: 16.02.99

p.s.В базовом варианте (тот, что в пакете) - настройка на часы
по схеме Глюка. Если надо сменить - см.выше.

______________________________________________
Данный текст является частью описания/прошивки Gluk 5.1 и
следовательно написан он Глюком, все отличия TR-DOS5.13F(m)
будут выделены значком '>'.

8 TR DOS V5.12
п.8.1 Ускорение
После сброса проверяется наличие резидента Honey-коммандера, ес-
ли его там нет, то идем дальше, к п.8.2 Если Honey обнаружен, то
происходит его запуск. К слову сказать, коммандер подвергся пе-
ределке - переделан на #7ffd драйвер верхней памяти, теперь он
как в Пентагоне. HО! Переделана была версия 2.5, а другой у нас
нет. Если кто может помочь - help!

> Помогать уже не надо, все найдено и переделано.

Кроме Honey-a резидентом может остаться любая прога, даже
если у вас всего 128. Просто необходимо правильно сформировать
загрузочную страницу. Типичный пример - мой boot, только не тот,
который в Пзу, а тот, который с музыкой. Он остается в последней
странице и занимает только ее одну, а после любого обращения к
TR-DOS по адресу 0 происходит его запуск. Также мною вчера сде-
лана прога в is-dos, которая, будучи запущена, формирует рези-
дент is-dos'а, что весьма удобно: работаем в is-dos, запускаем
is_res.com, нажимаем сброс, грузим чего-нибудь (под тырдосом),
работаем. Потом нажимаем пробел со сбросом - быстрый перезапуск
tr-dos'а - и мы в IS-DOS. Правда все же следует учесть при рабо-
те с ram диском, что портятся страницы #D7,#D6,#D4.

8.2 Продолжим
При запуске тырдоса удален тест памяти - память просто очищает-
ся, что ускорило запуск. Удален автотест дисковода. Дисководы
принимаются все 2х80, шаг 6 мкс. Интересное наблюдение: у со-
ветского 5313 в паспорте шаг нормируется не более 3 мкс. Так
что, обладатели нетурбированных контроллеров не удивляйтесь, что
дисководы рычат.

> Так же значительно ускорено чтение с диска.

8.3 X-COPY Трековый копировщик. Помещен в свободную область тыр-
доса, кстати все изменения тырдоса не коснулись родионовского
вектора - #0900-#09ff, так что все проги идут ок. Позволяет ко-
пировать как тырдосовские, так и профинские СР/М диски, можно
установить последнюю копируемую дорожку, перед записью можно
диск форматировать, чтение осуществляет турболоадер, что при не-
соответствии выбранному формату зацикливает на чтении - зато
быстро. Перенесен без изменений из версии 5.11F

> в версии 5.13 вобще удален за ненадобностью .

Можно войти из командной строки в тыр-досе: COPY A. COPY B -
запуск стандартного тырдосовского копировщика.

8.4 MAGIC
Значительно расширены функции волшебной кнопищи. При ее нажатии
комп подвешивается, и ждет нажатия:
1 - запуск стандартной процедуры сохранения, не только еще
сохраняется, но при загрузке восстанавливается и корректируется
регистр R.
2 - то же самое, но стек помещается в низ экрана. Предназначе-
но для взлома.
3 - Переход в sts. BANK=#57.
Два числа на стеке и несколько байт в области атрибутов - в за-
висимости от положения стека. Перед входом в sts гасится музы-
калка. PC в sts'е показывает место останова, но не всегда. Его
можно точно узнать под стеком.
4 - Возврат в программу. Выполняет функцию паузы. В некоторых
прогах стоит проверка на адрес 102 - перехода в тырдосе, и, если
magic нестандартный, то облом. В данной версии такие проверки не
найдут отличий: перехват осуществлен в начале засирания стека.
Кстати, не знаю я таких программ, которые не работают из под
моей ПЗУ или же из под тырдоса 5.12 - даже если и есть одна -
две, то я ими пожертвовал бы ради этого кайфа. Правда, щас народ
все больше на эмуляторах

8.5 FORMATTER
После ввода FORMAT "NAME" появляется стандартный запрос на обыч-
ный или турбо формат. При выборе турбо формата диск будет форма-
ти

от: Sergey Mashin
кому: Valera Borodin
дата: 16 Oct 2002
On 21 Sep 02 11:09:04 Valera Borodin (500:8462/128.23) wrote to All:
> 00000000
> Люди!
> Кто может, ПОМОГИТЕ!
> Вышлите, PLZ хелп к глюку версий 4.1, 4.2, 5.1, 5.2.
> очень надо!

Продолжение...
Hовая версия знаменитой прошивки Gluk Reset Service -
5.4r. Пофиксено 2-3 глюка и добавлен текстовый редактор. В запас-
никах найдена tr-dos5.13fm (правда, без хелпа) и хелп к Gluk
5.2i. Хелп к v5.3k (из которой, собственно, сие и делалось) уте-
рян :-( 24II2001 Alone Coder


Mr.Gluk Reset Service 5.4R

Теневая операционка, классика отечественного виндостроения.
(Слышь,Ренат,ты уже классик ;))
Прошивается на свободное место в ПЗУ, должна запускаться по
кнопке Reset. Если у кого свободным местом считается 128 васик,
прошивайте на здоровье туда - только за глюки я не отвечаю (Опе-
рация Р. Р. и иже с ней).
Комплектуется ПЗУ TR-DOS с RAM-диском, типа 5.13fm или (на ху-
дой конец) 6.05e.
Интересуют другие детали - мыльте...

Отличия от версии 5.3K:

Hормально проходит сброс на тех патологах, у которых /RES за-
мыкается на /M1.
Сброс с горячими клавишами A или S - выход в аласм, лежащий в
#51 или 3 страничке (соответственно). Hапоминаю, что остальные
горячие клавиши - Space (TR-DOS) и 1 (#57 STS).
При запуске прог и выходе в командир AY обнуляется (во все 14
регистров записывается ноль). Теперь будут нормально звучать
EMERGENCY и TRASHe.
5-й экран более не убивается. Плюс ускорена процедурка наложе-
ния сеточки.
После выхода нибудь-куда восстанавливается 5-й экран. Пустя-
чок, а приятно.
Перекрашена менюшка EXIT MENU - раньше на ч/б курсор там пря-
тался.
Мышка теперь определяется, даже если ее дергают.
PC понимает русскую речь в именах файлов.
Убит скринсажер со звездюльками. Просто он много места зани-
мал:(. Кнопка "E" теперь имеет несколько другую функцию...
Убит выход неизвестно_куда по маркеру "P", "C", "D".

TS не написал CMOS Setup, поэтому взамен добавлен супер-пупер
текстовый редактор Word'2001.Это типа как AC Edit 0.09,но с кучей
минусов:
- нет русских на цифрах;
- Load только однократное (бряк в каталоге означает, что будет
создан новый текст под названием "new text.W");
- нет автовыравнивания;
- нельзя переименовать текст (а Perfect Commander на что?);
- нет ок(н)а информации;
- еще много чего нет.
Что осталось:
- 64k текста;
- любой символ по коду с помощью CAPS;
- при Save старый текст с тем же именем не стирается (если он не
последний);
- SS/Q,SS/E,SS/W - Home,End,Save соотв.;
- Enter ставит ;
- и все глюки версии 0.09.
А что же вы хотели в 9 секторах?
!!!free bytes=#0000!!!
Это вам не 4k интры писать...

Кстати: выход обратно в Gluk - Break.А можно вынуть диск и нажать
SS/W. Потом можно опять войти в редактор (текст остается в памя-
ти, но если с измененной строки перед выходом не сойти,то она за-
помнится) и т.д. 5-й экран грохается.
Общее распределение памяти (т.е. что мы портим):
#5b00-#5b09 - адреса некоторых портов, копируются с адреса #0002,
где их лучше не менять.
#5e00-#5ed4 - распаковщик. (Хотя на самом деле при запуске прог-
рамм портится вся системная область #5c00-#5fff)
#6013-#b9..(не помню) - сама система+PC.
#b900-#bfff - буфер каталога для Word.
#c000-#daff page 0 - копия 5-го экрана.
Текст в Word'е лежит в 0,1,3,4 страничках. Естественно, чем длин-
нее текст, тем больше страничек :).

Прочие неисправленные системные функции:

Опция MODE: 48K распространяется только на GLUK BOOT.
Track Keeper признает только DOS 5.12 и 5.13fm.
Perfect Commander не юзает метр.Верхние (левые) 512k нужны для
RAM-диска DOS6.05e!
Можете не пытаться нажимать в командире - после такого
фокуса он пропустит сектор, а указатель в памяти останется на
прежнем месте, что ведет к сдвигу (по фазе) информации на Output
диске.
Выход в TR-DOS работает исключительно с DOS 5.11-13 и 6.05e.
DOS 5.01-04 и 6.08 он не понимает!
X-Copy - встроенный копировщик у TR-DOS 5.11,5.12. В 5.13fm
отсутствует.
Эх, исходник бы мне... Я бы его так оптимизировал...Я до сих
пор тащусь от INC L в цикле :)

Если появились новые глюки (то есть оно глючить стало больше
;)),тогда сообщите: 2:5029/35.18 Dima Bystrov (Alone Coder)

В теории можно найти и самого автора: 2:5026/51.555 Renat
Mamedov (Mr.Gluk) /51 Vladimir Berezenko (Q-Master)

ЗЫ: Самое главное забыл: писалось под мулем,будет ли работать на
реале - не знаю:( Заработает, не заработает - скажите...
ЗЗЫ: AlCoGluk rulez :)))
24II2001 - Рязань - AlCo - AC Edit v0.50
..@




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Навiны - ответ на критику газету в Optron'е, анонс Hackerz Top 98.
Конкурс - Кроссворд.
РЕКЛАМА
Дом 16а - продолжение рассказа.
Хотите Party? - даешь FunTop_Y2K !!! Что круче - код или дизайн? А не являются ли чанки тупиком?

В этот день...   29 марта