_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

UNSCRATCH MAN.C

FILE INFORMATION

FILENAME(S): UNSCRATCH MAN.C

FILE TYPE(S): PRG

FILE SIZE: 2.1K

FIRST SEEN: 2025-12-01 01:48:21

APPEARS ON: 3 disk(s)

FILE HASH

4d0ef127f2543b10311517ebe6351538011557a025967938a2063953d89856fd

FOUND ON DISKS (3 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
CCS64 6 KOPIA UNSCRATCH MAN.C PRG hedning, Mattias H00r 17 1 DOWNLOAD FILE
CCS 64 6 UNSCRATCH MAN.C PRG hedning, Mattias H00r 17 1 DOWNLOAD FILE
C64 6 UNSCRATCH MAN.C PRG hedning, Mattias H00r 17 1 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

> DETECTED: COMMODORE BASIC PROGRAM (LOAD ADDRESS $0801)

00000000: 01 08 13 08 00 00 97 35  35 2C 30 3A 97 35 36 2C  |.......55,0:.56,|
00000010: 31 36 30 00 2D 08 01 00  81 49 B2 38 32 38 A4 38  |160.-....I.828.8|
00000020: 38 33 3A 87 41 3A 97 49  2C 41 3A 82 49 00 45 08  |83:.A:.I,A:.I.E.|
00000030: 14 00 42 42 B2 C2 28 34  34 29 AA 32 37 3A 97 39  |..BB..(44).27:.9|
00000040: 39 35 2C 42 42 00 6E 08  1E 00 97 39 39 38 2C C2  |95,BB.n....998,.|
00000050: 28 35 35 29 3A 97 39 39  39 2C C2 28 35 36 29 3A  |(55):.999,.(56):|
00000060: 97 35 35 2C 30 3A 97 35  36 2C 42 42 3A 9C 00 7C  |.55,0:.56,BB:..||
00000070: 08 28 00 42 42 B2 C2 28  39 39 35 29 00 9F 08 32  |.(.BB..(995)...2|
00000080: 00 4E B2 C2 28 39 39 39  29 AB 42 42 AB 31 3A 42  |.N..(999).BB.1:B|
00000090: 41 B2 42 42 AC 32 35 36  3A 4D 41 B2 38 32 38 00  |A.BB.256:MA.828.|
000000A0: AB 08 6E 00 9F 31 2C 38  2C 31 35 00 C1 08 C1 00  |..n..1,8,15.....|
000000B0: 99 22 93 55 4E 53 43 52  41 54 43 48 33 2B 13 11  |.".UNSCRATCH3+..|
000000C0: 11 00 0E 09 C2 00 99 22  54 48 49 53 20 50 52 4F  |......."THIS PRO|
000000D0: 47 52 41 4D 20 43 41 4E  20 27 55 4E 53 43 52 41  |GRAM CAN 'UNSCRA|
000000E0: 54 43 48 27 20 41 20 44  49 53 4B 20 57 49 54 48  |TCH' A DISK WITH|
000000F0: 20 4A 55 53 54 20 50 52  4F 47 52 41 4D 53 20 4F  | JUST PROGRAMS O|
00000100: 4E 20 49 54 20 28 49 54  20 43 4F 55 4C 44 00 36  |N IT (IT COULD.6|
00000110: 09 C3 00 99 22 4D 4F 44  49 46 49 45 44 20 46 4F  |...."MODIFIED FO|
00000120: 52 20 4F 54 48 45 52 20  46 49 4C 45 20 54 59 50  |R OTHER FILE TYP|
00000130: 45 53 29 22 3A 99 00 87  09 C4 00 99 22 49 54 20  |ES)":......."IT |
00000140: 52 45 41 44 53 20 45 41  43 48 20 53 45 43 54 4F  |READS EACH SECTO|
00000150: 52 20 4F 46 20 54 48 45  20 44 49 52 45 43 54 4F  |R OF THE DIRECTO|
00000160: 52 59 20 20 20 28 49 54  20 53 54 41 52 54 53 20  |RY   (IT STARTS |
00000170: 57 49 54 48 20 54 52 41  43 4B 2D 31 38 20 53 45  |WITH TRACK-18 SE|
00000180: 43 54 4F 52 2D 31 29 00  AF 09 C5 00 99 22 49 54  |CTOR-1)......"IT|
00000190: 20 54 48 45 4E 20 43 4F  52 52 45 43 54 53 20 54  | THEN CORRECTS T|
000001A0: 48 45 20 43 48 41 4E 47  45 53 20 4D 41 44 45 00  |HE CHANGES MADE.|
000001B0: D3 09 C6 00 99 22 57 48  45 4E 20 54 48 45 20 44  |....."WHEN THE D|
000001C0: 49 53 4B 20 57 41 53 20  27 53 43 52 41 54 43 48  |ISK WAS 'SCRATCH|
000001D0: 45 44 27 00 E2 09 C7 00  54 31 B2 31 38 3A 53 31  |ED'.....T1.18:S1|
000001E0: B2 31 00 33 0A C8 00 99  22 54 48 45 20 4F 4E 4C  |.1.3...."THE ONL|
000001F0: 59 20 4D 41 4E 55 41 4C  20 49 4E 50 55 54 20 59  |Y MANUAL INPUT Y|
00000200: 4F 55 20 48 41 56 45 20  54 4F 20 44 4F 20 49 53  |OU HAVE TO DO IS|
00000210: 20 54 4F 20 43 4F 55 4E  54 20 54 48 45 20 23 20  | TO COUNT THE # |
00000220: 4F 46 20 50 52 47 27 53  2C 20 49 4E 50 55 54 20  |OF PRG'S, INPUT |
00000230: 54 48 45 00 81 0A C9 00  99 22 52 49 47 48 54 20  |THE......"RIGHT |
00000240: 4E 55 4D 42 45 52 20 41  4E 44 20 48 49 54 20 52  |NUMBER AND HIT R|
00000250: 45 54 55 52 4E 2E 20 20  20 20 20 20 20 20 20 20  |ETURN.          |
00000260: 20 20 54 48 45 20 43 4F  52 52 45 43 54 49 4F 4E  |  THE CORRECTION|
00000270: 20 54 48 45 4E 20 54 41  4B 45 53 20 50 4C 41 43  | THEN TAKES PLAC|
00000280: 45 00 8A 0A CA 00 89 32  37 30 00 C0 0A CD 00 A0  |E......270......|
00000290: 31 3A A0 33 3A 9F 31 35  2C 38 2C 31 35 3A 98 31  |1:.3:.15,8,15:.1|
000002A0: 35 2C 22 56 22 3A A0 31  35 3A 99 22 49 47 4E 4F  |5,"V":.15:."IGNO|
000002B0: 52 45 20 54 48 45 20 49  4C 4C 45 47 41 4C 22 3B  |RE THE ILLEGAL";|
000002C0: 00 E3 0A CE 00 99 22 54  52 41 43 4B 20 45 52 52  |......"TRACK ERR|
000002D0: 4F 52 20 4D 53 47 20 46  52 4F 4D 20 44 49 53 4B  |OR MSG FROM DISK|
000002E0: 22 3A 80 00 08 0B 0E 01  A0 31 3A A0 33 3A 9F 31  |":.......1:.3:.1|
000002F0: 2C 38 2C 31 35 3A 98 31  2C 22 49 30 22 3A 9F 33  |,8,15:.1,"I0":.3|
00000300: 2C 38 2C 33 2C 22 23 22  00 12 0B 0F 01 8D 32 30  |,8,3,"#"......20|
00000310: 30 30 00 39 0B 11 01 99  3A 99 22 54 52 41 43 4B  |00.9....:."TRACK|
00000320: 22 3B 54 31 3B 22 20 20  53 45 43 54 4F 52 22 3B  |";T1;"  SECTOR";|
00000330: 53 31 3A 99 3A 50 47 B2  30 00 65 0B 12 01 81 52  |S1:.:PG.0.e....R|
00000340: B2 30 A4 37 3A 81 52 31  B2 30 A4 31 36 3A 43 B2  |.0.7:.R1.0.16:C.|
00000350: 28 C2 28 42 42 AC 32 35  36 AA 33 AA 52 31 AA 52  |(.(BB.256.3.R1.R|
00000360: AC 33 32 29 29 00 88 0B  13 01 8B 43 B1 33 31 AF  |.32))......C.31.|
00000370: 43 B3 31 32 38 B0 43 B1  31 36 30 AF 43 B3 31 39  |C.128.C.160.C.19|
00000380: 32 A7 99 C7 28 43 29 3B  00 95 0B 14 01 82 52 31  |2...(C);......R1|
00000390: 3A 99 3A 82 52 00 D8 0B  16 01 99 3A 85 22 23 20  |:.:.R......:."# |
000003A0: 4F 46 20 50 52 47 53 20  49 4E 20 42 4C 4F 43 4B  |OF PRGS IN BLOCK|
000003B0: 22 3B 50 47 3A 99 3A 99  22 B9 B9 B9 B9 B9 B9 B9  |";PG:.:.".......|
000003C0: B9 B9 B9 B9 B9 B9 B9 B9  B9 B9 B9 B9 B9 B9 B9 B9  |................|
000003D0: B9 B9 B9 B9 B9 B9 B9 22  00 06 0C 17 01 81 58 B2  |......."......X.|
000003E0: 30 A4 50 47 AB 31 3A 97  28 42 42 AC 32 35 36 AA  |0.PG.1:.(BB.256.|
000003F0: 32 AA 58 AC 33 32 29 2C  31 33 30 3A 82 58 3A A0  |2.X.32),130:.X:.|
00000400: 33 3A 89 33 35 30 00 0D  0C 4A 01 A0 33 00 24 0C  |3:.350...J..3.$.|
00000410: 5E 01 98 31 2C 22 49 30  22 3A 9F 33 2C 38 2C 33  |^..1,"I0":.3,8,3|
00000420: 2C 22 23 22 00 59 0C 5F  01 8D 32 32 30 30 3A A0  |,"#".Y._..2200:.|
00000430: 31 3A 54 31 B2 C2 28 42  42 AC 32 35 36 29 3A 53  |1:T1..(BB.256):S|
00000440: 31 B2 C2 28 42 42 AC 32  35 36 AA 31 29 3A 8B 53  |1..(BB.256.1):.S|
00000450: 31 B2 32 35 35 89 32 30  35 00 62 0C 60 01 89 32  |1.255.205.b.`..2|
00000460: 37 30 00 B0 0C D0 07 8F  20 52 45 41 44 20 42 4C  |70...... READ BL|
00000470: 4F 43 4B 20 54 31 2C 53  31 20 54 4F 20 42 55 46  |OCK T1,S1 TO BUF|
00000480: 46 45 52 20 23 20 4E 55  32 37 34 46 CF 52 3D 30  |FER # NU274F.R=0|
00000490: 54 4F 37 3A 46 CF 52 31  3D 30 54 4F 31 35 3A 3F  |TO7:F.R1=0TO15:?|
000004A0: 43 48 52 24 28 42 42 2A  32 35 36 2B 33 2B 52 31  |CHR$(BB*256+3+R1|
000004B0: 00 B8 0C DA 07 43 B2 2E  00 CE 0C E4 07 98 31 2C  |.....C........1,|
000004C0: 22 55 31 22 3B 33 3B 30  3B 54 31 3B 53 31 00 E2  |"U1";3;0;T1;S1..|
000004D0: 0C EE 07 8D 33 30 30 30  3A 8B A8 45 52 A7 32 30  |....3000:..ER.20|
000004E0: 36 30 00 F6 0C F8 07 43  B2 43 AA 31 3A 8B 43 B3  |60.....C.C.1:.C.|
000004F0: 33 89 32 30 32 30 00 2C  0D 02 08 99 45 52 24 3A  |3.2020.,....ER$:|
00000500: 81 4A B2 28 42 42 AA 4E  55 29 AC 32 35 36 A4 28  |.J.(BB.NU).256.(|
00000510: 42 42 AA 4E 55 29 AC 32  35 36 AA 32 35 35 3A 97  |BB.NU).256.255:.|
00000520: 4A 2C 2E 3A 82 4A 3A 89  32 31 30 30 00 3D 0D 0C  |J,.:.J:.2100.=..|
00000530: 08 98 31 2C 22 42 2D 50  22 3B 33 3B 30 00 62 0D  |..1,"B-P";3;0.b.|
00000540: 20 08 97 39 39 36 2C C2  28 33 29 3A 97 39 39 37  | ..996,.(3):.997|
00000550: 2C C2 28 34 29 3A 97 34  2C 42 42 AA 4E 55 3A 9E  |,.(4):.4,BB.NU:.|
00000560: 4D 41 00 7A 0D 25 08 97  33 2C C2 28 39 39 36 29  |MA.z.%..3,.(996)|
00000570: 3A 97 34 2C C2 28 39 39  37 29 00 98 0D 2A 08 8B  |:.4,.(997)...*..|
00000580: 53 54 B3 B1 2E AF 53 54  B3 B1 36 34 A7 8D 33 30  |ST....ST..64..30|
00000590: 30 30 3A 89 32 30 35 30  00 9E 0D 34 08 8E 00 C7  |00:.2050...4....|
000005A0: 0D 98 08 8F 20 57 52 49  54 45 20 42 4C 4F 43 4B  |.... WRITE BLOCK|
000005B0: 20 54 31 2C 53 31 20 46  52 4F 4D 20 42 55 46 46  | T1,S1 FROM BUFF|
000005C0: 45 52 20 23 20 4E 55 00  CF 0D A2 08 43 B2 2E 00  |ER # NU.....C...|
000005D0: F1 0D AC 08 98 31 2C 22  42 2D 41 22 3B 30 3B 54  |.....1,"B-A";0;T|
000005E0: 31 3B 53 31 3A 98 31 2C  22 42 2D 50 22 3B 33 3B  |1;S1:.1,"B-P";3;|
000005F0: 30 00 18 0E C0 08 97 39  39 36 2C C2 28 33 29 3A  |0......996,.(3):|
00000600: 97 39 39 37 2C C2 28 34  29 3A 97 34 2C 42 42 AA  |.997,.(4):.4,BB.|
00000610: 4E 55 3A 9E 4D 41 AA 33  00 30 0E C5 08 97 33 2C  |NU:.MA.3.0....3,|
00000620: C2 28 39 39 36 29 3A 97  34 2C C2 28 39 39 37 29  |.(996):.4,.(997)|
00000630: 00 63 0E CA 08 8B 53 54  B3 B1 2E AF 53 54 B3 B1  |.c....ST....ST..|
00000640: 36 34 A7 99 22 12 49 45  45 45 20 57 52 49 54 45  |64..".IEEE WRITE|
00000650: 20 45 52 52 4F 52 22 53  54 22 92 22 3A 89 31 30  | ERROR"ST".":.10|
00000660: 30 30 30 00 79 0E D4 08  98 31 2C 22 55 32 22 3B  |000.y....1,"U2";|
00000670: 33 3B 30 3B 54 31 3B 53  31 00 8D 0E DE 08 8D 33  |3;0;T1;S1......3|
00000680: 30 30 30 3A 8B A8 45 52  A7 32 33 30 30 00 A1 0E  |000:..ER.2300...|
00000690: E8 08 43 B2 43 AA 31 3A  8B 43 B3 33 A7 32 32 36  |..C.C.1:.C.3.226|
000006A0: 30 00 CD 0E F2 08 99 22  12 55 4E 52 45 43 4F 56  |0......".UNRECOV|
000006B0: 45 52 41 42 4C 45 20 57  52 49 54 45 20 45 52 52  |ERABLE WRITE ERR|
000006C0: 4F 52 22 45 52 24 3A 89  31 30 30 30 30 00 D3 0E  |OR"ER$:.10000...|
000006D0: FC 08 8E 00 EF 0E B8 0B  8F 20 52 45 41 44 20 45  |......... READ E|
000006E0: 52 52 20 43 48 20 54 4F  20 45 52 2C 45 52 24 00  |RR CH TO ER,ER$.|
000006F0: 26 0F C2 0B 84 31 2C 45  30 24 2C 45 31 24 2C 45  |&....1,E0$,E1$,E|
00000700: 32 24 2C 45 33 24 3A 45  52 24 B2 45 30 24 AA 22  |2$,E3$:ER$.E0$."|
00000710: 2C 22 AA 45 31 24 AA 22  2C 22 AA 45 32 24 AA 22  |,".E1$.",".E2$."|
00000720: 2C 22 AA 45 33 24 00 42  0F CC 0B 45 52 B2 C3 28  |,".E3$.B...ER..(|
00000730: 45 30 24 29 3A 8B 45 52  A7 45 52 B2 C5 28 45 30  |E0$):.ER.ER..(E0|
00000740: 24 29 00 48 0F D6 0B 8E  00 57 0F 10 27 8F 20 44  |$).H.....W..'. D|
00000750: 52 4F 50 20 4F 55 54 00  75 0F 1A 27 97 35 35 2C  |ROP OUT.u..'.55,|
00000760: C2 28 39 39 38 29 3A 97  35 36 2C C2 28 39 39 39  |.(998):.56,.(999|
00000770: 29 3A 9C 3A 90 00 B6 0F  98 3A 83 37 36 2C 36 36  |):.:.....:.76,66|
00000780: 2C 33 2C 37 36 2C 39 31  2C 33 2C 31 36 32 2C 33  |,3,76,91,3,162,3|
00000790: 2C 33 32 2C 31 39 38 2C  32 35 35 2C 31 36 30 2C  |,32,198,255,160,|
000007A0: 30 2C 31 33 32 2C 33 2C  33 32 2C 32 30 37 2C 32  |0,132,3,32,207,2|
000007B0: 35 35 2C 31 34 35 00 FA  0F A2 3A 83 33 2C 31 36  |55,145....:.3,16|
000007C0: 35 2C 31 34 34 2C 32 30  38 2C 33 2C 32 30 30 2C  |5,144,208,3,200,|
000007D0: 32 30 38 2C 32 34 34 2C  33 32 2C 32 30 34 2C 32  |208,244,32,204,2|
000007E0: 35 35 2C 39 36 2C 31 36  32 2C 33 2C 33 32 2C 32  |55,96,162,3,32,2|
000007F0: 30 31 2C 32 35 35 2C 31  36 30 00 40 10 AC 3A 83  |01,255,160.@..:.|
00000800: 30 2C 31 33 32 2C 33 2C  31 37 37 2C 33 2C 33 32  |0,132,3,177,3,32|
00000810: 2C 32 31 30 2C 32 35 35  2C 31 36 35 2C 31 34 34  |,210,255,165,144|
00000820: 2C 32 30 38 2C 33 2C 32  30 30 2C 32 30 38 2C 32  |,208,3,200,208,2|
00000830: 34 34 2C 33 32 2C 32 30  34 2C 32 35 35 2C 39 36  |44,32,204,255,96|
00000840: 00 00 00                                          |...             |
.......55,0:.56,160.-....I.828.883:.A:.I
,A:.I.E...BB.B(44).27:.995,BB.N....998,B
(55):.999,B(56):.55,0:.56,BB:..|.(.BB.B(
995)...2.N.B(999).BB.1:BA.BB.256:MA.828.
..N..1,8,15.A.A..".UNSCRATCH3+......B.."
THIS PROGRAM CAN 'UNSCRATCH' A DISK WITH
 JUST PROGRAMS ON IT (IT COULD.6.C.."MOD
IFIED FOR OTHER FILE TYPES)":....D.."IT 
READS EACH SECTOR OF THE DIRECTORY   (IT
 STARTS WITH TRACK-18 SECTOR-1)...E.."IT
 THEN CORRECTS THE CHANGES MADE.S.F.."WH
EN THE DISK WAS 'SCRATCHED'...G.T1.18:S1
.1.3.H.."THE ONLY MANUAL INPUT YOU HAVE 
TO DO IS TO COUNT THE # OF PRG'S, INPUT 
THE...I.."RIGHT NUMBER AND HIT RETURN.  
          THE CORRECTION THEN TAKES PLAC
E...J..270...M. 1: 3:.15,8,15:.15,"V": 1
5:."IGNORE THE ILLEGAL";...N.."TRACK ERR
OR MSG FROM DISK":...... 1: 3:.1,8,15:.1
,"I0":.3,8,3,"#"......2000.9....:."TRACK
";T1;"  SECTOR";S1:.:PG.0.E....R.0.7:.R1
.0.16:C.(B(BB.256.3.R1.R.32))......C.31.
C.128.C.160.C.192..G(C);......R1:.:.R.X.
...:."# OF PRGS IN BLOCK";PG:.:.".......
......................."......X.0.PG.1:.
(BB.256.2.X.32),130:.X: 3:.350...J. 3.$.
^..1,"I0":.3,8,3,"#".Y._..2200: 1:T1.B(B
B.256):S1.B(BB.256.1):.S1.255.205.B.`..2
70...P.. READ BLOCK T1,S1 TO BUFFER # NU
274FOR=0TO7:FOR1=0TO15:?CHR$(BB*256+3+R1
...Z.C...N....1,"U1";3;0;T1;S1......3000
:..ER.2060.....C.C.1:.C.3.2020.,....ER$:
.J.(BB.NU).256.(BB.NU).256.255:.J,.:.J:.
2100.=....1,"B-P";3;0.B. ..996,B(3):.997
,B(4):.4,BB.NU:.MA.Z.%..3,B(996):.4,B(99
7)...*..ST....ST..64..3000:.2050...4...G
.... WRITE BLOCK T1,S1 FROM BUFFER # NU.
O...C........1,"B-A";0;T1;S1:.1,"B-P";3;
0......996,B(3):.997,B(4):.4,BB.NU:.MA.3
.0.E..3,B(996):.4,B(997).C.J..ST....ST..
64..".IEEE WRITE ERROR"ST".":.10000.Y.T.
.1,"U2";3;0;T1;S1......3000:..ER.2300...
..C.C.1:.C.3.2260.M....".UNRECOVERABLE W
RITE ERROR"ER$:.10000.S.......... READ E
RR CH TO ER,ER$.&.B..1,E0$,E1$,E2$,E3$:E
R$.E0$.",".E1$.",".E2$.",".E3$.B.L.ER.C(
E0$):.ER.ER.E(E0$).H.V...W..'. DROP OUT.
U..'.55,B(998):.56,B(999):.:.....:.76,66
,3,76,91,3,162,3,32,198,255,160,0,132,3,
32,207,255,145....:.3,165,144,208,3,200,
208,244,32,204,255,96,162,3,32,201,255,1
60.@..:.0,132,3,177,3,32,210,255,165,144
,208,3,200,208,244,32,204,255,96...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL