Archive for the ‘Sonstiges’ Category.

Grafik in Forth programmieren

img_0854
img_0853

Sehr schöne Sache: U-Held hat einen ersten Schritt zur Anbindung der G0-Grafiklib an PropForth erstellt. Unter Spin habe ich ja schon mit G0Test und TriBorg mit den Funktionen experimentiert. Die Funktionen in der Forth-G0-Lib sind noch nicht vollständig, aber die grundlegenden Wörter um den G0-Treiber komfortabel zu starten und zu initialisieren sind realisiert. Die anderen Funktionen sind mehr oder weniger Fleißarbeit. Die Programmierung ist auch recht einfach, wie wir gleich sehen werden. Wer also gern in Forth Programme oder Games mit Grafik schreiben möchte, erfährt mehr nach dem Knick…

Continue reading ‘Grafik in Forth programmieren’ »

Was ist Tachyon?

.:.:– TACHYON –:.:.

 

Hmm, hab ich doch in dem Beitrag zum Geschwindigkeitsvergleich glatt vergessen zu erwähnen was Tachyon überhaupt ist. Ok, das holen wir hier mal nach! Lassen wir einfach Peter Jakacki – dem Entwickler von Tachyon – zu Wort kommen: „TACHYON – A Fast and small Forth byte code VM„. Tachyon ist also wie m ein Forth-Derivat mit einigen wirklich interessanten Eigenschaften.  Das primäre Ziel ähnelt PropForth: Es soll ein interaktives Entwicklungswerkzeug sein, welches auf einem Propellerchip läuft und typisch über die serielle Schnittstelle und ein Terminalprogramm auf einem Hostcomputer bedient wird. Man kann es also nicht wirklich mit m und mental vergleichen, welches ja dem Hive mit seinen drei Propellerchips auf den Leib geschneidert ist. Im Gegensatz zu PropForth ist Tachyon sehr schnell und wahrscheinlich auch recht klein – genaue Zahlen zum Speicherverbrauch habe ich aber leider noch nicht. Da es aber ein klassisches Forthmodell ist, dürfte es auch mehr Speicher belegen als der m-Core, welcher ja viele Aufgaben nebenläufig auf die beiden Slaves verteilt. Continue reading ‘Was ist Tachyon?’ »

Keyboard und TV

Um den Hive ein wenig kompakter zu gestalten, habe ich mir heute die Zeit genommen einige Anpassungen vorzunehmen. Die erste Arbeit bestand darin, die Minitastatur ze bearbeiten: Geliefert werden diese mit einem 1,80 m langem Kabel mit USB-Stecker und PS/2 Adapter. Das Kabel ist erstens viel zu lang für den Hive und zweitens stört der unnötige lange PS/2-USB-Adapter. Also Keyboard zerlegen, Kabel durchmessen und ein anderes stark gekürztes Kabel von einer alten und defekten Tastatur angelötet. Mit einer Länge von ca. 20 cm kann man die Tastatur nun gut ohne unnötigen Kabelsalat vor oder neben den Hive stellen.

Die zweite Änderung betraf zwei neue TFT-Videomonitore, welche ich vor kurzem für gerade mal 28,- € erstanden habe. Gegenüber meinem alten Mini-TV-Monitor bringen diese ein deutlich besseres Bild und sind auch kleiner (dünner und schmalerer Rahmen). Bei diesem Preis habe ich gleich zwei gekauft, da so ein winziger TFT sehr gut für alle möglichen Basteleien ist, und Video ja kaum Pins und zumindest im Textmodus kaum Ressourcen in einem Propellerchip verbraucht. Da es sich wie üblich in diesem Preissegment um Rückfahr/Mediamonitor handelt, musste ich sie erst passend für den Hive konfektionieren. Da kein Netzteil mitgeliefert wurde, sah der Plan vor, sie aus dem Hive-Netzteil mitzuspeisen. Gesagt, getan: die originalen Kabel habe ich komplett entfernt und passende ebenfalls kurze Kabel verwendet, so dass nun der Hive wesentlich weniger Kabelsalat verursacht. Keine große Sache, aber halt die kleine Bastelei zum aufwärmen für die Wintersaison… 🙂

From NAND to Tetris

Als bekennender Autodidakt spricht mir das wirklich aus dem Herzen. Sicher gehen wir hier nicht ganz so weit, aber die grundlegende Lebenseinstellung ist doch gleich. Und wenn ich mir anschaue wie wie Gamekonsolen, Tischrechenmaschinen, Flugdrohnen, Handhelds und Haussteuerungen usw. (unvollständig!) selbst bauen, dann ist das auch völlig korrekt so.

