home *** CD-ROM | disk | FTP | other *** search
/ RISC DISC 1 / RISC_DISC_1.iso / pd_share / code / oslib / Hdr / Squash < prev    next >
Encoding:
Text File  |  1994-09-14  |  2.8 KB  |  100 lines

  1. ;AAsm header file for Squash
  2. ;written by DefMod (Aug  8 1994) on Wed Sep 14 13:19:57 1994
  3.  
  4.         [       :LNOT: :DEF: Get_Types
  5.         GBLS    Get_Types
  6. Get_Types                       SETS    "GET OS:Hdr.Types"
  7.         |
  8. Get_Types                       SETS    ""
  9.         ]
  10.         $Get_Types
  11.  
  12.         [       :LNOT: :DEF: Get_OS
  13.         GBLS    Get_OS
  14. Get_OS                          SETS    "GET OS:Hdr.OS"
  15.         |
  16. Get_OS                          SETS    ""
  17.         ]
  18.         $Get_OS
  19.  
  20.         [       :LNOT: :DEF: Squash_Hdr
  21.         GBLS    Squash_Hdr
  22.  
  23. ;Symbols for constants
  24. Error_SquashBadAddress          *       &921
  25. Error_SquashBadInput            *       &922
  26. Error_SquashBadWorkspace        *       &923
  27. Error_SquashBadParameters       *       &924
  28. Squash_FileType                 *       &FCA
  29. Squash_InputNotStart            *       &1
  30. Squash_InputNotEnd              *       &2
  31. Squash_InputAllPresent          *       &4
  32. Squash_OutputEnd                *       &1
  33. Squash_OutputMore               *       &2
  34. Squash_OutputNoMem              *       &4
  35.  
  36. ;Symbols for structure offsets and sizes
  37.                                 ^       0
  38. Squash_File_id                  #       Bits
  39. Squash_File_size                #       Int
  40. Squash_File_load_addr           #       Bits
  41. Squash_File_exec_addr           #       Bits
  42. Squash_File_reserved            #       Int
  43. Squash_File_data                #       Byte
  44. Squash_File                     *       @
  45.  
  46.  
  47. ;Symbols for SWI's and SWI reason codes
  48. XSquash_CompressReturnSizes     *       &62700
  49. Squash_CompressReturnSizes      *       &42700
  50.    ;Entry
  51.    ;  R0 = &8
  52.    ;  R1 = input_size (Int)
  53.    ;Exit
  54.    ;  R0 = workspace_size (Int)
  55.    ;  R1 = output_size (Int)
  56.  
  57. XSquash_Compress                *       &62700
  58. Squash_Compress                 *       &42700
  59.    ;Entry
  60.    ;  R0 = input_status (Bits)
  61.    ;  R1 = workspace (pointer to Void)
  62.    ;  R2 -> input (data)
  63.    ;  R3 = input_size (Int)
  64.    ;  R4 -> output (data)
  65.    ;  R5 = output_size (Int)
  66.    ;Exit
  67.    ;  R0 = output_status (Bits)
  68.    ;  R2 -> input_out (data)
  69.    ;  R3 = input_spare (Int)
  70.    ;  R4 -> output_out (data)
  71.    ;  R5 = output_spare (Int)
  72.  
  73. XSquash_DecompressReturnSizes   *       &62701
  74. Squash_DecompressReturnSizes    *       &42701
  75.    ;Entry
  76.    ;  R0 = &8
  77.    ;  R1 = input_size (Int)
  78.    ;Exit
  79.    ;  R0 = workspace_size (Int)
  80.    ;  R1 = output_size (Int)
  81.  
  82. XSquash_Decompress              *       &62701
  83. Squash_Decompress               *       &42701
  84.    ;Entry
  85.    ;  R0 = input_status (Bits)
  86.    ;  R1 = workspace (pointer to Void)
  87.    ;  R2 -> input (data)
  88.    ;  R3 = input_size (Int)
  89.    ;  R4 -> output (data)
  90.    ;  R5 = output_size (Int)
  91.    ;Exit
  92.    ;  R0 = output_status (Bits)
  93.    ;  R2 -> input_out (data)
  94.    ;  R3 = input_spare (Int)
  95.    ;  R4 -> output_out (data)
  96.    ;  R5 = output_spare (Int)
  97.  
  98.         ]
  99.         END
  100.