Жду не дождусь результатов... Следующий комп буду паять Phoenix!!!
Вид для печати
Жду не дождусь результатов... Следующий комп буду паять Phoenix!!!
В первом посте выложил фото собранной платы.
Правда сейчас большие микрухи вынул :)
Вообщем так, компьютер запустился но без контроллера ATMEGA8515.
Клавы пока нет, так как не работает мега.
Вернее работает, но странно.
Когда нет ПЗУ, клава определяется, т.е. контроллер работает.
Поставил ПЗУ с экраном Диззи. Программа записанная там копирует в видео область просто экран и зацыкливается. Обращений на чтение к порту клавы нет. Только на запись - бордюр синий.
И контроллер не может определить клаву - короче висит.
Посему вопрос к Камилю. В чем может причина.
Прошил прошивку 2.6 от мультикарты.
Ну и вот скриншотики. Первый - тестовый(проверка правильности мультиплексирования).
Второй - обычный(рабочий). Контроллер клавы не установлен.
На качество скриншотов не обращайте внимание. У меня парфозный тв тюнер в компе на работе.
Как ты это определяешь? Реагирует на Caps Lock, Scroll Lock и Num Lock?Цитата:
Сообщение от Mick
Кстати горящий Scroll Lock - клавиатура отключена.
Тоесть не реагирует на управляющие клавиши?Цитата:
Сообщение от Mick
Будем разбиратся :)Цитата:
Сообщение от Mick
Поздравляю, уже что-то работает и это хорошо.Цитата:
Сообщение от Mick
Да, я так определяю. А еще признак - второй раз после включения питания все три промаргивают.
А вот два крайних горящих светодиода что означают. Иногда такое показывает.
Когда нет ПЗУ - реагирует на все. А с ПЗУ еще заметил частенько активизируется сигнал WAIT. Ну естетсвенно процессор ожидает. И еще ресетом иногда подергиваешь.
Клава при этом не подает ни каких признаков(не реагирует).
Спасибо, уже самому приятно - сколько возился с ним.
Два крайних на клавиатуре?Цитата:
Сообщение от Mick
Они у тебя, что не подписаны?
Слева, направо: [Num Lock] [Caps Lock] [Scroll Lock]
Состояние индикаторов [Num Lock] и [Scroll Lock] запоминается в EEPROM , а [Caps Lock] по Сбросу всегда обнуляется.
Это может происходить только при наличии обращений к портам контроллера.Цитата:
Сообщение от Mick
Посмотри осцилографом сигналы ва входах INT0 и INT1 МЕГИ.
Нет ли там какого-либо "мусора".
Не понял, каким ресетом?Цитата:
Сообщение от Mick
На входе МЕГИ или Z80?
Или клавишей <PrintScreen>?
Понял :)
Именно мегой, но клавишу <PrintScreen> не нажимал.
Я зацепился осцилографом на ресет. По кнопке ресет - сигнал такой длинненький, это понятно. Но вот когда идет определение клавы(ну я так понял), мега такие короткие ресеты преодически выдавала.
Впрочем такие импульсы формируются если нажимать на <PrintScreen>.
Вот я пока и задумался.
И еще, Камиль можешь вставить в прошивку обработку порта джойстика и обработку прерывания INT2 - RD1F/ ?
Добейся пока, что бы текущая прошивка заработала,Цитата:
Сообщение от Mick
а потом будем делать доработки и расширения.
Точно.
Вот думаю. Если я подниму резистор через который активируется INT0(опрос порта FE), то клава для системы не будет присутствовать. По идее мега при этом не дожна выдавать самостоятельно ни каких сигналов, это так?
Буду пока добиваться чтобы клава работала сама по себе.
Если нажать <Scroll Lock>, так чтобы индикатор [Scroll Lock] зажегся, то на выводе INT0 устанавливается "1", которая блокирует реакцию контроллера на опрос порта клавиатуры.Цитата:
Сообщение от Mick
Так должно быть, проверь. Мега при этом никак не должна реагировать на импульсы опроса клавиатуры.
Отчет:
Вообщем попытался я сегодня отвязаться от меги - изучить почему с установленной мегой спек висит. Отцепил диоды от RES, NMI и WAIT. Отцепил резистор, разорвав цепь чтения порта клавиатуры.
Стал комп выходить в меню, но периодически скидывался.
Стал дальше смотреть и заметил вот что. Линия A4 и A5, которая в данном компьютере заходит в мегу напрямую, в отличии от мультикарты(через ATFку). Там происходит следующее. Когда работает комп уровень нормальный, скажем 0...5В. Но в момент зависания станоовится линия в 0...2в или 2...5в, как бы подставка. Я решил аккруатно отогнуть выводы меги. После этого стало лучше, но опять зависал. Проверил сигнал RD на меге - такая же хрень. Поднял ее - все зависать перестал. Но и мега клаву не хочет определять.
Кстати без ПЗУ клава определяется, но через некоторое время - виснет мега(нет реакции на нажимания).
Может я не так установочные биты прошил :(
Вообщем так и получилось.
Сегодня потанцевал с бубном в программаторе Phyton, клава запустилась, попутно у себя косяк нашел :).
Скриншот управляющих битов прилагаю.
Теперь немного замечаний. Сброс с меги получился бестолковый. После старта компьютера я так понимаю мега держит сброс пока не найдет клаву - вообщем на экране мусор. Потом мега отпускает ресет, но толку никакого. Приходится нажимать на кнопку. В процессе работы нажимаю на PrintScreen - то сработает сброс, то не сработает. Мега их исправно выдает, но похоже коротенький импульс - не хватает на полноценный сброс. Посему вопрос - я можно сброс не держать во время детекта клавы? B второе увеличить длительность импульса сброса.
Пока с мегой все - клава работает.
Теперь дисковод - контроллер работает. Сегодня форматировал 3,5 дискетки, записывал на PC и все читается. Сразу виден результат доработки Keeper'a. С этим тоже разобрались.
Теперь о памяти. Что то пока 128 и выше режим не работает. В 48 конвер загрузился. Скриншот тоже есть. Буду разбираться.
Кстати пока я разбираюсь, может у кого мысли появятся по поводу памяти. Поведение такое загружается бут ZYX ZAX. После загрузки начинается отрисовка, а потом брык и опять в меню дырдоса и опять загрука бута и так колбасится пока не нажмешь ресет. Это как раз в 128 режиме.
Поработай пока так, наверняка ещё какие-либо пожелания появятся, тогда и будем вводить доработки прошивки.Цитата:
Сообщение от Mick
Поздравляю.Цитата:
Сообщение от Mick
Так продолжаем дальше.
Вообщем пока устанавливаю причину одной неопределенности - думаю где то в мультиплексоре порытьса надо.
Потому как некотрые программы грузятся. Запустил 7Reality - первая часть прошла, а потом упало. Нашел командер Ковалевского, который про. Он показал интересную картинку - опознал комп как KAY 512 :)
Обычный командер версии 3 сматывается в меню. Вот буду разбираться где косяк.
Итак проверил AY - играет все нормально, тут вопросы отпали.
Остается чуток совсем :)
Вообщем интересная ситуация вырисовалась. Думал проблемы с мультиплексором, разломал бут ZYX ZAX и установил, что палает при обращении из ОЗУ к ПЗУ. Причем странно как то. По идее когда загрузится программа страница в ПЗУ ставится обычно 48 бейсика для обращения всяких там процедур. Заметил что похоже почемуто в этот момент включается страница дыр доса. Стал осцилом на выход ЛА2, так она начинает генерить выборку окна 3DXX. Может конечно в процедуре по адресу 1601h есть переходы через ОЗУ в ПЗУ дыр доса, я пока не в курсе.
Есть мысли по поводу?
- seg000:6720 ; Subroutine
seg000:6720
seg000:6720 sub_0_6720: ; CODE XREF: sub_0_6510+68p
seg000:6720 ; sub_0_65C7+48p ...
seg000:6720 push hl
seg000:6721 ld hl, (0AFCAh)
seg000:6724 exx
seg000:6725 ld iy, (0AFC8h)
seg000:6729 ld a, 2
seg000:672B call 1601h
падаем либо тут
seg000:672E pop hl
seg000:672F
seg000:672F loc_0_672F: ; CODE XREF: sub_0_6720+15j
seg000:672F ld a, (hl)
seg000:6730 cp 0FFh
seg000:6732 ret z
seg000:6733 rst 10h
либо тут
seg000:6734 inc hl
seg000:6735 jr loc_0_672F
Пару вопросов:
1. Что значит падаем? Вываливаемся в 128 меню?
2. Эти коммандеры ничего лишнего не пишут в порт #1FFD? Я про бит D3. Можно как нибудь организовать единицу на сигнале /PRN без порта #1FFD?
1.Падаем - это либо зависаем с порчей экрана. В этом случае проц крутится в адресах FXXXh. Либо - перегружаемся, выполняем команду RUN "boot". Я заткнул процедуры нопами. Программа замечательно все играла.
Ковалевский 3.03R вываливается в меню 128.
2. Вроде ставил на контроль осцилом этот бит - все чисто никто не портит.
Вообщем если идеи какие появятся - проверю в понедельник.
Осталось ведь совсем малость и такая вот засада :)
А сейчас один сим стоит или два?
Mick, прицепите плз прошивку ПЗУ которая сейчас прошита.
Прошивка от бывшего ZX-777. Просто на других моих клонах она работает.
http://www.zx.pk.ru/showpost.php?p=169674&postcount=11
Вот разрисовал табличку памяти в 1024 режиме. Второй сим не трогаем
По крайней мере я так понял манускрипт, который ewgeny7 выкладывал для расширения скорпиона. Естественно некоторые биты управления изменены для существующей конфигурации.
Mick, отличный спек получился! Всегда мечтал о таком... Вообщем, я в очередь на плату...
Можно и я присоединюсь? на плату
Вот народ какой нетерпеливый пошел :)
Все вопросы связанные с заказом будем решать чуток позже!
Итак, сегодня Ковалевкого запустил, нашел косячок в схеме. Проверил работает и копирует хорошо, правда я пока принудительно сделал 128кб режим. Для чистоты эксперимента сделал копию дискеты в Конвере и пергнал ее на PC, а там сравнил два варианта - оказались идентичны.
Правда я не совсем в курсе какие страницы для работы конвер использует, но которые использовал он - работают нормально.
Далее решил проверить кнопку магик - сбросил почему то только один файл @ - размером в 48кб. Почемуто страничные позабыл - места на диске достаточно. Посему может кто ответить, по какой причине дыр дос может кидать только один файл.
И вопрос с бутом. Как и думал - сматывается в область ПЗУ дыр доса, вместо 48 бейсика. Как проверил - принудительно после загрузки обновленного бута, принудительно подал на адрес ПЗУшки, который отвечает за выбор 48 бейсика лог. 1 - и сразу заработал.
Будем думать. :(
Я специально бут разломал(дизассамблировал) , там только две процедуры работающие не с ТR DOS. Посты выше. Порт 1FFD эта программа не трогает вообще, впрочем и 7FFDh тоже не трогает.
Я эти процедуры затер, а по пробелу сделал вывод буквы на экран.
Проверил в эмуляторе - все работает.
Принудительно зацепил ПЗУ бейсика и нажал на кнопку - буковки стали появлятся. А так опять через ТР ДОС лезет.
Вот DOS/ и переключается, я ранее писал. Если бы банки неправильные были, то вообще бы неправильно работал бы комп. :)
Я же из меню могу выйти в 48 бейсик и от туда могу в TR DOS войти.
Или ты про ОЗУ говоришь?
Я комп и в 48 режим принудительно делал. Один фиг - также работает.
знаешь чё, у тя нет RC цепочки 200 Ом 0,1нФ на выходе выборки адреса памяти 3Dxx.. возможны ложные срабатывания из-за иголок
Да, иголки там имеют место быть.Цитата:
Сообщение от Black_Cat
Но они очень короткие и я обходился просто конденсаторами на 470 пф, подключая их на /R и /S входы триггера /DOS
Добавлено через 9 часов 49 минут
Сейчас посмотрел внимательно схему и понял, почему у тебя проблемы с RESET.Цитата:
Сообщение от Mick
Подключи выход сигнала СБРОСА с Меги к RST/, а не к RES/.
Конденсатор C17 должен быть не большой емкости, думаю хватит и 0.1 мкф
Сброс переделал, все стало сбрасываться хорошо. Один правда недостаток :) - секунд несколько видишь разноцветные картинки.
С TR DOS справился, как описано выше. Завтра еще один опыт поставлю, хочу проверить идею.
Завтра буду пробовать хард диск :)
Еще один вопрос, как с иголками на экране справится. На синем экране они очень заметны.
http://www.zx.pk.ru/showpost.php?p=188673&postcount=322
P.S. Народ нужен командер который может и по 1FFD память считать и полные 7FFD. Ковалевский однако неправильно проверяет ее.
Кстати, а в стандарте Pentagon 512. Демки 7Reality(где то в конце) и Illusion(вначале) вываливаются. Неправильно работа с портом 7FFDh. В эмуляторе тоже вываливается :)
У кого нибудь пропатченная версия есть?
есть какой-то рамтест, ваял кто-то на форуме, не помню кто, что умеет тож не помню.. мож попробовать..
..если вспомнить автора, то можно попросить заточить под Феникс..
Кстати, сейчас вспомнил.
Камиль, вопрос к тебе. Микросхема часов. Вход A0, куда желательно подцепить?
А то у меня он в воздухе оказался.
Схему изменил, плату поправил.
Какой прогой можно проверить часы?
Сегодня проверил звук и смешения звука от бипера. Проверил мышь PS2, тоже рулится.
Память, что то мы тут сваяли недоСкорпоКай какой то.
В реал командере он находит при одном симе 24 свободные страницы(рамдиск), с двумя симами - 55.
Тест памяти Ковалевского с одним симом пишет KAY - 512кб, с двумя KAY - 1024. Т.е. на данный момент нет программы которая могла бы пользоваться нашими 1024кб, не говоря уж про 2048кб.
Контроллер IDE.
Программа CD Walk DVD определяет? Завтра попробую его подцепить.
Какая нибудь программа идентификации жесткого диска есть?
И последний момент остался. Это снег на экране. Сегодня пытался узнать в чем причина. Думал может питание, нет питание хорошее.
Начал исследовать по цветам. Сделал одним цветом BORDER, PAPER и INK.
На выходе пролетают кортокие иголки. Стал смотреть дальше. Иголки возникают в мультиплексорах КП13 при деактивизации H2 (с 1 в 0), т.е. защелкивание инфы. Так вот в первоначальный момент возникает иголка.
Для интереса на выходе транзисторныйх повторителей эти всплески задавил, но на экране снег остался.
Кто может сказать об этом?
Обязательно потестю. Там нужно как то настраивать эту программу под тип контроллер IDE. А то там несколько файлов, типа драйверов.
И всеже вернемся к памяти. Может сделаем вариант, чтобы либо был KAY 1024 c одним симом, либо SCORP 1024. А то как то коряво получается. Вся память не видна.
Народ, у кого 1024 памяти, особенно KAY или SCORP - программа real commander всю память видит или нет?
Высказываемся сейчас, потом сами будете дорожки резать.