home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / BC_DICE2.DMS / in.adf / INCLUDE / hardware / custom.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-10  |  2.8 KB  |  178 lines

  1. #ifndef HARDWARE_CUSTOM_H
  2. #define HARDWARE_CUSTOM_H
  3. /*
  4. ** $Filename: hardware/custom.h $
  5. ** $Release: 2.04 Includes, V37.4 $
  6. ** $Revision: 36.4 $
  7. ** $Date: 90/11/05 $
  8. **
  9. ** Offsets of Amiga custom chip registers
  10. **
  11. ** (C) Copyright 1985-1991 Commodore-Amiga, Inc.
  12. ** All Rights Reserved
  13. */
  14.  
  15. #ifndef EXEC_TYPES_H
  16. #include "exec/types.h"
  17. #endif 
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24. struct Custom {
  25.  UWORD bltddat;
  26.  UWORD dmaconr;
  27.  UWORD vposr;
  28.  UWORD vhposr;
  29.  UWORD dskdatr;
  30.  UWORD joy0dat;
  31.  UWORD joy1dat;
  32.  UWORD clxdat;
  33.  UWORD adkconr;
  34.  UWORD pot0dat;
  35.  UWORD pot1dat;
  36.  UWORD potinp;
  37.  UWORD serdatr;
  38.  UWORD dskbytr;
  39.  UWORD intenar;
  40.  UWORD intreqr;
  41.  APTR dskpt;
  42.  UWORD dsklen;
  43.  UWORD dskdat;
  44.  UWORD refptr;
  45.  UWORD vposw;
  46.  UWORD vhposw;
  47.  UWORD copcon;
  48.  UWORD serdat;
  49.  UWORD serper;
  50.  UWORD potgo;
  51.  UWORD joytest;
  52.  UWORD strequ;
  53.  UWORD strvbl;
  54.  UWORD strhor;
  55.  UWORD strlong;
  56.  UWORD bltcon0;
  57.  UWORD bltcon1;
  58.  UWORD bltafwm;
  59.  UWORD bltalwm;
  60.  APTR bltcpt;
  61.  APTR bltbpt;
  62.  APTR bltapt;
  63.  APTR bltdpt;
  64.  UWORD bltsize;
  65.  UBYTE pad2d;
  66.  UBYTE bltcon0l; 
  67.  UWORD bltsizv;
  68.  UWORD bltsizh; 
  69.  UWORD bltcmod;
  70.  UWORD bltbmod;
  71.  UWORD bltamod;
  72.  UWORD bltdmod;
  73.  UWORD pad34[4];
  74.  UWORD bltcdat;
  75.  UWORD bltbdat;
  76.  UWORD bltadat;
  77.  UWORD pad3b[3];
  78.  UWORD deniseid; 
  79.  UWORD dsksync;
  80.  ULONG cop1lc;
  81.  ULONG cop2lc;
  82.  UWORD copjmp1;
  83.  UWORD copjmp2;
  84.  UWORD copins;
  85.  UWORD diwstrt;
  86.  UWORD diwstop;
  87.  UWORD ddfstrt;
  88.  UWORD ddfstop;
  89.  UWORD dmacon;
  90.  UWORD clxcon;
  91.  UWORD intena;
  92.  UWORD intreq;
  93.  UWORD adkcon;
  94.  struct AudChannel {
  95.  UWORD *ac_ptr; 
  96.  UWORD ac_len; 
  97.  UWORD ac_per; 
  98.  UWORD ac_vol; 
  99.  UWORD ac_dat; 
  100.  UWORD ac_pad[2]; 
  101.  } aud[4];
  102.  APTR bplpt[8];
  103.  UWORD bplcon0;
  104.  UWORD bplcon1;
  105.  UWORD bplcon2;
  106.  UWORD bplcon3;
  107.  UWORD bpl1mod;
  108.  UWORD bpl2mod;
  109.  UWORD bplhmod;
  110.  UWORD pad86[1];
  111.  UWORD bpldat[8];
  112.  APTR sprpt[8];
  113.  struct SpriteDef {
  114.  UWORD pos;
  115.  UWORD ctl;
  116.  UWORD dataa;
  117.  UWORD datab;
  118.  } spr[8];
  119.  UWORD color[32];
  120.  UWORD htotal;
  121.  UWORD hsstop;
  122.  UWORD hbstrt;
  123.  UWORD hbstop;
  124.  UWORD vtotal;
  125.  UWORD vsstop;
  126.  UWORD vbstrt;
  127.  UWORD vbstop;
  128.  UWORD sprhstrt;
  129.  UWORD sprhstop;
  130.  UWORD bplhstrt;
  131.  UWORD bplhstop;
  132.  UWORD hhposw;
  133.  UWORD hhposr;
  134.  UWORD beamcon0;
  135.  UWORD hsstrt;
  136.  UWORD vsstrt;
  137.  UWORD hcenter;
  138.  UWORD diwhigh; 
  139. };
  140.  
  141. #ifdef ECS_SPECIFIC
  142.  
  143.  
  144. #define VARVBLANK 0x1000 
  145. #define LOLDIS 0x0800 
  146. #define CSCBLANKEN 0x0400 
  147. #define VARVSYNC 0x0200 
  148. #define VARHSYNC 0x0100 
  149. #define VARBEAM 0x0080 
  150. #define DISPLAYDUAL 0x0040 
  151. #define DISPLAYPAL 0x0020 
  152. #define VARCSYNC 0x0010 
  153. #define CSBLANK 0x0008 
  154. #define CSYNCTRUE 0x0004 
  155. #define VSYNCTRUE 0x0002 
  156. #define HSYNCTRUE 0x0001 
  157.  
  158.  
  159. #define USE_BPLCON3 1
  160.  
  161.  
  162. #define BPLCON2_ZDCTEN (1<<10) 
  163. #define BPLCON2_ZDBPEN (1<<11) 
  164. #define BPLCON2_ZDBPSEL0 (1<<12) 
  165. #define BPLCON2_ZDBPSEL1 (1<<13) 
  166. #define BPLCON2_ZDBPSEL2 (1<<14) 
  167.  
  168.  
  169. #define BPLCON3_EXTBLNKEN (1<<0) 
  170. #define BPLCON3_EXTBLKZD (1<<1) 
  171. #define BPLCON3_ZDCLKEN (1<<2) 
  172. #define BPLCON3_BRDNTRAN (1<<4) 
  173. #define BPLCON3_BRDNBLNK (1<<5) 
  174.  
  175. #endif 
  176.  
  177. #endif 
  178.