╔════──── ║ │ Еще раз о Turbo, Mega и Multi │ ║ ────════╝ (C) TwinSoft, the free hackerности в вопрос о конфигурации ZX в наше нелегкое время, что еще более приблизит нас к состоянию совершенной неясности и идеального хаоса. Для начала моя текущая конфигурация: Объем DRAM, Kb 1024 Поле памяти общее Частота CPU, MHz 4.0 8.0 10.0 Количество строк растра 312 Количество тактов/фрейм 69888 DRAM/4 MHz 111808 DRAM/8 MHz 139776 CACHE/8 MHz 174720 CACHE/10 MHz Объем CACHE, kB 48 Virtual ROM, страниц 4 SounDrive 1.2 есть Kempston Mouse нет по этико-техническим соображениям АЦП 8 бит Контроллер FDD турбо TR-DOS 5.05 (наш ремикс: быстрый LIST, FORMAT etc.) General Sound нет HDD нет Ну вот, похвастался. А теперь, вкратце о том, как я это сделал и на фиг оно нужно. Motherboard я взял от... OREL-64k. Да, да, от Орельчика. Из всех ZX-совместимых извращений, имхо, это - самое удобное для апгрейдинга. Во-первых, не тормозящий на видео-страницах диспетчер памяти; во-вто- рых от его схемы я просто балдею: строчная и кадровая развертки сделаны на ПЛМ-ках, все, что только можно на ИД7 etc., и - ре- зультат: 5 (пять!) микрух логики общего назначения и минимум остальных. Суть переделок я опишу словами, без схем: кто надо, надеюсь поймет. Кто не поймет, но заинтересуется - может со мной связаться. Постараюсь быть кратким. Сначала было 256k. Одна линейка РУ7. A0- A8 с экранных счетчиков идет по RAS для регенерации. Об адресации оных центральным юнитом: РУ7 имеют 18 бит адреса. Назовем их AM0-AM17. Процессор непосредственно адре- сует AM0-AM13 (сегмент в 16k). Остальные четыре бита берутся с КП12-х таким обра- зом: на S0,S1 КП12-х идут A14,A15 от CPU, указывая на номер одного из четырех сег- ментов доступного процессору адресного пространства в 64k, а на их входы комута- ции поданы комбинации бит, указывающие ка- кая именно из 16-ти доступных страниц бу- дет "светиться" в данном сегменте. Для 01 (#4000-#7FFF) это 0101 (5 страница), для 10 (#8000-#BFFF) - 0010 (2 страница), а для 11 (#C000-#FFFF) выход страничного порта, ибо там может быть любая из 16-ти страниц. Для комбинации 00 (ПЗУ) стоит та- кая вот штука: XXDR, где XX - номер банка из четырех последова- тельно идущих страниц, отводимых под Vir- tual ROM, D - бит означающий нечто вроде -DOSEN (ПЗУ TR-DOS'а) R - банальнейший 4-й бит порта #FD. Само собой напрашивается сделать хитрую схемку, отключающую i27512, но включающую 565РУ7 с адреса #0000, и повесить блоки- ровку оной на тублер. Тыкаем вместо XX две единички и имеем: TR-DOS - page 13, BASIC 128 - page 14, BASIC 48 - page 15. Вот вам и виртуалка. И, главное: не забудьте сделать блоки- ровку записи в "ПЗУ": ___ __________ __ WEM (3н РУ7) = (A14 or A15) or WE Если же вы жадны и вам захотелось иметь 924k в HC 4.0 вместо 156, вам явно нужно больше одной линейки РУшек, если только Santa не подарил вам РУ8 или РУ9 по 1MB. После того, как вы приняли решение, по- бывали у психиатра и помолились, проверьте наличие на РУ7 емкостей по 0.15 mkF - они вам очень пригодятся. Далее, вешаем 4 линейки РУ7 абсолютно параллельно, за исключением 3-й и 14-й ног, которые отгибаем. Советую сначала от- гибать, а потом припаивать - экономия вре- мени и нервов. 14-е ноги (а их аж 24 штуки; если у вас общее поле памяти, то одна ИР23 уже должна стоять между выходами РУ5/7 и D0-D7) кон- нектим с входами ИР23/22, которые тоже на- паиваются в 4 этажа с отогнутыми 1-ми нож- ками. На 11-е ноги ИР23 подается сигнал, (обычно CAS) который захлопывает в регистр данные из ОЗУ в цикле выборки CPU. Первые ноги ИР23 это сигналы чтения данных с од- ной из 4-х линеек (-RM). 3-е ноги РУ7. Это запись в ОЗУ (-WEM). Вместе с -RM формируются на 8-ми выходах хитрой ИД7, включение которой также не яв- ляется коммерческой тайной, но требует долгого описания. Короче, на A2 идет -WEM, на A0, A1 соответственно AM18, AM19, кото- рые берутся с еще одной КП12 (см.выше), а на -E1 пустить (-WEM or -RM), если мне кэш не изменяет. Таким образом, выходы ИД7 представляют собой: 0-3: -WEM0..-WEM3 4-7: -RM0..-RM3 Минус перед сигналом, надеюсь, знаете, что означает. Порты. У меня порт #FD (A8..A15 < #80) "видит" 512K, а метр видно из #DFFD и #FDFD. Советую делать так же. Хорошая идея насчет 5-го бита #FD. Больше метра, думаю на ZX ставить уже не имеет смысла, а адресовать таковой одним портом очень заманчиво. Естественно, его не протестируешь, (а догадайтесь, почему?) поэтому надо ставить в SeTup'е. А 48K защeлку необходимо сделать на рубильнике - приносят тут иногда игрухи за 89 год без музык на 128K. К вопросу о теневике. Не буду хвастаться (хотя и делаю это постоянно ;-))), но STS у меня в ПЗУ был зашит еще три года назад. Сначала это была версия 2.6, потом 3.3. Сейчас Андрей Смольский (ANC) дизассемблировал (!!!) STS 4.3, а я сделал прошивку (сидит вместо BA- SIC 128) и умную схему магика. (555ТМ2. На C - прямой (!) INT, на DATA кнопку на ноль, выход - на 17н Z80). В результате понятие защиты уходит в небытие, а отладка софта превращается в наслаждение, не гово- ря уже о поиске INFINIT'ов и ремонте игру- шек. Если вам не лень напаивать ИР23 для запоминания IN (#FD), это ваше дело. Моя прошивка определяет страницу и без нее. И, еще, напоследок, о супернавороченных графических режимах. Извращение 1-е: MULTICOLOR. То же, что и в SATISFACTION-7, но на весь экран. 3 (три) перерезки and 3 (три) перемычки на всех без исключения версиях ZX, которые я встречал. Графика с #4000, атрибуты с #6000. Уже есть демо, но все еще не можем родить ART-STUDIO под этот режим. Извращение 2-е: расширение BORDER'а. На всех компах с нетормозящим видеоконтролле- ром считывание видеоинформации происходит во время всего растра (это, увы, не отно- сится к "Львовскому варианту"). Если заб- рать боковушки и чуть-чуть изменить адре- сацию, можно получить 384 точки по X. Бо- ковушки читаются с 4-й и 6-й страниц. Ра- ботает и с MULTICOLOR'ом. Просто, но гени- ально, isn't it ? А ежели еще и тактуху на ИР16 поднять в 2.0 раза, то выходит разре- шение 768*192. И, как ни странно, работа- ет: этот текст я набираю в ремикснутом Zx-Word'е, который дает 96 символов в строкe без особых жертв и разрушений. Есть еще читалка для MS-DOS дисков и PCX-viewer для вышеупомянутого разрешения. No, podobnie, wszystko. Если кого-то за- интересует вышепредставленный bred of siff cabl, который я набирал в 3 часа ночи на "стреляющем" мониторе и глючащем контрол- лере, буду очень рад за не впустую потра- ченные килобайты. Keep YR SPEC alive !!! *Origin: IBM - это вечный "Поиск"! (Co- pylefted) ──══════════──