Vi har tidlegare presentert
Jevnons sitt logikkpiano og ein
simulator av denne logikkmaskina. I vårt
samarbeid med
Mass Production - No Warranty Software vil vi no presentere og offentleggjere kjeldekoden til simulatoren.
Simulatoren er programmert som ein
Java Applet og er laga for å mest mogleg etterlikne logikkpianoet. For å skjøne programmet kan difor det greiaste vere å lese
utgreiinga vår eller
Jevons sin orginale artikkel om korleis logikkpianoet fungerer. Vi skal likevel gje ei kort utgreiing her.
Pianoet sjølv og kvar av hovuddelane tangent, stav og hevarm er representert av eigne javaklassar. Hovudklassen
Piano representerer sjølve maskina og inneheld i all hovudsak oppsett av pianoet. Hòla inn til stavane er representert av ein todimensjonal
Label array abecedarium. Tangentane vert representert med
Button. I pianoet er kvar tangent forbundi med ein hevarm som løftar seg når ein trykkar på tangenten. Hevarmane er representert med klassen
Lever, og ved at denne klassen implementerer
ActionListener kan ein hevarm enkelt registrere at ein tangent har vorte trykka ned. Når ein hevarm løftar seg kan han få stavane til å flytte på seg og endre posisjon ved å slå bort i pinnar i stavane. Stavar er representert med klassen
Rod, og pinnane er i denne klassen representert av ein
boolean array pin. Enkelt og greitt har klassen Rod ein metode move som hevarmane kallar når dei løftar seg, og i denne metoden vert den nye posisjonen til staven rekna ut. Etter å ha fått ein ny posisjon kallar staven på metoden display i klassen Piano for å fortelje kva som no skal visast i hòla på framsida av pianoet.
I tillegg til desse java-filane finst det ei HTML-fil
index.html som gjer at programmet kan køyrast i ein nettlesar. Og meir er det vel eigentleg ikkje å seie om denne saka.