void mali_core_scaling_update(struct mali_gpu_utilization_data *data) { /* * This function implements a very trivial PP core scaling algorithm. * * It is _NOT_ of production quality. * The only intention behind this algorithm is to exercise and test the * core scaling functionality of the driver. * It is _NOT_ tuned for neither power saving nor performance! * * Other metrics than PP utilization need to be considered as well * in order to make a good core scaling algorithm. */ MALI_DEBUG_PRINT(3, ("Utilization: (%3d, %3d, %3d), cores enabled: %d/%d\n", data->utilization_gpu, data->utilization_gp, data->utilization_pp, num_cores_enabled, num_cores_total)); /* NOTE: this function is normally called directly from the utilization callback which is in * timer context. */ if (PERCENT_OF(90, 256) < data->utilization_pp) { enable_max_num_cores(); } else if (PERCENT_OF(50, 256) < data->utilization_pp) { enable_one_core(); } else if (PERCENT_OF(40, 256) < data->utilization_pp) { /* do nothing */ } else if (PERCENT_OF(0, 256) < data->utilization_pp) { disable_one_core(); } else { /* do nothing */ } }
bool InitializeMainMenu() { // Create gui screens. if(!g_Render->CreateGUI(g_mainGui)) return false; if(!g_Render->CreateGUI(g_startGui)) return false; if(!g_Render->CreateGUI(g_creditsGui)) return false; // Load backdrops. if(!g_Render->AddGUIBackdrop(g_mainGui, "menu/mainMenu.jpg")) return false; if(!g_Render->AddGUIBackdrop(g_startGui, "menu/startMenu.jpg")) return false; if(!g_Render->AddGUIBackdrop(g_creditsGui, "menu/creditsMenu.jpg")) return false; // Set main screen elements. if(!g_Render->AddGUIStaticText(g_mainGui, STATIC_TEXT_ID, "Version: 1.0", PERCENT_OF(WIN_WIDTH, 0.85), PERCENT_OF(WIN_WIDTH, 0.05), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIButton(g_mainGui, BUTTON_START_ID, PERCENT_OF(WIN_WIDTH, 0.05), PERCENT_OF(WIN_HEIGHT, 0.40), "menu/startUp.png", "menu/StartOver.png", "menu/startDown.png")) return false; if(!g_Render->AddGUIButton(g_mainGui, BUTTON_CREDITS_ID, PERCENT_OF(WIN_WIDTH, 0.05), PERCENT_OF(WIN_HEIGHT, 0.50), "menu/creditsUp.png", "menu/creditsOver.png", "menu/creditsDown.png")) return false; if(!g_Render->AddGUIButton(g_mainGui, BUTTON_QUIT_ID, PERCENT_OF(WIN_WIDTH, 0.05), PERCENT_OF(WIN_HEIGHT, 0.60), "menu/quitUp.png", "menu/quitOver.png", "menu/quitDown.png")) return false; // Set start screen elements. if(!g_Render->AddGUIButton(g_startGui, BUTTON_LEVEL_1_ID, PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.15), "menu/level1Up.png", "menu/level1Over.png", "menu/level1Down.png")) return false; if(!g_Render->AddGUIButton(g_startGui, BUTTON_BACK_ID, PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.80), "menu/backUp.png", "menu/backOver.png", "menu/backDown.png")) return false; //if(!g_Render->AddGUIButton(g_startGui, BUTTON_BACK_ID, // PERCENT_OF(WIN_WIDTH, 0.0), PERCENT_OF(WIN_HEIGHT, 0.0), // "menu/backUp.png", "menu/backOver.png", // "menu/backDown.png")) return false; // Set credits screen elements. if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, "Game Design -", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.15), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Allen Sherrod", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.20), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, "Programming -", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.25), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Allen Sherrod", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.30), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, "Sound -", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.35), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Allen Sherrod", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.40), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, "Level Design -", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.45), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Allen Sherrod", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.50), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, "Speical Thanks -", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.55), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Jenifer Niles", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.60), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Bryan Davidson", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.65), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Charles River Media", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.70), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIStaticText(g_creditsGui, STATIC_TEXT_ID, " Readers of this book", PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.75), UGPCOLOR_ARGB(255,255,255,255), g_arialID)) return false; if(!g_Render->AddGUIButton(g_creditsGui, BUTTON_BACK_ID, PERCENT_OF(WIN_WIDTH, 0.1), PERCENT_OF(WIN_HEIGHT, 0.80), "menu/backUp.png", "menu/backOver.png", "menu/backDown.png")) return false; return true; }