Reading time: 4 – 6 minutes
Tota la vida havia sentit a dir que les imatges de CD quan es graben en un fitxer tenen l’extenció .iso i a vegades algún que altre format propietari com el .nrg, que bàsicament és igual que l’iso però amb alguna capçalera canviada, però que es pot usar entre diferents programes que grabin iso’s sense problemes. Almenys això és amb el que m’havia trobat fins ara. El tema és que fa temps que vaig veure que hi havia unes imatges anomenades .bin i sempre m’havia preguntat què carai tenen de diferent els .bin i les .iso, doncs amb aquest article intento explicar-ho una miqueta.
Per tal d’entendre el perquè dels dos sistemes el que hem de mirar són els sectors que té un CD. O sigui, que la informació s’enmagatzema igual que en els discs durs, en sectors. Què pels no entesos s’acaba traduint en ‘frames’ d’audio. Com ja comentava en l’article: Diferents formats de CD-ROM hi ha dos modes de grabar CDs el 1 i el 2, aquests modes fan que els sectors siguin diferents segons els modes.
A una velocitat de reproducció normal (1x), es llegeixen 75 sectors per segon. A 2x es llegeix 150sectors per segon, etc. El temps de busqueda, mentre el disc esta rodant requereixen una posició d’inici, això redeuix les els increments de velocitat.
Com que els CDs estan dissenyats inicialment per reproduir audio quan els usem per enmagatzemar dades necessitem unes capçaleres adicionals i una correcció d’errors en cada un d’aquests sectors. A continuació podeu veure les diferencies que hi ha entres els sectors segons els modes 1 i 2.
El text que segueix l’he extret directament de: The Code Project – Bin2Iso.
Mode 1 Sectors
Mode 1 sectors are intended for the storage of computer data and contain the following fields.
- Sync (12 bytes) which is used to enable the player to identify the start of each sector.
- Header (4 bytes) consisting of Minutes, Seconds, Sectors and Mode (= 1).
- ECC (Error Correction Code – 276 bytes), which comprises an additional level of CIRC error protection.
- EDC (Error Detection Code – 4 bytes) for detecting errors to be corrected.
Mode 1 sectors are the simplest type and are used for most CD-ROM based formats which follow the Yellow Book.
Mode 2 Sectors
Mode 2 sectors are used for those formats based on CD-ROM XA and can be either Form 1 or 2.
- Mode 2 Form 1 sectors contain 2048 bytes with the same ECC as Mode 1 sectors.
- Mode 2 Form 2 sectors contain 2324 bytes of user data per sector, with no ECC are suitable only for data where errors can be concealed (eg audio or video data).
Mode 2 sectors comprise the following fields:
- Sync (12 bytes) which is used to enable the player to identify the start of each sector.
- Header (4 bytes) consisting of Minutes, Seconds, Sectors and Mode (= 1).
- Subheader (8 bytes) contains content related parameters eg data type.
- ECC (Error Correction Code – 276 bytes) which comprises an additional level of CIRC error protection for Form 1 only.
- EDC (Error Detection Code) for Forms 1 and 2.
Note that Mode 1 and Mode 2 Form 1 use the same error correction so can be used interchangeably, but not within the same track and preferably not on the same disc. Software used to write CD-Rs can be set for Mode 1 or Mode 2 Form 1. Almost all PCs and Macs will read Mode 2 Form 1 CD-ROMs as well as Mode 1.
Note that any CD-ROM will contain at least some Mode 1 or Mode 2 Form 1 sectors.
Capacity
The capacity of a CD-ROM depends on whether it is a Mode 1 CD-ROM or Mode 2 CD-ROM XA. Assuming the maximum size is 76 minutes 30 seconds (as recommended) this means that there are 336,300 sectors on a CD-ROM. From this must be subtracted 166 sectors at the start of track 1 plus a few sectors for the file system, amounting to, say, 200 sectors leaving 336,100 sectors for user data.
- Mode 1 sectors contain 2048 bytes per sector giving a total capacity of 688,332,800 bytes or 656MB (where 1 MB = 1024 * 1024).
- Mode 2 sectors contain either 2048 or 2324 bytes per sector so will have a somewhat higher data capacity depending on the mix of the two types of sector.
The above assumes a CD-ROM comprising a single track in a single session. For multiple track/session discs the data capacity will be reduced.
With this information, now it is easy to develop a program to convert one image format to another.