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/trunk@2670 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
54b90113b2
commit
6c7b3db537
58
build/systemMenu_tools/SystemLogReader/ARM9.TWL/ARM9-TS.lsf
Normal file
58
build/systemMenu_tools/SystemLogReader/ARM9.TWL/ARM9-TS.lsf
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - include
|
||||||
|
# File: ARM9-TS.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$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# TWL LCF SPEC FILE
|
||||||
|
#
|
||||||
|
|
||||||
|
Static $(TARGET_NAME)
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_STATIC)
|
||||||
|
Object $(OBJS_STATIC)
|
||||||
|
Object $(NANDFIRM_OBJ) (.data)
|
||||||
|
Library $(LLIBS) $(GLIBS) $(CW_LIBS)
|
||||||
|
StackSize 4096 4096
|
||||||
|
}
|
||||||
|
|
||||||
|
Autoload ITCM
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_ITCM)
|
||||||
|
Object * (.itcm)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.text)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.rodata)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.init)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.ctor)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.sinit)
|
||||||
|
}
|
||||||
|
|
||||||
|
Autoload DTCM
|
||||||
|
{
|
||||||
|
Address $(ADDRESS_DTCM)
|
||||||
|
Object * (.dtcm)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.data)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.sdata)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.bss)
|
||||||
|
Object $(OBJS_AUTOLOAD) (.sbss)
|
||||||
|
}
|
||||||
|
|
||||||
|
Ltdautoload LTDMAIN
|
||||||
|
{
|
||||||
|
# NITRO/TWL 共有のオーバーレイが在る場合は、さらにその後ろに配置する必要があります。
|
||||||
|
After $(TARGET_NAME)
|
||||||
|
Object * (.ltdmain)
|
||||||
|
Object $(OBJS_LTDAUTOLOAD)
|
||||||
|
Library $(LLIBS_EX) $(GLIBS_EX)
|
||||||
|
}
|
||||||
72
build/systemMenu_tools/SystemLogReader/ARM9.TWL/Makefile
Normal file
72
build/systemMenu_tools/SystemLogReader/ARM9.TWL/Makefile
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
#/*---------------------------------------------------------------------------*
|
||||||
|
# Project: TwlIPL - tests - FatalErrorChecker
|
||||||
|
# File: makefile
|
||||||
|
#
|
||||||
|
# Copyright **** 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$
|
||||||
|
# *---------------------------------------------------------------------------*/
|
||||||
|
TARGET_FIRM = SYSTEMMENU
|
||||||
|
TARGET_PLATFORM = TWL
|
||||||
|
TWL_ARCHGEN = LIMITED
|
||||||
|
TWL_NANDAPP = TRUE
|
||||||
|
|
||||||
|
SUBDIRS =
|
||||||
|
|
||||||
|
SRCS = main.c \
|
||||||
|
keypad.c \
|
||||||
|
font.c \
|
||||||
|
screen.c \
|
||||||
|
../../../NandInitializerRed/ARM9.TWL/src/kami_pxi.c
|
||||||
|
|
||||||
|
TITLEID_LO = 0J0A
|
||||||
|
|
||||||
|
#ROM_HEADER_TEMPLATE = $(SYSMENU_ROM_HEADER_DIR)/$(TITLEID_LO)/rom_header_$(call toLower,$(TITLEID_LO)).template.sbin
|
||||||
|
#LIBSYSCALL = $(SYSMENU_ROM_HEADER_DIR)/$(TITLEID_LO)/libsyscall.a
|
||||||
|
|
||||||
|
MAKEROM_FLAGS += -F -DTITLEID_LO='$(TITLEID_LO)'
|
||||||
|
# -DROM_HEADER_TEMPLATE='$(call empath,$(ROM_HEADER_TEMPLATE))'
|
||||||
|
|
||||||
|
LCFILE_SPEC = ARM9-TS.lsf
|
||||||
|
|
||||||
|
LINCLUDES += $(MISC_DIR)/include \
|
||||||
|
../../NandInitializerRed/ARM9.TWL/include \
|
||||||
|
../../NandInitializerRed/common/include \
|
||||||
|
./include
|
||||||
|
|
||||||
|
ROM_SPEC = main.rsf
|
||||||
|
|
||||||
|
TARGET_BIN = SystemLogReader.srl
|
||||||
|
|
||||||
|
LLIBRARIES += liberrorlog$(TWL_LIBSUFFIX).a
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
ifeq ($(FIRM_USE_PRODUCT_KEYS),TRUE)
|
||||||
|
MAKELCF_FLAGS += -DNANDFIRM_OBJ=./nandfirm/nandfirm.prod.o
|
||||||
|
else
|
||||||
|
MAKELCF_FLAGS += -DNANDFIRM_OBJ=./nandfirm/nandfirm.dev.o
|
||||||
|
endif
|
||||||
|
|
||||||
|
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
|
||||||
|
DEFAULT_MAKEROM_ARM7_BASE = ../../NandInitializerRed/ARM7.TWL/bin/$(TWL_BUILDTYPE_ARM7)/armadillo
|
||||||
|
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
do-build: $(TARGETS)
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
@ -0,0 +1,43 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - OS - demos - consoleType-1
|
||||||
|
File: font.h
|
||||||
|
|
||||||
|
Copyright 2003-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.
|
||||||
|
|
||||||
|
$Log: main.c,v $
|
||||||
|
Revision 1.23 2006/01/18 02:11:29 kitase_hirotake
|
||||||
|
do-indent
|
||||||
|
|
||||||
|
$NoKeywords: $
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#ifndef FONT_H_
|
||||||
|
#define FONT_H_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#include <nitro/types.h>
|
||||||
|
|
||||||
|
extern const u32 d_CharData[8 * 256];
|
||||||
|
extern const u32 d_PaletteData[8 * 16];
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* FONT_H_ */
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
End of file
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
@ -0,0 +1,48 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - NandInitializer
|
||||||
|
File: keypad.h
|
||||||
|
|
||||||
|
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$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef KAMI_KEY_PAD_H_
|
||||||
|
#define KAMI_KEY_PAD_H_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#include <nitro.h>
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
ŠÖ<EFBFBD>”’è‹`
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
void kamiPadRead(void);
|
||||||
|
BOOL kamiPadIsTrigger(u16 key);
|
||||||
|
BOOL kamiPadIsRepeatTrigger(u16 key);
|
||||||
|
BOOL kamiPadIsPress(u16 key);
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* KAMI_KEY_PAD_H_ */
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
End of file
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
@ -0,0 +1,46 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - OS - demos - consoleType-1
|
||||||
|
File: screen.h
|
||||||
|
|
||||||
|
Copyright 2003-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.
|
||||||
|
|
||||||
|
$Log: main.c,v $
|
||||||
|
Revision 1.23 2006/01/18 02:11:29 kitase_hirotake
|
||||||
|
do-indent
|
||||||
|
|
||||||
|
$NoKeywords: $
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#ifndef SCREEN_H_
|
||||||
|
#define SCREEN_H_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
#include <nitro/types.h>
|
||||||
|
|
||||||
|
extern u16 gScreen[32 * 32];
|
||||||
|
|
||||||
|
#define CONSOLE_WHITE 15
|
||||||
|
void ClearScreen(void);
|
||||||
|
void PrintString(s16 x, s16 y, u8 palette, char *text, ...);
|
||||||
|
void ColorString(s16 x, s16 y, s16 length, u8 palette);
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* SCREEN_H_ */
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
End of file
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
245
build/systemMenu_tools/SystemLogReader/ARM9.TWL/main.rsf
Normal file
245
build/systemMenu_tools/SystemLogReader/ARM9.TWL/main.rsf
Normal file
@ -0,0 +1,245 @@
|
|||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - include
|
||||||
|
# File: ROM-TS.rsf
|
||||||
|
#
|
||||||
|
# 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$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# TWL ROM SPEC FILE
|
||||||
|
#
|
||||||
|
|
||||||
|
Arm9
|
||||||
|
{
|
||||||
|
Static "$(MAKEROM_ARM9:r).TWL.FLX.sbin$(COMPSUFFIX9)"
|
||||||
|
OverlayDefs "$(MAKEROM_ARM9:r)_defs.TWL.FLX.sbin$(COMPSUFFIX9)"
|
||||||
|
OverlayTable "$(MAKEROM_ARM9:r)_table.TWL.FLX.sbin$(COMPSUFFIX9)"
|
||||||
|
Elf "$(MAKEROM_ARM9:r).tef"
|
||||||
|
}
|
||||||
|
|
||||||
|
Arm7
|
||||||
|
{
|
||||||
|
Static "$(MAKEROM_ARM7_BASE:r).TWL.FLX.sbin$(COMPSUFFIX7)"
|
||||||
|
OverlayDefs "$(MAKEROM_ARM7_BASE:r)_defs.TWL.FLX.sbin$(COMPSUFFIX7)"
|
||||||
|
OverlayTable "$(MAKEROM_ARM7_BASE:r)_table.TWL.FLX.sbin$(COMPSUFFIX7)"
|
||||||
|
Elf "$(MAKEROM_ARM7_BASE:r).tef"
|
||||||
|
}
|
||||||
|
|
||||||
|
Arm9.Ltd
|
||||||
|
{
|
||||||
|
Static "$(MAKEROM_ARM9:r).TWL.LTD.sbin$(COMPSUFFIX9)"
|
||||||
|
OverlayDefs "$(MAKEROM_ARM9:r)_defs.TWL.LTD.sbin$(COMPSUFFIX9)"
|
||||||
|
OverlayTable "$(MAKEROM_ARM9:r)_table.TWL.LTD.sbin$(COMPSUFFIX9)"
|
||||||
|
}
|
||||||
|
|
||||||
|
Arm7.Ltd
|
||||||
|
{
|
||||||
|
Static "$(MAKEROM_ARM7_BASE:r).TWL.LTD.sbin$(COMPSUFFIX7)"
|
||||||
|
OverlayDefs "$(MAKEROM_ARM7_BASE:r)_defs.TWL.LTD.sbin$(COMPSUFFIX7)"
|
||||||
|
OverlayTable "$(MAKEROM_ARM7_BASE:r)_table.TWL.LTD.sbin$(COMPSUFFIX7)"
|
||||||
|
}
|
||||||
|
|
||||||
|
Property
|
||||||
|
{
|
||||||
|
###
|
||||||
|
### Settings for FinalROM
|
||||||
|
###
|
||||||
|
#### BEGIN
|
||||||
|
#
|
||||||
|
# TITLE NAME: Your product name within 12bytes
|
||||||
|
#
|
||||||
|
TitleName "SysLogReader"
|
||||||
|
|
||||||
|
#
|
||||||
|
# MAKER CODE: Your company ID# in 2 ascii words
|
||||||
|
# issued by NINTENDO
|
||||||
|
#
|
||||||
|
MakerCode 01
|
||||||
|
|
||||||
|
#
|
||||||
|
# REMASTER VERSION: Mastering version
|
||||||
|
#
|
||||||
|
#RomVersion 0
|
||||||
|
|
||||||
|
#
|
||||||
|
# ROM SPEED TYPE: [MROM/1TROM/UNDEFINED]
|
||||||
|
#
|
||||||
|
RomSpeedType $(MAKEROM_ROMSPEED)
|
||||||
|
|
||||||
|
#
|
||||||
|
# ROM SIZE: in bit [64M/128M/256M/512M/1G/2G]
|
||||||
|
#
|
||||||
|
#RomSize 128M
|
||||||
|
#RomSize 256M
|
||||||
|
|
||||||
|
#
|
||||||
|
# ROM PADDING: TRUE if finalrom
|
||||||
|
#
|
||||||
|
#RomFootPadding TRUE
|
||||||
|
|
||||||
|
#
|
||||||
|
# ROM HEADER TEMPLATE: Provided to every product by NINTENDO
|
||||||
|
#
|
||||||
|
# RomHeaderTemplate $(ROM_HEADER_TEMPLATE)
|
||||||
|
|
||||||
|
#
|
||||||
|
# BANNER FILE: generated from Banner Spec File
|
||||||
|
#
|
||||||
|
#BannerFile ./etc/myGameBanner.bnr
|
||||||
|
BannerFile ../banner/banner.bnr
|
||||||
|
|
||||||
|
#
|
||||||
|
# Permit LandingNormalJump: for TWL "ApplicationJump" function [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#PermitLandingNormalJump FALSE
|
||||||
|
|
||||||
|
#
|
||||||
|
# Permit LandingTmpJump: for TWL "ApplicationJump" function [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#PermitLandingTmpJump FALSE
|
||||||
|
|
||||||
|
###
|
||||||
|
### Setting for TWL
|
||||||
|
###
|
||||||
|
|
||||||
|
#
|
||||||
|
# ROM HEADER Ltd: Provided to every product by NINTENDO
|
||||||
|
#
|
||||||
|
RomHeaderLtd $(TWLSDK_ROOT)/tools/bin/rom_header.LTD.sbin
|
||||||
|
|
||||||
|
#
|
||||||
|
# Digest parameters:
|
||||||
|
#
|
||||||
|
DigestParam 1024 32
|
||||||
|
|
||||||
|
#
|
||||||
|
# WRAM mapping: [MAP_BB_HYB/MAP_BB_LTD/MAP_TS_HYB/MAP_TS_LTD
|
||||||
|
# MAP2_BB_HYB/MAP2_BB_LTD/MAP2_TS_HYB/MAP2_TS_LTD]
|
||||||
|
# don't have to edit
|
||||||
|
#
|
||||||
|
WramMapping MAP_TS_SCR
|
||||||
|
|
||||||
|
#
|
||||||
|
# CardRegion: card region [Japan/America/Europe/Australia/China/Korea]
|
||||||
|
#
|
||||||
|
CardRegion ALL
|
||||||
|
|
||||||
|
#
|
||||||
|
# CommonClientKey: launcher deliver common client Key [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#CommonClientKey FALSE
|
||||||
|
|
||||||
|
#
|
||||||
|
# HwAESSlotB: launcher deliver HW AES slot B setting [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#HwAESSlotB FALSE
|
||||||
|
|
||||||
|
#
|
||||||
|
# HwAESSlotC: launcher deliver HW AES slot C setting [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#HwAESSlotC FALSE
|
||||||
|
|
||||||
|
#
|
||||||
|
# SDCardAccess: sd card access control [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
SDCardAccess TRUE
|
||||||
|
|
||||||
|
#
|
||||||
|
# NANDAccess: NAND access control [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#NANDAccess FALSE
|
||||||
|
NANDAccess TRUE
|
||||||
|
|
||||||
|
#
|
||||||
|
# Codec mode:
|
||||||
|
# don't have to edit
|
||||||
|
#
|
||||||
|
CodecMode $(MAKEROM_CODEC_MODE)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Disp WiFiConnection Icon for Launcher [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#WiFiConnectionIcon FALSE
|
||||||
|
|
||||||
|
#
|
||||||
|
# Disp DSWireless Icon for Launcher [TRUE/FALSE]
|
||||||
|
#
|
||||||
|
#DSWirelessIcon FALSE
|
||||||
|
LockSCFG TRUE
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
#### END
|
||||||
|
}
|
||||||
|
|
||||||
|
AppendProperty
|
||||||
|
{
|
||||||
|
#
|
||||||
|
# Publisher : "Nintendo"
|
||||||
|
# don't have to edit
|
||||||
|
Publisher Nintendo
|
||||||
|
|
||||||
|
#
|
||||||
|
# Application type : [USER/SYSTEM]
|
||||||
|
# don't have to edit
|
||||||
|
AppType SYSTEM
|
||||||
|
|
||||||
|
#
|
||||||
|
# launch title on the launcher : [TRUE/FALSE]
|
||||||
|
# don't have to edit
|
||||||
|
Launch TRUE
|
||||||
|
|
||||||
|
#
|
||||||
|
# Boot allowed Media: [GameCard]
|
||||||
|
#
|
||||||
|
Media GameCard
|
||||||
|
|
||||||
|
#
|
||||||
|
# Data only title : [TRUE/FALSE]
|
||||||
|
# don't have to edit
|
||||||
|
#DataOnly FALSE
|
||||||
|
|
||||||
|
#
|
||||||
|
# Secure title : [TRUE/FALSE]
|
||||||
|
# don't have to edit
|
||||||
|
Secure TRUE
|
||||||
|
|
||||||
|
#
|
||||||
|
# GameCode for TitleID : Your GameCode in 4 ascii words
|
||||||
|
#
|
||||||
|
GameCode $(TITLEID_LO)
|
||||||
|
|
||||||
|
#
|
||||||
|
# Public save data size: [0K/16K/32K/64K/128K/256K/512K/1M/2M/4M]
|
||||||
|
#
|
||||||
|
#PublicSaveDataSize 32K
|
||||||
|
|
||||||
|
#
|
||||||
|
# Private save data size: [0K/16K/32K/64K/128K/256K/512K/1M/2M/4M]
|
||||||
|
#
|
||||||
|
#PrivateSaveDataSize 16K
|
||||||
|
|
||||||
|
#
|
||||||
|
# Enable SubBannerFile
|
||||||
|
#SubBannerFile TRUE
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
RomSpec
|
||||||
|
{
|
||||||
|
Offset 0x00000000
|
||||||
|
Segment ALL
|
||||||
|
HostRoot ../../../systemMenu_RED/data
|
||||||
|
Root /data
|
||||||
|
File NTR_IPL_font_m.NFTR
|
||||||
|
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
580
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/font.c
Normal file
580
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/font.c
Normal file
@ -0,0 +1,580 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - OS - demos - consoleType-1
|
||||||
|
File: font.c
|
||||||
|
|
||||||
|
Copyright 2003-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.
|
||||||
|
|
||||||
|
$Log: main.c,v $
|
||||||
|
Revision 1.23 2006/01/18 02:11:29 kitase_hirotake
|
||||||
|
do-indent
|
||||||
|
|
||||||
|
$NoKeywords: $
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#include "font.h"
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Character data
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
const u32 d_CharData[8 * 256] = {
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 0000h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x01010010, 0x01010010, 0x00000110, // 0001h
|
||||||
|
0x00011010, 0x01100010, 0x00000010, 0x00000010,
|
||||||
|
0x00000000, 0x01011010, 0x01010010, 0x00010010, // 0002h
|
||||||
|
0x00100010, 0x00100010, 0x00100001, 0x00100001,
|
||||||
|
0x00000000, 0x01010001, 0x01010001, 0x01111111, // 0003h
|
||||||
|
0x00000001, 0x00000001, 0x00000001, 0x01111110,
|
||||||
|
0x00000000, 0x01010000, 0x01111111, 0x00100000, // 0004h
|
||||||
|
0x00100000, 0x00010000, 0x00001000, 0x00000110,
|
||||||
|
0x00000000, 0x01010000, 0x01010100, 0x00001010, // 0005h
|
||||||
|
0x00010001, 0x00100001, 0x01000000, 0x00000000,
|
||||||
|
0x00000000, 0x01011000, 0x01011000, 0x01111111, // 0006h
|
||||||
|
0x00001000, 0x00101010, 0x01001010, 0x01001001,
|
||||||
|
0x00000000, 0x01010010, 0x01101111, 0x01010010, // 0007h
|
||||||
|
0x00010010, 0x00010010, 0x00010010, 0x00001001,
|
||||||
|
0x00000000, 0x01010010, 0x01011111, 0x00000100, // 0008h
|
||||||
|
0x00011111, 0x00001000, 0x00000001, 0x00011110,
|
||||||
|
0x00000000, 0x01010000, 0x01011000, 0x00000110, // 0009h
|
||||||
|
0x00000001, 0x00000110, 0x00011000, 0x00100000,
|
||||||
|
0x00000000, 0x01010000, 0x01111101, 0x00010001, // 000ah
|
||||||
|
0x00010001, 0x00010001, 0x00010001, 0x00001010,
|
||||||
|
0x00000000, 0x01010000, 0x01011110, 0x00100000, // 000bh
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x00111110,
|
||||||
|
0x00000000, 0x01010100, 0x01011111, 0x00001000, // 000ch
|
||||||
|
0x00010000, 0x00000001, 0x00000001, 0x00011110,
|
||||||
|
0x00000000, 0x01010001, 0x01010001, 0x00000001, // 000dh
|
||||||
|
0x01000001, 0x01000001, 0x00100010, 0x00011100,
|
||||||
|
0x00000000, 0x01010000, 0x01111111, 0x00011000, // 000eh
|
||||||
|
0x00010100, 0x00010100, 0x00011000, 0x00001100,
|
||||||
|
0x00000000, 0x01010010, 0x01111111, 0x00010010, // 000fh
|
||||||
|
0x00010010, 0x00000010, 0x00000010, 0x00111100,
|
||||||
|
0x00000000, 0x00001110, 0x01010100, 0x01010010, // 0010h
|
||||||
|
0x00111111, 0x00000100, 0x00000100, 0x00011000,
|
||||||
|
0x00000000, 0x01010100, 0x01011111, 0x00000100, // 0011h
|
||||||
|
0x01110100, 0x00000010, 0x00001010, 0x01110010,
|
||||||
|
0x00000000, 0x01010100, 0x01011111, 0x00000010, // 0012h
|
||||||
|
0x00011110, 0x00100001, 0x00100000, 0x00011110,
|
||||||
|
0x00000000, 0x01010000, 0x01011100, 0x00100011, // 0013h
|
||||||
|
0x01000000, 0x01000000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x01010000, 0x01111111, 0x00010000, // 0014h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00110000,
|
||||||
|
0x00000000, 0x01010010, 0x01010010, 0x00001100, // 0015h
|
||||||
|
0x00000010, 0x00000001, 0x00000001, 0x00111110,
|
||||||
|
0x00000000, 0x01010001, 0x01111101, 0x00010001, // 0016h
|
||||||
|
0x00010001, 0x00111001, 0x01010101, 0x00011001,
|
||||||
|
0x00000000, 0x01010100, 0x01010011, 0x01110010, // 0017h
|
||||||
|
0x00010001, 0x00010001, 0x00001010, 0x00000100,
|
||||||
|
0x00000000, 0x01011110, 0x01011000, 0x00000100, // 0018h
|
||||||
|
0x00101001, 0x01010001, 0x01010001, 0x00001100,
|
||||||
|
0x00000000, 0x01010000, 0x01011100, 0x00010010, // 0019h
|
||||||
|
0x00010010, 0x00100001, 0x01000000, 0x00000000,
|
||||||
|
0x00000000, 0x01011101, 0x01010001, 0x00111101, // 001ah
|
||||||
|
0x00010001, 0x00011001, 0x00110101, 0x00001001,
|
||||||
|
0x00000000, 0x01110001, 0x01011101, 0x00110001, // 001bh
|
||||||
|
0x00010001, 0x00111001, 0x01010101, 0x00011001,
|
||||||
|
0x00000000, 0x01110100, 0x01010011, 0x00110010, // 001ch
|
||||||
|
0x00010001, 0x00010001, 0x00001010, 0x00000100,
|
||||||
|
0x00000000, 0x01101110, 0x01011000, 0x00100100, // 001dh
|
||||||
|
0x00101001, 0x01010001, 0x01010001, 0x00001100,
|
||||||
|
0x00000000, 0x01110000, 0x01011100, 0x00110010, // 001eh
|
||||||
|
0x00010010, 0x00100001, 0x01000000, 0x00000000,
|
||||||
|
0x00000000, 0x01111101, 0x01010001, 0x00111101, // 001fh
|
||||||
|
0x00010001, 0x00011001, 0x00110101, 0x00001001,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 0020h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00001000, 0x00001000, 0x00001000, // 0021h
|
||||||
|
0x00001000, 0x00001000, 0x00000000, 0x00001000,
|
||||||
|
0x00000000, 0x01101100, 0x01001000, 0x00100100, // 0022h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00100100, 0x01111111, 0x00100100, // 0023h
|
||||||
|
0x00100100, 0x01111111, 0x00010010, 0x00010010,
|
||||||
|
0x00000000, 0x00001000, 0x01111110, 0x00001001, // 0024h
|
||||||
|
0x00111110, 0x01001000, 0x00111111, 0x00001000,
|
||||||
|
0x00000000, 0x01000010, 0x00100101, 0x00010010, // 0025h
|
||||||
|
0x00001000, 0x00100100, 0x01010010, 0x00100001,
|
||||||
|
0x00000000, 0x00001110, 0x00010001, 0x00001001, // 0026h
|
||||||
|
0x01000110, 0x00101001, 0x00110001, 0x01001110,
|
||||||
|
0x00000000, 0x00011000, 0x00010000, 0x00001000, // 0027h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x01110000, 0x00001000, 0x00000100, // 0028h
|
||||||
|
0x00000100, 0x00000100, 0x00001000, 0x01110000,
|
||||||
|
0x00000000, 0x00000111, 0x00001000, 0x00010000, // 0029h
|
||||||
|
0x00010000, 0x00010000, 0x00001000, 0x00000111,
|
||||||
|
0x00000000, 0x00001000, 0x01001001, 0x00101010, // 002ah
|
||||||
|
0x00011100, 0x00101010, 0x01001001, 0x00001000,
|
||||||
|
0x00000000, 0x00001000, 0x00001000, 0x00001000, // 002bh
|
||||||
|
0x01111111, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 002ch
|
||||||
|
0x00000000, 0x00001100, 0x00001000, 0x00000100,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 002dh
|
||||||
|
0x01111111, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 002eh
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00001100,
|
||||||
|
0x00000000, 0x01000000, 0x00100000, 0x00010000, // 002fh
|
||||||
|
0x00001000, 0x00000100, 0x00000010, 0x00000001,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x01000001, // 0030h
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x00011100, 0x00010000, 0x00010000, // 0031h
|
||||||
|
0x00010000, 0x00010000, 0x00010000, 0x00010000,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x01000000, // 0032h
|
||||||
|
0x00111110, 0x00000001, 0x00000001, 0x01111111,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x01000000, // 0033h
|
||||||
|
0x00111110, 0x01000000, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x00100000, 0x00110000, 0x00101000, // 0034h
|
||||||
|
0x00100100, 0x00100010, 0x01111111, 0x00100000,
|
||||||
|
0x00000000, 0x01111111, 0x00000001, 0x00111111, // 0035h
|
||||||
|
0x01000000, 0x01000000, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x00111110, 0x00000001, 0x00111111, // 0036h
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x01111111, 0x00100000, 0x00100000, // 0037h
|
||||||
|
0x00010000, 0x00010000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x01000001, // 0038h
|
||||||
|
0x00111110, 0x01000001, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x01000001, // 0039h
|
||||||
|
0x01000001, 0x01111110, 0x01000000, 0x00111110,
|
||||||
|
0x00000000, 0x00000000, 0x00001100, 0x00000000, // 003ah
|
||||||
|
0x00000000, 0x00000000, 0x00001100, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00001100, 0x00000000, // 003bh
|
||||||
|
0x00000000, 0x00001100, 0x00001000, 0x00000100,
|
||||||
|
0x00000000, 0x01100000, 0x00011000, 0x00000110, // 003ch
|
||||||
|
0x00000001, 0x00000110, 0x00011000, 0x01100000,
|
||||||
|
0x00000000, 0x00000000, 0x01111111, 0x00000000, // 003dh
|
||||||
|
0x00000000, 0x00000000, 0x01111111, 0x00000000,
|
||||||
|
0x00000000, 0x00000011, 0x00001100, 0x00110000, // 003eh
|
||||||
|
0x01000000, 0x00110000, 0x00001100, 0x00000011,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x01000001, // 003fh
|
||||||
|
0x00110000, 0x00001000, 0x00000000, 0x00001000,
|
||||||
|
0x00000000, 0x00011100, 0x00100010, 0x01001001, // 0040h
|
||||||
|
0x01010101, 0x01010101, 0x01010101, 0x00111010,
|
||||||
|
0x00000000, 0x00001000, 0x00010100, 0x00010100, // 0041h
|
||||||
|
0x00100010, 0x00111110, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x00111111, 0x01000001, 0x01000001, // 0042h
|
||||||
|
0x00111111, 0x01000001, 0x01000001, 0x00111111,
|
||||||
|
0x00000000, 0x00111100, 0x01000010, 0x00000001, // 0043h
|
||||||
|
0x00000001, 0x00000001, 0x01000010, 0x00111100,
|
||||||
|
0x00000000, 0x00011111, 0x00100001, 0x01000001, // 0044h
|
||||||
|
0x01000001, 0x01000001, 0x00100001, 0x00011111,
|
||||||
|
0x00000000, 0x01111111, 0x00000001, 0x00000001, // 0045h
|
||||||
|
0x01111111, 0x00000001, 0x00000001, 0x01111111,
|
||||||
|
0x00000000, 0x01111111, 0x00000001, 0x00000001, // 0046h
|
||||||
|
0x00111111, 0x00000001, 0x00000001, 0x00000001,
|
||||||
|
0x00000000, 0x00111100, 0x01000010, 0x00000001, // 0047h
|
||||||
|
0x01111001, 0x01000001, 0x01000010, 0x00111100,
|
||||||
|
0x00000000, 0x01000001, 0x01000001, 0x01000001, // 0048h
|
||||||
|
0x01111111, 0x01000001, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x00111110, 0x00001000, 0x00001000, // 0049h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00111110,
|
||||||
|
0x00000000, 0x01000000, 0x01000000, 0x01000000, // 004ah
|
||||||
|
0x01000001, 0x01000001, 0x00100010, 0x00011100,
|
||||||
|
0x00000000, 0x01100001, 0x00011001, 0x00000101, // 004bh
|
||||||
|
0x00000011, 0x00000101, 0x00011001, 0x01100001,
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x00000001, // 004ch
|
||||||
|
0x00000001, 0x00000001, 0x00000001, 0x01111111,
|
||||||
|
0x00000000, 0x01000001, 0x01100011, 0x01010101, // 004dh
|
||||||
|
0x01001001, 0x01000001, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x01000001, 0x01000011, 0x01000101, // 004eh
|
||||||
|
0x01001001, 0x01010001, 0x01100001, 0x01000001,
|
||||||
|
0x00000000, 0x00011100, 0x00100010, 0x01000001, // 004fh
|
||||||
|
0x01000001, 0x01000001, 0x00100010, 0x00011100,
|
||||||
|
0x00000000, 0x00111111, 0x01000001, 0x01000001, // 0050h
|
||||||
|
0x00111111, 0x00000001, 0x00000001, 0x00000001,
|
||||||
|
0x00000000, 0x00011100, 0x00100010, 0x01000001, // 0051h
|
||||||
|
0x01000001, 0x01011001, 0x00100010, 0x01011100,
|
||||||
|
0x00000000, 0x00111111, 0x01000001, 0x01000001, // 0052h
|
||||||
|
0x00111111, 0x01000001, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x00111110, 0x01000001, 0x00000001, // 0053h
|
||||||
|
0x00111110, 0x01000000, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x01111111, 0x00001000, 0x00001000, // 0054h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x01000001, 0x01000001, 0x01000001, // 0055h
|
||||||
|
0x01000001, 0x01000001, 0x00100010, 0x00011100,
|
||||||
|
0x00000000, 0x01000001, 0x01000001, 0x00100010, // 0056h
|
||||||
|
0x00100010, 0x00010100, 0x00010100, 0x00001000,
|
||||||
|
0x00000000, 0x01000001, 0x01000001, 0x01000001, // 0057h
|
||||||
|
0x01001001, 0x01010101, 0x01100011, 0x01000001,
|
||||||
|
0x00000000, 0x01000001, 0x00100010, 0x00010100, // 0058h
|
||||||
|
0x00001000, 0x00010100, 0x00100010, 0x01000001,
|
||||||
|
0x00000000, 0x01000001, 0x00100010, 0x00010100, // 0059h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x01111111, 0x00100000, 0x00010000, // 005ah
|
||||||
|
0x00001000, 0x00000100, 0x00000010, 0x01111111,
|
||||||
|
0x00000000, 0x01111100, 0x00000100, 0x00000100, // 005bh
|
||||||
|
0x00000100, 0x00000100, 0x00000100, 0x01111100,
|
||||||
|
0x00000000, 0x00100010, 0x00010100, 0x00111110, // 005ch
|
||||||
|
0x00001000, 0x00111110, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00011111, 0x00010000, 0x00010000, // 005dh
|
||||||
|
0x00010000, 0x00010000, 0x00010000, 0x00011111,
|
||||||
|
0x00000000, 0x00001000, 0x00010100, 0x00100010, // 005eh
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 005fh
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x01111111,
|
||||||
|
0x00000000, 0x00010000, 0x00001000, 0x00011000, // 0060h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00011110, 0x00100001, // 0061h
|
||||||
|
0x00111110, 0x00100001, 0x00100001, 0x01011110,
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x00111111, // 0062h
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x00111111,
|
||||||
|
0x00000000, 0x00000000, 0x00111100, 0x01000010, // 0063h
|
||||||
|
0x00000001, 0x00000001, 0x01000010, 0x00111100,
|
||||||
|
0x00000000, 0x01000000, 0x01000000, 0x01111110, // 0064h
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x01111110,
|
||||||
|
0x00000000, 0x00000000, 0x00111110, 0x01000001, // 0065h
|
||||||
|
0x01111111, 0x00000001, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x00110000, 0x00001000, 0x00001000, // 0066h
|
||||||
|
0x01111111, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00000000, 0x01111110, 0x01000001, // 0067h
|
||||||
|
0x01000001, 0x01111110, 0x01000000, 0x00111110,
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x00000001, // 0068h
|
||||||
|
0x00111111, 0x01000001, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x00001000, 0x00000000, 0x00001000, // 0069h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00100000, 0x00000000, 0x00100000, // 006ah
|
||||||
|
0x00100000, 0x00100001, 0x00100001, 0x00011110,
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x01100001, // 006bh
|
||||||
|
0x00011001, 0x00000111, 0x00011001, 0x01100001,
|
||||||
|
0x00000000, 0x00001000, 0x00001000, 0x00001000, // 006ch
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00000000, 0x00110111, 0x01001001, // 006dh
|
||||||
|
0x01001001, 0x01001001, 0x01001001, 0x01001001,
|
||||||
|
0x00000000, 0x00000000, 0x00111111, 0x01000001, // 006eh
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x00000000, 0x00011100, 0x00100010, // 006fh
|
||||||
|
0x01000001, 0x01000001, 0x00100010, 0x00011100,
|
||||||
|
0x00000000, 0x00000000, 0x00111101, 0x01000011, // 0070h
|
||||||
|
0x01000001, 0x01000011, 0x00111101, 0x00000001,
|
||||||
|
0x00000000, 0x00000000, 0x01011110, 0x01100001, // 0071h
|
||||||
|
0x01000001, 0x01100001, 0x01011110, 0x01000000,
|
||||||
|
0x00000000, 0x00000000, 0x00110001, 0x00001101, // 0072h
|
||||||
|
0x00000011, 0x00000001, 0x00000001, 0x00000001,
|
||||||
|
0x00000000, 0x00000000, 0x00111110, 0x01000001, // 0073h
|
||||||
|
0x00001110, 0x00110000, 0x01000001, 0x00111110,
|
||||||
|
0x00000000, 0x00000100, 0x00000100, 0x01111111, // 0074h
|
||||||
|
0x00000100, 0x00000100, 0x00000100, 0x01111000,
|
||||||
|
0x00000000, 0x00000000, 0x01000001, 0x01000001, // 0075h
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x01111110,
|
||||||
|
0x00000000, 0x00000000, 0x01000001, 0x01000001, // 0076h
|
||||||
|
0x00100010, 0x00100010, 0x00010100, 0x00001000,
|
||||||
|
0x00000000, 0x00000000, 0x01000001, 0x01000001, // 0077h
|
||||||
|
0x01001001, 0x00101010, 0x00101010, 0x00010100,
|
||||||
|
0x00000000, 0x00000000, 0x00100001, 0x00010010, // 0078h
|
||||||
|
0x00001100, 0x00001100, 0x00010010, 0x00100001,
|
||||||
|
0x00000000, 0x00000000, 0x01000001, 0x01000001, // 0079h
|
||||||
|
0x00100010, 0x00011100, 0x00001000, 0x00000110,
|
||||||
|
0x00000000, 0x00000000, 0x00111111, 0x00010000, // 007ah
|
||||||
|
0x00001000, 0x00000100, 0x00000010, 0x00111111,
|
||||||
|
0x00000000, 0x00001000, 0x00011110, 0x01100100, // 007bh
|
||||||
|
0x00011000, 0x00100100, 0x00000100, 0x01111000,
|
||||||
|
0x00000000, 0x00000000, 0x00011110, 0x00000100, // 007ch
|
||||||
|
0x00011110, 0x00110101, 0x00101101, 0x00010010,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00010001, // 007dh
|
||||||
|
0x00100001, 0x00100001, 0x00000001, 0x00000010,
|
||||||
|
0x00000000, 0x00000000, 0x00011100, 0x00000000, // 007eh
|
||||||
|
0x00011110, 0x00100000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x00000000, 0x00011100, 0x00000000, // 007fh
|
||||||
|
0x00111110, 0x00010000, 0x00001100, 0x00110010,
|
||||||
|
0x00000000, 0x00000000, 0x00000100, 0x00101111, // 0080h
|
||||||
|
0x01000100, 0x00011110, 0x00100101, 0x00010110,
|
||||||
|
0x00000000, 0x00000000, 0x00001010, 0x00011110, // 0081h
|
||||||
|
0x00101011, 0x00100010, 0x00010100, 0x00000100,
|
||||||
|
0x00000000, 0x00000000, 0x00001000, 0x00011101, // 0082h
|
||||||
|
0x00101011, 0x00101001, 0x00011001, 0x00000100,
|
||||||
|
0x00000000, 0x00000000, 0x00001000, 0x00111000, // 0083h
|
||||||
|
0x00001000, 0x00011110, 0x00101001, 0x00000110,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00011100, // 0084h
|
||||||
|
0x00100011, 0x00100000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x00000110, 0x01001001, 0x00110000, // 0085h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000100, 0x00111111, 0x00000100, // 0086h
|
||||||
|
0x00111110, 0x01010101, 0x01001101, 0x00100110,
|
||||||
|
0x00000000, 0x00000000, 0x00100001, 0x01000001, // 0087h
|
||||||
|
0x01000001, 0x01000001, 0x00000001, 0x00000010,
|
||||||
|
0x00000000, 0x00111100, 0x00000000, 0x00111110, // 0088h
|
||||||
|
0x01000000, 0x01000000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x00011100, 0x00000000, 0x00111110, // 0089h
|
||||||
|
0x00010000, 0x00001000, 0x00010100, 0x01100010,
|
||||||
|
0x00000000, 0x00100100, 0x01011111, 0x00000100, // 008ah
|
||||||
|
0x00111110, 0x01000101, 0x01000101, 0x00100010,
|
||||||
|
0x00000000, 0x00100010, 0x01001111, 0x01010010, // 008bh
|
||||||
|
0x01010010, 0x00010010, 0x00010010, 0x00001001,
|
||||||
|
0x00000000, 0x00000100, 0x00111110, 0x00001000, // 008ch
|
||||||
|
0x00111110, 0x00010000, 0x00000010, 0x00111100,
|
||||||
|
0x00000000, 0x00100000, 0x00011000, 0x00000110, // 008dh
|
||||||
|
0x00000001, 0x00000110, 0x00011000, 0x00100000,
|
||||||
|
0x00000000, 0x00100000, 0x01111101, 0x00100001, // 008eh
|
||||||
|
0x00100001, 0x00100001, 0x00100001, 0x00010010,
|
||||||
|
0x00000000, 0x00011110, 0x00100000, 0x00000000, // 008fh
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x00111110,
|
||||||
|
0x00000000, 0x00001000, 0x01111111, 0x00010000, // 0090h
|
||||||
|
0x00100000, 0x00000010, 0x00000010, 0x00111100,
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x00000001, // 0091h
|
||||||
|
0x01000001, 0x01000001, 0x00100010, 0x00011100,
|
||||||
|
0x00000000, 0x00010000, 0x01111111, 0x00011000, // 0092h
|
||||||
|
0x00010100, 0x00010100, 0x00011000, 0x00001100,
|
||||||
|
0x00000000, 0x00100010, 0x01111111, 0x00100010, // 0093h
|
||||||
|
0x00100010, 0x00000010, 0x00000010, 0x01111100,
|
||||||
|
0x00000000, 0x00111100, 0x00010000, 0x00001100, // 0094h
|
||||||
|
0x01111111, 0x00001000, 0x00001000, 0x00110000,
|
||||||
|
0x00000000, 0x00000100, 0x00011111, 0x00000100, // 0095h
|
||||||
|
0x01110100, 0x00000010, 0x00001010, 0x01110010,
|
||||||
|
0x00000000, 0x00001000, 0x01111111, 0x00000100, // 0096h
|
||||||
|
0x00111100, 0x01000010, 0x01000000, 0x00111100,
|
||||||
|
0x00000000, 0x00000000, 0x00011100, 0x00100011, // 0097h
|
||||||
|
0x01000000, 0x01000000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x01111111, 0x00010000, 0x00001000, // 0098h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00110000,
|
||||||
|
0x00000000, 0x00000010, 0x00110010, 0x00001100, // 0099h
|
||||||
|
0x00000010, 0x00000001, 0x00000001, 0x00111110,
|
||||||
|
0x00000000, 0x00100100, 0x01001111, 0x01000010, // 009ah
|
||||||
|
0x00010001, 0x00111100, 0x00010010, 0x00001100,
|
||||||
|
0x00000000, 0x00000010, 0x01111010, 0x01000010, // 009bh
|
||||||
|
0x00000010, 0x00000010, 0x00001010, 0x01110010,
|
||||||
|
0x00000000, 0x00100010, 0x00111110, 0x01010010, // 009ch
|
||||||
|
0x01001011, 0x01101101, 0x01010101, 0x00110010,
|
||||||
|
0x00000000, 0x00110010, 0x01001011, 0x01000110, // 009dh
|
||||||
|
0x01000110, 0x01110010, 0x01001011, 0x00110010,
|
||||||
|
0x00000000, 0x00011100, 0x00101010, 0x01001001, // 009eh
|
||||||
|
0x01001001, 0x01000101, 0x01000101, 0x00110010,
|
||||||
|
0x00000000, 0x00100001, 0x01111101, 0x00100001, // 009fh
|
||||||
|
0x00100001, 0x00111001, 0x01100101, 0x00011001,
|
||||||
|
0x00000000, 0x00000100, 0x00100011, 0x01100010, // 00a0h
|
||||||
|
0x00100001, 0x00100001, 0x00010010, 0x00001100,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 00a1h
|
||||||
|
0x00000000, 0x00000100, 0x00001010, 0x00000100,
|
||||||
|
0x00000000, 0x01110000, 0x00010000, 0x00010000, // 00a2h
|
||||||
|
0x00010000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 00a3h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00001110,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 00a4h
|
||||||
|
0x00000000, 0x00000010, 0x00000100, 0x00000100,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00011000, // 00a5h
|
||||||
|
0x00011000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x01111111, 0x01000000, 0x01111111, // 00a6h
|
||||||
|
0x01000000, 0x01000000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x00000000, 0x00111111, 0x00100000, // 00a7h
|
||||||
|
0x00010100, 0x00001100, 0x00000100, 0x00000010,
|
||||||
|
0x00000000, 0x00000000, 0x00100000, 0x00100000, // 00a8h
|
||||||
|
0x00010000, 0x00001111, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x00000000, 0x00000100, 0x00111111, // 00a9h
|
||||||
|
0x00100001, 0x00100000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00111110, // 00aah
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x01111111,
|
||||||
|
0x00000000, 0x00000000, 0x00010000, 0x00111111, // 00abh
|
||||||
|
0x00011000, 0x00010100, 0x00010010, 0x00011001,
|
||||||
|
0x00000000, 0x00000000, 0x00000010, 0x00111111, // 00ach
|
||||||
|
0x00100010, 0x00010010, 0x00000100, 0x00000100,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00111110, // 00adh
|
||||||
|
0x00100000, 0x00100000, 0x00100000, 0x01111111,
|
||||||
|
0x00000000, 0x00000000, 0x00111110, 0x00100000, // 00aeh
|
||||||
|
0x00111110, 0x00100000, 0x00100000, 0x00111110,
|
||||||
|
0x00000000, 0x00000000, 0x00100101, 0x00101010, // 00afh
|
||||||
|
0x00101010, 0x00100000, 0x00010000, 0x00001110,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 00b0h
|
||||||
|
0x01111111, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x01111111, 0x01000000, 0x00101000, // 00b1h
|
||||||
|
0x00011000, 0x00001000, 0x00001000, 0x00000100,
|
||||||
|
0x00000000, 0x01000000, 0x00100000, 0x00011000, // 00b2h
|
||||||
|
0x00010111, 0x00010000, 0x00010000, 0x00010000,
|
||||||
|
0x00000000, 0x00001000, 0x01111111, 0x01000001, // 00b3h
|
||||||
|
0x01000001, 0x01000000, 0x00100000, 0x00011000,
|
||||||
|
0x00000000, 0x00000000, 0x00111110, 0x00001000, // 00b4h
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x01111111,
|
||||||
|
0x00000000, 0x00100000, 0x01111111, 0x00110000, // 00b5h
|
||||||
|
0x00101000, 0x00100100, 0x00100010, 0x00110001,
|
||||||
|
0x00000000, 0x00000100, 0x01111111, 0x01000100, // 00b6h
|
||||||
|
0x01000100, 0x01000100, 0x01000010, 0x00100001,
|
||||||
|
0x00000000, 0x00000100, 0x00111111, 0x00001000, // 00b7h
|
||||||
|
0x01111111, 0x00010000, 0x00010000, 0x00010000,
|
||||||
|
0x00000000, 0x01111100, 0x01000100, 0x01000100, // 00b8h
|
||||||
|
0x01000010, 0x01000000, 0x00100000, 0x00011000,
|
||||||
|
0x00000000, 0x00000010, 0x01111110, 0x00100010, // 00b9h
|
||||||
|
0x00100001, 0x00100000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x01111110, 0x01000000, 0x01000000, // 00bah
|
||||||
|
0x01000000, 0x01000000, 0x01000000, 0x01111110,
|
||||||
|
0x00000000, 0x00100010, 0x01111111, 0x00100010, // 00bbh
|
||||||
|
0x00100010, 0x00100000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x00000011, 0x00000100, 0x01000011, // 00bch
|
||||||
|
0x01000100, 0x00100000, 0x00011000, 0x00000111,
|
||||||
|
0x00000000, 0x01111111, 0x01000000, 0x00100000, // 00bdh
|
||||||
|
0x00010000, 0x00011000, 0x00100100, 0x01000011,
|
||||||
|
0x00000000, 0x00000010, 0x01111111, 0x01000010, // 00beh
|
||||||
|
0x00100010, 0x00000010, 0x00000010, 0x01111100,
|
||||||
|
0x00000000, 0x01000001, 0x01000010, 0x01000000, // 00bfh
|
||||||
|
0x00100000, 0x00100000, 0x00011000, 0x00000110,
|
||||||
|
0x00000000, 0x01111110, 0x01000010, 0x01001110, // 00c0h
|
||||||
|
0x01110001, 0x01000000, 0x00100000, 0x00011000,
|
||||||
|
0x00000000, 0x01100000, 0x00011110, 0x00010000, // 00c1h
|
||||||
|
0x01111111, 0x00010000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x01000101, 0x01001010, 0x01001010, // 00c2h
|
||||||
|
0x01000000, 0x00100000, 0x00010000, 0x00001110,
|
||||||
|
0x00000000, 0x00111110, 0x00000000, 0x01111111, // 00c3h
|
||||||
|
0x00010000, 0x00010000, 0x00001000, 0x00000110,
|
||||||
|
0x00000000, 0x00000010, 0x00000010, 0x00000110, // 00c4h
|
||||||
|
0x00011010, 0x01100010, 0x00000010, 0x00000010,
|
||||||
|
0x00000000, 0x00010000, 0x00010000, 0x01111111, // 00c5h
|
||||||
|
0x00010000, 0x00010000, 0x00001000, 0x00000110,
|
||||||
|
0x00000000, 0x00000000, 0x00111110, 0x00000000, // 00c6h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x01111111,
|
||||||
|
0x00000000, 0x01111110, 0x01000000, 0x01000100, // 00c7h
|
||||||
|
0x00101000, 0x00010000, 0x00101000, 0x01000110,
|
||||||
|
0x00000000, 0x00001000, 0x01111111, 0x00100000, // 00c8h
|
||||||
|
0x00010000, 0x00011100, 0x01101011, 0x00001000,
|
||||||
|
0x00000000, 0x01000000, 0x01000000, 0x01000000, // 00c9h
|
||||||
|
0x00100000, 0x00100000, 0x00011000, 0x00000111,
|
||||||
|
0x00000000, 0x00010010, 0x00100010, 0x00100010, // 00cah
|
||||||
|
0x01000010, 0x01000010, 0x01000001, 0x01000001,
|
||||||
|
0x00000000, 0x00000001, 0x00000001, 0x01111111, // 00cbh
|
||||||
|
0x00000001, 0x00000001, 0x00000001, 0x01111110,
|
||||||
|
0x00000000, 0x01111111, 0x01000000, 0x01000000, // 00cch
|
||||||
|
0x01000000, 0x00100000, 0x00010000, 0x00001110,
|
||||||
|
0x00000000, 0x00000000, 0x00000100, 0x00001010, // 00cdh
|
||||||
|
0x00010001, 0x00100001, 0x01000000, 0x00000000,
|
||||||
|
0x00000000, 0x00001000, 0x00001000, 0x01111111, // 00ceh
|
||||||
|
0x00001000, 0x00101010, 0x01001010, 0x01001001,
|
||||||
|
0x00000000, 0x01111111, 0x01000000, 0x01000000, // 00cfh
|
||||||
|
0x00100010, 0x00010100, 0x00001000, 0x00010000,
|
||||||
|
0x00000000, 0x00001110, 0x01110000, 0x00001110, // 00d0h
|
||||||
|
0x01110000, 0x00000110, 0x00011000, 0x01100000,
|
||||||
|
0x00000000, 0x00001000, 0x00001000, 0x00000100, // 00d1h
|
||||||
|
0x00000100, 0x00100010, 0x01000010, 0x01111111,
|
||||||
|
0x00000000, 0x01000000, 0x01000000, 0x00100100, // 00d2h
|
||||||
|
0x00101000, 0x00010000, 0x00101100, 0x01000011,
|
||||||
|
0x00000000, 0x01111111, 0x00000100, 0x01111111, // 00d3h
|
||||||
|
0x00000100, 0x00000100, 0x00000100, 0x01111000,
|
||||||
|
0x00000000, 0x00000010, 0x01111111, 0x01000010, // 00d4h
|
||||||
|
0x00100010, 0x00010100, 0x00000100, 0x00000100,
|
||||||
|
0x00000000, 0x00000000, 0x00111110, 0x00100000, // 00d5h
|
||||||
|
0x00100000, 0x00100000, 0x00100000, 0x01111111,
|
||||||
|
0x00000000, 0x01111110, 0x01000000, 0x01000000, // 00d6h
|
||||||
|
0x01111110, 0x01000000, 0x01000000, 0x01111110,
|
||||||
|
0x00000000, 0x00111110, 0x00000000, 0x01111111, // 00d7h
|
||||||
|
0x01000000, 0x01000000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x01000010, 0x01000010, 0x01000010, // 00d8h
|
||||||
|
0x01000010, 0x01000000, 0x00100000, 0x00011000,
|
||||||
|
0x00000000, 0x00001010, 0x00001010, 0x00001010, // 00d9h
|
||||||
|
0x01001010, 0x01001010, 0x00101010, 0x00011001,
|
||||||
|
0x00000000, 0x00000010, 0x00000010, 0x01000010, // 00dah
|
||||||
|
0x01000010, 0x00100010, 0x00010010, 0x00001110,
|
||||||
|
0x00000000, 0x01111111, 0x01000001, 0x01000001, // 00dbh
|
||||||
|
0x01000001, 0x01000001, 0x01000001, 0x01111111,
|
||||||
|
0x00000000, 0x01111111, 0x01000001, 0x01000001, // 00dch
|
||||||
|
0x01000000, 0x01000000, 0x00100000, 0x00011100,
|
||||||
|
0x00000000, 0x01000011, 0x01000100, 0x01000000, // 00ddh
|
||||||
|
0x01000000, 0x00100000, 0x00010000, 0x00001111,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 00deh
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // 00dfh
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00011110, 0x00001000, 0x00000100, // 00e0h
|
||||||
|
0x00101001, 0x01010001, 0x01010001, 0x00001100,
|
||||||
|
0x00000000, 0x00000000, 0x00001100, 0x00010010, // 00e1h
|
||||||
|
0x00010010, 0x00100001, 0x01000000, 0x00000000,
|
||||||
|
0x00000000, 0x01111101, 0x00100001, 0x01111101, // 00e2h
|
||||||
|
0x00100001, 0x00111001, 0x01100101, 0x00011001,
|
||||||
|
0x00000000, 0x00111100, 0x00010000, 0x00111100, // 00e3h
|
||||||
|
0x00010000, 0x00011100, 0x00110010, 0x00001100,
|
||||||
|
0x00000000, 0x00001110, 0x00101000, 0x00101000, // 00e4h
|
||||||
|
0x00111110, 0x01100101, 0x00100101, 0x00010010,
|
||||||
|
0x00000000, 0x00000100, 0x00101111, 0x01000100, // 00e5h
|
||||||
|
0x00000110, 0x01000101, 0x01000101, 0x00111110,
|
||||||
|
0x00000000, 0x00100010, 0x00100010, 0x00111110, // 00e6h
|
||||||
|
0x01010010, 0x01010101, 0x01001101, 0x00100110,
|
||||||
|
0x00000000, 0x00000100, 0x00011111, 0x00000010, // 00e7h
|
||||||
|
0x00011111, 0x01000010, 0x01000010, 0x00111100,
|
||||||
|
0x00000000, 0x00010010, 0x00111110, 0x01010011, // 00e8h
|
||||||
|
0x01000010, 0x00100100, 0x00000100, 0x00000100,
|
||||||
|
0x00000000, 0x00001000, 0x00111101, 0x01001011, // 00e9h
|
||||||
|
0x01001001, 0x01001001, 0x00111000, 0x00000100,
|
||||||
|
0x00000000, 0x00001000, 0x00111000, 0x00001000, // 00eah
|
||||||
|
0x00001000, 0x00011110, 0x00101001, 0x00000110,
|
||||||
|
0x00000000, 0x00011000, 0x00100000, 0x00000100, // 00ebh
|
||||||
|
0x00111010, 0x01000110, 0x01000000, 0x00111000,
|
||||||
|
0x00000000, 0x01000010, 0x01000010, 0x01000010, // 00ech
|
||||||
|
0x01000110, 0x01000000, 0x00100000, 0x00011000,
|
||||||
|
0x00000000, 0x00111110, 0x00010000, 0x00111100, // 00edh
|
||||||
|
0x01000011, 0x01001100, 0x01010010, 0x00111100,
|
||||||
|
0x00000000, 0x00100010, 0x00110011, 0x00101010, // 00eeh
|
||||||
|
0x00100110, 0x00100010, 0x00100011, 0x01000010,
|
||||||
|
0x00000000, 0x00111110, 0x00010000, 0x00111100, // 00efh
|
||||||
|
0x01000011, 0x01000000, 0x01000010, 0x00111100,
|
||||||
|
0x00000000, 0x00000010, 0x00111011, 0x01000110, // 00f0h
|
||||||
|
0x01000010, 0x01000011, 0x01000010, 0x00110010,
|
||||||
|
0x00000000, 0x00000100, 0x00000100, 0x00000010, // 00f1h
|
||||||
|
0x01000110, 0x01000101, 0x01000101, 0x00111001,
|
||||||
|
0x00000000, 0x01010100, 0x01111111, 0x00100100, // 00f2h
|
||||||
|
0x00100100, 0x00100100, 0x00100010, 0x00010001,
|
||||||
|
0x00000000, 0x01010100, 0x01011111, 0x00000100, // 00f3h
|
||||||
|
0x00111111, 0x00001000, 0x00001000, 0x00001000,
|
||||||
|
0x00000000, 0x01011110, 0x01100010, 0x00100010, // 00f4h
|
||||||
|
0x00100001, 0x00100000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x01010010, 0x01111110, 0x00100010, // 00f5h
|
||||||
|
0x00100001, 0x00100000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x01010000, 0x01111111, 0x00100000, // 00f6h
|
||||||
|
0x00100000, 0x00100000, 0x00100000, 0x00111111,
|
||||||
|
0x00000000, 0x01010010, 0x01010010, 0x00111111, // 00f7h
|
||||||
|
0x00010010, 0x00010000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x01010011, 0x01010100, 0x00100011, // 00f8h
|
||||||
|
0x00100100, 0x00010000, 0x00001000, 0x00000111,
|
||||||
|
0x00000000, 0x01010000, 0x01011111, 0x00010000, // 00f9h
|
||||||
|
0x00001000, 0x00001100, 0x00010010, 0x00100001,
|
||||||
|
0x00000000, 0x01010010, 0x01111111, 0x00100010, // 00fah
|
||||||
|
0x00010010, 0x00000010, 0x00000010, 0x00111100,
|
||||||
|
0x00000000, 0x01010001, 0x01010010, 0x00100000, // 00fbh
|
||||||
|
0x00100000, 0x00010000, 0x00001000, 0x00000110,
|
||||||
|
0x00000000, 0x01011110, 0x01010010, 0x00100110, // 00fch
|
||||||
|
0x00111001, 0x00100000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x01010000, 0x01011110, 0x00010000, // 00fdh
|
||||||
|
0x01111111, 0x00010000, 0x00010000, 0x00001100,
|
||||||
|
0x00000000, 0x00100101, 0x01001010, 0x00101010, // 00feh
|
||||||
|
0x00100000, 0x00010000, 0x00001000, 0x00000111,
|
||||||
|
0x00000000, 0x01011110, 0x01010000, 0x00111111, // 00ffh
|
||||||
|
0x00001000, 0x00001000, 0x00001000, 0x00000110
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Palette data
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
const u32 d_PaletteData[8 * 16] = {
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, // black
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x001f0000, 0x00000000, 0x00000000, 0x00000000, // red
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x03e00000, 0x00000000, 0x00000000, 0x00000000, // green
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x7c000000, 0x00000000, 0x00000000, 0x00000000, // blue
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x03ff0000, 0x00000000, 0x00000000, 0x00000000, // yellow
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x7c1f0000, 0x00000000, 0x00000000, 0x00000000, // purple
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x7fe00000, 0x00000000, 0x00000000, 0x00000000, // light blue
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00180000, 0x00000000, 0x00000000, 0x00000000, // dark red
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x03000000, 0x00000000, 0x00000000, 0x00000000, // dark green
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x60000000, 0x00000000, 0x00000000, 0x00000000, // dark blue
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x03180000, 0x00000000, 0x00000000, 0x00000000, // dark yellow
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x60180000, 0x00000000, 0x00000000, 0x00000000, // dark purple
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x63000000, 0x00000000, 0x00000000, 0x00000000, // dark light blue
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x56b50000, 0x00000000, 0x00000000, 0x00000000, // gray
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x2d6b0000, 0x00000000, 0x00000000, 0x00000000, // dark gray
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x7fff0000, 0x00000000, 0x00000000, 0x00000000, // white
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000
|
||||||
|
};
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
End of file
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
85
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/keypad.c
Normal file
85
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/keypad.c
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - NandInitializer
|
||||||
|
File: keypad.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.h>
|
||||||
|
#include "keypad.h"
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
’è<EFBFBD>”’è‹`
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#define KEY_REPEAT_TRIGGER_START 20
|
||||||
|
#define KEY_REPEAT_TRIGGER_TERM 5
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
“à•”•Ï<EFBFBD>”’è‹`
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
static u16 Cont;
|
||||||
|
static u16 Trg;
|
||||||
|
static u16 Release;
|
||||||
|
static u16 RepeatTrg;
|
||||||
|
static u8 key = 60;
|
||||||
|
|
||||||
|
static int repeat_counter;
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
“à•”ŠÖ<EFBFBD>”’è‹`
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void
|
||||||
|
kamiPadRead(void)
|
||||||
|
{
|
||||||
|
u16 ReadData;
|
||||||
|
|
||||||
|
ReadData = PAD_Read();
|
||||||
|
Trg = (u16)(ReadData & (ReadData ^ Cont));
|
||||||
|
Release = (u16)(Cont & (ReadData ^ Cont));
|
||||||
|
Cont = ReadData;
|
||||||
|
|
||||||
|
RepeatTrg = Trg;
|
||||||
|
if (++repeat_counter > (KEY_REPEAT_TRIGGER_START + KEY_REPEAT_TRIGGER_TERM))
|
||||||
|
{
|
||||||
|
repeat_counter = KEY_REPEAT_TRIGGER_START;
|
||||||
|
}
|
||||||
|
if (repeat_counter == KEY_REPEAT_TRIGGER_START)
|
||||||
|
{
|
||||||
|
RepeatTrg = ReadData;
|
||||||
|
}
|
||||||
|
if (!ReadData)
|
||||||
|
{
|
||||||
|
repeat_counter = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
kamiPadIsTrigger(u16 key)
|
||||||
|
{
|
||||||
|
return (Trg & key)? TRUE : FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
kamiPadIsRepeatTrigger(u16 key)
|
||||||
|
{
|
||||||
|
return (RepeatTrg & key)? TRUE : FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
kamiPadIsPress(u16 key)
|
||||||
|
{
|
||||||
|
return (Cont & key)? TRUE : FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
457
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/main.c
Normal file
457
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/main.c
Normal file
@ -0,0 +1,457 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlIPL - Tests - FatalErrorChecker
|
||||||
|
File: main.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.h>
|
||||||
|
#include <sysmenu/errorLog.h>
|
||||||
|
#include <kami_pxi.h>
|
||||||
|
#include "keypad.h"
|
||||||
|
#include "font.h"
|
||||||
|
#include "screen.h"
|
||||||
|
|
||||||
|
#define BUFSIZE 256
|
||||||
|
|
||||||
|
#define SCREEN_WIDTH 32
|
||||||
|
#define RESULT_LINE_OFFSET 6
|
||||||
|
|
||||||
|
#define DST_LOGFILE_PATH "sdmc:/sysmenu.log"
|
||||||
|
#define ERRORLOG_LOGFILE_PATH "nand:/sys/log/sysmenu.log"
|
||||||
|
|
||||||
|
#define NAND_BLOCK_BYTE 0x200
|
||||||
|
#define NAND_START_OFFSET 0x200
|
||||||
|
#define NANDFIRM_FILE_START_OFFSET 0x200
|
||||||
|
|
||||||
|
// nandfirm格納先のシンボル
|
||||||
|
extern void* nandfirm_begin;
|
||||||
|
extern void* nandfirm_end;
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
内部変数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static BOOL resetConsoleFlag;
|
||||||
|
static s16 lineoffset;
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
内部関数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void VBlankIntr(void);
|
||||||
|
static void InitAllocation(void);
|
||||||
|
static BOOL deleteLogfile( void );
|
||||||
|
static void control();
|
||||||
|
static void removeLC( char *dst, const char *src );
|
||||||
|
static BOOL copyLogToSD( void );
|
||||||
|
static void doProc();
|
||||||
|
static BOOL writebackFirm( void );
|
||||||
|
static int convertLF( char *dst, char *src );
|
||||||
|
static void drawMenu( void );
|
||||||
|
static void myInit(void);
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: TwlMain
|
||||||
|
|
||||||
|
Description: main
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void
|
||||||
|
TwlMain()
|
||||||
|
{
|
||||||
|
char tst[] = "\n\n\n\n\na";
|
||||||
|
u8 bootmode = 0x3;
|
||||||
|
// OS_InitのなかでCard_Initが呼ばれる前に、Boottypeを無理やりNANDにする
|
||||||
|
//MI_CpuMove( &bootmode, (void*) 0x02fffc40, 1 );
|
||||||
|
|
||||||
|
myInit();
|
||||||
|
KamiPxiInit();
|
||||||
|
CARD_Enable(TRUE);
|
||||||
|
// FS_Initの後の方が良い模様
|
||||||
|
InitAllocation();
|
||||||
|
|
||||||
|
/* always preload FS table for faster directory access. */
|
||||||
|
{
|
||||||
|
u32 need_size = FS_GetTableSize();
|
||||||
|
void *p_table = OS_Alloc(need_size);
|
||||||
|
SDK_ASSERT(p_table != NULL);
|
||||||
|
(void)FS_LoadTable(p_table, need_size);
|
||||||
|
}
|
||||||
|
|
||||||
|
ERRORLOG_Init( OS_AllocFromMain, OS_FreeToMain );
|
||||||
|
|
||||||
|
resetConsoleFlag = TRUE;
|
||||||
|
OS_TPrintf( "boottype : %d\n", OS_GetBootType() );
|
||||||
|
|
||||||
|
drawMenu();
|
||||||
|
doProc();
|
||||||
|
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "process finished.");
|
||||||
|
OS_WaitVBlankIntr();
|
||||||
|
OS_Terminate();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void control()
|
||||||
|
{
|
||||||
|
if( kamiPadIsTrigger( PAD_BUTTON_A ) )
|
||||||
|
{
|
||||||
|
drawMenu();
|
||||||
|
doProc();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 一連の自動化作業を実行する
|
||||||
|
static void doProc()
|
||||||
|
{
|
||||||
|
// 空行挿入
|
||||||
|
lineoffset++;
|
||||||
|
|
||||||
|
PrintString(0, lineoffset++, CONSOLE_WHITE, "Copying logfile ...") ;
|
||||||
|
|
||||||
|
if( copyLogToSD() )
|
||||||
|
{
|
||||||
|
// コピー成功時にだけログファイルの削除を行う
|
||||||
|
deleteLogfile();
|
||||||
|
}
|
||||||
|
|
||||||
|
writebackFirm();
|
||||||
|
}
|
||||||
|
// srcから改行を取り除いてdstに引き渡す
|
||||||
|
static void removeLC( char *dst, const char *src )
|
||||||
|
{
|
||||||
|
char *idx;
|
||||||
|
STD_StrCpy( dst, src );
|
||||||
|
|
||||||
|
while( ( idx = STD_StrChr( dst, '\n' )) != NULL )
|
||||||
|
{
|
||||||
|
*idx = ' ';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static BOOL deleteLogfile( void )
|
||||||
|
{
|
||||||
|
|
||||||
|
if( !FS_DeleteFile( ERRORLOG_LOGFILE_PATH ) )
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Delete Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_DeleteFile" );
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE,
|
||||||
|
"errorCode : %d", FS_GetArchiveResultCode( ERRORLOG_LOGFILE_PATH ) );
|
||||||
|
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Delete Succeeded.") ;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
static BOOL copyLogToSD( void )
|
||||||
|
{
|
||||||
|
FSFile src, dst;
|
||||||
|
// 最悪で読み込んだサイズの倍の文字列になる可能性がある
|
||||||
|
char buf[BUFSIZE + 1];
|
||||||
|
char winbuf[BUFSIZE*2 +1];
|
||||||
|
s32 readSize;
|
||||||
|
s32 writeSize = 0;
|
||||||
|
|
||||||
|
buf[256] = '\0';
|
||||||
|
FS_InitFile( &dst );
|
||||||
|
|
||||||
|
// まずファイルを削除
|
||||||
|
FS_DeleteFile( DST_LOGFILE_PATH );
|
||||||
|
|
||||||
|
if( ! FS_CreateFile( DST_LOGFILE_PATH, FS_PERMIT_R | FS_PERMIT_W ) )
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_CreateFile" );
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "errorCode : %d", FS_GetArchiveResultCode( DST_LOGFILE_PATH ) );
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ファイル作成に成功
|
||||||
|
if( !FS_OpenFileEx( &dst , DST_LOGFILE_PATH, FS_FILEMODE_RW ))
|
||||||
|
{
|
||||||
|
// 作成したファイルをopenできなかった場合
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_OpenFile / FS_SetFileLength" );
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "errorCode : %d", FS_GetArchiveResultCode( DST_LOGFILE_PATH ) );
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// サイズ変更が終わったら、念のためファイルサイズ変更不可なRWLモードで開きなおしておく
|
||||||
|
// →ファイルサイズ可変長に変更
|
||||||
|
FS_CloseFile( &dst );
|
||||||
|
|
||||||
|
if( !FS_OpenFileEx( &dst, DST_LOGFILE_PATH, FS_FILEMODE_RW ) )
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_OpenFile dst" );
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "errorCode : %d", FS_GetArchiveResultCode( DST_LOGFILE_PATH ) );
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !FS_OpenFileEx( &src, ERRORLOG_LOGFILE_PATH, FS_FILEMODE_R ) )
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_OpenFile src" );
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "errorCode : %d", FS_GetArchiveResultCode( DST_LOGFILE_PATH ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !FS_SeekFileToBegin( &src ))
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_SeekFileToBegin" );
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
while( ( readSize = FS_ReadFile( &src, buf, 256 )) > 0 )
|
||||||
|
{
|
||||||
|
int size;
|
||||||
|
// 改行文字を置換しておく
|
||||||
|
size = convertLF( winbuf, buf );
|
||||||
|
|
||||||
|
if( FS_WriteFile( &dst, winbuf, size ) < 0 )
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_WriteFile" );
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if( !FS_CloseFile( &src ))
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed!") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_CloseFile(src)" );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if( !FS_CloseFile( &dst ))
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Failed.") ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "func: FS_CloseFile(dst)" );
|
||||||
|
}
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Copy Succeeded.") ;
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// ログファイルの書き出しが終わった後に、ROMの指定された位置に格納されたnandfirmを本体に書き戻す
|
||||||
|
static BOOL writebackFirm( void )
|
||||||
|
{
|
||||||
|
u8 *pBuf;
|
||||||
|
u32 allocSize;
|
||||||
|
u32 fileSize = (u32)(&nandfirm_end) - (u32)(&nandfirm_begin);
|
||||||
|
u32 nandfirmSize = fileSize - NANDFIRM_FILE_START_OFFSET;
|
||||||
|
u32 writeBlock;
|
||||||
|
|
||||||
|
if( 800*1024 < fileSize )
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "too large file size.") ;
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 書き込みサイズは512バイトのブロック単位なのでそれに配慮
|
||||||
|
allocSize = MATH_ROUNDUP(fileSize, 512);
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "fileBegin: %08x", &nandfirm_begin) ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "fileEnd: %08x", &nandfirm_end) ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "fileSize: %08x", fileSize) ;
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "allocsize: %08x", allocSize) ;
|
||||||
|
pBuf = OS_Alloc(allocSize);
|
||||||
|
if(pBuf == NULL)
|
||||||
|
{
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Alloc failed.") ;
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// データの読み出し
|
||||||
|
MI_CpuClear8(pBuf, allocSize);
|
||||||
|
DC_FlushRange(pBuf, allocSize);
|
||||||
|
MI_CpuCopy8( &nandfirm_begin, pBuf, fileSize);
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "read firm succeeded.") ;
|
||||||
|
//CARD_ReadRom( MI_DMA_NOT_USE, nandfirm_begin, pBuf, fileSize);
|
||||||
|
|
||||||
|
// データの書き出し
|
||||||
|
writeBlock = nandfirmSize/NAND_BLOCK_BYTE + (nandfirmSize % NAND_BLOCK_BYTE != 0);
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "Blocksize : %08x", writeBlock) ;
|
||||||
|
DC_FlushRange(pBuf, allocSize);
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "nandfirm writing...") ;
|
||||||
|
kamiNandWrite( NAND_START_OFFSET/NAND_BLOCK_BYTE, pBuf+NANDFIRM_FILE_START_OFFSET, writeBlock);
|
||||||
|
// まだ書き込まないで出力だけする
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "write firm succeeded.") ;
|
||||||
|
OS_Free(pBuf);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
static void drawMenu( void )
|
||||||
|
{
|
||||||
|
lineoffset = 0;
|
||||||
|
ClearScreen();
|
||||||
|
/* PrintString( 0, lineoffset++, CONSOLE_WHITE, "SystemLog Reader");
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "+-----------------------------+");
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "l A Button : Copy log to SD l");
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "+-----------------------------+");
|
||||||
|
*/
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "+--------------------+");
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "l System Log Reader l");
|
||||||
|
PrintString( 0, lineoffset++, CONSOLE_WHITE, "+--------------------+");
|
||||||
|
lineoffset++;
|
||||||
|
}
|
||||||
|
|
||||||
|
// LFをLFCRに置換して書き戻す
|
||||||
|
// dstは最悪時でsrcの二倍の領域が必要
|
||||||
|
int convertLF( char *dst, char *src )
|
||||||
|
{
|
||||||
|
char *head = src, *tail;
|
||||||
|
int writesize = 0;
|
||||||
|
|
||||||
|
tail = STD_StrChr( src, '\n' );
|
||||||
|
|
||||||
|
while( tail != NULL )
|
||||||
|
{
|
||||||
|
*tail = '\0';
|
||||||
|
writesize += STD_StrLCpy( &dst[writesize], head,BUFSIZE );
|
||||||
|
dst[writesize] = 0x0d;
|
||||||
|
dst[writesize+1] = 0x0a;
|
||||||
|
writesize += 2;
|
||||||
|
|
||||||
|
head = tail + 1;
|
||||||
|
tail = STD_StrChr( head, '\n' );
|
||||||
|
}
|
||||||
|
|
||||||
|
writesize += STD_StrLCpy( &dst[writesize], head, BUFSIZE );
|
||||||
|
|
||||||
|
return writesize;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: VBlankIntr
|
||||||
|
|
||||||
|
Description: VBlank割り込み処理
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void
|
||||||
|
VBlankIntr(void)
|
||||||
|
{
|
||||||
|
//---- upload pseudo screen to VRAM
|
||||||
|
DC_FlushRange(gScreen, sizeof(gScreen));
|
||||||
|
GX_LoadBG0Scr(gScreen, 0, sizeof(gScreen));
|
||||||
|
GXS_LoadBG0Scr(gScreen, 0, sizeof(gScreen));
|
||||||
|
|
||||||
|
|
||||||
|
OS_SetIrqCheckFlag(OS_IE_V_BLANK); // checking VBlank interrupt
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: InitAllocation
|
||||||
|
|
||||||
|
Description: ヒープの初期化.
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void InitAllocation(void)
|
||||||
|
{
|
||||||
|
void *tmp;
|
||||||
|
OSHeapHandle hh;
|
||||||
|
|
||||||
|
/* アリーナの初期化 */
|
||||||
|
tmp = OS_InitAlloc(OS_ARENA_MAIN, OS_GetMainArenaLo(), OS_GetMainArenaHi(), 1);
|
||||||
|
OS_SetArenaLo(OS_ARENA_MAIN, tmp);
|
||||||
|
hh = OS_CreateHeap(OS_ARENA_MAIN, OS_GetMainArenaLo(), OS_GetMainArenaHi());
|
||||||
|
if (hh < 0)
|
||||||
|
OS_Panic("ARM9: Fail to create heap...\n");
|
||||||
|
hh = OS_SetCurrentHeap(OS_ARENA_MAIN, hh);
|
||||||
|
}
|
||||||
|
|
||||||
|
void myInit(void)
|
||||||
|
{
|
||||||
|
//---- init
|
||||||
|
OS_Init();
|
||||||
|
OS_InitTick();
|
||||||
|
OS_InitAlarm();
|
||||||
|
FX_Init();
|
||||||
|
GX_Init();
|
||||||
|
GX_DispOff();
|
||||||
|
GXS_DispOff();
|
||||||
|
|
||||||
|
//---- init displaying
|
||||||
|
GX_SetBankForLCDC(GX_VRAM_LCDC_ALL);
|
||||||
|
MI_CpuClearFast((void *)HW_LCDC_VRAM, HW_LCDC_VRAM_SIZE);
|
||||||
|
(void)GX_DisableBankForLCDC();
|
||||||
|
|
||||||
|
MI_CpuFillFast((void *)HW_OAM, 192, HW_OAM_SIZE);
|
||||||
|
MI_CpuClearFast((void *)HW_PLTT, HW_PLTT_SIZE);
|
||||||
|
MI_CpuFillFast((void *)HW_DB_OAM, 192, HW_DB_OAM_SIZE);
|
||||||
|
MI_CpuClearFast((void *)HW_DB_PLTT, HW_DB_PLTT_SIZE);
|
||||||
|
|
||||||
|
//---- setting 2D for top screen
|
||||||
|
GX_SetBankForBG(GX_VRAM_BG_128_A);
|
||||||
|
|
||||||
|
G2_SetBG0Control(GX_BG_SCRSIZE_TEXT_256x256,
|
||||||
|
GX_BG_COLORMODE_16,
|
||||||
|
GX_BG_SCRBASE_0xf800, GX_BG_CHARBASE_0x00000, GX_BG_EXTPLTT_01);
|
||||||
|
G2_SetBG0Priority(0);
|
||||||
|
G2_BG0Mosaic(FALSE);
|
||||||
|
GX_SetGraphicsMode(GX_DISPMODE_GRAPHICS, GX_BGMODE_0, GX_BG0_AS_2D);
|
||||||
|
GX_SetVisiblePlane(GX_PLANEMASK_BG0);
|
||||||
|
|
||||||
|
GX_LoadBG0Char(d_CharData, 0, sizeof(d_CharData));
|
||||||
|
GX_LoadBGPltt(d_PaletteData, 0, sizeof(d_PaletteData));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//---- setting 2D for bottom screen
|
||||||
|
GX_SetBankForSubBG(GX_VRAM_SUB_BG_128_C);
|
||||||
|
|
||||||
|
G2S_SetBG0Control(GX_BG_SCRSIZE_TEXT_256x256,
|
||||||
|
GX_BG_COLORMODE_16,
|
||||||
|
GX_BG_SCRBASE_0xf800, GX_BG_CHARBASE_0x00000, GX_BG_EXTPLTT_01);
|
||||||
|
G2S_SetBG0Priority(0);
|
||||||
|
G2S_BG0Mosaic(FALSE);
|
||||||
|
GXS_SetGraphicsMode(GX_BGMODE_0);
|
||||||
|
GXS_SetVisiblePlane(GX_PLANEMASK_BG0);
|
||||||
|
|
||||||
|
GXS_LoadBG0Char(d_CharData, 0, sizeof(d_CharData));
|
||||||
|
GXS_LoadBGPltt(d_PaletteData, 0, sizeof(d_PaletteData));
|
||||||
|
|
||||||
|
|
||||||
|
//---- screen
|
||||||
|
MI_CpuFillFast((void *)gScreen, 0, sizeof(gScreen));
|
||||||
|
DC_FlushRange(gScreen, sizeof(gScreen));
|
||||||
|
/* DMA操作でIOレジスタへアクセスするのでキャッシュの Wait は不要 */
|
||||||
|
// DC_WaitWriteBufferEmpty();
|
||||||
|
GX_LoadBG0Scr(gScreen, 0, sizeof(gScreen));
|
||||||
|
GXS_LoadBG0Scr(gScreen, 0, sizeof(gScreen));
|
||||||
|
|
||||||
|
//---- init interrupt
|
||||||
|
OS_SetIrqFunction(OS_IE_V_BLANK, VBlankIntr);
|
||||||
|
(void)OS_EnableIrqMask(OS_IE_V_BLANK);
|
||||||
|
(void)GX_VBlankIntr(TRUE);
|
||||||
|
(void)OS_EnableIrq();
|
||||||
|
(void)OS_EnableInterrupts();
|
||||||
|
|
||||||
|
//---- FileSytem init
|
||||||
|
FS_Init(FS_DMA_NOT_USE);
|
||||||
|
|
||||||
|
//---- start displaying
|
||||||
|
GX_DispOn();
|
||||||
|
GXS_DispOn();
|
||||||
|
}
|
||||||
112
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/screen.c
Normal file
112
build/systemMenu_tools/SystemLogReader/ARM9.TWL/src/screen.c
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - OS - demos - consoleType-1
|
||||||
|
File: screen.c
|
||||||
|
|
||||||
|
Copyright 2003-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.
|
||||||
|
|
||||||
|
$Log: main.c,v $
|
||||||
|
Revision 1.23 2006/01/18 02:11:29 kitase_hirotake
|
||||||
|
do-indent
|
||||||
|
|
||||||
|
$NoKeywords: $
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
#include <nitro.h>
|
||||||
|
#include "screen.h"
|
||||||
|
|
||||||
|
u16 gScreen[32 * 32];
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: ClearScreen
|
||||||
|
|
||||||
|
Description: clear screen buffer
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void ClearScreen(void)
|
||||||
|
{
|
||||||
|
MI_CpuClearFast((void *)gScreen, sizeof(gScreen));
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: PrintString
|
||||||
|
|
||||||
|
Description: enter string into screen buffer
|
||||||
|
string must be within 32 chars
|
||||||
|
|
||||||
|
Arguments: x : x
|
||||||
|
y : y
|
||||||
|
palette : color (0-15)
|
||||||
|
text : string. end mark is NULL
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void PrintString(s16 x, s16 y, u8 palette, char *text, ...)
|
||||||
|
{
|
||||||
|
va_list vlist;
|
||||||
|
char temp[32 + 2], *tempPtr;
|
||||||
|
s32 i;
|
||||||
|
u16 *p, *pLimit;
|
||||||
|
|
||||||
|
va_start(vlist, text);
|
||||||
|
(void)vsnprintf(temp, 33, text, vlist);
|
||||||
|
va_end(vlist);
|
||||||
|
|
||||||
|
*(u16 *)(&temp[32]) = 0;
|
||||||
|
p = &gScreen[((y * 32) + x) % (32 * 32)];
|
||||||
|
pLimit = &gScreen[32 * 32];
|
||||||
|
tempPtr = &temp[0];
|
||||||
|
|
||||||
|
for (i = 0; *tempPtr; i++, tempPtr++)
|
||||||
|
{
|
||||||
|
*p = (u16)((palette << 12) | *tempPtr);
|
||||||
|
if (++p >= pLimit)
|
||||||
|
{
|
||||||
|
p = &gScreen[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: ColorString
|
||||||
|
|
||||||
|
Description: change string color which is put in screen buffer
|
||||||
|
|
||||||
|
Arguments: x : x
|
||||||
|
y : y
|
||||||
|
length : number of characters to change color
|
||||||
|
palette : color (0-15)
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
void ColorString(s16 x, s16 y, s16 length, u8 palette)
|
||||||
|
{
|
||||||
|
s32 i;
|
||||||
|
u16 *p, *pLimit;
|
||||||
|
|
||||||
|
if (length < 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
p = &gScreen[((y * 32) + x) % (32 * 32)];
|
||||||
|
pLimit = &gScreen[32 * 32];
|
||||||
|
|
||||||
|
for (i = 0; i < length; i++)
|
||||||
|
{
|
||||||
|
u16 temp = *p;
|
||||||
|
temp &= 0x0fff;
|
||||||
|
temp |= (palette << 12);
|
||||||
|
*p = temp;
|
||||||
|
|
||||||
|
if (++p >= pLimit)
|
||||||
|
{
|
||||||
|
p = &gScreen[0];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
34
build/systemMenu_tools/SystemLogReader/Makefile
Normal file
34
build/systemMenu_tools/SystemLogReader/Makefile
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
#! make -f
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: TwlSDK - tests - camera
|
||||||
|
# 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 $(TWLSDK_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
SUBDIRS = \
|
||||||
|
banner \
|
||||||
|
../NandInitializerRed/ARM7.TWL \
|
||||||
|
ARM9.TWL
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
include $(TWLSDK_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
|
||||||
|
#===== End of Makefile =====
|
||||||
47
build/systemMenu_tools/SystemLogReader/banner/Makefile
Normal file
47
build/systemMenu_tools/SystemLogReader/banner/Makefile
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
#! 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$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||||
|
|
||||||
|
ICON_DIR = ./icon
|
||||||
|
|
||||||
|
BANNER_ICON = $(ICON_DIR)/gameIcon.bmp
|
||||||
|
BANNER_SPEC = banner_v3.bsf
|
||||||
|
|
||||||
|
TARGETS = banner.bnr
|
||||||
|
INSTALL_DIR = ./
|
||||||
|
INSTALL_TARGETS = $(TARGETS)
|
||||||
|
|
||||||
|
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
|
||||||
|
BANNER_ICON_MIDDLE = $(addprefix $(BANNER_ICON_NAME), .nbfs .nbfc .nbfp)
|
||||||
|
|
||||||
|
LDIRT_CLEAN = $(TARGETS) \
|
||||||
|
$(BANNER_ICON_MIDDLE) \
|
||||||
|
$(TARGETS:.bnr=.srl)
|
||||||
|
|
||||||
|
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# build
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
do-build: $(TARGETS)
|
||||||
|
|
||||||
|
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON) $(BANNER_ICON_MIDDLE)
|
||||||
|
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
|
||||||
|
|
||||||
|
#
|
||||||
BIN
build/systemMenu_tools/SystemLogReader/banner/banner_v3.bsf
Normal file
BIN
build/systemMenu_tools/SystemLogReader/banner/banner_v3.bsf
Normal file
Binary file not shown.
BIN
build/systemMenu_tools/SystemLogReader/banner/icon/gameicon.bmp
Normal file
BIN
build/systemMenu_tools/SystemLogReader/banner/icon/gameicon.bmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 630 B |
62
build/systemMenu_tools/SystemLogReader/make.rb
Executable file
62
build/systemMenu_tools/SystemLogReader/make.rb
Executable file
@ -0,0 +1,62 @@
|
|||||||
|
#!ruby
|
||||||
|
# build nandfirm -> convert nandfirm -> build systemlogreader -> build gcdfirm
|
||||||
|
# 実行時引数に"dev"を渡すと開発ビルド、"prod"を渡すと量産ビルドを生成
|
||||||
|
|
||||||
|
def putex(str)
|
||||||
|
# puts command and execute
|
||||||
|
puts "execute : " + str
|
||||||
|
system str
|
||||||
|
end
|
||||||
|
|
||||||
|
Rootdir = ENV['TWL_IPL_RED_ROOT'] + '/build/systemMenu_tools/SystemLogReader'
|
||||||
|
prodopt = ""
|
||||||
|
|
||||||
|
# default buildtype = dev
|
||||||
|
if ARGV.none? || ARGV[0] == 'dev'
|
||||||
|
buildtype = "dev"
|
||||||
|
elsif ARGV[0] = "prod"
|
||||||
|
buildtype = "prod"
|
||||||
|
prodopt = "FIRM_USE_PRODUCT_KEYS=TRUE"
|
||||||
|
else
|
||||||
|
puts "invalid arguments."
|
||||||
|
exit
|
||||||
|
end
|
||||||
|
|
||||||
|
puts "buildtype : #{buildtype}"
|
||||||
|
|
||||||
|
# build nandfirm
|
||||||
|
Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/nandfirm/menu-launcher") do
|
||||||
|
putex "make clean; make TWL_FINALROM=TRUE #{prodopt}"
|
||||||
|
nandfirm = Dir.glob("menu_launcher*#{buildtype}.nand")
|
||||||
|
if nandfirm.none?
|
||||||
|
puts "build nandfirm failed."
|
||||||
|
exit
|
||||||
|
else
|
||||||
|
nandfirm = nandfirm[0]
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
putex "$TWLSDK_ROOT/tools/bin/bin2obj.TWL.exe #{nandfirm} nandfirm.#{buildtype}.o " +
|
||||||
|
"-b nandfirm_begin -e nandfirm_end"
|
||||||
|
putex "cp nandfirm.#{buildtype}.o #{Rootdir}/ARM9.TWL/nandfirm/"
|
||||||
|
end
|
||||||
|
|
||||||
|
# build systemlogreader
|
||||||
|
putex "make clean; make TWL_FINALROM=TRUE #{prodopt}"
|
||||||
|
Dir.chdir(Rootdir + "/ARM9.TWL/bin/ARM9-TS.LTD.thumb/Rom") do
|
||||||
|
if buildtype == "dev"
|
||||||
|
putex 'cp ./SystemLogReader.srl $TWL_IPL_RED_ROOT/build/gcdfirm/memory-launcher-writer/'
|
||||||
|
else
|
||||||
|
# 量産用の場合はsrlにマスタリングをかける
|
||||||
|
putex "mastering.TWL.exe SystemLogReader.srl SystemLogReader.srl.master -s -t"
|
||||||
|
putex "cp ./SystemLogReader.srl.master $TWL_IPL_RED_ROOT/build/gcdfirm/memory-launcher-writer/SystemLogReader.srl"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/gcdfirm/memory-launcher-writer") do
|
||||||
|
|
||||||
|
# build memorylauncherwriter
|
||||||
|
putex "make clean; make TWL_FINALROM=TRUE #{prodopt}"
|
||||||
|
putex "cp ./memory_launcher_writer-FINALROM.gcd " +
|
||||||
|
"$TWL_IPL_RED_ROOT/build/systemMenu_tools/SystemLogReader/memory_launcher_writer-FINALROM.#{buildtype}.gcd -f"
|
||||||
|
end
|
||||||
Loading…
Reference in New Issue
Block a user