forked from len0rd/rockbox
Fixes to Chessclock from Miguel (to make it work again after we broke his patch), plus iPod button mapping changes from me
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8816 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
e376545211
commit
a3cfe0a434
4 changed files with 16 additions and 15 deletions
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
INCLUDES = -I$(APPSDIR) -I.. -I. -I$(FIRMDIR)/include -I$(FIRMDIR)/export \
|
INCLUDES = -I$(APPSDIR) -I.. -I. -I$(FIRMDIR)/include -I$(FIRMDIR)/export \
|
||||||
-I$(FIRMDIR)/common -I$(FIRMDIR)/drivers -I$(OUTDIR) -I$(BUILDDIR)
|
-I$(FIRMDIR)/common -I$(FIRMDIR)/drivers -I$(OUTDIR) -I$(BUILDDIR)
|
||||||
CFLAGS = $(GCCOPTS) -O3 $(INCLUDES) $(TARGET) $(EXTRA_DEFINES) \
|
CFLAGS = $(GCCOPTS) $(INCLUDES) $(TARGET) $(EXTRA_DEFINES) \
|
||||||
-DTARGET_ID=$(TARGET_ID) -DMEM=${MEMORYSIZE} -DPLUGIN
|
-DTARGET_ID=$(TARGET_ID) -DMEM=${MEMORYSIZE} -DPLUGIN
|
||||||
|
|
||||||
ifdef APPEXTRA
|
ifdef APPEXTRA
|
||||||
|
@ -109,4 +109,3 @@ clean:
|
||||||
@rm -f $(OBJDIR)/chessbox.* $(DEPFILE)
|
@rm -f $(OBJDIR)/chessbox.* $(DEPFILE)
|
||||||
|
|
||||||
-include $(DEPFILE)
|
-include $(DEPFILE)
|
||||||
|
|
||||||
|
|
|
@ -31,9 +31,6 @@ struct cb_command {
|
||||||
unsigned short mv;
|
unsigned short mv;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* global rockbox api */
|
|
||||||
static struct plugin_api* rb;
|
|
||||||
|
|
||||||
/* External bitmaps */
|
/* External bitmaps */
|
||||||
extern const fb_data chessbox_pieces[];
|
extern const fb_data chessbox_pieces[];
|
||||||
|
|
||||||
|
@ -43,13 +40,13 @@ PLUGIN_HEADER
|
||||||
/* button definitions */
|
/* button definitions */
|
||||||
#if (CONFIG_KEYPAD == IPOD_3G_PAD) || (CONFIG_KEYPAD == IPOD_4G_PAD)
|
#if (CONFIG_KEYPAD == IPOD_3G_PAD) || (CONFIG_KEYPAD == IPOD_4G_PAD)
|
||||||
#define CB_SELECT BUTTON_SELECT
|
#define CB_SELECT BUTTON_SELECT
|
||||||
#define CB_UP BUTTON_SCROLL_BACK
|
#define CB_UP BUTTON_MENU
|
||||||
#define CB_DOWN BUTTON_SCROLL_FWD
|
#define CB_DOWN BUTTON_PLAY
|
||||||
#define CB_LEFT BUTTON_LEFT
|
#define CB_LEFT BUTTON_LEFT
|
||||||
#define CB_RIGHT BUTTON_RIGHT
|
#define CB_RIGHT BUTTON_RIGHT
|
||||||
#define CB_PLAY BUTTON_PLAY
|
#define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY)
|
||||||
#define CB_LEVEL BUTTON_MENU
|
#define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT)
|
||||||
#define CB_QUIT BUTTON_REL
|
#define CB_QUIT (BUTTON_SELECT | BUTTON_MENU)
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == IAUDIO_X5_PAD
|
#elif CONFIG_KEYPAD == IAUDIO_X5_PAD
|
||||||
#define CB_SELECT BUTTON_MENU
|
#define CB_SELECT BUTTON_MENU
|
||||||
|
|
|
@ -66,7 +66,7 @@
|
||||||
#define taxicab(a,b) (abs(column[a]-column[b]) + abs(row[a]-row[b]))
|
#define taxicab(a,b) (abs(column[a]-column[b]) + abs(row[a]-row[b]))
|
||||||
|
|
||||||
/* ---- RockBox datatypes and variables */
|
/* ---- RockBox datatypes and variables */
|
||||||
static struct plugin_api* rb;
|
struct plugin_api* rb;
|
||||||
|
|
||||||
/* ---- Chess datatypes and variables ---- */
|
/* ---- Chess datatypes and variables ---- */
|
||||||
struct leaf
|
struct leaf
|
||||||
|
@ -332,8 +332,7 @@ short pscore[3];
|
||||||
xside = otherside[side];
|
xside = otherside[side];
|
||||||
pscore[white] = pscore[black] = 0;
|
pscore[white] = pscore[black] = 0;
|
||||||
|
|
||||||
/* ok, I will yield here although this function will be called much more
|
/* ok, I will yield here for lower levels */
|
||||||
many times than needed I think */
|
|
||||||
rb->yield();
|
rb->yield();
|
||||||
|
|
||||||
for (c1 = white; c1 <= black; c1++)
|
for (c1 = white; c1 <= black; c1++)
|
||||||
|
@ -1238,6 +1237,9 @@ short xside,pbst,d,e,cf,score,rcnt;
|
||||||
unsigned short mv,nxtline[maxdepth];
|
unsigned short mv,nxtline[maxdepth];
|
||||||
struct leaf *node,tmp;
|
struct leaf *node,tmp;
|
||||||
|
|
||||||
|
/* ok, I will yield here for higher levels */
|
||||||
|
rb->yield();
|
||||||
|
|
||||||
NodeCnt++;
|
NodeCnt++;
|
||||||
xside = otherside[side];
|
xside = otherside[side];
|
||||||
|
|
||||||
|
@ -2353,7 +2355,7 @@ void GNUChess_Initialize ( void ) {
|
||||||
/*ttable = (struct hashentry *)malloc(ttblsz *
|
/*ttable = (struct hashentry *)malloc(ttblsz *
|
||||||
(unsigned long)sizeof(struct hashentry));*/
|
(unsigned long)sizeof(struct hashentry));*/
|
||||||
buffer_size = ttblsz * sizeof(struct hashentry);
|
buffer_size = ttblsz * sizeof(struct hashentry);
|
||||||
ttable = rb->plugin_get_buffer( &buffer_size );
|
ttable = (struct hashentry *)rb->plugin_get_buffer( &buffer_size );
|
||||||
Level = 1;
|
Level = 1;
|
||||||
OperatorTime = 0;
|
OperatorTime = 0;
|
||||||
TCmoves = 60;
|
TCmoves = 60;
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
#define valueQ 1100
|
#define valueQ 1100
|
||||||
#define valueK 1200
|
#define valueK 1200
|
||||||
|
|
||||||
|
/* ---- chess system global variables ---- */
|
||||||
extern short mate,opponent,computer;
|
extern short mate,opponent,computer;
|
||||||
extern short locn[8][8];
|
extern short locn[8][8];
|
||||||
extern short board[64];
|
extern short board[64];
|
||||||
|
@ -27,7 +27,10 @@ extern short color[64];
|
||||||
extern long Level;
|
extern long Level;
|
||||||
extern short TCflag,TCmoves,TCminutes;
|
extern short TCflag,TCmoves,TCminutes;
|
||||||
|
|
||||||
|
/* ---- RockBox integration ---- */
|
||||||
|
extern struct plugin_api* rb;
|
||||||
|
|
||||||
|
/* ---- The beginning of a GNUChess v2 APIfication ---- */
|
||||||
void SetTimeControl(void);
|
void SetTimeControl(void);
|
||||||
void GNUChess_Initialize(void);
|
void GNUChess_Initialize(void);
|
||||||
int VerifyMove(char s[],short iop,unsigned short *mv);
|
int VerifyMove(char s[],short iop,unsigned short *mv);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue