Hoppa över logotypen.

VIC-en dator!
Lågt pris men ändå många möjligheter

Ur: Radio & Telvision nr 2 1982.

 Titelbild och fig 1. 

Fig 1. Commodore VIC 20 ser vi här på bild.
För 2 500 kr, inkl moms, får man en dator, nätaggregat och hf-modulator för
anslutning till tv-mottagare.
Kassettspelare, i specialutförande, tillkommer för ca 700 kr

(33 Kbyte)
 

[ Samma bild som ickedestruktiv PNG (561 Kbyte) ]

* Commodores nya dator VIC 20 är den första i en helt ny prisgrupp, kring 3 000 kronor med kassettspelare, vilket gör den attraktiv även för privatbruk.

* Färg, grafik och samma basic som i storebröderna PET och CBM lovar mycket. Håller den måttet?
Läs om våra provningsresultat här!

Av GUNNAR LILLIESKÖLD

VIC - den första hemdatorn - står det i annonserna, och visst finns det fog för det. Det har sedan åtskilliga år tillbaka funnits datorer som kan vara lämpliga för lek och hobby men inga som så direkt har riktat sig till den här målgruppen, låt oss kalla den lekmännens! Vi skall dock inte glömma Sinclair ZX 81 som dock är betydligt enklare, men också avsevärt billigare.

Beteckningen VIC för kanske tankarna till en viss halstablett, men den står i själva verket för Visual Interface Computer. VIC 20 säljs som en leksak, är förpackad som en sådan och helt färdig att tas i bruk med den egna tv:n som bildskärm. Lika väl som ishockeyspelet kan bli en present för hela familjen kan datorn bli det. Vi skall redan nu nämna att en ypperlig anvisning om hur datorn skall programmeras i basic medföljer. Den är välillustrerad, pedagogisk och riktad till rena noviser och skriven på svenska. VIC är därför en utmärkt maskin för att tillägna sig datorkunskap men kan också användas för tv-spel. Prismässigt hamnar den mellan dagens smådatorer och avancerade tv-spel.

Vad skall man då ha en sådan här dator till, frågar sig kanske läsaren mot bakgrunden av våra kritiska inlägg mot hemdatorn som företeelse i RT:s stora datornummer (se RT 1981 nr 9, NCC-referatet och ledaren). Finns det över huvud några vettiga tillämpningar för en genuin hemdator?

Det här kan man förstås bara ge subjektiva svar på. Det viktigaste skälet för de flesta köpare är förmodligen den personliga utbildningen. Allt fler inser behovet av att ha erfarenheter av datorer, eftersom de flesta moderna yrken med teknikanknytning kräver det. Att starta med språket basic är det definitivt bästa.

Sedan kan man komplettera sina kunskaper i antingen programmeringsspråk på högre nivåer eller fördjupa sig i assembler liksom maskinspråk.

I mikrodatorns barndom startade man ofta just på maskinspråknivå och den första vägen mot ett fungerande program blev lång och svår. Med basic och den utmärkta handboken till VIC 20 dröjer det inte många minuter om man börjar från "scratch" innan man når resultat, vilket bör tilltala inte minst en yngre publik. Innan vi granskar möjligheterna till programmering skall vi dock se på själva datorn och dess utbyggnadsmöjligheter.

Allt i ett hölje: Tangentbord - dator

Själva datorn är liten. Det alfanumeriska tangentbordet dominerar synfältet när man ser datorn framifrån/uppifrån. På dess högra sida sitter kontakter för spänningsmatning; 9 V växelström som kommer från en separat transformator för nätanslutning. Här finns också nätströmbrytaren och en 9-polig kontakt för anslutning av en "joy stick", som användes vid spel.

På baksidan finns en 44-polig kontakt för anslutning av expansionsmoduler, en 5-polig DIN-kontakt för den utgående videosignalen, en 6-polig DIN-kontakt där serieporten mynnar, en kassettanslutning samt, slutligen, en 24-polig kontakt som är avsedd för speciella tillbehör.

Med datorn följer förstås transformator och en hf-modulator som ger en tv-signal på kanal 36. Däremot får man separat köpa den speciella bandspelare som passar Commodores alla datorer.

Ett riktigt tangentbord!

Tangentbordet är väl utfört med samma "känsla" som i de större maskinernas bord. Det är med andra ord helt tillfyllest, vilket är en egenskap att ta fasta på! I väldigt enkla hobbydatorer och datorkort använder man ibland bara en etsad platta, på vilken man berör det segment som svarar mot ett visst tecken. Ganska snart tröttnar man på den stumma ytan. Inte heller är det bra med för små tangenter, som fallet var med den första Commodoredatorn. VIC har alltså lagom stora tangenter.

