PDA

Просмотр полной версии : Можно ли программно определить наличие AY



Slider
17.01.2009, 01:48
...и как это делается?

Vitamin
17.01.2009, 02:10
2) Определение наличия у компа муз. платы:

Muzak ld bc,65533
ld a,0
out (c),a
ld b,191
ld a,64
out (c),a
ld b,255
in a,(c)
cp 64
jr z,есть

Тут тоже все просто.

3) Если муз. плата все же нашлась предыду-
щей процедуркой, то теперь можно опреде-
лить ее тип:

Tip ld bc,65533
ld a,16
out (c),a
in a,(c)
cp 255
jr nz,AY-8910/12
jr YAMAHA 2149F


LPrint #21 from zxdn.narod.ru

Antipod
17.01.2009, 17:39
...и как это делается?Принцип, как мы видим, основан на том, чтоб записать некое значение в регист АУ, а потом считать. %)

=ANDROID=
20.01.2009, 15:18
Определение наличия у компа муз. платы
Отлично! Мож сделаешь из этого tap файл и выложишь? Много времени то не займет... Кстати, как будут на это реагировать различные эмуляторы?

Vitamin
20.01.2009, 19:15
Отлично! Мож сделаешь из этого tap файл и выложишь? Много времени то не займет...
Сейчас нечем.


Кстати, как будут на это реагировать различные эмуляторы?
Ну запусти тот же Test4.20 (вроде бы). Он все проверяет. US эмулирует разные типы сопроцессоров, т.е. определится.

scl^mc
24.01.2009, 16:12
Мож сделаешь из этого tap файл и выложишь
а почему именно tap?

Addison
24.01.2009, 23:34
а почему именно tap?
Потому что не все Tr-Dos'ом юзаются, а тапки всем угодят.

Rindex
24.01.2009, 23:54
Потому что не все Tr-Dos'ом юзаются, а тапки всем угодят.

Не смеши мои tap-ки. Просто у тебя +3. ;)

rasmer
01.02.2009, 20:57
Slider, найди тута мою тему про тест-пзу... Там всё с исходами... процедурко определялова АУшки имееццо...

Rindex
01.02.2009, 21:00
Slider, найди тута мою тему про тест-пзу... Там всё с исходами... процедурко определялова АУшки имееццо...

Чтоб не искать, вот вроде она: http://www.zx.pk.ru/showthread.php?t=7554&highlight=%F2%E5%F1%F2-%EF%E7%F3

himik
09.02.2009, 22:04
а у меня баще :)


;-------------------------------
;Turbo Sound проверялка
;AY/YM проверялка

XOR A
LD HL,#FE00
LD DE,#FFBF
LD BC,#FFFD
OUT (C),B ;SELECT TS AY0 CHRV
OUT (C),A ;SELECT REG 0
LD B,E
OUT (C),B ;WRITE #BF IN REG 0 AY0 CHRV
INC A
OUT (#1F),A ;SELECT TS AY1 POS
OUT (C),C ;WRITE #FD IN REG 0 AY1 POS
LD B,D
OUT (C),H ;SELECT TS AY1 CHRV
OUT (C),L ;SELECT REG 0
LD B,E
OUT (C),H ;WRITE #FE IN REG 0 AY1 CHRV
LD A,L
OUT (#1F),A ;SELECT TS AY0 POS
OUT (C),L ;WRITE #00 IN REG 0 AY0 POS
INC A
OUT (#1F),A ;SELECT TS AY1 POS
LD B,D
OUT (C),D ;SELECT TS AY0 CHRV
OUT (C),L ;SELECT REG 0
IN A,(C) ;READ BYTE FROM REG 0
CP C
;TS PoS
;TS NPC
;NO AY
;AY/YM

;переходим если нашли Turbo-Sound by NedoPC

JR Z,TS_NedoPC

;переходим если нет ваще чипа

INC A
JR Z,NO_AY

;переходим если нашли Turbo-Sound by PoS
INC A
JR Z,TS_PoS

;пришли сюда если у нас всего один чип и он есть

;......