home *** CD-ROM | disk | FTP | other *** search
- ' StoneCracker De-Crunch Using Library
- ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
- ' cODED bY ßudda/NFA
- ' StARtEd : 12/08/1995
- ' FiNiSHed: 12/08/1995
-
- ' -- Define File Names --
- SRC$="temp:to_budda.stc" : Rem you'll have to change these!
- DEST$="ram:shit.txt"
-
- ' -- Load Header & Extract Info --
- Open In 1,SRC$
- HEADER$=Input$(1,16)
- FILE_LENGTH=Lof(1)
- Close 1
- STC$=Left$(HEADER$,4)
- SECURITY=Leek(Varptr(HEADER$)+4)
- REAL_LENGTH=Leek(Varptr(HEADER$)+8)
- CRUNCH_LENGTH=Leek(Varptr(HEADER$)+12)
-
- ' -- Check File Header --
- If STC$="S403" or STC$="S404"
- Print "File Length :";FILE_LENGTH
- Print "StoneCracker Version : ";STC$
- Print "Security Length :";SECURITY
- Print "Original Length :";REAL_LENGTH
- Print "Crunched Length :";CRUNCH_LENGTH
- Cdown
-
- ' -- Attempt To Open Library --
- Trap Lib Open 1,"stc020.library",0
- If Errtrap
- Print "Error Opening Library"
- End
- End If
-
- ' -- Load Whole Crunched File Into Memory Bank 10 --
- Reserve As Work 10,REAL_LENGTH+SECURITY
- Bload SRC$,Start(10)
-
- ' -- Call Decrunch Routine In Library --
- Areg(0)=Start(10)+SECURITY : Rem Destination Address
- Areg(1)=Start(10) : Rem Source Address
- RESULT=Lib Call(1,-36) : Rem Call "DeCrunchData"
-
- ' -- Save Decrunched File --
- Print "Saving decrunched file "+DEST$
- Bsave DEST$,Start(10)+SECURITY To Start(10)+Length(10)
-
- ' -- Dispose Of Library --
- Lib Close 1
-
- Else
- Print "File isn't crunched with Stone Cracker!"
- End If
-
-
-
-
-
-
-
-