From: "Evan" Newsgroups: comp.os.msdos.djgpp Subject: Sprite Trouble Date: Tue, 2 Jun 1998 15:03:30 -0500 Organization: OnTheNet www.getonthe.net Lines: 79 Message-ID: <6l1m0g$rqs$1@news.getonthe.net> NNTP-Posting-Host: max22.ctg146.getonthe.net To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk I Have this function: void SpriteInit(sprite *sprite,int x,int y,int height, int width, int ac,int as,int mc,int ms) { // this function initializes a sprite with the sent data int index; sprite->x = x; sprite->y = y; sprite->oldX = x; sprite->oldY = y; sprite->width = width; sprite->height = height; sprite->aClock = ac; sprite->aSpeed = as; sprite->mClock = mc; sprite->mSpeed = ms; sprite->currFrame = 0; sprite->state = 0; sprite->numFrames = 0; sprite->background = (char *)malloc(width * height+1); // set all bitmap pointers to null for (index=0; index<30; index++) sprite->frames[index] = NULL; } // end Sprite_Init and this structure: typedef struct sprite_type { int x, y; int width, height; int oldX, oldY; int aClock, aSpeed; int mClock, mSpeed; char *frames[30]; int currFrame; int numFrames; int state; char *background; void *extraData; } sprite; and when I do this: sprite *MySprite SpriteInit(MySprite, 20, 20, 10, 10, 0, 0, 0, 0); I get this: General Protection Fault at eip=00000020 eax=00000000 ebx=00051180 ecx=00000007 edx=0000ffff esi=00000054 edi=0000f8dc ebp=0004f8a4 esp=0004f8a4 program=c:/djgpp/Graph.exe cs: sel=021f base=8513b000 limit=0007ffff ds: sel=0227 base=8513b000 limit=0007ffff es: sel=0227 base=8513b000 limit=0007ffff fs: sel=01f7 base=0000f310 limit=0000ffff gs: sel=0237 base=00000000 limit=ffffffff ss: sel=0227 base=8513b000 limit=0007ffff Call frame traceback EIPs: 0x00000020 0x00000000 please help!!