Hmm... this is interesting find. A year ago I tried using bmap_create to load an unload all my huge background files in the Silas menus from memory before gameplay(instead of just defining them as bmaps). It actually worked very well and I was pleased, except for the fact that there was a problem that made it unusable for me. It would keep returning random Invalid Pointer errors after I created them, even though it would work most of the time. It actually worked about 90% of the time, but that one error here and there made it unusable.
My process was:
BMAP* btimer;
I would switch between these steps below:
btimer = bmap_create("backtime.dds"); - Call before panel is visible in menu
ptr_remove(btimer); - Call after panel is reset and before gameplay
I also used add_folder and the bmaps were in a path. But I guess my problem may be different than the one above. I soon abandoned this method as I thought it was too unstable or I did not properly code it.