Previous 199869 Revisions Next

r30906 Monday 9th June, 2014 at 02:44:47 UTC by hap
base colecop on coleco, not dina
[src/mess/drivers]coleco.c

trunk/src/mess/drivers/coleco.c
r30905r30906
112112   AM_RANGE(0x8000, 0xffff) AM_ROM
113113ADDRESS_MAP_END
114114
115static ADDRESS_MAP_START( czz50_io_map, AS_IO, 8, coleco_state )
116   ADDRESS_MAP_GLOBAL_MASK(0xff)
117   AM_RANGE(0x80, 0x80) AM_MIRROR(0x1f) AM_WRITE(paddle_off_w)
118   AM_RANGE(0xa0, 0xa0) AM_MIRROR(0x1e) AM_DEVREADWRITE("tms9928a", tms9928a_device, vram_read, vram_write)
119   AM_RANGE(0xa1, 0xa1) AM_MIRROR(0x1e) AM_DEVREADWRITE("tms9928a", tms9928a_device, register_read, register_write)
120   AM_RANGE(0xc0, 0xc0) AM_MIRROR(0x1f) AM_WRITE(paddle_on_w)
121   AM_RANGE(0xe0, 0xe0) AM_MIRROR(0x1f) AM_DEVWRITE("sn76489a", sn76489a_device, write)
122   AM_RANGE(0xe0, 0xe0) AM_MIRROR(0x1d) AM_READ(paddle_1_r)
123   AM_RANGE(0xe2, 0xe2) AM_MIRROR(0x1d) AM_READ(paddle_2_r)
124ADDRESS_MAP_END
125115
126
127116/* Input Ports */
128117
129118static INPUT_PORTS_START( czz50 )
r30905r30906
298287/* Machine Drivers */
299288
300289static MACHINE_CONFIG_START( coleco, coleco_state )
301   // basic machine hardware
302   MCFG_CPU_ADD("maincpu", Z80, XTAL_7_15909MHz/2)   // 3.579545 MHz
290
291   /* basic machine hardware */
292   MCFG_CPU_ADD("maincpu", Z80, XTAL_7_15909MHz/2) // 3.579545 MHz
303293   MCFG_CPU_PROGRAM_MAP(coleco_map)
304294   MCFG_CPU_IO_MAP(coleco_io_map)
305295
306   // video hardware
296   /* video hardware */
307297   MCFG_DEVICE_ADD( "tms9928a", TMS9928A, XTAL_10_738635MHz / 2 )
308298   MCFG_TMS9928A_VRAM_SIZE(0x4000)
309299   MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(coleco_state, coleco_vdp_interrupt))
310300   MCFG_TMS9928A_SCREEN_ADD_NTSC( "screen" )
311301   MCFG_SCREEN_UPDATE_DEVICE( "tms9928a", tms9928a_device, screen_update )
312302
313   // sound hardware
303   /* sound hardware */
314304   MCFG_SPEAKER_STANDARD_MONO("mono")
315   MCFG_SOUND_ADD("sn76489a", SN76489A, XTAL_7_15909MHz/2) /* 3.579545 MHz */
305   MCFG_SOUND_ADD("sn76489a", SN76489A, XTAL_7_15909MHz/2) // 3.579545 MHz
316306   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
317307
318308   /* cartridge */
r30905r30906
327317   MCFG_TIMER_DRIVER_ADD_PERIODIC("paddle_timer", coleco_state, paddle_update_callback, attotime::from_msec(20))
328318MACHINE_CONFIG_END
329319
330static MACHINE_CONFIG_START( czz50, coleco_state )
331   // basic machine hardware
332   MCFG_CPU_ADD("maincpu", Z80, XTAL_7_15909MHz/2)   // ???
333   MCFG_CPU_PROGRAM_MAP(czz50_map)
334   MCFG_CPU_IO_MAP(czz50_io_map)
320static MACHINE_CONFIG_DERIVED( colecop, coleco )
335321
336   // video hardware
337   MCFG_DEVICE_ADD( "tms9928a", TMS9928A, XTAL_10_738635MHz / 2 )
322   /* video hardware */
323   MCFG_DEVICE_REMOVE("tms9928a")
324   MCFG_DEVICE_REMOVE("screen")
325
326   MCFG_DEVICE_ADD( "tms9928a", TMS9929A, XTAL_10_738635MHz / 2 )
338327   MCFG_TMS9928A_VRAM_SIZE(0x4000)
339328   MCFG_TMS9928A_OUT_INT_LINE_CB(WRITELINE(coleco_state, coleco_vdp_interrupt))
340   MCFG_TMS9928A_SCREEN_ADD_NTSC( "screen" )
329   MCFG_TMS9928A_SCREEN_ADD_PAL( "screen" )
341330   MCFG_SCREEN_UPDATE_DEVICE( "tms9928a", tms9928a_device, screen_update )
331MACHINE_CONFIG_END
342332
343   // sound hardware
344   MCFG_SPEAKER_STANDARD_MONO("mono")
345   MCFG_SOUND_ADD("sn76489a", SN76489A, XTAL_7_15909MHz/2) // ???
346   MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
333static MACHINE_CONFIG_DERIVED( czz50, coleco )
347334
348   /* cartridge */
349   MCFG_CARTSLOT_ADD("cart")
350   MCFG_CARTSLOT_EXTENSION_LIST("rom,col,bin")
351   MCFG_CARTSLOT_NOT_MANDATORY
352   MCFG_CARTSLOT_LOAD(coleco_state,czz50_cart)
353   MCFG_CARTSLOT_INTERFACE("coleco_cart")
335   /* basic machine hardware */
336   MCFG_CPU_MODIFY("maincpu") // note: cpu speed unverified, assume it's the same as ColecoVision
337   MCFG_CPU_PROGRAM_MAP(czz50_map)
354338
355   /* software lists */
356   MCFG_SOFTWARE_LIST_ADD("cart_list","coleco")
357
358   MCFG_TIMER_DRIVER_ADD_PERIODIC("paddle_timer", coleco_state, paddle_update_callback, attotime::from_msec(20))
339   /* cartridge */
340   MCFG_CARTSLOT_MODIFY("cart")
341   MCFG_CARTSLOT_LOAD(coleco_state, czz50_cart)
359342MACHINE_CONFIG_END
360343
361344static MACHINE_CONFIG_DERIVED( dina, czz50 )
345
346   /* video hardware */
362347   MCFG_DEVICE_REMOVE("tms9928a")
363348   MCFG_DEVICE_REMOVE("screen")
364349
r30905r30906
398383
399384ROM_START (colecop)
400385   ROM_REGION( 0x10000, "maincpu", 0 )
401        /* Has shorter delay than NTSC - about 3 seconds ($190a) + additional code right at beginning (replacing NTSC FF's) */
402386   ROM_LOAD( "r72114a_8317.u2", 0x0000, 0x2000, CRC(d393c0cc) SHA1(160077afb139943725c634d6539898db59f33657) )
403387   ROM_CART_LOAD("cart", 0x8000, 0x8000, ROM_NOMIRROR | ROM_OPTIONAL)
404388ROM_END
r30905r30906
423407
424408//    YEAR  NAME      PARENT    COMPAT  MACHINE   INPUT   INIT              COMPANY             FULLNAME                            FLAGS
425409CONS( 1982, coleco,   0,        0,      coleco,   coleco, driver_device, 0, "Coleco",           "ColecoVision (NTSC)",              0 )
426CONS( 1983, colecop,  coleco,   0,      dina,     coleco, driver_device, 0, "Coleco",           "ColecoVision (PAL)",               0 )
410CONS( 1983, colecop,  coleco,   0,      colecop,  coleco, driver_device, 0, "Coleco",           "ColecoVision (PAL)",               0 )
427411CONS( 1983, svi603,   coleco,   0,      coleco,   coleco, driver_device, 0, "Spectravideo",     "SVI-603 Coleco Game Adapter",      0 )
428412CONS( 1986, czz50,    0,        coleco, czz50,    czz50,  driver_device, 0, "Bit Corporation",  "Chuang Zao Zhe 50",                0 )
429413CONS( 1988, dina,     czz50,    0,      dina,     czz50,  driver_device, 0, "Telegames",        "Dina",                             0 )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team