OXCC v1.433 Interpreting C compiler with
language extensions. Generates output in
Architecture Neutral Format (ANF). Sample
back end and byte code interpreter source
code supplied. Callable from command line
or as a reentrant subroutine. Can regenerate
source after interpreting input.
OXCC C Compiler
Nov 5, 1995
Copyright (c) 1994, 1995 by Norman D. Culver
All Rights Reserved.
Send bug reports and suggestions to:
1323 S.E. 17th Street #662
Ft. Lauderdale, FL 33316
(305) 527-1663 Phone
(305) 760-7584 Fax [email protected]
This software package is distributed as a preliminary version for
TESTING PURPOSES ONLY, WITHOUT ANY WARRANTY;
without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This product includes software developed by the
University of California, Berkeley and its contributors.
INSTALLATION FOR DOS BASED MACHINES
unzip -d oxcc1433// or pkunzip
make// runs the batch file make.bat
At this point you will have a number of .exe files in the oxbow
directory. You can add oxbow to the PATH variable in autoexec.bat
or you can move the .exe files to a preferred directory.
If you don't like the directory name `oxbow' you can pick another
name but you will have to enter an environment variable `OXPATH'
in the autoexec.bat file. e.g. SET OXPATH=mydir
WHAT IS OXCC AND WHY SHOULD YOU BE INTERESTED
OXCC is a multipass, interpreting C compiler with several language
extensions. It generates an Architecture Neutral Format (ANF) output
and comes with a couple of example back ends. Programmers are expected
to write additional back ends for their specific needs.
Language extensions have been inspired by GCC, MSC and Watcom C.
OXCC is designed to produce 16 bit, 32 bit, 64 bit, segmented and
flat model code for any target architecture and operating system.
OXCC can interpret its' input, it can also regenerate source code
after interpretation. Source regeneration properly handles `malloced'
data containing pointers. Slow mode interpretation keeps track of all
pointers, references and initializations, including hidden pointers.
OXCC is also callable as a subroutine or class from within the framework.
It can even be called by a program which is being compiled (see toxcc.c).
When called as a subroutine, the user can access all of the interesting
internal structures such as the Abstract Syntax Tree and the symbol table
at various stages of the multipass compilation.
CONTENTS OF THIS DISTRIBUTION after running make.bat
oxbow.a a.out,coff archive -- djcc v1.10. v1.12 compiled
oxlib.cff cff filesystem and archive (see cff.txt)
oxcc.cff C compiler + include files (see oxcc.txt)
obj4lb.exe symbol table whapper utility (see obj4lb.txt)
cfrun.exe skeleton framework and dynamic linker (see skel.txt)
oxcc.exe the compiler (see oxcc.txt)
oxccb.exe ANF to byte code back end (sample) (see oxccb.txt)
bterp.exe byte code interpreter (sample) (see bterp.txt)
oxccl.exe ANF linker (see oxccl.txt)
oxccai.exe ANF to Intel assembler code back end (incomplete)
cfar.exe archiver for .cff filesystems
cfls.exe lister for .cff and DOS filesystems (derived from GNU)
make.bat batch file to make some .exe files
test.bat batch file to test the compiler and byte code interpreter
changes.txt notes about what changed between versions
readme.txt this file
doc/anf.txt documentation for ANF
doc/bterp.txt documentation for bterp
doc/oxcc.txt documentation for oxcc
doc/oxccb.txt documentation for oxccb
doc/oxccl.txt documentation for oxccl
doc/cfar.txt documentation for cfar
doc/cfls.txt documentation for cfls
doc/skel.txt documentation for cfrun
doc/obj4lb.txt documentation for obj4lb
doc/c.grm C grammar for oxcc
src/lrandom.c from BSD
src/oxlib.map verbose map of oxlib.cff
src/makoxlib.bat batch file to recreate oxlib.cff (info only)
src/oxcc.map verbose map of oxcc.cff
src/makoxcc.bat batch file to recreate oxcc.cff (info only)
After running `make.bat' and placing the .exe files in a directory in
your path, or setting OXPATH; you can run `test.bat' which exercises the
compiler `oxcc', the byte code backend `oxccb' and the byte code