@@ -65,7 +65,11 @@ void app_main()
6565
6666 spi_flash_mmap_handle_t handle ;
6767 int size ;
68- const void * main_avm = esp32_sys_mmap_partition ("main.avm" , & handle , & size );
68+ const void * startup_avm = esp32_sys_mmap_partition ("boot.avm" , & handle , & size );
69+ if (IS_NULL_PTR (startup_avm )) {
70+ ESP_LOGI (TAG , "Trying deprecated main.avm partition." );
71+ startup_avm = esp32_sys_mmap_partition ("main.avm" , & handle , & size );
72+ }
6973
7074 uint32_t startup_beam_size ;
7175 const void * startup_beam ;
@@ -76,12 +80,12 @@ void app_main()
7680 port_driver_init_all (glb );
7781 nif_collection_init_all (glb );
7882
79- if (!avmpack_is_valid (main_avm , size )) {
80- ESP_LOGE (TAG , "Invalid main.avm packbeam. size=%u" , size );
83+ if (!avmpack_is_valid (startup_avm , size )) {
84+ ESP_LOGE (TAG , "Invalid startup avmpack. size=%u" , size );
8185 AVM_ABORT ();
8286 }
83- if (!avmpack_find_section_by_flag (main_avm , BEAM_START_FLAG , & startup_beam , & startup_beam_size , & startup_module_name )) {
84- ESP_LOGE (TAG , "Error: Failed to locate start module in main.avm packbeam. (Did you flash a library by mistake?)" );
87+ if (!avmpack_find_section_by_flag (startup_avm , BEAM_START_FLAG , & startup_beam , & startup_beam_size , & startup_module_name )) {
88+ ESP_LOGE (TAG , "Error: Failed to locate start module in startup partition. (Did you flash a library by mistake?)" );
8589 AVM_ABORT ();
8690 }
8791 ESP_LOGI (TAG , "Found startup beam %s" , startup_module_name );
@@ -92,7 +96,7 @@ void app_main()
9296 }
9397 avmpack_data_init (& avmpack_data -> base , & const_avm_pack_info );
9498 avmpack_data -> base .in_use = true;
95- avmpack_data -> base .data = main_avm ;
99+ avmpack_data -> base .data = startup_avm ;
96100 synclist_append (& glb -> avmpack_data , & avmpack_data -> base .avmpack_head );
97101
98102 const void * lib_avm = esp32_sys_mmap_partition ("lib.avm" , & handle , & size );
@@ -106,7 +110,7 @@ void app_main()
106110 avmpack_data -> base .data = lib_avm ;
107111 synclist_append (& glb -> avmpack_data , & avmpack_data -> base .avmpack_head );
108112 } else {
109- ESP_LOGW (TAG , "Unable to mount lib.avm partition. Hopefully the AtomVM core libraries are included in your application." );
113+ ESP_LOGI (TAG , "Unable to mount lib.avm partition. Hopefully the AtomVM core libraries are included in your application." );
110114 }
111115
112116 Module * mod = module_new_from_iff_binary (glb , startup_beam , startup_beam_size );
0 commit comments