home *** CD-ROM | disk | FTP | other *** search
- ; fxDefs.INC ;
- ; Copyright (c) Genus Microprogramming, Inc. 1988-89 All Rights Reserved. ;
-
- ;****************************************************************************;
- ; ;
- ; This file contains defines for PCX F/X manipulation. ;
- ; ;
- ; ;
- ; ;
- ; ;
- ; ;
- ; ;
- ; Microsoft ASM 5.x version. Programmer: Chris Howard 3/15/89 ;
- ; ;
- ;****************************************************************************;
-
- ;Effects version
- fxVERNUM equ "1.01"
-
- ;Effects
- MINEFFECT equ 0 ;Minimum effect type
- fxWIPE equ 0 ;Wipe
- fxSPLIT equ 1 ;Split
- fxCRUSH equ 2 ;Crush
- fxSLIDE equ 3 ;Slide
- fxSAND equ 4 ;Sand
- fxDRIP equ 5 ;Drip
- fxEXPLODE equ 6 ;Explode
- fxDIAG equ 7 ;Diagonal
- fxSPIRAL equ 8 ;Spiral
- fxRANDOM equ 9 ;Random
- MAXEFFECT equ 9 ;Maximum effect type
-
- ;Palette Effects
- fxFADEOUT equ 1000 ;Fade the palette out
- fxFADEIN equ 1001 ;Fade the palette in
-
- ;Directions
- fxLEFT equ 1 ;Left
- fxRIGHT equ 2 ;Right
- fxUP equ 4 ;Up
- fxDOWN equ 8 ;Down
-
- fxHORIZ equ 1 ;Horizontal
- fxVERT equ 2 ;Vertical
-
- fxOUT equ 1 ;Out
- fxIN equ 2 ;In
-
- ;Grain
- MINGRAIN equ 1 ;Minimum grain
- MAXGRAIN equ 64 ;Maximum grain
-
- ;Delay
- MINDELAY equ 0 ;Minimum delay
- MAXDELAY equ 500 ;Maximum delay
-
- ;Notes
- MINNOTE equ 0 ;Minimum note
- MAXNOTE equ 120 ;Maximum note
-
- ;Octaves
- OCTAVE equ 12 ;Twelve notes/octave
- MINOCTAVE equ 0 ;Minimum octave
- MAXOCTAVE equ 9 ;Maximum octave
-
- ;Lengths
- MINLENGTH equ 1 ;Minimum length
- MAXLENGTH equ 64 ;Maximum length
-
- ;Frequencies
- MINFREQ equ 32 ;Minimum frequency
- MAXFREQ equ 32000 ;Maximum frequency
-
- ;Tempos
- MINTEMPO equ 30 ;Minimum length
- MAXTEMPO equ 255 ;Maximum length
-
- ;Play modes
- PLAYFORE equ 0 ;Play in the foreground
- PLAYBACK equ 1 ; or background
- PLAYNORM equ 7 ;Play normal (7/8 of time)
- PLAYLEG equ 8 ;Play legato (8/8 of time)
- PLAYSTAC equ 6 ;Play stacatto (6/8 of time)
-
- ;Miscellaneous
- fxTRUE equ pcxTRUE ;True and
- fxFALSE equ pcxFALSE ; False values
- fxON equ fxTRUE ;On and
- fxOFF equ fxFALSE ; Off values
- fxCLICK equ 6 ;Timer tick (6/100ths, 1/18.2)
-
- ;Virtual Effect variable locations on the stack
- vevseg equ <[bp+14]> ;Virtual buffer pointer
- vevofs equ <[bp+12]> ; or EMM handle
- vex equ <[bp+10]> ;X coordinate into buffer
- vey equ <[bp+ 8]> ;Y coordinate into buffer
- vedir equ <[bp+ 6]> ; and direction
- veparm equ 10
-
- ;Virtual Effect local variables
- veret equ <[bp- 2]> ;return code
- vex2 equ <[bp- 4]> ;X2
- vey2 equ <[bp- 6]> ;Y2
- vewidth equ <[bp- 8]> ;image width
- vedepth equ <[bp-10]> ;image depth
- vedelay equ <[bp-12]> ;effect delay
- vegrain equ <[bp-14]> ;effect grain
- vevgrain equ <[bp-16]> ;effect grain (vertical)
- vepage equ <[bp-18]> ;current page
- vehres equ <[bp-20]> ;horizontal res
- vevres equ <[bp-22]> ;vertical res
- vehhalf equ <[bp-24]> ;horizontal half
- vevhalf equ <[bp-26]> ;vertical half
- veloopmax equ <[bp-28]> ;loop maximum
- vehandle equ <[bp-30]> ;EMM handle, if pcxEMM type
- vehpages equ <[bp-32]> ;Total handle pages
- velpage equ <[bp-34]> ;Current logical page
- vei equ <[bp-36]> ;Temporary loop variables
- vej equ <[bp-38]> ;
- veimax equ <[bp-40]> ;
- vejmax equ <[bp-42]> ;
- velocal equ 42 ;Total local space needed
-
-
- ;Supported effect structure
- fxstruc STRUC
- fxtype db ? ;Effect type (from above list)
- fxstr db ' ' ;Place for ASCII effect string
- fxstrterm db 0 ;String terminator
- fxfunc dd ? ;Effect Function (FAR PTR)
- fxstruc ENDS
-