Crosscompiling für Atari ST mit gcc und CMake

Mit dem richtigen CMake File kann man auch für den Atari ST komfortabel mit PC Tools entwickeln.

Benötigt werden

  1. Crosscompiler und -toolchain mit gcc und zugehörigen Tools für Atari ST (z.B. hier: http://vincent.riviere.free.fr/soft/m68k-atari-mint/)
  2. CMake (http://cmake.org/)
  3. IDE für das Host System (ich verwende CMake mit Ausgabe von Makefiles und einem Projekt für die Code::Blocks IDE unter Linux)

Eine einfache CMakeLists.txt sieht dann wie folgt aus:

#
# Experimental File to build a basic file with custom startup code and without MiNTLib
# Version 17.7.2014
#
cmake_minimum_required(VERSION 2.8)
# disable strange gcc assumptions
set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "")
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "")
# select Atari ST cross compiler
set(CMAKE_C_COMPILER m68k-atari-mint-gcc)
set(CMAKE_ASM_COMPILER m68k-atari-mint-as)
set(CMAKE_C_FLAGS "-m68000 -O3 -fomit-frame-pointer -Wall -mshort -nostdlib -std=c99")
set(CMAKE_EXE_LINKER_FLAGS  "${CMAKE_C_FLAGS} ${PROJECT_SOURCE_DIR}/startup.S" )
add_executable(stlow1.tos
 main.c
 )