NAND-to-Tetris Projekt: Kurse und Tutorials

m235 – die Maus für drohne235 ;)

m235Jede Drohne bekommt nun passend zur Seriennummer des eigenen Hives eine passende Maus von Logitech. Der erste Prototyp für meinen Hive SN235 hat mich gerade erreicht und versieht schon seinen Dienst am Host.

m: Also daran muss ich mich erstmal gewöhnen… ;)

Konsequente UPN-Syntax ist ja schick und einfach zu implementieren, wie ich im letzten Artikel beschrieben habe. Aber an einigen Stellen bürstet UPN echt gegen den Strich der langjährigen Konditionierung durch den Mainstream. So zum Beispiel bei dem cd-Kommando, mit welchem man im Verzeichnisbaum navigieren kann. So wird nun aus

cd system

durch die Konsequente Anwendung natürlich

system cd

Ich nehme das mal sportlich, und werde das erste Mal, wenn ich in einer Linux-Kommandozeile UPN eintippe rot am Kalender markieren als jenen Tag, an welchem ich mehr Zeit am Hive als unter Linux zugebracht habe. Naja und mal ehrlich, Infix kann und hat  ja jeder… 😉

Continue reading ‘m: Also daran muss ich mich erstmal gewöhnen… ;)’ »

Ich bin dann mal weg…

Gerade habe ich ENDBOSS von Constantin Gillies im Briefkasten gefunden, was bedeutet, dass ich erstmal ein paar Tage verschwinden muss. 🙂 Das Buch war übrigens fachgerecht und wie es sich für eine echte Nerdbuchlieferung gehört in eine Antistatikhülle verpackt. UND: Mein Buch ist vom Masternerd persönlich signiert!

Update: Fertig gelese & 100% Empfehlung!

Tutorial Build your Hive überarbeitet und als PDF

Das alte Tutorial hat mich schon immer ein wenig gestört, da man solche langen Texte mit viel Bildern schlecht pflegen kann. Aus diesem Grund habe ich es in Open Office neu gestaltet und kann es von dort prima als PDF exportieren. Allerdings sind die Dateien zum Teil doch recht groß, da ja nun das ganze Bildmaterial enthalten ist, also nicht wundern, wenn der Download etwas dauert!

Neu ist jetzt auch ein extra Bereich mit allen Informationen und Änderungen rund um die neue Boardversion R14. Wer Fehler findet oder noch Ideen hat, wie man Dinge besser darstellen könnte, Vorschläge gleich an mich senden. Da meine Zeit knapp bemessen ist, wäre eine passender Text, eventuell gleich mit Bildern, sehr willkommen. Text- und Bildspender bekommen auch irgendwann mal einen Orden „Held der Arbeit“… 😉

Tutorial - Build your Hive - Einleitung (2248 Downloads ) Tutorial - Build your Hive - R13 (816 Downloads ) Tutorial Build your Hive - Änderungen und Infos R14 (2003 Downloads )

TriBorg präsentiert: Der TriBorg-SID-Player

Nun ja, nach den rasanten Fortschritten an m habe ich mir zu Ostern vorgenommen etwas zu entspannen, und ein wenig in Spin zu programmieren. Der Plan sah vor, einen Programmloader für Games zu erschaffen, wie ich das ähnlich auf der EUzebox von Hartmut in Garitz gesehen habe. Also eine autostartfähige Software für den TV-Modus mit einer grafisch netten Oberfläche, ein wenig Demosound und ein paar Animationen, um aus einer Liste von Spielen und Programmen eines auszuwählen und zu starten. Games sind zwar noch etwas rar auf dem Hive, aber man kann ja schonmal mit einem opulenten Loader angeben… 😉

So der Plan. Und wie Pläne es so an sich haben, kam es völlig anders. Ich wollte für die Oberfläche den neuen G0-Treiber verwenden um gleich ein wenig warm damit zu werden und vielleicht noch den einen oder anderen Fehler zu finden. Also erstmal ein wenig mit G0 spielen um locker zu werden. Nebenbei dachte ich so: ein Name muß her. Nun ja, ein kollektivtauglicher Name war schnell gefunden, aber mußte nun ja auch entsprechend in Szene gesetzt werden. Ok, ein paar Animationen hier, ein wenig Sound da und fertig war das Intro. Nix großes, halt was für Freitagabend bei einem Gläßchen Absynth (Bier trinke ich nur beim Löten 🙂 ). Nach drei Gläßchen assimilierten die Animationen dann meinen ursprünglichen Plan von einem Loader und ich erwachte plötzlich vor einem SID-Player mit rotierenden Borgeiern… oder sowas. Aber wie sagt man so schön: Man muß die Feste feiern wie sie fallen.

