Der Zorro-Bus ist ein Bussystem bzw. eine interne Schnittstelle des Amiga-Computers.
Es wurde zunächst als Zorro-I im Amiga 1000 verwendet, weiterhin 16-bittig als Zorro-II im Amiga 2000 und schließlich 32-bittig (multiplexed) als Zorro-III im Amiga 3000 und höher.
Das Bussystem der frühen Amiga-Modelle ist der so genannte Zorro-Bus mit 24-Bit-Adressraum – im A500/1000 seitlich durch einen 86-poligen Anschluss, im A2000 Zorro-II intern durch mehrere 100-polige Steckplätze, im A3000/A4000 Zorro-III mit 32-Bit-Adressraum durch mehrere 100-polige Steckplätze, 32 Bit wurde durch Multiplexen der Signalleitungen erreicht. Durch einen Adapter konnte man Zorro-II-Karten an einem Amiga 500/1000 betreiben. Selbstverständlich liefen auch alle Zorro-II-Karten noch am Zorro-III-Bus, da am Bus selbständig erkannt wurde, ob es sich bei der Karte um eine 16- oder 32-Bit-Karte handelte.
In die Modelle A2000, A3000 und A4000 konnten auch handelsübliche IBM-kompatible ISA-Steckkarten (16-Bit) eingebaut werden, allerdings war dazu zusätzlich eine sogenannte Brückenkarte notwendig, und nur Festplatten waren durch spezielle Software auch von der Amiga-Seite zugänglich.
Der Zorro-Bus verfügt außerdem über einen sogenannten Auto-Config-Mechanismus, der ein automatisches Einbinden von Erweiterungskarten beim Systemstart ermöglicht. Jede Zorro-Karte verfügt dafür über einen EPROM- oder PAL-Baustein, in dem alle notwendigen Informationen für den Auto-Config-Mode enthalten sind. Dies sind zum Beispiel
Der Adressraum kann 64 KByte, 128 KByte, 256 KByte, 512 KByte, 1 MByte, 2 MByte, 4 MByte und 8 MByte betragen. Dadurch reserviert das System für die Karte nur so viel Speicher, wie erforderlich ist.
Mit dem Amiga 2000 wurden erstmals sich selbst konfigurierende interne Schnittstellen eingeführt. Diese internen Schnittstellen des Amiga sind vergleichbar mit den heutigen PCI-Slots moderner Computer.
Jede Zorro-Karte hat eine eigene Nummer, die sich nach dem Steckplatz richtet, in dem sie steckt. Nach einem Reset werden alle Karten über die sog. Signale CFGIN und CFGOUT abgefragt. Jede Karte bekommt einen 64 Kilobyte großen Informationsblock zugewiesen, der für Zorro-II ab $00E8xxxx und für Zorro-III ab $FF00xxxx liegt. Dann werden alle nötigen Daten für die Einbindung der Karte in eine Systemliste eingetragen. Danach werden die Treiber installiert, die über die expansion.library alle nötigen Informationen über die dazugehörige Karte erhalten, um sie einbinden zu können.
Entwickelt wurden der Zorro-Bus aus dem CPU-Expansionsslot des Amiga 1000. Viele spätere Erweiterungen des Amiga 500 (Plus) und des Amiga 1200 basierten darauf.
Der „Zorro 2“ des Amiga 2000 war auf einer Datenbreite von 16 Bit ausgelegt. Mit dem Amiga 3000 wurde dieser auf 32 Bit Datenbreite erweitert (Zorro 3), jedoch können weiterhin Zorro-2-Karten (16 bit) verwendet werden.
Der Amiga 4000 verwendet die selben Zorro-3-Slots wie der Amiga 3000.
Erweiterungskarten für den Zorro-Bus boten neben Commodore selber auch Great Valley Products, phase5 und einige andere Drittanbieter an.
PET/CBM: KIM-1 | PET 2001 | CBM 3000 | CBM 4000 | CBM 8000 | MMF 9000 CBM II: CBM 500∗ | CBM 600 | CBM 700 | CBM 900∗
Heimcomputer: VC 10 | VC 20 | C64 (SX, GS♦) | 264-Reihe (C16, C116, Plus/4) | C128 | C65∗
Amiga (Übersicht): 1000 | Sidecar | 500 | 2000 | CDTV♦ | 600 | 3000/T/UX | 1200 | 4000 | CD³²♦
IBM-kompatibel: PC-1 | PC-10 bis PC-60 | x86LT | A 1060
Peripherie: Laufwerke: Datasette | VC15xx (VC1540/41, VC1551, VC1570/71, VC1581) | SFD100x (SFD1001, SFD1002) | CBM 2020 bis 8250 | Amiga-Diskette | A570 | A3070
Drucker: MPS-Serie | MPS 801 | CBM-8000-Serie | VC1520
Sonstige Hardware: Zorro-Bus | RAM Expansion Unit | Commodore-Maus | Monochrom- und Farb-Monitore | Lautsprecher A10 | Mehrfachbenutzersysteme (MBS)
Historische Hardware: Schreib- und Tischrechenmaschinen | LED-Uhren | Konsole Commodore 2000k| Schachcomputer
Chips: MOS Technology | VIC | VIC II | TED | VDC | SID | PIA | VIA | TPI | CIA | ACIA | Agnus (Blitter, Copper) | Paula | EHB-Modus | HAM-Modus Chipsätze: OCS | ECS | AGA
Software: Commodore BASIC | Commodore Basic V2 | Kernal | CBM-ASCII (PETSCII) | GEOS | Commodore DOS | AmigaOS | Kickstart | Workbench | AmigaGuide | AMIX