Archive for the ‘Sonstiges’ Category.

Ich kann den Mann ja so verstehen…

…einfach mal wieder einen Z80-Rechner mit den eigenen Händen aus Holz schnitzen – saubere Arbeit! Und dann noch ein Forth auf dem System – ein Traum… 😉 Übrigens einer der Vorträge aus der Reihe SHIFT – RESTORE – ESCAPE, welche fast alle im Internet zu sehen sind.

 

TRIOS-Basic Update (Vers.2.03b)

Ein neues TRIOS-Basic Update ist ab sofort verfügbar.

Hier ein kurzer Abriss über die Neuerungen und beseitigten Bugs:

Neuerungen/Änderungen Version 2.03

-Spritefunktionen für kleine Spiele vorhanden, es können bis zu 8 bewegte Sprites definiert werden

-Playerfigur definierbar

-Kollisionserkennung mit Sprites und definierten Tiles

-Itemverwaltung für das Einsammeln von Gegenständen

-Eingrenzung der Sprite- und Playerbewegung mit Blockade-Tiles

-verschiedene Sprite-Bewegungs-Modi wählbar

-Mathematische Funktionen erweitert

1.Einstellung der Präzision

2.Bit-Operationen verfügbar (shift-left, shift-right, Reverse, Oder, XOder, Und)

-Print-Befehl mit der Option HEX oder BIN zur Ausgabe hexadezimaler oder binärer Zahlenwerte

-Lade-und Speicheranzeige erfolgt jetzt als Prozentanzeige

-Fehler in der Line-Funktion behoben (x und y vertauscht)

-Fehler in der Plot-Funktion behoben (x und y vertauscht)

-Fehler beim BYE-Befehl behoben (es konnte passieren, das nach Beendigung nicht korrekt ins Root-Verzeichnis gewechselt wurde und dadurch die Reg.sys nicht auffindbar war)

-Fehler in der Array-Berechnung behoben (bei verschachtelten For-Next-Schleifen zum Füllen von Arrays wurde das Array-Feld falsch berechnet)

-Verzeichnismarker hinzugefügt (jetzt sollte Basic auch aus einem beliebigen Verzeichnis funktionieren)

Ich wünsch euch viel Spaß mit der neuen Version

Update 2.03b:

Beim Start aus Plexus wurde der Basic-Systemfont nicht korrekt geladen. Dies wurde behoben

TriOS-Basic (2704 Downloads )

Klicken statt tippen

So ganz kann ich meine Neigung, den Computer lieber mit der Maus als der Tastatur zu bedienen, nicht unterdrücken. Obwohl ich in der DOS-Zeile aufgewachsen bin, lässt sich die Haptik einer Maus, mit der Tastatur einfach nicht erreichen, weswegen schon frühzeitig der Wunsch nach einer grafischen Oberfläche in mir aufkeimte, in der die grundlegenden TRIOS-Funktionen per Maus zugänglich gemacht werden sollten.

Der erste Versuch (im Basic 2.0 beigepackt) befriedigte nicht wirklich. Zu hässlich und unflexibel war das Ergebnis. Also einfach mal eine kleine Zeitreise in die Ära der Amiga und Atari’s unternommen und einiges abgeschaut.

Das Resultat fühlt sich schon deutlich besser an und findet vielleicht den ein oder anderen Freund unter den Drohnen. Grafische Basis ist der Treiber, welcher auch beim Basic seinen Dienst verrichtet. Aber der Euphorie gleich Einhalt gebietend „ES IST KEIN WINDOWS“, für den Hive aber ein nützliches Tool, für alle die lieber klicken statt tippen 😉

 

 

BOING! – Bouncing Ball als Musikplayer für den Hive

Eine Icone der Retrokultur auf dem Hive als Musikplayer! Basis ist der geniale Grafikcode von kuroneko.

Graphics-Code: kuroneko
SIDcog: Ahle2
Hive-Code: drohne235

Installation: Dateien in ein Verzeichnis kopieren, eigene Musikdateien im DMP-Format dazu kopieren und starten!

Boing! Demo (2334 Downloads )

 

Es kommt Bewegung in’s Spiel

Basic-LogoNachdem die ersten Versuche, Spiele mit einigen bewegten Objekten im Basic zu programmieren, zu der ernüchternden Erkenntnis geführt haben, das ein Basic-Interpreter, der auch noch in Spin programmiert wurde, viel zu langsam für solch ein Unterfangen ist, habe ich nach Wegen gesucht, dieses Manko irgendwie zu umschiffen. Also warum nicht alle Bewegung dahin verlagern, wo sie auch erzeugt werden soll, nach Bellatrix. Das hat mehrere Vorteile, erstens wird Regnatix nicht mit den Berechnungen für die Bewegung belastet, der Speicher in Regnatix bleibt frei und die Geschwindigkeit steigt dramatisch, da nicht jeder Befehl über den Bus laufen muss.