#
# Experimental File to build a basic file with custom startup code and without MiNTLib
# Version 17.7.2014
#
cmake_minimum_required(VERSION 2.8)
# disable strange gcc assumptions
set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS “”)
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS “”)
# select Atari ST cross compiler
set(CMAKE_C_COMPILER m68k-atari-mint-gcc)
set(CMAKE_ASM_COMPILER m68k-atari-mint-as)
set(CMAKE_C_FLAGS “-m68000 -O3 -fomit-frame-pointer -Wall -mshort -nostdlib -std=c99″)
set(CMAKE_EXE_LINKER_FLAGS  ”${CMAKE_C_FLAGS} ${PROJECT_SOURCE_DIR}/startup.S” )
add_executable(stlow1.tos
main.c

Dabei ergeben sich folgende Eigenschaften:

  • Code für Atari ST mit 68000er ohne FPU
  • int ist short, d.h. 16.bit (aber statt int ist eh stdint.h zu verwenden)
  • MinTLib wird nicht verwendet (d.h. keine Standard C Libraryfunktionen, aber die TOS Bindings sind da und voll funktionsfähig, ausserdem wird das Binary schön klein)
  • eigener Startupcode (hier von Markus Fröschle geklaut und um den Initcode von Leonard/Oxygene ergänzt)

Letztere sind für mich als Spiele und Demoentwickler interessant, da ich nicht immer 70K unixoide Library  dazulinken möchte.
Die Compilerflags kann man natürlich ggfs für den  Atari Falcon 030 oder die Firebee passend modifizieren.

Fehlt nur noch ein passendes Projekt, der erzeugte Code mit reinem C ist übrigens nah dran an handgeschriebenem Assembler. Nur echte ST Codingcracks werden besseren Assemblercode schreiben können als das, was hier ein relativ aktueller gcc erzeugt.

Vielen Dank an Vincent Riviere für die Toolchain und Markus Fröschle für praktisches Knowhow, ohne die Mintlib kleine effiziente Executables für den ST zu erzeugen.

Ärger mit Android

Eigentlich bin ich mit meinem preiswerten Smartphone von Huawei sehr zufrieden. Aber schon seit Monaten reicht der interne Speicher angeblich nicht mehr aus, um wichtige Apps zu aktualisieren.

Mir werden 2GB interner Speicher und sicherlich um den Dreh für die SD Karte angezeigt, aber scheinbar kann das System selbst den Speicher nicht sinnvoll benutzen. Apps verschieben funktioniert teilweise nicht und wirklich viel installiert habe ich eigentlich garnicht. Youtube, die Googletools. Facebook, Cineplex App fürs Kino und für den Nahverkehr.

Ich habe schon ein paar nicht wirklich nötige Dinge wieder entfernt, die ich auf dem Telefon dann doch nicht wirklich oft brauche. Geholfen hat das leider nicht. Google Chrome wehrt sich z.B. und einiges kann ich irgendwie auch nicht wieder deinstallieren, Google Chrome ist da auch ein Kandidat.

Irgendwann ist aber eh ein neueres Modell fällig, als Telefon und synchronisierter Kalender funktioniert das Gerät in jedem Fall gut. Und das ist letztlich meine Hauptanwendung.

Ausflug am Himmelfahrtstag zur Rappenlochschlucht

Am heutigen Feiertag haben Janina und ich einen Ausflug nach Dornbirn gemacht. Wir haben uns die Rappenlochschlucht angesehen und das ganze mit einer 3stündigen Wanderung bis kurz vor Ebnit kombiniert. Die Schlucht ist sehenswert, teilweise über 100m tief. Man läuft allerdings eher unten. Es war recht dampfig und wam, aber auszuhalten. Viel mehr schreibe ich garnicht, Wikipedia und die zugehörige Webseite fassen besser zusammen, als ich das hier in Kürze könnte.

In der Schlucht und im engen Tal der Dornbirner Ache war es teilweise recht dunkel, daher gibt es auch keine Fotos von mir.

Mehr zur Schlucht unter http://www.rappenlochschlucht.at/

Auf dem Heimweg habe ich noch getankt (Super für 1,359€, Diesel 1,329€). An der Jet Tankstelle hatte trotz Feiertag sogar die Waschanlage geöffnet, für uns in Deutschland irgendwie undenkbar. Die Waschpreise waren sogar sehr zivil, aber 4,99€, was ich aber nicht genutzt habe. Die Füße taten doch vom Wandern etwas weh und wir wollten heim.

Mazda und die Tankanzeige

Normalerweise erzähle ich ja nicht viel über mein Auto, der Mazda fährt und ist abgesehen vom Durst für den Kurzstreckenbetrieb super. Heute hatte ich ein spezielles Erlebnis.

Der Tankinhalt geht zur Neige, morgen wollen Janina und ich nach Wangen auf den Flohmarkt fahren. Im Anschluß will ich noch einen Umweg nach Österreich machen und dort volltanken.

Pünktlich ging heute auf der Heimfahrt von der Firma die Reserveleuchte an, ich wollte eh zur Überbrückung noch ein paar Liter tanken. Die Ungenauigkeit der Anzeige war mir schon früher aufgefallen. Aber an der Jet Tankstelle wurde es dann spannend, ich habe also für 10€ E1o dazugetankt, soweit alles im Lot. Das gibt knappe 7 Liter und damit für mich bei meinem aktuellen Verbrauch weitere 80km Reichweite. Bezahlt, Motor angelassen, und dann blieb der Zeiger unten. Die Lampe leuchtet immernoch, obwohl der Zeiger klettern sollte.

Ich gehe nicht von einem Leck im Tank aus, ich vermute nur, daß der Schwimmer für die Füllstandsanzeige sich verhakt hat. Hoffentlich ist dann nach nächster Volltankung wieder alles im Lot, nur wohl ist mir dabei nicht. Ich verlasse mich morgen also auf die Reichweitenerfahrung unter Annahme von einem intakten Behälter, aber es wird schon schief gehen.

In 30 Jahren habe ich sowas noch nie erlebt. Mazda verbaut offenbar Schätzeisen.

Emblemauswahl für XFCE erweitern

erweiterte_Embleme

Da man unter XFCE keine individuellen Ordnericons vergeben kann, muss man auf die sogenannten Embleme ausweichen, eine Art Miniicon, welches zusätzlich zum vorhandenen Icon angezeigt wird.

Leider gibt es keinen einfachen Weg, selber Embleme über das GUI hinzuzufügen, aber mit folgendem Weg ist es von Hand möglich:

  1. Neue Embleme im Ordner des Iconthemas ablegen (ich empfehle .svg Dateien unter symbolic abzulegen):
    /usr/share/icons/elementary-xfce/emblems/symbolic
  2. Den Cache für das Thema per Kommandozeile auffrischen:
    sudo gtk-update-icon-cache /usr/share/icons/elementary-xfce
  3. In der Oberfläche das Iconset erst zu einem anderen Set wechseln, dann wieder zurück zum gewünschten.
  4. Danach stehen  die neuen Embleme in der Auswahl zur Verfügung und können normal verwendet, d.h. zugewiesen,  werden.

Distupgrade auf Xubuntu 14.04

Heute habe ich den Feiertagmorgen genutzt und nach langer Zeit mein veraltetes Ubuntu 10.04 mit GNOME2 durch ein aktuelles Xubuntu 14.04 ersetzt. Unity oder Gnome 3 wollte ich bewusst nicht, LXDE hat Janina in Betrieb, ist aber für meine Poweruserzwecke weniger geeignet. Also wollte ich es daraufankommen lassen und wählte Xubuntu mit Xfce.

Ich habe schon vor knapp 13 Jahren Xfce 1 ausprobiert, das war damals schlank genug und lief sogar noch halbwegs auf meinem alten P166 mit 16MB RAM. Seit damals habe ich Xfce immer beobachtet und heute ist es durchaus an einem benutzbaren Punkt angekommen. Es bootet zügig, der Dateimanager ist schlank, kann aber dank gvfs auch alle wichtigen Netzwerkprotokolle, und vorallem: der Desktop kann von Icons befreit werden.

Xubuntu 14.04 (Startmenü aufgezoomt)

Seit längerer Zeit nervt mich ein mit Icons zugemüllter Desktop nur noch, das klassische Startmenü war mir immer etwas zu fitzelig. Ich wollte eine schöne Auswahl im Vollbild haben, mit fester Sortierung. Ca 3 Jahre habe ich den netbooklauncher verwendet und war damit sehr zufrieden. Bei Xfce lernte ich heute morgen, daß man das Startmenü schön groß aufziehen kann, es hat sogar eine Suchfunktion. Im Screenshot habe ich es mal abgelichtet, wenn man alle Fenster schließt, dann ist mein Desktop leer, man kann Xfce komplett verbieten, Icons auf dem Desktop darzustellen. Laufwerke browse ich eh im Dateimanager (jaja, Ich bin Atarianer, aber heutzutage beschränkt es sich nicht mehr auf 2 Diskettenlaufwerke und eine Ramdisk, ein Icon für jede Partition wird irgendwann tierisch unübersichtlich.).

Ein Wermutstropfen bleibt allerdings, Xfce unterstützt keine Iconvergabe für Ordner. Dieses Feature fand ich schon bei KDE3 und Gnome2 äußerst praktisch, da man sich so schneller zurechtfindet. Ich werde in Zukunft wohl das Emblemfeature stärker nutzen, vorallem mir selber noch ein paar Embleme im SVG Format basteln.

Was ich aktuell noch nicht draufhabe, sind diverse Emulatoren und Tools, die mir so fehlen, aber das kann ich mir nach und nach Bedarf installieren. Die Grundausstattung mit Datenbackup, Chromebrowser, Thunderbird, Skype, Pidgin und TrueCrypt habe ich installiert, und alles rennt.

Alles in allem: dieses Upgrade war überfällig und ich bin für meinen Teil frph, diesen Schritt getan zu haben. Aber für Linux hat es auch etwas gutes, ich habe jetzt knapp 4 Jahre eine stabile Langzeitversion von Ubuntu verwendet, ohne echte Reinstallation. Wieviele Versionen von Windows hatten in der Vergangenheit eine solche Stabilität? Erst XP und Windows 7 kommen dort hin. Seit 1998 hat sich viel getan!

Helper scripts for Buffalo LinkStation

Buffalo LinkStation Mini (illustration only)

Buffalo LinkStation Mini (illustration only)

Some years ago I purchased a Buffalo LinkStation Mini, a small NAS device for backup purposes. This device works quite well but until today, I didn’t have access to the builtin Wake-on-LAN feature from Linux.

Under Windows, the NAS boots as soon as the PC side software issues a special start request. After a little internet search, I found the necessary information and a small bash script to achieve this under Linux. I have adapted the wakeup script a bit and added a feature to disable the wakeup request via a second script. A third script queries the status of the NAS, both on the network and the state of the local wakeup script.

The wakeup script is intended to be run from the user’s Autostart sequence. The helpers can be called when needed.

Some icons are included.

The script needs bash,. zenity, notify-send and wakeonlan. The latter is a Ubuntu package and should be available in your distro as well.

The MIT License applies to this software. It works for my Buffalo LinkStation Mini, maybe for others too  but I cannot guarantee this. You are on your own but, hey, the software is free for modification :)

