Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
cd_image_formats [2020/02/20 21:18] – lala | cd_image_formats [2022/10/01 06:15] (current) – atari | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | FIXME | + | ====== Different images formats ====== |
- | ===== Create CHD ===== | + | Disc images/ROMs come in a variety of formats, and over the years many formats have risen and fallen in popularity. This article focuses on the more common ones you may come across. |
- | First off, here' | + | <WRAP center round info> |
- | 1. In bin/cue it is 747,030,480 bytes. | + | For information on compressed disk images take a look at [[disk_image_compression|Disc image compression]]. |
- | 2. In PBP (maximum compression) it is 517,187,964 bytes. | + | </WRAP> |
- | 3. In CHD it is 465,566,193 bytes. | + | |
- | It's a LOT easier to batch convert **BIN/CUE** dumps to **CHD** than it is to convert them to **PBP** | + | ===== What are disc images? ===== |
- | Just place the chdman.exe into the directory where you have your **BIN/CUE** dumps, open the command line in that location (assuming | + | Disc images are a handy way of storing backup copies of your disks. For instance, |
- | < | + | Batocera can these disc images to load the contents of a game ROM into an emulator as it would have done so on the actual hardware. This is considered the most accurate way of loading the content. Fun fact: Batocera itself comes as a disc image; you're just using Etcher to burn that image onto a drive! |
- | for %i in (*.cue) do chdman createcd -i " | + | |
- | </ | + | |
- | If you want to reverse | + | To sum it a bit up, here are some of the most prominent benefits of using disk images: |
+ | * Disk images are exact replicas of disk drives or disk volumes, so they faithfully preserve all details related not only to content but also to the original files and folders structure. | ||
+ | * A disk image of an optical disk can be very useful for backing up purposes. | ||
+ | |||
+ | ===== Common file formats for disk images ===== | ||
+ | |||
+ | As we know by now, a disk image is a file stored on your disk. Like any file, it must bear a name and an extension. In other words, a file must have a file format. The most common disk image file format today is " .ISO " , but there are many other types of file formats that can be used. Here are some of them: | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | <WRAP center round info> | ||
+ | This information has been surmised from https:// | ||
+ | </ | ||
+ | |||
+ | ===== ISO and IMG ===== | ||
+ | |||
+ | There is no standard definition for ISO image files. ISO disc images are uncompressed and do not use a particular container format; they are a sector-by-sector copy of the data on an optical disc, stored inside a binary file. ISO images are expected to contain the binary image of an optical media file system (usually ISO 9660 and its extensions or UDF), including the data in its files in binary format, copied exactly as they were stored on the disc. The data inside the ISO image will be structured according to the file system that was used on the optical disc from which it was created. | ||
+ | |||
+ | ISO files store only the user data from each sector on an optical disc, ignoring the control headers and error correction data, and are therefore slightly smaller than a raw disc image of optical media. Since the size of the user data portion of a sector (logical sector) in data optical discs is 2,048 bytes, the size of an ISO image will be a multiple of 2,048. The '' | ||
+ | |||
+ | ===== Can't I use just the .bin file then? ===== | ||
+ | |||
+ | **... or I can't see my PSX/Dreamcast/ | ||
+ | |||
+ | Some emulators are capable of loading games from just the '' | ||
< | < | ||
- | for %i in (*.chd) do extractcd | + | Rockman 8 - Metal Heroes |
+ | Rockman 8 - Metal Heroes (Japan) (Track 2).bin | ||
+ | Rockman 8 - Metal Heroes (Japan) (Track 3).bin | ||
+ | Rockman 8 - Metal Heroes (Japan) (Track 4).bin | ||
+ | Rockman 8 - Metal Heroes (Japan).cue | ||
</ | </ | ||
- | For a Unix mashine you can use this little script, placed next to your ROM files. | + | This game contains 1 DATA-track, 3 AUDIO-tracks (tracks 2-4) and one CUE-Sheet file. In Batocera versions prior to v31, you would see 5 entries |
- | <code bash| cue2chd.sh> | + | |
- | # | + | |
- | for cueFile | + | |
- | echo " | + | |
- | chdman createcd -i " | + | |
- | done | + | |
- | echo "All done." | + | |
- | </ | + | |
+ | === CUE/SBI/GDI sheet recovery === | ||
- | It might take a while, depending on how many games you have in that directory. This will also leave the **BIN/CUE** files untouched | + | If you have only the '' |
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | * Pick up some [[https:// | ||
+ | * Use a dedicated tool, like [[https:// | ||
- | I'm not currently aware of any batch command line methods of creating PBP files like this FIXME. So converting | + | If you'd like to simplify your collection in your file manager, you can use the [[disk_image_compression|CHD]] compressed image format |
- | The CHD format was created with the purpose of preserving exact copies of games in a compressed format. The PBP format was created so that PSX games could run on PSPs in a compressed format (which is less compressed than the CHD format). In other words, | + | ===== I still don't understand....? |
- | **M3U** files work just like **BIN/CUE** files. You can just replace the '' | + | Even you merged all tracks to a big huge single |
+ | This is the same for the '' | ||
+ | {{ : | ||
- | <WRAP center round important 60%> | + | ===== Multi-disc games ===== |
- | If you have one of the European PSX games that features LibCrypt copy protection, you have a .sbi file in addition to the **BIN/CUE** file. The **CHD** creation process doesn't process | + | |
+ | Some games included multiple discs, which you had to switch between at certain points | ||
+ | |||
+ | To automatically load the next disc of a game, you can use a '' | ||
+ | |||
+ | <WRAP center round important> | ||
+ | Please note that even if '' | ||
</ | </ | ||
+ | To make one, simply create a text file with the same filename as your intended game name (this is what will appear in your game list. It could be anything, really). Within that text file, write the names of the '' | ||
- | ===== Different images formats ===== | + | <WRAP center round important> |
+ | If creating the playlist file with Windows, be aware of the [[https:// | ||
+ | </ | ||
- | I want you to understand some defintions | + | <WRAP center round info> |
+ | Batocera will automatically hide duplicated entries showing in the gamelist when using playlists | ||
- | === ISO and all other disc images. Just for understanding.... === | + | * '' |
+ | * '' | ||
+ | </ | ||
- | There is no standard definition for ISO image files. ISO disc images are uncompressed and do not use a particular container format; they are a sector-by-sector copy of the data on an optical disc, stored | + | ==== All the files inside of the applicable ROM folder ==== |
- | ISO files store only the user data from each sector on an optical disc, ignoring the control headers and error correction data, and are therefore slightly smaller than a raw disc image of optical media. Since the size of the user data portion of a sector (logical sector) in data optical discs is 2,048 bytes, the size of an ISO image will be a multiple of 2,048. The .iso file extension is the one most commonly used for this type of disc images. The .img extension can also be found on some ISO image files, such as in some images from Microsoft DreamSpark; however, IMG files, which also use the .img extension, tend to have slightly different contents. The .udf file extension is sometimes used to indicate that the file system inside the ISO image is actually UDF and not ISO 9660. | + | For instance, if your game' |
- | === Then? NRG, BIN, IMG? === | + | < |
+ | roms/ | ||
+ | └─ psx/ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
- | Disk images are a handy way of storing backup copies of your disks. For instance, | + | you would put the following as text into the ''Final Fantasy VII.m3u'' text file: |
- | The usefulness of creating disk images for your Audio CD s is just an example, but there are more situations in which disk images prove their worth. For instance, some software vendors choose to deliver their programs as disk images, which you can download from the Internet. A very good example of that are operating systems, which are often delivered online under the form of disk images. That's because disk images are exact replicas of physical DVD disks, and because installing an operating system usually means you have to have it on a bootable disk. If you get the operating system as a disk image, which is a single | + | <file text| Final Fantasy VII.m3u> |
+ | Final Fantasy VII (Disc 1).cue | ||
+ | Final Fantasy VII (Disc 2).cue | ||
+ | Final Fantasy VII (Disc 3).cue | ||
+ | </file> | ||
- | To sum it a bit up, here are some of the most prominent benefits of using disk images: | + | Save the text file with the file extension '' |
- | * Disk images are exact replicas of disk drives or disk volumes, so they faithfully preserve all details related not only to content but also to the original files and folders structure; | + | |
- | * A disk image of an optical disk can be very useful when you need to create multiple copies of that disk; | + | |
- | * A disk image of a hard drive that contains a Windows operating system can be used to reinstall Windows very fast; | + | |
- | * A disk image of a hard disk or of an optical disk has the big advantage of portability. Being a single file it is very easy to send it online to others or store it on an external hard disk drive, for instance. | + | |
- | === The most common file formats for disk images === | + | < |
+ | roms/ | ||
+ | └─ psx/ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
- | As we know by now, a disk image is a file stored on your disk. Like any file, it must bear a name and an extension. In other words, a file must have a file format. The most common disk image file format today is " .ISO " , but there are many other types of file formats that can be used. Here are some of them: | + | ==== A subfolder for each multi-disc game ==== |
- | * " | + | |
- | * " | + | |
- | * " | + | |
- | <WRAP center round info 40%> | + | You can opt to put all of your multi-disc games in their own subfolders instead for organization purposes. Like so: |
- | [[https://www.digitalcitizen.life/simple-questions-what-disc-image-file-iso-nrg-bin|Original Articel]] | + | |
- | [[https://en.wikipedia.org/wiki/ISO_image|Wikipedia ISO images]] | + | < |
+ | roms/ | ||
+ | └─ psx/ | ||
+ | | ||
+ | ├─ Final Fantasy VII (Disc 1).bin | ||
+ | ├─ Final Fantasy VII (Disc 1).cue | ||
+ | ├─ Final Fantasy VII (Disc 2).bin | ||
+ | ├─ Final Fantasy VII (Disc 2).cue | ||
+ | ├─ Final Fantasy VII (Disc 3).bin | ||
+ | └─ Final Fantasy VII (Disc 3).cue | ||
+ | </ | ||
+ | |||
+ | <WRAP center round tip> | ||
+ | In the case that you've organized your ROMs like this, you can use the following scripts/SSH commands to automatically generate the M3U playlists and put them into the appropriate subfolders: | ||
+ | --> Click to expand# | ||
+ | * **[[:access_the_batocera_via_ssh|via SSH]]** <wrap em> | ||
+ | cd / | ||
+ | </ | ||
+ | * For '' | ||
+ | * Run the following: <code bash> | ||
+ | for DIR in *; do echo "$(for file in " | ||
+ | </ | ||
+ | * For '' | ||
+ | * Just run the following: <code bash> | ||
+ | for DIR in *; do echo "$(for file in " | ||
+ | </ | ||
+ | |||
+ | * **Accessible the drive directly on Windows** Place the script in the '' | ||
+ | * For NTFS userdata filesystems: | ||
+ | * For '' | ||
+ | @echo off | ||
+ | for /R " | ||
+ | </ | ||
+ | * For '' | ||
+ | @echo off | ||
+ | for /R " | ||
+ | </ | ||
+ | * For FAT userdata filesystems: | ||
+ | * For '' | ||
+ | @echo off | ||
+ | for /F "eol=| delims=" | ||
+ | </ | ||
+ | * For '' | ||
+ | @echo off | ||
+ | for /F "eol=| delims=" | ||
+ | </ | ||
+ | |||
+ | From: https://forums.launchbox-app.com/topic/53467-batch-file-to-auto-generate-m3us/ | ||
+ | |||
+ | <-- | ||
</ | </ | ||
- | ==== Why is BIN not recommended :-? ==== | + | The M3U '' |
- | **... or I can't see my ROMs in the rooster anymore in PSX** | + | |
- | **BIN** support for some emulators isn't removed at all. You need a **CUE**-sheet | + | <file text| Final Fantasy VII.m3u> |
+ | Final Fantasy VII (Disc 1).cue | ||
+ | Final Fantasy VII (Disc 2).cue | ||
+ | Final Fantasy VII (Disc 3).cue | ||
+ | </file> | ||
+ | |||
+ | If doing this by hand, save the text with the file extension '' | ||
< | < | ||
- | Rockman 8 - Metal Heroes (Japan) | + | roms/ |
- | Rockman 8 - Metal Heroes | + | └─ psx/ |
- | Rockman 8 - Metal Heroes | + | |
- | Rockman 8 - Metal Heroes | + | ├─ Final Fantasy VII.m3u |
- | Rockman 8 - Metal Heroes | + | ├─ Final Fantasy VII (Disc 1).bin |
+ | | ||
+ | ├─ Final Fantasy VII (Disc 2).bin | ||
+ | | ||
+ | | ||
+ | | ||
</ | </ | ||
- | This game contains 1 DATA-track, 3 AUDIO-tracks (tracks 2-4) and one CUE-Sheet file. So you would see 5 entris in this game (4 times BIN, and 1 CUE) in your rooster. | + | ==== A subfolder for each disc ==== |
- | For this simple reason do not recommend **BIN**. If you've lot' | + | In case you want to have your disc images inside |
- | - Add the CUE file | + | |
- | - from the original file | + | |
- | - Generate online with [[http:// | + | |
- | - Annother online generator [[https:// | + | |
- | - Pick up some [[https:// | + | |
- | - Use some dedicated tool, like [[https:// | + | |
- | - Convert files from **BIN --> IMG**< | + | |
- | - Convert | + | |
- | - **Do never** convert to **ISO** | + | |
- | To make it short: If you have a **BIN** file and **NO CUE** next, then you are lost with additional audio tracks inside the ROM because only the data track works! | ||
- | So CUE is needed to make audio tracks work at all. Up for now best format is **CHD** | ||
- | |||
- | * You can enter this line to mass rename your ROM files. | ||
< | < | ||
- | for file in /userdata/roms/psx/*.bin; do mv " | + | roms/ |
+ | └─ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
</ | </ | ||
- | ==== I still don't understand....? C.U.E.?? ==== | + | you would put the following as text into the ''Final Fantasy VII.m3u'' |
- | Even you merged all tracks to a big huge file even then you need the CUE file. I'll show you :) | + | <file text| Final Fantasy VII.m3u> |
- | This is the same for the **IMG** format! | + | ./Final Fantasy VII (Disc 1)/ |
- | {{ :isobuster_cue.png? }} | + | ./Final Fantasy VII (Disc 2)/ |
+ | ./Final Fantasy VII (Disc 3)/ | ||
+ | </ | ||
+ | |||
+ | <WRAP center round tip> | ||
+ | If you set it up with separate subfolders for each disc, Batocera will display duplicate entries! It can only recognize and remove extra discs for a single game if they are in the same folder. Alternatively, | ||
+ | </ | ||
+ | |||
+ | ==== After setting up your M3U playlists correctly ==== | ||
+ | |||
+ | Batocera should | ||
+ | |||
+ | M3U playlist automatic disc control | ||
+ | * PSX | ||
+ | * Libretro/ | ||
+ | * DuckStation | ||
+ | * Libretro/ | ||
+ | * SegaCD | ||
+ | * SEGA Saturn | ||
+ | * SEGA Dreamcast | ||
+ | |||
+ | ==== Manual disc swapping ==== | ||
+ | |||
+ | In case the automatic disc swapping fails, refer to these manual disc swapping instructions below. | ||
+ | |||
+ | === RetroArch (most libretro cores) === | ||
+ | |||
+ | You can utilize RetroArch' | ||
+ | |||
+ | <WRAP center round alert 60%> | ||
+ | **Swap Disc** is for legacy purposes and should not be used. | ||
+ | </ | ||
+ | |||
+ | The following cores are confirmed to not be working with the disc control menu: | ||
+ | * SEGA Saturn | ||
+ | * Libretro/ | ||
+ | |||
+ | === DuckStation (standalone) === | ||
+ | |||
+ | You'll need a keyboard for this method. While playing the game, press '' | ||
+ | |||
+ | {{:duckstation-swap-disc.png|Screenshot showing the DuckStation UI.}} | ||
+ | |||
+ | === libretro: Opera (3DO) === | ||
+ | |||
+ | From Batocera **v34**, enable the **NVRAM STORAGE** option from the advanced system settings ('' | ||
- cd_image_formats.1582229887.txt.gz
- Last modified: 4 years ago
- by lala