Rock Star Ate My Hamster (UK) (1989) [Original].dsk
DISKTRACKSSECTORSFILESMAPINFORMATIONS
SPECIFICATION
Dump size 78989 octets (77.14 Ko)
Creator SAMdisk190122.
Format EXTENDED CPC DSK File..
Sides 1
Tracks formated 12
Tracks per side 42
Side 1 : Tracks size declared 75520 octets (73.75 Ko)
Side 1 : Tracks size real 73527 octets (71.80 Ko)
Side 1 : size difference 1993 octets
Side 1 : All Sectors size declared 95232 octets (93.00 Ko)
Side 1 : Sum DATA 7 997 977
SIDE 1
SectorSize 0 (128 octets) 0
SectorSize 1 (256 octets) 0
SectorSize 2 (512 octets) 10
SectorSize 3 (1024 octets) 0
SectorSize 4 (2048 octets) 0
SectorSize 5 (4096 octets) 0
SectorSize 6 FULL (8192 octets) 0 / 11
SectorSize 7 FULL (16384 octets) 0 / 0
SectorSize 8 FULL (32768 octets) 0 / 0
SectorSize > 8 0
TOTAL SECTORS21
Sector USED 15
Sector NOT USED 6
 
Incomplete Sector11
SectorErased11
Weak Sectors0
TOTAL - Weak Sectors 0
Sector with GAPS information 0
Sector with GAP2 information 0
Sector with GAP2 STARTER 0
Sector with GAP2 KBI 0
Sector with GAP2 L.TOURNIER 0
Overlap GAP2 CAAV 0
FDC Errors 11
EXTRA TAG Samdisk 0
OFFSET INFO 1
 
LEGEND LEGEND
Special Informations :
Normal : used : yesused : no
SectorErased : used : yesused : no
Weak or Corrupted Sector : used : yesused : no
Erased + Weak Sector : used : yesused : no
Incomplete Sector
Real Size empty
FDC Sector size :
 
ID
  Size 0 : 128 octets
 
ID
  Size 1 : 256 octets
 
ID
  Size 2 : 512 octets (normal size)
 
ID
  Size 3 : 1024 octets
 
ID
  Size 4 : 2048 octets
 
ID
  Size 5 : 4096 octets
 
ID -> Size 6 : 8192 octets
 
ID
  Size > 8
 
 

Side : 1
Size 0Size 1Size 2Size 3Size 4Size 5Size 6Size >6Size 7Size 8ErasedWeak SectorIncomplete SectorTotal WeakGAPSGAP2
00100001100011011000

TrackSectorsNb
0
C1
C6
C2
C7
C3
C8
C4
C9
C5
CA
10
1
S8K check XOR &E3 : 01°
1
2
S8K check XOR &D9 : 01°
1
3
S8K check XOR &7A : 01°
1
4
S8K check XOR &66 : 01°
1
5
S8K check XOR &85 : 01°
1
6
S8K check XOR &C4 : 01°
1
7
S8K check XOR &11 : 01°
1
8
S8K check XOR &8F : 01°
1
9
S8K check XOR &36 : 01°
1
10
S8K check XOR &13 : 01°
1
11
S8K check XOR &BF : 01°
1
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
270
280
290
300
310
320
330
340
350
360
370
380
390
400
410

SIDE 1
TRACKSECTORSSECTOR SIZEGAPFILLERSum
DATA
0105120 octets (5.00 Ko)#28#E51 002 498
116400 octets (6.25 Ko)#4E#E5652 611
216400 octets (6.25 Ko)#4E#E5650 655
316400 octets (6.25 Ko)#4E#E5521 962
416400 octets (6.25 Ko)#4E#E5432 342
516400 octets (6.25 Ko)#4E#E5790 361
616400 octets (6.25 Ko)#4E#E5797 456
716400 octets (6.25 Ko)#4E#E5779 791
816400 octets (6.25 Ko)#4E#E5781 129
916400 octets (6.25 Ko)#4E#E5782 042
1016400 octets (6.25 Ko)#4E#E5538 133
1116400 octets (6.25 Ko)#4E#E5268 997
 21 
 