In diesem Sinne wünsche ich allen Drohnen da draußen in der weiten Welt ein frohes Osterfest und viel Spaß mit dem TriBorg-Player!

Eure drohne235

TriBorg - SID-Player (4045 Downloads )

Installation und Funktion: Das Archiv entpacken und alle enthaltenen Dateien auf eine leere SD-Card in das Hauptverzeichnis kopieren, SID-Lieblingsmusik im DMP-Format dazu kopieren und den Hive einfach mit der SDCard starten – TriBorg startet automatisch.  Ein paar SID-Sounds sind schon dabei, in der Toolbox-2 befinden sich noch viele weitere und im Internetz noch tausende mehr. Musik im SID-Format muß mit dem SIDDumper in das DMP-Format konvertiert werden, und kann dann von TriBorg abgespielt werden.

TriBorg läuft auch aus einem Verzeichnis, allerdings muß in diesem Fall unter Regime der Administra-SID-Code mit dem Kommando „admsid“ vorher von Hand geladen werden. Der Player spielt dann alle SID-Musikfiles in dem Verzeichnis ab.

Nicht vergessen: Hive beim KC-Treffen in Garitz!

Dieses Wochenende wieder KC-Treffen in Garitz. Wer also Zeit und Interesse an Retros und Eigenbautechnik hat, sollte diesen Termin nicht verpassen! Ich bin wieder von Freitag bis Sonntag mit diversen Hives und anderen Geräten anwesend. Für Tagesgäste ist mit Sicherheit der Samstag der beste Tag für einen kleinen Ausflug.

Infos zum KC-Treffen 2012 und Bilder der letzten Jahre: Link

 

m: KC-Treffen am Horizont

Aktuell geht es in großen Schritten vorwärts, obgleich ich in der Woche überhaupt keine Zeit zum programmieren habe. Einige Tools wie dump und .s (gibt den Stackinhalt aus) vervollständigen das System und damit kann ich nun unabhängig von Spin debuggen. Das einzige Stück Spin zum starten von m sieht so aus:

CON
_clkmode = xtal1 + pll16x
_xinfreq = 5_000_000

VAR ' forth-parameterblock
long start ' mental parameter
long error ' errorcode

OBJ
vm1: "m-vm1-run-4"

PUB Main
  start := vm1.get_start
  waitcnt(cnt + clkfreq)
  cognew(vm1.get_cbase,@start)

Also nur ein paar Byte Spin um m in Betrieb zu nehmen! Das Schöne an forthähnlichen Systemen ist ja, dass man schon in dieser frühen Phase mit ihnen arbeiten kann. Es ist wie Lego: mit ein paar Bausteinen kann man schon etwas bauen. Kommen weitere hinzu, vergrößern sich die Möglichkeiten.

So ein neuer Baustein, welchen ich am Wochenende hinzugefügt habe, ist create. Dieses Wort ist zuständig für die Verarbeitung der roten Worte, mit denen ein neuer Wortheader im Wörterbuch erzeugt wird. Mit test1 ; kann so ein neues Wort mit dem Namen test1 erzeugt werden, welches mit dem Semikolon abgeschlossen wird. Besagtes Semikolon beendet den Compilervorgang, compiliert ein Exit-Kommando in das Wort und aktiviert dieses. Ab jetzt ist es mit words anzeigbar und wenn man das Kommando test1 aufruft, wird es ausgeführt.

Nächster Schritt wird das Wort compile um die grünen Worte im Quelltext in ein Wort compilieren zu können. Damit sind dann erste funktionale Worte möglich. Bin mal gespannt, wie weit ich bis zum KC-Treffen komme… 😉

Hive im Bopla-Gehäuse

Benutzer PIC18F2550 aus dem Forum (im weiteren kurz Pic genannt 😉 ) hat mich vorige Woche kurz besucht und wir haben über diverse Themen zum Bellatrix-Code und allgemein über den Hive gschwatzt, sowie einige Tests mit diversen Monitoren durchgeführt. Pic’s Hive ist in einem Bopla-Gehäuse eingebaut, welches ich euch nicht vorenthalten möchte, da es mir ganz gut gefallen hat. Das Gehäuse ist zum Beispiel bei Reichelt erhältlich: Link zum Artikel