summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author couriersud <couriersud@arcor.de>2015-02-14 20:36:33 +0100
committer couriersud <couriersud@arcor.de>2015-02-14 20:36:33 +0100
commita51ee3e00f2751a2d37c0d264b68f24511a54056 (patch)
treedc243153b26dce644f9df69575ca284a6aaeea4d
parent78afab6f5a93de760dce292cdc5fa4abc9432ec8 (diff)
parentbc330b6bfb42162fae852dde435e69eed5bb36e0 (diff)
Merge branch 'master' of https://github.com/mamedev/mame.git
-rw-r--r--src/mame/drivers/naomi.c84
-rw-r--r--src/mame/mame.lst48
-rw-r--r--src/mess/drivers/cnsector.c58
-rw-r--r--src/mess/drivers/comp4.c48
-rw-r--r--src/mess/drivers/elecdet.c58
-rw-r--r--src/mess/drivers/splitsec.c62
-rw-r--r--src/mess/drivers/starwbc.c58
-rw-r--r--src/mess/drivers/stopthie.c58
-rw-r--r--src/mess/drivers/ticalc1x.c84
-rw-r--r--src/mess/drivers/tispeak.c62
-rw-r--r--src/mess/drivers/wildfire.c60
11 files changed, 340 insertions, 340 deletions
diff --git a/src/mame/drivers/naomi.c b/src/mame/drivers/naomi.c
index 40d148b2bee..65f60e903e3 100644
--- a/src/mame/drivers/naomi.c
+++ b/src/mame/drivers/naomi.c
@@ -260,11 +260,11 @@ Ferrari F355 Challenge (twin, prototype) no cart 22848P* 21 (64Mb) pre
Ferrari F355 Challenge 2 (twin) no cart 23399 21 (64Mb) present 315-6206 317-0287-COM content is the same as regular 171-7919A cart
House of the Dead 2 (prototype) no cart A1E2 21 (64Mb) present 315-6206 present no label on IC42
Inu No Osanpo / Dog Walking (Rev A) 840-0073C 22294A 16 (64Mb) present 315-6206 317-0316-JPN requires 837-13844 JVS IO with DIPSW 1 ON
-Maze of the Kings The (prototype) no cart * 21 (64Mb) present 315-6206 FRI * flash-PCB, not dumped but known to exist
Samba de Amigo (prototype) no cart * 21 (64Mb) present 315-6206 317-0270-COM * instead of EPROM have tiny PCB with 2 flashroms on it
Soul Surfer (Rev A) 840-0095C 23838C 21 (64Mb) present 315-6206 not present
Star Horse (server) 840-0055C 23626 17 (64Mb) present 315-6206 not present requires 837-13785 ARCNET&IO BD
The King of Route 66 (Rev A) 840-0087C 23819A 20 (64Mb) present 315-6206 not present content is the same as regular 171-8132A cart
+The Maze of the Kings (prototype) no cart * 21 (64Mb) present 315-6206 FRI * flash-PCB, not dumped but known to exist
Virtua NBA (prototype) no cart * 21 (64Mb) present 315-6206 317-0271-COM * instead of EPROM have tiny PCB with 2 flashroms on it
Virtua Tennis / Power Smash (prototype) no cart * 21 (64Mb) present 315-6206 317-0263-COM * flash-PCB, title screen have label "SOFT R&D Dept.#3", not dumped but known to exist
@@ -446,24 +446,24 @@ IC17S-IC38S - MaskROM (SOP44), either 32Mb or 64Mb. Not all positions are popula
CN1/2/3 - connectors joining to main board
Games known to use this PCB include....
- Sticker EPROM MASKROMs 25LC040 A54SX32
-Game on cart IC11# # of SOP44 IC13S# IC1# Notes
--------------------------------------------------------------------------------------------------------------------------------
-Club Kart European Session (2003, Rev A) 840-0139C 24173A 18 (64Mb) present 317-0382-COM
-Club Kart Prize (Rev A) 840-0129C 24082A 16 (64Mb) present 317-0368-COM requires Naomi-based hopper controller (Naomi bd + 840-0130 cart + 837-14381 "G2 EXPANSION BD")
-Club Kart Prize Ver. B 840-0137C 24149 16 (64Mb) present 317-0368-COM requires 837-14438 "SH I/O BD" hopper controller (not dumped)
-Giant Gram 2000 840-0039C 23377 20 (64Mb) present 317-0296-COM
-Kick '4' Cash 840-0140C 24212 16 (64Mb) present 317-0397-COM requires 837-14438 "SH I/O BD" hopper controller (not dumped)
-Marvel Vs. Capcom 2 New Age of Heroes (Rev A) 841-0007C-02 23085A 14 (64Mb)* present 317-5058-COM *(+2x 32Mb)
-MushiKing The King of Beetles 2K3 2ND 840-0150C 24217 6 (64Mb) present 317-0394-COM requires 610-0669 barcode reader, 838-14245-92 "MAPLE/232C CONVERT BD" (MIE-based), 838-14243 "RFID CHIP R/W BD" and RFID chip
-Quiz Ah Megamisama 840-0030C 23227 16 (64Mb) present 317-0280-JPN
-Shootout Pool 840-0098C 23844 4 (64Mb) present 317-0336-COM requires regular 837-13551 and 837-13938 rotary JVS boards
-Shootout Pool Prize / The Medal (Rev A) 840-0128C 24065A 4 (64Mb) present 317-0367-COM requires Naomi-based hopper controller
-Shootout Pool Prize / The Medal Ver. B 840-0136C 24148 4 (64Mb) present 317-0367-COM requires Naomi-based or 837-14438 hopper controller
-SWP Hopper Board 840-0130C 24083 20 (64Mb) present 317-0339-COM Maskroms are not really used, they are recycled from other games; there is an additional 837-14381 IO board
-Touch de UNO! 2 840-0022C 23071 6 (64Mb) present 317-0276-JPN requires 837-13844 JVS IO with DIPSW 5 On, ELO AccuTouch-compatible touch screen controller and special printer.
-Virtua Fighter 4 Evolution 840-0106B 23934 20 (64Mb) present 317-0339-COM
-Virtua Tennis 2 / Power Smash 2 (Rev A) 840-0084C 22327A 18 (64Mb) present 317-0320-COM
+ Sticker EPROM MASKROMs 25LC040 A54SX32
+Game on cart IC11# # of SOP44 IC13S# IC1# Notes
+-----------------------------------------------------------------------------------------------------------------------------------------------
+Club Kart: European Session (2003, Rev A) 840-0139C 24173A 18 (64Mb) present 317-0382-COM
+Club Kart Prize (Rev A) 840-0129C 24082A 16 (64Mb) present 317-0368-COM requires Naomi-based hopper controller (Naomi bd + 840-0130 cart + 837-14381 "G2 EXPANSION BD")
+Club Kart Prize Ver. B 840-0137C 24149 16 (64Mb) present 317-0368-COM requires 837-14438 "SH I/O BD" hopper controller (not dumped)
+Giant Gram 2000 840-0039C 23377 20 (64Mb) present 317-0296-COM
+Kick '4' Cash 840-0140C 24212 16 (64Mb) present 317-0397-COM requires 837-14438 "SH I/O BD" hopper controller (not dumped)
+Marvel Vs. Capcom 2 New Age of Heroes (Rev A) 841-0007C-02 23085A 14 (64Mb)* present 317-5058-COM *(+2x 32Mb)
+MushiKing The King of Beetles 2K3 2ND 840-0150C 24217 6 (64Mb) present 317-0394-COM requires 610-0669 barcode reader, 838-14245-92 "MAPLE/232C CONVERT BD" (MIE-based), 838-14243 "RFID CHIP R/W BD" and RFID chip
+Quiz Ah Megamisama 840-0030C 23227 16 (64Mb) present 317-0280-JPN
+Shootout Pool 840-0098C 23844 4 (64Mb) present 317-0336-COM requires regular 837-13551 and 837-13938 rotary JVS boards
+Shootout Pool Prize / Shootout Pool The Medal (Rev A) 840-0128C 24065A 4 (64Mb) present 317-0367-COM requires Naomi-based hopper controller
+Shootout Pool Prize Ver. B / Shootout Pool The Medal Ver. B 840-0136C 24148 4 (64Mb) present 317-0367-COM requires Naomi-based or 837-14438 hopper controller
+SWP Hopper Board 840-0130C 24083 20 (64Mb) present 317-0339-COM Maskroms are not really used, they are recycled from other games; there is an additional 837-14381 IO board
+Touch de UNO! 2 840-0022C 23071 6 (64Mb) present 317-0276-JPN requires 837-13844 JVS IO with DIPSW 5 On, ELO AccuTouch-compatible touch screen controller and special printer.
+Virtua Fighter 4 Evolution 840-0106B 23934 20 (64Mb) present 317-0339-COM
+Virtua Tennis 2 / Power Smash 2 (Rev A) 840-0084C 22327A 18 (64Mb) present 317-0320-COM
@@ -514,7 +514,7 @@ Derby Owners Club World Edition (Rev C) 840-0088C 22336C 7 (128Mb) 3
Derby Owners Club World Edition (Rev D) 840-0088C 22336D 7 (128Mb) 315-6319A 315-6213 not present 2 MaskROM are different from Rev C
Giga Wing 2 841-0014C 22270 5 (128Mb) 315-6319A 315-6213 317-5064-COM
Mobile Suit Gundam: Federation Vs. Zeon 841-0017C 23638 10 (128Mb) 315-6319A 315-6213 317-5070-COM
-Moero Justice Gakuen / Project Justice (Rev A) 841-0015C 23548A 11 (128Mb) 315-6319A 315-6213 317-5065-COM
+Moero! Justice Gakuen / Project Justice (Rev A) 841-0015C 23548A 11 (128Mb) 315-6319A 315-6213 317-5065-COM
MushiKing - The King Of Beetle 2K5 1ST 840-0158C 24286 7 (128Mb) 315-6319A 315-6213 not present requires 610-0669 barcode reader
Oinori-daimyoujin Matsuri 840-0126B 24053 5 (128Mb) 315-6319A 315-6213 not present requires 837-14274 "G2 EXPANSION BD" (similar to hopper 837-14381 but with ARC NET chip)
Samba de Amigo Ver. 2000 840-0047C 23600 11 (128Mb) 315-6319A 315-6213 317-0295-COM
@@ -575,7 +575,7 @@ Illmatic Envelope 841-0059C not present 4 (5
Mamoru-kun wa Norowarete Shimatta 841-0060C not present 4 (512Mb) present 317-5132-JPN present IC2# is labeled "VER.2"
Manic Panic Ghost! 840-0170C not present 5 (512Mb) present 317-0461-COM present requires 837-14672 sensor board (SH4 based)
Melty Blood Actress Again 841-0061C not present 6 (512Mb) present 317-5133-JPN present IC2# is labeled "REV.A" - IC4# is marked "5A"
-Melty Blood Actress Again (Rev A) 841-0061C 24455 6 (512Mb) present 317-5133-JPN present IC2# is labeled "REV.A" - IC4# is marked "5A"
+Melty Blood Actress Again Version A (Rev A) 841-0061C 24455 6 (512Mb) present 317-5133-JPN present IC2# is labeled "REV.A" - IC4# is marked "5A"
Mushiking - The King Of Beetles II ENG (Ver. 1.001) 840-0164C not present 2 (512Mb) present 317-0437-COM present requires 610-0669 barcode reader, 838-14245-92 "MAPLE/232C CONVERT BD" (MIE-based), 838-14243 "RFID CHIP R/W BD" and RFID chip
Mushiking - The King Of Beetles II ENG (Ver. 2.001) 840-0164C 24357 2 (512Mb) present 317-0437-COM present IC4# is marked "18"
Poka Suka Ghost 840-0170C not present 5 (512Mb) present 317-0461-COM present requires 837-14672 sensor board (SH4 based)
@@ -632,12 +632,12 @@ Notes:
Game Type on cart FLASHROM # of SOP48 IC @ 1F IC @ 1H IC @ 2K IC @ 1M code (1) Notes
------------------------------------------------------------------------------------------------------------------------------------------------------
/Gun Survivor 2 Biohazard
-\Code: Veronica F1X 25709801 1 (64Mb) 14 (128Mb) not present NAODEC2A NAODEC1B 317-5075-COM BHF1 uses Namco FCA JVS I/O, will crash if COMM.BOARD not present
+\Code: Veronica F1X 25709801 1 (64Mb) 14 (128Mb) not present NAODEC2A NAODEC1B 317-5075-COM BHF1 uses Namco FCA JVS I/O (not dumped), will crash if COMM.BOARD not present
/Gun Survivor 2 Biohazard
\Code: Veronica (Ver. E) F1X 25709801 1 (64Mb) 14 (128Mb) not present NAODEC2A NAODEC1B 317-5075-COM BHF2
/Shin Nihon Prowrestling Toukon /FL0 & FL1 have pin55 raised from PCB.
\Retsuden 4 Arcade Edition (Ver. A) F2X 25349801 2 (64Mb) 15 (128Mb) not present NAODEC2A NAODEC1B 317-5040-COM TRF1 \They are connected togheter and go to pin89 on 2K.
-World Kicks PCB (WKC1 Ver. A) F2 25509801 2 (64Mb) 9 (128Mb) not present NAODEC2A NAODEC1B 317-5040-COM WKC1 uses Namco V226 JVS I/O
+World Kicks PCB (WKC1 Ver. A) F2 25509801 2 (64Mb) 9 (128Mb) not present NAODEC2A NAODEC1B 317-5040-COM WKC1 uses Namco V226 JVS I/O (not dumped)
World Kicks (WK2 Ver. A) F2 25209801 2 (64Mb) 9 (128Mb) not present NAODEC2A NAODEC1A 317-5040-COM WK2
World Kicks (WK3 Ver. A) F2 25209801 2 (64Mb) 9 (128Mb) not present NAODEC2A NAODEC1A 317-5040-COM WK3
@@ -685,7 +685,7 @@ Notes:
Cart Sticker FL0-FL3 FLASHROMs X76F100 CY37128 315-5881 Known Game
Game Type on cart FLASHROM # of SOP48 IC @ 1F IC @ 2J IC @ 1M code (1) Notes
--------------------------------------------------------------------------------------------------------------------------------
-Mazan: Flash of the Blade (Ver. A) F1X 25869812 1 (64Mb) 8 (128Mb) present NAODEC3 317-0266-COM MAZ2 uses 2x Namco FCB JVS I/O
+Mazan: Flash of the Blade (Ver. A) F1X 25869812 1 (64Mb) 8 (128Mb) present NAODEC3 317-0266-COM MAZ2 uses 2x Namco FCB JVS I/O (not dumped)
Mazan: Flash of the Blade (Ver. A) F1X 25869812 1 (64Mb) 8 (128Mb) present NAODEC3 317-0266-COM MAZ3
Ninja Assault (Ver. A) F3 25469801 3 (64Mb) 9 (128Mb) present NAODEC3 317-5068-COM NJA1 uses Namco JYU JVS I/O
Ninja Assault (Ver. A) F3 25469801 3 (64Mb) 9 (128Mb) present NAODEC3 317-5068-COM NJA2
@@ -9052,8 +9052,8 @@ GAME( 2003, puyofevp, naomi, naomim1, naomi, naomi_state, naomi, ROT0, "Sega", "
/* 840-xxxxx (Sega Naomi 2 cart games) */
/* 0046 */ GAME( 2001, wldrider, naomi2, naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Wild Riders (JPN, USA, EXP, KOR, AUS)", GAME_FLAGS )
-/* 0061 */ GAME( 2001, vstrik3c, naomi2, naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Virtua Striker 3 (USA, EXP, KOR, AUS) (Cart)", GAME_FLAGS )
-/* 0061 */ GAME( 2001, vstrik3cb,vstrik3c,naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Virtua Striker 3 (USA, EXP, KOR, AUS) (Cart, Rev B)", GAME_FLAGS )
+/* 0061 */ GAME( 2001, vstrik3c, naomi2, naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Virtua Striker 3 (USA, EXP, KOR, AUS)", GAME_FLAGS )
+/* 0061 */ GAME( 2001, vstrik3cb,vstrik3c,naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Virtua Striker 3 (USA, EXP, KOR, AUS) (Rev B)", GAME_FLAGS )
/* 0062 */ GAME( 2001, clubkrte, naomi2, naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Club Kart: European Session", GAME_FLAGS )
/* 0062 */ GAME( 2001, clubkrtd, clubkrte,naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Club Kart: European Session (Rev D)", GAME_FLAGS )
/* 0062 */ GAME( 2001, clubkrtc, clubkrte,naomi2m2, naomi, naomi_state, naomi2, ROT0, "Sega", "Club Kart: European Session (Rev C)", GAME_FLAGS )
@@ -9073,9 +9073,9 @@ GAME( 2003, puyofevp, naomi, naomim1, naomi, naomi_state, naomi, ROT0, "Sega", "
/* 0003 */ GAME( 1999, doa2, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Tecmo", "Dead or Alive 2 (JPN, USA, EXP, KOR, AUS)", GAME_FLAGS )
/* 0003 */ GAME( 2000, doa2m, doa2, naomim2, naomi, naomi_state, naomi, ROT0, "Tecmo", "Dead or Alive 2 Millennium (JPN, USA, EXP, KOR, AUS)", GAME_FLAGS )
/* 0004 */ GAME( 1999, shangril, naomi, naomim2, naomi_mp,naomi_state,naomi_mp,ROT0, "Marvelous Ent.", "Dengen Tenshi Taisen Janshi Shangri-la (JPN, USA, EXP, KOR, AUS)", GAME_FLAGS )
-/* 0005 */ GAME( 1999, spawn, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Capcom", "Spawn In the Demon's Hand (JPN, USA, EUR, ASI, AUS) (Rev B)", GAME_FLAGS )
+/* 0005 */ GAME( 1999, spawn, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Todd Mc Farlane / Capcom","Spawn In the Demon's Hand (JPN, USA, EUR, ASI, AUS) (Rev B)", GAME_FLAGS )
/* 0006 */ GAME( 1999, puyoda, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Compile", "Puyo Puyo Da!", GAME_FLAGS )
-/* 0007-02 */ GAME( 2000,mvsc2, naomi, naomim1, naomi, naomi_state, mvsc2, ROT0, "Capcom", "Marvel Vs. Capcom 2 New Age of Heroes (JPN, USA, EUR, ASI, AUS) (Rev A)", GAME_FLAGS )
+/* 0007-02 */ GAME( 2000,mvsc2, naomi, naomim1, naomi, naomi_state, mvsc2, ROT0, "Marvel / Capcom", "Marvel Vs. Capcom 2 New Age of Heroes (JPN, USA, EUR, ASI, AUS) (Rev A)", GAME_FLAGS )
/* 0008 */ GAME( 2000, pstone2, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Capcom", "Power Stone 2 (JPN, USA, EUR, ASI, AUS)", GAME_FLAGS )
/* 0011 */ GAME( 2000, capsnk, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Capcom / SNK", "Capcom Vs. SNK Millennium Fight 2000 (JPN, USA, EXP, KOR, AUS) (Rev C)", GAME_FLAGS )
/* 0011 */ GAME( 2000, capsnka, capsnk,naomim2, naomi, naomi_state, naomi, ROT0, "Capcom / SNK", "Capcom Vs. SNK Millennium Fight 2000 (JPN, USA, EXP, KOR, AUS) (Rev A)", GAME_FLAGS )
@@ -9083,9 +9083,9 @@ GAME( 2003, puyofevp, naomi, naomim1, naomi, naomi_state, naomi, ROT0, "Sega", "
/* 0012 */ GAME( 2000, cspike, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Psikyo / Capcom", "Gun Spike (JPN) / Cannon Spike (USA, EXP, KOR, AUS)", GAME_FLAGS )
/* 0013 */ GAME( 2000, ggx, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Arc System Works","Guilty Gear X (JPN)", GAME_FLAGS )
/* 0014 */ GAME( 2000, gwing2, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Takumi / Capcom", "Giga Wing 2 (JPN, USA, EXP, KOR, AUS)", GAME_FLAGS )
-/* 0015 */ GAME( 2000, pjustic, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Capcom", "Moero Justice Gakuen (JPN) / Project Justice (USA, EXP, KOR, AUS) (Rev A)", GAME_FLAGS )
+/* 0015 */ GAME( 2000, pjustic, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Capcom", "Moero! Justice Gakuen (JPN) / Project Justice (USA, EXP, KOR, AUS) (Rev A)", GAME_FLAGS )
/* 0016 */ GAME( 2000, deathcox, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Ecole Software", "Death Crimson OX (JPN, USA, EXP, KOR, AUS)", GAME_FLAGS )
-/* 0017 */ GAME( 2001, gundmct, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Banpresto", "Mobile Suit Gundam: Federation Vs. Zeon (2001-02-08)", GAME_FLAGS )
+/* 0017 */ GAME( 2001, gundmct, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Banpresto / Capcom","Mobile Suit Gundam: Federation Vs. Zeon", GAME_FLAGS )
/* 0020 */ GAME( 2001, zerogu2, naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Psikyo", "Zero Gunner 2", GAME_FLAGS )
/* 0057 */ GAME( 2007, sl2007, naomi, naomim4, naomi, naomi_state, naomi, ROT270,"Triangle Service","Shooting Love 2007", GAME_FLAGS )
/* 0058 */ GAME( 2008, ausfache, naomi, naomim4, naomi, naomi_state, naomi, ROT0, "Subtle Style", "Akatsuki Blitzkampf Ausf Achse", GAME_FLAGS )
@@ -9097,19 +9097,19 @@ GAME( 2003, puyofevp, naomi, naomim1, naomi, naomi_state, naomi, ROT0, "Sega", "
/* HMG016007 */ GAME( 2001,hmgeo,naomi, naomim2, naomi, naomi_state, naomi, ROT0, "Capcom", "Heavy Metal Geomatrix (JPN, USA, EUR, ASI, AUS) (Rev B)", GAME_FLAGS )
/* Cart games on Namco custom ROM board */
-/* 25209801 */ GAME( 2000, wldkicks, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "World Kicks (WK2 Ver. A)", GAME_FLAGS )
-/* 25209801 */ GAME( 2000, wldkicksa,wldkicks,naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "World Kicks (WK3 Ver. A)", GAME_FLAGS )
-/* 25349801 */ GAME( 2000, toukon4, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Shin Nihon Pro Wrestling Toukon Retsuden 4 Arcade Edition (TRF1 Ver. A)", GAME_FLAGS )
-/* 25469801 */ GAME( 2000, ninjaslt1,ninjaslt,naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Ninja Assault (NJA1 Ver. A)", GAME_FLAGS )
-/* 25469801 */ GAME( 2000, ninjaslt2,ninjaslt,naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Ninja Assault (NJA2 Ver. A)", GAME_FLAGS )
-/* 25469801 */ GAME( 2000, ninjaslt, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Ninja Assault (NJA3 Ver. A)", GAME_FLAGS )
-/* 25469801 */ GAME( 2000, ninjaslt4,ninjaslt,naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Ninja Assault (NJA4 Ver. A)", GAME_FLAGS )
+/* 25209801 */ GAME( 2000, wldkicks, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "World Kicks (WK2 Ver. A)", GAME_FLAGS )
+/* 25209801 */ GAME( 2000, wldkicksa,wldkicks,naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "World Kicks (WK3 Ver. A)", GAME_FLAGS )
+/* 25349801 */ GAME( 2000, toukon4, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Shin Nihon Pro Wrestling Toukon Retsuden 4 Arcade Edition (TRF1 Ver. A)", GAME_FLAGS )
+/* 25469801 */ GAME( 2000, ninjaslt1,ninjaslt,naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Ninja Assault (NJA1 Ver. A)", GAME_FLAGS )
+/* 25469801 */ GAME( 2000, ninjaslt2,ninjaslt,naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Ninja Assault (NJA2 Ver. A)", GAME_FLAGS )
+/* 25469801 */ GAME( 2000, ninjaslt, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Ninja Assault (NJA3 Ver. A)", GAME_FLAGS )
+/* 25469801 */ GAME( 2000, ninjaslt4,ninjaslt,naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Ninja Assault (NJA4 Ver. A)", GAME_FLAGS )
/* Note: the game's full name is exactly "World Kicks PCB", have different s/n as well */
-/* 25509801 */ GAME( 2000, wldkicksb,wldkicks,naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "World Kicks PCB (WKC1 Ver. A)", GAME_FLAGS )
+/* 25509801 */ GAME( 2000, wldkicksb,wldkicks,naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "World Kicks PCB (WKC1 Ver. A)", GAME_FLAGS )
/* 25709801 */ GAME( 2001, gunsur2, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Gun Survivor 2 Biohazard Code: Veronica (BHF1 Ver. E)", GAME_FLAGS )
/* 25709801 */ GAME( 2001, gunsur2e, gunsur2, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Gun Survivor 2 Biohazard Code: Veronica (BHF2 Ver. E)", GAME_FLAGS )
-/* 25869812 */ GAME( 2002, mazan, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Mazan: Flash of the Blade (MAZ2 Ver. A)", GAME_FLAGS )
-/* 25869812 */ GAME( 2002, mazana, mazan, naomim2,naomi, naomi_state, naomi, ROT0, "Capcom / Namco", "Mazan: Flash of the Blade (MAZ3 Ver. A)", GAME_FLAGS )
+/* 25869812 */ GAME( 2002, mazan, naomi, naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Mazan: Flash of the Blade (MAZ2 Ver. A)", GAME_FLAGS )
+/* 25869812 */ GAME( 2002, mazana, mazan, naomim2,naomi, naomi_state, naomi, ROT0, "Namco", "Mazan: Flash of the Blade (MAZ3 Ver. A)", GAME_FLAGS )
/* GDS-xxxx (Sega GD-ROM games) */
/* 0001 */ GAME( 2000, confmiss, naomigd, naomigd, hotd2, naomi_state, naomigd, ROT0, "Sega", "Confidential Mission (GDS-0001)", GAME_FLAGS )
@@ -9180,8 +9180,8 @@ GAME( 2003, puyofevp, naomi, naomim1, naomi, naomi_state, naomi, ROT0, "Sega", "
/* 0036F */ GAME( 2004, vf4tuned, naomi2, naomi2gd, naomi, naomi_state, naomi2, ROT0, "Sega", "Virtua Fighter 4 Final Tuned (Rev F) (GDS-0036F)", GAME_FLAGS )
// 0037? Puyo Puyo Fever (Export)
// 0038
-// 0039 Initial D: Arcade Stage Ver. 3 Cycraft Edition
-// 0039A Initial D: Arcade Stage Ver. 3 Cycraft Edition (Rev A)
+// 0039 Initial D Arcade Stage Ver. 3 Cycraft Edition
+// 0039A Initial D Arcade Stage Ver. 3 Cycraft Edition (Rev A)
/* 0039B */ GAME( 2006, inidv3cy, naomi2, naomigd, naomi, naomi_state, naomi2, ROT0, "Sega", "Initial D Arcade Stage Ver. 3 Cycraft Edition (Rev. B) (GDS-0039B)", GAME_FLAGS )
// 0040
// 0041 Dragon Treasure 3
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index bf936d1a583..7732b8d4d40 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -5313,10 +5313,10 @@ ggram2 // 1999.04 Giant Gram: All Japan Pro Wrestling 2
// 1999.05 Taisen Puzzle Kurutto Stone
ringout // 1999.06 Ring Out 4x4
f355dlx // 1999.07 F355 Challenge Deluxe (BIOS)
-f355bios // 1999.08 F355 Challenge Twin (BIOS)
f355 // 1999.07 F355 Challenge Deluxe
f355twin // 1999.07 F355 Challenge Twin
shangril // 1999.08 Dengen Tenshi Taisen Janshi Shangri-la
+f355bios // 1999.08 F355 Challenge Twin (BIOS)
tduno // 1999.08 Touch de UNO! / Unou Nouryoku Check Machine
vs2_2k // 1999.08 Virtua Striker 2 version 2000 (Rev C)
suchie3 // 1999.09 Idol Janshi Su-Chi-Pi 3
@@ -5332,13 +5332,13 @@ marstv // 1999.12 Mars TV
puyoda // 1999.12 Puyo Puyo Da!
samba // 1999.12 Samba de Amigo (Rev B)
vtennis // 1999.12 Virtua Tennis / Power Smash (cartridge)
-sambap // 1999.?? Samba de Amigo (prototype)
-vtennisg // 1999.?? Virtua Tennis / Power Smash (GD-ROM)
alpiltdx // 1999.?? Airline Pilots Deluxe (Rev B)
// 1999.?? Charge'N'Blast
// 1999.?? Mayjinsen (Formation Battle in May) (prototype)
// 1999.?? Pocket Shooting
+sambap // 1999.?? Samba de Amigo (prototype)
spawn // 1999.?? Spawn In the Demon's Hand
+vtennisg // 1999.?? Virtua Tennis / Power Smash (GD-ROM)
18wheelr // 2000.01 18 Wheeler Deluxe (Rev A)
18wheels // 2000.01 18 Wheeler (Standard)
18wheelu // 2000.01 18 Wheeler (Upright)
@@ -5357,9 +5357,6 @@ pstone2 // 2000.04 Power Stone 2
toukon4 // 2000.04 Shin Nihon Prowrestling Toukon Retsuden 4 Arcade Edition (TRF1 Ver. A)
qmegamis // 2000.05 Quiz Ah Megamisama
derbyo2k // 2000.06 Derby Owners Club 2000 Ver.2 (Rev A)
-starhrse // 2000.?? Star Horse (big screens)
-starhrct // 2000.12 Star Horse (server)
-starhrcl // 2000.11.28 Star Horse (satellite)
vonot // 2000.06 Virtual-on Oratorio Tangram M.S.B.S. Ver.5.66 2000 Edition
ggx // 2000.07 Guilty Gear X
slasho // 2000.07 Slashout
@@ -5381,7 +5378,10 @@ ninjaslt // 2000.11 Ninja Assault (NJA3 Ver. A)
ninjaslt4 // 2000.11 Ninja Assault (NJA4 Ver. A)
wwfroyal // 2000.11 WWF Royal Rumble
sprtjam // 2000.11.13 Sports Jam
-pjustic // 2000.12 Moero Justice Gakuen / Project Justice
+starhrcl // 2000.11.28 Star Horse (satellite)
+starhrct // 2000.12 Star Horse (server)
+starhrse // 2000.?? Star Horse (big screens)
+pjustic // 2000.12 Moero! Justice Gakuen / Project Justice
samba2k // 2000.12 Samba de Amigo Ver.2000
shaktam // 2000.12.28 Shakatto Tambourine (Rev B)
// 2000.?? Boat Race Ocean Heats
@@ -5413,7 +5413,7 @@ alienfnta // 2001.09 Alien Front (Rev A)
gundmxgd // 2001.09 Mobile Suit Gundam: Federation Vs. Zeon DX
derbyoc2 // 2001.10 Derby Owners Club II (Rev B)
inunoos // 2001.10 Inu No Osanpo / Dog Walking (Rev A)
-vtenis2c // 2001.10 Virtua Tennis 2 / Power Smash 2 (cartridge)
+vtenis2c // 2001.10 Virtua Tennis 2 / Power Smash 2 (Rev A) (cart)
shaktamb // 2001.10.17 Shakatto Tambourine Cho Powerup Chu (2K1 AUT)
keyboard // 2001.11 La Keyboard
ikaruga // 2001.12 Ikaruga
@@ -5421,7 +5421,6 @@ lupinsho // 2001.12 Lupin the Third: the Shooting
drbyocwc // 2001.?? Derby Owners Club World Edition (Rev. C)
derbyocw // 2001.?? Derby Owners Club World Edition (Rev. D)
// 2001.?? Star Horse 2001
-hopper // 2002.?? SWP Hopper Board
vathlete // 2002.03 Virtua Athletics / Virtua Athlete
mok // 2002.03.06 The Maze of the Kings
luptype // 2002.04 Lupin The Third - The Typing (Rev A)
@@ -5436,27 +5435,28 @@ moeru // 2002.12 Moeru Casinyo
// 2002.?? Pochinya
quizqgd // 2002.?? Quiz Keitai Q mode
shootopl // 2002.?? Shootout Pool
-shootpl // 2003.?? Shootout Pool The Medal / Shootout Pool Prize (Rev A)
+hopper // 2002.?? SWP Hopper Board
mtkob2 // 2003.02 MushiKing The King Of Beetle
- // 2003.03 Sega Network Taisen Mahjong MJ
ggxxrlo // 2003.02 Guilty Gear XX # Reload
ggxxrl // 2003.03 Guilty Gear XX # Reload (Rev A)
-shikgam2 // 2003.04 Shikigami No Shiro II / The Castle of Shikigami II
+ // 2003.03 Sega Network Taisen Mahjong MJ
bdrdown // 2003.04 Border Down (Rev A)
+shikgam2 // 2003.04 Shikigami No Shiro II / The Castle of Shikigami II
usagiym // 2003.06 Usagi Yamashiro Mahjong Hen
// 2003.07 Sega Network Taisen Mahjong MJ (Rev A)
oinori // 2003.08 Oinori-daimyoujin Matsuri
psyvar2 // 2003.11 Psyvariar 2 - The Will To Fabricate
puyofev // 2003.11 Puyo Puyo Fever
starhrsp // 2003.12.01 Star Horse Progress (satellite) (Rev A)
-puyofevp // 2003.?? Puyo Puyo Fever (prototype)
// 2003.?? Dragon Treasure
+puyofevp // 2003.?? Puyo Puyo Fever (prototype)
+shootpl // 2003.?? Shootout Pool The Medal / Shootout Pool Prize (Rev A)
cfield // 2004.06 Chaos Field
tetkiwam // 2004.06 Tetris Kiwamemichi (Arcade TV Game List - P.88, Right, 11 from bottom)
trizeal // 2004.09 Trizeal
// 2004.?? Dragon Treasure 2
-shootplm // 2004.?? Shootout Pool The Medal Ver. B / Shootout Pool Prize Ver. B
kick4csh // 2004.?? Kick '4' Cash
+shootplm // 2004.?? Shootout Pool The Medal Ver. B / Shootout Pool Prize Ver. B
// 2004.?? The Quiz Show
meltyblo // 2005.03 Melty Blood Act Cadenza
ss2005 // 2005.03 Super Shanghai 2005
@@ -5522,12 +5522,12 @@ vstrik3cb // 2001.04 Virtua Striker 3 (Rev B) (cartridge)
vstrik3 // 2001.04.06 Virtua Striker 3 Ver. 2002
wldrider // 2001.05 Wild Riders
clubkrte // 2001.06 Club Kart: European Session
-clubkrtc // 2001.?? Club Kart: European Session (Rev C)
clubkrtd // 2001.06 Club Kart: European Session (Rev D)
beachspi // 2001.07 Beach Spikers
vf4cart // 2001.08.02 Virtua Fighter 4 (cartridge)
vf4 // 2001.08.02 Virtua Fighter 4 (GD-ROM)
vf4b // 2001.08.20 Virtua Fighter 4 (Rev B) (cartridge)
+clubkrtc // 2001.?? Club Kart: European Session (Rev C)
vf4c // 2002.01.31 Virtua Fighter 4 (Rev C) (cartridge)
kingrt66 // 2002.02 The King of Route 66 (Rev A)
// 2002.02.14 Initial D Arcade Stage (Japan)
@@ -5542,8 +5542,6 @@ vf4evoa // 2002.08 Virtua Fighter 4 Evolution
initdv2jo // 2002.12 Initial D Arcade Stage Ver. 2 (Japan)
initdv2e // 2002.12 Initial D Arcade Stage Ver. 2 (export)
vf4evo // 2002.12 Virtua Fighter 4 Evolution Ver.B
-clubk2k3 // 2003.?? Club Kart: European Session (2003, Rev A)
-clubk2kp // 2003.?? Club Kart: European Session (2003, prototype)
initdexpo // 2002.?? Initial D Arcade Stage (Export)
// 2002.?? Sega Driving Simulator
// 2003.03 World Club Champion Football Serie A 2001-2002 Ver.2
@@ -5551,10 +5549,12 @@ initdexpo // 2002.?? Initial D Arcade Stage (Export)
initdv2j // 2003.05.27 Initial D Arcade Stage Ver. 2 (Japan) (Rev B)
// 2003.09 World Club Champion Football Serie A 2002-2003
// 2003.?? Club Kart Cycraft Edition
+clubk2k3 // 2003.?? Club Kart: European Session (2003, Rev A)
+clubk2kp // 2003.?? Club Kart: European Session (2003, prototype)
clubkprz // 2003.?? Club Kart Prize
+clubkpzb // 2004.01.23 Club Kart Prize Ver. B (strings in the EPROM indicate a build date of Jan. 23, 2004 for the game's program)
initdv3j // 2004.01.30 Initial D Arcade Stage Ver. 3 (Japan) (Rev C)
initdv3jb // 2004.01 Initial D Arcade Stage Ver. 3 (Japan) (Rev B)
-clubkpzb // 2004.01 Club Kart Prize Ver. B (strings in the EPROM indicate a build date of Jan. 23, 2004 for the game's program)
initdv3e // 2004.05.18 Initial D Arcade Stage Ver. 3 (Export)
// 2004.06 World Club Champion Football Serie A 2002-2003 Ver.2
// 2004.07 Virtua Fighter 4 Final Tuned
@@ -5626,8 +5626,8 @@ vs2002ex // 2002.07.30 Virtua Striker 2002 (Export)
vs2002j // 2002.10 Virtua Striker 2002 (Japan)
fzeroaxc // 2003.06.11 F-Zero AX (Rev. C)
avalons // 2003.07 The Key Of Avalon: The Wizard Master (server) (Rev C)
- // 2003.10 The Key Of Avalon 1.01
gekpurya // 2003.10 Gekitou Pro Yakyuu Mizushima Shinji All Stars vs. Pro Yakyuu (Rev C)
+ // 2003.10 The Key Of Avalon 1.01
fzeroax // 2003.12 F-Zero AX (Rev. E)
// 2003.12 The Key Of Avalon 1.10
// 2004.04 The Key Of Avalon 1.20 - Summon The New Monsters
@@ -5638,21 +5638,21 @@ vs4 // 2004.12.02 Virtua Striker 4 (export)
// 2004.?? F-Zero AX - Monster Ride Cycraft Edition
tfupdate // 2004.?? Triforce GDROM Boot Update
// 2005.08 Avalon no Kagi Ver.2.5 Kagi Seisen
-mkartagp // 2005.12 Mario Kart Arcade Grand Prix
+mkartagp // 2005.12 Mario Kart Arcade GP (MKA2 Ver.B)
// 2005.?? Donkey Kong Jungle Fever
// 2006.01.31 Virtua Striker 4 Ver.2006 (export)
vs42006 // 2006.05 Virtua Striker 4 Ver.2006 (Japan) (Rev D)
// 2006.?? Firmware Update For Compact Flash Box (Rev A)
-mkartag2 // 2007.03 Mario Kart Arcade Grand Prix 2
-mkartag2a // 2007.03 Mario Kart Arcade Grand Prix 2
+mkartag2 // 2007.03 Mario Kart Arcade GP 2 (MK21 Ver.A)
+mkartag2a // 2007.03 Mario Kart Arcade GP 2 (MK21 Ver.A, alt dump)
// Chihiro (X-Box based)
chihiro // 2002.?? Chihiro BIOS
hotd3 // 2002.10.29 The House of the Dead III
// 2003.02 Crazy Taxi High Roller
// 2003.02 Crazy Taxi High Roller (Rev A)
-crtaxihr // 2003.02.24 Crazy Taxi High Roller (Rev B)
// 2003.02 Virtua Cop 3
+crtaxihr // 2003.02.24 Crazy Taxi High Roller (Rev B)
vcop3 // 2003.02.26 Virtua Cop 3 (Rev A)
// 2003.12 Outrun 2 Prototype (Rev P)
// 2003.12 Outrun 2
@@ -5670,7 +5670,6 @@ wangmid // 2004.07 Wangan Midnight Maximum Tune (export) (Rev B)
// 2004.09 Quest of D
// 2004.11 Sega Golf Club Network Pro Tour
// 2004.12 Ghost Squad
-ghostsqu // 2004.12.09 Ghost Squad (Rev A)
// 2004.12 Quest of D Ver.1.01C
// 2004.12 Quest of D Ver.1.02
// 2004.12 Quest of D Ver.1.10
@@ -5680,6 +5679,7 @@ ghostsqu // 2004.12.09 Ghost Squad (Rev A)
outr2st // 2004.12 Outrun 2 Special Tours (Rev A)
mj2c // 2004.12 Sega Network Taisen Mahjong MJ 2 (Rev C)
// 2004.12 Sega Network Taisen Mahjong MJ 2 (Rev D)
+ghostsqu // 2004.12.09 Ghost Squad (Rev A)
// 2005.02 Sega Network Taisen Mahjong MJ 2 (Rev E)
// 2005.02 Sega Network Taisen Mahjong MJ 2 (Rev F)
mj2 // 2005.02.02 Sega Network Taisen Mahjong MJ 2 (Rev G)
diff --git a/src/mess/drivers/cnsector.c b/src/mess/drivers/cnsector.c
index 3c6f3c6a31f..9153b3a3718 100644
--- a/src/mess/drivers/cnsector.c
+++ b/src/mess/drivers/cnsector.c
@@ -38,16 +38,16 @@ public:
UINT16 m_o;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE16_MEMBER(write_o);
DECLARE_WRITE16_MEMBER(write_r);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
virtual void machine_start();
};
@@ -56,17 +56,17 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
-void cnsector_state::leds_update()
+void cnsector_state::display_update()
{
UINT16 active_state[0x10];
@@ -78,32 +78,32 @@ void cnsector_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
output_set_digit_value(i, active_state[i]);
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(cnsector_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(cnsector_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -130,8 +130,8 @@ WRITE16_MEMBER(cnsector_state::write_r)
{
// R0-R5: select digit (right-to-left)
for (int i = 0; i < 6; i++)
- m_leds_state[i] = (data >> i & 1) ? m_o : 0;
- leds_update();
+ m_display_state[i] = (data >> i & 1) ? m_o : 0;
+ display_update();
// R6-R9: direction leds
for (int i = 6; i < 10; i++)
@@ -196,16 +196,16 @@ INPUT_PORTS_END
void cnsector_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_o = 0;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_o));
}
@@ -219,7 +219,7 @@ static MACHINE_CONFIG_START( cnsector, cnsector_state )
MCFG_TMS1XXX_WRITE_O_CB(WRITE16(cnsector_state, write_o))
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(cnsector_state, write_r))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", cnsector_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", cnsector_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_cnsector)
diff --git a/src/mess/drivers/comp4.c b/src/mess/drivers/comp4.c
index 3394fc17a86..de9bbc53a6d 100644
--- a/src/mess/drivers/comp4.c
+++ b/src/mess/drivers/comp4.c
@@ -41,15 +41,15 @@ public:
UINT16 m_o;
- UINT16 m_leds_state;
- UINT8 m_leds_decay[0x10];
+ UINT16 m_display_state;
+ UINT8 m_display_decay[0x10];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE16_MEMBER(write_o);
DECLARE_WRITE16_MEMBER(write_r);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
virtual void machine_start();
};
@@ -57,37 +57,37 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 2
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 25
-void comp4_state::leds_update()
+void comp4_state::display_update()
{
for (int i = 0; i < 0x10; i++)
{
- // turn on powered leds
- if (m_leds_state >> i & 1)
- m_leds_decay[i] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_display_state >> i & 1)
+ m_display_decay[i] = DISPLAY_DECAY_TIME;
// send to output
- output_set_lamp_value(i, (m_leds_decay[i] != 0) ? 1 : 0);
+ output_set_lamp_value(i, (m_display_decay[i] != 0) ? 1 : 0);
}
}
-TIMER_DEVICE_CALLBACK_MEMBER(comp4_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(comp4_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x10; i++)
- if (!(m_leds_state >> i & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state >> i & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -118,8 +118,8 @@ WRITE16_MEMBER(comp4_state::write_r)
// R2 R7
// R1 R6
// R0 R5
- m_leds_state = data;
- leds_update();
+ m_display_state = data;
+ display_update();
}
WRITE16_MEMBER(comp4_state::write_o)
@@ -169,14 +169,14 @@ INPUT_PORTS_END
void comp4_state::machine_start()
{
// zerofill
- m_leds_state = 0;
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ m_display_state = 0;
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_o = 0;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_o));
}
@@ -190,7 +190,7 @@ static MACHINE_CONFIG_START( comp4, comp4_state )
MCFG_TMS1XXX_WRITE_O_CB(WRITE16(comp4_state, write_o))
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(comp4_state, write_r))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", comp4_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", comp4_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_comp4)
diff --git a/src/mess/drivers/elecdet.c b/src/mess/drivers/elecdet.c
index b50dec209bc..aab66ebc80e 100644
--- a/src/mess/drivers/elecdet.c
+++ b/src/mess/drivers/elecdet.c
@@ -44,9 +44,9 @@ public:
UINT16 m_o;
bool m_power_on;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE16_MEMBER(write_o);
@@ -55,8 +55,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(power_button);
DECLARE_WRITE_LINE_MEMBER(auto_power_off);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
virtual void machine_reset();
virtual void machine_start();
@@ -66,17 +66,17 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
-void elecdet_state::leds_update()
+void elecdet_state::display_update()
{
UINT16 active_state[0x10];
@@ -88,32 +88,32 @@ void elecdet_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_power_on && m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_power_on && m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
output_set_digit_value(i, active_state[i]);
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(elecdet_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(elecdet_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -145,9 +145,9 @@ WRITE16_MEMBER(elecdet_state::write_r)
// R0-R6: select digit
UINT8 o = BITSWAP8(m_o,7,5,2,1,4,0,6,3) & 0x7f;
for (int i = 0; i < 7; i++)
- m_leds_state[i] = (data >> i & 1) ? o : 0;
+ m_display_state[i] = (data >> i & 1) ? o : 0;
- leds_update();
+ display_update();
// R7,R8: speaker on
m_speaker->level_w((data & 0x180 && m_o & 0x80) ? 1 : 0);
@@ -249,17 +249,17 @@ void elecdet_state::machine_reset()
void elecdet_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_o = 0;
m_power_on = false;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_o));
save_item(NAME(m_power_on));
@@ -275,7 +275,7 @@ static MACHINE_CONFIG_START( elecdet, elecdet_state )
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(elecdet_state, write_r))
MCFG_TMS1XXX_POWER_OFF_CB(WRITELINE(elecdet_state, auto_power_off))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", elecdet_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", elecdet_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_elecdet)
diff --git a/src/mess/drivers/splitsec.c b/src/mess/drivers/splitsec.c
index aa7ae498962..28f906dc41c 100644
--- a/src/mess/drivers/splitsec.c
+++ b/src/mess/drivers/splitsec.c
@@ -72,17 +72,17 @@ public:
UINT16 m_r;
UINT16 m_o;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE16_MEMBER(write_o);
DECLARE_WRITE16_MEMBER(splitsec_write_r);
DECLARE_WRITE16_MEMBER(bankshot_write_r);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
virtual void machine_start();
};
@@ -91,15 +91,15 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
/* display layout, where number xy is lamp R(x),O(y)
@@ -122,14 +122,14 @@ public:
*/
-void splitsec_state::leds_update()
+void splitsec_state::display_update()
{
UINT16 active_state[0x10];
for (int i = 0; i < 0x10; i++)
{
// update current state
- m_leds_state[i] = (m_r >> i & 1) ? m_o : 0;
+ m_display_state[i] = (m_r >> i & 1) ? m_o : 0;
active_state[i] = 0;
@@ -137,35 +137,35 @@ void splitsec_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
{
for (int j = 0; j < 8; j++)
output_set_lamp_value(i*10 + j, active_state[i] >> j & 1);
}
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(splitsec_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(splitsec_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -193,7 +193,7 @@ WRITE16_MEMBER(splitsec_state::write_o)
// O0-O6: led rows
// O7: N/C
m_o = data;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(splitsec_state::splitsec_write_r)
@@ -206,7 +206,7 @@ WRITE16_MEMBER(splitsec_state::splitsec_write_r)
// R0-R7: led columns
m_r = data & 0xff;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(splitsec_state::bankshot_write_r)
@@ -219,7 +219,7 @@ WRITE16_MEMBER(splitsec_state::bankshot_write_r)
// R2-R10: led columns
m_r = data & ~3;
- leds_update();
+ display_update();
}
@@ -281,18 +281,18 @@ INPUT_PORTS_END
void splitsec_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_input_mux = 0;
m_r = 0;
m_o = 0;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_input_mux));
save_item(NAME(m_r));
@@ -308,7 +308,7 @@ static MACHINE_CONFIG_START( splitsec, splitsec_state )
MCFG_TMS1XXX_WRITE_O_CB(WRITE16(splitsec_state, write_o))
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(splitsec_state, splitsec_write_r))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", splitsec_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", splitsec_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_splitsec)
diff --git a/src/mess/drivers/starwbc.c b/src/mess/drivers/starwbc.c
index 6c465c9ac86..2235a73f9b4 100644
--- a/src/mess/drivers/starwbc.c
+++ b/src/mess/drivers/starwbc.c
@@ -39,16 +39,16 @@ public:
UINT16 m_r;
UINT16 m_o;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE16_MEMBER(write_o);
DECLARE_WRITE16_MEMBER(write_r);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
void prepare_and_update();
virtual void machine_start();
@@ -58,17 +58,17 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
-void starwbc_state::leds_update()
+void starwbc_state::display_update()
{
UINT16 active_state[0x10];
@@ -80,19 +80,19 @@ void starwbc_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
{
output_set_digit_value(i, active_state[i]);
@@ -100,17 +100,17 @@ void starwbc_state::leds_update()
output_set_lamp_value(i*10 + j, active_state[i] >> j & 1);
}
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(starwbc_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(starwbc_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
void starwbc_state::prepare_and_update()
@@ -120,9 +120,9 @@ void starwbc_state::prepare_and_update()
// R0,R2,R4,R6,R8
for (int i = 0; i < 5; i++)
- m_leds_state[i*2] = (m_r >> (i*2) & 1) ? (o & mask[i]) : 0;
+ m_display_state[i*2] = (m_r >> (i*2) & 1) ? (o & mask[i]) : 0;
- leds_update();
+ display_update();
}
@@ -227,17 +227,17 @@ INPUT_PORTS_END
void starwbc_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_r = 0;
m_o = 0;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_r));
save_item(NAME(m_o));
@@ -252,7 +252,7 @@ static MACHINE_CONFIG_START( starwbc, starwbc_state )
MCFG_TMS1XXX_WRITE_O_CB(WRITE16(starwbc_state, write_o))
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(starwbc_state, write_r))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", starwbc_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", starwbc_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_starwbc)
diff --git a/src/mess/drivers/stopthie.c b/src/mess/drivers/stopthie.c
index 249046286f3..f07dd1457f3 100644
--- a/src/mess/drivers/stopthie.c
+++ b/src/mess/drivers/stopthie.c
@@ -43,9 +43,9 @@ public:
UINT16 m_o;
bool m_power_on;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE16_MEMBER(write_o);
@@ -54,8 +54,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(power_button);
DECLARE_WRITE_LINE_MEMBER(auto_power_off);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
virtual void machine_reset();
virtual void machine_start();
@@ -65,17 +65,17 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
-void stopthief_state::leds_update()
+void stopthief_state::display_update()
{
UINT16 active_state[0x10];
@@ -87,32 +87,32 @@ void stopthief_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_power_on && m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_power_on && m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
output_set_digit_value(i, active_state[i]);
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(stopthief_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(stopthief_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -144,9 +144,9 @@ WRITE16_MEMBER(stopthief_state::write_r)
// R0-R2: select digit
UINT8 o = BITSWAP8(m_o,3,5,2,1,4,0,6,7) & 0x7f;
for (int i = 0; i < 3; i++)
- m_leds_state[i] = (data >> i & 1) ? o : 0;
+ m_display_state[i] = (data >> i & 1) ? o : 0;
- leds_update();
+ display_update();
// R3-R8: speaker on
m_speaker->level_w((data & 0x1f8 && m_o & 8) ? 1 : 0);
@@ -234,17 +234,17 @@ void stopthief_state::machine_reset()
void stopthief_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_o = 0;
m_power_on = false;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_o));
save_item(NAME(m_power_on));
@@ -260,7 +260,7 @@ static MACHINE_CONFIG_START( stopthief, stopthief_state )
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(stopthief_state, write_r))
MCFG_TMS1XXX_POWER_OFF_CB(WRITELINE(stopthief_state, auto_power_off))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", stopthief_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", stopthief_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_stopthie)
diff --git a/src/mess/drivers/ticalc1x.c b/src/mess/drivers/ticalc1x.c
index 5c3e32a78c4..24bba4d7776 100644
--- a/src/mess/drivers/ticalc1x.c
+++ b/src/mess/drivers/ticalc1x.c
@@ -37,14 +37,14 @@ public:
UINT16 m_o;
bool m_power_on;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(tisr16_read_k);
DECLARE_WRITE16_MEMBER(tisr16_write_o);
DECLARE_WRITE16_MEMBER(tisr16_write_r);
- void tisr16_leds_update();
+ void tisr16_display_update();
DECLARE_READ8_MEMBER(ti1270_read_k);
DECLARE_WRITE16_MEMBER(ti1270_write_o);
@@ -61,8 +61,8 @@ public:
DECLARE_INPUT_CHANGED_MEMBER(power_button);
DECLARE_WRITE_LINE_MEMBER(auto_power_off);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
virtual void machine_reset();
virtual void machine_start();
@@ -72,17 +72,17 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// Devices with TMS09x0 strobe the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 5
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 50
-void ticalc1x_state::leds_update()
+void ticalc1x_state::display_update()
{
UINT16 active_state[0x10];
@@ -94,19 +94,19 @@ void ticalc1x_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_power_on && m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_power_on && m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
{
output_set_digit_value(i, active_state[i]);
@@ -114,17 +114,17 @@ void ticalc1x_state::leds_update()
output_set_lamp_value(i*10 + j, active_state[i] >> j & 1);
}
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(ticalc1x_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(ticalc1x_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -137,19 +137,19 @@ TIMER_DEVICE_CALLBACK_MEMBER(ticalc1x_state::leds_decay_tick)
// SR-16: TMS1000 MCU labeled TMS1001NL. die labeled 1001A
-void ticalc1x_state::tisr16_leds_update()
+void ticalc1x_state::tisr16_display_update()
{
// update leds state
for (int i = 0; i < 11; i++)
if (m_r >> i & 1)
- m_leds_state[i] = m_o;
+ m_display_state[i] = m_o;
// exponent sign (not 100% sure this is correct)
- m_leds_state[11] = (m_leds_state[0] | m_leds_state[1]) ? 0x40 : 0;
+ m_display_state[11] = (m_display_state[0] | m_display_state[1]) ? 0x40 : 0;
// send to output
for (int i = 0; i < 12; i++)
- output_set_digit_value(i, m_leds_state[i]);
+ output_set_digit_value(i, m_display_state[i]);
}
READ8_MEMBER(ticalc1x_state::tisr16_read_k)
@@ -170,7 +170,7 @@ WRITE16_MEMBER(ticalc1x_state::tisr16_write_r)
// R0-R10: select digit (right-to-left)
m_r = data;
- tisr16_leds_update();
+ tisr16_display_update();
}
WRITE16_MEMBER(ticalc1x_state::tisr16_write_o)
@@ -178,7 +178,7 @@ WRITE16_MEMBER(ticalc1x_state::tisr16_write_o)
// O0-O7: digit segments
m_o = data;
- tisr16_leds_update();
+ tisr16_display_update();
}
@@ -200,9 +200,9 @@ WRITE16_MEMBER(ticalc1x_state::ti1270_write_r)
{
// R0-R7: select digit (right-to-left)
for (int i = 0; i < 8; i++)
- m_leds_state[i] = (data >> i & 1) ? m_o : 0;
+ m_display_state[i] = (data >> i & 1) ? m_o : 0;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(ticalc1x_state::ti1270_write_o)
@@ -232,12 +232,12 @@ WRITE16_MEMBER(ticalc1x_state::wizatron_write_r)
// R0-R8: select digit (right-to-left)
// note: 3rd digit is custom(not 7seg), for math symbols
for (int i = 0; i < 9; i++)
- m_leds_state[i] = (data >> i & 1) ? m_o : 0;
+ m_display_state[i] = (data >> i & 1) ? m_o : 0;
// 6th digit only has A and G for =
- m_leds_state[3] &= 0x41;
+ m_display_state[3] &= 0x41;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(ticalc1x_state::wizatron_write_o)
@@ -271,12 +271,12 @@ WRITE16_MEMBER(ticalc1x_state::ti30_write_r)
// R0-R8: select digit
UINT8 o = BITSWAP8(m_o,7,5,2,1,4,0,6,3);
for (int i = 0; i < 9; i++)
- m_leds_state[i] = (data >> i & 1) ? o : 0;
+ m_display_state[i] = (data >> i & 1) ? o : 0;
// 1st digit only has segments B,F,G,DP
- m_leds_state[0] &= 0xe2;
+ m_display_state[0] &= 0xe2;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(ticalc1x_state::ti30_write_o)
@@ -654,18 +654,18 @@ void ticalc1x_state::machine_reset()
void ticalc1x_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_r = 0;
m_o = 0;
m_power_on = false;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_r));
save_item(NAME(m_o));
@@ -688,7 +688,7 @@ MACHINE_CONFIG_END
static MACHINE_CONFIG_START( t9base, ticalc1x_state )
/* basic machine hardware */
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", ticalc1x_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", ticalc1x_state, display_decay_tick, attotime::from_msec(1))
/* no video! */
diff --git a/src/mess/drivers/tispeak.c b/src/mess/drivers/tispeak.c
index 0481f230c0d..4c0550f952f 100644
--- a/src/mess/drivers/tispeak.c
+++ b/src/mess/drivers/tispeak.c
@@ -54,11 +54,11 @@ public:
UINT16 m_o;
int m_power_on;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
- void leds_update();
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
+ void display_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
UINT32 m_cart_max_size;
UINT8* m_cart_base;
@@ -127,10 +127,10 @@ DRIVER_INIT_MEMBER(tispeak_state, lantutor)
// The device strobes the filament-enable very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
-void tispeak_state::leds_update()
+void tispeak_state::display_update()
{
int filament_on = (m_r & 0x8000) ? 1 : 0;
UINT16 active_state[0x10];
@@ -138,7 +138,7 @@ void tispeak_state::leds_update()
for (int i = 0; i < 0x10; i++)
{
// update current state
- m_leds_state[i] = (m_r >> i & 1) ? m_o : 0;
+ m_display_state[i] = (m_r >> i & 1) ? m_o : 0;
active_state[i] = 0;
@@ -146,19 +146,19 @@ void tispeak_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_power_on && filament_on && m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_power_on && filament_on && m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
{
output_set_digit_value(i, active_state[i] & 0x3fff);
@@ -166,17 +166,17 @@ void tispeak_state::leds_update()
output_set_lamp_value(i*0x10 + j, active_state[i] >> j & 1);
}
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(tispeak_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(tispeak_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -212,7 +212,7 @@ WRITE16_MEMBER(tispeak_state::snspell_write_r)
// other bits: MCU internal use
m_r = data;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(tispeak_state::snspell_write_o)
@@ -221,7 +221,7 @@ WRITE16_MEMBER(tispeak_state::snspell_write_o)
// E,D,C,G,B,A,I,M,L,K,N,J,[AP],H,F,[DP] (sidenote: TI KLMN = MAME MLNK)
m_o = BITSWAP16(data,12,15,10,7,8,9,11,6,13,3,14,0,1,2,4,5);
- leds_update();
+ display_update();
}
@@ -243,7 +243,7 @@ WRITE16_MEMBER(tispeak_state::snmath_write_o)
// [DP],D,C,H,F,B,I,M,L,K,N,J,[AP],E,G,A (sidenote: TI KLMN = MAME MLNK)
m_o = BITSWAP16(data,12,0,10,7,8,9,11,6,3,14,4,13,1,2,5,15);
- leds_update();
+ display_update();
}
@@ -253,7 +253,7 @@ WRITE16_MEMBER(tispeak_state::lantutor_write_r)
{
// same as default, except R13 is used for an extra digit
m_r = data;
- leds_update();
+ display_update();
}
@@ -442,18 +442,18 @@ void tispeak_state::machine_reset()
void tispeak_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_r = 0;
m_o = 0;
m_power_on = 0;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_r));
save_item(NAME(m_o));
@@ -482,7 +482,7 @@ static MACHINE_CONFIG_START( snmath, tispeak_state )
MCFG_TMS0270_WRITE_CTL_CB(DEVWRITE8("tms5100", tms5100_device, ctl_w))
MCFG_TMS0270_WRITE_PDC_CB(DEVWRITELINE("tms5100", tms5100_device, pdc_w))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", tispeak_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", tispeak_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_snspell) // max 9 digits
/* no video! */
diff --git a/src/mess/drivers/wildfire.c b/src/mess/drivers/wildfire.c
index 93e66e5d31d..853f464bded 100644
--- a/src/mess/drivers/wildfire.c
+++ b/src/mess/drivers/wildfire.c
@@ -46,16 +46,16 @@ public:
UINT8 m_d;
UINT16 m_a;
- UINT16 m_leds_state[0x10];
- UINT16 m_leds_cache[0x10];
- UINT8 m_leds_decay[0x100];
+ UINT16 m_display_state[0x10];
+ UINT16 m_display_cache[0x10];
+ UINT8 m_display_decay[0x100];
DECLARE_READ8_MEMBER(read_k);
DECLARE_WRITE8_MEMBER(write_d);
DECLARE_WRITE16_MEMBER(write_a);
- TIMER_DEVICE_CALLBACK_MEMBER(leds_decay_tick);
- void leds_update();
+ TIMER_DEVICE_CALLBACK_MEMBER(display_decay_tick);
+ void display_update();
bool index_is_7segled(int index);
virtual void machine_start();
@@ -65,15 +65,15 @@ public:
/***************************************************************************
- LEDs
+ LED Display
***************************************************************************/
// The device strobes the outputs very fast, it is unnoticeable to the user.
// To prevent flickering here, we need to simulate a decay.
-// decay time, in steps of 10ms
-#define LEDS_DECAY_TIME 4
+// decay time, in steps of 1ms
+#define DISPLAY_DECAY_TIME 40
inline bool wildfire_state::index_is_7segled(int index)
{
@@ -81,14 +81,14 @@ inline bool wildfire_state::index_is_7segled(int index)
return (index < 3);
}
-void wildfire_state::leds_update()
+void wildfire_state::display_update()
{
UINT16 active_state[0x10];
for (int i = 0; i < 0x10; i++)
{
// update current state
- m_leds_state[i] = (~m_a >> i & 1) ? m_d : 0;
+ m_display_state[i] = (~m_a >> i & 1) ? m_d : 0;
active_state[i] = 0;
@@ -96,19 +96,19 @@ void wildfire_state::leds_update()
{
int di = j << 4 | i;
- // turn on powered leds
- if (m_leds_state[i] >> j & 1)
- m_leds_decay[di] = LEDS_DECAY_TIME;
+ // turn on powered segments
+ if (m_display_state[i] >> j & 1)
+ m_display_decay[di] = DISPLAY_DECAY_TIME;
// determine active state
- int ds = (m_leds_decay[di] != 0) ? 1 : 0;
+ int ds = (m_display_decay[di] != 0) ? 1 : 0;
active_state[i] |= (ds << j);
}
}
// on difference, send to output
for (int i = 0; i < 0x10; i++)
- if (m_leds_cache[i] != active_state[i])
+ if (m_display_cache[i] != active_state[i])
{
if (index_is_7segled(i))
output_set_digit_value(i, BITSWAP8(active_state[i],7,0,1,2,3,4,5,6) & 0x7f);
@@ -117,17 +117,17 @@ void wildfire_state::leds_update()
output_set_lamp_value(i*10 + j, active_state[i] >> j & 1);
}
- memcpy(m_leds_cache, active_state, sizeof(m_leds_cache));
+ memcpy(m_display_cache, active_state, sizeof(m_display_cache));
}
-TIMER_DEVICE_CALLBACK_MEMBER(wildfire_state::leds_decay_tick)
+TIMER_DEVICE_CALLBACK_MEMBER(wildfire_state::display_decay_tick)
{
- // slowly turn off unpowered leds
+ // slowly turn off unpowered segments
for (int i = 0; i < 0x100; i++)
- if (!(m_leds_state[i & 0xf] >> (i>>4) & 1) && m_leds_decay[i])
- m_leds_decay[i]--;
+ if (!(m_display_state[i & 0xf] >> (i>>4) & 1) && m_display_decay[i])
+ m_display_decay[i]--;
- leds_update();
+ display_update();
}
@@ -147,13 +147,13 @@ READ8_MEMBER(wildfire_state::read_k)
WRITE8_MEMBER(wildfire_state::write_d)
{
m_d = data;
- leds_update();
+ display_update();
}
WRITE16_MEMBER(wildfire_state::write_a)
{
m_a = data;
- leds_update();
+ display_update();
}
@@ -183,17 +183,17 @@ INPUT_PORTS_END
void wildfire_state::machine_start()
{
// zerofill
- memset(m_leds_state, 0, sizeof(m_leds_state));
- memset(m_leds_cache, 0, sizeof(m_leds_cache));
- memset(m_leds_decay, 0, sizeof(m_leds_decay));
+ memset(m_display_state, 0, sizeof(m_display_state));
+ memset(m_display_cache, 0, sizeof(m_display_cache));
+ memset(m_display_decay, 0, sizeof(m_display_decay));
m_d = 0;
m_a = 0;
// register for savestates
- save_item(NAME(m_leds_state));
- save_item(NAME(m_leds_cache));
- save_item(NAME(m_leds_decay));
+ save_item(NAME(m_display_state));
+ save_item(NAME(m_display_cache));
+ save_item(NAME(m_display_decay));
save_item(NAME(m_d));
save_item(NAME(m_a));
@@ -209,7 +209,7 @@ static MACHINE_CONFIG_START( wildfire, wildfire_state )
MCFG_AMI_S2000_WRITE_D_CB(WRITE8(wildfire_state, write_d))
MCFG_AMI_S2000_WRITE_A_CB(WRITE16(wildfire_state, write_a))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("leds_decay", wildfire_state, leds_decay_tick, attotime::from_msec(10))
+ MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", wildfire_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_wildfire)