diskdoc4.doc

(31 KB) Pobierz
---------------------------------------------------------------------
Ô H E   Ä É Ó Ë   Ä Ï Ã Ô Ï Ò
---------------------------------------------------------------------

ÄÉÓË ÕÔÉÌÉÔÙ ÐÒÏÇÒÁÍ ÆÏÒ ÔÈÅ ÃÏÍÍÏÄÏÒÅ ÖÉÃ-20, Ã-64 ÁÎÄ Ã-128

ÄOCUMENTATION WRITTEN BY ËEVIN ÈISEL
×ITH SPECIAL THANKS TO ÍIKE ×ILLIS

ÔHE ÄÉÓË ÄÏÃÔÏÒ PROGRAM WITH VERSIONS FOR THE ÃOMMODORE ÖÉÃ-20 (OF ANY SIZE MEMORY), Ã-64 AND Ã-128 IS ONE OF THE MOST POWERFUL DISK UTILITIES THAT YOU WILL EVER OWN.  ÉT ALLOWS YOU TO NOT ONLY VIEW BUT CHANGE ANY BYTE OF DATA STORED ON ANY OF YOUR 1540, 1541, 1570, 1571, 4040 AND COMPATIBLE DISKETTES.  ×ITH ÔHE ÄÉÓË ÄÏÃÔÏÒ YOU CAN PERFORM TASKS THAT NORMALLY WOULD INVOLVE HOURS OF PROGRAMMING, ACTUALLY REPAIR "CRASHED" DISK DATA AND HAVE A LITTLE FUN ALL AT THE SAME TIME.  ÂEFORE WE DO HAVE ALL THIS FUN, WE'LL HAVE TO TAKE A LOOK AT HOW ÃOMMODORE HAS SET UP THE FORMAT OF THEIR DISKS.  ×E'LL LIMIT OUR DISCUSSION TO WHAT IS REFERRED TO AS THE ÃOMMODORE "ÇÃÒ" FORMAT.  ÔHAT'S THE FORMAT NORMALLY USED ON 1540, 1541, 1570, 1571, 4040, ÍÓÄ AND SOME OTHER ÃOMMODORE "WORK ALIKE" MACHINES AND DISKS.  ÔHERE ARE OTHER ÃOMMODORE ÇÃÒ FORMATS LIKE THAT USED ON OLDER MACHINES LIKE THE 8050, 8250, ÓÆÄ-1001 AND EVEN A SPECIAL FORMAT FOR ÃÐ/Í BUT WHILE YOU CAN READ AND MODIFY THESE TYPES WITH ÔHE ÄÉÓË ÄÏÃÔÏÒ, WE WILL NOT REALLY DELVE TOO DEEP INTO THEM AT THIS TIME.

