Jody Bruchon 80d485b801 Add stdint.h header to recognize some C99 types 9 سال پیش
..
bcc 3d4957c86f Import Dev86src-0.14.8.tar.gz 10 سال پیش
bios 5613ba3c07 Import Dev86src-0.16.12.tar.gz 10 سال پیش
conio 352e3b3230 Import Dev86src-0.16.3.tar.gz 10 سال پیش
error 62c27c1c5c Import Dev86src-0.16.17.tar.gz 10 سال پیش
getent 3d4957c86f Import Dev86src-0.14.8.tar.gz 10 سال پیش
gnu_i386 48798bf2eb Import Dev86src-0.13.0.tar.gz 10 سال پیش
gtermcap dddc44a59e Import Dev86src-0.16.18.tar.gz 10 سال پیش
i386fp 62c27c1c5c Import Dev86src-0.16.17.tar.gz 10 سال پیش
i386sys dddc44a59e Import Dev86src-0.16.18.tar.gz 10 سال پیش
include 80d485b801 Add stdint.h header to recognize some C99 types 8 سال پیش
kinclude ded00c0d1c Import Dev86src-0.16.11.tar.gz 10 سال پیش
malloc beba34dc22 Import Dev86src-0.16.15.tar.gz 10 سال پیش
misc 62c27c1c5c Import Dev86src-0.16.17.tar.gz 10 سال پیش
msdos 29dbfca835 libc/msdos: program name missing in argv[0] 8 سال پیش
regexp ded00c0d1c Import Dev86src-0.16.11.tar.gz 10 سال پیش
stdio 62c27c1c5c Import Dev86src-0.16.17.tar.gz 10 سال پیش
string 22950ba3df Import Dev86src-0.16.13.tar.gz 10 سال پیش
syscall dddc44a59e Import Dev86src-0.16.18.tar.gz 10 سال پیش
termios 2233d47f9d Import Dev86src-0.14.5.tar.gz 10 سال پیش
time e63c244cb2 Import Dev86src-0.12.0.tar.gz 10 سال پیش
COPYING dcc973ea3e Import Dev86-0.0.5.tar.gz 10 سال پیش
Config.dflt d91fa39567 Import Dev86src-0.16.1.tar.gz 10 سال پیش
Config_sh 48f0b3eb83 Import Dev86src-0.13.5.tar.gz 10 سال پیش
KERNEL dcc973ea3e Import Dev86-0.0.5.tar.gz 10 سال پیش
Make.defs 48798bf2eb Import Dev86src-0.13.0.tar.gz 10 سال پیش
Makefile 51ed148847 Link compile helpers separately 10 سال پیش
New_subdir 4c36e9a0c1 Import Dev86src-0.0.11.tar.gz 10 سال پیش
Pre_main e62b35169c Import Dev86src-0.14.7.tar.gz 10 سال پیش
README df53846368 Import Dev86src-0.16.2.tar.gz 10 سال پیش
crt0.c 48798bf2eb Import Dev86src-0.13.0.tar.gz 10 سال پیش

README

SYSTEM CALLS
The system call table (syscalls/syscall.dat) is constantly changing, using
skewed versions is _very_ likely to give you segfaults and strange behaviour.
For this lib you should use the same version of elksemu.
The system call table will only be frozen when the linux-86 kernel is
running and reasonably stable. The 386 version is using a distinct list
that matches the Linux-i386 syscall list.

THE COMPILER
You should use the versions of bcc, unproto, as86, ld86 and elksemu that
are in this version of the combined development environment. Some other
versions will work but often they'll just appear to work or not work at
all. The original bcc-cc1 won't pickup the right header files, the
original ld86 won't generate COM files or 386-Linux files and looks in
the wrong place for crt0.o and libc.a. The original as is just plain
broken!

Main Subdirectories.

bcc Lots of BCC helper functions
bios Minimal 'system' calls for standalone executables.
error The C error functions.
getent Routines for /etc/group, /etc/passwd and /etc/utmp
gtermcap GNU termcap
i386fp BCC's floating point routines for 386 code.
include Some include files, some new others Glib or Glib hacked.
kinclude Kernel include files, here for now.
malloc Malloc routines
misc Various larger functions
msdos This is the syscall directory for msdos.
regexp Standard regular expression parser
stdio Robert's standard I/O
string The functions for string.h
syscall All the system call functions, and some tied lib ones.
termios Termimal mode control.
time Unix time related functions.

Directory structure:

The top Makefile will try to call any "Makefile" it finds in a
subdirectory, so to add a new chunk to "libc.a" just drop in
the directory a Makefile that understands "make clean" and
"make libc.a" (Which must also update ../libc.a)
There's now a tiny script (New_subdir) that'll do this.

Make config will look in all subdirectories for a file 'Config'
any it finds will be displayed and can be used to switch a directory
on or off.

The exit(rv) function is already defined. It will call the contents
of the function pointer (*__cleanup)() before it calls _exit();
This pointer should be used through the 'atexit' or 'on_exit' lib
functions. (See standard man pages)

If you need to call something before main see the file 'Pre_main'.

-Robert

-=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=- -=*=-