Message-ID: <32B79DB7.51F8@post.comstar.ru> Date: Wed, 18 Dec 1996 10:31:03 +0300 From: Dim Zegebart Reply-To: zager AT post DOT comstar DOT ru Organization: Comstar Ltd. MIME-Version: 1.0 To: rog AT col DOT ca CC: DJGPP Mail List Subject: Re: Allegro make error References: <594lg3$3g0 AT nr1 DOT calgary DOT istar DOT net> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Roger Carbol wrote: > > Well, I download Allegro, with much anticipation as it looks like > pretty much the coolest thing since sliced breadboards. > > So I ran make. Then I re-unzipped it with -d and ran make again. > > It got farther, but then resulted in the following message: > > > gcc -I. -Isrc -Wall -o obj/bank.o -c src/bank.S > > c:/djgpp/tmp\ccbaaaaa: Assembler messages: > > c:/djgpp/tmp\ccbaaaaa:252: Error: register does not match opcode suffix > > c:/djgpp/tmp\ccbaaaaa:269: Error: register does not match opcode suffix > > make.exe: *** [obj/bank.o] Error 1 I have the same problem. And here are steps how to solve it. 1st You need to find those lines 252,269, the problem is that .S scr preprocessed with asmdef.exe (build from asmdef.c in the Allegro src dir) so the gcc return error line number different from original line number. So use a small trick : open bank.s for edit in text editor wich display cursor position and type any symbol (for example @$@) at the line number about 240 and run make. GCC return error line number where you type @S@. Step this proc to finde lines 252 and 269. So here is output from fc . BANK is old version of file and BANK.S is a new file. WARNING: I'm not shure my changes is absolutely right, so think twice before you applied it. Comparing files BANK and BANK.S ***** BANK movb %al, %ah /* two 32k apertures, set bank and bank+1 */ incl %ah !!!!!!!!!!!!INCL applied to 32-bit regs shll $8, %eax ***** BANK.S movb %al, %ah /* two 32k apertures, set bank and bank+1 */ inc %ah !!!!!!!!!!!!!I change INCL to INC (may be it's wrong and you need change %AH to %EAX) shll $8, %eax ***** And the same problem: ***** BANK BANK_SWITCHER( __mach64_read_bank, __last_bank_2, pushl %edx ***** BANK.S BANK_SWITCHER( __mach64_read_bank, __last_bank_2, pushl %dx ***** -- Regards, Dim Zegebart, Moscow Russia.