Endianness bei ROMs korrigieren

Einige ROMs wie z.B. vom Nintendo 64 sind als Big Endian gespeichert. Je nach Dump, kann es aber vorkommen das diese im Little Endian-Format gesichert wurde. Bei Big Endian wird das höchstwertige Byte zuerst gespeichert, während Little Endian mit dem niedrigstwertigen Byte beginnt. Soll die Bit-Reihenfolge umgedreht werden, so kann hierfür das Werkzeug uCON64 genutzt werden. Nach der Installation mittels Homebrew:

brew install ucon64

kann das Tool genutzt werden. Es kann dabei mit einer Vielzahl an ROM-Formaten umgehen. Mit diesem Skript können die Dateien in ihre Big Endian-Form konvertiert werden:

#!/bin/sh
find . -type f \( -iname "*.n64" -o -iname "*.v64" -o -iname "*.z64" \) -print0 |
while IFS= read -r -d '' f; do
  if ucon64 "$f" | grep -q "Interleaved/Swapped: Yes"; then
    ucon64 --nbak --swap "$f"
  fi
done

Auf diese Weise wird sichergestellt, dass alle ROMs im einheitlichen und historisch korrekteren Format vorliegen.

Häufigkeit der Dateiendungen in einem Verzeichnis analysieren

Gerade bei größeren Projekten oder gewachsenen Verzeichnisstrukturen stellt sich manchmal die Frage, welche Dateitypen in dem Verzeichnis enthalten sind. Im Terminal lässt sich diese Frage mit dem Befehl:

find . -type f | awk -F. 'NF>1 {print $NF}' | sort | uniq -c | sort -nr

beantworten. Als Ergebnis erhält der Nutzer eine Liste mit der Häufigkeit und den Änderungen:

478 toml
380 txt
141 lua
56 ini

Zu Berücksichtigen ist das Dateien ohne Endung vollständig ignoriert werden, bei Dateinamen mit mehreren Punkten (z. B. backup.tar.gz) wird ausschließlich die letzte Endung berücksichtigt und zudem erfolgt keine Vereinheitlichung der Groß- und Kleinschreibung, sodass beispielsweise JPG und jpg als unterschiedliche Endungen behandelt werden.

Festplatte unter macOS sicher löschen

Wer eine Festplatte unter macOS sicher löschen möchte, kann hierfür unter anderem diskutil im Terminal nutzen. Im ersten Schritt sollte hierzu die gewünschte Festplatte ermittelt werden:

diskutil list

In der Auflistung muss nun die passende Festplatte ermittelt werden:

/dev/disk20 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk20
   1:                        EFI EFI                     209.7 MB   disk20s1
   2:       Microsoft Basic Data EXTERNAL                121.1 GB   disk20s2

Für eine sichere Löschung kann dann die Option secureErase genutzt werden:

diskutil secureErase 0 disk20

Anschließend startet der Löschvorgang:

Started erase on disk20
[ / 0%................................................... ] 2.8% 

Je nach Größe der Festplatte kann die Löschung einige Stunden in Anspruch nehmen.

At-Taste funktioniert nicht im macOS-Terminal

Im Terminal unter macOS kann es vorkommen, dass die At-Taste nicht funktioniert. Wird die Kombinationen von Option + L gedrückt, passiert in einem solchen Fall nichts. Lösen lässt sich dieses Problem über die Einstellungen des Terminals.

Die Einstellungen des Terminals

Dort findet sich unter Profile und dem Tab Tastatur der Punkt Option-Taste als Meta-Taste verwenden. Wird dieser deaktiviert, funktioniert das At-Zeichen auch im Terminal wieder.

Simple Web Server

Ab und an kann es vorkommen, dass ein Webserver auf dem eigenen Rechner benötigt wird. Natürlich existieren hierfür auch Lösungen für das Terminal, aber wenn eine grafische Oberfläche gewünscht ist, muss auf andere Werkzeuge ausgewichen werden. Eines dieser Werkzeuge ist der Simple Web Server.

Simple Web Server unter macOS

Über diesen kann unter macOS und Windows einfach ein Webserver konfiguriert und bei Bedarf ausgeführt werden. Die eingerichteten Server werden hierbei persistiert, sodass sie auch zu einem späteren Zeitpunkt wieder genutzt werden können. Zu finden ist die Applikation auf der offiziellen Webseite. Das Projekt ist freie Software, lizenziert unter der MIT-Lizenz. Der Quelltext ist auf GitHub zu finden.