Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: ASC CP/M (живая)

  1. #1
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,055
    Спасибо Благодарностей отдано 
    219
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    Thumbs up ASC CP/M (живая)

    Многие на форуме уже слышали о существовании ASC CP/M, то есть версии CP/M, адаптированной для ZX Spectrum Андреем Сендецким (ASC) и Александром Шафиром (ASH), Днепропетровск.

    ASC CP/M примечательна тем, что имеет относительно низкие требования к аппаратным переделкам. Необходимо только добавить 16Кб памяти по адресам 0000-3FFF, и открыть порты Beta-Disk, в минимальной конфигурации. Дополнительные видеорежимы не требуются, все работает на стандартном экране.

    Также ASC CP/M, на мой взгляд, эффективно реализует потенциал возможностей компьютера, делая работу с CP/M приложениями удобной и приятной. Система сослужила мне хорошую службу в 1994-1997гг, когда Spectrum был моим основным и единственным рабочим компьютером. Написание и отладка программ, редактирование текстов - все это под CP/M делалось значительно эффективнее, чем под TR-DOS или IS-DOS с доступным на то время софтом.

    После некоторых плясок с бубном мне удалось восстановить образ диска ASC CP/M с утилитами в формате .td0, который может быть запущен под модифицированным эмулятором Unreal, реализующим схему LSY-256. Под этой конфигурацией я работал в 1994-96гг.

    Диск cpm256.td0 является загрузочным, т.е. CP/M стартует с него. Для корректной работы загрузчика и драйвера дисков CP/M необходимо включить эмуляцию задержек ВГ93. На диске содержатся утилиты, которые ASC поставлял в составе своей дистрибуции CP/M. В дистрибуцию входил еще один диск "DOCS" с документацией. Так как перевод файлов в образы формата ASC CP/M сопряжен с некоторыми трудностями, а документацию можно читать и на PC, то публикую просто файлы с этого диска в отдельном архиве.

    Привожу также базовую информацию, необходимую для работы с ASC CP/M.

    1) Логические дисководы. В ASC CP/M логические диски не соответствуют физическим дисководам напрямую. Принято следующее соглашение:

    A: - RAM-disk. Под него задействована вся расширенная память, к которой CP/M-приложения не имеют доступа. В силу специфики CP/M именно "A:" предпочтительно использовать под рам-диск.

    B: - дисковод 0 в оригинальном формате ASC CP/M (5 секторов на дорожке по 1Кб каждый)

    C: - дисковод 0 в неизвестном мне формате (какой-то другой распространенный формат CP/M)

    D: - дисковод 0 в формате CP/M ATM (16 секторов на дорожке по 256б каждый). Удобно использовать для перегонки файлов в CP/M ATM и обратно. Также можно использовать образы дисков в формате .trd. Недостаток - мало места на диске (640Кб вместо ~800Кб)

    E: - дисковод 1 в формате AMS. Использовался ASC для подготовки дисков ASC Music Show (AMS). Можно подключить образ AMS1 или AMS2, которые я публиковал ранее на форуме, и просмотреть их содержимое.

    F: - дисковод 1 в оригинальном формате ASC CP/M

    G: - ???
    H: - ???

    ---
    2) Клавиатура. По моей просьбе ASC дал мне исходник своего драйвера клавиатуры (azkeyb.mac), на основе которого я сделал драйвер клавиатуры "Орель БК-08" под CP/M (mzkeyb.mac), который ASC впоследствии встроил в билд системы. Драйвер использует дополнительные возможности клавиатуры "Орель БК-08", которые сносно эмулируются прилагаемой версией Unreal. Большинство клавиш срабатывают как интуитивно задумано. Полное описание возможностей и режимов azkeyb и mzkeyb находится в прилагаемых фалах.

    ---
    3) Утилиты. В дистрибуции имелось несколько необычных, оригинальных или переименованных утилит, краткое описание которых привожу здесь.

    azfor.com - форматирование дисков в формате ASC CP/M. Если запустить эту утилиту под Unreal - то можно получить работающий образ диска в формате .td0 (спасибо, Alone, за большой труд!)

    b.com - бейсик-80

    copy.com - копировщик файлов by Alexander Shafir, который позволяет копировать файлы, имея только один дисковод. Обычно под CP/M такое невозможно, и CP/M-системы обычно имели по два дисковода.

    d.com - вывод каталога и свободного места на диске

    fcopy.com - быстрое копирование файлов на диск A: by Alexander Shafir. Предназначена, главным образом, для загрузки на RAM-диск нужных для работы файлов при старте CP/M, так как при старте CP/M сразу же вызывается команда fcopy *.* 1. В CP/M файлы имеют 8 пользовательских атрибутов, по которым можно задать для fcopy файлы, которые следует скопировать. Так, например, команда по умолчанию копирует все файлы с установленным атрибутом 1. Установить атрибуты можно с помощью P.COM. fcopy старается минимизировать число перемещений головки по диску, чтобы ускорить копирование.

    l.com - компоновщик фирмы Digital Research. ASC и я использовали именно его для своих проектов.

    lzcom.com - упаковщик исполняемых файлов под CP/M by ASC & A. Shafir. При работе требует много памяти, поэтому обращается мимо стандартных средств CP/M к расширенной памяти. Уничтожает содержимое RAM-диска. Распаковщик же упакованных файлов не используют никаких нестандартных средств, поэтому такие файлы запускаются в любой CP/M-системе.

    m.com - ассемблер M80. Данная версия была модифицирована ASH чтобы директива DEFB пропускала символы с установленным битом 7, т.е. русские буквы и псевдографику.

    p.com - Power

    s.com - Submit

    t.com - "ASH Dysplay Demo". Простая программка, отправляющая все введенные с клавиатуры коды на экран. Полезна для изучения возможностей драйверов клавиатуры и экрана.

    v.com - VEdit. Очень мощный редактор. Требует некоторого времени на изучение консольных команд и комбинаций клавиш, но уж когда изучить - то работать становится песней.

    w.com - тоже VEdit, но для режима 64 символов в строке.

    zs.com - программа для загрузки образов ПЗУ для эмуляции в конфигурации расширения 256К by Alexander Shafir. Так как моя схема была несовместимой с шафировской, то эту программу так и не довелось использовать.

    movcpm.com - моя утилита для воспроизводства загрузочных дисков ASC CP/M. В качестве аргумента принимает имя файла с образом системы. Имеются два таких образа: cpm256.sys - конфигурация LSY-256 с драйвером клавиатуры "Орель БК-08"; и cpm144.sys - оригинальная конфигурация с 144К памяти и клавиатурой ZX Spectrum +2, которой ASC пользовался сам.

    trdos.com - копирование файлов CP/M <-> TR-DOS

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

    Надеюсь, будет интересно! Если появятся вопросы - задавайте.
    Вложения Вложения

  2. Этот пользователь поблагодарил Barmaley_m за это полезное сообщение:

    zorel (14.06.2020)

  3. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #2
    Master Аватар для Djoni
    Регистрация
    20.02.2005
    Адрес
    Новосибирск
    Сообщений
    941
    Спасибо Благодарностей отдано 
    707
    Спасибо Благодарностей получено 
    52
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А можно поподробней рассказать про компьютер LSY-256 архитектура ,порты управления памятью и пзу.

    Диски ASC CP/M читаются под CP/M Profi , нужно выполнить команду в консоли для дисковода A:

    > O A:4
    Каталог дискет ASC находится на 4 цилиндре.

    Беглый просмотр показал что программы работают под Profi

    Утилита ZX Disk Studio почему та ругается на образы дискет созданные
    модифицированным эмулятором Unreal.

    В архиве правленый образ cpm256.fdi и cpm256.PRO для просмотра утилитой ATM CP/M Explorer.

    https://yadi.sk/d/xIMabGT5TBZkF

    Скрытый текст

    Profi v5.03/1024k/палитра/FDD3,5""/FDD5,25"/HDD/XT-Keyb/Covox
    Pentagon-1024 sl v 1.4 upgrade #EFF7 Gluk RTC
    ZXM-Phoenix 1024k
    ATM Turbo 2+ v7.10 512k
    HIMAC HR42.04 48K
    HIMAC 128
    Ленинград 1
    [свернуть]

  5. #3
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,055
    Спасибо Благодарностей отдано 
    219
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Djoni Посмотреть сообщение
    А можно поподробней рассказать про компьютер LSY-256 архитектура ,порты управления памятью и пзу.
    Схема и описание опубликованы на форуме здесь. Дополнительная информация имеется тут, тут, тут, тут и тут. Если лень читать, вот кратко основные сведения:
    - базовая схема - "Орель БК-08". Расширенная клавиатура, кнопка NMI и все остальные известные особенности этого клона.
    - 256К ОЗУ, из которых 128К подключены по стандартной схеме. Дополнительные 128К отображаются по адресам C000-FFFF; некоторые из дополнительных страниц доступны в качестве теневого ОЗУ либо эмуляции ПЗУ по адресам 0000-3FFF.
    - один порт расширения с адресом 7Bh, в нем имеется 4 бита:
    bit 0 - DV0 (выбор одной из двух страниц теневого ОЗУ)
    bit 1 - BLKROM (блокировка ПЗУ и включение теневого ОЗУ либо эмуляции ПЗУ)
    bit 3 - EMUL (включение режима эмуляции ПЗУ, также включение стандартных прошивок ПЗУ либо LSY-Setup)
    bit 4 - PA3 (старший бит номера страниц по адресам C000-FFFF)
    - реализовано чтение из порта 7FFD
    - порты контроллера дисковода всегда открыты для доступа из любой программы

  6. #4
    Master Аватар для Djoni
    Регистрация
    20.02.2005
    Адрес
    Новосибирск
    Сообщений
    941
    Спасибо Благодарностей отдано 
    707
    Спасибо Благодарностей получено 
    52
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    Схема и описание опубликованы на форуме здесь. Дополнительная информация имеется тут, тут, тут, тут и тут. Если лень читать, вот кратко основные сведения:
    - базовая схема - "Орель БК-08". Расширенная клавиатура, кнопка NMI и все остальные известные особенности этого клона.
    - 256К ОЗУ, из которых 128К подключены по стандартной схеме. Дополнительные 128К отображаются по адресам C000-FFFF; некоторые из дополнительных страниц доступны в качестве теневого ОЗУ либо эмуляции ПЗУ по адресам 0000-3FFF.
    - один порт расширения с адресом 7Bh, в нем имеется 4 бита:
    bit 0 - DV0 (выбор одной из двух страниц теневого ОЗУ)
    bit 1 - BLKROM (блокировка ПЗУ и включение теневого ОЗУ либо эмуляции ПЗУ)
    bit 3 - EMUL (включение режима эмуляции ПЗУ, также включение стандартных прошивок ПЗУ либо LSY-Setup)
    bit 4 - PA3 (старший бит номера страниц по адресам C000-FFFF)
    - реализовано чтение из порта 7FFD
    - порты контроллера дисковода всегда открыты для доступа из любой программы
    Спасибо,буду изучать

    Скрытый текст

    Profi v5.03/1024k/палитра/FDD3,5""/FDD5,25"/HDD/XT-Keyb/Covox
    Pentagon-1024 sl v 1.4 upgrade #EFF7 Gluk RTC
    ZXM-Phoenix 1024k
    ATM Turbo 2+ v7.10 512k
    HIMAC HR42.04 48K
    HIMAC 128
    Ленинград 1
    [свернуть]

  7. #5
    Member
    Регистрация
    08.10.2005
    Адрес
    Днепропетровск
    Сообщений
    178
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А какие номера страниц теневого озу втыкать на 0-3fff?

    ---------- Post added at 23:38 ---------- Previous post was at 23:33 ----------

    Интересный феномен, пол часа листал форум, ничего в упор не видел... Только задал вопрос и сразу все само собой нашлось.

  8. #6
    Guru Аватар для Vadim
    Регистрация
    24.07.2008
    Адрес
    г. Курган
    Сообщений
    2,062
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Система эта заработает на Орель-08 с BDI? Или на BDI нужно будет делать изменения для доступа к портам?

    Скрытый текст

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  9. #7
    Member
    Регистрация
    08.10.2005
    Адрес
    Днепропетровск
    Сообщений
    178
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    на BDI нужно открыть порты, чтобы были видны не только в TRDOS. У меня контроллер дисковода на ПЛИСЕ, поэтому решилось(решается))) все квартусом и бластером.

  10. #8
    Member
    Регистрация
    08.10.2005
    Адрес
    Днепропетровск
    Сообщений
    178
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сделал реализацию LSY-256 архитектуры на ПЛИС (за исключением эмуляции ПЗУ). Загружается CPM, первый писк, потом второй, появляется табличка из двух половинок. И все. Нижняя часть таблицы, где в эмуляторе параметры дисководов выводятся - пустая. При нажатии на кнопки - слышны шелчки... Куда копать? Что этой CPM не нравится?

    ---------- Post added at 22:36 ---------- Previous post was at 22:33 ----------

    Последнее значение в порту 7B - 226, 11100010b. Судя по описанию не должна эмуляция использоваться... Подскажите если кто знает!
    Последний раз редактировалось kasper; 22.08.2014 в 00:52.

  11. #9
    Member
    Регистрация
    08.10.2005
    Адрес
    Днепропетровск
    Сообщений
    178
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я все сделал, правильно но ничего не работает(((. Перестает загружаться в том месте где в эмуляторе очень шустро начинают перебираться дорожки... Может дело в контроллере дисковода? Или криво написан драйвер диска в cpm.

  12. #10
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,055
    Спасибо Благодарностей отдано 
    219
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А порты BDI у тебя открытые? Kempston Joystick (порт 1F) отключен? Если используется базовая плата "Орель БК-08" - то там необходимо отключить Kempston, удалив микросхему DD1 (К155ЛН6).

    Драйвер дисков там не очень прямой, раз в эмуляторе работает только при эмуляции задержек, но достаточно прямой, чтобы работать на реале с дисководом или в эмуляторе с задержками. Значение в порту 7B вроде правильное. Эмуляция ПЗУ в CP/M не используется. Так как затык именно при обращении к диску - то скорее всего проблема именно в портах ВГ93.

    ---------- Post added at 15:46 ---------- Previous post was at 15:44 ----------

    Цитата Сообщение от Vadim Посмотреть сообщение
    Система эта заработает на Орель-08 с BDI? Или на BDI нужно будет делать изменения для доступа к портам?
    И на BDI нужно делать изменения, и память расширять по схеме LSY-256. Можно, конечно, запустить CPM144, у нее меньше требований по переделкам, однако при этом не будут работать расширенные клавиши "Орели".

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. живая музыка (видео)
    от Orionsoft в разделе Музыка
    Ответов: 0
    Последнее: 01.06.2007, 22:23

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •