42 lines
1.4 KiB
Plaintext
42 lines
1.4 KiB
Plaintext
# $Source$
|
|
# $State$
|
|
|
|
The pc86 platform
|
|
=================
|
|
|
|
pc86 is an i86-based BSP that produces bootable floppy disk images that can
|
|
be run on most PCs. It is intended to be quick and dirty rather than actually
|
|
useful, although it may come in handy for hardware test purposes, boot
|
|
loaders, and the like.
|
|
|
|
The code runs in TINY mode, where CS, DS and SS all share the same segment.
|
|
This means that there's not very much memory available. It would be very easy
|
|
to change it to run in SMALL mode, where CS occupies one segment and DS and SS
|
|
another, which would give 64kB for nearly all programs; I just haven't done it.
|
|
|
|
This port uses a syscall interface, which means you get *all* of the ACK's
|
|
builtin libc with no shortcuts. File descriptors 0, 1 and 2 represent the
|
|
console. All reads block. There's enough TTY emulation to allow \n conversion
|
|
(set RAW to turn off) and local echo (unset ECHO to turn off); this is needed
|
|
to make Basic work.
|
|
|
|
Language support
|
|
================
|
|
|
|
Tested with C (both), Basic, Pascal, Occam, Modula-2.
|
|
|
|
Basic works, but because Basic programs require access to a data file to work,
|
|
and pc86 doesn't (of course) have a file system, programs won't start unless
|
|
you hack the compiler not to try and open it.
|
|
|
|
Example command line
|
|
====================
|
|
|
|
ack -mpc86 -O -ansi -o pc86.img test.c
|
|
|
|
The file pc86.img can then be copied onto a floppy and booted, or run via qemu
|
|
or somesuch emulator.
|
|
|
|
David Given
|
|
dg@cowlark.com
|