Previous 15994 Revisions Next

r11564 Tuesday 17th May, 2011 at 07:15:28 UTC by Curt Coder
[C16] Added cartridge softlist and connected it to the driver. [Curt Coder]
[hash]c128_flop.xml c64_cart.xml c64_flop.xml plus4_cart.xml* plus4_flop.xml vic1001_flop.xml
[src/mess/machine]c16.c

hash/plus4_cart.xml
r0r11564
1<?xml version="1.0"?>
2<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
3<softwarelist name="plus4_cart" description="Commodore Plus/4 cartridges">
4   
5   <!-- Games -->
6   
7   <software name="atomicmi">
8      <description>Atomic Mission</description>
9      <year>1984</year>
10      <publisher>Commodore</publisher>
11      <info name="serial" value="T116005" />
12      <part name="cart" interface="plus4_cart">
13         <dataarea name="c1l" size="0x4000">
14            <rom name="atomic-lo" size="0x2000" crc="8ee859ce" sha1="dac80035aa9c15c81d0ae7d80392d2be691dd55c" offset="0x0000" />
15            <rom name="atomic-hi" size="0x2000" crc="f3ebd401" sha1="011b7fd7c7990c4189ac107f7da0f3df474007d1" offset="0x2000" />
16         </dataarea>
17      </part>
18   </software>
19   
20   <software name="jackattk">
21      <description>Jack Attack</description>
22      <year>1984</year>
23      <publisher>Commodore</publisher>
24      <info name="serial" value="T116002" />
25      <part name="cart" interface="plus4_cart">
26         <dataarea name="c1l" size="0x4000">
27            <rom name="jack-lo" size="0x2000" crc="c4201b23" sha1="dfba1151dc477d1096d5e4747fe07c104454d9ad" offset="0x0000" />
28            <rom name="jack-hi" size="0x2000" crc="f67be343" sha1="c6ef59735d11a85538538c868dfc09c970070ab5" offset="0x2000" />
29         </dataarea>
30      </part>
31   </software>
32   
33   <software name="piratead">
34      <description>Pirate Adventure</description>
35      <year>1984</year>
36      <publisher>Commodore</publisher>
37      <info name="serial" value="T116004" />
38      <part name="cart" interface="plus4_cart">
39         <dataarea name="c1l" size="0x4000">
40            <rom name="pirate-lo" size="0x2000" crc="636ac403" sha1="45e3fa723bc58b1c2c0ff4ac428556629fc384bf" offset="0x0000" />
41            <rom name="pirate-hi" size="0x2000" crc="d66c86e9" sha1="44d56f6fd32b5ba8202f674444a5bc4e7481ceb4" offset="0x2000" />
42         </dataarea>
43      </part>
44   </software>
45   
46   <software name="strngeod">
47      <description>Strange Odyssey</description>
48      <year>1984</year>
49      <publisher>Commodore</publisher>
50      <info name="serial" value="T116006" />
51      <part name="cart" interface="plus4_cart">
52         <dataarea name="c1l" size="0x4000">
53            <rom name="odyssey-lo" size="0x2000" crc="2a55241b" sha1="0fe437bae5b07a81aa8abf7496a685ba5bbf0e41" offset="0x0000" />
54            <rom name="odyssey-hi" size="0x2000" crc="ca728068" sha1="78a087b731051b688ad572f80d0af15c01a44193" offset="0x2000" />
55         </dataarea>
56      </part>
57   </software>
58 
59   <!-- Applications -->
60   
61   <software name="speedfrz" supported="no">
62      <description>Speedy Freeze</description>
63      <year>1988</year>
64      <publisher>&lt;unknown&gt;</publisher>
65      <part name="cart" interface="plus4_cart">
66         <dataarea name="c1l" size="0x4000">
67            <rom name="speedy.u1" size="0x2000" crc="74f180bc" sha1="79a4b19c50bc9a85c0356a3d2d7453b2d1d8266f" offset="0x0000" />
68         </dataarea>
69      </part>
70   </software>
71 
72</softwarelist>
hash/plus4_flop.xml
r11563r11564
11<?xml version="1.0"?>
22<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
3<softwarelist name="plus4_flop" description="Commodore Plus/4 Floppy">
3<softwarelist name="plus4_flop" description="Commodore Plus/4 diskettes">
44
55   <software name="ace">
66      <description>ACE: Air Combat Emulator</description>
77      <year>1985</year>
88      <publisher>Cascade</publisher>
9      <part name="flop1" interface="floppy_5_25">
9      <part name="flop" interface="floppy_5_25">
1010         <dataarea name="flop" size="333744">
1111            <rom name="ace[cascade_1985](plus4).g64" size="333744" crc="ecaab593" sha1="40d0edd9ced2a7e40b39dce13176615985267bc4" offset="0" />
1212         </dataarea>
r11563r11564
1717      <description>Typing Professor</description>
1818      <year>1984</year>
1919      <publisher>Commodore</publisher>
20      <part name="flop1" interface="floppy_5_25">
20      <part name="flop" interface="floppy_5_25">
2121         <dataarea name="flop" size="333744">
2222            <rom name="typing_professor[cbm_1984](plus4).g64" size="333744" crc="cbd6750a" sha1="f6963a92d9ebaa1125a0203c16e1293fe3d38852" offset="0" />
2323         </dataarea>
r11563r11564
2828      <description>Zork II: The Wizard of Frobozz (R48)</description>
2929      <year>1984</year>
3030      <publisher>Commodore</publisher>
31      <part name="flop1" interface="floppy_5_25">
31      <part name="flop" interface="floppy_5_25">
3232         <dataarea name="flop" size="333744">
3333            <rom name="zork_ii[infocom_1984](r48)(plus4).g64" size="333744" crc="053bfe1a" sha1="b55d2be8ca179d758fad8871bba55e3b84a9f5ee" offset="0" />
3434         </dataarea>
hash/c128_flop.xml
r11563r11564
11<?xml version="1.0"?>
22<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
3<softwarelist name="c128_flop" description="Commodore 128 Floppy">
3<softwarelist name="c128_flop" description="Commodore 128 diskettes">
44
55   <software name="thaibxng">
66      <description>Thai Boxing</description>
77      <year>1986</year>
88      <publisher>Anco</publisher>
9      <part name="flop1" interface="floppy_5_25">
9      <part name="flop" interface="floppy_5_25">
1010         <dataarea name="flop" size="333744">
1111            <rom name="thai_boxing[anco_1986](c128)(fat).g64" size="333744" crc="6a29ef3a" sha1="ca317c6f44e940c38e1f537d88e66c52c6968885" offset="0" />
1212         </dataarea>
hash/vic1001_flop.xml
r11563r11564
11<?xml version="1.0"?>
22<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
3<softwarelist name="vic1001_flop" description="Commodore VIC-20 Floppy">
3<softwarelist name="vic1001_flop" description="Commodore VIC-1001/VIC-20 diskettes">
44
55   <software name="simpcalc">
66      <description>SimpliCalc</description>
r11563r11564
88      <publisher>Commodore</publisher>
99      <info name="serial" value="VIC-3301" />
1010      <info name="ram" value="16K" />
11      <part name="flop1" interface="floppy_5_25">
11      <part name="flop" interface="floppy_5_25">
1212         <dataarea name="flop" size="333744">
1313            <rom name="simplicalc[cbm_1981](vic20).g64" size="333744" crc="5cccae94" sha1="1c4fceb35a64db38f8909547e895355d9c396e82" offset="0" />
1414         </dataarea>
r11563r11564
2121      <publisher>Commodore</publisher>
2222      <info name="serial" value="VIC-3304" />
2323      <info name="ram" value="16K" />
24      <part name="flop1" interface="floppy_5_25">
24      <part name="flop" interface="floppy_5_25">
2525         <dataarea name="flop" size="333744">
2626            <rom name="vicfile[cbm_1981](vic20).g64" size="333744" crc="0051ea87" sha1="408fb1af3959bc79aa100ed729c51e30e5ae31ec" offset="0" />
2727         </dataarea>
r11563r11564
3434      <publisher>Commodore</publisher>
3535      <info name="serial" value="VIC-3304" />
3636      <info name="ram" value="16K" />
37      <part name="flop1" interface="floppy_5_25">
37      <part name="flop" interface="floppy_5_25">
3838         <dataarea name="flop" size="333744">
3939            <rom name="vicfile[cbm_198x](alt)(vic20).g64" size="333744" crc="ca9dc8ea" sha1="ea7e443cd3afa99ee12846604898b3c16863cdd3" offset="0" />
4040         </dataarea>
r11563r11564
4747      <publisher>Commodore</publisher>
4848      <info name="serial" value="VIC-3305" />
4949      <info name="ram" value="8K" />
50      <part name="flop1" interface="floppy_5_25">
50      <part name="flop" interface="floppy_5_25">
5151         <dataarea name="flop" size="333744">
5252            <rom name="vicwriter[cbm_1981](vic20).g64" size="333744" crc="2a75180c" sha1="54fd41c6f11614d6b1e6763aa64ee92b9cc53f1a" offset="0" />
5353         </dataarea>
hash/c64_cart.xml
r11563r11564
44List of mostly undumped cartridges:
55http://www.retroport.de/C64_C128_Hardware.html
66-->
7<softwarelist name="c64_cart" description="Commodore 64 Cartridge">
7<softwarelist name="c64_cart" description="Commodore 64 cartridges">
88
99   <software name="vw64">
1010      <description>VizaWrite 64</description>
r11563r11564
779779      </part>
780780   </software>
781781   
782   <software name="turborom">
783      <description>Turbo ROM v.2 (Pol)</description>
784      <year>1983</year>
785      <publisher>Turbo Software</publisher>
786      <part name="cart" interface="c64_cart">
787         <feature name="game" value="1" />
788         <feature name="exrom" value="0" />
789         <dataarea name="roml" size="0x2000">
790            <rom name="x1.bin" size="0x2000" crc="fe9c2b6e" sha1="c03110096b8408bb55361712728c426cbb1c09d7" offset="0x0000" />
791         </dataarea>
792      </part>
793   </software>
794   
795   <software name="turboroma" cloneof="turborom">
796      <description>Turbo ROM v.2 (Pol) (Alt)</description>
797      <year>1983</year>
798      <publisher>Turbo Software</publisher>
799      <part name="cart" interface="c64_cart">
800         <feature name="game" value="1" />
801         <feature name="exrom" value="0" />
802         <dataarea name="roml" size="0x2000">
803            <rom name="x2.bin" size="0x2000" crc="c1fe3c8e" sha1="a9c680268eb4310e5ca5dfb38be4bac8ba383a8b" offset="0x0000" />
804         </dataarea>
805      </part>
806   </software>
807
782808   <!-- Games Added by k1w1 -->
783809   
784810   <software name="advcrtor">
hash/c64_flop.xml
r11563r11564
11<?xml version="1.0"?>
22<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
3<softwarelist name="c64_flop" description="Commodore 64 Floppy">
3<softwarelist name="c64_flop" description="Commodore 64 diskettes">
44
55   <software name="sthassle">
66      <description>Street Hassle</description>
77      <year>1987</year>
88      <publisher>Melbourne House</publisher>
9      <part name="flop1" interface="floppy_5_25">
9      <info name="video" value="PAL" />
10      <part name="flop" interface="floppy_5_25">
1011         <dataarea name="flop" size="333744">
1112            <rom name="street_hassle[melbourne_house_1987](pal).g64" size="333744" crc="92c15c93" sha1="a1bc536294ae1d36ffde644798dc25cd1d514c93" offset="0" />
1213         </dataarea>
src/mess/machine/c16.c
r11563r11564
621621
622622***********************************************/
623623
624static DEVICE_IMAGE_LOAD( c16_cart )
624static void plus4_software_list_cartridge_load(device_image_interface &image)
625625{
626626   UINT8 *mem = image.device().machine().region("maincpu")->base();
627
628   size_t size = image.get_software_region_length("c1l");
629   if (size)
630      memcpy(mem + 0x20000, image.get_software_region("c1l"), size);
631
632   size = image.get_software_region_length("c1h");
633   if (size)
634      memcpy(mem + 0x24000, image.get_software_region("c1h"), size);
635
636   size = image.get_software_region_length("c2l");
637   if (size)
638      memcpy(mem + 0x28000, image.get_software_region("c2l"), size);
639
640   size = image.get_software_region_length("c2h");
641   if (size)
642      memcpy(mem + 0x2c000, image.get_software_region("c2h"), size);
643}
644
645static int plus4_crt_load( device_image_interface &image )
646{
647   UINT8 *mem = image.device().machine().region("maincpu")->base();
627648   int size = image.length(), test;
628649   const char *filetype;
629650   int address = 0;
r11563r11564
673694   return IMAGE_INIT_PASS;
674695}
675696
697static DEVICE_IMAGE_LOAD( c16_cart )
698{
699   int result = IMAGE_INIT_PASS;
700
701   if (image.software_entry() != NULL)
702   {
703      plus4_software_list_cartridge_load(image);
704   }
705   else
706   {
707      result = plus4_crt_load(image);
708   }
709   
710   return result;
711}
712
676713MACHINE_CONFIG_FRAGMENT( c16_cartslot )
677714   MCFG_CARTSLOT_ADD("cart")
678715   MCFG_CARTSLOT_EXTENSION_LIST("bin,rom,hi,lo")
679716   MCFG_CARTSLOT_NOT_MANDATORY
717   MCFG_CARTSLOT_INTERFACE("plus4_cart")
680718   MCFG_CARTSLOT_LOAD(c16_cart)
719   MCFG_SOFTWARE_LIST_ADD("cart_list", "plus4_cart")
681720MACHINE_CONFIG_END

Previous 15994 Revisions Next


© 1998-2018 The MESS Team