| Previous | 199869 Revisions | Next |
| r32536 Saturday 4th October, 2014 at 21:14:24 UTC by R. Belmont |
|---|
| New games added or promoted from NOT_WORKING status --------------------------------------------------- Vegas 1 (Ver 2.3 dual coin pulse, shorter) [any] Vegas 1 (Ver 2.1 dual coin pulse, longer) [any] Vegas 1 (Ver 1.33 single coin pulse) [any] This is a coin pusher machine from Spain. Your guess on how to work it is as good as mine ;-) |
| [src/mame] | mame.lst mame.mak |
| [src/mame/drivers] | mgavegas.c* |
| [src/mame/layout] | mgavegas.lay* |
| r0 | r32536 | |
|---|---|---|
| 1 | <!-- fireball.lay --> | |
| 2 | ||
| 3 | <!-- 2014-01-15: Initial version. --> | |
| 4 | ||
| 5 | <mamelayout version="2"> | |
| 6 | ||
| 7 | <element name="red_led"> | |
| 8 | <rect> | |
| 9 | <color red="1.0" green="0.0" blue="0.0" /> | |
| 10 | </rect> | |
| 11 | </element> | |
| 12 | ||
| 13 | <element name="background"> | |
| 14 | <rect> | |
| 15 | <bounds left="0" top="0" right="1" bottom="1" /> | |
| 16 | <color red="0.0" green="0.0" blue="0.0" /> | |
| 17 | </rect> | |
| 18 | </element> | |
| 19 | ||
| 20 | <element name="P0"><text string="MR"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 21 | <element name="P1"><text string="MC"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 22 | <element name="P2"><text string="ML"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 23 | ||
| 24 | <element name="P3"><text string="CR"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 25 | <element name="P4"><text string="CC"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 26 | <element name="P5"><text string="CL"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 27 | ||
| 28 | <element name="P6"><text string="FR"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 29 | <element name="P7"><text string="FC"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 30 | <element name="P8"><text string="FL"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 31 | ||
| 32 | <element name="P9"><text string="PR"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 33 | <element name="P10"><text string="PC"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 34 | <element name="P11"><text string="PL"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 35 | ||
| 36 | <element name="P12"><text string="500"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 37 | <element name="P13"><text string="300"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 38 | <element name="P14"><text string="200"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 39 | <element name="P15"><text string="100"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 40 | ||
| 41 | <element name="P16"><text string="INSERT COIN"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 42 | <element name="P17"><text string="NO CAMBIO"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 43 | <element name="P18"><text string="FUSE"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 44 | <element name="P19"><text string="FALTA"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 45 | ||
| 46 | <element name="P20"><text string="MGA"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 47 | <element name="P21"><text string="50"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 48 | <element name="P22"><text string="MGA"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 49 | <element name="P23"><text string="25"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 50 | <element name="P24"><text string="250"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 51 | <element name="P25"><text string="MGA"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 52 | <element name="P26"><text string="100"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 53 | <element name="P27"><text string="MGA"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 54 | <element name="P28"><text string="25"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 55 | ||
| 56 | <element name="P29"><text string="Premio Sorpresa"><color red="1.0" green="1.0" blue="1.0" /></text></element> | |
| 57 | ||
| 58 | ||
| 59 | <view name="Default Layout"> | |
| 60 | ||
| 61 | <!-- Background --> | |
| 62 | <backdrop element="background"> | |
| 63 | <bounds left="0" top="0" right="480" bottom="500" /> | |
| 64 | </backdrop> | |
| 65 | ||
| 66 | <!-- LEDs --> | |
| 67 | ||
| 68 | <bezel name="ML" element="red_led"> | |
| 69 | <bounds x="280" y="50" width="5" height="5" /> | |
| 70 | </bezel> | |
| 71 | <bezel name="MC" element="red_led"> | |
| 72 | <bounds x="320" y="50" width="5" height="5" /> | |
| 73 | </bezel> | |
| 74 | <bezel name="MR" element="red_led"> | |
| 75 | <bounds x="360" y="50" width="5" height="5" /> | |
| 76 | </bezel> | |
| 77 | ||
| 78 | <bezel name="CL" element="red_led"> | |
| 79 | <bounds x="280" y="100" width="5" height="5" /> | |
| 80 | </bezel> | |
| 81 | <bezel name="CC" element="red_led"> | |
| 82 | <bounds x="320" y="100" width="5" height="5" /> | |
| 83 | </bezel> | |
| 84 | <bezel name="CR" element="red_led"> | |
| 85 | <bounds x="360" y="100" width="5" height="5" /> | |
| 86 | </bezel> | |
| 87 | ||
| 88 | <bezel name="FL" element="red_led"> | |
| 89 | <bounds x="280" y="150" width="5" height="5" /> | |
| 90 | </bezel> | |
| 91 | <bezel name="FC" element="red_led"> | |
| 92 | <bounds x="320" y="150" width="5" height="5" /> | |
| 93 | </bezel> | |
| 94 | <bezel name="FR" element="red_led"> | |
| 95 | <bounds x="360" y="150" width="5" height="5" /> | |
| 96 | </bezel> | |
| 97 | ||
| 98 | <bezel name="PL" element="red_led"> | |
| 99 | <bounds x="280" y="200" width="5" height="5" /> | |
| 100 | </bezel> | |
| 101 | <bezel name="PC" element="red_led"> | |
| 102 | <bounds x="320" y="200" width="5" height="5" /> | |
| 103 | </bezel> | |
| 104 | <bezel name="PR" element="red_led"> | |
| 105 | <bounds x="360" y="200" width="5" height="5" /> | |
| 106 | </bezel> | |
| 107 | ||
| 108 | <bezel name="500" element="red_led"> | |
| 109 | <bounds x="410" y="50" width="5" height="5" /> | |
| 110 | </bezel> | |
| 111 | <bezel name="300" element="red_led"> | |
| 112 | <bounds x="410" y="100" width="5" height="5" /> | |
| 113 | </bezel> | |
| 114 | <bezel name="200" element="red_led"> | |
| 115 | <bounds x="410" y="150" width="5" height="5" /> | |
| 116 | </bezel> | |
| 117 | <bezel name="100" element="red_led"> | |
| 118 | <bounds x="410" y="200" width="5" height="5" /> | |
| 119 | </bezel> | |
| 120 | ||
| 121 | <bezel name="INSERTCOIN" element="red_led"> | |
| 122 | <bounds x="270" y="250" width="5" height="5" /> | |
| 123 | </bezel> | |
| 124 | <bezel name="NOCAMBIO" element="red_led"> | |
| 125 | <bounds x="310" y="250" width="5" height="5" /> | |
| 126 | </bezel> | |
| 127 | <bezel name="FUSE" element="red_led"> | |
| 128 | <bounds x="350" y="250" width="5" height="5" /> | |
| 129 | </bezel> | |
| 130 | <bezel name="FALTA" element="red_led"> | |
| 131 | <bounds x="400" y="250" width="5" height="5" /> | |
| 132 | </bezel> | |
| 133 | ||
| 134 | <bezel name="MGA4" element="red_led"> | |
| 135 | <bounds x="35" y="350" width="30" height="30" /> | |
| 136 | </bezel> | |
| 137 | <bezel name="50" element="red_led"> | |
| 138 | <bounds x="80" y="350" width="30" height="30" /> | |
| 139 | </bezel> | |
| 140 | <bezel name="MGA3" element="red_led"> | |
| 141 | <bounds x="125" y="350" width="30" height="30" /> | |
| 142 | </bezel> | |
| 143 | <bezel name="252" element="red_led"> | |
| 144 | <bounds x="170" y="350" width="30" height="30" /> | |
| 145 | </bezel> | |
| 146 | <bezel name="250" element="red_led"> | |
| 147 | <bounds x="215" y="350" width="30" height="30" /> | |
| 148 | </bezel> | |
| 149 | <bezel name="MGA2" element="red_led"> | |
| 150 | <bounds x="260" y="350" width="30" height="30" /> | |
| 151 | </bezel> | |
| 152 | <bezel name="1002" element="red_led"> | |
| 153 | <bounds x="305" y="350" width="30" height="30" /> | |
| 154 | </bezel> | |
| 155 | <bezel name="MGA" element="red_led"> | |
| 156 | <bounds x="350" y="350" width="30" height="30" /> | |
| 157 | </bezel> | |
| 158 | <bezel name="25" element="red_led"> | |
| 159 | <bounds x="395" y="350" width="30" height="30" /> | |
| 160 | </bezel> | |
| 161 | ||
| 162 | ||
| 163 | <bezel name="MGA4" element="red_led"> | |
| 164 | <bounds x="40" y="50" width="5" height="5" /> | |
| 165 | </bezel> | |
| 166 | <bezel name="50" element="red_led"> | |
| 167 | <bounds x="60" y="100" width="5" height="5" /> | |
| 168 | </bezel> | |
| 169 | <bezel name="MGA3" element="red_led"> | |
| 170 | <bounds x="80" y="150" width="5" height="5" /> | |
| 171 | </bezel> | |
| 172 | <bezel name="252" element="red_led"> | |
| 173 | <bounds x="100" y="200" width="5" height="5" /> | |
| 174 | </bezel> | |
| 175 | <bezel name="250" element="red_led"> | |
| 176 | <bounds x="120" y="250" width="5" height="5" /> | |
| 177 | </bezel> | |
| 178 | <bezel name="MGA2" element="red_led"> | |
| 179 | <bounds x="140" y="200" width="5" height="5" /> | |
| 180 | </bezel> | |
| 181 | <bezel name="1002" element="red_led"> | |
| 182 | <bounds x="160" y="150" width="5" height="5" /> | |
| 183 | </bezel> | |
| 184 | <bezel name="MGA" element="red_led"> | |
| 185 | <bounds x="180" y="100" width="5" height="5" /> | |
| 186 | </bezel> | |
| 187 | <bezel name="25" element="red_led"> | |
| 188 | <bounds x="200" y="50" width="5" height="5" /> | |
| 189 | </bezel> | |
| 190 | ||
| 191 | <bezel name="PREMIOS" element="red_led"> | |
| 192 | <bounds x="220" y="150" width="10" height="10" /> | |
| 193 | </bezel> | |
| 194 | ||
| 195 | ||
| 196 | ||
| 197 | <bezel element="P0"><bounds left="350" right="370" top="20" bottom="40" /></bezel> | |
| 198 | <bezel element="P1"><bounds left="310" right="330" top="20" bottom="40" /></bezel> | |
| 199 | <bezel element="P2"><bounds left="270" right="290" top="20" bottom="40" /></bezel> | |
| 200 | ||
| 201 | <bezel element="P3"><bounds left="350" right="370" top="70" bottom="90" /></bezel> | |
| 202 | <bezel element="P4"><bounds left="310" right="330" top="70" bottom="90" /></bezel> | |
| 203 | <bezel element="P5"><bounds left="270" right="290" top="70" bottom="90" /></bezel> | |
| 204 | ||
| 205 | <bezel element="P6"><bounds left="350" right="370" top="120" bottom="140" /></bezel> | |
| 206 | <bezel element="P7"><bounds left="310" right="330" top="120" bottom="140" /></bezel> | |
| 207 | <bezel element="P8"><bounds left="270" right="290" top="120" bottom="140" /></bezel> | |
| 208 | ||
| 209 | <bezel element="P9"><bounds left="350" right="370" top="170" bottom="190" /></bezel> | |
| 210 | <bezel element="P10"><bounds left="310" right="330" top="170" bottom="190" /></bezel> | |
| 211 | <bezel element="P11"><bounds left="270" right="290" top="170" bottom="190" /></bezel> | |
| 212 | ||
| 213 | <bezel element="P12"><bounds left="400" right="420" top="20" bottom="40" /></bezel> | |
| 214 | <bezel element="P13"><bounds left="400" right="420" top="70" bottom="90" /></bezel> | |
| 215 | <bezel element="P14"><bounds left="400" right="420" top="120" bottom="140" /></bezel> | |
| 216 | <bezel element="P15"><bounds left="400" right="420" top="170" bottom="190" /></bezel> | |
| 217 | ||
| 218 | <bezel element="P16"><bounds left="270" right="290" top="220" bottom="240" /></bezel> | |
| 219 | <bezel element="P17"><bounds left="310" right="330" top="220" bottom="240" /></bezel> | |
| 220 | <bezel element="P18"><bounds left="350" right="370" top="220" bottom="240" /></bezel> | |
| 221 | <bezel element="P19"><bounds left="400" right="420" top="220" bottom="240" /></bezel> | |
| 222 | ||
| 223 | <bezel element="P20"><bounds left="35" right="55" top="320" bottom="340" /></bezel> | |
| 224 | <bezel element="P21"><bounds left="80" right="100" top="320" bottom="340" /></bezel> | |
| 225 | <bezel element="P22"><bounds left="125" right="145" top="320" bottom="340" /></bezel> | |
| 226 | <bezel element="P23"><bounds left="170" right="190" top="320" bottom="340" /></bezel> | |
| 227 | <bezel element="P24"><bounds left="215" right="235" top="320" bottom="340" /></bezel> | |
| 228 | <bezel element="P25"><bounds left="260" right="280" top="320" bottom="340" /></bezel> | |
| 229 | <bezel element="P26"><bounds left="305" right="325" top="320" bottom="340" /></bezel> | |
| 230 | <bezel element="P27"><bounds left="350" right="370" top="320" bottom="340" /></bezel> | |
| 231 | <bezel element="P28"><bounds left="395" right="415" top="320" bottom="340" /></bezel> | |
| 232 | ||
| 233 | ||
| 234 | <bezel element="P20"><bounds left="40" right="60" top="35" bottom="45" /></bezel> | |
| 235 | <bezel element="P21"><bounds left="60" right="80" top="85" bottom="95" /></bezel> | |
| 236 | <bezel element="P22"><bounds left="80" right="100" top="135" bottom="145" /></bezel> | |
| 237 | <bezel element="P23"><bounds left="100" right="120" top="185" bottom="195" /></bezel> | |
| 238 | <bezel element="P24"><bounds left="120" right="140" top="235" bottom="245" /></bezel> | |
| 239 | <bezel element="P25"><bounds left="140" right="160" top="185" bottom="195" /></bezel> | |
| 240 | <bezel element="P26"><bounds left="160" right="180" top="135" bottom="145" /></bezel> | |
| 241 | <bezel element="P27"><bounds left="180" right="200" top="85" bottom="95" /></bezel> | |
| 242 | <bezel element="P28"><bounds left="200" right="220" top="35" bottom="45" /></bezel> | |
| 243 | ||
| 244 | <bezel element="P29"><bounds left="190" right="260" top="130" bottom="150" /></bezel> | |
| 245 | ||
| 246 | </view> | |
| 247 | </mamelayout> |
| Added: svn:mime-type + text/plain Added: svn:eol-style + native |
| r0 | r32536 | |
|---|---|---|
| 1 | /*********************************************************************************** | |
| 2 | ||
| 3 | mgavegas.c | |
| 4 | ||
| 5 | Coin pusher | |
| 6 | ||
| 7 | TODO | |
| 8 | -better analog audio out/mixer | |
| 9 | -some output (mostly not used) | |
| 10 | ||
| 11 | Ver. 1.33 have no speech and no change funcion implemented in software | |
| 12 | Ver. 2.1 and 2.3 have change function working and speech | |
| 13 | Ver. 2.2 should exist | |
| 14 | ||
| 15 | ************************************************************************************/ | |
| 16 | ||
| 17 | #include "emu.h" | |
| 18 | ||
| 19 | #include "cpu/z80/z80.h" | |
| 20 | #include "sound/ay8910.h" | |
| 21 | #include "sound/msm5205.h" | |
| 22 | #include "machine/nvram.h" | |
| 23 | #include "machine/ticket.h" | |
| 24 | #include "sound/flt_rc.h" | |
| 25 | #include "mgavegas.lh" | |
| 26 | ||
| 27 | /**************************** | |
| 28 | * LOG defines * | |
| 29 | ****************************/ | |
| 30 | ||
| 31 | #define LOG_AY8910 0 | |
| 32 | #define LOG_MSM5205 0 | |
| 33 | #define LOG_CSO1 0 | |
| 34 | #define LOG_CSO2 0 | |
| 35 | ||
| 36 | ||
| 37 | /**************************** | |
| 38 | * Clock defines * | |
| 39 | ****************************/ | |
| 40 | #define MAIN_XTAL XTAL_8MHz | |
| 41 | #define CPU_CLK MAIN_XTAL/2 | |
| 42 | #define AY_CLK CPU_CLK/2 | |
| 43 | #define MSM_CLK 384000 | |
| 44 | ||
| 45 | ||
| 46 | class mgavegas_state : public driver_device | |
| 47 | { | |
| 48 | public: | |
| 49 | mgavegas_state(const machine_config &mconfig, device_type type, const char *tag) | |
| 50 | : driver_device(mconfig, type, tag), | |
| 51 | m_maincpu(*this, "maincpu"), | |
| 52 | m_ay(*this, "aysnd"), | |
| 53 | m_msm(*this, "5205"), | |
| 54 | m_ticket(*this, "hopper"), | |
| 55 | m_filter1(*this, "filter1"), | |
| 56 | m_filter2(*this, "filter2") | |
| 57 | ||
| 58 | ||
| 59 | { } | |
| 60 | UINT8 m_int; | |
| 61 | ||
| 62 | //OUT1 | |
| 63 | UINT8 m_ckmod; | |
| 64 | UINT8 m_dmod; | |
| 65 | UINT8 m_emod; | |
| 66 | UINT8 m_inh; | |
| 67 | UINT8 m_hop; | |
| 68 | UINT8 m_seg; | |
| 69 | UINT8 m_printer; | |
| 70 | UINT8 m_auxp; | |
| 71 | ||
| 72 | //helper... | |
| 73 | UINT8 m_old_ckmod; | |
| 74 | UINT8 m_old_emod; | |
| 75 | ||
| 76 | //OUT2 | |
| 77 | UINT8 m_bobina_ctrl; | |
| 78 | UINT8 m_timbre; | |
| 79 | UINT8 m_coil_1; | |
| 80 | UINT8 m_coil_2; | |
| 81 | UINT8 m_coil_3; | |
| 82 | UINT8 m_cont_ent; | |
| 83 | UINT8 m_cont_sal; | |
| 84 | UINT8 m_cont_caj; | |
| 85 | ||
| 86 | //lamps out | |
| 87 | UINT64 m_custom_data; | |
| 88 | UINT8 m_auxs; | |
| 89 | UINT8 m_anal; | |
| 90 | UINT8 m_anacl; | |
| 91 | UINT8 m_anacr; | |
| 92 | UINT8 m_anar; | |
| 93 | UINT8 m_pl; | |
| 94 | UINT8 m_pc; | |
| 95 | UINT8 m_pr; | |
| 96 | UINT8 m_luz_250_rul; | |
| 97 | UINT8 m_luz_100_rul; | |
| 98 | UINT8 m_luz_50_rlul; | |
| 99 | UINT8 m_luz_25_lrul; | |
| 100 | UINT8 m_luz_25_rrul; | |
| 101 | UINT8 m_fl; | |
| 102 | UINT8 m_fc; | |
| 103 | UINT8 m_fr; | |
| 104 | UINT8 m_insert_coin; | |
| 105 | UINT8 m_no_cambio; | |
| 106 | UINT8 m_fuse; | |
| 107 | UINT8 m_falta; | |
| 108 | UINT8 m_anag; | |
| 109 | UINT8 m_cl; | |
| 110 | UINT8 m_cc; | |
| 111 | UINT8 m_cr; | |
| 112 | UINT8 m_premio_s; | |
| 113 | UINT8 m_100; | |
| 114 | UINT8 m_200; | |
| 115 | UINT8 m_300; | |
| 116 | UINT8 m_500; | |
| 117 | UINT8 m_ml; | |
| 118 | UINT8 m_mc; | |
| 119 | UINT8 m_mr; | |
| 120 | ||
| 121 | DECLARE_READ8_MEMBER(start_read); | |
| 122 | ||
| 123 | DECLARE_WRITE8_MEMBER(w_a0); | |
| 124 | DECLARE_READ8_MEMBER(r_a0); | |
| 125 | DECLARE_WRITE8_MEMBER(cso1_w); | |
| 126 | DECLARE_WRITE8_MEMBER(cso2_w); | |
| 127 | DECLARE_WRITE8_MEMBER(csoki_w); | |
| 128 | DECLARE_READ8_MEMBER(csoki_r); | |
| 129 | ||
| 130 | DECLARE_READ8_MEMBER(ay8910_a_r); | |
| 131 | DECLARE_READ8_MEMBER(ay8910_b_r); | |
| 132 | ||
| 133 | DECLARE_DRIVER_INIT(mgavegas); | |
| 134 | DECLARE_DRIVER_INIT(mgavegas21); | |
| 135 | DECLARE_DRIVER_INIT(mgavegas133); | |
| 136 | ||
| 137 | TIMER_DEVICE_CALLBACK_MEMBER(int_0); | |
| 138 | ||
| 139 | ||
| 140 | protected: | |
| 141 | ||
| 142 | // devices | |
| 143 | required_device<cpu_device> m_maincpu; | |
| 144 | required_device<ay8910_device> m_ay; | |
| 145 | required_device<msm5205_device> m_msm; | |
| 146 | required_device<ticket_dispenser_device> m_ticket; | |
| 147 | required_device<filter_rc_device> m_filter1; | |
| 148 | required_device<filter_rc_device> m_filter2; | |
| 149 | ||
| 150 | // driver_device overrides | |
| 151 | virtual void machine_reset(); | |
| 152 | void update_custom(); | |
| 153 | void update_lamp(); | |
| 154 | ||
| 155 | ||
| 156 | private: | |
| 157 | }; | |
| 158 | ||
| 159 | ||
| 160 | void mgavegas_state::update_lamp(){ | |
| 161 | ||
| 162 | //output_set_value("AUXS", m_auxs); //unused | |
| 163 | output_set_value("MGA4", m_anal&0x01); | |
| 164 | output_set_value("MGA3", m_anacl&0x01); | |
| 165 | output_set_value("MGA2", m_anacr&0x01); | |
| 166 | output_set_value("MGA", m_anar&0x01); | |
| 167 | output_set_value("PL", m_pl&0x01); | |
| 168 | output_set_value("PC", m_pc&0x01); | |
| 169 | output_set_value("PR", m_pr&0x01); | |
| 170 | output_set_value("250", m_luz_250_rul&0x01); | |
| 171 | output_set_value("1002", m_luz_100_rul&0x01); | |
| 172 | output_set_value("50", m_luz_50_rlul&0x01); | |
| 173 | output_set_value("252", m_luz_25_lrul&0x01); | |
| 174 | output_set_value("25", m_luz_25_rrul&0x01); | |
| 175 | output_set_value("FL", m_fl&0x01); | |
| 176 | output_set_value("FC", m_fc&0x01); | |
| 177 | output_set_value("FR", m_fr&0x01); | |
| 178 | output_set_value("INSERTCOIN", m_insert_coin&0x01); | |
| 179 | output_set_value("NOCAMBIO", m_no_cambio&0x01); | |
| 180 | output_set_value("FUSE", m_fuse&0x01); | |
| 181 | output_set_value("FALTA", m_falta&0x01); | |
| 182 | //output_set_value("ANAG", m_anag&0x01); //unused | |
| 183 | output_set_value("CL", m_cl&0x01); | |
| 184 | output_set_value("CC", m_cc&0x01); | |
| 185 | output_set_value("CR", m_cr&0x01); | |
| 186 | output_set_value("PREMIOS", m_premio_s&0x01); | |
| 187 | output_set_value("100", m_100&0x01); | |
| 188 | output_set_value("200", m_200&0x01); | |
| 189 | output_set_value("300", m_300&0x01); | |
| 190 | output_set_value("500", m_500&0x01); | |
| 191 | output_set_value("ML", m_ml&0x01); | |
| 192 | output_set_value("MC", m_mc&0x01); | |
| 193 | output_set_value("MR", m_mr&0x01); | |
| 194 | /* | |
| 195 | m_inh=BIT(data, 3); | |
| 196 | m_printer=BIT(data, 6); //not_used | |
| 197 | m_auxp=BIT(data, 7); //not_used | |
| 198 | ||
| 199 | m_bobina_ctrl=BIT(data, 0); | |
| 200 | m_timbre=BIT(data, 1); | |
| 201 | m_coil_1=BIT(data, 2); | |
| 202 | m_coil_2=BIT(data, 3); | |
| 203 | m_coil_3=BIT(data, 4); | |
| 204 | m_cont_ent=BIT(data, 5); | |
| 205 | m_cont_sal=BIT(data, 6); | |
| 206 | m_cont_caj=BIT(data, 7); | |
| 207 | */ | |
| 208 | } | |
| 209 | ||
| 210 | ||
| 211 | void mgavegas_state::update_custom(){ | |
| 212 | UINT64 tmp; | |
| 213 | ||
| 214 | if( (m_ckmod==1) & (m_old_ckmod==0) ){ | |
| 215 | //vadid clock, sample the data | |
| 216 | m_custom_data=(m_custom_data<<1)|(m_dmod&0x01); | |
| 217 | } | |
| 218 | ||
| 219 | if( (m_emod==0) & (m_old_emod==1) ){ | |
| 220 | //valid emod, check for valid data and updatae custom status this is how the hw works | |
| 221 | if( (BIT(m_custom_data, 32)==0) && (BIT(m_custom_data, 33)==0) && (BIT(m_custom_data, 34)==0) && (BIT(m_custom_data, 35)==0) ){ | |
| 222 | tmp=~m_custom_data; | |
| 223 | m_auxs= tmp&0x00000001; | |
| 224 | // m_anal= (tmp&0x00000002)>>1; //schematics error!!! | |
| 225 | // m_anacl= (tmp&0x00000004)>>2; //schematics error!!! | |
| 226 | m_luz_50_rlul= (tmp&0x00000002)>>1; | |
| 227 | m_luz_25_lrul= (tmp&0x00000004)>>2; | |
| 228 | m_anacr= (tmp&0x00000008)>>3; | |
| 229 | m_anar= (tmp&0x00000010)>>4; | |
| 230 | m_pl= (tmp&0x00000020)>>5; | |
| 231 | m_pc= (tmp&0x00000040)>>6; | |
| 232 | m_pr= (tmp&0x00000080)>>7; | |
| 233 | m_luz_250_rul= (tmp&0x00000100)>>8; | |
| 234 | m_luz_100_rul= (tmp&0x00000200)>>9; | |
| 235 | // m_luz_50_rlul= (tmp&0x00000400)>>10; //schematics error!!! | |
| 236 | // m_luz_25_lrul= (tmp&0x00000800)>>11; //schematics error!!! | |
| 237 | m_anacl= (tmp&0x00000400)>>10; | |
| 238 | m_anal= (tmp&0x00000800)>>11; | |
| 239 | m_luz_25_rrul= (tmp&0x00001000)>>12; | |
| 240 | m_fl= (tmp&0x00002000)>>13; | |
| 241 | m_fc= (tmp&0x00004000)>>14; | |
| 242 | m_fr= (tmp&0x00008000)>>15; | |
| 243 | m_insert_coin= (tmp&0x00010000)>>16; | |
| 244 | m_no_cambio= (tmp&0x00020000)>>17; | |
| 245 | m_fuse= (tmp&0x00040000)>>18; | |
| 246 | m_falta= (tmp&0x00080000)>>19; | |
| 247 | m_anag= (tmp&0x00100000)>>20; | |
| 248 | m_cl= (tmp&0x00200000)>>21; | |
| 249 | m_cc= (tmp&0x00400000)>>22; | |
| 250 | m_cr= (tmp&0x00800000)>>23; | |
| 251 | m_premio_s= (tmp&0x01000000)>>24; | |
| 252 | m_100= (tmp&0x02000000)>>25; | |
| 253 | m_200= (tmp&0x04000000)>>26; | |
| 254 | m_300= (tmp&0x08000000)>>27; | |
| 255 | m_500= (tmp&0x10000000)>>28; | |
| 256 | m_ml= (tmp&0x20000000)>>29; | |
| 257 | m_mc= (tmp&0x40000000)>>30; | |
| 258 | m_mr= (tmp&0x80000000)>>31; | |
| 259 | ||
| 260 | update_lamp(); | |
| 261 | } | |
| 262 | } | |
| 263 | ||
| 264 | m_old_ckmod=m_ckmod; | |
| 265 | m_old_emod=m_emod; | |
| 266 | } | |
| 267 | ||
| 268 | ||
| 269 | READ8_MEMBER( mgavegas_state::start_read ) | |
| 270 | { | |
| 271 | // in HW it look for /IOREQ going down to clear the IRQ line | |
| 272 | if (m_int){ | |
| 273 | m_maincpu->set_input_line(INPUT_LINE_IRQ0, CLEAR_LINE); | |
| 274 | m_int=0; | |
| 275 | } | |
| 276 | return 0xed; | |
| 277 | } | |
| 278 | ||
| 279 | ||
| 280 | ||
| 281 | /**************************** | |
| 282 | * Read/Write Handlers * | |
| 283 | ****************************/ | |
| 284 | READ8_MEMBER(mgavegas_state::r_a0) | |
| 285 | { | |
| 286 | UINT8 ret=0; | |
| 287 | ||
| 288 | ||
| 289 | switch (offset&0x03) | |
| 290 | { | |
| 291 | case 1: //bdir=0 BC1=1 | |
| 292 | ret=m_ay->data_r(space,0); | |
| 293 | break; | |
| 294 | default: | |
| 295 | if (LOG_AY8910) | |
| 296 | logerror("AY 3-8910 area unknow read!!!\n"); | |
| 297 | break; | |
| 298 | } | |
| 299 | ||
| 300 | if (LOG_AY8910) | |
| 301 | logerror("read from %04X return %02X\n",offset+0xa000,ret); | |
| 302 | return ret; | |
| 303 | } | |
| 304 | ||
| 305 | WRITE8_MEMBER(mgavegas_state::w_a0) | |
| 306 | { | |
| 307 | ||
| 308 | if (LOG_AY8910) | |
| 309 | logerror("write to %04X data = %02X \n",offset+0xa000,data); | |
| 310 | ||
| 311 | switch (offset&0x03) | |
| 312 | { | |
| 313 | case 0: //bdir=1 bc1=1 | |
| 314 | m_ay->address_w(space,0,data ); | |
| 315 | break; | |
| 316 | case 2: //bdir=1 bc1=0 | |
| 317 | m_ay->data_w(space,0,data ); | |
| 318 | break; | |
| 319 | /* | |
| 320 | case 1: //bdir=0 bc1=1 | |
| 321 | break; | |
| 322 | case 3: //bdir=0 bc1=0 | |
| 323 | break; | |
| 324 | */ | |
| 325 | default: | |
| 326 | if (LOG_AY8910) | |
| 327 | logerror("AY 3-8910 area unknow write!!!\n"); | |
| 328 | break; | |
| 329 | } | |
| 330 | } | |
| 331 | ||
| 332 | ||
| 333 | ||
| 334 | ||
| 335 | ||
| 336 | READ8_MEMBER(mgavegas_state::csoki_r) | |
| 337 | { | |
| 338 | UINT8 ret=0; | |
| 339 | ||
| 340 | if (LOG_MSM5205) | |
| 341 | logerror("read from %04X return %02X\n",offset+0xc800,ret); | |
| 342 | return ret; | |
| 343 | } | |
| 344 | ||
| 345 | WRITE8_MEMBER(mgavegas_state::csoki_w) | |
| 346 | { | |
| 347 | ||
| 348 | if (LOG_MSM5205) | |
| 349 | logerror("MSM5205 write to %04X data = %02X \n",offset+0xc800,data); | |
| 350 | m_msm->reset_w(data&0x10>>4); | |
| 351 | m_msm->data_w(data&0x0f); | |
| 352 | } | |
| 353 | ||
| 354 | ||
| 355 | WRITE8_MEMBER(mgavegas_state::cso1_w) | |
| 356 | { | |
| 357 | int hopper_data = 0x00; | |
| 358 | if (LOG_CSO1) | |
| 359 | logerror("write to CSO1 data = %02X\n",data); | |
| 360 | ||
| 361 | m_ckmod=BIT(data, 0); | |
| 362 | m_dmod=BIT(data, 1); | |
| 363 | m_emod=BIT(data, 2); | |
| 364 | m_inh=BIT(data, 3); | |
| 365 | m_hop=BIT(data, 4); | |
| 366 | m_seg=BIT(data, 5); | |
| 367 | m_printer=BIT(data, 6); //not_used | |
| 368 | m_auxp=BIT(data, 7); //not_used | |
| 369 | ||
| 370 | update_custom(); | |
| 371 | ||
| 372 | hopper_data=(m_hop&0x01)<<7; | |
| 373 | m_ticket->write(machine().driver_data()->generic_space(), 0, hopper_data); | |
| 374 | } | |
| 375 | ||
| 376 | WRITE8_MEMBER(mgavegas_state::cso2_w) | |
| 377 | { | |
| 378 | if (LOG_CSO2) | |
| 379 | logerror("write to CSO2 data = %02X\n",data); | |
| 380 | ||
| 381 | m_bobina_ctrl=BIT(data, 0); | |
| 382 | m_timbre=BIT(data, 1); | |
| 383 | m_coil_1=BIT(data, 2); | |
| 384 | m_coil_2=BIT(data, 3); | |
| 385 | m_coil_3=BIT(data, 4); | |
| 386 | m_cont_ent=BIT(data, 5); | |
| 387 | m_cont_sal=BIT(data, 6); | |
| 388 | m_cont_caj=BIT(data, 7); | |
| 389 | ||
| 390 | update_lamp(); | |
| 391 | } | |
| 392 | ||
| 393 | ||
| 394 | READ8_MEMBER(mgavegas_state::ay8910_a_r) | |
| 395 | { | |
| 396 | UINT8 ret=0xff; | |
| 397 | ||
| 398 | ret=ioport("INA")->read(); | |
| 399 | ||
| 400 | if (LOG_AY8910) | |
| 401 | logerror("read from port A return %02X\n",ret); | |
| 402 | ||
| 403 | return ret; | |
| 404 | } | |
| 405 | ||
| 406 | READ8_MEMBER(mgavegas_state::ay8910_b_r) | |
| 407 | { | |
| 408 | UINT8 ret=0xff; | |
| 409 | ||
| 410 | ret=ioport("DSW1")->read(); | |
| 411 | ||
| 412 | if (LOG_AY8910) | |
| 413 | logerror("read from port B return %02X\n",ret); | |
| 414 | ||
| 415 | return ret; | |
| 416 | } | |
| 417 | ||
| 418 | /************************* | |
| 419 | * Memory Map Information * | |
| 420 | *************************/ | |
| 421 | ||
| 422 | static ADDRESS_MAP_START( mgavegas_map, AS_PROGRAM, 8, mgavegas_state ) | |
| 423 | AM_RANGE(0x0000, 0x7fff) AM_ROM | |
| 424 | AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("nvram") | |
| 425 | AM_RANGE(0xa000, 0xa003) AM_READWRITE(r_a0,w_a0) // AY-3-8910 | |
| 426 | AM_RANGE(0xc000, 0xc001) AM_WRITE(cso1_w) // /CSout1 | |
| 427 | AM_RANGE(0xc400, 0xc401) AM_WRITE(cso2_w) // /CSout2 | |
| 428 | AM_RANGE(0xc800, 0xc801) AM_READWRITE(csoki_r,csoki_w) // /CSoki | |
| 429 | //AM_RANGE(0xcc00, 0xcc01) AM_READWRITE(cso3_r,cso3_w) // /CSout3 unused | |
| 430 | //AM_RANGE(0xe000, 0xe003) AM_READWRITE(r_e0,w_e0) // /CSaux unused | |
| 431 | ADDRESS_MAP_END | |
| 432 | ||
| 433 | ||
| 434 | ||
| 435 | /************************* | |
| 436 | * Input Ports * | |
| 437 | *************************/ | |
| 438 | ||
| 439 | ||
| 440 | static INPUT_PORTS_START( mgavegas ) | |
| 441 | ||
| 442 | PORT_START("INA") | |
| 443 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) //200ptas in for change with 8 25 ptas coins | |
| 444 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) //25 ptas in to play | |
| 445 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) //100ptas in for change with 4 25 ptas coins | |
| 446 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) | |
| 447 | PORT_BIT( 0x10, IP_ACTIVE_LOW,IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("hopper", ticket_dispenser_device, line_r) | |
| 448 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_Y) PORT_NAME("25 ptas level") //"hack" hopper always full | |
| 449 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_U) PORT_NAME("Door") | |
| 450 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_I) PORT_NAME("Channel") | |
| 451 | ||
| 452 | PORT_START("DSW1") | |
| 453 | PORT_DIPNAME( 0x07, 0x02, "Percentage" ) | |
| 454 | PORT_DIPSETTING( 0x00, "70%" ) | |
| 455 | PORT_DIPSETTING( 0x01, "70%" ) | |
| 456 | PORT_DIPSETTING( 0x02, "72%" ) | |
| 457 | PORT_DIPSETTING( 0x03, "74%" ) | |
| 458 | PORT_DIPSETTING( 0x04, "76%" ) | |
| 459 | PORT_DIPSETTING( 0x05, "78%" ) | |
| 460 | PORT_DIPSETTING( 0x06, "80%" ) | |
| 461 | PORT_DIPSETTING( 0x07, "82%" ) | |
| 462 | ||
| 463 | PORT_DIPNAME( 0x08, 0x08, "Sound" ) | |
| 464 | PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) | |
| 465 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) | |
| 466 | ||
| 467 | PORT_DIPNAME( 0x10, 0x10, "Speech" ) | |
| 468 | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) | |
| 469 | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) | |
| 470 | ||
| 471 | PORT_DIPNAME( 0x60, 0x00, "Jackpot" ) | |
| 472 | PORT_DIPSETTING( 0x40, "Jackpot 1%" ) | |
| 473 | PORT_DIPSETTING( 0x60, "Jackpot 2,5%" ) | |
| 474 | PORT_DIPSETTING( 0x00, "Jackpot 5%" ) | |
| 475 | //PORT_DIPSETTING( 0x20, DEF_STR( On ) ) //unlisted | |
| 476 | ||
| 477 | PORT_DIPNAME( 0x80, 0x80, "Reset" ) | |
| 478 | PORT_DIPSETTING( 0x80, "Normal Gameplay" ) | |
| 479 | PORT_DIPSETTING( 0x00, "Reset" ) | |
| 480 | ||
| 481 | INPUT_PORTS_END | |
| 482 | ||
| 483 | /****************************** | |
| 484 | * machine reset * | |
| 485 | ******************************/ | |
| 486 | ||
| 487 | void mgavegas_state::machine_reset() | |
| 488 | { | |
| 489 | ||
| 490 | m_int=1; | |
| 491 | m_custom_data=0xffffffffffffffff; | |
| 492 | ||
| 493 | m_old_ckmod=1; | |
| 494 | m_old_emod=0; | |
| 495 | ||
| 496 | m_ckmod=0; | |
| 497 | m_dmod=0; | |
| 498 | m_emod=0; | |
| 499 | m_inh=0; | |
| 500 | m_hop=0; | |
| 501 | m_seg=0; | |
| 502 | m_printer=0; | |
| 503 | m_auxp=0; | |
| 504 | ||
| 505 | ||
| 506 | m_bobina_ctrl=0; | |
| 507 | m_timbre=0; | |
| 508 | m_coil_1=0; | |
| 509 | m_coil_2=0; | |
| 510 | m_coil_3=0; | |
| 511 | m_cont_ent=0; | |
| 512 | m_cont_sal=0; | |
| 513 | m_cont_caj=0; | |
| 514 | ||
| 515 | m_auxs=0; | |
| 516 | m_anal=0; | |
| 517 | m_anacl=0; | |
| 518 | m_anacr=0; | |
| 519 | m_anar=0; | |
| 520 | m_pl=0; | |
| 521 | m_pc=0; | |
| 522 | m_pr=0; | |
| 523 | m_luz_250_rul=0; | |
| 524 | m_luz_100_rul=0; | |
| 525 | m_luz_50_rlul=0; | |
| 526 | m_luz_25_lrul=0; | |
| 527 | m_luz_25_rrul=0; | |
| 528 | m_fl=0; | |
| 529 | m_fc=0; | |
| 530 | m_fr=0; | |
| 531 | m_insert_coin=0; | |
| 532 | m_no_cambio=0; | |
| 533 | m_fuse=0; | |
| 534 | m_falta=0; | |
| 535 | m_anag=0; | |
| 536 | m_cl=0; | |
| 537 | m_cc=0; | |
| 538 | m_cr=0; | |
| 539 | m_premio_s=0; | |
| 540 | m_100=0; | |
| 541 | m_200=0; | |
| 542 | m_300=0; | |
| 543 | m_500=0; | |
| 544 | m_ml=0; | |
| 545 | m_mc=0; | |
| 546 | m_mr=0; | |
| 547 | ||
| 548 | m_filter1->filter_rc_set_RC(FLT_RC_LOWPASS, 1000, 0, 0, CAP_N(1) ); /* RC out of MSM5205 R=1K C=1nF */ | |
| 549 | m_filter2->filter_rc_set_RC(FLT_RC_HIGHPASS, 3846, 0, 0, CAP_N(100 )); /*ALP3B active-hybrid filter fc=2.6Khz 2poles???*/ | |
| 550 | } | |
| 551 | ||
| 552 | ||
| 553 | ||
| 554 | /****************************** | |
| 555 | * machine init * | |
| 556 | ******************************/ | |
| 557 | ||
| 558 | DRIVER_INIT_MEMBER(mgavegas_state,mgavegas21) | |
| 559 | { | |
| 560 | //hack to clear the irq on reti instruction | |
| 561 | m_maincpu->space(AS_PROGRAM).install_read_handler(0x00ea, 0x00ea, read8_delegate(FUNC(mgavegas_state::start_read), this)); | |
| 562 | } | |
| 563 | ||
| 564 | DRIVER_INIT_MEMBER(mgavegas_state,mgavegas) | |
| 565 | { | |
| 566 | //hack to clear the irq on reti instruction | |
| 567 | m_maincpu->space(AS_PROGRAM).install_read_handler(0x00e2, 0x00e2, read8_delegate(FUNC(mgavegas_state::start_read), this)); | |
| 568 | } | |
| 569 | ||
| 570 | ||
| 571 | TIMER_DEVICE_CALLBACK_MEMBER( mgavegas_state::int_0 ) | |
| 572 | { | |
| 573 | if(m_int==0){ | |
| 574 | m_maincpu->set_input_line(INPUT_LINE_IRQ0, HOLD_LINE); | |
| 575 | } | |
| 576 | } | |
| 577 | ||
| 578 | DRIVER_INIT_MEMBER(mgavegas_state,mgavegas133) | |
| 579 | { | |
| 580 | //hack to clear the irq on reti instruction | |
| 581 | m_maincpu->space(AS_PROGRAM).install_read_handler(0x00dd, 0x00dd, read8_delegate(FUNC(mgavegas_state::start_read), this)); | |
| 582 | } | |
| 583 | ||
| 584 | /************************* | |
| 585 | * Machine Drivers * | |
| 586 | *************************/ | |
| 587 | ||
| 588 | ||
| 589 | static MACHINE_CONFIG_START( mgavegas, mgavegas_state ) | |
| 590 | /* basic machine hardware */ | |
| 591 | MCFG_CPU_ADD("maincpu", Z80, CPU_CLK) | |
| 592 | MCFG_CPU_PROGRAM_MAP(mgavegas_map) | |
| 593 | ||
| 594 | MCFG_TIMER_DRIVER_ADD_PERIODIC("int_0", mgavegas_state, int_0, attotime::from_hz(6000)) //6KHz from MSM5205 /VCK | |
| 595 | ||
| 596 | MCFG_NVRAM_ADD_1FILL("nvram") | |
| 597 | ||
| 598 | MCFG_TICKET_DISPENSER_ADD("hopper",attotime::from_msec(200),TICKET_MOTOR_ACTIVE_HIGH,TICKET_STATUS_ACTIVE_LOW); | |
| 599 | ||
| 600 | /* sound hardware */ | |
| 601 | ||
| 602 | MCFG_SPEAKER_STANDARD_MONO("mono") | |
| 603 | MCFG_SOUND_ADD("aysnd", AY8910, AY_CLK) | |
| 604 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.3) | |
| 605 | MCFG_AY8910_PORT_A_READ_CB(READ8(mgavegas_state, ay8910_a_r)) | |
| 606 | MCFG_AY8910_PORT_B_READ_CB(READ8(mgavegas_state, ay8910_b_r)) | |
| 607 | ||
| 608 | MCFG_SOUND_ADD("5205", MSM5205, MSM_CLK) | |
| 609 | MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S64_4B) | |
| 610 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter1", 2.0) | |
| 611 | ||
| 612 | ||
| 613 | MCFG_FILTER_RC_ADD("filter1", 0) | |
| 614 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter2",2.0) | |
| 615 | MCFG_FILTER_RC_ADD("filter2", 0) | |
| 616 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 2.0) | |
| 617 | ||
| 618 | ||
| 619 | /* Video */ | |
| 620 | MCFG_DEFAULT_LAYOUT(layout_mgavegas) | |
| 621 | ||
| 622 | MACHINE_CONFIG_END | |
| 623 | ||
| 624 | ||
| 625 | /************************* | |
| 626 | * Rom Load * | |
| 627 | *************************/ | |
| 628 | ||
| 629 | ||
| 630 | ROM_START(mgavegas) | |
| 631 | ROM_REGION(0x8000, "maincpu", 0) | |
| 632 | ROM_LOAD("vegas1-k2.3.bin", 0x0000, 0x8000, CRC(418b1d04) SHA1(27669a85ed52d5dab25d6ebea6ef3d9b01a4795d) ) | |
| 633 | ||
| 634 | ROM_REGION( 0x2000, "nvram", 0 ) | |
| 635 | ROM_LOAD( "mgavegas23.nv", 0x0000, 0x2000, CRC(d0a175b0) SHA1(7698135dbc020f459fdaa660bf488595b67b77d0) ) //default setting | |
| 636 | ROM_END | |
| 637 | ||
| 638 | ROM_START(mgavegas21) | |
| 639 | ROM_REGION(0x8000, "maincpu", 0) | |
| 640 | ROM_LOAD("vegas1-2.1.bin", 0x0000, 0x8000, CRC(a7e988a4) SHA1(32fa1684c79f4a132553fa41006f243d4b51cef6) ) | |
| 641 | ||
| 642 | ROM_REGION( 0x2000, "nvram", 0 ) | |
| 643 | ROM_LOAD( "mgavegas21.nv", 0x0000, 0x2000, CRC(a4471550) SHA1(b8527e9158b5563460febd1009b44c8d74dbae4e) ) //default setting | |
| 644 | ROM_END | |
| 645 | ||
| 646 | ROM_START(mgavegas133) | |
| 647 | ROM_REGION(0x8000, "maincpu", 0) | |
| 648 | ROM_LOAD("vegas1-1.33.bin", 0x0000, 0x8000, CRC(1eea7f0f) SHA1(6fb54b8e2ab19e5378a95192e5007175ad76bc7a) ) | |
| 649 | ||
| 650 | ROM_REGION( 0x2000, "nvram", 0 ) | |
| 651 | ROM_LOAD( "mgavegas133.nv", 0x0000, 0x2000, CRC(20fe4db7) SHA1(887b69468ac7e6490827a06cd1f0ff15228a9c73) ) //default setting | |
| 652 | ROM_END | |
| 653 | ||
| 654 | ||
| 655 | /************************* | |
| 656 | * Game Drivers * | |
| 657 | *************************/ | |
| 658 | /* YEAR NAME PARENT MACHINE INPUT STATE INIT ROT COMPANY FULLNAME FLAGS*/ | |
| 659 | GAME( 1985, mgavegas, 0, mgavegas, mgavegas, mgavegas_state, mgavegas, ROT0, "MGA", "Vegas 1 (Ver 2.3 dual coin pulse, shorter)", GAME_MECHANICAL ) | |
| 660 | GAME( 1985, mgavegas21, mgavegas, mgavegas, mgavegas, mgavegas_state, mgavegas21, ROT0, "MGA", "Vegas 1 (Ver 2.1 dual coin pulse, longer)", GAME_MECHANICAL ) | |
| 661 | GAME( 1985, mgavegas133, mgavegas, mgavegas, mgavegas, mgavegas_state, mgavegas133,ROT0, "MGA", "Vegas 1 (Ver 1.33 single coin pulse)", GAME_MECHANICAL ) |
| Added: svn:mime-type + text/plain Added: svn:eol-style + native |
| r32535 | r32536 | |
|---|---|---|
| 31763 | 31763 | // Valco fireball |
| 31764 | 31764 | fireball |
| 31765 | 31765 | |
| 31766 | //M.G.A. | |
| 31767 | mgavegas | |
| 31768 | mgavegas21 | |
| 31769 | mgavegas133 | |
| 31770 | ||
| 31766 | 31771 | amusco // 1987, Amusco. |
| 31767 | 31772 | cocoloco // 198?, Petaco S.A. |
| r32535 | r32536 | |
|---|---|---|
| 2350 | 2350 | $(DRIVERS)/malzak.o $(VIDEO)/malzak.o \ |
| 2351 | 2351 | $(DRIVERS)/manohman.o \ |
| 2352 | 2352 | $(DRIVERS)/mcatadv.o $(VIDEO)/mcatadv.o \ |
| 2353 | $(DRIVERS)/mgavegas.o \ | |
| 2353 | 2354 | $(DRIVERS)/meyc8080.o \ |
| 2354 | 2355 | $(DRIVERS)/meyc8088.o \ |
| 2355 | 2356 | $(DRIVERS)/micro3d.o $(MACHINE)/micro3d.o $(VIDEO)/micro3d.o $(AUDIO)/micro3d.o \ |
| r32535 | r32536 | |
| 2714 | 2715 | |
| 2715 | 2716 | $(DRIVERS)/mgames.o: $(LAYOUT)/mgames.lh |
| 2716 | 2717 | |
| 2718 | $(DRIVERS)/mgavegas.o: $(LAYOUT)/mgavegas.lh | |
| 2719 | ||
| 2717 | 2720 | $(DRIVERS)/mpu3.o: $(LAYOUT)/mpu3.lh |
| 2718 | 2721 | |
| 2719 | 2722 | $(DRIVERS)/mpu4mod2sw.o: $(LAYOUT)/connect4.lh \ |
| Previous | 199869 Revisions | Next |