Leonardo (1989) 

"Leonardo" wurde primär von René Straub programmiert. Aber auch bei diesem Game durfte ich das eine oder andere beisteuern.

Wegen der simplen Spielidee, dem genialen Soundtrack von Roman Werner und der wunderbaren Grafik von Orlando machte dieses Game wirklich grossen Spass.

 

Spiel

Aus einem Testbericht: LEONARDO ist der Titel dieses Games, eines Spiels, das wie wenige andere in Lage ist, den User stundenlang an den Bildschirm zu fesseln. Held und Namensgeber des Programms ist Leonardo, ein kleiner Dieb und in einschlägigen Kreisen besser als Leo bekannt. Leo schlägt sich mehr schlecht als recht durchs Leben. fristet mit seinen gelegentlichen Beutezügen ein eher bescheidenes Ganovendasein Natürlich ist auch längst das Auge des Gesetzes auf ihn aufmerksam geworden. Dass der Hilfssheriff in Form eines Gespenstes auf dem Monitor erscheint, sollte den Spieler nicht weiter stören. In puncto Gefährlichkeit steht das Gespenst dem Bobby jedenfalls in nichts nach.

Zu Geld kommt Leo, indem er auf dem schachbrettartigen. in kleine Quadrate aufgeteilten Spielfeld pro Level drei Gegenstände In eine senkrechte oder waagerechte Reihe bringt.

Video dies Spiels (Spiel beginnt bei 6:00)

 

 

 

 "Leonardo" in den Zeitschriften

Leonardo ACE Sep 89

 

Bilder

  

 

Technische Hintergrundinformation

  • Build: "Aztech Assembler 3.6", "Aztech C68K Linker" und "make"
  • Game wurde aus dem Bootblock ins Ram geschrieben. Danach wurde AmigaOS dekativiert und Game nahm ganze Hardware in Beschlag.
  • Christian Webers GameExexc wurde hier noch nicht verwendet. Stattdessen wurden Komponenten welche später zum GameExec zusammengefügt wurden, noch einzeln verwendet bzw. dazugelinkt.

 

Sourcodes:

  • s.s = Hauptsource. Hier drin ist das eigentlich Game. Heute würde man dies Businesslogic nennen :-). Der Dateiname "s.s" hat eigentlich Kultstatus bei uns. Schon bei Insanity Fight (unser erstes Games) lautete der Dateinamen "s.s". Der Grund war SEKA. Da wir damals noch kein "make" verwendeten, musste der Assembler (SEKA) interaktiv bedient werden. Man musste den zu assemblierenden Sourcecode von Hand über eine Kommendozeile laden. Weil das Laden ab Diskette viel zeit benötigte, probierten wir an anderen Orten Zeit zu sparen. Z.B. beim Eintippen des Dateinamens. Deshalb bestand der Dateiname aus nur einem Buchstaben ("S"). Obwohl bei Leonardo SEKA nicht mehr zum EInsatz kam, ist René "S.S" hier noch treu geblieben :-).
  • l1.s = Ein weiterer Teil der Businesslogic. Keine Ahnung weshalb René diesen Teil in ein zweites File verlagerte. Vermutlich wurde "s.s" zu gross :-). BTW: "s.s" hat 1900 Zeilen und "l1.s" hat 2700 Zeilen.
  • level.s = Hierdrin stehen die Daten der Levels. Wie in anderen Spielen wird der Hintergrund aus einzelnen, sich wiederholenden Elementen zusammengesetzt (siehe Bild unten). In "Level.s" wird definiert welches dieser Elemente wann und wo gezeichnet werden soll.
  • allocmem.s = Speicherverwaltung. Wie bei einem richtigen OS kann Speicher alloziert und wieder freigegeben werden.
  • drawbob2.s = Bobroutine. Hier drin befindet sich die Funktion welche mit Hilfe des Blitters (Custom Chip des Amiga) die sich bewegenden Objekte (die Bobs) zeichnet (z.B. die Spielfigur Leonardo). Diese Funktionen stammen grösstenteils von mir. Es handelt sich hier um eine sehr frühe Version dieser Routinen. Später haben wir dann noch eine eigene kleine Programmiersprache namens "Bobol" hinzugefügt. "Drawbob.s" konnte direkt die Bobs bzw. die Animationen darstellen welche zuvor mit "Bobi" vom Grafiker erstellt worden sind.
  • hiscore.s = Anzeigen, Laden und Speichern der Hiscores.
  • sndplayer.s = Abspielen der Musik und Geräusche. Natürlich wurde die Musik mit SoundFX erstellt. Der Soundtrack wurde von Roman Werner komponiert und mit SoundFX umgesetzt. Den Soundtrack finde ich auch heute noch absolut genial. Vor allem wenn man ihn auf einer vernünftigen Stereoanlage mit viel Bass anhört :-).
  • decruncher.s = Weil der Speicherplatz der Amiga-Disketten extrem knapp war, musste alles so stark wie möglich komprimiert werden. "Decruncher.s" hat die Files nach dem Laden wieder in die ursprüngliche Form gebracht (verlustfrei).
  • dh.s = Wähenred der Entwicklungsphase befanden sich hier die emulierten Laderoutinen welche die Daten nicht von der Diskette sondern von der HD oder aus der Ramdisk holten. Bei der Endversion wurden von hier die Lese- und Schreibfunktionen der Diskettenversionen angesprochen.
  • key.s = Tastaturabfrage

 

Hier noch die Elemente aus denen die Levels zusammengesetzt wurden:

 

Download

Hier geht's zu ADF-Download von Leonardo