mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2025-07-30 09:40:00 -06:00
camera: revise interface behavior to be more accurate
* there are two FIFO buffers (finally fixes Let's Golf) * fix issues with camera start condition/cnt bit15 * add camera interface state to savestate
This commit is contained in:
@ -118,15 +118,25 @@ private:
|
||||
|
||||
u32 CropStart, CropEnd;
|
||||
|
||||
// pixel data buffer holds a maximum of 512 words, regardless of how long scanlines are
|
||||
u32 DataBuffer[512];
|
||||
u32 BufferReadPos, BufferWritePos;
|
||||
bool Transferring;
|
||||
|
||||
// pixel data buffers hold a maximum of 512 words, regardless of how long scanlines are
|
||||
typedef struct
|
||||
{
|
||||
u32 Data[512];
|
||||
u32 ReadPos, WritePos;
|
||||
|
||||
} sPixelBuffer;
|
||||
sPixelBuffer PixelBuffer[2];
|
||||
u8 CurPixelBuffer;
|
||||
u32 BufferNumLines;
|
||||
DSi_Camera* CurCamera;
|
||||
|
||||
static const u32 kIRQInterval;
|
||||
static const u32 kScanlineTime;
|
||||
static const u32 kTransferStart;
|
||||
|
||||
void SwapPixelBuffers();
|
||||
};
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user