Home News Forum                            

Play your favorite classic games and more with the GameEx front end. Read more.

40love: MAME ROM Information.


40-0 - Forty-Love (c) 1984 Taito.

A tennis game from Taito.


This is a four board system - Main, Video, ROM, and Sound boards.

Main Board Number : J1100004A / K1100010A

Sound Board Number : J1100005A / K1100011A

Video Board Number : J1100008A / K1100025A

ROM Board Number : J9100005A / K9100008A

Prom Stickers : A30

Main Board :

NEC D780C-1 (Z80) (@ 4 Mhz)

Motorola M68705P5S (@ 3.072 Mhz)

Mitsubishi M5517P SRAM chip

Fujitsu MB14241 ??? chip

Fujitsu MB81416-10 DRAM chips

TD62003P (lamps/LEDs driver)

xtal (@ 8MHz)

(3x) 8-way DSW

Sound Board :

NEC D780C-1 (Z80) (@ 4 Mhz)

Mitsubishi M5517P SRAM chip

Yamaha YM2149

OKI M5232

Fujitsu MB3731 Audio amp

xtal (@ 8MHz)

Video Board :

(4x) AMD AM93422 RAM chips

(2x) Mitsubishi M5517P SRAM chips

(6 x) Mitsubishi M53357P (=LS157)

xtal (@ 18.432MHz)

Screen orientation : Horizontal

Video resolution : 256 x 224 pixels

Screen refresh : 60.00 Hz

Palette Colors : 1024

Players : 2

Control : 4-way joystick

Buttons : 4


A HiLo All-08A was used to program the game.


Game's rom.

MAME Info:

0.57 [Uki]


- [possible] Sprites graphics decoding could be changed to only use color codes 8-15 (now it decodes all 64 colors). Source (ID 02623)

- [possible] Controls may be wrong (BUTTON 3 - not used ?). Source (ID 02624)

- [possible] Pixel layer needs priority? Source (ID 02625)


- 0.140u2: Atari Ace take some driver_device classes of 40love/bking/buggychl/msisaac (common code in machine\buggychl.c) that cover multiple drivers and split them so that each driver gets their own driver_device class. In most cases, these drivers got entangled because of audio/mcu code that was shared between multiple drivers.

- 0.140: Angelo Salese removed deprecat.h usage from Forty-Love driver.

- 0.135u3: Fabio Priuli added shared driver data struct to Forty-Love driver.

- 0.129: MooglyGuy added savestate support to Forty-Love.

- 0.123u6: RansAckeR added use of PORT_DIPUNKNOWN_DIPLOC and use of PORT_INCLUDE in Forty-Love. Added 'Unknown' dipswitch.

- 0.122u6: Changed M68705 CPU3 clock speed to 3072000 Hz.

- 0.115: Aaron Giles updated 68705 clocks to take into account the internal divide by 4. Added constant so that it is clear why this is being done. Changed M68705 CPU3 clock speed to 768000 Hz.

- 0.108u2: Roberto Fresca added DIP locations to Forty-Love.

- 0.100u4: Aaron Giles converted Forty-Love driver driver over to using the new memory_configure_bank calls.

- 0.57: Uki added Forty-Love (Taito 1984). MSM5232 sound emulator [Jarek Burczynski, Hiromitsu Shioya].

- 13th December 2001: Uki submitted the Forty-Love driver with pixel layer support and with some other small fixes.

- 8th December 2001: Uki reported progress on emulating the pixel layer in Forty-Love.

- 29th October 2001: Jarek Burczynski sent a driver for Forty-Love, but there are some graphics problems.

Recommended Games (Tennis):

Tournament Table

World Tennis

Pro Tennis (DECO Cassette)

Pro Sports - Bowling, Tennis, and Golf

Tennis (bootleg of Pro Tennis)

Super Doubles Tennis

Super Doubles Tennis (DECO Cassette)

Tennis (PlayChoice-10)

Vs. Tennis


Passing Shot

World Court

Super World Court

Hot Shots Tennis

Super Tennis (Nintendo Super System)

David Crane's Amazing Tennis (Nintendo Super System)

Grand Slam (Mega Play)

Reality Tennis

Super Slam

Ultimate Tennis

Capcom Sports Club (Tennis)

Virtua Tennis / Power Smash

Virtua Tennis 2 / Power Smash 2

Smash Court Pro Tournament


Match '98

Romset: 166 kb / 25 files / 92.1 zip

