2006-11-29

BASIC == JAVA

På 80-talet handlade det om BASIC eller maskinkod, när man skulle skriva spel. BASIC var enklare att lära sig, kunde vara hyfsat portabelt och resulterade i fruktansvärt dålig prestanda. Maskinkod var teh shit, bara de tuffaste fattade vad det handlade om, att porta något betydde att skriva om det, men ville man att det skulle gå fort så fanns det inga alternativ.

Situationen är liknande om man idag vill skriva spel till mobiltelefoner. BASIC motsvaras av Java och maskinkod av C eller C++. Det finns givetvis skillnader, som att nästan alla vettiga lurar stödjer Java, medan bara bara de fetaste tillåter dig att köra nativekod. Annars har jag svårt att se speciellt mycket skillnader, förutom att de allra flesta spel är skrivna i Java. Så, ja, de flesta spel suger. Nu finns det inget som garanterar att ett spel är bra för att det är snabbt, men det är nästan helt säkert garanterat att ett spel suger om figurerna på skärmen hackar runt och de enda ljud man kan få fram är midi. För att ändå kunna sälja skiten lockar man med populära filmtitlar.

Nu fanns det i alla fall ett bra C64-spel som var skrivet i BASIC: Pirates! Det är det enda jag kan komma på. Jag kan också komma på ett bra Java-spel jag spelat på mobil. Det var inte ett action-spel det heller. Med JSR 184 kan man numera göra hyfsade 3d-prylar i Java, t.o.m. på Nokia-lurar. Det är glädjande för de som har telefoner som inte kan köra nativekod. För mig gör det varken från eller till. Jag ogillar hela idén med att använda teknik som ger sämre resultat än vad maskinen kan prestera. Typ som det som Outlook är skrivet i, vad det nu kan vara... Intercal?

16 kommentarer:

Anonym sa...

Hur ska man kategorisera AMOS? Det var ju en form av BASIC, men de hade en massa kommandon inlagda för ljud och musik. Förutom detta ska man inte glömma det bisarra AMAL, vars kod kompilerades istället för att gå genom interpretatorn.

Anonym sa...

Grafik och ljud skulle det vara, inte "ljud och musik". Om det kan glädja någon kan jag berätta att jag höll på att skriva "grafik och ljus" först, vilket låter lite som Lego-satsningen "Ljus och ljud", om någon nu minns den.

puterman sa...

AMOS var Amigans BASIC. AmigaBASIC var Amigans soptipp.

ul7 sa...

Jöns: Jag hade några Ljus och ljud-grejer. Jag vill minnas att de var roligare i teorin än i praktiken, ungefär som de pneumatiska sakerna.

Puterman: Pirates! var väl bara delvis skrivet i BASIC, din rediga sjö-hund?

ul7 sa...

Puterman: Vilken 80-tals-BASIC var portabel?

puterman sa...

Right, det där med portabiliteten var nog en ganska rejäl modifiering av sanningen. Ungefär som att påstå att java för mobiler är portabelt. Så alltså vinner jag ändå.

Wukke sa...

UL-Tomten: Fråga Puterman om när jag gick in i hans sovrum tidigt en morgon och lekte med min pneumatiska grävskopa. Han var inte road över pipandet.

Word verification: avaafu

Wukke sa...

Puterman: Det var först i samband med AmigaBasic som jag fick upp ögonen för Microsoft och deras program. Vem minns inte den fantastiska svenska manualen som förklarade kommandon genom att hänvisa till oanvändbara brottstycken ur exempelprogrammen? Eller Object Editor, programmet som bara klarade av att zooma om ens sprite/bob var 32*32 pixels stor, och även i sådana fall började zooma in det redan inzoomade, så att skärmen fylldes med gigantiska fyrkanter.

ul7 sa...

Jöns: Beroende på vad du gjorde med grävskopan var det kanske Puterman som pep!

Anonym sa...

För övrigt har jag hört att Outlook utvecklats av en kille vid namn Ola, och något om "super mega hiphop".

ul7 sa...

Jöns: Vad är det för övrigt med det?

Wukke sa...

Sir, nu tycker jag du är jobbig.

jimmyroq sa...

AMOS lärde mig att använda BOB:ar. Alltid något. Jag tror inte heller att hela Pirates! var skrivet i Basic, men oavsett vilket så tycker jag det bevisar tesen att ett spel INTE behöver utnyttja maskinvarans fulla potential för att vara bra. Nu ska jag spela lite Civ 4. Det utnyttjar verkligen inte min superdunderdator fullt ut, men är ändå ganska underhållande då och då.

Word verification: hypius (och dessutom helt läsbart)

Anonym sa...

Jag lärde mig dubbelbuffring, BOB-hantering och att förstå coppern tack vare AMOS, samt gjorde min första optimisering. Däremot lärde jag mig inget om förståeliga variabelnamn och strukturerad kod.

Linus skrev ett Breakout-liknande spel i AMOS som hade strukturerad kod men underliga variabelnamn. Ett exempel från koden var

IF NISSE THEN SNUS 

puterman sa...

Vi fick lära oss Pascal på gymnasiet, då insåg jag poängen med strukturerad programmering. Jag lärde mig också att använda vettiga variabelnamn av min klasskamrat Rikard, som brukade ha variabler som hette rick1, rick2 etc.

ul7 sa...

Vi fick också lära oss Pascal på gymnasiet, och framför allt att aldrig använda globala variabler. Så vi tvangs skriva program som vanligt, och sen lägga en funktionsdeklaration runt alltihop.