diff --git a/src/mame/drivers/mpu12wbk.cpp b/src/mame/drivers/mpu12wbk.cpp index 9783e64c722..5859db4c3e4 100644 --- a/src/mame/drivers/mpu12wbk.cpp +++ b/src/mame/drivers/mpu12wbk.cpp @@ -10,7 +10,8 @@ Games running on this hardware: - * Fruit Star Bonus. 1997, Webak Elektronik. + * Fruit Star Bonus (Ver 8.27PVIE). 199?, Webak Elektronik. + * Fruit Star Bonus (Ver 8.20PIR). 1997, Webak Elektronik. ***************************************************************************************** @@ -45,7 +46,7 @@ ***************************************************************************************** - PCB Layout: + PCB Layout (Ver 8.27PVIE) : .--------------------------------------------------------------------------------------. | .---------. .---------. | @@ -164,6 +165,176 @@ '--------------------------------------------------------------------------------' + ººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººººº + + + PCB Layout (Ver 8.20PIR) : + + .--------------------------------------------------------------------------------------. + | .---------. .---------. | + | |74LS174N | |74LS174N | .------------. | + | '---------' '---------' |8 1| .------------. | + | | DIP1 | | DM74LS245N | | + | .------------. .---------. '------------' '------------' | + | | N82S147AN | |N82S131AN| 2x17 connector | + | '------------' '---------' .---------------------------------. | + | .-------. |o o o o o o o o o o o o o o o o o| | + | .------------------. .---------. | XTAL | |o o o o o o o o o o o o o o o o o| | + | | Fruit 3 | |74LS194AN| | 8 Mhz | '---------------------------------' | + | | 27C512 | '---------' '-------' | + | | IC39| .---------. .--. .--------------------. .----------. | + | '------------------' |74LS194AN| |SN| | | |SN74LS02N | | + | '---------' |74| | EMPTY SOCKET | '----------' | + | .------------------. .---------. |LS| .--. | | | + | | Fruit 2 | |74LS194AN| |00| |SN| | IC4| | + | | 27C512 | '---------' |N | |74| '--------------------' .------. | + | | IC38| '--' |LS| | | | + | '------------------' .---------. .--. |00| .------------------. | | | + | |74LS194AN| |SN| |N | | MB8464A-10L-SK | | | | + | .------------------. '---------' |74| '--' '------------------' |AY-3 | | + | | Fruit 1 | |LS| |8910A | | + | | 27C512 | .---------. |02| .-------------------------------. | | | + | | IC37| |74LS194AN| |N | |EPOXY BLOCK | | | | + | '------------------' '---------' | | | .------. | | | | + | '--' | | | | | | | + | .---------. .--. | | | | | | | + | .-------------. |74LS194AN| |DM| | | | | | | | + | | DM74LS374N | '---------' |74| | | | | | | | + | '-------------' |LS| | | | | | | | + | .---------. |74| | | MCU | | | | | + | .-------------. |74LS174N | |AN| | | | | | | | + | | DM74LS245N | '---------' | | | |68B09P| | | | | + | '-------------' '--' | | | | | | | + | .-------------. .--. | | | | | | | + | | DM74LS374N | |DM| | | | | | | | + | .-------. '-------------' |74| | | | | '------' | + | | | |LS| | | | | | + | | | .----------------. .--. |24| | | | .------. | | + | | | | MB8464A-10L-SK | |SN| |5N| | | | |FLASH | | .--. | + | | | '----------------' |74| | | | | | | | | |LM| | + | | | |LS| | | | | | | P28F | | |35| | + | | | .---------. .--. |59| | | | '------' | 512 | | |8N| | + | | MC | |74LS157N | |MB| |0N| | | | | | | '--' | + | | | '---------' |84| | | '--' | | | | | + | |68B45P | |64| '--' | | | | .--------.| + | | | .---------. |A-| .--. | .---. | | | | LM380N || + | | | |74LS157N | |10| .--. |DM| | | | | | | '--------'| + | | | '---------' |L-| |SN| |74| | |TIB| | | | | + | | | |SK| |74| |LS| | |PAL| | | | .--. | + | | | .---------. | | |LS| |24| | |16 | | IC2| | |SN| | + | | | |74LS157N | | | |59| |5N| | |L8 | '------' | |74| | + | | | '---------' | | |0N| | | | | | | |LS| | + | | | | | | | | | | | | | |27| | + | | | .---------. | | '--' | | | | | | |3N| | + | | | |74LS157N | | | | | | '---' | | | | + | '-------' '---------' '--' '--' | | | | | + | | | | | | + | .---------. .-------------. '-------------------------------' '--' | + | |74LS174N | | DM74LS245N | | + | '---------' '-------------' .---. .---------. .---------. .---------. | + | |A00| | 74LS138N| | 74LS138N| |74LS245N | | + | .-----------. .-------------. '---' '---------' '---------' '---------' | + | |DM74LS245N | | DM74LS245N | | + | '-----------' '-------------' .--------. .------------. .------------. .----------. | + | |74LS174N| | SN74LS273N | | SN74LS273N | |898-3-R220| | + | .----------. .----------. '--------' '------------' '------------' '----------' | + | |898-3-R220| |898-3-R220| | + | '----------' '----------' .--------. .--------. .--------. | + | |ULN2003A| |ULN2003A| |ULN2003A| | + | '--------' '--------' '--------' | + | | + '------.- - - - - -2x22 edge connector- - - - - - -.-------.2x10 edge connector.-------' + | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + '-------------------------------------------' '-------------------' + + A00 = PCF1251P + + + + DIP 1: + +---------------+ + | |#|#|#|#|#| | | + |---------------| + |#| | | | | |#|#| + +---------------+ + 1 2 3 4 5 6 7 8 + + + + EPOXY BLOCK - COVER: + +--------------------------------------------------------------------------------+ + | +-----------------------+ | + | ####################################### | VERSION | | + | # ## ## # | Fruit STK | | + | # ## # # ##### #### ### # # ## # +-----------------------+ | + | ### # # # # # # # # # ### | + | ##### # # # ### #### ##### ### ##### +-----------------------+ | + | ### # # # # # # # # # # ### | NO: 6*** | | + | # ## # # ##### #### # # # # ## # | --------------------- | | + | # ## ## # | DATE: | | + | ####################################### | --------------------- | | + | | CUST: | | + | SCHWANENSTADT - AUSTRIA +-----------------------+ | + | Tel.: 43 (7673) 4201-0 | + | Fax : 43 (7673) 4201-23 | + | | + | #################################################################### | + | # ## ## ## #### # # ## #### ## # | + | # ## # # # # # # # # # # # ## # | + | ### # # # #### # # # # # ### | + | # ## # # # # # # # ## # | + | # ## # # # ### # ##### ## # | + | #################################################################### | + | | + +--------------------------------------------------------------------------------+ + + + PINOUT: + + (WEBAK CONNECTION Standard MPU12/MPU2000) + + +----------------------------------------------------------------------------------+ + | Component-Side || Solder-Side | + +----------------------------------------------------------------------------------+ + | Function | Direction | Nr. || Nr. | Direction | Function | + +==================================================================================+ + | HOPPER-OUT | OUTPUT | 10 || J | OUTPUT | | + | REMOTE-PL | OUTPUT | 09 || I | OUTPUT | | + | REMOTE-CLOCK | OUTPUT | 08 || H | OUTPUT | REMOTE-DOUT | + | Lamp HOPPER-OUT | OUTPUT | 07 || G | INPUT | REMOTE-IN | + | REMOTE-SELECT | INPUT | 06 || F | INPUT | | + | | INPUT | 05 || E | INPUT | Bookkeeping 3 | + | | INPUT | 04 || D | INPUT | Button "Select Game" | + | | | 03 || C | | | + | EX64-SELECT | OUTPUT | 02 || B | OUTPUT | Lamp "Select Game" | + | EXTRA-Lamp | Output | 01 || A | OUTPUT | reserved | + +----------------------------------------------------------------------------------+ + +----------------------------------------------------------------------------------+ + | GND | SUPPLY | 22 || Z | SUPPLY | GND | + | GND | SUPPLY | 21 || Y | SUPPLY | GND | + | GND | SUPPLY | 20 || X | SUPPLY | GND | + | +5V | SUPPLY | 19 || W | SUPPLY | +5V | + | +12V | SUPPLY | 18 || V | SUPPLY | +12V | + | LAMP - HOLD 1 | OUTPUT | 17 || U | OUTPUT | LAMP - START | + | LAMP - HOLD 2 | OUTPUT | 16 || T | OUTPUT | LAMP - HOLD 5 | + | LAMP - CANCEL | OUTPUT | 15 || S | OUTPUT | LAMP - HOLD 4 | + | COIN - INPUT 1 | INPUT | 14 || R | OUTPUT | LAMP - HOLD 3/Printer| + | Mech. Counter-IN | OUTPUT | 13 || P | INPUT | BOOKKEEPING 1 | + | Mech. Counter-OUT | OUTPUT | 12 || N | INPUT | Button HOLD 1 | + | Mech. Counter-3 | OUTPUT | 11 || M | INPUT | Button CANCEL | + | Button HOLD 5 | INPUT | 10 || L | INPUT | Button START | + | Bookkeeping 2 | INPUT | 09 || K | INPUT | Bookkeeping A(Waiter)| + | Button HOLD 2 | INPUT | 08 || J | INPUT | Button HOLD 4 | + | Coin INPUT 3 | INPUT | 07 || H | INPUT | Button HOLD 3/Printer| + | HOPPER COUNT | INPUT | 06 || F | INPUT | EXTRA Button | + | Button HOPPER OUT | INPUT | 05 || E | INPUT | Coin - INPUT 2 | + | Monitor GREEN |TTLOUT-Anal| 04 || D |TTLOUT-Anal| Monitor RED | + | Monitor SYNC |TTLOUT-Anal| 03 || C |TTLOUT-Anal| Monitor BLUE | + | SPEAKER |OUT-Analog | 02 || B | SUPPLY | Monitor GND | + | CREDIT CLEAR | INPUT | 01 || A | SUPPLY | SPEAKER GND | + +----------------------------------------------------------------------------------+ + + ***************************************************************************************** -------------------- @@ -192,6 +363,13 @@ DRIVER UPDATES: + [2022-01-09] + + - Added a new parent. + - Improved gfxdecode. Added two extra bitplanes. + - Added more ASCII layouts and technical notes. + + [2012-10-10] - Initial release. @@ -454,28 +632,11 @@ INPUT_PORTS_END *************************/ static const gfx_layout charlayout = - { -// 8, 8, -// RGN_FRAC(3,3), -// 1, /* 1 bpp */ -// { 0 }, -// { 0, 1, 2, 3, 4, 5, 6, 7 }, -// { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, -// 8*8 /* every char takes 8 consecutive bytes */ - -// 8, 8, -// RGN_FRAC(1,3), -// 3, -// { 0, RGN_FRAC(1,3), RGN_FRAC(2,3) }, /* bitplanes are separated */ -// { 0, 1, 2, 3, 4, 5, 6, 7 }, -// { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, -// 8*8 - 4,8, - RGN_FRAC(1,2), - 4, - { RGN_FRAC(0,2), RGN_FRAC(0,2) + 4, RGN_FRAC(1,2), RGN_FRAC(1,2) + 4 }, + RGN_FRAC(1,3), + 6, + { RGN_FRAC(0,3), RGN_FRAC(0,3) + 4, RGN_FRAC(1,3), RGN_FRAC(1,3) + 4, RGN_FRAC(2,3), RGN_FRAC(2,3) + 4 }, { 3, 2, 1, 0 }, { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, 8*4*2 @@ -491,6 +652,7 @@ static GFXDECODE_START( gfx_mpu12wbk ) GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 16 ) GFXDECODE_END + /************************* * Machine Drivers * *************************/ @@ -507,50 +669,72 @@ void mpu12wbk_state::mpu12wbk(machine_config &config) screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); screen.set_refresh_hz(60); screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size((32+1)*8, (32+1)*8); /* From MC6845, registers 00 & 04. (value-1) */ - screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); /* Driven by MC6845, registers 01 & 06 */ + screen.set_size((32+1)*8, (32+1)*8); // From MC6845, registers 00 & 04. (value-1) + screen.set_visarea(0*8, 32*8-1, 0*8, 32*8-1); // Driven by MC6845, registers 01 & 06 screen.set_screen_update(FUNC(mpu12wbk_state::screen_update_mpu12wbk)); GFXDECODE(config, m_gfxdecode, "palette", gfx_mpu12wbk); PALETTE(config, "palette", FUNC(mpu12wbk_state::mpu12wbk_palette), 512); - mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK/4)); /* guess */ + mc6845_device &crtc(MC6845(config, "crtc", MASTER_CLOCK / 4)); // clock guessed crtc.set_screen("screen"); crtc.set_show_border_area(false); crtc.set_char_width(4); crtc.out_vsync_callback().set_inputline(m_maincpu, INPUT_LINE_NMI); - /* sound hardware */ + // sound hardware SPEAKER(config, "mono").front_center(); - AY8910(config, "ay8910", MASTER_CLOCK/8).add_route(ALL_OUTPUTS, "mono", 1.00); /* clock guessed */ + AY8910(config, "ay8910", MASTER_CLOCK / 8).add_route(ALL_OUTPUTS, "mono", 1.00); // clock guessed } /************************* * Rom Load * *************************/ -/* +/* + Program is inside a CPU epoxy block + with a m6809 and PLD. + + Version 8.27PVIE +*/ +ROM_START( fruitstb ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "p28f512_827_box.ic2", 0x8000, 0x8000, CRC(c41fb59d) SHA1(7f8cde7a33aae83baae2564b8913c43502e7b5b7) ) + ROM_IGNORE( 0x8000 ) // second half is filled with 0xff, vectors are at the end of the 1st half. + + ROM_REGION( 0x30000, "gfx1", 0 ) + ROM_LOAD( "1.ic37", 0x00000, 0x10000, CRC(eaa231ad) SHA1(6c6d708a05b23b8b3f1f5844a587ae6d06940486) ) + ROM_LOAD( "2.ic38", 0x10000, 0x10000, CRC(0a7126aa) SHA1(28a05ca824922bb362b86f25f300833db30a91ae) ) + ROM_LOAD( "3.ic39", 0x20000, 0x10000, CRC(81ad7752) SHA1(b5be715c9c1e0c20f63bfb2f9dcbadafe758a098) ) // two extra bitplanes. + + ROM_REGION( 0x0400, "proms", 0 ) + ROM_LOAD( "82s131.ic47", 0x0000, 0x0200, CRC(54565d41) SHA1(8e412a3441c9c1e7f8309f2087389ac4250896e6) ) + ROM_LOAD( "82s147.ic46", 0x0200, 0x0200, CRC(ee576268) SHA1(8964526fa253f484d784aec46c4c31358bc1667b) ) + +ROM_END + +/* Program is inside a CPU epoxy block with a m6809 and PLD. Version 8.20PIR - */ -ROM_START( fruitstb ) +ROM_START( fruitstba ) ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD( "p28f512_box.ic2", 0x8000, 0x8000, CRC(95d4ddaa) SHA1(498f841b3cd12ac128954841dd463b62c335e038) ) - ROM_IGNORE( 0x8000 ) // second half is filled with 0xff, vectors are at the end of the 1st half + ROM_LOAD( "p28f512_820_box.ic2", 0x8000, 0x8000, CRC(95d4ddaa) SHA1(498f841b3cd12ac128954841dd463b62c335e038) ) + ROM_IGNORE( 0x8000 ) // second half is filled with 0xff, vectors are at the end of the 1st half. - ROM_REGION( 0x20000, "gfx1", 0 ) - ROM_LOAD( "fruit1.ic37", 0x00000, 0x10000, CRC(c1834a6d) SHA1(ece1e47641087be342d3c5c092d8a7233ae871f3) ) - ROM_LOAD( "fruit2.ic38", 0x10000, 0x10000, CRC(32d282a8) SHA1(792174d75dc7ec5f1e6f145539a5ec8e3953e1dd) ) -// ROM_LOAD( "fruit3.ic39", 0x20000, 0x10000, CRC(311a6d4e) SHA1(62cf670b605906f7f4225905118524ee30d0e85b) ) // and this one? + ROM_REGION( 0x30000, "gfx1", 0 ) + ROM_LOAD( "fruit1.ic37", 0x00000, 0x10000, CRC(c1834a6d) SHA1(ece1e47641087be342d3c5c092d8a7233ae871f3) ) + ROM_LOAD( "fruit2.ic38", 0x10000, 0x10000, CRC(32d282a8) SHA1(792174d75dc7ec5f1e6f145539a5ec8e3953e1dd) ) +// ROM_LOAD( "fruit3.ic39", 0x20000, 0x10000, CRC(311a6d4e) SHA1(62cf670b605906f7f4225905118524ee30d0e85b) ) // missing... two extra bitplanes. + ROM_LOAD( "fruit3.ic39", 0x20000, 0x10000, BAD_DUMP CRC(81ad7752) SHA1(b5be715c9c1e0c20f63bfb2f9dcbadafe758a098) ) // borrowed from parent. ROM_REGION( 0x0400, "proms", 0 ) - ROM_LOAD( "82s131.ic47", 0x0000, 0x0200, CRC(54565d41) SHA1(8e412a3441c9c1e7f8309f2087389ac4250896e6) ) - ROM_LOAD( "82s147.ic46", 0x0200, 0x0200, CRC(ee576268) SHA1(8964526fa253f484d784aec46c4c31358bc1667b) ) + ROM_LOAD( "82s131.ic47", 0x0000, 0x0200, CRC(54565d41) SHA1(8e412a3441c9c1e7f8309f2087389ac4250896e6) ) + ROM_LOAD( "82s147.ic46", 0x0200, 0x0200, CRC(ee576268) SHA1(8964526fa253f484d784aec46c4c31358bc1667b) ) ROM_END @@ -569,5 +753,6 @@ void mpu12wbk_state::init_mpu12wbk() * Game Drivers * *************************/ -// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS -GAME( 1997, fruitstb, 0, mpu12wbk, mpu12wbk, mpu12wbk_state, init_mpu12wbk, ROT0, "Webak Elektronik", "Fruit Star Bonus (Ver 8.20PIR)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) +// YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS +GAME( 199?, fruitstb, 0, mpu12wbk, mpu12wbk, mpu12wbk_state, init_mpu12wbk, ROT0, "Webak Elektronik", "Fruit Star Bonus (Ver 8.27PVIE)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) +GAME( 1997, fruitstba, fruitstb, mpu12wbk, mpu12wbk, mpu12wbk_state, init_mpu12wbk, ROT0, "Webak Elektronik", "Fruit Star Bonus (Ver 8.20PIR)", MACHINE_NO_SOUND | MACHINE_NOT_WORKING )