1
0
mirror of https://github.com/Interlisp/maiko.git synced 2026-02-27 17:12:42 +00:00

Remove AIX RS/6000 platform support. (#46)

AIX on PS/2 will be removed separately.
This commit is contained in:
Bruce Mitchener
2020-12-15 03:13:38 +07:00
committed by GitHub
parent 605499bfc2
commit fd0e12e855
11 changed files with 6 additions and 290 deletions

View File

@@ -27,7 +27,6 @@ AIXPS2 True if compiling for PS/2 under AIX (our flag)
sparc True if we're compiling on a SPARC machine.
mc68020 True if we're compiling on a Motorola 680x0 machine.
sun3 We're compiling for a Sun-3.
RS6000 We're compiling for the RS/6000 processor.
UNSAFE If true, enables the "fast" version of 68020 opcodes.
NOASM If true, suppress any attempt to include assembler

View File

@@ -1,66 +0,0 @@
# Options for AIX 3.1, IBM RISC System/6000, and X-Windows
DEMO =
EURO =
XFILES = $(OBJECTDIR)XClose.o \
$(OBJECTDIR)Cursor.o \
$(OBJECTDIR)XWindow.o \
$(OBJECTDIR)DoRing.o \
$(OBJECTDIR)DoScroll.o \
$(OBJECTDIR)XEvent.o \
$(OBJECTDIR)XGravity.o \
$(OBJECTDIR)XInit.o \
$(OBJECTDIR)Xevinit.o \
$(OBJECTDIR)Xkbdmus.o \
$(OBJECTDIR)Xlspwin.o \
$(OBJECTDIR)Xbbt.o \
$(OBJECTDIR)Xkbd.o \
$(OBJECTDIR)Xmkicon.o \
$(OBJECTDIR)Xopendsp.o \
$(OBJECTDIR)Xrdopt.o \
$(OBJECTDIR)Xreconf.o \
$(OBJECTDIR)XScroll.o \
$(OBJECTDIR)Xscrolb.o \
$(OBJECTDIR)XCursor.o \
$(OBJECTDIR)XMouse.o \
$(OBJECTDIR)Xsubwin.o \
$(OBJECTDIR)Xcolor.o \
$(OBJECTDIR)Xwinman.o
XVERSION = XV11R4
XFLAGS = -DXWINDOW -D$(XVERSION)
# This is to make the %$#@! Apollo cc happy
OEXT = .o
# OPTFLAGS is normally -O.
#OPTFLAGS = -g
OPTFLAGS = -O
DISPOPTFLAGS = -O
FPFLAGS =
DFLAGS = -DFSERROR -DNEW_STORAGE -DAIX -D_BSD -DNOASM -DNOPIXRECT -DNOETHER \
-DRS6000 -DFORKCOMM -DLOGINT -DBIGATOMS -DNOFORN $(DEMO) $(EURO) $(XFLAGS)
LDFLAGS = -lX11 -lc -lm -lbsd
LDELDFLAGS = -lX11 -lc -lm -lbsd
INLINE =
BITBLTFILE =
BYTESWAPFILES = $(OBJECTDIR)byteswap$(OEXT)
OBJECTDIR = ../$(RELEASENAME)/
# don't need ldeether on this machine, so omit it from here:
default : ../$(OSARCHNAME)/lde
# Special rules to create xc.o on IBM RISC-system/6000's:
$(OBJECTDIR)xc.o: $(SRCDIR)xc.c $(INCDIR)lispemul.h $(INCDIR)emlglob.h $(INCDIR)address.h \
$(INCDIR)adr68k.h $(INCDIR)stack.h $(INCDIR)lspglob.h \
$(INCDIR)lsptypes.h $(INCDIR)lispmap.h $(INCDIR)cell.h \
$(INCDIR)initatms.h $(INCDIR)gcdata.h \
$(INCDIR)arith.h $(INCDIR)stream.h \
$(INCDIR)tos1defs.h $(INCDIR)tosret.h \
$(INCDIR)tosfns.h $(INCDIR)inlineC.h
cc $(DISPRFLAGS) $(SRCDIR)xc.c -I$(INCDIR) $(SRCDIR)xc.c -o $(OBJECTDIR)xc.o

View File

@@ -1,120 +0,0 @@
# makeright
# @(#) makeright Version 1.12 (7/18/90).
##***********************************************************************/
## */
## Copyright 1989, 1990 Venue, Fuji Xerox Co., Ltd, Xerox Corp. */
## */
## This file is work-product resulting from the Xerox/Venue */
## Agreement dated 18-August-1989 for support of Medley. */
## */
##***********************************************************************/
#
# Feb. 6 1990 osamu: Add display option
# release option does not support yet.
# Apr.23 1990 osamu: add release option.
#
# Jul 18 1990 JDS: Add 'init' option for making init-loading emulators
#
# usage: makeright [display-option] [other-option]
#
# example: makeright single ; make lde for mmaped displayFB
# makeright multi ; make lde for cg3,cg6
# makeright x ; make lde for X-windows
# makeright color ; make lde with color support in it.
# makeright multi release ; make release version of lde for cg3,cg6
# makeright init ; make lde for loading INIT.DLINIT b/w only
#
# makeright multi requires directory "maiko/${osversion}.${architecture}-multi"
# (ex. maiko/sunos4.sparc-multi)
# object files are stored there.
#
# makeright init requires directory "maiko/init.${architecture}
#
# Note: X11R4 environment link shared libraries.
# lde need X library. If lde links shared libraries,
# X shared libraries are needed at run time.
#
# Hide X shared libraries from link libraries search path.
setenv LD_LIBRARY_PATH /usr/local/lib
set RELDIR = ../RELEASE/
if($1 == "") then
set display=single
else
if($1 == "release") then
switch($2)
case single:
set display = single
breaksw
case multi:
set display = multi
breaksw
case x:
set display = x
breaksw
default:
makeright single release
makeright multi release
makeright x release
exit
breaksw
endsw
else
set display=$1
endif
endif
if( $#argv > 0 ) then
shift
endif
set architecture = rs6000
set osversion = aix
switch($display)
case init:
set display = single
set releasename = init.${architecture}
set ldename = ldeinit
breaksw
case single:
set releasename = ${osversion}.${architecture}
set ldename = ldesingle
breaksw
case multi:
set releasename = ${osversion}.${architecture}-${display}
set ldename = ldemulti
breaksw
case x:
set releasename = ${osversion}.${architecture}-${display}
set ldename = ldex
breaksw
default:
echo "display-option: $display is not supported."
exit
breaksw
endsw
set releaseflg = 0
if( "$1" == "release" ) then
set releaseflg = 1
if($display != single) then
if( !(-e usermakefile-${releasename})) then
ln usermakefile-${osversion}.${architecture} usermakefile-${releasename}
endif
endif
else
set releaseflg = 0
endif
set installdir = ${RELDIR}install.${osversion}.${architecture}/
#if($display == single ) then
# set releasename = ${osversion}.${architecture}
#else
# set releasename = ${osversion}.${architecture}-${display}
#endif
echo start making lde for ${releasename}.
# then finally do the make, including the right stuff
# With makefile-tail merged, this should only take ONE make command....
make RELEASENAME=${releasename} INSDIR=${installdir} LDENAME=${ldename} \
OSARCHNAME=${osversion}.${architecture} \
-f makefile-header -f makefile-${releasename} \
-f makefile-tail $*

View File

@@ -238,15 +238,6 @@ typedef signed char s_char;
/********************************************************/
/* */
/********************************************************/
#ifdef RS6000
typedef signed char s_char;
#endif /* RS6000 */
/********************************************************/
/* */
/********************************************************/

View File

@@ -83,10 +83,6 @@ LispPTR CHAR_openfile(LispPTR *args)
struct stat statbuf;
char pathname[MAXPATHLEN];
#if defined(RS6000)
static int one = 1; /* Used in ioctl, etc. */
#endif
Lisp_errno = (int *)(Addr68k_from_LADDR(args[2]));
LispStringToCString(args[0], pathname, MAXPATHLEN);
@@ -107,16 +103,11 @@ LispPTR CHAR_openfile(LispPTR *args)
*Lisp_errno = errno;
return (NIL);
}
/* Prevent I/O requests from blocking -- make them error */
/* if no char is available, or there's no room in pipe. */
#ifdef RS6000
ioctl(fd, FIONBIO, &one);
fcntl(fd, F_SETOWN, getpid());
#else
/* Prevent I/O requests from blocking -- make them error */
/* if no char is available, or there's no room in pipe. */
rval = fcntl(fd, F_GETFL, 0);
rval |= FNDELAY;
rval = fcntl(fd, F_SETFL, rval);
#endif /* RS6000 */
return (GetSmallp(fd));
#endif /* DOS */

View File

@@ -2399,15 +2399,13 @@ LispPTR COM_getfreeblock(register LispPTR *args)
*Lisp_errno = errno;
return (NIL);
}
#if defined(RS6000)
*buf = (sfsbuf.f_bavail) * 4; /* AIX 3.1 returns no. of 4K blocks */
#elif defined(SYSVONLY) || defined(OS5)
#if defined(SYSVONLY) || defined(OS5)
*buf = sfsbuf.f_bfree;
#elif (!defined(AIXPS2))
*buf = sfsbuf.f_bavail;
#else
*buf = 200000; /* FAKE - pretend we have 200,000 blocks free! */
#endif /* RS6000 */
#endif
#endif /* DOS */
return (ATOM_T);
}

