Modultävling nummer 3/95

Såhär såg man ut 1995. Studion är inte den vi sände från utan en provisorisk studio vi satte upp för att lära ut hur man gjorde radio på Unga Forskares lokaler på söder i Stockholm.

Under basens alla år i drift hann vi hålla inte mindre än tre modultävlingar. Den första 1994, den andra april 1995 och den tredje, den gick av stapeln sommaren 1995. Resultatet sändes i radion den 1995-08-27. Vad är då en modultävling? Jo, musik gjord på en Commodore Amiga med något program av typ Soundtracker, Noisetracker eller Protracker kallas för modulmusik. Det är en fil som innehåller alla instrumenten samt ett ”partitur” som spelar instrumentet som en sång. Det låter som en mycket karaktäristiskt synt! Amiga modulerna är klassiska och uppskattades av många.

Nu har jag, ur gömmorna, lyckats gräva fram hela sändningen och klippt ur själva tävlingen. Lyssnarna får ingen introduktion till det hela då de antogs ha läst tävlingsreglerna på BBS:en. Förra tävligen var avklarad utan att alla låtarna fick höras mer än 30 sekunder, vilket folk klagade på. Så denna gång fick varje låt gå till slut. Jag läser upp varje bidrags presentation.

Här är topplistan:

”Guld”
1. Spline alias Gabriel Zackari med Intergalactic

”Silver”
2. John Enström med Noisure

”Brons”
3. MeanAce alias Axel Hubinette med WestcoastJazz II
4. Deviltry alias Björn Petterson med Jaha.
5. Micke Evervall med SoftTech.
6. Svante Hedin med Anarchy Inspired.
7. John Andersson med Take it personal.

Lyssna här!

Vi som startade alltsammans…

Originalet till bilden är sedan länge borta, så detta är allt vi kan erbjuda.

Detta är Radio Unga Forskares sändarteam på en bild från 1995. Vi hade just startat närradiosändningarna och var samlade i Unga Forskare Stockholmsdistriktets lokaler på Söder.

The ERICADE Network BBS integrerades snabbt med radion och vi kom att hålla flera musiktävlingar i radions regi.

En närmare titt på bilden visar ledarskapet på The ERICADE Network BBS

En ”inzoomning” av bilden visar från vänster till höger: Erik Zalitis, Pamela Strandberg och Andreas Yannelos.

En unik bild då det är Sysop och två av våra Cosysops som ”tjänstgjort” på BBSen under åren som gått.

Och så användarna också….

Och de sista två personerna på bild som hörde till basen. Kristian Kjeldsen (till vänster) och Per Larsson (till höger). Kristian var medlem i gruppen Eternal och kallade sig ”Yacuza”. Per var en vanlig användare på basen och var även kvar under basens ”solnedgång”, åren 1998-2000.

Namnsdagskommandot – en studie i Arexx

De var namnsdagsbarn dagen då detta inlägg skrevs i alla fall.

1997 lade vi till ett namnsdagskommando till basen som kördes vid inloggning och berättade vem som hade namnsdag när någon loggade in. Det skrevs från början 1994 av Mattias Appelqvist. Kommandot läste från en textfil som innehöll alla namnen.

En fråga till er som programmerar: hur skulle ni skapa ett kommando som ska hämta ett namn ur en lista med namn baserad på dess position? Personligen skulle jag trycka in dem i en array och sedan ta reda på vilket namn i ordningen som ska plockas fram. Man får hitta en lösning för skottår, men annars är det bara att plocka fram post 218 ur arrayen dag nummer 217 (arrayer börjar normalt på 0!) förutsatt att namnen är lagrade i ordning efter vilken dag på året de har namnsdag. Inget problem här.

Men 1994 fungerade det lite annorlunda. Först och främst var minnet begränsat. The ERICADE Network hade en Amiga med 6 MB minne. Detta minne skulle räcka för att köra basen och operativsystemet med hundratals användare. Så att läsa in alla namnen i minnet vara lite mer tveksamt. Det andra skälet är att Arexx arrayhantering var ganska primitiv.

Så hur löser man detta? Jo, kommandot måste läsa från disken. Detta är i sig ett problem, för diskar är slöa jämfört med minnet. Om man antar att man lägger alla namnsdagar i ordning efter dag, skulle arexx-programmet behöva stega ner 219 rader för att hitta namnet bundet till dag 219. Detta är inte effektivt och kommer att göra kommandot slött och resurskrävande.

När jag startade upp BBSen 2018, insåg efter några månaders drift att namnsdagskommandot ofta visade fel namn. Det visade sig bero på att det hade en del intressanta buggar och dessutom använde 1993 års namnlängd. Denna slutade gälla på 2000-talet. Så jag hämtade den senaste namnlängden från Wikipedia och gjorde den till en textfil. Men vi har fortfarande inte svarat på frågan hur kommandot hittade dagens namn.

