====== Directory Dir2Dat Guide ======
todo: document how to use RomVault for this, as that is a much better option - it represents directories using special
tags. It lets you create dats by scanning the contents of the ROMRoot, and then right clicking the ROM root and choosing "Save full dat". You can also do the same using ToSort, but to do that you need to have a blank .dat in the DATRoot.
----
**Old guide**
//This method should no longer be used, as it does not properly distinguish between empty files and folders.//
If the "ROM" consists of of multiple directories, you will want to use the "dir2dat" function of [[https://mamedev.emulab.it/clrmamepro/|clrmamepro]] with the following settings in the "Options" section.
{{:submission:clrmamepro_dir2dat_directory_hashing.png?400}}
In other words, make sure only the following boxes are checked in that section:
* Scan Subfolders
* Add MD5
* Add SHA1
* Add 0-File For Empty Folder
* Set-Subfolder Mode
* Keep Archives As Files
* Keep CHDs As ROMs
You can also press the Load button and load {{ :general:dir2dat-directory.d2d.zip |this}} dir2dat config file to achieve the same thing.
Make sure to lay out the data as with the following example.
{{:general:directory_dir2_dat_folder_structure.png?400|}}
You can test this setup is working correctly by hashing the contents of {{ :test_dir_structure.zip |this zip}} and comparing the datfile that clrmamepro creates with {{ :test_dir_structure.dat.zip |this pre-made datfile}} . Currently there is no solid solution for "directory hashing" that supports SHA256, so you can leave that hash type out.
There will also be a top-level entry called "Default" with a single empty folder, which should be deleted, or noted as to be ignored.