NetBSD/acorn26: Unsupported Hardware List
This list is intended to collate information about hardware which isn't supported by NetBSD/acorn26, but which could/should be.
The VIDC audio system should be fairly similar to the Risc PC one, whose driver lives at src/sys/arch/arm/iomd/vidcaudio.c.
Archimedes-style machines use a Rockwell 6551 ACIA for the serial port. This needs a driver, and should provide console support as well. I've got a data sheet for the 6551 and plenty of machines with them in.
The Archimedes parallel port is a very simple device and should be easy to support. The A3000 TRM explains how it works.
The original Archimedes hard disc interface is based on the Hitachi HD63463. Linux has a driver for it.
IOEB machines use the 765-compatible floppy controller on the 82C71x. This seems to get a new driver for every machine it's found in, so we need one for acorn26 (probably based on the acorn32 one in src/sys/arch/acorn32/mainbus/fd.c).
Castle Technology's EtherSCSI card contains an AMD 53c94 and an Intel 82595. The 53c94 seems to be supported by src/sys/dev/ic/ncr53c9x.c, and seems to have some standard pseudo-DMA support in e.g. src/sys/dev/isa/esp_isa.c. The 82595 has an ISA driver in src/sys/dev/isa/if_iy.c, which looks amenable to porting. The Storm16 seems to be the same card without the Ethernet components fitted.
Nexus was SJ Research's proprietary ATM network system. At its lowest level, it seems to use INMOS Link over differential twisted pair cabling, and looks much like a very fast (20Mbit/s) serial port. All the higher-level protocol is handled in software, but implementing PPP over it ought to be easy enough.
I've got a Computer Concepts ColourCard, which is a replacement framebuffer for the Archimedes. It only works sporadically, but is very nice when it does. It uses an INMOS G332 framebuffer chip, which has some support in NetBSD ( src/sys/arch/pmax/dev/ims332.c). The framebuffer data is copied to the card from the Arc's video memory by means of a ribbon cable which plugs into the VIDC's four-bit digital output (which is usually used for hi-res mono modes). This means that using it as an independent framebuffer may be tricky unless there's some other way to get data in. FWIW, it's this copying mechanism that seems to be playing up on mine. In its default state, the card's sufficiently backward compatible that I can boot NetBSD displaying through it, which is cute. Computer Concepts no longer have any programming documentation for it available.
I've got a Wild Vision Sound Sampler podule, branded "Clares". Computer Concepts (who took over Wild Vision) deny all knowledge of this card. Clares couldn't find much information about it. Disassembling the RISC OS driver indicates it's a very crude card -- I can't yet work out how it gets the timing of samples right (if, indeed, it does).
A 16-bit sound and MIDI card made by Wild Vision. The sound side is an AD1848, supported by src/sys/dev/ic/ad1848.c. The MIDI interface uses a 16550.
Another Wild Vision job, this has a Yamaha YMZ263 for sound and MIDI, and a lot of Philips chips for video decoding.
I've got one of these too. It's based around a 65C22, and I've drawn out most of the circuit diagram, so it should be easy enough to write a driver for it. Computer Concepts deny all knowledge of this one too.
This is based on a 16550, so driving it should be easy. I've got the com driver attaching properly. Now we just need a MIDI line discipline.
acemidi0 at podulebus0 slot 3 com0 at acemidi0: ns16550a, working fifo
A proprietary CD-ROM interface used by Panasonic. I've only got the card, not the drive. The card seems fairly simple, and Theo Markettos has collected some information on the interface.
The user port is the traditional 6522, while the MIDI is an SCC2691. I've got data sheets for both, and the card's documented in the A3000 TRM.
Provides a user port (6522), 1MHz bus, Analogue input (D7002) and optional MIDI (SCC2691, not fitted on mine). Sorting out good abstractions for the BBC I/O ports might be interesting.
Like the HCCS one, but by a different manufacturer (and possibly with a different memory map).
There are two types of FPU available for acorn26 systems: the Acorn FPPC/WE32206 combination and the ARM FPA. They use the same instruction set, though their Control Registers are different. NetBSD/acorn26 should at least have kernel support for saving and loading FPU state on context switches. I've got an FPPC card. The RISC OS 2 and RISC OS 3 PRMs each contain information on the FPUs in the “Floating Point Emulator” chapter. Each version includes some information the other misses out.