diff options
author | Arisotura <thetotalworm@gmail.com> | 2020-12-04 18:32:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-04 18:32:35 +0100 |
commit | c5729964269631c443c23d37451e332afc91822e (patch) | |
tree | 8e5712bd241319731f7b6ade3363cefe845e3a5e /src/DSi_Camera.h | |
parent | 42e083960e52cce31589714dcc7fab8e173efb81 (diff) | |
parent | 129018a6626cbec915ef73484c51c9d07af8e8b9 (diff) |
Merge pull request #837 from Arisotura/dsi_camera
merge DSi camera branch
Diffstat (limited to 'src/DSi_Camera.h')
-rw-r--r-- | src/DSi_Camera.h | 41 |
1 files changed, 35 insertions, 6 deletions
diff --git a/src/DSi_Camera.h b/src/DSi_Camera.h index 844a4d2..108d76a 100644 --- a/src/DSi_Camera.h +++ b/src/DSi_Camera.h @@ -28,27 +28,56 @@ public: static void DeInit(); static void Reset(); + static void IRQ(u32 param); + static void RequestFrame(u32 cam); + + static void Transfer(u32 pos); + DSi_Camera(u32 num); ~DSi_Camera(); void ResetCam(); + bool IsActivated(); - void Start(); - u8 Read(bool last); - void Write(u8 val, bool last); + void I2C_Start(); + u8 I2C_Read(bool last); + void I2C_Write(u8 val, bool last); + + static u8 Read8(u32 addr); + static u16 Read16(u32 addr); + static u32 Read32(u32 addr); + static void Write8(u32 addr, u8 val); + static void Write16(u32 addr, u16 val); + static void Write32(u32 addr, u32 val); -private: u32 Num; +private: u32 DataPos; u32 RegAddr; u16 RegData; - u16 ReadReg(u16 addr); - void WriteReg(u16 addr, u16 val); + u16 I2C_ReadReg(u16 addr); + void I2C_WriteReg(u16 addr, u16 val); + u16 PLLDiv; + u16 PLLPDiv; u16 PLLCnt; + u16 ClocksCnt; u16 StandbyCnt; + u16 MiscCnt; + + u16 MCUAddr; + u16* MCUData; + + u8 MCURegs[0x8000]; + + static u16 ModuleCnt; + static u16 Cnt; + + static u8 FrameBuffer[640*480*4]; + static u32 TransferPos; + static u32 FrameLength; }; |