RE: LMC1992/Microwire test WAS: [hatari-devel] No sound in the Pacemaker Demo

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


Hi All,

as a curiosity did a dump of Microwire registers for combination $C1FF / $80e2 (-12db master volume).
Dump below is done by Blitter, so that samples were taken every 8 cycles.  We can see below how the data and the mask are rotated - 1bit per sample (8 cyles)

Blitter - Microwire Mask read:
pass1 pass2 pass3 pass4
----- ----- ----- -----
$80e2 $80e2 $80e2 $80e2
$0388 $80e2 $80e2 $80e2
$0710 $80e2 $01c4 $80e2
$1c40 $80e2 $0710 $80e2
$3880 $80e2 $0e20 $80e2
$e200 $80e2 $3880 $80e2
$c400 $01c4 $7100 $80e2
$1000 $0388 $c400 $80e2
$2000 $0e20 $8800 $80e2
$8000 $1c40 $2000 $0388
$0000 $7100 $4000 $0710
$0000 $e200 $0000 $1c40
$0000 $8800 $0000 $3880
$0000 $1000 $0000 $e200
$0000 $4000 $0000 $c400
$0000 $8000 $0000 $1000
$0000 $0000 $0000 $2000
$0000 $0000 $0000 $8000
$0000 $0000 $0000 $0000
[...]

Blitter - Microwire Mask read:
pass1 pass2 pass3 pass4
----- ----- ----- -----
$c1ff $c1ff $c1ff $c1ff
$c1ff $c1ff $c1ff $c1ff
$c1ff $c1ff $c1ff $c1ff
$83ff $c1ff $c1ff $c1ff
$0ffe $c1ff $83ff $c1ff
$1ffc $c1ff $07ff $c1ff
$7ff0 $c1ff $1ffc $c1ff
$ffe0 $c1ff $3ff8 $c1ff
$ff83 $83ff $ffe0 $c1ff
$ff07 $07ff $ffc1 $c1ff
$fc1f $1ffc $ff07 $c1ff
$f83f $3ff8 $fe0f $07ff
$e0ff $ffe0 $f83f $0ffe
$c1ff $ffc1 $f07f $3ff8
$c1ff $ff07 $c1ff $7ff0
$c1ff $fe0f $c1ff $ffc1
$c1ff $f83f $c1ff $ff83
$c1ff $f07f $c1ff $fe0f
$c1ff $c1ff $c1ff $fc1f
$c1ff $c1ff $c1ff $f07f
$c1ff $c1ff $c1ff $e0ff
$c1ff $c1ff $c1ff $c1ff
[...]


That dump was done with MCRW.PRG for $7FF mask and MCRW1.PRG for $c1ff mask. The data file is saved as c:\RESULT.BIN . That file can be parsed with MCRW.py/MCRW.html. In attached file MCRW2.zip are also other results for Hatari/STE/MegaSTE 8/16Mhz


BR
Cyprian
-----Original Message-----
From: Konador, Cyprian 
Sent: Wednesday, June 04, 2014 10:11 AM
To: hatari-devel@xxxxxxxxxxxxxxxxxxx
Subject: LMC1992/Microwire test WAS: [hatari-devel] No sound in the Pacemaker Demo

Hi All,

I've just checked that case on real MSTE and combination $ C1FF/$8000 gives the same result as $401/$7ff
How I checked that. I know (http://www.atari-forum.com/viewtopic.php?f=3&t=26360&start=250#p252373) that YM is only audible when LMC mixer is set to Input1.
When Open/Input2/Input3/Input4 is chosen, then the only DMA Sound is audible.

Therefore, first of all I muted YM sound by setting LMC Mixer to Open. 
In the second step, I unmuted YM by setting LMC Mixer to Input1. As expected, keyboard click was audible here.
Again I muted YM sound by setting LMC Mixer to Open.
And finally I run "Test Case1" code - keyboard click was audible here again.

Test Case1
	move.w   #$C1FF,$ffff8924.w   ;set microwire mask
	move.w   #$8000,$ffff8922.w  	;set microwire data
	
Mixer - Input1
	move.w   #$7FF,$ffff8924.w   ;set microwire mask
	move.w   #$401,$ffff8922.w  	;set microwire data

Mixer - Open:
	move.w   #$7FF,$ffff8924.w   ;set microwire mask
	move.w   #$400,$ffff8922.w  	;set microwire data


Attached you can find my test applications with source code

LMC_0 - Mixer - Open
LMC_1 - Mixer - Input1
LMC_0B - Test Case1


thanks
BR
Cyprian

-----Original Message-----
From: David Savinkoff [mailto:dsavnkff@xxxxxxxxx] 
Sent: Tuesday, June 03, 2014 9:29 PM
To: hatari-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [hatari-devel] No sound in the Pacemaker Demo

Note that the data and mask are serially clocked and shifted out
to form the three wire interface; data, data_enable, and clock.

----- David Savinkoff wrote:
> ----- Nicolas Pomarède wrote:
> > Le 29/05/2014 20:00, Jerome Vernet a écrit :
> > > On 29/05/14 16:28, Eero Tamminen wrote:
> > 
> > >
> > > Still no sound in the Pacemaker Demo.
> > >
> > 
> > It seems  there's a problem when microwire mixer is set.
> > 
> > Demo set mask to 0xc1ff and data to 0x8000, which should decode as 
> > command 10 000 000000 and set mixer=0.
> > 
> > But as it was tested lately on real STE (see 
> > http://www.atari-forum.com/viewtopic.php?f=3&t=26360&start=250#p252373
> > , mixer=0 doesn't give any sound. So, this was recently modified in Hatari.
> > 
> > But this demo use a non standard mask of 0xc1ff instead of 0x7ff, maybe 
> > in that case the microwire ignores the command and we should keep the 
> > value set by TOS, which is mixer=1.
> 
> I believe you are correct ( 0xc1ff erroneously contravenes specifications).
> 
> > 
> > I need to check that in the microwire doc.
> > 
> > Nicolas
> > 
> 
> I looked at the LMC1992 data sheet, here is what I surmise:
> 
> 1) The mask must be at least eleven consecutive bits long, or the
>    LMC1992 is left in an intermediate state, and restarts the sequence
>    when there is a break in the mask. Think of the Mask as an enable
>    signal.
>    (Six usable 11 bit Masks. eg. 0011111111111000, 0000011111111111)
>    (Five usable 12 bit Masks)
>    (Zero usable Masks less than 11 bits long)
> 
>    Note that it may be possible to send two (or more) 16 bit Masks that
>    act as a single 32 bit Mask.
>    ( 0000000000011111, 1111110000000000 )
> 
> 2) The first two Mask bits are a device address. The last nine bits
>    are register bits. Any bits between the first two and last nine are
>    lost when the Mask is longer than eleven bits.
> 
> 



Attachment: MCRW2.zip
Description: MCRW2.zip



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/