SIDE 1
TrackSector
ID
SizeReal
Size
Sum
DATA
FDC FLAGSGAPSGAP2ErasedWeakUsed
0#C1512512110 64800000000 00000000----YES
0#C651251265 02600000000 00000000----YES
0#C2512512117 24800000000 00000000-----
0#C751251265 14400000000 00000000----YES
0#C3512512117 24800000000 00000000-----
0#C8512512117 24800000000 00000000-----
0#C4512512117 24800000000 00000000-----
0#C9512512117 24800000000 00000000-----
0#C551251258 19200000000 00000000----YES
0#CA512512117 24800000000 00000000-----
1#0181926218652 61100100000 01100000--YES-YES
2#0181926219650 65500100000 01100000--YES-YES
3#0181926219521 96200100000 01100000--YES-YES
4#0181926218432 34200100000 01100000--YES-YES
5#0181926219790 36100100000 01100000--YES-YES
6#0181926219797 45600100000 01100000--YES-YES
7#0181926219779 79100100000 01100000--YES-YES
8#0181926219781 12900100000 01100000--YES-YES
9#0181926219782 04200100000 01100000--YES-YES
10#0181926219538 13300100000 01100000--YES-YES
11#0181926219268 99700100000 01100000--YES-YES
 95 23273 5277 997 977 
 
FAT : DATA
SIDE 1
TrackSectorUSERNAMEEXTReadonlyHiddenSize
0#C10ROCKSTAR --2 Ko
1 row2 Ko
 

WEAK SECTORS : Weak Weak
Secteurs faibles. Leur lecture retournera des données différentes a chaque fois.
Il faut savoir qu'un secteur faible peux être aussi présent sur les autres tailles de secteur mais dans ce cas là, il sera stocké 2 ou 3 fois suivant le logiciel de dump.
ATTENTION : Un secteur défectueux sera considéré comme Weak Sectors et n'aura rien a voir avec ce système de protection.


ERASED SECTORS : Erased Erased
Secteurs ayant l'attribut effacé, les données sont tout de même possible a lire.


PROTECTION SECTEUR SIZE 6 :
* A partir d'un CPC :
Sur une disquette on peut rentrer normalement 6250 octets par piste. En pratique c'est un petit peu plus sur une 3 pouces, mais on reste loin des 8192 octets (8Ko) d'un secteur de
taille 6.
Normalement, ces secteurs sont utilisés pour effacer complètement une piste.
comme ils sont trop longs, la fin du secteur écrase le début et on se retrouve avec une piste sans secteur du tout, impossible à lire avec le FDC du CPC (mais on peut les lire sur un
Atari ST, par exemple).
L'utilisation de ces secteurs repose justement sur ça : si on essaie de copier la disquette avec discology, par exemple, il va bêtement écrire un secteur entier sur la copie, ce qui
fait qu'on ne pourra pas l'utiliser.
La solution pour arriver à copier ce genre de disquette, c'est de lancer la copie du secteur, puis, juste avant que la disquette aie fait un tour complet, d'arrêter le moteur! Ainsi,
la fin du secteur n'est pas écrite et on préserve le début.
Bien sur, on n'a pas ce problème avec un duplicateur industriel de disquettes ce qui permet de faire de la production de masse facilement et de s'affranchir des limitations du CPC.

