feat: 完成弹力魔盒初版固件

This commit is contained in:
2026-08-31 20:15:19 +08:00
parent 026d6d5da7
commit b63a928b92
34 changed files with 1320 additions and 781 deletions
+16 -2
View File
@@ -3,6 +3,7 @@
lp_signature_set = ABSOLUTE(0x1fd6c);
memmem = ABSOLUTE(0x1fd70);
memcpy = ABSOLUTE(0x1fd74);
@@ -240,6 +241,7 @@
_MASK_MEM_BEGIN = ABSOLUTE(0x19fc00);
_MASK_MEM_SIZE = ABSOLUTE(0x1a4);
EXTERN(
_start
@@ -269,6 +271,7 @@ pcm_decoder
mp3_decoder
);
UPDATA_SIZE = 0x80;
@@ -404,7 +407,8 @@ SECTIONS
battery_notify_begin = .;
*(.battery_notify)
battery_notify_end = .;
. = ALIGN(4);
. = ALIGN(4);
__VERSION_BEGIN = .;
KEEP(*(.sys.version))
__VERSION_END = .;
@@ -494,6 +498,7 @@ SECTIONS
*(.audio_track_data)
*(.audio_adc_data)
. = ALIGN(4);
*(.data*)
@@ -725,6 +730,7 @@ SECTIONS
} > ram0
data_code_pc_limit_end = .;
__report_overlay_end = .;
@@ -789,6 +795,7 @@ SECTIONS
}
SECTIONS
{
.data : ALIGN(4)
@@ -820,6 +827,7 @@ SECTIONS
UPDATE_CODE_TOTAL_SIZE = update_code_end - update_code_start;
}
SECTIONS
{
.data : ALIGN(4)
@@ -922,6 +930,7 @@ BTSTACK_LE_HOST_MESH_RAM_TOTAL = BTSTACK_LE_HOST_MESH_DATA_SIZE + BTSTACK_LE_HOS
BTSTACK_LE_HOST_MESH_FLASH_TOTAL = BTSTACK_LE_HOST_MESH_CODE_SIZE;
BTSTACK_CODE_SIZE = (btstack_code_end - btstack_code_start) + (btstack_data_end - btstack_data_start);
SECTIONS
{
.data : ALIGN(4)
@@ -1215,6 +1224,7 @@ SECTIONS
*(.os_code)
} > ram0
}
SECTIONS
{
.data : ALIGN(4)
@@ -1424,6 +1434,7 @@ SECTIONS
BTCTLER_RAM_TOTAL = (btctler_data_end - btctler_data_start) + (btctler_bss_end - btctler_bss_start);
BTCTLER_CODE_TOTAL = (btctler_code_end - btctler_code_start);
}
SECTIONS
{
.data : ALIGN(4)
@@ -1541,7 +1552,8 @@ SECTIONS
*(.timer.text.cache.L1)
*(.gpio.text.cache.L1)
*(.iic_hw.text.cache.L1)
driver_data_code_end = .;
driver_data_code_end = .;
. = ALIGN(4);
} > ram0
@@ -1551,6 +1563,7 @@ SECTIONS
DRIVER_DATA_CODE_TOTAL = (driver_data_code_end - driver_data_code_start);
}
SECTIONS
{
.data : ALIGN(4)
@@ -1990,6 +2003,7 @@ SECTIONS
} > ram0
}
text_begin = ADDR(.text);
text_size = SIZEOF(.text);
text_end = text_begin + text_size;
+1
View File
@@ -2,6 +2,7 @@
sdfile_vfs_ops
sbc_decoder
+1
View File
@@ -3,6 +3,7 @@
@echo off
Setlocal enabledelayedexpansion
@echo ********************************************************************************
@@ -10,57 +10,37 @@ copy ..\..\ota.bin .
copy ..\..\anc_coeff.bin .
copy ..\..\anc_gains.bin .
set "ISD_CMD=..\..\isd_download.exe ..\..\isd_config.ini -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res ..\..\cfg_tool.bin tone.cfg p11_code.bin -uboot_compress"
if not exist p11_code.bin (
echo [download] ERROR: ..\..\p11_code.bin is missing
exit /b 1
)
REM JL_BURN_KEY=1/key : USB flash keyed image; still generate nokey files
REM default / 0 / nokey : USB flash nokey image; still generate keyed files
set "NOKEY_FLASH="
set "KEY_FLASH="
if /i "%JL_BURN_KEY%"=="1" goto :usb_key
if /i "%JL_BURN_KEY%"=="key" goto :usb_key
if /i "%JL_BURN_KEY%"=="yes" goto :usb_key
set "NOKEY_FLASH=-tonorflash"
echo [download] USB burn: NO key
goto :do_isd
set "ISD_CMD=..\..\isd_download.exe ..\..\isd_config.ini -tonorflash -dev br28 -boot 0x120000 -div8 -wait 300 -uboot ..\..\uboot.boot -app ..\..\app.bin -res ..\..\cfg_tool.bin tone.cfg p11_code.bin -uboot_compress"
:usb_key
set "KEY_FLASH=-tonorflash"
echo [download] USB burn: WITH key
if not exist RS-5B88.key (
echo [download] ERROR: RS-5B88.key not found
exit /b 1
)
:do_isd
REM ---- nokey image ----
%ISD_CMD% %NOKEY_FLASH%
if exist jl_isd.fw copy /y jl_isd.fw jl_isd_nokey.fw >nul
echo [download] USB burn: WITH key RS-5B88.key
if exist jl_isd.fw del jl_isd.fw
if exist jl_isd.ufw del jl_isd.ufw
%ISD_CMD% -key RS-5B88.key
if not exist jl_isd.fw (
echo [download] ERROR: jl_isd.fw was not generated
exit /b 1
)
copy /y jl_isd.fw jl_isd_key.fw >nul
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
if exist jl_isd.ufw (
copy /y jl_isd.ufw update.ufw >nul
copy /y jl_isd.ufw update_nokey.ufw >nul
del jl_isd.ufw
if not exist jl_isd.ufw (
echo [download] ERROR: jl_isd.ufw was not generated
exit /b 1
)
if exist db_update_data.bin copy /y db_update_data.bin db_update_data_nokey.bin >nul
REM ---- keyed image ----
if exist RS-5B88.key (
%ISD_CMD% %KEY_FLASH% -key RS-5B88.key
REM isd_download returns -11 when USB is offline; image is still generated
if exist jl_isd.fw copy /y jl_isd.fw jl_isd_key.fw >nul
..\..\ufw_maker.exe -fw_to_ufw jl_isd.fw
if exist jl_isd.ufw (
copy /y jl_isd.ufw update_key.ufw >nul
del jl_isd.ufw
)
if exist db_update_data.bin copy /y db_update_data.bin db_update_data_key.bin >nul
) else (
if /i not "%KEY_FLASH%"=="" (
echo [download] ERROR: RS-5B88.key not found, cannot USB-burn keyed image
exit /b 1
)
)
REM keep default names as nokey for tools that still look for jl_isd.fw
if exist jl_isd_nokey.fw copy /y jl_isd_nokey.fw jl_isd.fw >nul
if exist update_nokey.ufw copy /y update_nokey.ufw update.ufw >nul
if exist db_update_data_nokey.bin copy /y db_update_data_nokey.bin db_update_data.bin >nul
copy /y jl_isd.ufw update.ufw >nul
copy /y jl_isd.ufw update_key.ufw >nul
del jl_isd.ufw
if exist db_update_data.bin copy /y db_update_data.bin db_update_data_key.bin >nul
@rem delete temp files
if exist *.mp3 del *.mp3
Binary file not shown.