Download scripts and icons (86K)

Original script and information:  http://www.stqu.de/joomla/index.php/tutorials/16-linux/60-buffalo-linkstation-einschalten-via-wol

So entstehen Ostereier

.. und so entstehen Ostereier

.. und so entstehen Ostereier

Frohe Ostern ;)

Supportende für Windows XP…und wie weit geht es mit Linux?

Diese Tage läuft nach fast 14 Jahren der Support für Windows XP von Microsoft aus. Bei golem.de gibt es einen schönen Überblick darüber, warum das auch gut so ist: http://www.golem.de/news/imho-mama-dein-windows-xp-muss-sterben-1404-105406.html

Ich habe meinen Teil hier schon geleistet. Auf meinen eigenen Rechnern läuft derzeit sowieso kein Windows XP mehr, mein Notebook hat jetzt meine Schwester, die ist aber relativ ungefährdet, da sie keine Dauerverbindung zum Internet hält.

Bei Janina sieht das etwas anders aus, ihr Standrechner hat Windows XP für die Spielekompatibilität, aber zum Arbeiten gibt es Änderung. Da sie schon seit Jahren (seit wir uns kennen um genau zu sein) freie Software wie etwa Firefox, Openoffice, Pidgin und The Gimp einsetzt, war ein Umstieg auf Linux kein Problem. Ich habe ihr altes Notebook mit einem Lubuntu neuaufgesetzt, bedingt durch die alte Hardware allerdings nur eine 12.04LTS, das noch Hardware  ohne PAE unterstützt.

