diff options
author | Robert de Bath <rdebath@poboxes.com> | 1998-09-22 17:44:32 +0200 |
---|---|---|
committer | Lubomir Rintel <lkundrak@v3.sk> | 2013-10-23 23:40:35 +0200 |
commit | 2233d47f9d89c107b6c425626d6eb2669363b055 (patch) | |
tree | 429df42a8f6ed7174868af04edd364cd778a4d54 /bin86 | |
parent | ec5f28e3f1400b5dacb88eda2d9db472a20b4349 (diff) | |
download | dev86-2233d47f9d89c107b6c425626d6eb2669363b055.tar.gz |
Import Dev86src-0.14.5.tar.gzv0.14.5
Diffstat (limited to 'bin86')
-rw-r--r-- | bin86/ChangeLog | 111 | ||||
-rw-r--r-- | bin86/Makefile | 49 | ||||
-rw-r--r-- | bin86/README | 27 | ||||
-rw-r--r-- | bin86/README-0.4 | 79 |
4 files changed, 266 insertions, 0 deletions
diff --git a/bin86/ChangeLog b/bin86/ChangeLog new file mode 100644 index 0000000..a09114b --- /dev/null +++ b/bin86/ChangeLog @@ -0,0 +1,111 @@ +Fri Jul 31 09:33:18 BST 1998 Robert de Bath (rdebath@poboxes.com) + + * version 0.14.4, This package is based on the ELKS dev86 package + of the same version number. + + * Improved documentation (There's actually a man page!) + + * The linker will produce either Linux-8086, DOS-COM + or Native Linux-386 OMAGIC executable files. + + * The assembler has many instruction fixes: + jmp near, jmpi dword x,y, org, use32/use16 ... etc + and can also read source from stdin. + + * Assembler macros work. + + * The assembler command 'include' works. + + * Conditionals and string conditionals work. + + * Various additions for multi-segment work. + + * The assembler can create bare binary files with simple ASCII symbol + files, these are ideal for generating encapsulated binaries and a + simple script for doing this is included. + + * The assembler will generate warning messages when 386 + instructions are used with the assembler in an 8086 mode. + + * Many minor bug fixes and portability fixes. + +Sat Nov 16 18:38:14 1995 H.J. Lu (hjl@gnu.ai.mit.edu) + + * version 0.4 is released. + + * Makefile (CFLAGS): add _POSIX_SOURCE. + + * as/as.c, as/flag.h, as/genlist.c, as/pops.c,v, + as/readsrc.c: change warn to warning. + +Fri Jun 16 02:02:03 1995 Michael Shields (shields@tembel.org) + + * as/Makefile (endian.h): Don't rely on . being in $PATH. + +Tue May 16 22:01:05 1995 H.J. Lu (hjl@nynexst.com) + + * version 0.3 is released. + + * Makefile: fix a few typos. + + * as/const.h: include "endian.h". + (LOW_BYTE): check the byte order. + + * as/Makefile (endian.h): new target. + (const.h): depend on endian.h. + + * as/det_endian.c: new from glibc. + +Sat Mar 18 16:39:19 1995 Francois-Rene Rideau (rideau@clipper.ens.fr) + + * as/pops.c (doif): support nested conditionals. + +Mon Nov 21 22:48:26 1994 H.J. Lu (hlu@nighthawk) + + * version 0.2 is released. + + * Makefile (MFLAGS): new. add BINDIR and CC. + +Fri Nov 18 22:25:24 1994 Package Maintainer (opt@calum.csclub.uwaterloo.ca) + + * ./as/Makefile: + * ./as/const.h: + * ./as/proto.h: + * ./as/readsrc.c: + * ./as/type.h: + * ./ld/Makefile: + * ./ld/align.h: + * ./ld/config.h: + * ./ld/type.h: + * ./ld/typeconv.c: remove endian dependency. + +Thu Mar 3 15:12:23 1994 H.J. Lu (hlu@nighthawk) + + * version 0.1 is released. + + * Makefile: new. + + * a.out.h/bsd-a.out.h (struct exec): use short form if + __linux__ is defined. + + * as/Makefile: minor changes. + (CLFAGS): add -I../a.out.h. + + * ld/Makefile: minor changes. + (CLFAGS): add -I../a.out.h. + + * ld/io.c (MY_STAT_H): don't define it if __linux__ is + defined. + + * ld/ld.c (flag['z']): initialized to 0 if __linux__ is + defined. + + * ld/obj.h (roundup): + * ld/writebin.c (roundup): + ld/readobj.c (roundup): change that to ld_roundup to avoid the + conflict with the system's roundup. + + * ld/writebin.c: cleanup for the latest Linux C library. + (FILEHEADERLENGTH): change to sizeof (struct exec). + don't write a_trsize and its friends. + diff --git a/bin86/Makefile b/bin86/Makefile new file mode 100644 index 0000000..5cd0ce8 --- /dev/null +++ b/bin86/Makefile @@ -0,0 +1,49 @@ + +CFLAGS=-O2 -D_POSIX_SOURCE +LDFLAGS= +DIRS=ld as + +PREFIX=/usr/local +BINDIR=$(PREFIX)/bin +LIBDIR=$(PREFIX)/lib +MANDIR=$(PREFIX)/man/man1 +SUF=86 + +INSTALL_OPT=-m 755 -s +MAN_OPTS =-m 644 + +MFLAGS= "LIBS=$(LIBS)" \ + "CFLAGS=$(CFLAGS)" \ + "LDFLAGS=$(LDFLAGS)" \ + "BINDIR=$(BINDIR)" \ + "LIBDIR=$(LIBDIR)" \ + "CC=$(CC)" + +all: + for d in $(DIRS); do \ + (cd $$d; $(MAKE) $(MFLAGS) $@;); \ + done + +install: all + install $(INSTALL_OPTS) as/as86 $(BINDIR)/as$(SUF) + install $(INSTALL_OPTS) as/as86_encap $(BINDIR)/as$(SUF)_encap + install $(INSTALL_OPTS) ld/ld86 $(BINDIR)/ld$(SUF) + install $(INSTALL_OPTS) ld/objdump86 $(BINDIR)/objdump$(SUF) + install $(MAN_OPTS) man/*.1 $(MANDIR) + ln -s objdump$(SUF) $(BINDIR)/nm$(SUF) + ln -s objdump$(SUF) $(BINDIR)/size$(SUF) + +depend clean clobber: + for d in $(DIRS); do \ + (cd $$d; $(MAKE) $(MFLAGS) $@;); \ + done + +ungrab: + rm -rf as ld man +grab: + cp -a ../as ../ld . + rm -f ld/ar.h ; cp -p ../libc/include/ar.h ld/ar.h + mkdir man + cp -p ../man/ld86.1 man + cp -p ../man/as86.1 man + diff --git a/bin86/README b/bin86/README new file mode 100644 index 0000000..b6fb3ff --- /dev/null +++ b/bin86/README @@ -0,0 +1,27 @@ + +This is a simple assember and linker for 8086 - 80386 machine code. +There have been a large number of changes since bin86-0.4 so I strongly +suggest you read the manpages. + +To install: + make PREFIX=/usr install +or + make PREFIX=/usr/local install + +This version has been tested under Linux, older versions were also tested +and working under SunOS and AIX. + +------------- + +This is based on the as86 and ld86 distribution written by Bruce Evans. +Bruce has released this under the GPL and the changes I've made are +also under the same license + +The BCC components that were distributed in this package are now in +the dev86 package along with a working C compiler and libc for 8086 +ELKS, DOS and standalone code. + +The most recent address I have for Bruce is <bde@FreeBSD.org> + +Robert de Bath <rdebath@poboxes.com> +1998/7/31 diff --git a/bin86/README-0.4 b/bin86/README-0.4 new file mode 100644 index 0000000..f91a9dc --- /dev/null +++ b/bin86/README-0.4 @@ -0,0 +1,79 @@ +To build this real mode as/ld for x86, just edit Makefile and then +do + +make install + +It is only tested under SunOS 4.1.3 and Linux. + +H.J. Lu +hjl@nynexst.com +11/21/94 +------ +We seem to have cross bin86 for Solaris working. The most important +changes involve alignment (it needs to be on) and byte ordering. +Some of the patches just eliminate compiler warnings (conversion of +pointer to integer without a cast, etc.) and some (in the Makefiles) +reflect the local setup, and can probably be ignored (the change to $BINDIR, +for example). + + - Ian (iagoldbe@csclub.uwaterloo.ca) + +---- +I modified it for the latest Linux C library 4.5.21 and released it as +bin86 0.1. It is only tested for building the Linux kernel and is not +intended for any other purposes. To build it under Linux, just type + +make all +make install + +It is not tested for cross-compiling. If you have any patches for +cross-compiling, please send them to me. + +Thanks. + + +H.J. Lu +hjl@nynexst.com +03/03/94 +------------- +This is the as86 and ld86 distribution written by Bruce Evans. It's +copyright Bruce Evans, all rights reserved although you may use and copy +it for your personal use. It's a complete 8086 assembler and loader +which can make 32-bit code for the 386+ processors (under linux it's +used only to create the 16-bit bootsector and setup binaries). The +syntax is not compatible with the GNU assembler, but closer to intel +syntax ("wrong" order of operands etc). + +Hints for compiling: + + - you'll need the a.out.h-files from the a.out.h directory for the +linker. These aren't really part of the distribution, but I included +them for ease of setup (in case you need to crosscompile etc). Do a + cp a.out.h/* ld/ +or similar before compiling the linker. + + - the assembler needs the typeconv.o file produced by the linker +compilation. So compile the linker first, and then do a + cp ld/typeconv.o as/ +before making the assembler. + +This distribution also contains some test-files etc that aren't actually +needed, but as they also give some idea of the assembler syntax, I left +them in. The directories are as follows: + + as - the assembler sources (minus typeconv.c) + ld - linker sources + bcc - bruce evans' cc frontend sources (the actual compiler isn't + included). + bccfp - assembly floating point routines written by bruce evans. Note + that these use integer register returns, and won't work with the + linux libraries. They can be used as examples of as86 code. + a.out.h - header files for crosscompilation. + +Note that I am NOT the author of this package, but I'll forward any +comments to bruce evans and I'll try to answer any questions about the +assembler/linker I can. I just made it available as bde doesn't have +ftp capability right now. Bruce Evans does have mail as +<bde@runx.oz.au>. + + Linus Torvalds |