bsnes; neu aufgelegt

Im Oktober 2004 erblickte der Emulator bsnes das Licht der Welt. Im Gegensatz zu anderen Emulatoren für das Super Nintendo Entertainment System hatte bsnes einen Vorteil: er emulierte die Spiele akkurat. Erreicht wurde dies dadurch das der Emulator das SNES ohne irgendwelche Hacks und Abkürzungen emulierte. Stattdessen wurden die einzelnen Chips, wie der SPC 700 oder der Super FX Chip, taktgenau emuliert. Das wiederum wirkte sich auf die Systemvorraumsetzungen aus, so das bsnes entsprechend CPU lastig war. Dieser Aufwand bei der Emulation führte dazu das bsnes der einzige SNES-Emulator war, welcher alle kommerziell erhältlichen Spiele des SNES fehlerfrei emulieren konnte.

Die aktuelle Version des Emulators bsnes

Im Laufe der Jahre wurde aus bsnes der Emulator higan. Dieser emulierte nicht nur das SNES, sondern auch andere Systeme wie das Nintendo Entertainment System, die Game Boy-Familie und das Sega Master System. In der Community kamen Versionen wie bsnes-classic auf, welche versuchten die ursprüngliche Version weiterzuentwickeln. Mitte Mai verkündete byuu die Wiederaufnahme des bsnes-Projektes.

Neben der Auskopplung als Standalone SNES Emulator, welcher den Kern von higan nutzt, soll das ganze aufgrund eines auf mehrere Thread aufgeteilten Rendering entsprechend performant aber auch akkurat emuliert werden. Im Gegensatz zum ursprünglichen bsnes, soll ein verstärkter Fokus auf eine einfache Handhabung gelegt werden. Dies umfasst unter anderem das direkte Laden von ROMs, das automatische Mapping von Gamepads und die Unterstützung für Soft-Patching. Kurz zusammengefasst hat es byuu in der entsprechenden Ankündigung:

The goal is to provide all of the recent higan SNES emulation improvements and the SNES preservation project work to a wider audience.

Bezogen werden kann die aktuelle Version von bsnes über die Projektseite. Aktuell stehen nur Binaries für Windows zur Verfügung; Linux und macOS sollten allerdings folgen. Der dazugehörige Quellcode (bzw. der von higan) befindet sich auf GitLab und ist unter der GPL in Version 3 lizenziert. Damit ist higan und das wieder aufgelegte bsnes freie Software.

Transparente Verschlüsselung für Cloud-Dienste

Wenn man Daten in die Dropbox schiebt oder bei anderen Cloud-Diensten hinterlegt, so geschieht dies in der Regel unverschlüsselt. Im Umkehrschluss bedeutet dies, dass der Anbieter einen vollen Zugriff auf die eigenen Daten hat. Abhilfe schaffen hier Programme welche den Inhalt auf der Seite des Clients verschlüsseln. Eine dieser Lösungen ist Cryptomator.

Cryptomator in Aktion

Mit dem Cryptomator wird ein Tresor in dem Cloud-Dienst der Wahl, wie z.B. Dropbox angelegt und mit einem Passwort gesichert. Die App erstellt nach dem Entsperren des Tresors ein neues Laufwerk, in welchem die Daten als Klartext vorliegen. Mit diesem Laufwerk kann anschließend gearbeitet werden. Über das Passwort bzw. daraus abgeleitete Schlüssel, werden die Dateien und Ordner verschlüsselt. Neben Applikationen für Linux, macOS und Windows, existieren ebenfalls Apps für iOS und Android.

‎Cryptomator 1: Legacy
Price: 14,99 €
Cryptomator
Price: 19,99 €

Auf der offiziellen Webseite wird detailliert über das Sicherheitskonzept informiert. Der Quelltext des Cryptomator ist auf GitHub zu finden. Lizenziert ist das Projekt unter der GPL in Version 3 und damit freie Software.

libGDX; Multiplattform-Game-Engine für Java

Für ein kleineres Projekt war ich auf der Suche nach einer Game-Engine für Java. Empfohlen wurde mir schlussendlich libGDX. Dabei handelt es sich um eine Game-Engine welche ursprünglich für Android entwickelt wurde. Mario Zechner, der ursprüngliche Entwickler der Engine, baute allerdings nach relativ kurzer Zeit eine Unterstützung für Desktopsysteme ein. Mittlerweile werden als Zielsysteme Linux, macOS, Windows, Android, iOS und der Webbrowser unterstützt.

