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

User Tag List

Страница 1 из 10 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 91

Тема: Орион-128: Контроллер IDE

  1. #1
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    9,451
    Благодарностей: 3797
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Орион-128: Контроллер IDE

    Народ! Где можно посмотреть схему "контроллера" IDE для Ориона?
    На "orion-z" картинка накрылась медным тазом...
    Scorpion ZS 1024 turbo+/ZXMC 2.6/SD-HDD/FDD/AT-Keyb/Mouse/SMUC 2.0/ProfROMse/VGA 3.0/NeoGS
    ZX-Evolution 4096 rev.B

    Сайт с документацией к "Scorpion ZS 256"

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

  3. #2
    Guru Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    7,805
    Благодарностей: 2833
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А исходные тексты к рулению HDD или чего там еще есть? А то может и для ПК8000 портировать получится.
    Последний раз редактировалось Mick; 08.03.2009 в 11:39.
    Сайт поддержки моих изделий - http://micklab.ru/
    Форум поддержки - http://forum.tslabs.info/viewforum.php?f=51

  4. #3
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,178
    Благодарностей: 924
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    картинку gif пока ищу
    Это не оно http://www.pjrc.com/tech/8051/ide/ ?
    Очень похоже, на то, что было, но порты A и С надо обменять местами.

  5. #4
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Это не оно http://www.pjrc.com/tech/8051/ide/ ?
    Очень похоже, на то, что было, но порты A и С надо обменять местами.
    Ага, это и есть исходная картинка. Меняем порты A и С (это пришлось сделать, чтобы дефолтные ПЗУ-шные загрузчики ORDOS не слали в IDE мусор если IDE повешен на порт F500 вместо ROM-DISK) и получаем то, что я постом ранее выложил в виде ASCII картинки:


    Добавлено через 11 минут
    Цитата Сообщение от Mick Посмотреть сообщение
    А исходные тексты к рулению HDD или чего там еще есть? А то может и для ПК8000 портировать получится.
    Все что я напрограммировал (DOS c IDE, драйвер для "сырого" доступа к HDD, порт Fat16/32) есть как в исполняемом варианте, так и в исходниках на моей страничке (оно в основном в образах дисков).
    Последний раз редактировалось Error404; 18.11.2008 в 16:33. Причина: Добавлено сообщение
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  6. #5
    Tim0xA
    Гость

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Только на ВМ80 мои программулины не заработают. Исторически предпочитаю Z80. В принципе не так сложно переделать программы на ВМ80, если кто-то займется.
    Для этой задачи Рекомпилятор "Z80->ВМ80А" будет как раз кстати. Весь процесс автоматизирован.

    Добавлено через 11 минут
    Цитата Сообщение от Error404 Посмотреть сообщение
    Ага, это и есть исходная картинка.
    К этой схеме можно подключить флешку CF? Она будет работать в качестве HDD или тут есть какие-нибудь "подводные камни"?
    Последний раз редактировалось Tim0xA; 18.11.2008 в 17:40. Причина: Добавлено сообщение

  7. #6
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Tim0xA Посмотреть сообщение
    К этой схеме можно подключить флешку CF? Она будет работать в качестве HDD или тут есть какие-нибудь "подводные камни"?
    Работает точно так же, как и HDD. Я в-основном на CF и отлаживался (с ним проще с питанием), подключая при помощи адаптера CF-IDE (купил готовый за 300р, но есть и схемы для самодельщиков - там надо 2 разъема спаять: 40 ног IDE к 50-ногому CF, схема есть у меня на странице).
    Кроме того, существуют еще и вот такие девайсы для подключения SD/MMC:
    http://www.nedopc.org/forum/viewtopic.php?t=8973
    Т.е. IDE-интерфейс штука очень полезная и что немаловажно для наших раритетов - очень простая в подключении и программировании.
    Последний раз редактировалось Error404; 11.10.2009 в 11:35. Причина: Добавлено сообщение
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  8. #7
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick
    Привет, скажи а какая у тебя поддержка под винт есть для Ориона, разбиение, форматирование - софт.
    На Орионе я решил делать так: винт разбивается на стандартные MBR-партиции - как в винде. Поддерживается 4 стандартных master-партиции. И разбитый так винт можно подключать как к PC с виндой (винда работает со своей FAT-партицией, плюс утилитами можно сдампить в образ и обратно и CP/M-партицию), так и к Ориону, который живет (грузится) в своей CP/M партиции и может монтировать другие CP/M партиции этого или второго винта.
    Под CP/M для Ориона для этого я написал утилиту fdisk.com, которая в этом стандарте (MBR-партиции) создает/удаляет партиции и файловые системы CP/M.
    Также я портировал библиотеку работы с FAT(12/16/32), написал для нее оболочку (fat.com), и на Орионе из-под CP/M можно в обе стороны пофайлово обмениваться данными с FAT-партициями винды. В отличие от fdisk.com, fat.com понимает extended партиции, т.к. WinXP для FAT-партиций более 32G по дефолту лепит extended-партицию.
    И fat.com, и fdisk.com написаны абстрактно на языке С - они не лезут напрямую ни в экран (работа идет стандартным VT-52), ни к контроллеру IDE - низкоуровневая запись/чтение 512B вынесены в отдельный драйвер (в моем случае - это IDEBDOS.COM, написанный на asm)
    Исходники во вложении этого сообщения. Я использовал компилятор HiTech C v3.09 для CP/M и макроассемблер Microsoft M80/L80.
    Последний раз редактировалось Error404; 08.08.2011 в 16:46. Причина: Управление вложениями
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  9. Эти 2 пользователя(ей) поблагодарили Error404 за это полезное сообщение:
    Mick (18.06.2009), pvlad (11.10.2009)

  10. #8
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Tim0xA
    Привет!

    [немного перефразировал]

    "... просьба поменять в проекте с хардом ориона порт с f500 на f600"
    Варианты загрузки с IDE на i8255 (580вв55) на Орионе:

    - при помощи ПЗУ F800 (один из: M35ZMSH.BIN, M35ZRKH.BIN, M36ZMSH.BIN, M36ZRKH.BIN - см. ROM_IDE.ZIP во вложении). ПЗУ при включении питания вместо ORDOS сразу грузит MBR-сектор с master-IDE в ОЗУ по адресу 1:0000 (т.е. с начала второй физической страницы памяти) и передает туда управление. M35* работают с IDE с портoм 0F500h, M36* - с портoм 0F600h. Суффикс *RK* обозначает прошивку для клавиатуры RK-86, *MS* - для клавиатуры МС7007 по лениградской схеме.
    - Вариант загрузки из ORDOS. ПЗУ F800 при этом может быть любым. ПЗУ F800 грузит ORDOS и передает ей управление. Под ORDOS используйте утилиту HddF600$.ord (ее можно прошить в ROM-DISK - см. IDEF600.ZIP во вложении), которая использует загрузчик, полностью аналогичный Мониторам, но корректирующий в загружаемом с IDE-F600 коде MBR-загрузчика и BOOT-сектора CPM все вызовы адреса 0F834h (это подпрограмма чтения с IDE 512-байтного сектора в Мониторах М3*H.BIN) на вызов своей подпрограммы, которая читает с HDD, но не с порта F500, а с F600.

    Дальнейшая загрузка происходит так, как написан MBR (в настоящее время он позволяет грузиться по выбору с любого из 4-х primary разделов master-HDD, где есть загрузочный образ CPM. Выводится меню - список меток_дисков [offset +20h] соотвествующих разделов). MBR (а далее и BOOT-сектор раздела) используют п/п 0F834h (или п\п предоставляемую HddF600$.ord), которая в числе прочих параметров возвращает и базовый адрес ППА IDE. Далее этот адрес передается в CPM как базовый адрес порта IDE (F500/F600/...) и ядро CPM само себя соответствующе корректирует. Т.е. не важно какой адрес порта IDE будет передан из MBR\BOOT (он может даже не быть F500/F600, а быть, к примеру, F567).

    В качестве образа диска для загрузки с IDE рекомендую диск с игрушками (на нем более-менее свежая [читай работоспособная] версия ОС с поддержкой IDE, в архиве есть readme), да и лучшего теста для Z80CardII чем игры - не придумать :
    http://orion-z.hoter.ru/335/5480_games2.zip

    В силу вышеописанного алгоритма работы, корректировать ОС для работы на порту, отличном от F500 не надо, все корректировки адреса ППА IDE надо делать только в Мониторе (ПЗУ F800) или HddF600$.ord. Некоторые CP/M утилиты, к примеру fat.com, fdisk.com, которым необходимо лезть к IDE "напрямую", т.е. мимо CPM, работают с IDE через драйвер IDEBDOS.COM. Этому драйверу при старте можно в командной строке передать параметры, в т.ч. и номер порта IDE. Например:
    IDEBDOS port:f600

    Залить образ HDD на реальный IDE-диск под Windows можно утилитой HddUtil.exe:
    http://orion-z.hoter.ru/file/355/4538_HddUtil.zip

    Утилита консольная (т.е. запускать из CMD - оно напишет подсказку). Я ее тестировал на чтении/заливке образов с/на как реальных винтов (подключенных к IDE материнской платы), так и для CompactFlash в обычном китайском USB-адаптере (CardReader). Например, чтобы записать образ GAMES.OHI на hdd, установленный в системе вторым, надо выполнить примерно такое:
    hddutil c:\temp\games.ohi 1: /c=131072
    На вопрос ответить "Yes". После завершения счетчика записанных секторов hddutil сообщит "Complete", что означает, что все записалось.
    После записи образа, команда
    hddutil /list
    для привода 1: должна показывать наличие двух СРМ партиций
    Последний раз редактировалось Error404; 08.08.2011 в 16:47. Причина: Управление вложениями
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  11. Эти 2 пользователя(ей) поблагодарили Error404 за это полезное сообщение:
    Ewgeny7 (10.08.2009), pvlad (11.10.2009)

  12. #9
    Moderator Аватар для Error404
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    3,750
    Благодарностей: 1014
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    А исходные тексты к рулению HDD или чего там еще есть? А то может и для ПК8000 портировать получится.
    Выкладываю исходники CPM с поддержкой HDD. Основная часть (все что кроме HDD) делалась давно (примерно 1995г), структурно я многое с позиции сегодняшнего опыта сделал бы по-другому. Но переделывать это сейчас - не вижу смысла: нет пользователей, а оно и так нормально работает. Покрайней мере это единственная версия CPM на Орионе, где кроме всего прочего централизованно поддерживается расширенное ОЗУ и прерывания (ну и HDD c MBR схемой партиций).
    -
    В-общем, в помощь желающем поковыряться в чужом коде (чтобы не заморачиваться с дизассемблером). Указания на ошибки и советы по оптимизации кода (уменьшении размера кода или по быстродействию) приветствуются.
    И это, "не стреляйте в пианиста - он играет как умеет".
    Последний раз редактировалось Error404; 08.08.2011 в 16:48. Причина: Управление вложениями
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  13. Эти 3 пользователя(ей) поблагодарили Error404 за это полезное сообщение:
    Mad Killer/PG (07.03.2011), Mick (11.10.2009), pvlad (11.10.2009)

  14. #10
    Activist
    Регистрация
    18.09.2009
    Адрес
    г.Ногинск, МО
    Сообщений
    246
    Благодарностей: 73
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Выкладываю исходники CPM с поддержкой HDD
    Я так и не понял: есть ли вариант СР/М, которая базируется на ММС/SD?
    Если ты чего-то не знаешь, то это не значит, что этого не может быть.

Страница 1 из 10 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 249
    Последнее: 30.01.2017, 09:47
  2. ОРИОН 128-продам
    от Nordic в разделе Барахолка (архив)
    Ответов: 23
    Последнее: 23.03.2009, 07:54
  3. продам Орион-256
    от Иван Лебедев в разделе Барахолка (архив)
    Ответов: 14
    Последнее: 17.03.2009, 14:42
  4. Снова Орион
    от AlexBel в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 26.09.2007, 08:06
  5. Орион-128
    от AlexBel в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 25.09.2007, 18:40

Ваши права

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