summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Gmeiner <christian.gmeiner@gmail.com>2010-03-18 07:12:41 +0100
committerChristian Gmeiner <christian.gmeiner@gmail.com>2010-03-18 07:12:41 +0100
commit2df38055205acac82e09cecfee266de96053b9ff (patch)
tree132c5001f68ceb8fc98d303564e877836600cf8a
parent3ebb171e520d0dce353cec489ca4b91bd74521b6 (diff)
downloadvdr-plugin-dxr3-2df38055205acac82e09cecfee266de96053b9ff.tar.gz
vdr-plugin-dxr3-2df38055205acac82e09cecfee266de96053b9ff.tar.bz2
add method writeRegister
-rw-r--r--dxr3device.c19
-rw-r--r--dxr3device.h1
2 files changed, 13 insertions, 7 deletions
diff --git a/dxr3device.c b/dxr3device.c
index ef2cc53..81726c6 100644
--- a/dxr3device.c
+++ b/dxr3device.c
@@ -545,15 +545,9 @@ void cDxr3Device::uploadFirmware()
void cDxr3Device::setPlayMode()
{
- em8300_register_t reg;
-
int ioval = EM8300_PLAYMODE_PLAY;
CHECK(ioctl(fdControl, EM8300_IOCTL_SET_PLAYMODE, &ioval));
- reg.microcode_register = 1;
- reg.reg = 0;
- reg.val = MVCOMMAND_SYNC;
-
- CHECK(ioctl(fdControl, EM8300_IOCTL_WRITEREG, &reg));
+ writeRegister(0, MVCOMMAND_SYNC);
}
void cDxr3Device::playVideoFrame(cDxr3PesFrame *frame, uint32_t pts)
@@ -587,6 +581,17 @@ void cDxr3Device::playSilentAudio()
audioOut->write(silentAudio, SILENT_AUDIO_SIZE);
}
+void cDxr3Device::writeRegister(int reg, int value)
+{
+ em8300_register_t regs;
+
+ regs.microcode_register = 1;
+ regs.reg = reg;
+ regs.val = value;
+
+ CHECK(ioctl(fdControl, EM8300_IOCTL_WRITEREG, &regs));
+}
+
// Local variables:
// mode: c++
// c-file-style: "stroustrup"
diff --git a/dxr3device.h b/dxr3device.h
index b056d08..bc9e74e 100644
--- a/dxr3device.h
+++ b/dxr3device.h
@@ -106,6 +106,7 @@ private:
void playVideoFrame(cDxr3PesFrame *frame, uint32_t pts);
void playBlackFrame();
void playSilentAudio();
+ void writeRegister(int reg, int value);
cMutex mutex;
uchar *silentAudio;