Nintendo DS (#56, ARM9 ARMv5TE + ARM7 stub + 256×192 dual-screen) pushes the RetroPie fleet to 56 LAUNCHABLE. sigil-fs lands ntfs_move_in — NTFS cross-directory rename that atomically updates both the $FILE_NAME field and ParentRef in a single MFT write — completing all four root/nested cross-dir combinations for NTFS. A capabilities doc commit closes every stale VFS write follow-up: all NTFS, FAT, and exFAT write ops are now wired. MANIFEST 363, ALL PASS. (sigil-retropie 6d9c8d6; sigil-fs 0d7a199, d9f0b71)
Nintendo DS — system #56 (6d9c8d6)
cores/nds.sg — the dual-screen handheld (Nintendo, 2004).
nds_render fills both FBs from their respective engine buffers in ARGB format.uart=56 PASS. apps/nds (EL0), loads /roms/game.nds. First dual-screen console in the fleet.
ntfs_move_in (0d7a199 — sigil-fs) — NTFS cross-directory file move
ntfs_move_in(old_parent, old_ptr, old_len, new_parent, new_ptr, new_len, out):
- MFT scan for
old_name+ oldParentRefcheck (same approach asntfs_rename_in). - Atomic update: sets
$FILE_NAME.FileNametonew_nameAND$FILE_NAME.ParentReftonew_parentin a single MFT record write.
The vfsdev_rename_path NTFS branch now handles all 4 rename/move combinations:
| Case | Handler |
|---|---|
| root → root | ntfs_rename (unchanged) |
| root → nested or nested → root | ntfs_move_in (root sentinel: record 5) |
| nested → nested, same parent | ntfs_rename_in |
| nested → nested, different parents | ntfs_move_in |
Test: ntfs_movein_test output ABCDEFG — includes ParentRef verification, confirming the ParentRef was actually updated in the MFT record, not just the filename string.
MANIFEST 363 entries, ALL PASS
VFS write surface complete (d9f0b71)
A doc commit closes every stale "follow-up" or "unwired" label in the capabilities doc. The VFS write surface is now the broadest it has ever been — every op required for a working userspace file manager is wired on at least NTFS + FAT + exFAT.