C65, Teil 3: Innenleben

Lese­dau­er 8 Minu­ten

Der Com­mo­do­re 65 hat­te – neben der haus­in­ter­nen Kon­kur­renz durch den Ami­ga – noch damit zu kämp­fen, dass er in eine Welt hin­ein ent­wi­ckelt wur­de, die sich im Umbruch befand. Der PC hat­te – nach wort­wört­lich lang­sa­men Anfän­gen als bes­se­re Schreib­ma­schi­ne und Tisch­rech­ner – rich­tig Fahrt auf­ge­nom­men und mach­te sich durch das schlim­me Buz­z­word „Mul­ti­me­dia” auch dar­an, den Markt der Heim­rech­ner zu übernehmen.

dsc 0001
Com­mo­do­re 65

Umbruch in der Rechnerarchitektur
Natür­lich lesen sich die Eck­da­ten des C65 beein­dru­ckend und in der dama­li­gen Zeit war der 65er in eini­gen Berei­chen sogar aktu­el­len PCs über­le­gen. Er ver­füg­te – ganz ähn­lich wie der Ami­ga – über Cus­tom­chips, die dem Haupt­pro­zes­sor zur Sei­te stan­den. In den frü­hen 1990er Jah­ren war aber ein Com­pu­ter mit einer 8‑Bit CPU ein ech­ter Ana­chro­nis­mus, und auch die Zeit der Kom­plett-Rech­ner, die eher schlecht erwei­ter­bar waren, ging bereits ab Mit­te der 1980er Jah­re zu Ende. Erst rund 25 Jah­re spä­ter kamen die Nach­fol­ger der Home­com­pu­ter, die Ein­pla­ti­nen­com­pu­ter (Ardui­no, Raspber­ry­PI, BBC Micro:bit) auf den Markt. Was unter­schei­det aber einen Home­com­pu­ter von einem PC?

Die qua­si offe­ne, erwei­ter­ba­re Archi­tek­tur der IBM-kom­pa­ti­blen PCs war (und ist) Fluch und Segen zugleich. Auf der einen Sei­te war das Sys­tem fle­xi­bel an die Anfor­de­run­gen des Users anpass­bar, auf der ande­ren Sei­te muss­te die Soft­ware, damals DOS und das dar­auf auf­ge­stülp­te Win­dows, mit der vie­len unter­schied­li­chen Hard­ware auch klar­kom­men. Es wur­den die auch noch heu­te bei fast allen Betriebs­sys­tem vor­han­de­nen, soge­nann­ten „Trei­ber” benö­tigt. Eine hard­ware­na­he Pro­gram­mie­rung, wie sie im Bereich der Home­com­pu­ter nor­mal war, war damit nur sehr sel­ten möglich.

Haupt­vor­teil von Home­com­pu­tern und Ein­pla­ti­nen­com­pu­tern ist die Homo­ge­ni­tät der Hard­ware. Fin­det ein Pro­gram­mie­rer die immer glei­che Kom­po­nen­ten auf den Rech­nern vor, so kann er sei­ne Pro­gram­me exakt auf die­se Hard­ware opti­mie­ren. Er benö­tigt kei­ne lang­sa­men Trei­ber, die die Befeh­le für die vor­han­de­ne Hard­ware „über­set­zen”. Frü­her konn­te er sogar nicht vor­ge­se­he­nen Ope­ra­tio­nen benutz­ten, die soge­nann­ten „ille­ga­len OP-Codes”. Dar­un­ter ver­steht man unde­fi­nier­te Befeh­le im Pro­zes­sor oder den Cus­tom­chips. Das kön­nen teils nicht fer­tig­ge­stell­te Befeh­le oder Funk­tio­nen sein, oder es der Pro­zes­sor führ­te durch eine Zei­chen­fol­ge etwas aus, was über­haupt nicht vor­ge­se­hen war. Hat­te man Glück, so führ­te dies nicht zum Crash son­dern erfüll­te irgend­ei­ne sinn­vol­le Funktion.

Die CPU im C64, die MOS 6510 (ein Able­ger des 6502) und der Video­chip „VIC II” hat­ten eine Men­ge die­ser ille­ga­len Opcodes, mit denen die Pro­gram­mie­rer den C64 Din­ge machen lie­ßen, die weit über die Spe­zi­fi­ka­tio­nen des Com­pu­tern hin­aus­gin­gen. Auf einem PC mit sei­ner unüber­schau­ba­ren Viel­falt allei­ne an CPUs ist so etwas nicht vorstellbar.