Ein kleines Projekt in libGDX, nach ein paar Stunden Entwicklungszeit

libGDX eignet sich für 2D- als auch 3D-Spiele und ist relativ einfach strukturiert, so dass man in wenigen Stunden von einer Idee zu einem Ergebnis kommen kann. Die seit mittlerweile 2009 in der Entwicklung befindliche Engine wurde 2010 erstmalig veröffentlicht und hat sich seitdem stetig weiterentwickelt. Technisch basiert die Engine neben Java auf OpenGL, welches zum Rendering der Spieleszenen genutzt wird.

Die Liste der implementierten Features von libGDX ist lang. So wird Audio ebenso unterstützt wie die abstrakte Behandlung von Eingabegeräten, so das ein Spiel auf Touchscreen ebenso läuft wie auf gewöhnlichen Rechnern. Im Bereich der Grafik werden Partikelsyssteme, die Nutzung von Tile-Maps (mit einer nativen Unterstützung des TMX-Dateiformates) und vieles mehr unterstützt. Der Entwickler nutzt dazu die entsprechenden High-Level-APIs und muss sich nicht mit der konkreten Implementierung herumschlagen. Daneben existieren entsprechende Hilfs- bzw. Datenklassen, welche die verwendete Mathematik wie Matrizen, Vektoren und ähnliches abdeckt.

Video abspielen
Das Video wird von Youtube eingebettet. Es gelten die Datenschutzerklärungen von Google.

Neben den im Kern vorhandenen Features, existiert ebenfalls eine Unterstützung für zusätzliche Module, so können unter anderem Box2D und das Entity-System Ashley als zusätzliche Module eingebunden werden.

Die offizielle Seite des Projektes ist unter libgdx.badlogicgames.com zu finden. Neben der spartanischen Dokumentation auf der offiziellen Webseite, ist die Wiki des GitHub-Projektes ein guter Einstiegspunkt für den Start mit libGDX. Der Quelltext der Engine ist ebenfalls auf GitHub zu finden. Die Engine ist unter der Apache License in Version 2 lizenziert und somit freie Software.

Fenster mittels Tastatur unter macOS anordnen

Unter Windows ist es möglich Fenster mit Hilfe der Tastatur anzuordnen. Unter macOS existiert eine solcher Mechanismus nicht. Glücklicherweise muss dies nicht so bleiben, da es eine Reihe von Tools gibt, welche macOS um eine solche Funktionalität erweiterten. Eines dieser Tools ist Spectacle. Nach der Installation von Spectacle, ist dieses in der Menüleiste zu finden. Spectacle bietet nun über global gültige Tastenkombinationen, eine Reihe von Möglichkeiten zur Anordnung der Fenster.

Die Einstellungen der App

Der Quelltext der App ist auf GitHub zu finden; die App selber auf der offiziellen Seite unter spectacleapp.com. Lizenziert ist Spectacle unter der MIT Lizenz und somit freie Software.

Qualitative Audioverbindungen übers Internet

Wenn man einen Podcast aufnimmt und mit jemandem sprechen möchte der etwas weiter entfernt ist, so bietet sich eine Audioverbindung über das Internet an. Früher wurde dies meist über Skype gelöst; das Problem hier ist die starke Komprimierung und Echo-Unterdrückung, welche zu vielen Artefakten im Audiosignal führt. Eine Alternative hierzu ist der sogenannte double ender. Hierbei werden die Audiospuren der Teilnehmer nicht nur übertragen, sondern zusätzlich lokal aufgezeichnet. Anschließend werden die einzelnen Spuren in einer DAW wieder zusammengefügt. Allerdings kann es bei diesem Verfahren zu Synchronisationsproblemen kommen, so dass es in der Praxis eher seltener verwendet wird.

studio-link.de

Glücklicherweise gibt es mit Studio Link eine Software welche das Problem einer sinnvollen N-1 (N minus 1) Schaltung löst. Bei einer N-1 Schaltung wird das eigene Signal aus dem Mix entfernt, so das man sich nicht selber hört. Studio Link nutzt die Protokolle für IP-Telefonie um ein möglichst latenzfreies und sauberes Audio zu liefern. Neben den Pluginlösungen als VST, AU und LW2-Plugin, bietet Studio Link eine Standalone-Variante, sowie in Zukunft eine entsprechende Hardware. Die Standalone-Lösung ist für Linux, macOS und Windows verfügbar. Bezogen werden kann Studio Link unter studio-link.de. Der Quellcode kann auf GitHub gefunden werden; er ist unter freien Lizenzen lizenziert.