summaryrefslogtreecommitdiff
path: root/apps/plugins/rockboy/regs.h
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2005-03-02 23:49:38 +0000
committerJens Arnold <amiconn@rockbox.org>2005-03-02 23:49:38 +0000
commit384de102469fee4e0792df8fe38586d3206774ed (patch)
treeee5342103e17738acfb8421328ea7c57433f55e6 /apps/plugins/rockboy/regs.h
parent48dad47df98bdec632e8930b6a97359dc2c428f5 (diff)
downloadrockbox-384de102469fee4e0792df8fe38586d3206774ed.zip
rockbox-384de102469fee4e0792df8fe38586d3206774ed.tar.gz
rockbox-384de102469fee4e0792df8fe38586d3206774ed.tar.bz2
rockbox-384de102469fee4e0792df8fe38586d3206774ed.tar.xz
Rockboy - gameboy emulation for rockbox, based on gnuboy. Still a bit early, but already playable on iRiver H1xx and the simulators. The archos recorder version is currently rather slow...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6104 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/rockboy/regs.h')
-rw-r--r--apps/plugins/rockboy/regs.h181
1 files changed, 181 insertions, 0 deletions
diff --git a/apps/plugins/rockboy/regs.h b/apps/plugins/rockboy/regs.h
new file mode 100644
index 0000000..4457fd9
--- /dev/null
+++ b/apps/plugins/rockboy/regs.h
@@ -0,0 +1,181 @@
+
+#ifndef __REGS_H__
+#define __REGS_H__
+
+
+#include "mem.h"
+
+/* General internal/io stuff */
+
+#define RI_P1 0x00
+#define RI_SB 0x01
+#define RI_SC 0x02
+#define RI_DIV 0x04
+#define RI_TIMA 0x05
+#define RI_TMA 0x06
+#define RI_TAC 0x07
+
+#define RI_KEY1 0x4D
+
+#define RI_RP 0x56
+
+#define RI_SVBK 0x70
+
+
+
+/* Interrupts flags */
+
+#define RI_IF 0x0F
+#define RI_IE 0xFF
+
+
+
+
+/* LCDC */
+
+#define RI_LCDC 0x40
+#define RI_STAT 0x41
+#define RI_SCY 0x42
+#define RI_SCX 0x43
+#define RI_LY 0x44
+#define RI_LYC 0x45
+#define RI_DMA 0x46
+#define RI_BGP 0x47
+#define RI_OBP0 0x48
+#define RI_OBP1 0x49
+#define RI_WY 0x4A
+#define RI_WX 0x4B
+
+#define RI_VBK 0x4F
+
+#define RI_HDMA1 0x51
+#define RI_HDMA2 0x52
+#define RI_HDMA3 0x53
+#define RI_HDMA4 0x54
+#define RI_HDMA5 0x55
+
+#define RI_BCPS 0x68
+#define RI_BCPD 0x69
+#define RI_OCPS 0x6A
+#define RI_OCPD 0x6B
+
+
+
+/* Sound */
+
+#define RI_NR10 0x10
+#define RI_NR11 0x11
+#define RI_NR12 0x12
+#define RI_NR13 0x13
+#define RI_NR14 0x14
+#define RI_NR21 0x16
+#define RI_NR22 0x17
+#define RI_NR23 0x18
+#define RI_NR24 0x19
+#define RI_NR30 0x1A
+#define RI_NR31 0x1B
+#define RI_NR32 0x1C
+#define RI_NR33 0x1D
+#define RI_NR34 0x1E
+#define RI_NR41 0x20
+#define RI_NR42 0x21
+#define RI_NR43 0x22
+#define RI_NR44 0x23
+#define RI_NR50 0x24
+#define RI_NR51 0x25
+#define RI_NR52 0x26
+
+
+
+#define REG(n) ram.hi[(n)]
+
+
+
+/* General internal/io stuff */
+
+#define R_P1 REG(RI_P1)
+#define R_SB REG(RI_SB)
+#define R_SC REG(RI_SC)
+#define R_DIV REG(RI_DIV)
+#define R_TIMA REG(RI_TIMA)
+#define R_TMA REG(RI_TMA)
+#define R_TAC REG(RI_TAC)
+
+#define R_KEY1 REG(RI_KEY1)
+
+#define R_RP REG(RI_RP)
+
+#define R_SVBK REG(RI_SVBK)
+
+
+
+/* Interrupts flags */
+
+#define R_IF REG(RI_IF)
+#define R_IE REG(RI_IE)
+
+
+
+
+/* LCDC */
+
+#define R_LCDC REG(RI_LCDC)
+#define R_STAT REG(RI_STAT)
+#define R_SCY REG(RI_SCY)
+#define R_SCX REG(RI_SCX)
+#define R_LY REG(RI_LY)
+#define R_LYC REG(RI_LYC)
+#define R_DMA REG(RI_DMA)
+#define R_BGP REG(RI_BGP)
+#define R_OBP0 REG(RI_OBP0)
+#define R_OBP1 REG(RI_OBP1)
+#define R_WY REG(RI_WY)
+#define R_WX REG(RI_WX)
+
+#define R_VBK REG(RI_VBK)
+
+#define R_HDMA1 REG(RI_HDMA1)
+#define R_HDMA2 REG(RI_HDMA2)
+#define R_HDMA3 REG(RI_HDMA3)
+#define R_HDMA4 REG(RI_HDMA4)
+#define R_HDMA5 REG(RI_HDMA5)
+
+#define R_BCPS REG(RI_BCPS)
+#define R_BCPD REG(RI_BCPD)
+#define R_OCPS REG(RI_OCPS)
+#define R_OCPD REG(RI_OCPD)
+
+
+
+/* Sound */
+
+#define R_NR10 REG(RI_NR10)
+#define R_NR11 REG(RI_NR11)
+#define R_NR12 REG(RI_NR12)
+#define R_NR13 REG(RI_NR13)
+#define R_NR14 REG(RI_NR14)
+#define R_NR21 REG(RI_NR21)
+#define R_NR22 REG(RI_NR22)
+#define R_NR23 REG(RI_NR23)
+#define R_NR24 REG(RI_NR24)
+#define R_NR30 REG(RI_NR30)
+#define R_NR31 REG(RI_NR31)
+#define R_NR32 REG(RI_NR32)
+#define R_NR33 REG(RI_NR33)
+#define R_NR34 REG(RI_NR34)
+#define R_NR41 REG(RI_NR41)
+#define R_NR42 REG(RI_NR42)
+#define R_NR43 REG(RI_NR43)
+#define R_NR44 REG(RI_NR44)
+#define R_NR50 REG(RI_NR50)
+#define R_NR51 REG(RI_NR51)
+#define R_NR52 REG(RI_NR52)
+
+
+
+#endif
+
+
+
+
+