Luigi Rizzo -- FreeBSD-related projects

Useful links

FreeBSD: [SVN repo] [CVS ports] [FRESHports]

NetBSD: [CVS repo]
anoncvs through cvs -d

OpenBSD: [CVS repo]
anoncvs through cvs -d

Dragonfly BSD:

Linux: [view source] []

OpenWRT: [viewvc] svn co

FreeBSD Compatibility notes

Software issues related to various versions of FreeBSD -- useful when you need to upgrade to a new version.

FreeBSD Hardware Compatibility

It is becoming more and more problematic to run FreeBSD (but also linux and other userland code) on newer hardware, so I am writing down some notes on various hardware I have been playing with recently, hoping it helps others. You can find these notes at

Assorted FreeBSD-related code

Some FreeBSD-related projects/code. Over time some of them are being imported in FreeBSD, and some others have become stale or obsoleted and are left here only for documentation reasons.

Note: in most cases the code is in form of a gzipped tar archive. Be careful to instruct your browser not to treat it as a text file and do unexpected conversions.

Old stuff (before 2001)

Many of these things are now part of the standard FreeBSD distribution. When this is the case (marked in the list), check there for their most up-to-date version (the versions present here are just for reference or use on other platforms, and possibly out of date).

Some others are just obsolete, either because they were not interesting, or because the hardware/software they control is not in use anymore.


Networking stuff

Misc. device drivers and utilities

Detailed description

PnP support for FreeBSD

Derived from a previous work by Sujal Patel, this code provides PnP support in FreeBSD. The code is now in FreeBSD 2.2.6 so the code provided here is mostly for people running earlier versions (starting from 2.2.1).

Dump status of PnP devices

A slightly modified utility (originally from Sujal M. Patel, to dump the possible and the current configuration of your PnP peripherals. This again is in FreeBSD 2.2.6 i think.

g3-to GIF/Postscript converter

This is very primitive code to convert g3 data (e.g. fax files) directly to 4-level GIF, or to postscript. Written to be used together with mgetty but should in fact work with any fax-handling package.
There is no user interface or manual page yet...

Simple teletext decoder

This small program is a simple command-line utility to control the tuner and the various controls of a meteor/brooktre848. On the latter, it also permits fetching teletext pages using the SAA5246 decoder.

Decode Teletext info using a Bt848-based Frame Grabber.

This code allows you to decode teletext info from a video stream acquired using a frame grabber. This code requires my version of the bktr driver for FreeBSD.
There is also an unsupported version for the Meteor which uses a local hack to the /dev/meteor driver: when programmed for Secam mode (one that is useless here), it saves only the lines containing teletext info (lines 7 to 22 here in Italy).

The code programs directly the frame grabber to acquire a number of frames, then does the appropriate resampling and sync extraction, and tries a crude decoding of Teletext info. On a P5/133 it runs slightly slower than realtime, but the current code is -- I estimate -- 4..8 times slower than it should be because it does a lot of unnecessary operation in the resampling process.

Driver for Mustek Color Hand Scanner

This archive includes a patched version for the "asc" driver, so that a color scanhead can be used. I am using this under 2.1R, there should be minimal differences with 2.1.6. This code has been committed to the source tree so it should appear into future releases of FreeBSD. Also included is a small program (ascio.c) which allows you to convert the (undocumented) format output from the scanner into a PNM file.

New version of PCBRIDGE

This is an experimental version of PCBRIDGE 3.00. PCBRIDGE makes a PC with a few ethernet cards work as an Ethernet bridge. This version is mostly written in C, compiles under FreeBSD and hopefully also Linux and djgpp. It is largely based on the FreeBSD's "netboot" program. It supports WD/SMC and NE2000 boards, up to 5 on a single bridge. It is ROMable.

Live video player & jpeg grabber for the Matrox Meteor

This is Amancio Hasty's great program "tv", which plays live video from the Matrox Meteor. I have added code to save frames to jpeg files. Requires you have installed libjpeg to compile. Just press enter on the xterm to save frames to "imgXXX.jpg" in the same directory.

SACK and TSACK code for FreeBSD

diff -c output for an implementation of SACKs and TSACKs on FreeBSD2.1R. This is very experimental code representing work in progress. It compiles correctly, but is not guaranteed to work (is any software guaranteed at all ?).

Enhanced netboot and Kernel bootp support

This code, originally from Tor Egge, allows a FreeBSD 2.1.X kernel to acquire parameters such as IP address and the like from a bootp server. Note: most of this has been included in FreeBSD2.2.X., and is even more complete.
Luigi Rizzo
Dipartimento di Ingegneria dell'Informazione -- Univ. di Pisa
via Diotisalvi 2 -- 56126 PISA
tel. +39-050-2211611 Fax +39-050-2217600