From 057ab40acd37de4dd92253f4643792fc1d8cad50 Mon Sep 17 00:00:00 2001 From: Chris Tallon Date: Wed, 20 Jul 2005 00:02:02 +0000 Subject: [PATCH] NTSC support, needs testing --- Makefile | 1 + command.cc | 33 +++++++++++++++++++--- command.h | 1 + defines.h | 4 +-- main.cc | 7 +++-- osd.cc | 8 +++++- osd.h | 9 ++++-- other/wallpaperNTSC.jpg | Bin 0 -> 23284 bytes other/{wallpaper.jpg => wallpaperPAL.jpg} | Bin tcp.cc | 6 ++-- vchannellist.cc | 10 ++++++- vlivebanner.cc | 10 ++++++- vlivebanner.h | 1 + vmute.cc | 10 ++++++- vmute.h | 1 + vrecordinglist.cc | 10 ++++++- vrecordingmenu.cc | 28 ++++++++++++++++-- vrecordingmenu.h | 1 + vserverselect.cc | 9 +++++- vserverselect.h | 1 + vvideolive.cc | 2 +- vvideolive.h | 1 + vvideorec.cc | 2 +- vvideorec.h | 1 + vvolume.cc | 16 ++++++++--- vvolume.h | 1 + vwelcome.cc | 19 +++++++++++-- vwelcome.h | 1 + 28 files changed, 164 insertions(+), 29 deletions(-) create mode 100644 other/wallpaperNTSC.jpg rename other/{wallpaper.jpg => wallpaperPAL.jpg} (100%) diff --git a/Makefile b/Makefile index 21f0214..e58d89f 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,6 @@ CC = /opt/crosstool/powerpc-405-linux-gnu/gcc-2.95.3-glibc-2.2.5/bin/powerpc-405-linux-gnu-g++ STRIP = /opt/crosstool/powerpc-405-linux-gnu/gcc-2.95.3-glibc-2.2.5/bin/powerpc-405-linux-gnu-strip + CXX = $(CC) INCLUDES = -I../jpeg-6b CXXFLAGS = -Wall -Woverloaded-virtual -Werror $(INCLUDES) diff --git a/command.cc b/command.cc index fe7bd6c..7c4285d 100644 --- a/command.cc +++ b/command.cc @@ -78,6 +78,8 @@ void Command::run() mainPid = getpid(); + UCHAR screenSize = Osd::getInstance()->getScreenSize(); + // moved from startup because surface delete doesn't work // just in case @@ -86,7 +88,7 @@ void Command::run() // Blue background View* v = new View(); - v->setDimensions(SCREENHEIGHT, SCREENWIDTH); + v->setDimensions(Osd::getInstance()->getScreenHeight(), Osd::getInstance()->getScreenWidth()); v->setBackgroundColour(Colour::VIDEOBLUE); v->draw(); v->show(); @@ -95,7 +97,16 @@ void Command::run() // Wallpaper VWallpaper* w = new VWallpaper(); - w->init("/wallpaper.jpg"); + if (screenSize == Osd::PAL) + { + Log::getInstance()->log("Command", Log::DEBUG, "PAL wallpaper selected"); + w->init("/wallpaperPAL.jpg"); + } + else + { + Log::getInstance()->log("Command", Log::DEBUG, "NTSC wallpaper selected"); + w->init("/wallpaperNTSC.jpg"); + } w->draw(); w->show(); viewman->add(w); @@ -276,7 +287,14 @@ void Command::broadcastForServers() { VInfo* viewWait = new VInfo(); viewWait->setDimensions(200, 400); - viewWait->setScreenPos(170, 200); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + viewWait->setScreenPos(170, 200); + } + else + { + viewWait->setScreenPos(160, 150); + } viewWait->setMainText("\n Locating server"); viewWait->draw(); viewWait->show(); @@ -301,7 +319,14 @@ int Command::connectToServer(int vectorIndex) VInfo* viewWait = new VInfo(); viewWait->setDimensions(200, 400); - viewWait->setScreenPos(170, 200); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + viewWait->setScreenPos(170, 200); + } + else + { + viewWait->setScreenPos(160, 150); + } viewWait->setMainText("\n Connecting to VDR"); viewWait->draw(); viewWait->show(); diff --git a/command.h b/command.h index c7a0b56..8e907f6 100644 --- a/command.h +++ b/command.h @@ -49,6 +49,7 @@ #include "vwelcome.h" #include "vmute.h" #include "colour.h" +#include "osd.h" class Command : public MessageQueue { diff --git a/defines.h b/defines.h index 9d750fb..0d6f880 100644 --- a/defines.h +++ b/defines.h @@ -31,8 +31,8 @@ typedef unsigned long long ULLONG; //#define SCREENHEIGHT 576 //#define SCREENHEIGHT 480 -extern int SCREENWIDTH; -extern int SCREENHEIGHT; +//extern int SCREENWIDTH; +//extern int SCREENHEIGHT; ULLONG htonll(ULLONG a); ULLONG ntohll(ULLONG a); diff --git a/main.cc b/main.cc index 57625f3..4bd36b6 100644 --- a/main.cc +++ b/main.cc @@ -212,10 +212,13 @@ int main(int argc, char** argv) videoFormat = Video::NTSC; videoConnection = Video::COMPOSITE; logger->log("Core", Log::INFO, "MTD gave us no help. Guessing NTSC."); - } - success = osd->init("/dev/stbgfx", SCREENHEIGHT, SCREENWIDTH, 1); + // temp hack - simulate ntsc on pal +// SCREENHEIGHT = 480; +// videoFormat = Video::NTSC; + + success = osd->init("/dev/stbgfx", SCREENHEIGHT, SCREENWIDTH, videoFormat, 1); if (success) { logger->log("Core", Log::INFO, "OSD module initialised"); diff --git a/osd.cc b/osd.cc index d325301..5040dbf 100644 --- a/osd.cc +++ b/osd.cc @@ -60,7 +60,12 @@ int Osd::getScreenWidth() return width; } -int Osd::init(char* device, int height, int width, int doubleBuffering) +int Osd::getScreenSize() +{ + return screenSize; +} + +int Osd::init(char* device, int height, int width, UCHAR tscreenSize, int doubleBuffering) { if (initted) return 0; @@ -75,6 +80,7 @@ int Osd::init(char* device, int height, int width, int doubleBuffering) this->height = height; this->width = width; + screenSize = tscreenSize; Surface::initConversionTables(); diff --git a/osd.h b/osd.h index 1c11504..04cc8a0 100644 --- a/osd.h +++ b/osd.h @@ -36,15 +36,20 @@ class Osd ~Osd(); static Osd* getInstance(); - int init(char* device, int height, int width, int doubleBuffering); + int init(char* device, int height, int width, UCHAR tscreenSize, int doubleBuffering); int shutdown(); int getFD(); int getScreenHeight(); int getScreenWidth(); + int getScreenSize(); void screenShot(char* fileName); + // Video formats - AV_SET_VID_DISP_FMT // here, video, everywhere! + const static UCHAR NTSC = 0; + const static UCHAR PAL = 1; + private: static Osd* instance; int initted; @@ -55,7 +60,7 @@ class Osd int fdOsd; int width; int height; - + UCHAR screenSize; }; #endif diff --git a/other/wallpaperNTSC.jpg b/other/wallpaperNTSC.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5df6cbe6340b61f29aad87b12efe9215197112a8 GIT binary patch literal 23284 zcmdSAcT`hfw=TRxi=u!isDKa^m8K#}krEO`h=BB76cv>wB2|b&q9_Q65d~3H66v9e zRHej1QIOt2KtP00q=k~ox5Dpz&v(W-cYNQyciew&#z;o?+H0>m=QE!<=i2MN>%X9F zMh1ok5Da_{!wy5x`T(Q{@o+C;++QBNW@(aQR;2Tx`mwwhiL86;rzj#`CVf!H-Q5df%Y`q3T zKoE?7V|Xy=Umq9`FCV`E91LR%s8F&E44;=544NN|7}O30_aQz}{_XozP6_O=xCGzt zD|Y;D+}lmErwc!eTei&~IC0tU-e$p_yLL-R9y}x`ub`-^rmk^PQ%moRz5(W}p^=rf zjjf%%gQM$}tJmDzJv{vb0)uV^hhW3+KZuBY7#02WS$x9t#1}7GcvQt+3$;r zOG?YiKYaZ1wWhYN{@eG4_Kwc3?w;Ph{*lqK-{XHKCaF^ki%YcSmDM#mgF7!6#QV>* z!0$g3`!Dkn1@q$J?g5-TFBs1)@Z}ZdF(;{F3jE{m1Wa5<4CDw(#?2*%OxY z;+Or}1a}@#9XYtbo!Z9C{^urk?|*A%|1q)ucV7L_R$ds`JYG=<1uZhD0w2y z^%nYK(Em+et2-2|-_oNt^yZ2`1JRBqsoG@mD4irIP|O0&|9{C>^!MZY?YS@abm%Ds zsAfJ+!5_#t)*qbq8Obl-nCuRtS*gF9%3MtQOjCs&6noXv{W5&goySN%Yi${o02%6I z>d7o}5b-au8IRCEw7i^(Wwi3NSu9N96ycVg?`1=YPe#p?;byqbPl11-ntlBHf~TyBbO?tOYLgM z@9Q0k578S~{EzGZdY^lZiAPctUtMNc6o$(4Amnd{S^u|3{(q`~UJ^7C=S;YJCoO(Z z3??l$r#wVZ9>VVjw-~p;Es_Axy+qkg%aAZy1sIu_e|t21_saj~ew-s%7@uochi)yC z;BEScoR}1_tQw80nHL$7$3lg`ZiG*I47pT6a@@J8YozN&L)YqPX=HFyyK$AYsZ=9f zN~%45kxdO!PKWfyMSL0vVCFXJwY1dB40AqR^A%PWcX2G~|BQFv|HMlDm&KOtt&Si5 zA2w=r-Ni_q+izi&eD6@gf9v$$_fHV?=$*+9oXPawQ2n!{9pPxv5I1HD;qW>XU|j

