changed comments from old to new style (one-line comments only)
[rocksndiamonds.git] / src / game_sp / export.h
index 42d014206a75c0d43ae58e4060c17a84f536577f..1ac2d311d4b40cbd6ab90ea0b4b4d47e3f00ba61 100644 (file)
@@ -1,13 +1,13 @@
 #ifndef GAME_SP_EXPORT_H
 #define GAME_SP_EXPORT_H
 
-/* ========================================================================= */
-/* functions and definitions exported from game_sp to main program           */
-/* ========================================================================= */
+// ============================================================================
+// functions and definitions exported from game_sp to main program
+// ============================================================================
 
-/* ------------------------------------------------------------------------- */
-/* constant definitions                                                      */
-/* ------------------------------------------------------------------------- */
+// ----------------------------------------------------------------------------
+// constant definitions
+// ----------------------------------------------------------------------------
 
 #define SP_MAX_PLAYFIELD_WIDTH         MAX_PLAYFIELD_WIDTH
 #define SP_MAX_PLAYFIELD_HEIGHT                MAX_PLAYFIELD_HEIGHT
 #define SP_STD_LEVEL_SIZE              (SP_HEADER_SIZE + SP_STD_PLAYFIELD_SIZE)
 
 #define SP_FRAMES_PER_SECOND           35
-#define SP_MAX_TAPE_LEN                        64010   /* (see "spfix63.doc") */
 
+// use a much higher value to be able to load ultra-long MPX demo files
+// (like for level collection 78, level 88 ("WAITING FOR GODOT AGAIN"))
+// #define SP_MAX_TAPE_LEN                     500000
+#define SP_MAX_TAPE_LEN                        64010   // (see "spfix63.doc")
 
-/* sound actions */
+
+// sound actions
 
 #define actActive                      0
 #define actImpact                      1
 #define actDropping                    8
 
 
-/* ------------------------------------------------------------------------- */
-/* data structure definitions                                                */
-/* ------------------------------------------------------------------------- */
+// ----------------------------------------------------------------------------
+// data structure definitions
+// ----------------------------------------------------------------------------
 
 #ifndef HAS_SpecialPortType
 typedef struct
 {
-  short PortLocation; // = 2*(x+(y*60))                /* big endian format */
+  short PortLocation; // = 2*(x+(y*60))                // big endian format
   byte Gravity; // 1 = turn on, anything else (0) = turn off
   byte FreezeZonks; // 2 = turn on, anything else (0) = turn off  (1=off!)
   byte FreezeEnemies; // 1 = turn on, anything else (0) = turn off
@@ -76,7 +80,7 @@ typedef struct
   SpecialPortType SpecialPort[10];
   byte SpeedByte; // = Speed XOR Highbyte(RandomSeed)
   byte CheckSumByte; // = CheckSum XOR SpeedByte
-  short DemoRandomSeed;                                /* little endian format */
+  short DemoRandomSeed;                                // little endian format
 } LevelInfoType;
 #define HAS_LevelInfoType
 #endif
@@ -90,13 +94,13 @@ struct GameInfo_SP
   boolean LevelSolved;
   boolean GameOver;
 
-  /* needed for updating panel */
+  // needed for updating panel
   int time_played;
   int infotrons_still_needed;
   int red_disk_count;
   int score;
 
-  /* needed for engine snapshots */
+  // needed for engine snapshots
   char **preceding_buffer;
   int preceding_buffer_size;
 
@@ -105,12 +109,12 @@ struct GameInfo_SP
 
 struct DemoInfo_SP
 {
-  boolean is_available;                /* structure contains valid demo */
+  boolean is_available;                // structure contains valid demo
 
-  int level_nr;                        /* number of corresponding level */
+  int level_nr;                        // number of corresponding level
 
-  int length;                  /* number of demo entries */
-  byte data[SP_MAX_TAPE_LEN];  /* array of demo entries */
+  int length;                  // number of demo entries
+  byte data[SP_MAX_TAPE_LEN];  // array of demo entries
 };
 
 struct LevelInfo_SP
@@ -124,7 +128,7 @@ struct LevelInfo_SP
 
   struct DemoInfo_SP demo;
 
-  /* used for runtime values */
+  // used for runtime values
   struct GameInfo_SP *game_sp;
 };
 
@@ -143,7 +147,7 @@ struct GraphicInfo_SP
   boolean has_crumbled_graphics;
   boolean preserve_background;
 
-  int unique_identifier;       /* used to identify needed screen updates */
+  int unique_identifier;       // used to identify needed screen updates
 };
 
 struct EngineSnapshotInfo_SP
@@ -160,9 +164,9 @@ struct EngineSnapshotInfo_SP
 };
 
 
-/* ------------------------------------------------------------------------- */
-/* exported functions                                                        */
-/* ------------------------------------------------------------------------- */
+// ----------------------------------------------------------------------------
+// exported functions
+// ----------------------------------------------------------------------------
 
 extern struct GlobalInfo_SP global_sp_info;
 extern struct GameInfo_SP game_sp;
@@ -171,33 +175,34 @@ extern struct GraphicInfo_SP graphic_info_sp_object[TILE_MAX][8];
 extern struct GraphicInfo_SP graphic_info_sp_player[MAX_PLAYERS][SPR_MAX][8];
 extern struct EngineSnapshotInfo_SP engine_snapshot_sp;
 
-extern void sp_open_all();
-extern void sp_close_all();
+void sp_open_all(void);
+void sp_close_all(void);
+
+void InitPrecedingPlayfieldMemory(void);
+void InitGfxBuffers_SP(void);
 
-extern void InitPrecedingPlayfieldMemory();
-extern void InitGfxBuffers_SP();
+void InitGameEngine_SP(void);
+void GameActions_SP(byte *, boolean);
 
-extern void InitGameEngine_SP();
-extern void GameActions_SP(byte *, boolean);
+unsigned int InitEngineRandom_SP(int);
 
-extern unsigned int InitEngineRandom_SP(int);
+void setLevelInfoToDefaults_SP(void);
+void copyInternalEngineVars_SP(void);
+boolean LoadNativeLevel_SP(char *, int, boolean);
+void SaveNativeLevel_SP(char *);
 
-extern void setLevelInfoToDefaults_SP();
-extern void copyInternalEngineVars_SP();
-extern boolean LoadNativeLevel_SP(char *, int, boolean);
-extern void SaveNativeLevel_SP(char *);
+int getFieldbufferOffsetX_SP(void);
+int getFieldbufferOffsetY_SP(void);
 
-extern void BackToFront_SP(void);
-extern void BlitScreenToBitmap_SP(Bitmap *);
-extern void RedrawPlayfield_SP(boolean);
-extern void DrawGameDoorValues_SP();
+void BlitScreenToBitmap_SP(Bitmap *);
+void RedrawPlayfield_SP(boolean);
 
-extern void LoadEngineSnapshotValues_SP();
-extern void SaveEngineSnapshotValues_SP();
+void LoadEngineSnapshotValues_SP(void);
+void SaveEngineSnapshotValues_SP(ListNode **);
 
-extern int map_key_RND_to_SP(int);
-extern int map_key_SP_to_RND(int);
+int map_key_RND_to_SP(int);
+int map_key_SP_to_RND(int);
 
-extern int getRedDiskReleaseFlag_SP();
+int getRedDiskReleaseFlag_SP(void);
 
-#endif /* GAME_SP_EXPORT_H */
+#endif // GAME_SP_EXPORT_H