This version of NetBSD now includes support for the 68040. This version should support both the 68030 and 68040 processors with a single kernel. The config option FPSP will include the full Floating Point Support Package to provide emulation of the floating point instructions not implemented by the 68040. If the FPSP option is not used, then a dummy file is included that will cause a panic if any FPSP routine is called. This allows building a smaller kernel specifically for the 68030. The FPSP is provided as an object file. The FPSP was ported to gas by Eric Norum (eric@skatter.usask.ca) and is available by anonymous ftp from: ftp.usask.ca /pub/software/fpsp/fpsp_gas.tar.gz Note: Motorola still holds the title and all rights to the FPSP. Support for the Progressive Peripherals Incorporated Zeus SCSI interface is also included. If the configuration file does not include support for the A3000/A2091/GVP11 drivers, then including the "zeusscsi" driver will configure the driver to use the sd (disk) and st (tape) devices. If any of the A3000/A2091/GVP11 drivers are configured, then including the zeusscsi driver will be configured to use a second set of scsi devices: rz (disk) and tz (tape). The rz and tz devices have different major device numbers: rz - 5 = block, 9 = character tz - 8 = block, 23 = character WARNING: since the PPI Zeus SCSI uses the level 6 interrupt, the kernel must be compiled with the splbio() macro defined as spl6(). If not, then then random kernel hangs will occur. One bad side effect of changing splbio() is that it will also block the clock interrupts, which can result in incorrect timing. The 53C710 driver (siop.c) also includes support the the CSA Magnum 40, but this has not been tested yet. The 68040 MMU implementation is not optimal at this time. It was added in a manner to fit in with the current 68030 MMU setup without needing to completely rewrite the MMU routines. The existing 68030 MMU layout was implemented using a two level table: a segment table, and a page table. The 68040 MMU can only use a three level table. To simulate a two level table, the top level descriptor table is set up and the full level 2 descriptor table is allocated and used as the "segment" table. This results in 9 pages, or 72K bytes, being allocated for the initial page table for each process. The reboot command does not work for some reason. It appears to do the reset instruction, but doesn't seem to do anything after that. Michael Hitch