                 ░            ░▓▄▄▄▄▄
▄             ▓  ▓▀ ▀▀▀▓▄▄▄▄▄  ▀▓█▄ ▀▀▀████▓▄▄▄▄              ▓
██▓██▄▄▄     ▓░        ░    ▀▀▀▀▒▀█▓▄       ▀▀▀▀██▓██▄▄▄     ▓░
  ░▀▀▀▓███▓▄█▒                  ░  ▒   ▀░         ░▀▀▀▓███▓▄█▒
      ░  ▀▀█ ░                     ░                  ░  ▀▀█ ░


                     Quick Commander v3.20
                       История изменений


    [!] важное   [+] новое   [*] сделано лучше или изменено
       [?] скорее хуже, чем лучше   [-] исправлена ошибка

────────────────────────────────────────────────────────────────
    :: Версия 3.20
    :: Дата: 05.10.2026
────────────────────────────────────────────────────────────────

[!] Файлы, упакованные ZX0 (Einar Saukas), распаковываются
    так же, как Hrust: U и просмотр (v, V, z, Symbol Shift+v,
    Enter). Поток ZX0 узнаётся сам, по любому файлу (у ZX0 нет
    заголовка), а просмотр обычных файлов от этой проверки
    не медленнее. Стандарт QC для таких файлов: .zx0 (тип z,
    "x0" в поле старта) и .z_<тип> (тип z, "_" и исходный
    тип, как .p_<тип> у Hrust): U возвращает этот тип, а в
    панели такой файл раскрашен цветом исходного типа.
[!] Вьювер текстов читает UTF-8: текст переводится в cp866
    (русские буквы, псевдографика и знаки шрифта как есть,
    кавычки, тире, украинские и белорусские буквы - похожими
    знаками, остальное - знаком ?). Кодировка определяется
    сама, C переключает DOS/UTF (файл загружается заново).
    Первый экран большого текста появляется быстрее.
[!] Подсказка: ? и H показывают клавиши режима и что они
    делают (в рамке поверх панелей); клавиша в подсказке
    выполняет свою команду, ? и H закрывают её. Меню внизу -
    словами, с Help: "Copy Move Delete Rename merGe View
    Unpack muZ" и "Care_menu diskName Tr-dos Run_in_48k
    Saveboot"; остальные клавиши - в подсказке.
[!] Quick Setup 3.20 на диске комплекта (QS 3.20, идея -
    Looker, его QS 1.0 был для 3.04): настройки QC 3.05-3.20
    в его файле на диске - режим при старте, дисководы,
    полный каталог, мелодии, загрузка (у 3.05-3.11),
    резидент, CMOS, копия каталога, скорость дисководов,
    цвета типов файлов и QC.
    Клавиши как в QC, мышь; Save записывает, Default -
    значения релиза.
[!] Плэйер - PTxPlay Сергея Булбы (release 1, 2007) вместо
    PT3-плэйера r6. Играет и модули PT2: модуль без текста в
    заголовке находится по устройству заголовка в первых 3Кб
    файла (поиск UniSearch). В модулях PT 3.7 и новее команды
    1 и 2 с задержкой 0 сдвигают тон на один шаг, как в
    редакторе (раньше - не сдвигали). В строке названия -
    формат модуля (PT3.x, VT II или PT2).
[+] U и просмотр распаковывают файлы Hrust и ZX0 больше 32K:
    данные до 64K (у Hrust - до 56K) распаковываются прямо в
    страницы, без склейки и без переноса памяти коммандера.
    На 48K - до 16K (у Hrust - до 14K). U берёт файл любой
    длины (было - до 128 секторов) и записывает данные до
    65280 байт (255 секторов). Hrust распаковывается
    быстрее (файлы от 16K - на 19-25%).
