MobileRead Forums

MobileRead Forums (https://www.mobileread.com/forums/index.php)
-   Kobo Developer's Corner (https://www.mobileread.com/forums/forumdisplay.php?f=247)
-   -   Instructions for patching firmware 4.8.10956 (https://www.mobileread.com/forums/showthread.php?t=296477)

sherman 04-27-2018 12:53 AM

Hi geek1011

A couple of thoughts on your new patch format.

Why not include the patch description as part of each patch, instead of outside in comments? It would make parsing the description easier.

Also, have you thought about more defined versioning information (with regards to firmware version etc), rather than specifying the version in a comment somewhere?

Cheers,
Sherman

geek1011 04-27-2018 01:15 AM

Quote:

Originally Posted by sherman (Post 3687347)
Hi geek1011

A couple of thoughts on your new patch format.

Why not include the patch description as part of each patch, instead of outside in comments? It would make parsing the description easier.

Also, have you thought about more defined versioning information (with regards to firmware version etc), rather than specifying the version in a comment somewhere?

Cheers,
Sherman

That's actually a great idea about the description. I'll implement it this weekend.

As for the versioning, I was considering it, but decided against it. Firstly, the patches will most likely fail if applied to the wrong version. Secondly, it is very difficult to extract the version info from the binary, and thirdly, it is hard to represent things like ranges in an concise way.

jackie_w 04-27-2018 08:04 AM

@geek1011,

As an occasional patch contributor I'll be happy to test your new system if I can do the testing on Windows. Is this possible at the moment?

Also a comment about Offset/Find/Replace…
I like the new option which places each of these on its own line rather than combining into a single line. It should be less confusing for new users who want to tweak the defaults. For me the single line of the current system is what makes it more awkward to ensure that the before/after strings are the same length.

I'm looking forward to being able to patch nickel zlib css in a more user-friendly way. I'm hoping it will make it possible for users to fine-tune them.

oren64 04-27-2018 08:16 AM

Quote:

Originally Posted by jackie_w (Post 3687419)
@geek1011,

As an occasional patch contributor I'll be happy to test your new system if I can do the testing on Windows. Is this possible at the moment?

You need to replace the file tools/pa32lsb.exe with the "patch32lsb-windows-32bit.exe" or "patch32lsb-windows-64bit.exe" and rename it to "pa32lsb.exe".

@geek1011 it works ok, what the difference between the old and new file.
Edit: never mind I read the README.md, I'm waiting for the zlib support.

dmapr 04-27-2018 09:23 AM

Code:

- FindBaseAddress: "ReadingFooter {\n  qproperty-footerMargin: 105;\n}\n"
- ReplaceString: {Offset: 0x0, Find: "ReadingFooter {\n  qproperty-footerMargin: 105;\n}\n", Replace: "ReadingFooter {min-height:15px;max-height:15px;}\n"}

One thing that stands out in some of these examples is repeating the search string in the FindBaseAddress and ReplaceString instructions. Is it possible to write the above as
Code:

- FindBaseAddress: "ReadingFooter {\n  qproperty-footerMargin: 105;\n}\n"
- ReplaceString: {Offset: 0x0, Replace: "ReadingFooter {min-height:15px;max-height:15px;}\n"}

omitting the Find parameter and the default being the value passed to the FindBaseAddress?

jackie_w 04-27-2018 10:07 AM

Quote:

Originally Posted by oren64 (Post 3687426)
You need to replace the file tools/pa32lsb.exe with the "patch32lsb-windows-32bit.exe" or "patch32lsb-windows-64bit.exe" and rename it to "pa32lsb.exe".

I should have been more specific in my question. I saw a couple of linux files (testalllibnickel.sh and testallnickel.sh) which I thought (perhaps wrongly) were needed to check old-result vs. new-result.

jackie_w 04-27-2018 10:21 AM

Quote:

Originally Posted by dmapr (Post 3687432)
Code:

- FindBaseAddress: "ReadingFooter {\n  qproperty-footerMargin: 105;\n}\n"
- ReplaceString: {Offset: 0x0, Find: "ReadingFooter {\n  qproperty-footerMargin: 105;\n}\n", Replace: "ReadingFooter {min-height:15px;max-height:15px;}\n"}

One thing that stands out in some of these examples is repeating the search string in the FindBaseAddress and ReplaceString instructions. Is it possible to write the above as
Code:

- FindBaseAddress: "ReadingFooter {\n  qproperty-footerMargin: 105;\n}\n"
- ReplaceString: {Offset: 0x0, Replace: "ReadingFooter {min-height:15px;max-height:15px;}\n"}

omitting the Find parameter and the default being the value passed to the FindBaseAddress?

Wouldn't that be less flexible? The FindBaseAddress is used to get you to the vicinity of where the patching needs to happen and needs to be unique. Depending on the specific patch, using the Offset value, the Find/Replace values may (sometimes) be much shorter strings and more specific

jackie_w 04-27-2018 10:29 AM

@geek1011,

I can't help thinking that discussion about your proposed new patching method deserves a new thread of its own. Most of the people coming to this thread aren't interested in the inner workings of a future patching system, they just want help with the current system on the latest firmware.

makara 04-27-2018 12:58 PM

Removed.

geek1011 04-27-2018 02:49 PM

Quote:

Originally Posted by jackie_w (Post 3687459)
@geek1011,

I can't help thinking that discussion about your proposed new patching method deserves a new thread of its own. Most of the people coming to this thread aren't interested in the inner workings of a future patching system, they just want help with the current system on the latest firmware.

I just made one. :thumbsup:

dmapr 04-27-2018 10:36 PM

Quote:

Originally Posted by jackie_w (Post 3687455)
Wouldn't that be less flexible? The FindBaseAddress is used to get you to the vicinity of where the patching needs to happen and needs to be unique. Depending on the specific patch, using the Offset value, the Find/Replace values may (sometimes) be much shorter strings and more specific

Sorry, I didn't make my intent clear. I was thinking that it could be an optional field which would allow both the use case that you're describing and the one I was referring to. Basically "only provide it when it's different from the FindBaseAddress".

JIPG-reader 04-28-2018 07:14 PM

Quote:

Originally Posted by oren64 (Post 3686193)
Missing patches from nickel.patch:

`Increase The Books Cover Size In The Library`

Spoiler:
Code:

<Patch>
patch_name = `Increase The Cover Size In Library`
patch_enable = `yes`
# Multi-version patch: 4.8.10956+
#
## See https://www.mobileread.com/forums/showpost.php?p=3241532&postcount=82
#
find_base_address = `\x3C\x78\x9C\xAD\x59\x5D\x8F\x9B\x38\x14\x7D\x9F`
replace_bytes = 0000, 3C 78 9C AD 59 5D 8F 9B, 3C 78 9C AD 59 DB 8E D3
replace_bytes = 0008, 38 14 7D 9F 5F 11 75 DE, 3A 14 7D 9F AF A8 E0 0D
replace_bytes = 0010, AA 8D 44 20 10 48 D5 87, 51 29 97 26 4D 8A 78 60
replace_bytes = 0018, CE 56 AB ED 6A B6 3B FD, 40 47 70 34 07 86 8B E0
replace_bytes = 0020, D0 F6 61 55 55 1E 70 12, 01 21 E4 49 DC D6 67 52
replace_bytes = 0028, EF 10 4C 8D 99 24 5A F5, 3B 38 CE B4 15 9A 7F C7
replace_bytes = 0030, BF D7 60 20 80 AF ED C9, CD 3D F1 8E D3 34 CC BC
replace_bytes = 0038, B0 33 6F 07 E3 73 EC 7B, AD 38 5E 2B DE CB 7B 6F
replace_bytes = 0040, 7C EF C5 79 39 FB EF 6A, BB CF 66 BF AF 66 B3 3B
replace_bytes = 0048, 36 BB 47 F1 C3 96 D1 32, 14 DC 6F 38 4B 69 B8 9A
replace_bytes = 0050, 4B D6 B3 C3 8E 70 FC EA, ED B7 44 E0 17 57 8F 57
replace_bytes = 0058, EA C7 D5 5B 86 B6 34 BB, 6F 38 DA 30 7A 43 12 F1
replace_bytes = 0060, 25 05 FF 42 92 2D E6 FF, 8D 84 1B 2C BE FF 7A 15
replace_bytes = 0068, 7C 7F 93 E7 DF 12 FC 48, C7 3F 43 FC 40 02 FC 2E
replace_bytes = 0070, 62 FC AE F8 CC 48 4A B7, F9 C2 49 C4 36 C7 97 82
replace_bytes = 0078, A7 D7 9C 95 F8 6B 3D C9, A7 F8 47 36 C9 0E 1D E6
replace_bytes = 0080, 1E 1D E7 3B 4C B6 3B BE, 5B 4C 36 5B B1 9A 99 A6
replace_bytes = 0088, 9E 2D 16 4E 7E 7C 55 81, 11 1F 5E 9C 40 42 01 50
replace_bytes = 0090, 24 03 40 31 F2 40 12 BE, 8E DC 93 50 6C 57 33 67
replace_bytes = 0098, 5B CF 7C 6F 79 1E 38 C6, D1 18 D8 C5 7E C5 9C C5
replace_bytes = 00A0, BE E7 8C E6 98 F1 D3 BC, 98 8B E3 3C 89 51 40 E8
replace_bytes = 00A8, C8 51 4C B2 AD 98 C3 1D, 46 CE 61 B5 1F 44 78 2D
replace_bytes = 00B0, 3E 48 F1 86 FF 89 D8 96, FE 43 7C 43 E8 6A 66 18
replace_bytes = 00B8, 64 F2 99 4D F6 DD 8E E2, C3 B2 6F B7 0C 53 72 E8
replace_bytes = 00C0, 8C 1C 75 B2 97 90 EC A5, 93 BD 80 64 2F 54 D9 AE
replace_bytes = 00C8, 2A 3B 58 85 8A EC 0E 83, E7 2A B2 2B 0C 92 ED 4C
replace_bytes = 00D0, 64 FB 06 D9 BE 5D B6 7C, 93 9D 3F ED 51 6D 19 96
replace_bytes = 00D8, AA 51 ED 3A AE AA FA 0C, AA BA 06 6B D5 FE D2 52
replace_bytes = 00E0, 9E 55 47 81 A3 A8 EE 30, 54 57 18 A0 DA 32 26 AA
replace_bytes = 00E8, 40 B5 EB E8 55 57 CF AC, 46 C7 E8 A4 A6 4F B7 EB
replace_bytes = 00F0, AA D1 29 AD D4 E8 74 07, 02 BA 2B B0 D6 6D 5A EE
replace_bytes = 00F8, 01 A0 BB 03 CF BA 17 EE, 42 11 5E 83 90 72 F7 32
replace_bytes = 0100, 52 DD EE 33 08 29 0F 0C, E5 24 F9 87 51 F1 39 40
replace_bytes = 0108, CA 03 BD 72 52 FC 46 33, 11 BE 91 C3 71 AE 7C 94
replace_bytes = 0110, FE 29 46 29 BE 15 C3 B1, F3 ED 25 60 A1 1C 9C C2
replace_bytes = 0118, 54 7E 91 F3 BD 15 60 21, 3A 60 DC A5 03 B0 E6 E0
replace_bytes = 0120, 09 4E 61 B5 18 77 E5 03, 14 56 BD EF 1C C8 77 39
replace_bytes = 0128, AC 12 9C C2 6A F6 9D 0F, 38 89 54 6F 1B DB 06 68
replace_bytes = 0130, F9 4E 82 93 48 CD B6 F1, 0B F0 0C DA B7 E9 45 61
replace_bytes = 0138, 3C 80 B6 01 9F 40 FB 7B, F5 6C 60 81 73 70 02 A9
replace_bytes = 0140, F9 AC B0 86 1E B0 C1 12, 3E AA 96 0D 90 16 E0 04
replace_bytes = 0148, 9C 40 6A 8E AA EB 01 A4, 52 6D 50 6D 1B D8 94 05
replace_bytes = 0150, 0D 38 81 D4 18 54 CF 03, 38 85 53 1F D3 C5 02 F8
replace_bytes = 0158, 0E 65 03 4E E1 34 C7 74, D2 02 7C BC 7A 2A 88 88
replace_bytes = 0160, B9 04 56 DA 80 3F AE AE, 70 F6 D2 5A 12 CD 13 71
replace_bytes = 0168, 39 E1 29 AE 5F DA 08 A2, 8C F0 6A 46 19 DF A1 28
replace_bytes = 0170, 79 C1 4F 29 5E CF 32 CA, 1B 80 52 B1 65 3C 1B 51
replace_bytes = 0178, F6 28 AD 07 A0 92 EF 28, 6F 7A 49 F0 3E DD DD 10
replace_bytes = 0180, AB 47 9C 0F BD 20 78 5F, 8A 13 19 AB C6 B8 5C 5A
replace_bytes = 0188, EE 6F 49 86 0B 11 AB DE, C4 4E 82 DF A3 1D 7E F9
replace_bytes = 0190, 38 29 2D A5 95 E0 F7 68, E4 7F F4 F3 DF DB 27 3F
replace_bytes = 0198, 8F 5F BF F8 17 7D FB E3, 3A 13 AC 19 0F F0 0D 46
replace_bytes = 01A0, EE C5 D7 D1 04 1B CA 62, 61 96 53 9C 6C 86 35 7A
replace_bytes = 01A8, 7C 8B 51 52 E7 94 3A 4D, 60 29 97 25 32 3C C7 3E
replace_bytes = 01B0, 5F 6F D0 23 2D 99 28 91, 65 AE 02 D2 D7 A2 4E 73
replace_bytes = 01B8, C9 53 EC D3 E6 2A B5 C8, 75 A5 81 AA 4F B1 06 7D
replace_bytes = 01C0, 75 D0 A0 FC 40 D5 A7 D9, C4 B0 85 4A 16 B5 4C 99
replace_bytes = 01C8, 03 1D 31 6C A1 96 25 50, 2E 40 0C 65 0F 67 80 18
replace_bytes = 01D0, 89 03 80 18 CA 1E BE 85, B4 51 41 62 99 0A 6F 05
replace_bytes = 01D8, 18 B4 51 43 E2 2E 14 DE, B5 2A 17 54 B8 86 78 61
replace_bytes = 01E0, 0E 1A 54 2E A8 70 D9 78, 2B 95 34 4B 95 79 09 30
replace_bytes = 01E8, 61 2B B5 34 2B 95 79 05, 83 A5 A7 60 4E 30 27 38
replace_bytes = 01F0, 30 83 A5 A7 61 2E 30 23, 19 76 53 C0 1E 30 BF 25
replace_bytes = 01F8, B8 B0 BB 29 A6 8F 98 DD, 87 1D 8A BF 12 BC 1F 61
replace_bytes = 0200, 91 E3 1E E5 7F 13 7C B8, 08 CF 51 54 56 50 33 2E
replace_bytes = 0208, C0 10 40 21 0E 1C 55 65, 06 D4 8F 18 E5 0A 69 F9
replace_bytes = 0210, 04 EC 4F D4 EE 8F 91 DD, F5 BE 30 D4 B6 AB C6 5A
replace_bytes = 0218, E8 8A 95 CA BE 02 D8 4D, E5 0C 52 60 9F A5 40 67
replace_bytes = 0220, 4D 9C 8D DF 64 8E 85 03, 10 13 E8 FB 5A 8D 56 9D
replace_bytes = 0228, 54 F3 0E EB 0B 08 42 40, 63 81 6C 5F 80 83 02 B4
replace_bytes = 0230, 80 04 AD 02 8C 2E 19 34, 4E 31 5D 68 73 00 BB C3
replace_bytes = 0238, 7A 0A D6 F7 C9 02 90 D0, 82 D6 C0 D2 AF C1 E5 8D
replace_bytes = 0240, 80 3A 09 CF 6F 22 1A 25, 44 69 07 35 65 78 50 CA
replace_bytes = 0248, A1 9A 2E 42 28 5D 40 26, 80 8C 6C 56 4E BE 58 9B
replace_bytes = 0250, 5E 74 2E 7E B6 36 A3 77, D6 3D BE A7 B6 91 1E 94
replace_bytes = 0258, 22 35 76 11 14 3A 1F CA, 55 A0 7C E6 2C A6 6A D3
replace_bytes = 0260, 65 FE 72 AA 36 A3 AF 7C, FA CA 51 33 4F 8D B5 82
replace_bytes = 0268, 35 EB 9C B1 41 5D 05 F2, 0A E4 BC 02 9C 24 4E EF
replace_bytes = 0270, 5D 03 4E 12 67 F6 5C 04, 39 1F F0 9C 0F 78 CE 36
replace_bytes = 0278, 24 E3 08 C8 C6 9E 03 C8, 00 79 05 78 86 BC 71 4D
replace_bytes = 0280, 6B C0 27 C8 BB AC C1 B9, 4E 95 00 D4 B8 D6 58 33
replace_bytes = 0288, FC 4C 02 DD 57 03 4E 10, B0 2E B4 27 5D ED 9E BC
replace_bytes = 0290, 67 AE 62 2E B0 73 2E 54, B8 19 AA DB 7D E8 08 00
replace_bytes = 0298, C7 22 28 61 44 4F 3D AD, 88 6B BA B3 03 4E 10 A7
replace_bytes = 02A0, 17 35 4C 5D 04 81 DA 1E, 35 9D 0F D4 77 1F D8 AD
replace_bytes = 02A8, 01 A7 D5 83 BE D2 1A 70, 36 74 52 2B C0 29 DA F4
replace_bytes = 02B0, 8A 36 73 35 EC B7 E8 0A, 15 D1 51 4F 7D 35 D6 54
replace_bytes = 02B8, D6 57 17 41 EA 22 9D 3A, E7 43 EA FC 3E 75 24 B9
replace_bytes = 02C0, 52 DC D1 F8 01 73 6B 28, 65 C1 3D 16 83 A1 7C 0E
replace_bytes = 02C8, 7F 81 DE FD C4 51 FC 70, BD FB 59 A0 E0 7E B4 0B
replace_bytes = 02D0, B1 0B 42 35 65 87 D3 AB, 3C B5 6A 78 50 D1 D0 5C
replace_bytes = 02D8, 96 69 25 FD B8 5F B6 10, 3F 8C FC 92 66 DC C7 7D
replace_bytes = 02E0, 73 F9 03 6A 8F 03 AD C4, 88 D6 31 67 D7 5F CD 8D
replace_bytes = 02E8, 70 1B 71 E9 4A 06 2E B9, C4 D8 2F 69 B9 64 E4 B7
replace_bytes = 02F0, 70 2D E6 AC E6 01 AB F1, E8 B3 9A 0D 7C 8D 3D BE
replace_bytes = 02F8, A0 D5 84 50 E2 08 5B 87, 98 87 6C 4F 23 86 C2 D7
replace_bytes = 0300, 25 F4 90 A5 14 25 BF 0A, D2 F0 48 36 5A 7C C8 19
replace_bytes = 0308, C3 23 D1 64 31 9B 33 F4, F0 01 BF 7B D9 C2 4F 3C
replace_bytes = 0310, 97 29 FD 67 AC E2 19 DE, CD 87 C3 54 4A EC 60 A6
replace_bytes = 0318, B4 D8 A8 94 D8 E9 2F 40, EE 05 49 8B C9 32 CE 62
replace_bytes = 0320, B4 4C F2 76 C4 CA A4 EE, 52 57 B6 87 CB D5 71 B9
replace_bytes = 0328, AC FE CA 42 CF 55 DF 67, 19 17 97 67 15 19 43 91
replace_bytes = 0330, 5C 33 F1 9D 22 62 C8 4B, E6 CD 6B 8C C2 FC E8 52
replace_bytes = 0338, D9 B8 E6 28 91 9F 2D AD, DA 25 E6 92 15 EF AF 91
replace_bytes = 0340, 5D 72 26 58 F1 E1 06 89, 3C BB 69 0A 83 F4 46 72
replace_bytes = 0348, EF 36 43 61 10 DE 28 4E, A4 C1 37 C4 A9 7C 7D A8
replace_bytes = 0350, 59 FC 05 B1 4C BC 6E AB, 82 14 2C 99 D8 53 4E CE
replace_bytes = 0358, 20 0D 4B 2D B6 CA C9 32, 23 5C A2 BC 6C 49 06 25
replace_bytes = 0360, C2 2D CA DA 96 C4 2A 61, 74 73 46 AF 04 D5 07 1D
replace_bytes = 0368, 9C 33 B4 12 54 1F 8C 24, 09 0E 2C C1 19 94 D0 D9
replace_bytes = 0370, F8 B0 04 DF 2A 61 74 D8, EC BD 0A 14 7B B4 05 94
replace_bytes = 0378, B5 0A 14 7B 0C 05 B4 9F, C7 9A 8E 00 6B 38 0C CA
replace_bytes = 0380, 34 23 01 AE 3D 0C CA 19, 1E ED 97 A0 FA A6 23 C2
replace_bytes = 0388, D5 4B 50 7D 33 12 11 C0, 85 45 94 AD E1 1D E3 9C
replace_bytes = 0390, 22 DA D6 F0 9E 32 46 0F, ED 73 B7 FC DD 10 F7 CF
replace_bytes = 0398, D2 2D FF 6F 88 F5 33 4F, 3C 35 72 FD 33 4F 8C 88
replace_bytes = 03A0, 8D 9C 7E E6 89 11 31 4C, 66 E2 A9 EB 2C 37 EC 86
replace_bytes = 03A8, 3C 75 9F C5 81 DD 32 5C, E3 24 B9 46 F9 FD 84 A4
replace_bytes = 03B0, 14 37 48 DE 4D 08 AA 04, 0A 31 2F F6 64 F3 EA 7D
replace_bytes = 03B8, B3 E6 4C F6 AF DD E7 31, 1E B0 88 C9 07 4F AF 5F
replace_bytes = 03C0, 4D A9 78 70 7D F3 A6 FA, 9D FE F3 DC 79 DA DE 73
replace_bytes = 03C8, 97 B9 B3 3A DE 73 4E 73, C1 62 59 88 CB 74 9A 41
replace_bytes = 03D0, 51 88 DB 74 5A 43 F7 94, 77 4C 08 B6 2B D0 36 CB
replace_bytes = 03D8, 73 BA 6F D0 21 8B B5 E3, 60 C7 D7 3C 71 79 AD 59
replace_bytes = 03E0, EB 7F EE 84 83 59 87 F1, DB F1 2D 40 75 07 F7 50
replace_bytes = 03E8, 6D 40 F5 04 6B A8 80 CA, 01 95 BB 41 E5 99 10 95
replace_bytes = 03F0, DD A3 0A 17 10 95 0F 52, 03 52 39 43 54 6A 6D 6D
replace_bytes = 03F8, F9 36 2A B5 B6 F6 7A 9B, F4 36 75 57 D8 60 AA AE
replace_bytes = 0400, 73 57 D8 63 EA AE 19 06, 1A 5A 4C 8D 2D D9 C7 04
replace_bytes = 0408, 4C BD 23 A9 63 02 2A 5F, 54 BE 06 97 6F 41 5C 2E
replace_bytes = 0410, 8F 2B 72 21 AE 00 E4 02, C8 05 38 62 B5 0A B6 29
replace_bytes = 0418, 1C B1 5E C7 BB 32 7B 18, BD EF FC 08 53 39 C1 C8
replace_bytes = 0420, FD 00 D3 39 C1 A9 FF 94, FE 94 9C D1 CE 0B D9 CB
replace_bytes = 0428, 9C 31 CC 0B F5 CB 1C 1F, 02 1F C4 5C 70 44 93 35
replace_bytes = 0430, F9 9C 33 94 15 1B CA 84, E3 D2 17 69 2C AB 44 80
replace_bytes = 0438, 2F CA 5C 54 89 18 15 58, 12 9C 5F 7B 05 82 30 DA
replace_bytes = 0440, 5E 79 C5 9C D0 6C 7C 9B, BD D1 C8 AE B7 3E E1 58
replace_bytes = 0448, 51 5F 6D 7D C4 B9 A8 4A, 56 25 F1 81 BE A3 B2 1B
replace_bytes = 0450, FC AF EC 5D 26 BA 01 21, 90 32 4F DF D9 AE 34 5B
replace_bytes = 0458, B3 5A E7 B0 D2 EC 84 FE, A9 FF 63 8A 22 22 8E E5
replace_bytes = 0460, 0F 25 4A 09 3F B5 83 36, A0 35 8A B2 A9 FF 00 35
replace_bytes = 0468, 28 95 53 FF 04 43 AA F7, E4 F7 EC 00 00 00 00 00
replace_bytes = 0470, 65 00, 00 00
</Patch>



`Increasing The View Details Container`

Spoiler:
Code:

<Patch>
patch_name = `Increasing The View Details Container`
patch_enable = `yes`
# Multi-version patch: 4.8.10956+
#
## See https://www.mobileread.com/forums/showpost.php?p=3311354&postcount=134
#
find_base_address = `\xBC\xFB\x2B\x0C\xF8\x5A\x03\x12\xF5\x88\x95\x22`
replace_bytes = 0000, BC FB 2B 0C F8 5A 03 12, BC FB 2B 0C F8 5A 03 16
replace_bytes = 0008, F5 88 95 22 87 B4 29 D0, F5 88 9C A2 87 B4 29 D0
replace_bytes = 0010, 1C 0A 14 49 80 1E 8A A2, 1C 0A 14 49 80 1E 82 A2
replace_bytes = 0020, 34 36 8A FE 7B 25 5B B2, 34 36 8A FE 7B 25 59 B2
replace_bytes = 0028, F9 12 B5 81 E0 DB AE 39, F9 58 51 0C 04 DF 76 C9
replace_bytes = 0030, 33 E6 CE EE D2 0B C1 AA, 99 11 77 97 43 2F 04 2B
replace_bytes = 0038, CF AC 14 98 96 84 FF 7C, BF B0 42 60 5A 10 FE F4
replace_bytes = 0040, B9 AD AA DF 29 F9 43 37, 72 53 96 BF 13 F2 87 6E
replace_bytes = 0048, E4 BE 7E E2 34 67 D9 E1, C9 5D F5 C8 69 C6 D2 E3
replace_bytes = 0050, 46 F0 57 F2 6B FE 77 36, 27 C1 5F C9 AF F9 DF D9
replace_bytes = 0058, 9F BF 54 9C 55 84 8B C3, 7C FE 52 72 56 12 2E 8E
replace_bytes = 0060, B2 39 F5 0D F3 8C 96 D7, CB 7A D7 77 CC 53 5A 5C
replace_bytes = 0068, 73 EF A3 92 C9 C9 B3 E8, CF 57 1F 95 4C 46 9E 45
replace_bytes = 0070, 53 48 CB 71 9A 6D 07 93, 9F 42 5A 8E D3 74 37 98
replace_bytes = 0078, 6B 26 04 2B FA AC DF 64, DC 30 21 58 DE 67 BD 3A
replace_bytes = 0080, FF CD 16 C3 EA BE 6F 19, FB 6F B6 18 56 F7 63 C7
replace_bytes = 0088, 29 E9 7E 82 BA C0 A5 4E, 48 41 0F 13 D4 F9 36 75
replace_bytes = 0090, 4F 6A EA A2 11 75 77 1C, 7A 52 53 17 8E A8 BB E5
replace_bytes = 0098, 67 AC 9C 20 2E 74 89 D3, 38 65 C5 04 71 81 4D 9C
replace_bytes = 00A0, 93 AA 38 34 76 75 77 F8, 9E 54 C5 A1 B1 A3 BB C5
replace_bytes = 00A8, 90 B7 70 13 E4 45 C8 21, C7 AC 81 9B 20 2F 44 16
replace_bytes = 00B0, 4F 4F 6A F2 E2 A3 BC 35, 79 7A 52 93 17 B5 F2 36
replace_bytes = 00B8, 63 BB FB F2 99 FD A0 69, 8C ED EF 8A 67 F6 93 26
replace_bytes = 00C0, 46 C4 98 F3 0A BC 5F 6E, 29 11 63 9D 97 E3 C3 72
replace_bytes = 00C8, 49 4B D2 96 C6 AB F6 2D, 47 1A 92 E6 FB 56 E5 A1
replace_bytes = 00D0, 43 41 4B 3D 38 02 6C 9A, 61 C8 69 A1 07 47 80 CD
replace_bytes = 00D8, 46 01 4E 6C C0 09 04 D8, A6 51 80 7D 08 D8 77 01
replace_bytes = 00E0, A8 B7 8C 1B 45 16 DC 2E, 36 EA 2D E3 06 90 E0 C0
replace_bytes = 00E8, 38 86 6B 96 4A 46 BE F2, 49 30 50 2A 19 39 82 90
replace_bytes = 00F0, 23 13 B9 0B 36 C8 29 69, A3 33 72 42 EA F2 67 D5
replace_bytes = 00F8, CA 9F D7 D3 FA DB 47 20, B4 F9 F6 90 13 9A E3 3C
replace_bytes = 0100, 34 60 3F FA 31 08 0D D6, 7A 91 13 9A DB FC 20 37
replace_bytes = 0108, 3F 08 26 0D EA 77 B4 52, 69 AE FD 8E 62 15 EE 3D
replace_bytes = 0110, E1 DE 63 4A 94 20 B3 12, 4D E9 AF 81 4A 74 C1 21
replace_bytes = 0118, 5D 70 08 71 C4 8D B1 A5, 44 7B 37 86 5E 68 22 76
replace_bytes = 0120, B6 5D 70 08 D1 6D C3 D8, C1 21 44 6B 1B 5E 79 80
replace_bytes = 0128, 66 C3 D8 73 02 8E F8 EF, C4 2E 38 08 68 EF BF 38
replace_bytes = 0130, 74 65 9A FF CE F7 58 D3, 06 20 BB 60 0D 59 D1 9C
replace_bytes = 0138, 82 E6 98 4F F4 9F 36 86, 66 98 4F EC 3F ED 1A AA
replace_bytes = 0140, EA 0A 6F 68 99 35 D2 01, 4A BC A5 45 5A 9F 85 03
replace_bytes = 0148, 1C 50 57 4E E1 80 79 B5, 87 6B 57 4E E1 70 EB D5
replace_bytes = 0150, 5D 19 56 8A 6E D3 8D 70, C6 32 40 8A CE E9 46 38
replace_bytes = 0158, 40 2D 3C F4 43 FC E0 C8, 5C 5B 78 E8 43 3C BF 65
replace_bytes = 0160, 82 F3 9A 3D 10 9C 8E 55, C1 59 C5 EE 09 4E C6 2A
replace_bytes = 0168, A2 C2 69 DA 9C 6B A1 FB, 51 E2 24 A9 F7 35 D0 FD
replace_bytes = 0170, 09 70 09 B6 8B C0 8C F2, 0D 70 09 36 46 60 46 F9
replace_bytes = 0178, 53 F5 CF E3 C2 4E 65 16, A9 FA E7 EB 02 A6 32 0B
replace_bytes = 0180, 44 A5 8A AC 54 91 9D 2A, A2 52 85 20 55 08 53 85
replace_bytes = 0188, 72 52 19 75 51 98 90 67, 56 2A A3 2E 0A 13 5A 41
replace_bytes = 0190, 63 D2 A3 1D 13 F2 DC 4C, 4C 7A 94 F7 EE 62 67 32
replace_bytes = 0198, 66 75 54 AE D8 CA 15 DB, AB A3 72 45 20 57 04 73
replace_bytes = 01A0, B9 FA 09 99 33 DC C6 4D, F5 37 64 C6 70 13 37 E1
replace_bytes = 01A8, B8 50 6D AF 4F CD FE A8, 02 75 BC 3E D7 FE 51 B9
replace_bytes = 01B0, 61 6B 54 DE C9 6C D7 9C, D9 A8 EC C9 6C 5F EF 11
replace_bytes = 01B8, 11 DB B6 62 C6 73 82 ED, BB A6 62 C6 73 82 ED BF
replace_bytes = 01C0, BE 76 CD EC 27 5A 92 0A, 75 C3 EC AD B5 24 15 24
replace_bytes = 01C8, 52 3C 4A ED A1 8D C1 C0, 7F 90 C6 E3 5D 16 3A A6
replace_bytes = 01D0, 32 63 BA 20 40 B1 A3 95, D8 32 4A 92 60 A4 CF 92
replace_bytes = 01D8, 24 C1 48 EF 25 59 70 A0, 2C D8 D7 1F 47 8A 60 CF
replace_bytes = 01E0, 3F 8E 14 C1 BE A1 38 B4, 50 1C 44 90 39 47 CE 8A
replace_bytes = 01E8, 4D C5 30 06 2B 76 35 A6, 6D 83 29 6B 8E 2D 87 1C
replace_bytes = 01F0, AC 79 E5 B8 E4 30 44 0E, 04 C8 A2 F9 54 1E C5 1A
replace_bytes = 01F8, CD A7 F2 28 93 3C B1 8C, D6 31 60 0D EB D8 51 B3
replace_bytes = 0200, DD 2E 08 D0 EC 1A 8A B2, ED 52 94 FB 22 B4 48 46
replace_bytes = 0208, 2F 22 87 64 14 44 AE 6B, 7E 68 3B 66 43 B2 8F 20
replace_bytes = 0210, 36 24 07 C8 F6 B6 42 DA, 7F 44 DA 31 7F CD 4B 71
replace_bytes = 0218, 35 7F 29 2A 71 78 14 58, 7C 10 58 90 0F B3 05 AF
replace_bytes = 0220, 90 0F B3 05 6F E4 92 B7, E5 92 B7 EA 12 D3 A4 56
replace_bytes = 0228, FA 12 D3 A4 D6 F2 05 D9, F2 01 41 18 96 AF 86 E0
replace_bytes = 0230, 30 1C BF DA 06 0F BF A4, DD 0F E9 CC EC 3B 31 CB
replace_bytes = 0238, 33 73 00 62 96 5D 3D 4E, 5D 3D 4E 6C 99 81 33 6F
replace_bytes = 0240, EC E8 81 33 6F 08 E3 55, E0 C6 AB F4 A6 03 B3 AD
replace_bytes = 0248, BC 09 60 76 79 F9 B2 12, 97 2F 96 88 5A EE 37 5E
replace_bytes = 0250, D1 91 FB 8D 37 15 7F 38, 57 FC BE 05 6C 57 6E F0
replace_bytes = 0258, 02 1E BF B9 C6 9B 5D C6, 76 9F 72 F6 5A 24 CB 2D
replace_bytes = 0260, D9 6B 99 2E 37 2C 67 FC, CB 18 BF 9E 2F 92 75 F3
replace_bytes = 0268, 7A BE 48 93 F6 73 52 9A, 3B 29 CD 68 42 DC 1F 02
replace_bytes = 0270, D3 94 C0 1F 02 6A 2F 76, EA 2C 76 8D A3 0C 6D DF
replace_bytes = 0278, C6 51 9A B6 F7 8D 0B D7, 37 36 5C E0 7D 25 CF 0B
replace_bytes = 0280, F2 BE 52 5E 3E 26 6E 04, 80 1B 3A E1 9A AF 2C F9
replace_bytes = 0288, C2 35 5F 59 F2 EB C7 33, 41 B5 32 61 AF 56 4E B0
replace_bytes = 0290, 61 AF 3C 10 AC E5 AD 25, C0 5B 4B 02 5E 03 C0 E7
replace_bytes = 0298, 01 27 16 E0 F3 7F 93 B6, F7 65 53 86 9B 2C 73 B5
replace_bytes = 02A0, 0C B7 79 0E 5D EB FA AE, 75 DD AB C1 ED C3 56 DD
replace_bytes = 02A8, B6 1E 1F 5E D5 FD F1 D8, 6F 8F 6C DB 07 ED B7 F7
replace_bytes = 02B0, 75 7C 70 FD F6 7B CE 49, 39 2B B9 C5 52 FB FD 31
replace_bytes = 02B8, EE 58 A9 FD F9 95 65 76, 70 77 3C 92 83 90 17 D7
replace_bytes = 02C0, 3C 91 BD 90 BF DC FC 89, 7F 62 DB 55 FF 01 18 BF
replace_bytes = 02C8, 3D 7D EB 3F E0 D6 DF 9D, DF 59 00 00 00 00 00 00
</Patch>



Is the patch `show games on Beta Features` available for FW 4.8.10956?

geek1011 04-28-2018 09:33 PM

Quote:

Originally Posted by JIPG-reader (Post 3688064)
Is the patch `show games on Beta Features` available for FW 4.8.10956?

It does not seem to work with the old one even though it applies successfully, but I haven't tried to fix it.

oren64 04-29-2018 04:12 AM

Quote:

Originally Posted by JIPG-reader (Post 3688064)
Is the patch `show games on Beta Features` available for FW 4.8.10956?

The patch `show games on Beta Features` should work on this firmware.

geek1011 04-29-2018 02:29 PM

Quote:

Originally Posted by oren64 (Post 3688183)
The patch `show games on Beta Features` should work on this firmware.

It applies but does not seem to affect anything for me.


All times are GMT -4. The time now is 04:51 PM.

Powered by: vBulletin
Copyright ©2000 - 3.8.5, Jelsoft Enterprises Ltd.
MobileRead.com is a privately owned, operated and funded community.