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

User Tag List

Страница 1 из 4 1234 ПоследняяПоследняя
Показано с 1 по 10 из 31

Тема: Партнер 01.01: модуль SD карты

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Member Аватар для hitomi2500
    Регистрация
    05.10.2018
    Адрес
    г. Москва
    Сообщений
    172
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    33
    Поблагодарили
    10 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Партнер 01.01: модуль SD карты

    Здравствуйте.

    В этой теме я долгими зимними вечерами буду неторопливо разрабатывать модуль SD карты для Партнёра. Это не закрытый лог разработки, здесь приветствуются дополнения, предложения, замечания, конструктивная и не очень критика, словом всё, что не противоречит правилам форума и хоть немного относится к теме. Статус разработки я буду выносить в первое сообщение по мере развития проекта.

    --------------
    Текущий статус:

    Нарисована первая версия схемы в виде голого переходника на китайскую плату от ACELEX, почти разведена плата (осталось перерисовать разъём на 2.5 вместо 2.54 плюс мелкие проверки). Когда приедет китаец, проверю на распечатке и запущу в производство.
    ---------------

    Общие положения, которых я собираюсь придерживаться:

    0) Интерфейс а-ля им. Морозова для Апогея/РК/Специалиста с небольшими изменениями и дополнениями.

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

    2) Поддержка DMA-передач в ОЗУ по каналам 0 и 1 ВТ57 и в ВГ75 по каналу 2 ВТ57.

    3) Режимы ланчера (копирование файла в память и запуск) и если хватит сил эмулятора ГМД (выбор образа и дальнейшая эмуляция модуля ГМД с приводом)

    4) Готовая китайская плата с STM32F407VET6, устанавливаемая бутербродом на мою плату с СПН58. В теории для сокращения цены можно потом перейти на китайскую плату подешевле.
    Последний раз редактировалось hitomi2500; 21.11.2018 в 15:19.

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

  3. #2
    Member Аватар для hitomi2500
    Регистрация
    05.10.2018
    Адрес
    г. Москва
    Сообщений
    172
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    33
    Поблагодарили
    10 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Купил вот такую плату


    На плате уже есть слот для карты, почти все ноги толерантны к 5 В , так что плата-переходник получается пока вообще пустой. Набросал схему переходника, начинаю потихоньку разводить.

    Поступило предложение использовать SDOS от Ориона/Специалиста. Насколько я понимаю, она сама заведует FAT и работает напрямую с картой по SPI. И тут есть варианты - либо отдать ей всю карту, либо эмулировать SPI-интерфейс карты, и хранить её образ на настоящей карте. Есть ещё конечно извращения типа парсинга файловых операций SDOS и замены их на файловые операции на настоящей карте, но я пока не уверен что это будет просто реализовать. Начну с отдачи карты целиком, а там как пойдёт. В любом случае, режим SDOS не будет единственным, поскольку хочется FAT32 и DMA.

  4. #3
    Member Аватар для hitomi2500
    Регистрация
    05.10.2018
    Адрес
    г. Москва
    Сообщений
    172
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    33
    Поблагодарили
    10 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот такая вот буква П :



    Помню раньше из таких пластин сердечники трансформаторов делали.

  5. #4
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,852
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    235
    Поблагодарили
    171 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hitomi2500 Посмотреть сообщение
    Помню раньше из таких пластин сердечники трансформаторов делали.
    Там не П, там Ш

  6. #5
    Member Аватар для hitomi2500
    Регистрация
    05.10.2018
    Адрес
    г. Москва
    Сообщений
    172
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    33
    Поблагодарили
    10 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Там не П, там Ш
    Ш конечно были мэйнстримом, но П, Г и О тоже встречались

  7. #6
    Activist
    Регистрация
    20.11.2017
    Адрес
    г. Ростов-на-Дону
    Сообщений
    351
    Спасибо Благодарностей отдано 
    30
    Спасибо Благодарностей получено 
    86
    Поблагодарили
    50 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот вариант SDOS, собранный для Партнера, Новый конфиг я не создавал, а сделал правки в конфиге РК-86, в части добавки нужного спец заголовка в бинарнике для ПЗУ, замены расширения RKR на RKP в автоподстановщике расширения и правки под адресное пространство Партнера (8й конфиг), как я их понял. Эта версия без записи, для записи надо еще ~300 байт, пока не пойму как их подключить в 8й концигурации.
    Не пойму с форматом спец заголовка, как убрать автозапуск ПЗУ? из-за этого, не работает директива 'Х' в SDOS - выход в монитор, происходит автозапуск, и опять попадаем в SDOS .
    Во вложении, конфигурационный файл для b2m, файл образа SD и исходники.
    Вложения Вложения

  8. #7
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,852
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    235
    Поблагодарили
    171 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от PVV Посмотреть сообщение
    Не пойму с форматом спец заголовка, как убрать автозапуск ПЗУ?
    Нет тот вектор используешь, там должна быть ссылка на обработчик функций (номер которой в регистре А передаётся). По сбросу все модули инициализируются (номер этой функции 0). А вот запуск основной программы модуля по директиве Е<номер модуля> происходит по адресу, который указывается двумя байтами ранее.

    - - - Добавлено - - -

    Цитата Сообщение от PVV Посмотреть сообщение
    Эта версия без записи, для записи надо еще ~300 байт, пока не пойму как их подключить в 8й концигурации.
    Судя по конфигу, чтобы отключить ПЗУ биоса, нужно включить карту номер 3 (или 4,5, но там ОЗУ меньше).

  9. #8
    Activist
    Регистрация
    20.11.2017
    Адрес
    г. Ростов-на-Дону
    Сообщений
    351
    Спасибо Благодарностей отдано 
    30
    Спасибо Благодарностей получено 
    86
    Поблагодарили
    50 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Нет тот вектор используешь, там должна быть ссылка на обработчик функций (номер которой в регистре А передаётся). По сбросу все модули инициализируются (номер этой функции 0). А вот запуск основной программы модуля по директиве Е<номер модуля> происходит по адресу, который указывается двумя байтами ранее.
    Да, увидел, что на смещении 6 и 7 должен быть вектор некоего стартового кода, но что там должно делаться, и что должно возвращаться? и, похоже, там до смещения 16 это все некие вектора... а нет более подробного описания, что там должно быть?
    ===========
    15й маппер меня, тоже, смутил, выстрел в ногу? туда попали и возврата нет?

  10. #9
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,852
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    235
    Поблагодарили
    171 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от hitomi2500 Посмотреть сообщение
    DF00-DFFF ?? (что-то связанное с DMA?)
    На схеме это называется SEL INT L. По аналогии с выбором слота SEL SLOT L, можно предположить, что это должно было отвечать за выбор источника прерываний (т.е. разрешение прерываний от соответствующего биту модуля).

    Цитата Сообщение от PVV Посмотреть сообщение
    там до смещения 16 это все некие вектора... а нет более подробного описания, что там должно быть?
    Описания нет, судя по монитору там такой расклад:

    0-1 сигнатура pr
    2 идентификатор модуля (43h - МЦПГ, 44h - КНГМД)
    3 неизвестно, обычно ноль
    4-5 адрес запуска по директиве Е
    6-7 адрес обработчика функций модуля (номер функции в регистре А: ноль - инициализация модуля, вызывается после сброса)
    8-9 ещё какой-то вектор
    10-11 ещё какой-то вектор
    12 - байт FF, если не используется (для чего используется, пока не выяснил)

    Если вектор не используется, стоит адрес 0FFFEh, по этому адресу в мониторе стоит RET.

    Функции модуля можно вызывать из монитора директивой Va,b,c:
    a - первый параметр, передаётся в DE, но обычно первой же командой обработчика переносится в HL
    b - номер функции (старший байт) и идентификатор модуля (младший байт). Модуль может стоять в любом слоте, выбор происходит по уникальному идентификатору модуля.
    с - второй параметр, передаётся в BC

    Кое-что о функциях есть в описании МЦПГ.

  11. #10
    Activist
    Регистрация
    20.11.2017
    Адрес
    г. Ростов-на-Дону
    Сообщений
    351
    Спасибо Благодарностей отдано 
    30
    Спасибо Благодарностей получено 
    86
    Поблагодарили
    50 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Все, что я знаю о Партнере, взято здесь, и у меня такое чувство, что на самом деле все далеко не так... Посмотрел в отладчике, в какой конфигурации идет инициализация в мониторе, и оказалось, что 2, а не 8, как по ссылке. , значит область mem3, что я ввел, вообще не задействуется. Однако, в целом, как будет себя вести SDOS в Партнере понятно.

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

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

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

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

Похожие темы

  1. Партнер 01.01: Обсуждение
    от XobbiMan в разделе Радио-86РК
    Ответов: 206
    Последнее: 19.09.2023, 23:53
  2. Партнер 01.01: Дополнительные модули
    от DMG в разделе Радио-86РК
    Ответов: 103
    Последнее: 15.07.2023, 04:05
  3. Партнёр 01.01: Ремонт
    от CodeMaster в разделе Радио-86РК
    Ответов: 13
    Последнее: 18.10.2021, 10:02
  4. Эмулятор Партнёр-01.01
    от TWN в разделе Эмуляторы отечественных компьютеров
    Ответов: 15
    Последнее: 09.03.2015, 22:06
  5. Куплю Партнер 01.01
    от LeBohdan в разделе Барахолка (архив)
    Ответов: 11
    Последнее: 12.07.2010, 12:57

Ваши права

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