Man unter­schied (unter­schei­det) zwei Phi­lo­so­phien bei der Ent­wick­lung von Micro­pro­zes­so­ren. Auf der einen Sei­te CISC, was für „Com­plex Inst­ruc­tion Set Com­pu­ter” steht, und RISC, wel­ches auf einen redu­zier­ten Befehls­satz des Pro­zes­sors hin­weist. RISC-CPUs haben einen Befehls­satz, der meist einen nied­ri­gen zwei­stel­li­gen Befehls­um­satz bedeu­tet – der von CISC-Pro­zes­so­ren ist meist mehr als zehn­mal so groß. Die Leis­tungs­fä­hig­keit der CPU steht und fällt mit der Fähig­keit des Com­pi­lers (der Com­pi­ler über­setzt die Hoch­spra­che in Maschi­nen­spra­che), den Befehls­satz des Pro­zes­sors opti­mal aus­nut­zen zu kön­nen. Frü­her Com­pi­ler für die Intel-CPUs konn­ten das nicht, so dass man sehr viel mehr schie­re Rechen­leis­tung benö­tig­te, um die eigent­lich viel lang­sa­me­ren Heim­com­pu­ter abzuhängen.

Han­di­caps der Intel-8080/8086-CPUs waren zudem, dass sie kei­ne Pipe­line besa­ßen und durch den sehr kom­ple­xen Befehls­satz weni­ger Leis­tung pro MHz boten. Die Kom­ple­xi­tät erhöh­te die Chip­flä­che (Die), so dass weni­ger Dies auf einen Wafer (gro­ße run­de Trä­ger­plat­te auf die Schalt­krei­se auf­ge­bracht wer­den) und so die Her­stel­lung ver­teu­er­ten. CISC-Pro­zes­so­ren wer­den immer kom­ple­xer, sofern man nicht die Abwärts­kom­pa­ti­bi­li­tät beschnei­det und bei x86 Din­ge wie das A20-Gate­way oder den Real-Mode über Bord wirft.

Vor­tei­le der CISC-CPUs waren die kom­for­ta­ble Pro­gramm­ent­wick­lung in einer Hoch­spra­che. Man muss­te sich nur sel­ten in die Nie­de­run­gen von dem maschi­nen­na­hen Assem­bler bege­ben. Die Pro­gram­me wur­de dadurch deut­lich für den User umfang­rei­cher und leis­tungs­fä­hi­ger, die Ent­wick­lungs­kos­ten sanken.

Typi­sche Ver­tre­ter der RISC-Frak­ti­on war der 6502, auf dem auch der 4510 des Com­mo­do­re 65 basiert. Typi­sche CISC-Rech­ner hat­ten ein Herz aus einer 8080 oder Z80-CPU, deren Enkel auch noch in den meis­ten Rech­nern mit Win­dows oder macOS ste­cken. Heu­te fin­det man RISC-CPUs von ARM so gut wie in jedem Mobil­te­le­fon von Apple über Hua­wei und Sam­sung bis ZTE.

Eine moder­ne CPU ist zwar hoch­kom­plex, gibt aber dem Pro­gram­mie­rer kei­nen Zugriff auf nicht vor­ge­se­he­ne Befeh­le. Wie auch? Der Pro­zes­sor hat heu­te sel­ber eine Firm­ware, die zwi­schen dem Code und dem Chip ver­mit­telt – was zum Teil der hei­li­gen Kuh, der Abwärts­kom­pa­ti­bi­li­tät, geschul­det ist. Rein von der Hard­ware haben näm­lich aktu­el­le CPUs nicht mehr viel mit der Urvä­tern gemein – trotz­dem müs­sen sie deren Code noch aus­füh­ren kön­nen. Des­we­gen gibt es auch heu­te auch kei­ne „ech­ten” RISC- oder ech­te CISC-Pro­zes­so­ren mehr. Abwärts­kom­pa­ti­bi­li­tät wird durch die CPU-Firm­ware her­ge­stellt, die die alten Funk­tio­nen emuliert.

