Testnamn samt beskrivning av testet. | VIC20 (sekunder) | Amiga500plus (sekunder) |
Vilken dator som "vann" testet samt hur många procent snabbare den var. |
Tom FOR-loop FOR T=1 to 10000 : NEXT |
9,68 | 3,74 | Amiga 158,8% |
Textutskrift/rullning 1 PRINT "(CLRSCR)TEXT OUTPUT/SCROLLING" FOR T=1 to 600 : PRINT "TESTING OUTPUT...";:NEXT VIC: 22x23 tecken, 8 färger Amiga: 77x23 tecken, 4 färger |
12,13 | 27,00 | VIC 122,59% |
Textutskrift/rullning 2 PRINT "(CLRSCR)TEXT OUTPUT/SCROLLING2" FOR T=1 to 600 : PRINT "TESTING OUTPUT..." : NEXT VIC: 22x23 tecken, 8 färger Amiga: 77x23 tecken, 4 färger |
13,97 | 66,40 |
VIC 375,3% |
Matematik Y=34.23 : X=84.12 FOR T=1 to 500 : Y=X/1.02 : X=X*1.03 : J=(X+Y)*(X/Y) : NEXT |
16.70 | 2,06 | Amiga 710,7% |
Nummer och Arrayer DIM O(500) : FOR T=0 TO 500 : O(T)=T : NEXT FOR T=1 TO 499 : O(T)=O(T)+O(T-1)+O(T+1) : NEXT | 9,27 | 3,24 | Amiga 186,1% |
Stränghantering E$="" FOR T=1 TO 255 : E$=E$+CHR$(t) : NEXT FOR T=1 TO 200 : R$=MID$(E$,T,50)+CHR$(T) : NEXT FOR T=1 TO 200 : R$=RIGHT$(E$,T)+CHR$(T) : NEXT |
5,82 | 3,18 | Amiga 83,0% |
Linjer VIC (128x128, 16 färger): FOR T=1 TO 800 DRAW 2, RND(1)*1023, RND(1)*1023 TO RND(1)*1023, RND(1)*1023) NEXT Amiga (320x255, 16 färger) FOR t=1 TO 800 LINE (RND*320, RND*255)-(RND*320, RND*255),1 NEXT |
53,32 | 9,28 | Amiga 474,6% |
Loop i maskinkod VIC: 7000 LDA #$30 7002 LDY #$FF 7004 LDX #$FF 7006 DEX 7007 BNE $7006 7009 DEY 700A BNE $7004 700C SBC #$1 700E BNE $7002 7010 RTS Amiga: move.b #$30,d0 loop3: move.b #$FF,d1 loop2: move.b #$FF,d2 loop1: subq.b #$01,d2 bne loop1 subq.b #$01,d1 bne loop2 subq.b #$01,d0 bne loop3 rts |
14,03 (Ca. 0,45 MIPS*) |
7,44 (Ca. 0,84 MIPS*) |
Amiga 88,6% |
Disk Access Inladdning av ett 19199 bytes stort program från en diskett |
43 | 2,6 | Amiga 1553,8% |
Programlistning Listning av ett 118 rader långt basicprogram. VIC: (CLR HOME) LIST Amiga: copy ram:test.bas * (med copy resident - snabbare än type) |
5 | 7 | VIC 40,0% |
Directory Hämta programlista från en diskett för ett bibliotek som innehåller 58 filer VIC: LOAD "$",8 Amiga: list >NIL: df1:test/ |
5 | 13 | VIC 160,0% |
TOTALT (med Disk access och directory) |
187,92 | 144,94 | Amiga 29,6% |
TOTALT (utan Disk access och directory) |
139,92 | 129,34 | Amiga 8,2% |
Först kan vi ta en titt på frekvenserna. Som man kan se av maskinkodstestet så behöver amigan betydligt fler klockcykler för att utföra en instruktion. Om 6502 i VIC skulle behöva lika många klockcykler som 68000 för att utföra lika många instruktioner, så skulle VIC20 gått på 3,79MHz (7.44/14.03)*7.14 (Testresultatet för amiga/VIC gånger amigans frekvens).
Det som amigan är snabbast på är matten (antagligen beroende på att processorn är 32-bitars internt), linjerna (beroende på grafikprocessorerna) och disk accessen (mest beroende på operativsystemet).
Det som VICen är snabbast på är textutskrift beroende på att VIC har en textskärm, medan amigan bara har en grafikskärm. Om text skall skrivas ut på skärmen på en amiga, så blittas den ut som ett grafiskt objekt. På VIC är det en minnesposition för varje bokstav/tecken på skärmen. Om vi då säger att vi skall flytta upp all text på hela skärmen ett steg så att man får plats med en ny rad text längst ner, så behöver processorn bara flytta 506 (22*23) bytes minne. På amigan används "blittern" istället (en del av grafikarkitekturen) för att flytta grafikdata på skärmen. Om vi har ett lika stort fönster som på VIC (22*23 tecken) och 8 färger, så måste 12144 (22*23*8*3) bytes flyttas gentemot 506 bytes på VIC.
I mitt test mellan olika amigamodeller har jag ett likadant test som "Textutskrift/rullning 2" (där heter det "Scrolling Textmass"). Den dator som var snabbast på det testet var en A4000 med 68040/40MHz med ett CV64/3D grafikkort. Den var 221,3% snabbare än A500+ på det testet. VIC20 var 375,3% snabbare än A500+ på i princip samma test. VIC20 kan alltså mäta sig med de snabbaste Amigorna på just denna punkt.
På grund av detta känns VIC väldigt snabb att använda. Amiga500 känns ofta väldigt seg. Även andra saker är sega som gör att amigan känns seg. T.ex. när man öppnar en låda i workbench och måste vänta på alla ikoner som laddas in eller när man skall lista filer i CLI. Ett av testen visar ju också att VIC är snabbare på just detta.
Övrigt vad jag kan se av testerna är att amigan som sagt blir snabbare när större tal än 255 (eller decimaltal) används (eftersom den är 16/32-bitars). Alla variabler i basic-programmen är decimaltal. Och i de tester där enbart bytes används (stränghanteringen och maskinkodsprogrammet) så blir det mer jämt.
Tilläggas bör att kraftfullare modeller av Amigan, t.ex Amiga4000 eller en Amiga1200 med turbokort och hårddisk känns betydligt piggare att använda än en Amiga500. Det är betydligt större skillnad i prestanda mellan olika Amigamodeller än mellan VIC20 och Amiga500. Min A1200 030/50 tog 0,52 sekunder för att köra maskinkodsprogrammet. Byte och longword-versionerna tog exakt lika lång tid och det ger ett värde på 12,08 MIPS (1330,8% snabbare än A500+) Titta även på sidan Amiga vs. Amiga
VIC hade vunnit tävlingen utan disk access:
VIC Totalt: 86.6
C64 Totalt: 111.51
Amiga Totalt: 120.06
VIC var 38,6% snabbare än Amiga, och 28,8% snabbare än C64
Amiga hade med knapp marginal vunnit tävlingen MED disk access:
VIC Totalt: 129,60
C64 Totalt: 163,51
Amiga Totalt: 122,66
Amiga var 5,6% snabbare än VIC, och 33,3% snabbare än C64
Så ni som tycker att Amigans ära gått förlorad lite här skall vara glada att jag lade till linjeritningstesten så att det blev lite jämnare. Om jag hade lagt till fler tester av samma typ så hade naturligtvis amigan vunnit större.
Samtidigt tycker jag att VIC20 får lite av en upprättelse efter att ha haft en lite undanskymmd plats i datorhistorien som "bara" föregångaren till C64... VIC20 var nog faktiskt mer revolutinerande (och billigare) än både C64 och Amiga1000 när respektive dator lanserades.
På testet jag gjorde mellan VIC20 och C64
radade jag även upp en rad fördelar med varje dator. Jag skall
försöka skriva något om detta här med. Det är lite svårt att
jämföra datorerna eftersom de är så olika. Amigan ÄR betydligt mer kraftfull: bättre grafik, bättre ljud, mer minne, kraftfullare processor, avancerat 32-bitars operativsystem. Problemet med Amigan (när den kom) var istället att den var lite för avancerad för att köras från diskett. Med Amiga500+ ligger systemet (AmigaDos2) på tre disketter. På Amiga500 var det två disketter (AmigaDos1.3). På den första amigan (Amiga1000) var det även en kickstart-diskett, men den ligger i ROM på de flesta andra modeller. Tänk dig nu att du har ett operativsystem som ligger utspritt på tre disketter, men bara har en diskettstation! Om man sedan skall köra ett nyttoprogram också så får man ju ha det på en fjärde diskett. Helt ohållbart i längden. Amigan borde haft hårddisk som standard redan från början. Det första tillbehöret man köpte till sin Amiga500 var som ni kanske förstår en extra diskdrive. (Hårddisken var alldeles för dyr). Och sedan kom ett extraminne.... Men tillbaka till detta med att köra Amiga från diskett. Det blev så att man fick göra en egen startdiskett för varje nyttoprogram. Om man t.ex. hade ett ordbehandlingsprogram, så fick man välja ut de delar av operativsystemet som man tyckte kunnde behövas till detta program och trycka in det på EN diskett tillsammans med programmet. Så var det med alla program, förutom endel som inte fick plats. Ett program jag hade för desktop publishing låg på 5-6 disketter någonting. Så det blev att byta diskett.... Och varje gång man skulle köra ett nytt program så fick man då starta om datorn så att den fick boota från den nya disketten. Detta ledde till att man fick lära sig mycket om operativsystemet så att man själv kunde välja ut olika delar av det till en startdiskett. För spel var ju detta väldigt bra. Det var bara att stoppa i en speldiskett i datorn och så startade spelet automatiskt. Men jag tycker inte att man kan säga att Amiga500 var en användarvänlig dator. Det är inte dagens Amigor heller eftersom man måste installera så mycket extra mjukvara för att den skall bli bra. Så för nybörjaren är den inte speciellt bra, men för den som är insatt i datorn är den väldigt användarvänlig eftersom det finns så många inställningsmöjligheter. Operativsystemet är det som är bäst med Amigan. Det hade i princip allt som Windows95 har, redan 1985 (förutom inbyggt internetstöd och minnesskydd). Om man bara hade satt i en hårddisk från början så skulle den ha varit så väldigt mycket bättre. Commodore hade ju ett fast grepp om hemdatormarknaden på 80- och i början av 90-talet, men klantade till det rejält och gick så småningom i konkurs. Om de bara hade spelat sina kort lite bättre så är det möjligt att alla skulle haft en Amiga hemma idag istället för en PC. Amiga är i grunden en bättre dator än vad PC var vid samma tid. | ||
|
Nu har jag pratat väldigt mycket om Amiga. Skulle inte detta vara en jämförelse mellan Amiga och VIC20... Jo... Okej :-) De flesta spelen låg på cartridge. Man tryckte in spelet på baksidan av datorn och satte på datorn, så var spelet inladdat direkt. Snabbt och bra. Men liksom på amigan förekom mycket piratkopiering, och då sparade man programmen på vanliga kassettband. Det var ju bra och billigt att få tag på, men långsamt för större program! Det fanns ju diskettstation också, men den var dyrare än själva datorn. Jag har en diskettstation till den nu, och det går betydligt snabbare än band. VIC20 har ingen som helst bootning/startup-tid. Man bara sätter på den, så är man inne direkt i BASIC (VIC's inbyggda programmeringsspråk). BASIC är även VIC's operativsystem (tillsammans med ett gäng maskinkodsrutiner som kallas KERNAL). Så man är hela tiden inne i Basic när man använder VIC. När man skall lada in ett program, använder man basic-kommandot LOAD. När man sedan skall köra programmet skriver man RUN osv. Detta gäller även maskinkodsprogram förutom att man ofta startar dem med ett tredje basickommando, t.ex SYS 24576. Detta har ju både för och nackdelar. Nackdelen är att man har få inställningsmöjligheter. Skärmen ser alltid likadan ut när man sätter på datorn. Fördelen är att man på ett bra sätt kommer in i ett programmeringsspråk. Man lär sig fler och fler kommandon och så småningom kan man programmera. Instruktionsboken till VIC var också väldigt bra som på ett enkelt sätt lär ut programmering i BASIC. På en modern dator som dagens PC eller Amiga, är det mils avstånd mellan användaren och programmeringen. De allra flesta har inte en aning om hur ett program ser ut "på insidan" om man säger så. Och det är lite synd eftersom programmering är ganska kul. När man arbetar med VIC ligger man också mycket närmare själva hårdvaran hela tiden. Man är ofta inne och pillar med själva minnet. Om man t.ex. vill ändra bakgrundsfärgen så får man lägga i ett nytt värde på en speciell minnesposition - direkt in i själva videochippet. T.ex POKE 36879,255 sätter bakgrunden till ljusgul och ramen ("sorgkanten") till gul. När man ser det såhär för första gången så måste det verka lite krångligt, men det är det inte eftersom VIC är så väldigt enkelt uppbyggd. Att göra samma sak på en Amiga (eller PC) är betydligt krångligare eftersom det finns flera lager med drivrutiner och systemprogram mellan dig och hårdvaran. Och detta gäller ALLT! Om man t.ex gör ett maskinkodsprogram på VIC, så måste det ligga på just den minnespositionen som det är gjort för, annars fungerar det inte. På amiga allokerar systemet upp minne till programmet och lägger det där det finns plats. Om man sedan inne i själva programmet vill använda minne så får man begära ett antal bytes från systemet och får tillbaka en minnesposition som systemet tycker passar. I BASIC på VIC20 är det ju så också med variabler och arrayer och sådant, men i maskinkod så får man använda minnet godtyckligt och se till att inget annat program blir överskrivet. Om man t.ex har laddat in en maskinkodsmonitor (program för att skriva maskinkod) på adressen B000-BFFF, så är det ju dumt att skriva över det området liksom... Så lågnivå är VIC, på gott och ont. Man lär sig hur en dator fungerar och man kan kan göra många saker på ett väldigt snabbt och enkelt sätt. Jag gillar VIC20 - kanske på grund av att det var min första dator. |
Tillbaka till
Anders Datormuseums meny