home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / ADPro251-3.DMS / ADPro251-3.adf / FREDScripts.lha / FREDSavers / SaveAsFRAMESTORE.fred < prev    next >
Encoding:
Text File  |  1994-01-31  |  3.0 KB  |  125 lines

  1. /*
  2. ** SaveAsFRAMESTORE.fred
  3. **
  4. ** $VER: SaveAsFRAMESTORE.fred 1.1.0 (24.10.93)
  5. **
  6. ** This program can be run from an InvokeADPro list to save images in
  7. ** FRAMESTORE format.  Including this program automatically causes a pre script
  8. ** to be executed as well (to select the FRAMESTORE file extension).
  9. **
  10. ** It is up to the user to include the necessary scripts to create raw or
  11. ** rendered data.  This script will only try to save out what you tell it,
  12. ** and not do any error detecting regarding what type of image data is
  13. ** available.
  14. **
  15. ** Clips Imported:
  16. **    FREDFSFilter        -    Level of filtering.
  17. **    FREDFSCompress        -    Level of compression.
  18. **    FREDFSFNameSelect    -    String describing how the filename
  19. **                    should be modified
  20. **    FREDFSSeqFileSelect    -    Name of sequence file
  21. **
  22. ** NOTE: Clip names are case sensitive.
  23. **
  24. ** This script requires FRED v1.4.0 (or higher) to run.  Also required is
  25. ** ADPro v2.5.0 (or higher).
  26. **
  27. ** Copyright © 1993 ASDG, Incorporated
  28. ** All Rights Reserved
  29. */
  30.  
  31.  
  32. ADDRESS "ADPro"
  33. OPTIONS RESULTS
  34.  
  35. PARSE ARG FrameNum FrameFName Length LoadFlag FirstCallSeq FirstCallCell
  36.  
  37. NL = '0A'X
  38. SQ = '27'X
  39. DQ = '22'X
  40. TRUE  = 1
  41. FALSE = 0
  42.  
  43. FrameFName = STRIP(STRIP(FrameFName , "B" , " ") , "B" , '"')
  44.  
  45.  
  46. /*
  47. ** Get the required parameters.  Error if any are missing.
  48. */
  49.  
  50. Filter = GETCLIP( "FREDFSFilter" )
  51. IF (Filter = "") THEN DO
  52.     ADPRO_TO_FRONT
  53.     OKAY1 "Required clip, FREDFSFilter," || NL ||,
  54.         "is not specified."
  55.     SCREEN_TO_FRONT "FRED"
  56.     EXIT 10
  57. END
  58.  
  59. Compress = GETCLIP( "FREDFSCompress" )
  60. IF (Compress = "") THEN DO
  61.     ADPRO_TO_FRONT
  62.     OKAY1 "Required clip, FREDFSCompress," || NL ||,
  63.         "is not specified."
  64.     SCREEN_TO_FRONT "FRED"
  65.     EXIT 10
  66. END
  67.  
  68. FNameSelect = GETCLIP( "FREDFSFNameSelect" )
  69. IF (FNameSelect = "") THEN DO
  70.     ADPRO_TO_FRONT
  71.     OKAY1 "Required clip, FREDFSFNameSelect," || NL ||,
  72.         "is not specified."
  73.     SCREEN_TO_FRONT "FRED"
  74.     EXIT 10
  75. END
  76.  
  77. SeqFileSelect = GETCLIP( "FREDFSSeqFileSelect" )
  78. IF (SeqFileSelect = "") THEN DO
  79.     ADPRO_TO_FRONT
  80.     OKAY1 "Required clip, FREDFSSeqFileSelect," || NL ||,
  81.         "is not specified."
  82.     SCREEN_TO_FRONT "FRED"
  83.     EXIT 10
  84. END
  85.  
  86.  
  87. /*
  88. ** See what type of data is loaded in ADPro/MorphPlus.
  89. */
  90.  
  91. CALL "FREDSCRIPTS:FREDFunctions/CheckForRawImageData" TRUE
  92. IF (RESULT ~= 0) THEN
  93.     EXIT 10
  94.  
  95.  
  96. /*
  97. ** Do the save.  If we aren't using the same filename, we will use the
  98. ** same basename and make every effort possible to replace the
  99. ** perceived filename extension with the selected FRAMESTORE extension.
  100. */
  101.  
  102. CALL "FREDSCRIPTS:FREDFunctions/ModifyFilename" FNameSelect '"'FrameFName'"' FrameNum FALSE
  103. NewFName = '"'RESULT'"'
  104.  
  105. SAVER "FRAMESTORE" NewFName "RAW",
  106.     "FILTER" Filter,
  107.     "COMPRESS" Compress
  108.  
  109. IF (RC ~= 0) THEN DO
  110.     Why = ADPRO_RESULT
  111.     ADPRO_TO_FRONT
  112.     OKAY1 "FRAMESTORE save failed:" || NL || Why || NL ||,
  113.         "Argument Information:" || NL ||,
  114.         "Filename = " || NewFName || NL ||,
  115.         "Type = " || "RAW" || NL ||,
  116.         "Filter = " || Filter || NL ||,
  117.         "Compression = " || Compress
  118.     SCREEN_TO_FRONT "FRED"
  119.     EXIT 10
  120. END
  121.  
  122. CALL "FREDSCRIPTS:FREDFunctions/SeqFileAppend" SeqFileSelect NewFName 1
  123.  
  124. EXIT 0
  125.