Git Product home page Git Product logo

Comments (4)

mungewell avatar mungewell commented on August 12, 2024

Making some progress, but a little confused about the actions of/on 'Backup.bin'. Hoping someone can give some guidance.

After installing 'Tweak' on a HX60, I can connect it to network and telnet to it. Then make changes using the (on camera) 'bk.elf' command.

$ telnet 192.168.1.101
Trying 192.168.1.101...
Connected to 192.168.1.101.
Escape character is '^]'.

BusyBox v1.13.4 (2012-07-17 15:11:04 JST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

/ # /usr/bin/bk.elf r 0x00510036
id:00510036 size:1 data:
01,
/ # /usr/bin/bk.elf w 0x00510036 0 
id:00510036 size:1 data:00, 
/ # /usr/bin/bk.elf r 0x00510036
id:00510036 size:1 data:
00,
/ # /usr/bin/bk.elf l 0x00510036
Backup load address:0x4553008
---------
BackupID:00510036 (SID:051)
info:0x4557dee
size_ofst:010467b8
attr:00 size:1 ofst:288696 data:0x45997c0

01,
/ # /usr/bin/bk.elf s           
done
/ # /usr/bin/bk.elf l 0x00510036
Backup load address:0x4434008
---------
BackupID:00510036 (SID:051)
info:0x4438dee
size_ofst:010467b8
attr:00 size:1 ofst:288696 data:0x447a7c0

What I'm not sure about is when the changes are actioned. Do they happen immediately, after the sync, or after a power cycle?
In the (randomish) keys I have change, I see them revert back automatically after a power cycle....

from fwtool.py.

mungewell avatar mungewell commented on August 12, 2024

If you change a used key (in a way you can observe the change) the effect is instant. Still not sure what the 'sync' command does....

from fwtool.py.

ma1co avatar ma1co commented on August 12, 2024

I'd suggest that we compile the list of known keys directly in OpenMemories: Platform. There are already a few properties which are needed for the tweaks.

Regarding Backup.bin in general:
When the camera boots, the contents of Backup.bin are copied to memory. Any call to Backup_read, Backup_write or similar reads or modifies the data in memory. If you call Backup_write (through bk.elf w for example), every subsequent call to Backup_read will return the modified value. So changes should be immediate, as long as the corresponding code calls Backup_read everytime and doesn't cache the value somewhere.
Since the values are only modified in memory, the Backup.bin file becomes outdated. You can write the data in memory back to the file by calling Backup_sync_all (through bk.elf s for example). Since this writes data to disk, it takes a moment to complete.
Backup_sync_all is called automatically when the camera is switched off, so you don't have to worry (as long as you don't crash the camera or remove the battery).

from fwtool.py.

mungewell avatar mungewell commented on August 12, 2024

You might enjoy the attached spreadsheet. Lots of video settings (mostly) understood.

video_settings.zip

from fwtool.py.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.