summaryrefslogtreecommitdiff
path: root/utils/zenutils/notes.txt
diff options
context:
space:
mode:
Diffstat (limited to 'utils/zenutils/notes.txt')
-rwxr-xr-xutils/zenutils/notes.txt77
1 files changed, 77 insertions, 0 deletions
diff --git a/utils/zenutils/notes.txt b/utils/zenutils/notes.txt
new file mode 100755
index 0000000000..0848718ac2
--- /dev/null
+++ b/utils/zenutils/notes.txt
@@ -0,0 +1,77 @@
1zenutils is a collection of utilities for working with firmwares of the Creative Zen range.
2
3The utilities are split into 3 categories:
41) update_*
5 Operates on the Creative firmware updater executable.
62) firmware_*
7 Operates on the Creative firmware archive.
83) zen_crypt
9 Operates on the parts of the firmware archive which requires cryptography.
10
11
12General usage:
13--------------
14A typical use scenario would be: download the firmware updater and run
15 update_extract on it to obtain the firmware archive which it contains.
16Run firmware_extract on the firmware archive to obtain the files
17 which the firmware archive contains and a make file that can later be used
18 to create a new firmware archive. Edit* the extracted files of
19 interest and optionally the associated make file. Create a new firmware
20 archive by running firmware_make. If a NULL entry is present in the firmware
21 then it's signature has to be updated running zen_crypt. If on windows, you
22 can use update_patch to write your newly created firmware archive to the
23 updater executable which you originally extracted it from. The new updater
24 will update your player with the modifications you've made.
25
26* If you're creating or editing executable code, such as the CENC or ŠTL entries,
27you'll need to use zen_crypt to decrypt and/or encrypt them.
28In addition, executable code on some players that use the ŠTL entries also needs
29 to be signed using zen_crypt, prior to encrypting them.
30Encrypting FBOOT and FRESC is not supported, as these contain the executable
31 code that makes up the critical Rescue Mode software, contained in flash.
32As opposed to CENC and ŠTL which ultimately ends up being stored in the players
33 filesystem as a file named Jukebox2.jrm.
34
35
36Important:
37----------
38The only entries required in a firmware archive is CINF and if present, NULL.
39Including either FBOOT, FRESC or EXT0 in your firmware archive is not advised,
40 the first two are required for the Rescue Mode software operation and EXT0 is
41 unknown, but given that it's contents is sent to an internal device named mcu0,
42 the consequences of failure could be fatal to your player.
43
44
45Supported players:
46------------------
47zen_crypt supports signing, verification, decryption and encryption on the
48 following Creative Zen players:
49 Vision:M (default if no player is specified)
50 Vision W
51 Micro
52 MicroPhoto
53 Sleek
54 SleekPhoto
55 Touch
56 Xtra
57
58The other utilities are not player specific and may work on players not listed.
59Although the Vision:M is the only player I've fully tested.
60
61
62Building the sources:
63---------------------
64The source code uses the CMake (www.cmake.org) build system.
65Once you've installed CMake, you'll need to run it to produce make files for
66 your system. I would recommend producing the make files within in the 'build'
67 directory of this package. Which can be done by typing:
68 zenutils\build\>cmake -g "Visual Studio 8 2005" ..
69 (for msvc8 on windows)
70 or:
71 ~zenutils/build/$ cmake -g "Unix Makefiles" ..
72 (for various 'nixes)
73The windows example will produce a solution file for msvc8.
74The 'nix example will produce a makefile which can be built using make.
75
76The executables will be placed within the 'bin' directory, once built.
77