summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/sh4/sh3comn.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/sh4/sh3comn.h')
-rw-r--r--src/devices/cpu/sh4/sh3comn.h96
1 files changed, 96 insertions, 0 deletions
diff --git a/src/devices/cpu/sh4/sh3comn.h b/src/devices/cpu/sh4/sh3comn.h
new file mode 100644
index 00000000000..8aa68c27b26
--- /dev/null
+++ b/src/devices/cpu/sh4/sh3comn.h
@@ -0,0 +1,96 @@
+// license:BSD-3-Clause
+// copyright-holders:R. Belmont
+#pragma once
+
+#ifndef __SH3COMN_H__
+#define __SH3COMN_H__
+
+
+// actual port handling is more complex than this
+// which should be considered a temporary solution
+// just used some arbitrary port nubmers
+#define SH3_PORT_A (0x10*8)
+#define SH3_PORT_B (0x11*8)
+#define SH3_PORT_C (0x12*8)
+#define SH3_PORT_D (0x13*8)
+#define SH3_PORT_E (0x14*8)
+#define SH3_PORT_F (0x15*8)
+#define SH3_PORT_G (0x16*8)
+#define SH3_PORT_H (0x17*8)
+/* no I */
+#define SH3_PORT_J (0x18*8)
+#define SH3_PORT_K (0x19*8)
+#define SH3_PORT_L (0x1a*8)
+
+/* SH3 lower area regs */
+
+#define SH3_LOWER_REGBASE (0x04000000)
+#define SH3_LOWER_REGEND (0x07ffffff)
+
+#define INTEVT2 ((0x4000000 - SH3_LOWER_REGBASE)/4)
+#define IRR0_IRR1 ((0x4000004 - SH3_LOWER_REGBASE)/4)
+#define PINTER_IPRC ((0x4000014 - SH3_LOWER_REGBASE)/4)
+
+#define SH3_SAR0_ADDR ((0x4000020 - SH3_LOWER_REGBASE)/4)
+#define SH3_DAR0_ADDR ((0x4000024 - SH3_LOWER_REGBASE)/4)
+#define SH3_DMATCR0_ADDR ((0x4000028 - SH3_LOWER_REGBASE)/4)
+#define SH3_CHCR0_ADDR ((0x400002c - SH3_LOWER_REGBASE)/4)
+#define SH3_SAR1_ADDR ((0x4000030 - SH3_LOWER_REGBASE)/4)
+#define SH3_DAR1_ADDR ((0x4000034 - SH3_LOWER_REGBASE)/4)
+#define SH3_DMATCR1_ADDR ((0x4000038 - SH3_LOWER_REGBASE)/4)
+#define SH3_CHCR1_ADDR ((0x400003c - SH3_LOWER_REGBASE)/4)
+#define SH3_SAR2_ADDR ((0x4000040 - SH3_LOWER_REGBASE)/4)
+#define SH3_DAR2_ADDR ((0x4000044 - SH3_LOWER_REGBASE)/4)
+#define SH3_DMATCR2_ADDR ((0x4000048 - SH3_LOWER_REGBASE)/4)
+#define SH3_CHCR2_ADDR ((0x400004c - SH3_LOWER_REGBASE)/4)
+#define SH3_SAR3_ADDR ((0x4000050 - SH3_LOWER_REGBASE)/4)
+#define SH3_DAR3_ADDR ((0x4000054 - SH3_LOWER_REGBASE)/4)
+#define SH3_DMATCR3_ADDR ((0x4000058 - SH3_LOWER_REGBASE)/4)
+#define SH3_CHCR3_ADDR ((0x400005c - SH3_LOWER_REGBASE)/4)
+#define SH3_DMAOR_ADDR ((0x4000060 - SH3_LOWER_REGBASE)/4)
+
+
+#define PCCR_PDCR ((0x4000104 - SH3_LOWER_REGBASE)/4)
+#define PECR_PFCR ((0x4000108 - SH3_LOWER_REGBASE)/4)
+#define PGCR_PHCR ((0x400010c - SH3_LOWER_REGBASE)/4)
+#define PJCR_PKCR ((0x4000110 - SH3_LOWER_REGBASE)/4)
+#define PLCR_SCPCR ((0x4000114 - SH3_LOWER_REGBASE)/4)
+
+#define PADR_PBDR ((0x4000120 - SH3_LOWER_REGBASE)/4)
+#define PCDR_PDDR ((0x4000124 - SH3_LOWER_REGBASE)/4)
+#define PEDR_PFDR ((0x4000128 - SH3_LOWER_REGBASE)/4)
+#define PGDR_PHDR ((0x400012c - SH3_LOWER_REGBASE)/4)
+#define PJDR_PKDR ((0x4000130 - SH3_LOWER_REGBASE)/4)
+#define PLDR_SCPDR ((0x4000134 - SH3_LOWER_REGBASE)/4)
+
+#define SCSMR2_SCBRR2 ((0x4000150 - SH3_LOWER_REGBASE)/4)
+#define SCSCR2_SCFTDR2 ((0x4000154 - SH3_LOWER_REGBASE)/4)
+#define SCSSR2_SCFRDR2 ((0x4000158 - SH3_LOWER_REGBASE)/4)
+#define SCFCR2_SCFDR2 ((0x400015c - SH3_LOWER_REGBASE)/4)
+
+
+/* SH3 upper area */
+
+
+#define SH3_UPPER_REGBASE (0xffffd000)
+#define SH3_UPPER_REGEND (0xffffffff)
+
+#define SH3_ICR0_IPRA_ADDR ((0xfffffee0 - SH3_UPPER_REGBASE)/4)
+#define SH3_IPRB_ADDR ((0xfffffee4 - SH3_UPPER_REGBASE)/4)
+
+#define SH3_TOCR_TSTR_ADDR ((0xfffffe90 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCOR0_ADDR ((0xfffffe94 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCNT0_ADDR ((0xfffffe98 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCR0_ADDR ((0xfffffe9c - SH3_UPPER_REGBASE)/4)
+#define SH3_TCOR1_ADDR ((0xfffffea0 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCNT1_ADDR ((0xfffffea4 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCR1_ADDR ((0xfffffea8 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCOR2_ADDR ((0xfffffeac - SH3_UPPER_REGBASE)/4)
+#define SH3_TCNT2_ADDR ((0xfffffeb0 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCR2_ADDR ((0xfffffeb4 - SH3_UPPER_REGBASE)/4)
+#define SH3_TCPR2_ADDR ((0xfffffeb8 - SH3_UPPER_REGBASE)/4)
+#define SH3_TRA_ADDR ((0xffffffd0 - SH3_UPPER_REGBASE)/4)
+#define SH3_EXPEVT_ADDR ((0xffffffd4 - SH3_UPPER_REGBASE)/4)
+#define SH3_INTEVT_ADDR ((0xffffffd8 - SH3_UPPER_REGBASE)/4)
+
+#endif /* __SH3COMN_H__ */