Previous 15994 Revisions Next

r4306 Friday 20th February, 2009 at 11:10:47 UTC by Robbbert
Fixed various regressions. N64 still has drc error.
[src/mame/machine]n64.c
[src/mess/drivers]crvision.c dc.c ex800.c glasgow.c hp48.c ip22.c jaguar.c mephisto.c osi.c pc8801.c pce.c pcw.c pcw16.c sms.c studio2.c tmc1800.c tmc2000e.c
[src/mess/machine]electron.c osborne1.c pc8801.c
[src/mess/video]cdp1864.c

src/mame/machine/n64.c
r4305r4306
812812
813813//  mame_printf_debug("DACDMA: %x for %x bytes\n", current->address, current->length);
814814
815   dmadac[0] = devtag_get_device(machine, SOUND, "dac1");
816   dmadac[1] = devtag_get_device(machine, SOUND, "dac2");
815   dmadac[0] = devtag_get_device(machine, SOUND, "dmadac.l");
816   dmadac[1] = devtag_get_device(machine, SOUND, "dmadac.r");
817817    dmadac_transfer(&dmadac[0], 2, 2, 2, current->length/4, ram);
818818
819819    ai_status |= 0x40000000;
r4305r4306
897897
898898        case 0x10/4:        // AI_DACRATE_REG
899899            ai_dacrate = data & 0x3fff;
900      dmadac[0] = devtag_get_device(space->machine, SOUND, "dmadac.l");
901      dmadac[1] = devtag_get_device(space->machine, SOUND, "dmadac.r");
900902            dmadac_set_frequency(&dmadac[0], 2, (double)DACRATE_NTSC / (double)(ai_dacrate+1));
901903            printf( "frequency: %f\n", (double)DACRATE_NTSC / (double)(ai_dacrate+1) );
902904            dmadac_enable(&dmadac[0], 2, 1);
src/mess/video/cdp1864.c
r4305r4306
238238void cdp1864_aoe_w(const device_config *device, int level)
239239{
240240   cdp1864_t *cdp1864 = get_safe_token(device);
241   const device_config *speaker = devtag_get_device(device->machine, SOUND, "beep");
241242
242243   if (!level)
243244   {
r4305r4306
246247
247248   cdp1864->audio = level;
248249
249   beep_set_state(0, level); // TODO: remove this
250   beep_set_state(speaker, level); // TODO: remove this
250251}
251252
252253/*-------------------------------------------------
r4305r4306
298299WRITE8_DEVICE_HANDLER( cdp1864_tone_latch_w )
299300{
300301   cdp1864_t *cdp1864 = get_safe_token(device);
302   const device_config *speaker = devtag_get_device(device->machine, SOUND, "beep");
301303
302304   cdp1864->latch = data;
303   beep_set_frequency(0, CDP1864_CLOCK / 8 / 4 / (data + 1) / 2); // TODO: remove this
305   beep_set_frequency(speaker, CDP1864_CLOCK / 8 / 4 / (data + 1) / 2); // TODO: remove this
304306}
305307
306308/*-------------------------------------------------
src/mess/machine/electron.c
r4305r4306
148148static const int electron_palette_offset[4] = { 0, 4, 5, 1 };
149149static const UINT16 electron_screen_base[8] = { 0x3000, 0x3000, 0x3000, 0x4000, 0x5800, 0x5800, 0x6000, 0x5800 };
150150
151WRITE8_HANDLER( electron_ula_w ) {
151WRITE8_HANDLER( electron_ula_w )
152{
153   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
152154   int i = electron_palette_offset[(( offset >> 1 ) & 0x03)];
153155   logerror( "ULA: write offset %02x <- %02x\n", offset & 0x0f, data );
154156   switch( offset & 0x0f ) {
r4305r4306
198200      break;
199201   case 0x06:   /* Counter divider */
200202      if ( electron_ula.communication_mode == 0x01) {
201         beep_set_frequency( 0, 1000000 / ( 16 * ( data + 1 ) ) );
203         beep_set_frequency( speaker, 1000000 / ( 16 * ( data + 1 ) ) );
202204      }
203205      break;
204206   case 0x07:   /* Misc. */
205207      electron_ula.communication_mode = ( data >> 1 ) & 0x03;
206208      switch( electron_ula.communication_mode ) {
207209      case 0x00:   /* cassette input */
208         beep_set_state( 0, 0 );
210         beep_set_state( speaker, 0 );
209211         electron_tape_start();
210212         break;
211213      case 0x01:   /* sound generation */
212         beep_set_state( 0, 1 );
214         beep_set_state( speaker, 1 );
213215         electron_tape_stop();
214216         break;
215217      case 0x02:   /* cassette output */
216         beep_set_state( 0, 0 );
218         beep_set_state( speaker, 0 );
217219         electron_tape_stop();
218220         break;
219221      case 0x03:   /* not used */
220         beep_set_state( 0, 0 );
222         beep_set_state( speaker, 0 );
221223         electron_tape_stop();
222224         break;
223225      }
r4305r4306
268270
269271static TIMER_CALLBACK(setup_beep)
270272{
271   beep_set_state( 0, 0 );
272   beep_set_frequency( 0, 300 );
273   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
274   beep_set_state( speaker, 0 );
275   beep_set_frequency( speaker, 300 );
273276}
274277
275278static void electron_reset(running_machine *machine)
src/mess/machine/osborne1.c
r4305r4306
342342static TIMER_CALLBACK(osborne1_video_callback)
343343{
344344   const address_space* space = cpu_get_address_space(machine->cpu[0],ADDRESS_SPACE_PROGRAM);
345   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
345346   int y = video_screen_get_vpos(machine->primary_screen);
346347
347348   /* Check for start of frame */
r4305r4306
393394
394395   if ( ( y % 10 ) == 2 || ( y % 10 ) == 6 )
395396   {
396      beep_set_state( 0, osborne1.beep );
397      beep_set_state( speaker, osborne1.beep );
397398   }
398399   else
399400   {
400      beep_set_state( 0, 0 );
401      beep_set_state( speaker, 0 );
401402   }
402403
403404   timer_adjust_oneshot(osborne1.video_timer, video_screen_get_time_until_pos(machine->primary_screen, y + 1, 0 ), 0);
r4305r4306
470471
471472static TIMER_CALLBACK( setup_beep )
472473{
473   beep_set_state( 0, 0 );
474   beep_set_frequency( 0, 300 /* 60 * 240 / 2 */ );
474   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
475   beep_set_state( speaker, 0 );
476   beep_set_frequency( speaker, 300 /* 60 * 240 / 2 */ );
475477}
476478
477479
src/mess/machine/pc8801.c
r4305r4306
179179
180180WRITE8_HANDLER(pc88sr_outport_30)
181181{
182  /* bit 1-5 not implemented yet */
183  pc88sr_disp_30(space, offset,data);
182   /* bit 1-5 not implemented yet */
183   pc88sr_disp_30(space, offset,data);
184184}
185185
186186WRITE8_HANDLER(pc88sr_outport_40)
187187     /* bit 3,4,6 not implemented */
188188     /* bit 7 incorrect behavior */
189189{
190  static int port_save;
190   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
191   static int port_save;
191192
192  if((port_save&0x02) == 0x00 && (data&0x02) != 0x00) calender_strobe(space->machine);
193  if((port_save&0x04) == 0x00 && (data&0x04) != 0x00) calender_shift();
194  port_save=data;
193   if((port_save&0x02) == 0x00 && (data&0x02) != 0x00) calender_strobe(space->machine);
194   if((port_save&0x04) == 0x00 && (data&0x04) != 0x00) calender_shift();
195   port_save=data;
195196
196  if((input_port_read(space->machine, "DSW1") & 0x40) == 0x00)
197  {
198    data&=0x7f;
199  }
200  switch(data&0xa0) {
201  case 0x00:
202    beep_set_state(0, 0);
203    break;
204  case 0x20:
205    beep_set_frequency(0, 2400);
206    beep_set_state(0, 1);
207    break;
208  case 0x80:
209  case 0xa0:
210    beep_set_frequency(0, 0);
211    beep_set_state(0, 1);
212    break;
213  }
197   if((input_port_read(space->machine, "DSW1") & 0x40) == 0x00) data&=0x7f;
198
199   switch(data&0xa0)
200   {
201      case 0x00:
202         beep_set_state(speaker, 0);
203         break;
204      case 0x20:
205         beep_set_frequency(speaker, 2400);
206         beep_set_state(speaker, 1);
207         break;
208      case 0x80:
209      case 0xa0:
210         beep_set_frequency(speaker, 0);
211         beep_set_state(speaker, 1);
212         break;
213   }
214214}
215215
216216READ8_HANDLER(pc88sr_inport_40)
r4305r4306
693693
694694static void pc88sr_ch_reset (running_machine *machine, int hireso)
695695{
696  int a;
696   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
697   int a;
697698
698  a=input_port_read(machine, "CFG");
699  is_Nbasic = ((a&0x01)==0x00);
700  is_V2mode = ((a&0x02)==0x00);
701  pc88sr_is_highspeed = ((a&0x04)!=0x00);
702  is_8MHz = ((a&0x08)!=0x00);
703  fix_V1V2();
704  pc8801_init_bank(machine, hireso);
705  pc8801_init_5fd(machine);
706  pc8801_init_interrupt(machine);
707  beep_set_state(0, 0);
708  beep_set_frequency(0, 2400);
709  pc88sr_init_fmsound();
699   a=input_port_read(machine, "CFG");
700   is_Nbasic = ((a&0x01)==0x00);
701   is_V2mode = ((a&0x02)==0x00);
702   pc88sr_is_highspeed = ((a&0x04)!=0x00);
703   is_8MHz = ((a&0x08)!=0x00);
704   fix_V1V2();
705   pc8801_init_bank(machine, hireso);
706   pc8801_init_5fd(machine);
707   pc8801_init_interrupt(machine);
708   beep_set_state(speaker, 0);
709   beep_set_frequency(speaker, 2400);
710   pc88sr_init_fmsound();
710711}
711712
712713MACHINE_RESET( pc88srl )
713714{
714  pc88sr_ch_reset(machine, 0);
715   pc88sr_ch_reset(machine, 0);
715716}
716717
717718MACHINE_RESET( pc88srh )
src/mess/drivers/jaguar.c
r4305r4306
481481
482482   /* sound hardware */
483483   MDRV_SPEAKER_STANDARD_STEREO("left", "right")
484   MDRV_SOUND_ADD("dac.l", DAC, 0)
484   MDRV_SOUND_ADD("dac1", DAC, 0)
485485   MDRV_SOUND_ROUTE(ALL_OUTPUTS, "left", 1.0)
486   MDRV_SOUND_ADD("dac.r", DAC, 0)
486   MDRV_SOUND_ADD("dac2", DAC, 0)
487487   MDRV_SOUND_ROUTE(ALL_OUTPUTS, "right", 1.0)
488488
489489   /* quickload */
src/mess/drivers/hp48.c
r4305r4306
148148
149149  References:
150150
151  - Voyage au centre de la HP48 S/SX, by Paul Courbis & Sébastien Lalande
151  - Voyage au centre de la HP48 S/SX, by Paul Courbis & Sébastien Lalande
152152    (English version: HP48 machine language - a journey to the center
153153     of the HP48 s/sx)
154154    available at http://www.courbis.com
r4305r4306
810810   The G+ model has always revision R.
811811 */
812812ROM_START ( hp48gx )
813      ROM_DEFAULT_BIOS("r")
814      ROM_REGION( 0x80000, "main", 0 )
813   ROM_REGION( 0x80000, "main", 0 )
814   ROM_DEFAULT_BIOS("r")
815815
816816   /* in chronological order, from first revision, version r is default*/
817817   ROM_SYSTEM_BIOS( 0, "k", "Version K" )
818   ROMX_LOAD( "gxrom-k",
819         0x00000, 0x80000,
820         CRC(bdd5d2ee) SHA1(afa1498238e991b1e3d07fb8b4c227b115f7bcc1),
821         ROM_BIOS(1) )
818   ROMX_LOAD( "gxrom-k", 0x00000, 0x80000, CRC(bdd5d2ee) SHA1(afa1498238e991b1e3d07fb8b4c227b115f7bcc1), ROM_BIOS(1) )
822819
823820   ROM_SYSTEM_BIOS( 1, "l", "Version L" )
824   ROMX_LOAD( "gxrom-l",
825         0x00000, 0x80000,
826         CRC(70958e6b) SHA1(8eebac69ff804086247b989bf320e57a2d8a59a7),
827         ROM_BIOS(2) )
821   ROMX_LOAD( "gxrom-l", 0x00000, 0x80000, CRC(70958e6b) SHA1(8eebac69ff804086247b989bf320e57a2d8a59a7), ROM_BIOS(2) )
828822
829823   ROM_SYSTEM_BIOS( 2, "m", "Version M" )
830   ROMX_LOAD( "gxrom-m",
831         0x00000, 0x80000,
832         CRC(e21a09e4) SHA1(09932d543594e459eeb94a79654168cd15e79a87),
833         ROM_BIOS(3) )
824   ROMX_LOAD( "gxrom-m", 0x00000, 0x80000, CRC(e21a09e4) SHA1(09932d543594e459eeb94a79654168cd15e79a87), ROM_BIOS(3) )
834825
835826   /* there does not seem to exist an N revision? */
836827
837828   ROM_SYSTEM_BIOS( 3, "p", "Version P" )
838   ROMX_LOAD( "gxrom-p",
839         0x00000, 0x80000,
840         CRC(022d46df) SHA1(877a536865641f096212d1ce7296f580afbd6a2d),
841         ROM_BIOS(4) )
829   ROMX_LOAD( "gxrom-p", 0x00000, 0x80000, CRC(022d46df) SHA1(877a536865641f096212d1ce7296f580afbd6a2d), ROM_BIOS(4) )
842830
843831   ROM_SYSTEM_BIOS( 4, "r", "Version R" )
844   ROMX_LOAD( "gxrom-r",
845         0x00000, 0x80000,
846         CRC(00ee1a62) SHA1(5705fc9ea791916c4456ac35e22275862411db9b),
847         ROM_BIOS(5) )
832   ROMX_LOAD( "gxrom-r", 0x00000, 0x80000, CRC(00ee1a62) SHA1(5705fc9ea791916c4456ac35e22275862411db9b), ROM_BIOS(5) )
848833
849834ROM_END
850835
r4305r4306
860845 */
861846
862847ROM_START ( hp48sx )
863      ROM_DEFAULT_BIOS("j")
864      ROM_REGION( 0x40000, "main", 0 )
848   ROM_REGION( 0x40000, "main", 0 )
849   ROM_DEFAULT_BIOS("j")
865850
866851   /* in chronological order, from first revision, version j is default*/
867852   ROM_SYSTEM_BIOS( 0, "a", "Version A" )
868   ROMX_LOAD( "sxrom-a",
869         0x00000, 0x40000,
870         CRC(a87696c7) SHA1(3271b103ad99254d069e20171beb418ace72cc90),
871         ROM_BIOS(1) )
853   ROMX_LOAD( "sxrom-a", 0x00000, 0x40000, CRC(a87696c7) SHA1(3271b103ad99254d069e20171beb418ace72cc90), ROM_BIOS(1) )
872854
873855   ROM_SYSTEM_BIOS( 1, "b", "Version B" )
874   ROMX_LOAD( "sxrom-b",
875         0x00000, 0x40000,
876         CRC(034f6ce4) SHA1(acd256f2efee868ce402008f4131d94b312e60bc),
877         ROM_BIOS(2) )
856   ROMX_LOAD( "sxrom-b", 0x00000, 0x40000, CRC(034f6ce4) SHA1(acd256f2efee868ce402008f4131d94b312e60bc), ROM_BIOS(2) )
878857
879858   ROM_SYSTEM_BIOS( 2, "c", "Version C" )
880   ROMX_LOAD( "sxrom-c",
881         0x00000, 0x40000,
882         CRC(a9a0279d) SHA1(fee852d43ae6941d07a9d0d31f37e68e4f9051b1),
883         ROM_BIOS(3) )
859   ROMX_LOAD( "sxrom-c", 0x00000, 0x40000, CRC(a9a0279d) SHA1(fee852d43ae6941d07a9d0d31f37e68e4f9051b1), ROM_BIOS(3) )
884860
885861   ROM_SYSTEM_BIOS( 3, "d", "Version D" )
886   ROMX_LOAD( "sxrom-d",
887         0x00000, 0x40000,
888         CRC(f8f5dc58) SHA1(3be5f895f4c731fd4c863237c7342cab4e8c42b1),
889         ROM_BIOS(4) )
862   ROMX_LOAD( "sxrom-d", 0x00000, 0x40000, CRC(f8f5dc58) SHA1(3be5f895f4c731fd4c863237c7342cab4e8c42b1), ROM_BIOS(4) )
890863
891864   ROM_SYSTEM_BIOS( 4, "e", "Version E" )
892   ROMX_LOAD( "sxrom-e",
893         0x00000, 0x40000,
894         CRC(704ffa08) SHA1(0d498d135bf729c1d775cce522528837729e2e94),
895         ROM_BIOS(5) )
865   ROMX_LOAD( "sxrom-e", 0x00000, 0x40000, CRC(704ffa08) SHA1(0d498d135bf729c1d775cce522528837729e2e94), ROM_BIOS(5) )
896866
897867   ROM_SYSTEM_BIOS( 5, "j", "Version J" )
898   ROMX_LOAD( "sxrom-j",
899         0x00000, 0x40000,
900         CRC(1a6378ef) SHA1(5235f5379f1fd7edfe9bb6bf466b60d279163e73),
901         ROM_BIOS(6) )
868   ROMX_LOAD( "sxrom-j", 0x00000, 0x40000, CRC(1a6378ef) SHA1(5235f5379f1fd7edfe9bb6bf466b60d279163e73), ROM_BIOS(6) )
902869
903870   /* no F, G, H, I revisions? */
904871
src/mess/drivers/pcw16.c
r4305r4306
10561056
10571057static WRITE8_HANDLER(pcw16_system_control_w)
10581058{
1059   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
10591060   //logerror("0x0f8: function: %d\n",data);
10601061
10611062   /* lower 4 bits define function code */
r4305r4306
11111112      /* bleeper on */
11121113      case 0x0b:
11131114      {
1114                        beep_set_state(0,1);
1115                        beep_set_state(speaker,1);
11151116      }
11161117      break;
11171118
11181119      /* bleeper off */
11191120      case 0x0c:
11201121      {
1121                        beep_set_state(0,0);
1122                        beep_set_state(speaker,0);
11221123      }
11231124      break;
11241125
r4305r4306
13331334
13341335static MACHINE_RESET( pcw16 )
13351336{
1337   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
13361338   pcw16_system_status = 0;
13371339   pcw16_interrupt_counter = 0;
13381340
r4305r4306
13561358
13571359   pcw16_reset(machine);
13581360
1359   beep_set_state(0,0);
1360   beep_set_frequency(0,3750);
1361   beep_set_state(speaker,0);
1362   beep_set_frequency(speaker,3750);
13611363}
13621364
13631365static INPUT_PORTS_START(pcw16)
src/mess/drivers/glasgow.c
r4305r4306
112112
113113static WRITE16_HANDLER( write_lcd_flag_gg )
114114{
115   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
115116   UINT8 lcd_flag;
116117   lcd_flag = data >> 8;
117   beep_set_state(0, lcd_flag & 1 ? 1 : 0);
118   beep_set_state(speaker, lcd_flag & 1 ? 1 : 0);
118119   if (lcd_flag == 0)
119120      key_selector = 1;
120121
r4305r4306
179180
180181static WRITE16_HANDLER( write_irq_flag )
181182{
182   beep_set_state(0, data & 0x100);
183   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
184   beep_set_state(speaker, data & 0x100);
183185   logerror("Write 0x800004 = %x \n", data);
184186   irq_flag = 1;
185187   beeper = data;
r4305r4306
393395
394396static WRITE32_HANDLER ( write_beeper32 )
395397{
396   beep_set_state(0, data & 0x01000000);
398   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
399   beep_set_state(speaker, data & 0x01000000);
397400   logerror("Write 0x8000004 = %x \n", data);
398401   irq_flag = 1;
399402   beeper = data;
r4305r4306
417420
418421static MACHINE_START( glasgow )
419422{
423   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
420424   key_selector = 0;
421425   irq_flag = 0;
422426   lcd_shift_counter = 3;
423427   timer_pulse(machine, ATTOTIME_IN_HZ(50), NULL, 0, update_nmi);
424   beep_set_frequency(0, 44);
428   beep_set_frequency(speaker, 44);
425429}
426430
427431
428432static MACHINE_START( dallas32 )
429433{
434   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
430435   lcd_shift_counter = 3;
431436   timer_pulse(machine, ATTOTIME_IN_HZ(50), NULL, 0, update_nmi32);
432   beep_set_frequency(0, 44);
437   beep_set_frequency(speaker, 44);
433438}
434439
435440
src/mess/drivers/dc.c
r4305r4306
114114
115115static MACHINE_RESET( dc_console )
116116{
117   const device_config *aica = devtag_get_device(machine, SOUND, "aica");
117118   MACHINE_RESET_CALL(dc);
118   aica_set_ram_base(0, dc_sound_ram, 2*1024*1024);
119   aica_set_ram_base(aica, dc_sound_ram, 2*1024*1024);
119120}
120121
121122static void aica_irq(const device_config *device, int irq)
src/mess/drivers/ip22.c
r4305r4306
10251025static UINT32 nPBUS_DMA_NextPtr;
10261026static UINT32 nPBUS_DMA_WordsLeft;
10271027
1028static const device_config *dmadac[1];
1029
10281030static TIMER_CALLBACK(ip22_dma)
10291031{
1032   dmadac[0] = devtag_get_device(machine, SOUND, "dmadac");
10301033   if( nPBUS_DMA_Active )
10311034   {
10321035      INT16 temp16;
r4305r4306
10341037//      verboselog(machine, 0, "nPBUS_DMA_CurPtr - 0x08000000/4 = %08x\n", (nPBUS_DMA_CurPtr - 0x08000000)/4 );
10351038      temp16 = ( ip22_mainram[(nPBUS_DMA_CurPtr - 0x08000000)/4] & 0xffff0000 ) >> 16;
10361039      temp16 = ( ( temp16 & 0xff00 ) >> 8 ) | ( ( temp16 & 0x00ff ) << 8 );
1037      dmadac_transfer(0, 1, 1, 1, 1, &temp16);
1040      dmadac_transfer(&dmadac[0], 1, 1, 1, 1, &temp16);
10381041      nPBUS_DMA_CurPtr += 4;
10391042      nPBUS_DMA_WordsLeft -= 4;
10401043
r4305r4306
11591162
11601163static MACHINE_RESET( ip225015 )
11611164{
1165   dmadac[0] = devtag_get_device(machine, SOUND, "dmadac");
11621166   mc_init(machine);
11631167   nHPC3_enetr_nbdp = 0x80000000;
11641168   nHPC3_enetr_cbp = 0x80000000;
r4305r4306
11731177
11741178   nPBUS_DMA_Active = 0;
11751179
1176   dmadac_set_frequency(0, 1, 44100);
1177   dmadac_enable(0, 1, 1);
1180   dmadac_set_frequency(&dmadac[0], 1, 44100);
1181   dmadac_enable(&dmadac[0], 1, 1);
11781182}
11791183
11801184static void dump_chain(const address_space *space, UINT32 ch_base)
src/mess/drivers/pc8801.c
r4305r4306
22
33  $Id: pc8801.c,v 1.51 2007/01/19 03:28:56 npwoods Exp $
44
5   Note: These emulations take a long time to start. Be patient!
6
57***************************************************************************/
68
79#include "driver.h"
src/mess/drivers/pcw.c
r4305r4306
435435static WRITE8_HANDLER(pcw_system_control_w)
436436{
437437   device_config *fdc = (device_config*)devtag_get_device(space->machine, NEC765A, "nec765");
438   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
438439   LOG(("SYSTEM CONTROL: %d\n",data));
439440
440441   switch (data)
r4305r4306
569570      /* beep on */
570571      case 11:
571572      {
572         beep_set_state(0,1);
573         beep_set_state(speaker,1);
573574      }
574575      break;
575576
576577      /* beep off */
577578      case 12:
578579      {
579         beep_set_state(0,0);
580         beep_set_state(speaker,0);
580581      }
581582      break;
582583
r4305r4306
743744
744745static TIMER_CALLBACK(setup_beep)
745746{
746   beep_set_state(0, 0);
747   beep_set_frequency(0, 3750);
747   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
748   beep_set_state(speaker, 0);
749   beep_set_frequency(speaker, 3750);
748750}
749751
750752
src/mess/drivers/studio2.c
r4305r4306
357357
358358static CDP1802_Q_WRITE( studio2_q_w )
359359{
360   beep_set_state(0, level);
360   const device_config *speaker = devtag_get_device(device->machine, SOUND, "beep");
361   beep_set_state(speaker, level);
361362}
362363
363364static CDP1802_DMA_WRITE( studio2_dma_w )
r4305r4306
651652
652653static TIMER_CALLBACK( setup_beep )
653654{
654   beep_set_state(0, 0);
655   beep_set_frequency(0, 300);
655   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
656   beep_set_state(speaker, 0);
657   beep_set_frequency(speaker, 300);
656658}
657659
658660static DRIVER_INIT( studio2 )
src/mess/drivers/osi.c
r4305r4306
296296
297297static WRITE8_HANDLER( osi630_ctrl_w )
298298{
299   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
299300   /*
300301
301302      bit      description
r4305r4306
311312
312313   */
313314
314   beep_set_state(0, BIT(data, 1));
315   beep_set_state(speaker, BIT(data, 1));
315316}
316317
317318static WRITE8_HANDLER( osi630_sound_w )
318319{
319   if (data) beep_set_frequency(0, 49152/data);
320   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
321   if (data) beep_set_frequency(speaker, 49152/data);
320322}
321323
322324/* Disk Drive */
r4305r4306
834836
835837static TIMER_CALLBACK( setup_beep )
836838{
837   beep_set_state(0, 0);
838   beep_set_frequency(0, 300);
839   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
840   beep_set_state(speaker, 0);
841   beep_set_frequency(speaker, 300);
839842}
840843
841844static DRIVER_INIT( c1p )
src/mess/drivers/ex800.c
r4305r4306
180180
181181static MACHINE_START(ex800)
182182{
183   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
183184   /* Setup beep */
184   beep_set_state(0, 0);
185   beep_set_frequency(0, 4000); /* measured at 4000 Hz */
185   beep_set_state(speaker, 0);
186   beep_set_frequency(speaker, 4000); /* measured at 4000 Hz */
186187}
187188
188189
r4305r4306
238239
239240static WRITE8_HANDLER(ex800_portc_w)
240241{
242   const device_config *speaker = devtag_get_device(space->machine, SOUND, "beep");
241243   if (data & 0x80)
242      beep_set_state(0, 0);
244      beep_set_state(speaker, 0);
243245   else
244      beep_set_state(0, 1);
246      beep_set_state(speaker, 1);
245247
246248   logerror("PC W %x @%x\n", data, cpu_get_pc(space->cpu));
247249}
src/mess/drivers/tmc2000e.c
r4305r4306
362362
363363static TIMER_CALLBACK(setup_beep)
364364{
365   beep_set_state(0, 0);
366   beep_set_frequency( 0, 0 );
365   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
366   beep_set_state(speaker, 0);
367   beep_set_frequency( speaker, 0 );
367368}
368369
369370static DRIVER_INIT( tmc2000e )
src/mess/drivers/crvision.c
r4305r4306
362362        PB7     SN76489 data output
363363    */
364364
365   const device_config *sn76496 = devtag_get_device(space->machine, SOUND, "sn76489a");
366   sn76496_w(sn76496, 0, data);
365   const device_config *sn76489 = devtag_get_device(space->machine, SOUND, "sn76489");
366   sn76496_w(sn76489, 0, data);
367367
368368   sn76489_ready = 0;
369369
src/mess/drivers/tmc1800.c
r4305r4306
10611061
10621062static TIMER_CALLBACK(setup_beep)
10631063{
1064   beep_set_state(0, 0);
1065   beep_set_frequency( 0, 0 );
1064   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
1065   beep_set_state(speaker, 0);
1066   beep_set_frequency( speaker, 0 );
10661067}
10671068
10681069static DRIVER_INIT( tmc1800 )
src/mess/drivers/mephisto.c
r4305r4306
174174
175175static TIMER_CALLBACK( update_nmi )
176176{
177
177   const device_config *speaker = devtag_get_device(machine, SOUND, "beep");
178178   cpu_set_input_line(machine->cpu[0], INPUT_LINE_NMI,PULSE_LINE);
179179   // dac_data_w(0,led_status&64?128:0);
180   beep_set_state(0,led_status&64?1:0);
181
180   beep_set_state(speaker,led_status&64?1:0);
182181}
183182
184183static MACHINE_START( mephisto )
src/mess/drivers/sms.c
r4305r4306
128128   AM_RANGE(0x20, 0x20) AM_MIRROR(0x1e) AM_WRITE(sms_bios_w)
129129   AM_RANGE(0x21, 0x21) AM_MIRROR(0x1e) AM_WRITE(sms_version_w)
130130   AM_RANGE(0x40, 0x7F)                 AM_READ(sms_count_r)
131   AM_RANGE(0x40, 0x7F)                 AM_DEVWRITE(SOUND, "smsiii", sn76496_w)
131   AM_RANGE(0x40, 0x7F)                 AM_DEVWRITE(SOUND, "gamegear", sn76496_w)
132132   AM_RANGE(0x80, 0x80) AM_MIRROR(0x3e) AM_READWRITE(sms_vdp_data_r, sms_vdp_data_w)
133133   AM_RANGE(0x80, 0x81) AM_MIRROR(0x3e) AM_READWRITE(sms_vdp_ctrl_r, sms_vdp_ctrl_w)
134134   AM_RANGE(0xC0, 0xC0)             AM_READ_PORT("PORT_DC")
src/mess/drivers/pce.c
r4305r4306
7979   AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000) AM_BASE( &pce_user_ram )
8080   AM_RANGE( 0x1FE000, 0x1FE3FF) AM_READWRITE( vdc_0_r, vdc_0_w )
8181   AM_RANGE( 0x1FE400, 0x1FE7FF) AM_READWRITE( vce_r, vce_w )
82   AM_RANGE( 0x1FE800, 0x1FEBFF) AM_DEVREADWRITE( SOUND, "c6280", c6280_r, c6280_w )
82   AM_RANGE( 0x1FE800, 0x1FEBFF) AM_DEVREADWRITE( SOUND, "main", c6280_r, c6280_w )
8383   AM_RANGE( 0x1FEC00, 0x1FEFFF) AM_READWRITE( h6280_timer_r, h6280_timer_w )
8484   AM_RANGE( 0x1FF000, 0x1FF3FF) AM_READWRITE( pce_joystick_r, pce_joystick_w )
8585   AM_RANGE( 0x1FF400, 0x1FF7FF) AM_READWRITE( h6280_irq_status_r, h6280_irq_status_w )
r4305r4306
104104   AM_RANGE( 0x1FE008, 0x1FE00F) AM_READWRITE( vpc_r, vpc_w ) AM_MIRROR(0x03E0)
105105   AM_RANGE( 0x1FE010, 0x1FE017) AM_READWRITE( vdc_1_r, vdc_1_w ) AM_MIRROR(0x03E0)
106106   AM_RANGE( 0x1FE400, 0x1FE7FF) AM_READWRITE( vce_r, vce_w )
107   AM_RANGE( 0x1FE800, 0x1FEBFF) AM_DEVREADWRITE( SOUND, "c6280", c6280_r, c6280_w )
107   AM_RANGE( 0x1FE800, 0x1FEBFF) AM_DEVREADWRITE( SOUND, "main", c6280_r, c6280_w )
108108   AM_RANGE( 0x1FEC00, 0x1FEFFF) AM_READWRITE( h6280_timer_r, h6280_timer_w )
109109   AM_RANGE( 0x1FF000, 0x1FF3FF) AM_READWRITE( pce_joystick_r, pce_joystick_w )
110110   AM_RANGE( 0x1FF400, 0x1FF7FF) AM_READWRITE( h6280_irq_status_r, h6280_irq_status_w )
r4305r4306
185185
186186   MDRV_NVRAM_HANDLER( pce )
187187   MDRV_SPEAKER_STANDARD_STEREO("left","right")
188   MDRV_SOUND_ADD("c6280", C6280, MAIN_CLOCK/6)
188   MDRV_SOUND_ADD("main", C6280, MAIN_CLOCK/6)
189189   MDRV_SOUND_ROUTE(0, "left", 1.00)
190190   MDRV_SOUND_ROUTE(1, "right", 1.00)
191191
r4305r4306
227227
228228   MDRV_NVRAM_HANDLER( pce )
229229   MDRV_SPEAKER_STANDARD_STEREO("left","right")
230   MDRV_SOUND_ADD("c6280", C6280, MAIN_CLOCK/6)
230   MDRV_SOUND_ADD("main", C6280, MAIN_CLOCK/6)
231231   MDRV_SOUND_ROUTE(0, "left", 1.00)
232232   MDRV_SOUND_ROUTE(1, "right", 1.00)
233233
r4305r4306
260260/*    YEAR  NAME    PARENT  COMPAT  MACHINE INPUT    INIT   CONFIG  COMPANY  FULLNAME */
261261CONS( 1987, pce,    0,      0,      pce,    pce,     pce,   0,   "Nippon Electronic Company", "PC Engine", GAME_IMPERFECT_SOUND )
262262CONS( 1989, tg16,   pce,    0,      pce,    pce,     tg16,  0,   "Nippon Electronic Company", "TurboGrafx 16", GAME_IMPERFECT_SOUND )
263CONS( 1989,   sgx,   pce,   0,      sgx,   pce,    sgx,   0,   "Nippon Electronic Company", "SuperGrafx", GAME_IMPERFECT_SOUND )
263CONS( 1989, sgx,    pce,    0,      sgx,    pce,     sgx,   0,   "Nippon Electronic Company", "SuperGrafx", GAME_IMPERFECT_SOUND )
264264

Previous 15994 Revisions Next


© 1998-2018 The MESS Team