mirror of
https://github.com/CTCaer/hekate.git
synced 2024-12-23 00:22:01 +00:00
Bugfixes
- Fixed partial dumping filename/bar position - Add return for menu function handler - More files to bootloader folder
This commit is contained in:
parent
bf816c5107
commit
7e876388b4
7 changed files with 21 additions and 16 deletions
|
@ -132,8 +132,7 @@ void config_autoboot()
|
|||
|
||||
LIST_INIT(ini_sections);
|
||||
|
||||
u8 max_entries = 29;
|
||||
bool ini_freed = true;
|
||||
u8 max_entries = 30;
|
||||
|
||||
ment_t *ments = (ment_t *)malloc(sizeof(ment_t) * (max_entries + 3));
|
||||
u32 *boot_values = (u32 *)malloc(sizeof(u32) * max_entries);
|
||||
|
@ -146,8 +145,6 @@ void config_autoboot()
|
|||
{
|
||||
if (ini_parse(&ini_sections, "bootloader/hekate_ipl.ini"))
|
||||
{
|
||||
ini_freed = false;
|
||||
|
||||
// Build configuration menu.
|
||||
ments[0].type = MENT_BACK;
|
||||
ments[0].caption = "Back";
|
||||
|
@ -229,8 +226,7 @@ out2:;
|
|||
free(ments);
|
||||
free(boot_values);
|
||||
free(boot_text);
|
||||
if (!ini_freed)
|
||||
ini_free(&ini_sections);
|
||||
ini_free(&ini_sections);
|
||||
|
||||
sd_unmount();
|
||||
|
||||
|
|
|
@ -33,6 +33,8 @@ extern hekate_config h_cfg;
|
|||
|
||||
void tui_sbar(gfx_con_t *con, bool force_update)
|
||||
{
|
||||
u32 cx, cy;
|
||||
|
||||
u32 timePassed = get_tmr_s() - h_cfg.sbar_time_keeping;
|
||||
if (!force_update)
|
||||
if (timePassed < 5)
|
||||
|
@ -45,7 +47,7 @@ void tui_sbar(gfx_con_t *con, bool force_update)
|
|||
u32 battPercent = 0;
|
||||
int battVoltCurr = 0;
|
||||
|
||||
gfx_con_getpos(con, &con->savedx, &con->savedy);
|
||||
gfx_con_getpos(con, &cx, &cy);
|
||||
gfx_con_setpos(con, 0, 1260);
|
||||
|
||||
max17050_get_property(MAX17050_RepSOC, (int *)&battPercent);
|
||||
|
@ -64,7 +66,7 @@ void tui_sbar(gfx_con_t *con, bool force_update)
|
|||
gfx_printf(con, " %k-%d mA %k%K\n",
|
||||
0xFF880000, (~battVoltCurr) / 1000, 0xFFCCCCCC, 0xFF1B1B1B);
|
||||
con->fntsz = prevFontSize;
|
||||
gfx_con_setpos(con, con->savedx, con->savedy);
|
||||
gfx_con_setpos(con, cx, cy);
|
||||
}
|
||||
|
||||
void tui_pbar(gfx_con_t *con, int x, int y, u32 val, u32 fgcol, u32 bgcol)
|
||||
|
@ -187,6 +189,9 @@ void *tui_do_menu(gfx_con_t *con, menu_t *menu)
|
|||
case MENT_BACK:
|
||||
return NULL;
|
||||
break;
|
||||
case MENT_HDLR_RE:
|
||||
ent->handler(ent->data);
|
||||
return NULL;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#define MENT_BACK 4
|
||||
#define MENT_CAPTION 5
|
||||
#define MENT_CHGLINE 6
|
||||
#define MENT_HDLR_RE 7
|
||||
|
||||
typedef struct _ment_t
|
||||
{
|
||||
|
|
|
@ -14,9 +14,9 @@
|
|||
// Taken from http://infocenter.arm.com/help/topic/com.arm.doc.ihi0044f/IHI0044F_aaelf.pdf
|
||||
#define R_ARM_NONE 0
|
||||
#define R_ARM_ABS32 2
|
||||
#define R_ARM_RELATIVE 23
|
||||
#define R_ARM_JUMP_SLOT 22
|
||||
#define R_ARM_GLOB_DAT 21
|
||||
#define R_ARM_RELATIVE 23
|
||||
|
||||
el_status el_applyrel(el_ctx *ctx, Elf_Rel *rel)
|
||||
{
|
||||
|
|
|
@ -57,7 +57,6 @@
|
|||
#include "power/bq24193.h"
|
||||
#include "config/config.h"
|
||||
#include "ianos/ianos.h"
|
||||
#include "libs/elfload/elfload.h"
|
||||
|
||||
//TODO: ugly.
|
||||
gfx_ctxt_t gfx_ctxt;
|
||||
|
@ -1834,7 +1833,7 @@ void auto_launch_firmware()
|
|||
|
||||
if (sd_mount())
|
||||
{
|
||||
if (ini_parse(&ini_sections, "hekate_ipl.ini"))
|
||||
if (ini_parse(&ini_sections, "bootloader/hekate_ipl.ini"))
|
||||
{
|
||||
u32 configEntry = 0;
|
||||
u32 boot_entry_id = 0;
|
||||
|
@ -1900,10 +1899,10 @@ void auto_launch_firmware()
|
|||
{
|
||||
bitmap = (u8 *)sd_file_read(bootlogoCustomEntry);
|
||||
if (bitmap == NULL) // Custom entry bootlogo not found, trying default custom one.
|
||||
bitmap = (u8 *)sd_file_read("bootlogo.bmp");
|
||||
bitmap = (u8 *)sd_file_read("bootloader/bootlogo.bmp");
|
||||
}
|
||||
else // User has not set a custom logo path.
|
||||
bitmap = (u8 *)sd_file_read("bootlogo.bmp");
|
||||
bitmap = (u8 *)sd_file_read("bootloader/bootlogo.bmp");
|
||||
|
||||
if (bitmap != NULL)
|
||||
{
|
||||
|
@ -1952,6 +1951,7 @@ void auto_launch_firmware()
|
|||
}
|
||||
else
|
||||
{
|
||||
gfx_clear_grey(&gfx_ctxt, 0x1B);
|
||||
BOOTLOGO = (void *)malloc(0x4000);
|
||||
blz_uncompress_srcdest(BOOTLOGO_BLZ, SZ_BOOTLOGO_BLZ, BOOTLOGO, SZ_BOOTLOGO);
|
||||
gfx_set_rect_grey(&gfx_ctxt, BOOTLOGO, X_BOOTLOGO, Y_BOOTLOGO, 326, 544);
|
||||
|
@ -2285,7 +2285,7 @@ void print_battery_info()
|
|||
if (sd_mount())
|
||||
{
|
||||
char path[64];
|
||||
emmcsn_path_impl(path, "/Dumps", "fuel_gauge.bin", NULL);
|
||||
emmcsn_path_impl(path, "/dumps", "fuel_gauge.bin", NULL);
|
||||
if (sd_save_to_file((u8 *)buf, 0x200, path))
|
||||
EPRINTF("\nError creating fuel.bin file.");
|
||||
else
|
||||
|
@ -2582,7 +2582,6 @@ menu_t menu_tools = {
|
|||
|
||||
ment_t ment_top[] = {
|
||||
MDEF_HANDLER("Launch firmware", launch_firmware),
|
||||
MDEF_HANDLER("Launch ELF", launch_elf),
|
||||
MDEF_MENU("Launch options", &menu_options),
|
||||
MDEF_CAPTION("---------------", 0xFF444444),
|
||||
MDEF_MENU("Tools", &menu_tools),
|
||||
|
@ -2619,7 +2618,7 @@ void ipl_main()
|
|||
ianos_loader(true, "bootloader/sys/libsys_lp0.bso", DRAM_LIB, (void *)sdram_get_params());
|
||||
|
||||
display_init();
|
||||
//display_color_screen(0xAABBCCDD);
|
||||
|
||||
u32 *fb = display_init_framebuffer();
|
||||
gfx_init_ctxt(&gfx_ctxt, fb, 720, 1280, 768);
|
||||
|
||||
|
@ -2632,6 +2631,7 @@ void ipl_main()
|
|||
|
||||
// Enable backlight after initializing gfx
|
||||
//display_backlight(true);
|
||||
|
||||
set_default_configuration();
|
||||
// Load saved configuration and auto boot if enabled.
|
||||
auto_launch_firmware();
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#define CLK_RST_CONTROLLER_CLK_SYSTEM_RATE 0x30
|
||||
#define CLK_RST_CONTROLLER_MISC_CLK_ENB 0x48
|
||||
#define CLK_RST_CONTROLLER_OSC_CTRL 0x50
|
||||
#define CLK_RST_CONTROLLER_PLLC_BASE 0x80
|
||||
#define CLK_RST_CONTROLLER_PLLC_MISC 0x88
|
||||
#define CLK_RST_CONTROLLER_PLLM_BASE 0x90
|
||||
#define CLK_RST_CONTROLLER_PLLM_MISC1 0x98
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include "../utils/types.h"
|
||||
|
||||
#define HOST1X_BASE 0x50000000
|
||||
#define BPMP_CACHE_BASE 0x50040000
|
||||
#define DISPLAY_A_BASE 0x54200000
|
||||
#define DSI_BASE 0x54300000
|
||||
#define VIC_BASE 0x54340000
|
||||
|
@ -57,6 +58,7 @@
|
|||
#define _REG(base, off) *(vu32 *)((base) + (off))
|
||||
|
||||
#define HOST1X(off) _REG(HOST1X_BASE, off)
|
||||
#define BPMP_CACHE_CTRL(off) _REG(BPMP_CACHE_BASE, off)
|
||||
#define DISPLAY_A(off) _REG(DISPLAY_A_BASE, off)
|
||||
#define DSI(off) _REG(DSI_BASE, off)
|
||||
#define VIC(off) _REG(VIC_BASE, off)
|
||||
|
|
Loading…
Reference in a new issue