1
0
Fork 0
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:
Dave Chapman 2006-02-23 21:16:51 +00:00
parent e376545211
commit a3cfe0a434
4 changed files with 16 additions and 15 deletions

View file

@ -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)

View file

@ -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

View file

@ -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;

View file

@ -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);