Видимо пора открыть новую тему:v2_dizzy_punk:
Вид для печати
Видимо пора открыть новую тему:v2_dizzy_punk:
Наконец-то дошли руки до убитой Соньки. Поставил чип с тестовой прошивкой (test.out) вместо чипа ПЗУ, чип с Subrom вынул. При включении имеем белый экран без надписей. Посмотрел саму прошивку - там минимум всего, надписи "Hello World" не видно в дампе, также не видно данных для формирования шрифтов. Объясните тогда как она должна работать?
Знакогенератор в программе есть, только он на 7 букв. Hello World кодируется так
Если есть белый экран, значит регистры VDP доступны и программируются. А вот отсутствие надписи Hello World может быть связано с тем, что VDP напрочь не видит видео-память.Код:DEFB 1, 2, 3, 3, 4, 0, 5, 4, 6, 3, 7
Ок, буду ставить панельки. И менять 464е...
- - - Добавлено - - -
Замена видеопамяти ничего не дала. Тот же белый экран. Интересно, а можно как-то дополнить тестовую прошивку, чтобы проверить жив ли видеопроц? Или например видит ли он озу. Результаты теста можно давать "морзянкой" - миганием экрана.
а как видеопроц узнает видит ли он озу ? :) он на такие мелочи внимания не обращает.. наверное надо основным процом пытаться писать в VRAM и потом читать.. а мигать можно чем нибудь другим, например лампочкой на клавиатуре. А писать и читать придётся через регистры VDP
Клавы нету, так что мигать можно только экраном. :) Теоретически можно ещё релюшкой пощёлкать, но это изврат.
ага.. есть "бордюр" им можно мигать без ОЗУ
Видит это образно:)
Исправного генератора и VDP достаточно, чтобы генерировать видео-сигнал и можно помигать бордюром (фоном).
Таки, наверное, в нашем случаи недогоревший VDP виновник всех этих нехороших дел.
Честно говоря лень. И оно надо. Программку писал, что бы понять работает или не работает. Программка использует связку CPU-VDU-ROM. Да и основных причин тут всего две: VDU или видео-озу.
Во наткнулся на тест памяти, может тестить "дивные" размеры памяти (1024КБ+64КБ). Программка запускается в MSX-DOS1. В архиве также имеется схема расширения памяти на 1МБ тоже на "дивной" памяти HM658512 (SRAM с сигналом RFSH)
Запуск программки с ключом /h позволяет почитать хелп.
Программка для любителей попаять и проверить промежуточный результат работы:)
По горячим следам. Как программка из предыдущего поста помогла определить непропай без шума пыли.
А то вчера были по 4МБ но большие, а сегодня только маленькие по 2МБ.
Запускаю тест MEMTEST.COM, тест кажет мапер у нас 00-81. Открываем схему, ищем 3 банку. В третей банке ищем ножку A15 (22 нога), пропаиваем.
И у нас уже большие и по 4МБ:)
Припаял откусанные ножки от радиодеталей к огрызкам ножек присланного мне 9938 и всё это запихнул в панельку. Сегодня попробую завести...
Машинка таки запустилась и нормально выходит в бейсик. C vdp вышел вот такой изврат:
Вложение 62229
Спасибо Martynov1371 за этот чип! Теперь надо понять почему комп не грузится с флопа. Диск читается при старте машины, но с него ничего не грузится. VCO и READ PULSE выставил по мануалу, но похоже где-то всё-таки проблема - VCO периодически пропадает. Мануал на Sony HB-F700P могу выслать если будут желающие помочь в ремонте. :)
Логический анализатор показывает вот такую картинку при неудачной попытке загрузиться с диска. Может кто из здешних спецов посмотрит? Сигналы VCO и READ PULSE я выставил по даташиту, но они друг относительно друга "едут", причём с разной цикличностью.
http://podrezov.com/temp/flop_boot.jpg
Немного истории. У этой платы в 90х отказал контроллер флопа (перестала грузиться система с диска) и плату пользовали без него пока она не померла окончательно. Сдохли 2 логических чипа, а заодно и видеопроцессор (частично). После замены чипов машинка стартует в Бейсик и пытается (безуспешно) грузиться с флопа. Интересно мог ли сам чип контроллера тоже дуба дать?
Фотки с осциллографа: VCO, READ PULSE и "пила" на 26й ноге контроллера.
http://podrezov.com/temp/vco.bmp
http://podrezov.com/temp/readpulse.bmp
http://podrezov.com/temp/pin26saw.bmp
Начнем с малого. Это чего за хрень - VCO.
- - - Добавлено - - -
Интерфейсы от Ямахи рознятся их видимо под 50 шт. наберется. Где-то. видал как с десяток фирм одаптиривали дискогрызов. забыл. а тут хз с чем бореям?
Народ подскажите. Вот есть такой девайс на MSX как OPL3 Cartridge - http://www.msxpro.com/opl3.html
Вроде это как какой то буфер на 256 байт, ну а для чего оно предназачено и как с ним работают?
Не ну это понятно что это звуковая карта. Что делает ОЗУ?
Скорее всего для загружаемых самплов. На OPL4 звуковухе Moonsound и её клоне Wozblaster есть 2мб самплов в ПЗУ, а также на борту 1мб ОЗУ для хранения загружаемых самплов. Вы же вроде делали клон OPL4 для ZX и даже програмку тестирования ОЗУ написали, которую я адаптировал для MSX. :)
Как то сомнительно. Озу всего 256 байт и шина данных у ней совмещена с шиной данных как ymf262, так и шиной данных компьютера.
Да и адрес ОЗУ формируется через регистр сидящий опять же на шине данных.
Там что какой то хитрый DMA в MSX или что?
Ха - прикольно!
Сначала в озу по очереди пишутся 512 байт команд/данных, а потом компом быстрелько по 1+ адресу данные/комманды из этого озу передаются чипу :)
Типа с компа читать данные из кода, выставлять порт, передавать байт, и так для всего пакета, видимо слишком долго.
А так выводишь в порт возрастающие на 1 числа (адреса данных в озу карика) и стробируешь - ну да , такое колхозное DMA :)
Заменил контроллер флопа на Соньковской плате, а заодно проверил и заменил логику. Все равно с дисковода не грузится. Проверил все элементы - обрывов нет. Частоты read pulse и vco выставлены по осциллографу. Пробовал подавать 5в вместо 12в, как указано не схеме от другой версии материнки, выпаивал терморезистор - не работает, сцуко. Данные видимо читаются, судя по осциллограммме, но процессор их не видит. Скоро придёт корпус с клавой, попробую поиграться с софтом чтобы понять работает ли вообще связь дисковода с машиной. Если у кого есть идеи как проверить работу контроллера на плате и его связь с остальной платой - пожалуйста помогайте! Плата Sony HB F700P.
Даешь ссылки на схему соньки и дискогрыза. А дискогрыз рабочий?)
http://www.msxblog.es/wp-content/upl...Manual.pdf.zip
Дисковод рабочий. Проверен с другим контроллером. Стандартный FD-05 внешний дисковод. Да и пару писишных, но переделанных в 720кб пробовал. Ни с одного не грузится.
Ужос. Понасобирали буржуи:)
- - - Добавлено - - -
Одни разъемы, а где же душа. Фу бездушные ASIC барыги.
Начнем. Посмотрел что да как. Используется связка TMS2793NL и CXD1032Q.
TMS2793NL FDCS I/O addresses
Код:; ComStsPrt
; Command
; 000000ss Select Track 00
; 000100ss Track Select (Track in DataPrt)
; 010100ss Track Increase
; 011100ss Track Decrease (not used)
; 1000k0c0 Read sector data
; 1010k0c0 Write sector data
; 11010000 Terminate command
; 11110x00 Format track
; Status bit
; 0 Command ready
; 1 DRQ/Index
; 2 Lost data/Track 00 selected
; 3 CRC error
; 4 Record not found/Seek error
; 5 Record type
; 6 Write protect
; 7 Not ready (no disk)
; TrkPtrPrt
; Current Track
; SecPtrPrt
; Selected Sector
; DataPrt
; Dataport
[свернуть]
CXD1032Q FLOPPY DISK CONTROL
Код:; SidePrt (R/W)
; bit 0 = side of disk (0 = side 0)
; DrivePrt (R/W)
; bit 0 = drv b0
; bit 1 = drv b1 (drive select 0-3)
; bit 2 = (W) Disk Change Reset (0 = reset) NOT USED
; bit 2 = (R) Disk Change (0 = changed)
; bit 6 = IN USE pin (1 = IN USE)
; bit 7 = motor on (1 = ON)
; IoStsPrt (R)
; bit 6 = INTRQ
; bit 7 = DRQ
[свернуть]
Достаточно странные диаграммы. Начать думаю надо с диаграмм /DSEL0, /MON, /INDEX, /READY.
А дисковод точно сигнал /READY вырабатывает, а не DC (Disk Changed)? Эта схема заточена под сигнал /READY.
ну и замкнуть тогда его нафик на Drive Select
На какой из двух? На тот что выбран на самом дисководе? Или речь идёт о проводке между чипами?
А ведь точно - сигнал READY при чтении диска не был в нуле, как полагается. И если схема заточена на него, то неудивительно, что диск не читается. Значит контроллер все-таки работает. Ну что ж, проверю как вернусь из командировки...
Ну, это пока не понятно. В нуле, в не нуле. Смотря где сигналы для диаграммы брались и при каких условиях. С дисковода ready = 0, для TMS2793NL ready = 1. Мне другое на диаграмме не понравилось. С какого ready так резко прыгает туда сюда?
Вообще беда с этими ASIC чипами документашки по ним нет, где их брать тоже не понятно. Я не зря внутренние регистры привел. Можно дисководом подрыгать простыми командами.
Клава уже в пути. Правда ещё надо будет починить кабель - там один провод внутри сдох. Но я думаю, что всё решится простым проводочком с 34 пина на DS0.
Ваши предположения подтвердились. Родной соньковский дисковод заработал с платой на ура. У него READY сигнал сделан как раз под эту плату. Собрал машинку в только что пришедшем корпусе и всё работает. У клавы убиты 2 провода, а не один. Оторваны крепления клавиши Ввода. Починим, не впервой. :)
ага.. Конгратулейшенс :)
Клаву тоже починил. Пришлось отрезать кабель с обеих концов и потом подпаиваться к проводам 14 пинового разъёма. С другой стороны пришлось пересобирать 13 пиновый разъём клавиатуры. В общем работы на пол-дня. Ну и немного клея чтобы починить треснувшие крепления шурупов. Так что комп жив и сейчас показывает мне дёмку Metal Gear 2. Спасибо всем, кто помогал советами.
http://podrezov.com/temp/sony_fixed.jpg
Круто, классная машинка :)
Wierzbowsky, ну вот. Отлично. А то VSO можно закрутить до смерти;)