Toolbox-2/BOULDER.md

2.9 KiB

Hive-Computer-Projekt: Boulder Dash - Hive-Version

    http://hive-project.de

Basierend auf dem Fanprojekt diverser Propellerköpfe:

    http://forums.parallax.com/forums/default.aspx?f=33&m=263404

Besonderer Dank an Pex "Mahoney" Tufvesson für die coole Musik!:

    http://mahoney.c64.org
    http://www.livet.se/visa

Start:

  • "bd" : Startet das Game im PAL-Modus
  • "bd n": Startet das Game im NTSC-Modus

Tasten:

ESC Stop Button A Space Pause Button B LShift Start LCTRL Select Cursor

Anpassungen für den Hive

09-01-2010 - Entfernung der Hardwareerkennung - Anpassung Konfiguration an Hive/Bellatrix - Gamecontr. entfernt - Auskommentierung Sound 12-01-2010 - Soundadapter optimiert - Scrolltext im Titelbildschirm eingefügt 19-04-2010 - Anpassung an TriOS: Boulder läuft jetzt auch aus dem Verzeichnis. Bedingt durch das neue, etwas trägere WAV-Soundsystem, habe ich einige Effekte durch HSS/SFX ersetzt.

Zur Hive-Version: Das Game an sich, also der ursprüngliche Basiscode aus dem Parallax-Forum, läuft auf einem einzigen Propellerchip! Was war zu tun um diese Version an den Hive anzupassen:

  1. Der Code kann im wesentlichen fast ausschließlich auf Bellatrix laufen. Dafür müssen die entsprechenden Belegungen der IO-Pins für Video und Keyboard angepasst werden.

  2. Da Bellatrix keinen Sound ausgeben kann, sondern diese Aufgabe im Hive Administra übernimmt, muß die Soundausgabe angepasst werden. Im Originalcode übernimmt das Objekt "sound.spin" diese Aufgabe - welches wieder den SIDemu in einer getrennten Cog startet. Hier zeigt sich die Stärke der SPIN-Objekte: Für die Anpassung brauchte ich einfach nur ein neues Objekt gleicher Struktur definieren, ohne das Hauptprogramm zu ändern. Dieses neue Soundobjekt startet ebenfalls eine Cog, welche einzig die Aufgabe hat, die Kommunikation zu Regnatix/Administra zu realisieren.

  3. Regnatix-Code: Tja, die Königin kann bei der ganzen Sache Däumchen drehen, denn sie hat nur folgend Aufgaben in einer einzigen Cog zu bewältigen:

  • Bellatrix-Code laden
  • SFX-Slots in Administra initialisieren
  • Warten bis Bellatrix einen Ton von sich geben möchte und Übermittlung dieser Tonesequenz an Administra

Damit werden natürlich auf der einen Seite massig Ressourcen in Bellatrix gegenüber dem ursprünglichen Code frei und es sind durch die Verwendung von HSS/SFX + Waveplayer + SDCard mehr Möglichkeiten gegeben.

Bellatrix-Code : 20,5 KByte Regnatix-Code : 3,2 KByte

Bei diesen Werten ist zu beachten, dass der Regnatix das blanke IOS mit 2,6 KByte eingebunden hat - ohne Optimierung, denn ein Großteil der IOS- Routinen sind in diesem Fall ungenutzt.

Zeitaufwand : ca. 3 nette Abende ;)

drohne235