You likely have too many save files in your nds save folder (I forget the exact name, something like NDSSave or similar).
Check how many are in there, I believe 200 is the limit before the M3 perfect stops saving properly.
Google got me here, just wanted to add my recent experience. The max .dat files the M3 can read/recognize seems to be true yeah (think I read it before, but it's all SO long ago
)
I tried to get my GBA Yu-Gi-Oh .dat file from my primary on my secondary M3 Perfect/SD card so I could play with a mate. I renamed the primary.dat file to .dat.new and copied it to the second M3/SD card, where I renamed the already existing Yu-Gi-Oh .dat file to .dat.bak.
Then I got the message it couldn't find the .dat file:
Warning! GBA save game already exists on this card, but autosave cannot be found. Backup failed. Press A to continute
Manually looking for the .dat file in the M3 showed me both the .dat.new .dat.old could not be found! So apparently the M3 works on modified date of the file (and not alphabatically).
Anyways, I had some frustrating trial and error testing, but once I read about the 200 .dat files limit, I moved some .dat files and then my new Yu-Gi-Oh .dat files appeared in the M3 and I could load the backup with everything unlocked.
Reading gbatemp.net/threads/m3-lite-perfect-not-creating-proper-gba-save-dats.65350/, I understand there's no known method of using more than 200 .dat files, or is there?
I have 260 GBA games on 1 SD now. I have to make a choice to split it in 2 SD cards, or make a dummy .dat file to which I auto-write games to which I don't really need saving for, or just disable auto-save... (not my preference)