Rockbox Development > Starting Development and Compiling

Sansa E200V2 Bootloader is broken in master

(1/8) > >>

bahus:
Bootloader built from master doesn't fit in the firmware.


--- Code: ---./mkamsboot e200pf.bin bootloader-e200v2.sansa e200pf.bin.patched

[ERR]  Packed data (132960 bytes) doesn't fit in the firmware (120860 bytes)

--- End code ---

Firmware file: https://mp3support.sandisk.com/firmware/e200/e200v203.01.16f.zip


I found an old issue: https://www.rockbox.org/tracker/task/12380

But suggested workaround with --thumb flag no longer works:

--- Code: ---[ERR]  Packed data (131229 bytes) doesn't fit in the firmware (120860 bytes)
--- End code ---


Any idea how to fix? Ideally I'd like to enable multiboot/boot redirect for this device. Can I somehow disable logo or completely disable any graphic related logic and make it boot only in text mode or something.

saratoga:
What I would do is grab a .map file for an older build that works (maybe we still have them on the server?) and the map file for your build that's too big and see if any large, new items appear. It is possible something was included that could be be removed or shrunk.

bahus:

--- Quote from: saratoga on February 17, 2024, 10:25:12 AM ---What I would do is grab a .map file for an older build that works.

--- End quote ---

According to FS#12380 issue is introduced in
https://github.com/Rockbox/rockbox/commit/f443e7bbf7771ce3a79b1c2116b9cf216f15938f

I created build for earlier commit https://github.com/Rockbox/rockbox/commit/6223ad26 and it also fails to fit "as is" but works with --thumb flag. My guess it's due to more recent build tools. Still it's considerably smaller in size and can still be used for inspection:
master - 101 Kb
6223ad26 (with latest build tools) - 84.5 Kb
Official bootloader - 79 Kb

Bootloaders with map/elf files are uploaded here: https://mega.nz/file/1GAznbAJ#ClNdPEILinBuRdbmPbuUzy7MXP1NE4OvxwVlbGrgFHE


saratoga:
Yes I see in the .map the transparency blending functions take a few kilobytes.  It might make sense to disable that for the bootloader.  You could also disable the logo for the bootloader which is only shown for a split second since the bootloader on the e200v2 barely does anything.  I doubt it would even be noticeable if it weren't loaded since there is no time to see it.

bahus:
Is it safe to disable the following USB defines for bootloader:

--- Code: ---#define HAVE_USBSTACK
#define HAVE_BOOTLOADER_USB_MODE
--- End code ---

Navigation

[0] Message Index

[#] Next page

Go to full version