Das Ergebnis kann sich durchaus sehen lassen. Im Video ist das erste Level des Spieles Climber ,diesmal in Basic programmiert zu sehen, bei dem die Geschwindigkeit sogar drastisch reduziert werden musste. Im nächsten Basic-Update wird es möglich sein bis zu 8 Gegnerfiguren zu definieren , dabei muss sich der Programmierer um Kollisionsabfrage oder die Bewegung der Tiles nicht kümmern. Er gibt nur Startparameter ein und startet per Befehl die Bewegung, alles andere übernimmt Bellatrix.

Zugegeben, es ist kein Softscrolling aber es bewegt sich was 😉

Video >>>>

 

Übrigens wird jetzt standesgemäß am Hive programmiert:

hive6hive2 HIVE1a

Der Weltraum. Unendliche Weiten. Wir schreiben das Jahr 2013.

emblem

So komme ich mir manchmal bei meinen Experimenten mit dem Hive vor: Allein TriOS als einfaches Mini-OS ist eine kleine Welt für sich und  mental erscheint mir wie ein Paralleluniversum…

Nun ja, diese aktuelle Version von mental bezeichne ich mal als Alphaversion. Startbar unter TriOS oder auch völlig eigenständig nutzbar, indem der Chipcode im Flash gespeichert wird. Eine Minidokumentation „Der erste Außeneinsatz“ ist ebenfalls verfügbar. Ohne Grafik und Sound kann man zwar noch nicht so viel spannende Sachen damit machen, aber das steht als nächstes auf dem Plan – immer schön einen Schritt nach dem anderen.

Im folgenden Text werde ich die Entstehung und inneren Mechanismen von mental ein wenig genauer beleuchten. Interessant für Neugierige, aber mit Sicherheit auch für Einsteiger in die Programmierung der Cogs in Assembler. Wer nicht so der Typ „Scotty“ ist und mental nur nutzen möchte, sollte besser nicht den Maschinenraum betreten und gleich mit dem Text „Der erste Außeneinsatz“ fortfahren! Alle Boardingenieure sind aber herzlich eingeladen zu einem Rundgang…

Alles begann im Jahr 2008…  Weiterlesen

Und hier noch, quasi als Rundumversorgung, die passende Musik für den Artikel, frisch am Hive aufgenommen, folgend die DMP-Dateien um die Musi selbst auf dem Hive mit dem SID-Player anzuhören.

Star Trek Musik im DMP-Format (4172 Downloads ) 1_der_weltraum_unendliche_weite Artikel im PDF-Format (3870 Downloads )

Hive aus dem Replikator

6ZIfpHJ

 

Naja, nicht ganz. Das Mainboard ist immer noch liebevoll handgelötet. Aber dennoch ein Eigenbaucomputer in einem Eigenbaugehäuse, auch wenn es wahrscheinlich noch ein Prototyp von Drohne363 ist. Unbestätigte Gerüchte berichten sogar von einem Borg Cube Gehäuse… 😉

Link: Weitere Infos im Forum.

Basic geht in die zweite Runde

Nachdem nun viele Stunden an Entwicklung verflossen sind, hat TRIOS-BASIC in der Version 2.0 das Licht der Welt erblickt und buhlt jetzt um die Gunst der Hive-User.  Dies ist auch der Versuch, alle die einen Hive haben aber mit Forth nicht so richtig warm werden oder nicht wissen, was sie jetzt mit ihrem Hive anstellen sollen, zum tüfteln zu animieren. Dabei soll TRIOS-BASIC keine Konkurrenz zu Forth oder anderen Sprachen sein. Vielmehr soll die Begeisterung, den Hive für seine Projekte zu nutzen geweckt werden. Es wurde versucht, die Syntax der Befehle so einfach und vom Ergebnis, so effizient wie möglich zu gestalten, damit auch ohne große Programmierkünste, etwas brauchbares entsteht. Mit Hilfe des Handbuches und den beigepackten Beispielen (z.Bsp. ist ein DMP-File-Player als Basic-Programm enthalten, welcher mit der Maus bedient werden kann), soll der Einstieg so einfach wie möglich sein. Für alle Hardcore-Basic-User ist auch eine Flashvariante verfügbar, um den Hive, ähnlich einem ehemaligen Homecomputer, als reinen Basic-Computer zu betreiben.

