trunk/src/mess/drivers/socrates.c
| r18146 | r18147 | |
| 11 | 11 | hook up mouse |
| 12 | 12 | add waitstates for ram access (lack of this causes the system to run way too fast) |
| 13 | 13 | find and hook up any timers/interrupt controls |
| 14 | | switch cartridges over to a CART system rather than abusing BIOS |
| 15 | 14 | keyboard IR decoder MCU is HLE'd for now, needs decap and cpu core (it is rather tms1000 or CIC-like) |
| 16 | 15 | |
| 17 | 16 | |
| r18146 | r18147 | |
| 74 | 73 | #include "emu.h" |
| 75 | 74 | #include "cpu/z80/z80.h" |
| 76 | 75 | #include "audio/socrates.h" |
| 76 | #include "imagedev/cartslot.h" |
| 77 | 77 | |
| 78 | 78 | |
| 79 | 79 | class socrates_state : public driver_device |
| r18146 | r18147 | |
| 944 | 944 | MCFG_SOUND_ADD("soc_snd", SOCRATES, XTAL_21_4772MHz/(512+256)) // this is correct, as strange as it sounds. |
| 945 | 945 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) |
| 946 | 946 | |
| 947 | MCFG_CARTSLOT_ADD("cart") |
| 948 | MCFG_CARTSLOT_EXTENSION_LIST("bin") |
| 949 | MCFG_CARTSLOT_NOT_MANDATORY |
| 950 | MCFG_CARTSLOT_INTERFACE("socrates_cart") |
| 951 | |
| 952 | /* Software lists */ |
| 953 | MCFG_SOFTWARE_LIST_ADD("cart_list", "socrates") |
| 947 | 954 | MACHINE_CONFIG_END |
| 948 | 955 | |
| 949 | 956 | |
| r18146 | r18147 | |
| 987 | 994 | * read 0x7ff3(0x3ff3 in cart rom) and compare to 0x18 |
| 988 | 995 | if all tests passed, jump to 0x4000 (0x0000 in cart rom) |
| 989 | 996 | */ |
| 990 | | ROM_DEFAULT_BIOS("nocart") |
| 991 | 997 | ROM_LOAD("27-00817-000-000.u1", 0x00000, 0x40000, CRC(80f5aa20) SHA1(4fd1ff7f78b5dd2582d5de6f30633e4e4f34ca8f)) // Label: "(Vtech) 27-00817-000-000 // (C)1987 VIDEO TECHNOLOGY // 8811 D" |
| 992 | | ROM_SYSTEM_BIOS( 0, "nocart", "Socrates w/o cartridge installed") |
| 993 | | ROM_SYSTEM_BIOS( 1, "maze", "Socrates w/Amazing Mazes cartridge installed") |
| 994 | | ROMX_LOAD("27-5050-00.u1", 0x40000, 0x20000, CRC(95B84308) SHA1(32E065E8F48BAF0126C1B9AA111C291EC644E387), ROM_BIOS(2)) // Label: "(Vtech) 27-5050-00 // TC531000CP-L332 // (C)1989 VIDEO TECHNOLOGY // 8931EAI JAPAN"; Alt label: "(Vtech) LH53101Y // (C)1989 VIDEO TECHNOLOGY // 8934 D"; cart has an orange QC stickse |
| 995 | | ROM_SYSTEM_BIOS( 2, "world", "Socrates w/Around the World cartridge installed") |
| 996 | | ROMX_LOAD("27-5013-00-0.u1", 0x40000, 0x20000, CRC(A1E01C38) SHA1(BEEB2869AE1DDC8BBC9A81749AB9662C14DD47D3), ROM_BIOS(3)) // Label: "(Vtech) 27-5013-00-0 // TC531000CP-L318 // (C)1989 VIDEO TECHNOLOGY // 8918EAI JAPAN"; cart has an orange QC sticker |
| 997 | | ROM_SYSTEM_BIOS( 3, "fracts", "Socrates w/Facts'N Fractions cartridge installed") |
| 998 | | ROMX_LOAD("27-5001-00-0.u1", 0x40000, 0x20000, CRC(7118617B) SHA1(52268EF0ADB651AD62773FB2EBCB7506759B2686), ROM_BIOS(4)) // Label: "(Vtech) 27-5001-00-0 // TC531000CP-L313 // (C)1988 VIDEO TECHNOLOGY // 8918EAI JAPAN"; cart has a brown QC sticker |
| 999 | | ROM_SYSTEM_BIOS( 4, "hodge", "Socrates w/Hodge-Podge cartridge installed") |
| 1000 | | ROMX_LOAD("27-5014-00-0.u1", 0x40000, 0x20000, CRC(19E1A301) SHA1(649A7791E97BCD0D31AC65A890FACB5753AB04A3), ROM_BIOS(5)) // Label: "(Vtech) 27-5014-00-0 // TC531000CP-L316 // (C)1989 VIDEO TECHNOLOGY // 8913EAI JAPAN"; cart has a green QC sticker |
| 1001 | | ROM_SYSTEM_BIOS( 5, "memoryb", "Socrates w/Memory Mania rev B cartridge installed") |
| 1002 | | ROMX_LOAD("27-5002-00-0.u1", 0x40000, 0x20000, CRC(3C7FD651) SHA1(3118F53625553010EC95EA91DA8320CCE3DC7FE4), ROM_BIOS(6)) // Label: "(Vtech) 27-5002-00-0 // TC531000CP-L314 // (C)1988 VIDEO TECHNOLOGY // 8905EAI JAPAN"; cart has a red QC sticker with a small B sticker on top of it, and the rom has a large B sticker; cart pcb shows signs of resoldering, which leads me to believe this is the B revision of the rom code for this game |
| 1003 | | ROM_SYSTEM_BIOS( 6, "state", "Socrates w/State to State cartridge installed") |
| 1004 | | ROMX_LOAD("27-5045-00-0.u1", 0x40000, 0x20000, CRC(5848379F) SHA1(961C9CA4F28A9E02AA1D67583B2D2ADF8EE5F10E), ROM_BIOS(7)) // Label: "(Vtech) 27-5045-00-0 // TC531000CP-L333 // (C)1989 VIDEO TECHNOLOGY // 8931EAI JAPAN"; cart has a brown QC sticker |
| 1005 | | // a cartridge called 'game master' is supposed to be here |
| 1006 | | // an international-only? cartridge called 'puzzles' is supposed to be here |
| 1007 | | // Cad professor mouse is supposed to be here |
| 1008 | | // the touch pad cartridge is supposed to be here |
| 998 | ROM_CART_LOAD( "cart", 0x40000, 0x20000, 0 ) |
| 1009 | 999 | |
| 1010 | 1000 | ROM_REGION(0x10000, "vram", ROMREGION_ERASEFF) /* fill with ff, driver_init changes this to the 'correct' startup pattern */ |
| 1011 | 1001 | |
| r18146 | r18147 | |
| 1027 | 1017 | ROM_REGION(0x80000, "maincpu", ROMREGION_ERASEVAL(0xF3)) |
| 1028 | 1018 | /* Socrates SAITOUT (French Canadian) NTSC */ |
| 1029 | 1019 | ROM_LOAD("27-00884-001-000.u1", 0x00000, 0x40000, CRC(042d9d21) SHA1(9ffc67b2721683b2536727d0592798fbc4d061cb)) // Label: "(Vtech) 27-00884-001-000 // (C)1988 VIDEO TECHNOLOGY // 8911 D" |
| 1030 | | ROM_LOAD_OPTIONAL("cartridge.bin", 0x40000, 0x20000, NO_DUMP) |
| 1020 | ROM_CART_LOAD( "cart", 0x40000, 0x20000, 0 ) |
| 1031 | 1021 | |
| 1032 | 1022 | ROM_REGION(0x10000, "vram", ROMREGION_ERASEFF) /* fill with ff, driver_init changes this to the 'correct' startup pattern */ |
| 1033 | 1023 | |
trunk/hash/socrates.xml
| r0 | r18147 | |
| 1 | <?xml version="1.0"?> |
| 2 | <!DOCTYPE softwarelist SYSTEM "softwarelist.dtd"> |
| 3 | <softwarelist name="socrates" description="Video Technology Socrates cartridges"> |
| 4 | |
| 5 | <!-- |
| 6 | a cartridge called 'game master' is supposed to be here |
| 7 | an international-only? cartridge called 'puzzles' is supposed to be here |
| 8 | Cad professor mouse is supposed to be here |
| 9 | the touch pad cartridge is supposed to be here |
| 10 | --> |
| 11 | |
| 12 | <software name="amazes"> |
| 13 | <description>Amazing Mazes</description> |
| 14 | <year>1989</year> |
| 15 | <publisher>Video Technology</publisher> |
| 16 | <part name="cart" interface="socrates_cart"> |
| 17 | <dataarea name="rom" size="0x20000"> |
| 18 | <!-- Label: "(Vtech) 27-5050-00 // TC531000CP-L332 // (C)1989 VIDEO TECHNOLOGY // 8931EAI JAPAN"; Alt label: "(Vtech) LH53101Y // (C)1989 VIDEO TECHNOLOGY // 8934 D"; cart has an orange QC stickse --> |
| 19 | <rom name="27-5050-00.u1" size="0x20000" crc="95B84308" sha1="32E065E8F48BAF0126C1B9AA111C291EC644E387" offset="0x00000" /> |
| 20 | </dataarea> |
| 21 | </part> |
| 22 | </software> |
| 23 | |
| 24 | <software name="aworld"> |
| 25 | <description>Around the World</description> |
| 26 | <year>1989</year> |
| 27 | <publisher>Video Technology</publisher> |
| 28 | <part name="cart" interface="socrates_cart"> |
| 29 | <dataarea name="rom" size="0x20000"> |
| 30 | <!-- Label: "(Vtech) 27-5013-00-0 // TC531000CP-L318 // (C)1989 VIDEO TECHNOLOGY // 8918EAI JAPAN"; cart has an orange QC sticker --> |
| 31 | <rom name="27-5013-00-0.u1" size="0x20000" crc="A1E01C38" sha1="BEEB2869AE1DDC8BBC9A81749AB9662C14DD47D3" offset="0x00000" /> |
| 32 | </dataarea> |
| 33 | </part> |
| 34 | </software> |
| 35 | |
| 36 | <software name="facts"> |
| 37 | <description>Facts'N Fraction</description> |
| 38 | <year>1988</year> |
| 39 | <publisher>Video Technology</publisher> |
| 40 | <part name="cart" interface="socrates_cart"> |
| 41 | <dataarea name="rom" size="0x20000"> |
| 42 | <!-- Label: "(Vtech) 27-5001-00-0 // TC531000CP-L313 // (C)1988 VIDEO TECHNOLOGY // 8918EAI JAPAN"; cart has a brown QC sticker --> |
| 43 | <rom name="27-5001-00-0.u1" size="0x20000" crc="7118617B" sha1="52268EF0ADB651AD62773FB2EBCB7506759B2686" offset="0x00000" /> |
| 44 | </dataarea> |
| 45 | </part> |
| 46 | </software> |
| 47 | |
| 48 | <software name="hodgepod"> |
| 49 | <description>Hodge-Podge</description> |
| 50 | <year>1989</year> |
| 51 | <publisher>Video Technology</publisher> |
| 52 | <part name="cart" interface="socrates_cart"> |
| 53 | <dataarea name="rom" size="0x20000"> |
| 54 | <!-- Label: "(Vtech) 27-5014-00-0 // TC531000CP-L316 // (C)1989 VIDEO TECHNOLOGY // 8913EAI JAPAN"; cart has a green QC sticker --> |
| 55 | <rom name="27-5014-00-0.u1" size="0x20000" crc="19E1A301" sha1="649A7791E97BCD0D31AC65A890FACB5753AB04A3" offset="0x00000" /> |
| 56 | </dataarea> |
| 57 | </part> |
| 58 | </software> |
| 59 | |
| 60 | <software name="memmania"> |
| 61 | <description>Memory Mania (Rev. B)</description> |
| 62 | <year>1988</year> |
| 63 | <publisher>Video Technology</publisher> |
| 64 | <part name="cart" interface="socrates_cart"> |
| 65 | <dataarea name="rom" size="0x20000"> |
| 66 | <!-- Label: "(Vtech) 27-5002-00-0 // TC531000CP-L314 // (C)1988 VIDEO TECHNOLOGY // 8905EAI JAPAN"; cart has a red QC sticker with a small B sticker on top of it, and the rom has a large B sticker; cart pcb shows signs of resoldering, which leads me to believe this is the B revision of the rom code for this game --> |
| 67 | <rom name="27-5002-00-0.u1" size="0x20000" crc="3C7FD651" sha1="3118F53625553010EC95EA91DA8320CCE3DC7FE4" offset="0x00000" /> |
| 68 | </dataarea> |
| 69 | </part> |
| 70 | </software> |
| 71 | |
| 72 | <software name="state"> |
| 73 | <description>State to State</description> |
| 74 | <year>1989</year> |
| 75 | <publisher>Video Technology</publisher> |
| 76 | <part name="cart" interface="socrates_cart"> |
| 77 | <dataarea name="rom" size="0x20000"> |
| 78 | <!-- Label: "(Vtech) 27-5045-00-0 // TC531000CP-L333 // (C)1989 VIDEO TECHNOLOGY // 8931EAI JAPAN"; cart has a brown QC sticker --> |
| 79 | <rom name="27-5045-00-0.u1" size="0x20000" crc="5848379F" sha1="961C9CA4F28A9E02AA1D67583B2D2ADF8EE5F10E" offset="0x00000" /> |
| 80 | </dataarea> |
| 81 | </part> |
| 82 | </software> |
| 83 | </softwarelist> |