[comp.sys.apple] Trashing of files with ProDos 1.1 to 1.2

delaney%wnre.aecl.cdn%ubc.CSNET@RELAY.CS.NET.UUCP (02/23/87)

In the interest of a few less damaged ProDos directories I am sending on this 
fix for ProDos 1.1to 1.2 1.3 just released is supposed to have it fixed.  This 
has been downloaded from Compuserve and originally appeared in Open-Apple
H

---------------------------------------------------------------------------
take off the top then down load and exec it
---------------------------------------------------------------------------
NEW
10REMStop ProDOS track 0 trashing
20REMpatches by Stephen Thomas
30REM    MacLagan Wright & Associates
40REM    West Heidelberg, VIC Australia
50REM
60REMModified by G. Bredon to patch
70REMPRODOS 1.2 ("PRODOS-8") as well
80REMas PRODOS 1.1.1.
90REM
100TEXT:?:HOME:E=0
110VTAB12:?"Now patching ProDOS."
120ONERRGOTO500
130IFPEEK(116)<128THENE=1:GOTO500:REMIs mem free?
140?CHR$(4)"unlock prodos"
150?CHR$(4)"bload prodos,tsys,a$2000"
160ADR=4*4096
170P=0:FORI=4TO8:IFPEEK(ADR+I)<>234THENP=1
180NEXTI
190IFADR>6*4096THENE=3:GOTO500
200IFPTHENADR=ADR+256:GOTO170
210POKEADR+4,189:POKEADR+5,142:POKEADR+6,192:REMLDA $C08E,X
220ADR=PEEK(ADR+2)+256*PEEK(ADR+3)-13*4096+ADR+5:IFADR>6*4096ORADR<4*4096THENE=3:GOTO500
230FORI=0TO9STEP3
240IFPEEK(ADR+I)<>157THENE=3:GOTO280
250POKEADR+I,189:REM4 STAs changed to LDAs
260NEXTI
270GOTO400
280FORI=0TO12
290READBYTE:IFPEEK(ADR+I)<>BYTETHEN500
300NEXTI
310FORI=0TO12
320READBYTE:POKEADR+I,BYTE
330NEXTI
400?CHR$(4)"bsave prodos,a$2000,tsys"
410?:?"Patches completed."
420END
500?CHR$(7)"Error! No patches were made."
510ONEGOTO530,540,550
520?"PRODOS file not found.":END
530?"Insufficient memory to load PRODOS.":END
540?"Patch location not found."
550?"PRODOS file may have been patched"
560?"already, or is not a compatible version."
570END
600DATA160,8,189,128,192,232,232,136,208,248,234,234,96
610DATA189,128,192,189,130,192,189,132,192,189,134,192,96
SAVE PATCH.PRODOS
---------------------------------------------------------------
+---------------------------------------------------------------------+
|                                                                     |
|             CDNnet -----> delaney@wnre.aecl.cdn                     |
|              CSNET -----> delaney%wnre.aecl.cdn@ubc.cs.net          |
|              UUCP  -----> delaney%wnre.aecl.cdn@ubc-ean.uucp        |
|             BITNET -----> delaney%wnre.aecl.cdn@ean.ubc.bitnet      |
|           compuserve ---> 71460,1063                                |
|                                                                     |
+________________ We wonder how it ever gets here ____________________+
+________________ But the Boss pays for it anyway ____________________+

delaney%wnre.aecl.cdn%ubc.CSNET@RELAY.CS.NET.UUCP (02/24/87)

 
In the interest of a few less damaged ProDos directories I am sending on this
fix for ProDos 1.1to 1.2 1.3 just released is supposed to have it fixed.  This
has been downloaded from Compuserve and originally appeared in Open-Apple
H
 
---------------------------------------------------------------------------
take off the top then down load and exec it
---------------------------------------------------------------------------
NEW
10REMStop ProDOS track 0 trashing
20REMpatches by Stephen Thomas
30REM    MacLagan Wright & Associates
40REM    West Heidelberg, VIC Australia
50REM
60REMModified by G. Bredon to patch
70REMPRODOS 1.2 ("PRODOS-8") as well
80REMas PRODOS 1.1.1.
90REM
100TEXT:?:HOME:E=0
110VTAB12:?"Now patching ProDOS."
120ONERRGOTO500
130IFPEEK(116)<128THENE=1:GOTO500:REMIs mem free?
140?CHR$(4)"unlock prodos"
150?CHR$(4)"bload prodos,tsys,a$2000"
160ADR=4*4096
170P=0:FORI=4TO8:IFPEEK(ADR+I)<>234THENP=1
180NEXTI
190IFADR>6*4096THENE=3:GOTO500
200IFPTHENADR=ADR+256:GOTO170
210POKEADR+4,189:POKEADR+5,142:POKEADR+6,192:REMLDA $C08E,X
220ADR=PEEK(ADR+2)+256*PEEK(ADR+3)-13*4096+ADR+5:IFADR>6*4096ORADR<4*4096THENE=3:GOTO500
230FORI=0TO9STEP3
240IFPEEK(ADR+I)<>157THENE=3:GOTO280
250POKEADR+I,189:REM4 STAs changed to LDAs
260NEXTI
270GOTO400
280FORI=0TO12
290READBYTE:IFPEEK(ADR+I)<>BYTETHEN500
300NEXTI
310FORI=0TO12
320READBYTE:POKEADR+I,BYTE
330NEXTI
400?CHR$(4)"bsave prodos,a$2000,tsys"
410?:?"Patches completed."
420END
500?CHR$(7)"Error! No patches were made."
510ONEGOTO530,540,550
520?"PRODOS file not found.":END
530?"Insufficient memory to load PRODOS.":END
540?"Patch location not found."
550?"PRODOS file may have been patched"
560?"already, or is not a compatible version."
570END
600DATA160,8,189,128,192,232,232,136,208,248,234,234,96
610DATA189,128,192,189,130,192,189,132,192,189,134,192,96
SAVE PATCH.PRODOS
---------------------------------------------------------------
+---------------------------------------------------------------------+
                                                                     
             CDNnet -----> delaney@wnre.aecl.cdn                     
              CSNET -----> delaney%wnre.aecl.cdn@ubc.csnet          
              UUCP  -----> delaney%wnre.aecl.cdn@ubc-ean.uucp        
             BITNET -----> delaney%wnre.aecl.cdn@ean.ubc.bitnet      
           compuserve ---> 71460,1063                                
                                                                     
+________________ Sorry if you get this twice It got lost some ________+