Im Download-Bereich wird es dazu regelmäßige Updates geben. Scheut euch nicht Fragen, Kritik oder gefundene Fehler loszuwerden. Niemand wird allein gelassen.

 

Das mfs als mentale Brücke zu Regime… ;)

Irgendwann musste es ja so kommen: Auf dem Tisch ist kein Platz für zwei Hives und das ständige Umstöpseln nervt, wenn man zwischen der mentalen und der TriOS-Welt wechselt. Also muss ein Loader her, um TriOS bei Bedarf eine Gehirnwäsche zu verpassen – denn so ganz möchte man ja im mentalen Alltag auch nicht auf Boulder Dash und TriBorg verzichten…

Gesagt, getan! Mit dem kleinen Progrämmchen welches ich das Wochenende erstellt habe, kann nun einfach das mental-System unter TriOS gestartet werden. Ein wenig Vorarbeit war aber vorher noch nötig: Da mental ein blockorientiertes Dateisystem nutzte, um direkt auf den Datenräger zuzugreifen, war so ein Wechsel zur FAT16/32 Welt nicht so einfach möglich. Ein solcher direkter Zugriff auf den Datenträger ist zwar sehr schnell, einfach und leicht zu parallelisieren, aber auch völlig inkompatibel und erfordert so wieder komplexe Methoden, um Daten zwischen den verschiedenen Welten auszutauschen. Als stand schon recht frühzeitig die Frage im Raum, wie man zum Beispiel die mühsam programmierten Quelltexte sichern kann. Zwischenzeitlich habe ich einfach vom gesamten Datenträger (der SD-Card) ein Image gezogen, aber das ist auf der einen Seite recht langsam und auf der anderen Seite weckt die Frage „Datenträger formatieren?“ beim Einlegen der Karte doch ein komisches Gefühl… 😉 Aber ich bin ja durchaus manchmal ein Mensch des goldenen Mittelwegs: Also habe ich für mental das (m)ental (f)ile (s)ystem – kurz mfs – etabliert, welches eine praktische Schnittmenge zwischen den Vor- und Nachteilen der erschiedenen Welten darstellt.

mental-loader

Wie funktioniert es: mental nutzt nun sogenannte „Tapes“ als strukturierte Datenbereiche. Tapes sind im Prinzip zusammenhängende, unfragmentierte Datenbereiche auf dem Datenträger – quasi ein zusammenhängedes Band von Screens. mental kann auf der einen Seite direkt und blockweise in Form von Screens auf deren Inhalt zugreifen und auf der anderen Seite verschiedene Tapes über einen symbolischen Namen mit name use ansprechen, Screen 0 ist dabei immer der erste Screen des Tapes und die Tapegrenze kann nicht überschrieben werden, bzw. endet in einem Systemfehler. Das Wort tapes listet alle verfügbaren Tapes auf dem Datenträger auf. Unter TriOS und auf dem Host-PC sind die Tapes dank des FAT16/32-Frames von fsrw ganz normal als Datei sichtbar und können wie diese kopiert, gesichert und übertragen werden. Es ist einzig darauf zu achten, dass die Tape-Dateien immer fortlaufend und im Stück auf einen leeren Datenträger kopiert oder zusammengestell werden, damit sie nie fragmentieren, was im Extremfall zu Datensalat führt. Klingt etwas kompliziert, ist aber in der Handhabung sehr einfach und unkompliziert, wenn man das Prinzip verstanden hat: SD-Card leeren, dann einfach alle nötigen Tapes auf die Karte kopieren die benötigt werden. Zum Schluss noch die Systemdateien um TriOS zu starten und evtl. weiter Daten. Da die Daten auf dem Hive ja allsamt sehr klein sind , geht das alles sehr schnell. Also für mich fühlt sich momentan das Handling ziemlich gut an, da so eine recht praktikable und unkomplizierte Brücke zwischen den Welten geschlagen ist! 🙂

Wie geht es nun weiter mit mental: Momentan arbeite ich an einem Snapshot um die aktuell Version zu einem Paket zu schnüren und als Alphaversion zur Verfügung zu stellen.  Es fehlt noch eine Minidokumentation, welche ich gerade schreibe. Folgende Sachen sind realisiert:

  • Compiler
  • Interpreter
  • Grundwortschatz
  • Quelltexteditor
  • Quellextverwaltung
  • Autostart
  • TriOS-Loader

