Previous 199869 Revisions Next

r20346 Saturday 19th January, 2013 at 18:44:43 UTC by David Haywood
sync with XingXing (nw)
[src/mame]mame.lst mame.mak
[src/mame/drivers]igs_m036.c* pgm2.c

trunk/src/mame/drivers/pgm2.c
r20345r20346
1717 YMZ774-S(SOUND)
1818 R5F21256SN(extra MCU for protection and ICcard communication)
1919
20Cartridges
21 IGS036 (MAIN CPU) (differs per game, internal code)
22 ROMs
23 Custom program ROM module (KOV3 only)
24 QFP100 chip (Xlinx CPLD)
25
26 Single PCB versions of some of the titles were also available
27
28Only 5 Games were released for this platform, 3 of which are just updates / re-releases of older titles!
29The platform has since been superseded by PGM3 (HD system uses flash cards etc.)
30
31Oriental Legend 2
32The King of Fighters '98 - Ultimate Match - Hero  (NOT DUMPED)
33Knights of Valour 2 New Legend
34Dodonpachi Daioujou Tamashii
35Knights of Valour 3
36
37NO internal ROMs are dumped.
38
2039*/
2140
41// document these exist, but leave disabled for now, can't be doing with the drama
42// #define OTHER_PGM2_SETS 1
43
2244#include "emu.h"
2345#include "cpu/arm7/arm7.h"
2446#include "cpu/arm7/arm7core.h"
r20345r20346
3355
3456   DECLARE_DRIVER_INIT(kov2nl);
3557   DECLARE_DRIVER_INIT(orleg2);
58   DECLARE_DRIVER_INIT(ddpdojh);
59   DECLARE_DRIVER_INIT(kov3);
60
3661   virtual void machine_start();
3762   virtual void machine_reset();
3863   virtual void video_start();
r20345r20346
150175MACHINE_CONFIG_END
151176
152177ROM_START( orleg2 )
153   ROM_REGION( 0x800000, "maincpu", 0 ) /* External Code (Internal is missing) */
154   ROM_LOAD16_WORD_SWAP( "xyj2_v104cn.u7",  0x000000, 0x800000, CRC(7c24a4f5) SHA1(3cd9f9264ef2aad0869afdf096e88eb8d74b2570) )
178   ROM_REGION( 0x04000, "maincpu", 0 )
179    ROM_LOAD( "xyj2_igs036.rom",         0x00000000, 0x0004000, NO_DUMP )
155180
156   ROM_REGION( 0x0200000, "tiles", ROMREGION_ERASEFF )
157   ROM_LOAD( "ig-a.u4",   0x000000, 0x0200000, CRC(fa444c32) SHA1(31e5e3efa92d52bf9ab97a0ece51e3b77f52ce8a) )
181    ROM_REGION( 0x800000, "user1", 0 )
182    ROM_LOAD( "xyj2_v104cn.u7",          0x00000000, 0x0800000, CRC(7c24a4f5) SHA1(3cd9f9264ef2aad0869afdf096e88eb8d74b2570) )
158183
159   ROM_REGION( 0x1000000, "bgtile", 0 )
160   ROM_LOAD16_BYTE( "ig-a.u35",  0x000000, 0x0800000, CRC(083a8315) SHA1(0dba25e132fbb12faa59ced648c27b881dc73478) )
161   ROM_LOAD16_BYTE( "ig-a.u36",  0x000001, 0x0800000, CRC(e197221d) SHA1(5574b1e3da4b202db725be906dd868edc2fd4634) )
184    ROM_REGION( 0x200000, "tiles", ROMREGION_ERASEFF )
185    ROM_LOAD( "ig-a_text.u4",            0x00000000, 0x0200000, CRC(fa444c32) SHA1(31e5e3efa92d52bf9ab97a0ece51e3b77f52ce8a) )
162186
163   ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
164   ROM_LOAD32_WORD( "ig-a.u12",  0x000000, 0x1000000, CRC(113a331c) SHA1(ee6b31bb2b052cc8799573de0d2f0a83f0ab4f6a) )
165   ROM_LOAD32_WORD( "ig-a.u16",  0x000002, 0x1000000, CRC(fbf411c8) SHA1(5089b5cc9bbf6496ef1367c6255e63e9ab895117) )
187    ROM_REGION( 0x1000000, "bgtile", 0 )
188    ROM_LOAD32_WORD( "ig-a_bgl.u35",     0x00000000, 0x0800000, CRC(083a8315) SHA1(0dba25e132fbb12faa59ced648c27b881dc73478) )
189    ROM_LOAD32_WORD( "ig-a_bgh.u36",     0x00000002, 0x0800000, CRC(e197221d) SHA1(5574b1e3da4b202db725be906dd868edc2fd4634) )
166190
167   ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data?
168   ROM_LOAD16_BYTE( "ig-a.u18",  0x000000, 0x2000000, CRC(43501fa6) SHA1(58ccce6d393964b771fec3f5c583e3ede57482a3) )
169   ROM_LOAD16_BYTE( "ig-a.u26",  0x000001, 0x2000000, CRC(7051d020) SHA1(3d9b24c6fda4c9699bb9f00742e0888059b623e1) )
191    ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
192    ROM_LOAD32_WORD( "ig-a_bml.u12",     0x00000000, 0x1000000, CRC(113a331c) SHA1(ee6b31bb2b052cc8799573de0d2f0a83f0ab4f6a) )
193    ROM_LOAD32_WORD( "ig-a_bmh.u16",     0x00000002, 0x1000000, CRC(fbf411c8) SHA1(5089b5cc9bbf6496ef1367c6255e63e9ab895117) )
170194
171   ROM_REGION( 0x1000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770? */
172   ROM_LOAD16_WORD_SWAP( "ig-a.u2",   0x000000, 0x1000000, CRC(8250688c) SHA1(d2488477afc528aeee96826065deba2bce4f0a7d) )
195    ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data
196    ROM_LOAD32_WORD( "ig-a_cgl.u18",     0x00000000, 0x2000000, CRC(43501fa6) SHA1(58ccce6d393964b771fec3f5c583e3ede57482a3) )
197    ROM_LOAD32_WORD( "ig-a_cgh.u26",     0x00000002, 0x2000000, CRC(7051d020) SHA1(3d9b24c6fda4c9699bb9f00742e0888059b623e1) )
198
199    ROM_REGION( 0x1000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770 */
200    ROM_LOAD16_WORD_SWAP( "ig-a_sp.u2",              0x00000000, 0x1000000, CRC(8250688c) SHA1(d2488477afc528aeee96826065deba2bce4f0a7d) )
173201ROM_END
174202
175203ROM_START( orleg2o )
176   ROM_REGION( 0x800000, "maincpu", 0 ) /* External Code (Internal is missing) */
177   ROM_LOAD16_WORD_SWAP( "xyj2_v103cn.u7",  0x000000, 0x800000, CRC(21c1fae8) SHA1(36eeb7a5e8dc8ee7c834f3ff1173c28cf6c2f1a3) )
204    ROM_REGION( 0x04000, "maincpu", 0 )
205    ROM_LOAD( "xyj2_igs036.rom",         0x00000000, 0x0004000, NO_DUMP )
178206
179   ROM_REGION( 0x0200000, "tiles", ROMREGION_ERASEFF )
180   ROM_LOAD( "ig-a.u4",   0x000000, 0x0200000, CRC(fa444c32) SHA1(31e5e3efa92d52bf9ab97a0ece51e3b77f52ce8a) )
207    ROM_REGION( 0x800000, "user1", 0 )
208    ROM_LOAD( "xyj2_v103cn.u7",  0x000000, 0x800000, CRC(21c1fae8) SHA1(36eeb7a5e8dc8ee7c834f3ff1173c28cf6c2f1a3) )
181209
182   ROM_REGION( 0x1000000, "bgtile", 0 )
183   ROM_LOAD16_BYTE( "ig-a.u35",  0x000000, 0x0800000, CRC(083a8315) SHA1(0dba25e132fbb12faa59ced648c27b881dc73478) )
184   ROM_LOAD16_BYTE( "ig-a.u36",  0x000001, 0x0800000, CRC(e197221d) SHA1(5574b1e3da4b202db725be906dd868edc2fd4634) )
210    ROM_REGION( 0x200000, "tiles", ROMREGION_ERASEFF )
211    ROM_LOAD( "ig-a_text.u4",            0x00000000, 0x0200000, CRC(fa444c32) SHA1(31e5e3efa92d52bf9ab97a0ece51e3b77f52ce8a) )
185212
186   ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
187   ROM_LOAD32_WORD( "ig-a.u12",  0x000000, 0x1000000, CRC(113a331c) SHA1(ee6b31bb2b052cc8799573de0d2f0a83f0ab4f6a) )
188   ROM_LOAD32_WORD( "ig-a.u16",  0x000002, 0x1000000, CRC(fbf411c8) SHA1(5089b5cc9bbf6496ef1367c6255e63e9ab895117) )
213    ROM_REGION( 0x1000000, "bgtile", 0 )
214    ROM_LOAD32_WORD( "ig-a_bgl.u35",     0x00000000, 0x0800000, CRC(083a8315) SHA1(0dba25e132fbb12faa59ced648c27b881dc73478) )
215    ROM_LOAD32_WORD( "ig-a_bgh.u36",     0x00000002, 0x0800000, CRC(e197221d) SHA1(5574b1e3da4b202db725be906dd868edc2fd4634) )
189216
190   ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data?
191   ROM_LOAD16_BYTE( "ig-a.u18",  0x000000, 0x2000000, CRC(43501fa6) SHA1(58ccce6d393964b771fec3f5c583e3ede57482a3) )
192   ROM_LOAD16_BYTE( "ig-a.u26",  0x000001, 0x2000000, CRC(7051d020) SHA1(3d9b24c6fda4c9699bb9f00742e0888059b623e1) )
217    ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
218    ROM_LOAD32_WORD( "ig-a_bml.u12",     0x00000000, 0x1000000, CRC(113a331c) SHA1(ee6b31bb2b052cc8799573de0d2f0a83f0ab4f6a) )
219    ROM_LOAD32_WORD( "ig-a_bmh.u16",     0x00000002, 0x1000000, CRC(fbf411c8) SHA1(5089b5cc9bbf6496ef1367c6255e63e9ab895117) )
193220
194   ROM_REGION( 0x1000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770? */
195   ROM_LOAD16_WORD_SWAP( "ig-a.u2",   0x000000, 0x1000000, CRC(8250688c) SHA1(d2488477afc528aeee96826065deba2bce4f0a7d) )
221    ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data
222    ROM_LOAD32_WORD( "ig-a_cgl.u18",     0x00000000, 0x2000000, CRC(43501fa6) SHA1(58ccce6d393964b771fec3f5c583e3ede57482a3) )
223    ROM_LOAD32_WORD( "ig-a_cgh.u26",     0x00000002, 0x2000000, CRC(7051d020) SHA1(3d9b24c6fda4c9699bb9f00742e0888059b623e1) )
224
225    ROM_REGION( 0x1000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770 */
226    ROM_LOAD16_WORD_SWAP( "ig-a_sp.u2",              0x00000000, 0x1000000, CRC(8250688c) SHA1(d2488477afc528aeee96826065deba2bce4f0a7d) )
196227ROM_END
197228
198229ROM_START( kov2nl )
199   ROM_REGION( 0x800000, "maincpu", 0 ) /* External Code (Internal is missing) */
200   ROM_LOAD16_WORD_SWAP( "gsyx_v302cn.u7",  0x000000, 0x800000, CRC(b19cf540) SHA1(25da5804bbfd7ef2cdf5cc5aabaa803d18b98929) )
230    ROM_REGION( 0x04000, "maincpu", 0 )
231    ROM_LOAD( "gsyx_igs036.rom",         0x00000000, 0x0004000, NO_DUMP )
201232
202   ROM_REGION( 0x0200000, "tiles", ROMREGION_ERASEFF )
203   ROM_LOAD( "ig-a3.u4",   0x000000, 0x0200000, CRC(214530ff) SHA1(4231a02054b0345392a077042b95779fd45d6c22) )
233    ROM_REGION( 0x800000, "user1", 0 )
234    ROM_LOAD( "gsyx_v302cn.u7",          0x00000000, 0x0800000, CRC(b19cf540) SHA1(25da5804bbfd7ef2cdf5cc5aabaa803d18b98929) )
204235
205   ROM_REGION( 0x1000000, "bgtile", 0 )
206   ROM_LOAD16_BYTE( "ig-a3.u35",  0x000000, 0x0800000, CRC(2d46b1f6) SHA1(ea8c805eda6292e86a642e9633d8fee7054d10b1) )
207   ROM_LOAD16_BYTE( "ig-a3.u36",  0x000001, 0x0800000, CRC(df710c36) SHA1(f826c3f496c4f17b46d18af1d8e02cac7b7027ac) )
236    ROM_REGION( 0x200000, "tiles", ROMREGION_ERASEFF )
237    ROM_LOAD( "ig-a3_text.u4",           0x00000000, 0x0200000, CRC(214530ff) SHA1(4231a02054b0345392a077042b95779fd45d6c22) )
208238
209   ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
210   ROM_LOAD32_WORD( "ig-a3.u12",  0x000000, 0x1000000, CRC(0bf63836) SHA1(b8e4f1951f8074b475b795bd7840c5a375b6f5ef) )
211   ROM_LOAD32_WORD( "ig-a3.u16",  0x000002, 0x1000000, CRC(4a378542) SHA1(5d06a8a8796285a786ebb690c34610f923ef5570) )
239    ROM_REGION( 0x1000000, "bgtile", 0 )
240    ROM_LOAD32_WORD( "ig-a3_bgl.u35",    0x00000000, 0x0800000, CRC(2d46b1f6) SHA1(ea8c805eda6292e86a642e9633d8fee7054d10b1) )
241    ROM_LOAD32_WORD( "ig-a3_bgh.u36",    0x00000002, 0x0800000, CRC(df710c36) SHA1(f826c3f496c4f17b46d18af1d8e02cac7b7027ac) )
212242
213   ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data?
214   ROM_LOAD16_BYTE( "ig-a3.u18",  0x000000, 0x2000000, CRC(8d923e1f) SHA1(14371cf385dd8857017d3111cd4710f4291b1ae2) )
215   ROM_LOAD16_BYTE( "ig-a3.u26",  0x000001, 0x2000000, CRC(5b6fbf3f) SHA1(d1f52e230b91ee6cde939d7c2b74da7fd6527e73) )
243    ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
244    ROM_LOAD32_WORD( "ig-a3_bml.u12",    0x00000000, 0x1000000, CRC(0bf63836) SHA1(b8e4f1951f8074b475b795bd7840c5a375b6f5ef) )
245    ROM_LOAD32_WORD( "ig-a3_bmh.u16",    0x00000002, 0x1000000, CRC(4a378542) SHA1(5d06a8a8796285a786ebb690c34610f923ef5570) )
216246
217   ROM_REGION( 0x2000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770? */
218   ROM_LOAD16_WORD_SWAP( "ig-a3.u37",   0x000000, 0x2000000, CRC(45cdf422) SHA1(8005d284bcee73cff37a147fcd1c3e9f039a7203) )
247    ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data
248    ROM_LOAD32_WORD( "ig-a3_cgl.u18",    0x00000000, 0x2000000, CRC(8d923e1f) SHA1(14371cf385dd8857017d3111cd4710f4291b1ae2) )
249    ROM_LOAD32_WORD( "ig-a3_cgh.u26",    0x00000002, 0x2000000, CRC(5b6fbf3f) SHA1(d1f52e230b91ee6cde939d7c2b74da7fd6527e73) )
250
251    ROM_REGION( 0x2000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770 */
252    ROM_LOAD16_WORD_SWAP( "ig-a3_sp.u37",            0x00000000, 0x2000000, CRC(45cdf422) SHA1(8005d284bcee73cff37a147fcd1c3e9f039a7203) )
219253ROM_END
220254
221255ROM_START( kov2nlo )
222   ROM_REGION( 0x800000, "maincpu", 0 ) /* External Code (Internal is missing) */
223   ROM_LOAD16_WORD_SWAP( "gsyx_v301cn.u7",  0x000000, 0x800000, CRC(c4595c2c) SHA1(09e379556ef76f81a63664f46d3f1415b315f384) )
256    ROM_REGION( 0x04000, "maincpu", 0 )
257    ROM_LOAD( "gsyx_igs036.rom",         0x00000000, 0x0004000, NO_DUMP )
224258
225   ROM_REGION( 0x0200000, "tiles", ROMREGION_ERASEFF )
226   ROM_LOAD( "ig-a3.u4",   0x000000, 0x0200000, CRC(214530ff) SHA1(4231a02054b0345392a077042b95779fd45d6c22) )
259    ROM_REGION( 0x800000, "user1", 0 )
260    ROM_LOAD( "gsyx_v301cn.u7",  0x000000, 0x800000, CRC(c4595c2c) SHA1(09e379556ef76f81a63664f46d3f1415b315f384) )
227261
228   ROM_REGION( 0x1000000, "bgtile", 0 )
229   ROM_LOAD16_BYTE( "ig-a3.u35",  0x000000, 0x0800000, CRC(2d46b1f6) SHA1(ea8c805eda6292e86a642e9633d8fee7054d10b1) )
230   ROM_LOAD16_BYTE( "ig-a3.u36",  0x000001, 0x0800000, CRC(df710c36) SHA1(f826c3f496c4f17b46d18af1d8e02cac7b7027ac) )
262    ROM_REGION( 0x200000, "tiles", ROMREGION_ERASEFF )
263    ROM_LOAD( "ig-a3_text.u4",           0x00000000, 0x0200000, CRC(214530ff) SHA1(4231a02054b0345392a077042b95779fd45d6c22) )
231264
232   ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
233   ROM_LOAD32_WORD( "ig-a3.u12",  0x000000, 0x1000000, CRC(0bf63836) SHA1(b8e4f1951f8074b475b795bd7840c5a375b6f5ef) )
234   ROM_LOAD32_WORD( "ig-a3.u16",  0x000002, 0x1000000, CRC(4a378542) SHA1(5d06a8a8796285a786ebb690c34610f923ef5570) )
265    ROM_REGION( 0x1000000, "bgtile", 0 )
266    ROM_LOAD32_WORD( "ig-a3_bgl.u35",    0x00000000, 0x0800000, CRC(2d46b1f6) SHA1(ea8c805eda6292e86a642e9633d8fee7054d10b1) )
267    ROM_LOAD32_WORD( "ig-a3_bgh.u36",    0x00000002, 0x0800000, CRC(df710c36) SHA1(f826c3f496c4f17b46d18af1d8e02cac7b7027ac) )
235268
236   ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data?
237   ROM_LOAD16_BYTE( "ig-a3.u18",  0x000000, 0x2000000, CRC(8d923e1f) SHA1(14371cf385dd8857017d3111cd4710f4291b1ae2) )
238   ROM_LOAD16_BYTE( "ig-a3.u26",  0x000001, 0x2000000, CRC(5b6fbf3f) SHA1(d1f52e230b91ee6cde939d7c2b74da7fd6527e73) )
269    ROM_REGION( 0x2000000, "spritesa", 0 ) // 1bpp sprite mask data
270    ROM_LOAD32_WORD( "ig-a3_bml.u12",    0x00000000, 0x1000000, CRC(0bf63836) SHA1(b8e4f1951f8074b475b795bd7840c5a375b6f5ef) )
271    ROM_LOAD32_WORD( "ig-a3_bmh.u16",    0x00000002, 0x1000000, CRC(4a378542) SHA1(5d06a8a8796285a786ebb690c34610f923ef5570) )
239272
240   ROM_REGION( 0x2000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770? */
241   ROM_LOAD16_WORD_SWAP( "ig-a3.u37",   0x000000, 0x2000000, CRC(45cdf422) SHA1(8005d284bcee73cff37a147fcd1c3e9f039a7203) )
273    ROM_REGION( 0x4000000, "spritesb", 0 ) // sprite colour data
274    ROM_LOAD32_WORD( "ig-a3_cgl.u18",    0x00000000, 0x2000000, CRC(8d923e1f) SHA1(14371cf385dd8857017d3111cd4710f4291b1ae2) )
275    ROM_LOAD32_WORD( "ig-a3_cgh.u26",    0x00000002, 0x2000000, CRC(5b6fbf3f) SHA1(d1f52e230b91ee6cde939d7c2b74da7fd6527e73) )
276
277    ROM_REGION( 0x2000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770 */
278    ROM_LOAD16_WORD_SWAP( "ig-a3_sp.u37",            0x00000000, 0x2000000, CRC(45cdf422) SHA1(8005d284bcee73cff37a147fcd1c3e9f039a7203) )
242279ROM_END
243280
281#ifdef OTHER_PGM2_SETS
282ROM_START( ddpdojh )
283    ROM_REGION( 0x04000, "maincpu", 0 )
284    ROM_LOAD( "ddpdoj_igs036.rom",       0x00000000, 0x0004000, NO_DUMP )
285
286    ROM_REGION( 0x800000, "user1", 0 )
287    ROM_LOAD( "ddpdoj_v201cn.u4",        0x00000000, 0x0200000, CRC(89e4b760) SHA1(9fad1309da31d12a413731b416a8bbfdb304ed9e) )
288
289    ROM_REGION( 0x200000, "tiles", ROMREGION_ERASEFF )
290    ROM_LOAD( "ddpdoj_text.u1",          0x00000000, 0x0200000, CRC(f18141d1) SHA1(a16e0a76bc926a158bb92dfd35aca749c569ef50) )
291
292    ROM_REGION( 0x2000000, "bgtile", 0 )
293    ROM_LOAD32_WORD( "ddpdoj_bgl.u23",   0x00000000, 0x1000000, CRC(ff65fdab) SHA1(abdd5ca43599a2daa722547a999119123dd9bb28) )
294    ROM_LOAD32_WORD( "ddpdoj_bgh.u24",   0x00000002, 0x1000000, CRC(bb84d2a6) SHA1(a576a729831b5946287fa8f0d923016f43a9bedb) )
295
296    ROM_REGION( 0x1000000, "spritesa", 0 ) // 1bpp sprite mask data
297    ROM_LOAD32_WORD( "ddpdoj_mapl0.u13", 0x00000000, 0x800000, CRC(bcfbb0fc) SHA1(9ec478eba9905913cf997bd9b46c70c1ad383630) )
298    ROM_LOAD32_WORD( "ddpdoj_maph0.u15", 0x00000002, 0x800000, CRC(0cc75d4e) SHA1(6d1b5ef0fdebf1e84fa199b939ffa07b810b12c9) )
299
300    ROM_REGION( 0x2000000, "spritesb", 0 ) // sprite colour data
301    ROM_LOAD32_WORD( "ddpdoj_spa0.u9",   0x00000000, 0x1000000, CRC(1232c1b4) SHA1(ecc1c549ae19d2f052a85fe4a993608aedf49a25) )
302    ROM_LOAD32_WORD( "ddpdoj_spb0.u18",  0x00000002, 0x1000000, CRC(6a9e2cbf) SHA1(8e0a4ea90f5ef534820303d62f0873f8ac9f080e) )
303
304    ROM_REGION( 0x1000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770 */
305    ROM_LOAD16_WORD_SWAP( "ddpdoj_wave0.u12",        0x00000000, 0x1000000, CRC(2b71a324) SHA1(f69076cc561f40ca564d804bc7bd455066f8d77c) )
306
307ROM_END
308
309ROM_START( kov3 )
310    ROM_REGION( 0x04000, "maincpu", 0 )
311    ROM_LOAD( "kov3_igs036.rom",         0x00000000, 0x0004000, NO_DUMP )
312
313    ROM_REGION( 0x800000, "user1", 0 ) /* custom ROM module instead of regular ROMs, this might be incorrect - same module is used on newer gambling boards */
314
315   // this was an attempt to read the ROM module directly and could be bad
316    ROM_LOAD( "kov3_v102cn_direct.bin",         0x00000000, 0x0800000, CRC(2568cca4) SHA1(3f0e949bc0ae5d7ec0109f2748b30024dcd19ac4) )
317   // this was read with a logic analyser after booting, you can't however replace the module directly with this because some kind of
318   // additional check / communication with the module is done on startup resulting in the internal ROM refusing to boot it
319   ROM_LOAD( "kov3_v102cn.bin",         0x00000000, 0x0800000, CRC(1fcedff3) SHA1(522538510c5f94e8b1f641250c25a2a58962ca42) )
320
321    ROM_REGION( 0x200000, "tiles", ROMREGION_ERASEFF )
322    ROM_LOAD( "kov3_text.u1",            0x00000000, 0x0200000, CRC(198b52d6) SHA1(e4502abe7ba01053d16c02114f0c88a3f52f6f40) )
323
324    ROM_REGION( 0x2000000, "bgtile", 0 )
325    ROM_LOAD32_WORD( "kov3_bgl.u6",      0x00000000, 0x1000000, CRC(49a4c5bc) SHA1(26b7da91067bda196252520e9b4893361c2fc675) )
326    ROM_LOAD32_WORD( "kov3_bgh.u7",      0x00000002, 0x1000000, CRC(adc1aff1) SHA1(b10490f0dbef9905cdb064168c529f0b5a2b28b8) )
327
328    ROM_REGION( 0x4000000, "spritesa", 0 ) // 1bpp sprite mask data
329    ROM_LOAD32_WORD( "kov3_mapl0.u15",   0x00000000, 0x2000000, CRC(9e569bf7) SHA1(03d26e000e9d8e744546be9649628d2130f2ec4c) )
330    ROM_LOAD32_WORD( "kov3_maph0.u16",   0x00000002, 0x2000000, CRC(6f200ad8) SHA1(cd12c136d4f5d424bd7daeeacd5c4127beb3d565) )
331
332    ROM_REGION( 0x8000000, "spritesb", 0 ) // sprite colour data
333    ROM_LOAD32_WORD( "kov3_spa0.u17",    0x00000000, 0x4000000, CRC(3a1e58a9) SHA1(6ba251407c69ee62f7ea0baae91bc133acc70c6f) )
334    ROM_LOAD32_WORD( "kov3_spb0.u10",    0x00000002, 0x4000000, CRC(90396065) SHA1(01bf9f69d77a792d5b39afbba70fbfa098e194f1) )
335
336    ROM_REGION( 0x4000000, "ymz770", ROMREGION_ERASEFF ) /* ymz770 */
337    ROM_LOAD16_WORD_SWAP( "kov3_wave0.u13",              0x00000000, 0x4000000, CRC(aa639152) SHA1(2314c6bd05524525a31a2a4668a36a938b924ba4) )
338ROM_END
339#endif
340
244341static void iga_u16_decode(UINT16 *rom, int len, int ixor)
245342{
246343   int i;
r20345r20346
307404   iga_u16_decode(src, 0x2000000, 0xb780);
308405}
309406
407DRIVER_INIT_MEMBER(pgm2_state,ddpdojh)
408{
409   UINT16 *src = (UINT16 *)machine().root_device().memregion("spritesa")->base();
310410
411   iga_u12_decode(src, 0x800000, 0x1e96);
412   iga_u16_decode(src, 0x800000, 0x869c);
413
414
415}
416
417DRIVER_INIT_MEMBER(pgm2_state,kov3)
418{
419   UINT16 *src = (UINT16 *)machine().root_device().memregion("spritesa")->base();
420
421   iga_u12_decode(src, 0x2000000, 0x956d);
422   iga_u16_decode(src, 0x2000000, 0x3d17);
423}
424
425
311426/* PGM2 */
312427GAME( 2007, orleg2,       0,         pgm2,    pgm2, pgm2_state,     orleg2,       ROT0, "IGS", "Oriental Legend 2 (V104, China)", GAME_IS_SKELETON )
313428GAME( 2007, orleg2o,      orleg2,    pgm2,    pgm2, pgm2_state,     orleg2,       ROT0, "IGS", "Oriental Legend 2 (V103, China)", GAME_IS_SKELETON )
314429
315430GAME( 2008, kov2nl,       0,         pgm2,    pgm2, pgm2_state,     kov2nl,       ROT0, "IGS", "Knights of Valour 2 New Legend (V302, China)", GAME_IS_SKELETON )
316431GAME( 2008, kov2nlo,      kov2nl,    pgm2,    pgm2, pgm2_state,     kov2nl,       ROT0, "IGS", "Knights of Valour 2 New Legend (V301, China)", GAME_IS_SKELETON )
432
433#ifdef OTHER_PGM2_SETS
434GAME( 2009, ddpdojh,      0,    pgm2,    pgm2, pgm2_state,     ddpdojh,    ROT270, "IGS", "Dodonpachi Daioujou Tamashii (V201, China)", GAME_IS_SKELETON )
435
436GAME( 2009, kov3,         0,    pgm2,    pgm2, pgm2_state,     kov3,       ROT0, "IGS", "Knights of Valour 3 (V102, China)", GAME_IS_SKELETON )
437#endif
438
trunk/src/mame/drivers/igs_m036.c
r0r20346
1/* IGS Gambling games using IGS036 CPU
2   pgm2.c also uses this CPU
3
4<Chao Ji Da Heng 2>
5cjdh2.zip
6---------------------------------------------------
7CPU: IGS036
8GFX: IGS036
9SND: 6295
10==============================================
11a IGS game use IGS036 chip
12IGS036 could be a upgraded version of IGS027A
13but with GFX processor integrated
14
15I dont know the CPU core (should ARM based due to fail test)
16the chip has internal rom build-in
17the the FLASH(u33, EV29LV160AB-90PCR) is external rom and encrypted
18if the external rom decrypted then we can
19try to trojan the internal rom
20here we offer several revision a same game to see
21if anyone could find any clue, these 4 revision can
22be programmed and running on a same PCB.
23===================================================
24filename                        |
25---------------------------------------------------
26cjdh2_s215cn.u33                | PRG (Ver S215CN)
27cjdh2_s311cn.rom                | PRG (Ver S311CN)
28cjdh2_s311cna.rom               | PRG (Ver S311CNA)
29cjdh2_s311cnb.rom               | PRG (Ver S311CNB)
30cjdh2_cg1.u8                    | GFX ROM
31cjdh2_cg2.u24                   | GFX ROM
32cjdh2_sp.u20                    | SND ROM
33DSC00257.JPG                    | PCB Photo
34---------------------------------------------------
35
36(dump by XingXing)
37
38
39<Super Dou Di Zhu Special>
40cjddzsp.zip
41---------------------------------------------------
42CPU: IGS036
43GFX: IGS036
44SND: TT5665
45----------------------------------------------------------------------------
46Filename           TYPE      CRC32           SHA1
47cjddzsp_s122cn.u27   GFX      797e5ba3   784fae513ac8cfd1143f0d0ce0936f74e2e64e48
48cjddzsp_s122cn.u28   GFX      d0441a6b   e1c948f94472398aa5887963cf8e87be28dd66e0
49cjddzsp_s122cn.u30   SND      e0e02a57   96074a5226dd24d0bc150adff7324b5349cb5dc2
50cjddzsp_s122cn.u18   PRG      4a42aad6   96805e5bfbd50686177fe50020229ea8787ade17
51----------------------------------------------------------------------------
52check more info and photo from cjdh2.zip!!!
53
54(dump by XingXing)
55
56*/
57
58#include "emu.h"
59#include "cpu/arm7/arm7.h"
60#include "cpu/arm7/arm7core.h"
61
62
63
64class igs_m036_state : public driver_device
65{
66public:
67   igs_m036_state(const machine_config &mconfig, device_type type, const char *tag)
68      : driver_device(mconfig, type, tag)
69   { }
70
71   UINT32 screen_update_igs_m036(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
72   DECLARE_DRIVER_INIT(igs_m036);
73};
74
75
76
77
78UINT32 igs_m036_state::screen_update_igs_m036(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect)
79{
80   return 0;
81}
82
83static ADDRESS_MAP_START( igs_m036_map, AS_PROGRAM, 32, igs_m036_state )
84   AM_RANGE(0x00000000, 0x00003fff) AM_ROM /* Internal ROM */
85ADDRESS_MAP_END
86
87static INPUT_PORTS_START( igs_m036 )
88INPUT_PORTS_END
89
90
91
92ROM_START( cjdh2 )
93   ROM_REGION( 0x04000, "maincpu", 0 )
94   /* Internal rom of IGS027A ARM based MCU */
95   ROM_LOAD( "chaohen2_igs036", 0x00000, 0x4000, NO_DUMP )
96
97   // there is also a square socketed chip like the one on Haunted House (igs_m027) probably in need of dumping
98
99   ROM_REGION( 0x200000, "user1", 0 ) // external ARM data / prg
100   ROM_LOAD( "cjdh2_s311cn.u33",  0x000000, 0x200000, CRC(a6fb72f0) SHA1(1d9583eafaea21d5ec078b7f2e3dc426571a9550) )
101   ROM_LOAD( "cjdh2_s311cna.u33", 0x000000, 0x200000, CRC(0bc6bc1b) SHA1(c891a7051cda1fd250d9380d7f33b47c375db74d) )
102   ROM_LOAD( "cjdh2_s311cnb.u33", 0x000000, 0x200000, CRC(ddcf50bd) SHA1(39a3ed728be5894a2fec5cf0858f6f40be5ccae1) )
103   ROM_LOAD( "cjdh2_s215cn.u33",  0x000000, 0x200000, CRC(ebe35131) SHA1(1f167e70a80b39e0658fd97c249982a0aa622683) )
104
105   ROM_REGION( 0x200000, "oki", 0 ) // samples
106   ROM_LOAD( "cjdh2_sp.u20", 0x000000, 0x200000, CRC(14a20112) SHA1(de49ecbc6ffd89e8d2e0a4cf1f4cba1a78810d42) )
107
108   ROM_REGION( 0x800100*2, "gfx", 0 )
109   ROM_LOAD( "cjdh2_cg1.u8",  0x000000, 0x800100, CRC(c14bf4b2) SHA1(32bdd7c498b75f3444bb6a6ccf0981d5dd46028c) )
110   ROM_LOAD( "cjdh2_cg2.u24", 0x800100, 0x800100, CRC(f9c747c3) SHA1(c4ff67e9da1322536841b8a9e9d9cfea6d7ebc4a) )
111ROM_END
112
113ROM_START( cjdh2a )
114   ROM_REGION( 0x04000, "maincpu", 0 )
115   /* Internal rom of IGS027A ARM based MCU */
116   ROM_LOAD( "chaohen2_igs036", 0x00000, 0x4000, NO_DUMP )
117
118   // there is also a square socketed chip like the one on Haunted House (igs_m027) probably in need of dumping
119
120   ROM_REGION( 0x200000, "user1", 0 ) // external ARM data / prg
121   ROM_LOAD( "cjdh2_s311cna.u33", 0x000000, 0x200000, CRC(0bc6bc1b) SHA1(c891a7051cda1fd250d9380d7f33b47c375db74d) )
122
123   ROM_REGION( 0x200000, "oki", 0 ) // samples
124   ROM_LOAD( "cjdh2_sp.u20", 0x000000, 0x200000, CRC(14a20112) SHA1(de49ecbc6ffd89e8d2e0a4cf1f4cba1a78810d42) )
125
126   ROM_REGION( 0x800100*2, "gfx", 0 )
127   ROM_LOAD( "cjdh2_cg1.u8",  0x000000, 0x800100, CRC(c14bf4b2) SHA1(32bdd7c498b75f3444bb6a6ccf0981d5dd46028c) )
128   ROM_LOAD( "cjdh2_cg2.u24", 0x800100, 0x800100, CRC(f9c747c3) SHA1(c4ff67e9da1322536841b8a9e9d9cfea6d7ebc4a) )
129ROM_END
130
131ROM_START( cjdh2b )
132   ROM_REGION( 0x04000, "maincpu", 0 )
133   /* Internal rom of IGS027A ARM based MCU */
134   ROM_LOAD( "chaohen2_igs036", 0x00000, 0x4000, NO_DUMP )
135
136   // there is also a square socketed chip like the one on Haunted House (igs_m027) probably in need of dumping
137
138   ROM_REGION( 0x200000, "user1", 0 ) // external ARM data / prg
139   ROM_LOAD( "cjdh2_s311cnb.u33", 0x000000, 0x200000, CRC(ddcf50bd) SHA1(39a3ed728be5894a2fec5cf0858f6f40be5ccae1) )
140
141   ROM_REGION( 0x200000, "oki", 0 ) // samples
142   ROM_LOAD( "cjdh2_sp.u20", 0x000000, 0x200000, CRC(14a20112) SHA1(de49ecbc6ffd89e8d2e0a4cf1f4cba1a78810d42) )
143
144   ROM_REGION( 0x800100*2, "gfx", 0 )
145   ROM_LOAD( "cjdh2_cg1.u8",  0x000000, 0x800100, CRC(c14bf4b2) SHA1(32bdd7c498b75f3444bb6a6ccf0981d5dd46028c) )
146   ROM_LOAD( "cjdh2_cg2.u24", 0x800100, 0x800100, CRC(f9c747c3) SHA1(c4ff67e9da1322536841b8a9e9d9cfea6d7ebc4a) )
147ROM_END
148
149ROM_START( cjdh2c )
150   ROM_REGION( 0x04000, "maincpu", 0 )
151   /* Internal rom of IGS027A ARM based MCU */
152   ROM_LOAD( "chaohen2_igs036", 0x00000, 0x4000, NO_DUMP )
153
154   // there is also a square socketed chip like the one on Haunted House (igs_m027) probably in need of dumping
155
156   ROM_REGION( 0x200000, "user1", 0 ) // external ARM data / prg
157   ROM_LOAD( "cjdh2_s215cn.u33",  0x000000, 0x200000, CRC(ebe35131) SHA1(1f167e70a80b39e0658fd97c249982a0aa622683) )
158
159   ROM_REGION( 0x200000, "oki", 0 ) // samples
160   ROM_LOAD( "cjdh2_sp.u20", 0x000000, 0x200000, CRC(14a20112) SHA1(de49ecbc6ffd89e8d2e0a4cf1f4cba1a78810d42) )
161
162   ROM_REGION( 0x800100*2, "gfx", 0 )
163   ROM_LOAD( "cjdh2_cg1.u8",  0x000000, 0x800100, CRC(c14bf4b2) SHA1(32bdd7c498b75f3444bb6a6ccf0981d5dd46028c) )
164   ROM_LOAD( "cjdh2_cg2.u24", 0x800100, 0x800100, CRC(f9c747c3) SHA1(c4ff67e9da1322536841b8a9e9d9cfea6d7ebc4a) )
165ROM_END
166
167
168ROM_START( cjddzsp )
169   ROM_REGION( 0x04000, "maincpu", 0 )
170   /* Internal rom of IGS027A ARM based MCU */
171   ROM_LOAD( "cjddzsp_igs036", 0x00000, 0x4000, NO_DUMP )
172
173   ROM_REGION( 0x200000, "user1", 0 ) // external ARM data / prg
174   ROM_LOAD( "cjddzsp_s122cn.u18",  0x000000, 0x200000, CRC(4a42aad6) SHA1(96805e5bfbd50686177fe50020229ea8787ade17) )
175
176   ROM_REGION( 0x800100, "oki", 0 ) // TT5665 samples
177   ROM_LOAD( "cjddzsp_s122cn.u27", 0x000000, 0x800100, CRC(797e5ba3) SHA1(784fae513ac8cfd1143f0d0ce0936f74e2e64e48))
178
179   ROM_REGION( 0x800100*2, "gfx", 0 )
180   ROM_LOAD( "cjddzsp_s122cn.u28",  0x000000, 0x800100, CRC(d0441a6b) SHA1(e1c948f94472398aa5887963cf8e87be28dd66e0) )
181   ROM_LOAD( "cjddzsp_s122cn.u30",  0x800100, 0x800100, CRC(e0e02a57) SHA1(96074a5226dd24d0bc150adff7324b5349cb5dc2) )
182ROM_END
183
184ROM_START( igsm312 )
185   ROM_REGION( 0x04000, "maincpu", 0 )
186   /* Internal rom of IGS027A ARM based MCU */
187   ROM_LOAD( "igsunk_igs036", 0x00000, 0x4000, NO_DUMP )
188
189   ROM_REGION( 0x200000, "user1", 0 ) // external ARM data / prg
190   ROM_LOAD( "m312cn.rom", 0x000000, 0x200000, CRC(5069c310) SHA1(d53a2e8acddfbb7afc27c68c0b3167419a3ec3e6) )
191
192   ROM_REGION( 0x800100, "oki", ROMREGION_ERASE00 ) // TT5665 samples
193   /* missing */
194   ROM_REGION( 0x800100*2, "gfx", ROMREGION_ERASE00 )
195   /* missing */
196ROM_END
197
198
199
200#define IGS036_CPU ARM7
201
202static MACHINE_CONFIG_START( igs_m036, igs_m036_state )
203   MCFG_CPU_ADD("maincpu",IGS036_CPU, 20000000)
204
205   MCFG_CPU_PROGRAM_MAP(igs_m036_map)
206
207
208   MCFG_SCREEN_ADD("screen", RASTER)
209   MCFG_SCREEN_REFRESH_RATE(60)
210   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
211   MCFG_SCREEN_SIZE(512, 256)
212   MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
213   MCFG_SCREEN_UPDATE_DRIVER(igs_m036_state, screen_update_igs_m036)
214
215   MCFG_PALETTE_LENGTH(0x200)
216   /* sound hardware (OKI) */
217MACHINE_CONFIG_END
218
219
220static MACHINE_CONFIG_START( igs_m036_tt, igs_m036_state )
221   MCFG_CPU_ADD("maincpu",IGS036_CPU, 20000000)
222
223   MCFG_CPU_PROGRAM_MAP(igs_m036_map)
224
225
226   MCFG_SCREEN_ADD("screen", RASTER)
227   MCFG_SCREEN_REFRESH_RATE(60)
228   MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
229   MCFG_SCREEN_SIZE(512, 256)
230   MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1)
231   MCFG_SCREEN_UPDATE_DRIVER(igs_m036_state, screen_update_igs_m036)
232
233   MCFG_PALETTE_LENGTH(0x200)
234   /* sound hardware (TT5665) */
235MACHINE_CONFIG_END
236
237
238
239DRIVER_INIT_MEMBER(igs_m036_state,igs_m036)
240{
241}
242
243
244/***************************************************************************
245
246    Game Drivers
247
248***************************************************************************/
249
250GAME( 200?,  cjdh2,      0,     igs_m036, igs_m036, igs_m036_state, igs_m036,        ROT0, "IGS", "Chao Ji Da Heng 2 (V311CN)", GAME_IS_SKELETON )
251GAME( 200?,  cjdh2a,     cjdh2, igs_m036, igs_m036, igs_m036_state, igs_m036,        ROT0, "IGS", "Chao Ji Da Heng 2 (V311CNA)", GAME_IS_SKELETON )
252GAME( 200?,  cjdh2b,     cjdh2, igs_m036, igs_m036, igs_m036_state, igs_m036,        ROT0, "IGS", "Chao Ji Da Heng 2 (V311CNB)", GAME_IS_SKELETON )
253GAME( 200?,  cjdh2c,     cjdh2, igs_m036, igs_m036, igs_m036_state, igs_m036,        ROT0, "IGS", "Chao Ji Da Heng 2 (V215CN)", GAME_IS_SKELETON )
254
255GAME( 200?,  cjddzsp,    0,     igs_m036_tt, igs_m036, igs_m036_state, igs_m036,        ROT0, "IGS", "Super Dou Di Zhu Special (V122CN)", GAME_IS_SKELETON )
256
257GAME( 200?,  igsm312,    0,     igs_m036_tt, igs_m036, igs_m036_state, igs_m036,        ROT0, "IGS", "Unknown IGS036 CPU game (V312CN)", GAME_IS_SKELETON )
258
Property changes on: trunk/src/mame/drivers/igs_m036.c
Added: svn:mime-type
   + text/plain
Added: svn:eol-style
   + native
trunk/src/mame/mame.lst
r20345r20346
91689168tarzana         // (c) 1999?
91699169starzan         // (c) 2000?
91709170
9171// IGS027A Games
9171// IGS027A Cpu Games
91729172bigd2           // (c) 2000
91739173sdwx            // (c) 2002
91749174sddz            // (c) 200?
r20345r20346
91819181haunthig        // (c) 200?
91829182fearless        // (c) 2006
91839183
9184// IGS036 Cpu Games
9185cjdh2         // (c) 200?
9186cjdh2a         // (c) 200?
9187cjdh2b         // (c) 200?
9188cjdh2c         // (c) 200?
9189cjddzsp         // (c) 200?
9190igsm312         // (c) 200?
9191
91849192// IGS PGM System Games
91859193pgm             // Base Unit
91869194orlegend        // (c) 1997 Oriental Legend
trunk/src/mame/mame.mak
r20345r20346
788788   $(DRIVERS)/igs011.o \
789789   $(DRIVERS)/igs017.o \
790790   $(DRIVERS)/igs_m027.o \
791   $(DRIVERS)/igs_m036.o \
791792   $(DRIVERS)/iqblock.o $(VIDEO)/iqblock.o \
792793   $(DRIVERS)/lordgun.o $(VIDEO)/lordgun.o \
793794   $(DRIVERS)/pgm.o $(VIDEO)/pgm.o \

Previous 199869 Revisions Next


© 1997-2024 The MAME Team