hash/plus4_cart.xml
| r0 | r11564 | |
| 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><unknown></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
| r11563 | r11564 | |
| 1 | 1 | <?xml version="1.0"?> |
| 2 | 2 | <!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"> |
| 4 | 4 | |
| 5 | 5 | <software name="ace"> |
| 6 | 6 | <description>ACE: Air Combat Emulator</description> |
| 7 | 7 | <year>1985</year> |
| 8 | 8 | <publisher>Cascade</publisher> |
| 9 | | <part name="flop1" interface="floppy_5_25"> |
| 9 | <part name="flop" interface="floppy_5_25"> |
| 10 | 10 | <dataarea name="flop" size="333744"> |
| 11 | 11 | <rom name="ace[cascade_1985](plus4).g64" size="333744" crc="ecaab593" sha1="40d0edd9ced2a7e40b39dce13176615985267bc4" offset="0" /> |
| 12 | 12 | </dataarea> |
| r11563 | r11564 | |
| 17 | 17 | <description>Typing Professor</description> |
| 18 | 18 | <year>1984</year> |
| 19 | 19 | <publisher>Commodore</publisher> |
| 20 | | <part name="flop1" interface="floppy_5_25"> |
| 20 | <part name="flop" interface="floppy_5_25"> |
| 21 | 21 | <dataarea name="flop" size="333744"> |
| 22 | 22 | <rom name="typing_professor[cbm_1984](plus4).g64" size="333744" crc="cbd6750a" sha1="f6963a92d9ebaa1125a0203c16e1293fe3d38852" offset="0" /> |
| 23 | 23 | </dataarea> |
| r11563 | r11564 | |
| 28 | 28 | <description>Zork II: The Wizard of Frobozz (R48)</description> |
| 29 | 29 | <year>1984</year> |
| 30 | 30 | <publisher>Commodore</publisher> |
| 31 | | <part name="flop1" interface="floppy_5_25"> |
| 31 | <part name="flop" interface="floppy_5_25"> |
| 32 | 32 | <dataarea name="flop" size="333744"> |
| 33 | 33 | <rom name="zork_ii[infocom_1984](r48)(plus4).g64" size="333744" crc="053bfe1a" sha1="b55d2be8ca179d758fad8871bba55e3b84a9f5ee" offset="0" /> |
| 34 | 34 | </dataarea> |
hash/c128_flop.xml
| r11563 | r11564 | |
| 1 | 1 | <?xml version="1.0"?> |
| 2 | 2 | <!DOCTYPE softwarelist SYSTEM "softwarelist.dtd"> |
| 3 | | <softwarelist name="c128_flop" description="Commodore 128 Floppy"> |
| 3 | <softwarelist name="c128_flop" description="Commodore 128 diskettes"> |
| 4 | 4 | |
| 5 | 5 | <software name="thaibxng"> |
| 6 | 6 | <description>Thai Boxing</description> |
| 7 | 7 | <year>1986</year> |
| 8 | 8 | <publisher>Anco</publisher> |
| 9 | | <part name="flop1" interface="floppy_5_25"> |
| 9 | <part name="flop" interface="floppy_5_25"> |
| 10 | 10 | <dataarea name="flop" size="333744"> |
| 11 | 11 | <rom name="thai_boxing[anco_1986](c128)(fat).g64" size="333744" crc="6a29ef3a" sha1="ca317c6f44e940c38e1f537d88e66c52c6968885" offset="0" /> |
| 12 | 12 | </dataarea> |
hash/vic1001_flop.xml
| r11563 | r11564 | |
| 1 | 1 | <?xml version="1.0"?> |
| 2 | 2 | <!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"> |
| 4 | 4 | |
| 5 | 5 | <software name="simpcalc"> |
| 6 | 6 | <description>SimpliCalc</description> |
| r11563 | r11564 | |
| 8 | 8 | <publisher>Commodore</publisher> |
| 9 | 9 | <info name="serial" value="VIC-3301" /> |
| 10 | 10 | <info name="ram" value="16K" /> |
| 11 | | <part name="flop1" interface="floppy_5_25"> |
| 11 | <part name="flop" interface="floppy_5_25"> |
| 12 | 12 | <dataarea name="flop" size="333744"> |
| 13 | 13 | <rom name="simplicalc[cbm_1981](vic20).g64" size="333744" crc="5cccae94" sha1="1c4fceb35a64db38f8909547e895355d9c396e82" offset="0" /> |
| 14 | 14 | </dataarea> |
| r11563 | r11564 | |
| 21 | 21 | <publisher>Commodore</publisher> |
| 22 | 22 | <info name="serial" value="VIC-3304" /> |
| 23 | 23 | <info name="ram" value="16K" /> |
| 24 | | <part name="flop1" interface="floppy_5_25"> |
| 24 | <part name="flop" interface="floppy_5_25"> |
| 25 | 25 | <dataarea name="flop" size="333744"> |
| 26 | 26 | <rom name="vicfile[cbm_1981](vic20).g64" size="333744" crc="0051ea87" sha1="408fb1af3959bc79aa100ed729c51e30e5ae31ec" offset="0" /> |
| 27 | 27 | </dataarea> |
| r11563 | r11564 | |
| 34 | 34 | <publisher>Commodore</publisher> |
| 35 | 35 | <info name="serial" value="VIC-3304" /> |
| 36 | 36 | <info name="ram" value="16K" /> |
| 37 | | <part name="flop1" interface="floppy_5_25"> |
| 37 | <part name="flop" interface="floppy_5_25"> |
| 38 | 38 | <dataarea name="flop" size="333744"> |
| 39 | 39 | <rom name="vicfile[cbm_198x](alt)(vic20).g64" size="333744" crc="ca9dc8ea" sha1="ea7e443cd3afa99ee12846604898b3c16863cdd3" offset="0" /> |
| 40 | 40 | </dataarea> |
| r11563 | r11564 | |
| 47 | 47 | <publisher>Commodore</publisher> |
| 48 | 48 | <info name="serial" value="VIC-3305" /> |
| 49 | 49 | <info name="ram" value="8K" /> |
| 50 | | <part name="flop1" interface="floppy_5_25"> |
| 50 | <part name="flop" interface="floppy_5_25"> |
| 51 | 51 | <dataarea name="flop" size="333744"> |
| 52 | 52 | <rom name="vicwriter[cbm_1981](vic20).g64" size="333744" crc="2a75180c" sha1="54fd41c6f11614d6b1e6763aa64ee92b9cc53f1a" offset="0" /> |
| 53 | 53 | </dataarea> |
hash/c64_cart.xml
| r11563 | r11564 | |
| 4 | 4 | List of mostly undumped cartridges: |
| 5 | 5 | http://www.retroport.de/C64_C128_Hardware.html |
| 6 | 6 | --> |
| 7 | | <softwarelist name="c64_cart" description="Commodore 64 Cartridge"> |
| 7 | <softwarelist name="c64_cart" description="Commodore 64 cartridges"> |
| 8 | 8 | |
| 9 | 9 | <software name="vw64"> |
| 10 | 10 | <description>VizaWrite 64</description> |
| r11563 | r11564 | |
| 779 | 779 | </part> |
| 780 | 780 | </software> |
| 781 | 781 | |
| 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 | |
| 782 | 808 | <!-- Games Added by k1w1 --> |
| 783 | 809 | |
| 784 | 810 | <software name="advcrtor"> |
hash/c64_flop.xml
| r11563 | r11564 | |
| 1 | 1 | <?xml version="1.0"?> |
| 2 | 2 | <!DOCTYPE softwarelist SYSTEM "softwarelist.dtd"> |
| 3 | | <softwarelist name="c64_flop" description="Commodore 64 Floppy"> |
| 3 | <softwarelist name="c64_flop" description="Commodore 64 diskettes"> |
| 4 | 4 | |
| 5 | 5 | <software name="sthassle"> |
| 6 | 6 | <description>Street Hassle</description> |
| 7 | 7 | <year>1987</year> |
| 8 | 8 | <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"> |
| 10 | 11 | <dataarea name="flop" size="333744"> |
| 11 | 12 | <rom name="street_hassle[melbourne_house_1987](pal).g64" size="333744" crc="92c15c93" sha1="a1bc536294ae1d36ffde644798dc25cd1d514c93" offset="0" /> |
| 12 | 13 | </dataarea> |
src/mess/machine/c16.c
| r11563 | r11564 | |
| 621 | 621 | |
| 622 | 622 | ***********************************************/ |
| 623 | 623 | |
| 624 | | static DEVICE_IMAGE_LOAD( c16_cart ) |
| 624 | static void plus4_software_list_cartridge_load(device_image_interface &image) |
| 625 | 625 | { |
| 626 | 626 | 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 | |
| 645 | static int plus4_crt_load( device_image_interface &image ) |
| 646 | { |
| 647 | UINT8 *mem = image.device().machine().region("maincpu")->base(); |
| 627 | 648 | int size = image.length(), test; |
| 628 | 649 | const char *filetype; |
| 629 | 650 | int address = 0; |
| r11563 | r11564 | |
| 673 | 694 | return IMAGE_INIT_PASS; |
| 674 | 695 | } |
| 675 | 696 | |
| 697 | static 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 | |
| 676 | 713 | MACHINE_CONFIG_FRAGMENT( c16_cartslot ) |
| 677 | 714 | MCFG_CARTSLOT_ADD("cart") |
| 678 | 715 | MCFG_CARTSLOT_EXTENSION_LIST("bin,rom,hi,lo") |
| 679 | 716 | MCFG_CARTSLOT_NOT_MANDATORY |
| 717 | MCFG_CARTSLOT_INTERFACE("plus4_cart") |
| 680 | 718 | MCFG_CARTSLOT_LOAD(c16_cart) |
| 719 | MCFG_SOFTWARE_LIST_ADD("cart_list", "plus4_cart") |
| 681 | 720 | MACHINE_CONFIG_END |