Till höger om det alfanumeriska tangentbordet finns det fyra tangenter. Med deras hjälp, med och utan skifttangenten, kan man välja åtta tecken eller funktioner som man själv skapar. Man kan också tänka sig att tangenterna aktiverar funktioner i moduler som man pluggar in i datorn.

Att datorn har stora och små bokstäver har vi glömt att tala om, men det är väl rätt självklart numera? Det finns också några specialtecken som pund, pi, pil vänster, pil upp, större än, mindre än och hakparenteser.

Mikroprocessorn är av typen 6502. Det är samma processor som används i datorserierna Commodore PET och CBM. Det finns därför stora likheter mellan dem och VIC men också olikheter. VIC har t ex ingen IEEE-buss som PET och CBM har utan en egen buss. Maskinens interna RAM rymmer 5 k och det kan med yttre moduler byggas ut till maximalt 32 k. Med plug in-systemet kan man komplettera med 20 kbyte ROM.

Andra moduler, vars funktioner vi återkommer till, kallas Super Expander och Programming Aid Cartridge. En sådan kan fästas direkt på VIC. Alternativt kopplas de in i en expansionsenhet. Det finns också spelmoduler som givetvis utnyttjar maskinens färg-, grafik- och ljudmöjligheter. För att utöka möjligheterna kan man till apparatens ingångar koppla "joy stick" och ljuspennor.

Speciellt för VIC finns en skrivare (Seikosha) och en flexskivenhet. Intressant att notera är att formateringen på flexskivorna är samma som i de större maskinerna PET och CBM. Det innebär att vissa program, så långt minnesutrymmet räcker, kan vara gemensamma för de olika datortyperna.

PET och CBM har som sagt IEEE-buss, vilket gör att de direkt kan anslutas till en rad mätinstrument. Bussen kallas även GPIB-, HPIB- och IEC-buss. Till VIC finns det ett anpassningskort för IEEE, och därmed kan datorn anslutas till mätinstrumenten eller till alla de tillbehör som finns till de större datorerna.

 
Fig 2. På ena gaveln sitter nätströmbrytaren, anslutningen för 9V från den
yttre transformatorn och en kontakt där man kan koppla in joystick och
ljuspenna.

Fig 3. Här har vi slumpartat genererat färger i de olika positionerna på
skärmen.

Tab 1. Basic-kommandon och matematiska funktioner

(25 Kbyte)
 

[ Samma bild som ickedestruktiv PNG (380 Kbyte) ]

23×22 tecken på skärmen

På skärmen, dvs tv-apparaten, presenteras 23×22 tecken vilket är ovanligt få och helt otillräckligt i kontorsdatorsammanhang där man gärna vill ha 80 tecken på en rad. I hem- och hobbysammanhang samt i vissa tekniska tillämpningar kan det dock räcka. Programraderna tillåts vara 4×22 = 88 tecken långa.

Det är svårt att få god upplösning när signalen förs över en hf-modulator till tv-mottagarens antenningång. Bland annat därför har man valt att använda stora och få tecken på skärmen.

Den första versionen av VIC som nådde Europa var byggd i Japan och konverterad för PAL. Det hade man dock inte riktigt lyckats med. Återgivningen var ganska suddig och särskilt gällde det gult, som flöt ut betänkligt. PAL-signalen var heller inte helt normenlig och det hände att tv-apparaterna ibland tappade färgen. En annan svaghet var färgerna: Blått t ex var så mörkt att man knappast såg någon skillnad mot svart.

I dag tillverkar man VIC i Tyskland för den europeiska marknaden. Apparaten har optimerats för användning tillsammans med tv-apparater enligt PAL-standard. Därför har man inte längre några problem med synkroniseringen av färginformationen. Nu återger den f ö utan svårighet färgerna svart, vitt (som kräver en mörk bakgrund), rött, cyan, purpur, grönt, blått och gult.

Hela videoprocessen försiggår i en specialutvecklad krets med typnumret 6561, vilken i sig är en mikrodator på en kiselbricka. Häri "tillverkas" bilden med dess beståndsdelar av alfanumeriska och grafiska tecken i olika färger.

Färg och grafik med POKE-kommando