Damit kann man autark auf dem Hive arbeiten. Natürlich fehlen in dieser frühen Phase noch die spannenden Sachen, wie eine Bibliotheksverwaltung, Sound, Grafik usw. aber man kann es unter TriOS starten, erste Experimente machen und masochistische Drohnen können ein wenig in meinen kruden Quelltexten schnorren… 😉

 

 

Wenn euch jemand fragt, was ihr mit dem komischen Hive-Ding da macht…

Wenn euch jemand fragt, was ihr mit dem komischen Hive-Ding da so macht, dann könnt ihr jetzt mit vollem Ernst antworten: „Nun ja, ich beschäftige mich nebenher mit experimenteller Medienarchäologie!“ Ok, man ist also so etwas wie ein Indiana Jones des Computerzeitalters auf der Suche nach dem verborgenen Schatz der vergangenen Zukunft in den Ruinen versunkener digitaler Kulturen… 😉

Aber jetzt mal ganz ernsthaft: Dieses Video ist ein einführender Vortrag von Prof. Dr. Wolfgang Ernst und Dr. Stefan Höltgen zur Vortragsreihe „SHIFT – RESTORE – ESCAPE“ an der Humboldt-Universität zu Berlin. Einfach mal ansehen und sacken lassen – es lohnt sich, denn bei einigen Aspekten geht es auch um jene Ideen, die hinter den Projekten hier stehen. Ich hoffe die Vorträge werden irgendwann auch als Video verfügbar sein – wir werden das beobachten.

 

fm – Filemanager

Nach einigen internen Aufräumarbeiten am Code von TriOS und den Neuerungen von U-Held (Fenster/Anpassung TV-Modus), sind nun kleine Tools mit einer textbasierten strukturierteren Benutzeroberfläche kein Problem mehr. Als erstes habe ich mir einen schon lange fälligen Filemanager vorgenommen. Keine uneigennützige Wahl, denn ich brauche ihn als Basis für einige Tools, um eine Brücke zwischen TriOS und mental zu bauen. Ziel ist es, mental als nutzbare Programmiersprache unter TriOS startbar zu machen.

In jedem Fall können solche Tools jetzt sehr einfach und fast schon komfortabel mit den Fensterfunktionen in Spin erstellt werden. Einige nutzbare GUI-Objekte wie ein variables Dateilistenfenster habe ich schon als Objekt ausgelagert. Keine großen Sachen, aber Kleinvieh macht auch Mist. In der nächsten Revision R56 wird der Filemanager beiliegen.

Neue Version TriBorg-Player, Änderung Regime

TriBorg - SID-Player (4042 Downloads )

Nach einigen Tagen Abstinenz habe ich nun wieder ein wenig Hand angelegt und den TriBorg-Player verbessert. Das Programm ist ja ursprünglich als Programmloader gestartet und zu einem SID-Player mutiert. Dennoch gab es noch einige Altlasten: So mussten die Dateien des Players und auch die DMP-Files im Hauptverzeichnis liegen. Mit einer kleinen Änderung kann nun der Player auch aus einem Verzeichnis gestartet werden. Alle DMP-Files in diesem Verzeichnis werden dann in die Playliste übernommen und abgespielt. Mit ESC gelingt nun wieder der „geordnetet Rücksturz zur Erde“ – man landet also wieder wie es sich gehört in der Kommandozeile von Regime.

Soll der Player automatisch von SD-Card starten, so kann eine Kopie von „triborg.bin“ als „reg.sys“ im Hauptverzeichnis gespeichert werden. In diesem Fall müssen sich natürlich alle anderen Dateien ebenfalls dort befinden. Mit ESC wird dann der Player neu gestartet.

Bei dieser Gelegenheit habe ich auch gleich noch die Kommandozeile „Regime“ angepasst: Auch dort kann nun ein anderer Code in Administra geladen werden, ohne das sich das aktuelle Verzeichnis ändert, in welchem man sich gerade befindet. Vor der Änderung befand man sich nach dem Laden eines neuen Administra-Codes immer wieder im Hauptverzeichnis, da das Medium neu eingebunden wurde. Regime merkt sich nun das aktuelle Verzeichnis, startet den Code und wechselt dann wieder an die korrekte Stelle im Verzeichnisbaum. Praktisch ist das zum Beispiel immer dann, wenn man in einem Verzeichnis mit Mediendateien wie SID- oder AY-Soundfiles schnell den Administra-Code mit der passenden Soundkarte laden möchte – geht jetzt problemlos ohne wildes hin- und herwechseln in den Verzeichnissen. 🙂