[Solved] Patch GMT offset, change timezone: time+EPG

Here is information about customize your B series firmware..:!:This forum is NOT FOR USER questions or problems but DEVELOPER.

User avatar
juusso
SamyGO Moderator
Posts: 10129
Joined: Sun Mar 07, 2010 6:20 pm

Re: Patch GMT offset for some country is it possible ?

Post by juusso »

Hi,
According your inventions, we have prepared T-CHL7DEUC 2005 firmware with custom GMT settings like:

Code: Select all

Austria       GMT+1
Czech         GMT+2
France        GMT+3
Germany        GMT+4
Hunngary     GMT+5
Ireland     GMT+6
Italy       GMT+7
Netherlands   GMT+8
Slovakia      GMT+9
Spain         GMT+10
Switzerland   GMT+11
United Kingdom GMT+0
Other        GMT+3

Works like a charm! It is enough to change Channel-Country-0000 and we get time+EPG working properly.

Now how about patcher? Might we need to patch more countries at once to be sure we get patch working, because i got problems with Others, but it worked well on Slovakia (all other countries from list have been checked and are ok)

p.s. vanek, you should register on ixbt.com ;)
LE40B653T5W,UE40D6750,UE65Q8C
Have questions? Read SamyGO Wiki, Search on forum first!
FFB (v0.8), FFB for CI+ . Get root on: C series, D series, E series, F series, H series. rooting K series, exeDSP/exeTV patches[C/D/E/F/H]

DO NOT EVER INSTALL FIRMWARE UPGRADE
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: Patch GMT offset for some country is it possible ?

Post by erdem_ua »

Turkey = GMT+2 :)
I think time has came for to add this hack to SamyGO Firmware Patcher.
User avatar
juusso
SamyGO Moderator
Posts: 10129
Joined: Sun Mar 07, 2010 6:20 pm

Re: Patch GMT offset for some country is it possible ?

Post by juusso »

yes, Erdem, yes!

Here is no Turkey in the TV list. Countries above are patched as is: next country in the list gets +1 GMT :lol:
But i`m sure you`ll find the best way to organize the patch.
LE40B653T5W,UE40D6750,UE65Q8C
Have questions? Read SamyGO Wiki, Search on forum first!
FFB (v0.8), FFB for CI+ . Get root on: C series, D series, E series, F series, H series. rooting K series, exeDSP/exeTV patches[C/D/E/F/H]

DO NOT EVER INSTALL FIRMWARE UPGRADE
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: Patch GMT offset for some country is it possible ?

Post by erdem_ua »

I wanted to implement this hack to Firmware patcher but don't understand the structure. My IDA doesn't show thing like "TCCountrySpecSingle" structure.
Am I doing something wrong? Might be some settings missed on IDA... Help me for helping you :D

Image
vaniok wrote:
erdem_ua wrote:Vaniok, thanks for the information but I prefer function names with IDA screenshots.
Anyway, I will try to add this GMT patch option SamyGO firmware patcher if it works as intended.
exeDSP: 0xAACDD0

Code: Select all