MAME XML Output:

       <game name="40love" sourcefile="40love.c">
              <manufacturer>Taito Corporation</manufacturer>
              <rom name="a30-19.ic1" size="8192" crc="7baca598" sha1="b1767f5af9b3f484afb4423afe1f9c15db92c2ac" region="maincpu" offset="0"/>
              <rom name="a30-20.ic2" size="8192" crc="a7b4f2cc" sha1="67f570874fa0feb21f2a9a0712fadf78ebaad91c" region="maincpu" offset="2000"/>
              <rom name="a30-21.ic3" size="8192" crc="49a372e8" sha1="7c15fac65369d2e90b432c0f5c8e1d7295c379d1" region="maincpu" offset="4000"/>
              <rom name="a30-22.ic4" size="8192" crc="0c06d2b3" sha1="e5b0c8e57b0a6d131496e168023e12bacc17e93e" region="maincpu" offset="6000"/>
              <rom name="a30-23.ic5" size="8192" crc="6dcd186e" sha1="c8d88a2f35ba77ea822bdd8133033c8eb0bb5f72" region="maincpu" offset="10000"/>
              <rom name="a30-24.ic6" size="8192" crc="590c20c8" sha1="93689d6a299dfbe33ffec42d13378091d8589b34" region="maincpu" offset="12000"/>
              <rom name="a30-08.u08" size="8192" crc="2fc42ee1" sha1="b56e5f9acbcdc476252e188f41ad7249dba6f8e1" region="audiocpu" offset="0"/>
              <rom name="a30-09.u09" size="8192" crc="3a75abce" sha1="ad2df26789d38196c0677c22ab8f176e99604b18" region="audiocpu" offset="2000"/>
              <rom name="a30-10.u10" size="8192" crc="393c4b5b" sha1="a8e1dd5c33e929bc832cccc13b85ecd13fff1eb2" region="audiocpu" offset="4000"/>
              <rom name="a30-11.u37" size="8192" crc="11b2c6d2" sha1="d55690512a37c4df2386a845e0cfb14f8052295b" region="audiocpu" offset="6000"/>
              <rom name="a30-12.u38" size="8192" crc="f7afd475" sha1="dd09d5ca7fec5e0454f9efb8ebc722561010f124" region="audiocpu" offset="8000"/>
              <rom name="a30-13.u39" size="8192" crc="e806630f" sha1="09022aae88ea0171a0aacf3260fa3a95e8faeb21" region="audiocpu" offset="a000"/>
              <rom name="a30-14" size="2048" crc="c4690279" sha1="60bc77e03b9be434bb97a374a2fedeb8d049a660" region="mcu" offset="0"/>
              <rom name="a30-25.u22" size="8192" crc="15e594cf" sha1="d2d506a55f6ac2c191e5d5b3127021cde366c71c" region="gfx1" offset="0"/>
              <rom name="a30-26.u23" size="8192" crc="3a45a205" sha1="0939ecaabbb9be2a0719ef252e3f244299734ba6" status="baddump" region="gfx1" offset="2000"/>
              <rom name="a30-27.u24" size="8192" crc="57c67f6f" sha1="293e5bfa7c859886abd70f78fe2e4b13a3fce3f5" region="gfx1" offset="4000"/>
              <rom name="a30-28.u25" size="8192" crc="d581d067" sha1="ce132cf2503917f0846b838c6ce4ad4183181bf9" region="gfx1" offset="6000"/>
              <rom name="a30-29.u62" size="8192" crc="02deaf40" sha1="fb424a40bd9d959664a6d1ddf477fc16e694b9fa" region="gfx2" offset="0"/>
              <rom name="a30-30.u63" size="8192" crc="439f3731" sha1="4661149baa8472989cc8ac85c51e55df69957d99" region="gfx2" offset="2000"/>
              <rom name="a30-31.u64" size="8192" crc="7ed70e81" sha1="f90a3ce701ebe746803cf01ea1f6725c552007de" region="gfx2" offset="4000"/>
              <rom name="a30-32.u65" size="8192" crc="0434655b" sha1="261c5e60e830967564c053dc1d40fbf1e7194fc8" region="gfx2" offset="6000"/>
              <rom name="a30-15.u03" size="1024" crc="55e38cc7" sha1="823a6d7f29eadf5d12702d782d4297b0d4c65a0e" region="proms" offset="0"/>
              <rom name="a30-16.u01" size="1024" crc="13997e20" sha1="9fae1cf633409a88263dc66a17b1c2eeccd05f4f" region="proms" offset="400"/>
              <rom name="a30-17.u02" size="1024" crc="5031f2f3" sha1="1836d82fdc9f39cb318a791af2a935c27baabfd7" region="proms" offset="800"/>
              <rom name="a30-18.u13" size="1024" crc="78697c0f" sha1="31382ed4c0d44024f7f57a9de6407527f4d5b0d1" region="proms" offset="c00"/>
              <chip type="cpu" tag="maincpu" name="Z80" clock="4000000"/>
              <chip type="cpu" tag="audiocpu" name="Z80" clock="4000000"/>
              <chip type="cpu" tag="mcu" name="M68705" clock="3072000"/>
              <chip type="audio" tag="mono" name="Speaker"/>
              <chip type="audio" tag="aysnd" name="AY-3-8910A" clock="2000000"/>
              <chip type="audio" tag="msm" name="MSM5232" clock="2000000"/>
              <chip type="audio" tag="dac" name="DAC"/>
              <display tag="screen" type="raster" rotate="0" width="256" height="224" refresh="60.000000" />
              <sound channels="1"/>
              <input players="2" buttons="4" coins="2" tilt="yes">
                     <control type="joy" ways="4"/>
              <dipswitch name="Unknown" tag="DSW1" mask="1">
                     <dipvalue name="Off" value="1" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Unknown" tag="DSW1" mask="2">
                     <dipvalue name="Off" value="2" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Free Play" tag="DSW1" mask="4">
                     <dipvalue name="Off" value="4" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Lives" tag="DSW1" mask="24">
                     <dipvalue name="1" value="0"/>
                     <dipvalue name="2" value="8"/>
                     <dipvalue name="3" value="16" default="yes"/>
                     <dipvalue name="4" value="24"/>
              <dipswitch name="Unknown" tag="DSW1" mask="32">
                     <dipvalue name="Off" value="32" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Flip Screen" tag="DSW1" mask="64">
                     <dipvalue name="Off" value="0" default="yes"/>
                     <dipvalue name="On" value="64"/>
              <dipswitch name="Cabinet" tag="DSW1" mask="128">
                     <dipvalue name="Upright" value="0" default="yes"/>
                     <dipvalue name="Cocktail" value="128"/>
              <dipswitch name="Coin A" tag="DSW2" mask="15">
                     <dipvalue name="9 Coins/1 Credit" value="15"/>
                     <dipvalue name="8 Coins/1 Credit" value="14"/>
                     <dipvalue name="7 Coins/1 Credit" value="13"/>
                     <dipvalue name="6 Coins/1 Credit" value="12"/>
                     <dipvalue name="5 Coins/1 Credit" value="11"/>
                     <dipvalue name="4 Coins/1 Credit" value="10"/>
                     <dipvalue name="3 Coins/1 Credit" value="9"/>
                     <dipvalue name="2 Coins/1 Credit" value="8"/>
                     <dipvalue name="1 Coin/1 Credit" value="0" default="yes"/>
                     <dipvalue name="1 Coin/2 Credits" value="1"/>
                     <dipvalue name="1 Coin/3 Credits" value="2"/>
                     <dipvalue name="1 Coin/4 Credits" value="3"/>
                     <dipvalue name="1 Coin/5 Credits" value="4"/>
                     <dipvalue name="1 Coin/6 Credits" value="5"/>
                     <dipvalue name="1 Coin/7 Credits" value="6"/>
                     <dipvalue name="1 Coin/8 Credits" value="7"/>
              <dipswitch name="Coin B" tag="DSW2" mask="240">
                     <dipvalue name="9 Coins/1 Credit" value="240"/>
                     <dipvalue name="8 Coins/1 Credit" value="224"/>
                     <dipvalue name="7 Coins/1 Credit" value="208"/>
                     <dipvalue name="6 Coins/1 Credit" value="192"/>
                     <dipvalue name="5 Coins/1 Credit" value="176"/>
                     <dipvalue name="4 Coins/1 Credit" value="160"/>
                     <dipvalue name="3 Coins/1 Credit" value="144"/>
                     <dipvalue name="2 Coins/1 Credit" value="128"/>
                     <dipvalue name="1 Coin/1 Credit" value="0" default="yes"/>
                     <dipvalue name="1 Coin/2 Credits" value="16"/>
                     <dipvalue name="1 Coin/3 Credits" value="32"/>
                     <dipvalue name="1 Coin/4 Credits" value="48"/>
                     <dipvalue name="1 Coin/5 Credits" value="64"/>
                     <dipvalue name="1 Coin/6 Credits" value="80"/>
                     <dipvalue name="1 Coin/7 Credits" value="96"/>
                     <dipvalue name="1 Coin/8 Credits" value="112"/>
              <dipswitch name="Unknown" tag="DSW3" mask="1">
                     <dipvalue name="Off" value="1" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Unknown" tag="DSW3" mask="2">
                     <dipvalue name="Off" value="2" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Unknown" tag="DSW3" mask="4">
                     <dipvalue name="Off" value="4" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Unknown" tag="DSW3" mask="8">
                     <dipvalue name="Off" value="8" default="yes"/>
                     <dipvalue name="On" value="0"/>
              <dipswitch name="Display Credit Settings" tag="DSW3" mask="16">
                     <dipvalue name="Off" value="0"/>
                     <dipvalue name="On" value="16" default="yes"/>
              <dipswitch name="Year Display" tag="DSW3" mask="32">
                     <dipvalue name="Off" value="0"/>
                     <dipvalue name="On" value="32" default="yes"/>
              <dipswitch name="Score points to: (Cheat)" tag="DSW3" mask="64">
                     <dipvalue name="Winner" value="64" default="yes"/>
                     <dipvalue name="Human" value="0"/>
              <dipswitch name="Coin Door Type" tag="DSW3" mask="128">
                     <dipvalue name="Single Slot" value="0" default="yes"/>
                     <dipvalue name="Double Slot" value="128"/>
              <driver status="imperfect" emulation="good" color="good" sound="good" graphic="imperfect" savestate="supported" palettesize="1024"/>

emumovies.com      Retro bytes Portal           Bookmark and Share

Developed by: Spesoft  Headsoft     Terms of use     Privacy    Advertise