Previous 199869 Revisions Next

r22034 Saturday 23rd March, 2013 at 11:04:26 UTC by Fabio Priuli
(MESS) megadriv.c: removed nvram handler. MESS was not using this since more than one year,
and it was causing MT #03873. If any bootleg megadrive board needs this, please let me know so
that I can re-add it to the correct driver. nw.
[src/mame/drivers]megaplay.c
[src/mame/machine]megadriv.c
[src/mess/drivers]megadriv.c

trunk/src/mess/drivers/megadriv.c
r22033r22034
377377
378378static MACHINE_CONFIG_START( ms_megadriv, md_cons_state )
379379   MCFG_FRAGMENT_ADD( md_ntsc )
380   MCFG_NVRAM_HANDLER_CLEAR()
381380
382381   MCFG_MACHINE_START( ms_megadriv )
383382   MCFG_MACHINE_RESET( ms_megadriv )
r22033r22034
388387
389388static MACHINE_CONFIG_START( ms_megadpal, md_cons_state )
390389   MCFG_FRAGMENT_ADD( md_pal )
391   MCFG_NVRAM_HANDLER_CLEAR()
392390
393391   MCFG_MACHINE_START( ms_megadriv )
394392   MCFG_MACHINE_RESET( ms_megadriv )
r22033r22034
522520
523521static MACHINE_CONFIG_START( genesis_32x, md_cons_state )
524522   MCFG_FRAGMENT_ADD( md_ntsc )
525   MCFG_NVRAM_HANDLER_CLEAR()
526523
527524   MCFG_DEVICE_ADD("sega32x", SEGA_32X_NTSC, 0)
528525
r22033r22034
554551
555552static MACHINE_CONFIG_START( mdj_32x, md_cons_state )
556553   MCFG_FRAGMENT_ADD( md_ntsc )
557   MCFG_NVRAM_HANDLER_CLEAR()
558554
559555   MCFG_DEVICE_ADD("sega32x", SEGA_32X_NTSC, 0)
560556
r22033r22034
586582
587583static MACHINE_CONFIG_START( md_32x, md_cons_state )
588584   MCFG_FRAGMENT_ADD( md_pal )
589   MCFG_NVRAM_HANDLER_CLEAR()
590585
591586   MCFG_DEVICE_ADD("sega32x", SEGA_32X_PAL, 0)
592587
r22033r22034
841836
842837static MACHINE_CONFIG_START( megdsvp, mdsvp_state )
843838   MCFG_FRAGMENT_ADD( md_ntsc )
844   MCFG_NVRAM_HANDLER_CLEAR()
845839
846840   MCFG_CPU_ADD("svp", SSP1601, MASTER_CLOCK_NTSC / 7 * 3) /* ~23 MHz (guessed) */
847841   MCFG_CPU_PROGRAM_MAP(svp_ssp_map)
r22033r22034
857851
858852static MACHINE_CONFIG_START( megdsvp_pal, mdsvp_state )
859853   MCFG_FRAGMENT_ADD( md_pal )
860   MCFG_NVRAM_HANDLER_CLEAR()
861854
862855   MCFG_CPU_ADD("svp", SSP1601, MASTER_CLOCK_PAL / 7 * 3) /* ~23 MHz (guessed) */
863856   MCFG_CPU_PROGRAM_MAP(svp_ssp_map)
r22033r22034
10761069
10771070static MACHINE_CONFIG_START( pico, pico_state )
10781071   MCFG_FRAGMENT_ADD( md_ntsc )
1079   MCFG_NVRAM_HANDLER_CLEAR()
10801072
10811073   MCFG_CPU_MODIFY("maincpu")
10821074   MCFG_CPU_PROGRAM_MAP(pico_mem)
r22033r22034
10921084
10931085static MACHINE_CONFIG_START( picopal, pico_state )
10941086   MCFG_FRAGMENT_ADD( md_pal )
1095   MCFG_NVRAM_HANDLER_CLEAR()
10961087
10971088   MCFG_CPU_MODIFY("maincpu")
10981089   MCFG_CPU_PROGRAM_MAP(pico_mem)
trunk/src/mame/machine/megadriv.c
r22033r22034
837837
838838/************************************ Megadrive Bootlegs *************************************/
839839
840// smaller ROM region because some bootlegs check for RAM there
840// smaller ROM region because some bootlegs check for RAM there (used by topshoot and hshavoc)
841841static ADDRESS_MAP_START( md_bootleg_map, AS_PROGRAM, 16, md_boot_state )
842842   AM_RANGE(0x000000, 0x0fffff) AM_ROM /* Cartridge Program Rom */
843843   AM_RANGE(0x200000, 0x2023ff) AM_RAM // tested
r22033r22034
955955
956956
957957
958static UINT16* megadriv_backupram;
959static int megadriv_backupram_length;
960
961static NVRAM_HANDLER( megadriv )
962{
963   if (megadriv_backupram!=NULL)
964   {
965      if (read_or_write)
966         file->write(megadriv_backupram, megadriv_backupram_length);
967      else
968      {
969         if (file)
970         {
971            file->read(megadriv_backupram, megadriv_backupram_length);
972         }
973         else
974         {
975            int x;
976            for (x=0;x<megadriv_backupram_length/2;x++)
977               megadriv_backupram[x]=0xffff;//machine.rand(); // dino dini's needs 0xff or game rules are broken
978         }
979      }
980   }
981}
982
983
984958// this comes from the VDP on lines 240 (on) 241 (off) and is connected to the z80 irq 0
985959void genesis_vdp_sndirqline_callback_genesis_z80(running_machine &machine, bool state)
986960{
r22033r22034
10981072
10991073   MCFG_TIMER_ADD_SCANLINE("scantimer", megadriv_scanline_timer_callback_alt_timing, "megadriv", 0, 1)
11001074
1101   MCFG_NVRAM_HANDLER(megadriv)
1102
11031075   MCFG_PALETTE_LENGTH(0x200)
11041076
11051077   MCFG_VIDEO_START(megadriv)
r22033r22034
11491121   MCFG_SCREEN_UPDATE_STATIC(megadriv) /* Copies a bitmap */
11501122   MCFG_SCREEN_VBLANK_STATIC(megadriv) /* Used to Sync the timing */
11511123
1152   MCFG_NVRAM_HANDLER(megadriv)
1153
11541124   MCFG_PALETTE_LENGTH(0x200)
11551125
11561126   MCFG_VIDEO_START(megadriv)
r22033r22034
12041174   }
12051175
12061176   machine().device("maincpu")->execute().set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(md_base_state::genesis_int_callback),this));
1207   megadriv_backupram = NULL;
1208   megadriv_backupram_length = 0;
12091177
12101178   vdp_get_word_from_68k_mem = vdp_get_word_from_68k_mem_default;
12111179
trunk/src/mame/drivers/megaplay.c
r22033r22034
4242Only a handful of games were released for this system.
4343
4444Bugs:
45 Most of this is guesswork and should be verified on real hw.  Sometims after inserting
45 Most of this is guesswork and should be verified on real hw.  Sometimes after inserting
4646 a coin and pressing start the 'press start' message remains on screen and no credit is
4747 deducted.  (timing?)
4848

Previous 199869 Revisions Next


© 1997-2024 The MAME Team