forked from len0rd/rockbox
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
This commit is contained in:
parent
48dad47df9
commit
384de10246
56 changed files with 9225 additions and 1 deletions
74
apps/plugins/rockboy/lcd.h
Normal file
74
apps/plugins/rockboy/lcd.h
Normal file
|
@ -0,0 +1,74 @@
|
|||
|
||||
|
||||
#ifndef __LCD_H__
|
||||
#define __LCD_H__
|
||||
|
||||
#include "defs.h"
|
||||
|
||||
struct vissprite
|
||||
{
|
||||
byte *buf;
|
||||
int x;
|
||||
byte pal, pri, pad[6];
|
||||
};
|
||||
|
||||
struct scan
|
||||
{
|
||||
int bg[64];
|
||||
int wnd[64];
|
||||
byte buf[8][256];
|
||||
byte pal1[128];
|
||||
un16 pal2[64];
|
||||
un32 pal4[64];
|
||||
byte pri[256];
|
||||
struct vissprite vs[16];
|
||||
int ns, l, x, y, s, t, u, v, wx, wy, wt, wv;
|
||||
};
|
||||
|
||||
struct obj
|
||||
{
|
||||
byte y;
|
||||
byte x;
|
||||
byte pat;
|
||||
byte flags;
|
||||
};
|
||||
|
||||
struct lcd
|
||||
{
|
||||
byte vbank[2][8192];
|
||||
union
|
||||
{
|
||||
byte mem[256];
|
||||
struct obj obj[40];
|
||||
} oam;
|
||||
byte pal[128];
|
||||
};
|
||||
|
||||
extern struct lcd lcd;
|
||||
extern struct scan scan;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
void updatepatpix(void);
|
||||
void tilebuf(void);
|
||||
void bg_scan(void);
|
||||
void wnd_scan(void);
|
||||
void bg_scan_pri(void);
|
||||
void wnd_scan_pri(void);
|
||||
void spr_count(void);
|
||||
void spr_enum(void);
|
||||
void spr_scan(void);
|
||||
void lcd_begin(void);
|
||||
void lcd_refreshline(void);
|
||||
void pal_write(int i, byte b);
|
||||
void pal_write_dmg(int i, int mapnum, byte d);
|
||||
void vram_write(int a, byte b);
|
||||
void vram_dirty(void);
|
||||
void pal_dirty(void);
|
||||
void lcd_reset(void);
|
Loading…
Add table
Add a link
Reference in a new issue