From: mvparvia AT delta DOT hut DOT fi (Mikko V.I. Parviainen) Newsgroups: comp.os.msdos.djgpp Subject: Allegro, pointers : how do I get line from BITMAP? Date: 1 Jan 99 10:35:26 GMT Organization: Helsinki University of Technology, CS lab Lines: 45 Distribution: world Message-ID: NNTP-Posting-Host: delta.hut.fi To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Hi! I have a problem. I wrote a game of life during Christmas holidays. It is a bit slow, so I have been thinking of ways to optimize it. Currently it holds the world as a BITMAP struct, and uses BITMAP's line-field to access the points. (Definition of line : struct BITMAP { .... unsigned char *line[0]; } ) Now, the routine which checks the number of live adjacent cells of all cells is passed a BITMAP *, and it checks the adjacent cells with expressions like (BITMAP *b) b->line[y][x] Functions well. However, the eight indirections (?) of b for every cell do add significant overhead, so I tried to use an alias for b->line, but could not define the variable. In other words, I am trying to define a variable so that I could say temp[y][x] to access b->line[y][x] but cannot find the right expression for temp. If you could point me to the right declaration (or some other solution), I would be mostly thankful. I have been experimenting with 1024x768 worlds, which are slow on my P200. -- -- Mikko Parviainen IMTU tc+ tm++ tn+ ru+ ge++ 3i+ jt-- jd++ pi au st- ls kk hi++ dr++ as+ va+ so- zh+ da++