Heute habe ich auch auf dem Standrechner selbiges nachgeholt, dort allerdings eine AMD64 Version 13.10, die baldigst auf die neue 14.04LTS aktualisiert werden wird. Zwar fehlen dort noch ein paar Tools und Programme, aber der Grundumfang, den Janina zum Arbeiten braucht, der ist installiert und funktionsfähig.

Ich bin da und kann Janina bei Problemen helfen, unteranderem  wenn es kleinere Probleme gibt. Der Scanner funktionierte beispielsweise noch nicht, obwohl er mal an meinem Standrechner mit Ubuntu 10.04 funktioniert hat. Aber was machen Leute in dieser Situation, in der der fachkundige Helfer nicht zur Verfügung steht? Dann sind wir schnell wieder beim Frust und dem Wunsch zurück zu Windows.

Wir sind beinahe dort, wo ich schon vor 10 Jahren sein wollte (vgl http://linuxgazette.net/issue81/arndt.html), allerdings ist Linux selbst in seinen modernsten Varianten nicht 100% DAU-tauglich. Die Installation auf dem Notebook war nur mit Hintergrundwissen, nämlich Verwendung eines Netbootimage und Installation über Internet möglich. Das kann der normale Anwender nicht immer. 80% haben wir geschafft, aber ein kleines bißchen fehlt noch.

Gemessen an 1998, wo ich mein erstes Linux installierte (PTS Linux, CD gekauft in Berlin *schwelg*), haben sich Welten getan, aber am Ende funktioniert eben immer noch nicht alles reibungslos. Ich hatte beispielsweise deutsches Tastaturlayout ausgewählt, dieses war aber nicht aktiv. Erst ein paar Konfigurationseinstellungen waren nötig. Gerade Lubuntu ist prädestiniert für ältere Hardware und damit für Systeme, die nicht zwingend von Profix betrieben werden, weil die alte Kiste ja noch völlig reicht. Schade, wenn dann der Ersatz von Windows durch so etwas getrübt wird.

In jedem Fall gilt: wer nur im Internet surft, ab und an Briefe tippt und Musik hört, dem reicht ein 5 Jahre alter Rechner noch völlig, und wer nicht groß spielt, der kann rein inhaltlich problemlos zu Linux wechseln. Nur die Installation kann hakelig sein. Wer aber die Möglichkeit hat, erfahrene Nutzer um Rat zu fragen, der sollte dies nutzen und kann sich beim Umstieg helfen lassen.

Ubuntu One stellt Betrieb ein

Ich habe es heute morgen bei golem.de gelesen und auch bei Canonical im Blog sieht es nich tnach einem Aprilscherz aus. Der Cloudspeicherdienst Ubuntu One, kurz U1,  stellt den Betrieb ein.

Ich selber habe U1 eine zeitlang genutzt, da ich darüber einfach größere Datenmengen auslagern und anderen Benutzern zur Verfügung stellen konnte. Mein Smartphone synchronisierte Fotos darüber, aber ansonsten hatte ich wenig Nutzdaten in meinem Account. Ich habe eben alles relevante heruntergeladen und meinen Account geleert.

Bislang fand ich das ganz praktisch, aber nun brauche ich wohl eine Alternative. Ich habe auch das SmartDrive von web.de in Benutzung, allerdings gefiel mir bei U1 besser, da dort automatisch Dateien synchronisiert werden. Auf das Smartdrive von web.de kann man allerdings einfach per WebDAV zugreifen, daher weiß ich aktuell nicht genau, was mir weiterhilft.

Ich muss auch owncloud noch evaluieren, vielleicht kann ich das auch nutzen.

Mehr Hintergrundinformationen zur Abschaltung von Ubuntu One unter http://blog.canonical.com/2014/04/02/shutting-down-ubuntu-one-file-services/