summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY8
-rw-r--r--dxr3interface.c14
-rw-r--r--dxr3interface.h2
3 files changed, 20 insertions, 4 deletions
diff --git a/HISTORY b/HISTORY
index 9537b86..365e184 100644
--- a/HISTORY
+++ b/HISTORY
@@ -239,7 +239,8 @@ NOTE: I havent found time to include all of the languages, will be done in pre2
- dxr3memcpy.c/h: fix to support older compilers like gcc-2.95
Here i want to thanks Marco Schlüßler very much for run compil tests, even he
dont run the plugin :)
-- dxr3memcpy.c/h: should now compile on alpha and powerpc - thanks to Paavo Hartikainen <pahartik@sci.fi>
+- dxr3memcpy.c/h (bug #1000647)
+ should now compile on alpha and powerpc - thanks to Paavo Hartikainen <pahartik@sci.fi>
- added many comments into source
- using doxygen for docs
- cDxr3Interface::ConfigureDevice(): we get now videomode from driver and set only a
@@ -260,9 +261,10 @@ NOTE: I havent found time to include all of the languages, will be done in pre2
dropped software decoder
added hardware decoder, so we make use of DVD-functions of the dxr3
- checked Lock() and Unlock() in dxr3interface.c - hope everything is ok else contact me
-- using now std:: instead of namespace std;
+- using now std:: instead of namespace std; - fixed bug #1044069
- renamed dxr3interface_spu_encoder.h/c to dxr3spuencoder.h/c
- removed log commands in dxr3outputthread.c
- fixed #includes
moved #include "dxr3osd.h" from dxr3interface.h to dxr3interface.c
- removed not needed #includes \ No newline at end of file
+ removed not needed #includes
+- fixed bug #1022810: Osd gets pink \ No newline at end of file
diff --git a/dxr3interface.c b/dxr3interface.c
index 413d9d5..963a218 100644
--- a/dxr3interface.c
+++ b/dxr3interface.c
@@ -60,6 +60,15 @@ static int Dxr3Open(const char *Name, int n, int Mode)
//! constructor
cDxr3Interface::cDxr3Interface()
{
+ // default spu palette
+ default_palette =
+ {
+ 0xe18080, 0x2b8080, 0x847b9c, 0x51ef5a, 0x7d8080, 0xb48080,
+ 0xa910a5, 0x6addca, 0xd29210, 0x1c76b8, 0x50505a, 0x30b86d,
+ 0x5d4792, 0x3dafa5, 0x718947, 0xeb8080
+ };
+
+
// open control stream
m_fdControl = Dxr3Open("", cDxr3ConfigData::Instance().GetDxr3Card(), O_WRONLY | O_SYNC);
if (!m_fdControl)
@@ -1135,8 +1144,11 @@ void cDxr3Interface::ClearOsd()
WriteSpu((const uint8_t*) &ed, (int) ed.count);
ClearButton();
}
-
+
Unlock();
+
+ // prevent osd to get pink
+ SetPalette(&default_palette); // ok here? Has its own un/lock
}
// ==================================
diff --git a/dxr3interface.h b/dxr3interface.h
index 492c1e3..18125ac 100644
--- a/dxr3interface.h
+++ b/dxr3interface.h
@@ -152,6 +152,8 @@ private:
// bcs
em8300_bcs_t m_bcs; ///< BrightnessContrastSaturation values
+ unsigned default_palette[16];
+
void UploadMicroCode();
void ConfigureDevice();
void ResampleVolume(short* pcmbuf, int size);