trunk/hash/a2600.xml
r18339 | r18340 | |
217 | 217 | <info name="serial" value="CX26137" /> <!-- Not Sure About it. --> |
218 | 218 | <sharedfeat name="compatibility" value="NTSC"/> |
219 | 219 | <part name="cart" interface="a2600_cart"> |
| 220 | <feature name="mapper" value="4in1" /> |
220 | 221 | <dataarea name="rom" size="8192"> |
221 | 222 | <rom name="4 in 1 - canyon bomber, home run, night driver, sky diver (02-19-1987) (atari) (cx26137) (prototype).bin" size="8192" crc="8b304851" sha1="bc60987b668d6fa26c49f5aba5815622710140d9" offset="0" /> |
222 | 223 | </dataarea> |
r18339 | r18340 | |
230 | 231 | <info name="serial" value="P460" /> |
231 | 232 | <sharedfeat name="compatibility" value="PAL"/> |
232 | 233 | <part name="cart" interface="a2600_cart"> |
| 234 | <feature name="mapper" value="4in1" /> |
233 | 235 | <dataarea name="rom" size="16384"> |
234 | 236 | <rom name="4 game in one - rodeo champ, open sesame, bobby is going home, festival.bin" size="16384" crc="69ca1a92" sha1="b6193826df511f39077013369e625e56577f2f36" offset="0" /> |
235 | 237 | </dataarea> |
236 | 238 | </part> |
237 | 239 | </software> |
238 | 240 | |
239 | | <software name="4game1a" supported="no"> |
| 241 | <software name="4game1a"> |
240 | 242 | <description>4 Game in One - Ice Hockey + Phantom UFO + Spy Vs. Spy + Cosmic Avenger</description> |
241 | 243 | <year>198?</year> |
242 | 244 | <publisher>Bitcorp</publisher> |
| 245 | <sharedfeat name="compatibility" value="PAL"/> |
243 | 246 | <part name="cart" interface="a2600_cart"> |
| 247 | <feature name="mapper" value="4in1" /> |
244 | 248 | <dataarea name="rom" size="16384"> |
245 | 249 | <rom name="4 game in one - ice hockey, phantom ufo, spy vs. spy, cosmic avenger.bin" size="16384" crc="caf86fa7" sha1="724c1ce352d0219699892f7c78083f825a71ac1a" offset="0" /> |
246 | 250 | </dataarea> |
trunk/src/mess/drivers/a2600.c
r18339 | r18340 | |
198 | 198 | modeDPC, |
199 | 199 | mode32in1, |
200 | 200 | modeJVP, |
201 | | mode8in1 |
| 201 | mode8in1, |
| 202 | mode4in1 |
202 | 203 | }; |
203 | 204 | |
204 | 205 | static const UINT16 supported_screen_heights[4] = { 262, 312, 328, 342 }; |
r18339 | r18340 | |
609 | 610 | { |
610 | 611 | static const struct { const char *mapper_name; int mapper_type; } mapper_types[] = |
611 | 612 | { |
612 | | { "8in1", mode8in1 }, |
| 613 | { "4in1", mode4in1 }, |
| 614 | { "8in1", mode8in1 }, |
613 | 615 | }; |
614 | 616 | |
615 | 617 | for (int i = 0; i < ARRAY_LENGTH(mapper_types) && state->m_banking_mode == 0xff; i++) |
r18339 | r18340 | |
1906 | 1908 | install_banks(1, 0x0000); |
1907 | 1909 | break; |
1908 | 1910 | |
| 1911 | case mode4in1: |
| 1912 | m_current_reset_bank_counter = m_current_reset_bank_counter & 0x03; |
| 1913 | install_banks(1, m_current_reset_bank_counter * 0x1000); |
| 1914 | break; |
| 1915 | |
1909 | 1916 | case mode8in1: |
1910 | 1917 | m_current_reset_bank_counter = m_current_reset_bank_counter & 0x07; |
1911 | 1918 | if ( m_current_reset_bank_counter == 7 ) |