Xref: news-dnh.mv.net comp.os.msdos.djgpp:1205 Newsgroups: comp.os.msdos.djgpp Path: news-dnh.mv.net!mv!news.sprintlink.net!newsfeed.internetmci.com!tank.news.pipex.net!pipex!dish.news.pipex.net!pipex!uunet!in1.uu.net!psinntp!psinntp!psinntp!psinntp!netrixgw.netrix.com!jasmine!ld From: ld AT jasmine DOT netrix DOT com (Long Doan) Subject: Re: Problem with Angband 2.7.7v4 ang Djgpp 2.0 beta1 To: Jaccard AT Dial DOT Eunet DOT Ch Followup-To: comp.os.msdos.djgpp Sender: ld AT jasmine (Long Doan) Reply-To: ld AT netrix DOT com Organization: Netrix Corporation References: Distribution: World Date: Thu, 27 Jul 1995 17:49:49 GMT Lines: 62 Dj-Gateway: from newsgroup comp.os.msdos.djgpp In article , Jaccard AT Dial DOT Eunet DOT Ch (Francois Jaccard) writes: |> Hi, |> |> I tried to compile the game Angband 2.7.7v4 with the beta of Djgpp 2.0 |> and when run I have these errors: Based on the registers dumps, the problem seems to be related with your stack pointer/frame pointer: - Under DOS, esp = e3279, ebp = ff; - Under NT, esp = e029b, ebp = e53 It seems like: a. Your stack is growing up, which should be problematic since GCC expects the stack to grow down. b. You've overflowed the stack somehow. c. You're messing with the stack pointer (probably by writing values to areas on the stack.) In addition, since ss == ds in both cases, it's possible that return address, flags, etc. have been trashed. It looks like the code is using some kind of uninitialized variable, try to compile with -Wall -Werror and see what'll happen. Hope that helps, Long. |> |> |> Dos 6.22 |> |> Cannot continue from exception, exiting due to signal 0123 |> General Protection Fault at eip=00072e2c |> eax=00000001 ebx=00000017 ecx=00001fa2 edx=000e314b esi=000e61c0 |> edi=000e6180 |> ebp=000000ff esp=000e3297 cs=00a7 ds=00af es=00af fs=00cf gs=00cf |> ss=00af |> Call frame traceback EIPs: |> 0x00072e2c |> |> WinNT 3.50 Build 802 Service Pack 2 |> |> Cannot continue from exception, exiting due to signal 0123 |> General Protection Fault at eip=0000001a |> eax=00000001 ebx=00000017 ecx=00001fa2 edx=000e014e esi=000e5380 |> edi=000e5340 |> ebp=00000e53 esp=000e029b cs=01c7 ds=01cf es=01cf fs=01f7 gs=01f7 |> ss=01cf |> Call frame traceback EIPs: |> 0x0000001a |> |> My system is an ALR Evolution V/Q pentium 90Mhz (upgraded from 60), |> 48Mb ram. I tried to compile with djgpp 1.12m4 but was unable to |> compile anything since I upgraded. It is an upgrade board from ALR. |> Everything works correctly but the compiles with Gcc (2.6.3 and 2.7.0) |> under Linux (Kernel 1.3.9 (slackware) and 1.2.1 (debian 0.93)) and |> djgpp under Dos/WinNT (1.12m4 and 2,0 beta). |> |> Any ideas? |> |> Thanks, |> ---- |> Francois Jaccard |>