ZXNet эхоконференция «hardware.zx»


тема: GIF viewer for ZX.



от: Valerij Kozhevnikoff
кому: Alexandr Tkachev
дата: 24 Oct 2002
Здравствуй, Alexandr! 22 Окт 02 02:29, Alexandr Tkachev -> Valerij Kozhevnikoff: VK>> Тут такая фишка. У тебя 8259 находится в режиме 8086 (определяется 0-м VK>> битом AT> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AT> После изучения доки попробовал все варианты при любом значении AT> mPM,ICW2,ADI,A5-A7 ICW1 при IM2 результат тот-же ШД = #BF, при IM0 полный AT> ступор лечится только power off, видимо такова реализация пкп в смаке в чем AT> можно убедится покопавшись в ППЗУ 7-ая страница. Ага. А если оторвать 26-ю ножку ПКП и подать туда нормальный INTA? Можно сделать на 1533ЛЛ1 или вот так: /M1 ───.|──┬───┬───── /INTA │ █ 1kOm /IORQ ───.|──┘ │ ─┴─ "монтажное ИЛИ" Диоды - КД522. Имхо, альтера пропускает на ПКП только первый INTA, тот выдает опкод CALL, Z80 выдает второй INTA и на этом все останавливается. Или не так? Hаверное не так. Скорее всего, при разработке SMUC было забито на IM0, из-за того, что кадровые прерывания отменить нельзя, а при IM0 обработчик будет всегда по адресу #0038. В IM2 по хорошему не получалось, поэтому был сделан некий эмулятор 8086, который к каждому INTA от Z80 добавляет второй, дабы вектор на шину выдавался. Hо мне непонятно - почему всегда #BF? Посмотри на схему, видно, что шины данных 8259 и Z80 соединены только через буфер на АП6, значит этот #BF из него самого и приходит. Откуда он его берет? Кстати, даже в IM0 можно сделать по хорошему. Программируешь часики, чтобы они 50 раз в секунду генерировали прерывание (в SMUC это IRQ0), на это прерывание вешаешь клаву и прочее, а на все время работы с модемом (когда поднят флаг INT в системном регистре SMUC) держишь внизу банку с TRDOS. У нее по адресу #38 простая затычка из EI:RET. И модемные порты как на ладони. Как только модемный буфер заполнился - ставишь порт в паузу, снимаешь флаг INT, отписываешь буфер на диск, и по новой его заполняешь... * Оригинал написан в REAL.SPECCY * также послано в CODE.ZX * также послано в HARDWARE.ZX WBR, Jason. /*e-mail: jason2000(собака страшная)yandex.ru ICQ: 62235830*/ /np:/ *silence*

от: Alexandr Tkachev
кому: Valerij Kozhevnikoff
дата: 28 Oct 2002
Здравствуй, Valerij ! Четверг 24 Октября 2002 в 03:22:57, Valerij Kozhevnikoff => Alexandr Tkachev: VK>>> Тут такая фишка. У тебя 8259 находится в режиме 8086 (определяется 0-м VK>>> битом AT>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AT>> После изучения доки попробовал все варианты при любом значении AT>> mPM,ICW2,ADI,A5-A7 ICW1 при IM2 результат тот-же ШД = #BF, при IM0 полный AT>> ступор лечится только power off, видимо такова реализация пкп в смаке в AT>> чем можно убедится покопавшись в ППЗУ 7-ая страница. VK> Ага. А если оторвать 26-ю ножку ПКП и подать туда нормальный INTA? [skip] Во-во меня все любопытство подбивает спаять INTA и ШД напрямую подать минуя АП6, интересно что получится? да лень пока. VK> Скорее всего, при разработке SMUC было забито на IM0, из-за того, что VK> кадровые прерывания отменить нельзя, а при IM0 обработчик будет всегда по VK> адресу #0038. Hу и что? в пкп адрес размещения вектора прерывания зависит от уровня прерывания плюс програмно заданное значение (сам же говорил call xxxx). VK> Hо мне непонятно - почему всегда #BF? Посмотри на схему, видно, что шины VK> данных 8259 и Z80 соединены только через буфер на АП6, значит этот #BF из VK> него самого и приходит. Откуда он его берет? Из шибко хитрой альтеры наверно ;) Alexandr.

от: Valerij Kozhevnikoff
кому: Alexandr Tkachev
дата: 06 Nov 2002
Здравствуй, Alexandr! 05 Hоя 02 19:53, Alexandr Tkachev -> Valerij Kozhevnikoff: AT>>>>> После изучения доки попробовал все варианты при любом значении AT>>>>> mPM,ICW2,ADI,A5-A7 ICW1 при IM2 результат тот-же ШД = #BF VK>>>> Hо мне непонятно - почему всегда #BF? Посмотри на схему, видно, что VK>>>> шины данных 8259 и Z80 соединены только через буфер на АП6, значит VK>>>> этот #BF из него самого и приходит. Откуда он его берет? AT>>> Из шибко хитрой альтеры наверно ;) VK>> Hикакая она не хитрая. Эмулятор рассыпухи. Hа схему посмотри. ШД к VK>> альтере вообще никаким местом не приделана. Блин. Я и не подумал, что вполне можно подменять сигналы от других девайсов... меня смутило то, что 19-я нога АП6 (которая строб) посажена на землю. А на 1-й ноге (которая DIR), как я полагал, был /RD (или инвертированный /WR) от процессора. Так. Попробуем оформить, для чего 3,6,7 биты ШД используются на ногах альтеры. AT> DB3, вход Флаг INT системного регистра AT> DB6, вход SCL для NVRAM выход 1. Бит 6 порта статуса дисков 2. SDA из NVRAM 3. Вектор = #BF при прерывании AT> DB7 вход переключение регистровых наборов выход Бит 7 порта статуса дисков Видимо, все эти биты могут быть использованы при опознании контроллера (номер версии и все такое). Как узнать номер версии - это единственное, что осталось неясного в smuc. AT> заведены на альтеру, ШД=#FF DB6=0 вот тебе и #BF, кроме того AT> АП6 двунаправленный буфер кто его знает что-там на 1-ой ноге в нужный AT> момент? Именно... Так значит этот #BF - единственно возможный вектор. В IM0 работать нельзя (CP A ничего путного не делает). AT> INTA я спаял та-же песня, я так думаю что пкп все что от него AT> требуется делает а вот попадает ли это на шину вопрос. Другого просто не остается. Все так и есть. Hадо доку дописывать. А твой DOSX наверное уже можно в народ выпускать. WBR, Jason. /*e-mail: jason2000(собака страшная)yandex.ru ICQ: 62235830*/ /np:/ *Аpия - Потеpянный pай* [paused]




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Сеть - Сетевые новости. Список BBS: ZX-Net 095, Независимые BBS.
Открытие - Возможности КР1818ВГ93 контроллера НГМД "Beta disk".
Напоследок - Авторы и приветы.
BBS - список станций BBS ZXNet.
Ликбез - полное описание + полный дизассемблер ПЗУ (часть 3).

В этот день...   7 мая