~ubuntu-branches/ubuntu/lucid/sdlmame/lucid

« back to all changes in this revision

Viewing changes to src/mame/drivers/kchamp.c

  • Committer: Bazaar Package Importer
  • Author(s): Cesare Falco
  • Date: 2009-11-03 17:10:15 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20091103171015-6hop4ory5lxnumpn
Tags: 0.135-0ubuntu1
* New upstream release - Closes (LP: #403212)
* debian/watch: unstable releases are no longer detected
* mame.ini: added the cheat subdirectories to cheatpath so zipped
  cheatfiles will be searched too
* renamed crsshair subdirectory to crosshair to reflect upstream change
* mame.ini: renamed references to crosshair subdirectory (see above)

Show diffs side-by-side

added added

removed removed

Lines of Context:
110
110
}
111
111
 
112
112
static int msm_data = 0;
113
 
static int msm_play_lo_nibble = 1;
 
113
static int msm_play_lo_nibble;
114
114
 
115
115
static WRITE8_HANDLER( sound_msm_w )
116
116
{
512
512
        ROM_LOAD( "b021.bin", 0xa000, 0x2000, CRC(ca17e3ba) SHA1(91a3ccd6045dcef5f3293d669fe5a4df59cd954b) )
513
513
        ROM_LOAD( "b020.bin", 0xc000, 0x2000, CRC(ada4f2cd) SHA1(15a4ed7497cb6c06f523ebe38bc4eb6dbcd09549) )
514
514
 
515
 
        ROM_REGION( 0x08000, "gfx1", ROMREGION_DISPOSE )
 
515
        ROM_REGION( 0x08000, "gfx1", 0 )
516
516
        ROM_LOAD( "b000.bin", 0x00000, 0x2000, CRC(a4fa98a1) SHA1(33b9a1a56d72ffa5f4e16b69e6e19af5a2882b2c) )  /* plane0 */ /* tiles */
517
517
        ROM_LOAD( "b001.bin", 0x04000, 0x2000, CRC(fea09f7c) SHA1(174fc8022c455438538e6a3b67c7effc857ae634) )  /* plane1 */ /* tiles */
518
518
 
519
 
        ROM_REGION( 0x18000, "gfx2", ROMREGION_DISPOSE )
 
519
        ROM_REGION( 0x18000, "gfx2", 0 )
520
520
        ROM_LOAD( "b013.bin", 0x00000, 0x2000, CRC(eaad4168) SHA1(f31b05ffb86677157f3a44cdcf0f9a729e0ab259) )  /* top, plane0 */ /* sprites */
521
521
        ROM_LOAD( "b004.bin", 0x02000, 0x2000, CRC(10a47e2d) SHA1(97fe2de3ce2b8dc017dceffce494be18695708d2) )  /* bot, plane0 */ /* sprites */
522
522
        ROM_LOAD( "b012.bin", 0x04000, 0x2000, CRC(b4842ea9) SHA1(471475f65edbd292b9162ad50e5cb0c7144845b0) )  /* top, plane0 */ /* sprites */
554
554
        ROM_LOAD( "be21", 0xa000, 0x2000, CRC(5f0efbe7) SHA1(f831efd02c917adac827fe6db8449ca8707b3d44) )
555
555
        ROM_LOAD( "be20", 0xc000, 0x2000, CRC(cbe8a533) SHA1(04cb41c487c2f951417628ed2888e04d59a39d29) )
556
556
 
557
 
        ROM_REGION( 0x08000, "gfx1", ROMREGION_DISPOSE )
 
557
        ROM_REGION( 0x08000, "gfx1", 0 )
558
558
        ROM_LOAD( "be00",     0x00000, 0x2000, CRC(cec020f2) SHA1(07c501cc24797000f369fd98a26efe13875107bb) )  /* plane0 */ /* tiles */
559
559
        ROM_LOAD( "be01",     0x04000, 0x2000, CRC(cd96271c) SHA1(bcc71010e5489b19ad1553141c7b2e366bbbc68f) )  /* plane1 */ /* tiles */
560
560
 
561
 
        ROM_REGION( 0x18000, "gfx2", ROMREGION_DISPOSE )
 
561
        ROM_REGION( 0x18000, "gfx2", 0 )
562
562
        ROM_LOAD( "be13",     0x00000, 0x2000, CRC(fb358707) SHA1(37124f1f545787723fecf466d8dcd31b88cdd75d) )  /* top, plane0 */ /* sprites */
563
563
        ROM_LOAD( "be04",     0x02000, 0x2000, CRC(48372bf8) SHA1(28231b3bdb1d7226d7856554ba667b6d61f4fe22) )  /* bot, plane0 */ /* sprites */
564
564
        ROM_LOAD( "b012.bin", 0x04000, 0x2000, CRC(b4842ea9) SHA1(471475f65edbd292b9162ad50e5cb0c7144845b0) )  /* top, plane0 */ /* sprites */
593
593
        ROM_LOAD( "bs17", 0x2000, 0x2000, CRC(d71031ad) SHA1(b168f4ef4feb4195305404df699acecb731eab02) ) /* adpcm */
594
594
        ROM_LOAD( "bs16", 0x4000, 0x2000, CRC(6f811c43) SHA1(1d33ac8129562ab709bd7396b4c2457b6db99277) ) /* adpcm */
595
595
 
596
 
        ROM_REGION( 0x08000, "gfx1", ROMREGION_DISPOSE )
 
596
        ROM_REGION( 0x08000, "gfx1", 0 )
597
597
        ROM_LOAD( "bs12",     0x00000, 0x2000, CRC(4c574ecd) SHA1(86914eef33da73463ba6261eecae75209d24fac1) )
598
598
        ROM_LOAD( "bs13",     0x02000, 0x2000, CRC(750b66af) SHA1(c7824994b977d4e846f3ecadfcfc51331f52b6f4) )
599
599
        ROM_LOAD( "bs14",     0x04000, 0x2000, CRC(9ad6227c) SHA1(708af5e70927040cf7f2ae6f792344c19099530c) )
600
600
        ROM_LOAD( "bs15",     0x06000, 0x2000, CRC(3b6d5de5) SHA1(288fffcbc9369db5c75e7e0d6181612de6f12da3) )
601
601
 
602
 
        ROM_REGION( 0x18000, "gfx2", ROMREGION_DISPOSE )
 
602
        ROM_REGION( 0x18000, "gfx2", 0 )
603
603
        ROM_LOAD( "bs00",     0x00000, 0x2000, CRC(51eda56c) SHA1(31438e115e95c2a684ec65ed2bdb9125e3675226) )
604
604
        ROM_LOAD( "bs06",     0x02000, 0x2000, CRC(593264cf) SHA1(866469f37b6c90afc65e53e6589b67ac4b25997e) )
605
605
        ROM_LOAD( "b012.bin", 0x04000, 0x2000, CRC(b4842ea9) SHA1(471475f65edbd292b9162ad50e5cb0c7144845b0) )  /* bs01 */
619
619
        ROM_LOAD( "br25", 0x0200, 0x0100, CRC(ba4a5651) SHA1(77e81bd64ab59a7466d20eabdff4be241e963c52) ) /* blue */
620
620
ROM_END
621
621
 
 
622
ROM_START( kchampvs2 )
 
623
        ROM_REGION( 0x10000, "maincpu", 0 )
 
624
        ROM_LOAD( "lt.d13", 0x0000, 0x2000, CRC(eef41aa8) SHA1(6d4e8159e9c3cd629337863c0397ff90b4c8d3fa) )
 
625
        ROM_LOAD( "lt.d11", 0x2000, 0x2000, CRC(091f810e) SHA1(283edb08ce106835185a1c2d6b88f7544d75f3b4) )
 
626
        ROM_LOAD( "lt.d10", 0x4000, 0x2000, CRC(d4df2a52) SHA1(60d6cb1cb51c6f80a0f88913d4152ab8bda752d6) )
 
627
        ROM_LOAD( "lt.d8",  0x6000, 0x2000, CRC(3d4ef0da) SHA1(228c8e47bb7123b69746506402edb875a43d7af5) )
 
628
        ROM_LOAD( "lt.d7",  0x8000, 0x2000, CRC(623a467b) SHA1(5f150c67632f8e32769b75aa0615d0eb018afdc4) )
 
629
        ROM_LOAD( "lt.d6",  0xa000, 0x2000, CRC(c3bc6e46) SHA1(a7b9420592905b0df5ff00c392d887f40395179f) )
 
630
        ROM_CONTINUE(       0xe000, 0x2000 )
 
631
 
 
632
        ROM_REGION( 0x10000, "audiocpu", 0 ) /* Sound CPU */
 
633
        ROM_LOAD( "lt.d4", 0x0000, 0x2000, CRC(eaa646eb) SHA1(cbd48f4d5d225b71c2dd0b14f420838561e3f83e) )
 
634
        ROM_LOAD( "lt.d2", 0x2000, 0x2000, CRC(d71031ad) SHA1(b168f4ef4feb4195305404df699acecb731eab02) ) /* adpcm */
 
635
        ROM_LOAD( "lt.d1", 0x4000, 0x2000, CRC(6f811c43) SHA1(1d33ac8129562ab709bd7396b4c2457b6db99277) ) /* adpcm */
 
636
 
 
637
        ROM_REGION( 0x08000, "gfx1", 0 )
 
638
        ROM_LOAD( "lt.k1",    0x00000, 0x2000, CRC(4c574ecd) SHA1(86914eef33da73463ba6261eecae75209d24fac1) )
 
639
        ROM_LOAD( "lt.k3",    0x02000, 0x2000, CRC(750b66af) SHA1(c7824994b977d4e846f3ecadfcfc51331f52b6f4) )
 
640
        ROM_LOAD( "lt.k5",    0x04000, 0x2000, CRC(9ad6227c) SHA1(708af5e70927040cf7f2ae6f792344c19099530c) )
 
641
        ROM_LOAD( "lt.k6",    0x06000, 0x2000, CRC(3b6d5de5) SHA1(288fffcbc9369db5c75e7e0d6181612de6f12da3) )
 
642
 
 
643
        ROM_REGION( 0x18000, "gfx2", 0 )
 
644
        ROM_LOAD( "lt.a1",    0x00000, 0x2000, CRC(51eda56c) SHA1(31438e115e95c2a684ec65ed2bdb9125e3675226) )
 
645
        ROM_LOAD( "lt.c1",    0x02000, 0x2000, CRC(593264cf) SHA1(866469f37b6c90afc65e53e6589b67ac4b25997e) )
 
646
        ROM_LOAD( "lt.a3",    0x04000, 0x2000, CRC(b4842ea9) SHA1(471475f65edbd292b9162ad50e5cb0c7144845b0) )  /* top, plane0 */ /* sprites */
 
647
        ROM_LOAD( "lt.c3",    0x06000, 0x2000, CRC(8cd166a5) SHA1(4b623c4c0025d75b3ed9746f8b6730bf3e65d85a) )  /* bot, plane0 */ /* sprites */
 
648
        ROM_LOAD( "lt.a5",    0x08000, 0x2000, CRC(4cbd3aa3) SHA1(a9a683dcc4f52b18450659a20434a4d2a7b411d9) )  /* top, plane0 */ /* sprites */
 
649
        ROM_LOAD( "lt.c5",    0x0a000, 0x2000, CRC(6be342a6) SHA1(0b8ac7ef7c6a6464fbc027a9fd17fa7ce1ffd962) )  /* bot, plane0 */ /* sprites */
 
650
        ROM_LOAD( "lt.a7",    0x0c000, 0x2000, CRC(8dcd271a) SHA1(0abeaa46433a59c110815ecf188c7afd6fa387a4) )
 
651
        ROM_LOAD( "lt.c6",    0x0e000, 0x2000, CRC(4ee1dba7) SHA1(717ce9a4e20f6e02adf678b1400af4aaecdbfb40) )
 
652
        ROM_LOAD( "lt.a8",    0x10000, 0x2000, CRC(7346db8a) SHA1(d2b2c1700ae0ff9c614a9981a3da3d69879e9f25) )  /* top, plane1 */ /* sprites */
 
653
        ROM_LOAD( "lt.c8",    0x12000, 0x2000, CRC(b78714fc) SHA1(4df7f15c37d56a9d66d0049aad65b32063e5c29a) )  /* bot, plane1 */ /* sprites */
 
654
        ROM_LOAD( "lt.a10",   0x14000, 0x2000, CRC(b2557102) SHA1(ec4285029fc3ee1ad0adb05f363b234c67f8903d) )  /* top, plane1 */ /* sprites */
 
655
        ROM_LOAD( "lt.c10",   0x16000, 0x2000, CRC(c85aba0e) SHA1(4be21b38623c2a8ae7f1e7397fb002e4cb9e4614) )  /* bot, plane1 */ /* sprites */
 
656
 
 
657
        ROM_REGION( 0x0300, "proms", 0 )
 
658
        ROM_LOAD( "lt.k10",  0x0000, 0x0100, CRC(f683c54a) SHA1(92893990456b92f04a2be98b8e9626e97b7a2562) ) /* red */
 
659
        ROM_LOAD( "lt.k9",   0x0100, 0x0100, CRC(3ddbb6c4) SHA1(0eca5594d6812bc79f8b78f83fe003877d20c973) ) /* green */
 
660
        ROM_LOAD( "lt.k8",   0x0200, 0x0100, CRC(ba4a5651) SHA1(77e81bd64ab59a7466d20eabdff4be241e963c52) ) /* blue */
 
661
ROM_END
 
662
 
622
663
ROM_START( karatevs )
623
664
        ROM_REGION( 0x10000, "maincpu", 0 )     /* 64k for code + 64k for decrypted opcodes */
624
665
        ROM_LOAD( "br24", 0x0000, 0x2000, CRC(ea9cda49) SHA1(7d753a8d391418d0fe5231eb88b3627f7d3fd99e) )
634
675
        ROM_LOAD( "bs17", 0x2000, 0x2000, CRC(d71031ad) SHA1(b168f4ef4feb4195305404df699acecb731eab02) ) /* adpcm */
635
676
        ROM_LOAD( "br16", 0x4000, 0x2000, CRC(2512d961) SHA1(f0cd1be112b915d700e0587759606d48d115a83f) ) /* adpcm */
636
677
 
637
 
        ROM_REGION( 0x08000, "gfx1", ROMREGION_DISPOSE )
 
678
        ROM_REGION( 0x08000, "gfx1", 0 )
638
679
        ROM_LOAD( "br12",     0x00000, 0x2000, CRC(9ed6f00d) SHA1(3def985deb29a7644309ede3bd82c225b4ae23f8) )
639
680
        ROM_LOAD( "bs13",     0x02000, 0x2000, CRC(750b66af) SHA1(c7824994b977d4e846f3ecadfcfc51331f52b6f4) )
640
681
        ROM_LOAD( "br14",     0x04000, 0x2000, CRC(fc399229) SHA1(e8d633151b0d7fa49c455920c4b0588575a7084e) )
641
682
        ROM_LOAD( "bs15",     0x06000, 0x2000, CRC(3b6d5de5) SHA1(288fffcbc9369db5c75e7e0d6181612de6f12da3) )
642
683
 
643
 
        ROM_REGION( 0x18000, "gfx2", ROMREGION_DISPOSE )
 
684
        ROM_REGION( 0x18000, "gfx2", 0 )
644
685
        ROM_LOAD( "br00",     0x00000, 0x2000, CRC(c46a8b88) SHA1(a47e56a6dc7f36b896b8156e77a1da7e8be2332e) )
645
686
        ROM_LOAD( "br06",     0x02000, 0x2000, CRC(cf8982ff) SHA1(aafb249503ad51f64b1f31ea2d869dfc0e065d19) )
646
687
        ROM_LOAD( "b012.bin", 0x04000, 0x2000, CRC(b4842ea9) SHA1(471475f65edbd292b9162ad50e5cb0c7144845b0) )  /* bs01 */
661
702
ROM_END
662
703
 
663
704
 
664
 
 
665
 
static DRIVER_INIT( kchampvs )
 
705
static UINT8 *decrypt_code(running_machine *machine)
666
706
{
667
707
        const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM);
668
708
        UINT8 *decrypted = auto_alloc_array(machine, UINT8, 0x10000);
674
714
        for (A = 0;A < 0x10000;A++)
675
715
                decrypted[A] = (rom[A] & 0x55) | ((rom[A] & 0x88) >> 2) | ((rom[A] & 0x22) << 2);
676
716
 
 
717
        return decrypted;
 
718
}
 