* TRACEUSE INDUSTRIELLE :
Avec un outil de mastering tel qu'une traceuse industrielle, il est possible de créer n'importe quel type de secteur (taille 6, 7, 8...) ou piste dans les limitations non pas du
lecteur lui-même, mais dans les limites de son contrôleur de disquette.
Il faut savoir que le FDC upd765 est une puce très puissante, dont l'emploi sur l'amstrad CPC a été restreinte (c'est un 8 bits seulement).
Pour créer ce type de secteurs, il faut une traceuse industrielle, qui saura vu que le moteur de son lecteur de disquette est à vitesse contrôlable, écrire PLUS de données sur une
disquette 3 pouces, qu'un simple amstrad saurait le faire. Une traceuse trace c'est le cas de le dire en AVEUGLE sur le support physique.
Sans s'occuper des flags et autres signaux de marquage, elle écrit exactement ce qu'on lui dit.


FDC ERRORS :
Le principal problème est que le FDC retournera toujours une erreur sur la lecture d'un secteur de taille 6 : donc, impossible de savoir si c'est normal ou s'il y a un problème sur
la lecture du début du secteur, la partie utile...
L'information est accessible via le FDC Flag 2, lorsque le bit 6 est a 1, exemple : 0100 0000


INCOMPLETE SECTOR : Incomplete Sector
Secteurs dont la taille réelle est inférieur a la taille déclaré du secteur.
Nous retrouvons souvent cette information sur les secteurs de taille 6 (8192 octets) qui contienne de 6144 octets a 6304 octets de données valides.
Sur les secteurs de taille 7 (16384 octets) ou de taille 8 (32768 octets) avec des données pouvant aller de 0 octet a 8192 octets et peut être même plus, souvent utilisé comme système
de protection.


PROTECTION GAPS :
Protection utilisé par quelques éditeurs (Loriciels, Microid, Infogrames, UBI Soft, Cobra Soft, Broderburn...) permettant de lire des informations présente entre deux secteurs, et
entre l'en-tête d'un secteur et ses données.
L'amstrad cpc ne peux que lire les informations GAPS mais ne peux en aucun cas les écrire.


FDC FLAGS :
ATTENTION dans l'onglet "SECTORS" les informations des bits se lisent de droite a gauche : 76543210 76543210

Status Register 1
bit0 = MA : Missing Adress Mark (Sector_ID or DAM not found)
bit1 = NW : Not Writeable (tried to write/format disc with wprot_tab=on)
bit2 = ND : No Data (Sector_ID not found, CRC fail in ID_field)
bit3 = 0 : Not used
bit4 = OR : Over Run (CPU too slow in execution-phase (ca. 26us/Byte))
bit5 = DE : Data Error (CRC-fail in ID- or Data-Field)
bit6 = 0 : Not used
bit7 = EN : End of Track (set past most read/write commands) (see IC)

Status Register 2
bit0 = MD : Missing Address Mark in Data Field (DAM not found)
bit1 = BC : Bad Cylinder (read/programmed track-ID different and read-ID = FF)
bit2 = SN : Scan Not Satisfied (no fitting sector found)
bit3 = SH : Scan Equal Hit (equal)
bit4 = WC : Wrong Cylinder (read/programmed track-ID different) (see b1)
bit5 = DD : Data Error in Data Field (CRC-fail in data-field)
bit6 = CM : Control Mark (read/scan command found sector with deleted DAM)
bit7 = 0 : Not Used

FAT :
Table d'allocation des fichiers.
Comprend en principe au maximum 64 entrées, réparties sur 4 secteurs de taille 2 (512 octets * 4 = 2 Ko).
Chaque entrée permet de stocker les informations jusqu'à 16 Ko de données.
Les entrées sont écrites sur 32 octets.

Les FAT peuvent être présente par défaut en :
Piste 0, secteurs &C1 a &C4 (FAT pour Format DATA)
Piste 1, secteurs &01 a &04 (FAT pour Format IBM)
Piste 2, secteurs &41 a &44 (FAT pour Formats VENDOR ou SYSTEM)

Il arrive parfois qu'avec des protections spécifique nous ayons 2 FAT (exemple : Temple Of Apshai Trilogy, qui posséde une deuxième FAT non standard en piste 2, secteurs &C1 et &C1).

Il faut savoir que même les formats exotiques utiliseront une FAT classique.

L'USER 229 (&E5) correspond a l'emplacement des fichiers qui ont étés effacés.

SUM DATA :
Cette option a été ajoutée pour permettre de comparer rapidement deux dumps pour trouver des différences.
Etant données que les dumps des secteurs de taille 6 varient suivant la version de Samdisk utilisées, j'ai limité la somme aux 6144 premier octets (&1800).
Cette valeur n'a pas été choisie au hasard, c'est le minimum commun aux différents secteurs de taille 6 ayant 6Ko de données (un secteur de taille 6 ne peut être plein).

Tous droits réservés. Reproduction sans autorisation interdite. © Kukulcan