🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

2 total messages Started by FisherTS Wed, 13 Nov 1985 13:59
Old Empire 1.1 makefile problems?
#395
Author: FisherTS
Date: Wed, 13 Nov 1985 13:59
25 lines
1859 bytes
re: Version 1.1 makefile problem?

Has anyone else experienced the makefile problem mentioned by Sean
Casey (ukma!sean)?  I'm not sure what directories are involved, but if the
reference was to the EMPIRE and EMPCRE directories, I don't agree with
Sean's recommendation to add the $(LIBDIR).  Those two directories
contain a subdirectory named _unix.O to hold the empire.o and empcre.o
objects.  Those two objects shouldn't be placed in the library
directory, ../_unix.O, where empsub.a, empcom.a, empdis.o, and empglb.o
live.
Actually, it won't hurt anything if they get put there... but that
wasn't the intent.
I've seen the makefiles bomb if the directories weren't created properly
by the tar command.  Make will complain if the _unix.O directory isn't
there, and I think the compiler complains if the ownership & mode don't allow
writing.  If that was the problem, all you have to do is create the directory
with mode 755.

If anyone has solutions to the 3b2 problems - please mail them to me
at ihnp4!druxn!tsf.  I don't have access to a 3b2 (yet).  The only
problems I've heard of so far are the execl problem and something to
do with floating point.  I think you have to compile it with some kind
of option or empcre will die at the first floating point operation.

Tom Fisher	ihnp4!druxn!tsf
Old empire 1.1 problems: solved
#397
Author: Sean Casey
Date: Thu, 14 Nov 1985 19:25
88 lines
3917 bytes
IT WORKS!  IT WORKS!  IT WORKS!

Here's some fixes and suggestions.  These are primarily for the guy
who's maintaining it, but I thought they might have some general
usefulness so I'm posting them here.


Makefile:  _unix.O

I think it is a good idea to change the makefiles to use the $(LIBDIR)
directory.  This cuts down on the complexity by keeping things in a
common directory.  Whether or not I can persuade Tom that it's a good
idea,  I'd also like to suggest that lines be added to the makefile(s)
to create the _unix.O directory(ies).  There were no instructions that
a _unix.O directory would have to be created anywhere, so inexperienced
installers may have a little trouble with it.

3b2 floating point:

A 3b2 has no floating point hardware and must emulate it in software.
Unfortunately, the C compiler doesn't know this, and blindly generates
floating point instructions for the wc32000.  This can cause extreme
consternation when the poor user gets "Illegal instruction - core dump"
upon execution of the first floating point instruction.  There is a
barely documented option to cc, "-f" that will force the loading of
floating point emulation routines.  Note that the "-f" need only appear
in the final load of whatever you are compiling.

execl() bug:

After about 6 hours of testing and recompiling, I found out what broke
execl().  execl() works before sigsave() and not after.  Here's the
code to sigsave.c:

----- EMPSUBS/sigsave.c -----

extern	int	sigaddr[];

sigsave()
{
	sigaddr[0] = signal(-1, 1);
	sigaddr[1] = signal(2, 1);
	sigaddr[2] = signal(3, 1);
}

sigrest()
{
	signal(-1, sigaddr[0]);
	signal(2, sigaddr[1]);
	signal(3, sigaddr[2]);
}

What is signal -1?  I can't find it in signal.h, and as documented,
the signal(2) call does nothing special with it.  It shouldn't even work,
but it does for BSD.  Beats me.  My temporary fix was to change the -1
to 1 (SIGHUP), but a REAL fix would use the defines in signal.h.

============
Improvements
============

I'm announcing these because I don't want to duplicate someone's efforts
if I don't have to.  Let me know if you are working on any of these...

I'm probably going to hack up empire so that it does NOT use 6 overlapping
modules.  I imagine that this was done to make it fit on a small address
space machine.  This is really unnecessary for something like a 3b2, or
a Vax that has enough address space to handle it.  The scheme uses much
more disk space than is necessary.  It also slows it down because a 3b2
has a pretty slow disk (well, ours does).  If and when I get this completed
I'll send it to Tom and he can do an official announcement.

I'm also going to write a server to run empire over 3bnet so that everyone
on 3bnet will be playing the same game.  The game is much more fun with
lots of players.  This will involve modifying part of empire so that it
can be used with a pty.

Happy emping!

Sean


-- 
-------------------------------------------------------------------------------
Sean Casey                             UUCP:  sean@ukma.UUCP   or
915 Patterson Office Tower                    {cbosgd,anlams,hasmed}!ukma!sean
University of Kentucky                 ARPA:  ukma!sean@ANL-MCS.ARPA
Lexington, Ky. 40506-0027            BITNET:  sean@UKMA.BITNET
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads