home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / cdrom / compactplayer / source / compactplayer.h < prev    next >
C/C++ Source or Header  |  1995-12-28  |  2KB  |  105 lines

  1. #include "protos.h"
  2. #include "CompactPlayer_Cat.h"
  3. #define GS(a) GetCompactPlayerString(a)
  4.  
  5. enum { G_Panel = 1, G_Backward, G_Play, G_Forward, G_Stop, G_Titles, G_Program, G_List, GG_MAX1, G_Artist, G_Title, G_TitleList, G_Track, G_SaveTitles, GG_MAX2, G_Device, G_Unit, G_Select, GG_MAX3, GG_MAX };
  6. extern struct Gadget * GList[GG_MAX];
  7. extern struct Screen * Scr;
  8. extern struct DrawInfo * Dri;
  9. extern struct Window * Win;
  10. extern Object *WinObj;
  11. extern struct Gadget * MainLayout;
  12. extern struct Window * ListWin;
  13. extern Object *ListWinObj;
  14. extern struct Gadget * ListLayout;
  15. extern struct Window * ConfWin;
  16. extern Object *ConfWinObj;
  17. extern struct Gadget * ConfLayout;
  18. extern STRPTR Screen;
  19. extern BOOL done;
  20. extern struct NewMenu CompactMenu[];
  21.  
  22. extern struct MsgPort *WinPort, *AppPort;
  23.  
  24. extern struct timerequest * TimerIO;
  25. extern struct MsgPort * TimerPort;
  26. extern struct Library * TimerBase;
  27. extern struct List * TrackList;
  28. extern struct MsgPort * SCSIPort;
  29. extern struct IOStdReq * SCSIIO;
  30. extern STRPTR Device;
  31. extern ULONG Unit;
  32. extern UBYTE * DataBuf;
  33. extern UBYTE * TOCBuf;
  34. extern UBYTE * SenseData;
  35. extern BOOL Ejected;
  36. extern BOOL JustStarted;
  37. extern ULONG EndAddress;
  38.  
  39. typedef struct
  40. {
  41.     UBYTE opcode;
  42.     UBYTE b1;
  43.     UBYTE b2;
  44.     UBYTE b3;
  45.     UBYTE b4;
  46.     UBYTE control;
  47. } SCSICMD6;
  48.  
  49. typedef struct
  50. {
  51.     UBYTE opcode;
  52.     UBYTE b1;
  53.     UBYTE b2;
  54.     UBYTE b3;
  55.     UBYTE b4;
  56.     UBYTE b5;
  57.     UBYTE b6;
  58.     UBYTE b7;
  59.     UBYTE b8;
  60.     UBYTE control;
  61. } SCSICMD10;
  62.  
  63. typedef struct
  64. {
  65.     UBYTE opcode;
  66.     UBYTE b1;
  67.     UBYTE b2;
  68.     UBYTE b3;
  69.     UBYTE b4;
  70.     UBYTE b5;
  71.     UBYTE b6;
  72.     UBYTE b7;
  73.     UBYTE b8;
  74.     UBYTE b9;
  75.     UBYTE b10;
  76.     UBYTE control;
  77. } SCSICMD12;
  78.  
  79. #define MAX_TOC        100                    /* maximum number of tracks */
  80. #define SENSE_LEN    18                    /* SCSI command reply data buffers */
  81. #define DATA_LEN    252                    /* SCSI command reply data buffers */
  82. #define TOC_LEN     (MAX_TOC * 8 + 4)    /* max TOC size = 100 TOC track descriptors */
  83.  
  84. extern ULONG TOCL[MAX_TOC];
  85. extern ULONG TOCT[MAX_TOC];
  86. extern UBYTE TOCF[MAX_TOC];
  87. extern STRPTR TOCS[MAX_TOC];
  88. extern ULONG TOCP[MAX_TOC];
  89. extern STRPTR TITLE[2];
  90. extern UBYTE TitleBuffer[(MAX_TOC+2)*40];
  91. extern ULONG Tracks;
  92. extern ULONG Track;
  93. extern STRPTR IndexPath;
  94.  
  95. extern struct TextAttr CompactAttr;
  96. extern struct TextAttr PanelAttr;
  97. extern struct TextFont * CompactFont;
  98. extern struct TextFont * PanelFont;
  99. extern struct TextFont * ScreenFont;
  100.  
  101. extern struct List dummyList;
  102. extern Class * CDPanelClass;
  103.  
  104. extern Object * ARexxObj;
  105.