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

User Tag List

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

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

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Super Moderator Аватар для Ewgeny7
    Регистрация
    03.07.2005
    Адрес
    Санкт-Петербург
    Сообщений
    10,168
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    76
    Поблагодарили
    51 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

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

    Народ! Где можно посмотреть схему "контроллера" IDE для Ориона?
    На "orion-z" картинка накрылась медным тазом...
    ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
    Speccy-2007 128/AY/TR-DOS

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

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

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

    По умолчанию

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

  4. #3
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    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

  5. #4
    Tim0xA
    Гость

    По умолчанию

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

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

  6. #5
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    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 в 12:35. Причина: Добавлено сообщение
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  7. #6
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    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 в 18:46. Причина: Управление вложениями
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  8. #7
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    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 в 18:47. Причина: Управление вложениями
    Лучше сделать и жалеть, чем не сделать и жалеть.

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

  9. #8
    Master
    Регистрация
    10.02.2014
    Адрес
    г. Тула
    Сообщений
    538
    Спасибо Благодарностей отдано 
    47
    Спасибо Благодарностей получено 
    42
    Поблагодарили
    29 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Залить образ 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: должна показывать наличие двух СРМ партиций
    Попробовал залить образ games.ohi на Compact Flash карточку 256МБ через китайский CardReader. Ничего не получилось, система пишет отказано в доступе. Консоль запускал от имени администратора. С чем это может быть связано, и как можно получить доступ к диску?

    ps: в Windows штатными средствами на карту все пишется и стирается с нее.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	Write failed.jpg 
Просмотров:	233 
Размер:	81.6 Кб 
ID:	55744  
    Последний раз редактировалось Дмитрий2012; 28.01.2016 в 12:37.

  10. #9
    Moderator Аватар для Mick
    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    9,911
    Спасибо Благодарностей отдано 
    177
    Спасибо Благодарностей получено 
    695
    Поблагодарили
    368 сообщений
    Mentioned
    19 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А исходные тексты к рулению HDD или чего там еще есть? А то может и для ПК8000 портировать получится.
    Последний раз редактировалось Mick; 08.03.2009 в 11:39.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  11. #10
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

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

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

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

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

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

Похожие темы

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

Ваши права

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