Wir spre­chen beim Com­mo­do­re 65 von einer 4510 CPU. Die­se ist im Kern eine 6502 CPU – die nied­ri­ge­re Zahl an der ers­ten Stel­le der Pro­zes­sor­be­zeich­nung weist nicht auf eine gerin­ge­re Leis­tung hin. Die Seri­en­fol­ge bei den 6502-CPUs war (sehr grob gesagt): 6xxx (PET, CBM, VC20, C64), 7xxx (264er-Serie), 8xxx (C128), (für die 264-Serie) und 4xxx (C65). Also nicht wun­dern, wenn die Bezeich­nun­gen kei­nen Sinn erge­ben, denn das tun sie wirk­lich nicht. 🙂 Der schnells­te 6502-Able­ger war die (ech­te) 16-Bit-CPU W65C816S (16 Bit ALU und Regis­ter, 24 Bit Adress­bus und 24 MHz Takt­fre­quenz). Der 65C816 erschien bereits 1983! Gegen ihn wirkt die viel neue­re 4510 CPU des C65 wie ein Fahr­rad gegen ein Superbike.

Das soll­te man alles im Hin­ter­kopf behal­ten, wenn man die Mög­lich­kei­ten des C65 kor­rekt ein­schät­zen will. Die meis­ten schau­en immer nur auf die MHz-Zah­len der Rech­ner und zie­hen dadurch fal­sche Schlüsse.

dsc 0010

CPU:
Der 4510 („Vic­tor”) ist ein auf­ge­bre­zel­ter 6510, wie er auch im C64 steckt. Damit konn­te man die o.a. ille­ga­len Opcodes ver­wen­den, was der Kom­pa­ti­bi­li­tät sehr zu Gute kom­men soll­te. Vom C64 wur­den zudem die bei­den – nun inte­grier­ten – Ein-/Aus­ga­be-Bau­stein 6526 („CIA”) über­nom­men. Der eigent­lich Pro­zes­sor­kern mit 3,54 MHz stammt aber vom 65CE02 und brach­te auch die „geheim­nis­vol­len” 16-Bit-Befeh­le des C65 mit.

Da muss man wirk­lich kein Bohei drum machen, denn 8‑Bitter hat­ten schon immer 16-Bit-Funk­tio­nen, zum Bei­spiel für die Sub­trak­ti­on und Addi­ti­on – so auch 8080 und Z80. Die 16-Bit in einer 65xx CSG CPU sind also ein rich­tig alter Hut. Am Ran­de: Der 6509 hat­te einen Adress­bus von 20 Bit – nie­mand käme auf die Idee ihn des­we­gen eine 20-Bit-CPU zu nen­nen. Einen ech­ten 16-Bit­ter macht eine Wort­brei­te von 16-Bit und auch mög­lichst ein min­des­tens 16-Bit brei­ter Adress­bus aus. Bei­des Attri­bu­te die dem 4510 feh­len – und ihn damit zu einem lupen­rei­nen 8‑Bitter machen. Jeden­falls so lupen­rein wie die meis­ten 8‑Bit Prozessoren.

SL731870
CPU 4510, aka „Vic­tor”

War­um hat Com­mo­do­re nicht ein­fach den vor­han­den ech­ten 6502–16-Bitter ver­wen­det? Der 65C816 wur­de von der Fir­ma Wes­tern Design Cen­ter ent­wi­ckelt. WDC gehör­te Bill Mensch, einem ehe­ma­li­gen Mit­ar­bei­ter von MOS – man hät­te sich sicher­lich eini­gen kön­nen. Die­ser Pro­zes­sor hät­te aber schlicht die Kom­pa­ti­bi­li­tät des C65 ein­ge­schränkt – man hat­te aus den Pro­ble­men mit dem C128 durch­aus etwas gelernt und mit dem 4510 die alten, ille­ga­len Opcodes des 6510-Designs um einen neu­en, kos­ten­güns­ti­gen Kern her­um drapiert.

Aber genug geme­ckert. Wie ich in den ande­ren Arti­keln schrieb, soll­te der C65 die immer noch vor­han­de­ne C64-Fan­ba­sis beglü­cken. Er war als schnel­le­rer und sehr viel leis­tungs­fä­hi­ge­rer C64 gedacht. Auf die Ver­wen­dung als Ein­stei­ger-Home­com­pu­ter wies schon der feh­len­de Zif­fern­block auf der Tas­ta­tur hin. Des­we­gen auch die inter­ne Bezeich­nung als C64DX. Die Käu­fer hät­ten ihre gesam­te Peri­phe­rie und Soft­ware behal­ten kön­nen. Bei einem Wech­sel zum Ami­ga hät­te man das alles ver­kau­fen oder ent­sor­gen müs­sen. Wenn man sowie­so wech­selt, war­um dann nicht zu einem Ata­ri ST oder einem PC-Klon? Der C65 hät­te eine Kun­den­bin­dung bewirkt.

