www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/11/25/16:35:50

Newsgroups: comp.os.msdos.djgpp
From: lhelgela AT c2i DOT net (Lars Helgeland)
Subject: Re: Black screen and DJMoria
References: <81f3mf$k1c$1 AT news7 DOT svr DOT pol DOT co DOT uk>
X-Newsreader: News Xpress 2.01
Lines: 70
Message-ID: <pBh%3.2593$Zc3.120181@juliett.dax.net>
Date: Thu, 25 Nov 1999 21:10:45 GMT
NNTP-Posting-Host: 193.217.245.201
X-Complaints-To: abuse AT tele2 DOT no
X-Trace: juliett.dax.net 943564245 193.217.245.201 (Thu, 25 Nov 1999 22:10:45 MET)
NNTP-Posting-Date: Thu, 25 Nov 1999 22:10:45 MET
Organization: Tele2 Norway AS Public Access
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Ghalos" <greg AT holdridge7 DOT freeserve DOT co DOT uk> wrote:
>two questions really:
> ...
>2) Second I have download DJMoria5.5.2 but I cant get it to compile.  I have
>followed the readme (defines and undefines / edit curses.h / include
>libcurso.a / force unsigned characters) but there are still three unresolved
>references (there were no header files supplied either)
>
>these refs are to
>
>'ansi' an extern int
>'ansi_prep' an extern function
>and 'set_large' another extern function
>
>anyone managed to get this to compile?

DJMoria is just a patch for DJGPP aginst the standard Umoria 5.5.2
sources. You have to download and unzip the Umoria source code from
ftp://ftp.greyhelm.com/pub/Games/Moria/source/um5.5.2.tar.Z
and then unzip Djmoria.zip into the same directory, overwriting
existing files.

Here is what I did when I compiled Umoria 5.5.2 a year ago:

In djgpp.env:
under [gcc], added %DJDIR%/contrib/pdcurs22/lib to LIBRARY_PATH
under [cpp], added %DJDIR%/contrib/pdcurs22/include to C_INCLUDE_PATH
(or you could use -L/-I flags in the Makefile for this).

Moved ms_ansi.h, ms_ansi.c and ms_misc.c from the ibmpc to the
source dir.

Left curses.h intact and instead:
used -D__GO32__ flag in the Makefile;
changed all occurrences of the macro 'ANSI' in io.c, ms_ansi.c
and ms_misc.c to 'MS_ANSI'.

Makefile:
--------------------<cut>--------------------
OBJS = \
  create.o creature.o death.o desc.o dungeon.o \
  eat.o files.o generate.o help.o io.o rnd.o \
  magic.o main.o misc1.o misc2.o misc3.o misc4.o \
  monsters.o moria1.o moria2.o moria3.o moria4.o \
  ms_ansi.o ms_misc.o player.o potions.o \
  prayer.o recall.o save.o scrolls.o sets.o signals.o \
  spells.o staffs.o store1.o store2.o tables.o treasure.o \
  variable.o wands.o wizard.o

CC = gcc

CFLAGS = -Wall -O2 -s -funsigned-char -DMSDOS -D__GO32__ -DPC_CURSES -Uunix

LIBS = -lCURSO

moria.exe: $(OBJS)
        $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBS)
--------------------<cut>--------------------
^^^^^^^^tab

However, if I remember correctly you need not bother with the ms_ansi.*
files, since the ANSI screen handling never worked in the first place.

Also, it looks like HAVE_PROTO has replaced ANSI in PDCurses 2.3,
so I think compiling with PDCurses 2.3 instead of 2.2 should eliminate
the ANSI macro conflict altogether. (The PDCurses homepage is at
http://www.lightlink.com/hessling/).

-- 
Lars

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019