I de åtta färgerna kan man skriva tecken och grafiska element. Det är också möjligt att göra reverserad skrift, dvs vita tecken på en färgad bakgrund. De första försöken gör man direkt på tangentbordet, men snart lär man sig att använda färger och grafik i programmen. Då använder man kommandot POKE.

Som exempel väljer vi POKE 36879, 125, vilket betyder att vi i minnescell nr 36879 lägger värdet 125. I den minnescellen lagrar datorn information om färg på skrivytan resp omgivande ram. Minnesinnehållet 125 betyder i det här fallet att skärmen är gul med ett omgivande grönt fält. Skärmen kan ha 16 färger (blandade färger är alltså möjliga) med åtta olika färgers omgivande fält. Totalt ger det 8×16 kombinationer, vilka motsvarar var sin kod. Den önskade koden lägger vi alltså i minnesadressen 36879.

Vi kan även använda POKE-kommandot för att adressera en speciell position på skärmen och där lägga önskad färg på ett alfanumeriskt eller grafiskt tecken. Det finns 60 grafiska tecken att välja på, vilket är detsamma som i CBM och PET.

Bildskärmens tecken lagras i ett 506 byte stort minne och i ett lika stort minne ligger färginformationen.

Super Expander förenklar grafiken

Att behöva använda POKE-kommandot för varje punkt i de figurer man önskar åstadkomma är förstås både tidsödande och besvärligt. Men det finns en enkel lösning som heter Super Expander. Med den tillsatsen ritar vi enkelt upp linjer på skärmen genom att ange start- och slutpunkt. Man kan också rita cirklar eller cirkelsegment genom att ange centrum, radie och vinklar för segmentet.

Super Expander finns i två versioner: Med eller utan 3 k RAM. Man måste välja den senare om man inte tidigare har expanderat minnet, eftersom de utökade grafikmöjligheterna i sig kräver 1 k RAM arbetsminne förutom datorns ordinarie 5 k (av vilka man kan använda 3,5 k för egna program).

Modulen ger också högupplösande grafik med 176×160 punkter. Då kan man bara nyttja två färger. Med flera färger begränsas upplösningen till 88×160 punkter. Högupplösningsgrafiken kommer man åt med ett särskilt basic-kommando: HIRES. Programpaketet innehåller även andra kommandon som t ex TEXT, med vilket man återgår till textmod. PLOT använder vi för att dra en linje mellan två punkter. Skriver vi BOX och anger två koordinater på skärmen ritar datorn helt sonika upp en rektangel där punkterna anger två hörn i den. CIRCLE gör vad namnet anger, men intressant är att man också kan åstadkomma ovaler. PAINT använder man för att fylla en yta, som man redan har ritat upp, med färg. Det finns också speciella kommandon för ljuspenna och joy stick liksom för ljudgenerering: SOUND, MUSIC, TEMPO och PIANO.

"Musik" och ljud även i grundversionen

Musik- och ljudeffekter kan man skapa även utan Super Expander. Det blir förstås lite omständligare utan tillgång till de speciella programrutinerna. Med POKE får man bestämma tonhöjd och styrka. Man kan generera tre stämmor samtidigt. Dessutom finns det filtrerat brus i tonsteg att tillgå.

Det förefaller ju vara trevligt att kunna åstadkomma musik med sin dator, men det hela är diskutabelt, anser undertecknad. Den här datorn, liksom de flesta andra musikspelande små datorer, spelar helt enkelt falskt! Det rätta delningsförhållandet mellan halvtonerna är 12:e roten ur två, vilket motsvarar den tempererade stämning som tillämpas i dag. Se vidare Karmann, Ernst: "Välljudets matematik" i RT 1974 nr 4. Där framgår det, att en duktig pianostämmare skall kunna stämma inom +/- 10 cent. En cent motsvarar en tiondel av en halvton. I VIC noterade vi upp till 23 cents avvikelse, dvs nära ett kvarts tonsteg fel! Det låter faktiskt inte bra. Inte för att man skall vänta att det hela skulle vara något vackert instrument. Ett sådant ställer helt andra krav på klangbildning i form av anslag, övertonhalt, attack och avklingande. Men man kan anta, att den som ofta hör falska toner av det här slaget till slut genom vana, eller rättare sagt ovana, förstör sin eventuella musikalitet.

Att ställa musikaliska krav på en dator kanske låter överdrivet men så som tonerna troligen åstadkommes, genom en tabell i ett datorprogram, borde det vara möjligt att få ett perfekt delningsförhållande mellan frekvenserna, eftersom det finns snabba förlopp att utgå från i datorn. Tabellen är helt enkelt för grovt tillyxad!