Die rei­ne Rechen­leis­tung des 4510-Pro­zes­sors war bereits durch die Takt­fre­quenz etwa 3,5 mal so hoch wie die den C64, denn die 6502-Fami­lie ska­liert recht gut. Durch sei­ne zwei­stu­fi­ge Pipe­line hät­te er auch jeden IBM 8086 (immer­hin ein ech­ter 16-Bit­ter) in sei­ne Schran­ken ver­wie­sen. Erst mit dem 80286 konn­te Intel eine Pipe­line­ar­chi­tek­tur rea­li­sie­ren, die dann immer­hin drei­stu­fig war. Ja, 1992 waren bereits die 80386 markt­do­mi­nie­rend, aber selbst für einen bil­li­gen, ein­fach aus­ge­stat­te­ten Klon waren min­des­tens 3.000 DM fäl­lig. Der C65 soll­te aber nur 600 Mark kos­ten. Wir ent­sin­nen uns: hard­ware­na­he Pro­gram­mie­rung ermög­licht sehr viel schnel­le­re Appli­ka­tio­nen! Ich bin mir sicher, dass der C65 bei Spie­len auch mit dem schnells­ten 286er oder gar 386er hät­te mit­hal­ten können.Wer die dama­li­gen DOS-Spie­le kennt, weiß genau, was ich mei­ne: vor Wol­fen­stein waren die nicht einen Deut bes­ser als das, was es 10 Jah­re zuvor bereits auf den Heim­com­pu­tern gege­ben hatte.

Das liegt aber nicht allei­ne an der CPU-Leis­tung, son­dern vor allem am Grafikchip.

Gra­fik­chip:
CSG (Com­mo­do­re Semi­con­duc­tor Group, ehe­mals bekannt als MOS) ent­wick­le­te für den C65 einen (Zitat) „high per­for­mace, low cost”-Grafikchip, den CSG 4567 („VIC III”), der immer­hin eine Auf­lö­sung von bis zu 1280×400 Punk­ten bei vier Far­ben, aus einer Palet­te von 4096 Far­ben, ermög­lich­te. Eine PC-Gra­fik­kar­te, die so eine Leis­tung bot, kos­te­te zu die­ser Zeit schon fast soviel, wie der gan­ze C65 (ca. 600,- DM).

SL731869
Gra­fik­chip 4567, VIC-III, aka „Bill”

Anders als im PC, war die­ser Chip, auch „Bill” genannt, unab­hän­gig vom Haupt­pro­zes­sor („Vic­tor”) zu pro­gram­mie­ren. Zudem konn­te er ohne Unter­stüt­zung auf den Haupt­spei­cher zugrei­fen. Das Poten­ti­al, wel­ches die­ser Chip – abseits der Spe­zi­fi­ka­tio­nen auf dem Papier – bot ist schwer ein­zu­schät­zen, aber die Pro­gram­mie­rer hät­ten sicher Mög­lich­kei­ten ent­deckt, die die Chip­ent­wick­ler nicht für mög­lich gehal­ten hät­ten. Das ist der Vor­teil an stan­dar­di­sier­ter Hard­ware, die dem PC mit sei­ner offe­nen Archi­tek­tur immer ver­sagt geblie­ben ist.

Aus­ge­ge­ben wer­den konn­te die Gra­fik über den HF-Aus­gang auf einem nor­ma­len Fern­se­her, über FBAS auf C64-kom­pa­ti­ble Moni­to­re und über einen ana­lo­gen RGB-Aus­gang auf Ami­ga-kom­pa­ti­ble Bild­schir­me. 80 Zei­chen pro Zei­le waren im C65-Modus Stan­dard und waren auch im Heim­be­reich wich­tig für die Text­ver­ar­bei­tung und Tabellenkalkulation.

In Sachen Gra­fik stand also der C65 einem PC nicht nach.

