path: root/rbutil/rbutilqt/base/bootloaderinstallams.cpp
AgeCommit message (Collapse)AuthorFilesLines
2021-12-24rbutil: Merge rbutil with utils folder.Dominik Riebeling1-201/+0
rbutil uses several components from the utils folder, and can be considered part of utils too. Having it in a separate folder is an arbitrary split that doesn't help anymore these days, so merge them. This also allows other utils to easily use libtools.make without the need to navigate to a different folder. Change-Id: I3fc2f4de19e3e776553efb5dea5f779dfec0dc21
2020-11-21rbutil: Modernize connect() to new pointer-to-member syntax.Dominik Riebeling1-1/+1
Change-Id: I6bb86e34438eef10813f0d19e910599156a876e6
2020-11-19rbutil: Modernize code to use C++11 nullptr.Dominik Riebeling1-2/+2
Change-Id: I112cf95122a896cdb30a823b4c1f49831273dc7e
2016-08-15rbutil: enable "done" signal on bootloader uninstallCástor Muñoz1-0/+1
This allows to implement multi-stage uninstallers. Should not affect the behaviour on current targets. Change-Id: Idf8aec5caf76cf9317798890d094a7cebdbcabec
2013-11-04Use cutelogger for Rockbox Utility internal trace.Dominik Riebeling1-8/+9
Change tracing from qDebug() to use cutelogger, which is available under the LGPL2.1. This allows to automatically add filename and line number to the log, and also provides multiple log levels. Change-Id: I5dbdaf902ba54ea99f07ae10a07467c52fdac910
2013-08-18Fix typo in source string.Dominik Riebeling1-1/+1
Change-Id: Iaa3f3c34b6f6931a6620dfbe3d24cf6a57b96e77
2013-06-09Add note to AMS bootloader installation about OF file.Dominik Riebeling1-17/+19
Some devices contain a bin file in the root folder of the player. This caused confusion a couple of times, since the installer asks for a bin file. Add a note that the required file is not present on the player and will get removed automatically. Change-Id: I6cd5c25b319770555c3939377a3ed86ed3181dad
2011-10-19Remove svn keyword lines from sources.Dominik Riebeling1-1/+0
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2011-05-13Make the AMS bootloader prompt slightly more specific.Michael Giacomelli1-1/+3
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-05-24mkamsboot/rbutil/amsinfo : do not try to detect the model of a given Sansa ↵Rafaël Carré1-16/+17
AMS OF The field we thought was representative of the model is not, it has changed in the past for fuzev1 and fuzev2. For example the value 0x23 is found in 2 old fuzev1 OF versions, and in the c200v2 OF The only reliable way to detect the model of a given OF is by using the built-in list of md5sums. Modify mkamsboot and rbutilqt to load the rockbox bootloader first, and then check if the model in the bootloader corresponds to the model of the known md5sum of the given OF. That way we can continue to present the user with a list of known OF versions in case the OF is unknown to mkamsboot Also explicit the dependency of main.c on mkamsboot.h in case the prototypes change Correct the header's description not updated in r21648 git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-02-19rbutil: link to the Sansa forums when the user is requested to download a ↵Rafaël Carré1-3/+5
Sansa AMS firmware git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-02-19mkamsboot: prevents 2 potential problemsRafaël Carré1-2/+6
We checked if the new firmware block (bootloader+ucl function+packed bootloader & OF) fit in the OF file, but not if it would run properly. For example the Clipv2 OF is bigger than 0x50000 bytes uncompressed, but it fitted in this space when packed and concatenated to a packed bootloader + ucl function and dualboot code (but we use 1MB of RAM and not 0x50000 anyway). Now we check that both bootloader and OF are small enough to be unpacked at runtime: the unpacked data must be smaller than available memory and not overlap with ucl function and packed data (although the unpacked and packed data could probably overlap a bit, I don't know how to calculate this and this could be quite complex). total_size() is replaced by check_sizes() which will perform all the checks and set an error string if the firmware can't be patched. (both mkamsboot and rbutilqt modified accordingly) The second problem is that dualboot.S assumed r3 and r5 were left untouched in the device specific checks. This was undocumented and very error prone when modifying these checks. r3 is the last byte of packed copy (bootloader or OF) r5 is the entry point of uclunpack function derived from r3, so move r5 calculation after the device specific code. Even if r3 is currently unused in the device specific code, we store it in memory after copying the ucl function, when it points to the last byte of packed data (not yet copied at this point since we didn't chose if we boot the OF or the bootloader), and restore it just before using it so no restriction is placed on registers usage in device specific code. Add a new variable ucl_dest in dualboot.S set by mkamsboot.c, which represents the last bound of buffer where we copy the ucl function, and then the packed data (bootloader or OF). RAM_SIZE definition is moved from dualboot.S to mkamsboot.c new model_memory_size(), where it is a bit better documented. Tested on e200v2 and Clip+ git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-01-19Make Rockbox Utility build again and make some strings translatable. Break ↵Dominik Riebeling1-5/+10
some long lines. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2010-01-19rbutil: add a few qDebug outputs, to better track the install process in ↵Dominik Wenger1-1/+11
BootloaderInstallAms. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-11-22rbutilqt: always rename the OF to the name specified in rbtutil.iniRafaël Carré1-4/+2
The OF could have been stored by the user with a different name git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-10-26Add a pointer to the manual and wiki for finding an OF file for AMS ↵Dominik Riebeling1-5/+8
bootloader installation. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-08-15rbutil: move extern "C" declaration into mkamsboot.h Dominik Wenger1-4/+1
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657
2009-08-15rbutil: add ams sansa targets. (FS#10185)Dominik Wenger1-0/+176
git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657