How shendoxt/memcardrex works
MemcardRex is a cross-platform PlayStation 1 memory-card editor. Users open or create cards, manage and edit saves, then export cards or individual saves; they can also communicate with physical cards through supported hardware. The core card model handles card data and formats, while platform interfaces expose editing, save comparison, and card operations. README capabilities also include plugin editors and PocketStation operations. Some subsystem links are documented rather than verified in sampled source, so uncertain wiring is omitted.
Main entry points: mainWindow.cs Windows UI · MainWindow.cs Linux UI · ViewController.cs macOS UI · ps1card.cs Card model
Components 18
Platform interfaces
- Windows UI
MemcardRex.Windows/Windows/GUI/mainWindow.cs - Linux UI
MemcardRex.Linux/GUI/MainWindow.cs - macOS UI
MemcardRex.macOS/macOS/GUI/ViewController.cs
Card and saves
- Card model
MemcardRex.Core/ps1card.cs - Card files
MemcardRex.Core/ps1card.cs - Save operations
MemcardRex.Core/ps1card.cs - Save editing
MemcardRex.Core/ps1card.cs - Undo/redo
MemcardRex.Core/ps1card.cs
Hardware communication
- Hardware interface
MemcardRex.Core/Hardware/HardwareInterface.cs - Device drivers
MemcardRex.Core/Hardware - Card communication
MemcardRex.macOS/macOS/GUI/HardwareDialogController.cs - PocketStation
MemcardRex.Core/Hardware
Extensions and settings
- Plugin system
MemcardRex.Core/Support/rexPluginSystem.cs - Application settings
MemcardRex.Core/Support/ProgramSettings.cs
Other components
- User
- Save editor plugin
MemcardRex.Plugins/CrashResign/PluginInterface.cs - Local files
- Memory card device
Connections 28
- User → Windows UI: uses
- User → Linux UI: uses
- User → macOS UI: uses
- Windows UI → Card model: manages cards
- Linux UI → Card model: manages cards
- macOS UI → Card model: manages cards
- Card model → Card files: reads/writes formats
- Windows UI → Save operations: manages saves
- Linux UI → Save operations: manages saves
- macOS UI → Save operations: imports/exports
- Save operations → Local files: reads/writes
- Windows UI → Save editing: edits saves
- Linux UI → Save editing: edits saves
- macOS UI → Save editing: edits saves
- Save editing → Undo/redo: records changes
- Windows UI → Plugin system: loads plugins
- Linux UI → Plugin system: loads plugins
- Plugin system → Save editor plugin: discovers
- Windows UI → Application settings: configures
- Linux UI → Application settings: configures
- macOS UI → Application settings: configures
- macOS UI → Hardware interface: selects interface
- macOS UI → Card communication: starts transfer
- Card communication → Hardware interface: runs commands
- Hardware interface → Device drivers: dispatches to
- Device drivers → Memory card device: transfers data
- Windows UI → PocketStation: offers operations
- Linux UI → PocketStation: offers operations