Fd@)w;?8R}5Hk?leso&8kd(=P4)7 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 X1)%iPH2>n?{HT8T|M*%JKD_uBiqHT9 literal 0 HcmV?d00001 diff --git a/other/wallpaper.jpg b/other/wallpaperPAL.jpg similarity index 100% rename from other/wallpaper.jpg rename to other/wallpaperPAL.jpg diff --git a/tcp.cc b/tcp.cc index ef78c96..0546d6d 100644 --- a/tcp.cc +++ b/tcp.cc @@ -144,12 +144,14 @@ int TCP::isConnected() return connected; } -int TCP::sendPacket(void* buf, size_t count) +int TCP::sendPacket(void* bufR, size_t count) { size_t bytes_sent = 0; int this_write; int temp_write; + unsigned char* buf = (unsigned char*)bufR; + while (bytes_sent < count) { do @@ -164,7 +166,7 @@ int TCP::sendPacket(void* buf, size_t count) return(this_write); } bytes_sent += this_write; - (unsigned char*)buf += this_write; + buf += this_write; } return(count); } diff --git a/vchannellist.cc b/vchannellist.cc index 67291f5..3550e14 100644 --- a/vchannellist.cc +++ b/vchannellist.cc @@ -22,7 +22,15 @@ VChannelList::VChannelList(ULONG type) { - setScreenPos(80, 70); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(80, 70); + } + else + { + setScreenPos(70, 35); + } + setDimensions(420, 570); setBackgroundColour(Colour::VIEWBACKGROUND); diff --git a/vlivebanner.cc b/vlivebanner.cc index 871001d..b50ca90 100644 --- a/vlivebanner.cc +++ b/vlivebanner.cc @@ -22,7 +22,15 @@ VLiveBanner::VLiveBanner() { - setScreenPos(130, 370); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(130, 370); + } + else + { + setScreenPos(120, 320); + } + setDimensions(120, 500); setBackgroundColour(Colour::VIEWBACKGROUND); diff --git a/vlivebanner.h b/vlivebanner.h index b0701db..9055589 100644 --- a/vlivebanner.h +++ b/vlivebanner.h @@ -29,6 +29,7 @@ #include "vdr.h" #include "wselectlist.h" #include "colour.h" +#include "osd.h" class VLiveBanner : public View { diff --git a/vmute.cc b/vmute.cc index 3adc881..4233a9e 100644 --- a/vmute.cc +++ b/vmute.cc @@ -24,8 +24,16 @@ VMute::VMute() { isMuted = Audio::getInstance()->toggleUserMute(); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(600, 500); + } + else + { + setScreenPos(590, 400); + } + setDimensions(40, 40); - setScreenPos(600, 500); setBackgroundColour(Colour::VIEWBACKGROUND); } diff --git a/vmute.h b/vmute.h index 60ef05e..c89d324 100644 --- a/vmute.h +++ b/vmute.h @@ -28,6 +28,7 @@ #include "audio.h" #include "wsymbol.h" #include "colour.h" +#include "osd.h" class VMute : public View { diff --git a/vrecordinglist.cc b/vrecordinglist.cc index 05d82a9..6eb572d 100644 --- a/vrecordinglist.cc +++ b/vrecordinglist.cc @@ -22,7 +22,15 @@ VRecordingList::VRecordingList() { - setScreenPos(80, 70); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(80, 70); + } + else + { + setScreenPos(70, 35); + } + setDimensions(420, 570); setBackgroundColour(Colour::VIEWBACKGROUND); diff --git a/vrecordingmenu.cc b/vrecordingmenu.cc index 8e1d703..63c402e 100644 --- a/vrecordingmenu.cc +++ b/vrecordingmenu.cc @@ -24,7 +24,15 @@ VRecordingMenu::VRecordingMenu() { rec = NULL; - setScreenPos(260, 190); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(260, 190); + } + else + { + setScreenPos(250, 160); + } + setDimensions(140, 200); setBackgroundColour(Colour::VIEWBACKGROUND); @@ -109,7 +117,14 @@ int VRecordingMenu::handleCommand(int command) vi->setExitable(); if (summary) vi->setMainText(summary); else vi->setMainText("Summary unavailable"); - vi->setScreenPos(120, 130); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + vi->setScreenPos(120, 130); + } + else + { + vi->setScreenPos(110, 90); + } vi->setDimensions(300, 490); ViewMan::getInstance()->addNoLock(vi); @@ -131,7 +146,14 @@ int VRecordingMenu::handleCommand(int command) v->setTitleText("Delete recording"); v->setMainText("Are you sure you want to delete this recording?"); v->setDefault(VQuestion::NO); - v->setScreenPos(230, 160); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + v->setScreenPos(230, 160); + } + else + { + v->setScreenPos(220, 140); + } v->setDimensions(180, 260); ViewMan::getInstance()->addNoLock(v); diff --git a/vrecordingmenu.h b/vrecordingmenu.h index b21bd5a..816b1da 100644 --- a/vrecordingmenu.h +++ b/vrecordingmenu.h @@ -34,6 +34,7 @@ #include "vinfo.h" #include "vdr.h" #include "colour.h" +#include "osd.h" class VRecordingList; diff --git a/vserverselect.cc b/vserverselect.cc index 0953541..ddc140a 100644 --- a/vserverselect.cc +++ b/vserverselect.cc @@ -28,8 +28,15 @@ VServerSelect::VServerSelect(std::vector* serverIPs, int* tselectServer) // anyway, now it doesn't use a object wide reference. selectServer = tselectServer; + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(220, 200); + } + else + { + setScreenPos(210, 150); + } setDimensions(200, 300); - setScreenPos(220, 200); setBackgroundColour(Colour::VIEWBACKGROUND); setTitleBarOn(1); setTitleBarColour(Colour::TITLEBARBACKGROUND); diff --git a/vserverselect.h b/vserverselect.h index 6655360..423b3bb 100644 --- a/vserverselect.h +++ b/vserverselect.h @@ -30,6 +30,7 @@ #include "remote.h" #include "wselectlist.h" #include "colour.h" +#include "osd.h" class VServerSelect : public View { diff --git a/vvideolive.cc b/vvideolive.cc index 25b672f..431c48d 100644 --- a/vvideolive.cc +++ b/vvideolive.cc @@ -28,7 +28,7 @@ VVideoLive::VVideoLive(List* tchanList) chanList = tchanList; currentChannel = 0; - setDimensions(SCREENHEIGHT, SCREENWIDTH); + setDimensions(Osd::getInstance()->getScreenHeight(), Osd::getInstance()->getScreenWidth()); Colour transparent(0, 0, 0, 0); setBackgroundColour(transparent); } diff --git a/vvideolive.h b/vvideolive.h index 838d805..925650d 100644 --- a/vvideolive.h +++ b/vvideolive.h @@ -32,6 +32,7 @@ #include "viewman.h" #include "vchannelselect.h" #include "colour.h" +#include "osd.h" class VVideoLive : public View { diff --git a/vvideorec.cc b/vvideorec.cc index 793e481..70707e9 100644 --- a/vvideorec.cc +++ b/vvideorec.cc @@ -28,7 +28,7 @@ VVideoRec::VVideoRec(Recording* rec) myRec = rec; - setDimensions(SCREENHEIGHT, SCREENWIDTH); + setDimensions(Osd::getInstance()->getScreenHeight(), Osd::getInstance()->getScreenWidth()); Colour transparent(0, 0, 0, 0); setBackgroundColour(transparent); } diff --git a/vvideorec.h b/vvideorec.h index 872a18e..c1d2632 100644 --- a/vvideorec.h +++ b/vvideorec.h @@ -29,6 +29,7 @@ #include "recording.h" #include "command.h" #include "colour.h" +#include "osd.h" class VVideoRec : public View { diff --git a/vvolume.cc b/vvolume.cc index 348bf27..6408dc5 100644 --- a/vvolume.cc +++ b/vvolume.cc @@ -24,8 +24,16 @@ VVolume::VVolume() { displayVolume = Audio::getInstance()->getVolume(); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(100, 499); + } + else + { + setScreenPos(90, 400); + } + setDimensions(31, 227); - setScreenPos(100, 499); setBackgroundColour(Colour::VIEWBACKGROUND); } @@ -36,7 +44,7 @@ void VVolume::draw() WSymbol* w = new WSymbol; w->nextSymbol = WSymbol::VOLUME2; - w->setScreenPos(103, 509); + w->setScreenPos(screenX + 3, screenY + 10); w->draw(); int i = 0; @@ -44,14 +52,14 @@ void VVolume::draw() for(; i < displayVolume; i++) { w->nextSymbol = WSymbol::VOLBAR; - w->setScreenPos(140 + (i * 9), 502); + w->setScreenPos(screenX + 40 + (i * 9), screenY + 3); w->draw(); } for(; i < 20; i++) { w->nextSymbol = WSymbol::VOLDOT; - w->setScreenPos(140 + (i * 9), 512); + w->setScreenPos(screenX + 40 + (i * 9), screenY + 13); w->draw(); } diff --git a/vvolume.h b/vvolume.h index 068f483..380dca4 100644 --- a/vvolume.h +++ b/vvolume.h @@ -28,6 +28,7 @@ #include "audio.h" #include "wsymbol.h" #include "colour.h" +#include "osd.h" class VVolume : public View { diff --git a/vwelcome.cc b/vwelcome.cc index 2a950b6..1cd1031 100644 --- a/vwelcome.cc +++ b/vwelcome.cc @@ -23,7 +23,15 @@ VWelcome::VWelcome() { setDimensions(190, 460); - setScreenPos(140, 170); + + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + setScreenPos(140, 170); + } + else + { + setScreenPos(130, 140); + } setBackgroundColour(Colour::VIEWBACKGROUND); setTitleBarOn(1); @@ -185,7 +193,14 @@ void VWelcome::doRecordingsList() VInfo* viewWait = new VInfo(); viewWait->setDimensions(190, 460); - viewWait->setScreenPos(140, 170); + if (Osd::getInstance()->getScreenSize() == Osd::PAL) + { + viewWait->setScreenPos(140, 170); + } + else + { + viewWait->setScreenPos(130, 140); + } viewWait->setMainText("\n Downloading recordings list"); viewWait->draw(); viewWait->show(); diff --git a/vwelcome.h b/vwelcome.h index 86ed434..417a169 100644 --- a/vwelcome.h +++ b/vwelcome.h @@ -36,6 +36,7 @@ #include "command.h" #include "message.h" #include "colour.h" +#include "osd.h" class VWelcome : public View { -- 2.39.2