void reportStatus() { // TODO: is there overhead in creating one of these every time? AL::ALMotionProxy motion(getParentBroker()); AL::ALTextToSpeechProxy speech(getParentBroker()); speech.setLanguage("English"); std::string summary = motion.getSummary(); //speech.say(motion.getSummary()); }
void reportBodyPartName(int index) { AL::ALCriticalSection section(mutex); BodyPartDescriptor part = Diagnostics::BodyParts[index]; // TODO: is there overhead in creating one of these every time? AL::ALTextToSpeechProxy speech(getParentBroker()); speech.setLanguage("English"); speech.say(std::string(part.desc)); }
GFXDECODE_END void holeland_state::holeland(machine_config &config) { /* basic machine hardware */ Z80(config, m_maincpu, 3355700); /* measured 298ns on PCB */ m_maincpu->set_addrmap(AS_PROGRAM, &holeland_state::holeland_map); m_maincpu->set_addrmap(AS_IO, &holeland_state::io_map); m_maincpu->set_vblank_int("screen", FUNC(holeland_state::irq0_line_hold)); LS259(config, m_latch); // 3J m_latch->parallel_out_cb().set(FUNC(holeland_state::pal_offs_w)).mask(0x03); m_latch->q_out_cb<5>().set(FUNC(holeland_state::coin_counter_w)); m_latch->q_out_cb<6>().set(FUNC(holeland_state::flipscreen_x_w)); m_latch->q_out_cb<7>().set(FUNC(holeland_state::flipscreen_y_w)); WATCHDOG_TIMER(config, "watchdog"); /* video hardware */ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); screen.set_refresh_hz(60); screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); screen.set_size(32*16, 32*16); screen.set_visarea(0*16, 32*16-1, 2*16, 30*16-1); screen.set_screen_update(FUNC(holeland_state::screen_update_holeland)); screen.set_palette(m_palette); GFXDECODE(config, m_gfxdecode, m_palette, gfx_holeland); PALETTE(config, m_palette, palette_device::RGB_444_PROMS, "proms", 256); MCFG_VIDEO_START_OVERRIDE(holeland_state,holeland) /* sound hardware */ SPEAKER(config, "mono").front_center(); ay8910_device &ay1(AY8910(config, "ay1", 20000000 / 32)); /* verified on PCB */ ay1.port_a_read_callback().set_ioport("IN0"); ay1.port_b_read_callback().set_ioport("IN1"); ay1.add_route(ALL_OUTPUTS, "mono", 0.25); ay8910_device &ay2(AY8910(config, "ay2", 20000000 / 16)); /* verified on PCB */ ay2.port_a_read_callback().set_ioport("DSW1"); ay2.port_b_read_callback().set_ioport("DSW2"); ay2.add_route(ALL_OUTPUTS, "mono", 0.25); sp0256_device &speech(SP0256(config, "speech", 3355700)); /* measured 298ns on PCB */ speech.data_request_callback().set_inputline("maincpu", INPUT_LINE_NMI); speech.add_route(ALL_OUTPUTS, "mono", 1.0); }
// passer un 3ieme parametre = fct lua a appeler qd eve realise //wchar_t void CDialogState::AddSpeech(CSpeaker* actor,const std::string& msg,const std::string& audioFilename){ CSound* sound = 0; if( audioFilename.size() ){ _INFO << "Loading audio filename" << audioFilename; sound = CGameEngine::getSoundManager()->loadSound( audioFilename.c_str() , false ); } // std::string text(msg); // _events.push_back(std::make_pair(actor,std::wstring())); CSpeech speech(actor,std::wstring(msg.begin(),msg.end()),sound); _events.push_back(speech); }