Understanding DAT Processing
Processing transforms raw DAT files into an organized structure by:- Loading and validating DAT file contents
- Applying filters to select specific DATs
- Executing actions (copy, deduplicate, merge)
- Saving to your configured destination
- Updating the internal database
Basic Processing Workflow
Process All DATs
Process all downloaded DATs from a seed:This processes all DAT files from
~/.datoso/tmp/redump/dats/ and copies them to your configured destination.Filtering DATs
Use filters to process only specific DAT files by name pattern:--filter parameter matches against the DAT filename, processing only files containing that string.
Combined Fetch and Process
Fetch and process in one command:Processing Actions
Datoso executes a series of actions when processing each DAT. The default action pipeline includes:Standard Actions
- LoadDatFile - Loads and parses the DAT file
- DeleteOld - Removes outdated versions
- Copy - Copies to destination with proper organization
- SaveToDatabase - Updates internal database
- MarkMias - Marks missing-in-action ROMs (if enabled)
Optional Actions
Additional actions can be enabled via configuration:Processing Multiple Seeds
Process All Seeds
Process DATs from all installed seeds:Selective Processing
Advanced Processing Options
Specify Custom Actions
Execute only specific actions during processing:LoadDatFile- Parse DAT fileDeleteOld- Remove old versionsCopy- Copy to destinationSaveToDatabase- Update databaseMarkMias- Mark MIA ROMsAutoMerge- Auto-merge duplicatesDeduplicate- Remove parent duplicates
Verbose Output
See detailed processing information:Processing Status Messages
Understanding the output:| Status | Meaning |
|---|---|
Created | New DAT file created |
Updated | Existing DAT file updated with new version |
Exists | DAT already exists and is current |
Overwritten | DAT overwritten (when Overwrite=True) |
Disabled | DAT is disabled, not processed |
Deduped | Duplicates removed via parent merge |
Automerged | Internal duplicates merged |
No Action Taken, Newer Found | Database has newer version |
Error | Processing error occurred |
Configuration Options
Essential Processing Settings
Ignore Patterns
Skip processing certain DATs with regex patterns:Output Directory Structure
Processed DATs are organized based on each seed’s rules:Each seed plugin defines its own folder structure rules. The structure above is simplified - actual organization may vary by seed.
Troubleshooting
Processing Fails
If processing encounters errors:Common Issues
“No Action Taken, Newer Found”- Your database already has a newer version
- To force reprocess:
datoso config --set PROCESS.Overwrite=True
- The DAT has been disabled in the database
- Re-enable with:
datoso dat -d seed:datname --set enabled=True
- Ensure filter string matches part of the filename
- Use quotes for filters with spaces:
--filter "Sony - PlayStation"
- Check
PATHS.DatPathconfiguration - Verify the seed’s action rules with verbose mode
Example Workflows
Complete Workflow for New Seed
Update Existing DATs
Process Specific System
Next Steps
After processing, you may want to:- Deduplicate DATs to remove redundant entries
- Manage DAT properties to enable/disable or configure specific DATs
- Work with seeds to install additional sources
Processing does not download ROMs - it only organizes DAT files that describe ROM collections. Use the processed DATs with ROM managers like ROMVault or CLRMamePro.