mirror of
https://github.com/rvtr/ctr_firmware.git
synced 2025-10-31 07:51:08 -04:00
例外ハンドラをベニアへ変更。
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_firmware@77 b871894f-2f95-9b40-918c-086798483c85
This commit is contained in:
parent
f1d11046a4
commit
71553dd061
@ -34,19 +34,21 @@ asm void _start( void )
|
|||||||
|
|
||||||
CODE32 // for _start reference
|
CODE32 // for _start reference
|
||||||
|
|
||||||
INASM_EXTERN( STUPi_StartHandler )
|
INASM_EXTERN( STUPi_IrqVeneer )
|
||||||
INASM_EXTERN( STUPi_SwiHandler )
|
INASM_EXTERN( STUPi_FiqVeneer )
|
||||||
INASM_EXTERN( STUPi_IrqHandler )
|
INASM_EXTERN( STUPi_SwiVeneer )
|
||||||
INASM_EXTERN( STUPi_DbgHandler )
|
INASM_EXTERN( STUPi_UndefInstVeneer )
|
||||||
|
INASM_EXTERN( STUPi_PrefetchAbortVeneer )
|
||||||
|
INASM_EXTERN( STUPi_DataAbortVeneer )
|
||||||
|
|
||||||
b stupStartHandlerVeneer // don't change for NULL access compatibility
|
b stupStartHandlerVeneer // don't change for NULL access compatibility
|
||||||
undef b STUPi_DbgHandler
|
undef b STUPi_UndefInstVeneer
|
||||||
swi b STUPi_SwiHandler
|
swi b STUPi_SwiVeneer
|
||||||
iabt b STUPi_DbgHandler
|
iabt b STUPi_PrefetchAbortVeneer
|
||||||
dabt b STUPi_DbgHandler
|
dabt b STUPi_DataAbortVeneer
|
||||||
reserve b reserve
|
reserve b reserve
|
||||||
irq b STUPi_IrqHandler
|
irq b STUPi_IrqVeneer
|
||||||
fiq b STUPi_DbgHandler
|
fiq b STUPi_FiqVeneer
|
||||||
|
|
||||||
stupStartHandlerVeneer
|
stupStartHandlerVeneer
|
||||||
|
|
||||||
@ -72,6 +74,9 @@ LSYM(10)
|
|||||||
b BSYM(10)
|
b BSYM(10)
|
||||||
|
|
||||||
core0_start
|
core0_start
|
||||||
|
|
||||||
|
INASM_EXTERN( STUPi_StartHandler )
|
||||||
|
|
||||||
b STUPi_StartHandler
|
b STUPi_StartHandler
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -34,21 +34,26 @@ asm void _start( void )
|
|||||||
|
|
||||||
CODE32 // for _start reference
|
CODE32 // for _start reference
|
||||||
|
|
||||||
INASM_EXTERN( STUPi_StartHandler )
|
INASM_EXTERN( STUPi_IrqVeneer )
|
||||||
INASM_EXTERN( STUPi_SwiHandler )
|
INASM_EXTERN( STUPi_FiqVeneer )
|
||||||
INASM_EXTERN( STUPi_IrqHandler )
|
INASM_EXTERN( STUPi_SwiVeneer )
|
||||||
INASM_EXTERN( STUPi_DbgHandler )
|
INASM_EXTERN( STUPi_UndefInstVeneer )
|
||||||
|
INASM_EXTERN( STUPi_PrefetchAbortVeneer )
|
||||||
|
INASM_EXTERN( STUPi_DataAbortVeneer )
|
||||||
|
|
||||||
b stupStartHandlerVeneer // don't change for NULL access compatibility
|
b stupStartHandlerVeneer // don't change for NULL access compatibility
|
||||||
undef b STUPi_DbgHandler
|
undef b STUPi_UndefInstVeneer
|
||||||
swi b STUPi_SwiHandler
|
swi b STUPi_SwiVeneer
|
||||||
iabt b STUPi_DbgHandler
|
iabt b STUPi_PrefetchAbortVeneer
|
||||||
dabt b STUPi_DbgHandler
|
dabt b STUPi_DataAbortVeneer
|
||||||
reserve b reserve
|
reserve b reserve
|
||||||
irq b STUPi_IrqHandler
|
irq b STUPi_IrqVeneer
|
||||||
fiq b STUPi_DbgHandler
|
fiq b STUPi_FiqVeneer
|
||||||
|
|
||||||
stupStartHandlerVeneer
|
stupStartHandlerVeneer
|
||||||
|
|
||||||
|
INASM_EXTERN( STUPi_StartHandler )
|
||||||
|
|
||||||
b STUPi_StartHandler
|
b STUPi_StartHandler
|
||||||
DCD 0
|
DCD 0
|
||||||
|
|
||||||
|
|||||||
@ -40,25 +40,97 @@ dbg_m
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
Name: STUPi_IrqHandler
|
Name: STUPi_IrqVeneer
|
||||||
|
|
||||||
Description: IRQ handler
|
Description: IRQ veneer
|
||||||
|
|
||||||
Arguments: None
|
Arguments: None
|
||||||
|
|
||||||
Returns: None.
|
Returns: None.
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
asm void STUPi_IrqHandler( void )
|
asm void STUPi_IrqVeneer( void )
|
||||||
{
|
{
|
||||||
#ifdef SDK_ARM9
|
ldr pc, =HW_INTR_VENEER_BUF
|
||||||
mrc p15, 0, r0, c9, c1, 0 // DTCMƒAƒhƒŒƒXŠl“¾
|
|
||||||
mov r0, r0, lsr #HW_C9_TCMR_BASE_SHIFT
|
|
||||||
mov r0, r0, lsl #HW_C9_TCMR_BASE_SHIFT
|
|
||||||
add r0, r0, #HW_DTCM_SIZE
|
|
||||||
#endif // SDK_ARM9
|
|
||||||
|
|
||||||
irq_m
|
LTORG
|
||||||
b irq_m
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: STUPi_FiqVeneer
|
||||||
|
|
||||||
|
Description: FIQ veneer
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
asm void STUPi_FiqVeneer( void )
|
||||||
|
{
|
||||||
|
ldr pc, =HW_FIQ_VENEER_BUF
|
||||||
|
|
||||||
|
LTORG
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: STUPi_PrefetchAbortVeneer
|
||||||
|
|
||||||
|
Description: Prefetch Abort veneer
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
asm void STUPi_PrefetchAbortVeneer( void )
|
||||||
|
{
|
||||||
|
ldr pc, =HW_IABT_VENEER_BUF
|
||||||
|
|
||||||
|
LTORG
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: STUPi_DataAbortVeneer
|
||||||
|
|
||||||
|
Description: Data Abort veneer
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
asm void STUPi_DataAbortVeneer( void )
|
||||||
|
{
|
||||||
|
ldr pc, =HW_DABT_VENEER_BUF
|
||||||
|
|
||||||
|
LTORG
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: STUPi_UndefInstVeneer
|
||||||
|
|
||||||
|
Description: Undefine Instruction veneer
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
asm void STUPi_UndefInstVeneer( void )
|
||||||
|
{
|
||||||
|
ldr pc, =HW_UDEF_VENEER_BUF
|
||||||
|
|
||||||
|
LTORG
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: STUPi_SwiVeneer
|
||||||
|
|
||||||
|
Description: SWI veneer
|
||||||
|
|
||||||
|
Arguments: None
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
asm void STUPi_SwiVeneer( void )
|
||||||
|
{
|
||||||
|
ldr pc, =HW_SWI_VENEER_BUF
|
||||||
|
|
||||||
LTORG
|
LTORG
|
||||||
}
|
}
|
||||||
@ -94,10 +166,9 @@ asm void STUPi_SwiHandler( void )
|
|||||||
|
|
||||||
adr r11, SWI_Table // システムコールアドレス 取得
|
adr r11, SWI_Table // システムコールアドレス 取得
|
||||||
ldrh r12, [r11, r12]
|
ldrh r12, [r11, r12]
|
||||||
#ifdef SDK_ARM9
|
|
||||||
ldr r11, =HW_BIOS
|
ldr r11, =HW_BROM
|
||||||
orr r12, r12, r11
|
orr r12, r12, r11
|
||||||
#endif // SDK_ARM9
|
|
||||||
|
|
||||||
mrs r11, spsr // SVCモード SPSR退避(合計4ワード)
|
mrs r11, spsr // SVCモード SPSR退避(合計4ワード)
|
||||||
stmfd sp!, {r11}
|
stmfd sp!, {r11}
|
||||||
@ -107,12 +178,7 @@ asm void STUPi_SwiHandler( void )
|
|||||||
msr cpsr_cxsf,r11
|
msr cpsr_cxsf,r11
|
||||||
|
|
||||||
stmfd sp!, {r2, lr} // システムモード レジスタ退避(2ワード)
|
stmfd sp!, {r2, lr} // システムモード レジスタ退避(2ワード)
|
||||||
#ifdef SDK_ARM9
|
|
||||||
blx r12
|
blx r12
|
||||||
#else // SDK_ARM7
|
|
||||||
adr lr, swi_return
|
|
||||||
bx r12
|
|
||||||
#endif // SDK_ARM7
|
|
||||||
|
|
||||||
swi_return
|
swi_return
|
||||||
ldmfd sp!, {r2, lr} // システムモード レジスタ復帰
|
ldmfd sp!, {r2, lr} // システムモード レジスタ復帰
|
||||||
|
|||||||
@ -17,6 +17,7 @@
|
|||||||
#ifndef BROM_HW_ARM11_AXI_WRAM_H_
|
#ifndef BROM_HW_ARM11_AXI_WRAM_H_
|
||||||
#define BROM_HW_ARM11_AXI_WRAM_H_
|
#define BROM_HW_ARM11_AXI_WRAM_H_
|
||||||
|
|
||||||
|
#include <ctr/hw/arm11/mmap_axi_wram.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|||||||
@ -17,29 +17,7 @@
|
|||||||
#ifndef BROM_HW_COMMON_MMAP_SHARED_H_
|
#ifndef BROM_HW_COMMON_MMAP_SHARED_H_
|
||||||
#define BROM_HW_COMMON_MMAP_SHARED_H_
|
#define BROM_HW_COMMON_MMAP_SHARED_H_
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#include <ctr/hw/common/mmap_shared.h>
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------
|
|
||||||
// MEMORY MAP of SYSTEM SHARED AREA
|
|
||||||
//----------------------------------------------------------------------
|
|
||||||
|
|
||||||
#define HW_AXI_WRAM_SHARED (HW_AXI_WRAM_SHARED_END - HW_AXI_WRAM_SHARED_SIZE)
|
|
||||||
#define HW_AXI_WRAM_SHARED_END (HW_MAIN_MEM)
|
|
||||||
#define HW_AXI_WRAM_SHARED_SIZE (HW_AXI_WRAM_SHARED_SYS_SIZE + HW_AXI_WRAM_SHARED_USR_SIZE) // 8KB
|
|
||||||
|
|
||||||
#define HW_AXI_WRAM_SHARED_USR (HW_AXI_WRAM_SHARED_USR_END - HW_AXI_WRAM_SHARED_USR_SIZE)
|
|
||||||
#define HW_AXI_WRAM_SHARED_USR_END HW_AXI_WRAM_SHARED_END
|
|
||||||
#define HW_AXI_WRAM_SHARED_USR_SIZE 0x1000 // 4KB
|
|
||||||
|
|
||||||
#define HW_AXI_WRAM_SHARED_SYS (HW_AXI_WRAM_SHARED_SYS_END - HW_AXI_WRAM_SHARED_SIZE)
|
|
||||||
#define HW_AXI_WRAM_SHARED_SYS_END HW_AXI_WRAM_SHARED_USR
|
|
||||||
#define HW_AXI_WRAM_SHARED_SYS_SIZE 0x1000 // 4KB
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
} /* extern "C" */
|
|
||||||
#endif
|
|
||||||
/* BROM_HW_COMMON_MMAP_SHARED_H_ */
|
/* BROM_HW_COMMON_MMAP_SHARED_H_ */
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -21,20 +21,20 @@
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef SDK_ARM9
|
#include <ctr/memorymap.h>
|
||||||
|
|
||||||
|
#ifdef SDK_ARM11
|
||||||
|
#include <brom/hw/ARM11/mmap_brom.h>
|
||||||
|
#include <firm/hw/ARM11/mmap_firm.h>
|
||||||
|
#include <brom/hw/common/mmap_shared.h>
|
||||||
|
|
||||||
|
#else //SDK_ARM9
|
||||||
#include <brom/hw/ARM9/mmap_brom.h>
|
#include <brom/hw/ARM9/mmap_brom.h>
|
||||||
#include <firm/hw/ARM9/mmap_firm.h>
|
#include <firm/hw/ARM9/mmap_firm.h>
|
||||||
#include <brom/hw/common/mmap_shared.h>
|
#include <brom/hw/common/mmap_shared.h>
|
||||||
|
|
||||||
#else //SDK_ARM11
|
|
||||||
#include <brom/hw/ARM11/mmap_brom.h>
|
|
||||||
#include <firm/hw/ARM11/mmap_firm.h>
|
|
||||||
#include <ctr/hw/ARM11/mmu_table.h>
|
|
||||||
#include <brom/hw/common/mmap_shared.h>
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <ctr/ioreg.h>
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
} /* extern "C" */
|
} /* extern "C" */
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
57
trunk/include/ctr/hw/ARM11/mmap_axi_wram.h
Normal file
57
trunk/include/ctr/hw/ARM11/mmap_axi_wram.h
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: CtrFirm - HW - include
|
||||||
|
File: mmap_axi_wram.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 CTR_HW_ARM11_AXI_WRAM_H_
|
||||||
|
#define CTR_HW_ARM11_AXI_WRAM_H_
|
||||||
|
|
||||||
|
#include <ctr/hw/common/mmap_shared.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//---- system reserved area
|
||||||
|
#define HW_AXI_WRAM_SYSRV HW_AXI_WRAM_SHARED_SYS_A11
|
||||||
|
#define HW_AXI_WRAM_SYSRV_END HW_AXI_WRAM_SHARED_SYS_A11_END
|
||||||
|
#define HW_AXI_WRAM_SYSRV_SIZE HW_AXI_WRAM_SHARED_SYS_A11_SIZE
|
||||||
|
|
||||||
|
//---- offset in system reserved area
|
||||||
|
// FCRAMまで命令プリフェッチしないように注意(MPCoreは8段パイプライン)
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_INTR_VENEER 0x00
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_FIQ_VENEER 0x08
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_SWI_VENEER 0x10
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_UDEF_VENEER 0x18
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_IABT_VENEER 0x20
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_DABT_VENEER 0x28
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK0 0x58
|
||||||
|
#define HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK1 0x5c
|
||||||
|
|
||||||
|
//---- system reserved area
|
||||||
|
#define HW_INTR_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_INTR_VENEER)
|
||||||
|
#define HW_FIQ_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_FIQ_VENEER)
|
||||||
|
#define HW_SWI_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_SWI_VENEER)
|
||||||
|
#define HW_IABT_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_IABT_VENEER)
|
||||||
|
#define HW_DABT_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_DABT_VENEER)
|
||||||
|
#define HW_UDEF_VENEER_BUF (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_UDEF_VENEER)
|
||||||
|
#define HW_INTR_CHECK0_PTR (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK0)
|
||||||
|
#define HW_INTR_CHECK1_PTR (HW_AXI_WRAM_SYSRV + HW_AXI_WRAM_SYSRV_OFS_INTR_CHECK1)
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
/* CTR_HW_ARM11_AXI_WRAM_H_ */
|
||||||
|
#endif
|
||||||
54
trunk/include/ctr/hw/ARM9/mmap_prv_wram.h
Normal file
54
trunk/include/ctr/hw/ARM9/mmap_prv_wram.h
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: CtrFirm - HW - include
|
||||||
|
File: mmap_axi_wram.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 CTR_HW_ARM9_PRV_WRAM_H_
|
||||||
|
#define CTR_HW_ARM9_PRV_WRAM_H_
|
||||||
|
|
||||||
|
#include <ctr/hw/common/mmap_shared.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//---- system reserved area
|
||||||
|
#define HW_PRV_WRAM_SYSRV HW_PRV_WRAM
|
||||||
|
#define HW_PRV_WRAM_SYSRV_END (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_SIZE)
|
||||||
|
#define HW_PRV_WRAM_SYSRV_SIZE 0x40 // 64B
|
||||||
|
|
||||||
|
//---- offset in system reserved area
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_INTR_VENEER 0x00
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_FIQ_VENEER 0x08
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_SWI_VENEER 0x10
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_UDEF_VENEER 0x18
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_IABT_VENEER 0x20
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_DABT_VENEER 0x28
|
||||||
|
#define HW_PRV_WRAM_SYSRV_OFS_INTR_CHECK 0x3c
|
||||||
|
|
||||||
|
//---- system reserved area
|
||||||
|
#define HW_INTR_VENEER_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_INTR_VENEER)
|
||||||
|
#define HW_FIQ_VENEER_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_FIQ_VENEER)
|
||||||
|
#define HW_SWI_VENEER_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_SWI_VENEER)
|
||||||
|
#define HW_IABT_VENEER_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_IABT_VENEER)
|
||||||
|
#define HW_DABT_VENEER_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_DABT_VENEER)
|
||||||
|
#define HW_UDEF_VENEER_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_UDEF_VENEER)
|
||||||
|
#define HW_INTR_CHECK_BUF (HW_PRV_WRAM_SYSRV + HW_PRV_WRAM_SYSRV_OFS_INTR_CHECK)
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
/* CTR_HW_ARM9_PRV_WRAM_H_ */
|
||||||
|
#endif
|
||||||
49
trunk/include/ctr/hw/common/mmap_shared.h
Normal file
49
trunk/include/ctr/hw/common/mmap_shared.h
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: CtrFirm - HW - include
|
||||||
|
File: mmap_shared.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 CTR_HW_COMMON_MMAP_SHARED_H_
|
||||||
|
#define CTR_HW_COMMON_MMAP_SHARED_H_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
// MEMORY MAP of SYSTEM SHARED AREA
|
||||||
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
#define HW_AXI_WRAM_SHARED (HW_AXI_WRAM_SHARED_END - HW_AXI_WRAM_SHARED_SIZE)
|
||||||
|
#define HW_AXI_WRAM_SHARED_END (HW_AXI_WRAM_END)
|
||||||
|
#define HW_AXI_WRAM_SHARED_SIZE (HW_AXI_WRAM_SHARED_SYS_SIZE + HW_AXI_WRAM_SHARED_USR_SIZE) // 8KB
|
||||||
|
|
||||||
|
#define HW_AXI_WRAM_SHARED_SYS (HW_AXI_WRAM_SHARED_SYS_END - HW_AXI_WRAM_SHARED_SIZE)
|
||||||
|
#define HW_AXI_WRAM_SHARED_SYS_END HW_AXI_WRAM_SHARED_END
|
||||||
|
#define HW_AXI_WRAM_SHARED_SYS_SIZE 0x1000 // 4KB
|
||||||
|
|
||||||
|
#define HW_AXI_WRAM_SHARED_SYS_A11 (HW_AXI_WRAM_SHARED_SYS_A11_END - HW_AXI_WRAM_SHARED_SYS_A11_SIZE)
|
||||||
|
#define HW_AXI_WRAM_SHARED_SYS_A11_END HW_AXI_WRAM_SHARED_SYS_END
|
||||||
|
#define HW_AXI_WRAM_SHARED_SYS_A11_SIZE 0x60 // 96B
|
||||||
|
|
||||||
|
#define HW_AXI_WRAM_SHARED_USR (HW_AXI_WRAM_SHARED_USR_END - HW_AXI_WRAM_SHARED_USR_SIZE)
|
||||||
|
#define HW_AXI_WRAM_SHARED_USR_END HW_AXI_WRAM_SHARED_SYS
|
||||||
|
#define HW_AXI_WRAM_SHARED_USR_SIZE 0x1000 // 4KB
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
/* CTR_HW_COMMON_MMAP_SHARED_H_ */
|
||||||
|
#endif
|
||||||
40
trunk/include/ctr/memorymap.h
Normal file
40
trunk/include/ctr/memorymap.h
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: CtrBrom - include - HW
|
||||||
|
File: memorymap.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 FIRM_MEMORYMAP_H_
|
||||||
|
#define FIRM_MEMORYMAP_H_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef SDK_ARM11
|
||||||
|
#include <ctr/hw/ARM11/mmu_table.h>
|
||||||
|
#include <ctr/hw/ARM11/mmap_axi_wram.h>
|
||||||
|
|
||||||
|
#else //SDK_ARM9
|
||||||
|
#include <ctr/hw/ARM9/mmap_prv_wram.h>
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <ctr/hw/common/mmap_shared.h>
|
||||||
|
#include <ctr/ioreg.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
/* FIRM_MEMORYMAP_H_ */
|
||||||
|
#endif
|
||||||
23
trunk/include/ctr/memorymap_sp.h
Normal file
23
trunk/include/ctr/memorymap_sp.h
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: CtrFirm - include - HW
|
||||||
|
File: memorymap_sp.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 SDK_ARM9
|
||||||
|
#define SDK_ARM9
|
||||||
|
#endif
|
||||||
|
#ifdef SDK_ARM11
|
||||||
|
#undef SDK_ARM11
|
||||||
|
#endif
|
||||||
|
#include <ctr/memorymap.h>
|
||||||
Loading…
Reference in New Issue
Block a user