MSX в proteus

MSX-совместимые компьютеры

Moderator: Shaos

PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Вот так выглядит Nextor FDISK, работающий с SD картой и маппером sunrise :rotate:
Nextor_fdisk.png
во вложении файлы для emu и исходник драйвера SD для Nextor. Исходник я не оптимизировал, просто как есть. Там надо хорошо продумать функцию чтения и записи секторов, а то уж слишком неопримально все получилось, но для начала, первой версии, пойдет.

Дальше буду пробовать сделать маппер на IOport 0xb2, и проверять в протеусе, если все ок, то дальше проверять в железе.
You do not have the required permissions to view the files attached to this post.
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

PVV wrote:Nextor проблем нет, можно его сделать с IDE от BeerIDE, только маппер прикрутить какой нить :) (to Alekcandr: нет желания на железе испытать?)
Мне все интересно :) , но банально не хватит времени.

Пришли платки на модуль контроллера дисковода TDC-600, надо собирать. Еще решил попробовать процессор Z280, платы в пути. Ну и Sunrise IDE надо тоже. Но, пожалуй я его первый раз буду собирать в классике, только переделаю под свой формат плат.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

Тут снова увлекся (черт дернул) GAL в разрезе Sunrise IDE. Оказывается допотопная утилюха от OPAL разбирает *.jed по косточкам. И самое интересное собирает снова даже с PTD ф’юзами. Добиться от современных подолий я такого не смог.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Вообщем переделка маппера Sunrise на IOport, практически, заключается в замене трех байт в функции переключающей банки:

Code: Select all

  
  0000'                 CHGBNK::
  0000'   C5              push  bc
  0001'   CB 3F           srl a
  0003'   CB 10           rl  b
  0005'   CB 3F           srl a
  0007'   CB 10           rl  b
  0009'   CB 3F           srl a
  000B'   CB 10           rl  b
  000D'   CB 3F           srl a
  000F'   CB 10           rl  b
  0011'   CB 3F           srl a
  0013'   CB 10           rl  b
                        
  0015'   78              ld  a,b
  0016'   C1              pop bc
  0017'   07              rlca
  0018'   07              rlca
  0019'   07              rlca
  001A'   E6 F8           and 11111000b
                        
; 001C'   32 4104         ld  (4104h),a
  001C'   D3 B2           out (0B2h),A
  001E'   00              nop
  001F'   C9              ret
                        ;
  0020'                   defs  (8000h-7FD0h)-($-CHGBNK),0FFh
                        ;
                          end
Так что пропатчить имеющееся ПО под маппер Sunrise, проблем не составит.
You do not have the required permissions to view the files attached to this post.
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Проверил работу IOport маппера в протеусе, все работает!
msx2_Nextor_SD_b2.PNG
Хотя в начале проблема возникла. Карта на запросы cmd9 и cmd10 отвечает не сразу, как в emu, а с паузой, выдавая FF при чтении, и только когда она готова отвечать, выдает FE и затем свой ответ. Пришлось добавить ожидание FE, после чего все заработало как надо.
Во вложении проект протеуса. Схема маппера сделана таким образом, что бы использовать ПЗУ на 256К, но тк в протеусе нет такой модели, я ее сейчас модифицировал под 3 ПЗУ по 64К.
You do not have the required permissions to view the files attached to this post.
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

PVV, интересно что продвинулось, дальше с вашей MSX платой?
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Отвлекся я на другие вопросы, и с этим проектом притормозил, но не забросил!
Пока теоретизирую, переделал схему под маппер Nextor и заодно, решил ОЗУ до 256КБ расширить, дабы полностью использовать возможности ИР26. Пока решал как два лишних корпуса dip16 разместить на макетке, мне коллега с zx-pk, L Juriy, подсказал интересную схему SD интерфейса в том проекте. Я эту схему в протеусе смоделировал, все работает! Получается из моей схемы надо удалить корпуса ЛЕ1, ЛА3 и ТМ2 и поставить одну ЛЕ4. ЛЕ4 в прошлые выходные как раз прикупил, буду проверять все на макетке. И тут как раз два места на макетке появится свободных, вот и решение для размещения корпусов для маппера Nextor (dip14, правда, но это уже не проблема).

Во вложении очередная 'промежуточная' схема моей макетки, которую опять придется изменять под новый SD интерфейс и схема из протеуса с этим новым вариантом SD интерфейса.

