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

  1. /*
  2. ** SaveAsPCX.fred
  3. **
  4. ** $VER: SaveAsPCX.fred 1.4.0 (24.10.93)
  5. **
  6. ** This program can be run from an InvokeADPro list to save images in
  7. ** PCX format.  Including this program automatically causes a pre script
  8. ** to be executed as well (to select the PCX 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. **    FREDPCXSaveType        -    Image type to save
  17. **    FREDPCXSaveOpt        -    Save option (CGA,EGA,VGA)
  18. **    FREDPCXFNameSelect    -    String describing how the filename
  19. **                    should be modified
  20. **    FREDPCXSeqFileSelect    -    Name of sequence file created
  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. SaveType = GETCLIP( "FREDPCXSaveType" )
  51. IF (SaveType = "") THEN DO
  52.     ADPRO_TO_FRONT
  53.     OKAY1 "Required clip, FREDPCXSaveType," || NL ||,
  54.         "is not specified."
  55.     SCREEN_TO_FRONT "FRED"
  56.     EXIT 10
  57. END
  58.  
  59. SaveOpt = GETCLIP( "FREDPCXSaveOpt" )
  60. IF (SaveOpt = "") THEN DO
  61.     ADPRO_TO_FRONT
  62.     OKAY1 "Required clip, FREDPCXSaveOpt," || NL ||,
  63.         "is not specified."
  64.     SCREEN_TO_FRONT "FRED"
  65.     EXIT 10
  66. END
  67.  
  68. FNameSelect = GETCLIP( "FREDPCXFNameSelect" )
  69. IF (FNameSelect = "") THEN DO
  70.     ADPRO_TO_FRONT
  71.     OKAY1 "Required clip, FREDPCXFNameSelect," || NL ||,
  72.         "is not specified."
  73.     SCREEN_TO_FRONT "FRED"
  74.     EXIT 10
  75. END
  76.  
  77. SeqFileSelect = GETCLIP( "FREDPCXSeqFileSelect" )
  78. IF (SeqFileSelect = "") THEN DO
  79.     ADPRO_TO_FRONT
  80.     OKAY1 "Required clip, FREDPCXSeqFileSelect," || 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. IF (SaveType = "RAW") THEN DO
  92.     CALL "FREDSCRIPTS:FREDFunctions/CheckForRawImageData" TRUE
  93.     IF (RESULT ~= 0) THEN
  94.         EXIT 10
  95. END
  96. ELSE IF ((SaveType = "IMAGE") | (SaveType = "SCREEN")) THEN DO
  97.     CALL "FREDSCRIPTS:FREDFunctions/CheckForRenderedImageData" TRUE
  98.     IF (RESULT ~= 0) THEN
  99.         EXIT 10
  100. END
  101.  
  102.  
  103. /*
  104. ** Do the save.  If we aren't using the same filename, we will use the
  105. ** same basename and make every effort possible to replace the
  106. ** perceived filename extension with the selected PCX extension.
  107. */
  108.  
  109. CALL "FREDSCRIPTS:FREDFunctions/ModifyFilename" FNameSelect '"'FrameFName'"' FrameNum FALSE
  110. NewFName = '"'RESULT'"'
  111.  
  112. SAVER "PCX" NewFName SaveType SaveOpt
  113. IF (RC ~= 0) THEN DO
  114.     Why = ADPRO_RESULT
  115.     ADPRO_TO_FRONT
  116.     OKAY1 "PCX save failed:" || NL || Why || NL ||,
  117.         "Argument Information:" || NL ||,
  118.         "Filename = " || NewFName || NL ||,
  119.         "Type = " || SaveType || NL ||,
  120.         "Opts = " || SaveOpt
  121.     SCREEN_TO_FRONT "FRED"
  122.     EXIT 10
  123. END
  124.  
  125. CALL "FREDSCRIPTS:FREDFunctions/SeqFileAppend" SeqFileSelect NewFName 1
  126.  
  127. EXIT 0
  128.