home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 300-399 / ff343.lzh / SnakePit / SnakePitSrc.lzh / Snake.h < prev    next >
C/C++ Source or Header  |  1990-04-07  |  3KB  |  113 lines

  1. /* Snake_Windows.h  External definitions */
  2.  
  3. #define    Snake_Windows_h    1
  4.  
  5. #include    <EXEC/Types.h>
  6. #include    <EXEC/devices.h>
  7. #include    <EXEC/io.h>
  8. #include    <EXEC/memory.h>
  9. #include    <Devices/gameport.h>
  10. #include    <Devices/inputevent.h>
  11. #include    <Devices/audio.h>
  12. #include    <Libraries/dos.h>
  13. #include    <Intuition/Intuition.h>
  14. #include    <WorkBench/StartUp.h>
  15. #include    <Functions.h>
  16.  
  17. /* The standard sound period */
  18. #define    SoundPeriod        428L
  19.  
  20. /* Some RAW keyboard stuff... */
  21. #define    RAW_ESC        0x45
  22. #define    RAW_HELP    0x5F
  23. #define    RAW_MAX        0x5F
  24. #define    EMPTY_KEYBOARD    (IEQUALIFIER_CAPSLOCK | IEQUALIFIER_NUMERICPAD | IEQUALIFIER_REPEAT)
  25.  
  26. typedef    struct    ScoreList_rec
  27.     {
  28.         UBYTE    str[16];
  29.         ULONG    score;
  30.     }    ScoreList_rec;
  31.  
  32. typedef    struct    KeyList_rec
  33.     {
  34.         UBYTE    str[3];
  35.         UBYTE    raw;
  36.     }    KeyList_rec;
  37.  
  38. #define    MAX_LEVEL    50
  39. #define    NUM_COL        40
  40. #define    NUM_ROW        24
  41.  
  42. typedef    BYTE        Pit_Screen_Col[NUM_ROW];
  43. typedef    Pit_Screen_Col    Pit_Screen[NUM_COL];
  44.  
  45. /* These CAN NOT change!!!  They are connected to the TOOLS menu... */
  46. #define    NORMAL_BRICK    1
  47. #define    MOVING_BRICK    2
  48. #define    DROP_BRICK    3
  49. #define    POPUP_BRICK    4
  50. #define    GROW_FOOD    5
  51. #define    SHRINK_FOOD    6
  52. #define    EMPTY_SQUARE    0
  53.  
  54. extern    Pit_Screen    All_Pit_Screens[MAX_LEVEL];
  55. extern    ScoreList_rec    ScoreList[8];
  56. extern    KeyList_rec    KeyList[4];
  57.  
  58. extern        char    *Save_File;
  59.  
  60. extern    struct    Image    Head[4];
  61. extern    struct    Image    Body[4];
  62. extern    struct    Image    Turn[4];
  63. extern    struct    Image    Tail[4];
  64. extern    struct    Image    ShrinkFood;
  65. extern    struct    Image    GrowFood;
  66. extern    struct    Image    PopUpBrick;
  67. extern    struct    Image    DropBrick;
  68. extern    struct    Image    MoveBrick;
  69. extern    struct    Image    Brick;
  70. extern    struct    Image    Empty;
  71.  
  72. extern    struct    Window    *MyWindow;
  73.  
  74. extern    struct    MsgPort        *Timer;
  75. extern    struct    timerequest    Time_Req;
  76.  
  77. extern    struct    Image        Splash;
  78.  
  79. extern    short        OpenMyWindow();
  80. extern    VOID        CloseMyWindow();
  81. extern    short        Request_SelectLevel();
  82. extern    VOID        Request_SelectKeys();
  83. extern    VOID        Request_HighScores();
  84. extern    short        Request_Pause();
  85. extern    VOID        fix_KeyList();
  86. extern    VOID        UpDate_Status();
  87. extern    VOID        Edit_Screens();
  88. extern    VOID        SetUp_For_Save();
  89. extern    VOID        Save_It_Now();
  90. extern    VOID        Play_Game();
  91. extern    VOID        Set_Color_Level();
  92. extern    VOID        Cycle_Colors();
  93. extern    VOID        Do_Fade();
  94. extern    VOID        UnDo_Fade();
  95. extern    VOID        Show_Title();
  96. extern    VOID        Hide_Title();
  97. extern    UBYTE        Convert_Key();
  98. extern    VOID        ShowWait();
  99. extern    VOID        MyMain();
  100.  
  101. extern    VOID        Sound_Eat();
  102. extern    VOID        Sound_Move();
  103. extern    VOID        Sound_Dead();
  104. extern    VOID        Sound_Finish();
  105. extern    VOID        Sound_Play();
  106. extern    VOID        Init_Sound();
  107. extern    VOID        Stop_Sound();
  108. extern    VOID        Stop_This_Channel();
  109. extern    VOID        Start_This_Channel();
  110.  
  111. extern    struct    IntuitionBase    *IntuitionBase;
  112. extern    struct    GfxBase        *GfxBase;
  113.