There are two ways PCSX2 stores these files, depending on whether you are using the "Portable" version of the emulator or the "Installed" version.
class PortableMemoryCard: def (self, portable_root_path): """ Initialize portable memory card manager
Keep your 100% completion files, RPG saves, and custom rosters on a single, primary card.
# Save collection metadata metadata_file = collection_path / "collection_info.json" with open(metadata_file, 'w') as f: json.dump(collection_info, f, indent=2) pcsx2 save file collection memory card 1 portable
def setup_backup_tab(self): # Source selection ttk.Label(self.backup_frame, text="Source Memory Card:").pack(pady=5) self.source_card_combo = ttk.Combobox(self.backup_frame, state="readonly") self.source_card_combo.pack(fill=tk.X, padx=10, pady=5)
A portable collection of PCSX2 save files refers to keeping your memory card files (typically mc01 and mc02 for Memory Card 1 and 2, respectively) in a portable location. This can be a USB drive, an external hard drive, or any folder you can easily access and move around. The benefits of a portable collection include:
restore_frame = ttk.Frame(self.backup_frame) restore_frame.pack(fill=tk.X, padx=10) There are two ways PCSX2 stores these files,
Using a Folder Memory Card is a game-changer for a large collection. To create one, go to Config -> Memory Cards in PCSX2, click "Create...", and select "Folder" as the type. Give it a name (e.g., "My Collection"). Once created, assign this new folder card to Slot 1 or 2. PCSX2 will now treat that folder on your PC as a memory card. You can then copy any number of individual game save folders directly into it.
backup_to_collection() local card=$1 local collection=$2
Create separate .ps2 files for different genres. This can be a USB drive, an external
By default, PCSX2 creates two virtual memory cards, Memory Card 1 and Memory Card 2, which are stored on your computer's hard drive. These memory cards can be configured to have different sizes and can be used to store save files for various games.
ttk.Label(dialog, text="Card Name (e.g., Mcd002.ps2):").pack(pady=5) name_entry = ttk.Entry(dialog) name_entry.pack(pady=5, padx=20, fill=tk.X)