BABBA issue # 11 - January 1994, page 10

Page 10 had ads for Hyperworks Macintosh Consulting Services,
and the Atlas BBS/Internet Service (

Bad BBSs (Usually Pirate)

In issue 7, a reader asked "Why don't you report on the bad BBSs out there?"
We replied that we didn't need to point out bad BBSs because traditional media did this so well. We have reconsidered that reply. Recent media reports have demonstrated a continued lack of understanding about common versus illegal BBSs.

A "bad" BBS endorses, supports, or allows illegal activities. A pirate BBS endorses the stealing, "cracking", and sharing of commercial software. This article is primarily about pirate BBSs because they are (by far) the most common type of illegal BBS.

How many BBSs are Bad?
To our knowledge, none of the BBSs listed in BABBA are bad. In general, published BBS lists do not contain bad BBSs because bad BBSs hide from public view to avoid being "busted". (They are actively pursued by federal authorities.) You will not find a bad BBS unless you want to find one - and they want you to find them. Unlike normal BBSs, they do not welcome the general public. Because of the secretive nature of bad BBSs, we guess that less than 1% of all BBSs are bad.

Worse than Pirates
Far worse than pirates, are the (destructive) hackers and child pornographers. Hackers create viruses, break into computer systems, and illegally use obtained information (such as credit card numbers) to steal. Child pornographers intentionally create and/or distribute pictures of people under the age of 18. Fortunately, there are few hackers - and fewer hacker BBSs.

Media Accuracy?
Illegal BBSs are very different from normal BBSs. The average age of a caller to a legitimate BBS is about 34. The average age of a pirate caller is about 18. The media tends to lump pirate (and all other deviate or illegal) BBSs together with normal BBSs. Normal BBSs therefore get an undeserved bad reputation.

The tiny percentage of bad BBSs should not reflect on BBSs as a whole. Every profession or association has a few bad apples. A typical media message is that BBSs are used for illegal activities. (Imagine the media reporting that automobiles are used to rob banks, or that a group of businesses are suspect because up to 1% of them are criminals.)

Pirate Terms
Pirates respect Coders the most, and Lamers the least. Elite is a name that some pirates use to describe themselves - and others they respect. Both the Sysops and callers of pirate BBSs are proud of themselves. Some of these pirates describe themselves as Elite, because they consider themselves a selected group of the finest, best, and most powerful programmers and/or secret couriers - or a good buddy to one of them.

Coders are the skilled programmers who write/modify software. At least two BBS software packages have been written to accommodate the special needs of Elite pirates. These pirate BBS packages have "back doors" that let Elite members remotely control the BBS. Elite BBS packages have other special features, including very deeply nested security levels. It is rumored they have "punishments" (such as erasing the hard drive) within some of their BBS software programs to deal with those not authorized to run the BBS software.

Generally, coders do not create viruses. A few coders release some very impressive graphic animations. The work of coders is respected far beyond the pirate community. Their graphical animated programs are amazing to watch and are harmless. Many coders are also very skilled in ANSI animations.

Crackers are the (usually lesser-skilled) programmers who defeat copy protection, remove copyright and product information, and sometimes modify programs to their liking.

Couriers are the people who spread cracked (or just plain illegally copied) software from one pirate BBS to another. Couriers also hand-carry pirated software between computer systems around the world.

Lamers are unauthorized callers of an pirate BBS. Pirates are very careful about who they let into their clan, for obvious reasons. Generally, membership is confined to referrals.

Pirate Sysops
These are the people who maintain pirate BBSs. Though pirate BBSs are rare, they are all networked to other pirate BBSs all over the world. Elite/pirate BBS numbers are not published. Some BBSs have dual identities, being a public BBS to most - and a pirate BBS for others. These double-duty BBSs often do publish their numbers. It's a top priority to screen such double-duty BBSs from our listings.

Being a pirate is illegal and getting caught invites stiff penalties. Pirates are willing to take the risk in order to get free software - (or other reasons). There is an element of pride in calling yourself Elite. These folks are thrilled to get away with pirating and take pride in avoiding getting caught or arrested.

How do they Survive?
It typically takes a lot of work to find (and prove) a pirate. Generally, only the largest and most active pirate BBSs get closed down. There has been some success in closing down some "console" BBSs that carry Nintendo and Genesis game software.

Complicating the effort to find them, pirate BBSs are typically short-lived. Sometimes the short life of a pirate BBS is due to the age or instability of the Sysop. Other times the boards rotate locations to add another layer of safety. This invisible network of pirates keep each other updated. Of course, if a pirate BBS goes down or gets busted, another one soon springs up to take its place.

Not to Worry
Unlike hackers, pirates don't do as much damage as the media generally estimates. If every pirate BBS closed and all pirated software disappeared, there would be no significant increase in software sales. Pirates are cheap!

The biggest pirate-induced risk to the average modem user is that they might become an inadvertent courier. Some pirated software looks like shareware or a demo of a commercial program. It is a good habit to look at a file before you upload it anywhere. If you upload pirate software to a BBS, the Sysop might take an appropriate action. (As files get transferred between BBS systems, they are typically checked repeatedly for viruses and pirated software.)

What about Game Cracks?
Many BBSs carry files (known as "cracks") intended to solve, enhance, or remove annoying copy protection from games. These "cracks" are different from pirate files for two important reasons:

Warning Signs - be suspicious of these warning signs:

It is usually easy to determine if a file is commercial or cracked. Although there are relatively few pirate BBSs, cracked files are occasionally uploaded to regular BBSs. Sysops usually check for these and remove them. There are many false alarms. If in doubt, ask your Sysop. All significant programming efforts have shareware notices, registration forms, freeware announcements, or copyright information. Be suspicious if you see a "demo" commercial program that looks too good to be true.

Page 11 had an ad for the Monterey Gaming System.

Page 12 had ads for Just Computers! (, and a2i Communications (

Are you looking SCSI Lately? - Part 1

(By Fred Townsend)

What is SCSI? SCSI is an acronym for Small Computer System Interface. Who originated SCSI? To answer that question we'll have to go back to the origins of Shugart Associates.

IBM invented the floppy disk. Allen Shugart was quick to see the market for floppy disk drives outside of IBM. To fulfill his vision, Shugart surrounded himself with some of the finest minds around and called the company Shugart Associates (SA). Allen Shugart is a mechanical engineer. It's not too surprising the key people at SA tended to be mechanical engineers too. At SA, mechanical engineering projects competed with electrical projects for development funds and usually won.

Designing the electrical circuits of the floppy drive was not particularly difficult. The first designs used standard "glue" (off-the-shelf) chips. When the focus shifted from 8 inch floppies to 5-inch floppies, the electrical engineers said "Big deal". The 5-inch drive was designed to be cheaper, not better. Electrically, its circuits were inferior to the existing 8-inch drives. The challenge of designing floppy drives was in the electro-mechanical (E/M) and read/write head designs. Here, the engineers scrambled because none of the existing commodity E/M parts were really adequate. They cost too much, and their quality severely limited performance.

Hard Drives Shrink
IBM, and several other companies had been making hard drives for over a decade. They were big "washing machine" drives that used hydraulics to position the heads, and sometimes the heads didn't move at all, as in the "Fixed Head" machines. The capacity of the smaller versions was 10 to 20 megabytes, but it still took four men to lift one.

Allen continued to watch IBM's technology. At that time, the industry was starting to focus on Winchester hard disk technology. While nobody really agreed exactly what Winchester technology was or meant, they did agree it was the future technology for hard drives and was hot stuff. Winchester technology focused on providing comparable storage capacity in a much smaller sized drive.

Allen started developing hard drives at Shugart Associates. It's difficult to say which drive model was first because several had a high rate of infant mortality. There was the model SA604, the 606, followed by the 612. By then, the new half-height technology had taken over the floppy market. The half height idea was quickly transferred to the hard disks and the 612 model became the 712.

Hard drives offered a few technical challenges to the electrical engineer, but mostly the challenges were still how to make the circuits cheaper, not better. At this time hard drives were not used much for PCs. Rather, they were system components in mainframe computing.

SASI Emerges
Some of the Shugart engineers reasoned if these drives were system components, they should have a system interface. So the Shugart Associates System Interface (SASI) came into being.

SASI was not immediately accepted. Some argued is was needed, while others did not see the need in the newly emerging PC market. What value was SASI when mainframes were becoming less popular, they argued. The existing MFM hard drives used a speeded up version of the serial floppy interface. SASI was a parallel interface! It couldn't even talk to a floppy or a regular hard drive. Some argued that SASI was just a project to keep the electrical engineers happy.

What's in a Name?
Shugart's marketing department tried to sell the SASI interface to the systems people and the mainframers. It was a hard sell. For one thing, the name was wrong. Nobody wanted to advertise a competitor's name. HP had a similar problem when they designed a parallel bus to control test equipment. They called it the Hewlett Packard Interface Bus (HPIB). When HP offered their bus, royalty free, there weren't too many takers until the name was changed to the General Purpose Interface Bus (GPIB). The old bus with the new name was sent to the ANSI committee for blessing and became the IEEE488 bus standard. After that, lots of manufacturers signed up to use the bus.

By then, SASI was just one of Shugart's many problems. Many other companies had figured out how to make floppy drives - SA's bread and butter. Profits were eroding. Layoffs started. Head hunters found SA easy pickings as they raided some of the best talent. Then Xerox stepped up and offered to buy SA. Shugart and his investors accepted.

Part of the buy out agreement stipulated Allen Shugart couldn't start another floppy drive company. That was fine with Allen. He wanted no part of this profit-starved field. Instead, he headed for Scotts Valley and with his mechanical engineers, started Seagate. Their initial product looked an awful lot like an old SA606. They called it the ST506.

Origins of SCSI
After the Xerox buy out, some of the orphaned electrical engineers left SA with the announced intention of making SASI chips. They called their new company Adaptec.

NCR had been one of the few companies that seriously investigated the SASI interface. NCR and Adaptec learned from HP's experience. Rather than propose an Adaptec or NCR bus, these two companies encouraged the formulation of an ANSI committee for small computer interfaces. The committee made several important changes to the SASI interface. First they made sure the interface had all the necessary elements to become a multi-threaded bus. Second, they added command set functions to allow devices to talk directly to other bus devices. This allowed devices (other than disks) to temporary master and utilize the bus. Now a tape drive, CD-ROM, disk drive and printer could all exchange information, without passing that information through the CPU.

Even with ANSI endorsement, Adaptec found SCSI a hard sell. The drive manufacturers were the biggest problem. Until someone made a SCSI drive, what good was a SCSI bus? The Adaptec applications engineers began designing SCSI applications to give away to anyone that would buy their chips. One of their first designs was the ACB4000. The ACB4000 was an intelligent SCSI interface for "dumb" disk drives like the ST506. Now any manufacturer that could design a simple parallel interface could utilize Winchester drives, without knowing how the drives themselves operated.

Meanwhile, the drive manufacturers realized the old ST506 transfer rate of 625K bytes per second wasn't going work for larger systems. There was another problem too. While the disk controller and the disk drive could pass data back and forth, the drive couldn't tell the controller anything about itself.

It did little good to have an intelligent controller if it didn't have any information about the disk it controls. For instance, the hard drive couldn't tell the controller its capacity or worse, where its bad tracks were located. Some drives were shipped with a printout of bad tracks, while others shipped the information on floppy disks. This did little to solve the problem.

The manufacturers generally agreed the intelligence belonged in the drive itself, rather than in the controller. However, the drive community was split on what to do about the problem. One sector argued that the existing ST506 interface could be upgraded. Another sector argued the ST506 interface should be junked, and a new interface designed. A third sector argued that the SCSI interface (or SCSI bus) should be used.

ESDI Stopgap
One group of upgrade advocates released their Enhanced Small Disk Interface (ESDI). ESDI used the same physical MFM (ST506) interface, but with different electrical and software specifications. The data rate was doubled to 1.650 megabytes per second (MBPS). Information about the drive was stored on the drive itself, but the intelligence required to run the drive remained on the drive controller. This made it relatively easy to interface ESDI to the existing PC BIOSs.

IDE Smart Disk
The "start over" advocates came up with the Advanced Technology (AT) or Intelligent Disk Interface (IDE). Unlike the ESDI, the IDE interface uses parallel data transfer for 6 megabyte per second data transfer rate. The drive controller intelligence is totally embedded within the drive. The PC side interface requires hardware similar to a parallel printer port.

Detractors from the SCSI interface argued that the SCSI command set was not rich enough to fully control disk drives, and that all the intelligence belonged in the disk drive. They argued IDE was a better interface because it was faster, with a 6 MBPS versus SCSI's 5 MBPS transfer rate. Also, since IDE is an interface, rather than a bus, it's faster because it does not require a bus protocol.

The SCSI advocates cried foul. They argued the SCSI command set is open and permits adding any commands needed. Furthermore, the SCSI bus permitted the coexistence of dissimilar devices that can intercommunicate at much faster data rates (and modes) than the IDE interface. The argument between SCSI and IDE advocates has raged ever since, with IDE usually winning on economic issues, and SCSI winning on performance issues.

Today the battle is almost finished. Low-end entry systems still use the IDE interface, but their number is dwindling. Middle to high end systems (such as graphics, file servers, UNIX, Macintosh, and mainframe computers) all use SCSI buses. The command set has been enriched to include commands for tape drives, printers, and multimedia, as well as a very rich set of commands for hard drives. Today, it's usually cheaper to use one SCSI interface rather than separate interfaces for disk and multimedia, and thus the single advantage of IDE is disappearing.

SCSI has evolved so much in the last decade that it barely resembles SASI. The original SASI document was a couple of dozen pages. SCSI-1 was a couple hundred pages. SCSI-2 is nearly 500 pages. If this progression continues, SCSI-3, when released, will be several thousand pages.

Next month, the SCSI bus in detail.

Page 13 had an ad for the Digital Publishing Company.
Page 14 had an ad for the San Lorenzo User Group.

X00 - What is it? - Why use it?

(By Chuck Spear)

X00 is a serial I/O (Input/Output) communications device driver. A device driver is a low-level, limited function, software interface between computer hardware and application programs or operating systems. X00 is a type of FOSSIL driver. A FOSSIL driver is an extension of the PC's BIOS services for serial communications. FOSSIL is an acronym for the first character of several communication programs: Fido Opus Seadog Standard Interface Layer.

X00 allows PC communication ports to be swapped. The serial port that DOS calls COM1 can be mapped (reassigned) to any other port that X00 supports. X00 may also be used to lock the speed of communication between the modem and computer.

X00 only works with 8250 type UART chips such as the 8250A, 16450, 16550, 16550A, 16552, and the 82510. If your IBM or compatible has a serial communication port, your serial card more than likely contains one of these supported UART chips. XU.EXE is a utility distributed with X00 to help you identify the existence of compatible serial I/O devices.

Although X00 is usually used as a device driver (see Quick Install), X00 may also be used as a normal DOS program, called from the DOS prompt. This requires changing the program name from X00.SYS to X00.EXE. Here we will discuss using X00 as a device driver. The X00 documentation explains how to use it as a DOS program.

If you use QEMM386, EMM386, or some other memory manager, X00 can be loaded into high memory. Check your memory manager manual for details on loading device drivers into high memory.

Who should use X00? You may need X00 if:

Quick Install
First unzip X00150.ZIP and copy X00.SYS to the (e.g.) root directory of your boot-up drive. If you use standard communications ports (either COM1 or COM2 on a PC or AT, or COM1 through COM8 on a PS/2) then just add the following line to your CONFIG.SYS file:

It's as simple as that! The lucky ones with simple requirements can stop here and go on to other things. If your setup is more complex, however, you must read the more complex setup instructions:

Not-So-Quick Install
X00 options are set on the command line (where X00 is invoked) in your CONFIG.SYS file. In most cases, only the first character of an option needs to be used. Most setups require just a few command-line options.

Specifying the number of Ports
If a single decimal number is in the X00 command line, it specifies the number of serial ports that X00 is to simultaneously support. Input and output buffers are allocated for each of the ports specified. The default is one port. With the single command line parameter, the maximum value of the number of ports is 4 for non-PS/2 systems and 8 for PS/2 systems. An example of usage:
a: How many (but not which) port(s) to support. If you want to use more than 4 serial ports on a non-PS/2, then X00 requires each port address to be specified.

Mapping Port Assignments
It's important to know that DOS assigns port numbers starting at zero, while X00 port numbers start at one. That means that DOS COM1 is X00's COM0, and DOS COM2 is X00's COM1, and so on. X00 port mapping is necessary if your hardware configuration does not match either the PS/2, or the common standard for non-PS/2 systems.

COM1 and COM2 are the same for the PC, XT, AT, and PS/2. Hardware specifications for COM3 through COM8 became available only when IBM released the PS/2. X00 attempts to determine the hardware architecture on which it is being executed. If a PS/2 is detected the default serial I/O port addresses will be set to match the PS/2.

X00's default is to assign PORT0 through PORT7, to COM1 through COM8. Mapping ports can be the most complicated X00 command line option. By default, X00 maps up to 8 serial I/O ports (PORTS 0 through 7).

Port mapping options:


PORTn is the X00 port number, and must be 0 through 7. COMn is a standard DOS port and must be COM1 through COM8. IRQn is the IRQ used by the serial port, and must be IRQ0 through IRQ15.

HEXADDRESS is a hexadecimal I/O port address for a serial I/O device. IRQ addressing information is usually available in the documentation that comes with serial cards.

The B option: Locking Baud Rate, Data, Parity, and Stop bits
Normally, your communication program sets the baud rate and other parameters that control the serial I/O hardware. Fast modems (9600 and above) get better performance when the communication speed from the computer to modem are constant. This constant rate between the modem and computer is known as locking the serial port.

When the serial port transfer rate is locked, the computer-to-modem speed is usually faster than the modem-to-modem speed. When the serial port transfer rate is locked, the modem must support RTS/CTS (Ready To Send/Clear To Send) hardware handshaking, and the feature must be enabled on the modem. Check your modem manual.

The B command line option requires 2 parameters but allows an optional third parameter. The option is specified in the form:
(The PARITY parameter is rarely required because most BBSs use 8-N-1.)

CONFIG.SYS example 1:

C:\DOS\DEVICE= X00.SYS Ba, 0b,2400c Bd, 1e,19200f

Save 5 seconds
Normally, when X00 is loaded, a copyright notice is displayed for 5 seconds. Using the eliminate option will disable the 5 second display/delay. This option only requires the first letter E. Example of usage:

FIFO Buffering
Some serial I/O hardware devices have First In/First Out (FIFO) buffers. This option specifies the number of characters that X00 can load into the FIFO during a single transmit interrupt. In general, this number should be set to one less than the size of the FIFO buffer. For example, the popular 16550A UART has a 16-byte FIFO on both transmit and received data, so the value of 15 is used. Only the first letter of the command F is required. Example of usage: (With a 16550A UART)

If you do not have a 16550A UART, there are no FIFO buffers available to you. The only thing you can do to add FIFO buffers is to upgrade your hardware. Some serial cards have a socketed UART chip, these serial cards can be upgraded for under $20. Non-socketed UART serial cards should generally be replaced.

Receive Buffer Size
The R option allows you to set the size of the data receive buffer. Data is held in your computers RAM until the buffer fills up and is then dumped to your storage (hard drive) device.

The default size of the receive buffer is 512 bytes. Valid buffer sizes are: 256, 512, 1024, 2048, 4096, 8192, 16384 and 32768. If an invalid buffer size is specified, the next lower correct buffer size is used.
Examples of usage: DEVICE=X00.SYS R=1024 (or) DEVICE=X00.SYS R=2048

Transmit Buffer Size
The T option allows you to set the size of the data transmit buffer. This option is identical in usage to the R option except that it sets the size of the transmit buffer.

Buffer Sizes
Usually the receive and transmit buffers are set to the same size. Many users needlessly set the size of the (receive & transmit) buffers too large, hoping to increase data transfer rates. Setting the buffers too large can actually slow things down. 1024 or 2048 should do under normal usage. Some communication programs get improved performance with larger settings. As an example, FXTerm works best when T and R are both set to 4096. Check your program manual for possible buffer-setting recommendations. You can also play around with the settings to see if transfer rates improve.

CONFIG.SYS example 2:

C:\DOS\X00.SYS Ea 1b T=4096c R=4096d Be, 1f, 38400g F=12h

Un-installing X00
X00 takes approximately 15k of memory. If you are loading X00 as a DOS program rather then a device driver, you may want to free your system memory for other applications when you are done with your communications program. X00 can be un-installed by simply executing X00.COM, without any command line parameters.

Finding X00 and More...
X00 is usually distributed as a ZIP archive file. A complete explanation of X00 and its usage is found inside the X00.ZIP file. X00 was written by Raymond L. Gwinn ( At the time of this article, the latest version of the X00 package is X00150.ZIP. To extract the individual files you need PKUNZIP program (or an equivalent). PKUNZIP is a product of PKWARE, and can be downloaded from almost any BBS (

Chuck Spear (a long time computerist with a sense of humor) is the Sysop of the Fox_Hole BBS in South San Francisco

End of page 15. Go back or go to page 16 or to Mark's home page.