static WRITE16_HANDLER( jpeg2_w ) { COMBINE_DATA(&jpeg2); { int idx=find_data((int)jpeg2+(((int)jpeg1)<<16)); if(idx>=0) { jpeg_addr=gfxlookup[idx][0]; jpeg_w=gfxlookup[idx][2]; jpeg_h=gfxlookup[idx][3]; render_jpeg(); } else { jpeg_addr=-1; } } }
static WRITE16_HANDLER( jpeg2_w ) { sliver_state *state = space->machine().driver_data<sliver_state>(); int idx; COMBINE_DATA(&state->m_jpeg2); idx = find_data((int)state->m_jpeg2 + (((int)state->m_jpeg1) << 16)); if (idx >= 0) { state->m_jpeg_addr = gfxlookup[idx][0]; state->m_jpeg_w = gfxlookup[idx][2]; state->m_jpeg_h = gfxlookup[idx][3]; render_jpeg(space->machine()); } else { state->m_jpeg_addr = -1; } }
int RecordMonitorThread::render_frame() { switch(mwindow->edl->session->vconfig_in->driver) { case CAPTURE_BUZ: case VIDEO4LINUX2JPEG: case CAPTURE_JPEG_WEBCAM: render_jpeg(); break; case CAPTURE_FIREWIRE: case CAPTURE_IEC61883: render_dv(); break; default: render_uncompressed(); break; } return 0; }
static WRITE16_HANDLER(io_data_w) { if(io_offset<IO_SIZE) { int tmpx,tmpy; COMBINE_DATA(&io_reg[io_offset]); tmpy=io_reg[0x1a]+(io_reg[0x1b]<<8)-io_reg[0x20]; //0x20 ??? tmpx=io_reg[0x1e]+(io_reg[0x1f]<<8); if(tmpy!=jpeg_y || tmpx!=jpeg_x) { jpeg_x=tmpx; jpeg_y=tmpy; render_jpeg(); } } else { logerror("I/O access out of range: %x\n", io_offset); } }
static WRITE16_HANDLER(io_data_w) { sliver_state *state = space->machine().driver_data<sliver_state>(); if (state->m_io_offset < IO_SIZE) { int tmpx, tmpy; COMBINE_DATA(&state->m_io_reg[state->m_io_offset]); tmpy = state->m_io_reg[0x1a] + (state->m_io_reg[0x1b] << 8) - state->m_io_reg[0x20]; //0x20 ??? tmpx = state->m_io_reg[0x1e] + (state->m_io_reg[0x1f] << 8); if (tmpy != state->m_jpeg_y || tmpx != state->m_jpeg_x) { state->m_jpeg_x = tmpx; state->m_jpeg_y = tmpy; render_jpeg(space->machine()); } } else { logerror("I/O access out of range: %x\n", state->m_io_offset); } }
void sliver_state::postload() { render_jpeg(); }