mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/branches/20130304_launcher_save_app_to_sd_kai@3077 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
fd5072de22
commit
4a7de1415e
33
build/components/Makefile
Normal file
33
build/components/Makefile
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
#! make -f
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlFirm - build
|
||||||
|
# File: Makefile
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
SUBDIRS = \
|
||||||
|
hyena.TWL \
|
||||||
|
jackal.TWL
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
149
build/components/hyena.TWL/Makefile
Normal file
149
build/components/hyena.TWL/Makefile
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
#! make -f
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlIPL
|
||||||
|
# File: Makefile
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# Main memory にコードを退避させたathdrvを使用。(for test)
|
||||||
|
TMP_WL_MAIN ?= FALSE
|
||||||
|
|
||||||
|
TARGET_FIRM = SYSTEMMENU
|
||||||
|
override TARGET_PLATFORM = TWL
|
||||||
|
override TWL_PROC = ARM7
|
||||||
|
override TWL_ARCHGEN = LIMITED
|
||||||
|
TWL_NO_STD_PCHDR = True
|
||||||
|
override TARGET_CODEGEN = ARM
|
||||||
|
|
||||||
|
FIRM_LIBSUFFIX = .firm$(ARCHGEN_TYPE)$(CODEGEN_ARCH)
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
SUBDIRS = $(SYSMENU_ROOT)/build/libraries/aes \
|
||||||
|
wram_regs
|
||||||
|
|
||||||
|
SRCS = crt0.LTD.c \
|
||||||
|
main.c \
|
||||||
|
initScfg.c
|
||||||
|
|
||||||
|
TARGET_NAME = hyena
|
||||||
|
|
||||||
|
TARGET_NEF = $(TARGET_NAME).tef
|
||||||
|
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
LCFILE_SPEC = $(TARGET_NAME)_wlmain.lsf
|
||||||
|
else
|
||||||
|
LCFILE_SPEC = $(TARGET_NAME).lsf
|
||||||
|
endif
|
||||||
|
|
||||||
|
LCFILE_TEMPLATE = $(TARGET_NAME).lcf.template
|
||||||
|
LDRES_TEMPLATE = $(ROOT)/build/components/racoon.TWL/racoon.response.template
|
||||||
|
|
||||||
|
# crt0.oは、ランチャー向けに特殊ビルドしたものを使用
|
||||||
|
CRT0_O = $(OBJDIR)/crt0.LTD.o
|
||||||
|
|
||||||
|
# スタック不足防止の為、インライン展開せずにコンパイルする
|
||||||
|
CCFLAGS_OPT = -O4 -inline off
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
# crt0.o 、 libpm_sp および libnwm_sp は、ローカルでビルドしたものを使用するので、除外する。
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
GLIBRARIES := $(filter-out $(CRT0_O) libpm_sp$(TWL_LIBSUFFIX).a libnwm_sp$(TWL_LIBSUFFIX).a libathdrv_sp$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
||||||
|
else
|
||||||
|
GLIBRARIES := $(filter-out $(CRT0_O) libpm_sp$(TWL_LIBSUFFIX).a libnwm_sp$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifdef TWLSDK_NOCRYPTO
|
||||||
|
CCFLAGS += -DSDK_NOCRYPTO
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifndef TWLSDK_NOCRYPTO
|
||||||
|
MAKELCF_FLAGS += -DUSE_CRYPTO_LIBS='libsea_sp$(TWL_LIBSUFFIX).a libcrypto_sp$(TWL_LIBSUFFIX).a'
|
||||||
|
MACRO_FLAGS += -DSDK_SEA
|
||||||
|
endif
|
||||||
|
|
||||||
|
MACRO_FLAGS += -DSDK_NOINIT \
|
||||||
|
-DSDK_SYSMENU_BUILD
|
||||||
|
#MACRO_FLAGS += -DSDK_ARM7COMP_LTD
|
||||||
|
|
||||||
|
ifeq ($(DEFAULT_COMP_ARM7),hyena)
|
||||||
|
MACRO_FLAGS += -DUSE_HYENA_COMPONENT
|
||||||
|
endif
|
||||||
|
|
||||||
|
MAKELCF_FLAGS += -DADDRESS_LTDWRAM='0x037a0000' \
|
||||||
|
-DADDRESS_FLXMAIN='0x02280200' \
|
||||||
|
-DADDRESS_BOOTCORE='0x0380f000' \
|
||||||
|
-DCRT0_O='$(CRT0_O)' \
|
||||||
|
-DFIRM_LIBSUFFIX='$(FIRM_LIBSUFFIX)'
|
||||||
|
|
||||||
|
MAKELCF_FLAGS += -DISDBG_LIBS_TWL='$(if $(ISDBG_LIBS_TWL),$(ISDBG_LIBS_TWL),libstubsistd_sp$(TWL_LIBSUFFIX).a)' \
|
||||||
|
-DISDBG_LIBS_NITRO='libstubsisd_sp$(TWL_LIBSUFFIX).a'
|
||||||
|
|
||||||
|
|
||||||
|
#--------------------------------
|
||||||
|
# install target
|
||||||
|
#--------------------------------
|
||||||
|
INSTALL_TARGETS = $(BINDIR)/$(TARGET_NAME).tef \
|
||||||
|
$(BINDIR)/$(TARGET_NAME).TWL.FLX.sbin \
|
||||||
|
$(BINDIR)/$(TARGET_NAME)_defs.TWL.FLX.sbin \
|
||||||
|
$(BINDIR)/$(TARGET_NAME).TWL.LTD.sbin \
|
||||||
|
$(BINDIR)/$(TARGET_NAME)_defs.TWL.LTD.sbin
|
||||||
|
|
||||||
|
INSTALL_DIR = $(TWL_INSTALL_COMPONENTSDIR)/$(TARGET_NAME)/$(TWL_BUILDTYPE)
|
||||||
|
|
||||||
|
LINCLUDES = $(ROOT)/build/libraries/spi/ARM7/include \
|
||||||
|
$(ROOT)/build/libraries/spi/ARM7/pm/include \
|
||||||
|
$(ROOT)/build/libraries/init/common/include \
|
||||||
|
$(ROOT)/build/libraries/reboot/common/include \
|
||||||
|
$(SYSMENU_ROOT)/build/libraries_sysmenu/sysmenu/common/include
|
||||||
|
|
||||||
|
SYSMENU_LIBS = \
|
||||||
|
libsysmenu_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libsysmmcu_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libboot_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libds_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libhotsw_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libdht_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libpm_sp.SYSMENU$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
SYSMENU_LIBS += \
|
||||||
|
libathdrv_sp.SYSMENU$(TWL_LIBSUFFIX).a
|
||||||
|
endif
|
||||||
|
|
||||||
|
SDK_APPEND_LIBS = \
|
||||||
|
libwl_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libaes_sp$(FIRM_LIBSUFFIX).a \
|
||||||
|
libsea_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libreboot_sp$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
|
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
||||||
|
|
||||||
|
LLIBRARY_DIRS += ./
|
||||||
|
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
LLIBRARY_DIRS += $(SYSMENU_ROOT)/lib/TwlWireless/$(TWL_LIBTYPE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
LDEPENDS_NEF = $(TWL_LIBS) $(LLIBRARIES)
|
||||||
|
|
||||||
|
|
||||||
|
do-build: $(TARGETS)
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
Binary file not shown.
Binary file not shown.
1016
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/hyena.autogen.lcf
Normal file
1016
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/hyena.autogen.lcf
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,57 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/initScfg.o
|
||||||
|
-l./obj/ARM7-TS.LTD/Release/crt0.LTD.o
|
||||||
|
obj/ARM7-TS.LTD/Release/main.o
|
||||||
|
-llibsubpsyscall.a
|
||||||
|
-llibsyscall_sp.twl.a
|
||||||
|
-lMSL_C_NITRO_Ai_LE.a
|
||||||
|
-lMSL_Extras_NITRO_Ai_LE.a
|
||||||
|
-lMSL_CPP_NITRO_Ai_LE.a
|
||||||
|
-lFP_fastI_v4t_LE.a
|
||||||
|
-lNITRO_Runtime_Ai_LE.a
|
||||||
|
-llibos_sp.TWL.LTD.a
|
||||||
|
-llibmi_sp.TWL.LTD.a
|
||||||
|
-llibpad_sp.TWL.LTD.a
|
||||||
|
-llibpxi_sp.TWL.LTD.a
|
||||||
|
-llibstd_sp.TWL.LTD.a
|
||||||
|
-llibexi_sp.TWL.LTD.a
|
||||||
|
-llibsnd_sp.TWL.LTD.a
|
||||||
|
-llibspi_sp.TWL.LTD.a
|
||||||
|
-llibpm_sp.SYSMENU.TWL.LTD.a
|
||||||
|
-llibmath_sp.TWL.LTD.a
|
||||||
|
-llibscfg_sp.TWL.LTD.a
|
||||||
|
-llibtp_sp.TWL.LTD.a
|
||||||
|
-llibmic_sp.TWL.LTD.a
|
||||||
|
-llibfs_sp.TWL.LTD.a
|
||||||
|
-llibcard_sp.TWL.LTD.a
|
||||||
|
-llibi2c_sp.TWL.LTD.a
|
||||||
|
-llibcamera_sp.TWL.LTD.a
|
||||||
|
-llibcdc_sp.TWL.LTD.a
|
||||||
|
-llibsndex_sp.TWL.LTD.a
|
||||||
|
-llibtpex_sp.TWL.LTD.a
|
||||||
|
-llibmicex_sp.TWL.LTD.a
|
||||||
|
-llibmcu_sp.TWL.LTD.a
|
||||||
|
-llibsdio_sp.TWL.LTD.a
|
||||||
|
-llibnvram_sp.TWL.LTD.a
|
||||||
|
-llibrtc_sp.TWL.LTD.a
|
||||||
|
-llibboot_sp.TWL.LTD.a
|
||||||
|
-llibreboot_sp.TWL.LTD.a
|
||||||
|
-llibhotsw_sp.TWL.LTD.a
|
||||||
|
-llibreloc_info_sp.TWL.LTD.a
|
||||||
|
-llibsysmenu_sp.TWL.LTD.a
|
||||||
|
-llibsysmmcu_sp.TWL.LTD.a
|
||||||
|
-llibds_sp.TWL.LTD.a
|
||||||
|
-llibaes_sp.firm.LTD.a
|
||||||
|
-llibsea_sp.TWL.LTD.a
|
||||||
|
-llibcrypto_sp.TWL.LTD.a
|
||||||
|
-llibwm_sp.TWL.LTD.a
|
||||||
|
-llibnwm_sp.SYSMENU.TWL.LTD.a
|
||||||
|
-llibwvr_sp.TWL.LTD.a
|
||||||
|
-llibwl_sp.TWL.LTD.a
|
||||||
|
-llibwpa_sp.TWL.LTD.a
|
||||||
|
-llibathdrv_sp.TWL.LTD.a
|
||||||
|
-llibfatfs_sp.TWL.LTD.a
|
||||||
|
-llibdht_sp.TWL.LTD.a
|
||||||
|
-llibsea_sp.TWL.LTD.a
|
||||||
|
-llibcrypto_sp.TWL.LTD.a
|
||||||
|
-llibistdsubparm.a
|
||||||
|
-llibstubsisd_sp.TWL.LTD.a
|
||||||
BIN
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/hyena.tef
Normal file
BIN
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/hyena.tef
Normal file
Binary file not shown.
11627
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/hyena.tef.xMAP
Normal file
11627
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/hyena.tef.xMAP
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
BIN
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/ltdmain.check
Normal file
BIN
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/ltdmain.check
Normal file
Binary file not shown.
BIN
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/workram.check
Normal file
BIN
build/components/hyena.TWL/bin/ARM7-TS.LTD/Release/workram.check
Normal file
Binary file not shown.
@ -0,0 +1,32 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/crt0.LTD.o: src/crt0.LTD.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/common/armArch.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/emulator.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/printf.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/init/crt0.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_shared.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_parameter.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_AES.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SCFG.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_MI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_GX.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_EXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_OS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SPI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_wramEnv.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom_certificate.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/init/common/include/boot_sync.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/code32.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/codereset.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/code32.h
|
||||||
@ -0,0 +1,25 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/initScfg.o: src/initScfg.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_shared.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_parameter.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_AES.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SCFG.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_MI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_GX.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_EXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_OS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SPI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_wramEnv.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/code32.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/codereset.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/code32.h
|
||||||
283
build/components/hyena.TWL/depend/ARM7-TS.LTD/Release/main.d
Normal file
283
build/components/hyena.TWL/depend/ARM7-TS.LTD/Release/main.d
Normal file
@ -0,0 +1,283 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/main.o: src/main.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/init/crt0.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_shared.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_parameter.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_AES.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SCFG.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_MI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_GX.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_EXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_OS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SPI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/system.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/systemCall.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/stream.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/uncompress.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/misc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/printf.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/systemCall.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/tick.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/thread.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/context.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/callTrace.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/profile.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/version.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/alarm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/arena.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/valarm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/common/armArch.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/system.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/misc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/interrupt.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/interrupt.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/event.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/spinLock.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/timer.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/emulator.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/message.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/mutex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/exception.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/init.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/alloc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/reset.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/pxi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/init.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/compparam.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/dma.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/exMemory.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/memory.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/swap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/secureUncompress.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/byteAccess.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/uncomp_stream.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/compress.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/init.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/endian.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/platform.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/cache.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/device.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/regname.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/ownerInfo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spec.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/config.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/userInfo_ts_300.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/gx/gxcommon.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fx/fx.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/entropy.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/systemWork.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/resource.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/functionCost.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/systemWork.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/application_jump.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl_hybrid.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spec.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/armArch.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/common/lcd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi/common/dma.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi/common/sharedWram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pad.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pad/common/pad.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pad/ARM7/xyButton.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/type.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi/common/mic_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/ARM7/spi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/ARM7/pm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/pm_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi/common/pm_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi/ARM7/shutdown.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/common/type.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/ARM7/control.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/ARM7/instruction.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/ARM7/gpio.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc/common/type_ex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc/common/fifo_ex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc/ARM7/instruction_ex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/snd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/alarm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/command.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/work.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/exchannel.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/channel.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/seq.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/capture.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/data.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/bank.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/mml.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/midiplayer.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/util.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/snd/common/sndex_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/snd/ARM7/sndex_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/eeprom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/backup.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/flash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/fram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/rom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/hash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/pullOut.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/archive.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/romfat.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/file.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/overlay.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/hook.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std/string.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std/unicode.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std/stdlib.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs/common/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs/common/api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs/ARM7/command.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/gx.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/gx/gx_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wm/common/wm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/common/version_wl.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wm/ARM7/wm_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlLib.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlBuf.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlFrame.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlCmd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlCmdLabel.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlStaList.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlParam.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wvr.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wvr/common/wvr_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wvr/ARM7/wvr_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/common/ctrdg_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_backup.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_task.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_flash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_sram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_flash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_sram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_task.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM7/ctrdg_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/math.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/rand.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/qsort.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/fft.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/checksum.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/crc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/dgt.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm/common/nwm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm/ARM7/nwm_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/scfg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/scfg/common/scfg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_wramEnv.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/scfg/ARM7/scfg_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/common/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/common/util.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/ARM7/i2c.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/ARM7/control.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/dsp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/exi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/exi/ARM7/genPort.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/ownerInfoEx.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm/ARM7/ForLauncher/nwm_sp_init_for_launcher.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/codecmode.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_reg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_twlmode_access.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_dsmode_access.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/aes.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/aes/common/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/aes/ARM7/hi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/mcu_reg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/i2c.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/i2c/ARM7/i2c.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/control.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/intr.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom_certificate.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/banner.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/NTRSettings.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/TWLSettings.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/countryCode.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/ownerInfoEx_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/TWLHWInfo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib/common/sysmenu_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nam.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/msJump.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/os/common/include/application_jump_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/reloc_info/common/reloc_info.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/os/common/include/application_jump_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib/common/sysmenu_work.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/hw/common/mmap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/gcd/blowfish.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib/common/pxi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/boot.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/boot/common/boot_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/hotsw.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/hotsw/common/hotsw.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sharedFont.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/util.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/WDSWrapper.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/WDS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/mcu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/mcu/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/mcu/ARM7/mcu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/hw/common/mmap_firm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/hw/ARM7/mmap_firm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/spi/ARM7/pm/include/pm_pmic.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/build/libraries_sysmenu/sysmenu/common/include/internal_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/spi/ARM7/include/nvram_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/spi/ARM7/include/spi_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/sea.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/ltdwram_begin.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/section.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/ltdwram_end.h
|
||||||
932
build/components/hyena.TWL/hyena.lcf.template
Normal file
932
build/components/hyena.TWL/hyena.lcf.template
Normal file
@ -0,0 +1,932 @@
|
|||||||
|
#---------------------------------------------------------------------------
|
||||||
|
# Project: TwlIPL
|
||||||
|
# File: hyena.lcf.template
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# check.XXX は、ランチャーがロード可能なサイズおよびautoload後のメモリマップに応じて制限サイズを設定する。
|
||||||
|
|
||||||
|
MEMORY
|
||||||
|
{
|
||||||
|
<STATIC.NAME> (RWX) : ORIGIN = <STATIC.ADDRESS>, LENGTH = 0x0 > <STATIC.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
|
||||||
|
<FOREACH.AUTOLOADS>
|
||||||
|
<AUTOLOAD.NAME> (RWX) : ORIGIN = <AUTOLOAD.ADDRESS>, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
<END.AUTOLOADS>
|
||||||
|
binary.AUTOLOAD_INFO (RWX) : ORIGIN = 0, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
binary.STATIC_FOOTER (RWX) : ORIGIN = 0, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
|
||||||
|
<PROPERTY.OVERLAYDEFS>F (RW) : ORIGIN = 0, LENGTH = 0x0 > <PROPERTY.OVERLAYDEFS><PROPERTY.FLXSUFFIX>
|
||||||
|
<PROPERTY.OVERLAYTABLE>F (RW) : ORIGIN = 0, LENGTH = 0x0 > <PROPERTY.OVERLAYTABLE><PROPERTY.FLXSUFFIX>
|
||||||
|
<FOREACH.OVERLAYS>
|
||||||
|
<OVERLAY.NAME> (RWXO): ORIGIN = <OVERLAY.ADDRESS>, LENGTH = 0x0 > <OVERLAY.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
<END.OVERLAYS>
|
||||||
|
|
||||||
|
check.WORKRAM (RWX) : ORIGIN = 0x037a0000, LENGTH = 0x6a000 > workram.check
|
||||||
|
|
||||||
|
binary.LTDAUTOLOAD_TOP (RW) : ORIGIN = 0, LENGTH = 0x0 > <STATIC.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
<FOREACH.LTDAUTOLOADS>
|
||||||
|
<LTDAUTOLOAD.NAME> (RWX) : ORIGIN = <LTDAUTOLOAD.ADDRESS>, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
<END.LTDAUTOLOADS>
|
||||||
|
binary.LTDAUTOLOAD_INFO (RWX) : ORIGIN = 0, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
|
||||||
|
<PROPERTY.LTDOVERLAYDEFS>L (RW) : ORIGIN = 0, LENGTH = 0x0 > <PROPERTY.LTDOVERLAYDEFS><PROPERTY.LTDSUFFIX>
|
||||||
|
<PROPERTY.LTDOVERLAYTABLE>L (RW) : ORIGIN = 0, LENGTH = 0x0 > <PROPERTY.LTDOVERLAYTABLE><PROPERTY.LTDSUFFIX>
|
||||||
|
<FOREACH.LTDOVERLAYS>
|
||||||
|
<LTDOVERLAY.NAME> (RWXO): ORIGIN = <LTDOVERLAY.ADDRESS>, LENGTH = 0x0 > <LTDOVERLAY.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
<END.LTDOVERLAYS>
|
||||||
|
|
||||||
|
check.LTDMAIN (RWX) : ORIGIN = 0x02280200, LENGTH = 0xf8000 > ltdmain.check
|
||||||
|
}
|
||||||
|
|
||||||
|
KEEP_SECTION
|
||||||
|
{
|
||||||
|
.sinit
|
||||||
|
}
|
||||||
|
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
############################ STATIC #################################
|
||||||
|
.<STATIC.NAME>:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.STATIC.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <STATIC.SEARCHSYMBOL>;
|
||||||
|
<END.STATIC.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_STATIC_START =.;
|
||||||
|
SDK_STATIC_TEXT_START =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
OBJECT(_start,*)
|
||||||
|
<FOREACH.STATIC.OBJECTS=.text>
|
||||||
|
<STATIC.OBJECT=.text:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.text>
|
||||||
|
<STATIC.LIBRARY=.text:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.rodata>
|
||||||
|
<STATIC.OBJECT=.rodata:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.rodata>
|
||||||
|
<STATIC.LIBRARY=.rodata:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.init>
|
||||||
|
<STATIC.OBJECT=.init:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.init>
|
||||||
|
<STATIC.LIBRARY=.init:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_SINIT_START =.;
|
||||||
|
#:::::::::: ctor
|
||||||
|
<FOREACH.STATIC.OBJECTS=.ctor>
|
||||||
|
<STATIC.OBJECT=.ctor:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.ctor>
|
||||||
|
<STATIC.LIBRARY=.ctor:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.sinit>
|
||||||
|
<STATIC.OBJECT=.sinit:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.sinit>
|
||||||
|
<STATIC.LIBRARY=.sinit:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
#:::::::::: ctor
|
||||||
|
SDK_STATIC_SINIT_END =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
SDK_STATIC_TEXT_END =.;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_DATA_START =.;
|
||||||
|
#:::::::::: data
|
||||||
|
<FOREACH.STATIC.OBJECTS=.sdata>
|
||||||
|
<STATIC.OBJECT=.sdata:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.sdata>
|
||||||
|
<STATIC.LIBRARY=.sdata:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.data>
|
||||||
|
<STATIC.OBJECT=.data:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.data>
|
||||||
|
<STATIC.LIBRARY=.data:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
#:::::::::: data
|
||||||
|
SDK_STATIC_DATA_END =.;
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_END =.;
|
||||||
|
|
||||||
|
SDK_STATIC_TEXT_SIZE = SDK_STATIC_TEXT_END - SDK_STATIC_TEXT_START;
|
||||||
|
SDK_STATIC_DATA_SIZE = SDK_STATIC_DATA_END - SDK_STATIC_DATA_START;
|
||||||
|
SDK_STATIC_SIZE = SDK_STATIC_END - SDK_STATIC_START;
|
||||||
|
__sinit__ = SDK_STATIC_SINIT_START; # for static initializer
|
||||||
|
|
||||||
|
} > <STATIC.NAME>
|
||||||
|
|
||||||
|
.<STATIC.NAME>.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.STATIC.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <STATIC.SEARCHSYMBOL>;
|
||||||
|
<END.STATIC.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_STATIC_BSS_START =.;
|
||||||
|
#:::::::::: bss
|
||||||
|
<FOREACH.STATIC.OBJECTS=.sbss>
|
||||||
|
<STATIC.OBJECT=.sbss:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.sbss>
|
||||||
|
<STATIC.LIBRARY=.sbss:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.bss>
|
||||||
|
<STATIC.OBJECT=.bss:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.bss>
|
||||||
|
<STATIC.LIBRARY=.bss:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
#:::::::::: bss
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_BSS_END = .;
|
||||||
|
|
||||||
|
SDK_STATIC_BSS_SIZE = SDK_STATIC_BSS_END - SDK_STATIC_BSS_START;
|
||||||
|
|
||||||
|
} >> <STATIC.NAME>
|
||||||
|
|
||||||
|
|
||||||
|
############################ AUTOLOADS ##############################
|
||||||
|
SDK_AUTOLOAD.WRAM.START = 0x037c0000;
|
||||||
|
SDK_AUTOLOAD.WRAM.END = SDK_AUTOLOAD.WRAM.START;
|
||||||
|
SDK_AUTOLOAD.WRAM.BSS_END = SDK_AUTOLOAD.WRAM.START;
|
||||||
|
SDK_AUTOLOAD.WRAM.SIZE = 0;
|
||||||
|
SDK_AUTOLOAD.WRAM.BSS_SIZE = 0;
|
||||||
|
SDK_AUTOLOAD_START = SDK_STATIC_END;
|
||||||
|
SDK_AUTOLOAD_SIZE = 0;
|
||||||
|
SDK_AUTOLOAD_NUMBER = <NUMBER.AUTOLOADS>;
|
||||||
|
|
||||||
|
<FOREACH.AUTOLOADS>
|
||||||
|
.<AUTOLOAD.NAME>:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.AUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <AUTOLOAD.SEARCHSYMBOL>;
|
||||||
|
<END.AUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_AUTOLOAD_<AUTOLOAD.NAME>_ID =<AUTOLOAD.ID>;
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.ID =<AUTOLOAD.ID>;
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.START =.;
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.TEXT_START =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.text>
|
||||||
|
<AUTOLOAD.OBJECT=.text:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.text>
|
||||||
|
<AUTOLOAD.LIBRARY=.text:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.etable>
|
||||||
|
<AUTOLOAD.OBJECT=.exception:t>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.rsvwram>
|
||||||
|
<AUTOLOAD.OBJECT=.rsvwram:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.rsvwram>
|
||||||
|
<AUTOLOAD.LIBRARY=.rsvwram:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_ETABLE_START =.;
|
||||||
|
__exception_table_start__ =.;
|
||||||
|
EXCEPTION
|
||||||
|
__exception_table_end__ =.;
|
||||||
|
SDK_STATIC_ETABLE_END =.;
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.rodata>
|
||||||
|
<AUTOLOAD.OBJECT=.rodata:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.rodata>
|
||||||
|
<AUTOLOAD.LIBRARY=.rodata:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.init>
|
||||||
|
<AUTOLOAD.OBJECT=.init:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.init>
|
||||||
|
<AUTOLOAD.LIBRARY=.init:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.SINIT_START =.;
|
||||||
|
#:::::::::: ctor
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.ctor>
|
||||||
|
<AUTOLOAD.OBJECT=.ctor:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.ctor>
|
||||||
|
<AUTOLOAD.LIBRARY=.ctor:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.sinit>
|
||||||
|
<AUTOLOAD.OBJECT=.sinit:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.sinit>
|
||||||
|
<AUTOLOAD.LIBRARY=.sinit:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
#:::::::::: ctor
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.SINIT_END =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.TEXT_END =.;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE BLOCK
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.DATA_START =.;
|
||||||
|
#:::::::::: data
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.wram>
|
||||||
|
<AUTOLOAD.OBJECT=.wram:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.wram>
|
||||||
|
<AUTOLOAD.LIBRARY=.wram:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.ltdwram>
|
||||||
|
<AUTOLOAD.OBJECT=.ltdwram:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.ltdwram>
|
||||||
|
<AUTOLOAD.LIBRARY=.ltdwram:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.sdata>
|
||||||
|
<AUTOLOAD.OBJECT=.sdata:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.sdata>
|
||||||
|
<AUTOLOAD.LIBRARY=.sdata:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.data>
|
||||||
|
<AUTOLOAD.OBJECT=.data:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.data>
|
||||||
|
<AUTOLOAD.LIBRARY=.data:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
#:::::::::: data
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.DATA_END =.;
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.END =.;
|
||||||
|
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.TEXT_SIZE = SDK_AUTOLOAD.<AUTOLOAD.NAME>.TEXT_END - SDK_AUTOLOAD.<AUTOLOAD.NAME>.TEXT_START;
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.DATA_SIZE = SDK_AUTOLOAD.<AUTOLOAD.NAME>.DATA_END - SDK_AUTOLOAD.<AUTOLOAD.NAME>.DATA_START;
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.SIZE = SDK_AUTOLOAD.<AUTOLOAD.NAME>.END - SDK_AUTOLOAD.<AUTOLOAD.NAME>.START;
|
||||||
|
SDK_AUTOLOAD_SIZE = SDK_AUTOLOAD_SIZE + SDK_AUTOLOAD.<AUTOLOAD.NAME>.SIZE;
|
||||||
|
|
||||||
|
} > <AUTOLOAD.NAME>
|
||||||
|
|
||||||
|
.<AUTOLOAD.NAME>.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.AUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <AUTOLOAD.SEARCHSYMBOL>;
|
||||||
|
<END.AUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.BSS_START = .;
|
||||||
|
#:::::::::: bss
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.wram>
|
||||||
|
<AUTOLOAD.OBJECT=.wram.bss:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.wram>
|
||||||
|
<AUTOLOAD.LIBRARY=.wram.bss:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.ltdwram>
|
||||||
|
<AUTOLOAD.OBJECT=.ltdwram.bss:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.ltdwram>
|
||||||
|
<AUTOLOAD.LIBRARY=.ltdwram.bss:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.sbss>
|
||||||
|
<AUTOLOAD.OBJECT=.sbss:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.sbss>
|
||||||
|
<AUTOLOAD.LIBRARY=.sbss:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.bss>
|
||||||
|
<AUTOLOAD.OBJECT=.bss:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.bss>
|
||||||
|
<AUTOLOAD.LIBRARY=.bss:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.AUTOLOAD.OBJECTS=.rsvwram>
|
||||||
|
<AUTOLOAD.OBJECT=.rsvwram.bss:t>
|
||||||
|
<END.AUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.AUTOLOAD.LIBRARIES=.rsvwram>
|
||||||
|
<AUTOLOAD.LIBRARY=.rsvwram.bss:t>
|
||||||
|
<END.AUTOLOAD.LIBRARIES>
|
||||||
|
#:::::::::: bss
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.BSS_END = .;
|
||||||
|
|
||||||
|
SDK_AUTOLOAD.<AUTOLOAD.NAME>.BSS_SIZE = SDK_AUTOLOAD.<AUTOLOAD.NAME>.BSS_END - SDK_AUTOLOAD.<AUTOLOAD.NAME>.BSS_START;
|
||||||
|
|
||||||
|
} >> <AUTOLOAD.NAME>
|
||||||
|
|
||||||
|
<END.AUTOLOADS>
|
||||||
|
|
||||||
|
SDK_AUTOLOAD_WRAM_START = SDK_AUTOLOAD.WRAM.START;
|
||||||
|
SDK_AUTOLOAD_WRAM_END = SDK_AUTOLOAD.WRAM.END;
|
||||||
|
SDK_MOUNT_INFO_TABLE = SDK_AUTOLOAD.WRAM.BSS_END;
|
||||||
|
SDK_AUTOLOAD_WRAM_BSS_END = SDK_MOUNT_INFO_TABLE + 0x400;
|
||||||
|
SDK_AUTOLOAD_WRAM_SIZE = SDK_AUTOLOAD.WRAM.SIZE;
|
||||||
|
SDK_AUTOLOAD_WRAM_BSS_SIZE = SDK_AUTOLOAD.WRAM.BSS_SIZE;
|
||||||
|
|
||||||
|
############################ AUTOLOAD_INFO ##########################
|
||||||
|
.binary.AUTOLOAD_INFO:
|
||||||
|
{
|
||||||
|
<FOREACH.AUTOLOADS>
|
||||||
|
WRITEW ADDR(.<AUTOLOAD.NAME>);
|
||||||
|
WRITEW SDK_AUTOLOAD.<AUTOLOAD.NAME>.SIZE;
|
||||||
|
WRITEW SDK_AUTOLOAD.<AUTOLOAD.NAME>.SINIT_START;
|
||||||
|
WRITEW SDK_AUTOLOAD.<AUTOLOAD.NAME>.BSS_SIZE;
|
||||||
|
<END.AUTOLOADS>
|
||||||
|
|
||||||
|
} > binary.AUTOLOAD_INFO
|
||||||
|
|
||||||
|
SDK_AUTOLOAD_LIST = SDK_AUTOLOAD_START + SDK_AUTOLOAD_SIZE;
|
||||||
|
SDK_AUTOLOAD_LIST_END = SDK_AUTOLOAD_START + SDK_AUTOLOAD_SIZE + SIZEOF(.binary.AUTOLOAD_INFO);
|
||||||
|
SDK_AUTOLOAD_SIZE = SDK_AUTOLOAD_SIZE + SIZEOF(.binary.AUTOLOAD_INFO);
|
||||||
|
|
||||||
|
############################ STATIC_FOOTER ##########################
|
||||||
|
.binary.STATIC_FOOTER:
|
||||||
|
{
|
||||||
|
WRITEW 0xdec00621; # LE(0x2106C0DE) = NITRO CODE
|
||||||
|
WRITEW _start_ModuleParams - ADDR(.<STATIC.NAME>);
|
||||||
|
WRITEW 0; # NO DIGEST
|
||||||
|
WRITEW _start_LtdModuleParams - ADDR(.<STATIC.NAME>);
|
||||||
|
} > binary.STATIC_FOOTER
|
||||||
|
|
||||||
|
############################ OVERLAYS ###############################
|
||||||
|
SDK_OVERLAY_NUMBER = <NUMBER.OVERLAYS>;
|
||||||
|
|
||||||
|
<FOREACH.OVERLAYS>
|
||||||
|
.<OVERLAY.NAME>:<OVERLAY.NAME>
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.OVERLAY.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <OVERLAY.SEARCHSYMBOL>;
|
||||||
|
<END.OVERLAY.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_OVERLAY_<OVERLAY.NAME>_ID =<OVERLAY.ID>; ### SEGMENT <OVERLAY.NAME> OVERLAY ID
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.ID =<OVERLAY.ID>;
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.START =.;
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.TEXT_START =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.text>
|
||||||
|
<OVERLAY.OBJECT=.text:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.text>
|
||||||
|
<OVERLAY.LIBRARY=.text:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.rodata>
|
||||||
|
<OVERLAY.OBJECT=.rodata:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.rodata>
|
||||||
|
<OVERLAY.LIBRARY=.rodata:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.init>
|
||||||
|
<OVERLAY.OBJECT=.init:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.init>
|
||||||
|
<OVERLAY.LIBRARY=.init:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.SINIT_START =.;
|
||||||
|
#:::::::::: ctor
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.ctor>
|
||||||
|
<OVERLAY.OBJECT=.ctor:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.ctor>
|
||||||
|
<OVERLAY.LIBRARY=.ctor:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.sinit>
|
||||||
|
<OVERLAY.OBJECT=.sinit:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.sinit>
|
||||||
|
<OVERLAY.LIBRARY=.sinit:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
#:::::::::: ctor
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.SINIT_END =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.TEXT_END =.;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.DATA_START =.;
|
||||||
|
#:::::::::: data
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.sdata>
|
||||||
|
<OVERLAY.OBJECT=.sdata:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.sdata>
|
||||||
|
<OVERLAY.LIBRARY=.sdata:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.data>
|
||||||
|
<OVERLAY.OBJECT=.data:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.data>
|
||||||
|
<OVERLAY.LIBRARY=.data:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
#:::::::::: data
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.DATA_END =.;
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.END =.;
|
||||||
|
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.TEXT_SIZE = SDK_OVERLAY.<OVERLAY.NAME>.TEXT_END - SDK_OVERLAY.<OVERLAY.NAME>.TEXT_START;
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.DATA_SIZE = SDK_OVERLAY.<OVERLAY.NAME>.DATA_END - SDK_OVERLAY.<OVERLAY.NAME>.DATA_START;
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.SIZE = SDK_OVERLAY.<OVERLAY.NAME>.END - SDK_OVERLAY.<OVERLAY.NAME>.START;
|
||||||
|
|
||||||
|
} > <OVERLAY.NAME>
|
||||||
|
|
||||||
|
.<OVERLAY.NAME>.bss:<OVERLAY.NAME>
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.OVERLAY.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <OVERLAY.SEARCHSYMBOL>;
|
||||||
|
<END.OVERLAY.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.BSS_START = .;
|
||||||
|
#:::::::::: bss
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.bss>
|
||||||
|
<OVERLAY.OBJECT=.bss:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.bss>
|
||||||
|
<OVERLAY.LIBRARY=.bss:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.OVERLAY.OBJECTS=.sbss>
|
||||||
|
<OVERLAY.OBJECT=.sbss:t>
|
||||||
|
<END.OVERLAY.OBJECTS>
|
||||||
|
<FOREACH.OVERLAY.LIBRARIES=.sbss>
|
||||||
|
<OVERLAY.LIBRARY=.sbss:t>
|
||||||
|
<END.OVERLAY.LIBRARIES>
|
||||||
|
#:::::::::: bss
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.BSS_END = .;
|
||||||
|
|
||||||
|
SDK_OVERLAY.<OVERLAY.NAME>.BSS_SIZE = SDK_OVERLAY.<OVERLAY.NAME>.BSS_END - SDK_OVERLAY.<OVERLAY.NAME>.BSS_START;
|
||||||
|
|
||||||
|
} >> <OVERLAY.NAME>
|
||||||
|
|
||||||
|
<END.OVERLAYS>
|
||||||
|
|
||||||
|
############################ OVERLAYDEFS ############################
|
||||||
|
.<PROPERTY.OVERLAYDEFS>F:
|
||||||
|
{
|
||||||
|
### <STATIC.NAME> module information
|
||||||
|
WRITEW ADDR(.<STATIC.NAME>); # load address
|
||||||
|
WRITEW _start; # entry address
|
||||||
|
WRITEW SDK_STATIC_SIZE + SDK_AUTOLOAD_SIZE; # size of module
|
||||||
|
WRITEW _start_AutoloadDoneCallback; # callback autoload done
|
||||||
|
|
||||||
|
### overlay filename
|
||||||
|
<FOREACH.OVERLAYS>
|
||||||
|
WRITES ("<OVERLAY.NAME><PROPERTY.FLXSUFFIX>"); # Overlay <OVERLAY.ID>
|
||||||
|
<END.OVERLAYS>
|
||||||
|
|
||||||
|
} > <PROPERTY.OVERLAYDEFS>F
|
||||||
|
|
||||||
|
############################ OVERLAYTABLE ###########################
|
||||||
|
.<PROPERTY.OVERLAYTABLE>F:
|
||||||
|
{
|
||||||
|
<FOREACH.OVERLAYS>
|
||||||
|
WRITEW <OVERLAY.ID>; # overlay ID
|
||||||
|
WRITEW ADDR(.<OVERLAY.NAME>); # load address
|
||||||
|
WRITEW SDK_OVERLAY.<OVERLAY.NAME>.SIZE; # size of module
|
||||||
|
WRITEW SDK_OVERLAY.<OVERLAY.NAME>.BSS_SIZE; # size of bss
|
||||||
|
WRITEW SDK_OVERLAY.<OVERLAY.NAME>.SINIT_START; # start address of static init
|
||||||
|
WRITEW SDK_OVERLAY.<OVERLAY.NAME>.SINIT_END; # end address of static init
|
||||||
|
WRITEW <OVERLAY.ID>; # ROM file ID
|
||||||
|
WRITEW 0; # Reserved
|
||||||
|
<END.OVERLAYS>
|
||||||
|
|
||||||
|
} > <PROPERTY.OVERLAYTABLE>F
|
||||||
|
|
||||||
|
############################ OTHERS #################################
|
||||||
|
SDK_SEA_KEY_STORE = SDK_AUTOLOAD_WRAM_BSS_END;
|
||||||
|
SDK_WRAM_ARENA_LO = SDK_AUTOLOAD_WRAM_BSS_END + 0x40;
|
||||||
|
|
||||||
|
SDK_IRQ_STACKSIZE = <STATIC.IRQSTACKSIZE>; # allocated in WRAM
|
||||||
|
SDK_SYS_STACKSIZE = <STATIC.STACKSIZE>; # allocated in WRAM
|
||||||
|
SDK_SYS_STACKSIZE_SIGN = (SDK_SYS_STACKSIZE < 0x80000000) * 2 - 1;
|
||||||
|
|
||||||
|
.check.WORKRAM:
|
||||||
|
{
|
||||||
|
. = . + SDK_AUTOLOAD_WRAM_BSS_END - SDK_AUTOLOAD.WRAM.START + 0x080 + SDK_IRQ_STACKSIZE + SDK_SYS_STACKSIZE * SDK_SYS_STACKSIZE_SIGN;
|
||||||
|
|
||||||
|
} > check.WORKRAM
|
||||||
|
|
||||||
|
########################### LTDAUTOLOADS ############################
|
||||||
|
SDK_LTDAUTOLOAD.LTDMAIN.START = SDK_STATIC_BSS_END;
|
||||||
|
SDK_LTDAUTOLOAD.LTDMAIN.END = SDK_LTDAUTOLOAD.LTDMAIN.START;
|
||||||
|
SDK_LTDAUTOLOAD.LTDMAIN.BSS_END = SDK_LTDAUTOLOAD.LTDMAIN.START;
|
||||||
|
SDK_LTDAUTOLOAD.LTDMAIN.SIZE = 0;
|
||||||
|
SDK_LTDAUTOLOAD.LTDMAIN.BSS_SIZE = 0;
|
||||||
|
SDK_LTDAUTOLOAD_TOP_START = 0x02e80000;
|
||||||
|
SDK_LTDAUTOLOAD_TOP_SIZE = 4; # STATIC 領域が無い代わりに 4 bytes のダミーがバイナリファイルの先頭に入る #
|
||||||
|
SDK_LTDAUTOLOAD_START = SDK_LTDAUTOLOAD_TOP_START + SDK_LTDAUTOLOAD_TOP_SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = 0;
|
||||||
|
SDK_LTDAUTOLOAD_NUMBER = <NUMBER.LTDAUTOLOADS>;
|
||||||
|
|
||||||
|
.binary.LTDAUTOLOAD_TOP:
|
||||||
|
{
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
} > binary.LTDAUTOLOAD_TOP
|
||||||
|
|
||||||
|
<FOREACH.LTDAUTOLOADS>
|
||||||
|
.<LTDAUTOLOAD.NAME>:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <LTDAUTOLOAD.SEARCHSYMBOL>;
|
||||||
|
<END.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD_<LTDAUTOLOAD.NAME>_ID =<LTDAUTOLOAD.ID>;
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.ID =<LTDAUTOLOAD.ID>;
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.START =.;
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.TEXT_START =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.text>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.text:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.text>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.text:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.rodata>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.rodata:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.rodata>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.rodata:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.init>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.init:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.init>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.init:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SINIT_START =.;
|
||||||
|
#:::::::::: ctor
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ctor>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ctor:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ctor>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ctor:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.sinit>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.sinit:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.sinit>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.sinit:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
#:::::::::: ctor
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SINIT_END =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.TEXT_END =.;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE BLOCK
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.DATA_START =.;
|
||||||
|
#:::::::::: data
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.sdata>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.sdata:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.sdata>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.sdata:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.data>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.data:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.data>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.data:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ltdmain:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ltdmain:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
#:::::::::: data
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.DATA_END =.;
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.END =.;
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.TEXT_SIZE = SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.TEXT_END - SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.TEXT_START;
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.DATA_SIZE = SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.DATA_END - SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.DATA_START;
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SIZE = SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.END - SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.START;
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = SDK_LTDAUTOLOAD_SIZE + SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SIZE;
|
||||||
|
|
||||||
|
} > <LTDAUTOLOAD.NAME>
|
||||||
|
|
||||||
|
.<LTDAUTOLOAD.NAME>.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <LTDAUTOLOAD.SEARCHSYMBOL>;
|
||||||
|
<END.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_START =.;
|
||||||
|
#:::::::::: bss
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.sbss>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.sbss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.sbss>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.sbss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.bss>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.bss>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ltdmain.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ltdmain.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
#:::::::::: bss
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_END =.;
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_SIZE = SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_END - SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_START;
|
||||||
|
|
||||||
|
} >> <LTDAUTOLOAD.NAME>
|
||||||
|
|
||||||
|
<END.LTDAUTOLOADS>
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD_LTDMAIN_START = SDK_LTDAUTOLOAD.LTDMAIN.START;
|
||||||
|
SDK_LTDAUTOLOAD_LTDMAIN_END = SDK_LTDAUTOLOAD.LTDMAIN.END;
|
||||||
|
SDK_LTDAUTOLOAD_LTDMAIN_BSS_END = SDK_LTDAUTOLOAD.LTDMAIN.BSS_END;
|
||||||
|
SDK_LTDAUTOLOAD_LTDMAIN_SIZE = SDK_LTDAUTOLOAD.LTDMAIN.SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_LTDMAIN_BSS_SIZE = SDK_LTDAUTOLOAD.LTDMAIN.BSS_SIZE;
|
||||||
|
|
||||||
|
######################### LTDAUTOLOAD_INFO ##########################
|
||||||
|
.binary.LTDAUTOLOAD_INFO:
|
||||||
|
{
|
||||||
|
<FOREACH.LTDAUTOLOADS>
|
||||||
|
WRITEW ADDR(.<LTDAUTOLOAD.NAME>);
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SIZE;
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SINIT_START;
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_SIZE;
|
||||||
|
<END.LTDAUTOLOADS>
|
||||||
|
|
||||||
|
} > binary.LTDAUTOLOAD_INFO
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD_LIST = SDK_LTDAUTOLOAD_START + SDK_LTDAUTOLOAD_SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_LIST_END = SDK_LTDAUTOLOAD_LIST + SIZEOF(.binary.LTDAUTOLOAD_INFO);
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = SDK_LTDAUTOLOAD_SIZE + SIZEOF(.binary.LTDAUTOLOAD_INFO);
|
||||||
|
|
||||||
|
########################### LTDOVERLAYS #############################
|
||||||
|
SDK_LTDOVERLAY_NUMBER = <NUMBER.LTDOVERLAYS>;
|
||||||
|
|
||||||
|
<FOREACH.LTDOVERLAYS>
|
||||||
|
.<LTDOVERLAY.NAME>:<LTDOVERLAY.NAME>
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.LTDOVERLAY.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <LTDOVERLAY.SEARCHSYMBOL>;
|
||||||
|
<END.LTDOVERLAY.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
SDK_LTDOVERLAY_<LTDOVERLAY.NAME>_ID =<LTDOVERLAY.ID>;
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.ID =<LTDOVERLAY.ID>;
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.START =.;
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.TEXT_START =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.text>
|
||||||
|
<LTDOVERLAY.OBJECT=.text:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.text>
|
||||||
|
<LTDOVERLAY.LIBRARY=.text:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.rodata>
|
||||||
|
<LTDOVERLAY.OBJECT=.rodata:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.rodata>
|
||||||
|
<LTDOVERLAY.LIBRARY=.rodata:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.init>
|
||||||
|
<LTDOVERLAY.OBJECT=.init:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.init>
|
||||||
|
<LTDOVERLAY.LIBRARY=.init:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.SINIT_START =.;
|
||||||
|
#:::::::::: ctor
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.ctor>
|
||||||
|
<LTDOVERLAY.OBJECT=.ctor:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.ctor>
|
||||||
|
<LTDOVERLAY.LIBRARY=.ctor:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.sinit>
|
||||||
|
<LTDOVERLAY.OBJECT=.sinit:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.sinit>
|
||||||
|
<LTDOVERLAY.LIBRARY=.sinit:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
#:::::::::: ctor
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.SINIT_END =.;
|
||||||
|
#:::::::::: text/rodata
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.TEXT_END =.;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.DATA_START =.;
|
||||||
|
#:::::::::: data
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.sdata>
|
||||||
|
<LTDOVERLAY.OBJECT=.sdata:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.sdata>
|
||||||
|
<LTDOVERLAY.LIBRARY=.sdata:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.data>
|
||||||
|
<LTDOVERLAY.OBJECT=.data:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.data>
|
||||||
|
<LTDOVERLAY.LIBRARY=.data:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
#:::::::::: data
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.DATA_END =.;
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.END =.;
|
||||||
|
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.TEXT_SIZE = SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.TEXT_END - SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.TEXT_START;
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.DATA_SIZE = SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.DATA_END - SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.DATA_START;
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.SIZE = SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.END - SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.START;
|
||||||
|
|
||||||
|
} > <LTDOVERLAY.NAME>
|
||||||
|
|
||||||
|
.<LTDOVERLAY.NAME>.bss:<LTDOVERLAY.NAME>
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.LTDOVERLAY.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <LTDOVERLAY.SEARCHSYMBOL>;
|
||||||
|
<END.LTDOVERLAY.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.BSS_START =.;
|
||||||
|
#:::::::::: bss
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.bss>
|
||||||
|
<LTDOVERLAY.OBJECT=.bss:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.bss>
|
||||||
|
<LTDOVERLAY.LIBRARY=.bss:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
<FOREACH.LTDOVERLAY.OBJECTS=.sbss>
|
||||||
|
<LTDOVERLAY.OBJECT=.sbss:t>
|
||||||
|
<END.LTDOVERLAY.OBJECTS>
|
||||||
|
<FOREACH.LTDOVERLAY.LIBRARIES=.sbss>
|
||||||
|
<LTDOVERLAY.LIBRARY=.sbss:t>
|
||||||
|
<END.LTDOVERLAY.LIBRARIES>
|
||||||
|
#:::::::::: bss
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.BSS_END =.;
|
||||||
|
|
||||||
|
SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.BSS_SIZE = SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.BSS_END - SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.BSS_START;
|
||||||
|
|
||||||
|
} >> <LTDOVERLAY.NAME>
|
||||||
|
|
||||||
|
<END.LTDOVERLAYS>
|
||||||
|
|
||||||
|
########################## LTDOVERLAYDEFS ###########################
|
||||||
|
.<PROPERTY.LTDOVERLAYDEFS>L:
|
||||||
|
{
|
||||||
|
### TWL limited extended static module information
|
||||||
|
WRITEW SDK_LTDAUTOLOAD_TOP_START; # load address
|
||||||
|
WRITEW SDK_MOUNT_INFO_TABLE; # address of the FS mount information table
|
||||||
|
WRITEW SDK_LTDAUTOLOAD_SIZE + SDK_LTDAUTOLOAD_TOP_SIZE; # size of module
|
||||||
|
WRITEW 0; # padding
|
||||||
|
|
||||||
|
### TWL limited overlay filename
|
||||||
|
<FOREACH.LTDOVERLAYS>
|
||||||
|
WRITES ("<LTDOVERLAY.NAME><PROPERTY.LTDSUFFIX>");
|
||||||
|
<END.LTDOVERLAYS>
|
||||||
|
|
||||||
|
} > <PROPERTY.LTDOVERLAYDEFS>L
|
||||||
|
|
||||||
|
######################### LTDOVERLAYTABLE ###########################
|
||||||
|
.<PROPERTY.LTDOVERLAYTABLE>L:
|
||||||
|
{
|
||||||
|
<FOREACH.LTDOVERLAYS>
|
||||||
|
WRITES <LTDOVERLAY.ID> # overlay ID
|
||||||
|
WRITEW ADDR(.<LTDOVERLAY.NAME>); # load address
|
||||||
|
WRITEW SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.SIZE; # size of module
|
||||||
|
WRITEW SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.BSS_SIZE; # size of bss
|
||||||
|
WRITEW SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.SINIT_START; # start address of static init
|
||||||
|
WRITEW SDK_LTDOVERLAY.<LTDOVERLAY.NAME>.SINIT_END; # end address of static init
|
||||||
|
WRITEW <LTDOVERLAY.ID> # ROM file ID
|
||||||
|
WRITEW 0; # Reserved
|
||||||
|
<END.LTDOVERLAYS>
|
||||||
|
|
||||||
|
} > <PROPERTY.LTDOVERLAYTABLE>L
|
||||||
|
|
||||||
|
############################ OTHERS #################################
|
||||||
|
SDK_SUBPRIV_ARENA_LO = SDK_LTDAUTOLOAD.LTDMAIN.BSS_END;
|
||||||
|
.check.LTDMAIN:
|
||||||
|
{
|
||||||
|
. = SDK_SUBPRIV_ARENA_LO;
|
||||||
|
|
||||||
|
} > check.LTDMAIN
|
||||||
|
|
||||||
|
}
|
||||||
227
build/components/hyena.TWL/hyena.lsf
Normal file
227
build/components/hyena.TWL/hyena.lsf
Normal file
@ -0,0 +1,227 @@
|
|||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlIPL
|
||||||
|
# File: hyena.lsf
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded insructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Nitro LCF SPEC FILE
|
||||||
|
#
|
||||||
|
#--------
|
||||||
|
Static $(TARGET_NAME)
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_FLXMAIN)
|
||||||
|
Library $(CRT0_O)
|
||||||
|
Object $(OBJDIR)/initScfg.o
|
||||||
|
StackSize 1024 1024
|
||||||
|
}
|
||||||
|
|
||||||
|
#--------
|
||||||
|
Autoload WRAM
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_LTDWRAM)
|
||||||
|
|
||||||
|
Library libsubpsyscall.a \
|
||||||
|
libsyscall_sp.twl.a \
|
||||||
|
$(CW_LIBS) \
|
||||||
|
libos_sp$(LIBSUFFIX).a \
|
||||||
|
libmi_sp$(LIBSUFFIX).a \
|
||||||
|
libpad_sp$(LIBSUFFIX).a \
|
||||||
|
libpxi_sp$(LIBSUFFIX).a \
|
||||||
|
libstd_sp$(LIBSUFFIX).a \
|
||||||
|
libexi_sp$(LIBSUFFIX).a \
|
||||||
|
libsnd_sp$(LIBSUFFIX).a \
|
||||||
|
libspi_sp$(LIBSUFFIX).a \
|
||||||
|
libpm_sp.SYSMENU$(LIBSUFFIX).a \
|
||||||
|
libmath_sp$(LIBSUFFIX).a \
|
||||||
|
libscfg_sp$(LIBSUFFIX).a \
|
||||||
|
libtp_sp$(LIBSUFFIX).a \
|
||||||
|
libmic_sp$(LIBSUFFIX).a \
|
||||||
|
libfs_sp$(LIBSUFFIX).a \
|
||||||
|
libcard_sp$(LIBSUFFIX).a \
|
||||||
|
libi2c_sp$(LIBSUFFIX).a \
|
||||||
|
libcamera_sp$(LIBSUFFIX).a \
|
||||||
|
libcdc_sp$(LIBSUFFIX).a \
|
||||||
|
libsndex_sp$(LIBSUFFIX).a \
|
||||||
|
libtpex_sp$(LIBSUFFIX).a \
|
||||||
|
libmicex_sp$(LIBSUFFIX).a \
|
||||||
|
libmcu_sp$(LIBSUFFIX).a \
|
||||||
|
|
||||||
|
Library libsdio_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libnvram_sp$(LIBSUFFIX).a
|
||||||
|
Library librtc_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
|
||||||
|
Object * (.etable)
|
||||||
|
Object * (.wram)
|
||||||
|
Object * (.ltdwram)
|
||||||
|
Object $(OBJDIR)/main.o
|
||||||
|
|
||||||
|
# caches in fatfs library, that should be on WRAM.
|
||||||
|
# 2007/12/11 OBJECT() による .bss シンボルのリンクがうまくいかないので、
|
||||||
|
# 変数定義箇所に pragma で .ltdwram セクションに含まれるように暫定対策しました。
|
||||||
|
# Object OBJECT( FATFSi___mem_drives_structures , libfatfs_sp$(LIBSUFFIX).a) (.bss)
|
||||||
|
|
||||||
|
#####
|
||||||
|
# Sub-routines in WL library , that should be on WRAM.
|
||||||
|
# in TaskMan.o
|
||||||
|
Object OBJECT( MainTaskRoutine , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AddTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( DeleteTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( LowestIdleTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( ExecuteMessage , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in BufMan.o
|
||||||
|
Object OBJECT( NewHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( DeleteHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AllocateHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( ReleaseHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( MoveHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AddHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( GetHeapBufNextAdrs , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlCmdIf.o
|
||||||
|
Object OBJECT( RequestCmdTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( SendMessageToWmDirect , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlNic.o
|
||||||
|
Object OBJECT( WStart , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WStop , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WSetStaState , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlIntr.o
|
||||||
|
Object OBJECT( WlIntr , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrPreTbtt , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTbtt , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrActEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# Object OBJECT( WlIntrAckCntOvf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrCntOvf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTxErr , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrRxCntup , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTxEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrRxEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrMpEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrStartTx , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrStartRx , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( SetParentTbttTxq , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( MacBugTxMp , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AdjustRingPointer , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( CheckKeyTxEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlIntrTask.o
|
||||||
|
Object OBJECT( WlIntrTxBeaconTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTxEndTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrRxEndTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrMpEndTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( SetParentTbttTxqTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( TakeoutRxFrame , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in TxCtrl.o
|
||||||
|
Object OBJECT( InitTxCtrl , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in RxCtrl.o
|
||||||
|
Object OBJECT( InitRxCtrl , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WaitLoop.o
|
||||||
|
Object OBJECT( WaitLoop_Rxpe , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_Waitus , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_ClrAid , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_BbpAccess , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_RfAccess , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
|
||||||
|
#####
|
||||||
|
# Sub-routines in TWL WIRELESS Driver , that should be on WRAM.
|
||||||
|
Object OBJECT( BMILZData, libathdrv_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( bmiBufferSend, libathdrv_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( BMIWriteMemory, libathdrv_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
|
||||||
|
Library libboot_sp$(LIBSUFFIX).a \
|
||||||
|
libreboot_sp$(LIBSUFFIX).a \
|
||||||
|
libhotsw_sp$(LIBSUFFIX).a \
|
||||||
|
libreloc_info_sp$(LIBSUFFIX).a \
|
||||||
|
libsysmenu_sp$(LIBSUFFIX).a \
|
||||||
|
libsysmmcu_sp$(LIBSUFFIX).a \
|
||||||
|
libds_sp$(LIBSUFFIX).a \
|
||||||
|
libaes_sp$(FIRM_LIBSUFFIX).a \
|
||||||
|
libsea_sp$(LIBSUFFIX).a \
|
||||||
|
libcrypto_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
|
||||||
|
# FATFS core symbols
|
||||||
|
Object OBJECT(FATFSi_lfi2text, libfatfs_sp$(LIBSUFFIX).a) (.text) # 360 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_findin, libfatfs_sp$(LIBSUFFIX).a) (.text) # 904 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_patcmp_vfat, libfatfs_sp$(LIBSUFFIX).a) (.text) # 436 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_ascii_mfile, libfatfs_sp$(LIBSUFFIX).a) (.text) # 160 BYTEs
|
||||||
|
Object OBJECT(FATFSi_map_ascii_to_unicode, libfatfs_sp$(LIBSUFFIX).a) (.text) # 48 BYTEs
|
||||||
|
Object OBJECT(SDCARD_Intr_Thread, libfatfs_sp$(LIBSUFFIX).a) (.text) # 520 BYTEs
|
||||||
|
Object OBJECT(FATFSi_unicode_cmp_to_ascii_char, libfatfs_sp$(LIBSUFFIX).a) (.text) # 40 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_read_blk, libfatfs_sp$(LIBSUFFIX).a) (.text) # 352 BYTEs
|
||||||
|
|
||||||
|
#RTFS
|
||||||
|
Object OBJECT(FATFSi_rtfs_memset, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x18 BYTEs
|
||||||
|
Object OBJECT(FATFSi_faxx_check_free_space, libfatfs_sp$(LIBSUFFIX).a) (.text) # 108 BYTEs
|
||||||
|
Object OBJECT(fat32_check_freespace, libfatfs_sp$(LIBSUFFIX).a) (.text) # 216 BYTEs
|
||||||
|
Object OBJECT(fat16_check_freespace, libfatfs_sp$(LIBSUFFIX).a) (.text) # 216 BYTEs
|
||||||
|
|
||||||
|
#Driver
|
||||||
|
Object OBJECT(SDCARDi_CpuReadFifoAes, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x70 BYTEs
|
||||||
|
Object OBJECT(SDCARDi_DmaReadFifoAes, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x64 BYTEs
|
||||||
|
Object OBJECT(SDCARDi_CpuWriteFifoAes, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x94 BYTEs
|
||||||
|
Object OBJECT(SDCARDi_DmaWriteFifoAes, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x88 BYTEs
|
||||||
|
Object OBJECT(SYSFPGA_irq, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x17C BYTEs
|
||||||
|
Object OBJECT(SDCARDi_CpuRecvFast, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x40 BYTEs
|
||||||
|
Object OBJECT(SDCARDi_CpuSendFast, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x40 BYTEs
|
||||||
|
Object OBJECT(SD_OrFPGA, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x34 BYTEs
|
||||||
|
Object OBJECT(SD_AndFPGA, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x34 BYTEs
|
||||||
|
Object OBJECT(SD_SetFPGA, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x2C BYTEs
|
||||||
|
Object OBJECT(SD_GetFPGA, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x30 BYTEs
|
||||||
|
Object OBJECT(SD_CheckFPGAReg, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x10 BYTEs
|
||||||
|
Object OBJECT(NDMA_irq_Handler, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x54 BYTEs
|
||||||
|
Object OBJECT(SDCARD_irq_Handler, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0xD8 BYTEs
|
||||||
|
|
||||||
|
Object OBJECT(SDCARDi_ReadCore, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x194 BYTEs
|
||||||
|
Object OBJECT(SDCARDi_WriteCore, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x34C BYTEs
|
||||||
|
Object OBJECT(SDCARD_TimerStart, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x64 BYTEs
|
||||||
|
Object OBJECT(SDCARD_TimerStop, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x30 BYTEs
|
||||||
|
Object OBJECT(SDCARDi_Access, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x12C BYTEs
|
||||||
|
|
||||||
|
Object OBJECT(SD_Command, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0xF0 BYTEs
|
||||||
|
Object OBJECT(SD_SendStatus, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x40 BYTEs
|
||||||
|
Object OBJECT(SD_MultiReadBlock, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x7C BYTEs
|
||||||
|
Object OBJECT(SD_MultiWriteBlock, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x7C BYTEs
|
||||||
|
Object OBJECT(SD_TransCommand, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0xA8 BYTEs
|
||||||
|
Object OBJECT(SD_TransReadyFPGA, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x8C BYTEs
|
||||||
|
Object OBJECT(SD_TransEndFPGA, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x78 BYTEs
|
||||||
|
Object OBJECT(SD_CheckStatus, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0xC0 BYTEs
|
||||||
|
Object OBJECT(SD_EnableClock, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x18 BYTEs
|
||||||
|
Object OBJECT(SD_DisableClock, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x1C BYTEs
|
||||||
|
Object OBJECT(SD_EnableSeccnt, libfatfs_sp$(LIBSUFFIX).a) (.text) # 0x34 BYTEs
|
||||||
|
|
||||||
|
Object * (.rsvwram)
|
||||||
|
}
|
||||||
|
|
||||||
|
#--------
|
||||||
|
Ltdautoload LTDMAIN
|
||||||
|
{
|
||||||
|
After $(TARGET_NAME)
|
||||||
|
|
||||||
|
Object * (.ltdmain)
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a \
|
||||||
|
libnwm_sp.SYSMENU$(LIBSUFFIX).a \
|
||||||
|
libwvr_sp$(LIBSUFFIX).a \
|
||||||
|
libwl_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libwpa_sp$(LIBSUFFIX).a
|
||||||
|
Library libathdrv_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libfatfs_sp$(LIBSUFFIX).a \
|
||||||
|
libdht_sp$(LIBSUFFIX).a \
|
||||||
|
$(USE_CRYPTO_LIBS)
|
||||||
|
Library $(ISDBG_LIBS_TWL)
|
||||||
|
Library $(ISDBG_LIBS_NITRO)
|
||||||
|
}
|
||||||
|
|
||||||
|
# BootROMの鍵データが0x0380c400~にあるので、hyenaのWRAM配置の上限はその値になることに注意。
|
||||||
185
build/components/hyena.TWL/hyena_wlmain.lsf
Normal file
185
build/components/hyena.TWL/hyena_wlmain.lsf
Normal file
@ -0,0 +1,185 @@
|
|||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlIPL
|
||||||
|
# File: hyena.lsf
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded insructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Nitro LCF SPEC FILE
|
||||||
|
#
|
||||||
|
#--------
|
||||||
|
Static $(TARGET_NAME)
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_FLXMAIN)
|
||||||
|
Library $(CRT0_O)
|
||||||
|
Object $(OBJDIR)/initScfg.o
|
||||||
|
StackSize 1024 1024
|
||||||
|
}
|
||||||
|
|
||||||
|
#--------
|
||||||
|
Autoload WRAM
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_LTDWRAM)
|
||||||
|
|
||||||
|
Library libsubpsyscall.a \
|
||||||
|
libsyscall_sp.twl.a \
|
||||||
|
$(CW_LIBS) \
|
||||||
|
libos_sp$(LIBSUFFIX).a \
|
||||||
|
libmi_sp$(LIBSUFFIX).a \
|
||||||
|
libpad_sp$(LIBSUFFIX).a \
|
||||||
|
libpxi_sp$(LIBSUFFIX).a \
|
||||||
|
libstd_sp$(LIBSUFFIX).a \
|
||||||
|
libexi_sp$(LIBSUFFIX).a \
|
||||||
|
libsnd_sp$(LIBSUFFIX).a \
|
||||||
|
libspi_sp$(LIBSUFFIX).a \
|
||||||
|
libpm_sp.SYSMENU$(LIBSUFFIX).a \
|
||||||
|
libmath_sp$(LIBSUFFIX).a \
|
||||||
|
libscfg_sp$(LIBSUFFIX).a \
|
||||||
|
libtp_sp$(LIBSUFFIX).a \
|
||||||
|
libmic_sp$(LIBSUFFIX).a \
|
||||||
|
libfs_sp$(LIBSUFFIX).a \
|
||||||
|
libcard_sp$(LIBSUFFIX).a \
|
||||||
|
libi2c_sp$(LIBSUFFIX).a \
|
||||||
|
libcamera_sp$(LIBSUFFIX).a \
|
||||||
|
libcdc_sp$(LIBSUFFIX).a \
|
||||||
|
libsndex_sp$(LIBSUFFIX).a \
|
||||||
|
libtpex_sp$(LIBSUFFIX).a \
|
||||||
|
libmicex_sp$(LIBSUFFIX).a \
|
||||||
|
libmcu_sp$(LIBSUFFIX).a \
|
||||||
|
|
||||||
|
Library libsdio_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libnvram_sp$(LIBSUFFIX).a
|
||||||
|
Library librtc_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
|
||||||
|
Object * (.etable)
|
||||||
|
Object * (.wram)
|
||||||
|
Object * (.ltdwram)
|
||||||
|
Object $(OBJDIR)/main.o
|
||||||
|
|
||||||
|
# caches in fatfs library, that should be on WRAM.
|
||||||
|
# 2007/12/11 OBJECT() による .bss シンボルのリンクがうまくいかないので、
|
||||||
|
# 変数定義箇所に pragma で .ltdwram セクションに含まれるように暫定対策しました。
|
||||||
|
# Object OBJECT( FATFSi___mem_drives_structures , libfatfs_sp$(LIBSUFFIX).a) (.bss)
|
||||||
|
|
||||||
|
#####
|
||||||
|
# Sub-routines in WL library , that should be on WRAM.
|
||||||
|
# in TaskMan.o
|
||||||
|
Object OBJECT( MainTaskRoutine , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AddTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( DeleteTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( LowestIdleTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( ExecuteMessage , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in BufMan.o
|
||||||
|
Object OBJECT( NewHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( DeleteHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AllocateHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( ReleaseHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( MoveHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AddHeapBuf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( GetHeapBufNextAdrs , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlCmdIf.o
|
||||||
|
Object OBJECT( RequestCmdTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( SendMessageToWmDirect , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlNic.o
|
||||||
|
Object OBJECT( WStart , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WStop , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WSetStaState , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlIntr.o
|
||||||
|
Object OBJECT( WlIntr , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrPreTbtt , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTbtt , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrActEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# Object OBJECT( WlIntrAckCntOvf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrCntOvf , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTxErr , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrRxCntup , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTxEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrRxEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrMpEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrStartTx , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrStartRx , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( SetParentTbttTxq , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( MacBugTxMp , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( AdjustRingPointer , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( CheckKeyTxEnd , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WlIntrTask.o
|
||||||
|
Object OBJECT( WlIntrTxBeaconTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrTxEndTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrRxEndTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WlIntrMpEndTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( SetParentTbttTxqTask , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( TakeoutRxFrame , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in TxCtrl.o
|
||||||
|
Object OBJECT( InitTxCtrl , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in RxCtrl.o
|
||||||
|
Object OBJECT( InitRxCtrl , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
# in WaitLoop.o
|
||||||
|
Object OBJECT( WaitLoop_Rxpe , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_Waitus , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_ClrAid , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_BbpAccess , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( WaitLoop_RfAccess , libwl_sp$(LIBSUFFIX).a ) (.text)
|
||||||
|
|
||||||
|
#####
|
||||||
|
# Sub-routines in TWL WIRELESS Driver , that should be on WRAM.
|
||||||
|
Object OBJECT( BMILZData, libathdrv_sp.SYSMENU$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( bmiBufferSend, libathdrv_sp.SYSMENU$(LIBSUFFIX).a ) (.text)
|
||||||
|
Object OBJECT( BMIWriteMemory, libathdrv_sp.SYSMENU$(LIBSUFFIX).a ) (.text)
|
||||||
|
|
||||||
|
Library libboot_sp$(LIBSUFFIX).a \
|
||||||
|
libreboot_sp$(LIBSUFFIX).a \
|
||||||
|
libhotsw_sp$(LIBSUFFIX).a \
|
||||||
|
libreloc_info_sp$(LIBSUFFIX).a \
|
||||||
|
libsysmenu_sp$(LIBSUFFIX).a \
|
||||||
|
libsysmmcu_sp$(LIBSUFFIX).a \
|
||||||
|
libaes_sp.firm.LTD.a \
|
||||||
|
libsea_sp$(LIBSUFFIX).a \
|
||||||
|
libcrypto_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
# FATFS core symbols
|
||||||
|
Object OBJECT(FATFSi_lfi2text, libfatfs_sp$(LIBSUFFIX).a) (.text) # 360 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_findin, libfatfs_sp$(LIBSUFFIX).a) (.text) # 904 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_patcmp_vfat, libfatfs_sp$(LIBSUFFIX).a) (.text) # 436 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_ascii_mfile, libfatfs_sp$(LIBSUFFIX).a) (.text) # 160 BYTEs
|
||||||
|
Object OBJECT(FATFSi_map_ascii_to_unicode, libfatfs_sp$(LIBSUFFIX).a) (.text) # 48 BYTEs
|
||||||
|
Object OBJECT(SDCARD_Intr_Thread, libfatfs_sp$(LIBSUFFIX).a) (.text) # 520 BYTEs
|
||||||
|
Object OBJECT(FATFSi_unicode_cmp_to_ascii_char, libfatfs_sp$(LIBSUFFIX).a) (.text) # 40 BYTEs
|
||||||
|
Object OBJECT(FATFSi_pc_read_blk, libfatfs_sp$(LIBSUFFIX).a) (.text) # 352 BYTEs
|
||||||
|
|
||||||
|
Object * (.rsvwram)
|
||||||
|
}
|
||||||
|
|
||||||
|
#--------
|
||||||
|
Ltdautoload LTDMAIN
|
||||||
|
{
|
||||||
|
After $(TARGET_NAME)
|
||||||
|
|
||||||
|
Object * (.ltdmain)
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a \
|
||||||
|
libnwm_sp$(LIBSUFFIX).a \
|
||||||
|
libwvr_sp$(LIBSUFFIX).a \
|
||||||
|
libwl_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libwpa_sp$(LIBSUFFIX).a
|
||||||
|
Library libathdrv_sp.SYSMENU$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libfatfs_sp$(LIBSUFFIX).a \
|
||||||
|
libdht_sp$(LIBSUFFIX).a \
|
||||||
|
$(USE_CRYPTO_LIBS)
|
||||||
|
Library $(ISDBG_LIBS_TWL)
|
||||||
|
Library $(ISDBG_LIBS_NITRO)
|
||||||
|
}
|
||||||
|
|
||||||
|
# BootROMの鍵データが0x0380c400~にあるので、hyenaのWRAM配置の上限はその値になることに注意。
|
||||||
BIN
build/components/hyena.TWL/obj/ARM7-TS.LTD/Release/crt0.LTD.o
Normal file
BIN
build/components/hyena.TWL/obj/ARM7-TS.LTD/Release/crt0.LTD.o
Normal file
Binary file not shown.
BIN
build/components/hyena.TWL/obj/ARM7-TS.LTD/Release/initScfg.o
Normal file
BIN
build/components/hyena.TWL/obj/ARM7-TS.LTD/Release/initScfg.o
Normal file
Binary file not shown.
BIN
build/components/hyena.TWL/obj/ARM7-TS.LTD/Release/main.o
Normal file
BIN
build/components/hyena.TWL/obj/ARM7-TS.LTD/Release/main.o
Normal file
Binary file not shown.
736
build/components/hyena.TWL/src/crt0.LTD.c
Normal file
736
build/components/hyena.TWL/src/crt0.LTD.c
Normal file
@ -0,0 +1,736 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - libraries - init - ARM7.TWL
|
||||||
|
File: crt0.LTD.c
|
||||||
|
|
||||||
|
Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Date:: $
|
||||||
|
$Rev$
|
||||||
|
$Author$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include <nitro/types.h>
|
||||||
|
#include <nitro/hw/common/armArch.h>
|
||||||
|
#include <nitro/os/common/emulator.h>
|
||||||
|
#include <nitro/os/common/printf.h>
|
||||||
|
#include <twl/init/crt0.h>
|
||||||
|
#include <twl/memorymap_sp.h>
|
||||||
|
#include <twl/hw/common/mmap_wramEnv.h>
|
||||||
|
#include <twl/os/common/format_rom.h>
|
||||||
|
#include "boot_sync.h"
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
void _start(void);
|
||||||
|
void _start_AutoloadDoneCallback(void* argv[]);
|
||||||
|
void INIT_InitializeScfg(void);
|
||||||
|
|
||||||
|
#define SDK_NITROCODE_LE 0x2106c0de
|
||||||
|
#define SDK_NITROCODE_BE 0xdec00621
|
||||||
|
|
||||||
|
#define SDK_TWLCODE_LE 0x6314c0de
|
||||||
|
#define SDK_TWLCODE_BE 0xdec01463
|
||||||
|
|
||||||
|
/* 外部関数参照定義 */
|
||||||
|
extern void OS_IrqHandler(void);
|
||||||
|
extern void _fp_init(void);
|
||||||
|
extern void __call_static_initializers(void);
|
||||||
|
|
||||||
|
/* 内部関数プロトタイプ定義 */
|
||||||
|
static void INITi_DoAutoload(void);
|
||||||
|
static BOOL INITi_IsRunOnTwl( void );
|
||||||
|
static void INITi_CopySysConfig( void );
|
||||||
|
static void INITi_DetectMainMemorySize(void);
|
||||||
|
#ifndef SDK_NOINIT
|
||||||
|
static void INITi_ShelterStaticInitializer(u32* ptr);
|
||||||
|
static void INITi_CallStaticInitializers(void);
|
||||||
|
#endif
|
||||||
|
static void* INITi_Copy32(void* dst, void* src, u32 size);
|
||||||
|
static void* INITi_Fill32(void* dst, u32 value, u32 size);
|
||||||
|
|
||||||
|
/* リンカスクリプトにより定義されるシンボル参照 */
|
||||||
|
extern void SDK_AUTOLOAD_LIST(void);
|
||||||
|
extern void SDK_AUTOLOAD_LIST_END(void);
|
||||||
|
extern void SDK_AUTOLOAD_START(void);
|
||||||
|
extern void SDK_STATIC_BSS_START(void);
|
||||||
|
extern void SDK_STATIC_BSS_END(void);
|
||||||
|
|
||||||
|
#ifdef USE_HYENA_COMPONENT
|
||||||
|
void* const _start_ModuleParams[] =
|
||||||
|
{
|
||||||
|
(void*)SDK_AUTOLOAD_LIST,
|
||||||
|
(void*)SDK_AUTOLOAD_LIST_END,
|
||||||
|
(void*)SDK_AUTOLOAD_START,
|
||||||
|
(void*)SDK_STATIC_BSS_START,
|
||||||
|
(void*)SDK_STATIC_BSS_END,
|
||||||
|
(void*)0, // CompressedStaticEnd. This fixed number will be updated by compstatic tool.
|
||||||
|
(void*)0, // SDK_VERSION_ID // SDK version info /* [TODO] ビルドを通すため */
|
||||||
|
(void*)SDK_NITROCODE_BE,
|
||||||
|
(void*)SDK_NITROCODE_LE,
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
void* const _start_ModuleParams[] =
|
||||||
|
{
|
||||||
|
(void*)0,
|
||||||
|
(void*)0,
|
||||||
|
(void*)0,
|
||||||
|
(void*)SDK_STATIC_BSS_START,
|
||||||
|
(void*)SDK_STATIC_BSS_END,
|
||||||
|
(void*)0,
|
||||||
|
(void*)0,
|
||||||
|
(void*)SDK_NITROCODE_BE,
|
||||||
|
(void*)SDK_NITROCODE_LE,
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern void SDK_LTDAUTOLOAD_LIST(void);
|
||||||
|
extern void SDK_LTDAUTOLOAD_LIST_END(void);
|
||||||
|
extern void SDK_LTDAUTOLOAD_START(void);
|
||||||
|
|
||||||
|
void* const _start_LtdModuleParams[] =
|
||||||
|
{
|
||||||
|
(void*)SDK_LTDAUTOLOAD_LIST,
|
||||||
|
(void*)SDK_LTDAUTOLOAD_LIST_END,
|
||||||
|
(void*)SDK_LTDAUTOLOAD_START,
|
||||||
|
(void*)0, // CompressedLtdautoloadEnd. This fixed number will be updated by compstatic tool.
|
||||||
|
(void*)SDK_TWLCODE_BE,
|
||||||
|
(void*)SDK_TWLCODE_LE,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef DEBUG_WRAM_SETTING
|
||||||
|
u32 const wramMapping[12] = {
|
||||||
|
0x8d898581, 0x8c888480, 0x9c989490, 0x8c888480,
|
||||||
|
0x9c989490, 0x00000000, 0x09403900, 0x09803940,
|
||||||
|
0x080037c0, 0x09403900, 0x09803940, 0x0000000f
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: ShakeHand
|
||||||
|
Description: ARM9 の ShakeHand 関数と同期を取る。
|
||||||
|
メインメモリでないメモリ空間で実行される必要がある。
|
||||||
|
Arguments: r0 - ARM9 同期用変数へのポインタ。
|
||||||
|
r1 - ARM7 同期用変数へのポインタ。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static const u32 microcode_ShakeHand[10] =
|
||||||
|
{
|
||||||
|
0xe1d020b0, /* ldrh r2, [r0] ; 同期変数9を共有メモリから読む */
|
||||||
|
0xe1d130b0, /* ldrh r3, [r1] ; 同期変数7を共有メモリから読む */
|
||||||
|
0xe2833001, /* @1: add r3, r3, #1 ; 同期変数7 ++ */
|
||||||
|
0xe1c130b0, /* strh r3, [r1] ; 同期変数7を共有メモリに書く */
|
||||||
|
0xe1d0c0b0, /* ldrh r12, [r0] ; 同期変数9の現状を共有メモリから読む */
|
||||||
|
0xe152000c, /* cmp r2, r12 ; 同期変数9の変化を判定する */
|
||||||
|
0x0afffffa, /* beq @1 ; 変化していなければループ */
|
||||||
|
0xe2833001, /* add r3, r3, #1 ; 同期変数7 ++ */
|
||||||
|
0xe1c130b0, /* strh r3, [r1] ; 同期変数7を共有メモリに書く */
|
||||||
|
0xe12fff1e /* bx lr ; ハンドシェイク完了 */
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef DEBUG_WRAM_SETTING
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: WaitAgreement
|
||||||
|
Description: ARM9 の起動ベクタが特定の状態になるまで待つ。
|
||||||
|
メインメモリでないメモリ空間で実行される必要がある。
|
||||||
|
Arguments: r0 - 同期用フェーズ管理変数へのポインタ。
|
||||||
|
r1 - 待機するフェーズ番号。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static const u32 microcode_WaitAgreement[7] =
|
||||||
|
{
|
||||||
|
0xe1d020b0, /* @1: ldrh r2, [r0] ; フェーズ管理変数を共有メモリから読む */
|
||||||
|
0xe1510002, /* cmp r1, r2 ; 待機フェーズ番号と比較 */
|
||||||
|
0x012fff1e, /* bxeq lr ; 一致していれば待機完了 */
|
||||||
|
0xe3a03010, /* mov r3, #16 ; 空ループ回数初期化 */
|
||||||
|
0xe2533001, /* @2: subs r3, r3, #1 ; 空ループ回数 -- */
|
||||||
|
0x1afffffd, /* bne @2 ; 16 回ループ */
|
||||||
|
0xeafffff8 /* b @1 ; 先頭に戻る */
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: GotoMain
|
||||||
|
Description: ARM9 に特定の状態になったことを伝えた上で、Main 関数へジャンプ
|
||||||
|
する。メインメモリでないメモリ空間で実行される必要がある。
|
||||||
|
Arguments: r0 - Main 関数のポインタ。Main 関数が Thumb コードである場合
|
||||||
|
には、bx 命令でジャンプするため最下位ビットが 1 になって
|
||||||
|
いる必要がある。
|
||||||
|
r1 - 同期用フェーズ管理変数へのポインタ。
|
||||||
|
r2 - ARM9 に伝えるフェーズ番号。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static const u32 microcode_GotoMain[2] =
|
||||||
|
{
|
||||||
|
0xe1c120b0, /* strh r2, [r1] ; フェーズ管理変数を更新 */
|
||||||
|
0xe12fff10 /* bx r0 ; Main 関数へジャンプ */
|
||||||
|
};
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
#include <twl/code32.h>
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: _start
|
||||||
|
Description: 起動ベクタ。
|
||||||
|
Arguments: なし。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
SDK_WEAK_SYMBOL asm void
|
||||||
|
_start(void)
|
||||||
|
{
|
||||||
|
@000:
|
||||||
|
/* 割り込み禁止 */
|
||||||
|
mov r12, #HW_REG_BASE
|
||||||
|
str r12, [r12, #REG_IME_OFFSET] // Use that LSB of HW_REG_BASE is 0b0
|
||||||
|
|
||||||
|
/* ハンドシェイク用マイクロコードを専用 WRAM にコピー */
|
||||||
|
ldr r1, =microcode_ShakeHand
|
||||||
|
ldr r2, =HW_PRV_WRAM
|
||||||
|
add r3, r2, #40
|
||||||
|
@001: ldr r0, [r1], #4
|
||||||
|
str r0, [r2], #4
|
||||||
|
cmp r2, r3
|
||||||
|
blt @001
|
||||||
|
|
||||||
|
/* 専用 WRAM 上のコードで ARM9 とハンドシェイク */
|
||||||
|
ldr r0, =HW_BOOT_SHAKEHAND_9
|
||||||
|
ldr r1, =HW_BOOT_SHAKEHAND_7
|
||||||
|
ldr r2, =HW_PRV_WRAM
|
||||||
|
mov lr, pc
|
||||||
|
bx r2
|
||||||
|
|
||||||
|
@010:
|
||||||
|
/* スタックポインタ設定 */
|
||||||
|
mov r0, #HW_PSR_SVC_MODE // SuperVisor mode
|
||||||
|
msr cpsr_c, r0
|
||||||
|
ldr sp, =HW_PRV_WRAM_SVC_STACK_END
|
||||||
|
mov r0, #HW_PSR_IRQ_MODE // IRQ mode
|
||||||
|
msr cpsr_c, r0
|
||||||
|
ldr sp, =HW_PRV_WRAM_IRQ_STACK_END
|
||||||
|
ldr r1, =SDK_IRQ_STACKSIZE
|
||||||
|
sub r1, sp, r1
|
||||||
|
sub sp, sp, #4 // 4 bytes for stack check code
|
||||||
|
mov r0, #HW_PSR_SYS_MODE
|
||||||
|
msr cpsr_csfx, r0
|
||||||
|
sub sp, r1, #4 // 4 bytes for stack check code
|
||||||
|
|
||||||
|
/* スタック領域をクリア */
|
||||||
|
ldr r0, =SDK_SYS_STACKSIZE
|
||||||
|
sub r1, r1, r0
|
||||||
|
ldr r2, =HW_PRV_WRAM_IRQ_STACK_END
|
||||||
|
mov r0, #0
|
||||||
|
@011: cmp r1, r2
|
||||||
|
strlt r0, [r1], #4
|
||||||
|
blt @011
|
||||||
|
|
||||||
|
/* SCFG を HW_SYS_CONF_BUF へコピー */
|
||||||
|
bl INIT_InitializeScfg
|
||||||
|
bl INITi_CopySysConfig
|
||||||
|
|
||||||
|
/* TWL ハードウェア上で動作しているかどうかを調査 */
|
||||||
|
bl INITi_IsRunOnTwl
|
||||||
|
/* TWL ハードウェア上で動作していない場合は永久ループ */
|
||||||
|
@012: bne @012
|
||||||
|
|
||||||
|
/* プリロードパラメータアドレスが格納されていない場合は、デフォルト値をセット */
|
||||||
|
ldr r0, =HW_PRELOAD_PARAMETER_ADDR
|
||||||
|
ldr r1, [r0]
|
||||||
|
cmp r1, #0
|
||||||
|
ldreq r1, =HW_PARAM_TWL_SETTINGS_DATA_DEFAULT
|
||||||
|
streq r1, [r0]
|
||||||
|
|
||||||
|
@020:
|
||||||
|
/* Autoload を実施 */
|
||||||
|
bl INITi_DoAutoload
|
||||||
|
|
||||||
|
/* STATIC ブロックの .bss セクションを 0 クリア */
|
||||||
|
mov r1, #0 // r1 = clear value for STATIC bss section
|
||||||
|
ldr r3, =_start_ModuleParams
|
||||||
|
ldr r0, [r3, #12] // r0 = start address of STATIC bss section
|
||||||
|
ldr r2, [r3, #16]
|
||||||
|
subs r2, r2, r0 // r2 = size of STATIC bss section
|
||||||
|
blgt INITi_Fill32
|
||||||
|
|
||||||
|
//---- detect main memory size
|
||||||
|
bl INITi_DetectMainMemorySize
|
||||||
|
|
||||||
|
#ifndef SDK_FINALROM
|
||||||
|
//---- set debug print window
|
||||||
|
ldr r1, =HW_PRINT_OUTPUT_ARM9
|
||||||
|
mov r0, #OS_PRINT_OUTPUT_DEFAULT_ARM9
|
||||||
|
orr r0, r0, #(OS_PRINT_OUTPUT_DEFAULT_ARM7<<8)
|
||||||
|
strh r0, [r1]
|
||||||
|
mov r0, #OS_PRINT_OUTPUT_DEFAULT_ARM9ERR
|
||||||
|
orr r0, r0, #(OS_PRINT_OUTPUT_DEFAULT_ARM7ERR<<8)
|
||||||
|
strh r0, [r1, #2]
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* 割り込みベクタ設定 */
|
||||||
|
ldr r1, =HW_INTR_VECTOR_BUF
|
||||||
|
ldr r0, =OS_IrqHandler
|
||||||
|
str r0, [r1]
|
||||||
|
|
||||||
|
#ifndef SDK_NOINIT
|
||||||
|
/* c++ 用初期化 */
|
||||||
|
bl _fp_init
|
||||||
|
bl TwlSpStartUp
|
||||||
|
bl __call_static_initializers
|
||||||
|
bl INITi_CallStaticInitializers
|
||||||
|
#endif
|
||||||
|
|
||||||
|
@030:
|
||||||
|
/* Main 関数へのジャンプ用マイクロコードをスタックの底にコピー */
|
||||||
|
ldr r1, =microcode_GotoMain
|
||||||
|
ldr r0, [r1], #4
|
||||||
|
str r0, [sp, #-4]
|
||||||
|
ldr r0, [r1]
|
||||||
|
str r0, [sp]
|
||||||
|
|
||||||
|
/* マイクロコードを経由して Main 関数へジャンプ */
|
||||||
|
ldr r0, =TwlSpMain
|
||||||
|
ldr r1, =HW_BOOT_SYNC_PHASE
|
||||||
|
mov r2, #BOOT_SYNC_PHASE_4
|
||||||
|
ldr lr, =HW_RESET_VECTOR
|
||||||
|
sub r3, sp, #4
|
||||||
|
bx r3
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_DoAutoload
|
||||||
|
Description: リンク情報に沿って、各オートロードブロックの固定データ部の展開
|
||||||
|
及び変数部の 0 クリアを行う。
|
||||||
|
Arguments: なし。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
/*
|
||||||
|
* < 二段階オートロード >
|
||||||
|
* 0x02380000 に crt0 及び一段目ロード元バイナリが配置されている。
|
||||||
|
* NITRO と共有可能な WRAM 上に配置されるべきバイナリデータを 0x037c0000 にロードする。
|
||||||
|
* TWL でしか動作しない WRAM 上に配置されるべきバイナリデータを続きのアドレスにロードする。
|
||||||
|
* 0x02400000 に ARM9 の二段目ロード元バイナリが配置されている。
|
||||||
|
* 0x04000 バイト分はカード ROM から再読み出し不可なので、0x02f80000 - 0x02f84000 に退避する。
|
||||||
|
* 0x02e80000 に二段目ロード元バイナリが配置されている。
|
||||||
|
* 0x04000 バイト分はカード ROM から再読み出し不可なので、0x02f84000 - 0x02f88000 に退避する。
|
||||||
|
* NITRO と共有可能な MAIN 上に配置されるべきバイナリデータを 0x02f88000 にロードする。
|
||||||
|
* TWL でしか動作しない MAIN 上に配置されるべきバイナリデータを続きのアドレスにロードする。
|
||||||
|
*/
|
||||||
|
static asm void
|
||||||
|
INITi_DoAutoload(void)
|
||||||
|
{
|
||||||
|
stmfd sp!, {lr}
|
||||||
|
|
||||||
|
@01_autoload:
|
||||||
|
/* WRAM 用ブロックをオートロード */
|
||||||
|
ldr r0, =_start_ModuleParams
|
||||||
|
ldr r12, [r0] // r12 = SDK_AUTOLOAD_LIST
|
||||||
|
ldr r3, [r0, #4] // r3 = SDK_AUTOLOAD_LIST_END
|
||||||
|
ldr r1, [r0, #8] // r1 = SDK_AUTOLOAD_START
|
||||||
|
@01_segments_loop:
|
||||||
|
cmp r12, r3
|
||||||
|
bge @02_start
|
||||||
|
/* 固定セクション */
|
||||||
|
ldr r0, [r12], #4 // r0 = start address of destination range of fixed section
|
||||||
|
ldr r2, [r12], #4 // r2 = size of fixed section
|
||||||
|
bl INITi_Copy32
|
||||||
|
stmfd sp!, {r0, r1}
|
||||||
|
/* static initializer テーブル */
|
||||||
|
ldr r0, [r12], #4 // r0 = start address of source range of static initializers table
|
||||||
|
#ifndef SDK_NOINIT
|
||||||
|
stmfd sp!, {r3, r12}
|
||||||
|
bl INITi_ShelterStaticInitializer
|
||||||
|
ldmfd sp!, {r3, r12}
|
||||||
|
#endif
|
||||||
|
/* bss セクション */
|
||||||
|
ldmfd sp!, {r0} // r0 = start address of destination range of bss section
|
||||||
|
mov r1, #0 // r1 = clear value for bss section
|
||||||
|
ldr r2, [r12], #4 // r2 = size of bss section
|
||||||
|
bl INITi_Fill32
|
||||||
|
ldmfd sp!, {r1} // r1 = end address of source range of the autoload segment
|
||||||
|
b @01_segments_loop
|
||||||
|
|
||||||
|
@02_start:
|
||||||
|
|
||||||
|
/* メインメモリ用オートロードブロックの存在を確認 */
|
||||||
|
ldr r1, =HW_TWL_ROM_HEADER_BUF
|
||||||
|
ldr r0, [r1, #ROM_Header.s.sub_ltd_size]
|
||||||
|
cmp r0, #0
|
||||||
|
beq @03_start
|
||||||
|
|
||||||
|
@02_autoload:
|
||||||
|
/* メインメモリ用ブロックをオートロード */
|
||||||
|
ldr r0, =_start_LtdModuleParams
|
||||||
|
ldr r12, [r0] // r12 = SDK_LTDAUTOLOAD_LIST
|
||||||
|
ldr r3, [r0, #4] // r3 = SDK_LTDAUTOLOAD_LIST_END
|
||||||
|
ldr r1, [r0, #8] // r1 = SDK_AUTOLOAD_START
|
||||||
|
@02_segments_loop:
|
||||||
|
cmp r12, r3
|
||||||
|
bge @03_start
|
||||||
|
/* 固定セクション */
|
||||||
|
ldr r0, [r12], #4
|
||||||
|
ldr r2, [r12], #4
|
||||||
|
bl INITi_Copy32
|
||||||
|
stmfd sp!, {r0, r1}
|
||||||
|
/* static initializer テーブル */
|
||||||
|
ldr r0, [r12], #4
|
||||||
|
#ifndef SDK_NOINIT
|
||||||
|
stmfd sp!, {r3, r12}
|
||||||
|
bl INITi_ShelterStaticInitializer
|
||||||
|
ldmfd sp!, {r3, r12}
|
||||||
|
#endif
|
||||||
|
/* bss セクション */
|
||||||
|
ldmfd sp!, {r0}
|
||||||
|
mov r1, #0
|
||||||
|
ldr r2, [r12], #4
|
||||||
|
bl INITi_Fill32
|
||||||
|
ldmfd sp!, {r1}
|
||||||
|
b @02_segments_loop
|
||||||
|
|
||||||
|
@03_start:
|
||||||
|
/* オートロード完了コールバック関数呼び出し */
|
||||||
|
ldr r0, =_start_ModuleParams
|
||||||
|
ldr r1, =_start_LtdModuleParams
|
||||||
|
ldmfd sp!, {lr}
|
||||||
|
b _start_AutoloadDoneCallback
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef SDK_NOINIT
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_ShelterStaticInitializer
|
||||||
|
Description: 各オートロードセグメント内の static initializer へのポインタ
|
||||||
|
テーブルを IRQ スタックの最上部に退避する。
|
||||||
|
Arguments: ptr - セグメント内のポインタテーブルへのポインタ。
|
||||||
|
テーブルは NULL で終端されている必要がある。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static asm void
|
||||||
|
INITi_ShelterStaticInitializer(u32* ptr)
|
||||||
|
{
|
||||||
|
/* 引数確認 */
|
||||||
|
cmp r0, #0
|
||||||
|
bxeq lr
|
||||||
|
|
||||||
|
/* 退避場所先頭アドレスを計算 */
|
||||||
|
ldr r1, =HW_PRV_WRAM_IRQ_STACK_END
|
||||||
|
ldr r2, =SDK_IRQ_STACKSIZE
|
||||||
|
sub r1, r1, r2
|
||||||
|
add r1, r1, #4
|
||||||
|
|
||||||
|
/* 退避場所先頭から空き場所を調査 */
|
||||||
|
@001: ldr r2, [r1]
|
||||||
|
cmp r2, #0
|
||||||
|
addne r1, r1, #4
|
||||||
|
bne @001
|
||||||
|
|
||||||
|
/* 空き場所にテーブルをコピー */
|
||||||
|
@002: ldr r2, [r0], #4
|
||||||
|
str r2, [r1], #4
|
||||||
|
cmp r2, #0
|
||||||
|
bne @002
|
||||||
|
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_CallStaticInitializers
|
||||||
|
Description: 各オートロードセグメント内の static initializer を呼び出す。
|
||||||
|
オートロード処理によって IRQ スタックの最上部に退避されている
|
||||||
|
関数ポインタテーブルを一つずつ呼び出す。
|
||||||
|
Arguments: なし。
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static asm void
|
||||||
|
INITi_CallStaticInitializers(void)
|
||||||
|
{
|
||||||
|
stmdb sp!, {lr}
|
||||||
|
|
||||||
|
/* テーブル退避場所先頭アドレスを計算 */
|
||||||
|
ldr r1, =HW_PRV_WRAM_IRQ_STACK_END
|
||||||
|
ldr r2, =SDK_IRQ_STACKSIZE
|
||||||
|
sub r1, r1, r2
|
||||||
|
add r1, r1, #4
|
||||||
|
|
||||||
|
/* テーブルに管理されているポインタを一つずつ呼び出し */
|
||||||
|
@001: ldr r0, [r1]
|
||||||
|
cmp r0, #0
|
||||||
|
beq @002
|
||||||
|
stmdb sp!, {r1}
|
||||||
|
mov lr, pc
|
||||||
|
bx r0
|
||||||
|
ldmia sp!, {r1}
|
||||||
|
/* 一旦呼び出したポインタはゼロクリア (IRQスタックを間借りしている為) */
|
||||||
|
mov r0, #0
|
||||||
|
str r0, [r1], #4
|
||||||
|
b @001
|
||||||
|
|
||||||
|
@002: ldmia sp!, {lr}
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: _start_AutoloadDoneCallback
|
||||||
|
Description: オートロード完了コールバック。
|
||||||
|
Arguments: argv - オートロードパラメータを保持している配列。
|
||||||
|
argv[0] = SDK_AUTOLOAD_LIST
|
||||||
|
argv[1] = SDK_AUTOLOAD_LIST_END
|
||||||
|
argv[2] = SDK_AUTOLOAD_START
|
||||||
|
argv[3] = SDK_STATIC_BSS_START
|
||||||
|
argv[4] = SDK_STATIC_BSS_END
|
||||||
|
Returns: なし。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
SDK_WEAK_SYMBOL asm void
|
||||||
|
_start_AutoloadDoneCallback(void* argv[])
|
||||||
|
{
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: NitroSpStartUp
|
||||||
|
Description: Hook for user start up.
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
SDK_WEAK_SYMBOL void
|
||||||
|
NitroSpStartUp(void)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_IsRunOnTwl
|
||||||
|
|
||||||
|
Description: check running platform
|
||||||
|
|
||||||
|
This function is used in only Nitro-TWL hybrid mode.
|
||||||
|
(In Nitro mode and TWL limited mode, treated as constant)
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: TRUE : running on TWL
|
||||||
|
FALSE : running on NITRO
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static asm BOOL INITi_IsRunOnTwl( void )
|
||||||
|
{
|
||||||
|
ldr r0, =HW_PRV_WRAM_SYSRV
|
||||||
|
ldrb r0, [r0,#HWi_WSYS08_WRAMOFFSET]
|
||||||
|
and r0, r0, #HWi_WSYS08_ROM_ARM9SEC_MASK | HWi_WSYS08_ROM_ARM9RSEL_MASK
|
||||||
|
cmp r0, #HWi_WSYS08_ROM_ARM9SEC_MASK
|
||||||
|
moveq r0, #TRUE
|
||||||
|
movne r0, #FALSE
|
||||||
|
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INIT_InitializeScfg
|
||||||
|
|
||||||
|
Description: ローダーが行う SCFG ブロックへの設定処理を代行する為の関数。
|
||||||
|
処理の実体は crt0 の外部に定義するため、弱シンボルとする。
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
SDK_WEAK_SYMBOL asm void
|
||||||
|
INIT_InitializeScfg(void)
|
||||||
|
{
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_CopySysConfig
|
||||||
|
|
||||||
|
Description: copy SCFG registers to HW_SYS_CONF_BUF and HW_PRV_WRAM_SYSRV
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static asm void INITi_CopySysConfig( void )
|
||||||
|
{
|
||||||
|
//---- copy scfg setting
|
||||||
|
ldr r2, =HW_PRV_WRAM_SYSRV
|
||||||
|
ldr r3, =HW_SYS_CONF_BUF
|
||||||
|
ldr r0, [r2, #HWi_WSYS04_WRAMOFFSET]
|
||||||
|
str r0, [r3, #HWi_WSYS04_OFFSET]
|
||||||
|
ldrh r0, [r2, #HWi_WSYS08_WRAMOFFSET]
|
||||||
|
strh r0, [r3, #HWi_WSYS08_OFFSET]
|
||||||
|
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_DetectMainMemorySize
|
||||||
|
|
||||||
|
Description: detect main memory size.
|
||||||
|
result is written into (u32*)HW_MMEMCHECKER_SUB.
|
||||||
|
value is [OS_CONSOLE_SIZE_4MB|OS_CONSOLE_SIZE_8MB|
|
||||||
|
OS_CONSOLE_SIZE_16MB|OS_CONSOLE_SIZE_32MB]
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#define OSi_IMAGE_DIFFERENCE 0x400000
|
||||||
|
#define OSi_IMAGE_DIFFERENCE2 0xb000000
|
||||||
|
#define OSi_DETECT_NITRO_MASK (REG_SND_SMX_CNT_E_MASK | REG_SND_SMX_CNT_FSEL_MASK)
|
||||||
|
#define OSi_DETECT_NITRO_VAL (REG_SND_SMX_CNT_E_MASK)
|
||||||
|
|
||||||
|
#define OSi_CHECKNUM1 0x55
|
||||||
|
#define OSi_CHECKNUM2 0xaa
|
||||||
|
#define OSi_100usWAIT 3352 // 100us = 3351.4cycles(33.514MHz)
|
||||||
|
|
||||||
|
static asm void INITi_DetectMainMemorySize( void )
|
||||||
|
{
|
||||||
|
stmfd sp!, {lr}
|
||||||
|
|
||||||
|
//---- detect memory size
|
||||||
|
mov r0, #OS_CONSOLE_SIZE_4MB
|
||||||
|
mov r1, #0
|
||||||
|
|
||||||
|
ldr r2, =HW_MMEMCHECKER_SUB
|
||||||
|
sub r3, r2, #OSi_IMAGE_DIFFERENCE
|
||||||
|
@1:
|
||||||
|
strh r1, [r2]
|
||||||
|
ldrh r12, [r3]
|
||||||
|
cmp r1, r12
|
||||||
|
bne @2
|
||||||
|
|
||||||
|
add r1, r1, #1
|
||||||
|
cmp r1, #2 // check 2 loop
|
||||||
|
bne @1
|
||||||
|
|
||||||
|
//---- 4MB
|
||||||
|
b @3
|
||||||
|
|
||||||
|
//---- 8MB or 16MB or 32MB
|
||||||
|
@2:
|
||||||
|
// check if running on twl/nitro
|
||||||
|
bl INITi_IsRunOnTwl
|
||||||
|
movne r0, #OS_CONSOLE_SIZE_8MB
|
||||||
|
bne @3
|
||||||
|
|
||||||
|
//---- 16MB or 32MB
|
||||||
|
add r3, r2, #OSi_IMAGE_DIFFERENCE2
|
||||||
|
mov r0, #OS_CONSOLE_SIZE_16MB
|
||||||
|
ldrb r2, [r3]
|
||||||
|
|
||||||
|
mov r1, #OSi_CHECKNUM1
|
||||||
|
strb r1, [r3]
|
||||||
|
|
||||||
|
ldr r12, =OSi_100usWAIT
|
||||||
|
@4 subs r12, r12, #4
|
||||||
|
bcs @4
|
||||||
|
|
||||||
|
ldrb r1, [r3]
|
||||||
|
cmp r1, #OSi_CHECKNUM1
|
||||||
|
bne @3
|
||||||
|
|
||||||
|
mov r1, #OSi_CHECKNUM2
|
||||||
|
strb r1, [r3]
|
||||||
|
|
||||||
|
ldr r12, =OSi_100usWAIT
|
||||||
|
@5 subs r12, r12, #4
|
||||||
|
bcs @5
|
||||||
|
|
||||||
|
ldrb r1, [r3]
|
||||||
|
cmp r1, #OSi_CHECKNUM2
|
||||||
|
moveq r0, #OS_CONSOLE_SIZE_32MB
|
||||||
|
|
||||||
|
@3:
|
||||||
|
//---- check SMX_CNT
|
||||||
|
strb r2, [r3]
|
||||||
|
ldr r3, =REG_SMX_CNT_ADDR
|
||||||
|
ldrh r1, [r3]
|
||||||
|
and r1, r1, #OSi_DETECT_NITRO_MASK
|
||||||
|
cmp r1, #OSi_DETECT_NITRO_VAL
|
||||||
|
orreq r0, r0, #OS_CHIPTYPE_SMX_MASK
|
||||||
|
|
||||||
|
ldr r2, =HW_MMEMCHECKER_SUB
|
||||||
|
strh r0, [r2]
|
||||||
|
|
||||||
|
ldmfd sp!, {lr}
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_Copy32
|
||||||
|
Description: 32 bit 単位でコピーを行う。スタックを 36 バイト消費するが、
|
||||||
|
レジスタ r3 - r12 は破壊しない。
|
||||||
|
Arguments: r0 - コピー先へのポインタ ( 4 バイトアライン )。
|
||||||
|
r1 - コピー元へのポインタ ( 4 バイトアライン )。
|
||||||
|
r2 - コピーする長さをバイト単位で指定 ( 4 の倍数 )。
|
||||||
|
Returns: r0 - コピー後のコピー先へのポインタ ( r0 + r2 )。
|
||||||
|
r1 - コピー後のコピー元へのポインタ ( r1 + r2 )。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static asm void*
|
||||||
|
INITi_Copy32(void* dst, void* src, u32 size)
|
||||||
|
{
|
||||||
|
stmfd sp!, {r3-r11}
|
||||||
|
bics r3, r2, #0x0000001f
|
||||||
|
beq @next
|
||||||
|
add r3, r0, r3
|
||||||
|
@loop:
|
||||||
|
ldmia r1!, {r4-r11}
|
||||||
|
stmia r0!, {r4-r11}
|
||||||
|
cmp r3, r0
|
||||||
|
bgt @loop
|
||||||
|
@next:
|
||||||
|
tst r2, #0x00000010
|
||||||
|
ldmneia r1!, {r4-r7}
|
||||||
|
stmneia r0!, {r4-r7}
|
||||||
|
tst r2, #0x00000008
|
||||||
|
ldmneia r1!, {r4-r5}
|
||||||
|
stmneia r0!, {r4-r5}
|
||||||
|
tst r2, #0x00000004
|
||||||
|
ldmneia r1!, {r4}
|
||||||
|
stmneia r0!, {r4}
|
||||||
|
ldmfd sp!, {r3-r11}
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INITi_Fill32
|
||||||
|
Description: 32 bit 単位でバッファ内容を指定データで埋める。スタックを 36
|
||||||
|
バイト消費するが、レジスタ r3 - r12 は破壊しない。
|
||||||
|
Arguments: r0 - バッファへのポインタ ( 4 バイトアライン )。
|
||||||
|
r1 - バッファを埋める内容を 32 bit 値で指定。
|
||||||
|
r2 - バッファを埋める長さをバイト単位で指定 ( 4 の倍数 )。
|
||||||
|
Returns: r0 - 処理後のバッファへのポインタ ( r0 + r2 )。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static asm void*
|
||||||
|
INITi_Fill32(void* dst, u32 value, u32 size)
|
||||||
|
{
|
||||||
|
stmfd sp!, {r3-r11}
|
||||||
|
mov r4, r1
|
||||||
|
mov r5, r1
|
||||||
|
mov r6, r1
|
||||||
|
mov r7, r1
|
||||||
|
mov r8, r1
|
||||||
|
mov r9, r1
|
||||||
|
mov r10, r1
|
||||||
|
mov r11, r1
|
||||||
|
bics r3, r2, #0x0000001f
|
||||||
|
beq @next
|
||||||
|
add r3, r0, r3
|
||||||
|
@loop:
|
||||||
|
stmia r0!, {r4-r11}
|
||||||
|
cmp r3, r0
|
||||||
|
bgt @loop
|
||||||
|
@next:
|
||||||
|
tst r2, #0x00000010
|
||||||
|
stmneia r0!, {r4-r7}
|
||||||
|
tst r2, #0x00000008
|
||||||
|
stmneia r0!, {r4-r5}
|
||||||
|
tst r2, #0x00000004
|
||||||
|
stmneia r0!, {r4}
|
||||||
|
ldmfd sp!, {r3-r11}
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
|
||||||
|
#include <twl/codereset.h>
|
||||||
110
build/components/hyena.TWL/src/initScfg.c
Normal file
110
build/components/hyena.TWL/src/initScfg.c
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - components - mongoose.TWL
|
||||||
|
File: initScfg.c
|
||||||
|
|
||||||
|
Copyright 2008 Nintendo. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Date:: $
|
||||||
|
$Rev$
|
||||||
|
$Author$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include <twl/memorymap_sp.h>
|
||||||
|
#include <twl/hw/common/mmap_wramEnv.h>
|
||||||
|
|
||||||
|
extern void INIT_InitializeScfg(void);
|
||||||
|
|
||||||
|
#include <twl/code32.h>
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: INIT_InitializeScfg
|
||||||
|
|
||||||
|
Description: ローダーが行う SCFG ブロックへの設定処理を代行する為の関数。
|
||||||
|
crt0 内の弱シンボルを上書きする。
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
asm void
|
||||||
|
INIT_InitializeScfg(void)
|
||||||
|
{
|
||||||
|
// SCFG enable?
|
||||||
|
ldr r2, =REG_EXT_ADDR
|
||||||
|
ldr r0, [r2]
|
||||||
|
tst r0, #REG_SCFG_EXT_CFG_MASK
|
||||||
|
beq @end
|
||||||
|
|
||||||
|
/* NITRO 互換無線の送受信機能を動作 */
|
||||||
|
ldr r1, =REG_WL_ADDR
|
||||||
|
ldrh r0, [r1]
|
||||||
|
orr r0, r0, #REG_SCFG_WL_OFFB_MASK
|
||||||
|
strh r0, [r1]
|
||||||
|
|
||||||
|
/* 新規サウンドブロックへのクロック供給 */
|
||||||
|
ldr r1, =REG_CLK_ADDR
|
||||||
|
ldrh r0, [r1]
|
||||||
|
orr r0, r0, #REG_SCFG_CLK_SNDMCLK_MASK
|
||||||
|
strh r0, [r1]
|
||||||
|
|
||||||
|
/* ARM7 側の DMA には新 DMA 回路を採用 */
|
||||||
|
ldr r1, =REG_EXT_ADDR
|
||||||
|
ldr r0, [r1]
|
||||||
|
orr r0, r0, #REG_SCFG_EXT_DMAC_MASK
|
||||||
|
str r0, [r1]
|
||||||
|
|
||||||
|
ldr r2, =HW_PRV_WRAM_SYSRV
|
||||||
|
//EXT(extentions)
|
||||||
|
ldr r3, =REG_EXT_ADDR
|
||||||
|
ldr r0, [r3]
|
||||||
|
str r0, [r2, #HWi_WSYS04_WRAMOFFSET]
|
||||||
|
//OPT(bonding option)
|
||||||
|
ldr r3, =REG_OP_ADDR
|
||||||
|
ldrb r0, [r3]
|
||||||
|
//A9ROM(ARM9 ROM)
|
||||||
|
ldr r3, =REG_A9ROM_ADDR
|
||||||
|
ldrb r1, [r3]
|
||||||
|
and r12,r1, #(REG_SCFG_A9ROM_RSEL_MASK | REG_SCFG_A9ROM_SEC_MASK)
|
||||||
|
orr r0, r0, r12, LSL #(HWi_WSYS08_ROM_ARM9RSEL_SHIFT - REG_SCFG_A9ROM_RSEL_SHIFT)
|
||||||
|
//A7ROM(ARM7 ROM)
|
||||||
|
ldr r3, =REG_A7ROM_ADDR
|
||||||
|
ldrb r1, [r3]
|
||||||
|
and r12,r1, #(REG_SCFG_A7ROM_RSEL_MASK | REG_SCFG_A7ROM_FUSE_MASK)
|
||||||
|
orr r0, r0, r12, LSL #(HWi_WSYS08_ROM_ARM7RSEL_SHIFT - REG_SCFG_A7ROM_RSEL_SHIFT)
|
||||||
|
//DS-WL(DS wireless)
|
||||||
|
ldr r3, =REG_WL_ADDR
|
||||||
|
ldrb r1, [r3]
|
||||||
|
and r12,r1, #REG_SCFG_WL_OFFB_MASK
|
||||||
|
orr r0, r0, r12, LSL #(HWi_WSYS08_WL_OFFB_SHIFT - REG_SCFG_WL_OFFB_SHIFT)
|
||||||
|
strb r0, [r2, #HWi_WSYS08_WRAMOFFSET]
|
||||||
|
//OPT(JTAG info)
|
||||||
|
ldr r3, =REG_JTAG_ADDR
|
||||||
|
ldrh r0, [r3]
|
||||||
|
and r12,r0, #REG_SCFG_JTAG_DSPJE_MASK
|
||||||
|
orr r0, r0, r12, LSR #(REG_SCFG_JTAG_DSPJE_SHIFT - HWi_WSYS09_JTAG_DSPJE_SHIFT)
|
||||||
|
//CLK(only wram clock)
|
||||||
|
ldr r3, =REG_CLK_ADDR
|
||||||
|
ldrh r1, [r3]
|
||||||
|
and r12,r1, #(REG_SCFG_CLK_AESHCLK_MASK | REG_SCFG_CLK_SD2HCLK_MASK | REG_SCFG_CLK_SD1HCLK_MASK)
|
||||||
|
orr r0, r0, r12, LSL #(HWi_WSYS09_CLK_SD1HCLK_SHIFT - REG_SCFG_CLK_SD1HCLK_SHIFT)
|
||||||
|
and r12,r1, #(REG_SCFG_CLK_SNDMCLK_MASK | REG_SCFG_CLK_WRAMHCLK_MASK)
|
||||||
|
orr r0, r0, r12, LSR #(REG_SCFG_CLK_WRAMHCLK_SHIFT - HWi_WSYS09_CLK_WRAMHCLK_SHIFT)
|
||||||
|
strb r0, [r2, #HWi_WSYS09_WRAMOFFSET]
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
/* A7-SCFG ブロックへのアクセスを無効化 */
|
||||||
|
ldr r1, =REG_EXT_ADDR
|
||||||
|
ldr r0, [r1]
|
||||||
|
bic r0, r0, #REG_SCFG_EXT_CFG_MASK
|
||||||
|
str r0, [r1]
|
||||||
|
#endif
|
||||||
|
|
||||||
|
@end:
|
||||||
|
bx lr
|
||||||
|
}
|
||||||
|
#include <twl/codereset.h>
|
||||||
916
build/components/hyena.TWL/src/main.c
Normal file
916
build/components/hyena.TWL/src/main.c
Normal file
@ -0,0 +1,916 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlIPL - components - hyena.TWL
|
||||||
|
File: main.c
|
||||||
|
|
||||||
|
Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Date:: $
|
||||||
|
$Rev$
|
||||||
|
$Author$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include <nitro/types.h>
|
||||||
|
#include <twl/init/crt0.h>
|
||||||
|
#include <twl/memorymap_sp.h>
|
||||||
|
#include <twl/os.h>
|
||||||
|
#include <twl/spi.h>
|
||||||
|
#include <twl/fatfs.h>
|
||||||
|
#include <nitro/pad.h>
|
||||||
|
#include <nitro/std.h>
|
||||||
|
#include <nitro/snd.h>
|
||||||
|
#include <nitro/wvr.h>
|
||||||
|
#include <twl/nwm/ARM7/ForLauncher/nwm_sp_init_for_launcher.h>
|
||||||
|
#include <twl/camera.h>
|
||||||
|
#include <twl/rtc.h>
|
||||||
|
#include <nitro/hw/common/lcd.h>
|
||||||
|
#include <nitro/gx.h>
|
||||||
|
#include <twl/os/common/codecmode.h>
|
||||||
|
#include <twl/cdc.h>
|
||||||
|
#include <twl/snd/ARM7/sndex_api.h>
|
||||||
|
#include <twl/aes.h>
|
||||||
|
#include <twl/mcu.h>
|
||||||
|
#include <twl/hw/common/mmap_wramEnv.h>
|
||||||
|
#include <sysmenu.h>
|
||||||
|
#include <sysmenu/mcu.h>
|
||||||
|
#include <firm/memorymap.h>
|
||||||
|
#include "pm_pmic.h"
|
||||||
|
#include "internal_api.h"
|
||||||
|
#include "nvram_sp.h"
|
||||||
|
#include "twl/sea.h"
|
||||||
|
|
||||||
|
// 未実装(現状ではデバッガ接続しないなら選択してもよい)
|
||||||
|
//#define HYENA_ROMEMU_INFO_FROM_LNCR_PARAM
|
||||||
|
//#define HYENA_RTC_DEBUG
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
定数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#define WM_WL_HEAP_SIZE 0x2100
|
||||||
|
#define ATH_DRV_HEAP_SIZE 0x5800
|
||||||
|
#define WPA_HEAP_SIZE 0x1C00
|
||||||
|
|
||||||
|
#define MEM_TYPE_WRAM 0
|
||||||
|
#define MEM_TYPE_MAIN 1
|
||||||
|
|
||||||
|
/* Priorities of each threads */
|
||||||
|
#define THREAD_PRIO_MCU 1 /* ハードウェアリセット時に他のスレッドに優先して動く必要アリ */
|
||||||
|
#define THREAD_PRIO_SPI 2
|
||||||
|
#define THREAD_PRIO_SYSMMCU 6
|
||||||
|
#define THREAD_PRIO_SND 6
|
||||||
|
#define THREAD_PRIO_FATFS 8
|
||||||
|
#define THREAD_PRIO_HOTSW 11
|
||||||
|
#define THREAD_PRIO_AES 12
|
||||||
|
#define THREAD_PRIO_SEA 12
|
||||||
|
#define THREAD_PRIO_RTC 12
|
||||||
|
#define THREAD_PRIO_SNDEX 14
|
||||||
|
#define THREAD_PRIO_FS 15
|
||||||
|
/* OS_THREAD_LAUNCHER_PRIORITY 16 */
|
||||||
|
|
||||||
|
#define NWM_DMANO NWMSP_DMA_NOT_USE // NWMのNDMAは使用しない。
|
||||||
|
#define THREAD_PRIO_NWM_COMMMAND 9
|
||||||
|
#define THREAD_PRIO_NWM_EVENT 7
|
||||||
|
#define THREAD_PRIO_NWM_SDIO 8
|
||||||
|
#define THREAD_PRIO_NWM_WPA 10
|
||||||
|
|
||||||
|
// ROM 内登録エリアの拡張言語コード
|
||||||
|
#define ROMHEADER_FOR_CHINA_BIT 0x80
|
||||||
|
#define ROMHEADER_FOR_KOREA_BIT 0x40
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
内部関数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void ResetRTC( void );
|
||||||
|
static void ReadLauncherParameter( void );
|
||||||
|
static void PrintDebugInfo(void);
|
||||||
|
static OSHeapHandle InitializeAllocateSystem(u8 memType);
|
||||||
|
static OSHeapHandle InitializeAllocateSystemCore(u8 memType);
|
||||||
|
#ifdef SDK_TWLHYB
|
||||||
|
static OSHeapHandle InitializeAllocateSystemCoreEx(u8 memType);
|
||||||
|
#endif
|
||||||
|
static void DummyThread(void* arg);
|
||||||
|
static void ReadUserInfo(void);
|
||||||
|
static void VBlankIntr(void);
|
||||||
|
static void InitializeFatfs(void);
|
||||||
|
static void InitializeNwm(OSArenaId drvArenaId, OSHeapHandle drvHeapHandle,
|
||||||
|
OSArenaId wpaArenaId, OSHeapHandle wpaHeapHandle);
|
||||||
|
static void InitializeCdc();
|
||||||
|
static void AdjustVolume(void);
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
外部シンボル参照
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#ifdef SDK_TWLHYB
|
||||||
|
extern void SDK_LTDAUTOLOAD_LTDWRAM_BSS_END(void);
|
||||||
|
extern void SDK_LTDAUTOLOAD_LTDMAIN_BSS_END(void);
|
||||||
|
#endif
|
||||||
|
extern void SDK_SEA_KEY_STORE(void);
|
||||||
|
extern void SDK_STATIC_BSS_END(void);
|
||||||
|
|
||||||
|
extern BOOL sdmcGetNandLogFatal( void );
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: TwlSpMain
|
||||||
|
Description: 起動ベクタ。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void
|
||||||
|
TwlSpMain(void)
|
||||||
|
{
|
||||||
|
OSHeapHandle wramHeapHandle, mainHeapHandle;
|
||||||
|
|
||||||
|
// SYSMワークのクリア
|
||||||
|
// MI_CpuClear32( SYSMi_GetWork(), sizeof(SYSM_work) ); // NANDファームでクリアしているので、いらない。
|
||||||
|
// ※もしランチャー上でやるなら、crt0.o内でクリアの記述をしないとAutoloadセグメントに配置されてしまって、うまく動かない点に注意する。
|
||||||
|
|
||||||
|
// バックライトON
|
||||||
|
while ( (reg_GX_DISPSTAT & REG_GX_DISPSTAT_INI_MASK) == FALSE )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
PMi_SetControl( PMIC_CTL_BKLT1 | PMIC_CTL_BKLT2 );
|
||||||
|
|
||||||
|
#ifdef INITIAL_KEYTABLE_PRELOAD
|
||||||
|
HOTSW_CopyInitialKeyTable();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// OS 初期化
|
||||||
|
OS_Init();
|
||||||
|
PrintDebugInfo();
|
||||||
|
|
||||||
|
// ランチャーバージョンを格納(今のところ、最低でもマウント情報登録前には格納する必要あり)
|
||||||
|
*(u8 *)HW_TWL_RED_LAUNCHER_VER = (u8)SYSM_LAUNCHER_VER;
|
||||||
|
|
||||||
|
// ランチャーのマウント情報登録
|
||||||
|
SYSMi_SetLauncherMountInfo();
|
||||||
|
|
||||||
|
// ランチャーパラメター取得(Cold/Hotスタート判定含む)
|
||||||
|
ReadLauncherParameter();
|
||||||
|
|
||||||
|
// RTCリセット
|
||||||
|
ResetRTC(); // 330usくらい
|
||||||
|
|
||||||
|
// NVRAM からユーザー情報読み出し
|
||||||
|
ReadUserInfo();
|
||||||
|
|
||||||
|
// NANDのFATALエラー検出
|
||||||
|
if( sdmcGetNandLogFatal() != FALSE) {
|
||||||
|
/* 故障扱い処理 */
|
||||||
|
SYSMi_GetWork()->flags.arm7.isNANDFatalError = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
SYSMi_GetWork()->flags.arm7.isARM9Start = TRUE;
|
||||||
|
|
||||||
|
// ヒープ領域設定
|
||||||
|
#ifndef USE_HYENA_COMPONENT
|
||||||
|
OS_SetSubPrivArenaLo( (void*)SDK_STATIC_BSS_END );
|
||||||
|
#endif
|
||||||
|
OS_SetSubPrivArenaHi( (void*)SYSM_OWN_ARM7_MMEM_ADDR_END ); // メモリ配置をいじっているので、アリーナHiも変更しないとダメ!!
|
||||||
|
OS_SetWramSubPrivArenaHi( (void*)(SYSM_OWN_ARM7_WRAM_ADDR_END - HW_FIRM_FROM_FIRM_BUF_SIZE) ); // この時点では鍵をつぶさないように
|
||||||
|
OS_TPrintf( "MMEM SUBPRV ARENA HI : %08x -> %08x\n", OS_GetSubPrivArenaHi(), OS_GetSubPrivArenaHi() );
|
||||||
|
OS_TPrintf( "WRAM SUBPRV ARENA HI : %08x -> %08x\n", OS_GetWramSubPrivArenaHi(), OS_GetWramSubPrivArenaHi() );
|
||||||
|
wramHeapHandle = InitializeAllocateSystem(MEM_TYPE_WRAM);
|
||||||
|
mainHeapHandle = InitializeAllocateSystem(MEM_TYPE_MAIN);
|
||||||
|
|
||||||
|
// ボタン入力サーチ初期化
|
||||||
|
(void)PAD_InitXYButton();
|
||||||
|
|
||||||
|
// 割り込み許可
|
||||||
|
(void)OS_SetIrqFunction(OS_IE_V_BLANK, VBlankIntr);
|
||||||
|
(void)OS_EnableIrqMask(OS_IE_V_BLANK);
|
||||||
|
(void)GX_VBlankIntr(TRUE);
|
||||||
|
(void)OS_EnableIrq();
|
||||||
|
(void)OS_EnableInterrupts();
|
||||||
|
|
||||||
|
// PXIコールバックの設定
|
||||||
|
SYSM_InitPXI(THREAD_PRIO_SYSMMCU);
|
||||||
|
|
||||||
|
// ファイルシステム初期化
|
||||||
|
FS_Init(FS_DMA_NOT_USE);
|
||||||
|
FS_CreateReadServerThread(THREAD_PRIO_FS);
|
||||||
|
|
||||||
|
if (OS_IsRunOnTwl() == TRUE)
|
||||||
|
{
|
||||||
|
InitializeFatfs(); // FATFS 初期化
|
||||||
|
// NWM 初期化
|
||||||
|
InitializeNwm(OS_ARENA_MAIN_SUBPRIV, mainHeapHandle, // heap setting for TWL wireless host driver
|
||||||
|
OS_ARENA_MAIN_SUBPRIV, mainHeapHandle // heap setting for wpa
|
||||||
|
);
|
||||||
|
#ifndef SDK_NOCRYPTO
|
||||||
|
AES_Init(THREAD_PRIO_AES); // AES 初期化
|
||||||
|
|
||||||
|
{
|
||||||
|
// JPEGエンコード用の鍵セット
|
||||||
|
SYSMi_SetAESKeysForSignJPEG( (ROM_Header *)HW_TWL_ROM_HEADER_BUF, NULL, NULL );
|
||||||
|
// NANDファームがHW_LAUNCHER_DELIVER_PARAM_BUFへのAES_SEEDセットを行ってくれるので、ISデバッガ接続に関係なくSDK_SEA_KEY_STOREへのコピーを行えばよい
|
||||||
|
MI_CpuCopyFast( (void *)HW_LAUNCHER_DELIVER_PARAM_BUF, (void *)SDK_SEA_KEY_STORE, HW_LAUNCHER_DELIVER_PARAM_BUF_SIZE );
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef SDK_SEA
|
||||||
|
SEA_Init(THREAD_PRIO_SEA);
|
||||||
|
#endif // ifdef SDK_SEA
|
||||||
|
#endif
|
||||||
|
MCU_InitIrq(THREAD_PRIO_MCU); // MCU 初期化
|
||||||
|
|
||||||
|
// ボリューム設定の調整
|
||||||
|
AdjustVolume();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (OSi_IsCodecTwlMode() == TRUE)
|
||||||
|
{
|
||||||
|
// CODEC 初期化
|
||||||
|
// ランチャーのみCDC_InitForFirstBootで実際にCODECの初期化を行う。
|
||||||
|
// アプリ起動時にはCODECは既に初期化されているためmongooseなどでは
|
||||||
|
// 簡易的な初期化CDC_InitLibで良い。 2008/07/14
|
||||||
|
InitializeCdc();
|
||||||
|
|
||||||
|
// カメラ初期化
|
||||||
|
CAMERA_Init();
|
||||||
|
/* CODEC が TWL モードでないとシャッター音を強制的に鳴らす
|
||||||
|
機能が使用できません。この為、CODEC が TWL モードの場合
|
||||||
|
にのみカメラライブラリを使用可能な状態にします。 */
|
||||||
|
}
|
||||||
|
|
||||||
|
// サウンド初期化
|
||||||
|
SND_Init(THREAD_PRIO_SND);
|
||||||
|
if (OS_IsRunOnTwl() == TRUE)
|
||||||
|
{
|
||||||
|
SNDEX_Init(THREAD_PRIO_SNDEX);
|
||||||
|
}
|
||||||
|
|
||||||
|
// RTC 初期化
|
||||||
|
RTC_Init(THREAD_PRIO_RTC);
|
||||||
|
|
||||||
|
// ランチャーでは、旧無線の初期化はmain loopで行う。
|
||||||
|
|
||||||
|
// SPI 初期化
|
||||||
|
// ※ARM9側のOS_Init内のPM_InitでPMのPXIコールバック待ちをしており、ここでARM9と同期が取られる。
|
||||||
|
SPI_Init(THREAD_PRIO_SPI);
|
||||||
|
|
||||||
|
BOOT_Init();
|
||||||
|
|
||||||
|
// 活栓挿抜機能初期化
|
||||||
|
if( ( SYSM_GetLauncherParamBody()->v1.flags.isValid ) &&
|
||||||
|
( SYSM_GetLauncherParamBody()->v1.flags.bootType != LAUNCHER_BOOTTYPE_ROM ) &&
|
||||||
|
( SYSM_GetLauncherParamBody()->v1.bootTitleID )
|
||||||
|
)
|
||||||
|
#ifdef HYENA_ROMEMU_INFO_FROM_LNCR_PARAM
|
||||||
|
{
|
||||||
|
// ランチャーパラメータでダイレクトカードブート以外の指定がある時は、活線挿抜をOFFにする。
|
||||||
|
SYSMi_GetWork()->flags.hotsw.isEnableHotSW = 0;
|
||||||
|
}else {
|
||||||
|
// それ以外の時は活線挿抜ON
|
||||||
|
SYSMi_GetWork()->flags.hotsw.isEnableHotSW = 1;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
{
|
||||||
|
// ランチャーパラメータでダイレクトカードブート以外の指定がある時は、ROMエミュレーション情報のみ必要。
|
||||||
|
SYSMi_GetWork()->flags.hotsw.isLoadRomEmuOnly = 1;
|
||||||
|
}else {
|
||||||
|
// それ以外の時は普通にロード
|
||||||
|
SYSMi_GetWork()->flags.hotsw.isLoadRomEmuOnly = 0;
|
||||||
|
}
|
||||||
|
SYSMi_GetWork()->flags.hotsw.isEnableHotSW = 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
HOTSW_Init(THREAD_PRIO_HOTSW);
|
||||||
|
|
||||||
|
while (TRUE)
|
||||||
|
{
|
||||||
|
OS_Halt();
|
||||||
|
// 無線ファームのロード完了をチェック。
|
||||||
|
if (TRUE == NWMSPi_CheckInstalledNotification())
|
||||||
|
{
|
||||||
|
/* M&M chipでは無線ファームのDL完了 → 旧無線初期化の順序を守る必要あり。
|
||||||
|
そのため、新無線のファームDL完了通知をmain loopでチェックし、
|
||||||
|
完了が通知されたら旧無線初期化を行った後、NWMに確認通知を送る。[twl-dev:0980] */
|
||||||
|
WVR_Begin(wramHeapHandle);
|
||||||
|
#if 1
|
||||||
|
// [TODO:] RC plus branchでは、NWMSPi_NotifyConfirmation()の返り値がないため、返り値評価を行わない。
|
||||||
|
// 次期リリースで返り値評価を行うよう変更予定。
|
||||||
|
NWMSPi_NotifyConfirmation();
|
||||||
|
#else
|
||||||
|
if (FALSE == NWMSPi_NotifyConfirmation())
|
||||||
|
{
|
||||||
|
// NWMへのConfirmation通知のためのSendMessageにENQできない状態.
|
||||||
|
// (ここに来ることはありえない筈.)
|
||||||
|
OS_Panic("ARM7: Failed to complete wireless firmare install.\n");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
BOOT_WaitStart();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// RTCのリセットチェック
|
||||||
|
static void ResetRTC( void )
|
||||||
|
{
|
||||||
|
SYSM_work* sw = SYSMi_GetWork();
|
||||||
|
|
||||||
|
// ランチャーでリセットを検出するためにこの処理をしているが、RTC_Init内でも同じことをしているので、ちょっと無駄。
|
||||||
|
RTCRawStatus1 stat1;
|
||||||
|
RTCRawStatus2 stat2;
|
||||||
|
RTC_ReadStatus1( &stat1 );
|
||||||
|
RTC_ReadStatus2( &stat2 );
|
||||||
|
|
||||||
|
// リセット、電源投入、電源電圧低下、ICテストの各フラグを確認
|
||||||
|
if ( stat1.reset || stat1.poc || stat1.bld || stat2.test )
|
||||||
|
{
|
||||||
|
// リセット実行
|
||||||
|
stat1.reset = 1;
|
||||||
|
RTC_WriteStatus1( &stat1 );
|
||||||
|
sw->flags.arm7.isResetRTC = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// FOUTが32KHz出力でない場合は、32KHz出力に修正設定する。(無線で使用している)
|
||||||
|
{
|
||||||
|
RTCRawFout fout;
|
||||||
|
RTC_ReadFout(&fout);
|
||||||
|
if( fout.fout != RTC_FOUT_DUTY_32KHZ ) {
|
||||||
|
fout.fout = RTC_FOUT_DUTY_32KHZ;
|
||||||
|
RTC_WriteFout(&fout);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// RTC初回データ読み込み
|
||||||
|
RTC_ReadDateTime(&sw->Rtc1stData);
|
||||||
|
|
||||||
|
// NTR-IPL同様にアラーム時間をクリア
|
||||||
|
//(割り込みイネーブルでないとアクセスできない)
|
||||||
|
{
|
||||||
|
static RTCRawAlarm alarm = {0,0,0,0,0,0,0,0,0};
|
||||||
|
|
||||||
|
stat2.intr_mode = RTC_INTERRUPT_MODE_ALARM; // アラーム割り込みイネーブル
|
||||||
|
stat2.intr2_mode = TRUE;
|
||||||
|
RTC_WriteStatus2( &stat2 );
|
||||||
|
|
||||||
|
(void)RTC_WriteAlarm1( &alarm );
|
||||||
|
(void)RTC_WriteAlarm2( &alarm );
|
||||||
|
#ifdef HYENA_RTC_DEBUG
|
||||||
|
{
|
||||||
|
static RTCRawAlarm rd_alarm = {1,1,1,1,1,1,1,1,1};
|
||||||
|
(void)RTC_ReadAlarm1( &rd_alarm );
|
||||||
|
(void)RTC_ReadAlarm2( &rd_alarm );
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
stat2.intr_mode = RTC_INTERRUPT_MODE_NONE; // アラーム割り込みディセーブル
|
||||||
|
stat2.intr2_mode = RTC_INTERRUPT_MODE_NONE;
|
||||||
|
RTC_WriteStatus2( &stat2 );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ランチャーパラメータのリードおよびHot/Coldスタート判定
|
||||||
|
void ReadLauncherParameter( void )
|
||||||
|
{
|
||||||
|
BOOL hot;
|
||||||
|
SYSMi_GetWork()->flags.arm7.isValidLauncherParam = OS_ReadLauncherParameter( (LauncherParam *)&(SYSMi_GetWork()->launcherParam), &hot );
|
||||||
|
SYSMi_GetWork()->flags.arm7.isHotStart = hot;
|
||||||
|
// メインメモリのランチャーパラメータをクリアしておく
|
||||||
|
MI_CpuClearFast( (void*)HW_PARAM_LAUNCH_PARAM, HW_PARAM_LAUNCH_PARAM_SIZE );
|
||||||
|
// Coldスタート時はアプリパラメータもクリア
|
||||||
|
if ( ! hot )
|
||||||
|
{
|
||||||
|
MI_CpuClearFast( (void*)HW_PARAM_DELIVER_ARG, HW_PARAM_DELIVER_ARG_SIZE );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: PrintDebugInfo
|
||||||
|
Description: ARM7 コンポーネントの情報をデバッグ出力する。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void
|
||||||
|
PrintDebugInfo(void)
|
||||||
|
{
|
||||||
|
if(OS_IsRunOnTwl())
|
||||||
|
{
|
||||||
|
OS_TPrintf("ARM7: This component is running on TWL.\n");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
OS_TPrintf("ARM7: This component is running on NITRO.\n");
|
||||||
|
}
|
||||||
|
#ifdef USE_HYENA_COMPONENT
|
||||||
|
OS_TPrintf("ARM7: This component is \"hyena.TWL\"\n");
|
||||||
|
#else
|
||||||
|
OS_TPrintf("ARM7: This component is \"jackal.TWL\"\n");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
#include <twl/ltdwram_begin.h>
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitializeFatfs
|
||||||
|
Description: FATFSライブラリを初期化する。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void
|
||||||
|
InitializeFatfs(void)
|
||||||
|
{
|
||||||
|
// FATFSライブラリの初期化
|
||||||
|
if(!FATFS_Init( FATFS_DMA_4, FATFS_DMA_5, THREAD_PRIO_FATFS))
|
||||||
|
{
|
||||||
|
// do nothing
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#include <twl/ltdwram_end.h>
|
||||||
|
|
||||||
|
#include <twl/ltdwram_begin.h>
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitializeNwm
|
||||||
|
Description: NWMライブラリを初期化する。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void
|
||||||
|
InitializeNwm(OSArenaId drvArenaId, OSHeapHandle drvHeapHandle,
|
||||||
|
OSArenaId wpaArenaId, OSHeapHandle wpaHeapHandle)
|
||||||
|
{
|
||||||
|
NwmspInit nwmInit;
|
||||||
|
|
||||||
|
nwmInit.dmaNo = NWM_DMANO;
|
||||||
|
nwmInit.cmdPrio = THREAD_PRIO_NWM_COMMMAND;
|
||||||
|
nwmInit.evtPrio = THREAD_PRIO_NWM_EVENT;
|
||||||
|
nwmInit.sdioPrio = THREAD_PRIO_NWM_SDIO;
|
||||||
|
nwmInit.drvHeap.id = drvArenaId;
|
||||||
|
nwmInit.drvHeap.handle = drvHeapHandle;
|
||||||
|
|
||||||
|
nwmInit.wpaPrio = THREAD_PRIO_NWM_WPA;
|
||||||
|
nwmInit.wpaHeap.id = wpaArenaId;
|
||||||
|
nwmInit.wpaHeap.handle = wpaHeapHandle;
|
||||||
|
|
||||||
|
/* 新無線初期化(ランチャー専用) */
|
||||||
|
NWMSP_InitForLauncher(&nwmInit);
|
||||||
|
|
||||||
|
}
|
||||||
|
#include <twl/ltdwram_end.h>
|
||||||
|
|
||||||
|
#include <twl/ltdwram_begin.h>
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitializeCdc
|
||||||
|
Description: CDCライブラリを初期化する。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void
|
||||||
|
InitializeCdc(void)
|
||||||
|
{
|
||||||
|
u32 spiLockId;
|
||||||
|
|
||||||
|
// CODECアクセス用のSPIロックIDを取得する
|
||||||
|
spiLockId = (u32)OS_GetLockID();
|
||||||
|
if (spiLockId == OS_LOCK_ID_ERROR)
|
||||||
|
{
|
||||||
|
OS_Warning("OS_GetLockID failed.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
SPI_Lock(spiLockId); // CODEC用SPI排他ロック
|
||||||
|
CDC_InitForFirstBoot(); // ※ランチャー特殊処理。
|
||||||
|
SPI_Unlock(spiLockId); // CODEC用SPI排他ロック
|
||||||
|
|
||||||
|
OS_Sleep(50); // CDC_InitForFirstBootでのPowerOnTime+デポップ期間
|
||||||
|
|
||||||
|
SPI_Lock(spiLockId); // CODEC用SPI排他ロック
|
||||||
|
CDC_DisableExternalDepop(); // 外部デポップ回路を無効にします
|
||||||
|
SPI_Unlock(spiLockId); // CODEC用SPI排他ロック
|
||||||
|
}
|
||||||
|
#include <twl/ltdwram_end.h>
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitializeAllocateSystem
|
||||||
|
Description: メモリ割当てシステムを初期化する。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: OSHeapHandle - WRAM アリーナ上に確保されたヒープのハンドルを返す。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static OSHeapHandle InitializeAllocateSystem(u8 memType)
|
||||||
|
{
|
||||||
|
|
||||||
|
OSHeapHandle hh;
|
||||||
|
|
||||||
|
#ifdef SDK_TWLHYB
|
||||||
|
if( OS_IsRunOnTwl() == TRUE)
|
||||||
|
{
|
||||||
|
hh = InitializeAllocateSystemCoreEx(memType); /* Hybrid を TWL で動作させる */
|
||||||
|
}
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
hh = InitializeAllocateSystemCore(memType); /* Hybrid を DS で動作させる or Limited */
|
||||||
|
}
|
||||||
|
|
||||||
|
return hh;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitializeAllocateSystemCore
|
||||||
|
Description: メモリ割当てシステムを初期化する。
|
||||||
|
Hybrid を DS で動作させた場合、Limited を TWL で動作させた場合に動作
|
||||||
|
Arguments: None.
|
||||||
|
Returns: OSHeapHandle - WRAM アリーナ上に確保されたヒープのハンドルを返す。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static OSHeapHandle InitializeAllocateSystemCore(u8 memType)
|
||||||
|
{
|
||||||
|
OSHeapHandle hh;
|
||||||
|
|
||||||
|
/* MAIN */
|
||||||
|
if(memType == MEM_TYPE_MAIN)
|
||||||
|
{
|
||||||
|
{
|
||||||
|
void* lo = (void*)OS_GetSubPrivArenaLo();
|
||||||
|
void* hi = (void*)OS_GetSubPrivArenaHi();
|
||||||
|
|
||||||
|
// アリーナを 0 クリア
|
||||||
|
MI_CpuClear8(lo, (u32)hi - (u32)lo);
|
||||||
|
|
||||||
|
// メモリ割り当て初期化
|
||||||
|
lo = OS_InitAlloc(OS_ARENA_MAIN_SUBPRIV, lo, hi, 1);
|
||||||
|
// アリーナ下位アドレスを設定
|
||||||
|
OS_SetArenaLo(OS_ARENA_MAIN_SUBPRIV, lo);
|
||||||
|
|
||||||
|
// ヒープ作成
|
||||||
|
hh = OS_CreateHeap(OS_ARENA_MAIN_SUBPRIV, lo, hi);
|
||||||
|
|
||||||
|
if (hh < 0)
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to MAIN create heap.\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// カレントヒープに設定
|
||||||
|
(void)OS_SetCurrentHeap(OS_ARENA_MAIN_SUBPRIV, hh);
|
||||||
|
// ヒープサイズの確認
|
||||||
|
{
|
||||||
|
u32 heapSize;
|
||||||
|
|
||||||
|
heapSize = (u32)OS_CheckHeap(OS_ARENA_MAIN_SUBPRIV, hh);
|
||||||
|
|
||||||
|
if( heapSize <= 0) /* ヒープ領域の確保に失敗 */
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to MAIN create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef SDK_TWLLTD
|
||||||
|
{
|
||||||
|
if ((ATH_DRV_HEAP_SIZE + WPA_HEAP_SIZE) > heapSize)
|
||||||
|
{
|
||||||
|
OS_Panic("Insufficient heap size. (0x%x < 0x%x)\n", heapSize, ATH_DRV_HEAP_SIZE + WPA_HEAP_SIZE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
OS_TPrintf("ARM7: MAIN heap size is %d\n", heapSize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* WRAM */
|
||||||
|
if( memType == MEM_TYPE_WRAM)
|
||||||
|
{
|
||||||
|
{
|
||||||
|
void* lo = (void*)OS_GetWramSubPrivArenaLo();
|
||||||
|
void* hi = (void*)OS_GetWramSubPrivArenaHi();
|
||||||
|
|
||||||
|
// アリーナを 0 クリア
|
||||||
|
MI_CpuClear8(lo, (u32)hi - (u32)lo);
|
||||||
|
|
||||||
|
// メモリ割り当て初期化
|
||||||
|
lo = OS_InitAlloc(OS_ARENA_WRAM_SUBPRIV, lo, hi, 1);
|
||||||
|
// アリーナ下位アドレスを設定
|
||||||
|
OS_SetArenaLo(OS_ARENA_WRAM_SUBPRIV, lo);
|
||||||
|
|
||||||
|
// ヒープ作成
|
||||||
|
hh = OS_CreateHeap(OS_ARENA_WRAM_SUBPRIV, lo, hi);
|
||||||
|
|
||||||
|
if (hh < 0)
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to WRAM create heap.\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// カレントヒープに設定
|
||||||
|
(void)OS_SetCurrentHeap(OS_ARENA_WRAM_SUBPRIV, hh);
|
||||||
|
|
||||||
|
// ヒープサイズの確認
|
||||||
|
{
|
||||||
|
u32 heapSize;
|
||||||
|
|
||||||
|
heapSize = (u32)OS_CheckHeap(OS_ARENA_WRAM_SUBPRIV, hh);
|
||||||
|
|
||||||
|
if( heapSize <= 0) /* ヒープ領域の確保に失敗 */
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to MAIN create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (WM_WL_HEAP_SIZE > heapSize)
|
||||||
|
{
|
||||||
|
OS_Panic("Insufficient heap size. (0x%x < 0x%x)\n", heapSize, WM_WL_HEAP_SIZE);
|
||||||
|
}
|
||||||
|
OS_TPrintf("ARM7: WRAM heap size is %d\n", heapSize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return hh;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef SDK_TWLHYB
|
||||||
|
#include <twl/ltdwram_begin.h>
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitializeAllocateSystemCoreEx
|
||||||
|
Description: メモリ割当てシステムを初期化する。
|
||||||
|
Hybrid を TWL で動作させた場合に動作
|
||||||
|
Arguments: None.
|
||||||
|
Returns: OSHeapHandle - WRAM アリーナ上に確保されたヒープのハンドルを返す。
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static OSHeapHandle InitializeAllocateSystemCoreEx(u8 memType)
|
||||||
|
{
|
||||||
|
OSHeapHandle hh;
|
||||||
|
|
||||||
|
if(memType == MEM_TYPE_MAIN)
|
||||||
|
{
|
||||||
|
{
|
||||||
|
void* basicLo = (void*)OS_GetSubPrivArenaLo();
|
||||||
|
void* basicHi = (void*)OS_GetSubPrivArenaHi();
|
||||||
|
void* extraLo = (void*)MATH_ROUNDUP((u32)SDK_LTDAUTOLOAD_LTDMAIN_BSS_END, 32);
|
||||||
|
void* extraHi = (void*)MATH_ROUNDDOWN(HW_MAIN_MEM_SUB, 32);
|
||||||
|
|
||||||
|
#if SDK_DEBUG
|
||||||
|
// debug information
|
||||||
|
OS_TPrintf("ARM7: MAIN arena basicLo = %p\n", basicLo);
|
||||||
|
OS_TPrintf("ARM7: MAIN arena basicHi = %p\n", basicHi);
|
||||||
|
OS_TPrintf("ARM7: MAIN arena extraLo = %p\n", extraLo);
|
||||||
|
OS_TPrintf("ARM7: MAIN arena extraHi = %p\n", extraHi);
|
||||||
|
#endif
|
||||||
|
// アリーナを 0 クリア
|
||||||
|
MI_CpuClear8(basicLo, (u32)basicHi - (u32)basicLo);
|
||||||
|
MI_CpuClear8(extraLo, (u32)extraHi - (u32)extraLo);
|
||||||
|
|
||||||
|
// メモリ割り当て初期化
|
||||||
|
if ((u32)basicLo < (u32)extraLo)
|
||||||
|
{
|
||||||
|
basicLo = OS_InitAlloc(OS_ARENA_MAIN_SUBPRIV, basicLo, extraHi, 1);
|
||||||
|
// アリーナ下位アドレスを設定
|
||||||
|
OS_SetArenaLo(OS_ARENA_MAIN_SUBPRIV, basicLo);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
extraLo = OS_InitAlloc(OS_ARENA_MAIN_SUBPRIV, extraLo, basicHi, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ヒープ作成
|
||||||
|
hh = OS_CreateHeap(OS_ARENA_MAIN_SUBPRIV, basicLo, basicHi);
|
||||||
|
|
||||||
|
if (hh < 0)
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to create MAIN heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
// ヒープサイズの確認
|
||||||
|
{
|
||||||
|
u32 heapSize;
|
||||||
|
|
||||||
|
heapSize = (u32)OS_CheckHeap(OS_ARENA_MAIN_SUBPRIV, hh);
|
||||||
|
|
||||||
|
if( heapSize <= 0) /* ヒープ領域の確保に失敗 */
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to MAIN create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
OS_TPrintf("ARM7: MAIN heap size is %d (before AddToHead)\n", heapSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ヒープに拡張ブロックを追加
|
||||||
|
OS_AddToHeap(OS_ARENA_MAIN_SUBPRIV, hh, extraLo, extraHi);
|
||||||
|
}
|
||||||
|
// カレントヒープに設定
|
||||||
|
(void)OS_SetCurrentHeap(OS_ARENA_MAIN_SUBPRIV, hh);
|
||||||
|
// ヒープサイズの確認
|
||||||
|
{
|
||||||
|
u32 heapSize;
|
||||||
|
|
||||||
|
heapSize = (u32)OS_CheckHeap(OS_ARENA_MAIN_SUBPRIV, hh);
|
||||||
|
|
||||||
|
if( heapSize <= 0) /* ヒープ領域の確保に失敗 */
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to MAIN create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((ATH_DRV_HEAP_SIZE + WPA_HEAP_SIZE) > heapSize)
|
||||||
|
{
|
||||||
|
OS_Panic("Insufficient heap size. (0x%x < 0x%x)\n", heapSize, ATH_DRV_HEAP_SIZE + WPA_HEAP_SIZE);
|
||||||
|
}
|
||||||
|
OS_TPrintf("ARM7: MAIN heap size is %d\n", heapSize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(memType == MEM_TYPE_WRAM)
|
||||||
|
{
|
||||||
|
{
|
||||||
|
void* basicLo = (void*)OS_GetWramSubPrivArenaLo();
|
||||||
|
void* basicHi = (void*)OS_GetWramSubPrivArenaHi();
|
||||||
|
void* extraLo = (void*)MATH_ROUNDUP((u32)SDK_LTDAUTOLOAD_LTDWRAM_BSS_END, 32);
|
||||||
|
void* extraHi = (void*)MATH_ROUNDDOWN(HW_WRAM_A_HYB_END, 32);
|
||||||
|
|
||||||
|
#if SDK_DEBUG
|
||||||
|
// debug information
|
||||||
|
OS_TPrintf("ARM7: WRAM arena basicLo = %p\n", basicLo);
|
||||||
|
OS_TPrintf("ARM7: WRAM arena basicHi = %p\n", basicHi);
|
||||||
|
OS_TPrintf("ARM7: WRAM arena extraLo = %p\n", extraLo);
|
||||||
|
OS_TPrintf("ARM7: WRAM arena extraHi = %p\n", extraHi);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// アリーナを 0 クリア
|
||||||
|
MI_CpuClear8(basicLo, (u32)basicHi - (u32)basicLo);
|
||||||
|
MI_CpuClear8(extraLo, (u32)extraHi - (u32)extraLo);
|
||||||
|
|
||||||
|
// メモリ割り当て初期化
|
||||||
|
if ((u32)basicLo < (u32)extraLo)
|
||||||
|
{
|
||||||
|
basicLo = OS_InitAlloc(OS_ARENA_WRAM_SUBPRIV, basicLo, extraHi, 1);
|
||||||
|
// アリーナ下位アドレスを設定
|
||||||
|
OS_SetArenaLo(OS_ARENA_WRAM_SUBPRIV, basicLo);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
extraLo = OS_InitAlloc(OS_ARENA_WRAM_SUBPRIV, extraLo, basicHi, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ヒープ作成
|
||||||
|
hh = OS_CreateHeap(OS_ARENA_WRAM_SUBPRIV, basicLo, basicHi);
|
||||||
|
|
||||||
|
if (hh < 0)
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to WRAM create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
// ヒープサイズの確認
|
||||||
|
{
|
||||||
|
u32 heapSize;
|
||||||
|
|
||||||
|
heapSize = (u32)OS_CheckHeap(OS_ARENA_WRAM_SUBPRIV, hh);
|
||||||
|
|
||||||
|
if( heapSize <= 0) /* ヒープ領域の確保に失敗 */
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to WRAM create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (WM_WL_HEAP_SIZE > heapSize)
|
||||||
|
{
|
||||||
|
OS_Panic("Insufficient heap size. (0x%x < 0x%x)\n", heapSize, WM_WL_HEAP_SIZE);
|
||||||
|
}
|
||||||
|
OS_TPrintf("ARM7: WRAM heap size is %d (before AddToHeap)\n", heapSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ヒープに拡張ブロックを追加
|
||||||
|
OS_AddToHeap(OS_ARENA_WRAM_SUBPRIV, hh, extraLo, extraHi);
|
||||||
|
}
|
||||||
|
|
||||||
|
// カレントヒープに設定
|
||||||
|
(void)OS_SetCurrentHeap(OS_ARENA_WRAM_SUBPRIV, hh);
|
||||||
|
|
||||||
|
// ヒープサイズの確認
|
||||||
|
{
|
||||||
|
u32 heapSize;
|
||||||
|
|
||||||
|
heapSize = (u32)OS_CheckHeap(OS_ARENA_WRAM_SUBPRIV, hh);
|
||||||
|
|
||||||
|
if( heapSize <= 0) /* ヒープ領域の確保に失敗 */
|
||||||
|
{
|
||||||
|
OS_Panic("ARM7: Failed to WRAM create heap.\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (WM_WL_HEAP_SIZE > heapSize)
|
||||||
|
{
|
||||||
|
OS_Panic("Insufficient heap size. (0x%x < 0x%x)\n", heapSize, WM_WL_HEAP_SIZE);
|
||||||
|
}
|
||||||
|
OS_TPrintf("ARM7: WRAM heap size is %d\n", heapSize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return hh;
|
||||||
|
}
|
||||||
|
#include <twl/ltdwram_end.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef WM_PRECALC_ALLOWEDCHANNEL
|
||||||
|
extern u16 WMSP_GetAllowedChannel(u16 bitField);
|
||||||
|
#endif
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: ReadUserInfo
|
||||||
|
|
||||||
|
Description: NVRAMからユーザー情報を読み出し、共有領域に展開する。
|
||||||
|
ミラーリングされているバッファが両方壊れている場合は、
|
||||||
|
共有領域のユーザー情報格納場所をクリアする。
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void ReadUserInfo(void)
|
||||||
|
{
|
||||||
|
// ※hyenaでは、NITRO本体設定データはリードしない。
|
||||||
|
|
||||||
|
u8 *p = OS_GetSystemWork()->nvramUserInfo;
|
||||||
|
|
||||||
|
// 無線MACアドレスをユーザー情報の後ろに展開
|
||||||
|
{
|
||||||
|
u8 wMac[6];
|
||||||
|
|
||||||
|
// NVRAMからMACアドレスを読み出し
|
||||||
|
NVRAM_ReadDataBytes(NVRAM_CONFIG_MACADDRESS_ADDRESS, 6, wMac);
|
||||||
|
// 展開先アドレスを計算
|
||||||
|
p = (u8 *)((u32)p + ((sizeof(NVRAMConfig) + 3) & ~0x00000003));
|
||||||
|
// 共有領域に展開
|
||||||
|
MI_CpuCopy8(wMac, p, 6);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef WM_PRECALC_ALLOWEDCHANNEL
|
||||||
|
// 使用可能チャンネルから使用許可チャンネルを計算
|
||||||
|
{
|
||||||
|
u16 enableChannel;
|
||||||
|
u16 allowedChannel;
|
||||||
|
|
||||||
|
// 使用可能チャンネルを読み出し
|
||||||
|
NVRAM_ReadDataBytes(NVRAM_CONFIG_ENABLECHANNEL_ADDRESS, 2, (u8 *)(&enableChannel));
|
||||||
|
// 使用許可チャンネルを計算
|
||||||
|
allowedChannel = WMSP_GetAllowedChannel((u16)(enableChannel >> 1));
|
||||||
|
// 展開先アドレスを計算(MACアドレスの後ろの2バイト)
|
||||||
|
p = (u8 *)((u32)p + 6);
|
||||||
|
// 共有領域に展開
|
||||||
|
*((u16 *)p) = allowedChannel;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: AdjustVolume
|
||||||
|
|
||||||
|
Description: 32段階のボリュームを8段階に量子化する
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void AdjustVolume(void)
|
||||||
|
{
|
||||||
|
u8 volume = MCU_GetVolume();
|
||||||
|
u8 adjust;
|
||||||
|
if ( volume < 2 )
|
||||||
|
{
|
||||||
|
adjust = 0;
|
||||||
|
}
|
||||||
|
else if ( volume < 5 )
|
||||||
|
{
|
||||||
|
adjust = 2;
|
||||||
|
}
|
||||||
|
else if ( volume < 9 )
|
||||||
|
{
|
||||||
|
adjust = 6;
|
||||||
|
}
|
||||||
|
else if ( volume < 14 )
|
||||||
|
{
|
||||||
|
adjust = 11;
|
||||||
|
}
|
||||||
|
else if ( volume < 19 )
|
||||||
|
{
|
||||||
|
adjust = 16;
|
||||||
|
}
|
||||||
|
else if ( volume < 24 )
|
||||||
|
{
|
||||||
|
adjust = 21;
|
||||||
|
}
|
||||||
|
else if ( volume < 29 )
|
||||||
|
{
|
||||||
|
adjust = 26;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
adjust = 31;
|
||||||
|
}
|
||||||
|
OS_TPrintf("Current volume: %d.\n", volume);
|
||||||
|
if ( volume != adjust )
|
||||||
|
{
|
||||||
|
OS_TPrintf("Volume adjusts to %d.\n", adjust);
|
||||||
|
MCU_SetVolume(adjust);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: VBlankIntr
|
||||||
|
Description: V ブランク割り込みベクタ。
|
||||||
|
Arguments: None.
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
extern BOOL PMi_Initialized;
|
||||||
|
void PM_SelfBlinkProc(void);
|
||||||
|
|
||||||
|
static void
|
||||||
|
VBlankIntr(void)
|
||||||
|
{
|
||||||
|
if (PMi_Initialized)
|
||||||
|
{
|
||||||
|
PM_SelfBlinkProc();
|
||||||
|
}
|
||||||
|
}
|
||||||
49
build/components/hyena.TWL/wram_regs/Makefile
Normal file
49
build/components/hyena.TWL/wram_regs/Makefile
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
#! make -f
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlFirm - tools - nandfirm-ds-launcher
|
||||||
|
# File: Makefile
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Log: $
|
||||||
|
# $NoKeywords: $
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
TWL_PROC = ARM7
|
||||||
|
|
||||||
|
SUBDIRS =
|
||||||
|
|
||||||
|
LINCLUDES = ../include
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
TARGET_BIN = wram_regs.rbin
|
||||||
|
|
||||||
|
SRCS = \
|
||||||
|
wram_regs.c \
|
||||||
|
|
||||||
|
#SRCDIR = # using default
|
||||||
|
#LCFILE = # using default
|
||||||
|
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
INSTALL_DIR = .
|
||||||
|
INSTALL_TARGETS = $(BINDIR)/$(TARGET_BIN)
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
do-build: $(TARGETS)
|
||||||
|
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
Binary file not shown.
@ -0,0 +1,3 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/wram_regs.o: wram_regs.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/cache/include/twl.h.16M.ARM7.CODE_ARM.CW.CW_FORCE_EXPORT_SUPPORT.LINK_ISTD.RELEASE.TS.TS_VERSION-400.TWL.TWLLTD.C.mch \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi.h
|
||||||
Binary file not shown.
123
build/components/hyena.TWL/wram_regs/wram_regs.c
Normal file
123
build/components/hyena.TWL/wram_regs/wram_regs.c
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlIPL - wram_regs
|
||||||
|
File: wram_regs.c
|
||||||
|
|
||||||
|
Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Date:: $
|
||||||
|
$Rev$
|
||||||
|
$Author$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#include <twl/mi.h>
|
||||||
|
|
||||||
|
#define HW_HYENA_WRAM_A_OFS (HW_WRAM_A_LTD - HW_WRAM_BASE)
|
||||||
|
#define HW_HYENA_WRAM_A_OFS_END (HW_HYENA_WRAM_A_OFS + HW_WRAM_A_SIZE)
|
||||||
|
#define HW_HYENA_WRAM_B_OFS (HW_WRAM_B - HW_WRAM_BASE)
|
||||||
|
#define HW_HYENA_WRAM_B_OFS_END (HW_HYENA_WRAM_B_OFS + HW_WRAM_B_SIZE * 2)
|
||||||
|
#define HW_HYENA_WRAM_C_OFS (HW_WRAM_C - HW_WRAM_BASE)
|
||||||
|
#define HW_HYENA_WRAM_C_OFS_END (HW_HYENA_WRAM_C_OFS + HW_WRAM_C_SIZE)
|
||||||
|
|
||||||
|
// MAP_TS_LTD for hyena
|
||||||
|
// WRAM-A Lock:ON, Master:ARM7, Enable:Slot0-3(256Kbytes), Address(7):0x037c0000-0x037fffff, Address(9):None
|
||||||
|
// WRAM-B Lock:ON, Master:ARM7, Enable:Slot4-7(128Kbytes), Address(7):0x03760000-0x0377ffff, Address(9):None
|
||||||
|
// Address(7):0x037a0000-0x037bffff, Address(9):None
|
||||||
|
// WRAM-B Lock:OFF, Master:ARM9, Enable:Slot0-3(128Kbytes), Address(7):0x03740000-0x0375ffff, Address(9):0x03740000-0x0375ffff
|
||||||
|
// Address(7):0x03780000-0x0379ffff, Address(9):0x03780000-0x0379ffff
|
||||||
|
// WRAM-C Lock:OFF, Msster:ARM9, Enable:Slot0-7(256Kbytes), Address(7):0x03700000-0x0373ffff, Address(9):0x03700000-0x0373ffff
|
||||||
|
// WRAM-0 Master:ARM9, (16Kbytes), Address(7):0x03040000-0x03043fff, Address(9):0x03040000-0x03043fff
|
||||||
|
// WRAM-1 Master:ARM9, (16Kbytes), Address(7):0x03044000-0x03047fff, Address(9):0x03044000-0x03047fff
|
||||||
|
|
||||||
|
// MAP_TS_LTD original
|
||||||
|
// WRAM-A Lock:ON, Master:ARM7, Enable:Slot0-3(256Kbytes), Address(7):0x037c0000-0x037fffff, Address(9):None
|
||||||
|
// WRAM-B Lock:OFF, Master:ARM9, Enable:Slot0-7(256Kbytes), Address(7):0x03740000-0x037bffff, Address(9):0x03740000-0x037bffff
|
||||||
|
// WRAM-C Lock:OFF, Msster:ARM9, Enable:Slot0-7(256Kbytes), Address(7):0x03700000-0x0373ffff, Address(9):0x03700000-0x0373ffff
|
||||||
|
// WRAM-0 Master:ARM9, (16Kbytes), Address(7):0x03040000-0x03043fff, Address(9):0x03040000-0x03043fff
|
||||||
|
// WRAM-1 Master:ARM9, (16Kbytes), Address(7):0x03044000-0x03047fff, Address(9):0x03044000-0x03047fff
|
||||||
|
|
||||||
|
u32 HYENA_WramReg[0x30/sizeof(u32)] =
|
||||||
|
{
|
||||||
|
// ARM9
|
||||||
|
|
||||||
|
// WRAM-A
|
||||||
|
REG_MI_MBK1_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_192KB/2, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_128KB/2, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_64KB/2, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_0KB/2, MI_WRAM_ARM7
|
||||||
|
),
|
||||||
|
// WRAM-B
|
||||||
|
REG_MI_MBK2_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_96KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_64KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_32KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_0KB, MI_WRAM_ARM9
|
||||||
|
),
|
||||||
|
REG_MI_MBK3_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_224KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_192KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_160KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_128KB, MI_WRAM_ARM7
|
||||||
|
),
|
||||||
|
// WRAM-C
|
||||||
|
REG_MI_MBK4_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_96KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_64KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_32KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_0KB, MI_WRAM_ARM9
|
||||||
|
),
|
||||||
|
REG_MI_MBK5_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_224KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_192KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_160KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_128KB, MI_WRAM_ARM9
|
||||||
|
),
|
||||||
|
|
||||||
|
REG_MI_MBK6_FIELD( NULL >> 16,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
NULL >> 16
|
||||||
|
),
|
||||||
|
REG_MI_MBK7_FIELD( HW_HYENA_WRAM_B_OFS_END >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
HW_HYENA_WRAM_B_OFS >> 15
|
||||||
|
),
|
||||||
|
REG_MI_MBK8_FIELD( HW_HYENA_WRAM_C_OFS_END >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
HW_HYENA_WRAM_C_OFS >> 15
|
||||||
|
),
|
||||||
|
|
||||||
|
// ARM7
|
||||||
|
REG_MI_MBK6_FIELD( HW_HYENA_WRAM_A_OFS_END >> 16,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
HW_HYENA_WRAM_A_OFS >> 16
|
||||||
|
),
|
||||||
|
REG_MI_MBK7_FIELD( HW_HYENA_WRAM_B_OFS_END >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
HW_HYENA_WRAM_B_OFS >> 15
|
||||||
|
),
|
||||||
|
REG_MI_MBK8_FIELD( HW_HYENA_WRAM_C_OFS_END >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
HW_HYENA_WRAM_C_OFS >> 15
|
||||||
|
),
|
||||||
|
|
||||||
|
// WRAM Lock
|
||||||
|
(u32)(
|
||||||
|
(0x0F << 0) |
|
||||||
|
(0xF0 << 8) |
|
||||||
|
(0x00 << 16) |
|
||||||
|
|
||||||
|
// WRAM-0/1
|
||||||
|
(0 << 24) |
|
||||||
|
|
||||||
|
// VRAM-C
|
||||||
|
(7 << 26) |
|
||||||
|
// VRAM-D
|
||||||
|
(7 << 29)
|
||||||
|
),
|
||||||
|
};
|
||||||
|
|
||||||
BIN
build/components/hyena.TWL/wram_regs/wram_regs.rbin
Normal file
BIN
build/components/hyena.TWL/wram_regs/wram_regs.rbin
Normal file
Binary file not shown.
132
build/components/jackal.TWL/Makefile
Normal file
132
build/components/jackal.TWL/Makefile
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
#! make -f
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlIPL - components - jackal.TWL
|
||||||
|
# File: Makefile
|
||||||
|
#
|
||||||
|
# Copyright 2008 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# Main memory にコードを退避させたathdrvを使用。(for test)
|
||||||
|
TMP_WL_MAIN ?= FALSE
|
||||||
|
|
||||||
|
TARGET_FIRM = SYSTEMMENU
|
||||||
|
override TARGET_PLATFORM = TWL
|
||||||
|
override TWL_PROC = ARM7
|
||||||
|
override TWL_ARCHGEN = LIMITED
|
||||||
|
override TWL_PLATFORM = TS
|
||||||
|
TWL_NO_STD_PCHDR = True
|
||||||
|
override TARGET_CODEGEN = ARM
|
||||||
|
|
||||||
|
FIRM_LIBSUFFIX = .firm$(ARCHGEN_TYPE)$(CODEGEN_ARCH)
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
SUBDIRS = $(SYSMENU_ROOT)/build/libraries/aes \
|
||||||
|
wram_regs
|
||||||
|
|
||||||
|
HYENA_SRCDIR = ../hyena.TWL/src
|
||||||
|
SRCS = $(HYENA_SRCDIR)/crt0.LTD.c \
|
||||||
|
$(HYENA_SRCDIR)/main.c \
|
||||||
|
$(HYENA_SRCDIR)/initScfg.c
|
||||||
|
|
||||||
|
TARGET_NAME = jackal
|
||||||
|
|
||||||
|
TARGET_NEF = $(TARGET_NAME).tef
|
||||||
|
LCFILE_SPEC = $(TARGET_NAME)$(CODEGEN_ARCH).lsf
|
||||||
|
LCFILE_TEMPLATE = $(TARGET_NAME).lcf.template
|
||||||
|
LDRES_TEMPLATE = $(ROOT)/build/components/armadillo.TWL/armadillo.response.template
|
||||||
|
|
||||||
|
CRT0_O = $(OBJDIR)/crt0.LTD.o
|
||||||
|
|
||||||
|
# スタック不足防止の為、インライン展開せずにコンパイルする
|
||||||
|
CCFLAGS_OPT = -O4 -inline off
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
# crt0.o 、 libpm_sp および libnwm_sp は、ローカルでビルドしたものを使用するので、除外する。
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
GLIBRARIES := $(filter-out $(CRT0_O) libpm_sp$(TWL_LIBSUFFIX).a libnwm_sp$(TWL_LIBSUFFIX).a libathdrv_sp$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
||||||
|
else
|
||||||
|
GLIBRARIES := $(filter-out $(CRT0_O) libpm_sp$(TWL_LIBSUFFIX).a libnwm_sp$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
||||||
|
endif
|
||||||
|
|
||||||
|
MACRO_FLAGS += -DSDK_ARM7COMP_LTD -DSDK_SEA \
|
||||||
|
-DSDK_NOINIT \
|
||||||
|
-DSDK_SYSMENU_BUILD
|
||||||
|
|
||||||
|
MAKELCF_FLAGS += -DADDRESS_FLXMAIN='0x02280200' \
|
||||||
|
-DADDRESS_BOOTCORE='0x0380f000' \
|
||||||
|
-DCRT0_O='$(CRT0_O)' \
|
||||||
|
-DFIRM_LIBSUFFIX='$(FIRM_LIBSUFFIX)'
|
||||||
|
|
||||||
|
MAKELCF_FLAGS += -DISDBG_LIBS_TWL='$(if $(ISDBG_LIBS_TWL),$(ISDBG_LIBS_TWL),libstubsistd_sp$(TWL_LIBSUFFIX).a)' \
|
||||||
|
-DISDBG_LIBS_NITRO='libstubsisd_sp$(TWL_LIBSUFFIX).a'
|
||||||
|
|
||||||
|
#--------------------------------
|
||||||
|
# install target
|
||||||
|
#--------------------------------
|
||||||
|
INSTALL_TARGETS = $(BINDIR)/$(TARGET_NAME).tef \
|
||||||
|
$(BINDIR)/$(TARGET_NAME).TWL.FLX.sbin \
|
||||||
|
$(BINDIR)/$(TARGET_NAME)_defs.TWL.FLX.sbin \
|
||||||
|
$(BINDIR)/$(TARGET_NAME).TWL.LTD.sbin \
|
||||||
|
$(BINDIR)/$(TARGET_NAME)_defs.TWL.LTD.sbin
|
||||||
|
|
||||||
|
INSTALL_DIR = $(TWL_INSTALL_COMPONENTSDIR)/$(TARGET_NAME)/$(TWL_BUILDTYPE)
|
||||||
|
|
||||||
|
LINCLUDES = $(ROOT)/build/libraries/spi/ARM7/include \
|
||||||
|
$(ROOT)/build/libraries/spi/ARM7/pm/include \
|
||||||
|
$(ROOT)/build/libraries/init/common/include \
|
||||||
|
$(ROOT)/build/libraries/reboot/common/include \
|
||||||
|
$(SYSMENU_ROOT)/build/libraries_sysmenu/sysmenu/common/include
|
||||||
|
|
||||||
|
SYSMENU_LIBS = \
|
||||||
|
libsysmenu_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libsysmmcu_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libboot_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libds_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libhotsw_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libdht_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libpm_sp.SYSMENU$(TWL_LIBSUFFIX).a \
|
||||||
|
libnwm_sp.SYSMENU$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
SYSMENU_LIBS += \
|
||||||
|
libathdrv_sp.SYSMENU$(TWL_LIBSUFFIX).a
|
||||||
|
endif
|
||||||
|
|
||||||
|
SDK_APPEND_LIBS = \
|
||||||
|
libwl_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libaes_sp$(FIRM_LIBSUFFIX).a \
|
||||||
|
libsea_sp$(TWL_LIBSUFFIX).a \
|
||||||
|
libreboot_sp$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
|
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
||||||
|
|
||||||
|
LLIBRARY_DIRS += ./
|
||||||
|
|
||||||
|
ifeq ($(TMP_WL_MAIN), TRUE)
|
||||||
|
LLIBRARY_DIRS += $(SYSMENU_ROOT)/lib/TwlWireless/$(TWL_LIBTYPE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
LDEPENDS_NEF = $(TWL_LIBS) $(LLIBRARIES)
|
||||||
|
|
||||||
|
|
||||||
|
do-build: $(TARGETS)
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
Binary file not shown.
Binary file not shown.
@ -0,0 +1,703 @@
|
|||||||
|
#---------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - components - armadillo.TWL
|
||||||
|
# File: armadillo.lcf.template
|
||||||
|
#
|
||||||
|
# Copyright 2008 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
MEMORY
|
||||||
|
{
|
||||||
|
jackal (RWX) : ORIGIN = 0x02280200, LENGTH = 0x0 > jackal.TWL.FLX.sbin
|
||||||
|
binary.STATIC_FOOTER (RWX) : ORIGIN = 0, LENGTH = 0x0 >> jackal.TWL.FLX.sbin
|
||||||
|
|
||||||
|
jackal_defsF (RW) : ORIGIN = 0, LENGTH = 0x0 > jackal_defs.TWL.FLX.sbin
|
||||||
|
|
||||||
|
binary.LTDAUTOLOAD_TOP (RW) : ORIGIN = 0, LENGTH = 0x0 > jackal.TWL.LTD.sbin
|
||||||
|
SCRWRAM (RWX) : ORIGIN = 0x03758000, LENGTH = 0x0 >> jackal.TWL.LTD.sbin
|
||||||
|
binary.LTDAUTOLOAD_INFO (RWX) : ORIGIN = 0, LENGTH = 0x0 >> jackal.TWL.LTD.sbin
|
||||||
|
|
||||||
|
jackal_defsL (RW) : ORIGIN = 0, LENGTH = 0x0 > jackal_defs.TWL.LTD.sbin
|
||||||
|
|
||||||
|
check.WORKRAM (RWX) : ORIGIN = 0x03740000, LENGTH = 0xd0000 > workram.check
|
||||||
|
}
|
||||||
|
|
||||||
|
KEEP_SECTION
|
||||||
|
{
|
||||||
|
.sinit
|
||||||
|
}
|
||||||
|
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
############################ STATIC #################################
|
||||||
|
.jackal:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_STATIC_START =.;
|
||||||
|
OBJECT(_start,*)
|
||||||
|
initScfg.o (.text)
|
||||||
|
crt0.LTD.o (.text)
|
||||||
|
libwm_sp.TWL.LTD.a (.text)
|
||||||
|
libmic_sp.TWL.LTD.a (.text)
|
||||||
|
libmicex_sp.TWL.LTD.a (.text)
|
||||||
|
initScfg.o (.rodata)
|
||||||
|
crt0.LTD.o (.rodata)
|
||||||
|
libwm_sp.TWL.LTD.a (.rodata)
|
||||||
|
libmic_sp.TWL.LTD.a (.rodata)
|
||||||
|
libmicex_sp.TWL.LTD.a (.rodata)
|
||||||
|
initScfg.o (.init)
|
||||||
|
crt0.LTD.o (.init)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_SINIT_START =.;
|
||||||
|
initScfg.o (.ctor)
|
||||||
|
crt0.LTD.o (.ctor)
|
||||||
|
initScfg.o (.sinit)
|
||||||
|
crt0.LTD.o (.sinit)
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
initScfg.o (.sdata)
|
||||||
|
crt0.LTD.o (.sdata)
|
||||||
|
initScfg.o (.data)
|
||||||
|
crt0.LTD.o (.data)
|
||||||
|
libwm_sp.TWL.LTD.a (.data)
|
||||||
|
libmic_sp.TWL.LTD.a (.data)
|
||||||
|
libmicex_sp.TWL.LTD.a (.data)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_END =.;
|
||||||
|
|
||||||
|
SDK_STATIC_SIZE = SDK_STATIC_END - SDK_STATIC_START;
|
||||||
|
__sinit__ = SDK_STATIC_SINIT_START; # for static initializer
|
||||||
|
|
||||||
|
} > jackal
|
||||||
|
|
||||||
|
.jackal.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_STATIC_BSS_START =.;
|
||||||
|
initScfg.o (.sbss)
|
||||||
|
crt0.LTD.o (.sbss)
|
||||||
|
initScfg.o (.bss)
|
||||||
|
crt0.LTD.o (.bss)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_BSS_END = .;
|
||||||
|
|
||||||
|
SDK_STATIC_BSS_SIZE = SDK_STATIC_BSS_END - SDK_STATIC_BSS_START;
|
||||||
|
|
||||||
|
} >> jackal
|
||||||
|
|
||||||
|
############################ STATIC_FOOTER ##########################
|
||||||
|
.binary.STATIC_FOOTER:
|
||||||
|
{
|
||||||
|
WRITEW 0xdec00621; # LE(0x2106C0DE) = NITRO CODE
|
||||||
|
WRITEW _start_ModuleParams - ADDR(.jackal);
|
||||||
|
WRITEW 0; # NO DIGEST
|
||||||
|
WRITEW _start_LtdModuleParams - ADDR(.jackal);
|
||||||
|
|
||||||
|
} > binary.STATIC_FOOTER
|
||||||
|
|
||||||
|
############################ OVERLAYDEFS ############################
|
||||||
|
.jackal_defsF:
|
||||||
|
{
|
||||||
|
### jackal module information
|
||||||
|
WRITEW ADDR(.jackal); # load address
|
||||||
|
WRITEW _start; # entry address
|
||||||
|
WRITEW SDK_STATIC_SIZE; # size of module
|
||||||
|
WRITEW _start_AutoloadDoneCallback; # callback autoload done
|
||||||
|
|
||||||
|
} > jackal_defsF
|
||||||
|
|
||||||
|
########################### LTDAUTOLOADS ############################
|
||||||
|
SDK_LTDAUTOLOAD_TOP_START = 0x02f00000;
|
||||||
|
SDK_LTDAUTOLOAD_TOP_SIZE = 4; # STATIC 領域が無い代わりに 4 bytes のダミーがバイナリファイルの先頭に入る #
|
||||||
|
SDK_LTDAUTOLOAD_START = SDK_LTDAUTOLOAD_TOP_START + SDK_LTDAUTOLOAD_TOP_SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = 0;
|
||||||
|
SDK_LTDAUTOLOAD_BSS_END = 0x03740000;
|
||||||
|
|
||||||
|
.binary.LTDAUTOLOAD_TOP:
|
||||||
|
{
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
} > binary.LTDAUTOLOAD_TOP
|
||||||
|
|
||||||
|
.SCRWRAM:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.START =.;
|
||||||
|
main.o (.text)
|
||||||
|
libsubpsyscall.a (.text)
|
||||||
|
libsyscall_sp.twl.a (.text)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.text)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.text)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.text)
|
||||||
|
FP_fastI_v4t_LE.a (.text)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.text)
|
||||||
|
libistdsubparm.a (.text)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.text)
|
||||||
|
libsea_sp.TWL.LTD.a (.text)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.text)
|
||||||
|
libos_sp.TWL.LTD.a (.text)
|
||||||
|
libmi_sp.TWL.LTD.a (.text)
|
||||||
|
libstd_sp.TWL.LTD.a (.text)
|
||||||
|
libmath_sp.TWL.LTD.a (.text)
|
||||||
|
libpxi_sp.TWL.LTD.a (.text)
|
||||||
|
libexi_sp.TWL.LTD.a (.text)
|
||||||
|
libi2c_sp.TWL.LTD.a (.text)
|
||||||
|
libsdio_sp.TWL.LTD.a (.text)
|
||||||
|
libpad_sp.TWL.LTD.a (.text)
|
||||||
|
libscfg_sp.TWL.LTD.a (.text)
|
||||||
|
libmcu_sp.TWL.LTD.a (.text)
|
||||||
|
libcdc_sp.TWL.LTD.a (.text)
|
||||||
|
libsnd_sp.TWL.LTD.a (.text)
|
||||||
|
libsndex_sp.TWL.LTD.a (.text)
|
||||||
|
libspi_sp.TWL.LTD.a (.text)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.text)
|
||||||
|
libtp_sp.TWL.LTD.a (.text)
|
||||||
|
libtpex_sp.TWL.LTD.a (.text)
|
||||||
|
libnvram_sp.TWL.LTD.a (.text)
|
||||||
|
librtc_sp.TWL.LTD.a (.text)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.text)
|
||||||
|
libwl_sp.TWL.LTD.a (.text)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.text)
|
||||||
|
libfs_sp.TWL.LTD.a (.text)
|
||||||
|
libcard_sp.TWL.LTD.a (.text)
|
||||||
|
libcamera_sp.TWL.LTD.a (.text)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.text)
|
||||||
|
libwvr_sp.TWL.LTD.a (.text)
|
||||||
|
libboot_sp.TWL.LTD.a (.text)
|
||||||
|
libreboot_sp.TWL.LTD.a (.text)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.text)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.text)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.text)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.text)
|
||||||
|
libds_sp.TWL.LTD.a (.text)
|
||||||
|
libaes_sp.firm.LTD.a (.text)
|
||||||
|
libdht_sp.TWL.LTD.a (.text)
|
||||||
|
* (.exception)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_ETABLE_START =.;
|
||||||
|
__exception_table_start__ =.;
|
||||||
|
EXCEPTION
|
||||||
|
__exception_table_end__ =.;
|
||||||
|
SDK_STATIC_ETABLE_END =.;
|
||||||
|
main.o (.rodata)
|
||||||
|
libsubpsyscall.a (.rodata)
|
||||||
|
libsyscall_sp.twl.a (.rodata)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.rodata)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.rodata)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.rodata)
|
||||||
|
FP_fastI_v4t_LE.a (.rodata)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.rodata)
|
||||||
|
libistdsubparm.a (.rodata)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.rodata)
|
||||||
|
libsea_sp.TWL.LTD.a (.rodata)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.rodata)
|
||||||
|
libos_sp.TWL.LTD.a (.rodata)
|
||||||
|
libmi_sp.TWL.LTD.a (.rodata)
|
||||||
|
libstd_sp.TWL.LTD.a (.rodata)
|
||||||
|
libmath_sp.TWL.LTD.a (.rodata)
|
||||||
|
libpxi_sp.TWL.LTD.a (.rodata)
|
||||||
|
libexi_sp.TWL.LTD.a (.rodata)
|
||||||
|
libi2c_sp.TWL.LTD.a (.rodata)
|
||||||
|
libsdio_sp.TWL.LTD.a (.rodata)
|
||||||
|
libpad_sp.TWL.LTD.a (.rodata)
|
||||||
|
libscfg_sp.TWL.LTD.a (.rodata)
|
||||||
|
libmcu_sp.TWL.LTD.a (.rodata)
|
||||||
|
libcdc_sp.TWL.LTD.a (.rodata)
|
||||||
|
libsnd_sp.TWL.LTD.a (.rodata)
|
||||||
|
libsndex_sp.TWL.LTD.a (.rodata)
|
||||||
|
libspi_sp.TWL.LTD.a (.rodata)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.rodata)
|
||||||
|
libtp_sp.TWL.LTD.a (.rodata)
|
||||||
|
libtpex_sp.TWL.LTD.a (.rodata)
|
||||||
|
libnvram_sp.TWL.LTD.a (.rodata)
|
||||||
|
librtc_sp.TWL.LTD.a (.rodata)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.rodata)
|
||||||
|
libwl_sp.TWL.LTD.a (.rodata)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.rodata)
|
||||||
|
libfs_sp.TWL.LTD.a (.rodata)
|
||||||
|
libcard_sp.TWL.LTD.a (.rodata)
|
||||||
|
libcamera_sp.TWL.LTD.a (.rodata)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.rodata)
|
||||||
|
libwvr_sp.TWL.LTD.a (.rodata)
|
||||||
|
libboot_sp.TWL.LTD.a (.rodata)
|
||||||
|
libreboot_sp.TWL.LTD.a (.rodata)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.rodata)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.rodata)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.rodata)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.rodata)
|
||||||
|
libds_sp.TWL.LTD.a (.rodata)
|
||||||
|
libaes_sp.firm.LTD.a (.rodata)
|
||||||
|
libdht_sp.TWL.LTD.a (.rodata)
|
||||||
|
main.o (.init)
|
||||||
|
libsubpsyscall.a (.init)
|
||||||
|
libsyscall_sp.twl.a (.init)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.init)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.init)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.init)
|
||||||
|
FP_fastI_v4t_LE.a (.init)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.init)
|
||||||
|
libistdsubparm.a (.init)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.init)
|
||||||
|
libsea_sp.TWL.LTD.a (.init)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.init)
|
||||||
|
libos_sp.TWL.LTD.a (.init)
|
||||||
|
libmi_sp.TWL.LTD.a (.init)
|
||||||
|
libstd_sp.TWL.LTD.a (.init)
|
||||||
|
libmath_sp.TWL.LTD.a (.init)
|
||||||
|
libpxi_sp.TWL.LTD.a (.init)
|
||||||
|
libexi_sp.TWL.LTD.a (.init)
|
||||||
|
libi2c_sp.TWL.LTD.a (.init)
|
||||||
|
libsdio_sp.TWL.LTD.a (.init)
|
||||||
|
libpad_sp.TWL.LTD.a (.init)
|
||||||
|
libscfg_sp.TWL.LTD.a (.init)
|
||||||
|
libmcu_sp.TWL.LTD.a (.init)
|
||||||
|
libcdc_sp.TWL.LTD.a (.init)
|
||||||
|
libsnd_sp.TWL.LTD.a (.init)
|
||||||
|
libsndex_sp.TWL.LTD.a (.init)
|
||||||
|
libspi_sp.TWL.LTD.a (.init)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.init)
|
||||||
|
libtp_sp.TWL.LTD.a (.init)
|
||||||
|
libtpex_sp.TWL.LTD.a (.init)
|
||||||
|
libnvram_sp.TWL.LTD.a (.init)
|
||||||
|
librtc_sp.TWL.LTD.a (.init)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.init)
|
||||||
|
libwl_sp.TWL.LTD.a (.init)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.init)
|
||||||
|
libfs_sp.TWL.LTD.a (.init)
|
||||||
|
libcard_sp.TWL.LTD.a (.init)
|
||||||
|
libcamera_sp.TWL.LTD.a (.init)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.init)
|
||||||
|
libwvr_sp.TWL.LTD.a (.init)
|
||||||
|
libboot_sp.TWL.LTD.a (.init)
|
||||||
|
libreboot_sp.TWL.LTD.a (.init)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.init)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.init)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.init)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.init)
|
||||||
|
libds_sp.TWL.LTD.a (.init)
|
||||||
|
libaes_sp.firm.LTD.a (.init)
|
||||||
|
libdht_sp.TWL.LTD.a (.init)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.SINIT_START =.;
|
||||||
|
main.o (.ctor)
|
||||||
|
libsubpsyscall.a (.ctor)
|
||||||
|
libsyscall_sp.twl.a (.ctor)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.ctor)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.ctor)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.ctor)
|
||||||
|
FP_fastI_v4t_LE.a (.ctor)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.ctor)
|
||||||
|
libistdsubparm.a (.ctor)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.ctor)
|
||||||
|
libsea_sp.TWL.LTD.a (.ctor)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.ctor)
|
||||||
|
libos_sp.TWL.LTD.a (.ctor)
|
||||||
|
libmi_sp.TWL.LTD.a (.ctor)
|
||||||
|
libstd_sp.TWL.LTD.a (.ctor)
|
||||||
|
libmath_sp.TWL.LTD.a (.ctor)
|
||||||
|
libpxi_sp.TWL.LTD.a (.ctor)
|
||||||
|
libexi_sp.TWL.LTD.a (.ctor)
|
||||||
|
libi2c_sp.TWL.LTD.a (.ctor)
|
||||||
|
libsdio_sp.TWL.LTD.a (.ctor)
|
||||||
|
libpad_sp.TWL.LTD.a (.ctor)
|
||||||
|
libscfg_sp.TWL.LTD.a (.ctor)
|
||||||
|
libmcu_sp.TWL.LTD.a (.ctor)
|
||||||
|
libcdc_sp.TWL.LTD.a (.ctor)
|
||||||
|
libsnd_sp.TWL.LTD.a (.ctor)
|
||||||
|
libsndex_sp.TWL.LTD.a (.ctor)
|
||||||
|
libspi_sp.TWL.LTD.a (.ctor)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.ctor)
|
||||||
|
libtp_sp.TWL.LTD.a (.ctor)
|
||||||
|
libtpex_sp.TWL.LTD.a (.ctor)
|
||||||
|
libnvram_sp.TWL.LTD.a (.ctor)
|
||||||
|
librtc_sp.TWL.LTD.a (.ctor)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.ctor)
|
||||||
|
libwl_sp.TWL.LTD.a (.ctor)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.ctor)
|
||||||
|
libfs_sp.TWL.LTD.a (.ctor)
|
||||||
|
libcard_sp.TWL.LTD.a (.ctor)
|
||||||
|
libcamera_sp.TWL.LTD.a (.ctor)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.ctor)
|
||||||
|
libwvr_sp.TWL.LTD.a (.ctor)
|
||||||
|
libboot_sp.TWL.LTD.a (.ctor)
|
||||||
|
libreboot_sp.TWL.LTD.a (.ctor)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.ctor)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.ctor)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.ctor)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.ctor)
|
||||||
|
libds_sp.TWL.LTD.a (.ctor)
|
||||||
|
libaes_sp.firm.LTD.a (.ctor)
|
||||||
|
libdht_sp.TWL.LTD.a (.ctor)
|
||||||
|
main.o (.sinit)
|
||||||
|
libsubpsyscall.a (.sinit)
|
||||||
|
libsyscall_sp.twl.a (.sinit)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.sinit)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.sinit)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.sinit)
|
||||||
|
FP_fastI_v4t_LE.a (.sinit)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.sinit)
|
||||||
|
libistdsubparm.a (.sinit)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.sinit)
|
||||||
|
libsea_sp.TWL.LTD.a (.sinit)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.sinit)
|
||||||
|
libos_sp.TWL.LTD.a (.sinit)
|
||||||
|
libmi_sp.TWL.LTD.a (.sinit)
|
||||||
|
libstd_sp.TWL.LTD.a (.sinit)
|
||||||
|
libmath_sp.TWL.LTD.a (.sinit)
|
||||||
|
libpxi_sp.TWL.LTD.a (.sinit)
|
||||||
|
libexi_sp.TWL.LTD.a (.sinit)
|
||||||
|
libi2c_sp.TWL.LTD.a (.sinit)
|
||||||
|
libsdio_sp.TWL.LTD.a (.sinit)
|
||||||
|
libpad_sp.TWL.LTD.a (.sinit)
|
||||||
|
libscfg_sp.TWL.LTD.a (.sinit)
|
||||||
|
libmcu_sp.TWL.LTD.a (.sinit)
|
||||||
|
libcdc_sp.TWL.LTD.a (.sinit)
|
||||||
|
libsnd_sp.TWL.LTD.a (.sinit)
|
||||||
|
libsndex_sp.TWL.LTD.a (.sinit)
|
||||||
|
libspi_sp.TWL.LTD.a (.sinit)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.sinit)
|
||||||
|
libtp_sp.TWL.LTD.a (.sinit)
|
||||||
|
libtpex_sp.TWL.LTD.a (.sinit)
|
||||||
|
libnvram_sp.TWL.LTD.a (.sinit)
|
||||||
|
librtc_sp.TWL.LTD.a (.sinit)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.sinit)
|
||||||
|
libwl_sp.TWL.LTD.a (.sinit)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.sinit)
|
||||||
|
libfs_sp.TWL.LTD.a (.sinit)
|
||||||
|
libcard_sp.TWL.LTD.a (.sinit)
|
||||||
|
libcamera_sp.TWL.LTD.a (.sinit)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.sinit)
|
||||||
|
libwvr_sp.TWL.LTD.a (.sinit)
|
||||||
|
libboot_sp.TWL.LTD.a (.sinit)
|
||||||
|
libreboot_sp.TWL.LTD.a (.sinit)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.sinit)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.sinit)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.sinit)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.sinit)
|
||||||
|
libds_sp.TWL.LTD.a (.sinit)
|
||||||
|
libaes_sp.firm.LTD.a (.sinit)
|
||||||
|
libdht_sp.TWL.LTD.a (.sinit)
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE BLOCK
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
main.o (.sdata)
|
||||||
|
libsubpsyscall.a (.sdata)
|
||||||
|
libsyscall_sp.twl.a (.sdata)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.sdata)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.sdata)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.sdata)
|
||||||
|
FP_fastI_v4t_LE.a (.sdata)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.sdata)
|
||||||
|
libistdsubparm.a (.sdata)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.sdata)
|
||||||
|
libsea_sp.TWL.LTD.a (.sdata)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.sdata)
|
||||||
|
libos_sp.TWL.LTD.a (.sdata)
|
||||||
|
libmi_sp.TWL.LTD.a (.sdata)
|
||||||
|
libstd_sp.TWL.LTD.a (.sdata)
|
||||||
|
libmath_sp.TWL.LTD.a (.sdata)
|
||||||
|
libpxi_sp.TWL.LTD.a (.sdata)
|
||||||
|
libexi_sp.TWL.LTD.a (.sdata)
|
||||||
|
libi2c_sp.TWL.LTD.a (.sdata)
|
||||||
|
libsdio_sp.TWL.LTD.a (.sdata)
|
||||||
|
libpad_sp.TWL.LTD.a (.sdata)
|
||||||
|
libscfg_sp.TWL.LTD.a (.sdata)
|
||||||
|
libmcu_sp.TWL.LTD.a (.sdata)
|
||||||
|
libcdc_sp.TWL.LTD.a (.sdata)
|
||||||
|
libsnd_sp.TWL.LTD.a (.sdata)
|
||||||
|
libsndex_sp.TWL.LTD.a (.sdata)
|
||||||
|
libspi_sp.TWL.LTD.a (.sdata)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.sdata)
|
||||||
|
libtp_sp.TWL.LTD.a (.sdata)
|
||||||
|
libtpex_sp.TWL.LTD.a (.sdata)
|
||||||
|
libnvram_sp.TWL.LTD.a (.sdata)
|
||||||
|
librtc_sp.TWL.LTD.a (.sdata)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.sdata)
|
||||||
|
libwl_sp.TWL.LTD.a (.sdata)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.sdata)
|
||||||
|
libfs_sp.TWL.LTD.a (.sdata)
|
||||||
|
libcard_sp.TWL.LTD.a (.sdata)
|
||||||
|
libcamera_sp.TWL.LTD.a (.sdata)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.sdata)
|
||||||
|
libwvr_sp.TWL.LTD.a (.sdata)
|
||||||
|
libboot_sp.TWL.LTD.a (.sdata)
|
||||||
|
libreboot_sp.TWL.LTD.a (.sdata)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.sdata)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.sdata)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.sdata)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.sdata)
|
||||||
|
libds_sp.TWL.LTD.a (.sdata)
|
||||||
|
libaes_sp.firm.LTD.a (.sdata)
|
||||||
|
libdht_sp.TWL.LTD.a (.sdata)
|
||||||
|
main.o (.data)
|
||||||
|
libsubpsyscall.a (.data)
|
||||||
|
libsyscall_sp.twl.a (.data)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.data)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.data)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.data)
|
||||||
|
FP_fastI_v4t_LE.a (.data)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.data)
|
||||||
|
libistdsubparm.a (.data)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.data)
|
||||||
|
libsea_sp.TWL.LTD.a (.data)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.data)
|
||||||
|
libos_sp.TWL.LTD.a (.data)
|
||||||
|
libmi_sp.TWL.LTD.a (.data)
|
||||||
|
libstd_sp.TWL.LTD.a (.data)
|
||||||
|
libmath_sp.TWL.LTD.a (.data)
|
||||||
|
libpxi_sp.TWL.LTD.a (.data)
|
||||||
|
libexi_sp.TWL.LTD.a (.data)
|
||||||
|
libi2c_sp.TWL.LTD.a (.data)
|
||||||
|
libsdio_sp.TWL.LTD.a (.data)
|
||||||
|
libpad_sp.TWL.LTD.a (.data)
|
||||||
|
libscfg_sp.TWL.LTD.a (.data)
|
||||||
|
libmcu_sp.TWL.LTD.a (.data)
|
||||||
|
libcdc_sp.TWL.LTD.a (.data)
|
||||||
|
libsnd_sp.TWL.LTD.a (.data)
|
||||||
|
libsndex_sp.TWL.LTD.a (.data)
|
||||||
|
libspi_sp.TWL.LTD.a (.data)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.data)
|
||||||
|
libtp_sp.TWL.LTD.a (.data)
|
||||||
|
libtpex_sp.TWL.LTD.a (.data)
|
||||||
|
libnvram_sp.TWL.LTD.a (.data)
|
||||||
|
librtc_sp.TWL.LTD.a (.data)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.data)
|
||||||
|
libwl_sp.TWL.LTD.a (.data)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.data)
|
||||||
|
libfs_sp.TWL.LTD.a (.data)
|
||||||
|
libcard_sp.TWL.LTD.a (.data)
|
||||||
|
libcamera_sp.TWL.LTD.a (.data)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.data)
|
||||||
|
libwvr_sp.TWL.LTD.a (.data)
|
||||||
|
libboot_sp.TWL.LTD.a (.data)
|
||||||
|
libreboot_sp.TWL.LTD.a (.data)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.data)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.data)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.data)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.data)
|
||||||
|
libds_sp.TWL.LTD.a (.data)
|
||||||
|
libaes_sp.firm.LTD.a (.data)
|
||||||
|
libdht_sp.TWL.LTD.a (.data)
|
||||||
|
* (.wram)
|
||||||
|
* (.ltdwram)
|
||||||
|
* (.rsvwram)
|
||||||
|
* (.ltdmain)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.END =.;
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.SIZE = SDK_LTDAUTOLOAD.SCRWRAM.END - SDK_LTDAUTOLOAD.SCRWRAM.START;
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = SDK_LTDAUTOLOAD_SIZE + SDK_LTDAUTOLOAD.SCRWRAM.SIZE;
|
||||||
|
|
||||||
|
} > SCRWRAM
|
||||||
|
|
||||||
|
.SCRWRAM.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.BSS_START =.;
|
||||||
|
main.o (.sbss)
|
||||||
|
libsubpsyscall.a (.sbss)
|
||||||
|
libsyscall_sp.twl.a (.sbss)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.sbss)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.sbss)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.sbss)
|
||||||
|
FP_fastI_v4t_LE.a (.sbss)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.sbss)
|
||||||
|
libistdsubparm.a (.sbss)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.sbss)
|
||||||
|
libsea_sp.TWL.LTD.a (.sbss)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.sbss)
|
||||||
|
libos_sp.TWL.LTD.a (.sbss)
|
||||||
|
libmi_sp.TWL.LTD.a (.sbss)
|
||||||
|
libstd_sp.TWL.LTD.a (.sbss)
|
||||||
|
libmath_sp.TWL.LTD.a (.sbss)
|
||||||
|
libpxi_sp.TWL.LTD.a (.sbss)
|
||||||
|
libexi_sp.TWL.LTD.a (.sbss)
|
||||||
|
libi2c_sp.TWL.LTD.a (.sbss)
|
||||||
|
libsdio_sp.TWL.LTD.a (.sbss)
|
||||||
|
libpad_sp.TWL.LTD.a (.sbss)
|
||||||
|
libscfg_sp.TWL.LTD.a (.sbss)
|
||||||
|
libmcu_sp.TWL.LTD.a (.sbss)
|
||||||
|
libcdc_sp.TWL.LTD.a (.sbss)
|
||||||
|
libsnd_sp.TWL.LTD.a (.sbss)
|
||||||
|
libsndex_sp.TWL.LTD.a (.sbss)
|
||||||
|
libspi_sp.TWL.LTD.a (.sbss)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.sbss)
|
||||||
|
libtp_sp.TWL.LTD.a (.sbss)
|
||||||
|
libtpex_sp.TWL.LTD.a (.sbss)
|
||||||
|
libnvram_sp.TWL.LTD.a (.sbss)
|
||||||
|
librtc_sp.TWL.LTD.a (.sbss)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.sbss)
|
||||||
|
libwl_sp.TWL.LTD.a (.sbss)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.sbss)
|
||||||
|
libfs_sp.TWL.LTD.a (.sbss)
|
||||||
|
libcard_sp.TWL.LTD.a (.sbss)
|
||||||
|
libcamera_sp.TWL.LTD.a (.sbss)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.sbss)
|
||||||
|
libwvr_sp.TWL.LTD.a (.sbss)
|
||||||
|
libboot_sp.TWL.LTD.a (.sbss)
|
||||||
|
libreboot_sp.TWL.LTD.a (.sbss)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.sbss)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.sbss)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.sbss)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.sbss)
|
||||||
|
libds_sp.TWL.LTD.a (.sbss)
|
||||||
|
libaes_sp.firm.LTD.a (.sbss)
|
||||||
|
libdht_sp.TWL.LTD.a (.sbss)
|
||||||
|
main.o (.bss)
|
||||||
|
libsubpsyscall.a (.bss)
|
||||||
|
libsyscall_sp.twl.a (.bss)
|
||||||
|
MSL_C_NITRO_Ai_LE.a (.bss)
|
||||||
|
MSL_Extras_NITRO_Ai_LE.a (.bss)
|
||||||
|
MSL_CPP_NITRO_Ai_LE.a (.bss)
|
||||||
|
FP_fastI_v4t_LE.a (.bss)
|
||||||
|
NITRO_Runtime_Ai_LE.a (.bss)
|
||||||
|
libistdsubparm.a (.bss)
|
||||||
|
libstubsisd_sp.TWL.LTD.a (.bss)
|
||||||
|
libsea_sp.TWL.LTD.a (.bss)
|
||||||
|
libcrypto_sp.TWL.LTD.a (.bss)
|
||||||
|
libos_sp.TWL.LTD.a (.bss)
|
||||||
|
libmi_sp.TWL.LTD.a (.bss)
|
||||||
|
libstd_sp.TWL.LTD.a (.bss)
|
||||||
|
libmath_sp.TWL.LTD.a (.bss)
|
||||||
|
libpxi_sp.TWL.LTD.a (.bss)
|
||||||
|
libexi_sp.TWL.LTD.a (.bss)
|
||||||
|
libi2c_sp.TWL.LTD.a (.bss)
|
||||||
|
libsdio_sp.TWL.LTD.a (.bss)
|
||||||
|
libpad_sp.TWL.LTD.a (.bss)
|
||||||
|
libscfg_sp.TWL.LTD.a (.bss)
|
||||||
|
libmcu_sp.TWL.LTD.a (.bss)
|
||||||
|
libcdc_sp.TWL.LTD.a (.bss)
|
||||||
|
libsnd_sp.TWL.LTD.a (.bss)
|
||||||
|
libsndex_sp.TWL.LTD.a (.bss)
|
||||||
|
libspi_sp.TWL.LTD.a (.bss)
|
||||||
|
libpm_sp.SYSMENU.TWL.LTD.a (.bss)
|
||||||
|
libtp_sp.TWL.LTD.a (.bss)
|
||||||
|
libtpex_sp.TWL.LTD.a (.bss)
|
||||||
|
libnvram_sp.TWL.LTD.a (.bss)
|
||||||
|
librtc_sp.TWL.LTD.a (.bss)
|
||||||
|
libfatfs_sp.TWL.LTD.a (.bss)
|
||||||
|
libwl_sp.TWL.LTD.a (.bss)
|
||||||
|
libathdrv_sp.TWL.LTD.a (.bss)
|
||||||
|
libfs_sp.TWL.LTD.a (.bss)
|
||||||
|
libcard_sp.TWL.LTD.a (.bss)
|
||||||
|
libcamera_sp.TWL.LTD.a (.bss)
|
||||||
|
libnwm_sp.SYSMENU.TWL.LTD.a (.bss)
|
||||||
|
libwvr_sp.TWL.LTD.a (.bss)
|
||||||
|
libwm_sp.TWL.LTD.a (.bss)
|
||||||
|
libmic_sp.TWL.LTD.a (.bss)
|
||||||
|
libmicex_sp.TWL.LTD.a (.bss)
|
||||||
|
libboot_sp.TWL.LTD.a (.bss)
|
||||||
|
libreboot_sp.TWL.LTD.a (.bss)
|
||||||
|
libhotsw_sp.TWL.LTD.a (.bss)
|
||||||
|
libreloc_info_sp.TWL.LTD.a (.bss)
|
||||||
|
libsysmenu_sp.TWL.LTD.a (.bss)
|
||||||
|
libsysmmcu_sp.TWL.LTD.a (.bss)
|
||||||
|
libds_sp.TWL.LTD.a (.bss)
|
||||||
|
libaes_sp.firm.LTD.a (.bss)
|
||||||
|
libdht_sp.TWL.LTD.a (.bss)
|
||||||
|
* (.wram.bss)
|
||||||
|
* (.ltdwram.bss)
|
||||||
|
* (.rsvwram.bss)
|
||||||
|
* (.ltdmain.bss)
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.BSS_END =.;
|
||||||
|
SDK_LTDAUTOLOAD_BSS_END =.;
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD.SCRWRAM.BSS_SIZE = SDK_LTDAUTOLOAD.SCRWRAM.BSS_END - SDK_LTDAUTOLOAD.SCRWRAM.BSS_START;
|
||||||
|
|
||||||
|
} >> SCRWRAM
|
||||||
|
|
||||||
|
SDK_MOUNT_INFO_TABLE = SDK_LTDAUTOLOAD_BSS_END;
|
||||||
|
SDK_LTDAUTOLOAD_BSS_END = SDK_MOUNT_INFO_TABLE + 0x400;
|
||||||
|
|
||||||
|
######################### LTDAUTOLOAD_INFO ##########################
|
||||||
|
.binary.LTDAUTOLOAD_INFO:
|
||||||
|
{
|
||||||
|
WRITEW ADDR(.SCRWRAM);
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.SCRWRAM.SIZE;
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.SCRWRAM.SINIT_START;
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.SCRWRAM.BSS_SIZE;
|
||||||
|
|
||||||
|
} > binary.LTDAUTOLOAD_INFO
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD_LIST = SDK_LTDAUTOLOAD_START + SDK_LTDAUTOLOAD_SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_LIST_END = SDK_LTDAUTOLOAD_LIST + SIZEOF(.binary.LTDAUTOLOAD_INFO);
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = SDK_LTDAUTOLOAD_SIZE + SIZEOF(.binary.LTDAUTOLOAD_INFO);
|
||||||
|
|
||||||
|
########################## LTDOVERLAYDEFS ###########################
|
||||||
|
.jackal_defsL:
|
||||||
|
{
|
||||||
|
### TWL limited extended static module information
|
||||||
|
WRITEW SDK_LTDAUTOLOAD_TOP_START; # load address
|
||||||
|
WRITEW SDK_MOUNT_INFO_TABLE; # address of the FS mount information table
|
||||||
|
WRITEW SDK_LTDAUTOLOAD_SIZE + SDK_LTDAUTOLOAD_TOP_SIZE; # size of module
|
||||||
|
WRITEW 0; # padding
|
||||||
|
|
||||||
|
} > jackal_defsL
|
||||||
|
|
||||||
|
############################ OTHERS #################################
|
||||||
|
SDK_SUBPRIV_ARENA_LO = 0x02ffc000; # メインメモリアリーナはサイズ 0
|
||||||
|
SDK_SEA_KEY_STORE = SDK_LTDAUTOLOAD_BSS_END;
|
||||||
|
SDK_WRAM_ARENA_LO = SDK_LTDAUTOLOAD_BSS_END + 0x40;
|
||||||
|
|
||||||
|
SDK_IRQ_STACKSIZE = 1024; # allocated in WRAM
|
||||||
|
SDK_SYS_STACKSIZE = 1024; # allocated in WRAM
|
||||||
|
SDK_SYS_STACKSIZE_SIGN = (SDK_SYS_STACKSIZE < 0x80000000) * 2 - 1;
|
||||||
|
|
||||||
|
.check.WORKRAM:
|
||||||
|
{
|
||||||
|
. = SDK_WRAM_ARENA_LO + 0x80 + SDK_IRQ_STACKSIZE + SDK_SYS_STACKSIZE * SDK_SYS_STACKSIZE_SIGN;
|
||||||
|
|
||||||
|
} > check.WORKRAM
|
||||||
|
}
|
||||||
@ -0,0 +1,63 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/initScfg.o
|
||||||
|
-l./obj/ARM7-TS.LTD/Release/crt0.LTD.o
|
||||||
|
-llibwm_sp.TWL.LTD.a
|
||||||
|
-llibwm_sp.TWL.LTD.a
|
||||||
|
-llibwm_sp.TWL.LTD.a
|
||||||
|
-llibmic_sp.TWL.LTD.a
|
||||||
|
-llibmic_sp.TWL.LTD.a
|
||||||
|
-llibmic_sp.TWL.LTD.a
|
||||||
|
-llibmicex_sp.TWL.LTD.a
|
||||||
|
-llibmicex_sp.TWL.LTD.a
|
||||||
|
-llibmicex_sp.TWL.LTD.a
|
||||||
|
obj/ARM7-TS.LTD/Release/main.o
|
||||||
|
-llibsubpsyscall.a
|
||||||
|
-llibsyscall_sp.twl.a
|
||||||
|
-lMSL_C_NITRO_Ai_LE.a
|
||||||
|
-lMSL_Extras_NITRO_Ai_LE.a
|
||||||
|
-lMSL_CPP_NITRO_Ai_LE.a
|
||||||
|
-lFP_fastI_v4t_LE.a
|
||||||
|
-lNITRO_Runtime_Ai_LE.a
|
||||||
|
-llibistdsubparm.a
|
||||||
|
-llibstubsisd_sp.TWL.LTD.a
|
||||||
|
-llibsea_sp.TWL.LTD.a
|
||||||
|
-llibcrypto_sp.TWL.LTD.a
|
||||||
|
-llibos_sp.TWL.LTD.a
|
||||||
|
-llibmi_sp.TWL.LTD.a
|
||||||
|
-llibstd_sp.TWL.LTD.a
|
||||||
|
-llibmath_sp.TWL.LTD.a
|
||||||
|
-llibpxi_sp.TWL.LTD.a
|
||||||
|
-llibexi_sp.TWL.LTD.a
|
||||||
|
-llibi2c_sp.TWL.LTD.a
|
||||||
|
-llibsdio_sp.TWL.LTD.a
|
||||||
|
-llibpad_sp.TWL.LTD.a
|
||||||
|
-llibscfg_sp.TWL.LTD.a
|
||||||
|
-llibmcu_sp.TWL.LTD.a
|
||||||
|
-llibcdc_sp.TWL.LTD.a
|
||||||
|
-llibsnd_sp.TWL.LTD.a
|
||||||
|
-llibsndex_sp.TWL.LTD.a
|
||||||
|
-llibspi_sp.TWL.LTD.a
|
||||||
|
-llibpm_sp.SYSMENU.TWL.LTD.a
|
||||||
|
-llibtp_sp.TWL.LTD.a
|
||||||
|
-llibtpex_sp.TWL.LTD.a
|
||||||
|
-llibnvram_sp.TWL.LTD.a
|
||||||
|
-llibrtc_sp.TWL.LTD.a
|
||||||
|
-llibfatfs_sp.TWL.LTD.a
|
||||||
|
-llibwl_sp.TWL.LTD.a
|
||||||
|
-llibathdrv_sp.TWL.LTD.a
|
||||||
|
-llibfs_sp.TWL.LTD.a
|
||||||
|
-llibcard_sp.TWL.LTD.a
|
||||||
|
-llibcamera_sp.TWL.LTD.a
|
||||||
|
-llibnwm_sp.SYSMENU.TWL.LTD.a
|
||||||
|
-llibwvr_sp.TWL.LTD.a
|
||||||
|
-llibwm_sp.TWL.LTD.a
|
||||||
|
-llibmic_sp.TWL.LTD.a
|
||||||
|
-llibmicex_sp.TWL.LTD.a
|
||||||
|
-llibboot_sp.TWL.LTD.a
|
||||||
|
-llibreboot_sp.TWL.LTD.a
|
||||||
|
-llibhotsw_sp.TWL.LTD.a
|
||||||
|
-llibreloc_info_sp.TWL.LTD.a
|
||||||
|
-llibsysmenu_sp.TWL.LTD.a
|
||||||
|
-llibsysmmcu_sp.TWL.LTD.a
|
||||||
|
-llibds_sp.TWL.LTD.a
|
||||||
|
-llibaes_sp.firm.LTD.a
|
||||||
|
-llibdht_sp.TWL.LTD.a
|
||||||
BIN
build/components/jackal.TWL/bin/ARM7-TS.LTD/Release/jackal.tef
Normal file
BIN
build/components/jackal.TWL/bin/ARM7-TS.LTD/Release/jackal.tef
Normal file
Binary file not shown.
11540
build/components/jackal.TWL/bin/ARM7-TS.LTD/Release/jackal.tef.xMAP
Normal file
11540
build/components/jackal.TWL/bin/ARM7-TS.LTD/Release/jackal.tef.xMAP
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,32 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/crt0.LTD.o: ../hyena.TWL/src/crt0.LTD.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/common/armArch.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/emulator.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/printf.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/init/crt0.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_shared.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_parameter.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_AES.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SCFG.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_MI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_GX.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_EXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_OS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SPI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_wramEnv.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom_certificate.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/init/common/include/boot_sync.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/code32.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/codereset.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/code32.h
|
||||||
@ -0,0 +1,25 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/initScfg.o: ../hyena.TWL/src/initScfg.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_shared.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_parameter.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_AES.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SCFG.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_MI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_GX.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_EXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_OS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SPI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_wramEnv.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/code32.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/codereset.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/code32.h
|
||||||
283
build/components/jackal.TWL/depend/ARM7-TS.LTD/Release/main.d
Normal file
283
build/components/jackal.TWL/depend/ARM7-TS.LTD/Release/main.d
Normal file
@ -0,0 +1,283 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/main.o: ../hyena.TWL/src/main.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/init/crt0.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/mmap_wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_shared.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_parameter.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_AES.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SCFG.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_MI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_GX.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_EXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PXI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_OS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SPI.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/ARM7/ioreg_SD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/system.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/systemCall.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/stream.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/uncompress.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/misc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/printf.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/systemCall.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/tick.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/ioreg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/thread.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/context.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/callTrace.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/profile.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/version.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/alarm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/arena.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/valarm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/common/armArch.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/system.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/misc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/interrupt.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/interrupt.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/event.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/spinLock.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/timer.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/emulator.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/message.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/mutex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/exception.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/init.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/alloc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/reset.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/pxi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/init.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/compparam.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/dma.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/exMemory.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/wram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/memory.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/swap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/secureUncompress.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/byteAccess.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/uncomp_stream.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/compress.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/init.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/endian.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/platform.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/cache.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/mi/device.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pxi/common/regname.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/ownerInfo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spec.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/config.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/userInfo_ts_300.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/gx/gxcommon.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fx/fx.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/entropy.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/systemWork.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/resource.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/os/common/functionCost.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/systemWork.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/application_jump.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl_hybrid.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spec.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/armArch.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/common/lcd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi/common/dma.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi/common/sharedWram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pad.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pad/common/pad.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/ARM7/ioreg_PAD.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/ARM7/mmap_global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/pad/ARM7/xyButton.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/type.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi/common/mic_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/ARM7/spi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/ARM7/pm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi/common/pm_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi/common/pm_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/spi/ARM7/shutdown.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/common/type.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/ARM7/control.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/ARM7/instruction.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/rtc/ARM7/gpio.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc/common/type_ex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc/common/fifo_ex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/rtc/ARM7/instruction_ex.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/snd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/main.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/alarm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/command.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/global.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/work.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/exchannel.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/channel.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/hw/ARM7/ioreg_SND.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/seq.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/capture.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/data.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/bank.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/mml.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/midiplayer.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/snd/common/util.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/snd/common/sndex_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/snd/ARM7/sndex_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/eeprom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/backup.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/flash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/fram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/rom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/hash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/card/pullOut.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/archive.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/romfat.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/file.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/overlay.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/hook.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/fs/api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std/string.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std/unicode.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/std/stdlib.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs/common/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs/common/api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/fatfs/ARM7/command.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/gx.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/gx/gx_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wm/common/wm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/common/version_wl.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wm/ARM7/wm_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlLib.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlBuf.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlFrame.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlCmd.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlCmdLabel.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlStaList.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro_wl/ARM7/WlParam.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wvr.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wvr/common/wvr_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/wvr/ARM7/wvr_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/common/ctrdg_common.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_backup.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_task.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_flash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_sram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_flash.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_sram.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM9/ctrdg_task.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/ctrdg/ARM7/ctrdg_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/math.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/rand.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/qsort.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/fft.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/checksum.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/crc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/math/dgt.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm/common/nwm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm/ARM7/nwm_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/scfg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/scfg/common/scfg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/hw/common/mmap_wramEnv.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/scfg/ARM7/scfg_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/common/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/common/util.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/ARM7/i2c.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/camera/ARM7/control.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/dsp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/exi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/exi/ARM7/genPort.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/ownerInfoEx.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nwm/ARM7/ForLauncher/nwm_sp_init_for_launcher.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/codecmode.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_reg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_twlmode_access.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/cdc/ARM7/cdc_dsmode_access.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/nitro/spi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/aes.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/aes/common/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/aes/ARM7/hi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/mcu_reg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/i2c.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/i2c/ARM7/i2c.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/control.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mcu/ARM7/intr.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/format_rom_certificate.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/banner.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/NTRSettings.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/TWLSettings.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/countryCode.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/ownerInfoEx_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/lcfg/common/TWLHWInfo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib/common/sysmenu_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/nam.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/os/common/msJump.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/types.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/os/common/include/application_jump_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/reloc_info/common/reloc_info.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/os/common/include/application_jump_private.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib/common/sysmenu_work.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/hw/common/mmap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/gcd/blowfish.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sysmenu_lib/common/pxi.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/boot.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/boot/common/boot_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/hotsw.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/hotsw/common/hotsw.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/sharedFont.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/util.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/WDSWrapper.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/WDS.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/mcu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/mcu/common/fifo.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/sysmenu/mcu/ARM7/mcu.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/memorymap.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/hw/common/mmap_firm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/include/firm/hw/ARM7/mmap_firm.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/spi/ARM7/pm/include/pm_pmic.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlipl/build/libraries_sysmenu/sysmenu/common/include/internal_api.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/spi/ARM7/include/nvram_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/build/libraries/spi/ARM7/include/spi_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl_sp.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/sea.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/ltdwram_begin.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/section.h \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/ltdwram_end.h
|
||||||
400
build/components/jackal.TWL/jackal.lcf.template
Normal file
400
build/components/jackal.TWL/jackal.lcf.template
Normal file
@ -0,0 +1,400 @@
|
|||||||
|
#---------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - components - armadillo.TWL
|
||||||
|
# File: armadillo.lcf.template
|
||||||
|
#
|
||||||
|
# Copyright 2008 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
MEMORY
|
||||||
|
{
|
||||||
|
<STATIC.NAME> (RWX) : ORIGIN = <STATIC.ADDRESS>, LENGTH = 0x0 > <STATIC.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
binary.STATIC_FOOTER (RWX) : ORIGIN = 0, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.FLXSUFFIX>
|
||||||
|
|
||||||
|
<PROPERTY.OVERLAYDEFS>F (RW) : ORIGIN = 0, LENGTH = 0x0 > <PROPERTY.OVERLAYDEFS><PROPERTY.FLXSUFFIX>
|
||||||
|
|
||||||
|
binary.LTDAUTOLOAD_TOP (RW) : ORIGIN = 0, LENGTH = 0x0 > <STATIC.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
<FOREACH.LTDAUTOLOADS>
|
||||||
|
<LTDAUTOLOAD.NAME> (RWX) : ORIGIN = <LTDAUTOLOAD.ADDRESS>, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
<END.LTDAUTOLOADS>
|
||||||
|
binary.LTDAUTOLOAD_INFO (RWX) : ORIGIN = 0, LENGTH = 0x0 >> <STATIC.NAME><PROPERTY.LTDSUFFIX>
|
||||||
|
|
||||||
|
<PROPERTY.LTDOVERLAYDEFS>L (RW) : ORIGIN = 0, LENGTH = 0x0 > <PROPERTY.LTDOVERLAYDEFS><PROPERTY.LTDSUFFIX>
|
||||||
|
|
||||||
|
check.WORKRAM (RWX) : ORIGIN = 0x03740000, LENGTH = 0xd0000 > workram.check
|
||||||
|
}
|
||||||
|
|
||||||
|
KEEP_SECTION
|
||||||
|
{
|
||||||
|
.sinit
|
||||||
|
}
|
||||||
|
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
############################ STATIC #################################
|
||||||
|
.<STATIC.NAME>:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.STATIC.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <STATIC.SEARCHSYMBOL>;
|
||||||
|
<END.STATIC.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_STATIC_START =.;
|
||||||
|
OBJECT(_start,*)
|
||||||
|
<FOREACH.STATIC.OBJECTS=.text>
|
||||||
|
<STATIC.OBJECT=.text:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.text>
|
||||||
|
<STATIC.LIBRARY=.text:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.rodata>
|
||||||
|
<STATIC.OBJECT=.rodata:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.rodata>
|
||||||
|
<STATIC.LIBRARY=.rodata:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.init>
|
||||||
|
<STATIC.OBJECT=.init:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.init>
|
||||||
|
<STATIC.LIBRARY=.init:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_SINIT_START =.;
|
||||||
|
<FOREACH.STATIC.OBJECTS=.ctor>
|
||||||
|
<STATIC.OBJECT=.ctor:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.ctor>
|
||||||
|
<STATIC.LIBRARY=.ctor:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.sinit>
|
||||||
|
<STATIC.OBJECT=.sinit:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.sinit>
|
||||||
|
<STATIC.LIBRARY=.sinit:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
<FOREACH.STATIC.OBJECTS=.sdata>
|
||||||
|
<STATIC.OBJECT=.sdata:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.sdata>
|
||||||
|
<STATIC.LIBRARY=.sdata:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.data>
|
||||||
|
<STATIC.OBJECT=.data:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.data>
|
||||||
|
<STATIC.LIBRARY=.data:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_END =.;
|
||||||
|
|
||||||
|
SDK_STATIC_SIZE = SDK_STATIC_END - SDK_STATIC_START;
|
||||||
|
__sinit__ = SDK_STATIC_SINIT_START; # for static initializer
|
||||||
|
|
||||||
|
} > <STATIC.NAME>
|
||||||
|
|
||||||
|
.<STATIC.NAME>.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.STATIC.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <STATIC.SEARCHSYMBOL>;
|
||||||
|
<END.STATIC.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_STATIC_BSS_START =.;
|
||||||
|
<FOREACH.STATIC.OBJECTS=.sbss>
|
||||||
|
<STATIC.OBJECT=.sbss:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.sbss>
|
||||||
|
<STATIC.LIBRARY=.sbss:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
<FOREACH.STATIC.OBJECTS=.bss>
|
||||||
|
<STATIC.OBJECT=.bss:t>
|
||||||
|
<END.STATIC.OBJECTS>
|
||||||
|
<FOREACH.STATIC.LIBRARIES=.bss>
|
||||||
|
<STATIC.LIBRARY=.bss:t>
|
||||||
|
<END.STATIC.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_BSS_END = .;
|
||||||
|
|
||||||
|
SDK_STATIC_BSS_SIZE = SDK_STATIC_BSS_END - SDK_STATIC_BSS_START;
|
||||||
|
|
||||||
|
} >> <STATIC.NAME>
|
||||||
|
|
||||||
|
############################ STATIC_FOOTER ##########################
|
||||||
|
.binary.STATIC_FOOTER:
|
||||||
|
{
|
||||||
|
WRITEW 0xdec00621; # LE(0x2106C0DE) = NITRO CODE
|
||||||
|
WRITEW _start_ModuleParams - ADDR(.<STATIC.NAME>);
|
||||||
|
WRITEW 0; # NO DIGEST
|
||||||
|
WRITEW _start_LtdModuleParams - ADDR(.<STATIC.NAME>);
|
||||||
|
|
||||||
|
} > binary.STATIC_FOOTER
|
||||||
|
|
||||||
|
############################ OVERLAYDEFS ############################
|
||||||
|
.<PROPERTY.OVERLAYDEFS>F:
|
||||||
|
{
|
||||||
|
### <STATIC.NAME> module information
|
||||||
|
WRITEW ADDR(.<STATIC.NAME>); # load address
|
||||||
|
WRITEW _start; # entry address
|
||||||
|
WRITEW SDK_STATIC_SIZE; # size of module
|
||||||
|
WRITEW _start_AutoloadDoneCallback; # callback autoload done
|
||||||
|
|
||||||
|
} > <PROPERTY.OVERLAYDEFS>F
|
||||||
|
|
||||||
|
########################### LTDAUTOLOADS ############################
|
||||||
|
SDK_LTDAUTOLOAD_TOP_START = 0x02f00000;
|
||||||
|
SDK_LTDAUTOLOAD_TOP_SIZE = 4; # STATIC 領域が無い代わりに 4 bytes のダミーがバイナリファイルの先頭に入る #
|
||||||
|
SDK_LTDAUTOLOAD_START = SDK_LTDAUTOLOAD_TOP_START + SDK_LTDAUTOLOAD_TOP_SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = 0;
|
||||||
|
SDK_LTDAUTOLOAD_BSS_END = 0x03740000;
|
||||||
|
|
||||||
|
.binary.LTDAUTOLOAD_TOP:
|
||||||
|
{
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
} > binary.LTDAUTOLOAD_TOP
|
||||||
|
|
||||||
|
<FOREACH.LTDAUTOLOADS>
|
||||||
|
.<LTDAUTOLOAD.NAME>:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <LTDAUTOLOAD.SEARCHSYMBOL>;
|
||||||
|
<END.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# TEXT BLOCK: READ ONLY
|
||||||
|
#
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.START =.;
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.text>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.text:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.text>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.text:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.etable>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.exception:t>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_STATIC_ETABLE_START =.;
|
||||||
|
__exception_table_start__ =.;
|
||||||
|
EXCEPTION
|
||||||
|
__exception_table_end__ =.;
|
||||||
|
SDK_STATIC_ETABLE_END =.;
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.rodata>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.rodata:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.rodata>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.rodata:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.init>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.init:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.init>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.init:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SINIT_START =.;
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ctor>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ctor:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ctor>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ctor:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.sinit>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.sinit:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.sinit>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.sinit:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
WRITEW 0;
|
||||||
|
|
||||||
|
#
|
||||||
|
# DATA BLOCK: READ WRITE BLOCK
|
||||||
|
#
|
||||||
|
. = ALIGN(4);
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.sdata>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.sdata:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.sdata>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.sdata:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.data>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.data:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.data>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.data:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.wram>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.wram:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.wram>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.wram:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ltdwram>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ltdwram:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ltdwram>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ltdwram:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.rsvwram>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.rsvwram:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.rsvwram>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.rsvwram:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ltdmain:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ltdmain:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.END =.;
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SIZE = SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.END - SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.START;
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = SDK_LTDAUTOLOAD_SIZE + SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SIZE;
|
||||||
|
|
||||||
|
} > <LTDAUTOLOAD.NAME>
|
||||||
|
|
||||||
|
.<LTDAUTOLOAD.NAME>.bss:
|
||||||
|
{
|
||||||
|
ALIGNALL(4);
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Definition to refer overlay segment, when same name symbols exist in multiple overlays.
|
||||||
|
#
|
||||||
|
<FOREACH.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
SEARCH_SYMBOL <LTDAUTOLOAD.SEARCHSYMBOL>;
|
||||||
|
<END.LTDAUTOLOAD.SEARCHSYMBOLS>
|
||||||
|
|
||||||
|
#
|
||||||
|
# BSS BLOCK
|
||||||
|
#
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_START =.;
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.sbss>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.sbss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.sbss>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.sbss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.bss>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.bss>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.wram>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.wram.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.wram>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.wram.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ltdwram>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ltdwram.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ltdwram>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ltdwram.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.rsvwram>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.rsvwram.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.rsvwram>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.rsvwram.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
<FOREACH.LTDAUTOLOAD.OBJECTS=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.OBJECT=.ltdmain.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.OBJECTS>
|
||||||
|
<FOREACH.LTDAUTOLOAD.LIBRARIES=.ltdmain>
|
||||||
|
<LTDAUTOLOAD.LIBRARY=.ltdmain.bss:t>
|
||||||
|
<END.LTDAUTOLOAD.LIBRARIES>
|
||||||
|
. = ALIGN(4);
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_END =.;
|
||||||
|
SDK_LTDAUTOLOAD_BSS_END =.;
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_SIZE = SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_END - SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_START;
|
||||||
|
|
||||||
|
} >> <LTDAUTOLOAD.NAME>
|
||||||
|
<END.LTDAUTOLOADS>
|
||||||
|
|
||||||
|
SDK_MOUNT_INFO_TABLE = SDK_LTDAUTOLOAD_BSS_END;
|
||||||
|
SDK_LTDAUTOLOAD_BSS_END = SDK_MOUNT_INFO_TABLE + 0x400;
|
||||||
|
|
||||||
|
######################### LTDAUTOLOAD_INFO ##########################
|
||||||
|
.binary.LTDAUTOLOAD_INFO:
|
||||||
|
{
|
||||||
|
<FOREACH.LTDAUTOLOADS>
|
||||||
|
WRITEW ADDR(.<LTDAUTOLOAD.NAME>);
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SIZE;
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.SINIT_START;
|
||||||
|
WRITEW SDK_LTDAUTOLOAD.<LTDAUTOLOAD.NAME>.BSS_SIZE;
|
||||||
|
<END.LTDAUTOLOADS>
|
||||||
|
|
||||||
|
} > binary.LTDAUTOLOAD_INFO
|
||||||
|
|
||||||
|
SDK_LTDAUTOLOAD_LIST = SDK_LTDAUTOLOAD_START + SDK_LTDAUTOLOAD_SIZE;
|
||||||
|
SDK_LTDAUTOLOAD_LIST_END = SDK_LTDAUTOLOAD_LIST + SIZEOF(.binary.LTDAUTOLOAD_INFO);
|
||||||
|
SDK_LTDAUTOLOAD_SIZE = SDK_LTDAUTOLOAD_SIZE + SIZEOF(.binary.LTDAUTOLOAD_INFO);
|
||||||
|
|
||||||
|
########################## LTDOVERLAYDEFS ###########################
|
||||||
|
.<PROPERTY.LTDOVERLAYDEFS>L:
|
||||||
|
{
|
||||||
|
### TWL limited extended static module information
|
||||||
|
WRITEW SDK_LTDAUTOLOAD_TOP_START; # load address
|
||||||
|
WRITEW SDK_MOUNT_INFO_TABLE; # address of the FS mount information table
|
||||||
|
WRITEW SDK_LTDAUTOLOAD_SIZE + SDK_LTDAUTOLOAD_TOP_SIZE; # size of module
|
||||||
|
WRITEW 0; # padding
|
||||||
|
|
||||||
|
} > <PROPERTY.LTDOVERLAYDEFS>L
|
||||||
|
|
||||||
|
############################ OTHERS #################################
|
||||||
|
SDK_SUBPRIV_ARENA_LO = 0x02ffc000; # メインメモリアリーナはサイズ 0
|
||||||
|
SDK_SEA_KEY_STORE = SDK_LTDAUTOLOAD_BSS_END;
|
||||||
|
SDK_WRAM_ARENA_LO = SDK_LTDAUTOLOAD_BSS_END + 0x40;
|
||||||
|
|
||||||
|
SDK_IRQ_STACKSIZE = <STATIC.IRQSTACKSIZE>; # allocated in WRAM
|
||||||
|
SDK_SYS_STACKSIZE = <STATIC.STACKSIZE>; # allocated in WRAM
|
||||||
|
SDK_SYS_STACKSIZE_SIGN = (SDK_SYS_STACKSIZE < 0x80000000) * 2 - 1;
|
||||||
|
|
||||||
|
.check.WORKRAM:
|
||||||
|
{
|
||||||
|
. = SDK_WRAM_ARENA_LO + 0x80 + SDK_IRQ_STACKSIZE + SDK_SYS_STACKSIZE * SDK_SYS_STACKSIZE_SIGN;
|
||||||
|
|
||||||
|
} > check.WORKRAM
|
||||||
|
}
|
||||||
106
build/components/jackal.TWL/jackal.lsf
Normal file
106
build/components/jackal.TWL/jackal.lsf
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - components - armadillo.TWL
|
||||||
|
# File: armadillo.lsf
|
||||||
|
#
|
||||||
|
# Copyright 2008 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded insructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Nitro LCF SPEC FILE
|
||||||
|
#
|
||||||
|
#--------
|
||||||
|
Static $(TARGET_NAME)
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_FLXMAIN)
|
||||||
|
StackSize 1024 1024
|
||||||
|
|
||||||
|
Library $(CRT0_O)
|
||||||
|
Object $(OBJDIR)/initScfg.o
|
||||||
|
# Library libwpa_sp$(LIBSUFFIX).a
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.text)
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.rodata)
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.data)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.text)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.rodata)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.data)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.text)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.rodata)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.data)
|
||||||
|
}
|
||||||
|
|
||||||
|
#--------
|
||||||
|
Ltdautoload SCRWRAM
|
||||||
|
{
|
||||||
|
Address 0x03758000
|
||||||
|
|
||||||
|
Library libsubpsyscall.a
|
||||||
|
Library libsyscall_sp.twl.a
|
||||||
|
Library $(CW_LIBS)
|
||||||
|
Library $(ISDBG_LIBS_TWL)
|
||||||
|
Library $(ISDBG_LIBS_NITRO)
|
||||||
|
|
||||||
|
Object * (.etable)
|
||||||
|
Object $(OBJDIR)/main.o
|
||||||
|
|
||||||
|
Library libsea_sp$(LIBSUFFIX).a
|
||||||
|
Library libcrypto_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libos_sp$(LIBSUFFIX).a
|
||||||
|
Library libmi_sp$(LIBSUFFIX).a
|
||||||
|
Library libstd_sp$(LIBSUFFIX).a
|
||||||
|
Library libmath_sp$(LIBSUFFIX).a
|
||||||
|
Library libpxi_sp$(LIBSUFFIX).a
|
||||||
|
Library libexi_sp$(LIBSUFFIX).a
|
||||||
|
Library libi2c_sp$(LIBSUFFIX).a
|
||||||
|
Library libsdio_sp$(LIBSUFFIX).a
|
||||||
|
Library libpad_sp$(LIBSUFFIX).a
|
||||||
|
Library libscfg_sp$(LIBSUFFIX).a
|
||||||
|
Library libmcu_sp$(LIBSUFFIX).a
|
||||||
|
Library libcdc_sp$(LIBSUFFIX).a
|
||||||
|
Library libsnd_sp$(LIBSUFFIX).a
|
||||||
|
Library libsndex_sp$(LIBSUFFIX).a
|
||||||
|
Library libspi_sp$(LIBSUFFIX).a
|
||||||
|
Library libpm_sp.SYSMENU$(LIBSUFFIX).a
|
||||||
|
Library libtp_sp$(LIBSUFFIX).a
|
||||||
|
Library libtpex_sp$(LIBSUFFIX).a
|
||||||
|
Library libnvram_sp$(LIBSUFFIX).a
|
||||||
|
Library librtc_sp$(LIBSUFFIX).a
|
||||||
|
Library libfatfs_sp$(LIBSUFFIX).a
|
||||||
|
Library libwl_sp$(LIBSUFFIX).a
|
||||||
|
Library libathdrv_sp$(LIBSUFFIX).a
|
||||||
|
Library libfs_sp$(LIBSUFFIX).a
|
||||||
|
Library libcard_sp$(LIBSUFFIX).a
|
||||||
|
Library libcamera_sp$(LIBSUFFIX).a
|
||||||
|
Library libnwm_sp.SYSMENU$(LIBSUFFIX).a
|
||||||
|
Library libwvr_sp$(LIBSUFFIX).a
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.bss)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.bss)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.bss)
|
||||||
|
|
||||||
|
Library libboot_sp$(LIBSUFFIX).a
|
||||||
|
Library libreboot_sp$(LIBSUFFIX).a
|
||||||
|
Library libhotsw_sp$(LIBSUFFIX).a
|
||||||
|
Library libreloc_info_sp$(LIBSUFFIX).a
|
||||||
|
Library libsysmenu_sp$(LIBSUFFIX).a
|
||||||
|
Library libsysmmcu_sp$(LIBSUFFIX).a
|
||||||
|
Library libds_sp$(LIBSUFFIX).a
|
||||||
|
Library libaes_sp$(FIRM_LIBSUFFIX).a
|
||||||
|
Library libdht_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Object * (.wram)
|
||||||
|
Object * (.ltdwram)
|
||||||
|
Object * (.rsvwram)
|
||||||
|
Object * (.main)
|
||||||
|
Object * (.ltdmain)
|
||||||
|
}
|
||||||
|
|
||||||
|
# BootROMの鍵データが0x0380c400~にあるので、jackalのWRAM配置の上限はその値になることに注意。
|
||||||
107
build/components/jackal.TWL/jackal.thumb.lsf
Normal file
107
build/components/jackal.TWL/jackal.thumb.lsf
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - components - armadillo.TWL
|
||||||
|
# File: armadillo.lsf
|
||||||
|
#
|
||||||
|
# Copyright 2008 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded insructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Date:: $
|
||||||
|
# $Rev$
|
||||||
|
# $Author$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# Nitro LCF SPEC FILE
|
||||||
|
#
|
||||||
|
#--------
|
||||||
|
Static $(TARGET_NAME)
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_FLXMAIN)
|
||||||
|
StackSize 1024 1024
|
||||||
|
|
||||||
|
Library $(CRT0_O)
|
||||||
|
Object $(OBJDIR)/initScfg.o
|
||||||
|
}
|
||||||
|
|
||||||
|
#--------
|
||||||
|
Ltdautoload SCRWRAM
|
||||||
|
{
|
||||||
|
Address 0x03758000
|
||||||
|
|
||||||
|
Library libsubpsyscall.a
|
||||||
|
Library libsyscall_sp.twl.a
|
||||||
|
Library $(CW_LIBS)
|
||||||
|
Library $(ISDBG_LIBS_TWL)
|
||||||
|
Library $(ISDBG_LIBS_NITRO)
|
||||||
|
|
||||||
|
Object * (.etable)
|
||||||
|
Object $(OBJDIR)/main.o
|
||||||
|
|
||||||
|
Library libsea_sp$(LIBSUFFIX).a
|
||||||
|
Library libcrypto_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
Library libos_sp$(LIBSUFFIX).a
|
||||||
|
Library libmi_sp$(LIBSUFFIX).a
|
||||||
|
Library libstd_sp$(LIBSUFFIX).a
|
||||||
|
Library libmath_sp$(LIBSUFFIX).a
|
||||||
|
Library libpxi_sp$(LIBSUFFIX).a
|
||||||
|
Library libexi_sp$(LIBSUFFIX).a
|
||||||
|
Library libi2c_sp$(LIBSUFFIX).a
|
||||||
|
Library libsdio_sp$(LIBSUFFIX).a
|
||||||
|
Library libpad_sp$(LIBSUFFIX).a
|
||||||
|
Library libscfg_sp$(LIBSUFFIX).a
|
||||||
|
Library libmcu_sp$(LIBSUFFIX).a
|
||||||
|
Library libcdc_sp$(LIBSUFFIX).a
|
||||||
|
Library libsnd_sp$(LIBSUFFIX).a
|
||||||
|
Library libsndex_sp$(LIBSUFFIX).a
|
||||||
|
Library libspi_sp$(LIBSUFFIX).a
|
||||||
|
Library libpm_sp.SYSMENU$(LIBSUFFIX).a
|
||||||
|
Library libtp_sp$(LIBSUFFIX).a
|
||||||
|
Library libtpex_sp$(LIBSUFFIX).a
|
||||||
|
Library libnvram_sp$(LIBSUFFIX).a
|
||||||
|
Library librtc_sp$(LIBSUFFIX).a
|
||||||
|
Library libfatfs_sp$(LIBSUFFIX).a
|
||||||
|
Library libwl_sp$(LIBSUFFIX).a
|
||||||
|
Library libathdrv_sp$(LIBSUFFIX).a
|
||||||
|
Library libfs_sp$(LIBSUFFIX).a
|
||||||
|
Library libcard_sp$(LIBSUFFIX).a
|
||||||
|
Library libcamera_sp$(LIBSUFFIX).a
|
||||||
|
Library libnwm_sp.SYSMENU$(LIBSUFFIX).a
|
||||||
|
Library libwvr_sp$(LIBSUFFIX).a
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.bss)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.bss)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.bss)
|
||||||
|
|
||||||
|
Library libboot_sp$(LIBSUFFIX).a
|
||||||
|
Library libreboot_sp$(LIBSUFFIX).a
|
||||||
|
Library libhotsw_sp$(LIBSUFFIX).a
|
||||||
|
Library libreloc_info_sp$(LIBSUFFIX).a
|
||||||
|
Library libsysmenu_sp$(LIBSUFFIX).a
|
||||||
|
Library libsysmmcu_sp$(LIBSUFFIX).a
|
||||||
|
Library libds_sp$(LIBSUFFIX).a
|
||||||
|
Library libaes_sp$(FIRM_LIBSUFFIX).a
|
||||||
|
Library libdht_sp$(LIBSUFFIX).a
|
||||||
|
|
||||||
|
# Library libwpa_sp$(LIBSUFFIX).a
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.text)
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.rodata)
|
||||||
|
Library libwm_sp$(LIBSUFFIX).a (.data)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.text)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.rodata)
|
||||||
|
Library libmic_sp$(LIBSUFFIX).a (.data)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.text)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.rodata)
|
||||||
|
Library libmicex_sp$(LIBSUFFIX).a (.data)
|
||||||
|
|
||||||
|
Object * (.wram)
|
||||||
|
Object * (.ltdwram)
|
||||||
|
Object * (.rsvwram)
|
||||||
|
Object * (.main)
|
||||||
|
Object * (.ltdmain)
|
||||||
|
}
|
||||||
|
|
||||||
|
# BootROMの鍵データが0x0380c400~にあるので、jackalのWRAM配置の上限はその値になることに注意。
|
||||||
BIN
build/components/jackal.TWL/obj/ARM7-TS.LTD/Release/crt0.LTD.o
Normal file
BIN
build/components/jackal.TWL/obj/ARM7-TS.LTD/Release/crt0.LTD.o
Normal file
Binary file not shown.
BIN
build/components/jackal.TWL/obj/ARM7-TS.LTD/Release/initScfg.o
Normal file
BIN
build/components/jackal.TWL/obj/ARM7-TS.LTD/Release/initScfg.o
Normal file
Binary file not shown.
BIN
build/components/jackal.TWL/obj/ARM7-TS.LTD/Release/main.o
Normal file
BIN
build/components/jackal.TWL/obj/ARM7-TS.LTD/Release/main.o
Normal file
Binary file not shown.
49
build/components/jackal.TWL/wram_regs/Makefile
Normal file
49
build/components/jackal.TWL/wram_regs/Makefile
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
#! make -f
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlFirm - tools - nandfirm-ds-launcher
|
||||||
|
# File: Makefile
|
||||||
|
#
|
||||||
|
# Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Log: $
|
||||||
|
# $NoKeywords: $
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
TWL_PROC = ARM7
|
||||||
|
|
||||||
|
SUBDIRS =
|
||||||
|
|
||||||
|
LINCLUDES = ../include
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
TARGET_BIN = wram_regs.rbin
|
||||||
|
|
||||||
|
SRCS = \
|
||||||
|
wram_regs.c \
|
||||||
|
|
||||||
|
#SRCDIR = # using default
|
||||||
|
#LCFILE = # using default
|
||||||
|
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
INSTALL_DIR = .
|
||||||
|
INSTALL_TARGETS = $(BINDIR)/$(TARGET_BIN)
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
do-build: $(TARGETS)
|
||||||
|
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
Binary file not shown.
@ -0,0 +1,3 @@
|
|||||||
|
obj/ARM7-TS.LTD/Release/wram_regs.o: wram_regs.c \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/cache/include/twl.h.16M.ARM7.CODE_ARM.CW.CW_FORCE_EXPORT_SUPPORT.LINK_ISTD.RELEASE.TS.TS_VERSION-400.TWL.TWLLTD.C.mch \
|
||||||
|
/cygdrive/d/Nitro_CwProjects/TWL_IPL_RED_cust/twlsdk/include/twl/mi.h
|
||||||
Binary file not shown.
121
build/components/jackal.TWL/wram_regs/wram_regs.c
Normal file
121
build/components/jackal.TWL/wram_regs/wram_regs.c
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlIPL - wram_regs
|
||||||
|
File: wram_regs.c
|
||||||
|
|
||||||
|
Copyright 2007 Nintendo. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Date:: $
|
||||||
|
$Rev$
|
||||||
|
$Author$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#include <twl/mi.h>
|
||||||
|
|
||||||
|
#define COMPONENT_WRAM_A_OFS (HW_WRAM_A_LTD - HW_WRAM_BASE)
|
||||||
|
#define COMPONENT_WRAM_A_OFS_END (COMPONENT_WRAM_A_OFS + HW_WRAM_A_SIZE)
|
||||||
|
#define COMPONENT_WRAM_B_OFS (COMPONENT_WRAM_A_OFS - HW_WRAM_B_SIZE)
|
||||||
|
#define COMPONENT_WRAM_B_OFS_END (COMPONENT_WRAM_A_OFS)
|
||||||
|
#define COMPONENT_WRAM_C_OFS (COMPONENT_WRAM_B_OFS - HW_WRAM_C_SIZE * 2)
|
||||||
|
#define COMPONENT_WRAM_C_OFS_END (COMPONENT_WRAM_B_OFS)
|
||||||
|
|
||||||
|
// MAP_TS_LTD for jackal
|
||||||
|
// WRAM-A Lock:ON, Master:ARM7, Enable:Slot0-3(256Kbytes), Address(7):0x037c0000-0x037fffff, Address(9):None
|
||||||
|
// WRAM-B Lock:ON, Master:ARM7, Enable:Slot5-7(256Kbytes), Address(7):0x03780000-0x037bffff, Address(9):None
|
||||||
|
// WRAM-C Lock:ON, Master:ARM7, Enable:Slot3-7(160Kbytes), Address(7):0x03758000-0x037bffff, Address(9):None
|
||||||
|
// WRAM-C Lock:OFF, Msster:ARM9, Enable:Slot0-2( 96Kbytes), Address(7):0x03700000-0x03717fff, Address(9):0x03700000-0x0317ffff
|
||||||
|
// WRAM-0 Master:ARM9, (16Kbytes), Address(7):0x03040000-0x03043fff, Address(9):0x03040000-0x03043fff
|
||||||
|
// WRAM-1 Master:ARM9, (16Kbytes), Address(7):0x03044000-0x03047fff, Address(9):0x03044000-0x03047fff
|
||||||
|
|
||||||
|
// MAP_TS_LTD original
|
||||||
|
// WRAM-A Lock:ON, Master:ARM7, Enable:Slot0-3(256Kbytes), Address(7):0x037c0000-0x037fffff, Address(9):None
|
||||||
|
// WRAM-B Lock:OFF, Master:ARM9, Enable:Slot0-7(256Kbytes), Address(7):0x03740000-0x037bffff, Address(9):0x03740000-0x037bffff
|
||||||
|
// WRAM-C Lock:OFF, Msster:ARM9, Enable:Slot0-7(256Kbytes), Address(7):0x03700000-0x0373ffff, Address(9):0x03700000-0x0373ffff
|
||||||
|
// WRAM-0 Master:ARM9, (16Kbytes), Address(7):0x03040000-0x03043fff, Address(9):0x03040000-0x03043fff
|
||||||
|
// WRAM-1 Master:ARM9, (16Kbytes), Address(7):0x03044000-0x03047fff, Address(9):0x03044000-0x03047fff
|
||||||
|
|
||||||
|
u32 HYENA_WramReg[0x30/sizeof(u32)] =
|
||||||
|
{
|
||||||
|
// ARM9
|
||||||
|
|
||||||
|
// WRAM-A
|
||||||
|
REG_MI_MBK1_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_192KB/2, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_128KB/2, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_64KB/2, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_0KB/2, MI_WRAM_ARM7
|
||||||
|
),
|
||||||
|
// WRAM-B
|
||||||
|
REG_MI_MBK2_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_96KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_64KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_32KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_0KB, MI_WRAM_ARM7
|
||||||
|
),
|
||||||
|
REG_MI_MBK3_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_224KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_192KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_160KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_128KB, MI_WRAM_ARM7
|
||||||
|
),
|
||||||
|
// WRAM-C
|
||||||
|
REG_MI_MBK4_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_96KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_64KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_32KB, MI_WRAM_ARM9,
|
||||||
|
TRUE, MI_WRAM_OFFSET_0KB, MI_WRAM_ARM9
|
||||||
|
),
|
||||||
|
REG_MI_MBK5_FIELD(
|
||||||
|
TRUE, MI_WRAM_OFFSET_224KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_192KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_160KB, MI_WRAM_ARM7,
|
||||||
|
TRUE, MI_WRAM_OFFSET_128KB, MI_WRAM_ARM7
|
||||||
|
),
|
||||||
|
|
||||||
|
REG_MI_MBK6_FIELD( NULL >> 16,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
NULL >> 16
|
||||||
|
),
|
||||||
|
REG_MI_MBK7_FIELD( NULL >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
NULL >> 15
|
||||||
|
),
|
||||||
|
REG_MI_MBK8_FIELD( ( COMPONENT_WRAM_C_OFS_END + 0x18000 ) >> 15,
|
||||||
|
MI_WRAM_IMAGE_128KB,
|
||||||
|
COMPONENT_WRAM_C_OFS >> 15
|
||||||
|
),
|
||||||
|
|
||||||
|
// ARM7
|
||||||
|
REG_MI_MBK6_FIELD( COMPONENT_WRAM_A_OFS_END >> 16,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
COMPONENT_WRAM_A_OFS >> 16
|
||||||
|
),
|
||||||
|
REG_MI_MBK7_FIELD( COMPONENT_WRAM_B_OFS_END >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
COMPONENT_WRAM_B_OFS >> 15
|
||||||
|
),
|
||||||
|
REG_MI_MBK8_FIELD( COMPONENT_WRAM_C_OFS_END >> 15,
|
||||||
|
MI_WRAM_IMAGE_256KB,
|
||||||
|
COMPONENT_WRAM_C_OFS >> 15
|
||||||
|
),
|
||||||
|
|
||||||
|
// WRAM Lock
|
||||||
|
(u32)(
|
||||||
|
(0x0F << 0) |
|
||||||
|
(0xFF << 8) |
|
||||||
|
(0xF8 << 16) |
|
||||||
|
|
||||||
|
// WRAM-0/1
|
||||||
|
(0 << 24) |
|
||||||
|
|
||||||
|
// VRAM-C
|
||||||
|
(7 << 26) |
|
||||||
|
// VRAM-D
|
||||||
|
(7 << 29)
|
||||||
|
),
|
||||||
|
};
|
||||||
|
|
||||||
BIN
build/components/jackal.TWL/wram_regs/wram_regs.rbin
Normal file
BIN
build/components/jackal.TWL/wram_regs/wram_regs.rbin
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user