вот тут
http://zx-pk.ru/showpost.php?p=226155&postcount=9
описано, как решили вопрос недостатка быстродействия в ПК8000
Вид для печати
вот тут
http://zx-pk.ru/showpost.php?p=226155&postcount=9
описано, как решили вопрос недостатка быстродействия в ПК8000
Обновил
http://zx-pk.ru/showpost.php?p=739589&postcount=34
думаю это последнее обновление.
Работа закончена, секретов не осталось, в комплекте прилагается ASM файл,
который я откомпилировал и побайтно сравнил с оригиналом.
Если есть желаение, то теперь можно модифицировать Хамелеон или вобще, что то новое на его основе сделать.
Спаял новыю плату, включил - все сразу работает как надо!
Вот как выглядит результат:
http://zx-pk.ru/attachment.php?attac...1&d=1412131217
http://zx-pk.ru/attachment.php?attac...1&d=1412131495
а вот как выглядит прототип:
http://zx-pk.ru/attachment.php?attac...1&d=1412131217
http://zx-pk.ru/attachment.php?attac...1&d=1412131217
Ну и прилагаю PCAD файлы для повторения.
Внимание: на 14 контакт ВНЕШ1 во Львове надо завести +12в.
Теоретически этот контроллер подойдет и для Вектора только разъем надо переразвести.
ВНИМАНИЕ: Для тех, кто решил повторить контроллер.
1. Пост
http://zx-pk.ru/showpost.php?p=741571&postcount=43
обновлен. На схеме обнаружена несущественная ошибка: диод был перевернут вверх ногами. На работоспособность это не влияет, можно вобще без диода собрать. Данная функция софтом не используется. (BTW я непонимаю зачем она потенциально нужна, подскажите! Моя версия, что просто все перерисовывали друг у друга без понимания зачем оно надо). Во избежание проблем, плату я переразводить не стал. + приложил PDF схему.
2. D6 надо ставить 1533, а D17 (ИЕ5) надо ставить 155 серию, 1533 не пойдет!
3. Скоро опишу простой мод, который обеспечивает работу MFM на процессоре ВМ80. Плату разводить не планирую, ибо переделка очень проста. Развести могу, но изготавливать, собирать и проверять нехочу. Для безпроблемного повторения лучше брать ту плату, что есть и доработать.
Доработка позволит стандартному Львову работать с MFM дисками.
Ранее это было возможно только на Z80.
Доработка очень проста! Требуемые детали: 2 резистора, 1 диод и 1 транзистор. Работа занимает 30 минут. Полная обратная совместимость Львова и контроллера со всем старым софтом.
Доработка использует существующий RDY триггер Львова и его артефакт
подвешивание компьютера при обращении к младшим портам.
Длительность цикла data pump сократилась с 48 мкс до 23 мкс при требуемых для MFM 32 мкс. Это позволяет 100% надежно работать из ПЗУ. При работе из RAM длительность цикла на пределе, но тоже работает!
Шаг №1 Доработка Львова.
http://zx-pk.ru/attachment.php?attac...1&d=1412439015
- разрезать одну дорожку
- установить диод и резистор
- припаять провод на разъем ВНЕШ1
Готово! Проверьте работоспособность, ничего не должно было поменяться.
Шаг №2 Доработка контроллера.
Смотрите прилагаемую PCAD и PDF схему. Дополнения нарисованы над ВГ93
- перерезать одну дорожку. сигнал А7 от ножек 11 и 12 ЛА2.
сами ножки 11 и 12 подключить на +5В через резистор R4
- припаять провода, как показано на схеме, используя свободные вентили обозначенные на схеме
- установить резистор и транзистор (можно КТ315 приклеить к плате и припаять нужные провода)
- припаять провод на коннектор ВНЕШ1
Готово! Проверьте работоспособность, ничего не должно было поменяться.
Шаг №3 Установка модифицированной версии хамелеона.
- прошить РФ2 rom файлом из прилагаемого soft архива
(BTW там прилагается asm файл с исходниками)
- установить во Львов
Готово! Проверьте работоспособность, MFM работает.
Шаг №4 Записать диск с доработанной програмой FORMAT из прилагаемого dsk образа.
Вот как это выглядит:
http://zx-pk.ru/attachment.php?attac...1&d=1412450411
--------------------------
Для любопытных. Суть изменений софта.
FORMAT был переделан на вызов data pump процедур из ПЗУКод:1 CPU T = 450 ns
MFM 32 mks/byte = 71 T
WRITE SECTOR CPU T
ROM:C060 loc_C060:
ROM:C060
ROM:C060 DB E4 10 in a, (0E4h) ; Read IRQ/DRQ Status, Apply Mask, Wait for DRQ
ROM:C062 A1 4 and c
ROM:C063 CA 60 C0 17 jp z, loc_C060 ; Read IRQ/DRQ Status, Apply Mask, Wait for DRQ
ROM:C066 7E 7 ld a, (hl) ; Next Data byte
ROM:C067 D3 E3 10 out (0E3h), a ; Load VG93 DR
ROM:C069 23 5 inc hl ; Next address in write buffer
ROM:C06A F2 60 C0 17 jp p, loc_C060 ; IRQ=Bit7=0 Repeat
ROM:C06D C9 ret
READ SECTOR
ROM:C7E6 loc_C7E6:
ROM:C7E6
ROM:C7E6 DB E4 10 in a, (0E4h)
ROM:C7E8 A1 4 and c
ROM:C7E9 CA E6 C7 17 jp z, loc_C7E6 ; Read IRQ/DRQ Status Register, Apply Mask, Repeat
ROM:C7EC DB E3 10 in a, (0E3h) ; Read VG93 DR
ROM:C7EE F8 3 ret m ; Return if IRQ=Bit7=1
ROM:C7EF 77 7 ld (hl), a ; Store in Read Buffer
ROM:C7F0 23 5 inc hl ; Next address in read buffer
ROM:C7F1 C3 E6 C7 10 jp loc_C7E6
MODIF. WRITE SECTOR CPU T Saves 4T
ROM:C060 loc_C060:
ROM:C060
ROM:C060 DB E4 10 in a, (0E4h) ; Read IRQ/DRQ Status, Apply Mask, Wait for DRQ
ROM:C062 A1 4 and c
ROM:C063 CA 60 C0 17 jp z, loc_C060 ; Read IRQ/DRQ Status, Apply Mask, Wait for DRQ
ROM:C066 7E 7 ld a, (hl) ; Next Data byte
ROM:C067 D3 E3 10 out (0E3h), a ; Load VG93 DR
ROM:C069 F8 3 ret m ; Return if IRQ=Bit7=1
ROM:C06A 23 5 inc hl ; Next address in write buffer
ROM:C06B C3 60 C0 10 jp loc_C060 ; Repeat
LOCK.PORT==========
WRITE SECTOR CPU T TOTAL 49T !! 3T max wait on RAM access = 23 mks
loc_C060:
DB E4 10 in a, (064h) ; Read IRQ/DRQ Status, Apply Mask, Wait for DRQ
A1 4 and c
7E 7 ld a, (hl) ; Next Data byte
D3 E3 10 out (0E3h), a ; Load VG93 DR
F8 3 ret m ; Return if IRQ=Bit7=1
23 5 inc hl ; Next address in write buffer
C3 60 C0 10 jp loc_C060 ; Repeat
READ SECTOR
loc_C7E6:
DB E4 10 in a, (064h)
A1 4 and c
DB E3 10 in a, (0E3h) ; Read VG93 DR
F8 3 ret m ; Return if IRQ=Bit7=1
77 7 ld (hl), a ; Store in Read Buffer
23 5 inc hl ; Next address in read buffer
C3 E6 C7 10 jp loc_C7E6
My bad!
Я бездумно скопировал комановский делитель на ИЕ5.
Включение на C1-Q1-Q3 глючит для MFM, надо включать C0-Q0-Q2. Перезалил схемы и разводки! 1533 в этой позиции не пойдет вообще, ставьте 155.
Микросхема АП6 совсем необязательна, она оставленна, что бы реплика была достовернее.
Ее можно неставить и просто закоротить линии данных.
Проверил работоспособность со Львов ПК-02 и стандартным хамелеоном 7.7 - все работает.
вот дизассемблировал и полностью разобрал FORMAT3
прилагаю текстовый и ESET IDA файлы, может кому пригодится.
Мне пригодилось для ремонта Львова.
Теоретически там оже работы осталось на час, чтобы переложить это в asm файл и потом можно модифицировать его как угодно.
Вроде получилось запустить..
Осталось понять как записать дискету..