вариант типа ld a,#50 ; out (#fd),a часто использовался для скорпа
вариант типа ld a,#50 ; out (#fd),a часто использовался для скорпа
http://vtrd.in/gamez/n/NAVY-A_B.ZIP
тут одновременно переключается бордюр/экран out (#fc),a
Проверил на своём Пентагоне - отлично работает. В интро красиво сделан бордюрный эффект, разворачивающийся вместе с текстом на экране. Игрушка загружается и работает. В самой игре время не привязано к прерываниям - в Турбо-7 МГц время на часах тикает в 2 раза быстрее, при этом чувак с автоматом и бегает в 2 раза быстрее. В Турбо-14 МГц с WAIT-ом в данной игре разницы от 7 МГц почти никакой.
Последний раз редактировалось Northwood; 01.12.2017 в 00:38.
С уважением, Александр
эта схема сделана как здесь ? - тыц или какая то собственная разработка ?
Не то. В моём варианте отлавливаются коды команд IN A,(xx) и OUT (xx),A, их значения 0xD3 и 0xDB. Изначально схему нашёл в одном из электронных журналов, уже не помню в каком, схему переработал под Пентагон 1.4.
Вот конкретная схема, которая собрана у меня сейчас. Сама доработка, отлавливающая команды короткой адресации к портам, собрана на эемелнтах:
New_DD3.1, New_DD3.2, New_DD4.1 (распознавание чисел на шине данных #D3 и #DB, соответствующие кодам этих двух команд),
New_DD5.1 - триггер, выключающийся когда происходит выборка из памяти кода команды #D3 или #DB, и включающийся при выборке кода любой другой команды,
New_DD1.1, New_DD2.2, на котором формируетcя мягкая дешифрация #FD при выключенном триггере New_DD5.1,
New_DD1.2, на котором активируется блокировка портов #1FFD и трёх триггеров 1533ТМ2, реализующих биты выборки верхней памяти, D5,D6,D7 порта #7FFD.
То что не проверяется состояние линии MREQ для переключения триггера, не страшно. M1 активируется исключительно в двух случаях - при выборке кода команд из ОЗУ и при срабатывании маскируемого прерывания INT. В первом случае нам и нужно чтобы триггер сработал, если это код нужной команды, а при срабатывания прерывания на шине данных всегда FF, если конечно она стабильна.
При составлении новой платы, компоновка снова претерпит изменения.
- - - Добавлено - - -
P.s. Перед тем как начну составлять полную схему компьютера Pentagon-4096, вынужден осваивать PCAD-2006. До этого я долгое время работал в Dip-Trace, но у меня ограниченная лицензия до 1000 выводов компонентов, чего не хватит для данного проекта.
Переход от PCAD 4.5, в котором я работал с самого начала, в PCAD-2006 вызвал у меня большие трудности в понимании программы. Переход на Dip-Trace был гораздо легче. Но после Dip-Trace перейти на PCAD-2006 оказалось намного легче, чем после PCAD-4.5. Уже разобрался с принципом построения библиотек компонентов, завтра уже начну составлять схему и выкладывать результат в первом посте темы.
Последний раз редактировалось Northwood; 01.12.2017 в 04:15.
С уважением, Александр
Northwood, жаль, что не выбрал порт DFFD для расширенной памяти, тогда проблем бы небыло с 7 битом 7FFD. я, если честно, и не сразу понял в чем проблема, потому-что на Профи всё работает, а тут оказалось вот что...
Profi must live!
Моё железо...
1. Profi 5.06/1Mb(DRAM)+Profi5.06(UP)/HDD/3`5FDD/CF512Mb/SD-CARD
3. Profi 6.2 Rev. B/1Mb/3`5FDD/HDD3.2Gb
4. Profi 5.05(down)/1Mb+Profi 5.03(UP)/Pentagon_Fix
Все укомплектованы:
Profi_ZX-BUS/ZXMC2/NemoIDE/SounDrive[свернуть]
Ссылка на Telegram-канал поддержки пользователей Profi.
Стандарт расширения памяти KAY-1024 был выбран в Пентагоне-1024 1.4 с самого начала ещё самым первым его разработчиком KOE, а KAY-1024 использует 7-й бит #7FFD, а это было придумано ещё в 90-х годах Вячеславом Скутиным (NEMO). Хотя сложно сказать, кто самым первым придумал вообще использовать старшие биты порта #7FFD для расширения > 128 Кб, т.к. кроме KAY-1024, это используется и в Scorpion ZS-1024, и при расширении Пентагона-128 до Пентагон-512. Мне же оставалось только расширить использование порта #7FFD до конца под стандарт Пентагон-1024, чтобы данный комп всё-таки стал больше похож на Пентагон.
Возможность реализации порта #DFFD меня всегда интересовала на самом-то деле. Ещё в начале 2000-х, когда у меня был Пентагон-128, расширенный до 1Мб, я сделал ему варианты расширения памяти:
128 Кб,
512 Кб Pentagon (#7FFD биты 6,7),
1024 Кб Profi / ATM-Turbo (#DFFD/#FDFD биты 0,1,2),
256 Кб Scorpion (#1FFD бит 4),
256 Кб Орель БК-08 от Barmaley (останется секретом).
Т.к. выбрать можно было только один конкретный порт расширения памяти, то схема была не сложной. Если какая-то демка не шла с включенным стандартом Пентагон-512, то я переключал на Профи и демка работала.
Но в случае же с Пентагоном-1024, расширенным до 4Мб, используется сразу 2 порта расширения одновременно. Я попытался составить схему, чтобы можно было через BIOS выбирать разные комбинации моделей Спектрума и задавать доступный объём ОЗУ - 128 / 256 / 512 / 1024 / 2048 / 4096 Кб, но схема потянула на 15 микросхем, включая дешифраторы всех портов памяти, что я забросил эту идею как не оправдывающую себя.
Но т.к. пришлось опять вернуться к вопросу выбора стандарта расширения памяти, то пробую составить более простой вариант:
1 - вкл/выкл порта #1FFD;
2 - #7FFD / #DFFD (думаю, что нет смысла делать порт старой версии ATM-Turbo #FDFD);
3 - 5-й бит #7FFD - расширение памяти / блокировка
4 - память максимум / 128 Кб.
Если количество микросхем будет вменяемое, то буду её делать. Позже доработаю под это дело и BIOS-Setup.
Последний раз редактировалось Northwood; 01.12.2017 в 15:10.
С уважением, Александр
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)