MCPcopy Create free account
hub / github.com/devkitPro/3ds-hbmenu / backgroundUpdate

Function backgroundUpdate

source/ui/background.c:194–233  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

192}
193
194void backgroundUpdate(void)
195{
196 u32 i, j;
197 u32 frames = drawingGetFrames();
198 u32 kDown = hidKeysDown();
199
200 wifiStatus = osGetWifiStrength();
201 PTMU_GetBatteryLevel(&batteryLevel);
202 PTMU_GetBatteryChargeState(&charging);
203
204 u64 timeInSeconds = osGetTime() / 1000;
205 u64 dayTime = timeInSeconds % SECONDS_IN_DAY;
206 u8 hour = dayTime / SECONDS_IN_HOUR;
207 u8 min = (dayTime % SECONDS_IN_HOUR) / SECONDS_IN_MINUTE;
208 u8 seconds = dayTime % SECONDS_IN_MINUTE;
209 sprintf(timeString, "%02d:%02d:%02d", hour, min, seconds);
210#ifdef DBGSTRING
211 sprintf(dbgString, "fs:%lu gpu: %.2f%% cpu: %.2f%%", frames, C3D_GetDrawingTime()*6, C3D_GetProcessingTime()*6);
212#endif
213
214 if (kDown & (KEY_LEFT|KEY_RIGHT))
215 waveDisturb(WAVE_HEIGHT);
216 else if (kDown & (KEY_UP|KEY_DOWN))
217 waveDisturb(WAVE_HEIGHT*0.5f);
218
219 // Update graphical effects
220 for (j = frames; j; j --)
221 {
222 waveUpdate();
223 for (i = 0; i < BUBBLE_COUNT; i ++)
224 bubbleUpdate(&bubbles[i]);
225 }
226
227 // Update logo
228 if (logoImg == images_logo2_idx)
229 logoPosX += frames/64.0f;
230 logoPosY -= frames/192.0f;
231 if (checkLogoAdv(kDown))
232 logoImg = images_logo2_idx;
233}
234
235void bubbleDraw(bubble_t* bubble, float top, float iod)
236{

Callers

nothing calls this directly

Calls 5

drawingGetFramesFunction · 0.85
waveDisturbFunction · 0.85
waveUpdateFunction · 0.85
bubbleUpdateFunction · 0.85
checkLogoAdvFunction · 0.85

Tested by

no test coverage detected