trunk/src/mame/drivers/crystal.cpp
r250350 | r250351 | |
116 | 116 | 3x Intel E28F128J3A 128MBit surface mounted FlashROMs (TSOP56, labelled 'BREZZASOFT BCSV0004Fxx', xx=01, 02, 03) |
117 | 117 | Note: there are 8 spaces total for FlashROMs. Only U1, U2 & U3 are populated in this cart. |
118 | 118 | |
| 119 | |
| 120 | |
| 121 | P's Attack (c) 2004 Uniana Co., Ltd |
| 122 | |
| 123 | +----------1||||---1|||||--1|||||---------------------------+ |
| 124 | |VOL TICKET GUN_1P GUN_2P +---------| |
| 125 | | | | |
| 126 | +-+ | 256MB | |
| 127 | | CC-DAC | Compact | |
| 128 | +-+ EMUL* | Flash | |
| 129 | | | | |
| 130 | |J +---+ +---------| |
| 131 | |A | | | |
| 132 | |M | R | 25.1750MHz +--------------+| |
| 133 | |M | A | | 42Pin* || |
| 134 | |A | M | +--------------+| |
| 135 | | | | +--------------+| |
| 136 | |C +---+ +------------+ | SYS || |
| 137 | |O | | +--------------+| |
| 138 | |N +---+ | | | |
| 139 | |N | | |VRenderZERO+| | |
| 140 | |E SERVICE | R | | MagicEyes | +-------+ 62256* | |
| 141 | |C | A | | | | RAM | | |
| 142 | |T TEST | M | | | +-------+ 62256* | |
| 143 | |O | | +------------+ | |
| 144 | |R RESET +---+ | |
| 145 | | 14.31818MHz | |
| 146 | +-+ | |
| 147 | | EEPROM | |
| 148 | +-+ GAL DSW | |
| 149 | | | |
| 150 | | VGA PIC BAT3.6V* | |
| 151 | +-----------------------------------------------------------+ |
| 152 | |
| 153 | * denotes unpopulated device |
| 154 | |
| 155 | RAM are Samsung K4S641632H-TC75 |
| 156 | VGA is a standard PC 15 pin VGA connection |
| 157 | DSW is 2 switch dipswitch (switches 3-8 are unpopulated) |
| 158 | PIC is a Microchip PIC16C711-041/P (silkscreened on the PCB as COSTOM) |
| 159 | SYS is a ST M27C160 EPROM (silkscreened on the PCB as SYSTEM_ROM_32M) |
| 160 | GAL is a GAL16V8B (not dumped) |
| 161 | EMUL is an unpopulated 8 pin connector |
| 162 | EEPROM is a 93C86 16K 5.0v Serial EEPROM (2048x8-bit or 1024x16-bit) |
| 163 | CC-DAC is a TDA1311A Stereo Continuous Calibration DAC |
| 164 | |
| 165 | TICKET is a 5 pin connector: |
| 166 | |
| 167 | 1| +12v |
| 168 | 2| IN |
| 169 | 3| OUT |
| 170 | 4| GND |
| 171 | 5| LED |
| 172 | |
| 173 | GUN_xP are 6 pin gun connectors (pins 1-4 match the UNICO sytle guns): |
| 174 | |
| 175 | 1| GND |
| 176 | 2| SW |
| 177 | 3| +5v |
| 178 | 4| SENS |
| 179 | 5| SOL |
| 180 | 6| GND |
| 181 | |
| 182 | |
| 183 | |
119 | 184 | */ |
120 | 185 | |
121 | 186 | #include "emu.h" |
r250350 | r250351 | |
199 | 264 | DECLARE_DRIVER_INIT(crysking); |
200 | 265 | DECLARE_DRIVER_INIT(evosocc); |
201 | 266 | DECLARE_DRIVER_INIT(donghaer); |
| 267 | DECLARE_DRIVER_INIT(psattack); |
202 | 268 | |
203 | 269 | DECLARE_READ32_MEMBER(trivrus_input_r); |
204 | 270 | DECLARE_WRITE32_MEMBER(trivrus_input_w); |
r250350 | r250351 | |
1193 | 1259 | ROM_REGION( 0x1000000, "user2", ROMREGION_ERASEFF ) // Unmapped flash |
1194 | 1260 | ROM_END |
1195 | 1261 | |
| 1262 | ROM_START( psattack ) |
| 1263 | ROM_REGION( 0x200000, "maincpu", 0 ) |
| 1264 | ROM_LOAD("5.sys", 0x000000, 0x200000, CRC(f09878e4) SHA1(25b8dbac47d3911615c8874746e420ece13e7181) ) |
1196 | 1265 | |
| 1266 | ROM_REGION( 0x4010, "pic16c711", 0 ) |
| 1267 | ROM_LOAD("16c711.pic", 0x0000, 0x137b, CRC(617d8292) SHA1(d32d6054ce9db2e31efaf41015afcc78ed32f6aa) ) // raw dump |
| 1268 | ROM_LOAD("16c711.bin", 0x0000, 0x4010, CRC(b316693f) SHA1(eba1f75043bd415268eedfdb95c475e73c14ff86) ) // converted to binary |
| 1269 | |
| 1270 | DISK_REGION( "cfcard" ) |
| 1271 | DISK_IMAGE_READONLY( "psattack", 0, SHA1(e99cd0dafc33ec13bf56061f81dc7c0a181594ee) ) |
| 1272 | |
| 1273 | // keep driver happy |
| 1274 | ROM_REGION32_LE( 0x3000000, "user1", 0 ) |
| 1275 | ROM_REGION( 0x1000000, "user2", ROMREGION_ERASEFF ) |
| 1276 | ROM_END |
| 1277 | |
| 1278 | |
| 1279 | |
1197 | 1280 | DRIVER_INIT_MEMBER(crystal_state,crysking) |
1198 | 1281 | { |
1199 | 1282 | UINT16 *Rom = (UINT16*) memregion("user1")->base(); |
r250350 | r250351 | |
1311 | 1394 | Rom[WORD_XOR_LE(0x19C72 / 2)] = 0x9001; // PUSH %R0 |
1312 | 1395 | } |
1313 | 1396 | |
| 1397 | DRIVER_INIT_MEMBER(crystal_state,psattack) |
| 1398 | { |
| 1399 | } |
1314 | 1400 | |
| 1401 | |
1315 | 1402 | GAME( 2001, crysbios, 0, crystal, crystal, driver_device, 0, ROT0, "BrezzaSoft", "Crystal System BIOS", MACHINE_IS_BIOS_ROOT ) |
1316 | 1403 | GAME( 2001, crysking, crysbios, crystal, crystal, crystal_state, crysking, ROT0, "BrezzaSoft", "The Crystal of Kings", 0 ) |
1317 | 1404 | GAME( 2001, evosocc, crysbios, crystal, crystal, crystal_state, evosocc, ROT0, "Evoga", "Evolution Soccer", 0 ) |
r250350 | r250351 | |
1319 | 1406 | GAME( 2001, officeye, 0, crystal, officeye,crystal_state, officeye, ROT0, "Danbi", "Office Yeo In Cheon Ha (version 1.2)", MACHINE_NOT_WORKING ) // still has some instability issues |
1320 | 1407 | GAME( 2001, donghaer, 0, crystal, crystal, crystal_state, donghaer, ROT0, "Danbi", "Donggul Donggul Haerong", MACHINE_NOT_WORKING ) |
1321 | 1408 | GAME( 2009, trivrus, 0, trivrus, trivrus, driver_device, 0, ROT0, "AGT", "Trivia R Us (v1.07)", 0 ) |
| 1409 | // has a CF card instead of flash roms |
| 1410 | GAME( 2004, psattack, 0, crystal, crystal, crystal_state, psattack, ROT0, "Uniana", "P's Attack", MACHINE_IS_SKELETON ) |
| 1411 | |
trunk/src/mame/drivers/psattack.cpp
r250350 | r250351 | |
1 | | // license:BSD-3-Clause |
2 | | // copyright-holders:David Haywood |
3 | | /* |
4 | | P's Attack |
5 | | using VRender0 System on a Chip |
6 | | |
7 | | This is basically the same hardware as Crystal System, but with a CF card for the game |
8 | | |
9 | | Skeleton driver only |
10 | | |
11 | | |
12 | | P's Attack (c) 2004 Uniana Co., Ltd |
13 | | |
14 | | +----------1||||---1|||||--1|||||---------------------------+ |
15 | | |VOL TICKET GUN_1P GUN_2P +---------| |
16 | | | | | |
17 | | +-+ | 256MB | |
18 | | | CC-DAC | Compact | |
19 | | +-+ EMUL* | Flash | |
20 | | | | | |
21 | | |J +---+ +---------| |
22 | | |A | | | |
23 | | |M | R | 25.1750MHz +--------------+| |
24 | | |M | A | | 42Pin* || |
25 | | |A | M | +--------------+| |
26 | | | | | +--------------+| |
27 | | |C +---+ +------------+ | SYS || |
28 | | |O | | +--------------+| |
29 | | |N +---+ | | | |
30 | | |N | | |VRenderZERO+| | |
31 | | |E SERVICE | R | | MagicEyes | +-------+ 62256* | |
32 | | |C | A | | | | RAM | | |
33 | | |T TEST | M | | | +-------+ 62256* | |
34 | | |O | | +------------+ | |
35 | | |R RESET +---+ | |
36 | | | 14.31818MHz | |
37 | | +-+ | |
38 | | | EEPROM | |
39 | | +-+ GAL DSW | |
40 | | | | |
41 | | | VGA PIC BAT3.6V* | |
42 | | +-----------------------------------------------------------+ |
43 | | |
44 | | * denotes unpopulated device |
45 | | |
46 | | RAM are Samsung K4S641632H-TC75 |
47 | | VGA is a standard PC 15 pin VGA connection |
48 | | DSW is 2 switch dipswitch (switches 3-8 are unpopulated) |
49 | | PIC is a Microchip PIC16C711-041/P (silkscreened on the PCB as COSTOM) |
50 | | SYS is a ST M27C160 EPROM (silkscreened on the PCB as SYSTEM_ROM_32M) |
51 | | GAL is a GAL16V8B (not dumped) |
52 | | EMUL is an unpopulated 8 pin connector |
53 | | EEPROM is a 93C86 16K 5.0v Serial EEPROM (2048x8-bit or 1024x16-bit) |
54 | | CC-DAC is a TDA1311A Stereo Continuous Calibration DAC |
55 | | |
56 | | TICKET is a 5 pin connector: |
57 | | |
58 | | 1| +12v |
59 | | 2| IN |
60 | | 3| OUT |
61 | | 4| GND |
62 | | 5| LED |
63 | | |
64 | | GUN_xP are 6 pin gun connectors (pins 1-4 match the UNICO sytle guns): |
65 | | |
66 | | 1| GND |
67 | | 2| SW |
68 | | 3| +5v |
69 | | 4| SENS |
70 | | 5| SOL |
71 | | 6| GND |
72 | | |
73 | | |
74 | | */ |
75 | | |
76 | | #include "emu.h" |
77 | | #include "cpu/se3208/se3208.h" |
78 | | #include "video/vrender0.h" |
79 | | #include "machine/ds1302.h" |
80 | | #include "sound/vrender0.h" |
81 | | #include "machine/nvram.h" |
82 | | |
83 | | |
84 | | class psattack_state : public driver_device |
85 | | { |
86 | | public: |
87 | | psattack_state(const machine_config &mconfig, device_type type, const char *tag) |
88 | | : driver_device(mconfig, type, tag), |
89 | | m_maincpu(*this, "maincpu") { } |
90 | | |
91 | | DECLARE_READ32_MEMBER(psattack_unk_r); |
92 | | DECLARE_DRIVER_INIT(psattack); |
93 | | virtual void machine_start(); |
94 | | virtual void machine_reset(); |
95 | | virtual void video_start(); |
96 | | UINT32 screen_update_psattack(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |
97 | | void screen_eof_psattack(screen_device &screen, bool state); |
98 | | INTERRUPT_GEN_MEMBER(psattack_interrupt); |
99 | | required_device<cpu_device> m_maincpu; |
100 | | }; |
101 | | |
102 | | |
103 | | READ32_MEMBER(psattack_state::psattack_unk_r) |
104 | | { |
105 | | return 0xffffffff; |
106 | | } |
107 | | |
108 | | static ADDRESS_MAP_START( psattack_mem, AS_PROGRAM, 32, psattack_state ) |
109 | | AM_RANGE(0x00000000, 0x001fffff) AM_ROM |
110 | | AM_RANGE(0x01402204, 0x01402207) AM_READ(psattack_unk_r) |
111 | | AM_RANGE(0x01402804, 0x01402807) AM_READ(psattack_unk_r) |
112 | | |
113 | | |
114 | | AM_RANGE(0x02000000, 0x027fffff) AM_RAM |
115 | | ADDRESS_MAP_END |
116 | | |
117 | | |
118 | | void psattack_state::machine_start() |
119 | | { |
120 | | } |
121 | | |
122 | | void psattack_state::machine_reset() |
123 | | { |
124 | | } |
125 | | |
126 | | void psattack_state::video_start() |
127 | | { |
128 | | } |
129 | | |
130 | | |
131 | | UINT32 psattack_state::screen_update_psattack(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) |
132 | | { |
133 | | return 0; |
134 | | } |
135 | | |
136 | | void psattack_state::screen_eof_psattack(screen_device &screen, bool state) |
137 | | { |
138 | | } |
139 | | |
140 | | INTERRUPT_GEN_MEMBER(psattack_state::psattack_interrupt) |
141 | | { |
142 | | } |
143 | | |
144 | | static INPUT_PORTS_START(psattack) |
145 | | PORT_START("Unknown") |
146 | | PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) |
147 | | PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) |
148 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
149 | | PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) |
150 | | PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) |
151 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
152 | | PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) |
153 | | PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) |
154 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
155 | | PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) |
156 | | PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) |
157 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
158 | | PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) |
159 | | PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) |
160 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
161 | | PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) |
162 | | PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) |
163 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
164 | | PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) |
165 | | PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) |
166 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
167 | | PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) |
168 | | PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) |
169 | | PORT_DIPSETTING( 0x00, DEF_STR( On ) ) |
170 | | INPUT_PORTS_END |
171 | | |
172 | | static MACHINE_CONFIG_START( psattack, psattack_state ) |
173 | | MCFG_CPU_ADD("maincpu", SE3208, 43000000) |
174 | | MCFG_CPU_PROGRAM_MAP(psattack_mem) |
175 | | MCFG_CPU_VBLANK_INT_DRIVER("screen", psattack_state, psattack_interrupt) |
176 | | |
177 | | |
178 | | //MCFG_NVRAM_ADD_0FILL("nvram") |
179 | | |
180 | | MCFG_SCREEN_ADD("screen", RASTER) |
181 | | MCFG_SCREEN_REFRESH_RATE(60) |
182 | | MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) |
183 | | MCFG_SCREEN_SIZE(320, 240) |
184 | | MCFG_SCREEN_VISIBLE_AREA(0, 319, 0, 239) |
185 | | MCFG_SCREEN_UPDATE_DRIVER(psattack_state, screen_update_psattack) |
186 | | MCFG_SCREEN_VBLANK_DRIVER(psattack_state, screen_eof_psattack) |
187 | | MCFG_SCREEN_PALETTE("palette") |
188 | | |
189 | | |
190 | | MCFG_PALETTE_ADD_RRRRRGGGGGGBBBBB("palette") |
191 | | |
192 | | MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") |
193 | | |
194 | | MCFG_SOUND_ADD("vrender", VRENDER0, 0) |
195 | | MCFG_VR0_REGBASE(0x04800000) |
196 | | MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) |
197 | | MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) |
198 | | MACHINE_CONFIG_END |
199 | | |
200 | | |
201 | | ROM_START( psattack ) |
202 | | ROM_REGION( 0x200000, "maincpu", 0 ) |
203 | | ROM_LOAD("5.sys", 0x000000, 0x200000, CRC(f09878e4) SHA1(25b8dbac47d3911615c8874746e420ece13e7181) ) |
204 | | |
205 | | ROM_REGION( 0x4010, "pic16c711", 0 ) |
206 | | ROM_LOAD("16c711.pic", 0x0000, 0x137b, CRC(617d8292) SHA1(d32d6054ce9db2e31efaf41015afcc78ed32f6aa) ) // raw dump |
207 | | ROM_LOAD("16c711.bin", 0x0000, 0x4010, CRC(b316693f) SHA1(eba1f75043bd415268eedfdb95c475e73c14ff86) ) // converted to binary |
208 | | |
209 | | DISK_REGION( "cfcard" ) |
210 | | DISK_IMAGE_READONLY( "psattack", 0, SHA1(e99cd0dafc33ec13bf56061f81dc7c0a181594ee) ) |
211 | | ROM_END |
212 | | |
213 | | |
214 | | |
215 | | DRIVER_INIT_MEMBER(psattack_state,psattack) |
216 | | { |
217 | | } |
218 | | |
219 | | GAME( 2004, psattack, 0, psattack, psattack, psattack_state, psattack, ROT0, "Uniana", "P's Attack", MACHINE_IS_SKELETON ) |