; TCCountrySpecSlovakia::TCCountrySpecSlovakia(void)
EXPORT _ZN21TCCountrySpecSlovakiaC1Ev
_ZN21TCCountrySpecSlovakiaC1Ev
STMFD   SP!, {R4-R8,LR}
MOV     R6, R0
LDR     R4, =ICountrySpecDVB_TI
LDR     R1, =TCCountrySpecSlovakia_VTT
STR     R4, [R0]
LDR     R3, [R4,#-0x58]
MOV     R5, R4
SUB     R7, R4, #0x58
STR     R4, [R6,R3]
BL      _ZN17TCCountrySpecBaseC2Ev ; TCCountrySpecBase::TCCountrySpecBase(void)
LDR     R3, =TCCountrySpecSlovakia_TI
MOV     R2, #0x25
STR     R3, [R6,#TCCountrySpecSingle.parent]
LDR     R3, ='SVK'
STMIB   R6, {R2,R3}
ADD     R2, R2, #5
LDR     R3, ='slk'
MOV     R1, #0          ; c
MOV     R0, #1
MOV     R12, -1
MOV     LR, #0x28
STR     R2, [R6,#TCCountrySpecSingle.DVBSpecCode]
SUB     R2, R2, #0x21
STR     R2, [R6,#TCCountrySpecSingle.defaultTimeZoneRegion]
STRB    R0, [R6,#TCCountrySpecSingle.supportSBT]
STRB    R0, [R6,#TCCountrySpecSingle.isDeleteChannelBeforeAutoStore]
STRB    R0, [R6,#TCCountrySpecSingle.supportHM]
STRB    R0, [R6,#TCCountrySpecSingle.enableAutoWide]
STRB    R0, [R6,#TCCountrySpecSingle.enableCI]
STRB    R0, [R6,#TCCountrySpecSingle.supportTTX]
STR     R3, [R6,#TCCountrySpecSingle.defaultPreferLanguage]
STR     LR, [R6,#TCCountrySpecSingle.field_78]
STR     R12, [R6,#TCCountrySpecSingle.field_84]
STR     R1, [R6,#TCCountrySpecSingle.defaultScreenMode]
STR     R1, [R6,#TCCountrySpecSingle.defaultCharacterTableIndex]
STR     R1, [R6,#TCCountrySpecSingle.isTripleOffsetRequired]
STRB    R1, [R6,#TCCountrySpecSingle.defaultSubTitleState]
STR     R1, [R6,#TCCountrySpecSingle.dataServiceAppType]
STR     R1, [R6,#TCCountrySpecSingle.supportStandbyScan]
STRB    R1, [R6,#TCCountrySpecSingle.supportTimedChildLock]
STRB    R1, [R6,#TCCountrySpecSingle.autoSubtitleNoMatchNoDisplay]
STR     R1, [R6,#TCCountrySpecSingle.Audio_HEAACHavePriorityOrder]
STR     LR, [R6,#TCCountrySpecSingle.privateDataSpecification]
STR     R12, [R6,#TCCountrySpecSingle.field_7C]
STR     R12, [R6,#TCCountrySpecSingle.field_80]
STRB    R1, [R6,#TCCountrySpecSingle.supportRetuneAlterFreq]
STRB    R1, [R6,#TCCountrySpecSingle.field_108]
ADD     R0, R6, #0x44   ; s
ADD     R2, R2, #0x1B   ; n
BL      _ZN5PCMem3SetEPvim ; PCMem::Set(void *,int,ulong)
MOV     R3, #60
STR     R3, [R6,#TCCountrySpecSingle.defaultTimezone]
SUB     R3, R3, #0x3A
STR     R3, [R6,#TCCountrySpecSingle.field_28]
MOV     R2, #5
LDR     R3, =0x3E7
STR     R2, [R6,#TCCountrySpecSingle.field_24]
ADD     R4, R6, #0x14
LDR     R2, =0x22BF
MOV     LR, #0
MOV     R5, #1
STR     R3, [R6,#TCCountrySpecSingle.field_18]
MOV     R3, #0x64
STRH    R2, [R6,#TCCountrySpecSingle.field_16]
STRH    R3, [R6,#TCCountrySpecSingle.field_1E]
STR     LR, [R6,#TCCountrySpecSingle.field_48]
STR     LR, [R6,#TCCountrySpecSingle.field_4C]
STR     LR, [R6,#TCCountrySpecSingle.field_50]
STR     LR, [R6,#TCCountrySpecSingle.field_54]
STR     LR, [R6,#TCCountrySpecSingle.field_58]
STR     LR, [R6,#TCCountrySpecSingle.field_5C]
STR     LR, [R6,#TCCountrySpecSingle.field_60]
STR     LR, [R6,#TCCountrySpecSingle.field_64]
STR     LR, [R6,#TCCountrySpecSingle.field_20]
STRB    R5, [R6,#TCCountrySpecSingle.field_2C]
STR     LR, [R6,#TCCountrySpecSingle.field_30]
STR     LR, [R6,#TCCountrySpecSingle.field_34]
STR     LR, [R6,#TCCountrySpecSingle.field_38]
STR     R5, [R6,#TCCountrySpecSingle.field_3C]
STRB    LR, [R6,#TCCountrySpecSingle.field_14]
STRB    LR, [R6,#TCCountrySpecSingle.field_15]
STRH    R5, [R6,#TCCountrySpecSingle.field_1C]
STRB    R5, [R6,#TCCountrySpecSingle.field_A4]
STRB    LR, [R6,#TCCountrySpecSingle.field_A5]
STRB    LR, [R6,#TCCountrySpecSingle.field_A6]
STR     LR, [R6,#TCCountrySpecSingle.field_A8]
STR     LR, [R6,#TCCountrySpecSingle.field_AC]
STRB    R5, [R6,#TCCountrySpecSingle.field_B0]
STRB    LR, [R6,#TCCountrySpecSingle.field_B1]
STR     LR, [R6,#TCCountrySpecSingle.field_B4]
STRB    LR, [R6,#TCCountrySpecSingle.field_B2]
STRB    R5, [R6,#TCCountrySpecSingle.field_B8]
STRB    LR, [R6,#TCCountrySpecSingle.field_B9]
LDMIA   R4!, {R0-R3}
ADD     R12, R6, #0xDC
STRB    R5, [R6,#TCCountrySpecSingle.field_BA]
STR     LR, [R6,#TCCountrySpecSingle.field_BC]
STMIA   R12!, {R0-R3}
LDMIA   R4!, {R0-R3}
STRB    LR, [R6,#TCCountrySpecSingle.field_C0]
STR     LR, [R6,#TCCountrySpecSingle.field_C4]
STMIA   R12!, {R0-R3}
LDMIA   R4, {R0-R2}
STR     R5, [R6,#TCCountrySpecSingle.field_C8]
STRB    LR, [R6,#TCCountrySpecSingle.field_CC]
STRB    LR, [R6,#TCCountrySpecSingle.field_CD]
STRB    LR, [R6,#TCCountrySpecSingle.field_CE]
STRB    LR, [R6,#TCCountrySpecSingle.field_CF]
STR     LR, [R6,#TCCountrySpecSingle.field_D8]
STR     R5, [R6,#TCCountrySpecSingle.field_D4]
STRB    LR, [R6,#TCCountrySpecSingle.field_D0]
STMIA   R12, {R0-R2}
MOV     R0, R6
STR     R5, [R6,#TCCountrySpecSingle.SBTPriority]
STRB    LR, [R6,#TCCountrySpecSingle.displayNetworkNameInQuickScan]
STRB    LR, [R6,#TCCountrySpecSingle.mhegEPG]
STRB    LR, [R6,#TCCountrySpecSingle.signalInfoTune]
STRB    LR, [R6,#TCCountrySpecSingle.epgTuneAround]
STR     R5, [R6,#TCCountrySpecSingle.parentalLock]
STRB    LR, [R6,#TCCountrySpecSingle.fullSearchParamAdd]
STRB    LR, [R6,#TCCountrySpecSingle.IgnoreCI]
LDMFD   SP!, {R4-R8,PC}
; End of function TCCountrySpecSlovakia::TCCountrySpecSlovakia(void)
User avatar
juusso
SamyGO Moderator
Posts: 10129
Joined: Sun Mar 07, 2010 6:20 pm

Re: Patch GMT offset for some country is it possible ?

Post by juusso »

A bit from research: firmware T-CHL7DEUC 2004.1 (exeDSP binary):

Code: Select all

012232C8: FB FC
012232C9: B4 FF
012232CA: FC FF
First two are original - secod two - to change with.
After patching we have GMT selection menu (plug&play - language - GMT - language - channel search)
Region in SM - SP it was chosen for tests. We have here Spain and Canar Islands:
ImageImage

Here are just first findings, work is going on further. Thanks to Rvs2 from ixbt.com :)
LE40B653T5W,UE40D6750,UE65Q8C
Have questions? Read SamyGO Wiki, Search on forum first!
FFB (v0.8), FFB for CI+ . Get root on: C series, D series, E series, F series, H series. rooting K series, exeDSP/exeTV patches[C/D/E/F/H]

DO NOT EVER INSTALL FIRMWARE UPGRADE
User avatar
juusso
SamyGO Moderator
Posts: 10129
Joined: Sun Mar 07, 2010 6:20 pm

Re: Patch GMT offset for some country is it possible ?

Post by juusso »

It was not disscused on ixbt forum. Just private findings over skype ;)
Here are images in
/mtd_appdata/Images_960x540/SingleMenuTimeZoneAU/
/mtd_appdata/Images_960x540/SingleMenuTimeZoneES/
for those menu, and no other countries are here. I think it is for test purposes only...
Patch codes for spain you see in my post above.
LE40B653T5W,UE40D6750,UE65Q8C
Have questions? Read SamyGO Wiki, Search on forum first!
FFB (v0.8), FFB for CI+ . Get root on: C series, D series, E series, F series, H series. rooting K series, exeDSP/exeTV patches[C/D/E/F/H]

DO NOT EVER INSTALL FIRMWARE UPGRADE
rvs2
Official SamyGO Developer
Posts: 22
Joined: Wed Oct 06, 2010 4:13 pm

Re: Patch GMT offset for some country is it possible ?

Post by rvs2 »

Hi vaniok!
There is a desire to solve a TimeZone problem, there are operating time it is necessary to test them!

Whether it is possible at inheritance from base class, to increase an amount of properties in child, at an overload of events?

Post Reply

Return to “[B] Firmware”