View File

@@ -92,9 +92,6 @@ LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, Li
int addr_class, protocol;
DLword *buffer;
int result;
#ifdef RS6000
static int one = 1; /* Used in ioctl */
#endif
switch (op & 0xFFFF) {
case TCPhostlookup:
@@ -116,13 +113,8 @@ LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, Li
addr_class = LispNumToCInt(nameConn);
protocol = LispNumToCInt(proto);
result = socket(addr_class, protocol, 0);
#ifdef RS6000
ioctl(result, FIONBIO, &one);
fcntl(result, F_SETOWN, getpid());
#else
fcntl(result, F_SETFL, fcntl(result, F_GETFL, 0) | FNDELAY | FASYNC);
fcntl(result, F_SETOWN, getpid());
#endif /* RS6000 */
return (GetSmallp(result));
break;
@@ -145,15 +137,8 @@ LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, Li
perror("TCP connect");
return (NIL);
}
#ifdef RS6000
/* FNDELAY alone isn't enough on aix */
/* (don't know if FIONBIO alone is enough) */
ioctl(result, FIONBIO, &one);
fcntl(result, F_SETOWN, getpid());
#else
fcntl(result, F_SETFL, fcntl(result, F_GETFL, 0) | FNDELAY);
fcntl(result, F_SETOWN, getpid());
#endif /* RS6000 */
return (GetSmallp(result));
break;
@@ -225,13 +210,8 @@ LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, Li
int oldmask = sigblock(sigmask(SIGIO));
#endif /* SYSVSIGNALS */
#ifdef RS6000
ioctl(result, FIONBIO, &one);
fcntl(result, F_SETOWN, getpid());
#else
fcntl(result, F_SETFL, fcntl(result, F_GETFL, 0) | FNDELAY | FASYNC);
fcntl(result, F_SETOWN, getpid());
#endif /* RS6000 */
if (listen(result, 5) == -1) {
perror("TCP Listen");
@@ -263,13 +243,8 @@ LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, Li
if (errno != EWOULDBLOCK) perror("TCP Accept");
return (NIL);
}
#ifdef RS6000
ioctl(result, FIONBIO, &one);
fcntl(result, F_SETOWN, getpid());
#else
fcntl(result, F_SETFL, fcntl(result, F_GETFL, 0) | FNDELAY);
fcntl(result, F_SETOWN, getpid());
#endif /* RS6000 */
return (GetSmallp(result));
break;
@@ -306,13 +281,8 @@ LispPTR subr_TCP_ops(int op, LispPTR nameConn, LispPTR proto, LispPTR length, Li
close(result);
return (NIL);
}
#ifdef RS6000
ioctl(result, FIONBIO, &one);
fcntl(result, F_SETOWN, getpid());
#else
fcntl(result, F_SETFL, fcntl(result, F_GETFL, 0) | FNDELAY | FASYNC);
fcntl(result, F_SETOWN, getpid());
#endif /* RS6000 */
FD_SET(result, &LispIOFds); /* so we get interrupts */
FD_SET(result, &LispReadFds);

