Etikett: assembler

  • SuperPET 9000 – när mikrodatorn flirtade med stordatorn

    I en tid då de flesta persondatorer var enkla maskiner för hobbybruk och spel tog Commodore en helt annan väg. SuperPET 9000 var en dator utvecklad i samarbete med akademin, byggd för programmerare, forskare och studenter som behövde verkliga utvecklingsverktyg snarare än leksaker. Med dubbla processorer, avancerade programmeringsspråk och stordatorliknande ambitioner kom den att bli ett av de mest särpräglade och visionära systemen i den tidiga mikrodatorepoken.

    I slutet av 1970-talet stod datorvärlden mitt i ett teknikskifte. Stordatorer och minidatorer dominerade universitet och forskning, medan persondatorer just hade börjat ta form. I detta gränsland föddes Commodore SuperPET 9000 – en dator som medvetet konstruerades för att sudda ut gränsen mellan akademisk datorkraft och persondatorns tillgänglighet.
    Resultatet blev en av de mest avancerade, ovanliga och tekniskt intressanta persondatorerna från sin tid.

    Ett datorprojekt från universitetet

    Till skillnad från många samtida hemdatorer utvecklades SuperPET i nära samarbete med University of Waterloo i Kanada. Syftet var inte spel eller hemanvändning, utan utbildning, forskning och professionell programutveckling. Datorn skulle fungera som ett seriöst arbetsredskap för studenter, forskare och utvecklare.
    Detta akademiska ursprung präglar hela konstruktionen, från hårdvara till mjukvara.

    Två processorer i samma dator

    SuperPET var unik genom att innehålla två olika processorer. MOS Technology 6502 gav full kompatibilitet med tidigare Commodore PET-modeller, medan Motorola 6809 erbjöd en betydligt mer avancerad arkitektur lämpad för strukturerad programmering och kompilatorbaserade språk. Med hjälp av fysiska omkopplare kunde användaren välja vilken processor som skulle vara aktiv. I 6502-läge fungerade datorn som en traditionell PET, medan 6809-läget gav tillgång till ett helt annat system anpassat för utvecklingsarbete.
    För sin tid var detta en mycket ovanlig och tekniskt djärv lösning.

    En programmeringsmiljö på minidatornivå

    När SuperPET startades i 6809-läge möttes användaren inte av ett enkelt BASIC-prompt, utan av ett menybaserat utvecklingssystem. Här fanns programmeringsspråk och verktyg som annars hörde hemma på betydligt större datorer. APL, FORTRAN, Pascal, assembler och COBOL kompletterades av en avancerad texteditor, maskinkodsmonitor och seriell kommunikation via RS-232.
    Grundidén var att utvecklare skulle kunna skriva, testa och felsöka program lokalt på SuperPET och därefter överföra källkoden till en stordator eller minidator via direktuppkoppling.

    Kraftfull hårdvara för sin tid

    Jämfört med andra persondatorer i början av 1980-talet var SuperPET tekniskt imponerande. Den kunde utrustas med upp till 96 kilobyte RAM, hade 48 kilobyte ROM med det specialutvecklade Waterloo KERNAL och använde en inbyggd 12-tums monokrom bildskärm i 80 kolumners textläge. Tangentbordet var fullstort och försett med APL-symboler direkt på tangenterna. Äkta RS-232 och IEEE-488 gav stöd för professionell kringutrustning.
    Detta var ingen förenklad hemdator, utan ett system byggt för seriöst och långsiktigt arbete.

    En nischprodukt med tydligt syfte

    SuperPET blev aldrig någon massprodukt. Den var dyr, avancerad och riktade sig till en begränsad målgrupp inom akademi och utveckling. I Europa marknadsfördes den som en MicroMainframe, ett namn som tydligt signalerade ambitionen att erbjuda stordatorliknande funktioner i skrivbordsformat.
    Trots den begränsade spridningen har SuperPET fått en särskild plats i datorhistorien.

    En alternativ framtid för persondatorn

    I efterhand är SuperPET särskilt intressant eftersom den visar en alternativ utvecklingsväg. Den representerar en vision där persondatorn tidigt blev ett professionellt utvecklingsverktyg snarare än en maskin främst avsedd för spel och hemanvändning. Många av idéerna lever kvar i dagens utvecklingsmiljöer, där terminalbaserat arbete, flera programmeringsspråk och direkt kommunikation med andra system fortfarande är centrala.

    Sammanfattning

    SuperPET 9000 var tekniskt avancerad, akademiskt präglad och kompromisslöst riktad mot programmerare. Den var före sin tid och för specialiserad för att bli kommersiellt framgångsrik, men just därför är den i dag en av de mest fascinerande persondatorerna från den tidiga mikrodatorepoken.
    Det var en dator byggd inte bara för att användas, utan för att förstås.

    Innehåll på youtube som behandlar CMD SuperPet 9000

    Faktaruta: Commodore SuperPET 9000 (MMF 9000)

    Även känd som: MicroMainframe (Europa), MMF 9000

    Bakgrund: Utvecklad i samarbete med University of Waterloo (Kanada) som en avancerad utvecklingsmaskin.

    CPU: MOS Technology 6502 och Motorola 6809

    Klockfrekvens: 1 MHz

    RAM: 96 KB

    ROM: 48 KB (Waterloo KERNAL, inkl. CBM BASIC 4.0)

    Bildskärm: 12" monokrom

    Textläge: 80 kolumner × 25 rader

    Video: MOS Technology 6545 CRTC

    Ljud: Piezo-högtalare (en fyrkantsvågsröst, tre oktaver)

    Portar/kretsar: 6551 ACIA, MOS 6520 PIA, MOS 6522 VIA

    Anslutningar: IEEE-488, 2× Datasette, EXPANSION-port, intern 25-polig RS-232, CBM parallell "User"-port

    Tangentbord: Fullstort 73-tangenters QWERTY + numerisk del, med APL-symboler på tangenterna

    Mjukvara i utvecklingsmiljön: Setup/RS-232, monitor, editor/terminal, BASIC, APL, Fortran, Pascal, assembler (samt COBOL)

    Annons

    Strul med e-posten? Hjälp med TV? Problem med wifi?
    Digital Fixare

  • Motorola 6809 – 8-bitars processorn som tänkte som en 16-bitare

    Motorola 6809 var en 8-bitarsprocessor med ovanligt många 16-bitarsidéer, lanserad 1978 när datorvärlden stod mitt i skiftet mot kraftfullare arkitekturer. Den blev känd för sin eleganta och “moderna” design – med smart adressering, två stackpekare och till och med hårdvarumultiplikation – men också för att vara dyr och därmed hamna i skuggan av billigare rivaler som 6502 och Z80. Trots det satte den avtryck i klassiska datorer och spelmaskiner, och räknas än i dag som en av de mest imponerande 8-bitarsprocessorerna som byggts.

    När vi pratar om 1970- och 80-talets hemdatorer dyker ofta namn som 6502 (Apple II, Commodore 64) och Z80 (Sinclair, MSX, CP/M-maskiner) upp. Men i skuggan av de stora volymvinnarna fanns en processor som många ingenjörer fortfarande håller högt: Motorola 6809. Den var dyr, ibland för dyr – men tekniskt var den något av en “8-bitars aristokrat”: elegant, kraftfull och ovanligt modern för sin tid.

    En processor född i ett mellanläge

    6809 lanserades 1978, i ett ögonblick när marknaden stod och vacklade mellan epoker. 8-bitarsdatorer dominerade fortfarande, men 16-bitarsprocessorer som Intel 8086 och Motorolas egen 68000 var på väg in och lovade ett nytt prestandasprång. Motorola behövde något som kunde ge deras populära 6800-familj ett rejält lyft – utan att tvinga alla kunder att hoppa till dyrare 16-bitarsplattformar.

    Resultatet blev 6809: en 8-bitare i databredd, men med många 16-bitarsidéer inbyggda.

    Varför var 6809 “för bra” för att vara 8-bit?

    Det som gjorde 6809 speciell var inte en enda “killer feature”, utan helheten – den kändes mer som en välplanerad verktygslåda än som en kompromiss.

    1) Två stackar – som att ha två hjärnor för ordning och reda

    De flesta enkla processorer hade en stackpekare (stacken används för t.ex. returadresser när man anropar subrutiner). 6809 hade två:

    • S (systemstack)
    • U (userstack)

    Det här gjorde det mycket lättare att skriva robust systemkod, avbrottshantering och till och med flertaskande operativsystem. Det är en av anledningarna till att 6809 blev en bra grund för system som OS-9 och UniFlex.

    2) “Flytta programmet var du vill” – positionoberoende kod

    På tidiga 8-bitarsmaskiner var det vanligt att program “antog” att de låg på en viss adress i minnet. Flyttade du programmet behövde du ofta peta om adresser manuellt.

    6809 fick ovanligt bra stöd för PC-relativ adressering (programräknar-relativ), vilket gjorde det enklare att skriva positionoberoende kod – program som fortfarande fungerar även om de placeras någon annanstans i minnet. I dag tar vi det för givet, men då var det en stor sak.

    3) Direkt sida – men flyttbar

    6502 är känd för sin “zero page” (snabbare adressering i första 256 byten av minnet). 6809 hade också ett snabbt 256-bytesfönster, men med en twist: ett DP-register (Direct Page) som kunde peka ut vilken 256-bytesdel som helst i minnet som skulle vara “snabbzonen”. Smart, flexibelt och väldigt användbart i större program.

    4) En tidig hårdvarumultiplikation

    Multiplikation var ofta något man fick “programmera fram” med loopar på enklare processorer. 6809 hade en hårdvaruinstruktion för multiplikation (8×8 → 16 bitar). Det låter litet, men i spel, ljud och grafik kunde det vara guld.

    5) Ren och “ortogonal” instruktionsuppsättning

    6809 är känd för att vara ortogonal: instruktionerna och adresseringslägena passar ihop på ett konsekvent sätt. För programmerare betyder det färre “konstiga undantag”, mer förutsägbar kod och ofta en känsla av att processorn “samarbetar”.

    Men varför tog den inte över världen?

    Här kommer den tragiska delen – 6809 var ofta för dyr för att vinna volymmarknaden.

    I början av 1980-talet kunde 6809 kosta många gånger mer än 6502 och Z80. Och när man dessutom såg att 16-bitarsmaskiner började springa ifrån prestandamässigt, hamnade 6809 i ett besvärligt läge:

    • Inte billigast (så den förlorade mot 6502/Z80)
    • Inte framtidssäkrast (så den förlorade mot 8086/68000)

    Det blev en processor som älskades av dem som använde den – men som sällan valdes när inköpschefen räknade kronor.

    Var användes den då?

    Trots allt fick 6809 en imponerande meritlista. Den dök upp i flera klassiska system och spel:

    • TRS-80 Color Computer (en av de mest kända 6809-datorerna)
    • Dragon 32/64
    • Commodore SuperPET
    • Vectrex (vektorgrafik-konsolen med sitt unika utseende)
    • Arkadspel från bl.a. Williams (t.ex. Defender, Robotron: 2084, Joust)
    • Konami använde en modifierad 6809-variant i flera spel

    Den användes också i vissa musikmaskiner och synthesizers – områden där bra instruktionsstöd och “smidig” kod kunde spela stor roll.

    En lång svans: kloner, förbättringar och FPGA

    6809 försvann inte bara. Hitachi 6309 blev en slags “6809+” med extra instruktioner och register. Och i modern tid har 6809-kärnor syntetiserats i HDL och körts i FPGA, ofta i mycket högre hastigheter än originalchippen.

    Det säger något om designen: den var så genomtänkt att den fortfarande är intressant – decennier senare.

    6809 i en mening

    Motorola 6809 var en processor som låg ett steg före sin tid, men som kom i en marknad där pris och timing ofta betydde mer än elegans. Den blev aldrig den vanligaste 8-bitarsprocessorn – men kanske en av de mest respekterade.

    Motorola 6809 – faktaruta
    Lanserad 1978
    Tillverkare Motorola
    Databuss 8-bit
    Adressbuss 16-bit (64 KB adressrymd)
    Kapsel 40-pin DIP
    Transistorer ca 9 000
    Kännetecken
    • Två stackpekare (S och U)
    • 16-bitars ackumulatorn D (A+B)
    • PC-relativ adressering (bra för positionoberoende kod)
    • Hårdvarumultiplikation (8×8 → 16 bitar)
    • Många adresseringslägen och “ortogonal” instruktionsuppsättning
    Vanliga användningar
    TRS-80 Color Computer, Dragon 32/64, Vectrex, samt flera arkadspel från tidigt 1980-tal.

    Annons

    Strul med e-posten? Hjälp med TV? Problem med wifi?
    Digital Fixare