CMFileManager PSP

From GameBrew

CMFileManager PSP
Last Updated2021/12/26
TypeFile browsers

CMFileManager PSP is a PSP application built using the unofficial PSPSDK and glib2d (modded). The user interface in this homebrew is heavily inspired and based on the LineageOS/CM file manager. The aim of this project is to provide a stable and up to date file manager that makes use of updated tools, whilst offering a modernized and user friendly interace.

CMFileManager PSP is the only homebrew that properly uses the 'move' function correctly for moving files/folder from one place to another. Unlike other file managers for PSP which copies a file from one place to another and then deletes it, which can take a while depending on the file size.


  • Copy files/folders.
  • Move files/folders.
  • Delete files/folders.
  • Multi file handling functions for copy/move/delete.
  • Edit text files. (Supported extensiosn include .JSON, .INI, .CFG, .LOG, .TXT and .MD)
  • File properties. (File size, creation time, modification time, access times, permissions)
  • Creating directories.
  • Renaming files/folders.
  • Image viewer (BMP, GIF - non animated, JPG/JPEG, PNG).
  • Dark theme mode.
  • Extract metadata from homebrew (Eboots) or ISOs. (ICON0.PNG, ICON1.PMF, PIC0.PNG, PIC1.PNG, SND0.AT3)
  • Browse other drives like flah0, flash1 and UMD (if not using PSP Go).
  • Support for both ef0:/ (internal) and ms0:/ (external) drives on PSP Go.
  • Screenshots in .PNG format. Use L + R to capture a screenshot.
  • Audio Player 16-Bit short 41K - 48K Hz. (FLAC, IT, MOD, MP3, OGG, OPUS, S3M, WAV and XM).
  • FTP connection.


That there are two releases. One is for a regular PSP's and other is for PSP Go with an external SD (M2) card. If you do not have an external memory stick in your PSP Go, you can use the regular version.

To install, enter USB mode on your PSP device.

Drag the PSP folder from the archive to the root of your memory card (if it asks to replace anything, select yes).

Exit usb, navigate to the game menu and then run CM File Manager PSP.

User guide

FTP Mode Instructions:

  • Press Start to open settings menu > FTP connection.
  • Select a network connection when the Network dialog pops up.
  • After it is connected successfully, a message will appear saying FTP Connection established IP:Port.
    • Use an FTP client like WinSCP and enter the IP and port (1337).
    • And make sure to use anonymous login.
  • Once an FTP connection is established from your server, you may not see any folders or files. If this is the case:
    • You can manually enter the path of the device like ip:port/ms0:
    • A real example would look something like:



D-Pad Up/Down - Move the cursor up/down

D-Pad Left/Right - Position the cursor to the start/end of the directory

Start - Open settings, Disable/Enable screen to save battery (FTP mode/Audo player only)

Select - Open menubar

Triangle - Bring up file options

Enter key (depending on your region) - Enter directory/open file

Cancel key (depending on your region) - Go back to previous directory/menu

L+R - Caputre screenshot

Home - Display exit dialog

Image Viewer controls:

L/R - Rotate anti-clockwise/clockwise

Up/Down - Zoom in/out

Select - Help menu

Left/Right - Previous/Next image

Analog stick - Position image after zoom

Triangle - Flip vertically

Square - Flip horizantally







  • Built with the fresh new toolchain, with upstream GCC and newlib patches.
  • Custom home menu is abandoned and no longer used. The original PSP home menu is used instead.
  • Game launcher is re-implemented along with some major improvements.
    • Allow the user to export all of its metadata contents such as ICON0.PNG, ICON1.PMF, PIC0.PNG, PIC1.PNG and SND0.AT3.
    • Metadata from ISO/CSO can also be exported.
    • PNG/PMF data will be stored in /PSP/PHOTO/HOMEBREW/ and SND0.AT3 will be stored in /PSP/MUSIC/HOMEBREW/.
  • Text editor will now display a scroll bar.
  • Text editor now allows opening .conf files.
  • Reimplemented texture loading.
    • stb_image is no longer used.
    • libpng, libjpeg, libnsbmp/libnsgif are now instead used to load png, jpeg, bmp and gif (non-animated) files respectfully.
  • Image viewer now has a properties button (Triangle) to view the image name, width and height.
  • Screenshots are back. Press L + R to take a screenshot. (Unlike before, screenshots are encoded in PNG)
  • display_driver no longer imports unused functions.
  • display_driver sets the brightness to 0 when turning off the display, and reverts back to user's brightness when display is re-enabled.
  • fs_driver has been overhauled to extend its kernel level implementation to almost every filesystem function to be used.
  • Audio player has been re-implemented.
    • dr_flac is no longer used and libFLAC is used instead. (Better performance, faster metadata loading).
    • Seeking is now implemented. Press and hold left/right to seek forward or rewind (Note: Seeking is slow on MP3 and unfortunately doesn't work on FLAC).
    • Use select button to disable/enable the display. (Unlike before, the display is now turned completely off).
    • The default behavior after a track stops playing is to play the next track in the current directory (if available).
    • Many of the decoder libs used in this project (dr_wav, libFLAC, libopus etc.) have all been updated to their latest versions.
  • Improved FTP features.
    • UMD can now be accessed via FTP. (ftp://ip:port/disc0:/)
    • Display can be turned on/off via the select button while using FTP.
    • Fixed net dialog glitches before accessing FTP.
    • Better error handling and use C++ style casts where necessary.
    • Comply with RFC2389 and RFC2640.
    • Mutex imports now only imports the required functions from ThreadManForUser used in FTP.
  • Comply with PSP's enter/cancel buttons for OSK and net dialog.
  • Comply with PSP's language for OSK and net dialog.
  • Removed unused alt font loading and slightly speed up boot process by doing so.

input_driver is no longer used as custom home menu has been removed, and thus this kernel plugin is also removed.

  • Fix UMD access in file browser.
  • Improved log messages throughout application if dev settings are enabled.
  • Removed a bunch on unused libs, unnecessary casts, code, consistency changes and overall code clean up.

External links