С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Wow, cool sound card. Can you release schematic ?
It's my old similar project for ZX Spectrum machines:
Interface is connect to socket on original AY-3-8912 in ZX Spectrum/external interfaces.
Use programmable clock for each AY chip:
1.75xxx MHz for ZX mode
1 MHz for AMSTRAD CPC mode
2 MHz for ATARI ST mode
AY can be also disabled (0 MHz)
Clock for SAA1099 is also programmable.
All 3(first AY)+3(second AY)+6(SAA1099) channels are mixed in external sound mixer with ZX speaker output (for games with AY+SPEAKER support - as CHRONOS for example). It's 12 channels + speaker. Theoretically can be connect also second SAA1099 chip....
And what about reset SAA1099 chip ? This chip don't use reset pin. As correct way can be reset by software(using OUT instructions) or via disconnect and reconnect power supply.
Or is possible stop CLK input for SAA1099 chip, but this don't reset internal registers, only stop sound.
Последний раз редактировалось VELESOFT; 12.12.2009 в 21:59.
Спасибо. Схема альфа версии в первом посте.
Thank you. The Scheme alpha to versions in the first post.
Об этом я не думал. Мне больше нравится идея с отключением питания.
About this I did not think. I more like the idea with disconnect and reconnect power supply.
I am sorry for my wrong english.
And switching ABC / ACB
- possibility disable TS (only one AY)
- possiility disable SAA1099
- possibility set both AY chips as write only (reading is dangerous on machines with internal AY chips = data collision). It's impossible connect to real ZX Spectrums. But exist way - add resistors between data lines on connector and data on card. As on my K-MOUSE interface:
Yes, this is better. But 100% correct way is software reset (or CPLD write values to registers)Об этом я не думал. Мне больше нравится идея с отключением питания.
About this I did not think. I more like the idea with disconnect and reconnect power supply.
Последний раз редактировалось VELESOFT; 14.12.2009 в 20:26.
Согласен. Отключение чипа необходимо сделать.
Agree. Unhooking the chip necessary to do.
При наличии карты, в установке внутреннего AY необходимости нет.
Я так думаю.
At presence of the card, in installation internal AY need no.
I so think.
Согласен, но в ATF1502 маловато ресурсов для реализации автоматического сброса SAA1099. И при том, что я в CPLD пока еще новичок.
Agree, but in ATF1502 not quite enough resource for realization of the automatic unset SAA1099. And under that I in CPLD so far beginner.
OUT 65533, BIN 100000xx = CLOCK 1.AY
OUT 65533, BIN 010000xx = CLOCK 2.AY
OUT 65533, BIN 110000xx = CLOCK SAA1099
OUT 65533, BIN 001000xx = features:
OUT 65533,001000x1 both AY chips work parallel (OUT 65533,001000x0 off this function)
AY FREQ:
1.77777 MHz ( ZX128 = 1.77345 MHz )
2 MHz ( ATARI ST = 2 MHz )
1 MHz ( AMSTRAD CPC = 1 MHz )
3.55555 MHz (PRETAKTOVANA AY)
SAA1099 FREQ:
8 MHz (original)
6 MHz
4.8 MHz
4 MHz
Тут подумал как сделать включение и отключение питания SAA1099. Конечно проще поставить оптоключ и рулить им. Вот подумал а что если не отходить идеологии TSFM - управлять через внутренний псевдорегистр AY.
Вот выдержка из мануала по TSFM
Шаблон адреса (старший разряд слева): 11111<fm><stat><sel>
fm = 1 – блокировка fm генерации/0 – разрешение fm генерации;
stat = 1 – вывод содержимого регистра SSG/0 – вывод статусного регистра;
sel = 0 – выбор D1 чипа для работы/1- выбор D2 чипа для работы.
Так вот что если управление сделать так: 1111<saa><fm><stat><sel>
где saa = 1 выключен(для совместимости существующего ПО, чтобы не включать чип лишний раз)/0 - разрешение SAA1099
Посему вопрос к CHRV, если конечно ты в эту тему заглядываешь. Роман у вас не планируется дальнейшее развитие данной платы, можно задействовать этот бит?
Последний раз редактировалось Mick; 16.12.2009 в 19:04.
Вобщем, с CHRV поговорили. Он не против, чтобы задействовать сей бит.
Посему в этой карте для управления чипами будет выглядеть так.
Шаблон адреса (старший разряд слева): 1111<saa><fm><stat><sel>
saa = 1 выключен(для совместимости существующего ПО, чтобы не включать чип лишний раз)/0 - разрешение SAA1099
fm = 1 – блокировка fm генерации/0 – разрешение fm генерации;
stat = 1 – вывод содержимого регистра SSG/0 – вывод статусного регистра;
sel = 0 – выбор AY1 чипа для работы/1- выбор AY2 чипа для работы.
Последний раз редактировалось Mick; 17.12.2009 в 07:05.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)