Режим модерирования
MC-ZX
НОВОСТИ
ГРУППЫ
E-MAIL РАССЫЛКИ
ФАЙЛЫ
ФОРУМЫ
ГОСТЕВАЯ КНИГА
ССЫЛКИ
О САЙТЕ
Беларуская моваРусский языкEnglish language

Copyright © 2001-2006 Optical Brothers

[О группе] [Наши игры] [Quick Commander] [mc-zx] [Always] [Новости "ОБС"]

Плагины для Midnight Commander (mc) для тех, кто работает с файлами ZX Spectrum на PC: образы дисков TR-DOS открываются как обычные папки, исходники ALASM показываются текстом, файлы пакуются и распаковываются ZX0, Hrust и Hrum прямо из меню mc, тексты в cp866 читаются и перекодируются (Midnight Commander plugins for ZX Spectrum files).

mc-zx v1.0

Дата выхода (Release date): 05.10.2026

Нажмите чтобы скачать (click for download):

mc-zx v1.0: trdos, alasm, zx0, hrust, hrum, cp866

Каждый плагин - отдельная папка со своей программой, установщиком, описанием (README.md, по-английски) и тестами: его можно отдать и установить отдельно от остальных. Все программы написаны на Python 3 без внешних библиотек, побайтно совпадают с оригинальными упаковщиками и работают в Linux, macOS и BSD.

плагинчто делаетв mc
trdosобразы дисков TR-DOS (.trd) и архивы SCL как папки: просмотр, извлечение, добавление и удаление файловEnter на .trd/.scl, F3 - каталог
alasmисходники ALASM 4.4x и 5.0x (файлы типа H) как текстF3 и Enter на .H/.$H, F2 - l (в .asm)
zx0упаковка и распаковка ZX0 (Einar Saukas), как у Quick Commander 3.20F2 - j / J, F3 на .zx0 и .z_?
hrustупаковка Hrust 2 как командой h в Quick Commander 3.11 или короче, как oh2c; распаковкаF2 - u / O / N, F3 на .p_? и .hr2
hrumупаковка Hrum 3.5 (Hrumer) в самораспаковывающийся блок и распаковкаF2 - k / K, F3 на .hrm
cp866тексты DOS и русского Спектрума в cp866: просмотр, перевод в UTF-8 и обратноF2 - v, V, W

Плагины работают и вместе: внутри образа .trd исходник ALASM виден как NAME.H, и F3 показывает его текстом; файл, упакованный в mc, копируется на диск с тем типом, который понимает Quick Commander.

Образы TR-DOS (trdos)

Enter на файле .trd или .scl открывает образ как папку, F3 показывает каталог диска текстом. Внутри:
  • файлы как есть, с именами NAME.T, где T - тип TR-DOS: boot.B, game.C. Трехбуквенные расширения показываются полностью (song.pt3), упакованные файлы Quick Commander'а - как game.p_C (Hrust) и game.z_C (ZX0);
  • папка hobeta/ - те же файлы в формате hobeta (NAME.$T): с заголовком сохраняются имя, тип, START и LENGTH. Это не копия, а другой вид тех же файлов: удаление там удаляет файл с диска;
  • CATALOG - каталог диска текстом: метка, тип диска, свободное место, у каждого файла START, LENGTH, секторы, дорожка и сектор, строка автостарта бейсика, удаленные файлы тоже.
Копирование в образ (F5): файл hobeta узнается по заголовку, обычный файл получает имя и тип из своего имени (game.C - имя game, тип C). Адрес START задается в имени: game.C@24576 или game.C@#6000; без него - 16384 для экрана (6912 байт) и 32768 для остального. boot.B@10 - бейсик с автостартом с 10-й строки. Новый файл в .trd ложится после последнего файла каталога, как у TR-DOS; файлы на диске никогда не сдвигаются. Удаление (F8) в .trd только помечает файл, как TR-DOS; из .scl файл удаляется совсем. Новый образ - пустой файл с расширением .trd (80 дорожек, 2 стороны) или .scl: войдите в него и скопируйте файлы.

Особенности mc: после копирования в образ mc показывает его по памяти - чтобы перечитать, выйдите из образа и войдите снова через минуту или сразу: F9 - Command - Active VFS list - Free VFSs now. Сообщение "Cannot chmod target file" при копировании в образ безвредно: нажмите "Ignore all" или снимите "Preserve attributes".

Исходники ALASM (alasm)

F3 и Enter на файле NAME.H или NAME.$H показывают исходник ALASM 4.4x/5.0x текстом (так же, как его текстовый экспорт в самом ALASM), в том числе внутри образа .trd. F2 - l переводит отмеченные файлы в NAME.asm. Строчное .h - заголовок C, его плагин не трогает.

Упаковщики (zx0, hrust, hrum)

F2  j  ZX0: pack             game.C    ->  game.z_C    (как в Quick Commander 3.20)
                             game.scr  ->  game.scr.zx0
    J  ZX0: unpack           game.z_C  ->  game.C
    u  Hrust: pack           game.C    ->  game.p_C    (как h в Quick Commander 3.11)
    O  Hrust: pack (oh2c)    game.C    ->  game.p_C    (самый короткий блок)
    N  Hrust: unpack         game.p_C  ->  game.C
    k  Hrum: pack            game.C    ->  game.C.hrm  (самораспаковывающийся блок)
    K  Hrum: unpack          game.C.hrm -> game.C
F3  на .zx0, .z_?, .p_?, .hr2, .hrm  -  распакованные данные (hex, F4 - текстом)
Пункты меню работают с отмеченными файлами, а если их нет - с текущим. Существующие файлы не перезаписываются; если что-то не вышло, плагин пишет почему и ждет Enter (вывод - по Ctrl-O). zx0 пакует байт в байт как оригинальный zx0 2.2, hrust - как QC 3.11 или как oh2c, hrum - как hrum35 1.1b. Имена с типом после "_" (game.z_C, game.p_C) - стандарт Quick Commander'а: скопированный на диск файл QC распакует командой U в game.C. Hrum спрашивает адрес блока, адрес распаковки, переход после нее и число нулей в конце (ответ "-" - по умолчанию: #6000, #6000, возврат по RET). Меню mc работает только в обычных папках, не внутри образов: скопируйте файл из образа (F5) и работайте с копией.

Тексты cp866 (cp866)

F2 - v показывает текст в cp866 (DOS, русский Спектрум) с русскими буквами; F2 - V пишет рядом NAME.utf8.txt, F2 - W - обратно в cp866 (NAME.cp866.txt, с концами строк CR LF, как в текстах для Спектрума). Концы строк CR (Спектрум) и CR LF (DOS) понимаются оба. Если в тексте UTF-8 есть знак, которого нет в cp866, файл не пишется, а программа называет строку и колонку этого знака.

Командная строка (Command line)

Все программы работают и без mc: trdos list/catalog/copyout/copyin/rm, zx0 [-d], hrust [-o] [-d], hrum [-d], alasm, cp866 [-r]. Подробности и все ключи - в README.md каждого плагина.