-#define GAME_CONTROL_LEVEL_NUMBER 0
-#define GAME_CONTROL_GEMS 1
-#define GAME_CONTROL_INVENTORY_COUNT 2
-#define GAME_CONTROL_INVENTORY_FIRST_1 3
-#define GAME_CONTROL_INVENTORY_FIRST_2 4
-#define GAME_CONTROL_INVENTORY_FIRST_3 5
-#define GAME_CONTROL_INVENTORY_FIRST_4 6
-#define GAME_CONTROL_INVENTORY_FIRST_5 7
-#define GAME_CONTROL_INVENTORY_FIRST_6 8
-#define GAME_CONTROL_INVENTORY_FIRST_7 9
-#define GAME_CONTROL_INVENTORY_FIRST_8 10
-#define GAME_CONTROL_INVENTORY_LAST_1 11
-#define GAME_CONTROL_INVENTORY_LAST_2 12
-#define GAME_CONTROL_INVENTORY_LAST_3 13
-#define GAME_CONTROL_INVENTORY_LAST_4 14
-#define GAME_CONTROL_INVENTORY_LAST_5 15
-#define GAME_CONTROL_INVENTORY_LAST_6 16
-#define GAME_CONTROL_INVENTORY_LAST_7 17
-#define GAME_CONTROL_INVENTORY_LAST_8 18
-#define GAME_CONTROL_KEY_1 19
-#define GAME_CONTROL_KEY_2 20
-#define GAME_CONTROL_KEY_3 21
-#define GAME_CONTROL_KEY_4 22
-#define GAME_CONTROL_KEY_5 23
-#define GAME_CONTROL_KEY_6 24
-#define GAME_CONTROL_KEY_7 25
-#define GAME_CONTROL_KEY_8 26
-#define GAME_CONTROL_KEY_WHITE 27
-#define GAME_CONTROL_KEY_WHITE_COUNT 28
-#define GAME_CONTROL_SCORE 29
-#define GAME_CONTROL_TIME 30
-#define GAME_CONTROL_TIME_HH 31
-#define GAME_CONTROL_TIME_MM 32
-#define GAME_CONTROL_TIME_SS 33
-#define GAME_CONTROL_SHIELD_NORMAL 34
-#define GAME_CONTROL_SHIELD_NORMAL_TIME 35
-#define GAME_CONTROL_SHIELD_DEADLY 36
-#define GAME_CONTROL_SHIELD_DEADLY_TIME 37
-#define GAME_CONTROL_EXIT 38
-#define GAME_CONTROL_EM_EXIT 39
-#define GAME_CONTROL_SP_EXIT 40
-#define GAME_CONTROL_STEEL_EXIT 41
-#define GAME_CONTROL_EM_STEEL_EXIT 42
-#define GAME_CONTROL_EMC_MAGIC_BALL 43
-#define GAME_CONTROL_EMC_MAGIC_BALL_SWITCH 44
-#define GAME_CONTROL_LIGHT_SWITCH 45
-#define GAME_CONTROL_LIGHT_SWITCH_TIME 46
-#define GAME_CONTROL_TIMEGATE_SWITCH 47
-#define GAME_CONTROL_TIMEGATE_SWITCH_TIME 48
-#define GAME_CONTROL_SWITCHGATE_SWITCH 49
-#define GAME_CONTROL_EMC_LENSES 50
-#define GAME_CONTROL_EMC_LENSES_TIME 51
-#define GAME_CONTROL_EMC_MAGNIFIER 52
-#define GAME_CONTROL_EMC_MAGNIFIER_TIME 53
-#define GAME_CONTROL_BALLOON_SWITCH 54
-#define GAME_CONTROL_DYNABOMB_NUMBER 55
-#define GAME_CONTROL_DYNABOMB_SIZE 56
-#define GAME_CONTROL_DYNABOMB_POWER 57
-#define GAME_CONTROL_PENGUINS 58
-#define GAME_CONTROL_SOKOBAN_OBJECTS 59
-#define GAME_CONTROL_SOKOBAN_FIELDS 60
-#define GAME_CONTROL_ROBOT_WHEEL 61
-#define GAME_CONTROL_CONVEYOR_BELT_1 62
-#define GAME_CONTROL_CONVEYOR_BELT_1_SWITCH 63
-#define GAME_CONTROL_CONVEYOR_BELT_2 64
-#define GAME_CONTROL_CONVEYOR_BELT_2_SWITCH 65
-#define GAME_CONTROL_CONVEYOR_BELT_3 66
-#define GAME_CONTROL_CONVEYOR_BELT_3_SWITCH 67
-#define GAME_CONTROL_CONVEYOR_BELT_4 68
-#define GAME_CONTROL_CONVEYOR_BELT_4_SWITCH 69
-#define GAME_CONTROL_MAGIC_WALL 70
-#define GAME_CONTROL_MAGIC_WALL_TIME 71
-#define GAME_CONTROL_BD_MAGIC_WALL 72
-#define GAME_CONTROL_DC_MAGIC_WALL 73
-#define GAME_CONTROL_PLAYER_NAME 74
-#define GAME_CONTROL_LEVEL_NAME 75
-#define GAME_CONTROL_LEVEL_AUTHOR 76
-
-#define NUM_GAME_CONTROLS 77
-
-int game_control_value[NUM_GAME_CONTROLS];
-int last_game_control_value[NUM_GAME_CONTROLS];
-
-struct GameControlInfo
+#define GAME_PANEL_LEVEL_NUMBER 0
+#define GAME_PANEL_GEMS 1
+#define GAME_PANEL_INVENTORY_COUNT 2
+#define GAME_PANEL_INVENTORY_FIRST_1 3
+#define GAME_PANEL_INVENTORY_FIRST_2 4
+#define GAME_PANEL_INVENTORY_FIRST_3 5
+#define GAME_PANEL_INVENTORY_FIRST_4 6
+#define GAME_PANEL_INVENTORY_FIRST_5 7
+#define GAME_PANEL_INVENTORY_FIRST_6 8
+#define GAME_PANEL_INVENTORY_FIRST_7 9
+#define GAME_PANEL_INVENTORY_FIRST_8 10
+#define GAME_PANEL_INVENTORY_LAST_1 11
+#define GAME_PANEL_INVENTORY_LAST_2 12
+#define GAME_PANEL_INVENTORY_LAST_3 13
+#define GAME_PANEL_INVENTORY_LAST_4 14
+#define GAME_PANEL_INVENTORY_LAST_5 15
+#define GAME_PANEL_INVENTORY_LAST_6 16
+#define GAME_PANEL_INVENTORY_LAST_7 17
+#define GAME_PANEL_INVENTORY_LAST_8 18
+#define GAME_PANEL_KEY_1 19
+#define GAME_PANEL_KEY_2 20
+#define GAME_PANEL_KEY_3 21
+#define GAME_PANEL_KEY_4 22
+#define GAME_PANEL_KEY_5 23
+#define GAME_PANEL_KEY_6 24
+#define GAME_PANEL_KEY_7 25
+#define GAME_PANEL_KEY_8 26
+#define GAME_PANEL_KEY_WHITE 27
+#define GAME_PANEL_KEY_WHITE_COUNT 28
+#define GAME_PANEL_SCORE 29
+#define GAME_PANEL_HIGHSCORE 30
+#define GAME_PANEL_TIME 31
+#define GAME_PANEL_TIME_HH 32
+#define GAME_PANEL_TIME_MM 33
+#define GAME_PANEL_TIME_SS 34
+#define GAME_PANEL_SHIELD_NORMAL 35
+#define GAME_PANEL_SHIELD_NORMAL_TIME 36
+#define GAME_PANEL_SHIELD_DEADLY 37
+#define GAME_PANEL_SHIELD_DEADLY_TIME 38
+#define GAME_PANEL_EXIT 39
+#define GAME_PANEL_EMC_MAGIC_BALL 40
+#define GAME_PANEL_EMC_MAGIC_BALL_SWITCH 41
+#define GAME_PANEL_LIGHT_SWITCH 42
+#define GAME_PANEL_LIGHT_SWITCH_TIME 43
+#define GAME_PANEL_TIMEGATE_SWITCH 44
+#define GAME_PANEL_TIMEGATE_SWITCH_TIME 45
+#define GAME_PANEL_SWITCHGATE_SWITCH 46
+#define GAME_PANEL_EMC_LENSES 47
+#define GAME_PANEL_EMC_LENSES_TIME 48
+#define GAME_PANEL_EMC_MAGNIFIER 49
+#define GAME_PANEL_EMC_MAGNIFIER_TIME 50
+#define GAME_PANEL_BALLOON_SWITCH 51
+#define GAME_PANEL_DYNABOMB_NUMBER 52
+#define GAME_PANEL_DYNABOMB_SIZE 53
+#define GAME_PANEL_DYNABOMB_POWER 54
+#define GAME_PANEL_PENGUINS 55
+#define GAME_PANEL_SOKOBAN_OBJECTS 56
+#define GAME_PANEL_SOKOBAN_FIELDS 57
+#define GAME_PANEL_ROBOT_WHEEL 58
+#define GAME_PANEL_CONVEYOR_BELT_1 59
+#define GAME_PANEL_CONVEYOR_BELT_2 60
+#define GAME_PANEL_CONVEYOR_BELT_3 61
+#define GAME_PANEL_CONVEYOR_BELT_4 62
+#define GAME_PANEL_CONVEYOR_BELT_1_SWITCH 63
+#define GAME_PANEL_CONVEYOR_BELT_2_SWITCH 64
+#define GAME_PANEL_CONVEYOR_BELT_3_SWITCH 65
+#define GAME_PANEL_CONVEYOR_BELT_4_SWITCH 66
+#define GAME_PANEL_MAGIC_WALL 67
+#define GAME_PANEL_MAGIC_WALL_TIME 68
+#define GAME_PANEL_GRAVITY_STATE 69
+#define GAME_PANEL_GRAPHIC_1 70
+#define GAME_PANEL_GRAPHIC_2 71
+#define GAME_PANEL_GRAPHIC_3 72
+#define GAME_PANEL_GRAPHIC_4 73
+#define GAME_PANEL_GRAPHIC_5 74
+#define GAME_PANEL_GRAPHIC_6 75
+#define GAME_PANEL_GRAPHIC_7 76
+#define GAME_PANEL_GRAPHIC_8 77
+#define GAME_PANEL_ELEMENT_1 78
+#define GAME_PANEL_ELEMENT_2 79
+#define GAME_PANEL_ELEMENT_3 80
+#define GAME_PANEL_ELEMENT_4 81
+#define GAME_PANEL_ELEMENT_5 82
+#define GAME_PANEL_ELEMENT_6 83
+#define GAME_PANEL_ELEMENT_7 84
+#define GAME_PANEL_ELEMENT_8 85
+#define GAME_PANEL_ELEMENT_COUNT_1 86
+#define GAME_PANEL_ELEMENT_COUNT_2 87
+#define GAME_PANEL_ELEMENT_COUNT_3 88
+#define GAME_PANEL_ELEMENT_COUNT_4 89
+#define GAME_PANEL_ELEMENT_COUNT_5 90
+#define GAME_PANEL_ELEMENT_COUNT_6 91
+#define GAME_PANEL_ELEMENT_COUNT_7 92
+#define GAME_PANEL_ELEMENT_COUNT_8 93
+#define GAME_PANEL_CE_SCORE_1 94
+#define GAME_PANEL_CE_SCORE_2 95
+#define GAME_PANEL_CE_SCORE_3 96
+#define GAME_PANEL_CE_SCORE_4 97
+#define GAME_PANEL_CE_SCORE_5 98
+#define GAME_PANEL_CE_SCORE_6 99
+#define GAME_PANEL_CE_SCORE_7 100
+#define GAME_PANEL_CE_SCORE_8 101
+#define GAME_PANEL_CE_SCORE_1_ELEMENT 102
+#define GAME_PANEL_CE_SCORE_2_ELEMENT 103
+#define GAME_PANEL_CE_SCORE_3_ELEMENT 104
+#define GAME_PANEL_CE_SCORE_4_ELEMENT 105
+#define GAME_PANEL_CE_SCORE_5_ELEMENT 106
+#define GAME_PANEL_CE_SCORE_6_ELEMENT 107
+#define GAME_PANEL_CE_SCORE_7_ELEMENT 108
+#define GAME_PANEL_CE_SCORE_8_ELEMENT 109
+#define GAME_PANEL_PLAYER_NAME 110
+#define GAME_PANEL_LEVEL_NAME 111
+#define GAME_PANEL_LEVEL_AUTHOR 112
+
+#define NUM_GAME_PANEL_CONTROLS 113
+
+struct GamePanelOrderInfo
+{
+ int nr;
+ int sort_priority;
+};
+
+static struct GamePanelOrderInfo game_panel_order[NUM_GAME_PANEL_CONTROLS];
+
+struct GamePanelControlInfo