Fig 4-5. (10 Kbyte)

[ Samma bild som ickedestruktiv PNG (141 Kbyte) ]

Fig 4. Allt är förstås byggt på ett kort för att hålla priset nere.

Fig 5. VIC innehåller två mikroprocessorer: 6502 och, på bilden, 6561. Den senare hanterar alla terminalfunktioner som tecken-, grafikpresentation och färgåtergivning.

"Programmers Aid Pack"

Det här är en annan användbar ROM-kassett till VIC. Innehållet är avsett att vara till hjälp vid programmeringsarbetet. Här finns basic-rutiner för att lägga till subrutiner till ett redan färdigt program, sökkommando (FIND och CHANGE), borttagning av rader (DELETE), automatisk numrering av rader (AUTO), exekvering rad för rad (TRACE och STEP) för avlusning av felaktiga program, och så finns det rena hjälprutiner som EDIT, PROG, DUMP, HELP samt KILL.

När man slår till datorn befinner den sig i programmeringsmod. Funktionstangenterna har då betydelse som RUN, LIST, GOTO m m. Går man över i redigeringsmod, betyder tangenterna i stället RENUMBER, MERGE, FIND, osv.

Med de här rutinerna blir datorn ännu användbarare. Dess Microsoft-basic är i grunden bra och allmänt accepterad.

Slutsummering: För- och nackdelar

+ Relativt lågt pris: 2 500 kr inkl moms
+ Utbyggbara minnen, programkassetter, flexskivminnen, skrivare, "joy stick" och ljuspenna
+ Med komplettering av IEEE-anpassning kan VIC anslutas till tillbehör för PET och CBM
+ Samma formatering på band och flexskiva som för de större datorerna PET och CBM
+ Färg- och grafikmöjligheter
+ Ett mycket bra tangentbord samt funktionstangenter
+ Samma Microsoft-basic som i de större datorerna
+ Språket Forth kommer som tillsats i modulutförande.
På minussidan noterar vi:
- Priset inkluderar inte kassettbandspelaren, som kostar 700 kr
- Man kan inte använda vanliga kassettspelare
- Antalet tecken på skärmen är något begränsat (22 tecken och 23 rader)
- Upplösningen är något begränsad p g a överföring på tv-kanal över modulator. Direktkoppling till eventuell videoingång ger ett bättre resultat, och
- musikåtergivning sker med falska toner (tyvärr en generell företeelse i smådatorer och tv-spel).

Tabell 2. Minneskarta för VIC

Decimal Hex
0Arbetsminne RAM 1k0000
1024Expansions-RAM 3k0400
4096Användarens basic-program RAM 3,5k1000
7680Bildskärmens minne1E00
8192Expansion RAM/ROM 8k2000
24576Teckengenerator ROM 4k6000
36864VIC-adress9000
37136I/O nr 19110
37888Färg-RAM9400
38912I/O nr 29800
39936I/O nr 39C00
40960Expansions-ROM 8kA000
49152Basic-ROMC000
57344Subrutiner i ROME000

Tabell 3. Test av snabbhet

I den amerikanska datortidsskriften Kilobauds juniutgåva 1977 finns sju program för test av datorers snabbhet. Programmen har blivit någon av en inofficiell standard. Vi redovisar här några tester av vanliga datorer. Sifferangivelserna avser tid i sek.

ProgramCompucolorABC 80Apple II (integer basic) ABC 800Genie IIVIC 20
12,61,21,60,93,01,3
211,32,10,51,8128
322117,65,92915
423127,463018
525129,263419
6381719115627
7552329198642

Tab 4. Priser inkl moms

VIC 20 inkl nättransformator, hf-modulator och användarhandbok: 2 499 kr
Handboken separat79 kr
Programmeringspärm79 kr
Skrivare3 249 kr
Flexskivminne4 995 kr
Expansionsbox med plats för 6 moduler1 650 kr
RS 232-anpassare495 kr
3k minnesmodul349 kr
8k minnesmodul595 kr
16k minnesmodul995 kr
Super expander inkl 3k RAM595 kr
"Programmers aid"395 kr
Maskinspråksmonitor395 kr
En modul för språket Forth kommer i början av året
[Använder stilmallar] [Visas bäst med valfri webbläsare!] $Date: 2004/03/22 20:27:05 $ | peter@softwolves.pp.se

Åter till index | Åter till Softwolves Commodoresida | Peters hemsida