In 1986, the digital world was a fragmented landscape where a single piece of software could not speak to a single piece of hardware without a custom translation layer. Before the FOSSIL protocol emerged, the early days of Fidonet saw computer hardware so diverse that software developers were forced to write unique drivers for every specific machine they wanted to support. Initial development of FidoBBS only worked on a specific type of machine, creating a bottleneck that threatened to stop the software from spreading to the wider world. This lack of uniformity meant that if a user wanted to run a bulletin board system on a different computer, the entire communication stack had to be rewritten from scratch. The need for a standard method of communicating with serial interface hardware became so apparent that the FOSSIL specification was born to provide a uniform method for all. Software using the FOSSIL standard could communicate using the same interrupt functions no matter what hardware it was running on, allowing developers to concentrate on the application rather than the interface to the hardware.
Decoding the Acronym
The name FOSSIL is an acronym for Fido Opus SEAdog Standard Interface Layer, a title that serves as a historical record of the three major players in the early bulletin board system wars. Fido refers to FidoNet, the massive global network that connected hobbyist computers, while Opus refers to Opus-CBCS BBS, one of the most popular software packages of the era. The third component, SEAdog, refers to a Fidonet compatible mailer that helped move messages between systems. These three entities collaborated to create the standards document that defines the FOSSIL protocol, which is maintained by the Fidonet Technical Standards Committee under the designation FSC-0015. This document, titled FOSSIL implementation and use, established the rules that allowed disparate software to talk to disparate hardware. The protocol was not just a technical specification but a social agreement between the communities that built the early internet, ensuring that a message sent from one system could be understood by another regardless of the underlying technology.The BIOS Black Hole
The rise of FOSSIL drivers coincided with the dominance of IBM PC compatible machines, which ran some form of DOS and offered BIOS support for serial communications that fell far short of the needs of any non-trivial communications task. The built-in support provided by the BIOS was so poor that it could not handle the demands of serious data transfer, forcing the industry to look for alternatives. As MS-DOS and PC DOS became the prevalent operating systems, the hardware became predominant, yet the software layer remained broken. FOSSIL drivers were specific to the hardware they operated on because each was written to fit specifically to the serial interface hardware of that platform. This meant that a driver for a specific card would not work on a different card, even if both were designed for the same computer. The community had to build a new layer of abstraction to bypass the limitations of the BIOS and provide the speed and reliability that users demanded for file transfers and online gaming.