Previous 199869 Revisions Next

r20893 Sunday 10th February, 2013 at 14:49:11 UTC by Roberto Fresca
New York Joker: Added inputs, outputs, button-lamps, sound, coin and
note counters, default NVRAM, and promoted to working... [Roberto Fresca]


New games added or promoted from NOT_WORKING status
---------------------------------------------------
New York Joker [Roberto Fresca, David Haywood, Any, The Dumping Union]
[src/mame/drivers]highvdeo.c

trunk/src/mame/drivers/highvdeo.c
r20892r20893
22
33High Video Tour 4000
44
5driver by Mirko Buffoni
6original brasil.c by David Haywood & Angelo Salese
5Driver by Mirko Buffoni.
6Original brasil.c by David Haywood & Angelo Salese.
7Additional work by Roberto Fresca.
78
89
910Memory layout:
r20892r20893
8081There is a simple protection check, tied on an input port.
8182Game is V30 based, with rom banking (2Mb)
8283
84*************************************************************************************************
85
86  Game notes....
87
88  * New York Joker:
89
90  The game needs default NVRAM, otherwise the game parameters will be totally wrong and the game
91  can't work properly. To switch between pins/cards, after insert some credits (before bet on the
92  game), press HOLD3 to get the graphics option, and use HOLD2 and HOLD4 to choose the wished set.
93
94
8395*************************************************************************************************/
8496
8597#include "emu.h"
r20892r20893
114126   DECLARE_READ16_MEMBER(newmcard_vblank_r);
115127   DECLARE_WRITE16_MEMBER(newmcard_vblank_w);
116128   DECLARE_WRITE16_MEMBER(write2_w);
129   DECLARE_WRITE16_MEMBER(nyj_write2_w);
117130   DECLARE_READ16_MEMBER(brasil_status_r);
118131   DECLARE_WRITE16_MEMBER(brasil_status_w);
119132   DECLARE_READ16_MEMBER(ciclone_status_r);
r20892r20893
381394ADDRESS_MAP_END
382395
383396static ADDRESS_MAP_START( nyjoker_io, AS_IO, 16, highvdeo_state )
384//   AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w ) // lamps
385//   AM_RANGE(0x0008, 0x0009) AM_WRITE(tv_ncf_oki6376_w )
386//   AM_RANGE(0x000a, 0x000b) AM_WRITE(tv_ncf_oki6376_st_w )
387   AM_RANGE(0x0030, 0x0035) AM_WRITE(tv_vcf_paletteram_w )
388
397   AM_RANGE(0x0000, 0x0001) AM_WRITE(write1_w )   // lamps
398   AM_RANGE(0x0002, 0x0003) AM_WRITENOP         // alternate coin counter (bits 0 and 2)
399   AM_RANGE(0x0004, 0x0005) AM_WRITE(nyj_write2_w ) // coin and note counter
400//   AM_RANGE(0x0006, 0x0007) AM_WRITENOP
401   AM_RANGE(0x0008, 0x0009) AM_WRITE(tv_ncf_oki6376_w )
402   AM_RANGE(0x000a, 0x000b) AM_WRITE(tv_ncf_oki6376_st_w )
389403   AM_RANGE(0x000c, 0x000d) AM_READ_PORT("IN0")
390   AM_RANGE(0x000e, 0x000f) AM_READ_PORT("IN2")
391   AM_RANGE(0x0010, 0x0011) AM_READ_PORT("IN3")
392   AM_RANGE(0x0012, 0x0013) AM_READ_PORT("IN4")
404   AM_RANGE(0x000e, 0x000f) AM_READ_PORT("DSW")
405   AM_RANGE(0x0010, 0x0011) AM_READ_PORT("IN2")
406   AM_RANGE(0x0012, 0x0013) AM_READ_PORT("IN3")
393407   AM_RANGE(0x0014, 0x0015) AM_READ(tv_ncf_read1_r )
394
408   AM_RANGE(0x0020, 0x0021) AM_WRITENOP
409   AM_RANGE(0x0030, 0x0035) AM_WRITE(tv_vcf_paletteram_w )
395410ADDRESS_MAP_END
396411
397412
413WRITE16_MEMBER(highvdeo_state::nyj_write2_w)
414{
415/*
416    7654 3210
417    =========
418    ---- xxxx  Coin counter (all mixed).
419    ---x ----  Note counter.
420    xxx- ----  Unknown.
421*/
422//   popmessage("%04x",data);
423   coin_counter_w(machine(), 0, ~data & 0x0f);   // Coins (all)
424   coin_counter_w(machine(), 1, ~data & 0x10);   // Notes (all)
425}
426
427
428
429
398430WRITE16_MEMBER(highvdeo_state::tv_tcf_paletteram_w)
399431{
400432   int r, g, b, color;
r20892r20893
657689
658690static INPUT_PORTS_START( nyjoker )
659691   PORT_START("IN0")
660   PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
661   PORT_DIPSETTING(      0x0001, DEF_STR( Off ) )
662   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
663   PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
664   PORT_DIPSETTING(      0x0002, DEF_STR( Off ) )
665   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
666   PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
667   PORT_DIPSETTING(      0x0004, DEF_STR( Off ) )
668   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
669   PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
670   PORT_DIPSETTING(      0x0008, DEF_STR( Off ) )
671   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
672   PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
673   PORT_DIPSETTING(      0x0010, DEF_STR( Off ) )
674   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
675   PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
676   PORT_DIPSETTING(      0x0020, DEF_STR( Off ) )
677   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
678   PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
679   PORT_DIPSETTING(      0x0040, DEF_STR( Off ) )
680   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
681   PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
682   PORT_DIPSETTING(      0x0080, DEF_STR( Off ) )
683   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
692   PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_GAMBLE_TAKE )
693   PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_START1 )
694   PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_POKER_HOLD2 )
695   PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_POKER_HOLD4 )
696   PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_GAMBLE_D_UP ) PORT_NAME("Risk")
697   PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_POKER_HOLD3 ) PORT_NAME("Hold 3 / Choose")
698   PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_POKER_HOLD5 ) PORT_NAME("Hold 5 / Bet")
699   PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_POKER_HOLD1 ) PORT_NAME("Hold 1 / Magic")
684700
685701   PORT_START("IN1")
686   PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
702   PORT_DIPNAME( 0x0001, 0x0001, "IN1" )
687703   PORT_DIPSETTING(      0x0001, DEF_STR( Off ) )
688704   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
689705   PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
r20892r20893
707723   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
708724
709725   PORT_START("IN2")
710   PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
711   PORT_DIPSETTING(      0x0001, DEF_STR( Off ) )
712   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
713   PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
714   PORT_DIPSETTING(      0x0002, DEF_STR( Off ) )
715   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
716   PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
717   PORT_DIPSETTING(      0x0004, DEF_STR( Off ) )
718   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
719   PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
720   PORT_DIPSETTING(      0x0008, DEF_STR( Off ) )
721   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
722   PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
723   PORT_DIPSETTING(      0x0010, DEF_STR( Off ) )
724   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
725   PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
726   PORT_DIPSETTING(      0x0020, DEF_STR( Off ) )
727   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
728   PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
729   PORT_DIPSETTING(      0x0040, DEF_STR( Off ) )
730   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
731   PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
732   PORT_DIPSETTING(      0x0080, DEF_STR( Off ) )
733   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
726   PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) // Coin 1
727   PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) // Coin 2
728   PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN3 ) // Coin 3
729   PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN4 ) // Coin 4 <--- This one has non-timed pulse, so maybe was designed to be KEY IN.
730   PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_COIN5 ) PORT_NAME("Note 1") PORT_CODE(KEYCODE_1_PAD)   // Note 1
731   PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_COIN6 ) PORT_NAME("Note 2") PORT_CODE(KEYCODE_2_PAD)   // Note 2
732   PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN7 ) PORT_NAME("Note 3") PORT_CODE(KEYCODE_3_PAD)   // Note 3
733   PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN8 ) PORT_NAME("Note 4") PORT_CODE(KEYCODE_4_PAD)   // Note 4
734734
735735   PORT_START("IN3")
736   PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
737   PORT_DIPSETTING(      0x0001, DEF_STR( Off ) )
738   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
739   PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
740   PORT_DIPSETTING(      0x0002, DEF_STR( Off ) )
741   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
742   PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
743   PORT_DIPSETTING(      0x0004, DEF_STR( Off ) )
744   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
745   PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
746   PORT_DIPSETTING(      0x0008, DEF_STR( Off ) )
747   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
748   PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
749   PORT_DIPSETTING(      0x0010, DEF_STR( Off ) )
750   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
751   PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
752   PORT_DIPSETTING(      0x0020, DEF_STR( Off ) )
753   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
754   PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
755   PORT_DIPSETTING(      0x0040, DEF_STR( Off ) )
756   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
757   PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
758   PORT_DIPSETTING(      0x0080, DEF_STR( Off ) )
759   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
736   PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_GAMBLE_BOOK )  PORT_NAME("Bookkeeping")               // Account
737   PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_GAMBLE_KEYIN ) PORT_NAME("Key")                     // Key
738   PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_OTHER )      PORT_NAME("Ticket")   PORT_CODE(KEYCODE_T)   // Ticket
739   PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_OTHER )      PORT_NAME("Unknown")  PORT_CODE(KEYCODE_U)   // Unknown
740   PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_OTHER )      PORT_NAME("Hopper 1") PORT_CODE(KEYCODE_H)   // Hopper 1
741   PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_OTHER )      PORT_NAME("Hopper 2") PORT_CODE(KEYCODE_J)   // Hopper 2
742   PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_OTHER )      PORT_NAME("Level 2")  PORT_CODE(KEYCODE_K)   // Level 2
743   PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_OTHER )      PORT_NAME("Level 1")  PORT_CODE(KEYCODE_L)   // Level 1
760744
761   PORT_START("IN4")
762   PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ) )
763   PORT_DIPSETTING(      0x0001, DEF_STR( Off ) )
764   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
765   PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
745   PORT_START("DSW")   // DIP switches bank
746   PORT_DIPNAME( 0x0001, 0x0000, "DSW 8" )            PORT_DIPLOCATION("DSW:!8")
747   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
748   PORT_DIPSETTING(      0x0001, DEF_STR( On ) )
749   PORT_DIPNAME( 0x0002, 0x0002, "Test Mode" )         PORT_DIPLOCATION("DSW:!7")
766750   PORT_DIPSETTING(      0x0002, DEF_STR( Off ) )
767751   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
768   PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
769   PORT_DIPSETTING(      0x0004, DEF_STR( Off ) )
770   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
771   PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
772   PORT_DIPSETTING(      0x0008, DEF_STR( Off ) )
773   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
774   PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
775   PORT_DIPSETTING(      0x0010, DEF_STR( Off ) )
776   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
777   PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
778   PORT_DIPSETTING(      0x0020, DEF_STR( Off ) )
779   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
780   PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
781   PORT_DIPSETTING(      0x0040, DEF_STR( Off ) )
782   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
783   PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
784   PORT_DIPSETTING(      0x0080, DEF_STR( Off ) )
785   PORT_DIPSETTING(      0x0000, DEF_STR( On ) )
752   PORT_DIPNAME( 0x0004, 0x0000, "DSW 6" )            PORT_DIPLOCATION("DSW:!6")
753   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
754   PORT_DIPSETTING(      0x0004, DEF_STR( On ) )
755   PORT_DIPNAME( 0x0008, 0x0000, "DSW 5" )            PORT_DIPLOCATION("DSW:!5")
756   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
757   PORT_DIPSETTING(      0x0008, DEF_STR( On ) )
758   PORT_DIPNAME( 0x0010, 0x0000, "DSW 4" )            PORT_DIPLOCATION("DSW:!4")
759   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
760   PORT_DIPSETTING(      0x0010, DEF_STR( On ) )
761   PORT_DIPNAME( 0x0020, 0x0000, "DSW 3" )            PORT_DIPLOCATION("DSW:!3")
762   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
763   PORT_DIPSETTING(      0x0020, DEF_STR( On ) )
764   PORT_DIPNAME( 0x0040, 0x0000, "DSW 2" )            PORT_DIPLOCATION("DSW:!2")
765   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
766   PORT_DIPSETTING(      0x0040, DEF_STR( On ) )
767   PORT_DIPNAME( 0x0080, 0x0000, "DSW 1" )            PORT_DIPLOCATION("DSW:!1")
768   PORT_DIPSETTING(      0x0000, DEF_STR( Off ) )
769   PORT_DIPSETTING(      0x0080, DEF_STR( On ) )
786770INPUT_PORTS_END
787771
788772
r20892r20893
12521236ROM_END
12531237
12541238/*
1255pcb made in spain video/mpu-5
1239  New York Joker...
12561240
1257CPU d70116c 8
1258adv476kp35 CMOS Monolithic 256x18 Color Palette RAM-DAC
1259Xtal 16Mhz
1260oki m6376
1261Lattice   isplsi1032e
1241  pcb made in spain video/mpu-5
12621242
1263model TV
1264vers 2.0
1265date 2/99
1243  CPU d70116c 8
1244  adv476kp35 CMOS Monolithic 256x18 Color Palette RAM-DAC
1245  Xtal 16Mhz
1246  oki m6376
1247  Lattice   isplsi1032e
12661248
12671 empty socket
1249  model TV
1250  vers 2.0
1251  date 2/99
12681252
1269ny2.ic25 is audio
1253  1 empty socket
1254  ny2.ic25 is audio
1255
12701256*/
12711257
12721258ROM_START( nyjoker )
r20892r20893
12741260   ROM_LOAD16_BYTE( "ni8-2-1.ic8", 0x00001, 0x80000, CRC(81416871) SHA1(c5519b1fcf0131710a8972d9016b8af5f8ac75a1) )
12751261   ROM_LOAD16_BYTE( "ni7-2-1.ic7", 0x00000, 0x80000, CRC(835b8606) SHA1(a036f8568f0e41eb1f4db7fa41a9cd4b92d41514) )
12761262
1277   ROM_REGION( 0x040000, "boot_prg", 0 ) /*copy for program code*/
1263   ROM_REGION( 0x040000, "boot_prg", 0 ) /* copy for program code */
12781264   ROM_COPY( "user1", 0x0C0000, 0x000000, 0x40000 )
12791265
12801266   ROM_REGION( 0x080000, "oki", 0 ) /* M6376 Samples */
12811267   ROM_LOAD( "ny2.ic25", 0x00000, 0x80000, CRC(eeea7f4d) SHA1(2afc498792f848fd45be4d3eb3e6607edb5dd9df) )
1268
1269   ROM_REGION( 0x3c00, "nvram", 0 )    /* default NVRAM (to check bounds) */
1270   ROM_LOAD( "nyjoker_nvram", 0x0000, 0x3c00, CRC(5ed3d184) SHA1(043ac9ea33676529d02e340891f8447c4497e73e) )
12821271ROM_END
12831272
12841273ROM_START( cfever1k )
r20892r20893
14721461GAMEL( 2000, tour4010,  0,      tv_ncf,   tv_ncf, driver_device,   0,       ROT0,  "High Video", "Tour 4010",         0, layout_fashion )
14731462GAMEL( 2000, cfever51,  0,      tv_ncf,   tv_ncf, driver_device,   0,       ROT0,  "High Video", "Casino Fever 5.1",  0, layout_fashion )
14741463GAMEL( 2000, cfever61,  0,      tv_ncf,   tv_ncf, driver_device,   0,       ROT0,  "High Video", "Casino Fever 6.1",  0, layout_fashion )
1475GAMEL( 2000, nyjoker,   0,      nyjoker,  nyjoker,driver_device,   0,       ROT0,  "High Video?", "New York Joker",  GAME_NOT_WORKING, layout_fashion ) // todo: fix inputs, output ports
1464GAMEL( 2000, nyjoker,   0,      nyjoker,  nyjoker,driver_device,   0,       ROT0,  "High Video", "New York Joker",    0, layout_fashion )
14761465GAMEL( 2000, cfever1k,  0,      tv_tcf,   tv_tcf, driver_device,   0,       ROT0,  "High Video", "Casino Fever 1k",   0, layout_fashion )
14771466GAMEL( 2000, girotutt,  0,      tv_tcf,   tv_tcf, driver_device,   0,       ROT0,  "High Video", "GiroTutto",         0, layout_fashion )
1478GAMEL( 2000, ciclone,   0,      ciclone,  tv_tcf, highvdeo_state,  ciclone, ROT0,  "High Video", "Ciclone",           0, layout_fashion )
1467GAMEL( 2000, ciclone,   0,      ciclone,  tv_tcf, highvdeo_state,  ciclone, ROT0,  "High Video", "Ciclone",           0, layout_fashion )
14791468GAMEL( 2000, newmcard,  0,      newmcard, tv_tcf, driver_device,   0,       ROT0,  "High Video", "New Magic Card",    0, layout_fashion )
14801469GAMEL( 2000, brasil,    0,      brasil,   brasil, driver_device,   0,       ROT0,  "High Video", "Bra$il (Version 3)",     0, layout_fashion )
1481GAMEL( 2000, fashion,   brasil, brasil,   fashion, highvdeo_state, fashion, ROT0,  "High Video", "Fashion (Version 2.14)", 0, layout_fashion )
1470GAMEL( 2000, fashion,   brasil, brasil,   fashion, highvdeo_state, fashion, ROT0,  "High Video", "Fashion (Version 2.14)", 0, layout_fashion )

Previous 199869 Revisions Next


© 1997-2024 The MAME Team