Previous 199869 Revisions Next

r19111 Friday 23rd November, 2012 at 07:21:07 UTC by Jonathan Gevaryahu
(MESS) UPD1771: Comment updates from plgDavid
[src/mess/audio]upd1771.c

trunk/src/mess/audio/upd1771.c
r19110r19111
55    Made using recording/analysis on a Yeno (PAL Super Cassete Vision)
66    by plgDavid
77
8    Full markings on my 2 specimens are "NEC JAPAN 8431K9 D1771C 017"
9    31th week of 1984, mask rom #017
8    Full markings on my 2 specimens are
9    "NEC JAPAN 8431K9 D1771C 017" (31st week of 1984, mask rom #017)
1010
11    Ive seen mentions of a 006, 011 and 015 on part miner sites.
11    I've since (October 2012) got a Grandstand Firefox F-7 Handheld game
12    (AKA Epoch GalagaX6/Epoch Astro Thunder 7/Tandy Astro Thunder),
13    (http://www.handheldmuseum.com/Grandstand/Firefox.htm)
14    which includes a
15    "NEC JAPAN 8319K9 D1771C 011" (19th week of 1983, mask rom #011)
16    Thanks to user 'Blanka' from Dragonslairfans for the nice catch!
17    (http://www.dragonslairfans.com/smfor/index.php?topic=3061.0)
18
19    I've also seen mentions of a 006 and 015 on part miner sites, and since lots
20    of part miner sites are the equivalent of email crawlers for chips,
21    its possible that these other variants actually exist.
22    Its anyone's guess at this point in which products.
23
1224    Since the chip generates tones using embeded wavetables,
1325    it is probable other sounds are possible and were made for other embeded systems.
14    Its anyone's guess at this point in which products.
1526
1627    upd17XXX devices are typically 4bit NEC MCUs, so it wouldnt be a stretch to
1728    say that this chip is part of that lot.
18    Maybe mask roms 006,011 and 015 dont generate audio at all.
29    Maybe mask roms 006,and 015 dont generate audio at all, though 011 does.
1930
2031     Used pinout in the SCV:
2132
r19110r19111
4960
5061    Pins 11 and 13 go to a special circuit, which according to kevtris's analysis
5162    of my schematics, consist of a balanced output (not unlike XLR cables),
52    which are then combined togheter then sent to the RF box.
63    which are then combined together then sent to the RF box.
5364
54    All NC pins are unknown, maybe some are "test" pins.
65    All NC pins are unknown, maybe some are "test" pins.
5566
5667    All writes are made through address 0x3600 on the upD7801
5768    Instead of using register=value, this chip require sending multiple
r19110r19111
6879#define MAX_PACKET_SIZE 0x8000
6980
7081/*
71  Each of the 8 waveforms have been sampled at 192Khz using period 0xFF,
82  Each of the 8 waveforms have been sampled at 192kHz using period 0xFF,
7283  filtered, and each of the 32 levels have been calculated with averages on around 10 samples
73  (removing the transition samples) then quantized to 8bit signed.
74  We are not clear on the exact DAC details yet, especially with regards to volume changes
84  (removing the transition samples) then quantized to int8_t's.
85  We are not clear on the exact DAC details yet, especially with regards to volume changes.
7586
7687  External AC coupling is assumed in the use of this DAC, so we will center the 8bit data using a signed container
7788*/
r19110r19111
136147    UINT8    t_offset; //[0; 32]
137148    UINT16   t_period; //[0;255]
138149    UINT8    t_volume; //[0; 31]
139    UINT8    t_tpos;//timber pos
150    UINT8    t_tpos;//timbre pos
140151    UINT16   t_ppos;//period pos
141152
142153    //noise wavetable LFSR
143154    UINT8    nw_timbre; //[0;  7]
144155    UINT8    nw_volume; //[0; 31]
145156    UINT32   nw_period;
146    UINT32   nw_tpos;   //timber pos
157    UINT32   nw_tpos;   //timbre pos
147158    UINT32   nw_ppos;   //period pos
148159
149160    //noise pulse components
r19110r19111
169180
170181/*
171182*************TONE*****************
172Tone consist of a wavetable playback mechanism.
183Tone consists of a wavetable playback mechanism.
173184Each wavetable is a looping period of 32 samples but can be played with an offset from any point in the table
174185effectively shrinking the sample loop, thus allowing different pitch "macros ranges" to be played.
175186This method is rather crude because the spectrum of the sound get heavily altered...
r19110r19111
220231   LSB 5 bits of "Volume"
221232
222233
223Byte4: 0bPPPPPPPP  Low Freq0 period(if not 0 this peridically resets the  Wavetable LFSR)
224Byte5: 0bPPPPPPPP  Low Freq1 period(if not 0 this peridically resets the  Wavetable LFSR)
225Byte6: 0bPPPPPPPP  Low Freq2 period(if not 0 this peridically resets the  Wavetable LFSR)
234Byte4: 0bPPPPPPPP  Low Freq0 period(if not 0 this periodically resets the  Wavetable LFSR)
235Byte5: 0bPPPPPPPP  Low Freq1 period(if not 0 this periodically resets the  Wavetable LFSR)
236Byte6: 0bPPPPPPPP  Low Freq2 period(if not 0 this periodically resets the  Wavetable LFSR)
226237
227238Byte7: 0b???VVVVV  Low Freq0 volume
228239Byte8: 0b???VVVVV  Low Freq1 volume

Previous 199869 Revisions Next


© 1997-2024 The MAME Team