Detta var inte helt uppenbart för mig när jag tittade på koden eller på textfilen den läste. I början av namnfilen såg det ut såhär:

0062 0451 0817 1216 1614 2026 2410 2817 3233 3619 4026 4425
*
SVEA SVERKER

filen fortsatte sedan med alla namnen.

Vad var alla dessa märkliga siffror? En titt i koden visade att den verkade koppla siffrorna till månaden.

dag = right(date(’s’),2)
man = substr(date(’s’),5,2)
sendstring lf lf
if ~exists(fil) then call fel(’Hittar inte ’fil)
if ~open(’t’,fil,’r’) then call fel(’Kunde inte läsa från ’fil)
mpos = readln(’t’)
mpos = word(mpos,man)
call seek(’t’,mpos,’b’)

Koden ovan tar fram månadens nummer i ordningen. Juni är t.ex. månad nummer 6 och januari är 1. Sen läser den in den första raden och plockar ur den siffergruppen som motsvarar månaden. För juni tar den alltså den sjätte siffergruppen. Men varför då? Jo, denna siffergrupp talar om hur många bytes in i textfilen som månadens namn börjar. Det är ett intressant sätt att göra det på!

Men det ger ju inte hela lösningen. Efter att den hittat första namnet för den aktuella månaden, stegar den fram till korrekt dag. Om det är den 10 juni, stegar den tio rader ner och hämtar namnet.

Detta kommando har krånglat rätt mycket redan innan jag skrev om det för den nya namnlängden. Vissa dagar kraschade skriptet för den inte riktigt hittade rätt. Och att räkna ut hur många bytes in i filen man gå för att hitta månadsstarten visade sig vara en utmaning. Dessutom var man tvungen att tänka på hur Amigan kodar radbrytningar när man gjorde jobbet. Jag skrev nämligen filen på en PC.

Så jag hittade en lösning till sist och fick allting att fungera.

Cosysops

Pamela Strandberg, vår tredje cosysop framför vår första BBS-dator, en Amiga 500.

Sysop är ju som bekant en förkortning av System Operator, det vill säga den som sköter och äger systemet. Cosysopen är alltså en person som fungerar som vice Sysop. Vilket är den person som hjälper Sysop med saker som att godkänna nya användare, skriva brev till de som gjort olämpligheter, ge mer status till dem som förtjänar det och göra reklam för basen på andra ställen.

Det kräver ett mått av lojalitet, då personen oftast har nästan lika mycket makt över systemet som sysop. En arg cosysop kan förstöra systemet eller ge basen dåligt rykte. Basens första cosysop heter Peter Lönnebring och fick rollen som tack för sitt jobb med att hjälpa mig testa systemet innan det blev officiellt. Han var med fram tills vi båda gick ur gymnasiumet. Han var nämligen klasskamrat med på Teknisk linje.

Nästa cosysop blev Mattias Nord som jag lärt känna 1993, när jag hjälpte honom sätta upp hans egen BBS där jag också blev Cosysop för honom. Så vi bytte roller med varandra, han var cosysop på min BBS och jag på hans.

Våren 1994 blev jag ihop med Pamela Strandberg som blev basens tredje cosysop, samtidigt som Mattias var kvar i sin roll. Hon tillträdde sommaren 1994 och hjälpte till att höja kvalitén på texterna.

1996 gjord jag och Pamela slut och RadioUFS ljudtekniker Andreas Yannelos blev tillförordnad cosysop när jag var borta från tangenterna. Främst under den Tysklandsresa jag gjorde efter att Pamela och jag gjort slut. Han hade inte någon avsikt att fortsätta och då blev det en ganska kort tjänstgöring.

Sommaren 1996 blev så Johan Hanson cosysop. Han kom från demogruppen Eternal som hade oss som sitt HQ. Jag värvade honom eftersom han mer eller mindre tog sig ann jobbet ändå. Han fick behörighet och titel och fortsatte med sin roll förtjänstfullt fram tills basens nedläggning mars 2000.

Det är svårt att tänka sig att köra en BBS utan cosysop. I alla fall under den tiden då det var hög aktivitet. Det hjälpte en hel del och gjorde att man verkligen kunde säga ”Vi” om hela projektet. Idag finns ingen cosysop, men det är verkligen inte många som loggar in ändå, så det är inte mycket jobb med det hela.

Ingen lycka med återställningen

Tillbaka från IBAS. Allt data återställt, men till vilken nytta?

Disken som jag lämnat in till IBAS för återställning kom tillbaka idag och med den tändes hoppet om några backuper. Men så icke. Det visade sig att jag några dagar innan jag återöppnade BBS:en 1998, faktiskt raderat innehållet och förstört alla backuper. Så det är så långt vi kommer. Men det finns en hel del godbitar på den andra hårddiskens sektorer. Så vi har många bra historier att berätta kvar. Var så säker.