branches/kale/src/mess/drivers/tispeak.c
| r244582 | r244583 | |
| 162 | 162 | { |
| 163 | 163 | output_set_digit_value(i, active_state[i] & 0x3fff); |
| 164 | 164 | |
| 165 | // lampxyy where x=digit, y=segment |
| 165 | 166 | for (int j = 0; j < 0x10; j++) |
| 166 | | output_set_lamp_value(i*0x10 + j, active_state[i] >> j & 1); |
| 167 | output_set_lamp_value(i*100 + j, active_state[i] >> j & 1); |
| 167 | 168 | } |
| 168 | 169 | |
| 169 | 170 | memcpy(m_display_cache, active_state, sizeof(m_display_cache)); |
| r244582 | r244583 | |
| 654 | 655 | |
| 655 | 656 | ROM_START( snmatha ) |
| 656 | 657 | ROM_REGION( 0x1000, "maincpu", 0 ) |
| 657 | | ROM_LOAD( "us4946391_t2074", 0x0000, 0x1000, BAD_DUMP CRC(011f0c2d) SHA1(d2e14d72e03ca864abd51da78ffb71a9da82f624) ) // placeholder, use the one we have |
| 658 | ROM_LOAD( "cd2708n2l", 0x0000, 0x1000, CRC(35937360) SHA1(69c362c75bb459056c09c7fab37c91040485474b) ) |
| 658 | 659 | |
| 659 | 660 | ROM_REGION( 1246, "maincpu:ipla", 0 ) |
| 660 | 661 | ROM_LOAD( "tms0980_default_ipla.pla", 0, 1246, CRC(42db9a38) SHA1(2d127d98028ec8ec6ea10c179c25e447b14ba4d0) ) |
| 661 | 662 | ROM_REGION( 2127, "maincpu:mpla", 0 ) |
| 662 | | ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, BAD_DUMP CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) // placeholder, use the one we have |
| 663 | ROM_LOAD( "tms0270_cd2708_mpla.pla", 0, 2127, CRC(504b96bb) SHA1(67b691e7c0b97239410587e50e5182bf46475b43) ) |
| 663 | 664 | ROM_REGION( 1246, "maincpu:opla", 0 ) |
| 664 | | ROM_LOAD( "tms0270_cd2708_opla.pla", 0, 1246, BAD_DUMP CRC(1abad753) SHA1(53d20b519ed73ce248368047a056836afbe3cd46) ) // placeholder, use the one we have |
| 665 | ROM_LOAD( "tms0270_cd2708_opla.pla", 0, 1246, CRC(1abad753) SHA1(53d20b519ed73ce248368047a056836afbe3cd46) ) |
| 665 | 666 | |
| 666 | 667 | ROM_REGION( 0x8000, "tms6100", 0 ) |
| 667 | 668 | ROM_LOAD( "cd2381.vsm", 0x0000, 0x4000, CRC(f048dc81) SHA1(e97667d1002de40ab3d702c63b82311480032e0f) ) |
| r244582 | r244583 | |
| 692 | 693 | COMP( 1980, snspella, snspell, 0, snspell, snspell, tispeak_state, snspell, "Texas Instruments", "Speak & Spell (US set 2)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) |
| 693 | 694 | COMP( 1978, snspelluk, snspell, 0, snspell, snspell, tispeak_state, snspell, "Texas Instruments", "Speak & Spell (UK set 1)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) |
| 694 | 695 | COMP( 1981, snspelluka, snspell, 0, snspell, snspell, tispeak_state, snspell, "Texas Instruments", "Speak & Spell (UK set 2)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) // different voice actor |
| 695 | | COMP( 1979, snspelljp, snspell, 0, snspell, snspell, tispeak_state, snspell, "Texas Instruments", "Speak & Spell (Japan)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) |
| 696 | COMP( 1979, snspelljp, snspell, 0, snspell, snspell, tispeak_state, snspell, "Texas Instruments", "Speak & Spell (Japan)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) // English words, but very low difficulty |
| 696 | 697 | COMP( 1980, ladictee, snspell, 0, snspell, snspell, tispeak_state, snspell, "Texas Instruments", "La Dictee Magique (France)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) // doesn't work due to missing CD2702 MCU dump, German version has CD2702 too |
| 697 | 698 | |
| 698 | 699 | COMP( 1980, snmath, 0, 0, snmath, snmath, driver_device, 0, "Texas Instruments", "Speak & Math (US prototype)", GAME_IMPERFECT_SOUND ) // also US set 1 |
| 699 | | COMP( 1986, snmatha, snmath, 0, snmath, snmath, driver_device, 0, "Texas Instruments", "Speak & Math (US set 2)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) |
| 700 | COMP( 1986, snmatha, snmath, 0, snmath, snmath, driver_device, 0, "Texas Instruments", "Speak & Math (US set 2)", GAME_IMPERFECT_SOUND ) |
| 700 | 701 | |
| 701 | 702 | COMP( 1979, lantutor, 0, 0, lantutor, lantutor, tispeak_state, lantutor, "Texas Instruments", "Language Tutor (prototype)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) |
branches/kale/src/mess/layout/lantutor.lay
| r244582 | r244583 | |
| 32 | 32 | <bezel name="digit13" element="digit"><bounds x="99" y="4" width="10" height="15" /></bezel> |
| 33 | 33 | |
| 34 | 34 | <bezel name="lamp14" element="triangle_mark"><bounds x="4" y="0" width="4" height="3" /></bezel> |
| 35 | | <bezel name="lamp30" element="triangle_mark"><bounds x="15" y="0" width="4" height="3" /></bezel> |
| 36 | | <bezel name="lamp46" element="triangle_mark"><bounds x="26" y="0" width="4" height="3" /></bezel> |
| 37 | | <bezel name="lamp62" element="triangle_mark"><bounds x="37" y="0" width="4" height="3" /></bezel> |
| 38 | | <bezel name="lamp78" element="triangle_mark"><bounds x="48" y="0" width="4" height="3" /></bezel> |
| 39 | | <bezel name="lamp94" element="triangle_mark"><bounds x="59" y="0" width="4" height="3" /></bezel> |
| 40 | | <bezel name="lamp110" element="triangle_mark"><bounds x="70" y="0" width="4" height="3" /></bezel> |
| 41 | | <bezel name="lamp126" element="triangle_mark"><bounds x="81" y="0" width="4" height="3" /></bezel> |
| 42 | | <bezel name="lamp142" element="triangle_mark"><bounds x="92" y="0" width="4" height="3" /></bezel> |
| 43 | | <bezel name="lamp222" element="triangle_mark"><bounds x="103" y="0" width="4" height="3" /></bezel> |
| 35 | <bezel name="lamp114" element="triangle_mark"><bounds x="15" y="0" width="4" height="3" /></bezel> |
| 36 | <bezel name="lamp214" element="triangle_mark"><bounds x="26" y="0" width="4" height="3" /></bezel> |
| 37 | <bezel name="lamp314" element="triangle_mark"><bounds x="37" y="0" width="4" height="3" /></bezel> |
| 38 | <bezel name="lamp414" element="triangle_mark"><bounds x="48" y="0" width="4" height="3" /></bezel> |
| 39 | <bezel name="lamp514" element="triangle_mark"><bounds x="59" y="0" width="4" height="3" /></bezel> |
| 40 | <bezel name="lamp614" element="triangle_mark"><bounds x="70" y="0" width="4" height="3" /></bezel> |
| 41 | <bezel name="lamp714" element="triangle_mark"><bounds x="81" y="0" width="4" height="3" /></bezel> |
| 42 | <bezel name="lamp814" element="triangle_mark"><bounds x="92" y="0" width="4" height="3" /></bezel> |
| 43 | <bezel name="lamp1314" element="triangle_mark"><bounds x="103" y="0" width="4" height="3" /></bezel> |
| 44 | 44 | |
| 45 | 45 | </view> |
| 46 | 46 | </mamelayout> |
branches/kale/src/mess/layout/snspell.lay
| r244582 | r244583 | |
| 34 | 34 | <bezel name="lamp15" element="lamp_ap"><bounds x="10.5" y="0" width="0.5" height="3.5" /></bezel> |
| 35 | 35 | |
| 36 | 36 | <bezel name="digit1" element="digit"><bounds x="11" y="0" width="10" height="15" /></bezel> |
| 37 | | <bezel name="lamp30" element="lamp_dp"><bounds x="20" y="13.5" width="1.5" height="1.5" /></bezel> |
| 38 | | <bezel name="lamp31" element="lamp_ap"><bounds x="21.5" y="0" width="0.5" height="3.5" /></bezel> |
| 37 | <bezel name="lamp114" element="lamp_dp"><bounds x="20" y="13.5" width="1.5" height="1.5" /></bezel> |
| 38 | <bezel name="lamp115" element="lamp_ap"><bounds x="21.5" y="0" width="0.5" height="3.5" /></bezel> |
| 39 | 39 | |
| 40 | 40 | <bezel name="digit2" element="digit"><bounds x="22" y="0" width="10" height="15" /></bezel> |
| 41 | | <bezel name="lamp46" element="lamp_dp"><bounds x="31" y="13.5" width="1.5" height="1.5" /></bezel> |
| 42 | | <bezel name="lamp47" element="lamp_ap"><bounds x="32.5" y="0" width="0.5" height="3.5" /></bezel> |
| 41 | <bezel name="lamp214" element="lamp_dp"><bounds x="31" y="13.5" width="1.5" height="1.5" /></bezel> |
| 42 | <bezel name="lamp215" element="lamp_ap"><bounds x="32.5" y="0" width="0.5" height="3.5" /></bezel> |
| 43 | 43 | |
| 44 | 44 | <bezel name="digit3" element="digit"><bounds x="33" y="0" width="10" height="15" /></bezel> |
| 45 | | <bezel name="lamp62" element="lamp_dp"><bounds x="42" y="13.5" width="1.5" height="1.5" /></bezel> |
| 46 | | <bezel name="lamp63" element="lamp_ap"><bounds x="43.5" y="0" width="0.5" height="3.5" /></bezel> |
| 45 | <bezel name="lamp314" element="lamp_dp"><bounds x="42" y="13.5" width="1.5" height="1.5" /></bezel> |
| 46 | <bezel name="lamp315" element="lamp_ap"><bounds x="43.5" y="0" width="0.5" height="3.5" /></bezel> |
| 47 | 47 | |
| 48 | 48 | <bezel name="digit4" element="digit"><bounds x="44" y="0" width="10" height="15" /></bezel> |
| 49 | | <bezel name="lamp78" element="lamp_dp"><bounds x="53" y="13.5" width="1.5" height="1.5" /></bezel> |
| 50 | | <bezel name="lamp79" element="lamp_ap"><bounds x="54.5" y="0" width="0.5" height="3.5" /></bezel> |
| 49 | <bezel name="lamp414" element="lamp_dp"><bounds x="53" y="13.5" width="1.5" height="1.5" /></bezel> |
| 50 | <bezel name="lamp415" element="lamp_ap"><bounds x="54.5" y="0" width="0.5" height="3.5" /></bezel> |
| 51 | 51 | |
| 52 | 52 | <bezel name="digit5" element="digit"><bounds x="55" y="0" width="10" height="15" /></bezel> |
| 53 | | <bezel name="lamp94" element="lamp_dp"><bounds x="64" y="13.5" width="1.5" height="1.5" /></bezel> |
| 54 | | <bezel name="lamp95" element="lamp_ap"><bounds x="65.5" y="0" width="0.5" height="3.5" /></bezel> |
| 53 | <bezel name="lamp514" element="lamp_dp"><bounds x="64" y="13.5" width="1.5" height="1.5" /></bezel> |
| 54 | <bezel name="lamp515" element="lamp_ap"><bounds x="65.5" y="0" width="0.5" height="3.5" /></bezel> |
| 55 | 55 | |
| 56 | 56 | <bezel name="digit6" element="digit"><bounds x="66" y="0" width="10" height="15" /></bezel> |
| 57 | | <bezel name="lamp110" element="lamp_dp"><bounds x="75" y="13.5" width="1.5" height="1.5" /></bezel> |
| 58 | | <bezel name="lamp111" element="lamp_ap"><bounds x="76.5" y="0" width="0.5" height="3.5" /></bezel> |
| 57 | <bezel name="lamp614" element="lamp_dp"><bounds x="75" y="13.5" width="1.5" height="1.5" /></bezel> |
| 58 | <bezel name="lamp615" element="lamp_ap"><bounds x="76.5" y="0" width="0.5" height="3.5" /></bezel> |
| 59 | 59 | |
| 60 | 60 | <bezel name="digit7" element="digit"><bounds x="77" y="0" width="10" height="15" /></bezel> |
| 61 | | <bezel name="lamp126" element="lamp_dp"><bounds x="86" y="13.5" width="1.5" height="1.5" /></bezel> |
| 62 | | <bezel name="lamp127" element="lamp_ap"><bounds x="87.5" y="0" width="0.5" height="3.5" /></bezel> |
| 61 | <bezel name="lamp714" element="lamp_dp"><bounds x="86" y="13.5" width="1.5" height="1.5" /></bezel> |
| 62 | <bezel name="lamp715" element="lamp_ap"><bounds x="87.5" y="0" width="0.5" height="3.5" /></bezel> |
| 63 | 63 | |
| 64 | 64 | <bezel name="digit8" element="digit"><bounds x="88" y="0" width="10" height="15" /></bezel> |
| 65 | | <bezel name="lamp142" element="lamp_dp"><bounds x="97" y="13.5" width="1.5" height="1.5" /></bezel> |
| 66 | | <bezel name="lamp143" element="lamp_ap"><bounds x="98.5" y="0" width="0.5" height="3.5" /></bezel> |
| 65 | <bezel name="lamp814" element="lamp_dp"><bounds x="97" y="13.5" width="1.5" height="1.5" /></bezel> |
| 66 | <bezel name="lamp815" element="lamp_ap"><bounds x="98.5" y="0" width="0.5" height="3.5" /></bezel> |
| 67 | 67 | |
| 68 | 68 | </view> |
| 69 | 69 | </mamelayout> |
branches/kale/src/osd/sdl/window.c
| r244582 | r244583 | |
| 561 | 561 | window->renderer().destroy(); |
| 562 | 562 | |
| 563 | 563 | #if (SDLMAME_SDL2) |
| 564 | | if (window->fullscreen() && video_config.switchres) |
| 564 | bool is_osx = false; |
| 565 | #ifdef SDLMAME_MACOSX |
| 566 | // FIXME: This is weird behaviour and certainly a bug in SDL |
| 567 | is_osx = true; |
| 568 | #endif |
| 569 | if (window->fullscreen() && (video_config.switchres || is_osx)) |
| 565 | 570 | { |
| 566 | 571 | SDL_SetWindowFullscreen(window->sdl_window(), 0); // Try to set mode |
| 567 | 572 | SDL_SetWindowDisplayMode(window->sdl_window(), &window->m_original_mode); // Try to set mode |
| r244582 | r244583 | |
| 1224 | 1229 | window->m_extra_flags |= SDL_ASYNCBLIT; |
| 1225 | 1230 | |
| 1226 | 1231 | if (window->renderer().has_flags(osd_renderer::FLAG_NEEDS_OPENGL)) |
| 1227 | | { |
| 1232 | { |
| 1228 | 1233 | window->m_extra_flags |= SDL_DOUBLEBUF | SDL_OPENGL; |
| 1229 | 1234 | SDL_GL_SetAttribute( SDL_GL_DOUBLEBUFFER, 1 ); |
| 1230 | 1235 | #if (SDL_VERSION_ATLEAST(1,2,10)) && (!defined(SDLMAME_EMSCRIPTEN)) |
| 1231 | 1236 | SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, video_config.waitvsync ? 1 : 0); |
| 1232 | 1237 | #endif |
| 1233 | | //load_gl_lib(window->machine()); |
| 1234 | | } |
| 1238 | // load_gl_lib(window->machine()); |
| 1239 | } |
| 1235 | 1240 | |
| 1236 | 1241 | // create the SDL surface (which creates the window in windowed mode) |
| 1242 | #if 0 |
| 1237 | 1243 | window->m_sdlsurf = SDL_SetVideoMode(tempwidth, tempheight, |
| 1244 | 0, SDL_OPENGL | SDL_FULLSCREEN);// | window->m_extra_flags); |
| 1245 | if (!window->m_sdlsurf) |
| 1246 | printf("completely failed\n"); |
| 1247 | #endif |
| 1248 | window->m_sdlsurf = SDL_SetVideoMode(tempwidth, tempheight, |
| 1238 | 1249 | 0, SDL_SWSURFACE | SDL_ANYFORMAT | window->m_extra_flags); |
| 1239 | 1250 | |
| 1240 | 1251 | if (!window->m_sdlsurf) |
| 1252 | { |
| 1253 | osd_printf_error("SDL Error: %s\n", SDL_GetError()); |
| 1241 | 1254 | return (void *) &result[1]; |
| 1255 | } |
| 1242 | 1256 | if ( (video_config.mode == VIDEO_MODE_OPENGL) && !(window->m_sdlsurf->flags & SDL_OPENGL) ) |
| 1243 | 1257 | { |
| 1244 | 1258 | osd_printf_error("OpenGL not supported on this driver!\n"); |
| 1245 | 1259 | return (void *) &result[1]; |
| 1246 | 1260 | } |
| 1247 | | |
| 1248 | 1261 | // set the window title |
| 1249 | 1262 | SDL_WM_SetCaption(window->m_title, "SDLMAME"); |
| 1250 | 1263 | #endif |