Not sure if real/original Ace3DS X do have this issue.
I just get this Ace3DS X from here, https://www.aliexpress.com/item/1005005333119692.html
After some tinkering, find out that this card have normal 16mbit flash for ds mode, but only 8mbit flash for ntrboot mode.
(I do take it apart and read/write the 8mbit flash with flasher, so I'm sure it's really 8mbit one.)
However, if i dump flash with ntrboot_flasher, they both appear to be 16mbit.
The ntrboot one is looped twice with that 8mbit flash's content.
After tested, if the injected firm is bigger than 0x100000 - 0xAE00 bytes, it'll start overwriting from the begin of the 8mbit flash and corrupt the real firmware section and brick it.
I'm not sure if there's a good way to check this apart from crudely comparing hig-8mbit and low-8mbit of the flash (maybe just partially?)
Support for the second flash size would need to be added. The mirrored dumping is due to it trying to dump 16Mbit from the 8Mbit flash. Currently it has no way of knowing the second flash is 8Mbit
Not sure if real/original Ace3DS X do have this issue.
I just get this Ace3DS X from here, https://www.aliexpress.com/item/1005005333119692.html After some tinkering, find out that this card have normal 16mbit flash for ds mode, but only 8mbit flash for ntrboot mode. (I do take it apart and read/write the 8mbit flash with flasher, so I'm sure it's really 8mbit one.) However, if i dump flash with ntrboot_flasher, they both appear to be 16mbit. The ntrboot one is looped twice with that 8mbit flash's content. After tested, if the injected firm is bigger than 0x100000 - 0xAE00 bytes, it'll start overwriting from the begin of the 8mbit flash and corrupt the real firmware section and brick it.
I'm not sure if there's a good way to check this apart from crudely comparing hig-8mbit and low-8mbit of the flash (maybe just partially?)
Here's the ntrboot.log:
and the dumped flash: Ace3DSPlus-X-ntrboot.zip