[+] Панель показывает машину и всю ее память строчными
    буквами (zx 128k, pen 1024k, evo 4096k; atm, k/s, pro),
    а справа - res (было "resid"). Buffer теперь и в главном
    меню (вместо Memory). Под буфер QC, как и раньше, берет
    до 1024Кб; ZX-Evolution находится по порту x7F7 (#F7F7),
    в панели видны все ее 4096Кб.
[+] Вьювер картинок: экраны с бордюром (.bsc, 11136 байт).
    Экран показывается как обычно, а бордюр - одним цветом,
    самым частым в его рисунке. Сам рисунок бордюра пока не
    выводится.
[+] Rename: стрелки вниз и вверх записывают имя, как Enter,
    и сразу переименовывают следующий или предыдущий файл
    (так готовилось для QC 4.00).
[+] Вьювер картинок: A меняет цвета, как пробел (так
    готовилось для QC 4.00).
[+] Мышь в Quick Setup (Mouse): кнопки можно переставить
    (swapped: у ZX-Evolution левая кнопка - бит 0 порта
    #FADF, у Kempston-мыши там правая).
[+] Мышь: щелчок левой кнопкой по строке "Quick Commander"
    переключает главное и файловое меню, как пробел.
[+] Описание для разработчиков: конфигурации и их порты,
    настройки в файле QC, резидент и возврат в QC из
    программы, работа с TR-DOS, форматы файлов, лицензия
    распаковщика ZX0.
[+] Описания по-английски: guide_en.txt и tech_en.txt.
[*] Коммандер упакован ZX0 (Einar Saukas) вместо Hrust:
    файл короче, распаковка при запуске быстрее (0,6 с вместо
    0,9 с). Файлы Hrust U и просмотр распаковывают, как
    раньше.
[*] Указатель мыши - стрелка (так готовилась для QC 4.00)
    вместо прямоугольника 4x8 в инверсии: ходит по пикселям,
    видна поверх текста, при быстром движении не перескакивает
    к другому краю экрана. Видна и при отметке файлов правой
    кнопкой, и во время музыки. Та же стрелка в Quick Setup.
[*] Save boot и "res" в панели проверяют резидент и в конце
    его страницы (метка "Residentpresent!"), а не только в
    начале: если программа испортила конец (например, своим
    стеком), бут не сохраняется (так готовилось для QC 4.00).
[*] Break (Caps Shift+Space) закрывает вьюверы текстов,
    спрайтов и картинок, как Edit (так готовилось для QC 4.00).
    Раньше Break был пробелом: листал текст на страницу, менял
    цвета картинки.
[*] Распаковка - U вместо N (так готовилось для QC 4.00), имя
    спрашивается словами "Unpack file:".
[*] В режиме бута H - подсказка: программу H списка
    запускают Enter и 0.
[*] Сообщения короче: "Bad disk." вместо "Incorrect disk.",
    "Formatting..." вместо "Formating disk...", "Mask:" вместо
    "Mask for files:" (переименование по маске, CS+R).
[*] В комплекте TR-DOS 6.11E (Alone Coder, 2006) вместо 6.10E.
[*] Описание разделено на три текста: описание коммандера
    (guide_ru.txt), эта история изменений (hist_ru.txt) и
    описание для разработчиков (tech_ru.txt).
[?] Убрана команда H (упаковка файла в Hrust): память нужна
    под новое. Распаковка (U) и просмотр упакованных файлов
    остались. С ней ушла и S в режиме файлов: она
    переключала скорость упаковки (faStpack/Slowpack в
    панели, эта надпись тоже убрана). В режиме бута S - Save
    boot, как раньше.
[?] Вьювер текстов: кодировки WIN (cp1251) и KOI8-R убраны,
    остались DOS (cp866) и UTF-8.
[?] Убрана клавиша Y (информация об авторе) и щелчок мышью по
    названию коммандера, который её вызывал.
[?] Расширения .v и .V (модули Vortex Tracker II, с 3.05)
    больше не раскрашиваются: "лишние" (Sergey Bulba), так
    готовилось для QC 4.00. Их байты в сетапе остались на
    месте и не используются.
[?] Enter на коде запускает его сразу, с адреса старта (так
    готовилось для QC 4.00): адреса загрузки и старта больше
    не спрашиваются. Код, который грузится в экран (старт
    #4000..#5AFF: картинка или память с экрана), Enter
    показывает, как V. Файлы других типов, кроме basic и
    кода, Enter не запускает.
[?] Убран быстрый загрузчик Ursula 2.4 (Nick Patlaenko): код
    коммандера грузится функцией #3D13 TR-DOS (так готовилось
    для QC 4.00). С дискеты QC стартует примерно на 0,4 с
    дольше, зато грузится везде, где работает TR-DOS: в
    эмуляторах без портов ВГ93, с виртуальных дисководов и
    RAM-диска.
[-] На Pentagon 512/1024/4096 и KAY 1024 страница резидента
    (#D7) - 31-я (у KAY - 23-я), а QC считал её 7-й: Copy и
    Move затирали резидент, а версия в ПЗУ клала свой код в
    7-ю страницу, но искала его, настройки и резидент в 31-й
    (23-й): настройки из CMOS терялись или брались из
    случайных байтов, "resid" не было, Save boot не работал.
    Теперь QC сам находит эту страницу.
[-] ZX-Evolution: QC видел 512K вместо 1024K и включал
    турбо: проба Pentagon 4096 (порт #AFF7) попадала в #EFF7
    и включала режим Pentagon 1024, а часы (Gluk) писали в
    #EFF7 0 при каждом обращении (в эмуляторе MAME от этого
    Copy больше 128K зависал). Теперь порты ATM пробуются
    первыми, а часы оставляют в #EFF7 биты памяти и турбо.
[-] Mr Gluk Reset Service 6.3+: бит 7 ячейки CMOS #10
    запрещает Gluk запоминать дисковод, а QC с записью в
    CMOS писал туда номер дисковода и снимал этот запрет.
    Теперь при бите 7 QC ячейку #10 не трогает.
[-] Copy, прерванный (Abort) на "No Space", "Cat Over" или
    ошибке записи: следующая запись каталога входного диска
    считала свободное место по размеру выходного (с дисками
    разного размера - неверное число свободных секторов).
[-] После "No Disk." на том же дисководе (диск вынут, 5)
    головка теряла свой цилиндр: вставленный обратно диск
    читался не с тех дорожек (v показывал чужие сектора).
[-] Format: без диска начинал разметку (теперь, как Check,
    сначала проверяет, вращается ли диск); после прерванного
    (Abort) копирования на другой дисковод размечал дорожки
    не на своих местах; прерванный клавишей a сразу после
    начала портил дорожку 159; после Ignore на ошибке
    проверки остаток дорожки читался с дорожки 23.
[-] K (aKeep) на защищённом от записи диске с Abort: режим
    переключался, хотя на диск ничего не записано, и
    следующая запись каталога ставила или стирала метку на
    диске. Теперь всё остаётся как на диске.
[-] Rename: русские буквы во 2-м и 3-м знаке расширения
    портили адрес старта файла, а расширение не сохранялось.
    Теперь такое расширение не принимается, старт цел.
[-] У файла, длина которого кратна 256 и не сходится с
    числом секторов, длина считалась на 255 байт больше,
    чем помещается в его секторах.
[-] Распаковка Hrust (U и просмотр): файл с данными больше
    32K портил память, блок длиннее 32K (его конец потерян:
    так его сохраняла команда H) ронял коммандер, а файл с
    несжимаемым концом давал мусор или зависал.
[-] Плэйер: зависал на модуле с 0 позиций в заголовке (битые
    или переделанные модули); у модуля длиннее 16K или
    пересекающего границу 16-килобайтных частей файла вместо
    конца играло ПЗУ (такие модули теперь не играются);
    после p, f, l канал на огибающей молчал, пока модуль не
    задаст её снова; щелчок мышью по строке 23 в паузе давал
    случайную клавишу.
[-] Enter в просмотре текста, картинки или спрайтов
    (следующий файл): модуль дальше первых 16K файла плэйер
    брал не из той страницы памяти (мусор или зависание), а
    у файла длиннее 48K музыка шла поверх его байтов вместо
    панелей.
[-] Спрайтовый вьювер (Symbol Shift+v): у файла длиннее 48K
    дальше 48K вместо файла показывался экран.
[-] Мышь: на сером 128 и +2 без мыши QC считал её
    подключённой (её порты дают байты экрана), и указатель
    прыгал. Теперь при запуске кнопки мыши читаются целый
    кадр (так готовилось для QC 4.00).
[-] Мышь: щелчок по кнопке дисковода выбирал дисковод и во
    время "No Disk.", ошибки диска (и следующий щелчок по
    Retry не срабатывал), в care-меню. Теперь щелчок - как
    клавиша (1-4 для входного, Symbol Shift+1-4 для
    выходного), и дисковод выбирается только в панелях.
[-] Отметка файлов перетаскиванием правой кнопкой мыши: на
    полосе прокрутки отмечался файл, где указателя не было,
    а после меню строки 23 или кнопки дисковода файлы больше
    не отмечались (кнопка ещё и выбирала дисковод).
[-] После проверки диска (Check, Resdisk), не прерванной
    через Abort, ошибка диска в другой команде (Copy,
    Save...) показывала "Skip" на месте имени файла, хотя s
    там не работает.
[-] Buffer на 128K (и при старте с w) показывал 320 секторов
    вместо 384, если 8-я страница не используется: вычиталась
    страница, которой нет. Copy и Move брали все 384.
[-] Ползунок полосы прокрутки иногда не сдвигался (со 128
    файлами - с 22-го файла на 23-й) и перерисовывался зря,
    когда курсор оставался на том же файле.
[-] Вьювер текстов: коды 11 и 12 в режимах цвета
    показывались чужими знаками шрифта.
[-] Вьювер картинок: у экрана без атрибутов (6144 байта)
    правые 8 точек последней строки портились.
[-] Распаковка Hrust (U и просмотр): блок без данных за
    заголовком (так oh2c пакует пустой файл) затирал память
    коммандера, а блок с нулевой длиной данных U сохранял
    как файл из 0 секторов и переписывал дорожку на диске.
    Теперь такие блоки не распаковываются.
[-] Файл из 0 секторов (строки и надписи каталога): v, V,
    z, Symbol Shift+v, щелчок по нему и U читали 255 секторов
    оттуда, куда он указывает (каталог или следующие файлы),
    а U мог распаковать следующий файл под его именем. Теперь
    такой файл не читается.
[-] Сектор с меткой удалённых данных (защищённые диски):
    сообщение об ошибке показывало не те дорожку и сектор, а
    Ignore сбрасывал машину. Теперь это Error, как DISC ERROR
    у TR-DOS, и Retry, Abort, Ignore работают.
[-] Copy и Save на диск, где за концом каталога остались
    старые записи (бывает на чужих дисках): они попадали в
    каталог, свободное место уменьшалось, а при копировании
    нескольких файлов записи второго и следующих указывали
    не на их данные. Теперь после новой записи ставится
    конец каталога, как это делают Erase и m.

────────────────────────────────────────────────────────────────
    :: Предыдущая версия - 3.11 (28.04.2006)
────────────────────────────────────────────────────────────────


                 ░            ░▓▄▄▄▄▄
▄             ▓  ▓▀ ▀▀▀▓▄▄▄▄▄  ▀▓█▄ ▀▀▀████▓▄▄▄▄              ▓
██▓██▄▄▄     ▓░        ░    ▀▀▀▀▒▀█▓▄       ▀▀▀▀██▓██▄▄▄     ▓░
  ░▀▀▀▓███▓▄█▒                  ░  ▒   ▀░         ░▀▀▀▓███▓▄█▒
      ░  ▀▀█ ░                     ░                  ░  ▀▀█ ░


           (c) 1998-2026 Андрей Богданович (Spectre)
                 www.zxby.org  spectre@zxby.org