Sound:
Da gibt es gleich links und rechts was um die Ohren – und zwar von einem (zwei!) alten Bekann­ten! Com­mo­do­re löte­te zwei SID-II (SID = Sound Inter­face Device) auf die 65er-Pla­ti­ne. Lei­der sind es die ver­schlimm­bess­ser­ten Chips in der 8085er-Ver­si­on (aus dem C64 C) ein­ge­baut. Die­se kön­nen Sound­sam­ples (kur­ze, digi­ta­le Ton­auf­zeich­nun­gen), die mit­hil­fe eines Seri­en­feh­lers des Laut­stär­ke­re­gis­ters im 6581 noch gut funk­tio­nier­ten nur sehr lei­se abspie­len. Eigent­lich war der 8085 der bes­se­re 6581, denn auch die ana­lo­gen Kom­po­nen­ten des 6581 wur­den hier digi­tal aus­ge­führt und boten damit den kla­re­ren Klang – jeder ein­zel­ne 6581 klang im ana­lo­gen Bereich der Fil­ter näm­lich etwas anders als sei­ne Geschwis­ter. Aber wie auch bei den ille­ga­len Opcodes, die die Leis­tung der CPU erwei­ter­ten, sorg­ten die­se Design­feh­ler im 6581 für Mög­lich­kei­ten, die nicht im Daten­blatt des Her­stel­lers zu fin­den waren.

SL731867
Zwei Sound­chips, 8085, aka „SID-II”

Trotz­dem war auch der 8085 mit sechs Stim­men und Ste­reo­sound jeder erhält­li­chen ISA-Bus-Sound­kar­te für den PC weit über­le­gen. Der SID-Sound ist voll­kom­men zurecht legendär.

RAM:
Theo­re­tisch wären durch eine RAM-Erwei­te­rung bis zu acht Mega­byte (8 MB!) Arbeits­spei­cher nach­rüst­bar gewe­sen. Das war mehr als nur auf Augen­hö­he mit den sei­ner­zeit ver­füg­ba­ren PCs.

SL731868
Slot der RAM-Erweiterung

Cus­tom-Chips:
Ein DMA-Con­trol­ler (DMA­gic, 390957) mit schnel­lem „Blit­ter” (ver­schiebt RAM bit­wei­se), der die RAM-Ver­wal­tung der CPU abnimmt. Ein Flop­py-Disk-Con­trol­ler („FDC”, 4571/​81) mit ange­schlos­se­nem 1565-Dis­ket­ten­lauferk, wel­ches sat­te 1 MB Spei­cher­ka­pa­zi­tät bot und zur 1581 kom­pa­ti­bel war.

SL731873
Spei­cher­con­trol­ler „DMA­gic”

SL731878
Floppydisk-Controller

DSC 2449
Flop­py-Lauf­werk, intern

Soft­ware:
Das lei­der nie fer­tig gestell­te BASIC des C65-Mode wäre wohl in etwa so leis­tungs­fä­hig wie das des C128 gewor­den. In den Pro­to­ty­pen fin­det sich zudem noch ein Assembler-Monitor.
Man konn­te zwi­schen dem C64- und den C65-Mode hin und her wech­seln. Zur Kom­pa­ti­bi­li­tät habe ich bereits in den vor­he­ri­gen Arti­keln etwas gesagt.

SL7323351

Fazit:
Alles in allem wür­de ich eine Sys­tem­ge­samt­ge­schwin­dig­keit erwar­ten, die die des C64 um etwa den Fak­tor sechs bis sie­ben (bei RAM-Ope­ra­tio­nen deut­lich mehr) über­steigt. Er wäre von der Leis­tung kei­ne Kon­kur­renz zum Ami­ga oder zum PC gewe­sen, hät­te aber die Kun­den der C64-Fan­ba­sis sicher­lich noch eini­ge Jah­re an die Fir­ma Com­mo­do­re bin­den kön­nen. Er wäre ver­gleich­bar mit einer Auf­rüs­tung eines heu­ti­gen PCs mit neu­er CPU, Gra­fik­kar­te, mehr RAM und einer schnel­le­ren SSD gewe­sen – und das zu einem wirk­lich güns­ti­gen Preis. Damals bedeu­te­te der Neu­kauf eines Heim­com­pu­ters meist, dass man die Soft­ware und die Peri­phe­rie nicht mehr ver­wen­den konn­ten. Für die Kun­den wäre der C65 also eine tol­le Auf­rüst­mög­lich­keit geworden.

 

Schreibe einen Kommentar

Ich bin mit der Datenschutzerklärung und der Speicherung meiner eingegebenen Daten einverstanden.