719
 
 
720
 
 
721
static DRIVER_INIT( kchampvs )
 
722
{
 
723
        UINT8 *rom = memory_region(machine, "maincpu");
 
724
        UINT8 *decrypted = decrypt_code(machine);
 
725
        int A;
 
726
 
677
727
        /*
678
728
        Note that the first 4 opcodes that the program
679
729
        executes aren't encrypted for some obscure reason.
695
745
}
696
746
 
697
747
 
698
 
 
699
 
GAME( 1984, kchamp,   0,      kchamp,   kchamp,   0,        ROT90, "Data East USA", "Karate Champ (US)", 0 )
700
 
GAME( 1984, karatedo, kchamp, kchamp,   kchamp,   0,        ROT90, "Data East Corporation", "Karate Dou (Japan)", 0 )
701
 
GAME( 1984, kchampvs, kchamp, kchampvs, kchampvs, kchampvs, ROT90, "Data East USA", "Karate Champ (US VS version)", 0 )
702
 
GAME( 1984, karatevs, kchamp, kchampvs, kchampvs, kchampvs, ROT90, "Data East Corporation", "Taisen Karate Dou (Japan VS version)", 0 )
 
748
static DRIVER_INIT( kchamp )
 
749
{
 
750
        nmi_enable = 0;
 
751
        sound_nmi_enable = 0;
 
752
}
 
753
 
 
754
static DRIVER_INIT( kchampvs2 )
 
755
{
 
756
        DRIVER_INIT_CALL( kchamp );
 
757
        decrypt_code(machine);
 
758
        msm_data = 0;
 
759
        msm_play_lo_nibble = 1;
 
760
}
 
761
 
 
762
 
 
763
 
 
764
GAME( 1984, kchamp,    0,      kchamp,   kchamp,   kchamp,    ROT90, "Data East USA", "Karate Champ (US)", 0 )
 
765
GAME( 1984, karatedo,  kchamp, kchamp,   kchamp,   kchamp,    ROT90, "Data East Corporation", "Karate Dou (Japan)", 0 )
 
766
GAME( 1984, kchampvs,  kchamp, kchampvs, kchampvs, kchampvs,  ROT90, "Data East USA", "Karate Champ (US, VS version set 1)", 0 )
 
767
GAME( 1984, kchampvs2, kchamp, kchampvs, kchampvs, kchampvs2, ROT90, "Data East USA", "Karate Champ (US, VS version set 2)", 0 )
 
768
GAME( 1984, karatevs,  kchamp, kchampvs, kchampvs, kchampvs,  ROT90, "Data East Corporation", "Taisen Karate Dou (Japan VS version)", 0 )
703
769