На схеме макетки не удалены две ОЗУ 62256(U43,U44), их, естественно, нет.
На схеме нового SD интерфейса я добавил промежуточную защелку данных с карты на ТМ2, которой нет в оригинале, если без нее SD будет работать стабильно, то еще весь корпус ТМ2 можно будет выбросить, перебросив CS_SD на ТМ8 маппера Nextor.
You do not have the required permissions to view the files attached to this post.
Last edited by PVV on 31 May 2019 12:53, edited 1 time in total.
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

У меня так оригинальная схема Sunrise IDE и не завелась должным образом. Где-то тайминги косячат. ЛА уже приехал. Сейчас продумываю как цивильно проводки подключать. Видимо, надо платку у китайцев заказать, что-то типа такого планирую.

Image
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

PVV, не тестировали ваши SD-контроллеры на вопрос скорости кБ/с?
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Alekcandr wrote:PVV, не тестировали ваши SD-контроллеры на вопрос скорости кБ/с?
Специальные тесты не проводил, но вот здесь была оценка скорости загрузки. Сейчас именно процессор тормозит передачу, а не интерфейс, по интерфейсу запас приличный еще есть. Эксперименты в протеусе показывали, что 2Мгц такт на SD уже достаточно для ВМ80 в Специалисте, что бы не ждать завершения вычитки байта. Т.е., условно говоря при такте процессора равным такту SD, это максимум скорости обмена. Однако, если немного модернизировать интерфейс, похоже можно скорость поднять еще в 2 раза. Исключить при чтении операцию холостой записи, для инициации вычитки байта, сделав сигнал чтения таким же инициатором процессе сдвига, как и сигнал записи (проработка этого решения).
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

PVV, понятно.

Все же интересно, что покажет утилитка HDSPEED.COM.
Запускать под MSX2. А то я долго не мог понять, что эта утилитка показывает в MSX1.
You do not have the required permissions to view the files attached to this post.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Alekcandr wrote:Все же интересно, что покажет утилитка HDSPEED.COM.
Запускать под MSX2. А то я долго не мог понять, что эта утилитка показывает в MSX1.
В ближайшее время попробую, как раз на новом варианте SD интерфейса. Старый уже начал разбирать, а новый еще не спаял...
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Alekcandr wrote: Все же интересно, что покажет утилитка HDSPEED.COM.
Запускать под MSX2. А то я долго не мог понять, что эта утилитка показывает в MSX1.
Похоже, имеется ввиду запуск не под msx2, а под msx_dos2 ? В варианте msx2, но в MSX_DOS1, если так можно выразиться, эта утилита не работает у меня, а для дос2 мне надо схемку подкрутить дальше, добавить же ПЗУ с дос2...
Alekcandr
Doomed
Posts: 665
Joined: 01 Oct 2007 10:30
Location: Ukraine

Re: MSX в proteus

Post by Alekcandr »

PVV wrote:Похоже, имеется ввиду запуск не под msx2, а под msx_dos2 ? В варианте msx2, но в MSX_DOS1, если так можно выразиться, эта утилита не работает у меня, а для дос2 мне надо схемку подкрутить дальше, добавить же ПЗУ с дос2...
Похоже и dos2 нужен. Жаль описания на эту утилитку нет. Народ пользуется.

Если не получается с ходу ее запустить, то наверное фиг с ней.
Эмулятор OrionEXT:
http://www.orion-ext.narod.ru
PVV
Doomed
Posts: 463
Joined: 12 Feb 2016 13:39

Re: MSX в proteus

Post by PVV »

Переделал я на своей макетке SD интерфейс по новой схеме, сделал маппер на порт b2, прошил ПЗУ с прошивкой Nextor и... ничего :(. Карта не видится. Хотя если вместо Nextor зашить в ПЗУ BEER_SD_1.9, то все работает, что означает, что сам SD интерфейс вполне работоспособен, ну и вся схема с маппером, в целом работает, тк приглашение от Nextor есть и fdisk запускается.
Стал разбираться с Nextor, и раскопал, что для карт версии 2 и 2+ формат ответа CMD9 отличается, а там как раз идет определение размера карты, ее геометрии. В emu и proteus, в чем я отлаживал прошивку Nextor, формат карты эмулируется версии 1, вот и получилось, что там то работает, а с моими реальными картами нет. Копаю дальше, чтоб все же дос2 запустить то.
You do not have the required permissions to view the files attached to this post.