home *** CD-ROM | disk | FTP | other *** search
/ Sauce 'n' Code 3 / sauce-n-code-03.adf / Source_Code / Stonelib_Loader.asc < prev    next >
Text File  |  1996-01-21  |  2KB  |  63 lines

  1. ' StoneCracker De-Crunch Using Library 
  2. ' ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ 
  3. ' cODED bY ßudda/NFA 
  4. ' StARtEd : 12/08/1995 
  5. ' FiNiSHed: 12/08/1995 
  6.  
  7. ' -- Define File Names --
  8. SRC$="temp:to_budda.stc" : Rem you'll have to change these! 
  9. DEST$="ram:shit.txt"
  10.  
  11. ' -- Load Header & Extract Info -- 
  12. Open In 1,SRC$
  13. HEADER$=Input$(1,16)
  14. FILE_LENGTH=Lof(1)
  15. Close 1
  16. STC$=Left$(HEADER$,4)
  17. SECURITY=Leek(Varptr(HEADER$)+4)
  18. REAL_LENGTH=Leek(Varptr(HEADER$)+8)
  19. CRUNCH_LENGTH=Leek(Varptr(HEADER$)+12)
  20.  
  21. ' -- Check File Header --  
  22. If STC$="S403" or STC$="S404"
  23.    Print "File Length          :";FILE_LENGTH
  24.    Print "StoneCracker Version : ";STC$
  25.    Print "Security Length      :";SECURITY
  26.    Print "Original Length      :";REAL_LENGTH
  27.    Print "Crunched Length      :";CRUNCH_LENGTH
  28.    Cdown 
  29.    
  30.    ' -- Attempt To Open Library --
  31.    Trap Lib Open 1,"stc020.library",0
  32.    If Errtrap
  33.       Print "Error Opening Library"
  34.       End 
  35.    End If 
  36.    
  37.    ' -- Load Whole Crunched File Into Memory Bank 10 -- 
  38.    Reserve As Work 10,REAL_LENGTH+SECURITY
  39.    Bload SRC$,Start(10)
  40.    
  41.    ' -- Call Decrunch Routine In Library -- 
  42.    Areg(0)=Start(10)+SECURITY : Rem                     Destination Address  
  43.    Areg(1)=Start(10) : Rem                              Source Address    
  44.    RESULT=Lib Call(1,-36) : Rem                         Call "DeCrunchData"    
  45.    
  46.    ' -- Save Decrunched File --     
  47.    Print "Saving decrunched file "+DEST$
  48.    Bsave DEST$,Start(10)+SECURITY To Start(10)+Length(10)
  49.    
  50.    ' -- Dispose Of Library -- 
  51.    Lib Close 1
  52.    
  53. Else 
  54.    Print "File isn't crunched with Stone Cracker!"
  55. End If 
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.