trunk/hash/cd32.xml
| r18837 | r18838 | |
| 2 | 2 | <!DOCTYPE softwarelist SYSTEM "softwarelist.dtd"> |
| 3 | 3 | <softwarelist name="cd32" description="Amiga CD-32 CD-ROM list"> |
| 4 | 4 | |
| 5 | | <!--- Just a test list --> |
| 5 | <!--- Preliminary List --> |
| 6 | 6 | |
| 7 | | <!-- This was a cloneCD image - mounted with Daemon tools, rips to .toc/.bin with burnatonce in full RAW mode --> |
| 8 | | <!-- a EC error was reported, so it might have protection --> |
| 9 | | <software name="clockwsr" supported="no"> |
| 10 | | <description>Clockwiser</description> |
| 11 | | <year>19??</year> |
| 12 | | <publisher>Rasputin</publisher> |
| 13 | | <part name="cdrom" interface="cd32_cdrom"> |
| 14 | | <diskarea name="cdrom"> |
| 15 | | <disk name="clockwiser" sha1="01a622e5b6a710eeef828b0f5807dad94de3798f"/> |
| 16 | | </diskarea> |
| 17 | | </part> |
| 18 | | </software> |
| 19 | | |
| 20 | | <software name="vital" supported="no"> |
| 21 | | <description>Vital Light</description> |
| 22 | | <year>1994</year> |
| 7 | |
| 8 | <!-- playable but there's a scrolling glitch every few frames --> |
| 9 | <software name="morph" supported="partial"> |
| 10 | <description>Morph</description> |
| 11 | <year>1993</year> |
| 23 | 12 | <publisher>Millennium</publisher> |
| 24 | 13 | <part name="cdrom" interface="cd32_cdrom"> |
| 25 | 14 | <diskarea name="cdrom"> |
| 26 | | <disk name="vital light (1994)(millennium)[!][10328981]" sha1="89921bfda42deab7a73e4c55ea4244673788a1bd"/> |
| 15 | <disk name="morph (1993)(millennium)[!]" sha1="3a8909d88d48b17b7e02284866f57085fbe62e2e"/> |
| 27 | 16 | </diskarea> |
| 28 | 17 | </part> |
| 29 | 18 | </software> |
| 30 | 19 | |
| 20 | <!-- Diggers has bad sprites (oversized cursor etc.) Oscar has bad background planes --> |
| 21 | <software name="diggoscr" supported="no"> |
| 22 | <description>Diggers + Oscar</description> |
| 23 | <year>1993</year> |
| 24 | <publisher>Commodore</publisher> |
| 25 | <part name="cdrom" interface="cd32_cdrom"> |
| 26 | <diskarea name="cdrom"> |
| 27 | <disk name="diggers and oscar (1993)(commodore)(m4)[!][compilation][amiga-cd 31, 54]" sha1="88422ad455a8b8c7255c83812aa69132f15e1bf6"/> |
| 28 | </diskarea> |
| 29 | </part> |
| 30 | </software> |
| 31 | |
| 32 | <!-- Playable, like the Ami1200 AGA version --> |
| 33 | <software name="pballfnt"> |
| 34 | <description>Pinball Fantasies CD Edition</description> |
| 35 | <year>1993</year> |
| 36 | <publisher>21st Century Entertainment</publisher> |
| 37 | <part name="cdrom" interface="cd32_cdrom"> |
| 38 | <diskarea name="cdrom"> |
| 39 | <disk name="pinball fantasies (1993)(21st century entertainment)[!]" sha1="01b589f79dc0c6e9ebc3ed898aa021c6e59daa70"/> |
| 40 | </diskarea> |
| 41 | </part> |
| 42 | </software> |
| 43 | |
| 44 | <!-- Glitchy sprites, no sound, like the Ami1200 AGA version --> |
| 45 | <software name="pballill" supported="no"> |
| 46 | <description>Pinball Illusions</description> |
| 47 | <year>1995</year> |
| 48 | <publisher>21st Century Entertainment</publisher> |
| 49 | <part name="cdrom" interface="cd32_cdrom"> |
| 50 | <diskarea name="cdrom"> |
| 51 | <disk name="pinball illusions (1995)(21st century entertainment)[!]" sha1="1b657df40d086d9ce8f498e32033993361f3452b"/> |
| 52 | </diskarea> |
| 53 | </part> |
| 54 | </software> |
| 55 | |
| 56 | <!-- Fantastic Dizzy is glitchy, other games work --> |
| 57 | <!-- Spellbound Dizzy grants you infinite lives by default, but I remember my original floppy version doing this too so it might just be a buggy game --> |
| 58 | <software name="big6diz" supported="partial"> |
| 59 | <description>The Big 6 (Dizzy Collection)</description> |
| 60 | <year>1994</year> |
| 61 | <publisher>Codemasters</publisher> |
| 62 | <part name="cdrom" interface="cd32_cdrom"> |
| 63 | <diskarea name="cdrom"> |
| 64 | <disk name="big 6, the (1994)(codemasters)(en-de)[!][compilation]" sha1="ecea85b6f6bd167b0b5164fde31b782e6b188e30"/> |
| 65 | </diskarea> |
| 66 | </part> |
| 67 | </software> |
| 68 | |
| 69 | <!-- Playable but missing some graphical effects --> |
| 70 | <software name="vital" supported="partial"> |
| 71 | <description>Vital Light</description> |
| 72 | <year>1994</year> |
| 73 | <publisher>Millennium</publisher> |
| 74 | <part name="cdrom" interface="cd32_cdrom"> |
| 75 | <diskarea name="cdrom"> |
| 76 | <disk name="vital light (1994)(millennium)[!][10328981]" sha1="89921bfda42deab7a73e4c55ea4244673788a1bd"/> |
| 77 | </diskarea> |
| 78 | </part> |
| 79 | </software> |
| 80 | |
| 81 | <!-- Bad colours / gfx issues --> |
| 82 | <software name="clockwsr" supported="no"> |
| 83 | <description>Clockwiser</description> |
| 84 | <year>1994</year> |
| 85 | <publisher>Rasputin</publisher> |
| 86 | <part name="cdrom" interface="cd32_cdrom"> |
| 87 | <diskarea name="cdrom"> |
| 88 | <disk name="clockwiser (1994)(rasputin)[!]" sha1="0d92ecfc00175486022c4c3bcfd7e26a21568d20"/> |
| 89 | </diskarea> |
| 90 | </part> |
| 91 | </software> |
| 92 | |
| 93 | <!-- runs and can be 'played', but gfx are badly scaled --> |
| 94 | <software name="sstardst" supported="no"> |
| 95 | <description>Super Stardust</description> |
| 96 | <year>1994</year> |
| 97 | <publisher>Team 17</publisher> |
| 98 | <part name="cdrom" interface="cd32_cdrom"> |
| 99 | <diskarea name="cdrom"> |
| 100 | <disk name="super stardust (1994)(team 17)[!]" sha1="2fee9d76e9b47a9fb72c2f8833d07cb4fbc6ab82"/> |
| 101 | </diskarea> |
| 102 | </part> |
| 103 | </software> |
| 104 | |
| 105 | <!-- bad screen mode --> |
| 106 | <software name="sskidmk" supported="no"> |
| 107 | <description>Super Skidmarks</description> |
| 108 | <year>1995</year> |
| 109 | <publisher>Guildhall Leisure</publisher> |
| 110 | <part name="cdrom" interface="cd32_cdrom"> |
| 111 | <diskarea name="cdrom"> |
| 112 | <disk name="super skidmarks v2.2 (1995)(guildhall leisure)[!][gh 1 10 aug 95]" sha1="af57f7c92804f460a3d2ae89b5b881414205a21e"/> |
| 113 | </diskarea> |
| 114 | </part> |
| 115 | </software> |
| 116 | |
| 117 | <!-- Manual copy protection, no idea if it actually works, menu colours are bad tho, anybody got a cheat for the code screen? --> |
| 118 | <software name="wormstdc" supported="no"> |
| 119 | <description>Worms - The Director's Cut</description> |
| 120 | <year>1995</year> |
| 121 | <publisher>Ocean</publisher> |
| 122 | <part name="cdrom" interface="cd32_cdrom"> |
| 123 | <diskarea name="cdrom"> |
| 124 | <disk name="worms - the director's cut (1995)(ocean)(m3)[!]" sha1="7c42b4cf6c089aadd0ed41f8725174ab9c7a0378"/> |
| 125 | </diskarea> |
| 126 | </part> |
| 127 | </software> |
| 128 | |
| 129 | <!-- screen offset problems, only plays on pad2? (by design?) --> |
| 130 | <software name="libcap2" supported="no"> |
| 131 | <description>Liberation - Captive II</description> |
| 132 | <year>1994</year> |
| 133 | <publisher>Mindscape</publisher> |
| 134 | <part name="cdrom" interface="cd32_cdrom"> |
| 135 | <diskarea name="cdrom"> |
| 136 | <disk name="liberation - captive ii v2.02-2.00c (1994-04-08)(mindscape)[!][cdd3716]" sha1="e4270283304e913a9397888f536be1b146482af1"/> |
| 137 | </diskarea> |
| 138 | </part> |
| 139 | </software> |
| 140 | |
| 141 | |
| 142 | |
| 31 | 143 | </softwarelist> |
trunk/src/mame/drivers/cd32.c
| r18837 | r18838 | |
| 232 | 232 | |
| 233 | 233 | CUSTOM_INPUT_MEMBER(cd32_state::cubo_input) |
| 234 | 234 | { |
| 235 | | return handle_joystick_potgor(machine(), m_potgo_value) >> 10; |
| 235 | return handle_joystick_potgor(machine(), m_potgo_value) >> 8; |
| 236 | 236 | } |
| 237 | 237 | |
| 238 | |
| 239 | |
| 240 | CUSTOM_INPUT_MEMBER(cd32_state::cd32_sel_mirror_input) |
| 241 | { |
| 242 | UINT8 bits = ioport((const char *)param)->read(); |
| 243 | return (bits & 0x20)>>5; |
| 244 | } |
| 245 | |
| 246 | |
| 247 | |
| 238 | 248 | static INPUT_PORTS_START( cd32 ) |
| 239 | 249 | PORT_START("CIA0PORTA") |
| 240 | | PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| 250 | PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_SPECIAL ) |
| 251 | /* this is the regular port for reading a single button joystick on the Amiga, many CD32 games require this to mirror the pad start button! */ |
| 252 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, cd32_state,cd32_sel_mirror_input, "P2") |
| 253 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, cd32_state,cd32_sel_mirror_input, "P1") |
| 241 | 254 | |
| 242 | 255 | PORT_START("CIA0PORTB") |
| 243 | 256 | PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) |
| r18837 | r18838 | |
| 251 | 264 | PORT_BIT( 0xfcfc, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 252 | 265 | |
| 253 | 266 | PORT_START("POTGO") |
| 254 | | PORT_BIT( 0x4400, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, cd32_state,cubo_input, 0) |
| 255 | | PORT_BIT( 0xbbff, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 267 | PORT_BIT( 0xff00, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, cd32_state,cubo_input, 0) |
| 268 | PORT_BIT( 0x00ff, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 256 | 269 | |
| 270 | |
| 271 | // CD32 '11' button pad (4 dpad directions + 7 buttons), not read directly |
| 272 | PORT_START("P1") |
| 273 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_NAME("P1 ||>") |
| 274 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_NAME("P1 <<") /* left trigger */ |
| 275 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("P1 >>") /* right trigger */ |
| 276 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(1) PORT_NAME("P1 Green") /* BUTTON3 */ |
| 277 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_PLAYER(1) PORT_NAME("P1 Yellow") /* BUTTON4 */ |
| 278 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_PLAYER(1) PORT_NAME("P1 Red / SELECT") /* BUTTON1 = START1 */ |
| 279 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_PLAYER(1) PORT_NAME("P1 Blue / STOP") /* BUTTON2 */ |
| 257 | 280 | PORT_START("P1JOY") |
| 258 | 281 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1) |
| 259 | 282 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) |
| 260 | 283 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) |
| 261 | 284 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) |
| 262 | 285 | |
| 286 | // CD32 '11' button pad (4 dpad directions + 7 buttons), not read directly |
| 287 | PORT_START("P2") |
| 288 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_NAME("P2 ||>") |
| 289 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_NAME("P2 <<") /* left trigger */ |
| 290 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_NAME("P2 >>") /* right trigger */ |
| 291 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_NAME("P2 Green") /* BUTTON3 */ |
| 292 | PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_PLAYER(2) PORT_NAME("P2 Yellow") /* BUTTON4 */ |
| 293 | PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_PLAYER(2) PORT_NAME("P2 Red / SELECT") /* BUTTON1 = START2 */ |
| 294 | PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_PLAYER(2) PORT_NAME("P2 Blue / STOP") /* BUTTON2 */ |
| 263 | 295 | PORT_START("P2JOY") |
| 264 | 296 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) |
| 265 | 297 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) |
| 266 | 298 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) |
| 267 | 299 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) |
| 268 | 300 | |
| 269 | | PORT_START("P1") |
| 270 | | PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) |
| 271 | | PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) |
| 272 | | PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) |
| 273 | | PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(1) /* BUTTON3 */ |
| 274 | | PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_PLAYER(1) /* BUTTON4 */ |
| 275 | | PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_PLAYER(1) /* BUTTON1 = START1 */ |
| 276 | | PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_PLAYER(1) /* BUTTON2 */ |
| 277 | | PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_PLAYER(1) |
| 278 | 301 | |
| 279 | | PORT_START("P2") |
| 280 | | PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) |
| 281 | | PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) |
| 282 | | PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) |
| 283 | | PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(2) /* BUTTON3 */ |
| 284 | | PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_PLAYER(2) /* BUTTON4 */ |
| 285 | | PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_PLAYER(2) /* BUTTON1 = START2 */ |
| 286 | | PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_PLAYER(2) /* BUTTON2 */ |
| 287 | | PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_PLAYER(2) |
| 288 | | |
| 289 | 302 | PORT_START("DIPSW1") |
| 290 | 303 | PORT_DIPNAME( 0x01, 0x01, "DSW1 1" ) |
| 291 | 304 | PORT_DIPSETTING( 0x01, "Reset" ) |
| r18837 | r18838 | |
| 800 | 813 | MCFG_SOUND_ROUTE( 1, "rspeaker", 0.50 ) |
| 801 | 814 | |
| 802 | 815 | /* cia */ |
| 816 | // these are setup differently on other amiga drivers (needed for floppy to work) which is correct / why? |
| 803 | 817 | MCFG_LEGACY_MOS8520_ADD("cia_0", AMIGA_68EC020_PAL_CLOCK / 10, 0, cia_0_intf) |
| 804 | 818 | MCFG_LEGACY_MOS8520_ADD("cia_1", AMIGA_68EC020_PAL_CLOCK / 10, 0, cia_1_intf) |
| 805 | 819 | |