trunk/src/emu/sound/upd7759.c
| r17757 | r17758 | |
| 1 | 1 | /************************************************************ |
| 2 | 2 | |
| 3 | | NEC UPD7759 ADPCM Speech Processor |
| 3 | NEC uPD7759/55/56/P56/57/58 ADPCM Speech Processor |
| 4 | 4 | by: Juergen Buchmueller, Mike Balfour, Howie Cohen, |
| 5 | 5 | Olivier Galibert, and Aaron Giles |
| 6 | 6 | |
| 7 | 7 | ************************************************************* |
| 8 | 8 | |
| 9 | | Description: |
| 9 | uPD7759 Description: |
| 10 | 10 | |
| 11 | 11 | The UPD7759 is a speech processing LSI that utilizes ADPCM to produce |
| 12 | 12 | speech or other sampled sounds. It can directly address up to 1Mbit |
| r17757 | r17758 | |
| 95 | 95 | sample and the engine stops. OTOH, there is a 0x00 at the end too. |
| 96 | 96 | Go figure. |
| 97 | 97 | |
| 98 | ************************************************************* |
| 99 | |
| 100 | The other chip models don't support slave mode, and have an internal ROM. |
| 101 | Other than that, they are thought to be nearly identical to uPD7759. |
| 102 | |
| 103 | 55C 18-pin DIP 96 Kbit ROM |
| 104 | 55G 24-pin SOP 96 Kbit ROM |
| 105 | 56C 18-pin DIP 256 Kbit ROM |
| 106 | 56G 24-pin SOP 256 Kbit ROM |
| 107 | P56CR 20-pin DIP 256 Kbit ROM (OTP) |
| 108 | P56G 24-pin SOP 256 Kbit ROM (OTP) |
| 109 | 57C 18-pin DIP 512 Kbit ROM |
| 110 | 57G 24-pin SOP 512 Kbit ROM |
| 111 | 58C 18-pin DIP 1 Mbit ROM |
| 112 | 58G 24-pin SOP 1 Mbit ROM |
| 113 | |
| 98 | 114 | *************************************************************/ |
| 99 | 115 | |
| 100 | 116 | #include "emu.h" |
| r17757 | r17758 | |
| 665 | 681 | chip->rom = chip->rombase = *device->region(); |
| 666 | 682 | if (chip->rombase == NULL) |
| 667 | 683 | { |
| 684 | assert(device->type() == UPD7759); // other chips do not support slave mode |
| 668 | 685 | chip->timer = device->machine().scheduler().timer_alloc(FUNC(upd7759_slave_update), chip); |
| 669 | 686 | chip->rommask = 0; |
| 670 | 687 | } |