home *** CD-ROM | disk | FTP | other *** search
- IFND GRAPHICS_COPPER_I
- GRAPHICS_COPPER_I SET 1
- **
- ** $VER: copper.i 39.14 (11.8.93)
- ** Includes Release 40.15
- **
- ** graphics copper list intruction definitions
- **
- ** (C) Copyright 1985-1993 Commodore-Amiga, Inc.
- ** All Rights Reserved
- **
-
- IFND EXEC_TYPES_I
- include 'exec/types.i'
- ENDC
-
- COPPER_MOVE equ 0 * pseude opcode for move #XXXX,dir
- COPPER_WAIT equ 1 * pseudo opcode for wait y,x
- CPRNXTBUF equ 2 * continue processing with next buffer
- CPR_NT_LOF equ $8000 * copper instruction only for short frames
- CPR_NT_SHT equ $4000 * copper instruction only for long frames
- CPR_NT_SYS equ $2000 * copper user instruction only
-
- STRUCTURE CopIns,0
- WORD ci_OpCode * 0 = move, 1 = wait
- STRUCT ci_nxtlist,0 * UNION
- STRUCT ci_VWaitPos,0
- STRUCT ci_DestAddr,2
-
- STRUCT ci_HWaitPos,0
- STRUCT ci_DestData,2
-
- LABEL ci_SIZEOF
-
- * structure of cprlist that points to list that hardware actually executes
- STRUCTURE cprlist,0
- APTR crl_Next
- APTR crl_start
- WORD crl_MaxCount
- LABEL crl_SIZEOF
-
- STRUCTURE CopList,0
- APTR cl_Next * next block for this copper list
- APTR cl__CopList * system use
- APTR cl__ViewPort * system use
- APTR cl_CopIns * start of this block
- APTR cl_CopPtr * intermediate ptr
- APTR cl_CopLStart * mrgcop fills this in for Long Frame
- APTR cl_CopSStart * mrgcop fills this in for Short Frame
- WORD cl_Count * intermediate counter
- WORD cl_MaxCount * max # of copins for this block
- WORD cl_DyOffset * offset this copper list vertical waits
- IFD V1_3
- APTR cl_Cop2Start
- APTR cl_Cop3Start
- APTR cl_Cop4Start
- APTR cl_Cop5Start
- ENDC
- WORD cl_SLRepeat
- WORD cl_PrivateFlags * NB - this was cl_Flags, but has been
- * changed to avoid conflict with intuition's
- * IClass structure. This field is private
- * anyway, and no one should be affected.
- LABEL cl_SIZEOF
-
- EXACT_LINE EQU 1
- HALF_LINE EQU 2
-
- STRUCTURE UCopList,0
- APTR ucl_Next
- APTR ucl_FirstCopList * head node of this copper list
- APTR ucl_CopList * node in use
- LABEL ucl_SIZEOF
-
- * private graphics data structure
- * hands off!
- STRUCTURE copinit,0
- STRUCT copinit_vsync_hblank,4
- STRUCT copinit_diagstrt,24
- STRUCT copinit_fm0,4
- STRUCT copinit_diwstart,20
- STRUCT copinit_bplcon2,4
- STRUCT copinit_sprfix,8*2*2
- STRUCT copinit_sprstrtup,2*(2*8*2)
- STRUCT copinit_wait14,2*2
- STRUCT copinit_norm_hblank,2*2
- STRUCT copinit_jump,2*2
- STRUCT copinit_wait_forever,6*2
- STRUCT copinit_sprstop,8*2
- LABEL copinit_SIZEOF
-
- ENDC ; GRAPHICS_COPPER_I
-