From 07e2d775621f09d64b0816bd557f7c8d1cbb300d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mat=C3=ADas=20Israelson?= <57065102+israpps@users.noreply.github.com> Date: Thu, 6 Feb 2025 19:32:45 -0300 Subject: [PATCH] a --- Makefile | 6 +++--- docs/IOPBOOT.CNF | 5 +++++ embed.make | 3 +++ iop/__precompiled/accore.irx | Bin 0 -> 6128 bytes iop/__precompiled/acuart_tty.irx | Bin 6672 -> 6688 bytes src/main.c | 25 ++++++++++++++++++++++++- 6 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 docs/IOPBOOT.CNF create mode 100644 iop/__precompiled/accore.irx diff --git a/Makefile b/Makefile index bbe79d5f..76109fbc 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ DS34 ?= 0 SMB ?= 0 TMANIP ?= 1 ETH ?= 1 -EXFAT ?= 0 +EXFAT ?= 1 DVRP ?= 0 IOP_RESET ?= 1 XFROM ?= 0 @@ -62,12 +62,12 @@ ifeq ($(COH), 1) EE_LIBS += -liopreboot LIBPAD = 2 HAS_COH = -COH - EE_CFLAGS += -DSUPPORT_SYSTEM_2X6 + EE_CFLAGS += -DSUPPORT_SYSTEM_2X6 -DCOMMON_PRINTF HOMEBREW_DONGLEMAN = 1 EE_OBJS += mcman_irx.o ifeq ($(ACUART), 1) $(info -- adding support for arcade UART) - EE_OBJS += acuart_tty_irx.o + EE_OBJS += acuart_tty_irx.o accore_irx.o EE_CFLAGS += -DACUART HAS_ACUART = -ACUART endif diff --git a/docs/IOPBOOT.CNF b/docs/IOPBOOT.CNF new file mode 100644 index 00000000..01ac8175 --- /dev/null +++ b/docs/IOPBOOT.CNF @@ -0,0 +1,5 @@ +# example of custom IOP Boot list. these modules are executed in order before program UI is ready +ACCORE = mc0:accore.irx +ACUART = mc0:acuart.irx +ACTTY = mc0:actty.irx +LED = rom:LED \ No newline at end of file diff --git a/embed.make b/embed.make index 6df918b6..0c2751a0 100644 --- a/embed.make +++ b/embed.make @@ -173,6 +173,9 @@ $(EE_ASM_DIR)sior_irx.s: $(PS2SDK)/iop/irx/sior.irx | $(EE_ASM_DIR) $(EE_ASM_DIR)acuart_tty_irx.s: iop/__precompiled/acuart_tty.irx | $(EE_ASM_DIR) $(BIN2S) $< $@ acuart_tty_irx + +$(EE_ASM_DIR)accore_irx.s: iop/__precompiled/accore.irx | $(EE_ASM_DIR) + $(BIN2S) $< $@ accore_irx iop/AllowDVDV.irx: iop/AllowDVDV $(MAKE) -C $< diff --git a/iop/__precompiled/accore.irx b/iop/__precompiled/accore.irx new file mode 100644 index 0000000000000000000000000000000000000000..41fb3b15d18502c90fa1a1f277df942eb49a0a1d GIT binary patch literal 6128 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 Ny5q2Sx82mV?%&Nd8*u;t literal 0 HcmV?d00001 diff --git a/iop/__precompiled/acuart_tty.irx b/iop/__precompiled/acuart_tty.irx index bf9b247e44e02fef3eff317038446095b0e3fa34..331d03467e453aae7419a0a52fea74bdd924b21b 100644 GIT binary patch delta 2471 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 0 && ret != 1) ? " | watchdog running" : " | watchdog error"); + sprintf(mainMsg + strlen(mainMsg), (id > 0 && ret != 1) ? " | watch OK" : " | watch NG"); } DPRINTF("%s\n",mainMsg); + + { + int var_cnt; + char *RAM_p, *CNF_p, *name, *value; + if ((RAM_p = preloadCNF("mc1:IOPBOOT.CNF"))) { + CNF_p = RAM_p; + for (var_cnt = 0; get_CNF_string(&CNF_p, &name, &value); var_cnt++) { + id = SifLoadStartModule(value, 0, NULL, &ret); + printf("%s:%s %d %d\n", name, value, id, ret); + if (ret != 0 || id < 0) {drawMsg(value); sleep(2);} + // ((i & 3) != 0) + } + free(RAM_p); + } + sprintf(mainMsg + strlen(mainMsg), (RAM_p) ? " | IOPLS OK" : " | IOPLS NG"); + } #endif //Here nearly everything is ready for the main menu event loop