ÉF YOU COULD SEE THE ACTUAL MAGNETIC PATTERNS ON THE DISKETTE, YOU WOULD NOTICE THAT THAT THERE ARE 35 CONCENTRIC TRACKS OF DATA ARRANGED SOMEWHAT LIKE A PHONOGRAPH RECORD EXCEPT THAT THE 35 TRACKS DO NOT LEAD INTO ONE ANOTHER.  ÕNTIL RECENTLY, THE STANDARD ÃOMMODORE FORMAT ONLY ALLOWED USE OF A SINGLE SIDE OF THE DISKETTE.  ÔHE NEW 1571 DISK DRIVE IS ACTUALLY DOUBLE-SIDED AND CAN STORE TWICE AS MUCH INFORMATION AS A SINGLE-SIDED DRIVE BY PLACING AN ADDITIONAL 35 TRACKS ON THE OPPOSITE SIDE OF THE DISKETTE.  ÉF YOU SQUINTED YOUR EYES A LITTLE HARDER YOU WOULD SEE THAT EACH TRACK IS SECTIONED OFF INTO SMALLER PIECES WHICH WE CALL SECTORS OR BLOCKS (A SECTOR IS THE SAME AS A BLOCK.)  ÂECAUSE THE OUTERMOST TRACK (TRACK #1) IS MUCH LARGER OR LONGER THAN THE INNERMOST TRACK (TRACK #35), IT CONTAINS MORE SECTORS OR BLOCKS.  ÉN FACT, HERE IS HOW IT BREAKS DOWN (THE TRACK NUMBERS SHOWN IN PARENTHESIS APPLY TO THE SECOND SIDE OF DOUBLE-SIDED DISKS):

    ÔÒÁÃË#            ÓÅÃÔÏÒ#Ó
    €&1-17  (36-52)    0-20  (21 ÔÏÔÁÌ)
    18-24  (53-59)    0-18  (19 ÔÏÔÁÌ)
    25-30  (60-65)    0-17  (18 ÔÏÔÁÌ)
    31-35  (66-70)    0-16  (17 ÔÏÔÁÌ)

ÅACH SECTOR HOLDS 256 BYTES OF DATA.  ÌET'S SEE...THAT'S 17*21 + 7*19 + 6*18 + 5*17 = 683 SECTORS * 256 BYTES IN EACH SECTOR...YES THAT'S 174,848 BYTES OF STORAGE ON A SINGLE-SIDED DISKETTE (DOUBLE THAT FIGURE FOR DOUBLE SIDED DISKS.)  ÔHE DRIVE NEEDS SOME OF THAT SO THE REAL "USER AVAILABLE" SPACE IS ACTUALLY SOMEWHERE AROUND 168,656 FOR SINGLE-SIDED DISKS AND 337,312 FOR DOUBLE-SIDED DISKS.  ÃOMPARED TO OTHER "SINGLE DENSITY" 5 1/4 INCH DISKETTE FORMATS, THIS FIGURE IS QUITE IMPRESSIVE.

ÌET'S LOOK AT THE FIRST SECTOR OF DATA, TRACK 18 AND SECTOR 0.  ÔHE DISK DRIVE STARTS STORING ITS DATA HERE, IN THE MIDDLE OF THE DISKETTE, TO SPEED UP ITS OPERATION.  ÉF YOU HAVE ÔHE ÄÉÓË ÄÏÃÔÏÒ PROGRAM, ÌÏÁÄ AND ÒÕÎ IT NOW.  ÙOU DON'T NEED IT FOR THIS DISCUSSION, BUT IT SURE WILL HELP.  ÈIT ANY KEY TO START UP THEN ENTER "18" FOR THE TRACK AND "0" FOR THE SECTOR.  ÔHE SCREEN WILL FILL WITH WHAT LOOKS LIKE SEMI-GIBBERISH.  ÙOU ARE NOW LOOKING AT A SINGLE SECTOR OF DISKETTE DATA.  ÉF YOU HAVE THE Ã-64 OR Ã-128 VERSION OF ÔHE ÄÉÓË ÄÏÃÔÏÒ, A LIST OF ONE KEY COMMANDS AVAILABLE TO YOU ARE DISPLAYED ALONG WITH A SHORT DEFINITION OF EACH COMMAND.  ÔHE ÖÉÃ-20 VERSION DISPLAYS JUST THE ONE KEY COMMANDS BECAUSE OF ITS SMALLER SCREEN, BUT PRESSING "È" DISPLAYS A ÈÅÌÐ SCREEN IF YOU FORGET WHAT THESE COMMANDS ARE.  ×E WILL SEE HOW TO USE ALL OF THESE POWERFUL COMMANDS LATER IN THIS DISCUSSION.

ÙOU ARE NOW LOOKING AT A SPECIAL SECTOR WHERE THE DRIVE STORES IT'S ÂLOCK ÁVAILABILITY ÍAP (ÂÁÍ) AND OTHER INFORMATION ABOUT THE DISKETTE.  ÔHIS SECTOR IS THE FIRST SECTOR IN THE FILE THAT HOLDS THE DISKETTE'S DIRECTORY AND IS GENERALLY REFERRED TO AS THE "DIRECTORY HEADER".  ÓUBSEQUENT DIRECTORY SECTORS CONTAIN THE NAMES AND OTHER DATA PERTAINING TO THE REMAINING FILES ON THE DISKETTE.

ÎOTICE THAT YOUR CURSOR IS IN THE UPPER LEFT CORNER OF THE SCREEN.  ÕSE THE CURSOR CONTROL KEYS TO MOVE THE CURSOR AROUND.  ÔWO INDICATORS, "VALUE" AND "POSITION", WILL CHANGE AS THE CURSOR MOVES AROUND THE SCREEN.  ÁS YOU MAY RECALL, EACH SECTOR CONTAINS 256 BYTES WHICH ARE NUMBERED (BY THEIR POSITION) FROM 0 TO 255.  ÉF YOU TAP THE ÈÏÍÅ KEY THE CURSOR'S POSITION SHOULD BE 0.  Á "CURSOR LEFT" WILL CAUSE THE CURSOR TO "WRAP AROUND" TO THE LAST SPACE IN THE SECTOR AND SHOULD YIELD A POSITION OF 255.

ÐRESS ÈÏÍÅ AGAIN AND NOTICE THE VALUE OF THE BYTE IN POSITION 0.  ÉT SHOULD BE 18.  ÔHE VALUE OF THE BYTE IN POSITION 1 SHOULD BE 1.  ÔHE FIRST TWO BYTES OF EVERY SECTOR ON THE DISK ARE "POINTERS".  ÔHEY TELL THE DRIVE WHERE THE NEXT TRACK AND SECTOR OF THE DIRECTORY FILE (THE ONE WE'RE LOOKING AT NOW) IS LOCATED.  ÔHE NEXT TRACK AND SECTOR IS TRACK 18, SECTOR 1.  ÔHE BYTE IN POSITION 2 WILL HAVE A VALUE OF 65 WHICH IS DISPLAYED BY ÔHE ÄÉÓË ÄÏÃÔÏÒ AS AN Á.  ÔHIS TELLS THE DRIVE WHICH ÃOMMODORE DISK FORMAT THE DISK IS.  ÉF THIS BYTE IS ANYTHING OTHER THAN AN Á (OR 65) THEN YOUR DRIVE WILL REFUSE WRITE TO IT.  ÉT WILL READ FINE, BUT IT WILL NOT WRITE.  ÔHE NEXT BYTE, #3 IS USED TO TELL A DOUBLE-SIDED DRIVE WHETHER OR NOT THE DISKETTE HAS BEEN FORMATTED AS A DOUBLE-SIDED DISKETTE.  ÉF IT IS SINGLE-SIDED THE VALUE OF THE BYTE IN THIS POSITION WILL BE ZERO.  ÆOR DOUBLE-SIDED, THE BYTE WILL HAVE A VALUE OF 128.

ÐOSITIONS 4-143 CONTAIN THE ÂLOCK ÁVAILABILITY ÍAP OR "ÂÁÍ".  ÄON'T EXPECT TO BE ABLE TO MAKE SENSE OF THE ÂÁÍ BY SIMPLY VIEWING IT ON YOUR SCREEN (ALTHOUGH SOME VERSIONS OF ÔHE ÄÉÓË ÄÏÃÔÏÒ TRANSLATE EACH ENTRY INTO A SMALL CHART DISPLAYED ELSEWHERE ON THE SCREEN.)  ÉT IS PLACED HERE BY THE DRIVE IN THE FORM OF BINARY NUMBERS.  ÔHE ÂÁÍ IS LIKE A ROAD MAP FOR THE DISK DRIVE.  ÉT TELLS THE DRIVE WHICH SECTORS HOLD VALID DATA AND WHICH ONES ARE FREE TO WRITE TO.  ×HEN YOU USE THE ÖÁÌÉÄÁÔÅ OR ÃÏÌÌÅÃÔ COMMAND THE DRIVE REORGANIZES ITS ÂÁÍ.  ÄON'T EVER TRY TO ALTER THE ÂÁÍ UNLESS YOU REALLY KNOW WHAT YOU ARE DOING.  ÙOU CAN REALLY MESS THINGS UP BY PLAYING AROUND HERE.  ÒEMEMBER THAT ÔHE ÄÉÓË ÄÏÃÔÏÒ DOES NOT COME WITH MALPRACTICE INSURANCE!

ÍOVE YOUR CURSOR TO POSITION 144.  ÔHINGS HERE MAY LOOK A BIT FAMILIAR.  ÔHAT'S RIGHT, YOU ARE LOOKING AT THE DISK'S NAME.  ÔHE DISK NAME IS STORED AT POSITIONS 144-159.  ÂYTES #160 AND #161 WILL BE SHIFTED SPACES (VALUE 160.)  ÂYTES #162 AND #163 CONTAIN THE DISK'S ÉÄ CHARACTERS.  ÔHOSE ARE THE TWO CHARACTERS YOU GIVE AFTER THE DISK NAME WHEN YOU FORMAT A DISK.  ÁNOTHER SHIFTED SPACE IS AT #164 AND THE NEXT TWO BYTES (165,166) CONTAIN THE ÄÏÓ VERSION IDENTIFIER- 2Á.  ÂYTES #167-170 HAVE SHIFTED SPACES AND #171-255 ARE ALL UNUSED AND CONTAIN VALUES OF 0, WHICH ARE DISPLAYED AS "@"'S ("AT" SIGNS) ON SINGLE-SIDED DISKS.  ÂYTES #221-225 ARE USED ON DOUBLE-SIDED DISKS TO STORE THE NUMBER OF SECTORS THAT ARE "FREE" IN TRACKS 36-70.  ÆOR INSTANCE, IF THE BYTE IN POSITION #221 CONTAINS VALUE OF FIVE, THAT MEANS THAT FIVE SECTORS IN TRACK 36 ARE UNUSED RIGHT NOW.

ÔRACK 18, ÓECTOR 0 (ÂÁÍ AND ÄIRECTORY ÈEADER)
---------------------------------------------

    ÂÙÔÅ    ÖÁÌÕÅ    ÄÅÆÉÎÉÔÉÏÎ
   ------------------------------------------------------------------
   0,1..... 18,1.... ÔRACK AND SECTOR OF NEXT BLOCK IN FILE.
   2....... 65...... ÃHARACTER "Á" - 1540/1541/4040 FORMAT.
   3....... 0/128... ÆLAG FOR SINGLE/DOUBLE SIDED MODE.
   4-143............ ÂIT MAP OF AVAILABLE SECTORS (ÂÁÍ.)
   144-161.......... ÄISK NAME WITH SHIFTED SPACES.
   162,163.......... ÔWO DISK ÉÄ CHARACTERS.
   164..... 160..... ÓHIFTED SPACE.
   165,166  50,65... ÃHARACTERS "2Á" - ÄÏÓ IDENTIFIER.
   167-170  160..... ÓHIFTED SPACES.
   171-255  0....... ÕNUSED FOR ÓÓ DISKS BUT MAY CONTAIN OTHER VALUES.
   221-255  ........ ÂLOCKS FREE FOR TRACKS 36-70 (ÄÓ DISKS ONLY.)


ÓINCE THE ÂÁÍ IN TRACK 18, SECTOR 0 CAN ONLY HOLD THE BLOCK MAP OF TRACKS 1-35, DOUBLE-SIDED DISKS MAKE USE OF SECTOR 0 ON TRACK 53 TO STORE A SECOND ÂÁÍ FOR TRACKS 36-70.

ÔHE NEXT TRACK AND SECTOR THAT WE NEED TO SEE IS 18,1 (FROM NOW ON, THIS IS HOW WE'LL DENOTE TRACK AND SECTOR NUMBERS.)  ÔHERE ARE TWO WAYS TO VIEW THAT TRACK AND SECTOR.  ×E COULD USE THE "Ó" (DIFFERENT SECTOR) COMMAND (THIS COMMAND IS "Â" FOR "BLOCK" ON SOME ÄÉÓË ÄÏÃÔÏÒ VERSIONS) AND ENTER THE TRACK AND SECTOR NUMBERS OF THE SECTOR WE WANT TO GO TO, ÏÒ SINCE IT IS THE NEXT SECTOR IN OUR FILE WE CAN USE THE "Î" (NEXT SECTOR) COMMAND.  ÐRESS "Î" NOW.

ÔHIS IS THE FIRST SECTOR OF THE DISK'S DIRECTORY ENTRIES AND YOU SHOULD RECOGNIZE THE NAMES OF SOME OF THE FILES ON THE DISK.  ÁS ALWAYS, THE NEXT TRACK AND SECTOR OF THIS FILE IS DEFINED BY BYTES #0 AND #1.  ÉF THERE ARE MORE THAN 8 FILES ON YOUR DISKETTE, BYTE #0 SHOULD HAVE A VALUE OF 18 AND BYTE #1 WILL BE 4.  ÔHE NEXT PART OF THE SECTOR IS DIVIDED INTO EIGHT DIFFERENT SECTIONS THAT HOLD DATA ABOUT THE FIRST EIGHT FILES ON THE DISK:

ÔRACK 18, ÓECTOR 1 (ÄIRECTORY SECTOR)
-------------------------------------

   ÂÙÔÅ     ÖÁÌÕÅ    ÄÅÆÉÎÉÔÉÏÎ
-------------------------------------------------------------
   0,1..... 18,4.... ÔRACK & ÓECTOR OF NEXT DIRECTORY SECTOR.
   2-31............. ÆILE ENTRY 1
   34-63............ ÆILE ENTRY 2
   66-95............ ÆILE ENTRY 3
   98-127........... ÆILE ENTRY 4
   130-159.......... ÆILE ENTRY 5
   162-191.......... ÆILE ENTRY 6
   194-223.......... ÆILE ENTRY 7
   226-255.......... ÆILE ENTRY 8


ÙOU MAY NOTICE THAT EACH FILE ENTRY IS SEPARATED BY TWO BYTES WHICH ARE NOT USED.  ÔHE CHART THAT FOLLOWS SHOWS THE BREAKDOWN ...
Zgłoś jeśli naruszono regulamin