GeoPort
From Wikipedia, the free encyclopedia
GeoPort was a serial data system used on some models of the Apple Macintosh. GeoPort modified the "meaning" of the existing Mac serial port pins to add a new high-speed Direct memory access (DMA) channel that allowed the Mac's internal sound hardware to emulate various devices such as modems and fax machines. GeoPort could be found on late-model m68k-based machines (the AV series) as well as many pre-USB Power Macintosh models. Apple GeoPort technology is now obsolete.
The basic idea behind GeoPort was to allow one to build a low-cost analog communications device by using the hardware already built into the Mac for most of the data handling. Early machines were not fast enough to emulate these devices, but the AV-series added an AT&T 3210 DSP which could handle this with ease, and the later Power Macintosh's PowerPC had enough raw processing power to do this without the DSP helping. Since this hardware was already built into the Mac, all that was needed externally was a line adaptor which included a digital-to-analog converter to convert the digital sound values generated by the computer to analog signals, and vice versa. Better yet, the same system could be used to handle voice, which required too much bandwidth to easily send over existing serial ports.
The problem was that the "normal" Mac serial port did not have the speed needed to send the resulting sound data to the line adaptor. Fully supporting a phone system requires between 56 and 64 kbit/s, and while the Mac's RS-422 mode could run at up to 230 kbit/s, this required a considerable amount of the CPU's time to mediate the transfer, leaving little time for it to actually generate the signal. However, the RS-422 ports on the Mac also supported higher speeds through the use of an externally-generated clock signal. Instead of the serial driver's internal clock, which topped out at 230 kbit/s, devices could supply their own clock signal for rates up to 920 kbit/s in each direction. This had been used by a small number of networking adapators in the past, and the main reason this was not more widely used is that the clock required power, which the port did not supply in RS-422 mode.
Apple solved the power problem by modifying their existing 8-pin Mini-DIN connector with the addition of a 9th pin "shoehorned" into it, serving double-duty in providing power to an attached device, as well as serving as an indication of a "classic" device if there was nothing connected to it. With the additional power, the external line adaptors could power their own clock devices and send data at higher rates. In the case of GeoPort, this allowed the Mac's CPU to quickly "squirt" data to the device, leaving it more time to handle the actual data.
The only widely known device to use of the GeoPort was Apple's own GeoPort Telecom Adapter, a passive modem which was announced in 1996. It came in three types, two external pods (the GeoPort Telecom Adapter and the GeoPort Telecom Adapter II) and an internal modem model all providing a standard RJ-11 phone line connector. The internal adapter fit in the Communication Slot II (CS II), which was essentially an internal GeoPort with various other signals as well. Initially the adapter driver software could support speeds up to 9600 bit/s, but later upgrades introduced full V.34 compliance, running at up to 33.6 kbit/s. SAGEM also introduced an ISDN adaptor for GeoPort, the Planet-ISDN Geoport Adapter, or SPIGA, which they now sell in a USB version.
In general conception, the GeoPort Telecom Adapter was similar to the Winmodem/audio/modem riser standard on the PC. The problem with GeoPort —and Winmodem— is that the creation and decoding of the signals is a processor-intensive task. While an otherwise unused CPU has more than enough power to handle this task, one running the operating system and user applications at the same time may not. As the supported speeds increased, the effect on overall performance became more and more obvious. Of course this assumes all one wants to do with the system is use it as a modem, ignoring the voice handling GeoPort supported, but in fact this appears to be the case and few voice applications were developed. Moreover the small Mac market meant that the "cheap" adaptors were never cheap, and "full" high speed modems were soon less expensive than the Adapter.
During the evolution of GeoPort the telecoms market was undergoing major changes with the introduction of newer all-digital PBX systems. A number of these companies offered some sort of computer telephony integration, although they were all based on their own standards, typically connected via a serial port. Apple spent some time evangelizing GeoPort as a standardized connector for this market, but met limited success even though a number of vendors announced support. The problems were more to do with the companies involved rather than any particular problem with GeoPort, although the fact that the GeoPort was essentially the non-standard Mac serial port certainly didn't help matters. The main issue was that the various PBX companies relied on vendor lock-in to keep their existing customers coming back to them for newer products, so the very concept of a standardized connector was something of a problem rather than a solution. Additionally there was no support for high-speed serial on the basic PC, so users would have to buy an add-on card if they were going to use it, at which point it made just as much sense to buy a complete adaptor on a card.
[edit] Pinouts
The table below shows the name and purpose of the various pins in the GeoPort-enabled serial connector when used in GeoPort, RS-422 (LocalTalk) and RS-232 modes.
Pin # GeoPort RS-422 RS-232 Name 1 SCLK HSKo DTR Serial Clock (out), Handshake Out, Data Terminal Ready 2 SCLK HSKi HSKi Serial Clock (in), Handshake In 3 TxD- TxD- TD Transmit data (-ve signal) 4 GND GND GND Cable ground 5 RxD- RxD- RD Receive data (-ve signal) 6 TxD+ TxD+ Transmit data (+ve signal) 7 TxHS GPi CD Wakeup/DMA Request, General Purpose input, Carrier Detect 8 RxD+ RxD+ (ground) Receive data (+ve signal) 9 +5 V Power, 350 mA maximum