Previous 199869 Revisions Next

r19614 Monday 17th December, 2012 at 07:22:20 UTC by Miodrag Milanović
Cleanups and version bump
[hash]apc.xml genius.xml
[src]version.c
[src/emu/cpu/h83002]h8.h h8disasm.c h8ops.h
[src/emu/cpu/tms32031]tms32031.c
[src/emu/cpu/z8000]z8000.c
[src/emu/imagedev]chd_cd.c
[src/emu/machine]fdc_pll.h msm6242.c scsihd.h wd_fdc.c wd_fdc.h
[src/emu/video]msm6255.c
[src/lib/formats]comx35_dsk.c flopimg.c flopimg.h imd_dsk.c m20_dsk.c
[src/lib/util]chdcd.c
[src/mame]mame.lst
[src/mame/drivers]8080bw.c bbusters.c bfm_ad5.c bfm_ad5sw.c bfm_sc1.c bfm_sc2.c bfm_sc4.c bfm_sc5sw.c bfmsys85.c cclimber.c cps1.c cps2.c ddenlovr.c dlair2.c dynax.c ecoinf3.c ertictac.c fcrash.c firebeat.c galdrvr.c headonb.c jpmimpctsw.c jpmsys5.c kurukuru.c maygay1bsw.c maygayep.c namcos2.c neogeo.c rabbit.c s11.c taitotz.c taxidriv.c
[src/mame/includes]bfm_sc45.h cps1.h neogeo.h
[src/mame/machine]megacd.c megacdcd.c megacdcd.h
[src/mame/video]nbmj8688.c
[src/mess/drivers]a7000.c a7800.c abc1600.c amiga.c apc.c apple2.c dragon.c esq1.c esq5505.c esqkt.c esqmr.c geniusiq.c m20.c mikromik.c mirage.c modellot.c ng_aes.c pc.c pc88va.c pc9801.c sg1000.c socrates.c studio2.c tim011.c v1050.c vt100.c wangpc.c xerox820.c xor100.c ymmu100.c
[src/mess/includes]b2m.h nes.h special.h
[src/mess/machine]b2m.c c1581.c c8280.c cmdhd.c comx_fd.c comx_prn.c comx_ram.h comx_thm.c comxpl80.h fd2000.c iq151_disc2.h lux10828.c mackbd.c nes.c nubus_image.c orion.c pc.c sms.c special.c

trunk/hash/apc.xml
r19613r19614
119119         </dataarea>
120120      </part>
121121   </software>
122   
122
123123   <software name="dbaseiid">
124124      <description>dBASE II for MS-DOS</description>
125125      <year>1982</year>
r19613r19614
306306         </dataarea>
307307      </part>
308308   </software>
309   
309
310310   <software name="ucsd136">
311311      <description>UCSD p-System System IV.13 (Ver 0.6)</description>
312312      <year>1984</year>
r19613r19614
372372         </dataarea>
373373      </part>
374374   </software>
375   
375
376376   <software name="wordstar">
377377      <description>WordStar (Ver 3.30) for MS-DOS</description>
378378      <year>1983</year>
trunk/hash/genius.xml
r19613r19614
88<!-- First chunk of dumps, compatible with: Notebook Fun, e-Power X, 5005 X, 6600 CX, 8008 CX, Black Magic CX
99
1010+--------------+-----------------------------+------------+-----------------
11| CARTRIDGE ID |          GAME NAME          |  EPROM-ID  |  EPROM-TYPE   |
11| CARTRIDGE ID |          GAME NAME          |  EPROM-ID  |  EPROM-TYPE   |
1212+--------------+-----------------------------+------------+-----------------
13|              |                             |            |               |
14| 80-28071     | Englisch f¸r Anf‰nger       | 27-6386-00 |   LH5V1RN5    |
15| 80-28072     | L‰nder-Menschen-Umwelt      | 27-6386-00 |   LH5V1RN5    |
16| 80-28073     | Sport-Wissen-Geschichte     | 27-6388-00 |   LH5V1RN5    |
17| 80-28074     | Allgemeinwissen             | 27-6388-00 |   LH5V1RN5    |
18| 80-28075     | Naturwissenschaften         |            |               |
19| 80-          | Schreibmaschinenkurs        | 27-6431-00 |   LH5V1RN5    |
13|              |                             |            |               |
14| 80-28071     | Englisch f¸r Anf‰nger       | 27-6386-00 |   LH5V1RN5    |
15| 80-28072     | L‰nder-Menschen-Umwelt      | 27-6386-00 |   LH5V1RN5    |
16| 80-28073     | Sport-Wissen-Geschichte     | 27-6388-00 |   LH5V1RN5    |
17| 80-28074     | Allgemeinwissen             | 27-6388-00 |   LH5V1RN5    |
18| 80-28075     | Naturwissenschaften         |            |               |
19| 80-          | Schreibmaschinenkurs        | 27-6431-00 |   LH5V1RN5    |
2020|              | Superspeicher               |            |GM76V8128CLFW70| (RAM Module)
2121
2222the LH5V1RN6 flash-rom is pin compatible to an LH531V00 which is compatible to an D27C010 eprom!
23VTECH burned two games on one flash-rom, with setting the highest adressline HIGH or LOW, they choosed the game,
24but if you wanted to play both games, you had to buy both cartridges!
23VTECH burned two games on one flash-rom, with setting the highest adressline HIGH or LOW, they choosed the game,
24but if you wanted to play both games, you had to buy both cartridges!
2525On one was the highest adressline set to HIGH, on the other one this adressline was set to LOW.
2626
2727-->
trunk/src/mame/machine/megacd.c
r19613r19614
133133
134134   MCFG_CPU_ADD("segacd_68k", M68000, SEGACD_CLOCK ) /* 12.5 MHz */
135135   MCFG_CPU_PROGRAM_MAP(segacd_map)
136   
136
137137   MCFG_DEVICE_ADD("cdc", LC89510, 0) // cd controller
138138
139139   // temporary until things are cleaned up
r19613r19614
145145   MCFG_TIMER_DRIVER_ADD("stamp_timer", sega_segacd_device, segacd_gfx_conversion_timer_callback)
146146   MCFG_TIMER_DRIVER_ADD("scd_dma_timer", sega_segacd_device, scd_dma_timer_callback)
147147
148   
149148
149
150150   MCFG_DEFAULT_LAYOUT( layout_megacd )
151151
152152
r19613r19614
17581758
17591759   // timed reset of flags
17601760   scd_mode_dmna_ret_flags |= 0x0021;
1761   
1761
17621762   scd_dma_timer->adjust(attotime::from_hz(megadriv_framerate) / megadrive_total_scanlines);
17631763
17641764}
trunk/src/mame/machine/megacdcd.c
r19613r19614
162162      CDD_RX[0] = (CDD_STATUS  & 0xff00)>>8;
163163   else
164164   {
165   //   printf("was %02x returning %02x\n", (CDD_STATUS  & 0xff00)>>8, NeoCD_StatusHack);
165   //  printf("was %02x returning %02x\n", (CDD_STATUS  & 0xff00)>>8, NeoCD_StatusHack);
166166      CDD_RX[0] = NeoCD_StatusHack;
167167   }
168168
r19613r19614
546546
547547   // HACK
548548   segacd_dma_callback(dmacount, CDC_BUFFER, dma_addrc, destination );
549   
550549
550
551551   dma_addrc += length*2;
552552   LC8951RegistersW[REG_W_DACL] = dma_addrc & 0xff; LC8951RegistersW[REG_W_DACH] = (dma_addrc >> 8) & 0xff;
553553
r19613r19614
606606{
607607   int reg = CDC_REG0 & 0xF;
608608   UINT8 ret = 0;
609   
610   
609
610
611611   UINT16 decoderegs = 0x73F2;
612612
613613   if ((decoderegs>>reg)&1)
r19613r19614
622622      case REG_R_IFSTAT: ret = LC8951RegistersR[REG_R_IFSTAT];   break;
623623      case REG_R_DBCL:   ret = LC8951RegistersW[REG_W_DBCL];      break;
624624      case REG_R_DBCH:
625//         LC8951RegistersR[REG_R_DBCH] &=  0x0F; // NeoCD?
626//         LC8951RegistersR[REG_R_DBCH] |=  (LC8951RegistersR[REG_R_IFSTAT] & 0x40) ? 0x00 : 0xF0; // NeoCD?
625//          LC8951RegistersR[REG_R_DBCH] &=  0x0F; // NeoCD?
626//          LC8951RegistersR[REG_R_DBCH] |=  (LC8951RegistersR[REG_R_IFSTAT] & 0x40) ? 0x00 : 0xF0; // NeoCD?
627627         ret = LC8951RegistersW[REG_W_DBCH];      break;
628628      case REG_R_HEAD0:  ret = LC8951RegistersR[REG_R_HEAD0];      break;
629629      case REG_R_HEAD1:  ret = LC8951RegistersR[REG_R_HEAD1];      break;
r19613r19614
634634      case REG_R_WAL:    ret = LC8951RegistersW[REG_W_WAL];      break;
635635      case REG_R_WAH:    ret = LC8951RegistersW[REG_W_WAH];      break;
636636      case REG_R_STAT0:  ret = LC8951RegistersR[REG_R_STAT0];      break;
637      case REG_R_STAT1:  ret = LC8951RegistersR[REG_R_STAT1];   
638   //      LC8951RegistersR[REG_R_IFSTAT] |= 0x20;    // NeoCD? // reset DECI
637      case REG_R_STAT1:  ret = LC8951RegistersR[REG_R_STAT1];
638   //      LC8951RegistersR[REG_R_IFSTAT] |= 0x20;  // NeoCD? // reset DECI
639639         break;
640640      case REG_R_STAT2:  ret = LC8951RegistersR[REG_R_STAT2];      break;
641641      case REG_R_STAT3:  ret = LC8951RegistersR[REG_R_STAT3];
r19613r19614
712712         }
713713         //else
714714         //{
715         //   LC8951RegistersW[REG_W_DTACK]  = ~0x00;
716         //   LC8951RegistersR[REG_R_IFSTAT] &= ~0x40;
715         //  LC8951RegistersW[REG_W_DTACK]  = ~0x00;
716         //  LC8951RegistersR[REG_R_IFSTAT] &= ~0x40;
717717         //}
718718         break;
719719   case REG_W_WAL: LC8951RegistersW[REG_W_WAL] = data; break;
r19613r19614
944944   if (bNeoCDCommsClock) {
945945      ret |= 0x10;
946946   }
947   
947
948948   return ret;
949949}
950950
r19613r19614
10241024
10251025
10261026
1027//   if (segacd.cd)
1028//      printf("cd found\n");
1027//  if (segacd.cd)
1028//      printf("cd found\n");
10291029}
10301030
10311031
r19613r19614
10491049      }
10501050   }
10511051
1052   if (SCD_READ_ENABLED) // if (nff0002 & 0x0050) if (nff0002 & 0x0500);
1052   if (SCD_READ_ENABLED) // if (nff0002 & 0x0050) if (nff0002 & 0x0500);
10531053   {
10541054      set_data_audio_mode();
10551055      Read_LBA_To_Buffer(machine());
r19613r19614
11161116               if (!CDD_Import(machine()))
11171117                  return;
11181118
1119               CDD_Export(true); // true == neocd hack,
1119               CDD_Export(true); // true == neocd hack,
11201120            }
11211121
11221122         }
r19613r19614
12161216
12171217   if (LC8951RegistersW[REG_W_IFCTRL] & 0x20)
12181218   {
1219   
1219
12201220      if (is_neoCD)
12211221      {
12221222         type1_interrupt_callback();
r19613r19614
12241224      else
12251225      {
12261226         // todo: make callback
1227         CHECK_SCD_LV5_INTERRUPT     
1227         CHECK_SCD_LV5_INTERRUPT
12281228      }
12291229
12301230
trunk/src/mame/machine/megacdcd.h
r19613r19614
171171
172172   void Fake_CDC_Do_DMA(int &dmacount, UINT8 *CDC_BUFFER, UINT16 &dma_addrc, UINT16 &destination );
173173   static void set_CDC_Do_DMA(device_t &device,segacd_dma_delegate new_segacd_dma_callback);
174   
174
175175   void dummy_interrupt_callback(void);
176176   static void set_type1_interrupt_callback(device_t &device,interrupt_delegate interrupt_callback);
177177   static void set_type2_interrupt_callback(device_t &device,interrupt_delegate interrupt_callback);
trunk/src/mame/includes/cps1.h
r19613r19614
146146   int          m_stars_rom_size;
147147   UINT8        m_empty_tile[32*32];
148148   int          m_cps_version;
149   
149
150150   /* fcrash video config */
151151   UINT8        m_layer_enable_reg;
152152   UINT8        m_layer_mask_reg[4];
r19613r19614
238238   TIMER_DEVICE_CALLBACK_MEMBER(ganbare_interrupt);
239239   TIMER_DEVICE_CALLBACK_MEMBER(cps2_interrupt);
240240   TIMER_CALLBACK_MEMBER(cps2_update_digital_volume);
241   
241
242242   /* fcrash handlers */
243243   DECLARE_DRIVER_INIT(kodb);
244244   DECLARE_DRIVER_INIT(cawingbl);
trunk/src/mame/includes/bfm_sc45.h
r19613r19614
480480   DECLARE_DRIVER_INIT(sc4corotb);
481481   DECLARE_DRIVER_INIT(sc4hyper);
482482
483   
484   
483
484
485485   DECLARE_MACHINE_START(sc4);
486486   DECLARE_MACHINE_RESET(sc4);
487487};
r19613r19614
34363436
34373437#define sc_bgold_others \
34383438   ROM_REGION( 0x400000, "ymz", ROMREGION_ERASE00 ) \
3439   
3439
34403440#define sc_cconx_others \
34413441   ROM_REGION( 0x400000, "ymz", ROMREGION_ERASE00 ) \
34423442   ROM_LOAD( "mtom sounds", 0x000000, 0x100000, NO_DUMP ) \
r19613r19614
36143614#define sc_revo_others \
36153615   ROM_REGION( 0x400000, "ymz", ROMREGION_ERASE00 ) \
36163616   ROM_LOAD( "rev sounds", 0x0000, 0x100000, NO_DUMP ) \
3617   
3617
36183618#define sc_wild_others \
36193619   ROM_REGION( 0x400000, "ymz", ROMREGION_ERASE00 ) \
36203620   \
trunk/src/mame/includes/neogeo.h
r19613r19614
235235   bool m_has_audio_banking; // does the system use Audio Banking (the NeoCD doesn't?)
236236   bool m_is_mvs; // is the system an MVS (watchdog, SRAM etc.)
237237   bool m_is_cartsys; // does the system use Cartridges? (MVS and AES)
238   
238
239239   // the NeoCD can steal the bus during uploads
240240   bool m_has_sprite_bus;
241241   bool m_has_text_bus;
trunk/src/mame/video/nbmj8688.c
r19613r19614
683683      }
684684   }
685685
686//   if (m_mjsikaku_dispflag)
686//  if (m_mjsikaku_dispflag)
687687   {
688688      int scrolly;
689689      if (m_mjsikaku_flipscreen) scrolly =   m_mjsikaku_scrolly;
r19613r19614
692692      copybitmap(bitmap, *m_mjsikaku_tmpbitmap, 0, 0, 0, scrolly,       cliprect);
693693      copybitmap(bitmap, *m_mjsikaku_tmpbitmap, 0, 0, 0, scrolly - 256, cliprect);
694694   }
695//   else
696//      bitmap.fill(0);
695//  else
696//      bitmap.fill(0);
697697
698698   return 0;
699699}
trunk/src/mame/drivers/bfm_sc2.c
r19613r19614
22352235               if (addr<size)
22362236               {
22372237                  rom = src[addr];
2238         
2238
22392239                  if ((rom>=0x20) && (rom<0x7f))
22402240                  {
22412241                     printf("%c", rom);
r19613r19614
69326932   ROM_LOAD( "scx1v3.bin", 0x0000, 0x010000, CRC(711a0f93) SHA1(5b3efda6a01663655ec614feab9e1d0c857e823e) )
69336933   ROM_LOAD( "scx1v6hi.bin", 0x0000, 0x010000, CRC(cae3fd0b) SHA1(1fe2ab0037c5a0be58378e95f72dc2782325fb71) )
69346934   ROM_LOAD( "scx1v6lo.bin", 0x0000, 0x010000, CRC(ca5fdbca) SHA1(60079aeb4904e42a4a45feb7f31cf6c71b611845) )
6935//   ROM_LOAD( "scx1v7hi.bin", 0x0000, 0x010000, CRC(b8ae7542) SHA1(22230e9a67c0f8408d6ba7adafd581cd3d62c5ad) ) // in sc2scshxcas
6936//   ROM_LOAD( "scx1v7lo.bin", 0x0000, 0x010000, CRC(1ed97ef6) SHA1(1aaf911369dc814ee2edf5d59baa2961bfc73168) ) // in sc2scshxcas
6935//  ROM_LOAD( "scx1v7hi.bin", 0x0000, 0x010000, CRC(b8ae7542) SHA1(22230e9a67c0f8408d6ba7adafd581cd3d62c5ad) ) // in sc2scshxcas
6936//  ROM_LOAD( "scx1v7lo.bin", 0x0000, 0x010000, CRC(1ed97ef6) SHA1(1aaf911369dc814ee2edf5d59baa2961bfc73168) ) // in sc2scshxcas
69376937   ROM_LOAD( "scx1v8hi.bin", 0x0000, 0x010000, CRC(06e35b38) SHA1(0a48489aee24066526da2cf56775f805d9603995) )
69386938   ROM_LOAD( "scx1v8lo.bin", 0x0000, 0x010000, CRC(82bc1820) SHA1(301775e0e32e44d5cbe43c0cb83d94cf2aab9a50) )
69396939   ROM_LOAD( "scxsp10.bin", 0x0000, 0x010000, CRC(e006d449) SHA1(73acc9c729e73d3a262d1a21fe89e00047eabdb2) )
r19613r19614
77037703GAME( 199?, sc2wembl2   , sc2wembl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Match Of The Day - Road To Wembley (Bellfruit) (set 7, UK) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-750-653
77047704GAME( 199?, sc2wembl2p   , sc2wembl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Match Of The Day - Road To Wembley (Bellfruit) (set 7, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-653
77057705// PROJECT NUMBER 6781  ROAD TO WEMBLEY #10 ALL CASH 15RM - 28-MAR-1996 14:01:40
7706GAME( 199?, sc2wembl   , 0         ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Match Of The Day - Road To Wembley (Bellfruit) (set 8, UK, 10GBP Jackpot, 15RM motor) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-750-659
7706GAME( 199?, sc2wembl   , 0         ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Match Of The Day - Road To Wembley (Bellfruit) (set 8, UK, 10GBP Jackpot, 15RM motor) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-750-659
77077707GAME( 199?, sc2wemblp   , sc2wembl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Match Of The Day - Road To Wembley (Bellfruit) (set 8, UK, 10GBP Jackpot, 15RM motor, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-659
77087708// PROJECT NUMBER 7005  ROAD TO WEMBLEY !5 ALL CASH 16RM  GAME No RWVMAZ12_N - 22-OCT-1997 20:03:46
77097709GAME( 199?, sc2wemblm   , sc2wembl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM/Mazooma",      "Match Of The Day - Road To Wembley (Bellfruit/Mazooma) (Scorpion 2/3)", GAME_FLAGS) // error 99
r19613r19614
77677767GAME( 199?, sc2copclp   , sc2copcl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Cops 'n' Robbers Club (Bellfruit) (set 9, UK, 250GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS)   // GAME No 95-751-859
77687768// PROJECT NUMBER PR6231  CLUB COPS AND ROBBERS 20P/#250 - 2-SEP-1996 17:26:44
77697769GAME( 199?, sc2copcl2   , sc2copcl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Cops 'n' Robbers Club (Bellfruit) (set 10, UK) (Scorpion 2/3)", GAME_FLAGS)         // GAME No 95-750-858
7770GAME( 199?, sc2copcl12   , sc2copcl   ,  scorpion2       , drwho      , bfm_sc2_state, prom      , 0,       "BFM",      "Cops 'n' Robbers Club (Bellfruit) (set 10, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-858
7770GAME( 199?, sc2copcl12   , sc2copcl   ,  scorpion2       , drwho      , bfm_sc2_state, prom      , 0,       "BFM",      "Cops 'n' Robbers Club (Bellfruit) (set 10, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-858
77717771// PROJECT PR6231  CLUB COPS AND ROBBERS NPO 63% SEALINK VERSION - 5-JAN-1998 11:53:49
77727772GAME( 199?, sc2copcl5   , sc2copcl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Cops 'n' Robbers Club (Bellfruit) (set 11, UK) (Scorpion 2/3)", GAME_FLAGS)         // GAME No 95-752-015
77737773GAME( 199?, sc2copcl11p   , sc2copcl   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Cops 'n' Robbers Club (Bellfruit) (set 11, UK, Protocol) (Scorpion 2/3)", GAME_FLAGS)   // GAME No 95-753-015
r19613r19614
78227822GAME( 199?, sc2dels1p   , sc2dels   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Del's Millions (Bellfruit) (set 10, UK, 10GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-820
78237823
78247824// the Mazooma versioning is different, N/P should be protocol / non-protocol, but the builds are minutes apart, so 11/12/13/14 can't really be version numbers
7825// PROJECT NUMBER P7003  DELS MILLIONS  !5 ALL CASH 
7825// PROJECT NUMBER P7003  DELS MILLIONS  !5 ALL CASH
78267826GAME( 199?, sc2delsm   , 0         ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM/Mazooma",  "Del's Millions (Bellfruit/Mazooma) (DMVMAZ11_N) (Scorpion 2/3)", GAME_FLAGS) // GAME No DMVMAZ11_N - 15-SEP-1997 11:52:00
78277827GAME( 199?, sc2delsm2   , sc2delsm   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM/Mazooma",  "Del's Millions (Bellfruit/Mazooma) (DMVMAZ11_P) (Scorpion 2/3)", GAME_FLAGS) // GAME No DMVMAZ11_P - 15-SEP-1997 11:53:06
78287828GAME( 199?, sc2delsmp   , sc2delsm   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM/Mazooma",  "Del's Millions (Bellfruit/Mazooma) (DMVMAZ12_N) (Scorpion 2/3)", GAME_FLAGS) // GAME No DMVMAZ12_N - 15-SEP-1997 11:54:08
r19613r19614
79017901GAME( 199?, sc2mamp      , sc2mam   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Make A Million (Bellfruit) (set 4, UK, 10GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-731
79027902// PROJECT NUMBER 6780  MAKE A MILLION #10 10/25P - 24-MAY-1996 16:18:45
79037903GAME( 199?, sc2mam1      , sc2mam   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Make A Million (Bellfruit) (set 5, UK, 10GBP Jackpot) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-750-732
7904GAME( 199?, sc2mam1p   , sc2mam   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Make A Million (Bellfruit) (set 5, UK, 10GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-732
7904GAME( 199?, sc2mam1p   , sc2mam   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",      "Make A Million (Bellfruit) (set 5, UK, 10GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-732
79057905
79067906
79077907/********************************************************************************************************************************************************************************************************************
r19613r19614
80078007 Casino Royale
80088008********************************************************************************************************************************************************************************************************************/
80098009
8010// PROJECT NUMBER 6603  CASINO ROYALE (T2 - 5/10/20P) -  7-MAY-1996 17:02:50
8010// PROJECT NUMBER 6603  CASINO ROYALE (T2 - 5/10/20P) -  7-MAY-1996 17:02:50
80118011GAME( 199?, sc2casr3   , sc2casr   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",     "Casino Royale (Bellfruit) (set 1, UK, 8GBP Jackpot) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-750-704
80128012GAME( 199?, sc2casr3p   , sc2casr   ,  scorpion2      , drwho      , bfm_sc2_state, drwho      , 0,       "BFM",     "Casino Royale (Bellfruit) (set 1, UK, 8GBP Jackpot, Protocol) (Scorpion 2/3)", GAME_FLAGS) // GAME No 95-751-704
80138013// PROJECT NUMBER 6603  CASINO ROYALE (T2) DE-REG -  5-JUN-1996 15:03:27
trunk/src/mame/drivers/neogeo.c
r19613r19614
696696   /* create vector banks */
697697   state->membank(NEOGEO_BANK_VECTORS)->configure_entry(0, machine.root_device().memregion("mainbios")->base());
698698   state->membank(NEOGEO_BANK_VECTORS)->configure_entry(1, machine.root_device().memregion("maincpu")->base());
699   
699
700700   if (state->m_is_cartsys)
701701   {
702702
r19613r19614
732732static void audio_cpu_bank_select( address_space &space, int region, UINT8 bank )
733733{
734734   neogeo_state *state = space.machine().driver_data<neogeo_state>();
735   
735
736736   if (!state->m_has_audio_banking) return;
737737
738738   if (LOG_AUDIO_CPU_BANKING) logerror("Audio CPU PC %03x: audio_cpu_bank_select: Region: %d   Bank: %02x\n", space.device().safe_pc(), region, bank);
r19613r19614
14181418   MCFG_CPU_ADD("audiocpu", Z80, NEOGEO_AUDIO_CPU_CLOCK)
14191419   MCFG_CPU_PROGRAM_MAP(audio_map)
14201420   MCFG_CPU_IO_MAP(audio_io_map)
1421   
1421
14221422   /* video hardware */
14231423   MCFG_DEFAULT_LAYOUT(layout_neogeo)
14241424
trunk/src/mame/drivers/bfm_ad5.c
r19613r19614
11/*
22
33    Scorpion 5
4    (Scorpion 5 Video Board)
4    (Scorpion 5 Video Board)
55
66    Skeleton Driver - For note keeping.
77
r19613r19614
6262INTERRUPT_GEN_MEMBER(adder5_state::ad5_fake_timer_int)
6363{
6464   // this should be coming from the Timer / SIM modules of the Coldfire
65//   machine().device("maincpu")->execute().set_input_line_and_vector(5, HOLD_LINE, 0x8c);
65//  machine().device("maincpu")->execute().set_input_line_and_vector(5, HOLD_LINE, 0x8c);
6666}
6767
6868MACHINE_CONFIG_START( bfm_ad5, adder5_state )
trunk/src/mame/drivers/bfm_sc4.c
r19613r19614
1414
1515    note: default Jackpot keys should be set to whatever value the game
1616          mentions it should be using with none present, many games accept
17        multiple keys.  A number of Mazooma games will attempt to use
18        invalid settings by default with no key.
17          multiple keys.  A number of Mazooma games will attempt to use
18          invalid settings by default with no key.
1919
2020    Reel configs have been done to allow games to boot past the initial
21   spin up tests where possible*, some reels probably still aren't correct
22   and as a result several games will end up with reels erroring or
23   spinning endlessly ingame, once the correct reel types are identified
24   the details in the config structures should be replaced.
21    spin up tests where possible*, some reels probably still aren't correct
22    and as a result several games will end up with reels erroring or
23    spinning endlessly ingame, once the correct reel types are identified
24    the details in the config structures should be replaced.
2525
26   * a handful of games still don't
26    * a handful of games still don't
2727
28   ----------------
28    ----------------
2929
30   General Info
30    General Info
3131
32   Whitbread licensed sets were designed for use in Whitbread owned
33   establishments, they tend to have much 'flatter' profiles than the
34   regular sets meaning they pay out small prizes with a regular frequency
35   rather than saving up for larger (multi) jackpot payments etc.
32    Whitbread licensed sets were designed for use in Whitbread owned
33    establishments, they tend to have much 'flatter' profiles than the
34    regular sets meaning they pay out small prizes with a regular frequency
35    rather than saving up for larger (multi) jackpot payments etc.
3636
3737*/
3838
r19613r19614
66796679
66806680ROM_START( sc4goldoc )
66816681   ROM_REGION( 0x400000, "maincpu", ROMREGION_ERASEFF )
6682   // why do we only have a combined rom for this one? (is it same as sc4gocasa once split?)
6682   // why do we only have a combined rom for this one? (is it same as sc4gocasa once split?)
66836683   ROM_LOAD( "95401643.bin", 0x0000, 0x100000, CRC(3a85490e) SHA1(e1e4765785d631a7ec4e5daa33d1ce4fbdaee446) ) // TODO SPLIT THIS
66846684   sc4goldo_others
66856685ROM_END
r19613r19614
2551125511GAME( 200?, sc4gxcasb   ,sc4bonbx,   sc4, sc4, sc4_state, sc4gx, ROT0, "Mazooma","Bar X (Mazooma) (Scorpion 4) (BARX, set 3)", GAME_NOT_WORKING )
2551225512GAME( 200?, sc4gxcasc   ,sc4bonbx,   sc4, sc4, sc4_state, sc4gx, ROT0, "Mazooma","Bar X (Mazooma) (Scorpion 4) (BARX, set 4)", GAME_NOT_WORKING )
2551325513GAME( 200?, sc4gxcasd   ,sc4bonbx,   sc4, sc4, sc4_state, sc4gx, ROT0, "Mazooma","Bar X (Mazooma) (Scorpion 4) (BARX, set 5)", GAME_NOT_WORKING )
25514// PR7036GOLDEN X         BARX SOUNDS         GOLDEN
25514// PR7036GOLDEN X         BARX SOUNDS         GOLDEN
2551525515GAME( 200?, sc4gxcase   ,sc4bonbx,   sc4, sc4, sc4_state, sc4gx, ROT0, "Mazooma","Bar X (Mazooma) (Scorpion 4) (BARX, set 6)", GAME_NOT_WORKING )
2551625516GAME( 200?, sc4gxcasf   ,sc4bonbx,   sc4, sc4, sc4_state, sc4gx, ROT0, "Mazooma","Bar X (Mazooma) (Scorpion 4) (BARX, set 7)", GAME_NOT_WORKING )
2551725517GAME( 200?, sc4gxa      ,sc4bonbx,   sc4, sc4, sc4_state, sc4gx, ROT0, "Mazooma","Bar X (Mazooma) (Scorpion 4) (BARX, set 8)", GAME_NOT_WORKING ) // wasn't marked as Casino
r19613r19614
2612226122   &starpointrm20_interface_48step,
2612326123   &starpointrm20_interface_48step,
2612426124   &starpoint_interface_200step_reel,
26125   0,
26125   0,
2612626126};
2612726127
2612826128DRIVER_INIT_MEMBER(sc4_state,sc4jolly)
r19613r19614
2614426144   &starpointrm20_interface_48step,
2614526145   &starpointrm20_interface_48step,
2614626146   &starpointrm20_interface_48step,
26147   0,
26147   0,
2614826148};
2614926149
2615026150DRIVER_INIT_MEMBER(sc4_state,sc4juicy)
r19613r19614
2618426184   &starpointrm20_interface_48step,
2618526185   &starpointrm20_interface_48step,
2618626186   0,
26187   0,
26187   0,
2618826188};
2618926189
2619026190DRIVER_INIT_MEMBER(sc4_state,sc4jjf)
r19613r19614
2621826218   &starpointrm20_interface_48step,
2621926219   0,
2622026220   &starpointrm20_interface_48step,
26221   0,
26221   0,
2622226222};
2622326223
2622426224DRIVER_INIT_MEMBER(sc4_state,sc4kalei)
r19613r19614
2624426244   &starpointrm20_interface_48step,
2624526245   &starpointrm20_interface_48step,
2624626246   0,
26247   0,
26247   0,
2624826248};
2624926249
2625026250DRIVER_INIT_MEMBER(sc4_state,sc4lir)
r19613r19614
2627326273   &starpointrm20_interface_48step,
2627426274   0,
2627526275   0,
26276   0,
26276   0,
2627726277};
2627826278
2627926279DRIVER_INIT_MEMBER(sc4_state,sc4lined)
r19613r19614
2631826318   &starpointrm20_interface_48step,
2631926319   &starpointrm20_interface_48step,
2632026320   &starpointrm20_interface_48step,
26321   0,
26321   0,
2632226322};
2632326323
2632426324DRIVER_INIT_MEMBER(sc4_state,sc4ldvcl)
r19613r19614
2633726337   &starpointrm20_interface_48step,
2633826338   0,
2633926339   &starpointrm20_interface_48step,
26340   0,
26340   0,
2634126341};
2634226342
2634326343DRIVER_INIT_MEMBER(sc4_state,sc4lockb)
r19613r19614
2636326363   &starpointrm20_interface_48step,
2636426364   &starpointrm20_interface_48step,
2636526365   &starpointrm20_interface_48step,
26366   0,
26366   0,
2636726367};
2636826368
2636926369DRIVER_INIT_MEMBER(sc4_state,sc4lkbcl)
r19613r19614
2640226402   &starpointrm20_interface_48step,
2640326403   0,
2640426404   &starpointrm20_interface_48step,
26405   0,
26405   0,
2640626406};
2640726407
2640826408DRIVER_INIT_MEMBER(sc4_state,sc4lotrf)
r19613r19614
2700027000GAME( 200?, sc4mcas1   ,sc4mcas,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly Casino (PR2354) (Mazooma) (Scorpion 4) (GMBU, set 16)", GAME_NOT_WORKING )// ^^
2700127001GAME( 200?, sc4mcas2   ,sc4mcas,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly Casino (PR2354) (Mazooma) (Scorpion 4) (GMBU, set 17)", GAME_NOT_WORKING )// ^^
2700227002GAME( 200?, sc4mcas3   ,sc4mcas,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly Casino (PR2354) (Mazooma) (Scorpion 4) (GMBU, set 18)", GAME_NOT_WORKING )// ^^
27003// these have a different internal code compared to the PR2056 sets above which strongly indicates they're for the 'GMBU' sets above
27003// these have a different internal code compared to the PR2056 sets above which strongly indicates they're for the 'GMBU' sets above
2700427004GAME( 200?, sc4mcask   ,sc4mcas,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly Casino (PR2056) (Mazooma) (Scorpion 4) (GMTB, Top Box, set 1)", GAME_NOT_WORKING ) // PR2056  MONOP  TRIPLE         MONO SOUNDS         MONOP TRIPLE
2700527005GAME( 200?, sc4mcasu   ,sc4mcas,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly Casino (PR2056) (Mazooma) (Scorpion 4) (GMTB, Top Box, set 2)", GAME_NOT_WORKING ) // ^^
2700627006GAME( 200?, sc4mcas4   ,sc4mcas,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly Casino (PR2056) (Mazooma) (Scorpion 4) (GMTB, Top Box, set 3)", GAME_NOT_WORKING ) // ^^
r19613r19614
2734927349   &starpointrm20_interface_48step,
2735027350   &starpointrm20_interface_48step,
2735127351   &starpointrm20_interface_48step,
27352   0,
27352   0,
2735327353   &starpointrm20_interface_48step,
27354   0,
27354   0,
2735527355};
2735627356
2735727357DRIVER_INIT_MEMBER(sc4_state,sc4pipe)
r19613r19614
2737227372   &starpointrm20_interface_48step,
2737327373   &starpointrm20_interface_48step,
2737427374   &starpointrm20_interface_48step,
27375   0,
27375   0,
2737627376};
2737727377
2737827378DRIVER_INIT_MEMBER(sc4_state,sc4plumb)
r19613r19614
2740027400   &starpointrm20_interface_48step,
2740127401   &starpointrm20_interface_48step,
2740227402   0,
27403   0,
27403   0,
2740427404};
2740527405
2740627406DRIVER_INIT_MEMBER(sc4_state,sc4polem)
r19613r19614
2742727427   &starpointrm20_interface_48step,
2742827428   &starpointrm20_interface_48step,
2742927429   &starpointrm20_interface_48step,
27430   0,
27430   0,
2743127431};
2743227432
2743327433DRIVER_INIT_MEMBER(sc4_state,sc4polic)
r19613r19614
2745227452   &starpointrm20_interface_48step,
2745327453   &starpointrm20_interface_48step,
2745427454   0,
27455   0,
27455   0,
2745627456};
2745727457
2745827458DRIVER_INIT_MEMBER(sc4_state,sc4potsh)
r19613r19614
2747427474   &starpointrm20_interface_48step,
2747527475   &starpointrm20_interface_48step,
2747627476   &starpointrm20_interface_48step,
27477   0,
27477   0,
2747827478};
2747927479
2748027480DRIVER_INIT_MEMBER(sc4_state,sc4pogbl)
r19613r19614
2749827498   &starpointrm20_interface_48step,
2749927499   &starpointrm20_interface_48step,
2750027500   &starpoint_interface_200step_reel,
27501   0,
27501   0,
2750227502};
2750327503
2750427504DRIVER_INIT_MEMBER(sc4_state,sc4pwrsg)
r19613r19614
2752127521   &starpointrm20_interface_48step,
2752227522   &starpointrm20_interface_48step,
2752327523   &starpoint_interface_200step_reel,
27524   0,
27524   0,
2752527525};
2752627526
2752727527DRIVER_INIT_MEMBER(sc4_state,sc4pir)
r19613r19614
2755427554
2755527555DRIVER_INIT_MEMBER(sc4_state,sc4pen1)
2755627556{
27557//   BFM_dm01_config(machine(), &dm01_interface);
27557//  BFM_dm01_config(machine(), &dm01_interface);
2755827558   DRIVER_INIT_CALL(sc4);
2755927559   m_reel_setup = sc4pen1_reel_configs;
2756027560}
r19613r19614
2771527715   &starpointrm20_interface_48step,
2771627716   &starpointrm20_interface_48step,
2771727717   &starpoint_interface_200step_reel,
27718   0,
27718   0,
2771927719};
2772027720
2772127721DRIVER_INIT_MEMBER(sc4_state,sc4rich)
r19613r19614
2774527745   &starpointrm20_interface_48step,
2774627746   &starpointrm20_interface_48step,
2774727747   &starpointrm20_interface_48step,
27748   0,
27748   0,
2774927749   &starpointrm20_interface_48step,
27750   0,
27750   0,
2775127751};
2775227752
2775327753DRIVER_INIT_MEMBER(sc4_state,sc4rttt)
r19613r19614
2777627776   &starpointrm20_interface_48step,
2777727777   &starpointrm20_interface_48step,
2777827778   &starpointrm20_interface_48step,
27779   0,
27779   0,
2778027780   &starpointrm20_interface_48step,
27781   0,
27781   0,
2778227782};
2778327783
2778427784DRIVER_INIT_MEMBER(sc4_state,sc4roksc)
r19613r19614
2783027830   &starpointrm20_interface_48step,
2783127831   0,
2783227832   &starpoint_interface_200step_reel,
27833   0,
27833   0,
2783427834};
2783527835
2783627836DRIVER_INIT_MEMBER(sc4_state,sc4rogds)
r19613r19614
3332933329// PR1222    RIO GRANDE         95004309 RIO GRANDE SOUNDS11
3333033330GAME( 200?, sc4rio      ,0,         sc4, sc4, sc4_state, sc4rio, ROT0, "BFM","Rio Grande (Dutch) (Bellfruit) (Scorpion 4)", GAME_NOT_WORKING )
3333133331
33332   
33332
3333333333static const stepper_interface* sc4strbr_reel_configs[6] =
3333433334{
3333533335   &starpointrm20_interface_48step,
r19613r19614
3357033570   &starpointrm20_interface_48step,
3357133571   &starpointrm20_interface_48step,
3357233572   0,
33573   0,
33573   0,
3357433574};
3357533575
3357633576DRIVER_INIT_MEMBER(sc4_state,sc4polen)
r19613r19614
3458134581GAME( 200?, sc4hydec   ,sc4hyde,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Hyde & Streak (Mazooma) (Scorpion 4) (set 4)", GAME_NOT_WORKING | GAME_NO_SOUND )
3458234582
3458334583// // does NOT want 'WILD SOUNDS' from 'PR7065 WET 'N' WILD'
34584// PR2043 NUDGE IT         WILD SOUNDS             NUDGE IT 
34584// PR2043 NUDGE IT         WILD SOUNDS             NUDGE IT
3458534585GAME( 200?, sc4nudit   ,0,         sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Nudge It (Mazooma) (Scorpion 4) (set 1)", GAME_NOT_WORKING | GAME_NO_SOUND )
3458634586// PR2043 NUDGE IT         NGIT SOUNDS             NUDGE IT
3458734587GAME( 200?, sc4nudita   ,sc4nudit,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Nudge It (Mazooma) (Scorpion 4) (set 2)", GAME_NOT_WORKING )
r19613r19614
3466134661GAME( 200?, sc4monotc   ,sc4monot,  sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Monopoly TTT (PR2133) (Mazooma) (Scorpion 4) (set 4)", GAME_NOT_WORKING | GAME_NO_SOUND ) // PR2133MONOPOLY TTT         MONOPOLY TTT  ARCADE  MONL SOUNDS         MONOPOLY
3466234662
3466334663// WRONG SOUNDS, PAY UNIT ERR 17
34664GAME( 200?, sc4cmon      ,0,           sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Casino Monopoly (PR2133) (Mazooma) (Scorpion 4) (set 1)", GAME_NOT_WORKING | GAME_NO_SOUND ) // PR2133 CASINO MONOPOLY             MONOPOLY      ARCADE  MONL SOUNDS             MONOPOLY
34664GAME( 200?, sc4cmon      ,0,        sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Casino Monopoly (PR2133) (Mazooma) (Scorpion 4) (set 1)", GAME_NOT_WORKING | GAME_NO_SOUND ) // PR2133 CASINO MONOPOLY             MONOPOLY      ARCADE  MONL SOUNDS             MONOPOLY
3466534665GAME( 200?, sc4cmona   ,sc4cmon,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Casino Monopoly (PR2133) (Mazooma) (Scorpion 4) (set 2)", GAME_NOT_WORKING | GAME_NO_SOUND ) // ^^
3466634666GAME( 200?, sc4cmonb   ,sc4cmon,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Casino Monopoly (PR2133) (Mazooma) (Scorpion 4) (set 3)", GAME_NOT_WORKING | GAME_NO_SOUND ) // ^^
3466734667GAME( 200?, sc4cmonc   ,sc4cmon,   sc4, sc4, sc4_state, sc4, ROT0, "Mazooma","Casino Monopoly (PR2133) (Mazooma) (Scorpion 4) (set 4)", GAME_NOT_WORKING | GAME_NO_SOUND ) // ^^
trunk/src/mame/drivers/maygay1bsw.c
r19613r19614
6868#define m1_bounty_sound \
6969   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
7070   ROM_LOAD( "bgsnd", 0x0000, 0x020000, CRC(abe7c01d) SHA1(21caadcd149772dfd79a9d30ebc1d8da91ff36f4) )\
71   
71
7272ROM_START( m1bountc )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc4-107.bin", 0x0000, 0x010000, CRC(0bdf41b3) SHA1(ce3564433a708ba50ca4099a26b1f75cf3cec947) ) m1_bounty_sound ROM_END_M1A_MCU //1.3
7373ROM_START( m1bountcp )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc4-108.bin", 0x0000, 0x010000, CRC(adf7139f) SHA1(5b2bd367df31e3c76d9fac2a71a90800d95c4719) ) m1_bounty_sound ROM_END_M1A_MCU //1.3P
7474
r19613r19614
114114   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
115115   ROM_LOAD( "bdeal.u2", 0x000000, 0x080000, CRC(7ef1d4dd) SHA1(97a99dd9325634ee28dda943d92257010c60306c) ) \
116116   ROM_LOAD( "bdeal.u3", 0x080000, 0x080000, CRC(28f48d4b) SHA1(642c2a2fc4f2faff510cbca2488ab6904bb489f6) ) \
117   
117
118118ROM_START( m1bigdel ) ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  ) ROM_LOAD( "bdeal.p1", 0x0000, 0x020000, CRC(3cdebbb8) SHA1(8578441ef269c41fbe3f253055f687e1ccbf4770) ) m1_bigdel_sound ROM_END_M1A_MCU
119119
120120GAME( 2000, m1bigdel   ,0         ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Big Deal (Maygay) (M1A/B)",GAME_FLAGS )
r19613r19614
418418ROM_START( m1cluedo1h )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "cluedo.bin", 0x0000, 0x010000, CRC(d9cd3491) SHA1(c0f753a291ac30cd5af99b611b3cea16f1f8c599) )   m1_cluedo_sound ROM_END_M1A_MCU //nhf 1.0
419419ROM_START( m1cluedoi )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-552.bin", 0x0000, 0x010000, CRC(70588685) SHA1(fa37feb43838a52087d6584004a43f006d0129cb) )   m1_cluedo_sound ROM_END_M1A_MCU //nhf 7.2 IoM 1995
420420ROM_START( m1cluedoip )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-553.bin", 0x0000, 0x010000, CRC(98b01b63) SHA1(aa56d3a7c34a60f93da0dafd416a7550416076ee) )   m1_cluedo_sound ROM_END_M1A_MCU //phf 7.2 IoM 1995
421ROM_START( m1cluedon )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-519", 0x0000, 0x010000, CRC(6bc4eb57) SHA1(1581e14a25786dda8a98ee2643c63bcb4caaea89) )    m1_cluedo_sound ROM_END_M1A_MCU //nhf 1.2 1995
421ROM_START( m1cluedon )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-519", 0x0000, 0x010000, CRC(6bc4eb57) SHA1(1581e14a25786dda8a98ee2643c63bcb4caaea89) )   m1_cluedo_sound ROM_END_M1A_MCU //nhf 1.2 1995
422422ROM_START( m1cluedonp )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-520", 0x0000, 0x010000, CRC(b4bfc448) SHA1(493b020a4d0a18ec2fd8f45d2eea1590b948ea51) )   m1_cluedo_sound ROM_END_M1A_MCU //phf 1.2 1995
423423ROM_START( m1cluedob2 )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-302", 0x0000, 0x010000, CRC(08031924) SHA1(9aa997328285502e56af0d1552220ca27bcc053a) )   m1_cluedo_sound ROM_END_M1A_MCU //nbu 2.1 BwB 1995
424424ROM_START( m1cluedob2p )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-303", 0x0000, 0x010000, CRC(e0eb84c2) SHA1(3c2db9d41b9c561a483293f2258b654547d937d4) )   m1_cluedo_sound ROM_END_M1A_MCU //pbu 2.1 BwB 1995
r19613r19614
515515ROM_START( m1coro32np )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-397", 0x0000, 0x010000, CRC(6b91fff5) SHA1(e29ae21bfd7d7e3139bfb65b60bd4bafcece5b24) )   m1_coro_sound ROM_END_M1A_MCU //3.2 newer protocol (Poss mislabel)
516516ROM_START( m1coro22n )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-395", 0x0000, 0x010000, CRC(980a56ba) SHA1(372744f165e0105346c567013b0c8ddec2ec0f7d) )   m1_coro_sound ROM_END_M1A_MCU //2.2 newer
517517ROM_START( m1coro21n )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-208", 0x0000, 0x010000, CRC(66f06d18) SHA1(fd14b09280815c03126d113e6be791a20483aae9) )   m1_coro_sound ROM_END_M1A_MCU //2.1 newer
518ROM_START( m1coro21np )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-209", 0x0000, 0x010000, CRC(8e18f0fe) SHA1(8d6c0fbd05484dc42b976228b7575e0ca0eea239) )    m1_coro_sound ROM_END_M1A_MCU //2.1 newer protocol
518ROM_START( m1coro21np )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-209", 0x0000, 0x010000, CRC(8e18f0fe) SHA1(8d6c0fbd05484dc42b976228b7575e0ca0eea239) )   m1_coro_sound ROM_END_M1A_MCU //2.1 newer protocol
519519ROM_START( m1coro12n )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-393", 0x0000, 0x010000, CRC(abbdfe46) SHA1(a6e005849b6da9801331155eb73fa169f6f42265) )   m1_coro_sound ROM_END_M1A_MCU //1.2 newer
520520ROM_START( m1coro12np )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-394", 0x0000, 0x010000, CRC(a7a5a6ff) SHA1(0805d3f1148e0aa83f8c0c804c08df3624a3af72) )   m1_coro_sound ROM_END_M1A_MCU //1.2 newer protocol
521521ROM_START( m1coro11n )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-306", 0x0000, 0x010000, CRC(a94a8f48) SHA1(56d5723d8087f523061280d9afe15a1bf8b269f5) )   m1_coro_sound ROM_END_M1A_MCU //1.1 newer
r19613r19614
575575   ROM_LOAD( "clubcorriesnd.p1snd", 0x000000, 0x080000, CRC(e4cf4412) SHA1(6849fb9a71a6f0bbf40368238ed9104026013d36) )\
576576   ROM_LOAD( "clubcorriesnd.p2snd", 0x080000, 0x080000, CRC(e33d2c08) SHA1(fd30b9c2936659a793d83e283d920c46990633c4) )\
577577
578ROM_START( m1corocb )    ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc7-198", 0x0000, 0x020000, CRC(905b916d) SHA1(4c244ee49b4528e05cb074f0df0b3bbfd6b28fd2) )   m1_corocb_sound ROM_END_M1A_MCU //2.1
578ROM_START( m1corocb )   ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc7-198", 0x0000, 0x020000, CRC(905b916d) SHA1(4c244ee49b4528e05cb074f0df0b3bbfd6b28fd2) )   m1_corocb_sound ROM_END_M1A_MCU //2.1
579579ROM_START( m1corocbp )   ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc7-199", 0x0000, 0x020000, CRC(c01a6fd1) SHA1(2bb62f190843acb8850241ccd45fb17167c18376) )   m1_corocb_sound ROM_END_M1A_MCU //2.1 protocol
580580ROM_START( m1corocb1 )   ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc7-196", 0x0000, 0x020000, CRC(e2188b21) SHA1(86238d31595814d9d1f82544c9766d068b6df132) )   m1_corocb_sound ROM_END_M1A_MCU //sc7196 250 GBP 1.1
581581ROM_START( m1corocb1p )   ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sc7-197", 0x0000, 0x020000, CRC(b259759d) SHA1(cd84d959a4bcfcd942322af9f33893e626fe8759) )   m1_corocb_sound ROM_END_M1A_MCU //protocol
r19613r19614
612612ROM_START( m1cororrg )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "roversprog", 0x0000, 0x010000, CRC(35aded03) SHA1(978c49dad02cd1bb290028aa52d3048c5f2b9bdd) )   m1_cororr_sound ROM_END_M1A_MCU //1.1 1995 sa6-202
613613ROM_START( m1cororrgp )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa6-203", 0x0000, 0x010000, CRC(dd4570e5) SHA1(16f1530d68dcd043f67084c339b02f093d45c6cb) )   m1_cororr_sound ROM_END_M1A_MCU //protocol
614614ROM_START( m1cororrh )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-539", 0x0000, 0x010000, CRC(8ba27a8e) SHA1(27ec7503d84585bbb791f6b4ee1ef538dcd5f619) )   m1_cororr_sound ROM_END_M1A_MCU
615ROM_START( m1cororri )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-354", 0x0000, 0x010000, CRC(132d0aec) SHA1(fd7febd1b7098a6a3b00fa5ed5f0323821fea9da) )    m1_cororr_sound ROM_END_M1A_MCU //3.1
615ROM_START( m1cororri )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-354", 0x0000, 0x010000, CRC(132d0aec) SHA1(fd7febd1b7098a6a3b00fa5ed5f0323821fea9da) )   m1_cororr_sound ROM_END_M1A_MCU //3.1
616616ROM_START( m1cororrip )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-355", 0x0000, 0x010000, CRC(fbc5970a) SHA1(41cf94e2ab0dc3d020cf30cf63c8939958e7805a) )   m1_cororr_sound ROM_END_M1A_MCU //protocol
617617ROM_START( m1cororrj )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "rover8ac", 0x0000, 0x010000, CRC(1f6bff96) SHA1(862e32dc9ea3fad5ef27b9146a8a62138d3b6406) )   m1_cororr_sound ROM_END_M1A_MCU //5.1 8GBP 1995 All cash sa5-354
618ROM_START( m1cororrjp )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-345", 0x0000, 0x010000, CRC(06b8bd1c) SHA1(52c43b7f2774accdde4c153c84b5051df84cbe29) )    m1_cororr_sound ROM_END_M1A_MCU //protocol
619ROM_START( m1cororrk )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-344", 0x0000, 0x010000, CRC(ee5020fa) SHA1(926c217d345a62b2b5073f35463ba67cf03b068b) )    m1_cororr_sound ROM_END_M1A_MCU //2.1 8gbp token
618ROM_START( m1cororrjp )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-345", 0x0000, 0x010000, CRC(06b8bd1c) SHA1(52c43b7f2774accdde4c153c84b5051df84cbe29) )   m1_cororr_sound ROM_END_M1A_MCU //protocol
619ROM_START( m1cororrk )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-344", 0x0000, 0x010000, CRC(ee5020fa) SHA1(926c217d345a62b2b5073f35463ba67cf03b068b) )   m1_cororr_sound ROM_END_M1A_MCU //2.1 8gbp token
620620ROM_START( m1cororrl )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-342", 0x0000, 0x010000, CRC(735e8151) SHA1(25b9f183e03c74fd918c9c540e5ebd0dc0d38fcd) )   m1_cororr_sound ROM_END_M1A_MCU
621621ROM_START( m1cororrlp )   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00  )   ROM_LOAD( "sa5-343", 0x0000, 0x010000, CRC(9bb61cb7) SHA1(0c42d7db308dac80a4910b2d2327833562e9c887) )   m1_cororr_sound ROM_END_M1A_MCU //protocol
622622
r19613r19614
905905   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
906906   ROM_LOAD( "queenvic.p1", 0x000000, 0x080000, CRC(af665967) SHA1(b87b13e759765eeb701ff8ead41eb3c09bec1e92) ) \
907907   ROM_LOAD( "queenvic.p2", 0x080000, 0x080000, CRC(92ce90ce) SHA1(9fca67429b9f1496dc745818b3ed7747b8eedf5d) ) \
908   
908
909909ROM_START( m1eastqv )     ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa7-496", 0x0000, 0x020000, CRC(efe47e9b) SHA1(83ce75026a1194e645a03016263f091be1ced437) )      m1_eastqv_sound ROM_END_M1A_MCU GAME( 199?, m1eastqv   ,0          ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Eastenders - Queen Vic (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
910910ROM_START( m1eastqva )    ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-311", 0x0000, 0x020000, CRC(225461cb) SHA1(3d6398f3226e54dcfed1b670aeece82eec4f424d) )      m1_eastqv_sound ROM_END_M1A_MCU GAME( 199?, m1eastqva  ,m1eastqv   ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Eastenders - Queen Vic (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
911911ROM_START( m1eastqvb )    ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-312", 0x0000, 0x020000, CRC(31935a9d) SHA1(74423332183927ebec40073bfb65e162da2b6f6d) )      m1_eastqv_sound ROM_END_M1A_MCU GAME( 199?, m1eastqvb  ,m1eastqv   ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Eastenders - Queen Vic (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
r19613r19614
950950   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
951951   ROM_LOAD( "fnsnd.p1", 0x000000, 0x080000, CRC(f6f1334f) SHA1(607b136a3d8cf4ae2e306a4332b69f564936d383) ) \
952952   ROM_LOAD( "fnsnd.p2", 0x080000, 0x080000, CRC(13419292) SHA1(40f314b4f42384334e6929b0de6b6a899fa2c09f) ) \
953   
953
954954ROM_START( m1fight )   ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("fight15f", 0x0000, 0x020000, CRC(ceb7ca5d) SHA1(911164a69541de05fd6dc64f54aad13a0d57ebd7) )            m1_fight_sound ROM_END_M1A_MCU  GAME( 199?, m1fight      ,0       ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Fight Night (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
955955ROM_START( m1fighta )  ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("fight15r", 0x0000, 0x020000, CRC(46c7d3ca) SHA1(24bc785d888cb051ded94b04a47d286f26cfe4e4) )            m1_fight_sound ROM_END_M1A_MCU  GAME( 199?, m1fighta   ,m1fight ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Fight Night (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
956956ROM_START( m1fightb )  ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("fightnt10.bin", 0x0000, 0x020000, CRC(95e891b5) SHA1(3412ce4db34f89a4a18209440770c3b8b3b37024) )         m1_fight_sound ROM_END_M1A_MCU  GAME( 199?, m1fightb   ,m1fight ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Fight Night (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
r19613r19614
11541154   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
11551155   ROM_LOAD( "trivpusuit.p1", 0x000000, 0x080000, CRC(3c4b4e2c) SHA1(db570035a3b9b7587501f342c80ec52cb1a79b49) ) \
11561156   ROM_LOAD( "trivpusuit.p2", 0x080000, 0x080000, CRC(5a9808c1) SHA1(29c011ee2dc3e8bc87cb4c5ded61dfa3fdb9d7f7) ) \
1157   
1157
11581158ROM_START( m1trivia )  ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-297",         0x0000, 0x010000, CRC(b7a20f4d) SHA1(4b619f1ff26226304d86f69cfbf9d8e264af93b7) ) m1_trivia_sound ROM_END_M1A_MCU GAME( 199?, m1trivia  ,0       ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Trivial Pursuit (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
11591159ROM_START( m1triviaa ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-298",         0x0000, 0x010000, CRC(118a5d61) SHA1(41202c92710c5a9b2cbaea56e69a75366b6e3537) ) m1_trivia_sound ROM_END_M1A_MCU GAME( 199?, m1triviaa ,m1trivia ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Trivial Pursuit (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
11601160ROM_START( m1triviab ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa7-503",         0x0000, 0x010000, CRC(56c8ee8e) SHA1(c1c0b9df26fecdca066cab2b4d7dadd9df8dbc2f) ) m1_trivia_sound ROM_END_M1A_MCU GAME( 199?, m1triviab ,m1trivia ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Trivial Pursuit (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
r19613r19614
14661466   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
14671467   ROM_LOAD( "noelshouseparty.p1", 0x000000, 0x080000, CRC(aa8e62e4) SHA1(719cb6d5c2b3ffca3952c01e143f6096207b2520) ) \
14681468   ROM_LOAD( "noelshouseparty.p2", 0x080000, 0x080000, CRC(e8a06839) SHA1(7452f48355c64e0424879d53d87fa523953eec0a) ) \
1469   
1469
14701470ROM_START( m1nhp )  ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("nhp.bin", 0x0000, 0x010000, CRC(b747e835) SHA1(98faaff432182adaf8ae7249187ac0e81bfe10d8) ) m1_nhp_sound ROM_END_M1A_MCU  GAME( 199?, m1nhp  ,0     ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Noel's House Party (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
14711471ROM_START( m1nhpa ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("noel10",   0x0000, 0x010000, CRC(84ad7b31) SHA1(e350a1806c05215e0a60f8dc724345b6b1a0be12) ) m1_nhp_sound ROM_END_M1A_MCU  GAME( 199?, m1nhpa ,m1nhp ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Noel's House Party (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
14721472ROM_START( m1nhpb ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-216", 0x0000, 0x010000, CRC(46e9e772) SHA1(098c23b8676b53dce6087c7812eb45a31e1cad0d) ) m1_nhp_sound ROM_END_M1A_MCU  GAME( 199?, m1nhpb ,m1nhp ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Noel's House Party (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
r19613r19614
15201520ROM_START( m1wldznee ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa4-624",      0x0000, 0x010000, CRC(f3fffc6f) SHA1(b7697cb9751351bb368dd5a933b9d4a2687de054) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldznee ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 6)",GAME_FLAGS )
15211521ROM_START( m1wldznef ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-003",      0x0000, 0x010000, CRC(3e2ac4ff) SHA1(3b4cdc2170b4aeddb2efe1a334919d5d080e4119) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldznef ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 7)",GAME_FLAGS )
15221522ROM_START( m1wldzneg ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-004",      0x0000, 0x010000, CRC(32329c46) SHA1(b58fabb94bc761a7a3538e55f3817a4123508159) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldzneg ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 8)",GAME_FLAGS )
1523ROM_START( m1wldzneh ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-107",       0x0000, 0x010000, CRC(9324b657) SHA1(7b460db08b904be94e82f1054b48826ef56e13dd) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldzneh ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 9)",GAME_FLAGS )
1523ROM_START( m1wldzneh ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-107",      0x0000, 0x010000, CRC(9324b657) SHA1(7b460db08b904be94e82f1054b48826ef56e13dd) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldzneh ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 9)",GAME_FLAGS )
15241524ROM_START( m1wldznei ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-108",      0x0000, 0x010000, CRC(350ce47b) SHA1(6678552edd5a47c71abfd018cf8e594b869ae15f) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldznei ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 10)",GAME_FLAGS )
15251525ROM_START( m1wldznej ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-375",      0x0000, 0x010000, CRC(7c2da5db) SHA1(4a82fcbcf9586bca7a0a954e1b3ed79f5fe0a521) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldznej ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 11)",GAME_FLAGS )
15261526ROM_START( m1wldznek ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-376",      0x0000, 0x010000, CRC(c8957b08) SHA1(edf8f56c5c949af4ef7f2de79802c12fad9aef2e) ) m1_wldzne_sound ROM_END_M1A_MCU  GAME( 199?, m1wldznek ,m1wldzne ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Wild Zone (Maygay) (M1A/B) (set 12)",GAME_FLAGS )
r19613r19614
18071807#define m1_sprnov_sound \
18081808   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
18091809   ROM_LOAD( "supernovasnd.bin", 0x0000, 0x020000, CRC(f91e2c05) SHA1(e189c14214f4637d6a803893d79a41ad0fc8ebba) ) \
1810   
1810
18111811ROM_START( m1sprnov ) ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00  ) ROM_LOAD( "supernovaprg.bin", 0x0000, 0x010000, CRC(6d533247) SHA1(475ecdcc10c9da558eb4d7c5e288d4724f65a5ce) ) m1_sprnov_sound ROM_END_M1A_MCU  GAME( 199?, m1sprnov   ,0         ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Super Nova (Dutch) (Maygay) (M1A/B)",GAME_FLAGS )
18121812
18131813/*******************************************************************************************************************************************************************************************************
r19613r19614
18651865   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
18661866   ROM_LOAD( "dig1-033 snd u2.bin", 0x000000, 0x080000, CRC(3eaa138c) SHA1(ad7d6e3ffc8fe19ea8cb9188998c75c90a77e09e) ) \
18671867   ROM_LOAD( "dig1-033 snd u3.bin", 0x080000, 0x080000, CRC(89fde428) SHA1(f0942a2f1d3890ad18b01e8433333e5412c57644) ) \
1868   
1868
18691869ROM_START( m1przee )  ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa4-186", 0x0000, 0x010000, CRC(6e48b9e6) SHA1(bec5ad1ca06175c4217bbe3f6caae0061c7bfe99) ) m1_przee_sound ROM_END_M1A_MCU  GAME( 199?, m1przee   ,0       ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Prize Eastenders (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
18701870ROM_START( m1przeea ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa4-556", 0x0000, 0x010000, CRC(0f6aeadd) SHA1(ed613d064c9991eed913f9579ea18a9ac70c2cf7) ) m1_przee_sound ROM_END_M1A_MCU  GAME( 199?, m1przeea  ,m1przee ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Prize Eastenders (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
18711871ROM_START( m1przeeb ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa5-058", 0x0000, 0x010000, CRC(3cc35697) SHA1(adaaafd6ae59497630660ec179212f0dd8dd3741) ) m1_przee_sound ROM_END_M1A_MCU  GAME( 199?, m1przeeb  ,m1przee ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "Prize Eastenders (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
r19613r19614
19551955   ROM_REGION( 0x010000, "dmddata", ROMREGION_ERASE00  ) /* what CPU? or is this MCU data? */ \
19561956   ROM_LOAD( "encdot.bin", 0x0000, 0x010000, CRC(3b707399) SHA1(9bc9522625e97c7d60cc104a96f7312b1d88ec01) ) \
19571957
1958ROM_START( m1winenc )  ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-371", 0x0000, 0x010000, CRC(ecba5b6b) SHA1(7b50d1a6d4ec287bb5159b6018282107d5594227) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winenc  ,0        ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
1959ROM_START( m1winenca ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-372", 0x0000, 0x010000, CRC(580285b8) SHA1(f0589184a60c73078c3cef9f89ca279fc67f9813) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winenca ,m1winenc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
1960ROM_START( m1winencb ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa7-573", 0x0000, 0x010000, CRC(a597cd98) SHA1(3d28306004b1937e7d04380fe3f9afc5ec321b7b) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winencb ,m1winenc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
1961ROM_START( m1winencc ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa7-574", 0x0000, 0x010000, CRC(a98f9521) SHA1(6fa2ba09dcadfb2164dbea376abc88d0187d02c8) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winencc ,m1winenc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 4)",GAME_FLAGS )
1958ROM_START( m1winenc )  ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-371", 0x0000, 0x010000, CRC(ecba5b6b) SHA1(7b50d1a6d4ec287bb5159b6018282107d5594227) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winenc  ,0        ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 1)",GAME_FLAGS )
1959ROM_START( m1winenca ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa6-372", 0x0000, 0x010000, CRC(580285b8) SHA1(f0589184a60c73078c3cef9f89ca279fc67f9813) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winenca ,m1winenc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 2)",GAME_FLAGS )
1960ROM_START( m1winencb ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa7-573", 0x0000, 0x010000, CRC(a597cd98) SHA1(3d28306004b1937e7d04380fe3f9afc5ec321b7b) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winencb ,m1winenc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 3)",GAME_FLAGS )
1961ROM_START( m1winencc ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("sa7-574", 0x0000, 0x010000, CRC(a98f9521) SHA1(6fa2ba09dcadfb2164dbea376abc88d0187d02c8) ) m1_winenc_sound ROM_END_M1A_MCU GAME( 199?, m1winencc ,m1winenc ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Maygay", "John Francombe's Winners Enclosure (Maygay) (M1A/B) (set 4)",GAME_FLAGS )
19621962
19631963/*******************************************************************************************************************************************************************************************************
19641964  Money Game Club
r19613r19614
21132113   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
21142114   ROM_LOAD( "jobsnd1.u2", 0x000000, 0x080000, CRC(69b3c5d6) SHA1(4fcf16686e0fc322a8c03e697d0292270ceccc5a) ) \
21152115   ROM_LOAD( "jobsnd2.u3", 0x080000, 0x080000, CRC(2e7d049e) SHA1(ee58c795e7da3735827dd6af0b44c03166cd99dc) ) \
2116   
2116
21172117ROM_START( m1jtjob )  ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("just2-0n.p1", 0x0000, 0x020000, CRC(d63d1710) SHA1(feccdd6dc242d32f04a080ab6a637cd6ec330c0d) ) m1_jtjob_sound ROM_END_M1A_MCU  GAME( 199?, m1jtjob   ,0       ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Global", "Just The Job (Global) (M1A/B) (set 1)",GAME_FLAGS )
21182118ROM_START( m1jtjoba ) ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("j_t_job.1_9", 0x0000, 0x020000, CRC(4f6da2b2) SHA1(43b4c314d5ee934d8dc8972c3c0585096d78793f) ) m1_jtjob_sound ROM_END_M1A_MCU  GAME( 199?, m1jtjoba  ,m1jtjob ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Global", "Just The Job (Global) (M1A/B) (set 2)",GAME_FLAGS )
21192119ROM_START( m1jtjobb ) ROM_REGION( 0x20000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("just2-0p.p1", 0x0000, 0x020000, CRC(8d809ba4) SHA1(a6fd142edb0a98c847cb376efe40756d19bccb02) ) m1_jtjob_sound ROM_END_M1A_MCU  GAME( 199?, m1jtjobb  ,m1jtjob ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Global", "Just The Job (Global) (M1A/B) (set 3)",GAME_FLAGS )
r19613r19614
21712171#define m1_startr_sound \
21722172   ROM_REGION( 0x100000, "msm6376", ROMREGION_ERASE00  ) \
21732173   ROM_LOAD( "mdmstartrekkingsound.rom", 0x0000, 0x040000, CRC(4b673184) SHA1(dd90719ebc8644b4aa50091dc9ddd79f5d0f3395) ) \
2174   
2174
21752175ROM_START( m1startr )  ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("tk20d3_1.bin",                  0x0000, 0x010000, CRC(a911ebc7) SHA1(7e74df1ca0fd5e0d04ece5ca307f4b1ab817c044) ) m1_startr_sound ROM_END_M1A_MCU  GAME( 199?, m1startr  ,0        ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Mdm", "Star Trekking (Mdm) (M1A/B) (set 1)",GAME_FLAGS )
21762176ROM_START( m1startra ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("st58dt",                     0x0000, 0x010000, CRC(29b73d2d) SHA1(f4bfcce7b8f158e8ec964936c365a2c6f27f7945) ) m1_startr_sound ROM_END_M1A_MCU  GAME( 199?, m1startra ,m1startr ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Mdm", "Star Trekking (Mdm) (M1A/B) (set 2)",GAME_FLAGS )
21772177ROM_START( m1startrb ) ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASE00 ) ROM_LOAD("st58st",                     0x0000, 0x010000, CRC(b4b4c3f3) SHA1(7179d970c0e903ae3b4ba925fba29b9777bf969d) ) m1_startr_sound ROM_END_M1A_MCU  GAME( 199?, m1startrb ,m1startr ,maygay_m1,maygay_m1, maygay1b_state,m1, ROT0, "Mdm", "Star Trekking (Mdm) (M1A/B) (set 3)",GAME_FLAGS )
trunk/src/mame/drivers/ertictac.c
r19613r19614
231231   MCFG_CPU_PERIODIC_INT_DRIVER(ertictac_state, ertictac_podule_irq, 60) // FIXME: timing of this
232232
233233   MCFG_I2CMEM_ADD("i2cmem",i2cmem_interface)
234//   MCFG_AAKART_ADD("kart", XTAL_24MHz/3) // TODO: frequency
234//  MCFG_AAKART_ADD("kart", XTAL_24MHz/3) // TODO: frequency
235235
236236   MCFG_SCREEN_ADD("screen", RASTER)
237237   MCFG_SCREEN_REFRESH_RATE(60)
trunk/src/mame/drivers/maygayep.c
r19613r19614
2121    SOME OF THESE GAMES USED HDDS, ONLY ONE IS DUMPED
2222    -------------------------------------------------
2323
24   Even where we have sound rom dumps they probably shouldn't be trusted, the source of them
25   had many badly dumped Scorpion 4 sound roms (0x080000 bytes where they should be double that)
26   and many of these sound roms are that size...
24    Even where we have sound rom dumps they probably shouldn't be trusted, the source of them
25    had many badly dumped Scorpion 4 sound roms (0x080000 bytes where they should be double that)
26    and many of these sound roms are that size...
2727
2828    Some games have EPOCH NEVADA in the header, others have EPOCH APOLLO, is there a difference?
2929
trunk/src/mame/drivers/namcos2.c
r19613r19614
31093109
31103110ROM_START( finalap3bl ) // bootleg set
31113111   ROM_REGION( 0x040000, "maincpu", 0 ) /* Master CPU */
3112   ROM_LOAD16_BYTE( "fl3-mp0.11d",  0x000000, 0x020000, CRC(af11f52e) SHA1(7be160bc4babe780399747efdca0f61a8b4fca93) )
3113   ROM_LOAD16_BYTE( "fl3-mp1.13d",  0x000001, 0x020000, CRC(da9b1b48) SHA1(58b15a29759e511367d994a5ef1fae3f5cd4fa82) )
3112   ROM_LOAD16_BYTE( "fl3-mp0.11d",  0x000000, 0x020000, CRC(af11f52e) SHA1(7be160bc4babe780399747efdca0f61a8b4fca93) )
3113   ROM_LOAD16_BYTE( "fl3-mp1.13d",  0x000001, 0x020000, CRC(da9b1b48) SHA1(58b15a29759e511367d994a5ef1fae3f5cd4fa82) )
31143114
31153115   ROM_REGION( 0x040000, "slave", 0 ) /* Slave CPU */
31163116   ROM_LOAD16_BYTE( "flt1sp0",  0x000000, 0x020000, CRC(e804ced1) SHA1(b31e1fddd202ba503b28455a270e8d45a348dc2e) )
trunk/src/mame/drivers/ecoinf3.c
r19613r19614
2424   ecoinf3_state(const machine_config &mconfig, device_type type, const char *tag)
2525      : driver_device(mconfig, type, tag),
2626      m_maincpu(*this, "maincpu")
27   {
27   {
2828      strobe_amount = 0;
2929      strobe_addr = 0;
3030   }
r19613r19614
6868      // guess, what are the bottom 4 bits, if anything?
6969
7070      int ret = m_optic_pattern | (ioport("IN0")->read() & 0xf);
71     
71
7272      // | 0x80 = reel 4 fault
7373      // | 0x40 = reel 3 fault
7474      // | 0x20 = reel 2 fault
7575      // | 0x10 = reel 1 fault
7676
7777      logerror("%04x - ppi8255_intf_d_(used)read_b %02x (Reel Optics)\n", machine().device("maincpu")->safe_pcbase(), ret);
78     
78
7979      return ret;
80   
81   
80
81
8282   } // changing goes from reel 1 error to running something in sphinx
8383   DECLARE_READ8_MEMBER(ppi8255_intf_d_read_c) { int ret = 0x00; logerror("%04x - ppi8255_intf_d_read_c %02x\n", machine().device("maincpu")->safe_pcbase(), ret); return ret; }
8484
r19613r19614
8989      logerror("%04x - ppi8255_intf_e_(used)read_b %02x\n", machine().device("maincpu")->safe_pcbase(), ret);
9090      return ret;
9191   }
92   
92
9393   DECLARE_READ8_MEMBER(ppi8255_intf_e_read_c) { int ret = 0x00; logerror("%04x - ppi8255_intf_e_read_c %02x\n", machine().device("maincpu")->safe_pcbase(), ret); return ret; }
9494
9595   DECLARE_READ8_MEMBER(ppi8255_intf_f_read_a)
r19613r19614
122122         for (int bit=0;bit<16;bit++)
123123         {
124124            int data = ((m_lamps[i] << bit)&0x8000)>>15;
125   
125
126126            output_set_indexed_value("lamp", (i*16)+bit, data );
127127         }
128128      }
r19613r19614
131131
132132   DECLARE_WRITE8_MEMBER(ppi8255_intf_a_write_a_strobedat0)
133133   {
134   //   logerror("%04x - ppi8255_intf_a_(used)write_a %02x (STROBEDAT?)\n", machine().device("maincpu")->safe_pcbase(), data);
134   //  logerror("%04x - ppi8255_intf_a_(used)write_a %02x (STROBEDAT?)\n", machine().device("maincpu")->safe_pcbase(), data);
135135      if (strobe_amount)
136136      {
137137         m_lamps[strobe_addr] = (m_lamps[strobe_addr] &0xff00) | (data & 0x00ff);
138138         strobe_amount--;
139139      }
140140   }
141   
141
142142   DECLARE_WRITE8_MEMBER(ppi8255_intf_a_write_b_strobedat1)
143143   {
144   //   logerror("%04x - ppi8255_intf_a_(used)write_b %02x (STROBEDAT?)\n", machine().device("maincpu")->safe_pcbase(), data);
144   //  logerror("%04x - ppi8255_intf_a_(used)write_b %02x (STROBEDAT?)\n", machine().device("maincpu")->safe_pcbase(), data);
145145      if (strobe_amount)
146146      {
147147         m_lamps[strobe_addr] = (m_lamps[strobe_addr] &0x00ff) | (data << 8);
r19613r19614
152152   {
153153      if ((data>=0xf0) && (data<=0xff))
154154      {
155      //   logerror("%04x - ppi8255_intf_a_(used)write_c %02x (STROBE?)\n", machine().device("maincpu")->safe_pcbase(), data);
155      //  logerror("%04x - ppi8255_intf_a_(used)write_c %02x (STROBE?)\n", machine().device("maincpu")->safe_pcbase(), data);
156156         strobe_addr = data & 0xf;
157     
157
158158         // hack, it writes values for the lamps, then writes 0x00 afterwards, probably giving the bulbs power, then removing the power
159159         // before switching the strobe to the next line?
160160         strobe_amount = 2;
161     
161
162162         update_lamps();
163163      }
164164      else logerror("%04x - ppi8255_intf_a_(used)write_c %02x (UNUSUAL?)\n", machine().device("maincpu")->safe_pcbase(), data);
r19613r19614
174174
175175   DECLARE_WRITE8_MEMBER(ppi8255_intf_d_write_a_reel01)
176176   {
177//      logerror("%04x - ppi8255_intf_d_(used)write_a %02x\n", machine().device("maincpu")->safe_pcbase(), data);
177//      logerror("%04x - ppi8255_intf_d_(used)write_a %02x\n", machine().device("maincpu")->safe_pcbase(), data);
178178      stepper_update(0, data&0x0f);
179179      stepper_update(1, (data>>4)&0x0f);
180180
r19613r19614
189189
190190   DECLARE_WRITE8_MEMBER(ppi8255_intf_d_write_a_reel23)
191191   {
192//      logerror("%04x - ppi8255_intf_d_(used)write_b %02x\n", machine().device("maincpu")->safe_pcbase(), data);
193   
192//      logerror("%04x - ppi8255_intf_d_(used)write_b %02x\n", machine().device("maincpu")->safe_pcbase(), data);
193
194194      stepper_update(2, data&0x0f);
195195      stepper_update(3, (data>>4)&0x0f);
196196
r19613r19614
370370
371371   // Sphinx - Writes "No % Key"  -- depends on port 0x51, writes "SPHINX  V- 1" if it's happy with that .. after that you get COIN TAMPER,  a count down with COINS TRIM and a reboot
372372   // Pennies from Heaven - same behavior as Sphinx
373   
373
374374   // typically writes a letter (sometimes twice) then 0x00, usually twice
375375
376376   if (data==0x00)
r19613r19614
423423   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_read_a),                  /* Port A read */
424424   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_write_a_alpha_display),      /* Port A write */ /* alpha display characters*/
425425   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_read_b),                  /* Port B read */
426   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_write_b),                  /* Port B write */    // not written at an appropriate time for it to be a 'send' address for the text
426   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_write_b),                  /* Port B write */   // not written at an appropriate time for it to be a 'send' address for the text
427427   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_read_c),                  /* Port C read */
428   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_write_c)                  /* Port C write */    // not written at an appropriate time for it to be a 'send' address for the text
428   DEVCB_DRIVER_MEMBER(ecoinf3_state,ppi8255_intf_e_write_c)                  /* Port C write */   // not written at an appropriate time for it to be a 'send' address for the text
429429};
430430
431431static I8255_INTERFACE (ppi8255_intf_f)
r19613r19614
478478   AM_RANGE(0x5c, 0x5f) AM_DEVREADWRITE("ppi8255_h", i8255_device, read, write)
479479   // frequently accesses DB after 5B, mirror? bug?
480480   AM_RANGE(0xDB, 0xDB) AM_DEVWRITE("sn1", sn76489_device, write)  // no idea what the sound chip is, this sounds terrible
481   
482   
481
482
483483ADDRESS_MAP_END
484484
485485
r19613r19614
697697static MACHINE_CONFIG_START( ecoinf3_pyramid, ecoinf3_state )
698698   /* basic machine hardware */
699699   MCFG_CPU_ADD("maincpu", Z180,8000000) // certainly not a plain z80 at least, invalid opcodes for that
700   
700
701701   MCFG_CPU_PROGRAM_MAP(pyramid_memmap)
702702   MCFG_CPU_IO_MAP(pyramid_portmap)
703703
r19613r19614
742742ROM_END
743743
744744ROM_START( ec_sphin ) /* the last 0x2000 bytes (unmapped?) are the same as on the ec_pyram set */
745   ROM_REGION( 0x200000, "maincpu", 0 )   
745   ROM_REGION( 0x200000, "maincpu", 0 )
746746   ROM_LOAD( "spnx5p", 0x0000, 0x010000, CRC(b4b49259) SHA1(a26172b659b739564b25dcc0f3f31f131a144d52) )
747747ROM_END
748748
r19613r19614
803803DRIVER_INIT_MEMBER(ecoinf3_state,ecoinf3_swap)
804804{
805805   // not all sets have this, are they just badly dumped?
806   UINT8 table[] =
806   UINT8 table[] =
807807   {
808      0x48, 0x4c, 0x49, 0x4d, 0x40, 0x44, 0x41, 0x45,     0x68, 0x78, 0x60, 0x70, 0x6a, 0x7a, 0x62, 0x72,   
809      0x08, 0x0c, 0x09, 0x0d, 0x00, 0x04, 0x01, 0x05,      0x6c, 0x7c, 0x64, 0x74, 0x6e, 0x7e, 0x66, 0x76,
808      0x48, 0x4c, 0x49, 0x4d, 0x40, 0x44, 0x41, 0x45,     0x68, 0x78, 0x60, 0x70, 0x6a, 0x7a, 0x62, 0x72,
809      0x08, 0x0c, 0x09, 0x0d, 0x00, 0x04, 0x01, 0x05,      0x6c, 0x7c, 0x64, 0x74, 0x6e, 0x7e, 0x66, 0x76,
810810      0x58, 0x5c, 0x59, 0x5d, 0x50, 0x54, 0x51, 0x55,       0x28, 0x38, 0x20, 0x30, 0x2a, 0x3a, 0x22, 0x32,
811811      0x18, 0x1c, 0x19, 0x1d, 0x10, 0x14, 0x11, 0x15,       0x2c, 0x3c, 0x24, 0x34, 0x2e, 0x3e, 0x26, 0x36,
812812      0x56, 0x52, 0x57, 0x53, 0x5e, 0x5a, 0x5f, 0x5b,      0x75, 0x65, 0x7d, 0x6d, 0x77, 0x67, 0x7f ,0x6f,
813      0x16, 0x12, 0x17, 0x13, 0x1e, 0x1a, 0x1f, 0x1b,         0x71, 0x61, 0x79, 0x69, 0x73, 0x63, 0x7b, 0x6b,   
814      0x46, 0x42, 0x47, 0x43, 0x4e, 0x4a, 0x4f, 0x4b,     0x35, 0x25, 0x3d, 0x2d, 0x37, 0x27, 0x3f ,0x2f,
815       0x06, 0x02, 0x07, 0x03, 0x0e, 0x0a, 0x0f, 0x0b,     0x31, 0x21, 0x39, 0x29, 0x33, 0x23, 0x3b, 0x2b,
813      0x16, 0x12, 0x17, 0x13, 0x1e, 0x1a, 0x1f, 0x1b,      0x71, 0x61, 0x79, 0x69, 0x73, 0x63, 0x7b, 0x6b,
814      0x46, 0x42, 0x47, 0x43, 0x4e, 0x4a, 0x4f, 0x4b,     0x35, 0x25, 0x3d, 0x2d, 0x37, 0x27, 0x3f ,0x2f,
815       0x06, 0x02, 0x07, 0x03, 0x0e, 0x0a, 0x0f, 0x0b,     0x31, 0x21, 0x39, 0x29, 0x33, 0x23, 0x3b, 0x2b,
816816   };
817817
818818   UINT8*   buffer = auto_alloc_array(machine(), UINT8, 0x10000);
r19613r19614
832832
833833// another hw type (similar to stuff in ecoinf2.c) (watchdog on port 58?)
834834GAME( 19??, ec_pyram,   0       , ecoinf3_pyramid,   ecoinf3, ecoinf3_state,   ecoinf3_swap,   ROT0,  "Electrocoin", "Pyramid (v1) (Electrocoin)"      , GAME_NO_SOUND|GAME_REQUIRES_ARTWORK|GAME_NOT_WORKING|GAME_MECHANICAL)
835GAME( 19??, ec_pyrama,  ec_pyram , ecoinf3_pyramid,   ecoinf3, ecoinf3_state,   ecoinf3,       ROT0,  "Electrocoin", "Pyramid (v6) (Electrocoin)"      , GAME_NO_SOUND|GAME_REQUIRES_ARTWORK|GAME_NOT_WORKING|GAME_MECHANICAL)
835GAME( 19??, ec_pyrama,  ec_pyram , ecoinf3_pyramid,   ecoinf3, ecoinf3_state,   ecoinf3,       ROT0,  "Electrocoin", "Pyramid (v6) (Electrocoin)"      , GAME_NO_SOUND|GAME_REQUIRES_ARTWORK|GAME_NOT_WORKING|GAME_MECHANICAL)
836836GAME( 19??, ec_sphin,   0       , ecoinf3_pyramid,   ecoinf3, ecoinf3_state,   ecoinf3_swap,   ROT0,  "Electrocoin", "Sphinx (v2) (Electrocoin) (set 1)"      , GAME_NO_SOUND|GAME_REQUIRES_ARTWORK|GAME_NOT_WORKING|GAME_MECHANICAL)
837837GAME( 19??, ec_sphina,  ec_sphin , ecoinf3_pyramid,   ecoinf3, ecoinf3_state,   ecoinf3,      ROT0,  "Electrocoin", "Sphinx (v2) (Electrocoin) (set 2)"      , GAME_NO_SOUND|GAME_REQUIRES_ARTWORK|GAME_NOT_WORKING|GAME_MECHANICAL)
838838GAME( 19??, ec_sphinb,  ec_sphin , ecoinf3_pyramid,   ecoinf3, ecoinf3_state,   ecoinf3,      ROT0,  "Electrocoin", "Sphinx (v1) (Electrocoin)"      , GAME_NO_SOUND|GAME_REQUIRES_ARTWORK|GAME_NOT_WORKING|GAME_MECHANICAL)
trunk/src/mame/drivers/8080bw.c
r19613r19614
22322232        /* bit 0 goes high when first coin inserted
22332233           bit 1 also goes high when subsequent coins are inserted
22342234              These may be for indicator lamps under the start buttons.
2235           bit 2 goes high while player 2 is playing    */
2235           bit 2 goes high while player 2 is playing    */
22362236
22372237   m_c8080bw_flip_screen = BIT(data, 2) & BIT(ioport(CABINET_PORT_TAG)->read(), 0);
22382238}
trunk/src/mame/drivers/jpmsys5.c
r19613r19614
828828
829829MACHINE_START_MEMBER(jpmsys5_state,jpmsys5)
830830{
831//   machine().root_device().membank("bank1")->set_base(machine().root_device().memregion("maincpu")->base()+0x20000);
831//  machine().root_device().membank("bank1")->set_base(machine().root_device().memregion("maincpu")->base()+0x20000);
832832}
833833
834834MACHINE_RESET_MEMBER(jpmsys5_state,jpmsys5)
trunk/src/mame/drivers/bbusters.c
r19613r19614
943943   ROM_LOAD16_BYTE( "s_14_a8002-6.a6",  0x140000, 0x20000, CRC(bbbf0461) SHA1(c5299ab1d45f685a5d160492247cf1303ef6937a) )
944944   ROM_LOAD16_BYTE( "s_6_a8002-6.b6",   0x140001, 0x20000, CRC(4ee89f75) SHA1(bda0e9095da2d424faac341fd934000a621796eb) )
945945   ROM_LOAD16_BYTE( "s_15_a8002-6.a7",  0x180000, 0x20000, CRC(cde29bad) SHA1(24c1b43c6d717eaaf7c01ec7de89837947334224) ) // these 4 == ma389m15.bin
946   ROM_LOAD16_BYTE( "s_7_a8002-6.b7",   0x180001, 0x20000, CRC(065ed221) SHA1(c03ca5b4d1198939a57b5fccf6a79d70afe1faaf) )
946   ROM_LOAD16_BYTE( "s_7_a8002-6.b7",   0x180001, 0x20000, CRC(065ed221) SHA1(c03ca5b4d1198939a57b5fccf6a79d70afe1faaf) )
947947   ROM_LOAD16_BYTE( "s_16_a8002-6.a8",  0x1c0000, 0x20000, CRC(70f28040) SHA1(91012728953563fcc576725337e6ba7e1b49d1ba) )
948948   ROM_LOAD16_BYTE( "s_8_a8002-6.b8",   0x1c0001, 0x20000, CRC(a6f8574f) SHA1(87c041669b2eaec495ae10a6f45b6668accb92bf) )
949949
trunk/src/mame/drivers/bfm_sc1.c
r19613r19614
11711171
11721172}
11731173
1174   
1174
11751175int sc1_find_project_string(running_machine &machine )
11761176{
11771177   // search for the project string to find the title (usually just at ff00)
r19613r19614
12181218               if (addr<size)
12191219               {
12201220                  rom = src[addr];
1221         
1221
12221222                  if ((rom>=0x20) && (rom<0x7f))
12231223                  {
12241224                     printf("%c", rom);
r19613r19614
26682668********************************************************************************************************************************************************************************************************************/
26692669
26702670ROM_START( sc1clatt )  ROM_REGION( 0x10000, "maincpu", 0 )  ROM_LOAD( "39370196.2",           0x0000, 0x8000,          CRC(c809c22d) SHA1(fca7515bc84d432150ffe5e32fccc6aed458b8b0) ) ROM_LOAD( "39370196.1",           0x8000, 0x8000,          CRC(4c2e465f) SHA1(101939d37d9c033f6d1dfb83b4beb54e4061aec2) ) ROM_END
2671ROM_START( sc1clatta ) ROM_REGION( 0x10000, "maincpu", 0 )    ROM_LOAD( "393717553 prom b.bin", 0x0000, 0x8000, BAD_DUMP CRC(06f41627) SHA1(0e54314147a5f0d833d83f6f0ee828bd1c875f3e) ) ROM_LOAD( "393717552 prom a.bin", 0x8000, 0x8000, BAD_DUMP CRC(795e93cf) SHA1(017fa5ea3d9ad1f7a7a619d88a5892a9ffe6f3bc) ) ROM_END
2671ROM_START( sc1clatta ) ROM_REGION( 0x10000, "maincpu", 0 )   ROM_LOAD( "393717553 prom b.bin", 0x0000, 0x8000, BAD_DUMP CRC(06f41627) SHA1(0e54314147a5f0d833d83f6f0ee828bd1c875f3e) ) ROM_LOAD( "393717552 prom a.bin", 0x8000, 0x8000, BAD_DUMP CRC(795e93cf) SHA1(017fa5ea3d9ad1f7a7a619d88a5892a9ffe6f3bc) ) ROM_END
26722672
26732673// PROJECT NUMBER 5527  CLUB ATTRACTION DUAL #1 - 3-APR-1990 17:17:23
26742674GAME( 1990, sc1clatt      , 0         , scorpion1         , clatt      , bfm_sc1_state, clatt         , 0,       "BFM",      "Club Attraction (UK, Game Card 39-370-196)", GAME_FLAGS ) // GAME No 39-370-196
r19613r19614
27292729 ********************************************************************************************************************************************************************************************************************/
27302730
27312731#define sc1barcd_sound \
2732    ROM_REGION( 0x20000, "upd", 0 ) \
2732   ROM_REGION( 0x20000, "upd", 0 ) \
27332733   ROM_LOAD( "barsnd1.bin", 0x00000, 0x10000, CRC(c9de8ff4) SHA1(c3e77e84d4ecc1c779929a96d1c445a1af24865b) ) \
27342734   ROM_LOAD( "barsnd2.bin", 0x10000, 0x10000, CRC(56af984a) SHA1(aebd30f3ca767dc5fc77fb01765833ee627a5aee) ) \
27352735
r19613r19614
27462746  sc1dblcha has a severe fixed bits problem, it's almost not worth keeping
27472747  sc1dblchb also seem like bad dumps (both halves identical) BUT they contain alpha strings for the 'Double Chance' game where the parent set doesn't
27482748            is it a different game or roms for some kind of extra display hardware?
2749
2749
27502750 Sound roms don't seem to get used?
27512751********************************************************************************************************************************************************************************************************************/
27522752
r19613r19614
27892789   ROM_REGION( 0x20000, "upd", 0 )\
27902790   ROM_LOAD( "club-six-five-special_snd_a.bin", 0x0000, 0x010000, CRC(915802cd) SHA1(5bca3a80199a6534e084a5cf4337da4e9c48f45c) )\
27912791   ROM_LOAD( "club-six-five-special_snd_b.bin", 0x0000, 0x010000, CRC(b3b230d8) SHA1(022e95f38b14922137222805c0bec7498c5956cc) )\
2792   
2792
27932793ROM_START( sc1cl65 )   ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "65spp2",      0x0000, 0x8000, CRC(11332a28) SHA1(76f9eee54351e0d8dc4b620ec92661538929e75d) ) ROM_LOAD( "65spp1",                                               0x8000, 0x8000, CRC(2c4cb63b) SHA1(5d09b575cf80beecd83c07286b74af29de7ec553) ) sc1_cl65_sound     ROM_END
27942794ROM_START( sc1cl65d )  ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "39370694.p2", 0x0000, 0x8000, CRC(3371dc55) SHA1(52d75a90933acc7a03821e5c2821df6126c72a6c) ) ROM_LOAD( "club-six-five-special_std_ac_rot_10po_ass.bin",        0x8000, 0x8000, CRC(cf48ba99) SHA1(5da4321ff349964e903f1bebd3e5ddd0799fc478) ) sc1_cl65_sound_alt ROM_END
27952795ROM_START( sc1cl65dp ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "39370694.p2", 0x0000, 0x8000, CRC(3371dc55) SHA1(52d75a90933acc7a03821e5c2821df6126c72a6c) ) ROM_LOAD( "club-six-five-special_dat_ac_rot_10po_ass.bin",        0x8000, 0x8000, CRC(77ddf81d) SHA1(522d9f84ab6e31586f371548e2f146ac193f06f5) ) sc1_cl65_sound_alt ROM_END
r19613r19614
28132813GAME( 198?, sc1cl65bp      , sc1cl65   , scorpion1_viper         , clatt   , bfm_sc1_state, lotse         , 0,       "BFM",      "Club 65 Special (Bellfruit) (set 4, Protocol) (Scorpion 1)", GAME_FLAGS ) // GAME No 39-371-859
28142814// PROJECT NUMBER 6124 20P PAYOUT  SIX FIVE SPECIAL #200/20P PAYOUT - 21-APR-1993 14:46:20
28152815GAME( 198?, sc1cl65a      , sc1cl65   , scorpion1_viper         , clatt   , bfm_sc1_state, lotse         , 0,       "BFM",      "Club 65 Special (Bellfruit) (set 5) (Scorpion 1)", GAME_FLAGS ) // GAME No 39-370-858
2816GAME( 198?, sc1cl65ap      , sc1cl65   , scorpion1_viper         , clatt   , bfm_sc1_state, lotse         , 0,       "BFM",      "Club 65 Special (Bellfruit) (set 5, Protocol) (Scorpion 1)", GAME_FLAGS ) // GAME No 39-371-858
2816GAME( 198?, sc1cl65ap      , sc1cl65   , scorpion1_viper         , clatt   , bfm_sc1_state, lotse         , 0,       "BFM",      "Club 65 Special (Bellfruit) (set 5, Protocol) (Scorpion 1)", GAME_FLAGS ) // GAME No 39-371-858
28172817
28182818/********************************************************************************************************************************************************************************************************************
28192819 China Town
r19613r19614
28472847
28482848/*
28492849ROM_LOAD( "temp11a.bin", 0x8000, 0x8000, CRC(37c8b73e) SHA1(f718572d170be7b582c3818df7163309cea232b5) ) // FIXED BITS (xxxxxx1x)
2850appears to be a bad dump of
2850appears to be a bad dump of
28512851ROM_LOAD( "95717692a.bin", 0x8000, 0x8000, CRC(f9fe7b9a) SHA1(0e3fe5da9fc837726d08f02a2c6ed782f016c982) )
28522852*/
28532853
r19613r19614
31453145GAME( 1988, sc1lotusa      , sc1lotus   , scorpion1         , scorpion1   , bfm_sc1_state, nocrypt      , 0,       "BFM/ELAM", "Lotus SE (Dutch) (set 2)", GAME_FLAGS )
31463146
31473147// PROJECT NUMBER 5142  DUTCH ROULETTE  GAME No 39-360-029 - 18-APR-1989 16:03:00
3148GAME( 1988, sc1roul         , 0         , scorpion1         , scorpion1   , bfm_sc1_state, rou029             , 0,       "BFM/ELAM", "Roulette (Dutch, Game Card 39-360-129?)", GAME_FLAGS )
3148GAME( 1988, sc1roul         , 0         , scorpion1         , scorpion1   , bfm_sc1_state, rou029          , 0,       "BFM/ELAM", "Roulette (Dutch, Game Card 39-360-129?)", GAME_FLAGS )
31493149
31503150// PROJECT NUMBER 6045       ARMADA          GAME No 39-370-729  - 28-AUG-1992 14:37:00
31513151GAME( 198?, sc1armad      , 0         , scorpion1         , scorpion1   , bfm_sc1_state, lotse         , 0,       "BFM/ELAM", "Armada (Dutch) (Bellfruit)  (Scorpion 1)", GAME_FLAGS )
r19613r19614
33873387
33883388GAME( 199?, sc1btbc         , 0         , scorpion1         , scorpion1   , bfm_sc1_state, lotse         , 0,      "<unknown>",      "Beat The Bank Club (unknown) (Scorpion 1?)", GAME_FLAGS) // behaves like sc1clbdya, but then locks up
33893389
3390GAME( 199?, sc1boncl      , 0         , scorpion1         , scorpion1   , bfm_sc1_state, lotse         , 0,      "<unknown>",      "Bonanza Club (unknown) (Scorpion 1)", GAME_FLAGS) // just alarms
No newline at end of file
3390GAME( 199?, sc1boncl      , 0         , scorpion1         , scorpion1   , bfm_sc1_state, lotse         , 0,      "<unknown>",      "Bonanza Club (unknown) (Scorpion 1)", GAME_FLAGS) // just alarms
trunk/src/mame/drivers/bfm_sc5sw.c
r19613r19614
1209712097   ROM_LOAD( "95008403.bin", 0x0000, 0x0facbf, CRC(cf3969bb) SHA1(4cb6fb4e536882a11bb6c1548ffb94daea70ca5f) )
1209812098   // MAZOOMA 'REVO_SOUNDS'
1209912099   ROM_LOAD( "95008871.bin", 0x0000, 0x0fd182, CRC(e4f3b731) SHA1(ef829105e1b45c307546127ba85f5e0e5403ab98) )
12100   
12100
1210112101   // miss PR1032 game (Fire Cracker, but not sc4fcc)
12102   // PR1032 SND
12102   // PR1032 SND
1210312103   ROM_LOAD( "95004262.bin", 0x0000, 0x080000, CRC(3f5fad9e) SHA1(528a2803baa155d66cb896f643f858238aa7f189) )
1210412104   // PR1032 unknown (what are these?)
1210512105   ROM_LOAD( "95712394.bin", 0x000, 0x800, CRC(2658fedf) SHA1(32125bc5a58ddd49f8be36c7cb2ebbbdf2cb292b) )
r19613r19614
1255512555   ROM_LOAD16_BYTE( "95429142.lo", 0x000001, 0x080000, CRC(1542fa69) SHA1(6e7e2bd82222fe7c8a480f696156a4f9894250d3) )
1255612556   ROM_LOAD16_BYTE( "95429143.hi", 0x000000, 0x080000, CRC(f933e597) SHA1(305f7385a38485d9745c1889c8370bde17d07984) )
1255712557   // PR3434 SND
12558    ROM_LOAD( "95009093.bin", 0x000000, 0x100000, CRC(97e2e023) SHA1(5405fd2ad34ca74d608005d31c279074e5eed9cd) )
12558   ROM_LOAD( "95009093.bin", 0x000000, 0x100000, CRC(97e2e023) SHA1(5405fd2ad34ca74d608005d31c279074e5eed9cd) )
1255912559   // Z059 (PR000059)
1256012560   ROM_LOAD16_BYTE( "g95424662.lo", 0x000001, 0x080000, CRC(c0d0ec66) SHA1(8fde84a3b88eb9217a040741aa92c8c896981ae5) )
1256112561   ROM_LOAD16_BYTE( "g95424663.hi", 0x000000, 0x080000, CRC(3e456253) SHA1(ba509f0d25368f1833d0afb2682eb119fb0dd4e9) )
trunk/src/mame/drivers/cps2.c
r19613r19614
764764 *  Sound ?
765765 *
766766 *************************************/
767
767
768768 TIMER_CALLBACK_MEMBER(cps_state::cps2_update_digital_volume)
769769 {
770770   int vol_button_state;
r19613r19614
773773
774774   if (vol_button_state & 0x01) m_cps2digitalvolumelevel -= 1;
775775   if (vol_button_state & 0x02) m_cps2digitalvolumelevel += 1;
776   
776
777777   if (m_cps2digitalvolumelevel > 39) m_cps2digitalvolumelevel = 39;
778778   if (m_cps2digitalvolumelevel < 0) m_cps2digitalvolumelevel = 0;
779   
779
780780   machine().device<qsound_device>("qsound")->set_output_gain(0, m_cps2digitalvolumelevel / 39.0);
781781   machine().device<qsound_device>("qsound")->set_output_gain(1, m_cps2digitalvolumelevel / 39.0);
782782 }
r19613r19614
784784static READ16_HANDLER( cps2_qsound_volume_r )
785785{
786786   cps_state *state = space.machine().driver_data<cps_state>();
787   
787
788788   UINT16 cps2_vol_states[40] =
789789   {
790790      0xf010, 0xf008, 0xf004, 0xf002, 0xf001, 0xe810, 0xe808, 0xe804, 0xe802, 0xe801,
r19613r19614
792792      0xe110, 0xe108, 0xe104, 0xe102, 0xe101, 0xe090, 0xe088, 0xe084, 0xe082, 0xe081,
793793      0xe050, 0xe048, 0xe044, 0xe042, 0xe041, 0xe030, 0xe028, 0xe024, 0xe022, 0xe021
794794   };
795   
795
796796   UINT16 result;
797   
797
798798   result = cps2_vol_states[state->m_cps2digitalvolumelevel];
799   
799
800800   /* Extra adapter memory (0x660000-0x663fff) available when bit 14 = 0 */
801801   /* Network adapter (ssf2tb) present when bit 15 = 0 */
802802   /* Only game known to use both these so far is SSF2TB */
r19613r19614
959959   PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_device, write_bit)
960960   PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_device, set_clock_line)
961961   PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_device, set_cs_line)
962   
962
963963   /* fake inputs for digital volume buttons */
964964   PORT_START( "DIGITALVOL" )
965965   PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_VOLUME_DOWN )
r19613r19614
82018201 static void init_digital_volume(running_machine &machine)
82028202 {
82038203   cps_state *state = machine.driver_data<cps_state>();
8204   
8204
82058205   state->m_cps2digitalvolumelevel = 39; /* maximum */
82068206   state->m_cps2disabledigitalvolume = 0;
8207   
8207
82088208   /* create a timer to update our volume state from the fake switches - read it every 6 frames or so to enable some granularity */
82098209   state->m_digital_volume_timer = machine.scheduler().timer_alloc(timer_expired_delegate(FUNC(cps_state::cps2_update_digital_volume),state));
82108210   state->m_digital_volume_timer->adjust(attotime::from_msec(100), 0, attotime::from_msec(100));
82118211 }
8212
8212
82138213DRIVER_INIT_MEMBER(cps_state,cps2)
82148214{
82158215
r19613r19614
82208220   DRIVER_INIT_CALL(cps2_video);
82218221
82228222   m_cps2networkpresent = 0;
8223   
8223
82248224   init_digital_volume(machine());
8225   
8225
82268226   machine().device("maincpu")->set_clock_scale(0.7375f); /* RAM access waitstates etc. aren't emulated - slow the CPU to compensate */
82278227}
82288228
r19613r19614
82548254DRIVER_INIT_MEMBER(cps_state,singbrd)
82558255{
82568256   DRIVER_INIT_CALL(cps2);
8257   
8257
82588258   /* the single board games don't have a digital volume switch */
82598259   m_cps2disabledigitalvolume = 1;
82608260   m_digital_volume_timer->adjust(attotime::never, 0, attotime::never);
r19613r19614
83058305   machine().device("maincpu")->memory().space(AS_PROGRAM).install_legacy_readwrite_handler(0x618000, 0x619fff, FUNC(gigaman2_dummyqsound_r), FUNC(gigaman2_dummyqsound_w)); // no qsound..
83068306   space.set_decrypted_region(0x000000, (length) - 1, &rom[length/4]);
83078307   m68k_set_encrypted_opcode_range(machine().device("maincpu"), 0, length);
8308   
8308
83098309   /* no digital volume switches on this? */
83108310   m_digital_volume_timer->adjust(attotime::never, 0, attotime::never);
83118311}
trunk/src/mame/drivers/jpmimpctsw.c
r19613r19614
1818//  ROM_LOAD16_BYTE( "fce.p1", 0x00000, 0x020000, CRC(57220618) SHA1(7bd717e438e2bf230179b0f5bb358888a3501c59) )
1919//  ROM_LOAD16_BYTE( "fce.p2", 0x00001, 0x020000, CRC(16d20bc6) SHA1(0e8ac586ccf3d02189e24bdd2ed88052491aceb6) )
2020//  j6cas5
21//   ROM_LOAD16_BYTE( "c-1.bin", 0x000000, 0x020000, CRC(fc45950a) SHA1(8721758e8f2ac41f26700965ed942cd1a311bb22) )
22//   ROM_LOAD16_BYTE( "c-2.bin", 0x000001, 0x020000, CRC(e36aaf42) SHA1(c9da129f85c7b8ce27ea8cb9f090ae647eeac10d) )
21//  ROM_LOAD16_BYTE( "c-1.bin", 0x000000, 0x020000, CRC(fc45950a) SHA1(8721758e8f2ac41f26700965ed942cd1a311bb22) )
22//  ROM_LOAD16_BYTE( "c-2.bin", 0x000001, 0x020000, CRC(e36aaf42) SHA1(c9da129f85c7b8ce27ea8cb9f090ae647eeac10d) )
2323
2424
2525// the 68k dies on many sets, but this seems to be due to our emulation, not a problem with the sets
r19613r19614
366366   j6bigbnk_sound
367367ROM_END
368368
369ROM_START( j6bigbnkp )
369ROM_START( j6bigbnkp )
370370   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
371371   ROM_LOAD16_BYTE( "bbv4p18c", 0x000000, 0x020000, CRC(793d3d36) SHA1(d62e2ee62ed4f3a19c05edae1ea092679a57e8a5) ) // aka bb841ac
372372   ROM_LOAD16_BYTE( "bbv48p2",  0x000001, 0x020000, CRC(96a9f1f5) SHA1(2b8b4f06edbe35f5b73d25bac8a973feeaa77b47) )
r19613r19614
10101010   ROM_LOAD16_BYTE( "cvs-11.bin", 0x000000, 0x020000, CRC(895e45db) SHA1(15e2c51a08827322ed34220178476d87cce0b615) )
10111011   ROM_LOAD16_BYTE( "cvs-12.bin", 0x000001, 0x020000, CRC(97aa7764) SHA1(d9a9db1112ccd2721a52ab45de9c0dc85ba027a1) )
10121012   j6cshvgs_sound
1013ROM_END   
1013ROM_END
10141014
10151015ROM_START( j6cshvgsj )
10161016   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10171017   ROM_LOAD16_BYTE( "cvs-1a1.bin", 0x000000, 0x020000, CRC(db9a85ba) SHA1(9f459629aebcb4842e726c6c55427cd253e5eca8) )
10181018   ROM_LOAD16_BYTE( "cvs-12.bin", 0x000001, 0x020000, CRC(97aa7764) SHA1(d9a9db1112ccd2721a52ab45de9c0dc85ba027a1) )
10191019   j6cshvgs_sound
1020ROM_END   
1020ROM_END
10211021
10221022ROM_START( j6cshvgsk )
10231023   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10241024   ROM_LOAD16_BYTE( "cvs-1n1.bin", 0x000000, 0x020000, CRC(b868fd1f) SHA1(3aefc4f96ea4dc386f98dd2fd70626c1b7e49c54) )
10251025   ROM_LOAD16_BYTE( "cvs-12.bin", 0x000001, 0x020000, CRC(97aa7764) SHA1(d9a9db1112ccd2721a52ab45de9c0dc85ba027a1) )
10261026   j6cshvgs_sound
1027ROM_END   
1027ROM_END
10281028
10291029ROM_START( j6cshvgsl )
10301030   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10311031   ROM_LOAD16_BYTE( "cvs-1np1.bin", 0x000000, 0x020000, CRC(53f6a927) SHA1(6ba558699a3e64c7f785d963174e114dc208c253) )
10321032   ROM_LOAD16_BYTE( "cvs-12.bin", 0x000001, 0x020000, CRC(97aa7764) SHA1(d9a9db1112ccd2721a52ab45de9c0dc85ba027a1) )
10331033   j6cshvgs_sound
1034ROM_END   
1034ROM_END
10351035
10361036ROM_START( j6cshvgsm )
10371037   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10381038   ROM_LOAD16_BYTE( "cvs-1p1.bin", 0x000000, 0x020000, CRC(62c011e3) SHA1(6d075f07583588f57ba9b21404e4dc292ebac1db) )
10391039   ROM_LOAD16_BYTE( "cvs-12.bin", 0x000001, 0x020000, CRC(97aa7764) SHA1(d9a9db1112ccd2721a52ab45de9c0dc85ba027a1) )
10401040   j6cshvgs_sound
1041ROM_END   
1041ROM_END
10421042
10431043ROM_START( j6cshvgsn )
10441044   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10451045   ROM_LOAD16_BYTE( "cvs-41.bin", 0x000000, 0x020000, CRC(48c01ca7) SHA1(17d961b43cf7dc65fc67f3991ecd8839314885bc) )
10461046   ROM_LOAD16_BYTE( "cvs-42.bin", 0x000001, 0x020000, CRC(d30d313c) SHA1(f3b3195e376702d9239d520e1bfe5733c91f9164) )
10471047   j6cshvgs_sound
1048ROM_END   
1048ROM_END
10491049
10501050ROM_START( j6cshvgso )
10511051   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10521052   ROM_LOAD16_BYTE( "cvs-4a1.bin", 0x000000, 0x020000, CRC(1a04dcc6) SHA1(6a1134aaa86ef37b4a092b8e6893f34d88a313a7) )
10531053   ROM_LOAD16_BYTE( "cvs-42.bin", 0x000001, 0x020000, CRC(d30d313c) SHA1(f3b3195e376702d9239d520e1bfe5733c91f9164) )
10541054   j6cshvgs_sound
1055ROM_END   
1055ROM_END
10561056
10571057ROM_START( j6cshvgsp )
10581058   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10591059   ROM_LOAD16_BYTE( "cvs-4l1.bin", 0x000000, 0x020000, CRC(79f6a463) SHA1(5d48edc10dba3e4db3dad260bdc038aeeeababeb) )
10601060   ROM_LOAD16_BYTE( "cvs-42.bin", 0x000001, 0x020000, CRC(d30d313c) SHA1(f3b3195e376702d9239d520e1bfe5733c91f9164) )
10611061   j6cshvgs_sound
1062ROM_END   
1062ROM_END
10631063
10641064ROM_START( j6cshvgsq )
10651065   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10661066   ROM_LOAD16_BYTE( "cvs-4lp1.bin", 0x000000, 0x020000, CRC(9268f05b) SHA1(d2fb3ce71943fd07f16887c414e3313b3fe2094e) )
10671067   ROM_LOAD16_BYTE( "cvs-42.bin", 0x000001, 0x020000, CRC(d30d313c) SHA1(f3b3195e376702d9239d520e1bfe5733c91f9164) )
10681068   j6cshvgs_sound
1069ROM_END   
1069ROM_END
10701070
10711071ROM_START( j6cshvgsr )
10721072   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
10731073   ROM_LOAD16_BYTE( "cvs-4p1.bin", 0x000000, 0x020000, CRC(a35e489f) SHA1(f652e1380a5b8a5c7953d88d1bcc51e94bb05f98) )
10741074   ROM_LOAD16_BYTE( "cvs-42.bin", 0x000001, 0x020000, CRC(d30d313c) SHA1(f3b3195e376702d9239d520e1bfe5733c91f9164) )
10751075   j6cshvgs_sound
1076ROM_END   
1076ROM_END
10771077
10781078#define j6cas5_sound \
10791079   ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
r19613r19614
14241424ROM_START( j6casclaf )
14251425   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14261426   ROM_LOAD16_BYTE( "cccc-c1.bin", 0x000000, 0x020000, CRC(959e802d) SHA1(73d32ad724da30131d3d7125bdb6b74a49e6e29e) )
1427   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1427   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14281428   j6cascla_sound
14291429ROM_END
14301430
14311431ROM_START( j6casclag )
14321432   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14331433   ROM_LOAD16_BYTE( "cccc-cb1.bin", 0x000000, 0x020000, CRC(8148727e) SHA1(022d44edc60a8df6874f34973734515f5a4b180b) )
1434   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1434   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14351435   j6cascla_sound
14361436ROM_END
14371437
14381438ROM_START( j6casclah )
14391439   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14401440   ROM_LOAD16_BYTE( "cccc-ce1.bin", 0x000000, 0x020000, CRC(8d05dc4f) SHA1(9308f51e64415688a87185b9258d70ae82045f2e) )
1441   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1441   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14421442   j6cascla_sound
14431443ROM_END
14441444
14451445ROM_START( j6casclai )
14461446   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14471447   ROM_LOAD16_BYTE( "cccc-cf1.bin", 0x000000, 0x020000, CRC(5144633d) SHA1(c52c512adddc90821aac85743f12acae34c82320) )
1448   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1448   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14491449   j6cascla_sound
14501450ROM_END
14511451
14521452ROM_START( j6casclaj )
14531453   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14541454   ROM_LOAD16_BYTE( "cccc-cn1.bin", 0x000000, 0x020000, CRC(f7f3f1a5) SHA1(ebbff1909e91ce708a97f4ed2b5811c47951d27a) )
1455   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1455   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14561456   j6cascla_sound
14571457ROM_END
14581458
14591459ROM_START( j6casclak )
14601460   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14611461   ROM_LOAD16_BYTE( "cccc-cp1.bin", 0x000000, 0x020000, CRC(7e00d415) SHA1(d2f08457cd638479bb7c3c7a2673894b59e727c3) )
1462   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1462   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14631463   j6cascla_sound
14641464ROM_END
14651465
14661466ROM_START( j6casclal )
14671467   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14681468   ROM_LOAD16_BYTE( "cccccnp1.bin", 0x000000, 0x020000, CRC(1c6da59d) SHA1(ab77a898e000c2fecf8ef266390f1aea399d763d) )
1469   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1469   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14701470   j6cascla_sound
14711471ROM_END
14721472
14731473ROM_START( j6casclam )
14741474   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
14751475   ROM_LOAD16_BYTE( "cccccep1.bin", 0x000000, 0x020000, CRC(669b8877) SHA1(48372a46ff03d361e3f04bd224ce887c84689aaf) )
1476   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
1476   ROM_LOAD16_BYTE( "cccc-c2.bin", 0x000001, 0x020000, CRC(c91c14ce) SHA1(a0aea950f45e0e110b5a8ff5e12590dd5822f31b) )
14771477   j6cascla_sound
14781478ROM_END
14791479
r19613r19614
30353035ROM_START( j6hapyhr )
30363036   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
30373037   ROM_LOAD16_BYTE( "20426.bin", 0x000000, 0x020000, CRC(58f6ceb5) SHA1(5ca6861d1532ede848f672fe08152dcd0f65be95) )
3038   ROM_LOAD16_BYTE( "20427.bin", 0x000001, 0x020000, CRC(3de94b07) SHA1(ce1a712845ccc5fa9ef92b3d07f8872afeec88f8) )
3038   ROM_LOAD16_BYTE( "20427.bin", 0x000001, 0x020000, CRC(3de94b07) SHA1(ce1a712845ccc5fa9ef92b3d07f8872afeec88f8) )
30393039   j6hapyhr_sound
30403040ROM_END
30413041
30423042ROM_START( j6hapyhra )
30433043   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
30443044   ROM_LOAD16_BYTE( "20428.bin", 0x000000, 0x020000, CRC(b3689a8d) SHA1(4f690ec96f1b5e0ed30023016de767c132356430) )
3045   ROM_LOAD16_BYTE( "20427.bin", 0x000001, 0x020000, CRC(3de94b07) SHA1(ce1a712845ccc5fa9ef92b3d07f8872afeec88f8) )
3045   ROM_LOAD16_BYTE( "20427.bin", 0x000001, 0x020000, CRC(3de94b07) SHA1(ce1a712845ccc5fa9ef92b3d07f8872afeec88f8) )
30463046   j6hapyhr_sound
30473047ROM_END
30483048
r19613r19614
33943394   ROM_LOAD16_BYTE( "imp6p1", 0x000000, 0x020000, CRC(2abd3397) SHA1(36d6286d6de6c1b205ca1e593118bf5ef15e108b) )
33953395   ROM_LOAD16_BYTE( "imp6p2", 0x000001, 0x020000, CRC(6d8ae792) SHA1(9e703f3e4c6e74866f8a6c187851c416905dc076) )
33963396   j6impuls_sound
3397ROM_END   
3398   
3397ROM_END
3398
33993399ROM_START( j6impulsb )
34003400   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
34013401   ROM_LOAD16_BYTE( "impu6p1a", 0x000000, 0x020000, CRC(7879f3f6) SHA1(a7e5e55946ed63bf7fd84ac8cce46102a850bae4) )
34023402   ROM_LOAD16_BYTE( "imp6p2", 0x000001, 0x020000, CRC(6d8ae792) SHA1(9e703f3e4c6e74866f8a6c187851c416905dc076) )
34033403   j6impuls_sound
3404ROM_END   
3404ROM_END
34053405
34063406ROM_START( j6impulsc )
34073407   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
34083408   ROM_LOAD16_BYTE( "impu-7s1.bin", 0x000000, 0x020000, CRC(93033ab0) SHA1(6b94c72ba09a2b3bf343f199a61871f18b67ed10) )
34093409   ROM_LOAD16_BYTE( "impu-7s2.bin", 0x000001, 0x020000, CRC(cead0007) SHA1(f5d701bd2f1d85fd907666d0fbe217dbeaae1ba7) )
34103410   j6impuls_sound
3411ROM_END   
3411ROM_END
34123412
34133413ROM_START( j6impulsd )
34143414   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
34153415   ROM_LOAD16_BYTE( "impu-7a1.bin", 0x000000, 0x020000, CRC(c1c7fad1) SHA1(a28db0949be931192ebacf6dc67a1b652fd048c2) )
34163416   ROM_LOAD16_BYTE( "impu-7s2.bin", 0x000001, 0x020000, CRC(cead0007) SHA1(f5d701bd2f1d85fd907666d0fbe217dbeaae1ba7) )
34173417   j6impuls_sound
3418ROM_END   
3418ROM_END
34193419
34203420ROM_START( j6impulse )
34213421   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
34223422   ROM_LOAD16_BYTE( "impu-7p1.bin", 0x000000, 0x020000, CRC(789d6e88) SHA1(0b65f00b6fed5fbdd89d9ba06ebe7d17a97344d6) )
34233423   ROM_LOAD16_BYTE( "impu-7s2.bin", 0x000001, 0x020000, CRC(cead0007) SHA1(f5d701bd2f1d85fd907666d0fbe217dbeaae1ba7) )
34243424   j6impuls_sound
3425ROM_END   
3425ROM_END
34263426
34273427ROM_START( j6impulsf )
34283428   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
34293429   ROM_LOAD16_BYTE( "impu-7wp.bin", 0x000000, 0x020000, CRC(1af01f00) SHA1(0d3fcaa1105a5dd00d4154027dcdac6b35eb2342) )
34303430   ROM_LOAD16_BYTE( "impu-7s2.bin", 0x000001, 0x020000, CRC(cead0007) SHA1(f5d701bd2f1d85fd907666d0fbe217dbeaae1ba7) )
34313431   j6impuls_sound
3432ROM_END   
3432ROM_END
34333433
34343434
34353435#define j6indy_sound \
r19613r19614
35213521   ROM_LOAD16_BYTE( "7494.bin", 0x000001, 0x020000, CRC(4ddf626b) SHA1(4bbfd86530cd1a8b7b4da4e9b36d0e1d61e5d120) )
35223522   j6indy_sound
35233523ROM_END
3524       
3525           
3526     
3527       
35283524
35293525
3526
3527
3528
3529
35303530ROM_START( j6indyge )
35313531   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
35323532   ROM_LOAD16_BYTE( "indy04020.p1", 0x00000, 0x10000, CRC(52ca267c) SHA1(7cd90b536d974afd504620f12868c5efe83ef9dd) )
r19613r19614
45044504   ROM_LOAD16_BYTE( "pg30sl_02_1.b8", 0x000000, 0x020000, CRC(0fc9de3d) SHA1(590f581f144344947b17ff05345f46ce240572bb) )
45054505   ROM_LOAD16_BYTE( "pg30sl_02_2.b8", 0x000001, 0x020000, CRC(85702a38) SHA1(014ed2f9c25f6f9d35288cbe99b2cab1fac3569b) )
45064506   j6phxgld_sound
4507ROM_END   
4507ROM_END
45084508
45094509ROM_START( j6phxgldg )
45104510   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
45114511   ROM_LOAD16_BYTE( "pg75cz1_1.b8", 0x000000, 0x020000, CRC(8f2b8818) SHA1(f4d1247f6b42741513dc698a19ff48032a05b8fb) )
45124512   ROM_LOAD16_BYTE( "pg75cz1_2.b8", 0x000001, 0x020000, CRC(a6cacbd9) SHA1(bc253ce246d4fe6396efc1f163032e288da4bfec) )
45134513   j6phxgld_sound
4514ROM_END   
4514ROM_END
45154515
45164516
45174517ROM_START( j6pnxgd )
r19613r19614
49944994   ROM_LOAD16_BYTE( "rear-7_1.bin", 0x000000, 0x020000, CRC(6d36f687) SHA1(d07a2058fc0f7a7f1cac6398c46f6fc2fb676484) )
49954995   ROM_LOAD16_BYTE( "rear-7_2.bin", 0x000001, 0x020000, CRC(962c6cac) SHA1(dc5fb331df921ef7b94d2c0d3e7d0bb299e728a3) )
49964996   j6redarw_sound
4997ROM_END   
4998   
4997ROM_END
4998
49994999ROM_START( j6redarwg )
50005000   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
50015001   ROM_LOAD16_BYTE( "rear-7a1.bin", 0x000000, 0x020000, CRC(3ff236e6) SHA1(f0c42885b6f908ffdcf41ae3b6789bfa95c8f36f) )
50025002   ROM_LOAD16_BYTE( "rear-7_2.bin", 0x000001, 0x020000, CRC(962c6cac) SHA1(dc5fb331df921ef7b94d2c0d3e7d0bb299e728a3) )
50035003   j6redarw_sound
5004ROM_END   
5004ROM_END
50055005
50065006ROM_START( j6redarwh )
50075007   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
50085008   ROM_LOAD16_BYTE( "rear-7n1.bin", 0x000000, 0x020000, CRC(5c004e43) SHA1(eb4dfdb35efc5226df366cd3f2cdcd486098ba53) )
50095009   ROM_LOAD16_BYTE( "rear-7_2.bin", 0x000001, 0x020000, CRC(962c6cac) SHA1(dc5fb331df921ef7b94d2c0d3e7d0bb299e728a3) )
50105010   j6redarw_sound
5011ROM_END   
5011ROM_END
50125012
50135013ROM_START( j6redarwi )
50145014   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
50155015   ROM_LOAD16_BYTE( "rear-7p1.bin", 0x000000, 0x020000, CRC(86a8a2bf) SHA1(1c7301c3e5a3ff1d791b21e617d50875c06a7463) )
50165016   ROM_LOAD16_BYTE( "rear-7_2.bin", 0x000001, 0x020000, CRC(962c6cac) SHA1(dc5fb331df921ef7b94d2c0d3e7d0bb299e728a3) )
50175017   j6redarw_sound
5018ROM_END   
5018ROM_END
50195019
50205020ROM_START( j6redarwj )
50215021   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
50225022   ROM_LOAD16_BYTE( "rear7np1.bin", 0x000000, 0x020000, CRC(b79e1a7b) SHA1(806ae7180dbee9b605bd8d923179a2323a7d38ee) )
50235023   ROM_LOAD16_BYTE( "rear-7_2.bin", 0x000001, 0x020000, CRC(962c6cac) SHA1(dc5fb331df921ef7b94d2c0d3e7d0bb299e728a3) )
50245024   j6redarw_sound
5025ROM_END   
5025ROM_END
50265026
50275027ROM_START( j6redarww )
50285028   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
r19613r19614
53045304ROM_START( j6robina )
53055305   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
53065306   ROM_LOAD16_BYTE( "9427.bin", 0x000000, 0x020000, CRC(e001c8bb) SHA1(084182d27ddd4146e75ec5cdc9c20e09f4bb390b) )
5307   ROM_LOAD16_BYTE( "9426.bin", 0x000001, 0x020000, CRC(a85c6c19) SHA1(eab10967642f801dcd25dcdd4dfe95ac3b3491bf) )
5307   ROM_LOAD16_BYTE( "9426.bin", 0x000001, 0x020000, CRC(a85c6c19) SHA1(eab10967642f801dcd25dcdd4dfe95ac3b3491bf) )
53085308   j6robin_sound
53095309ROM_END
53105310
53115311ROM_START( j6robinb )
53125312   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
53135313   ROM_LOAD16_BYTE( "9428.bin", 0x000000, 0x020000, CRC(595b5ce2) SHA1(276290e86454b2f1fc73b2cc3e545b6c60363535) )
5314   ROM_LOAD16_BYTE( "9426.bin", 0x000001, 0x020000, CRC(a85c6c19) SHA1(eab10967642f801dcd25dcdd4dfe95ac3b3491bf) )
5314   ROM_LOAD16_BYTE( "9426.bin", 0x000001, 0x020000, CRC(a85c6c19) SHA1(eab10967642f801dcd25dcdd4dfe95ac3b3491bf) )
53155315   j6robin_sound
53165316ROM_END
53175317
r19613r19614
58855885   ROM_LOAD16_BYTE( "prom2_7.bin", 0x000001, 0x020000, CRC(deab0a4e) SHA1(aeba0182906332996efe79dfc56a14fdd087940e) )
58865886   j6strk10_sound
58875887ROM_END
5888     
5888
58895889ROM_START( j6strk10k )
58905890   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
58915891   ROM_LOAD16_BYTE( "prom1p_7.bin", 0x000000, 0x020000, CRC(1ccee61d) SHA1(dcd4942bc66d3109ea540fed50148c0e355b803d) )
58925892   ROM_LOAD16_BYTE( "prom2_7.bin", 0x000001, 0x020000, CRC(deab0a4e) SHA1(aeba0182906332996efe79dfc56a14fdd087940e) )
58935893   j6strk10_sound
58945894ROM_END
5895   
58965895
5896
58975897#define j6supbrk_sound \
58985898   ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
58995899   ROM_LOAD( "subr-snd.bin", 0x000000, 0x080000, CRC(d2439c80) SHA1(8c80927e0d0c139293bd588fad15941bfb54674d) ) \
r19613r19614
68216821   ROM_LOAD16_BYTE( "ace.evn", 0x000000, 0x020000, CRC(0078e610) SHA1(545f3aa30154e7a75d72bc4621010177f7b1b441) )
68226822   ROM_LOAD16_BYTE( "ace.odd", 0x000001, 0x020000, CRC(422268c4) SHA1(defaab4476aad6ad17ff917fa795a6a5a1828090) )
68236823
6824//   ROM_LOAD( "ace.bin", 0x000000, 0x040000, CRC(272070fd) SHA1(cd5f06106f0379b2769515193aee61dea04c1f1e) ) // this is just a combined rom of the above
6824//  ROM_LOAD( "ace.bin", 0x000000, 0x040000, CRC(272070fd) SHA1(cd5f06106f0379b2769515193aee61dea04c1f1e) ) // this is just a combined rom of the above
68256825
68266826   ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 )
68276827   /* missing? */
r19613r19614
71667166#define j6ccc_sound \
71677167   ROM_REGION( 0x80000, "upd", ROMREGION_ERASE00 ) \
71687168   /* missing? */ \
7169
7169
71707170ROM_START( j6ccc )
71717171   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
71727172   ROM_LOAD16_BYTE(  "ccb1.bin", 0x00000, 0x020000, CRC(38a9b16e) SHA1(2ee0e1c67064e537b4459a69dc9ebf8be89f9051) )
r19613r19614
78097809   ROM_LOAD16_BYTE(  "salft1p2.bin", 0x00001, 0x020000, CRC(e7ce4c21) SHA1(b6571c028710f5797607f871c7c2cb87df749131) )
78107810   j6slagn_sound
78117811ROM_END
7812   
7812
78137813ROM_START( j6slagnf )
78147814   ROM_REGION( PRGSIZE_REGULAR, "maincpu", 0 )
78157815   ROM_LOAD16_BYTE(  "snakes&ladders-crystal-p1.bin", 0x0000, 0x020000, CRC(4f27b6c7) SHA1(cd457f4a4e7d518d4d19f6860d6e07207afff4c6) )
r19613r19614
82958295GAME( 199?, j6dmnjkra   , j6dmnjkr   , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Demon Jokers (JPM) (IMPACT) (set 2)", GAME_FLAGS )
82968296GAME( 199?, j6dmnjkrb   , j6dmnjkr   , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Demon Jokers (JPM) (IMPACT) (set 3)", GAME_FLAGS )
82978297GAME( 199?, j6dmnjkrc   , j6dmnjkr   , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Demon Jokers (JPM) (IMPACT) (set 4)", GAME_FLAGS )
8298// GAME( 199?, j6gldday   , 0         , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Golden Day (JPM) (IMPACT)", GAME_FLAGS ) // this is the same as j6dmnjkra
8298// GAME( 199?, j6gldday , 0         , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Golden Day (JPM) (IMPACT)", GAME_FLAGS ) // this is the same as j6dmnjkra
82998299 GAME( 199?, j6reddmn   , 0         , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Red Demon (JPM) (IMPACT)", GAME_FLAGS ) // the same as Demon Jokers but with a different sound rom?
83008300
83018301
r19613r19614
92319231
92329232GAME( 199?, j6gldpl      , 0         , impctawp, tbirds, driver_device, 0, ROT0, "Qps", "Golden Palace (Qps) (IMPACT)", GAME_FLAGS )
92339233
9234GAME( 199?, j6shoot      , 0         , impctawp, tbirds, driver_device, 0, ROT0, "JPM / Whitbread", "ShootOut (JPM / Whitbread) (IMPACT)", GAME_FLAGS )
9234GAME( 199?, j6shoot      , 0         , impctawp, tbirds, driver_device, 0, ROT0, "JPM / Whitbread", "ShootOut (JPM / Whitbread) (IMPACT)", GAME_FLAGS )
92359235
92369236GAME( 199?, j6milln      , 0         , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Millionaire (JPM) (IMPACT) (set 1)", GAME_FLAGS ) // was marked as SWP, should this be a video game? - Apparently it's just a link box using the same hardware, but for 3 PC based units which aren't dumped
92379237GAME( 199?, j6millna   , j6milln   , impctawp, tbirds, driver_device, 0, ROT0, "JPM", "Millionaire (JPM) (IMPACT) (set 2)", GAME_FLAGS )
trunk/src/mame/drivers/firebeat.c
r19613r19614
24502450   ROM_REGION(0x400000, "ymz", ROMREGION_ERASE00)
24512451
24522452   ROM_REGION(0xc0, "user2", ROMREGION_ERASE00)   // Security dongle
2453   ROM_LOAD( "gq986-ja", 0x000000, 0x0000c0, CRC(6f8aa811) SHA1(fc970f6b4ada58eee361b3477abe503019b5dfda) )
2453   ROM_LOAD( "gq986-ja", 0x000000, 0x0000c0, CRC(6f8aa811) SHA1(fc970f6b4ada58eee361b3477abe503019b5dfda) )
24542454
24552455   ROM_REGION(0x80000, "audiocpu", 0)         // SPU 68K program
24562456   ROM_LOAD16_WORD_SWAP("a02jaa04.3q", 0x00000, 0x80000, CRC(8c6000dd) SHA1(94ab2a66879839411eac6c673b25143d15836683))
r19613r19614
24582458   DISK_REGION( "scsi0" )   // program CD-ROM
24592459   DISK_IMAGE_READONLY( "gq986jaa01", 0, SHA1(e5368ac029b0bdf29943ae66677b5521ae1176e1) )
24602460
2461   DISK_REGION( "scsi1" )    // data DVD-ROM
2461   DISK_REGION( "scsi1" )   // data DVD-ROM
24622462   DISK_IMAGE( "gq986jaa02", 1, SHA1(53367d3d5f91422fe386c42716492a0ae4332390) )
24632463ROM_END
24642464
r19613r19614
24692469   ROM_REGION(0x400000, "ymz", ROMREGION_ERASE00)
24702470
24712471   ROM_REGION(0xc0, "user2", ROMREGION_ERASE00)   // Security dongle
2472   ROM_LOAD( "gca04-ja", 0x000000, 0x0000c0, CRC(7724fdbf) SHA1(b1b2d838d1938d9dc15151b7834502c1668bd31b) )
2472   ROM_LOAD( "gca04-ja", 0x000000, 0x0000c0, CRC(7724fdbf) SHA1(b1b2d838d1938d9dc15151b7834502c1668bd31b) )
24732473
24742474   ROM_REGION(0x80000, "audiocpu", 0)         // SPU 68K program
24752475   ROM_LOAD16_WORD_SWAP( "a02jaa04.3q",  0x000000, 0x080000, CRC(8c6000dd) SHA1(94ab2a66879839411eac6c673b25143d15836683) )
r19613r19614
24962496   DISK_REGION( "scsi0" )   // program CD-ROM
24972497   DISK_IMAGE_READONLY( "gqa16jaa01", 0, SHA1(7a7e475d06c74a273f821fdfde0743b33d566e4c) )
24982498
2499   DISK_REGION( "scsi1" )    // data DVD-ROM
2499   DISK_REGION( "scsi1" )   // data DVD-ROM
25002500   DISK_IMAGE( "gqa16jaa02", 1, SHA1(e39067300e9440ff19cb98c1abc234fa3d5b26d1) )
25012501ROM_END
25022502
r19613r19614
25972597   ROM_REGION(0x400000, "ymz", ROMREGION_ERASE00)
25982598
25992599   ROM_REGION(0xc0, "user2", ROMREGION_ERASE00)   // Security dongle
2600   ROM_LOAD( "gcb07-jc", 0x000000, 0x0000c0, CRC(16115b6a) SHA1(dcb2a3346973941a946b2cdfd31a5a761f666ca3) )
2600   ROM_LOAD( "gcb07-jc", 0x000000, 0x0000c0, CRC(16115b6a) SHA1(dcb2a3346973941a946b2cdfd31a5a761f666ca3) )
26012601
26022602   ROM_REGION(0x80000, "audiocpu", 0)         // SPU 68K program
26032603   ROM_LOAD16_WORD_SWAP("a02jaa04.3q", 0x00000, 0x80000, BAD_DUMP CRC(8c6000dd) SHA1(94ab2a66879839411eac6c673b25143d15836683))
r19613r19614
26372637GAMEL(2000, kbm,      0,       firebeat2,     kbm, firebeat_state,    kbm,    ROT270,   "Konami",  "Keyboardmania", GAME_NOT_WORKING, layout_firebeat)
26382638GAMEL(2000, kbm2nd,   0,       firebeat2,     kbm, firebeat_state,    kbm,    ROT270,   "Konami",  "Keyboardmania 2nd Mix", GAME_NOT_WORKING, layout_firebeat)
26392639GAMEL(2001, kbm3rd,   0,       firebeat2,     kbm, firebeat_state,    kbm,    ROT270,   "Konami",  "Keyboardmania 3rd Mix", GAME_NOT_WORKING, layout_firebeat)
2640GAME( 2000, popn4,      0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 4", GAME_NOT_WORKING)
2640GAME( 2000, popn4,     0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 4", GAME_NOT_WORKING)
26412641GAME( 2000, popn5,    0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 5", GAME_NOT_WORKING)
2642GAME( 2001, popn6,      0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 6", GAME_NOT_WORKING)
2642GAME( 2001, popn6,     0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 6", GAME_NOT_WORKING)
26432643GAME( 2001, popn7,    0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 7", GAME_NOT_WORKING)
26442644GAME( 2001, popnanm2, 0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music Animelo 2", GAME_NOT_WORKING)
26452645GAME( 2002, popn8,    0,       firebeat_spu,  popn, firebeat_state,   ppp,      ROT0,   "Konami",  "Pop'n Music 8", GAME_NOT_WORKING)
trunk/src/mame/drivers/rabbit.c
r19613r19614
22
33                     -= 68020 + Imagetek I5000 Games =-
44
5            driver by   David Haywood
6         partly based on metro.c driver by Luca Elia
5            driver by   David Haywood
6            partly based on metro.c driver by Luca Elia
77
88
99Main  CPU    :  MC68020
trunk/src/mame/drivers/bfmsys85.c
r19613r19614
722722               if (addr<size)
723723               {
724724                  rom = src[addr];
725         
725
726726                  if ((rom>=0x20) && (rom<0x7f))
727727                  {
728728                     printf("%c", rom);
trunk/src/mame/drivers/headonb.c
r19613r19614
66
77  It's on much cheaper hardware than the original: 8080 instead of Z80,
88  and less RAM needed with the gfx tiles being on ROM.
9 
9
1010TODO:
1111  - Sound is unknown, probably simple and discrete
1212  - wrong coin handling, it writes to port $01 to reset coin status?
trunk/src/mame/drivers/fcrash.c
r19613r19614
4343 - scroll 3Y is wrote at 0x980008
4444 - scroll 3X is wrote at 0x98000a
4545 - the layer enable and layer mask writes continue at 0x98000c and 0x980020-2
46
46
4747These read/writes are identical to those used by a Knights of the Round bootleg which uses the all sf2mdt sound
4848hardware. This set is currently non-working in cps1.c but I will move it here soon.
4949
r19613r19614
7979WRITE16_MEMBER(cps_state::cawingbl_soundlatch_w)
8080{
8181   cps_state *state = space.machine().driver_data<cps_state>();
82   
82
8383   if (ACCESSING_BITS_8_15)
8484   {
8585      state->soundlatch_byte_w(space, 0, data  >> 8);
r19613r19614
147147WRITE16_MEMBER(cps_state::kodb_layer_w)
148148{
149149   cps_state *state = space.machine().driver_data<cps_state>();
150   
150
151151   /* layer enable and mask 1&2 registers are written here - passing them to m_cps_b_regs for now for drawing routines */
152152   if (offset == 0x06)
153153      state->m_cps_b_regs[m_layer_enable_reg / 2] = data;
r19613r19614
162162WRITE16_MEMBER(cps_state::sf2mdt_layer_w)
163163{
164164   cps_state *state = space.machine().driver_data<cps_state>();
165   
165
166166   /* layer enable and scroll registers are written here - passing them to m_cps_b_regs and m_cps_a_regs for now for drawing routines
167   the scroll layers aren't buttery smooth, due to the lack of using the row scroll address tables in the rendering code, this is also
168   supported by the fact that the game doesn't write the table address anywhere */
169   
167    the scroll layers aren't buttery smooth, due to the lack of using the row scroll address tables in the rendering code, this is also
168    supported by the fact that the game doesn't write the table address anywhere */
169
170170   if (offset == 0x0086)
171171      state->m_cps_a_regs[0x14 / 2] = data + 0xffce; /* scroll 3x */
172172   else
r19613r19614
179179   if (offset == 0x0089)
180180      state->m_cps_a_regs[0x0c / 2] = data + 0xffca; /* scroll 1x */
181181   else
182   if (offset == 0x008a) {
182   if (offset == 0x008a) {
183183      state->m_cps_a_regs[0x12 / 2] = data; /* scroll 2y */
184184      state->m_cps_a_regs[CPS1_ROWSCROLL_OFFS] = data; /* row scroll start */
185   } else   
185   } else
186186   if (offset == 0x008b)
187187      state->m_cps_a_regs[0x0e / 2] = data; /* scroll 1y */
188188   else
r19613r19614
193193WRITE16_MEMBER(cps_state::sf2mdta_layer_w)
194194{
195195   cps_state *state = space.machine().driver_data<cps_state>();
196   
196
197197   /* layer enable and scroll registers are written here - passing them to m_cps_b_regs and m_cps_a_regs for now for drawing routines
198   the scroll layers aren't buttery smooth, due to the lack of using the row scroll address tables in the rendering code, this is also
199   supported by the fact that the game doesn't write the table address anywhere */
200   
198    the scroll layers aren't buttery smooth, due to the lack of using the row scroll address tables in the rendering code, this is also
199    supported by the fact that the game doesn't write the table address anywhere */
200
201201   if (offset == 0x0086)
202202      state->m_cps_a_regs[0x0c / 2] = data + 0xffbe; /* scroll 1x */
203203   else
r19613r19614
256256   //  on kodb, it might still be, unless that's just a leftover and it writes somewhere else too
257257//  if (state->m_cps_a_regs[0] & 0x00ff) base = 0x10c8/2;
258258//  printf("cps1_cps_a_regs %04x\n", state->m_cps_a_regs[0]);
259   
259
260260   /* if we have separate sprite ram, use it */
261261   if (state->m_bootleg_sprite_ram) sprite_ram = state->m_bootleg_sprite_ram;
262   
262
263263   /* get end of sprite list marker */
264264   for (pos = 0x1ffc; pos >= 0x0000; pos -= 4)
265265   {
266266      if (sprite_ram[base + pos - 1] == state->m_sprite_list_end_marker) last_sprite_offset = pos;
267267   }
268   
268
269269   for (pos = last_sprite_offset; pos >= 0x0000; pos -= 4)
270270   {
271271      int tileno;
r19613r19614
283283      colour = sprite_ram[base + pos + 1] & 0x1f;
284284      ypos   = 256 - ypos;
285285      xpos  += state->m_sprite_x_offset;
286     
286
287287      pdrawgfx_transpen(bitmap, cliprect, machine.gfx[2], tileno, colour, flipx, flipy, xpos + 49, ypos - 16, machine.priority_bitmap, 0x02, 15);
288288
289289   }
r19613r19614
329329{
330330   cps_state *state = machine.driver_data<cps_state>();
331331   int offset;
332   
332
333333   // all the bootlegs seem to write the palette offset as usual
334334   int palettebase = (state->m_cps_a_regs[0x0a / 2] << 8) & 0x1ffff;
335   
335
336336   for (offset = 0; offset < 32 * 6 * 16; offset++)
337337   {
338338      int palette = state->m_gfxram[palettebase / 2 + offset];
r19613r19614
645645   PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
646646   PORT_SERVICE_NO_TOGGLE( 0x40, IP_ACTIVE_LOW )
647647   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
648   
648
649649   PORT_START("IN1")
650650   PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
651651   PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
r19613r19614
834834   PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P2 Jab Punch") PORT_PLAYER(2)
835835   PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("P2 Strong Punch") PORT_PLAYER(2)
836836   PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("P2 Fierce Punch") PORT_PLAYER(2)
837   PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )   
837   PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
838838
839839   PORT_START("IN2")      /* Extra buttons */
840840   PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("P1 Short Kick") PORT_PLAYER(1)
r19613r19614
908908   m_audiocpu = machine().device<cpu_device>("soundcpu");
909909   m_msm_1 = machine().device<msm5205_device>("msm1");
910910   m_msm_2 = machine().device<msm5205_device>("msm2");
911   
911
912912   m_layer_enable_reg = 0x20;
913913   m_layer_mask_reg[0] = 0x26;
914914   m_layer_mask_reg[1] = 0x30;
r19613r19614
931931{
932932   m_maincpu = machine().device<cpu_device>("maincpu");
933933   m_audiocpu = machine().device<cpu_device>("soundcpu");
934   
934
935935   m_layer_enable_reg = 0x20;
936936   m_layer_mask_reg[0] = 0x2e;
937937   m_layer_mask_reg[1] = 0x2c;
r19613r19614
948948MACHINE_START_MEMBER(cps_state, cawingbl)
949949{
950950   MACHINE_START_CALL_MEMBER(fcrash);
951   
951
952952   m_layer_enable_reg = 0x0c;
953953   m_layer_mask_reg[0] = 0x0a;
954954   m_layer_mask_reg[1] = 0x08;
r19613r19614
970970   m_audiocpu = machine().device<cpu_device>("soundcpu");
971971   m_msm_1 = machine().device<msm5205_device>("msm1");
972972   m_msm_2 = machine().device<msm5205_device>("msm2");
973   
973
974974   m_layer_enable_reg = 0x26;
975975   m_layer_mask_reg[0] = 0x28;
976976   m_layer_mask_reg[1] = 0x2a;
r19613r19614
10521052   /* basic machine hardware */
10531053   MCFG_CPU_MODIFY("maincpu")
10541054   MCFG_CPU_VBLANK_INT_DRIVER("screen", cps_state,  irq6_line_hold) /* needed to write to scroll values */
1055   
1055
10561056   MCFG_MACHINE_START_OVERRIDE(cps_state, cawingbl)
10571057MACHINE_CONFIG_END
10581058
r19613r19614
12471247   ROMX_LOAD( "caw6.bin", 0x000001, 0x80000, CRC(61192f7c) SHA1(86643c62653a62a5c7541d50cfdecae9b607440d) , ROM_SKIP(3) )
12481248   ROMX_LOAD( "caw5.bin", 0x000002, 0x80000, CRC(30dd78db) SHA1(e0295001d6f5fb4a9276c432f971e88f73c5e39a) , ROM_SKIP(3) )
12491249   ROMX_LOAD( "caw4.bin", 0x000003, 0x80000, CRC(4937fc41) SHA1(dac179715be483a521df8e515afc1fb7a2cd8f13) , ROM_SKIP(3) )
1250   
1250
12511251   ROM_REGION( 0x30000, "soundcpu", 0 ) /* 64k for the audio CPU (+banks) */
12521252   ROM_LOAD( "caw3.bin",  0x00000, 0x20000, CRC(ffe16cdc) SHA1(8069ea69f0b89d61c35995c8040a4989d7be9c1f) )
12531253   ROM_RELOAD(            0x10000, 0x20000 )
r19613r19614
12631263   ROM_LOAD16_BYTE( "2.2",    0x80001, 0x20000, CRC(736c1835) SHA1(a91f479fab30603a111304adc0478d430faa80fc) )
12641264   ROM_LOAD16_BYTE( "5.5",    0xc0000, 0x20000, CRC(76458083) SHA1(cbb4ef5f7615c834b2ee1ad3c86e7262f2f62c01) )
12651265   ROM_LOAD16_BYTE( "1.1",    0xc0001, 0x20000, CRC(d3523f34) SHA1(005ea378c2b78782f85ecc591946c027ca2ca023) )
1266   
1266
12671267   ROM_REGION( 0x200000, "gfx", 0 )
12681268   ROMX_LOAD( "17.17",     0x000000, 0x20000, CRC(0b538062) SHA1(ac6e5dc82efdca311adfe6e6cdda160ad4a0d04d) , ROM_SKIP(3) )
12691269   ROMX_LOAD( "19.19",     0x000001, 0x20000, CRC(3ad62311) SHA1(1c132696b55191d16af30ebd36d2320d979eab36) , ROM_SKIP(3) )
r19613r19614
12811281   ROMX_LOAD( "12.12",     0x180001, 0x20000, CRC(490440b2) SHA1(2597bf16340308f84b32cfa048c426db571b4a35) , ROM_SKIP(3) )
12821282   ROMX_LOAD( "14.14",     0x180002, 0x20000, CRC(344a8270) SHA1(fdb588a7ba60783225e3b5c72446f79625de4f9c) , ROM_SKIP(3) )
12831283   ROMX_LOAD( "16.16",     0x180003, 0x20000, CRC(b991ad91) SHA1(5c59131ddf068cb54d23f8836293360fbc967d58) , ROM_SKIP(3) )
1284   
1284
12851285   ROM_REGION( 0x30000, "soundcpu", 0 ) /* 64k for the audio CPU (+banks) */
12861286   ROM_LOAD( "5.a",       0x00000, 0x20000, CRC(ffe16cdc) SHA1(8069ea69f0b89d61c35995c8040a4989d7be9c1f) )
12871287   ROM_RELOAD(            0x10000, 0x20000 )
r19613r19614
14161416   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x800018, 0x80001f, read16_delegate(FUNC(cps_state::cps1_dsw_r),this));
14171417   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x800180, 0x800187, write16_delegate(FUNC(cps_state::cps1_soundlatch_w),this));
14181418   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x980000, 0x98002f, write16_delegate(FUNC(cps_state::kodb_layer_w),this));
1419   
1419
14201420   /* the original game alternates between 2 sprite ram areas to achieve flashing sprites - the bootleg doesn't do the write to the register to achieve this
1421   mapping both sprite ram areas to the same bootleg sprite ram - similar to how sf2mdt works */
1421    mapping both sprite ram areas to the same bootleg sprite ram - similar to how sf2mdt works */
14221422   m_bootleg_sprite_ram = (UINT16*)machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x900000, 0x902fff);
14231423   machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x904000, 0x906fff, m_bootleg_sprite_ram); /* both of these need to be mapped */
14241424
r19613r19614
14501450      rom[i + 3] = rom[i + 6];
14511451      rom[i + 6] = tmp;
14521452   }
1453   
1453
14541454   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x70c018, 0x70c01f, read16_delegate(FUNC(cps_state::cps1_dsw_r),this));
14551455   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x708000, 0x708fff, write16_delegate(FUNC(cps_state::sf2mdt_layer_w),this));
14561456   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_port(0x70c000, 0x70c001, "IN1");
14571457   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_port(0x70c008, 0x70c009, "IN2");
1458   
1458
14591459   /* bootleg sprite ram */
14601460   m_bootleg_sprite_ram = (UINT16*)machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x700000, 0x703fff);
14611461   machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x704000, 0x707fff, m_bootleg_sprite_ram); /* both of these need to be mapped - see the "Magic Delta Turbo" text on the title screen  */
14621462   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x70c106, 0x70c107, write16_delegate(FUNC(cps_state::cawingbl_soundlatch_w),this));
1463   
1463
14641464   machine().device("maincpu")->memory().space(AS_PROGRAM).unmap_write(0x800030, 0x800031); /* coin lockout doesn't work (unmap it) */
14651465
14661466   DRIVER_INIT_CALL(cps1);
r19613r19614
14721472   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x708000, 0x708fff, write16_delegate(FUNC(cps_state::sf2mdta_layer_w),this));
14731473   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_port(0x70c000, 0x70c001, "IN1");
14741474   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_port(0x70c008, 0x70c009, "IN2");
1475   
1475
14761476   /* bootleg sprite ram */
14771477   m_bootleg_sprite_ram = (UINT16*)machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x700000, 0x703fff);
14781478   machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x704000, 0x707fff, m_bootleg_sprite_ram); /* both of these need to be mapped - see the "Magic Delta Turbo" text on the title screen */
14791479   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x70c106, 0x70c107, write16_delegate(FUNC(cps_state::cawingbl_soundlatch_w),this));
1480   
1480
14811481   m_bootleg_work_ram = (UINT16*)machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0xfc0000, 0xfcffff); /* this has moved */
1482   
1482
14831483   machine().device("maincpu")->memory().space(AS_PROGRAM).unmap_write(0x800030, 0x800031); /* coin lockout doesn't work (unmap it) */
14841484
14851485   DRIVER_INIT_CALL(cps1);
trunk/src/mame/drivers/galdrvr.c
r19613r19614
53645364   ROM_REGION( 0x1000, "gfx1", 0 )
53655365   ROM_LOAD( "frogger.607",  0x0000, 0x0800, CRC(05f7d883) SHA1(78831fd287da18928651a8adb7e578d291493eff) )
53665366   ROM_LOAD( "frogger.606",  0x0800, 0x0800, CRC(f524ee30) SHA1(dd768967add61467baa08d5929001f157d6cd911) )
5367   
5367
53685368   ROM_REGION( 0x0020, "proms", 0 )
53695369   ROM_LOAD( "pr-91.6l",     0x0000, 0x0020, CRC(413703bf) SHA1(66648b2b28d3dcbda5bdb2605d1977428939dd3c) )
53705370ROM_END
trunk/src/mame/drivers/dlair2.c
r19613r19614
88
99* Service Mode:
1010  Press and hold the "Sword" button and "Service switch"
11  (located inside coin door) - Release both buttons
11  (located inside coin door) - Release both buttons
1212
1313* Rom version determines LD Image to use:
1414  ROM revision 2.xx works only with a Dragon's Lair II disc, serial number
r19613r19614
124124/*
125125static const gfx_layout charlayout =
126126{
127   8,8,
128   RGN_FRAC(1,1),
129   1,
130   { RGN_FRAC(0,1) },
131   { 0, 1, 2, 3, 4, 5, 6, 7 },
132   { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
133   8*8
127    8,8,
128    RGN_FRAC(1,1),
129    1,
130    { RGN_FRAC(0,1) },
131    { 0, 1, 2, 3, 4, 5, 6, 7 },
132    { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
133    8*8
134134};
135135
136136static GFXDECODE_START( dlair2 )
137   GFXDECODE_ENTRY( "gfx1", 0, charlayout,     0, 1 )
137    GFXDECODE_ENTRY( "gfx1", 0, charlayout,     0, 1 )
138138GFXDECODE_END
139139*/
140140
r19613r19614
164164   MCFG_SCREEN_SIZE(32*8, 32*8)
165165   MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1)
166166
167//   MCFG_GFXDECODE(dlair2)
167//  MCFG_GFXDECODE(dlair2)
168168
169169   MCFG_PALETTE_LENGTH(256)
170170
trunk/src/mame/drivers/dynax.c
r19613r19614
30533053   PORT_DIPSETTING(    0x00, DEF_STR( On ) )
30543054   PORT_DIPNAME( 0x18, 0x18, DEF_STR( Coinage ) )
30553055   PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
3056//   PORT_DIPSETTING(    0x08, DEF_STR( 1C_1C ) )
3056//  PORT_DIPSETTING(    0x08, DEF_STR( 1C_1C ) )
30573057   PORT_DIPSETTING(    0x18, DEF_STR( 1C_1C ) )
30583058   PORT_DIPSETTING(    0x10, DEF_STR( 1C_2C ) )
30593059   PORT_DIPNAME( 0x20, 0x20, DEF_STR( Demo_Sounds ) )
trunk/src/mame/drivers/kurukuru.c
r19613r19614
2222  (c)SUCCESS / CABINET :TAIYO JIDOKI
2323
2424  CPU   : 2x Sharp LH0080A Z80A
25 
25
2626  MEM   : 1x Sharp LH5116H-10 (2KB SRAM)
2727          1x Fairchild 8464A-10L (8KB SRAM) + battery
2828          6x Sharp LH2464-15 (192KB Video DRAM total)
r19613r19614
7171  |  | LH2464-15 |  | SN74LS08N  |  | SN74LS125AN |    |                 |      |                 |  |
7272  |  '-----------'  '------------'  '-------------'    '-----------------'      '-----------------'  |
7373  |    IC19           IC20            IC21           IC22                         IC23               |
74  |  .-----------.  .------------.  .------------. .--------------------------. .-----------------.  |   
74  |  .-----------.  .------------.  .------------. .--------------------------. .-----------------.  |
7575  |  | LH2464-15 |  | SN74LS174N |  | SN74LS174N | | LH0080A Z80A-CPU-D       | |                 |  |
7676  |  '-----------'  '------------'  '------------' | SHARP JAPAN              | |    E M P T Y    |  |
7777  |                                   X2           |                          | |   S O C K E T   |  |
r19613r19614
126126  The game is playable, even when you can't hear all sounds.
127127
128128  Coin 1 (key 5) is not working properly and could hang the system.
129  Once pressed, the game spits a message that means "Jammed Medal".
129  Once pressed, the game spits a message that means "Jammed Medal".
130130  For now, use Coin 2 (key 6) and Service (key 8) for credits...
131131
132132  If you pressed Coin 1 and the game is not responding anymore, press RESET
r19613r19614
160160  There are 14 samples in the system.
161161
162162  00: "boterin" (?)
163  01:
163  01:
164164  02: "hakase" ("professor")
165165  03: "pyokorin"
166166  04: "kunio"
r19613r19614
205205
206206   required_device<cpu_device> m_audiocpu;
207207   required_device<v9938_device> m_v9938;
208   
208
209209   UINT8 m_sound_irq_cause;
210210   UINT8 m_sound_irq_mask;
211   
211
212212   DECLARE_WRITE8_MEMBER(kurukuru_bankswitch_w);
213213   DECLARE_WRITE8_MEMBER(kurukuru_soundlatch_w);
214214   DECLARE_READ8_MEMBER(kurukuru_soundlatch_r);
r19613r19614
306306
307307static ADDRESS_MAP_START( kurukuru_io, AS_IO, 8, kurukuru_state )
308308   ADDRESS_MAP_GLOBAL_MASK(0xff)
309//   AM_RANGE(0x00, 0x00) AM_WRITENOP // seems for switch cpu... or irq? or hopper?
309//  AM_RANGE(0x00, 0x00) AM_WRITENOP // seems for switch cpu... or irq? or hopper?
310310   AM_RANGE(0x10, 0x10) AM_READ_PORT("DSW1")
311311   AM_RANGE(0x20, 0x20) AM_WRITE(kurukuru_soundlatch_w)
312312   AM_RANGE(0x80, 0x83) AM_DEVREADWRITE( "v9938", v9938_device, read, write )
r19613r19614
321321/*
322322  0x00 Writes... 2nd cpu related.
323323                 01 when coin 1 (jams)
324             20 when coin 2
325             40 when payout (jams) ...check
324                 20 when coin 2
325                 40 when payout (jams) ...check
326326
327327  0x20 Writes... # sample to trigger
328328                 00, 08, 03, 04, 05 for bets 1-2-3-4-5 respectively.
r19613r19614
361361
362362static ADDRESS_MAP_START( audio_io, AS_IO, 8, kurukuru_state )
363363   ADDRESS_MAP_GLOBAL_MASK(0xff)
364//   AM_RANGE(0x40, 0x40) AM_WRITENOP
364//  AM_RANGE(0x40, 0x40) AM_WRITENOP
365365   AM_RANGE(0x50, 0x50) AM_WRITE(kurukuru_sound_irqmask_w)
366366   AM_RANGE(0x60, 0x60) AM_READ(kurukuru_soundlatch_r)
367367   AM_RANGE(0x70, 0x70) AM_READ(kurukuru_sound_timer_irqack_r)
trunk/src/mame/drivers/taitotz.c
r19613r19614
147147              QML04300LA-A
148148              RIZING PING PONG EXP
149149              M9005557A VER. 2.01O  (note '01O' is slightly scratched and could be incorrect)
150               
151     
150
151
152152*/
153153
154154#define ADDRESS_MAP_MODERN
trunk/src/mame/drivers/bfm_ad5sw.c
r19613r19614
11/*
22
33    Adder 5
4    (Scorpion 5 Video Board)
4    (Scorpion 5 Video Board)
55
66    Skeleton Set List - For note keeping.
77
r19613r19614
7575#define ad5cmons_others \
7676   ROM_REGION( 0x400000, "ymz", ROMREGION_ERASE00 ) \
7777   ROM_LOAD( "95008434.bin", 0x0000, 0x100000, CRC(2d35e8ab) SHA1(a2e39beb891416bc5fae3d17125d146fe3ec3a12) ) /* PR1601 CRAZY MONEY SOUNDS11 */ \
78   
78
7979ROM_START( ad5cmons )
8080   ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASEFF )
8181   ROM_LOAD( "39211009.bin", 0x0000, 0x8ba10c, CRC(3883c4ea) SHA1(ac5876d252ef9900bbd86a43c73b2e3ba08f4e04) )
r19613r19614
10941094
10951095
10961096
1097
1097
10981098ROM_START( ad5btc )
10991099   ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASEFF )
11001100   ROM_LOAD( "p1758p53.bin", 0x0000, 0x1000000, CRC(0323a676) SHA1(26f5d1c6bc4cd2d8405a95714f0dee6c26c21539) )
r19613r19614
16651665   ROM_REGION( 0x400000, "ymz", ROMREGION_ERASE00 ) \
16661666   ROM_LOAD( "95008933.bin", 0x0000, 0x03fc55, CRC(5f01c246) SHA1(b5e2b79f780d48935b8eb158b3292ab26340ba7f) ) /* EDWNS16 SOUNDS */ \
16671667   ROM_LOAD( "95008959.bin", 0x0000, 0x07daf0, CRC(61e7fb11) SHA1(039efe731866314770800224e2b8536822252193) ) /* EDMULTI SOUNDS */ \
1668   
1668
16691669ROM_START( ad5eyes )
16701670   ROM_REGION( 0x1000000, "maincpu", ROMREGION_ERASEFF )
16711671   ROM_LOAD( "39211248.bin", 0x0000, 0x4d88b4, CRC(a2b799c9) SHA1(9088de779c31d33d9f1eb83e46ec28c30181a0fc) )
trunk/src/mame/drivers/cclimber.c
r19613r19614
16951695   ROM_REGION( 0x10000, "maincpu", 0 )
16961696   ROM_LOAD( "d11.r2",       0x0800, 0x0800, CRC(f7cace41) SHA1(981dbb1cddd66a0cbc8fe147172ffe7eb5b7fa21) )
16971697   ROM_CONTINUE( 0x0000, 0x800 )
1698   ROM_LOAD( "d7.1n",      0x1000, 0x1000, CRC(fe89dea4) SHA1(c39372ebe9950808ebc1ff7909c291496b206026) )
1698   ROM_LOAD( "d7.1n",      0x1000, 0x1000, CRC(fe89dea4) SHA1(c39372ebe9950808ebc1ff7909c291496b206026) )
16991699   ROM_LOAD( "d9.2m",      0x2000, 0x1000, CRC(b9c34e14) SHA1(dcfe45dede6aef52a2989978762df9c5463bbbf2) )
17001700   ROM_LOAD( "d10.2n",     0x3000, 0x1000, CRC(243e458d) SHA1(de98fc90915913069b6802d5c662db18f56c36be) )
17011701   ROM_LOAD( "d8.1r",        0x4800, 0x0800, CRC(7c66fb5c) SHA1(5eda9b0037f958433d96bc945c1273b66ef9cac5) )
trunk/src/mame/drivers/ddenlovr.c
r19613r19614
19651965}
19661966WRITE16_MEMBER(dynax_state::ultrchmp_protection2_w)
19671967{
1968//   COMBINE_DATA(m_protection2);
1968//  COMBINE_DATA(m_protection2);
19691969   m_oki->set_bank_base((data & 0xf) * 0x40000);
19701970}
19711971
trunk/src/mame/drivers/s11.c
r19613r19614
514514static const pia6821_interface pia40_intf =
515515{
516516   DEVCB_NULL,      /* port A in */
517   DEVCB_NULL,//_DRIVER_MEMBER(s11_state, dac_r),      /* port B in */
517   DEVCB_NULL,//_DRIVER_MEMBER(s11_state, dac_r),      /* port B in */
518518   DEVCB_DRIVER_LINE_MEMBER(s11_state, pias_ca1_r),      /* line CA1 in */
519519   DEVCB_NULL,      /* line CB1 in */
520520   DEVCB_LINE_VCC,      /* line CA2 in */
trunk/src/mame/drivers/taxidriv.c
r19613r19614
452452
453453   ROM_REGION( 0x10000, "sub", 0 )
454454   ROM_LOAD( "8.ic4",        0x0000, 0x2000, CRC(9f9a3865) SHA1(908cf4f2cc68c088649241997276ea25c27d9718) )
455//   ROM_LOAD( "8.ic4",        0x0000, 0x2000, CRC(9835d517) SHA1(845f3efc54b64837c22dd06683c2950f2b8b03cb) ) // 0x1b5f = 0x04 instead of 0x03 from another set
455//  ROM_LOAD( "8.ic4",        0x0000, 0x2000, CRC(9835d517) SHA1(845f3efc54b64837c22dd06683c2950f2b8b03cb) ) // 0x1b5f = 0x04 instead of 0x03 from another set
456456   ROM_LOAD( "9.ic5",        0x2000, 0x2000, CRC(b28b766c) SHA1(21e08ef1e2671c8540380e3fa0858e8a4d821945) )
457457
458458   ROM_REGION( 0x10000, "audiocpu", 0 )
trunk/src/mame/drivers/cps1.c
r19613r19614
192192    For example, magic power will be increased at the end of level 1 but you won't notice
193193    it before level 3, and sword power will be increased at the end of level 2 but you
194194    won't notice it before level 4.
195   
195
1961966) 'ganbare'
197197
198198  - Using the payout setting dip switch results in some occasional hopper errors, if this
r19613r19614
29192919   PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
29202920   PORT_SERVICE_NO_TOGGLE( 0x40, IP_ACTIVE_LOW )
29212921   PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
2922   
2922
29232923   PORT_START("IN1")
29242924   PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
29252925   PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
r19613r19614
29622962   PORT_DIPNAME( 0x80, 0x80, "Payout Setup" )               PORT_DIPLOCATION("SW(A):8")
29632963   PORT_DIPSETTING(    0x80, "Credit Mode" )
29642964   PORT_DIPSETTING(    0x00, "Payout Mode" )
2965   
2965
29662966   PORT_START("DSWB")
29672967   PORT_DIPNAME( 0x07, 0x07, "Payout Rate Setup" )            PORT_DIPLOCATION("SW(B):1,2,3")
29682968   PORT_DIPSETTING(    0x01, "90%" )
r19613r19614
66446644   /* do not move this outside comments, this is only for testing purpose
66456645    ROM_LOAD16_BYTE( "12.bin",   0x00000, 0x40000, CRC(a258b4d5) SHA1(3433b6493794c98bb35c1b27cc65bb5f13d52e9b) )
66466646    ROM_LOAD16_BYTE( "09.bin",   0x00001, 0x40000, CRC(59ccd474) SHA1(7bb28c28ee722435fdbb18eb73e52bd65b419103) )
6647   */
6647    */
66486648   ROM_LOAD16_BYTE( "prg part 1.stt", 0x00000, 0x40000, NO_DUMP )
66496649   ROM_LOAD16_BYTE( "prg part 2.stt", 0x00001, 0x40000, NO_DUMP )
66506650   /* missing first part of program roms, so it can not boot */
r19613r19614
1084710847   ROM_REGION( 0x40000, "oki", 0 )   /* Samples */
1084810848   ROM_LOAD( "mrnj_18.11c",  0x00000, 0x20000, CRC(08e13940) SHA1(5c7dd7ff6a66f100b59cf9244e78f2c8702faca1) )
1084910849   ROM_LOAD( "mrnj_19.12c",  0x20000, 0x20000, CRC(5fa59927) SHA1(f05246cf566c214b008a91816c71e7c03b7cc218) )
10850   
10850
1085110851   ROM_REGION( 0x8000, "timekeeper", 0) /* Timekeeper internal RAM was dumped (but game overwrites it - should I keep this here or remove it?) */
1085210852   ROM_LOAD( "m48t35y.9n", 0x00000, 0x8000, CRC(96107b4a) SHA1(be9149736030e06c96083dcac73b5be3dbc318ac) )
1085310853
r19613r19614
1117411174READ16_MEMBER(cps_state::ganbare_ram_r)
1117511175{
1117611176   UINT16 result = 0xffff;
11177   
11177
1117811178   if (ACCESSING_BITS_0_7)
1117911179      result = (result & ~0x00ff) | timekeeper_r(machine().device("m48t35"), space, offset);
1118011180   if (ACCESSING_BITS_8_15)
1118111181      result = (result & ~0xff00) | (m_mainram[offset] & 0xff00);
11182   
11182
1118311183   return result;
1118411184}
1118511185
r19613r19614
1119411194DRIVER_INIT_MEMBER(cps_state, ganbare)
1119511195{
1119611196   DRIVER_INIT_CALL(cps1);
11197   
11197
1119811198   /* ram is shared between the CPS work ram and the timekeeper ram */
1119911199   machine().device("maincpu")->memory().space(AS_PROGRAM).install_readwrite_handler(0xff0000, 0xffffff, read16_delegate(FUNC(cps_state::ganbare_ram_r),this), write16_delegate(FUNC(cps_state::ganbare_ram_w),this));
1120011200}
trunk/src/mame/mame.lst
r19613r19614
1381513815sc2cb71
1381613816sc2cb72
1381713817sc2cb72p
13818sc2cb7p   
13818sc2cb7p
1381913819sc2cgcas   // Club Grand Casino
1382013820sc2cgcasp
1382113821sc2cgcas1
r19613r19614
1752317523sc5mopla   //
1752417524sc5moplb   //
1752517525sc5moplc   //
17526sc5mopld   //   
17526sc5mopld   //
1752717527sc5mople   //
1752817528sc5moplf   //
1752917529sc5moplg   //
r19613r19614
1755817558sc5potsma   //
1755917559sc5cpen1   // Public Enemy No1 Club (Bellfruit)
1756017560sc5cpen1a   //
17561sc5cpen1b   //   
17561sc5cpen1b   //
1756217562sc5cpen1c   //
1756317563sc5qual      // Quality Streak (Bellfruit)
1756417564sc5quala   //
r19613r19614
1821818218sc5fguyc   //
1821918219sc5fguyd   //
1822018220sc5fguye   //
18221sc5fguyf   //   
18221sc5fguyf   //
1822218222sc5fguyg   //
1822318223sc5fbspn   // Fat Boy Spin (Bellfruit)
1822418224sc5fbspna   //
r19613r19614
1841818418sc5mhph      //
1841918419sc5mhpi      //
1842018420sc5mhpj      //
18421sc5mhpk      //
18421sc5mhpk      //
1842218422sc5mhpl      //
1842318423sc5mmb      // Monopoly Money Bags (Bellfruit)
1842418424sc5mmba      //
r19613r19614
1897418974
1897518975
1897618976
18977     
1897818977
18978
1897918979/* Maygay Machines Ltd. */
1898018980
1898118981// Triple M (MMM) Hardware?
r19613r19614
1943519435m1grescp
1943619436m1grescq
1943719437m1guvnor   // The Guvnor (Maygay)
19438m1guvnora   
19438m1guvnora
1943919439m1guvnorb
1944019440m1guvnorc
1944119441m1guvnord
r19613r19614
1973019730m1monstrb
1973119731m1monstrc
1973219732m1nhp      // Noel's House Party (Maygay)
19733m1nhpa   
19733m1nhpa
1973419734m1nhpb
1973519735m1nhpc
1973619736m1nhpd
r19613r19614
1974419744m1nhpl
1974519745m1nhpm
1974619746m1nudbnk   // Nudge Banker (Maygay)
19747m1nudbnka   
19747m1nudbnka
1974819748m1nudbnkb
1974919749m1nudbnkc
1975019750m1nudbnkd
r19613r19614
1990119901m1thatlfc
1990219902m1thatlfd
1990319903m1topten   // Top Tenner (Maygay)
19904m1toptena   
19904m1toptena
1990519905m1trivia   // Trivial Pursuit (Maygay)
1990619906m1triviaa
1990719907m1triviab
r19613r19614
2001220012m1lcab
2001320013m1lcac
2001420014m1mb      // Monkey Business (Global)
20015m1mba     
20016m1mbb     
20017m1mbc     
20015m1mba
20016m1mbb
20017m1mbc
2001820018m1mbclb      // Monkey Business Club (Global)
2001920019m1sycc      // Stake Yer Claim Club (Global)
2002020020m1sycca
trunk/src/version.c
r19613r19614
3838***************************************************************************/
3939
4040extern const char build_version[];
41const char build_version[] = "0.147u3 ("__DATE__")";
41const char build_version[] = "0.147u4 ("__DATE__")";
trunk/src/lib/formats/flopimg.c
r19613r19614
485485         if ((offset > 0) || (buffer_len < sector_length))
486486         {
487487            /* we will be doing an partial read/write; in other words we
488            * will not be reading/writing a full sector */
488                * will not be reading/writing a full sector */
489489            if (alloc_buf) free(alloc_buf);
490490            alloc_buf = (UINT8*)malloc(sector_length);
491491            if (!alloc_buf)
trunk/src/lib/formats/flopimg.h
r19613r19614
227227   virtual ~floppy_image_format_t();
228228
229229   /*! @brief Identify an image.
230     The identify function tests if the image is valid
231     for this particular format.
232     @param io buffer containing the image data.
233     @param form_factor Physical form factor of disk, from the enum
234     in floppy_image
235     @return 1 if image valid, 0 otherwise.
236   */
230      The identify function tests if the image is valid
231      for this particular format.
232      @param io buffer containing the image data.
233      @param form_factor Physical form factor of disk, from the enum
234      in floppy_image
235      @return 1 if image valid, 0 otherwise.
236    */
237237   virtual int identify(io_generic *io, UINT32 form_factor) = 0;
238238
239239   /*! @brief Load an image.
240     The load function opens an image file and converts it to the
241     internal MESS floppy representation.
242     @param io source buffer containing the image data.
243     @param form_factor Physical form factor of disk, from the enum
244     in floppy_image
245     @param image output buffer for data in MESS internal format.
246     @return true on success, false otherwise.
247   */
240      The load function opens an image file and converts it to the
241      internal MESS floppy representation.
242      @param io source buffer containing the image data.
243      @param form_factor Physical form factor of disk, from the enum
244      in floppy_image
245      @param image output buffer for data in MESS internal format.
246      @return true on success, false otherwise.
247    */
248248   virtual bool load(io_generic *io, UINT32 form_factor, floppy_image *image) = 0;
249249
250250   /*! @brief Save an image.
251     The save function writes back an image from the MESS internal
252     floppy representation to the appropriate format on disk.
253     @param io output buffer for the data in the on-disk format.
254     @param image source buffer containing data in MESS internal format.
255     @return true on success, false otherwise.
256   */
251      The save function writes back an image from the MESS internal
252      floppy representation to the appropriate format on disk.
253      @param io output buffer for the data in the on-disk format.
254      @param image source buffer containing data in MESS internal format.
255      @return true on success, false otherwise.
256    */
257257   virtual bool save(io_generic *io, floppy_image *image);
258258
259259   //! @returns string containing name of format.
r19613r19614
347347
348348
349349   /*! @brief Generate one track according to the description vector.
350       @param desc track data description
351       @param track
352       @param head
353       @param sect a vector indexed by sector id.
354       @param sect_count number of sectors.
355       @param track_size in _cells_, i.e. 100000 for a usual 2us-per-cell track at 300rpm.
356       @param image
357   */
350        @param desc track data description
351        @param track
352        @param head
353        @param sect a vector indexed by sector id.
354        @param sect_count number of sectors.
355        @param track_size in _cells_, i.e. 100000 for a usual 2us-per-cell track at 300rpm.
356        @param image
357    */
358358   void generate_track(const desc_e *desc, int track, int head, const desc_s *sect, int sect_count, int track_size, floppy_image *image);
359359
360360   /*! @brief Generate a track from cell binary values, MSB-first.
361       @param track
362       @param head
363       @param trackbuf track input buffer.
364       @param track_size in cells, not bytes.
365       @param image
366   */
361        @param track
362        @param head
363        @param trackbuf track input buffer.
364        @param track_size in cells, not bytes.
365        @param image
366    */
367367   void generate_track_from_bitstream(int track, int head, const UINT8 *trackbuf, int track_size, floppy_image *image);
368368
369369   //! @brief Generate a track from cell level values (0/1/W/D/N).
370370
371371   /*! Note that this function needs to be able to split cells in two,
372       so no time value should be less than 2, and even values are a
373       good idea.
374   */
372        so no time value should be less than 2, and even values are a
373        good idea.
374    */
375375   /*! @param track
376       @param head
377       @param trackbuf track input buffer.
378       @param track_size in cells, not bytes.
379       @param splice_pos is the position of the track splice.  For normal
380       formats, use -1.  For protected formats, you're supposed to
381       know. trackbuf may be modified at that position or after.
382       @param image
383   */
376        @param head
377        @param trackbuf track input buffer.
378        @param track_size in cells, not bytes.
379        @param splice_pos is the position of the track splice.  For normal
380        formats, use -1.  For protected formats, you're supposed to
381        know. trackbuf may be modified at that position or after.
382        @param image
383    */
384384   void generate_track_from_levels(int track, int head, UINT32 *trackbuf, int track_size, int splice_pos, floppy_image *image);
385385
386386   //! Normalize the times in a cell buffer to sum up to 200000000
r19613r19614
422422   // **** Writer helpers ****
423423
424424   /*! @brief Rebuild a cell bitstream for a track.
425       Takes the cell standard
426       angular size as a parameter, gives out a msb-first bitstream.
425        Takes the cell standard
426        angular size as a parameter, gives out a msb-first bitstream.
427427
428       Beware that fuzzy bits will always give out the same value.
429       @param track
430       @param head
431       @param cell_size
432       @param trackbuf Output buffer size should be 34% more than the nominal number
433       of cells (the dpll tolerates a cell size down to 75% of the
434       nominal one, with gives a cell count of 1/0.75=1.333... times
435       the nominal one).
436       @param track_size Output size is given in bits (cells).
437       @param image
438   */
428        Beware that fuzzy bits will always give out the same value.
429        @param track
430        @param head
431        @param cell_size
432        @param trackbuf Output buffer size should be 34% more than the nominal number
433        of cells (the dpll tolerates a cell size down to 75% of the
434        nominal one, with gives a cell count of 1/0.75=1.333... times
435        the nominal one).
436        @param track_size Output size is given in bits (cells).
437        @param image
438    */
439439   /*! @verbatim
440    Computing the standard angular size of a cell is
441    simple. Noting:
442      d = standard cell duration in microseconds
443      r = motor rotational speed in rpm
444    then:
445      a = r * d * 10 / 3.
446    Some values:
447      Type           Cell    RPM    Size
440     Computing the standard angular size of a cell is
441     simple. Noting:
442       d = standard cell duration in microseconds
443       r = motor rotational speed in rpm
444     then:
445       a = r * d * 10 / 3.
446     Some values:
447       Type           Cell    RPM    Size
448448
449    C1541 tr  1-17   3.25    300    3250
450    C1541 tr 18-24   3.50    300    3500
451    C1541 tr 25-30   3.75    300    3750
452    C1541 tr 31+     4.00    300    4000
453    5.25" SD         4       300    4000
454    5.25" DD         2       300    2000
455    5.25" HD         1       360    1200
456    3.5" SD          4       300    4000
457    3.5" DD          2       300    2000
458    3.5" HD          1       300    1000
459    3.5" ED          0.5     300     500
460    @endverbatim
461    */
449     C1541 tr  1-17   3.25    300    3250
450     C1541 tr 18-24   3.50    300    3500
451     C1541 tr 25-30   3.75    300    3750
452     C1541 tr 31+     4.00    300    4000
453     5.25" SD         4       300    4000
454     5.25" DD         2       300    2000
455     5.25" HD         1       360    1200
456     3.5" SD          4       300    4000
457     3.5" DD          2       300    2000
458     3.5" HD          1       300    1000
459     3.5" ED          0.5     300     500
460     @endverbatim
461     */
462462
463463   void generate_bitstream_from_track(int track, int head, int cell_size,  UINT8 *trackbuf, int &track_size, floppy_image *image);
464464
r19613r19614
656656
657657   //! floppy_image constructor
658658   /*!
659     @param _tracks number of tracks.
660     @param _heads number of heads.
661     @param _form_factor form factor of drive (from enum)
662   */
659      @param _tracks number of tracks.
660      @param _heads number of heads.
661      @param _form_factor form factor of drive (from enum)
662    */
663663   floppy_image(int tracks, int heads, UINT32 form_factor);
664664   virtual ~floppy_image();
665665
r19613r19614
671671   void set_variant(UINT32 v) { variant = v; }
672672
673673   /*!
674     @param track
675     @param head
676     @param size size of this track
677   */
674      @param track
675      @param head
676      @param size size of this track
677    */
678678   void set_track_size(int track, int head, UINT32 size) { track_size[track][head] = size; ensure_alloc(track, head); }
679679
680680   /*!
681     @param track track number
682     @param head head number
683     @return a pointer to the data buffer for this track and head
684   */
681      @param track track number
682      @param head head number
683      @return a pointer to the data buffer for this track and head
684    */
685685   UINT32 *get_buffer(int track, int head) { return cell_data[track][head]; }
686686   //! @return the track size
687687   //! @param track
r19613r19614
696696   //! representation is the angular position relative to the index.
697697
698698   /*! @param track
699       @param head
700       @param pos the position
701   */
699        @param head
700        @param pos the position
701    */
702702   void set_write_splice_position(int track, int head, UINT32 pos) { write_splice[track][head] = pos; }
703703   //! @return the current write splice position.
704704   UINT32 get_write_splice_position(int track, int head) const { return write_splice[track][head]; }
trunk/src/lib/formats/comx35_dsk.c
r19613r19614
8080      2000, 16, 35, 2, 128, {}, 0, {}, 100, 22, 84
8181   },
8282   /*{   //  140K 5 1/4 inch quad density single sided 70 tracks
83       floppy_image::FF_525, floppy_image::SSQD,
84       2000, 16, 70, 1, 128, {}, 0, {}, 100, 22, 84
85   },*/
83        floppy_image::FF_525, floppy_image::SSQD,
84        2000, 16, 70, 1, 128, {}, 0, {}, 100, 22, 84
85    },*/
8686   {}
8787};
8888
trunk/src/lib/formats/m20_dsk.c
r19613r19614
269269         else
270270            build_wd_track_fm(track, head, image, 50000, 16, sects, 24, 16, 11);
271271      }
272           
272
273273   return true;
274274}
275275
trunk/src/lib/formats/imd_dsk.c
r19613r19614
361361      for(int i=0; i != 30; i++)
362362         if(h[i] >= '0' && h[i] <= '9')      \
363363            h[i] = '0';
364     
364
365365      fixnum(h+ 9, h+11);
366366      fixnum(h+12, h+14);
367367      fixnum(h+15, h+19);
368368      fixnum(h+20, h+22);
369369      fixnum(h+23, h+25);
370370      fixnum(h+26, h+28);
371     
371
372372      if(!strcmp(h, "IMD 0.0: 00/00/0000 00:00:00\015\012"))
373373         return 100;
374374   } else {
r19613r19614
376376      for(int i=0; i != 31; i++)
377377         if(h[i] >= '0' && h[i] <= '9')      \
378378            h[i] = '0';
379     
379
380380      fixnum(h+10, h+12);
381381      fixnum(h+13, h+15);
382382      fixnum(h+16, h+20);
383383      fixnum(h+21, h+23);
384384      fixnum(h+24, h+26);
385385      fixnum(h+27, h+29);
386     
386
387387      if(!strcmp(h, "IMD 0.00: 00/00/0000 00:00:00\015\012"))
388388         return 100;
389389   }
r19613r19614
447447
448448         if(stype == 0 || stype > 8) {
449449            sects[i].data = NULL;
450           
450
451451         } else {
452452            sects[i].deleted = stype == 3 || stype == 4 || stype == 7 || stype == 8;
453453            sects[i].bad_crc = stype == 5 || stype == 6 || stype == 7 || stype == 8;
trunk/src/lib/util/chdcd.c
r19613r19614
469469   memset(&outtoc, 0, sizeof(outtoc));
470470   outinfo.reset();
471471
472   fseek(infile, 0, SEEK_END);   
472   fseek(infile, 0, SEEK_END);
473473   long size = ftell(infile);
474474   fclose(infile);
475475
r19613r19614
501501   outtoc.tracks[0].subsize = 0;
502502
503503   outtoc.tracks[0].pregap = 0;
504   
504
505505   outtoc.tracks[0].postgap = 0;
506506   outtoc.tracks[0].pgtype = 0;
507507   outtoc.tracks[0].pgsub = CD_SUB_NONE;
trunk/src/emu/machine/scsihd.h
r19613r19614
2424   virtual void WriteData( UINT8 *data, int dataLength );
2525   virtual void ReadData( UINT8 *data, int dataLength );
2626   virtual int GetSectorBytes();
27   
27
2828   static struct harddisk_interface hd_intf;
29   
29
3030protected:
3131   // device-level overrides
3232   virtual void device_start();
trunk/src/emu/machine/wd_fdc.c
r19613r19614
900900void wd_fdc_t::cmd_w(UINT8 val)
901901{
902902   if (inverted_bus) val ^= 0xff;
903   
903
904904   if(intrq && !(intrq_cond & I_IMM)) {
905905      intrq = false;
906906      if(!intrq_cb.isnull())
r19613r19614
955955
956956   UINT8 val = status;
957957   if (inverted_bus) val ^= 0xff;
958   
958
959959   return val;
960960}
961961
r19613r19614
981981{
982982   UINT8 val = track;
983983   if (inverted_bus) val ^= 0xff;
984   
984
985985   return val;
986986}
987987
r19613r19614
994994void wd_fdc_t::sector_w(UINT8 val)
995995{
996996   if (inverted_bus) val ^= 0xff;
997   
997
998998   // No more than one write in flight
999999   if(sector_buffer != -1)
10001000      return;
r19613r19614
10071007{
10081008   UINT8 val = sector;
10091009   if (inverted_bus) val ^= 0xff;
1010   
1010
10111011   return val;
10121012}
10131013
10141014void wd_fdc_t::data_w(UINT8 val)
10151015{
10161016   if (inverted_bus) val ^= 0xff;
1017   
1017
10181018   data = val;
10191019   drop_drq();
10201020}
r19613r19614
10251025
10261026   UINT8 val = data;
10271027   if (inverted_bus) val ^= 0xff;
1028   
1028
10291029   return val;
10301030}
10311031
r19613r19614
12311231{
12321232   if(!cur_live.tm.is_never()) {
12331233      if(cur_live.tm > machine().time()) {
1234         //         fprintf(stderr, "%s: Rolling back and replaying (%s)\n", ttsn().cstr(), tts(cur_live.tm).cstr());
1234         //          fprintf(stderr, "%s: Rolling back and replaying (%s)\n", ttsn().cstr(), tts(cur_live.tm).cstr());
12351235         rollback();
12361236         live_run(machine().time());
12371237         pll_commit(floppy, cur_live.tm);
12381238      } else {
1239         //         fprintf(stderr, "%s: Committing (%s)\n", ttsn().cstr(), tts(cur_live.tm).cstr());
1239         //          fprintf(stderr, "%s: Committing (%s)\n", ttsn().cstr(), tts(cur_live.tm).cstr());
12401240         pll_commit(floppy, cur_live.tm);
12411241         if(cur_live.next_state != -1) {
12421242            cur_live.state = cur_live.next_state;
r19613r19614
14401440         if(cur_live.bit_counter & 15)
14411441            break;
14421442         int slot = (cur_live.bit_counter >> 4)-1;
1443         //         fprintf(stderr, "%s: slot[%d] = %02x  crc = %04x\n", tts(cur_live.tm).cstr(), slot, cur_live.data_reg, cur_live.crc);
1443         //          fprintf(stderr, "%s: slot[%d] = %02x  crc = %04x\n", tts(cur_live.tm).cstr(), slot, cur_live.data_reg, cur_live.crc);
14441444         cur_live.idbuf[slot] = cur_live.data_reg;
14451445         if(slot == 5) {
14461446            live_delay(IDLE);
trunk/src/emu/machine/wd_fdc.h
r19613r19614
3535 * wd2793 normal   n     y    n   y   n     y   y   1/2MHz y    y  analog
3636 * wd2795 inverted y     n    y   y   n     y   y   1/2MHz n    y  analog
3737 * wd2797 normal   y     n    y   y   n     y   y   1/2MHz n    y  analog
38   
38
3939 * wd1770 normal   n     n    n   n   y     n   y   8Mhz   n    n  digital
4040 * wd1772 normal   n     n    n   n   y     n   y   8MHz   n    n  digital
4141 * wd1773 normal   n     y    n   n   n     y   y   8MHz   n    n  digital
trunk/src/emu/machine/fdc_pll.h
r19613r19614
1111class fdc_pll_t {
1212public:
1313   attotime ctime, period, min_period, max_period, period_adjust_base, phase_adjust;
14 
14
1515   attotime write_start_time;
1616   attotime write_buffer[32];
1717   int write_position;
1818   int freq_hist;
19 
19
2020   void set_clock(attotime period);
2121   void reset(attotime when);
2222   int get_next_bit(attotime &tm, floppy_image_device *floppy, attotime limit);
trunk/src/emu/machine/msm6242.c
r19613r19614
294294   if (!m_res_out_int_func.isnull() && m_irq_flag == 1)
295295   {
296296      switch(m_irq_type)
297      {     
297      {
298298         case IRQ_HOUR:
299299            callback_ticks += (59 - get_clock_register(RTC_MINUTE)) * (0x8000 * 60);
300300            // fall through
r19613r19614
471471   switch(offset)
472472   {
473473      case MSM6242_REG_CD:
474            //   x--- 30s ADJ
475            //   -x-- IRQ FLAG
476            //   --x- BUSY
477            //   ---x HOLD
474            //  x--- 30s ADJ
475            //  -x-- IRQ FLAG
476            //  --x- BUSY
477            //  ---x HOLD
478478         m_reg[0] = data & 0x0f;
479479         break;
480480
481481      case MSM6242_REG_CE:
482            //   xx-- t0,t1 (timing irq)
483            //   --x- STD
484            //   ---x MASK
482            //  xx-- t0,t1 (timing irq)
483            //  --x- STD
484            //  ---x MASK
485485         m_reg[1] = data & 0x0f;
486486         if((data & 3) == 0) // MASK & STD = 0
487487         {
r19613r19614
497497         break;
498498
499499      case MSM6242_REG_CF:
500            //   x--- TEST
501            //   -x-- 24/12
502            //   --x- STOP
503            //   ---x RESET
500            //  x--- TEST
501            //  -x-- 24/12
502            //  --x- STOP
503            //  ---x RESET
504504
505505         // the 12/24 mode bit can only be changed when RESET does a 1 -> 0 transition
506506         if (((data & 0x01) == 0x00) && (m_reg[2] & 0x01))
trunk/src/emu/video/msm6255.c
r19613r19614
8383//**************************************************************************
8484
8585//-------------------------------------------------
86//  read_byte -
86//  read_byte -
8787//-------------------------------------------------
8888
8989inline UINT8 msm6255_device::read_byte(UINT16 ma, UINT8 ra)
r19613r19614
460460   {
461461      bitmap.fill(0, cliprect);
462462   }
463   
463
464464   return 0;
465465}
trunk/src/emu/imagedev/chd_cd.c
r19613r19614
5858       memset(&m_interface, 0, sizeof(m_interface));
5959      memset(&m_device_displayinfo, 0, sizeof(m_device_displayinfo));
6060   }
61   
61
6262   m_extension_list = "chd,cue,toc,nrg,gdi,iso,cdr";
6363
6464   image_device_format *format = global_alloc_clear(image_device_format);;
trunk/src/emu/cpu/tms32031/tms32031.c
r19613r19614
396396{
397397   if (m_mcbl_mode && addr < 0x1000)
398398      return m_bootrom[addr];
399     
399
400400   return m_program->read_dword(addr << 2);
401401}
402402
trunk/src/emu/cpu/z8000/z8000.c
r19613r19614
554554   cpustate->device = device;
555555   cpustate->program = &device->space(AS_PROGRAM);
556556   /* If the system decodes STn lines to distinguish between data and program memory fetches,
557      install the data space. If it doesn't, install the program memory into data memory space. */
557       install the data space. If it doesn't, install the program memory into data memory space. */
558558   if (device->has_space(AS_DATA))
559559      cpustate->data = &device->space(AS_DATA);
560560   else
r19613r19614
577577   cpustate->device = device;
578578   cpustate->program = &device->space(AS_PROGRAM);
579579   /* If the system decodes STn lines to distinguish between data and program memory fetches,
580      install the data space. If it doesn't, install the program memory into data memory space. */
580       install the data space. If it doesn't, install the program memory into data memory space. */
581581   if (device->has_space(AS_DATA))
582582      cpustate->data = &device->space(AS_DATA);
583583   else
trunk/src/emu/cpu/h83002/h8.h
r19613r19614
11/***************************************************************************
22
33 h8.h : Public constants and function defs for the H8/300, H8/300H,
4      H8/2000S, and H8/2600S family emulators.
4        H8/2000S, and H8/2600S family emulators.
55
66****************************************************************************/
77
trunk/src/emu/cpu/h83002/h8ops.h
r19613r19614
19081908            h8_bset8(h8, (udata16 >> 4) & 0x7, udata8);
19091909            h8_mem_write8(address24, udata8);
19101910         }
1911         else if ((udata16 & 0xff00) == 0x6300)
1911         else if ((udata16 & 0xff00) == 0x6300)
19121912         {
19131913            h8_btst8(h8, h8_getreg8(h8, (udata16 >> 4) & 0xf), udata8);
19141914            h8_mem_write8(address24, udata8);
19151915         }
1916         else if ((udata16 & 0xff0f) == 0x6000)
1916         else if ((udata16 & 0xff0f) == 0x6000)
19171917         {
19181918            h8_bset8(h8, h8_getreg8(h8, (udata16 >> 4) & 0xf), udata8);
19191919            h8_mem_write8(address24, udata8);
trunk/src/emu/cpu/h83002/h8disasm.c
r19613r19614
13011301         else
13021302         {
13031303            sprintf(buffer, "%4.4x ???", opcode);
1304         }       
1305         size = 6;           
1304         }
1305         size = 6;
13061306         break;
13071307      case 0x2:
13081308         data32=h8_mem_read32(2);
trunk/src/mess/machine/sms.c
r19613r19614
885885WRITE8_MEMBER(sms_state::sms_sscope_w)
886886{
887887   screen_device *screen = machine().first_screen();
888   
888
889889   m_sscope_state = data;
890890
891891   // There are occurrences when Sega Scope's state changes after VBLANK, or at
trunk/src/mess/machine/comx_thm.c
r19613r19614
102102UINT8 comx_thm_device::comx_io_r(address_space &space, offs_t offset)
103103{
104104   /*
105       INP 2 is used for the printer status, where:
106       b0=1: Printer Not Ready
107       b1=1: Energizing Head
108       b2=1: Head At Position 0
109   */
105        INP 2 is used for the printer status, where:
106        b0=1: Printer Not Ready
107        b1=1: Energizing Head
108        b2=1: Head At Position 0
109    */
110110
111111   return 0;
112112}
r19613r19614
119119void comx_thm_device::comx_io_w(address_space &space, offs_t offset, UINT8 data)
120120{
121121   /*
122       OUT 2 is used to control the thermal printer where:
123       Q = 0, b0-7: Pixel 1 to 8
124       Q = 1, b7: Pixel 9 (if b0-6=#21)
125       Q = 1, b3=1: Move head right
126       Q = 1, b0-7=#12: Move head left
127   */
122        OUT 2 is used to control the thermal printer where:
123        Q = 0, b0-7: Pixel 1 to 8
124        Q = 1, b7: Pixel 9 (if b0-6=#21)
125        Q = 1, b3=1: Move head right
126        Q = 1, b0-7=#12: Move head left
127    */
128128}
trunk/src/mess/machine/mackbd.c
r19613r19614
4444    ---x      Data to Mac
4545
4646    The T1 line is "Option".
47 
48   There is a later M0110 keyboard version which uses a GI PIC1657; we do not have a dump of that version.
47
48    There is a later M0110 keyboard version which uses a GI PIC1657; we do not have a dump of that version.
4949*/
5050
5151
trunk/src/mess/machine/nubus_image.c
r19613r19614
206206   slotspace = get_slotspace();
207207   superslotspace = get_super_slotspace();
208208
209//   printf("[image %p] slotspace = %x, super = %x\n", this, slotspace, superslotspace);
209//  printf("[image %p] slotspace = %x, super = %x\n", this, slotspace, superslotspace);
210210
211211   m_nubus->install_device(slotspace, slotspace+3, read32_delegate(FUNC(nubus_image_device::image_r), this), write32_delegate(FUNC(nubus_image_device::image_w), this));
212212   m_nubus->install_device(slotspace+4, slotspace+7, read32_delegate(FUNC(nubus_image_device::image_status_r), this), write32_delegate(FUNC(nubus_image_device::image_status_w), this));
r19613r19614
263263{
264264   UINT32 *image = (UINT32*)m_image->data;
265265   UINT32 data = image[offset];
266   return ((data & 0xff) << 24) | ((data & 0xff00) << 8) | ((data & 0xff0000) >> 8) | ((data & 0xff000000) >> 24);
266   return ((data & 0xff) << 24) | ((data & 0xff00) << 8) | ((data & 0xff0000) >> 8) | ((data & 0xff000000) >> 24);
267267}
268268
trunk/src/mess/machine/comx_ram.h
r19613r19614
4444
4545private:
4646   optional_shared_ptr<UINT8> m_ram;
47   
47
4848   int m_bank;
4949};
5050
trunk/src/mess/machine/c8280.c
r19613r19614
99
1010/*
1111
12   TODO:
12    TODO:
1313
14   - format
15     
16      wd1772: track description 80x4e 12x00 3xf6 fc 50x4e 12x00 3xf5 fe 2x00 2x01 f7 22x4e 12x00 3xf5 fb 256xaa f7 54x4e
14    - format
1715
16        wd1772: track description 80x4e 12x00 3xf6 fc 50x4e 12x00 3xf5 fe 2x00 2x01 f7 22x4e 12x00 3xf5 fb 256xaa f7 54x4e
17
1818*/
1919
2020#include "c8280.h"
trunk/src/mess/machine/comxpl80.h
r19613r19614
3030public:
3131    // construction/destruction
3232    comx_pl80_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
33   
33
3434   // optional information overrides
3535   virtual const rom_entry *device_rom_region() const;
3636   virtual machine_config_constructor device_mconfig_additions() const;
trunk/src/mess/machine/c1581.c
r19613r19614
88**********************************************************************/
99
1010/*
11   
12   TODO:
1311
14   - wd_fdc drops the busy bit too soon, c1581 aborts reading the sector ID after the first CRC byte @CD17
12    TODO:
1513
14    - wd_fdc drops the busy bit too soon, c1581 aborts reading the sector ID after the first CRC byte @CD17
15
1616*/
1717
1818#include "c1581.h"
r19613r19614
146146{
147147   /*
148148
149       bit     description
149        bit     description
150150
151       PA0
152       PA1     /RDY
153       PA2
154       PA3     DEV# SEL (SW1)
155       PA4     DEV# SEL (SW1)
156       PA5
157       PA6
158       PA7     /DISK CHNG
151        PA0
152        PA1     /RDY
153        PA2
154        PA3     DEV# SEL (SW1)
155        PA4     DEV# SEL (SW1)
156        PA5
157        PA6
158        PA7     /DISK CHNG
159159
160   */
160    */
161161
162162   UINT8 data = 0;
163163
r19613r19614
177177{
178178   /*
179179
180       bit     description
180        bit     description
181181
182       PA0     SIDE0
183       PA1
184       PA2     /MOTOR
185       PA3
186       PA4
187       PA5     POWER LED
188       PA6     ACT LED
189       PA7
182        PA0     SIDE0
183        PA1
184        PA2     /MOTOR
185        PA3
186        PA4
187        PA5     POWER LED
188        PA6     ACT LED
189        PA7
190190
191   */
191    */
192192
193193   // side select
194194   m_floppy->ss_w(BIT(data, 0));
r19613r19614
207207{
208208   /*
209209
210       bit     description
210        bit     description
211211
212       PB0     DATA IN
213       PB1
214       PB2     CLK IN
215       PB3
216       PB4
217       PB5
218       PB6     /WPRT
219       PB7     ATN IN
212        PB0     DATA IN
213        PB1
214        PB2     CLK IN
215        PB3
216        PB4
217        PB5
218        PB6     /WPRT
219        PB7     ATN IN
220220
221   */
221    */
222222
223223   UINT8 data = 0;
224224
r19613r19614
241241{
242242   /*
243243
244       bit     description
244        bit     description
245245
246       PB0
247       PB1     DATA OUT
248       PB2
249       PB3     CLK OUT
250       PB4     ATN ACK
251       PB5     FAST SER DIR
252       PB6
253       PB7
246        PB0
247        PB1     DATA OUT
248        PB2
249        PB3     CLK OUT
250        PB4     ATN ACK
251        PB5     FAST SER DIR
252        PB6
253        PB7
254254
255   */
255    */
256256
257257   // data out
258258   m_data_out = BIT(data, 1);
trunk/src/mess/machine/comx_prn.c
r19613r19614
140140UINT8 comx_prn_device::comx_io_r(address_space &space, offs_t offset)
141141{
142142   /*
143       Parallel:
143        Parallel:
144144
145       INP 2 for the printer status, where:
146       b0=1: Acknowledge Fault
147       b1=0: Device Busy
148       b2=0: Paper Empty
149       b3=1: Device Not Selected
145        INP 2 for the printer status, where:
146        b0=1: Acknowledge Fault
147        b1=0: Device Busy
148        b2=0: Paper Empty
149        b3=1: Device Not Selected
150150
151       Serial:
151        Serial:
152152
153       INP 2 for the printer status and to start a new range of bits for the next byte.
154   */
153        INP 2 for the printer status and to start a new range of bits for the next byte.
154    */
155155
156156   /*
157157
158       bit     description
158        bit     description
159159
160       0       Acknowledge Fault
161       1       Device Busy
162       2       Paper Empty
163       3       Device Not Selected
164       4
165       5
166       6
167       7
160        0       Acknowledge Fault
161        1       Device Busy
162        2       Paper Empty
163        3       Device Not Selected
164        4
165        5
166        6
167        7
168168
169   */
169    */
170170
171171   UINT8 data = 0;
172172
r19613r19614
186186void comx_prn_device::comx_io_w(address_space &space, offs_t offset, UINT8 data)
187187{
188188   /*
189       Parallel:
189        Parallel:
190190
191       OUT 2 is used to send a byte to the printer
191        OUT 2 is used to send a byte to the printer
192192
193       Serial:
193        Serial:
194194
195       OUT 2 is used to send a bit to the printer
196   */
195        OUT 2 is used to send a bit to the printer
196    */
197197
198198   m_centronics->write(data);
199199}
trunk/src/mess/machine/special.c
r19613r19614
266266
267267   switch(offset)
268268   {
269      case 0 :
269      case 0 :
270270            m_maincpu->set_input_line(INPUT_LINE_HALT, ASSERT_LINE);
271271            break;
272272      case 2 :
r19613r19614
400400WRITE8_MEMBER( special_state::erik_disk_reg_w )
401401{
402402/*
403   wd17xx_set_side (m_fdc,data & 1);
404   wd17xx_set_drive(m_fdc,(data >> 1) & 1);
405   wd17xx_dden_w(m_fdc, BIT(data, 2));
406   floppy_mon_w(floppy_get_device(machine(), BIT(data, 1)), 0);
407   floppy_mon_w(floppy_get_device(machine(), BIT(data, 1) ^ 1), 1);
408   floppy_drive_set_ready_state(floppy_get_device(machine(), BIT(data, 1)), 1, 1);*/
403    wd17xx_set_side (m_fdc,data & 1);
404    wd17xx_set_drive(m_fdc,(data >> 1) & 1);
405    wd17xx_dden_w(m_fdc, BIT(data, 2));
406    floppy_mon_w(floppy_get_device(machine(), BIT(data, 1)), 0);
407    floppy_mon_w(floppy_get_device(machine(), BIT(data, 1) ^ 1), 1);
408    floppy_drive_set_ready_state(floppy_get_device(machine(), BIT(data, 1)), 1, 1);*/
409409}
trunk/src/mess/machine/nes.c
r19613r19614
11/*****************************************************************************
22
3   nes.c
3    nes.c
44
5   Nintendo Entertainment System (Famicom)
5    Nintendo Entertainment System (Famicom)
66
77 ****************************************************************************/
88
trunk/src/mess/machine/orion.c
r19613r19614
172172
173173   m_fdc->set_floppy(floppy);
174174   floppy->mon_w(0);
175   floppy->ss_w(((data & 0x10) >> 4) ^ 1);   
175   floppy->ss_w(((data & 0x10) >> 4) ^ 1);
176176}
177177
178178READ8_MEMBER(orion_state::orion128_floppy_r)
trunk/src/mess/machine/cmdhd.c
r19613r19614
247247WRITE8_MEMBER( cmd_hd_device::led_w )
248248{
249249   /*
250   
251       bit     description
252   
253       0       
254       1       
255       2       
256       3       
257       4       
258       5       
259       6       
260       7       
261   
262   */
250
251        bit     description
252
253        0
254        1
255        2
256        3
257        4
258        5
259        6
260        7
261
262    */
263263}
trunk/src/mess/machine/pc.c
r19613r19614
11821182   UINT8 pdor = m_pcjr_dor;
11831183   upd765a_device *fdc = machine().device<upd765a_device>("upd765");
11841184   floppy_image_device *floppy = machine().device<floppy_connector>("upd765:0")->get_device();
1185   m_pcjr_dor = data;
1185   m_pcjr_dor = data;
11861186
11871187   if(floppy)
11881188      floppy->mon_w(!(m_pcjr_dor & 1));
r19613r19614
11941194
11951195   if((pdor^m_pcjr_dor) & 0x80)
11961196      fdc->reset();
1197   
1197
11981198   if(m_pcjr_dor & 0x20) {
11991199      if((pdor & 0x40) && !(m_pcjr_dor & 0x40))
12001200         m_pcjr_watchdog->adjust(attotime::from_seconds(3));
r19613r19614
14681468   m_maincpu->set_irq_acknowledge_callback(pc_irq_callback);
14691469
14701470   machine().device<upd765a_device>("upd765")->set_ready_line_connected(false);
1471   
14721471
1472
14731473   m_pic8259 = machine().device("pic8259");
14741474   m_dma8237 = NULL;
14751475   m_pit8253 = machine().device("pit8253");
trunk/src/mess/machine/lux10828.c
r19613r19614
676676   if (!m_wait_enable && !m_fdc_irq && !m_fdc_drq)
677677   {
678678      fatalerror("Z80 WAIT not supported by MAME core\n");
679     
679
680680      m_maincpu->set_input_line(Z80_INPUT_LINE_WAIT, ASSERT_LINE);
681681   }
682682
trunk/src/mess/machine/comx_fd.c
r19613r19614
261261      {
262262         /*
263263
264             bit     description
264                bit     description
265265
266             0       FDC A0
267             1       FDC A1
268             2       DRIVE0
269             3       DRIVE1
270             4       F9 DISB
271             5       SIDE SELECT
266                0       FDC A0
267                1       FDC A1
268                2       DRIVE0
269                3       DRIVE1
270                4       F9 DISB
271                5       SIDE SELECT
272272
273         */
273            */
274274
275275         // latch data to F3
276276         m_addr = data & 0x03;
trunk/src/mess/machine/b2m.c
r19613r19614
224224   if (m_b2m_drive!=drive) {
225225      m_b2m_drive = drive;
226226   }
227   
227
228228   if (m_b2m_side!=side) {
229229      m_b2m_side = side;
230      floppy->ss_w(side);   
230      floppy->ss_w(side);
231231   }
232232   /*
233      When bit 5 is set CPU is in HALT state and stay there until
234      DRQ is triggered from floppy side
235   */
236   
237   if ((data & 0xf0)==0x20) {
233        When bit 5 is set CPU is in HALT state and stay there until
234        DRQ is triggered from floppy side
235    */
236
237   if ((data & 0xf0)==0x20) {
238238      m_maincpu->set_input_line(INPUT_LINE_HALT, ASSERT_LINE);
239239   }
240240}
trunk/src/mess/machine/fd2000.c
r19613r19614
99
1010/*
1111
12   TODO:
12    TODO:
1313
14   - IEC
15   - VIA
16   - DP8473/PC8477A command extensions to upd765
17   - D1M/D2M/D4M image format (http://ist.uwaterloo.ca/~schepers/formats/D2M-DNP.TXT)
14    - IEC
15    - VIA
16    - DP8473/PC8477A command extensions to upd765
17    - D1M/D2M/D4M image format (http://ist.uwaterloo.ca/~schepers/formats/D2M-DNP.TXT)
1818
1919*/
2020
r19613r19614
8181   {
8282   default:
8383      return ROM_NAME( fd2000 );
84   
84
8585   case TYPE_FD4000:
8686      return ROM_NAME( fd4000 );
8787   }
r19613r19614
121121READ8_MEMBER( fd2000_device::via_pa_r )
122122{
123123   /*
124   
125       bit     description
126   
127       0       
128       1       
129       2       
130       3       
131       4       
132       5       
133       6       
134       7       
135   
136   */
137124
125        bit     description
126
127        0
128        1
129        2
130        3
131        4
132        5
133        6
134        7
135
136    */
137
138138   return 0;
139139}
140140
141141WRITE8_MEMBER( fd2000_device::via_pa_w )
142142{
143143   /*
144   
145       bit     description
146   
147       0       
148       1       
149       2       
150       3       
151       4       
152       5       FAST DIR
153       6       
154       7       
155   
156   */
144
145        bit     description
146
147        0
148        1
149        2
150        3
151        4
152        5       FAST DIR
153        6
154        7
155
156    */
157157}
158158
159159READ8_MEMBER( fd2000_device::via_pb_r )
160160{
161161   /*
162   
163       bit     description
164   
165       0       
166       1       
167       2       
168       3       
169       4       
170       5       
171       6       
172       7       FDC INTRQ
173   
174   */
175162
163        bit     description
164
165        0
166        1
167        2
168        3
169        4
170        5
171        6
172        7       FDC INTRQ
173
174    */
175
176176   UINT8 data = 0;
177177
178178   // FDC interrupt
r19613r19614
184184WRITE8_MEMBER( fd2000_device::via_pb_w )
185185{
186186   /*
187   
188       bit     description
189   
190       0       
191       1       
192       2       
193       3       
194       4       
195       5       LED
196       6       LED
197       7       
198   
199   */
187
188        bit     description
189
190        0
191        1
192        2
193        3
194        4
195        5       LED
196        6       LED
197        7
198
199    */
200200}
201201
202202static const via6522_interface via_intf =
r19613r19614
227227SLOT_INTERFACE_END
228228/*
229229FLOPPY_FORMATS_MEMBER( fd2000_device::floppy_formats )
230   FLOPPY_D81_FORMAT
231   FLOPPY_D2M_FORMAT
230    FLOPPY_D81_FORMAT
231    FLOPPY_D2M_FORMAT
232232FLOPPY_FORMATS_END
233233*/
234234
r19613r19614
273273   {
274274   default:
275275      return MACHINE_CONFIG_NAME( fd2000 );
276   
276
277277   case TYPE_FD4000:
278278      return MACHINE_CONFIG_NAME( fd4000 );
279279   }
r19613r19614
293293   default:
294294      m_shortname = "fd2000";
295295      break;
296   
296
297297   case TYPE_FD4000:
298298      m_shortname = "fd4000";
299299      break;
trunk/src/mess/machine/iq151_disc2.h
r19613r19614
2424   // optional information overrides
2525   virtual machine_config_constructor device_mconfig_additions() const;
2626   virtual const rom_entry *device_rom_region() const;
27   
27
2828   DECLARE_FLOPPY_FORMATS( floppy_formats );
2929
3030protected:
trunk/src/mess/includes/nes.h
r19613r19614
11/*****************************************************************************
22
3   nes.h
3    nes.h
44
5   Nintendo Entertainment System (Famicom)
5    Nintendo Entertainment System (Famicom)
66
77 ****************************************************************************/
88
trunk/src/mess/includes/b2m.h
r19613r19614
6363   DECLARE_WRITE8_MEMBER(b2m_romdisk_portb_w);
6464   DECLARE_WRITE8_MEMBER(b2m_romdisk_portc_w);
6565   DECLARE_WRITE_LINE_MEMBER(b2m_pic_set_int_line);
66   void b2m_fdc_drq(bool state);   
66   void b2m_fdc_drq(bool state);
6767   DECLARE_FLOPPY_FORMATS( b2m_floppy_formats );
6868};
6969
trunk/src/mess/includes/special.h
r19613r19614
9595   UINT32 screen_update_specimx(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
9696   TIMER_CALLBACK_MEMBER(special_reset);
9797   TIMER_CALLBACK_MEMBER(setup_pit8253_gates);
98   void fdc_drq(bool state);   
98   void fdc_drq(bool state);
9999   DECLARE_FLOPPY_FORMATS( specimx_floppy_formats );
100100};
101101
trunk/src/mess/drivers/abc1600.c
r19613r19614
12721272
12731273   // drive select
12741274   floppy_image_device *floppy = NULL;
1275   
1275
12761276   if (BIT(data, 0)) floppy = m_floppy0->get_device();
12771277   if (BIT(data, 1)) floppy = m_floppy1->get_device();
12781278   if (BIT(data, 2)) floppy = m_floppy2->get_device();
1279   
1279
12801280   m_fdc->set_floppy(floppy);
12811281
12821282   // floppy motor
r19613r19614
17061706//-------------------------------------------------
17071707/*
17081708static LEGACY_FLOPPY_OPTIONS_START( abc1600 )
1709   LEGACY_FLOPPY_OPTION(abc1600, "dsk", "Luxor ABC 1600", basicdsk_identify_default, basicdsk_construct_default, NULL,
1710      HEADS([2])
1711      TRACKS([80])
1712      SECTORS([16])
1713      SECTOR_LENGTH([256])
1714      FIRST_SECTOR_ID([1]))
1709    LEGACY_FLOPPY_OPTION(abc1600, "dsk", "Luxor ABC 1600", basicdsk_identify_default, basicdsk_construct_default, NULL,
1710        HEADS([2])
1711        TRACKS([80])
1712        SECTORS([16])
1713        SECTOR_LENGTH([256])
1714        FIRST_SECTOR_ID([1]))
17151715LEGACY_FLOPPY_OPTIONS_END
17161716*/
17171717
trunk/src/mess/drivers/mikromik.c
r19613r19614
686686FLOPPY_FORMATS_END
687687/*
688688FLOPPY_FORMATS_MEMBER( mm2_state::floppy_formats )
689   FLOPPY_MM2_FORMAT
689    FLOPPY_MM2_FORMAT
690690FLOPPY_FORMATS_END
691691*/
692692static SLOT_INTERFACE_START( mm1_floppies )
trunk/src/mess/drivers/esq1.c
r19613r19614
5050    - Keyboard
5151    - Analog filters and VCA on the back end of the 5503
5252    - SQ-80 support (additional banking, FDC)
53 
54NOTES:
55   Commands from KPC are all 2 bytes
56 
57   first byte: command code, bit 7 is 1 = press, 0 = release
58   second byte is source: 00 = panel  01 = internal keyboard
59   
60   04 SEQ
61   05 CART A
62   06 CART B
63   07 INT
64   08 1 / SEQ 1
65   09 2 / SEQ 2
66   0A 3 / SEQ 3
67   0B 4 / SONG
68   0C COMPARE
69   0D DATA UP
70   0E DATA DOWN
71   0F WRITE
72   10 = UPPER 1 (buttons above display)
73   11 = UPPER 2
74   12 = UPPER 3
75   13 = UPPER 4
76   14 = UPPER 5
77   15 = LOWER 1 (buttons below display)
78   16 = LOWER 2
79   17 = LOWER 3
80   18 = LOWER 4
81   19 = LOWER 5
82   1a = LFO 1
83   1b = ENV 2
84   1c = MASTER
85   1d = CREATE / ERASE
86   1e = SELECT
87   1f = RECORD
88   20 = STORAGE
89   21 = EDIT
90   22 = MIX
91   23 = STOP / CONT
92   24 = MIDI
93   25 = CONTROL
94   26 = LOCATE
95   27 = PLAY
96   28 = OSC 1
97   29 = OSC 2
98   2A = OSC 3
99   2B = ENV 1
100   2C = DCA 1
101   2D = DCA 2
102   2E = DCA 3
103   2F = LFO 2
104   30 = LFO 3
105   31 = FILTER
106   32 = ENV 4
107   33 = ENV 3
108   34 = DCA 4
109   35 = MODES
110   36 = SPLIT / LAYER
111 
53
54NOTES:
55    Commands from KPC are all 2 bytes
56
57    first byte: command code, bit 7 is 1 = press, 0 = release
58    second byte is source: 00 = panel  01 = internal keyboard
59
60    04 SEQ
61    05 CART A
62    06 CART B
63    07 INT
64    08 1 / SEQ 1
65    09 2 / SEQ 2
66    0A 3 / SEQ 3
67    0B 4 / SONG
68    0C COMPARE
69    0D DATA UP
70    0E DATA DOWN
71    0F WRITE
72    10 = UPPER 1 (buttons above display)
73    11 = UPPER 2
74    12 = UPPER 3
75    13 = UPPER 4
76    14 = UPPER 5
77    15 = LOWER 1 (buttons below display)
78    16 = LOWER 2
79    17 = LOWER 3
80    18 = LOWER 4
81    19 = LOWER 5
82    1a = LFO 1
83    1b = ENV 2
84    1c = MASTER
85    1d = CREATE / ERASE
86    1e = SELECT
87    1f = RECORD
88    20 = STORAGE
89    21 = EDIT
90    22 = MIX
91    23 = STOP / CONT
92    24 = MIDI
93    25 = CONTROL
94    26 = LOCATE
95    27 = PLAY
96    28 = OSC 1
97    29 = OSC 2
98    2A = OSC 3
99    2B = ENV 1
100    2C = DCA 1
101    2D = DCA 2
102    2E = DCA 3
103    2F = LFO 2
104    30 = LFO 3
105    31 = FILTER
106    32 = ENV 4
107    33 = ENV 3
108    34 = DCA 4
109    35 = MODES
110    36 = SPLIT / LAYER
111
112112***************************************************************************/
113113
114114#include "emu.h"
r19613r19614
220220   AM_RANGE(0x4000, 0x5fff) AM_RAM               // SEQRAM
221221   AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("es5503", es5503_device, read, write)
222222   AM_RANGE(0x6400, 0x640f) AM_DEVREADWRITE_LEGACY("duart", duart68681_r, duart68681_w)
223   AM_RANGE(0x6800, 0x68ff) AM_NOP   
223   AM_RANGE(0x6800, 0x68ff) AM_NOP
224224
225225   AM_RANGE(0x7000, 0x7fff) AM_ROMBANK("osbank")
226226   AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("osrom", 0x8000)   // OS "high" ROM is always mapped here
trunk/src/mess/drivers/apple2.c
r19613r19614
10921092
10931093ROM_START(am64)
10941094   ROM_REGION(0x2000,"gfx1",0)
1095    ROM_LOAD( "gm-2716.bin",  0x0000, 0x0800, CRC(863e657f) SHA1(cc954204c503bc545ec0d08862483aaad83805d5) )
1095    ROM_LOAD( "gm-2716.bin",  0x0000, 0x0800, CRC(863e657f) SHA1(cc954204c503bc545ec0d08862483aaad83805d5) )
10961096
10971097   ROM_REGION(0x4700,"maincpu",0)
1098    ROM_LOAD( "am64-27128.bin", 0x0000, 0x4000, CRC(f25cdc7b) SHA1(235e72b77695938a9df8781f5bea3cbbbe1f4c76) )
1098    ROM_LOAD( "am64-27128.bin", 0x0000, 0x4000, CRC(f25cdc7b) SHA1(235e72b77695938a9df8781f5bea3cbbbe1f4c76) )
10991099
11001100    ROM_REGION(0x2000, "spares", 0)
11011101    // parallel card ROM
1102    ROM_LOAD( "ap-2716.bin",  0x0000, 0x0800, CRC(c6990f08) SHA1(e7daf63639234e46738a4d78a49287d11ccaf537) )
1102    ROM_LOAD( "ap-2716.bin",  0x0000, 0x0800, CRC(c6990f08) SHA1(e7daf63639234e46738a4d78a49287d11ccaf537) )
11031103    // i8048 keyboard MCU ROM
1104    ROM_LOAD( "tk10.bin",     0x0800, 0x0800, CRC(a06c5b78) SHA1(27c5160b913e0f62120f384026d24b9f1acb6970) )
1104    ROM_LOAD( "tk10.bin",     0x0800, 0x0800, CRC(a06c5b78) SHA1(27c5160b913e0f62120f384026d24b9f1acb6970) )
11051105ROM_END
11061106
11071107
trunk/src/mess/drivers/v1050.c
r19613r19614
970970
971971/*
972972static LEGACY_FLOPPY_OPTIONS_START( v1050 )
973   LEGACY_FLOPPY_OPTION( v1050, "dsk", "Visual 1050 disk image", basicdsk_identify_default, basicdsk_construct_default, NULL,
974      HEADS([1])
975      TRACKS([80])
976      SECTORS([10])
977      SECTOR_LENGTH([512])
978      FIRST_SECTOR_ID([1]))
973    LEGACY_FLOPPY_OPTION( v1050, "dsk", "Visual 1050 disk image", basicdsk_identify_default, basicdsk_construct_default, NULL,
974        HEADS([1])
975        TRACKS([80])
976        SECTORS([10])
977        SECTOR_LENGTH([512])
978        FIRST_SECTOR_ID([1]))
979979LEGACY_FLOPPY_OPTIONS_END
980980*/
981981
trunk/src/mess/drivers/amiga.c
r19613r19614
638638   MCFG_DEVICE_DISABLE()
639639
640640   MCFG_SCREEN_ADD("screen", RASTER)
641//   MCFG_SCREEN_REFRESH_RATE(59.997)
642//   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
641//  MCFG_SCREEN_REFRESH_RATE(59.997)
642//  MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
643643
644644   MCFG_MACHINE_RESET_OVERRIDE(amiga_state, amiga )
645645
r19613r19614
647647
648648    /* video hardware */
649649   MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
650//   MCFG_SCREEN_SIZE(228*4, 262)
651//   MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 262-1)
650//  MCFG_SCREEN_SIZE(228*4, 262)
651//  MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 262-1)
652652   MCFG_SCREEN_RAW_PARAMS(AMIGA_68000_NTSC_CLOCK*2,228*4,214,228*4,262,34,262)
653653   MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
654654
r19613r19614
750750
751751   MCFG_SCREEN_MODIFY("screen")
752752   MCFG_SCREEN_RAW_PARAMS(AMIGA_68000_PAL_CLOCK*2,228*4,214,228*4,312,34,312)
753//   MCFG_SCREEN_REFRESH_RATE(50)
754//   MCFG_SCREEN_SIZE(228*4, 312)
755//   MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 312-1)
753//  MCFG_SCREEN_REFRESH_RATE(50)
754//  MCFG_SCREEN_SIZE(228*4, 312)
755//  MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 312-1)
756756
757757   /* cia */
758758   MCFG_DEVICE_REMOVE("cia_0")
r19613r19614
833833
834834   /* TODO: params */
835835   MCFG_SCREEN_ADD("screen", RASTER)
836//   MCFG_SCREEN_REFRESH_RATE(59.997)
837//   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
838//   MCFG_SCREEN_SIZE(512*2, 312)
839//   MCFG_SCREEN_VISIBLE_AREA((129-8-8)*2, (449+8-1+8)*2, 44-8, 300+8-1)
840//   MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_NTSC_CLOCK,512*2,(129-8-8)*2,(449+8-1+8)*2,312,44-8,300+8)
836//  MCFG_SCREEN_REFRESH_RATE(59.997)
837//  MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
838//  MCFG_SCREEN_SIZE(512*2, 312)
839//  MCFG_SCREEN_VISIBLE_AREA((129-8-8)*2, (449+8-1+8)*2, 44-8, 300+8-1)
840//  MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_NTSC_CLOCK,512*2,(129-8-8)*2,(449+8-1+8)*2,312,44-8,300+8)
841841   MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_NTSC_CLOCK,228*4,214,228*4,262,34,262)
842842
843843   MCFG_SCREEN_UPDATE_DRIVER(a1200_state, screen_update_amiga_aga)
r19613r19614
894894   /* video hardware */
895895   /* TODO: params */
896896   MCFG_SCREEN_MODIFY("screen")
897//   MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_PAL_CLOCK,512*2,(129-8-8)*2,(449+8-1+8)*2,312,44-8,300+8)
897//  MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_PAL_CLOCK,512*2,(129-8-8)*2,(449+8-1+8)*2,312,44-8,300+8)
898898   MCFG_SCREEN_RAW_PARAMS(AMIGA_68EC020_PAL_CLOCK,228*4,214,228*4,312,34,312)
899899
900900   /* sound hardware */
r19613r19614
939939    /* video hardware */
940940   MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
941941   MCFG_SCREEN_RAW_PARAMS(A3000_XTAL,228*4,214,228*4,262,34,262)
942//   MCFG_SCREEN_SIZE(228*4, 262)
943//   MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 262-1)
942//  MCFG_SCREEN_SIZE(228*4, 262)
943//  MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 262-1)
944944   MCFG_SCREEN_UPDATE_DRIVER(amiga_state, screen_update_amiga)
945945
946946   MCFG_PALETTE_LENGTH(4096)
r19613r19614
982982
983983   MCFG_SCREEN_MODIFY("screen")
984984   MCFG_SCREEN_RAW_PARAMS(A3000_XTAL,228*4,214,228*4,312,34,312)
985//   MCFG_SCREEN_REFRESH_RATE(50)
986//   MCFG_SCREEN_SIZE(228*4, 312)
987//   MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 312-1)
985//  MCFG_SCREEN_REFRESH_RATE(50)
986//  MCFG_SCREEN_SIZE(228*4, 312)
987//  MCFG_SCREEN_VISIBLE_AREA(214, (228*4)-1, 34, 312-1)
988988
989989   /* cia */
990990   MCFG_DEVICE_REMOVE("cia_0")
trunk/src/mess/drivers/modellot.c
r19613r19614
11/***************************************************************************
2   
2
33        General Processor Modello T
44
55        10/12/2012 Skeleton driver.
r19613r19614
2222   required_device<cpu_device> m_maincpu;
2323   required_shared_ptr<UINT8> m_video_ram;
2424   UINT32 screen_update_modellot(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
25   
25
2626   virtual void machine_reset();
27   
27
2828   DECLARE_READ8_MEMBER(modellot_77);
2929   DECLARE_READ8_MEMBER(modellot_ff);
3030};
r19613r19614
7070   1,            /* 1 bits per pixel */
7171   {0},            /* no bitplanes; 1 bit per pixel */
7272   {0,1,2,3,4,5,6,7},
73   {0, 8, 2 * 8, 3 * 8, 4 * 8, 5 * 8, 6 * 8, 7 * 8, 
73   {0, 8, 2 * 8, 3 * 8, 4 * 8, 5 * 8, 6 * 8, 7 * 8,
7474    0x400*8, 0x401*8, 0x402*8, 0x403*8, 0x404*8, 0x405*8, 0x406*8, 0x407*8},
7575   8*8            /* space between characters */
7676};
r19613r19614
9999   /* basic machine hardware */
100100   MCFG_CPU_ADD("maincpu",Z80, XTAL_4MHz)
101101   MCFG_CPU_PROGRAM_MAP(modellot_mem)
102   MCFG_CPU_IO_MAP(modellot_io)   
103   
102   MCFG_CPU_IO_MAP(modellot_io)
103
104104   /* video hardware */
105105   MCFG_SCREEN_ADD("screen", RASTER)
106106   MCFG_SCREEN_REFRESH_RATE(50)
r19613r19614
108108   MCFG_SCREEN_SIZE(64*8, 16*16)
109109   MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*16-1)
110110   MCFG_SCREEN_UPDATE_DRIVER(modellot_state, screen_update_modellot)
111   
111
112112   MCFG_GFXDECODE( modellot )
113113
114114   MCFG_PALETTE_LENGTH(2)
trunk/src/mess/drivers/a7000.c
r19613r19614
829829   ROM_SYSTEM_BIOS( 2, "439", "RiscOS 4.39" )
830830   ROMX_LOAD( "riscos439_1.bin", 0x000000, 0x200000, CRC(dab94cb8) SHA1(a81fb7f1a8117f85e82764675445092d769aa9af), ROM_GROUPWORD | ROM_SKIP(2) | ROM_BIOS(3))
831831   ROMX_LOAD( "riscos439_2.bin", 0x000002, 0x200000, CRC(22e6a5d4) SHA1(b73b73c87824045130840a19ce16fa12e388c039), ROM_GROUPWORD | ROM_SKIP(2) | ROM_BIOS(3))
832     ROM_REGION( 0x800000, "vram", ROMREGION_ERASE00 )
832   ROM_REGION( 0x800000, "vram", ROMREGION_ERASE00 )
833833ROM_END
834834
835835/***************************************************************************
trunk/src/mess/drivers/a7800.c
r19613r19614
2121    2012/12/05 Robert Tuccitto  Implemented proper IRE and phase
2222               value to the palette
2323
24    2012/12/14 Robert Tuccitto  Adjusted colorburst/tint/hue of entire
24    2012/12/14 Robert Tuccitto  Adjusted colorburst/tint/hue of entire
2525               palette to closer reflect default hardware configuration
2626               setting of ~180 degrees.  Palette settings now correspond
2727               documented and calculated settings as follows:
trunk/src/mess/drivers/pc9801.c
r19613r19614
77    TODO:
88    - proper 8251 uart hook-up on keyboard
99    - SASI /SCSI support;
10   - kanji support;
10    - kanji support;
1111    - Write a PC80S31K device (also used on PC-8801 and PC-88VA, it's the FDC + Z80 sub-system);
12   - Finish DIP-Switches support
13   - text scrolling
14   - GRCG+
15   - EGC
16   - rewrite using slot devices
17   - some later SWs put "Invalid command byte 05" (Absolutely Mahjong on Epson logo)
18   - Basic games are mostly untested, but I think that upd7220 fails on those (Adventureland, Xevious)
12    - Finish DIP-Switches support
13    - text scrolling
14    - GRCG+
15    - EGC
16    - rewrite using slot devices
17    - some later SWs put "Invalid command byte 05" (Absolutely Mahjong on Epson logo)
18    - Basic games are mostly untested, but I think that upd7220 fails on those (Adventureland, Xevious)
1919    - investigate on POR bit
20   - PC-9801RS+ should support uPD4990 RTC
20    - PC-9801RS+ should support uPD4990 RTC
2121
2222    TODO (PC-9801RS):
2323    - extra features;
r19613r19614
2828    - fix CPU for some clones;
2929    - "cache error"
3030    - undumped IDE ROM, kludged to work
31   - slave PIC never enables floppy IRQ (PC=0xffd08)
32   - Compatibility is untested;
31    - slave PIC never enables floppy IRQ (PC=0xffd08)
32    - Compatibility is untested;
3333
3434    TODO: (PC-486MU)
3535    - Tries to read port C of i8255_sys (-> 0x35) at boot without setting up the control
r19613r19614
3737    - Dies on ARTIC check;
3838    - Presumably one ROM is undumped?
3939
40   floppy issues TODO (certain fail)
41   - Unsupported disk types: *.dsk, *.nfd, *.fdd, *.nhd
42   - 46 Okunen Monogatari - The Shinkaron
43   - AD&D Champions of Krynn
44   - AI Shougi (asserts upon loading)
45   - Aoki Ookami no Shiroki Mejika - Gengis Khan
46   - Arcshu
47   - Arcus 2
48   - Art Jigsaw
49   - Atlantia (disk swap?)
50   - Azusa 108 Jimusho
51   - Bacta 2
52   - BattleTech (disk swap?)
53   - Bay City Elegy (disk swap?)
54   - Beast (keeps reading command sense)
55   - Beast 2
56   - Bells Avenue (disk swap?)
40    floppy issues TODO (certain fail)
41    - Unsupported disk types: *.dsk, *.nfd, *.fdd, *.nhd
42    - 46 Okunen Monogatari - The Shinkaron
43    - AD&D Champions of Krynn
44    - AI Shougi (asserts upon loading)
45    - Aoki Ookami no Shiroki Mejika - Gengis Khan
46    - Arcshu
47    - Arcus 2
48    - Art Jigsaw
49    - Atlantia (disk swap?)
50    - Azusa 108 Jimusho
51    - Bacta 2
52    - BattleTech (disk swap?)
53    - Bay City Elegy (disk swap?)
54    - Beast (keeps reading command sense)
55    - Beast 2
56    - Bells Avenue (disk swap?)
5757
58   - Bokosuka Wars
59   - Dokkin Minako Sensei (2dd image)
60   - Jangou 2: floppy fails to load after the title screen;
61   - Okuman Chouja 2: fails loading in PC-9801RS only ("packed file is corrupt"). Maybe a 386 core bug?
62   - Quarth: fails loading in PC-9801RS only ("packed file is corrupt"). Maybe a 386 core bug?
58    - Bokosuka Wars
59    - Dokkin Minako Sensei (2dd image)
60    - Jangou 2: floppy fails to load after the title screen;
61    - Okuman Chouja 2: fails loading in PC-9801RS only ("packed file is corrupt"). Maybe a 386 core bug?
62    - Quarth: fails loading in PC-9801RS only ("packed file is corrupt"). Maybe a 386 core bug?
6363
64   List of per-game TODO:
65   - 4D Boxing: inputs are unresponsive
66   - A Ressha de Ikou 2: missing text (PC-9801RS only);
67   - Absolutely Mahjong: Transitions are too fast.
68   - Agumix Selects!: needs GDC = 5 MHz, interlace doesn't work properly;
69   - Aki no Tsukasa no Fushigi no Kabe: moans with a kanji error
70      "can't use (this) on a vanilla PC-9801, a PC-9801E nor a PC-9801U. Please turn off the computer and turn it on again."
71   - Alice no Yakata: doesn't set bitmap interlace properly, can't do disk swaps via the File Manager;
72   - Animahjong V3: accesses port 0x88;
73   - Anniversary - Memories of Summer: thinks that a button is pressed;
74   - Another Genesis: fails loading;
75   - Apple Club 1: how to pass an hand?
76   - Arctic: keyboard doesn't work?
77   - Arcus 3: moans with a JP message "not enough memory (needs 640kb to start)";
78   - Armored Flagship Atragon: needs HDD install
79   - Arquephos: needs extra sound board(s)?
80   - Asoko no Koufuku: black screen with BGM, waits at 0x225f6;
81   - Aura Battler Dumbine: upd7220: unimplemented FIGD, has layer clearance bugs on gameplay;
82   - Bakasuka Wars: drawing seems busted (either mouse or upd7220)
83   - Band-Kun: (how to run this without installing?)
84   - Battle Chess: wants some dip-switches to be on in DSW4, too slow during IA thinking?
64    List of per-game TODO:
65    - 4D Boxing: inputs are unresponsive
66    - A Ressha de Ikou 2: missing text (PC-9801RS only);
67    - Absolutely Mahjong: Transitions are too fast.
68    - Agumix Selects!: needs GDC = 5 MHz, interlace doesn't work properly;
69    - Aki no Tsukasa no Fushigi no Kabe: moans with a kanji error
70       "can't use (this) on a vanilla PC-9801, a PC-9801E nor a PC-9801U. Please turn off the computer and turn it on again."
71    - Alice no Yakata: doesn't set bitmap interlace properly, can't do disk swaps via the File Manager;
72    - Animahjong V3: accesses port 0x88;
73    - Anniversary - Memories of Summer: thinks that a button is pressed;
74    - Another Genesis: fails loading;
75    - Apple Club 1: how to pass an hand?
76    - Arctic: keyboard doesn't work?
77    - Arcus 3: moans with a JP message "not enough memory (needs 640kb to start)";
78    - Armored Flagship Atragon: needs HDD install
79    - Arquephos: needs extra sound board(s)?
80    - Asoko no Koufuku: black screen with BGM, waits at 0x225f6;
81    - Aura Battler Dumbine: upd7220: unimplemented FIGD, has layer clearance bugs on gameplay;
82    - Bakasuka Wars: drawing seems busted (either mouse or upd7220)
83    - Band-Kun: (how to run this without installing?)
84    - Battle Chess: wants some dip-switches to be on in DSW4, too slow during IA thinking?
8585
86   - Dragon Buster: slight issue with window masking;
87   - Far Side Moon: doesn't detect sound board (tied to 0x00ec ports)
88   - Jan Borg Suzume: gets stuck at a pic8259 read;
89   - Jump Hero: right status display isn't shown during gameplay (changes the mode dynamically?)
90   - Lovely Horror: Doesn't show kanji, tries to read it thru the 0xa9 port;
91   - Quarth: should do a split screen effect, it doesn't hence there are broken gfxs
92   - Quarth: uploads a PCG charset
93   - Runner's High: wrong double height on the title screen;
94   - Uchiyama Aki no Chou Bangai: keyboard irq is fussy (sometimes it doesn't register a key press);
95   - Uno: uses EGC
86    - Dragon Buster: slight issue with window masking;
87    - Far Side Moon: doesn't detect sound board (tied to 0x00ec ports)
88    - Jan Borg Suzume: gets stuck at a pic8259 read;
89    - Jump Hero: right status display isn't shown during gameplay (changes the mode dynamically?)
90    - Lovely Horror: Doesn't show kanji, tries to read it thru the 0xa9 port;
91    - Quarth: should do a split screen effect, it doesn't hence there are broken gfxs
92    - Quarth: uploads a PCG charset
93    - Runner's High: wrong double height on the title screen;
94    - Uchiyama Aki no Chou Bangai: keyboard irq is fussy (sometimes it doesn't register a key press);
95    - Uno: uses EGC
9696
97   per-game TODO (PC-9821):
98   - Battle Skin Panic: gfx bugs at the Gainax logo, it crashes after it;
99   - Policenauts: EMS error at boot;
97    per-game TODO (PC-9821):
98    - Battle Skin Panic: gfx bugs at the Gainax logo, it crashes after it;
99    - Policenauts: EMS error at boot;
100100
101   Notes:
102   - Apple Club 1/2 needs data disks to load properly;
103   - Beast Lord: needs a titan.fnt, in MS-DOS
101    Notes:
102    - Apple Club 1/2 needs data disks to load properly;
103    - Beast Lord: needs a titan.fnt, in MS-DOS
104104
105105========================================================================================
106106
r19613r19614
341341      m_hgdc1(*this, "upd7220_chr"),
342342      m_hgdc2(*this, "upd7220_btm"),
343343      m_opn(*this, "opn"),
344//      m_opna(*this, "opna"),
344//      m_opna(*this, "opna"),
345345      m_video_ram_1(*this, "video_ram_1"),
346346      m_video_ram_2(*this, "video_ram_2"){ }
347347
r19613r19614
354354   required_device<upd7220_device> m_hgdc1;
355355   required_device<upd7220_device> m_hgdc2;
356356   required_device<ym2203_device> m_opn;
357//   optional_device<ym2608_device> m_opna;
357//  optional_device<ym2608_device> m_opna;
358358
359359   required_shared_ptr<UINT8> m_video_ram_1;
360360   required_shared_ptr<UINT8> m_video_ram_2;
r19613r19614
481481   DECLARE_WRITE8_MEMBER(pc9810rs_fdc_ctrl_w);
482482   DECLARE_READ8_MEMBER(pc9801rs_2hd_r);
483483   DECLARE_WRITE8_MEMBER(pc9801rs_2hd_w);
484//   DECLARE_READ8_MEMBER(pc9801rs_2dd_r);
485//   DECLARE_WRITE8_MEMBER(pc9801rs_2dd_w);
484//  DECLARE_READ8_MEMBER(pc9801rs_2dd_r);
485//  DECLARE_WRITE8_MEMBER(pc9801rs_2dd_w);
486486   DECLARE_WRITE8_MEMBER(pc9801rs_video_ff_w);
487487   DECLARE_WRITE8_MEMBER(pc9801rs_a0_w);
488488   DECLARE_READ8_MEMBER(pc980ux_memory_r);
r19613r19614
597597   DECLARE_WRITE_LINE_MEMBER(fdc_2hd_drq);
598598   DECLARE_WRITE_LINE_MEMBER(fdc_2dd_irq);
599599   DECLARE_WRITE_LINE_MEMBER(fdc_2dd_drq);
600//   DECLARE_WRITE_LINE_MEMBER(pc9801rs_fdc_irq);
600//  DECLARE_WRITE_LINE_MEMBER(pc9801rs_fdc_irq);
601601
602602   DECLARE_READ8_MEMBER(ppi_mouse_porta_r);
603603   DECLARE_READ8_MEMBER(ppi_mouse_portb_r);
r19613r19614
752752      if(knj_tile)
753753      {
754754         /* Note: bit 7 doesn't really count, if a kanji is enabled then the successive tile is always the second part of it.
755            Trusted with Alice no Yakata, Animahjong V3, Aki no Tsukasa no Fushigi no Kabe, Apros ...
756         */
755               Trusted with Alice no Yakata, Animahjong V3, Aki no Tsukasa no Fushigi no Kabe, Apros ...
756            */
757757         //kanji_lr = (knj_tile & 0x80) >> 7;
758758         //kanji_lr |= (tile & 0x80) >> 7; // Tokimeki Sports Gal 3
759759         tile &= 0x7f;
r19613r19614
764764            x_step = 1;
765765         else
766766            x_step = 2;
767//         kanji_lr = 0;
767//          kanji_lr = 0;
768768      }
769769      else
770770         x_step = 1;
r19613r19614
804804                     tile_data = 0;
805805
806806                     /*
807                        gfx strip mode:
807                                gfx strip mode:
808808
809                        number refers to the bit number in the tile data.
810                        This mode is identical to the one seen in PC-8801
811                        00004444
812                        11115555
813                        22226666
814                        33337777
815                     */
809                                number refers to the bit number in the tile data.
810                                This mode is identical to the one seen in PC-8801
811                                00004444
812                                11115555
813                                22226666
814                                33337777
815                            */
816816
817817                     gfx_bit = (xi & 4);
818818                     gfx_bit+= (yi & (2 << (char_size == 16 ? 0x01 : 0x00)))>>(1+(char_size == 16));
r19613r19614
976976   }
977977   else // odd
978978   {
979//      printf("Write to DMA bank register %d %02x\n",((offset >> 1)+1) & 3,data);
979//      printf("Write to DMA bank register %d %02x\n",((offset >> 1)+1) & 3,data);
980980      m_dma_offset[((offset >> 1)+1) & 3] = data & 0x0f;
981981   }
982982}
r19613r19614
11411141   if((offset & 1) == 0)
11421142   {
11431143      /*
1144      TODO: this is my best bet so far. Register 4 is annoying, the pattern seems to be:
1145      Write to video FF register Graphic -> 00
1146      Write to video FF register 200 lines -> 0x
1147      Write to video FF register 200 lines -> 00
1144        TODO: this is my best bet so far. Register 4 is annoying, the pattern seems to be:
1145        Write to video FF register Graphic -> 00
1146        Write to video FF register 200 lines -> 0x
1147        Write to video FF register 200 lines -> 00
11481148
1149      where x is the current mode.
1150      */
1149        where x is the current mode.
1150        */
11511151      switch((data & 0x0e) >> 1)
11521152      {
11531153         case 1:
r19613r19614
12131213{
12141214   if((offset & 1) == 0)
12151215   {
1216//      printf("Write to display register [%02x] %02x\n",offset+0x70,data);
1216//      printf("Write to display register [%02x] %02x\n",offset+0x70,data);
12171217      m_txt_scroll_reg[offset >> 1] = data;
12181218
12191219      //popmessage("%02x %02x %02x %02x",m_txt_scroll_reg[0],m_txt_scroll_reg[1],m_txt_scroll_reg[2],m_txt_scroll_reg[3]);
r19613r19614
12231223      if(offset < 0x08)
12241224         pit8253_w(machine().device("pit8253"), space, (offset & 6) >> 1, data);
12251225      //else
1226      //   printf("Write to undefined port [%02x] <- %02x\n",offset+0x70,data);
1226      //  printf("Write to undefined port [%02x] <- %02x\n",offset+0x70,data);
12271227   }
12281228}
12291229
r19613r19614
15961596   if((offset & 1) == 0)
15971597   {
15981598      //if(m_has_opna)
1599      //   return ym2608_r(m_opna, space, offset >> 1);
1599      //  return ym2608_r(m_opna, space, offset >> 1);
16001600
16011601      return offset & 4 ? 0xff : ym2203_r(m_opn,space, offset >> 1);
16021602   }
r19613r19614
16121612   if((offset & 1) == 0)
16131613   {
16141614      /*if(m_has_opna)
1615         ym2608_w(m_opna,space, offset >> 1,data);
1616      else */
1615            ym2608_w(m_opna,space, offset >> 1,data);
1616        else */
16171617      if((offset & 4) == 0)
16181618         ym2203_w(m_opn,space, offset >> 1,data);
16191619   }
r19613r19614
17061706
17071707   pcg_offset = m_font_addr << 5;
17081708   pcg_offset|= offset & 0x1f;
1709//   pcg_offset|= m_font_lr;
1709//  pcg_offset|= m_font_lr;
17101710
17111711   return m_kanji_rom[pcg_offset];
17121712}
r19613r19614
18051805      return 0xff;
18061806   }
18071807
1808   return    pc9801_70_r(space,offset);;
1808   return   pc9801_70_r(space,offset);;
18091809}
18101810
18111811WRITE8_MEMBER(pc9801_state::pc9801rs_70_w)
18121812{
18131813   if(offset == 0xc)
18141814   {
1815//      printf("%02x GRCG MODE\n",data);
1815//      printf("%02x GRCG MODE\n",data);
18161816      m_grcg.mode = data;
18171817      m_grcg.tile_index = 0;
18181818      return;
18191819   }
18201820   else if(offset == 0x0e)
18211821   {
1822//      printf("%02x GRCG TILE %02x\n",data,m_grcg.tile_index);
1822//      printf("%02x GRCG TILE %02x\n",data,m_grcg.tile_index);
18231823      m_grcg.tile[m_grcg.tile_index] = data;
18241824      m_grcg.tile_index ++;
18251825      m_grcg.tile_index &= 3;
r19613r19614
18511851   else if(offset >= 0x00100000 && offset <= 0x00100000+m_ram_size-1)      { return pc9801rs_ex_wram_r(space,offset-0x00100000); }
18521852   else if(offset >= 0xfffe0000 && offset <= 0xffffffff)                   { return pc9801rs_ipl_r(space,offset & 0x1ffff);      }
18531853
1854//   printf("%08x\n",offset);
1854//  printf("%08x\n",offset);
18551855   return 0x00;
18561856}
18571857
r19613r19614
18861886    ---- ---x select irq
18871887    */
18881888
1889//   machine().device<floppy_connector>("upd765_2hd:0")->get_device()->set_rpm(data & 0x02 ? 360 : 300);
1890//   machine().device<floppy_connector>("upd765_2hd:1")->get_device()->set_rpm(data & 0x02 ? 360 : 300);
1889//  machine().device<floppy_connector>("upd765_2hd:0")->get_device()->set_rpm(data & 0x02 ? 360 : 300);
1890//  machine().device<floppy_connector>("upd765_2hd:1")->get_device()->set_rpm(data & 0x02 ? 360 : 300);
18911891
18921892   machine().device<upd765a_device>("upd765_2hd")->set_rate(data & 0x02 ? 500000 : 250000);
18931893
18941894   m_fdc_ctrl = data;
18951895   //if(data & 0xfc)
1896   //   printf("FDC ctrl called with %02x\n",data);
1896   //  printf("FDC ctrl called with %02x\n",data);
18971897}
18981898
18991899READ8_MEMBER(pc9801_state::pc9801rs_2hd_r)
r19613r19614
19291929            machine().device<floppy_connector>("upd765_2hd:0")->get_device()->mon_w(data & 0x40 ? ASSERT_LINE : CLEAR_LINE);
19301930            machine().device<floppy_connector>("upd765_2hd:1")->get_device()->mon_w(data & 0x40 ? ASSERT_LINE : CLEAR_LINE);
19311931
1932//            machine().device<floppy_connector>("upd765_2hd:0")->get_device()->mon_w(data & 0x08 ? ASSERT_LINE : CLEAR_LINE);
1933//            machine().device<floppy_connector>("upd765_2hd:1")->get_device()->mon_w(data & 0x08 ? ASSERT_LINE : CLEAR_LINE);
1932//              machine().device<floppy_connector>("upd765_2hd:0")->get_device()->mon_w(data & 0x08 ? ASSERT_LINE : CLEAR_LINE);
1933//              machine().device<floppy_connector>("upd765_2hd:1")->get_device()->mon_w(data & 0x08 ? ASSERT_LINE : CLEAR_LINE);
19341934            return;
19351935      }
19361936   }
r19613r19614
19991999         printf("Write to extended video FF register %s -> %02x\n",ex_video_ff_regnames[(data & 0x06) >> 1],data & 1);
20002000      }
20012001      //else
2002      //   printf("Write to extended video FF register %02x\n",data);
2002      //  printf("Write to extended video FF register %02x\n",data);
20032003
20042004      return;
20052005   }
r19613r19614
21122112   AM_RANGE(0x00a0, 0x00af) AM_READWRITE8(pc9801_a0_r,        pc9801rs_a0_w,      0xffffffff) //upd7220 bitmap ports / display registers
21132113   AM_RANGE(0x00bc, 0x00bf) AM_READWRITE8(pc9810rs_fdc_ctrl_r,pc9810rs_fdc_ctrl_w,0xffffffff)
21142114   AM_RANGE(0x00c8, 0x00cf) AM_READWRITE8(pc9801rs_2hd_r,     pc9801rs_2hd_w,     0xffffffff)
2115//   AM_RANGE(0x00ec, 0x00ef) PC-9801-86 sound board
2115//  AM_RANGE(0x00ec, 0x00ef) PC-9801-86 sound board
21162116   AM_RANGE(0x00f0, 0x00ff) AM_READWRITE8(pc9801rs_f0_r,      pc9801rs_f0_w,      0xffffffff)
21172117   AM_RANGE(0x0188, 0x018f) AM_READWRITE8(pc9801_opn_r,       pc9801_opn_w,       0xffffffff) //ym2203 opn / <undefined>
21182118   AM_RANGE(0x0438, 0x043b) AM_READWRITE8(pc9801rs_access_ctrl_r,pc9801rs_access_ctrl_w,0xffffffff)
r19613r19614
22322232   /* TODO: window bank at 0xa0000 - 0xbffff */
22332233
22342234   if      (                        offset <= 0x0009ffff)                   { return pc9801rs_wram_r(space,offset);               }
2235//   else if(offset >= 0x00080000 && offset <= 0x0009ffff)               { return pc9821_winram_r(space,offset & 0x1ffff);     }
2235//  else if(offset >= 0x00080000 && offset <= 0x0009ffff)                   { return pc9821_winram_r(space,offset & 0x1ffff);     }
22362236   else if(offset >= 0x000a0000 && offset <= 0x000a3fff)                   { return pc9801_tvram_r(space,offset-0xa0000);        }
22372237   else if(offset >= 0x000a4000 && offset <= 0x000a4fff)                   { return pc9801rs_knjram_r(space,offset & 0xfff);     }
22382238   else if(offset >= 0x000a8000 && offset <= 0x000bffff)                   { return pc9801_gvram_r(space,offset-0xa8000);        }
r19613r19614
22612261   /* TODO: window bank at 0xa0000 - 0xbffff */
22622262
22632263   if      (                        offset <= 0x0009ffff)                   { pc9801rs_wram_w(space,offset,data);                  }
2264//   else if(offset >= 0x00080000 && offset <= 0x0009ffff)               { pc9821_winram_w(space,offset & 0x1ffff,data);        }
2264//  else if(offset >= 0x00080000 && offset <= 0x0009ffff)                   { pc9821_winram_w(space,offset & 0x1ffff,data);        }
22652265   else if(offset >= 0x000a0000 && offset <= 0x000a3fff)                   { pc9801_tvram_w(space,offset-0xa0000,data);           }
22662266   else if(offset >= 0x000a4000 && offset <= 0x000a4fff)                   { pc9801rs_knjram_w(space,offset & 0xfff,data);        }
22672267   else if(offset >= 0x000a8000 && offset <= 0x000bffff)                   { pc9801_gvram_w(space,offset-0xa8000,data);           }
r19613r19614
22732273   else if(offset >= 0x00100000 && offset <= 0x00100000+m_ram_size-1)      { pc9801rs_ex_wram_w(space,offset-0x00100000,data);    }
22742274   else if(offset >= 0x00f00000 && offset <= 0x00f9ffff)               { pc9821_ext_gvram_w(space,offset-0x00f00000,data);    }
22752275   //else
2276   //   printf("%08x %08x\n",offset,data);
2276   //  printf("%08x %08x\n",offset,data);
22772277
22782278}
22792279
r19613r19614
22842284      m_ex_video_ff[(data & 0xfe) >> 1] = data & 1;
22852285
22862286      //if((data & 0xfe) == 0x20)
2287      //   printf("%02x\n",data & 1);
2287      //  printf("%02x\n",data & 1);
22882288   }
22892289
22902290   /* Intentional fall-through */
r19613r19614
29272927   PORT_MODIFY("ROM_LOAD")
29282928   PORT_BIT( 0x03, IP_ACTIVE_LOW, IPT_UNUSED )
29292929
2930//   PORT_START("SOUND_CONFIG")
2931//   PORT_CONFNAME( 0x01, 0x00, "Sound Type" )
2932//   PORT_CONFSETTING(    0x00, "YM2203 (OPN)" )
2933//   PORT_CONFSETTING(    0x01, "YM2608 (OPNA)" )
2930//  PORT_START("SOUND_CONFIG")
2931//  PORT_CONFNAME( 0x01, 0x00, "Sound Type" )
2932//  PORT_CONFSETTING(    0x00, "YM2203 (OPN)" )
2933//  PORT_CONFSETTING(    0x01, "YM2608 (OPNA)" )
29342934INPUT_PORTS_END
29352935
29362936static INPUT_PORTS_START( pc9821 )
r19613r19614
31203120   m_fdc_2hd->tc_w(state);
31213121   // TODO: 2dd?
31223122
3123//   printf("TC %02x\n",state);
3123//  printf("TC %02x\n",state);
31243124}
31253125
31263126READ8_MEMBER(pc9801_state::pc9801_dma_read_byte)
r19613r19614
31283128   address_space &program = m_maincpu->space(AS_PROGRAM);
31293129   offs_t addr = (m_dma_offset[m_dack] << 16) | offset;
31303130
3131//   printf("%08x\n",addr);
3131//  printf("%08x\n",addr);
31323132
31333133   return program.read_byte(addr);
31343134}
r19613r19614
31393139   address_space &program = m_maincpu->space(AS_PROGRAM);
31403140   offs_t addr = (m_dma_offset[m_dack] << 16) | offset;
31413141
3142//   printf("%08x %02x\n",addr,data);
3142//  printf("%08x %02x\n",addr,data);
31433143
31443144   program.write_byte(addr, data);
31453145}
r19613r19614
32903290         res |= (m_mouse.lx >> isporthi) & 0xf;
32913291   }
32923292
3293//   printf("A\n");
3293//  printf("A\n");
32943294   return res;
32953295}
32963296
r19613r19614
32993299
33003300WRITE8_MEMBER(pc9801_state::ppi_mouse_porta_w)
33013301{
3302//   printf("A %02x\n",data);
3302//  printf("A %02x\n",data);
33033303}
33043304
33053305WRITE8_MEMBER(pc9801_state::ppi_mouse_portb_w)
33063306{
3307//   printf("B %02x\n",data);
3307//  printf("B %02x\n",data);
33083308}
33093309
33103310WRITE8_MEMBER(pc9801_state::ppi_mouse_portc_w)
r19613r19614
33403340
33413341void pc9801_state::fdc_2hd_irq(bool state)
33423342{
3343//   printf("IRQ 2HD %d\n",state);
3343//  printf("IRQ 2HD %d\n",state);
33443344   pic8259_ir3_w(machine().device("pic8259_slave"), state);
33453345}
33463346
33473347void pc9801_state::fdc_2hd_drq(bool state)
33483348{
3349//   printf("%02x DRQ\n",state);
3349//  printf("%02x DRQ\n",state);
33503350   m_dmac->dreq2_w(state ^ 1);
33513351}
33523352
r19613r19614
33623362
33633363void pc9801_state::fdc_2dd_drq(bool state)
33643364{
3365//   printf("%02x DRQ\n",state);
3365//  printf("%02x DRQ\n",state);
33663366   m_dmac->dreq3_w(state ^ 1);
33673367}
33683368
r19613r19614
33803380
33813381void pc9801_state::pc9801rs_fdc_drq(bool state)
33823382{
3383//   printf("DRQ %d\n",state);
3383//  printf("DRQ %d\n",state);
33843384
33853385   if(m_fdc_ctrl & 1)
33863386      m_dmac->dreq2_w(state ^ 1);
r19613r19614
35713571   m_fdc_ctrl = 3;
35723572   m_access_ctrl = 0;
35733573   m_keyb_press = 0xff; // temp kludge, for PC-9821 booting
3574//   m_has_opna = machine().root_device().ioport("SOUND_CONFIG")->read() & 1;
3574//  m_has_opna = machine().root_device().ioport("SOUND_CONFIG")->read() & 1;
35753575}
35763576
35773577MACHINE_RESET_MEMBER(pc9801_state,pc9821)
r19613r19614
35893589      pic8259_ir2_w(machine().device("pic8259_master"), 1);
35903590      m_vrtc_irq_mask = 0; // TODO: this irq auto-masks?
35913591   }
3592//   else
3593//      pic8259_ir2_w(machine().device("pic8259_master"), 0);
3592//  else
3593//      pic8259_ir2_w(machine().device("pic8259_master"), 0);
35943594}
35953595
35963596static void pc9801_sound_irq( device_t *device, int irq )
35973597{
3598//   pc9801_state *state = device->machine().driver_data<pc9801_state>();
3598//  pc9801_state *state = device->machine().driver_data<pc9801_state>();
35993599
36003600   /* TODO: seems to die very often */
36013601   pic8259_ir4_w(device->machine().device("pic8259_slave"), irq);
r19613r19614
36093609   if(m_joy_sel == 0xc0)
36103610      return machine().root_device().ioport("OPN_PA2")->read();
36113611
3612//   0x81?
3613//   printf("%02x\n",m_joy_sel);
3612//  0x81?
3613//  printf("%02x\n",m_joy_sel);
36143614   return 0xff;
36153615}
36163616
r19613r19614
36553655   {
36563656      m_mouse.freq_index ++;
36573657
3658//      printf("%02x\n",m_mouse.freq_index);
3658//      printf("%02x\n",m_mouse.freq_index);
36593659      if(m_mouse.freq_index > m_mouse.freq_reg)
36603660      {
3661//         printf("irq %02x\n",m_mouse.freq_reg);
3661//          printf("irq %02x\n",m_mouse.freq_reg);
36623662         m_mouse.freq_index = 0;
36633663         pic8259_ir5_w(machine().device("pic8259_slave"), 0);
36643664         pic8259_ir5_w(machine().device("pic8259_slave"), 1);
r19613r19614
37913791   MCFG_SOUND_CONFIG(pc98_ym2203_intf)
37923792   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
37933793
3794//   MCFG_SOUND_ADD("opna", YM2608, MAIN_CLOCK_X1*4) // unknown clock / divider
3795//   MCFG_SOUND_CONFIG(pc98_ym2608_intf)
3796//   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
3794//  MCFG_SOUND_ADD("opna", YM2608, MAIN_CLOCK_X1*4) // unknown clock / divider
3795//  MCFG_SOUND_CONFIG(pc98_ym2608_intf)
3796//  MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
37973797
37983798   MCFG_SOUND_ADD(BEEPER_TAG, BEEP, 0)
37993799   MCFG_SOUND_ROUTE(ALL_OUTPUTS,"mono",0.15)
r19613r19614
38583858   MCFG_SOUND_CONFIG(pc98_ym2203_intf)
38593859   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
38603860
3861//   MCFG_SOUND_ADD("opna", YM2608, MAIN_CLOCK_X1*4) // unknown clock / divider
3862//   MCFG_SOUND_CONFIG(pc98_ym2608_intf)
3863//   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
3861//  MCFG_SOUND_ADD("opna", YM2608, MAIN_CLOCK_X1*4) // unknown clock / divider
3862//  MCFG_SOUND_CONFIG(pc98_ym2608_intf)
3863//  MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
38643864
38653865   MCFG_SOUND_ADD(BEEPER_TAG, BEEP, 0)
38663866   MCFG_SOUND_ROUTE(ALL_OUTPUTS,"mono",0.15)
trunk/src/mess/drivers/pc88va.c
r19613r19614
1717      hooked up by the current z80 core
1818    - PC-88VA stock version has two bogus opcodes. One is at 0xf0b15, another at 0xf0b31.
1919      Making a patch for the latter makes the system to jump into a "DIP-Switch" display.
20   - unemulated upd71071 demand mode.
21   - Fix floppy motor hook-up;
20    - unemulated upd71071 demand mode.
21    - Fix floppy motor hook-up;
2222
2323********************************************************************************************/
2424
r19613r19614
137137   DECLARE_WRITE_LINE_MEMBER(pc88va_pic_irq);
138138   DECLARE_READ8_MEMBER(get_slave_ack);
139139   DECLARE_WRITE_LINE_MEMBER(pc88va_pit_out0_changed);
140//   DECLARE_WRITE_LINE_MEMBER(pc88va_upd765_interrupt);
140//  DECLARE_WRITE_LINE_MEMBER(pc88va_upd765_interrupt);
141141   UINT8 m_fdc_ctrl_2;
142142   TIMER_CALLBACK_MEMBER(pc88va_fdc_timer);
143143   TIMER_CALLBACK_MEMBER(pc88va_fdc_motor_start_0);
144144   TIMER_CALLBACK_MEMBER(pc88va_fdc_motor_start_1);
145//   UINT16 m_fdc_dma_r(running_machine &machine);
146//   void m_fdc_dma_w(running_machine &machine, UINT16 data);
145//  UINT16 m_fdc_dma_r(running_machine &machine);
146//  void m_fdc_dma_w(running_machine &machine, UINT16 data);
147147   DECLARE_WRITE_LINE_MEMBER(pc88va_hlda_w);
148148   DECLARE_WRITE_LINE_MEMBER(pc88va_tc_w);
149149
r19613r19614
17771777{
17781778   m_maincpu->set_input_line(INPUT_LINE_HALT, state ? ASSERT_LINE : CLEAR_LINE);
17791779
1780//   m_dmac->hack_w(state);
1780//  m_dmac->hack_w(state);
17811781
17821782//  printf("%02x HLDA\n",state);
17831783}
r19613r19614
17871787   /* floppy terminal count */
17881788   m_fdc->tc_w(state);
17891789
1790//   printf("TC %02x\n",state);
1790//  printf("TC %02x\n",state);
17911791}
17921792
17931793
trunk/src/mess/drivers/xor100.c
r19613r19614
478478   DEVCB_CPU_INPUT_LINE(Z80_TAG, INPUT_LINE_IRQ0),   /* interrupt handler */
479479   DEVCB_DRIVER_LINE_MEMBER(xor100_state, ctc_z0_w),         /* ZC/TO0 callback */
480480   DEVCB_DRIVER_LINE_MEMBER(xor100_state, ctc_z1_w),         /* ZC/TO1 callback */
481   DEVCB_DRIVER_LINE_MEMBER(xor100_state, ctc_z2_w)       /* ZC/TO2 callback */
481   DEVCB_DRIVER_LINE_MEMBER(xor100_state, ctc_z2_w)      /* ZC/TO2 callback */
482482};
483483
484484/* WD1795-02 Interface */
trunk/src/mess/drivers/esq5505.c
r19613r19614
2828    5505 interrupts are on normal autovector IRQ 1
2929
3030    VFX / VFX-SD / SD-1 / SD-1 32 panel button codes:
31   2 = PROGRAM CONTROL
32   3 = WRITE
33   4 = WAVE
34   5 = SELECT VOICE
35   6 = MIXER/SHAPER
31    2 = PROGRAM CONTROL
32    3 = WRITE
33    4 = WAVE
34    5 = SELECT VOICE
35    6 = MIXER/SHAPER
3636    7 =  EFFECT
3737    8 = COMPARE
38   9 = COPY EFFECTS PARAMETERS
39   10 = LFO
40   11 = PITCH
41   12 = ENV1
42   13 = PITCH MOD
43   14 = ENV2
44   15 = FILTER
45   16 = ENV3
38    9 = COPY EFFECTS PARAMETERS
39    10 = LFO
40    11 = PITCH
41    12 = ENV1
42    13 = PITCH MOD
43    14 = ENV2
44    15 = FILTER
45    16 = ENV3
4646    17 = OUTPUT
4747    18 = ERROR 20 (VFX) / SEQ. CONTROL
4848    19 = ?
r19613r19614
5050    21 = STORAGE
5151    22 = ERROR 129 (VFX-SD w/Seq. loaded)
5252    23 = ERROR 129 (VFX-SD w/Seq. loaded)
53   24 = MIDI
54   25 = BUTTON 9
55   26 = PSEL
56   27 = STAT
57   28 = EFFECT
58   29 = SEQ?  (toggles INT0 / TRAX display)
59   30 = TRACKS 1-6
53    24 = MIDI
54    25 = BUTTON 9
55    26 = PSEL
56    27 = STAT
57    28 = EFFECT
58    29 = SEQ?  (toggles INT0 / TRAX display)
59    30 = TRACKS 1-6
6060    31 = TRACKS 7-12
6161    32 = ERROR 20 (VFX) / CLICK-REC
6262    33 = ERROR 20 (VFX) / LOCATE
63   34 = BUTTON 8
64   35 = BUTTON 7
65   36 = VOLUME
66   37 = PAN
67   38 = TIMBRE
68   39 = KEY ZONE
69   40 = TRANSPOSE
63    34 = BUTTON 8
64    35 = BUTTON 7
65    36 = VOLUME
66    37 = PAN
67    38 = TIMBRE
68    39 = KEY ZONE
69    40 = TRANSPOSE
7070    41 = RELEASE
7171    42 = SOFT TOP CENTER
7272    43 = SOFT TOP RIGHT
r19613r19614
9090    61 = ERROR 20 (VFX) / EDIT TRACK
9191    62 = DATA INCREMENT
9292    63 = DATA DECREMENT
93
93
9494***************************************************************************/
9595
9696#include "emu.h"
r19613r19614
165165    UINT32  es5510_gpr_latch;
166166    UINT8   es5510_ram_sel;
167167
168   UINT16    *m_rom, *m_ram;
168   UINT16   *m_rom, *m_ram;
169169
170170public:
171171   DECLARE_DRIVER_INIT(eps);
r19613r19614
193193
194194READ16_MEMBER(esq5505_state::es5510_dsp_r)
195195{
196//   printf("%06x: DSP read offset %04x (data is %04x)\n",space.device().safe_pc(),offset,es5510_dsp_ram[offset]);
196//  printf("%06x: DSP read offset %04x (data is %04x)\n",space.device().safe_pc(),offset,es5510_dsp_ram[offset]);
197197
198198   // VFX hack
199199   if (mame_stricmp(space.machine().system().name, "vfx") == 0)
r19613r19614
447447      if (floppy)
448448      {
449449         // ready_r returns true if the drive is *not* ready, false if it is
450//         if (!floppy->ready_r())
450//          if (!floppy->ready_r())
451451         {
452452            result |= 1;
453453         }
r19613r19614
465465
466466    state->m_duart_io = data;
467467
468   /*
469       EPS:
470       bit 2 = SSEL
471   
472       VFX:
473       bits 0/1/2 = analog sel
474       bit 6 = ESPHALT
475       bit 7 = SACK (?)
476   
477       VFX-SD & SD-1 (32):
478       bits 0/1/2 = analog sel
479       bit 3 = SSEL (disk side)
480       bit 4 = DSEL (drive select?)
481       bit 6 = ESPHALT
482       bit 7 = SACK (?)
483   */
468   /*
469        EPS:
470        bit 2 = SSEL
484471
472        VFX:
473        bits 0/1/2 = analog sel
474        bit 6 = ESPHALT
475        bit 7 = SACK (?)
476
477        VFX-SD & SD-1 (32):
478        bits 0/1/2 = analog sel
479        bit 3 = SSEL (disk side)
480        bit 4 = DSEL (drive select?)
481        bit 6 = ESPHALT
482        bit 7 = SACK (?)
483    */
484
485485    if (floppy)
486486    {
487487      if (state->m_system_type == EPS)
r19613r19614
830830    ROM_LOAD16_BYTE( "vfx210b-high.bin", 0x000001, 0x010000, CRC(59853be8) SHA1(8e07f69d53f80885d15f624e0b912aeaf3212ee4) )
831831
832832    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)
833    ROM_LOAD16_BYTE( "u14.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
834    ROM_LOAD16_BYTE( "u15.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
833    ROM_LOAD16_BYTE( "u14.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
834    ROM_LOAD16_BYTE( "u15.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
835835
836836    ROM_REGION(0x80000, "nibbles", ROMREGION_ERASE00)
837    ROM_LOAD( "u16.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
837    ROM_LOAD( "u16.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
838838ROM_END
839839
840840ROM_START( vfxsd )
r19613r19614
843843    ROM_LOAD16_BYTE( "vfxsd_200_upper.bin", 0x000001, 0x010000, CRC(9a40efa2) SHA1(e38a2a4514519c1573361cb1526139bfcf94e45a) )
844844
845845    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)
846    ROM_LOAD16_BYTE( "u57.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
847    ROM_LOAD16_BYTE( "u58.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
846    ROM_LOAD16_BYTE( "u57.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
847    ROM_LOAD16_BYTE( "u58.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
848848
849849    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00)
850850
851851    ROM_REGION(0x80000, "nibbles", 0)
852    ROM_LOAD( "u60.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
852    ROM_LOAD( "u60.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
853853ROM_END
854854
855855ROM_START( sd1 )
r19613r19614
858858    ROM_LOAD16_BYTE( "sd1_410_hi.bin", 0x000001, 0x010000, CRC(618c0aa8) SHA1(74acf458aa1d04a0a7a0cd5855c49e6855dbd301) )
859859
860860    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)  // BS=0 region (12-bit)
861    ROM_LOAD16_BYTE( "u34.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
862    ROM_LOAD16_BYTE( "u35.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
861    ROM_LOAD16_BYTE( "u34.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
862    ROM_LOAD16_BYTE( "u35.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
863863
864864    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00) // BS=1 region (16-bit)
865   ROM_LOAD16_WORD_SWAP( "u38.bin", 0x000000, 0x100000, CRC(a904190e) SHA1(e4fd4e1130906086fb4182dcb8b51269969e2836) )
866   ROM_LOAD16_WORD_SWAP( "u37.bin", 0x100000, 0x100000, CRC(d706cef3) SHA1(24ba35248509e9ca45110e2402b8085006ea0cfc) )
865   ROM_LOAD16_WORD_SWAP( "u38.bin", 0x000000, 0x100000, CRC(a904190e) SHA1(e4fd4e1130906086fb4182dcb8b51269969e2836) )
866   ROM_LOAD16_WORD_SWAP( "u37.bin", 0x100000, 0x100000, CRC(d706cef3) SHA1(24ba35248509e9ca45110e2402b8085006ea0cfc) )
867867
868868    ROM_REGION(0x80000, "nibbles", 0)
869    ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
869    ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
870870ROM_END
871871
872872ROM_START( sd132 )
r19613r19614
875875    ROM_LOAD16_BYTE( "sd1_32_402_hi.bin", 0x000001, 0x010000, CRC(fc45c210) SHA1(23b81ebd9176112e6eae0c7c75b39fcb1656c953) )
876876
877877    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)  // BS=0 region (12-bit)
878    ROM_LOAD16_BYTE( "u34.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
879    ROM_LOAD16_BYTE( "u35.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
878    ROM_LOAD16_BYTE( "u34.bin", 0x000001, 0x080000, CRC(85592299) SHA1(1aa7cf612f91972baeba15991d9686ccde01599c) )
879    ROM_LOAD16_BYTE( "u35.bin", 0x100001, 0x080000, CRC(c0055975) SHA1(5a22f1d5e437c6277eb0cfb1ff1b3f8dcdea1cc6) )
880880
881881    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00) // BS=1 region (16-bit)
882   ROM_LOAD16_WORD_SWAP( "u38.bin", 0x000000, 0x100000, CRC(a904190e) SHA1(e4fd4e1130906086fb4182dcb8b51269969e2836) )
883   ROM_LOAD16_WORD_SWAP( "u37.bin", 0x100000, 0x100000, CRC(d706cef3) SHA1(24ba35248509e9ca45110e2402b8085006ea0cfc) )
882   ROM_LOAD16_WORD_SWAP( "u38.bin", 0x000000, 0x100000, CRC(a904190e) SHA1(e4fd4e1130906086fb4182dcb8b51269969e2836) )
883   ROM_LOAD16_WORD_SWAP( "u37.bin", 0x100000, 0x100000, CRC(d706cef3) SHA1(24ba35248509e9ca45110e2402b8085006ea0cfc) )
884884
885885    ROM_REGION(0x80000, "nibbles", ROMREGION_ERASE00)
886    ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
886    ROM_LOAD( "u36.bin", 0x000000, 0x080000, CRC(c3ddaf95) SHA1(44a7bd89cd7e82952cc5100479e110c385246559) )
887887ROM_END
888888
889889
trunk/src/mess/drivers/sg1000.c
r19613r19614
917917        PC7     /STROBE to Centronics printer
918918    */
919919
920    if (!BIT(data, 0))
920    if (!BIT(data, 0))
921921       m_fdc->set_floppy(m_floppy0);
922    else
922    else
923923       m_fdc->set_floppy(NULL);
924924
925925   /* floppy motor */
trunk/src/mess/drivers/m20.c
r19613r19614
475475void m20_state::machine_reset()
476476{
477477   UINT8 *ROM = machine().root_device().memregion("maincpu")->base();
478        //   UINT8 *RAM = (UINT8 *)machine().root_device().memshare("mainram")->ptr();
478        //  UINT8 *RAM = (UINT8 *)machine().root_device().memshare("mainram")->ptr();
479479   UINT8 *RAM = (UINT8 *)machine().root_device().memshare("dram0_4000")->ptr();
480480
481481        //ROM += 0x10000; // don't know why they load at an offset, but let's go with it
trunk/src/mess/drivers/mirage.c
r19613r19614
1717    e800-e803: WD1770 FDC
1818    ec00-ecef: ES5503 "DOC" sound chip
1919    f000-ffff: boot ROM
20
20
2121    NMI: IRQ from WD1772
2222    IRQ: DRQ from WD1772 wire-ORed with IRQ from ES5503 wire-ORed with IRQ from VIA6522
2323    FIRQ: IRQ from 6850 UART
24
24
2525    LED / switch matrix:
26 
27          A           B           C             D         E         F         G        DP
26
27            A           B           C             D         E         F         G        DP
2828    ROW 0:  LOAD UPPER  LOAD LOWER  SAMPLE UPPER  PLAY SEQ  LOAD SEQ  SAVE SEQ  REC SEQ  SAMPLE LOWER
2929    ROW 1:  3           6           9             5         8         0         2        Enter
3030    ROW 2:  1           4           7             up arrow  PARAM     dn arrow  VALUE    CANCEL
3131    L. AN:  SEG A       SEG B       SEG C         SEG D     SEG E     SEG F     SEG G    SEG DP (decimal point)
3232    R. AN:  SEG A       SEG B       SEG C         SEG D     SEG E     SEG F     SEG G    SEG DP
33
33
3434    Column number in VIA port A bits 0-2 is converted to discrete lines by a 74LS145.
3535    Port A bit 3 is right anode, bit 4 is left anode
3636    ROW 0 is read on VIA port A bit 5, ROW 1 in port A bit 6, and ROW 2 in port A bit 7.
37
37
3838    Keyboard models talk to the R6500 through the VIA shifter: CA2 is handshake, CB1 is shift clock, CB2 is shift data.
3939    This is unconnected on the rackmount version.
40
40
4141***************************************************************************/
4242
4343
r19613r19614
162162      16, 8, 32, 2, 1, 64, 128, 4
163163   };
164164
165//   printf("PA: %02x (PC=%x)\n", data, m_maincpu->pc());
165//  printf("PA: %02x (PC=%x)\n", data, m_maincpu->pc());
166166
167167   // left LED selected?
168168   if ((data & 0x10) == 0x10)
r19613r19614
180180
181181      m_l_hi = seg;
182182      output_set_digit_value(0, m_l_segs);
183//      printf("L LED: seg %d (hi %d conv %02x, %02x)\n", seg, m_l_hi, segconv[seg], m_l_segs);
183//      printf("L LED: seg %d (hi %d conv %02x, %02x)\n", seg, m_l_hi, segconv[seg], m_l_segs);
184184   }
185185   // right LED selected?
186186   if ((data & 0x08) == 0x08)
r19613r19614
198198
199199      m_r_hi = seg;
200200      output_set_digit_value(1, m_r_segs);
201//      printf("R LED: seg %d (hi %d conv %02x, %02x)\n", seg, m_r_hi, segconv[seg], m_r_segs);
201//      printf("R LED: seg %d (hi %d conv %02x, %02x)\n", seg, m_r_hi, segconv[seg], m_r_segs);
202202   }
203203}
204204
trunk/src/mess/drivers/vt100.c
r19613r19614
506506    The DPM01 supposedly has its own processor and roms.
507507 * vt125 - 1982? base model (stock vt100 firmware plus extra gfx board
508508   firmware and processor) vt100 with the ReGIS graphical language board
509   (aka GPO) installed (almost literally a vk100-on-a-board, but with added
509   (aka GPO) installed (almost literally a vk100-on-a-board, but with added
510510   backwards compatibility mode for vt105/WG, and 2 bits per pixel color),
511511   AVO optional; Includes a custom 'dumb' STP board.
512512 * vt131 - 1982 cost reduced version of vt132, no longer has the vt100
trunk/src/mess/drivers/wangpc.c
r19613r19614
12161216int wangpc_state::on_disk1_load(floppy_image_device *image)
12171217{
12181218   on_disk1_unload(image);
1219   
1219
12201220   return IMAGE_INIT_PASS;
12211221}
12221222
trunk/src/mess/drivers/socrates.c
r19613r19614
989989
990990/* This doesn't work for some reason.
991991static MACHINE_CONFIG_DERIVED( socrates_pal, socrates )
992   MCFG_CPU_REPLACE("maincpu", Z80, XTAL_26_601712MHz/8)
993   MCFG_SCREEN_REPLACE("screen", RASTER)
994   MCFG_SCREEN_REFRESH_RATE(50)
995   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
996   MCFG_SCREEN_SIZE(264, 256) // technically the screen size is 256x228 but super painter abuses what I suspect is a hardware bug to display repeated pixels of the very last pixel beyond this horizontal space, well into hblank
997   MCFG_SCREEN_VISIBLE_AREA(0, 263, 0, 256) // the last few rows are usually cut off by the screen bottom but are indeed displayed if you mess with v-hold
998   MCFG_SCREEN_UPDATE_DRIVER(socrates_state, screen_update_socrates)
999   MCFG_SOUND_REPLACE("soc_snd", SOCRATES, XTAL_26_601712MHz/(512+256)) // this is correct, as strange as it sounds.
1000   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
992    MCFG_CPU_REPLACE("maincpu", Z80, XTAL_26_601712MHz/8)
993    MCFG_SCREEN_REPLACE("screen", RASTER)
994    MCFG_SCREEN_REFRESH_RATE(50)
995    MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
996    MCFG_SCREEN_SIZE(264, 256) // technically the screen size is 256x228 but super painter abuses what I suspect is a hardware bug to display repeated pixels of the very last pixel beyond this horizontal space, well into hblank
997    MCFG_SCREEN_VISIBLE_AREA(0, 263, 0, 256) // the last few rows are usually cut off by the screen bottom but are indeed displayed if you mess with v-hold
998    MCFG_SCREEN_UPDATE_DRIVER(socrates_state, screen_update_socrates)
999    MCFG_SOUND_REPLACE("soc_snd", SOCRATES, XTAL_26_601712MHz/(512+256)) // this is correct, as strange as it sounds.
1000    MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
10011001MACHINE_CONFIG_END
10021002*/
10031003/******************************************************************************
trunk/src/mess/drivers/ng_aes.c
r19613r19614
2121
2222    Current status:
2323        - Cartridges run.
24      - Riding Hero runs in slow-mo (probably related to comms HW / IO port handling)
24        - Riding Hero runs in slow-mo (probably related to comms HW / IO port handling)
2525
2626    ToDo :
2727        - Change input code to allow selection of the mahjong panel in PORT_CATEGORY.
r19613r19614
3030
3131    Neo-Geo CD hardware
3232
33   Thanks to:
34       * The FBA team (Barry Harris) for much of the CDC / CDD code and system details.
35        ( http://www.barryharris.me.uk/ )
36      * Mirko Buffoni for a commented disassembly of the NeoCD bios rom.
33    Thanks to:
34        * The FBA team (Barry Harris) for much of the CDC / CDD code and system details.
35          ( http://www.barryharris.me.uk/ )
36        * Mirko Buffoni for a commented disassembly of the NeoCD bios rom.
3737
3838    Current status:
39      - NeoCDZ runs, the original NeoCD does not
40         - Might think the tray is open? (check)
41      - Some unknown / unhandled CD commands, code is still a bit messy
42         - CDDA continues to play during loading, should stop it
43      - Games using Raster Effects are broken without a kludge
44         - CPU gets overloaded with IRQs from the timer callback...
45      - Double Dragon doesn't load, it erases the IRQ table
46         - might need better handling of the Vector Table Mapping, or better interrupts (see point above)
47      - Softlist are based on an old Tosec set and should be updated to the TruRip set once we can convert CCD
48        without throwing away gap data etc.
39        - NeoCDZ runs, the original NeoCD does not
40           - Might think the tray is open? (check)
41        - Some unknown / unhandled CD commands, code is still a bit messy
42           - CDDA continues to play during loading, should stop it
43        - Games using Raster Effects are broken without a kludge
44           - CPU gets overloaded with IRQs from the timer callback...
45        - Double Dragon doesn't load, it erases the IRQ table
46           - might need better handling of the Vector Table Mapping, or better interrupts (see point above)
47        - Softlist are based on an old Tosec set and should be updated to the TruRip set once we can convert CCD
48          without throwing away gap data etc.
4949
5050****************************************************************************/
5151
r19613r19614
114114   }
115115
116116   optional_device<lc89510_temp_device> m_tempcdc;
117   
118117
119118
119
120120   void NeoCDDoDMA(address_space& curr_space);
121121   void set_DMA_regs(int offset, UINT16 wordValue);
122122
r19613r19614
163163   void set_nNeoCDIRQVectorAck(int val) { nNeoCDIRQVectorAck = val; }
164164   int get_nNeoCDIRQVector(void) { return nNeoCDIRQVector; }
165165   void NeoCDIRQUpdate(UINT8 byteValue);
166   
166
167167   // from the CDC
168168   void interrupt_callback_type1(void);
169169   void interrupt_callback_type2(void);
r19613r19614
482482            if (data==0x00)
483483            {
484484            // not a good idea, causes hangs
485            //   m_tempcdc->NeoCDCommsReset();
486               
485            //  m_tempcdc->NeoCDCommsReset();
486
487487               // I doubt this is correct either, but we need something to stop
488488               // the interrupts during gameplay and I'm not sure what...
489489               prohibit_cdc_irq = true;
r19613r19614
496496         break;
497497      }
498498      case 0x0182: {
499      //   printf("blah %02x\n", byteValue);
499      //  printf("blah %02x\n", byteValue);
500500         if (byteValue == 0x00)
501501         {
502502            machine().device("ymsnd")->reset();
r19613r19614
598598         }
599599         else
600600         {
601      //   printf("sekAddress %08x %02x\n", sekAddress, data);
601      //  printf("sekAddress %08x %02x\n", sekAddress, data);
602602            if ((sekAddress & 0xfffff) >= 0x20000) break;
603603            NeoZ80ROMActive[(sekAddress & 0x1FFFF) >> 1] = byteValue;
604604         }
r19613r19614
15261526static MACHINE_CONFIG_DERIVED_CLASS( aes, neogeo_base, ng_aes_state )
15271527   MCFG_CPU_MODIFY("maincpu")
15281528   MCFG_CPU_PROGRAM_MAP(aes_main_map) // some different input handling, probably also responsible for Riding Hero not running properly
1529   
1529
15301530   MCFG_MEMCARD_HANDLER(neogeo_aes)
15311531
15321532   MCFG_MACHINE_START_OVERRIDE(ng_aes_state, neogeo)
trunk/src/mess/drivers/apc.c
r19613r19614
114114   DECLARE_WRITE8_MEMBER(apc_irq_ack_w);
115115   DECLARE_READ8_MEMBER(apc_rtc_r);
116116   DECLARE_WRITE8_MEMBER(apc_rtc_w);
117//   DECLARE_READ8_MEMBER(aux_pcg_r);
118//   DECLARE_WRITE8_MEMBER(aux_pcg_w);
117//  DECLARE_READ8_MEMBER(aux_pcg_r);
118//  DECLARE_WRITE8_MEMBER(aux_pcg_w);
119119
120120   struct {
121121      UINT8 status; //status
r19613r19614
235235               continue;
236236
237237            /*
238            Addr bus:   C BA98 7654 3210
239                        | |||| |\\\ \\\\- character number bits 0-6
240                        | |||| \--------- y' bit 0
241                        | |||\----------- y' bit 1
242                        | ||\------------ y' bit 2
243                        | |\------------- y' bit 3
244                        | \-------------- character number bit 7
245                        \---------------- y' bit 4
238                Addr bus:   C BA98 7654 3210
239                            | |||| |\\\ \\\\- character number bits 0-6
240                            | |||| \--------- y' bit 0
241                            | |||\----------- y' bit 1
242                            | ||\------------ y' bit 2
243                            | |\------------- y' bit 3
244                            | \-------------- character number bit 7
245                            \---------------- y' bit 4
246246
247            y to y' (assumed; this needs hardware tests since there could be one more 'blank' line between all char rows):
248            y  =  0 1 2 3 ... 16 17 18
249            y' = 18 0 1 2 ... 15 16 17
247                y to y' (assumed; this needs hardware tests since there could be one more 'blank' line between all char rows):
248                y  =  0 1 2 3 ... 16 17 18
249                y' = 18 0 1 2 ... 15 16 17
250250
251            Data bus: 76543210 = pixels, in left->01234567->right order
252            */
251                Data bus: 76543210 = pixels, in left->01234567->right order
252                */
253253            if(tile_sel == 0x89)// Aux character RAM select TODO: correct triggering?
254254            {
255255               if(yi & 0x10)
r19613r19614
464464static ADDRESS_MAP_START( apc_map, AS_PROGRAM, 16, apc_state )
465465   AM_RANGE(0x00000, 0x9ffff) AM_RAM
466466   AM_RANGE(0xa0000, 0xa0fff) AM_RAM AM_SHARE("cmos")
467//   AM_RANGE(0xc0000, 0xcffff) standard character ROM
467//  AM_RANGE(0xc0000, 0xcffff) standard character ROM
468468   AM_RANGE(0xd8000, 0xd9fff) AM_RAM AM_REGION("aux_pcg", 0) // AUX character RAM
469//   AM_RANGE(0xe0000, 0xeffff) Special Character RAM
469//  AM_RANGE(0xe0000, 0xeffff) Special Character RAM
470470   AM_RANGE(0xfe000, 0xfffff) AM_ROM AM_REGION("ipl", 0)
471471ADDRESS_MAP_END
472472
r19613r19614
487487   AM_RANGE(0x60, 0x61) AM_DEVREADWRITE8_LEGACY("upd1771c", upd1771_r, upd1771_w, 0x00ff )
488488//  AM_RANGE(0x68, 0x6f) i8255 , printer port (A: status (R) B: data (W) C: command (W))
489489//  AM_DEVREADWRITE8("upd7220_btm", upd7220_device, read, write, 0x00ff)
490//   0x92, 0x9a, 0xa2, 0xaa is for a Hard Disk (unknown type)
490//  0x92, 0x9a, 0xa2, 0xaa is for a Hard Disk (unknown type)
491491ADDRESS_MAP_END
492492
493493/* TODO: key repeat, remove port impulse! */
r19613r19614
561561   PORT_BIT(0x10,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("] / }") PORT_CODE(KEYCODE_CLOSEBRACE) PORT_CHAR(']') PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x5d)
562562   PORT_BIT(0x20,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("(up score) / ^") PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x5e)
563563   PORT_BIT(0x40,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("- / _") PORT_CODE(KEYCODE_MINUS) PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x5f)
564//   PORT_BIT(0x80,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("unk6") PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x26)
564//  PORT_BIT(0x80,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("unk6") PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x26)
565565
566566   PORT_START("KEY6")
567567   PORT_BIT(0x01,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("SPACE") PORT_CODE(KEYCODE_SPACE) PORT_CHAR(' ') PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x20)
r19613r19614
579579; Special table for screwed-up keys.  Scan codes are converted.
580580;
581581SPECTBL:
582   BYTE   0X2D,0X3D
583   BYTE   0X40,0X60
584   BYTE   0X3A,0X3B
585   BYTE   0X3B,0X27
586SPECTLN   ==   (.-SPECTBL)/2      ; length of table
582    BYTE    0X2D,0X3D
583    BYTE    0X40,0X60
584    BYTE    0X3A,0X3B
585    BYTE    0X3B,0X27
586SPECTLN ==  (.-SPECTBL)/2       ; length of table
587587;
588588; Shift case table
589589;
590590CASETBL:
591   BYTE   "1!"
592   BYTE   "2@"
593   BYTE   "3#"
594   BYTE   "4$"
595   BYTE   "5%"
596   BYTE   "6",0XD0
597   BYTE   "7&"
598   BYTE   "8*"
599   BYTE   "9("
600   BYTE   "0)"
601   BYTE   "-_"
602   BYTE   "=+"
603   BYTE   "`~"
604   BYTE   "[{"
605   BYTE   "]}"
606   BYTE   "\\|"
607   BYTE   ",<"
608   BYTE   ".>"
609   BYTE   "/?"
610   BYTE   ";:"
611   BYTE   0X27,0X22
612   BYTE   0X18,"^"
591    BYTE    "1!"
592    BYTE    "2@"
593    BYTE    "3#"
594    BYTE    "4$"
595    BYTE    "5%"
596    BYTE    "6",0XD0
597    BYTE    "7&"
598    BYTE    "8*"
599    BYTE    "9("
600    BYTE    "0)"
601    BYTE    "-_"
602    BYTE    "=+"
603    BYTE    "`~"
604    BYTE    "[{"
605    BYTE    "]}"
606    BYTE    "\\|"
607    BYTE    ",<"
608    BYTE    ".>"
609    BYTE    "/?"
610    BYTE    ";:"
611    BYTE    0X27,0X22
612    BYTE    0X18,"^"
613613*/
614614
615615/*
616   BYTE   0X18         ; 5E - Control-X
617   BYTE   "-"         ; 5F
616    BYTE    0X18            ; 5E - Control-X
617    BYTE    "-"         ; 5F
618618*/
619619
620620/*
621   #REPEAT   0X96-0X80      ; 80 to 95 - function keys
621    #REPEAT 0X96-0X80       ; 80 to 95 - function keys
622622*/
623623   PORT_START("KEY_PF1")
624624   PORT_BIT(0x01,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("PF1")  PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x80)
r19613r19614
649649   PORT_BIT(0x20,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("PF22")  PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x95)
650650
651651/*
652   BYTE   "*"         ; 6A
653   BYTE   "+"         ; 6B
654   BYTE   0XFF      ; 6C - undefined code
655   BYTE   "-"         ; 6D
656   BYTE   "."         ; 6E
657   BYTE   "/"         ; 6F
658   BYTE   "0"         ; 70
659   BYTE   "1"         ; 71
660   BYTE   "2"         ; 72
661   BYTE   "3"         ; 73
662   BYTE   "4"         ; 74
663   BYTE   "5"         ; 75
664   BYTE   "6"         ; 76
665   BYTE   "7"         ; 77
666   BYTE   "8"         ; 78
667   BYTE   "9"         ; 79
652    BYTE    "*"         ; 6A
653    BYTE    "+"         ; 6B
654    BYTE    0XFF        ; 6C - undefined code
655    BYTE    "-"         ; 6D
656    BYTE    "."         ; 6E
657    BYTE    "/"         ; 6F
658    BYTE    "0"         ; 70
659    BYTE    "1"         ; 71
660    BYTE    "2"         ; 72
661    BYTE    "3"         ; 73
662    BYTE    "4"         ; 74
663    BYTE    "5"         ; 75
664    BYTE    "6"         ; 76
665    BYTE    "7"         ; 77
666    BYTE    "8"         ; 78
667    BYTE    "9"         ; 79
668668*/
669669
670670   PORT_START("KEY_PAD1")
r19613r19614
688688   PORT_BIT(0x80,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("9 (PAD)") PORT_CODE(KEYCODE_9_PAD) PORT_CHAR('9') PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x79)
689689
690690
691/*   BYTE   0X00         ; 96 - break stop
692   BYTE   0X0D         ; 97 - return
693   BYTE   0X09         ; 98 - tab/back tab
694   BYTE   0XFF         ; 99 - undefined code
695   BYTE   0X1E         ; 9A - home/clear
696   BYTE   0XFF         ; 9B - undefined code
697   BYTE   0X08         ; 9C - back space
691/*  BYTE    0X00            ; 96 - break stop
692    BYTE    0X0D            ; 97 - return
693    BYTE    0X09            ; 98 - tab/back tab
694    BYTE    0XFF            ; 99 - undefined code
695    BYTE    0X1E            ; 9A - home/clear
696    BYTE    0XFF            ; 9B - undefined code
697    BYTE    0X08            ; 9C - back space
698698*/
699699   PORT_START("KEY_S1")
700700   PORT_BIT(0x01,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("BREAK") PORT_CHAR(0x00) PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x96)
r19613r19614
707707   PORT_BIT(0x80,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("ESC") PORT_CHAR(0x1b) PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0x1b)
708708
709709/*
710   BYTE   0X0B         ; F7 - up arrow
711   BYTE   0X0A         ; F8 - down arrow
712   BYTE   0X0C         ; F9 - right arrow
713   BYTE   0X08         ; FA - left arrow
714   BYTE   0XFF (?)      ; FB - ins
715   BYTE   0X7F         ; FC - del
716   BYTE   0X0D         ; FD - enter
710    BYTE    0X0B            ; F7 - up arrow
711    BYTE    0X0A            ; F8 - down arrow
712    BYTE    0X0C            ; F9 - right arrow
713    BYTE    0X08            ; FA - left arrow
714    BYTE    0XFF (?)        ; FB - ins
715    BYTE    0X7F            ; FC - del
716    BYTE    0X0D            ; FD - enter
717717*/
718718   PORT_START("KEY_S2")
719719   PORT_BIT(0x01,IP_ACTIVE_HIGH,IPT_KEYBOARD) PORT_NAME("Up") PORT_CODE(KEYCODE_UP) PORT_CHAR(0x0b) PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, apc_state, key_stroke, 0xf7)
r19613r19614
755755   m_fdc->setup_drq_cb(upd765a_device::line_cb(FUNC(apc_state::fdc_drq), this));
756756
757757   m_rtc->cs_w(1);
758//   m_rtc->oe_w(1);
758//  m_rtc->oe_w(1);
759759}
760760
761761void apc_state::machine_reset()
r19613r19614
821821   GFXDECODE_ENTRY( "gfx", 0x0800, charset_8x16, 0, 128 )
822822   GFXDECODE_ENTRY( "gfx", 0x1000, charset_8x16, 0, 128 )
823823   GFXDECODE_ENTRY( "gfx", 0x1800, charset_8x16, 0, 128 )
824//   GFXDECODE_ENTRY( "aux_pcg", 0x0000, charset_pcg, 0, 128 )
824//  GFXDECODE_ENTRY( "aux_pcg", 0x0000, charset_pcg, 0, 128 )
825825GFXDECODE_END
826826
827827
r19613r19614
881881WRITE_LINE_MEMBER(apc_state::apc_master_set_int_line)
882882{
883883   //printf("%02x\n",interrupt);
884//   printf("irq %d\n",state);
884//  printf("irq %d\n",state);
885885   machine().device("maincpu")->execute().set_input_line(0, state ? HOLD_LINE : CLEAR_LINE);
886886}
887887
r19613r19614
927927   /* floppy terminal count */
928928   m_fdc->tc_w(state);
929929
930//   printf("TC %02x\n",state);
930//  printf("TC %02x\n",state);
931931}
932932
933933READ8_MEMBER(apc_state::apc_dma_read_byte)
r19613r19614
935935   address_space &program = m_maincpu->space(AS_PROGRAM);
936936   offs_t addr = (m_dma_offset[m_dack] << 16) | offset;
937937
938//   printf("%08x\n",addr);
938//  printf("%08x\n",addr);
939939
940940   return program.read_byte(addr);
941941}
trunk/src/mess/drivers/ymmu100.c
r19613r19614
11/*************************************************************************************
22
33    Yamaha MU-100 : 32-voice polyphonic/multitimbral General MIDI/GS/XG tone module
4   Preliminary driver by R. Belmont
5 
4    Preliminary driver by R. Belmont
5
66    CPU: Hitachi H8S/2655 (HD6432655F), strapped for mode 4 (24-bit address, 16-bit data, no internal ROM)
77    Sound ASIC: Yamaha XS725A0
8   RAM: 1 MSM51008 (1 meg * 1 bit = 128KBytes)
9 
8    RAM: 1 MSM51008 (1 meg * 1 bit = 128KBytes)
9
1010    I/O ports from service manual:
11
11
1212    Port 1:
13      0 - LCD data, SW data, LED 1
14      1 - LCD data, SW data, LED 2
15      2 - LCD data, SW data, LED 3
16      3 - LCD data, SW data, LED 4
17      4 - LCD data, SW data, LED 5
18      5 - LCD data, SW strobe data
19      6 - LCD data, SW strobe data
20      7 - LCD data, SW data, LED 6
21 
13        0 - LCD data, SW data, LED 1
14        1 - LCD data, SW data, LED 2
15        2 - LCD data, SW data, LED 3
16        3 - LCD data, SW data, LED 4
17        4 - LCD data, SW data, LED 5
18        5 - LCD data, SW strobe data
19        6 - LCD data, SW strobe data
20        7 - LCD data, SW data, LED 6
21
2222    Port 2:
23       0 - (out) LCD control RS
24       1 - (out) LCD control R/W
25       2 - (out) LCD control E
26       3 - (out) LCD contrast A
27       4 - (out) LCD contrast B
28       5 - (out) LCD contrast C
29       6 - (out) 1 MHz clock for serial
30       7 - NC
31 
23        0 - (out) LCD control RS
24        1 - (out) LCD control R/W
25        2 - (out) LCD control E
26        3 - (out) LCD contrast A
27        4 - (out) LCD contrast B
28        5 - (out) LCD contrast C
29        6 - (out) 1 MHz clock for serial
30        7 - NC
31
3232    Port 3:
33       4 - (out) A/D gain control 1
34       5 - (out) A/D gain control 2
35 
33        4 - (out) A/D gain control 1
34        5 - (out) A/D gain control 2
35
3636    Port 5:
37       3 - (out) Reset signal for rotary encoder
38 
37        3 - (out) Reset signal for rotary encoder
38
3939    Port 6:
40       1 - NC
41       2 - (out) PB select (SW1)
42       3 - (out) PB select (SW2)
43       4 - (out) reset PB
44       5 - (out) reset SWP30 (sound chip)
45       6 - NC
46       7 - (in) Plug detection for A/D input
47 
40        1 - NC
41        2 - (out) PB select (SW1)
42        3 - (out) PB select (SW2)
43        4 - (out) reset PB
44        5 - (out) reset SWP30 (sound chip)
45        6 - NC
46        7 - (in) Plug detection for A/D input
47
4848    Port A:
49       5 - (in) Off Line Detection
50       6 - (out) Signal for rotary encoder (REB)
51       7 - (out) Signal for rotary encoder (REA)
52 
49        5 - (in) Off Line Detection
50        6 - (out) Signal for rotary encoder (REB)
51        7 - (out) Signal for rotary encoder (REA)
52
5353    Port F:
54       0 - (out) LED,SW Strobe data latch
55       1 - (out) SW data read control
56       2 - (out) PB select (SW4)
57 
54        0 - (out) LED,SW Strobe data latch
55        1 - (out) SW data read control
56        2 - (out) PB select (SW4)
57
5858    Port G:
59       0 - (out) PB select (SW3)
60 
59        0 - (out) PB select (SW3)
60
6161    Analog input channels:
62       0 - level input R
63       2 - level output L
64       4 - host SW type switch position
65       6 - battery voltage
66       7 - model check (GND for MU100)
67 
62        0 - level input R
63        2 - level output L
64        4 - host SW type switch position
65        6 - battery voltage
66        7 - model check (GND for MU100)
67
6868**************************************************************************************/
6969
7070#include "emu.h"
r19613r19614
131131      } else
132132         return 0x00;
133133   }
134
134
135135   return 0xff;
136136}
137137
r19613r19614
197197ROM_START( mu100 )
198198   ROM_REGION( 0x200000, "maincpu", 0 )
199199   ROM_SYSTEM_BIOS( 0, "bios0", "xu50720 (v1.11, Aug. 3, 1999)" )
200   ROM_LOAD16_WORD_SWAP_BIOS( 0, "xu50720.ic11", 0x000000, 0x200000, CRC(1126a8a4) SHA1(e90b8bd9d14297da26ba12f4d9a4f2d22cd7d34a) )
200   ROM_LOAD16_WORD_SWAP_BIOS( 0, "xu50720.ic11", 0x000000, 0x200000, CRC(1126a8a4) SHA1(e90b8bd9d14297da26ba12f4d9a4f2d22cd7d34a) )
201201   ROM_SYSTEM_BIOS( 1, "bios1", "xt71420 (v1.05, Sep. 19, 1997)" )
202   ROM_LOAD16_WORD_SWAP_BIOS( 1, "xt71420.ic11", 0x000000, 0x200000, CRC(0e5b3bae) SHA1(3148c5bd59a3d00809d3ab1921216215fe2582c5) )
202   ROM_LOAD16_WORD_SWAP_BIOS( 1, "xt71420.ic11", 0x000000, 0x200000, CRC(0e5b3bae) SHA1(3148c5bd59a3d00809d3ab1921216215fe2582c5) )
203203
204204   ROM_REGION( 0x2800000, "waverom", 0 )
205   ROM_LOAD32_WORD( "sx518b0.ic34", 0x000000, 0x400000, CRC(2550d44f) SHA1(fd3cce228c7d389a2fde25c808a5b26080588cba) )
206   ROM_LOAD32_WORD( "sx743b0.ic35", 0x000002, 0x400000, CRC(a9109a6c) SHA1(a67bb49378a38a2d809bd717d286e18bc6496db0) )
207   ROM_LOAD32_WORD( "xt445a0-828.ic36", 0x800000, 0x1000000, CRC(d4483a43) SHA1(5bfd0762dea8598eda19db20251dac20e31fa02c) )
208   ROM_LOAD32_WORD( "xt461a0-829.ic37", 0x800002, 0x1000000, CRC(c5af4501) SHA1(1c88de197c36382311053add8b19a5740802cb78) )
205   ROM_LOAD32_WORD( "sx518b0.ic34", 0x000000, 0x400000, CRC(2550d44f) SHA1(fd3cce228c7d389a2fde25c808a5b26080588cba) )
206   ROM_LOAD32_WORD( "sx743b0.ic35", 0x000002, 0x400000, CRC(a9109a6c) SHA1(a67bb49378a38a2d809bd717d286e18bc6496db0) )
207   ROM_LOAD32_WORD( "xt445a0-828.ic36", 0x800000, 0x1000000, CRC(d4483a43) SHA1(5bfd0762dea8598eda19db20251dac20e31fa02c) )
208   ROM_LOAD32_WORD( "xt461a0-829.ic37", 0x800002, 0x1000000, CRC(c5af4501) SHA1(1c88de197c36382311053add8b19a5740802cb78) )
209209
210210   ROM_REGION( 0x0860, "lcd", ROMREGION_ERASE )
211211   ROM_LOAD( "44780a00.bin",    0x0000, 0x0860,  BAD_DUMP CRC(3a89024c) SHA1(5a87b68422a916d1b37b5be1f7ad0b3fb3af5a8d))
trunk/src/mess/drivers/dragon.c
r19613r19614
243243
244244ROM_START(dragon200)
245245    ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
246   ROM_LOAD( "ic18.rom",     0x0000, 0x4000, CRC(84f68bf9) SHA1(1983b4fb398e3dd9668d424c666c5a0b3f1e2b69))
246   ROM_LOAD( "ic18.rom",    0x0000, 0x4000, CRC(84f68bf9) SHA1(1983b4fb398e3dd9668d424c666c5a0b3f1e2b69))
247247   ROM_LOAD( "ic17.rom",    0x8000, 0x4000, CRC(17893a42) SHA1(e3c8986bb1d44269c4587b04f1ca27a70b0aaa2e))
248248ROM_END
249249
trunk/src/mess/drivers/geniusiq.c
r19613r19614
405405READ16_MEMBER( geniusiq_state::input_r )
406406{
407407   /*
408       this is guesswork and may not be correct
408        this is guesswork and may not be correct
409409
410       xxxx xxx- ---- ----     unknown
411       ---- ---x ---- ----     used for indicate if the data read is valid (if not set the other bits are discarded)
412       ---- ---- x--- ----     if set indicates a KeyUp otherwise a KeyDown
413       ---- ---- -xxx xxxx     this is the scan code
414   */
410        xxxx xxx- ---- ----     unknown
411        ---- ---x ---- ----     used for indicate if the data read is valid (if not set the other bits are discarded)
412        ---- ---- x--- ----     if set indicates a KeyUp otherwise a KeyDown
413        ---- ---- -xxx xxxx     this is the scan code
414    */
415415
416416   UINT16 data = 0;
417417
trunk/src/mess/drivers/esqkt.c
r19613r19614
33    esqkt.c - Ensoniq KT-76, KT-88, and E-Prime
44
55    Driver by R. Belmont
6
6
77    Hardware:
8       CPU: 68EC020-16 CPU
9       Serial/timers: SCN2681 (MC68681 clone)
10       Sound: 2xES5506
11      Effects: ES5510
8        CPU: 68EC020-16 CPU
9        Serial/timers: SCN2681 (MC68681 clone)
10        Sound: 2xES5506
11        Effects: ES5510
1212
1313    Memory map:
14 
15    0x000000-0x07FFFF   OS ROM
16    0x200000-0x20003F   Master ES5506
17    0x240000-0x24003F   Slave ES5506
18    0x280000-0x2801FF   ES5510
19    0x300000-0x30000F   68681 DUART
20    0xFF0000-0xFFFFFF   OS RAM
21 
14
15    0x000000-0x07FFFF   OS ROM
16    0x200000-0x20003F   Master ES5506
17    0x240000-0x24003F   Slave ES5506
18    0x280000-0x2801FF   ES5510
19    0x300000-0x30000F   68681 DUART
20    0xFF0000-0xFFFFFF   OS RAM
21
2222***************************************************************************/
2323
2424#include "emu.h"
r19613r19614
7575    UINT32  es5510_gpr_latch;
7676    UINT8   es5510_ram_sel;
7777
78   UINT32    *m_rom, *m_ram;
78   UINT32   *m_rom, *m_ram;
7979
8080public:
8181   DECLARE_DRIVER_INIT(kt);
r19613r19614
8484
8585void esqkt_state::machine_reset()
8686{
87//   m_rom = (UINT32 *)machine().root_device().memregion("osrom")->base();
88//   m_ram = (UINT32 *)machine().root_device().memshare("osram")->ptr();
87//  m_rom = (UINT32 *)machine().root_device().memregion("osrom")->base();
88//  m_ram = (UINT32 *)machine().root_device().memshare("osram")->ptr();
8989
90//   memcpy(m_ram, m_rom, 8);
91//   m_maincpu->reset();
90//  memcpy(m_ram, m_rom, 8);
91//  m_maincpu->reset();
9292
9393   m_bCalibSecondByte = false;
9494}
9595
9696READ16_MEMBER(esqkt_state::es5510_dsp_r)
9797{
98//   printf("%06x: DSP read offset %04x (data is %04x)\n",space.device().safe_pc(),offset,es5510_dsp_ram[offset]);
98//  printf("%06x: DSP read offset %04x (data is %04x)\n",space.device().safe_pc(),offset,es5510_dsp_ram[offset]);
9999
100100   switch(offset)
101101   {
r19613r19614
523523
524524ROM_START( kt76 )
525525    ROM_REGION(0x80000, "osrom", 0)
526   ROM_LOAD32_WORD( "kt76_162_lo.bin", 0x000000, 0x020000, CRC(1a1ab910) SHA1(dcc80db2297fd25993e090c2e5bb7f947319a8bf) )
527   ROM_LOAD32_WORD( "kt76_162_hi.bin", 0x000002, 0x040000, CRC(de16d236) SHA1(c55fca86453e90e8c34a048bed45817063237370) )
526   ROM_LOAD32_WORD( "kt76_162_lo.bin", 0x000000, 0x020000, CRC(1a1ab910) SHA1(dcc80db2297fd25993e090c2e5bb7f947319a8bf) )
527   ROM_LOAD32_WORD( "kt76_162_hi.bin", 0x000002, 0x040000, CRC(de16d236) SHA1(c55fca86453e90e8c34a048bed45817063237370) )
528528
529529    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)
530530    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00)
trunk/src/mess/drivers/studio2.c
r19613r19614
9797      TMM331 is compatible with AMI S6831A, AMD AM9217,
9898      Intel 2316A/8316A, MOSTEK MK31000, GI RO-3-8316,
9999      NATIONAL/NEC/SYNERTEK 2316A etc
100     
100
101101*/
102102
103103/*
trunk/src/mess/drivers/xerox820.c
r19613r19614
1010
1111    TODO:
1212
13   - Xerox 820
14      - floppy (wd1772.c FM support)
13    - Xerox 820
14        - floppy (wd1772.c FM support)
1515    - Xerox 820-II
16       - floppy (read/write to FDC triggers Z80 WAIT)
17      - Winchester
18         - Shugart SA1004 (chs=256,4,40 ss=256)
19         - Shugart SA606 (chs=160,6, ss=256)
20         - Shugart SA1403D controller
16        - floppy (read/write to FDC triggers Z80 WAIT)
17        - Winchester
18            - Shugart SA1004 (chs=256,4,40 ss=256)
19            - Shugart SA606 (chs=160,6, ss=256)
20            - Shugart SA1403D controller
2121    - Xerox 16/8
2222    - Emerald Microware X120 board
2323    - type in Monitor v1.0 from manual
r19613r19614
444444      if (m_8n5 != _8n5)
445445      {
446446         m_8n5 = _8n5;
447         
447
448448         m_fdc->set_unscaled_clock(m_8n5 ? XTAL_20MHz/10 : XTAL_20MHz/20);
449449      }
450450
451451      m_400_460 = !floppy->twosid_r();
452452
453453      floppy->mon_w(0);
454     
454
455455      floppy->ss_w(BIT(data, 2));
456456   }
457457
r19613r19614
531531READ8_MEMBER( xerox820ii_state::rdpio_pb_r )
532532{
533533   /*
534   
535       bit     description
536   
537       0       NBSY
538       1       NMSG
539       2       NC/D
540       3       NREQ
541       4       NI/O
542       5       
543       6       LS74 Q
544       7       
545   
546   */
547534
535        bit     description
536
537        0       NBSY
538        1       NMSG
539        2       NC/D
540        3       NREQ
541        4       NI/O
542        5
543        6       LS74 Q
544        7
545
546    */
547
548548   UINT8 data = 0;
549549
550550   data |= !m_sasibus->scsi_bsy_r();
r19613r19614
559559WRITE8_MEMBER( xerox820ii_state::rdpio_pb_w )
560560{
561561   /*
562   
563       bit     description
564   
565       0       
566       1       
567       2       
568       3       
569       4       
570       5       NSEL
571       6       
572       7       NRST
573   
574   */
575562
563        bit     description
564
565        0
566        1
567        2
568        3
569        4
570        5       NSEL
571        6
572        7       NRST
573
574    */
575
576576   m_sasibus->scsi_sel_w(!BIT(data, 5));
577577   m_sasibus->scsi_rst_w(!BIT(data, 7));
578578}
r19613r19614
788788}
789789/*
790790static LEGACY_FLOPPY_OPTIONS_START( xerox820 )
791   LEGACY_FLOPPY_OPTION( sssd8, "dsk", "8\" SSSD", basicdsk_identify_default, basicdsk_construct_default, NULL,
792      HEADS([1])
793      TRACKS([77])
794      SECTORS([26])
795      SECTOR_LENGTH([128])
796      FIRST_SECTOR_ID([1]))
797   LEGACY_FLOPPY_OPTION( ssdd8, "dsk", "8\" SSDD", basicdsk_identify_default, basicdsk_construct_default, NULL,
798      HEADS([1])
799      TRACKS([77])
800      SECTORS([26])
801      SECTOR_LENGTH([256])
802      FIRST_SECTOR_ID([1]))
803   LEGACY_FLOPPY_OPTION( sssd5, "dsk", "5.25\" SSSD", basicdsk_identify_default, basicdsk_construct_default, NULL,
804      HEADS([1])
805      TRACKS([40])
806      SECTORS([18])
807      SECTOR_LENGTH([128])
808      FIRST_SECTOR_ID([1]))
809   LEGACY_FLOPPY_OPTION( ssdd5, "dsk", "5.25\" SSDD", basicdsk_identify_default, basicdsk_construct_default, NULL,
810      HEADS([2])
811      TRACKS([40])
812      SECTORS([18])
813      SECTOR_LENGTH([128])
814      FIRST_SECTOR_ID([1]))
791    LEGACY_FLOPPY_OPTION( sssd8, "dsk", "8\" SSSD", basicdsk_identify_default, basicdsk_construct_default, NULL,
792        HEADS([1])
793        TRACKS([77])
794        SECTORS([26])
795        SECTOR_LENGTH([128])
796        FIRST_SECTOR_ID([1]))
797    LEGACY_FLOPPY_OPTION( ssdd8, "dsk", "8\" SSDD", basicdsk_identify_default, basicdsk_construct_default, NULL,
798        HEADS([1])
799        TRACKS([77])
800        SECTORS([26])
801        SECTOR_LENGTH([256])
802        FIRST_SECTOR_ID([1]))
803    LEGACY_FLOPPY_OPTION( sssd5, "dsk", "5.25\" SSSD", basicdsk_identify_default, basicdsk_construct_default, NULL,
804        HEADS([1])
805        TRACKS([40])
806        SECTORS([18])
807        SECTOR_LENGTH([128])
808        FIRST_SECTOR_ID([1]))
809    LEGACY_FLOPPY_OPTION( ssdd5, "dsk", "5.25\" SSDD", basicdsk_identify_default, basicdsk_construct_default, NULL,
810        HEADS([2])
811        TRACKS([40])
812        SECTORS([18])
813        SECTOR_LENGTH([128])
814        FIRST_SECTOR_ID([1]))
815815LEGACY_FLOPPY_OPTIONS_END
816816*/
817817
r19613r19614
927927   MCFG_FLOPPY_DRIVE_ADD(FD1797_TAG":0", xerox820_floppies, "sa450", NULL, floppy_image_device::default_floppy_formats)
928928   MCFG_FLOPPY_DRIVE_ADD(FD1797_TAG":1", xerox820_floppies, "sa450", NULL, floppy_image_device::default_floppy_formats)
929929   MCFG_COM8116_ADD(COM8116_TAG, XTAL_5_0688MHz, com8116_intf)
930   
930
931931   // SASI bus
932932   MCFG_SCSIBUS_ADD(SASIBUS_TAG)
933933   MCFG_SCSIDEV_ADD(SASIBUS_TAG ":harddisk0", SA1403D, SCSI_ID_0)
r19613r19614
961961ROM_START( bigboard )
962962   ROM_REGION( 0x1000, "monitor", 0 )
963963   ROM_LOAD( "bigboard.u67", 0x0000, 0x0800, CRC(5a85a228) SHA1(d51a2cbd0aae80315bda9530275aabfe8305364e))
964   
964
965965   ROM_REGION( 0x800, "chargen", 0 )
966966   ROM_LOAD( "bigboard.u73", 0x0000, 0x0800, CRC(10bf0d81) SHA1(7ec73670a4d9d6421a5d6a4c4edc8b7c87923f6c) )
967967ROM_END
r19613r19614
10361036/* System Drivers */
10371037
10381038/*    YEAR  NAME        PARENT      COMPAT  MACHINE     INPUT       INIT    COMPANY                         FULLNAME        FLAGS */
1039COMP( 1980, bigboard,   0,          0,      bigboard,   xerox820, driver_device,   0,      "Digital Research Computers",   "Big Board",       GAME_IMPERFECT_KEYBOARD )
1040COMP( 1981, x820,      bigboard,   0,      xerox820,   xerox820, driver_device,   0,      "Xerox",                        "Xerox 820",       GAME_IMPERFECT_KEYBOARD | GAME_NO_SOUND_HW )
1041COMP( 1982, mk82,      bigboard,   0,      bigboard,   xerox820, driver_device,   0,      "Scomar",                       "MK-82",          GAME_IMPERFECT_KEYBOARD )
1042COMP( 1983, x820ii,    0,         0,      xerox820ii, xerox820, driver_device,   0,      "Xerox",                        "Xerox 820-II",    GAME_NOT_WORKING | GAME_IMPERFECT_KEYBOARD )
1043COMP( 1983, x168,      x820ii,    0,      xerox168,   xerox820, driver_device,   0,      "Xerox",                        "Xerox 16/8",      GAME_NOT_WORKING | GAME_IMPERFECT_KEYBOARD )
1044COMP( 1983, mk83,       x820ii,    0,      mk83,       xerox820, driver_device,   0,      "Scomar",                       "MK-83",           GAME_NOT_WORKING | GAME_IMPERFECT_KEYBOARD | GAME_NO_SOUND_HW )
1039COMP( 1980, bigboard,   0,          0,      bigboard,   xerox820, driver_device,   0,      "Digital Research Computers",   "Big Board",    GAME_IMPERFECT_KEYBOARD )
1040COMP( 1981, x820,      bigboard,   0,      xerox820,   xerox820, driver_device,   0,      "Xerox",                        "Xerox 820",    GAME_IMPERFECT_KEYBOARD | GAME_NO_SOUND_HW )
1041COMP( 1982, mk82,      bigboard,   0,      bigboard,   xerox820, driver_device,   0,      "Scomar",                       "MK-82",       GAME_IMPERFECT_KEYBOARD )
1042COMP( 1983, x820ii,    0,        0,      xerox820ii, xerox820, driver_device,   0,      "Xerox",                        "Xerox 820-II",   GAME_NOT_WORKING | GAME_IMPERFECT_KEYBOARD )
1043COMP( 1983, x168,      x820ii,    0,      xerox168,   xerox820, driver_device,   0,      "Xerox",                        "Xerox 16/8",   GAME_NOT_WORKING | GAME_IMPERFECT_KEYBOARD )
1044COMP( 1983, mk83,       x820ii,    0,      mk83,       xerox820, driver_device,   0,      "Scomar",                       "MK-83",        GAME_NOT_WORKING | GAME_IMPERFECT_KEYBOARD | GAME_NO_SOUND_HW )
trunk/src/mess/drivers/tim011.c
r19613r19614
2323        m_floppy1(*this, FDC9266_TAG ":1:35dd"),
2424        m_floppy2(*this, FDC9266_TAG ":2:35dd"),
2525        m_floppy3(*this, FDC9266_TAG ":3:35dd") { }
26       
26
2727   virtual void machine_reset();
2828   virtual void video_start();
2929   UINT32 screen_update_tim011(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
r19613r19614
3131   DECLARE_WRITE8_MEMBER(scroll_w);
3232   DECLARE_WRITE8_MEMBER(fdc_dma_w);
3333   DECLARE_READ8_MEMBER(print_r);
34   DECLARE_READ8_MEMBER(scroll_r);   
34   DECLARE_READ8_MEMBER(scroll_r);
3535   void irq_w(bool state);
3636   void drq_w(bool state);
3737   UINT8 m_scroll;
38   
38
3939   required_device<cpu_device> m_maincpu;
4040   required_device<upd765a_device> m_fdc;
4141   required_device<floppy_image_device> m_floppy0;
4242   required_device<floppy_image_device> m_floppy1;
4343   required_device<floppy_image_device> m_floppy2;
44   required_device<floppy_image_device> m_floppy3;   
44   required_device<floppy_image_device> m_floppy3;
4545};
4646
4747
4848static ADDRESS_MAP_START(tim011_mem, AS_PROGRAM, 8, tim011_state)
4949   ADDRESS_MAP_UNMAP_HIGH
50   AM_RANGE(0x00000, 0x01fff) AM_ROM AM_MIRROR(0x3e000)   
50   AM_RANGE(0x00000, 0x01fff) AM_ROM AM_MIRROR(0x3e000)
5151   AM_RANGE(0x40000, 0x7ffff) AM_RAM // 256KB RAM  8 * 41256 DRAM
5252ADDRESS_MAP_END
5353
r19613r19614
5757   AM_RANGE(0x0080, 0x009f) AM_DEVICE(FDC9266_TAG, upd765a_device, map)
5858   //AM_RANGE(0x00a0, 0x00a0) AM_MIRROR(0x001f)  AM_WRITE(fdc_dma_w)
5959   //AM_RANGE(0x00c0, 0x00c1) AM_MIRROR(0x000e)  AM_READWRITE(print_r,print_w)
60   //AM_RANGE(0x00d0, 0x00d0) AM_MIRROR(0x000f)  AM_READWRITE(scroll_r,scroll_w)   
60   //AM_RANGE(0x00d0, 0x00d0) AM_MIRROR(0x000f)  AM_READWRITE(scroll_r,scroll_w)
6161   AM_RANGE(0x8000, 0xffff) AM_RAM // Video RAM 43256 SRAM  (32KB)
6262ADDRESS_MAP_END
6363
r19613r19614
8282   m_floppy1->mon_w(0);
8383   m_floppy2->mon_w(0);
8484   m_floppy3->mon_w(0);
85   
85
8686   m_fdc->setup_intrq_cb(upd765a_device::line_cb(FUNC(tim011_state::irq_w), this));
87   m_fdc->setup_drq_cb(upd765a_device::line_cb(FUNC(tim011_state::drq_w), this));   
87   m_fdc->setup_drq_cb(upd765a_device::line_cb(FUNC(tim011_state::drq_w), this));
8888}
8989
9090void tim011_state::video_start()
r19613r19614
140140   MCFG_CPU_IO_MAP(tim011_io)
141141   MCFG_CPU_VBLANK_INT_DRIVER("screen", tim011_state, irq0_line_hold)
142142
143//   MCFG_CPU_ADD("keyboard",COSMAC, XTAL_1_75MHz) // CDP1802, uknown clock
143//  MCFG_CPU_ADD("keyboard",COSMAC, XTAL_1_75MHz) // CDP1802, uknown clock
144144
145145   // FDC9266 location U43 XTAL_8MHz
146146   MCFG_UPD765A_ADD(FDC9266_TAG, true, true)
r19613r19614
149149   MCFG_FLOPPY_DRIVE_ADD(FDC9266_TAG ":1", tim011_floppies, "35dd", 0, tim011_floppy_formats)
150150   MCFG_FLOPPY_DRIVE_ADD(FDC9266_TAG ":2", tim011_floppies, "35dd", 0, tim011_floppy_formats)
151151   MCFG_FLOPPY_DRIVE_ADD(FDC9266_TAG ":3", tim011_floppies, "35dd", 0, tim011_floppy_formats)
152   
152
153153   /* video hardware */
154154   MCFG_SCREEN_ADD("screen", RASTER)
155155   MCFG_SCREEN_REFRESH_RATE(50)
trunk/src/mess/drivers/esqmr.c
r19613r19614
33    esqmr.c - Ensoniq MR-61, MR-76, and MR-Rack
44
55    Skeleton driver by R. Belmont
6
6
77    Hardware:
8       CPU: 68340 MCU
9       Sound: 2xES5506
10      Effects: ES5511
8        CPU: 68340 MCU
9        Sound: 2xES5506
10        Effects: ES5511
1111
1212    Memory map:
13 
14    0x000000-0x0FFFFF   OS ROM
15 
13
14    0x000000-0x0FFFFF   OS ROM
15
1616***************************************************************************/
1717
1818#include "emu.h"
r19613r19614
4545
4646static ADDRESS_MAP_START( mr_map, AS_PROGRAM, 32, esqmr_state )
4747    AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("maincpu", 0)
48//   AM_RANGE(0x200000, 0x20003f) AM_DEVREADWRITE8_LEGACY("ensoniq", es5506_r, es5506_w, 0xffffffff)
49//   AM_RANGE(0x240000, 0x24003f) AM_DEVREADWRITE8_LEGACY("ensoniq2", es5506_r, es5506_w, 0xffffffff)
48//  AM_RANGE(0x200000, 0x20003f) AM_DEVREADWRITE8_LEGACY("ensoniq", es5506_r, es5506_w, 0xffffffff)
49//  AM_RANGE(0x240000, 0x24003f) AM_DEVREADWRITE8_LEGACY("ensoniq2", es5506_r, es5506_w, 0xffffffff)
5050//    AM_RANGE(0xff0000, 0xffffff) AM_RAM AM_SHARE("osram")
5151ADDRESS_MAP_END
5252
r19613r19614
101101
102102ROM_START( mrrack )
103103    ROM_REGION(0x100000, "maincpu", 0)
104   ROM_LOAD16_BYTE( "mr-rack-150-lo.bin", 0x000001, 0x080000, CRC(b29988a1) SHA1(986c2def11de27fa2b9be55ac32f7fec0c414bca) )
105   ROM_LOAD16_BYTE( "mr-rack-150-up.bin", 0x000000, 0x080000, CRC(71511692) SHA1(54744f16f1db1ac5abb2f70b6e04aebf1e0e029d) )
104   ROM_LOAD16_BYTE( "mr-rack-150-lo.bin", 0x000001, 0x080000, CRC(b29988a1) SHA1(986c2def11de27fa2b9be55ac32f7fec0c414bca) )
105   ROM_LOAD16_BYTE( "mr-rack-150-up.bin", 0x000000, 0x080000, CRC(71511692) SHA1(54744f16f1db1ac5abb2f70b6e04aebf1e0e029d) )
106106
107107    ROM_REGION(0x200000, "waverom", ROMREGION_ERASE00)
108108    ROM_REGION(0x200000, "waverom2", ROMREGION_ERASE00)
trunk/src/mess/drivers/pc.c
r19613r19614
22522252    ROM_REGION(0x100000,"maincpu", 0)
22532253   ROM_LOAD( "tmm27128ad.bin",0xfc000, 0x4000, CRC(f8543362) SHA1(fef625e260ca89ba02174584bdc12db609f0780e))
22542254   /* IBM 1501981(CGA) and 1501985(MDA) Character rom */
2255   ROM_REGION(0x2000,"gfx1", 0)   
2255   ROM_REGION(0x2000,"gfx1", 0)
22562256   ROM_LOAD("5788005.u33", 0x00000, 0x2000, CRC(0bf56d70) SHA1(c2a8b10808bf51a3c123ba3eb1e9dd608231916f)) /* "AMI 8412PI // 5788005 // (C) IBM CORP. 1981 // KOREA" */
22572257ROM_END
22582258

Previous 199869 Revisions Next


© 1997-2024 The MAME Team