[Coco] Recovering a damaged cassette file

Bill Pierce ooogalapasooo at aol.com
Thu Sep 6 10:32:58 EDT 2012


Mr Gault, what method did you use? I can get no listing but a loop with "printchr$(x);" reveals the code is there. It also looks like I may have a little more than you according to what text I see. My wav was heavily processed and loads right up to the final error"

Music from the Tandy/Radio Shack Color Computer 2 & 3
https://sites.google.com/site/dabarnstudio/
Bill Pierce
ooogalapasooo at aol.com




-----Original Message-----
From: Robert Gault <robert.gault at att.net>
To: CoCoList for Color Computer Enthusiasts <coco at maltedmedia.com>
Sent: Thu, Sep 6, 2012 10:09 am
Subject: Re: [Coco] Recovering a damaged cassette file


Chad H wrote:
> I was going to give this a try...or has someone already recovered it for
> you?
>
> -----Original Message-----
> From: coco-bounces at maltedmedia.com [mailto:coco-bounces at maltedmedia.com] On
> Behalf Of Diego Barizo
> Sent: Tuesday, September 04, 2012 11:07 PM
> To: CoCoList for Color Computer Enthusiasts
> Subject: Re: [Coco] Recovering a damaged cassette file
>
> I have uploaded the wav, MP3 and Audacity files
> http://www.yaccs.info/MyDoD/MyDoD.mp3
> http://www.yaccs.info/MyDoD/MyDoD.wav
> http://www.yaccs.info/MyDoD/MyDoD.aup.zip
>
> Thanks to anyone who can give it a try.
>
> Diego
>
>

I have been able to recover lines 10-640 but that seems to be about half of the 
program.

It is definitely for a Coco3. It was saved at normal speeds. Given that the drop 

outs are between 15 and 16 seconds, it looks like the program can not be 
recovered completely.
Also, the program will run but there seems to be an error in line 420. Line 420 
will prevent the rest of the program from running until to press a key.
Lines 620, and 635 refer to subroutines that have been lost.


10 WIDTH 32:PMODE 4,1:PCLS 1:COLOR 0
20 ' 251,60
30 LINE(0,0)-(0,191),PSET
40 LINE(0,30)-(15,30),PSET
50 LINE-(15,80),PSET
60 LINE-(7,80),PSET
70 LINE(100,100)-(200,100),PSET
80 LINE(20,30)-(100,30),PSET
90 LINE(10,0)-(10,28),PSET
100 LINE(40,80)-(15,80),PSET
110 LINE(140,80)-(50,80),PSET
120 LINE(200,190)-(150,190),PSET
130 LINE(30,180)-(90,130),PSET,B
140 LINE(170,96)-(243,39),PSET,B
150 LINE(50,50)-(93,61),PSET,B
160 LINE(80,100)-(164,100),PSET
170 LINE(35,45)-(200,90),PSET,B
180 LINE(5,75)-(99,75),PSET
190 LINE(54,96)-(180,96),PSET
200 LINE(68,189)-(68,78),PSET
210 LINE(8,18)-(85,18),PSET
220 LINE(9,109)-(9,189),PSET
230 LINE(100,95)-(100,30),PSET
240 LINE(0,4)-(45,4),PSET
250 LINE(0,182)-(174,182),PSET
260 LINE-(174,191),PSET
270 LINE(140,182)-(140,80),PSET
280 LINE(50,30)-(50,70),PSET
290 LINE(140,130)-(249,130),PSET
300 LINE(253,127)-(253,91),PSET
310 LINE(190,190)-(190,150),PSET
320 PSET(35,77,1)
330 LINE(15,35)-(34,38),PSET,B
340 LINE(43,18)-(83,1),PSET,B
350 LINE(50,18)-(75,3),PSET,B
360 LINE(253,91)-(251,91),PSET
370 LINE(251,60)-(251,130),PSET
380 PSET(251,117,1)
390 LINE(140,127)-(253,127),PSET
400 LINE(140,124)-(249,121),PSET,B
410 LINE(100,0)-(131,12),PSET,B
420 EXEC 44539
430 H=10:V=4:X=0:Y=0:SCREEN 0,0
440 CLS 1
450 FOR A=X TO X+31:FOR B=Y TO Y+12
460 C=PPOINT(A,B)
470 IF C=1 THEN C=159 ELSE C=128
480 POKE 1024+(B-Y)*32+A-X,C
490 NEXT B,A
500 C=PEEK(1024+V*32+H)
510 A$=INKEY$:POKE 1024+V*32+H,1:IF A$=""GOTO 510
520 POKE 1024+V*32+H,C
530 IF A$="^" THEN V=V-1:IF V<0 THEN V=12:Y=Y-12:IF Y<0 THEN Y=0:V=0:GOTO 440 
ELSE 440
540 IF A$=CHR$(8) THEN H=H-1:IF H<0 THEN H=31:X=X-31:IF X<0 THEN X=0:H=0:GOTO 
440 ELSE 440
550 IF A$=CHR$(9)  THEN H=H+1:IF H>31 THEN H=0:X=X+31:IF X>235 THEN 
X=223:H=31:GOTO 440:ELSE440
560 IF A$=CHR$(10) THEN V=V+1:IF V>12 THEN V=0:Y=Y+12:IF Y>190 THEN 
Y=180:V=12:GOTO440 ELSE 440
570 IF POINT(H*2,V*2)=2 GOTO 580 ELSE 620
580 IF A$=CHR$(10) THEN V=V-1:IF V<0 THEN Y=Y-12:V=12::IF Y<0 THEN Y=0:V=0:GOTO 
440 ELSE 440
590 IF A$="^" THEN V=V+1:IF V>12 THEN V=0:Y=Y+12:IF Y>190 THEN Y=180:V=12:GOTO 
440ELSE 440
600 IF A$=CHR$(8) THEN H=H+1:IF H>31 THEN H=0:X-X+31:IF X>235 THEN 
X=223:H=0:GOTO440 ELSE 440
610 IF A$=CHR$(9) THEN H=H-1:IF H<0 THEN H=31:X=X-31:IF X<0 THEN X=0:H=0:GOTO 
440 ELSE 440
620 IF A$="S" THEN PRINT at 32*15,"PRESIONE UNA TECLA":EXEC 44539:GOSUB 1000
625 PRINT at 32*14,"H"H+X,"V"V+Y
630 IF H+X=251 AND V+Y=60 THEN PRINT"!!!lo has logrado!!!";:END
635 IF A$="R" GOSUB 1100
640 GOTO500



--
Coco mailing list
Coco at maltedmedia.com
http://five.pairlist.net/mailman/listinfo/coco

 



More information about the Coco mailing list