- BlitBitmap(screenBitmap, target_bitmap, 0, 0,
- SCR_FIELDX * TILEX, SCR_FIELDY * TILEY, SX, SY);
+ DDScrollBuffer_Blt_Ext(target_bitmap);
+}
+#endif
+
+void RedrawPlayfield_SP(boolean force_redraw)
+{
+ // subDisplayLevel();
+
+ if (force_redraw)
+ RestorePlayfield();
+
+ UpdatePlayfield(force_redraw);
+
+ BackToFront_SP();
+}
+
+void DrawGameDoorValues_SP()
+{
+#if 1
+
+ game_sp.time_played = TimerVar / setup.game_frame_delay;
+ game_sp.infotrons_still_needed = InfotronsNeeded;
+ game_sp.red_disk_count = RedDiskCount;
+ game_sp.score = 0; // (currently no score in Supaplex engine)
+
+#else
+
+ int infotrons_still_needed = InfotronsNeeded;
+ int red_disks = RedDiskCount;
+ int no_score_in_supaplex = 0;
+#if 1
+ int level_time_played = TimerVar / setup.game_frame_delay;
+#else
+ int level_time_played = TimerVar / 35; /* !!! CHECK THIS !!! */
+#endif
+ int no_keys_in_supaplex = 0;
+
+ DrawAllGameValues(infotrons_still_needed, red_disks, no_score_in_supaplex,
+ level_time_played, no_keys_in_supaplex);
+#endif