diff options
author | austriancoder <austriancoder> | 2004-09-15 22:02:48 +0000 |
---|---|---|
committer | austriancoder <austriancoder> | 2004-09-15 22:02:48 +0000 |
commit | 999905037cc62770ca111e24ac36e76b59ee7a20 (patch) | |
tree | eed7e8b5b6a503fb1f33b97ff8d8255ea4a69c21 | |
parent | f25c9f4ffe76f451ac0d591d6e70176cb2882fa5 (diff) | |
download | vdr-plugin-dxr3-999905037cc62770ca111e24ac36e76b59ee7a20.tar.gz vdr-plugin-dxr3-999905037cc62770ca111e24ac36e76b59ee7a20.tar.bz2 |
added functions to read and write registers directly
-rw-r--r-- | HISTORY | 3 | ||||
-rw-r--r-- | dxr3interface.c | 35 | ||||
-rw-r--r-- | dxr3interface.h | 7 |
3 files changed, 44 insertions, 1 deletions
@@ -241,4 +241,5 @@ NOTE: I havent found time to include all of the languages, will be done in pre2 - added many comments into source - using doxygen for docs - cDxr3Interface::ConfigureDevice(): we get now videomode from driver and set only a - new one, if the wanted one is different to the driver defaults one.
\ No newline at end of file + new one, if the wanted one is different to the driver defaults one. +- added functions to read and write registers directly with the plugin
\ No newline at end of file diff --git a/dxr3interface.c b/dxr3interface.c index 6562a3c..25abc77 100644 --- a/dxr3interface.c +++ b/dxr3interface.c @@ -1162,5 +1162,40 @@ void cDxr3Interface::SetSaturation(int value) } } +// access registers +// ================================== +//! read a register +long cDxr3Interface::ReadRegister(int registernum) +{ + em8300_register_t reg; + + reg.microcode_register = 0; + reg.reg = registernum; + reg.val = 0; + + ioctl(m_fdControl, EM8300_IOCTL_READREG, ®); + return (reg.val); +} + +// ================================== +//! write a register +void cDxr3Interface::WriteRegister(int registernum, int val) +{ + em8300_register_t reg; + + reg.microcode_register = 0; + reg.reg = registernum; + reg.val = val; + ioctl(m_fdControl, EM8300_IOCTL_WRITEREG, ®); +} + +// maybe we should copy this routine into em8300 driver +// ================================== +// +void cDxr3Interface::Dxr3CopyYUVData(int pos, int *dst, int length) +{ + +} + // ================================== cMutex* cDxr3Interface::m_pMutex = new cMutex; diff --git a/dxr3interface.h b/dxr3interface.h index 6c592dd..cfd69ca 100644 --- a/dxr3interface.h +++ b/dxr3interface.h @@ -136,6 +136,13 @@ private: void ResampleVolume(short* pcmbuf, int size); void Resuscitation(); + // access registers + long ReadRegister(int registernum); + void WriteRegister(int registernum, int val); + + // maybe we should copy this routine into em8300 driver + void Dxr3CopyYUVData(int pos, int *dst, int length); + protected: static cMutex* m_pMutex; ///< mutex for dxr3interface |