View File

@@ -227,27 +227,6 @@ u_char SUNLispKeyMap_jle[128] = {
/* [116] 255 -> 103 Henkan */
/* [117] 255 -> 109 Nihongo On-Off */
/* For IBM Risc System 6000 */
u_char SUNLispKeyMap_RS6000[128] = {
/* 7 */ 255, 255, 45, 32, 17, 16, 1, 0,
/* 15 */ 2, 4, 53, 22, 8, 10, 59, 255,
/* 23 */ 15, 34, 19, 18, 3, 48, 49, 51,
/* 31 */ 6, 23, 25, 11, 58, 29, 105, 56,
/* 39 */ 21, 20, 5, 35, 50, 52, 38, 9,
/* 47 */ 26, 43, 28, 255, 44, 41, 255, 40,
/* 55 */ 24, 37, 7, 39, 54, 55, 27, 42,
/* 63 */ 12, 255, 60, 36, 255, 31, 57, 93,
/* 71 */ 255, 47, 255, 255, 255, 255, 255, 255,
/* 79 */ 255, 255, 255, 255, 89, 46, 255, 255,
/* 87 */ 129, 62, 90, 255, 130, 131, 63, 91,
/* 95 */ 255, 255, 132, 73, 81, 84, 94, 255,
/* 103 */ 65, 82, 85, 69, 98, 95, 83, 87,
/* 111 */ 70, 13, 96, 102, 255, 128, 255, 33,
/* 119 */ 255, 97, 99, 100, 67, 68, 101, 66,
/* 127 */ 104, 80, 106, 107, 92, 76, 14, 61
};
u_char *XGenericKeyMap; /* filled in with malloc if needed */
/* For the IBM-101 kbd FF marks exceptions */
@@ -409,7 +388,7 @@ char *getenv(); /* ---- external entry points --------*/
#define MIN_KEYTYPE 3
#define KB_AS3000J (7 + MIN_KEYTYPE)
#define KB_RS6000 (8 + MIN_KEYTYPE)
#define KB_RS6000 (8 + MIN_KEYTYPE) /* TODO: Can we remove this? */
#define KB_DEC3100 (9 + MIN_KEYTYPE) /* TODO: Can we remove this? */
#define KB_HP9000 (10 + MIN_KEYTYPE) /* TODO: Can we remove this? */
#define KB_X (11 + MIN_KEYTYPE)
@@ -570,9 +549,7 @@ void keyboardtype(int fd)
/* Get keytype from LDEKBDTYPE */
if ((key = getenv("LDEKBDTYPE")) == 0) {
#ifdef RS6000
type = KB_RS6000;
#elif XWINDOW
#ifdef XWINDOW
type = KB_X;
#elif DOS
type = KB_DOS;
@@ -592,8 +569,6 @@ void keyboardtype(int fd)
type = KB_SUN2;
else if (strcmp("jle", key) == 0)
type = KB_JLE;
else if (strcmp("rs6000", key) == 0)
type = KB_RS6000;
else if (strcmp("X", key) == 0)
type = KB_X;
else if (strcmp("x", key) == 0)
@@ -627,11 +602,6 @@ void keyboardtype(int fd)
SUNLispKeyMap = SUNLispKeyMap_for4;
InterfacePage->devconfig |= type - MIN_KEYTYPE; /* 7 */
break;
case KB_RS6000:
SUNLispKeyMap = SUNLispKeyMap_RS6000;
InterfacePage->devconfig |= KB_SUN3 - MIN_KEYTYPE; /* 8 */
break;
break;
#ifdef XWINDOW
case KB_X:
XGenericKeyMap = (u_char *)make_X_keymap();

View File

@@ -95,11 +95,7 @@ int read_hex(char *s1, long unsigned int *array) {
if ((strspn(ptr, hexdigits)) != strlen(ptr)) return FAILURE3;
/* convert key to numeric format*/
#if defined(RS6000)
*(array + i) = strtoul(ptr, NULL, 16); /* On RS/6000, must convert to unsigned */
#else
*(array + i) = strtol(ptr, NULL, 16); /* On suns, this works OK */
#endif
printf("0x%x ", *(array + i));
fflush(stdout);
/* continue search the next one */

View File

@@ -584,15 +584,6 @@ int main(int argc, char *argv[])
_getrealerror();
#endif /* I386 */
#ifdef RS6000
/****************************************************/
/* For the IBM RS/6000, we have to initialize its */
/* notion of the time zone, so gettimeofday works */
/****************************************************/
tzset();
#endif /* RS6000 */
#ifdef DOS
tzset();
#endif

View File

@@ -232,8 +232,6 @@ LispPTR unix_getparm(LispPTR *args) {
envvalue = "sparc";
#elif defined(I386)
envvalue = "i386";
#elif defined(RS6000)
envvalue = "rs/6000";
#elif defined(DOS)
envvalue = "386";
#elif defined(MACOSX)
@@ -247,8 +245,6 @@ LispPTR unix_getparm(LispPTR *args) {
envvalue = "sun4";
#elif defined(I386)
envvalue = "sun386";
#elif defined(RS6000)
envvalue = "rs/6000";
#elif defined(DOS)
envvalue = "dos";
#elif defined(MACOSX)