amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.


.
  Je Seite
Nur Titel anzeigen
.


Archiv 'Verschiedenes'


08.Dez.2022



Adventskalender: Tür 8 - Daniel Müßener
Für die 8. Tür unseres Adventskalenders konnten wir Daniel 'Daytona675x' Müßener gewinnen.

Wer hat wieder mal Lust, "Battle Squadron" zu spielen? :) Das ursprünglich 1989 von Cope-com entwickelte Spiel wurde von den Machern zusammen mit Daniel Ende 2013 in einer Neuauflage für AmigaOS 4 (und iOS, Android, Windows, OS X) herausgebracht.
Ende 2015 wurde eine Portierung des Spiels "Wings! Remastered Edition" für AmigaOS 4, AROS und MorphOS angekündigt und ein erstes Preview veröffentlicht. Anfang 2020 war dann eine neue Demoversion erhältlich.

Darüberhinaus veröffentlichte Daniel Anfang 2018 die AmigaOS-4-Version des im Sommer 2015 schwarmfinanzierten Arcade-Shooters Tower 57. Ebenso für AmigaOS 4 im Auftrag von A-EON entwickelt er den erstmals 2016 angekündigten OpenGL-ES-2-Wrapper, der Bestandteil des Enhancer Software ist.

Aktuell arbeitet der Entwickler an zwei Projekten: Atomic Bomberman Fan Rewrite ist eine Überarbeitung der gleichnamigen Bomberman-Variante für Windows aus dem Jahr 1997. Zu den Verbesserungen zählen, dass es neben den Amigasystemen auch auf aktuellen Windowsversionen wieder läuft, USB-Eingabegeräte genutzt, bis zu zehn Spieler an einem Gerät aktiv werden können und die Spielmodi überarbeitet wurden. Ebenso gibt es Netzwerkunterstützung für online-Wettkämpfe. Aktuell ist hier die Version 2.15 auf seiner Webseite erhältlich.

Schließlich informiert Daniel regelmäßig mittels Vorschau-Videos über den Entwicklungsstand seines Fußballspiels in 3D-Optik, "Souverän Soccer", dessen Zielplattform ein Amiga 1200 im Auslieferungszustand ist. Und so ganz "nebenbei" gehören zu seiner Vita auch die Amiga-Future-Ehrernämter "Übersetzer" und "Gamescom Männchen für alles"!

Vielen Dank, Daniel, für dein Engagement für den Amiga und natürlich auch für deine Advents-Geschichte, die nun folgt:

"Es war weder zur beschaulichen Weihnachtszeit noch Ostern, Silvester oder Karneval, obwohl ein entsprechender Rotwein-, Eierlikör- oder Kölschschwipps eine Erklärung für diese meine geistige Umnachtung gewesen wäre, von der ich euch, liebe Kinder, nun erzählen möchte.

Vor gar nicht allzu langer Zeit trug es sich zu, dass ich gar verzweifelt frickelnd am serial-link Feature meines Amiga Fußballspielchens werkelte. Es war schon spät des Nachts und der mit Kohlefeinstaub durchsetzte Regen prasselte braune Schlieren hinterlassend ans Bürofenster, vom Klang her kaum vom Klackern der malträtierten Tastatur zu unterscheiden.

Die Serielle unserer Freundin ist leider nichts, womit sie angeben könnte. Aber wenn man sie so langsam beackert, dass sie sich jedes Bit dreimal und von allen Seiten anschauen kann, dann passt das schon. Das Protokoll für das Spiel ist auch extra kompakt, um die Damen bloß nicht zu überfordern. Da das Spiel, bei gleicher Zufallszahlensaat, voll deterministisch ist und der Ablauf nach der Initialisierung nur noch durch die Spielerinputs bestimmt wird, reichen glücklicherweise unterm Strich schlappe 2 Byte pro Maschine pro Frame, die es zu übertragen gilt. Das ist auch gut so, denn für mehr reicht die Puste zumindest auf einer nackigen A1200 nicht aus, jedenfalls nicht bei "Souverän Soccer", wo man sich ohnehin schon am äußersten Leistungslimit bewegt und unbedingt 50 fps bei minimaler Latenz halten muss.

Jedenfalls sind in diesen insgesamt 2x2 Bytes alle Joystick- und Tastenkommandos, implizite Synchronisierung und Fehlerkorrekturinfo drin. Aber der Weg dorthin war ein steiniger und selbstverständlich bestand die Protokollevolution aus vielen Zirkeln des Ausprobierens, Weinens und wieder Wegschmeißens. Und natürlich stand am Anfang erst einmal ein weitaus simpleres Protokoll.

Zunächst sollte es ein einfacher Proof-Of-Concept sein. Dazu schickte Amiga #1 (nennen wir ihn aus aktuellem Anlass "Santa") einfach 1 Byte mit seinen aktuellen Joystick-Bits an Amiga #2 ("Rudolph"). Rudolph dagegen schickte 2 Bytes, nämlich seine eigenen Joystickdaten und die zuletzt von Santa empfangenen. Genau dieses Input-Paar wurde dann von beiden für die Berechnung des nächsten Simulationsschritts benutzt.

Und damit sind wir wieder in eingangs skizzierter Nacht. Team "Santa" und Team "Rudolph" sollten endlich auf dem Platz zeigen, was sie in der Theorie einstudiert hatten. Doch scheinbar hatten sich unsere beiden Schergen gegen mich verschworen oder irgendein Poltergeist in der Maschine hatte seine Finger im Spiel:

Wenn man den aktiven Spieler von Santa bewegte, dann rannte auch Rudolphs fokussierter Spieler in dieselbe Richtung - und als wäre das nicht schon daneben genug, taten sie das nur auf Rudolphs Bildschirm, auf Santas blieben beide einfach stehen! Und wenn man den an Rudolph angeschlossenen Joystick benutzte, passierte das gleiche, nur aus seiner gespiegelten Perspektive!

Das kann nicht sein! Jeder Programmierer kennt diesen Satz zu Genüge, aber selten war er angebrachter als in diesem Fall. Dieses Verhalten konnte und durfte einfach nicht eintreten, völlig unmöglich! Und doch war es so. Aber selbst nach zwei weiteren schrecklich langen Stunden war es mir lediglich gelungen, das ganze höchstens noch weiter zu verschlimmern.

Irgendwann fühlte ich mich wie Tom, der Jerrys Tagebuch zerfetzt. Aber bevor die armen Amigas oder Competitions einen unverdienten Tod hätten sterben müssen, zog ich lieber den Stecker und verließ meine Workbench mit schlurfendem Gang und hängenden Schultern in Richtung Bett.

Doch selbst im Schlaf war mir keine Ruhe vergönnt: im Traum fand ich mich inmitten eines stürmischen Gewitters auf einem schmierig durchweichten Fußballplatz wieder. Bei jedem Blitz schimmerten die Konturen von Spaghetticodetextfragmenten durch die Wolken und formten aberwitzige Sigillen. Auf den Zuschauerrängen tummelten sich zigtausende krankhaft aufgedunsene Nullen und sich wurmartig windende Einsen. Meine Ohren klingelten weniger vom krachenden Donner als vielmehr von den ohrenbetäubenden Fangesängen, die am ehesten noch an ein auf der Stereoanlage abgespieltes C64 Tape erinnerten. Nach einem Moment des Schwindels und der Orientierungslosigkeit realisierte ich, dass ich in einem der beiden Tore stand. Da knallte mir eine äußerst scharf geschossene Pille bereits gegen den Schädel! Der Schütze nutzte meinen Beinaheknockout, setzte nach und verwandelte den Abpraller allzu souverän. Dass sämtliche Spieler zweidimensionale Pixelmännchen waren, war nicht weiter bemerkenswert. Aber was mir ins Auge stach, waren die Trikots: während die meiner Mannschaft ein & Kaufmannsund zeigten, prangte auf denen des gegnerischen Teams ein einfacher vertikaler Strich wie ein Pipe-Symbol. Aber bevor ich mich weiter darüber wundern konnte, bekam ich einen Ball in den Bauch - und noch einen - und noch einen. Als ich den letzten in die Hand bekam, sah ich, dass es sich um keinen klassischen Fußball, sondern ein grünes rundes schrumpeliges Etwas handelte, das mich zudem aus zwei Triefaugen anglotzte und grinsend meinte: "Aufstehen, dummer Papa!".

Nachdem ich schweißgebadet aufgewacht war und meine Tochter davon abgebracht hatte, weiter auf meinem Bauch zu hüpfen, offenbarten sich mir drei Dinge mit absoluter Klarheit: Erstens, definitiv hinterließ jahrelanges C64 und Amiga Zocken doch seine Spuren, zweitens, Kinder geben einem ja so viel zurück, und drittens, mit diesen bösen Pipe-Strichen und den Kaufmannsunds hatte es doch irgendetwas auf sich, da hatte mein Unterbewusstsein etwas bemerkt, das dem Oberen entgangen war.

Also gut, Katzenwäsche, Kaffee, Morgenstuhl, frisch zurück ans Werk! Und siehe da, es dauerte nicht einmal eine Minute, die Problemursache zu entdecken und zu korrigieren. Was war geschehen?

Innerhalb der ganzen Spiellogik gibt es eine Variable, in der diverse An/Aus-Zustände als Bits gespeichert sind. Unter vielem anderen ist dort auch vermerkt, ob gerade ein Serial-Link-Match läuft und ob der jeweilige Amiga in einem solchen Fall als Santa oder Rudolph fungiert. Entsprechend gibt es Weichen, bei denen diese Bits getestet werden und je nachdem dieser oder jener Codepfad durchlaufen wird. In C sieht das so aus, wobei gf_Santa einfach ein bestimmtes Bit repräsentiert:

if(gameplay_flags & gf_Santa) {
// Santa-Kram kommt hier
} else {
// Rudolph-Kram kommt hier
}

Hier hatte sich ein kleiner, aber gemeiner, Tippfehler eingeschlichen. Anstelle des & (binäres UND) stand da ein | (binäres ODER):

if(gameplay_flags | gf_Santa)

Im Gegensatz zum eigentlich gewünschten Bit-Test ist das hier einfach nur, leider syntaktisch völlig legaler, Mist, der meinen GCC noch nicht einmal zu einer Warnung verleitet. Ich hätte dort auch if(true) schreiben können, der Effekt wäre der gleiche gewesen, nämlich dass immer nur der Santa-Code ausgeführt wurde - auch für einen Rudolph :P Dieser Tippfehler lässt sich eigentlich nur mit temporärer geistiger Umnachtung erklären. Zu allem Überfluss ist man als Programmierer grundsätzlich vor allem erst einmal faul, wodurch sich dieser Fehler auch direkt verdoppelt hatte, weil ich diese falsche Zeile noch an eine weitere Stelle kopiert hatte, sprich, sowohl in der Empfangs- als auch der Sendelogik steckte diese Macke.

Letztlich passierte dadurch in etwa Folgendes, wenn man den an Santa angeschlossenen Joystick nach links drückte:
  • Santa schickt seine Joystickdaten, "nach links"
  • Rudolph schickt seine Joystickdaten, "nix"
  • Santa will 2 Bytes empfangen, bislang ist aber nur 1 da, also nichts zu tun
  • Rudolph will 2 Bytes empfangen, bislang ist aber nur 1 da, also nichts zu tun
  • Santa schickt seine Joystickdaten, "weiterhin nach links"
  • Rudolph schickt seine Joystickdaten, "weiterhin nix"
  • Santa hat jetzt 2 Bytes bekommen und interpretiert die als "Spieler1: nix, Spieler2: nix"
  • Rudolph hat jetzt 2 Bytes bekommen und interpretiert die als "Spieler1: nach links, Spieler2: nach links"
Argh! Selbstredend funktionierte das ganze serial-link Konstrukt nach der & Korrektur noch nicht wirklich sauber, aber der Knoten war geplatzt und noch am selben Tage konnte ein erstes Testmatch erfolgreich ausgetragen werden.

Und die Moral von der Geschichte? Unterschätze nie die eigene Betriebsblindheit und Trotteligkeit, dummer Papa! Na dann, gute Nacht, liebe Kinderlein!" (dr)

[Meldung: 08. Dez. 2022, 04:15] [Kommentare: 6 - 11. Dez. 2022, 13:04]
[Per E-Mail versenden]  [Druck-Version]  [ASCII-Version]
07.Dez.2022



Adventskalender: Tür 7 - Christian Zigotzky
Tür 7 unseres Adventskalenders wird von Christian 'xeno74' Zigotzky gestaltet.

Man könnte fast sagen: er ist die gute Fee für alles, was auf PPC-Amigas mit Linux zu tun hat. Seine "amiga-news.de-Karriere" begann allerdings mit der Portierung von SuperTuxKart auf AmigaOS 4. In den folgenden Jahren veröffentlichte er fleißig nicht nur neue Linux-Kernel-Versionen für die verschiedenen PPC-Amigas, sondern auch ganze Linux-Distributionen: zum Beispiel Lubuntu 13.10 für Sam440ep Ende 2013, openSUSE 13.2 für den AmigaOne X1000 im Mai 2015 oder aktuell Void 5.1 für AmigaOne X1000/X5000 (wofür wir eine Installationsanleitung veröffentlicht hatten). Hinzu kamen in letzter Zeit auch diverse Spieleports für Linux PowerPC wie zum Beispiel Billy Frontier.

Seine Adventsgeschichte:

Wie ich zu A-EON gekommen bin ...

Es fing ganz harmlos im Jahr 2010 an. Ich benötigte ein Kabel und suchte in meinen Kisten auf dem Dachboden danach. Das Kabel fand ich, aber auch meinen alten Amiga 4000D in einer anderen Kiste. Ich weiß bis heute nicht, was mich da getrieben hatte, aber ich nahm den Amiga einfach mit runter in die Wohnung. Auf meiner Entdeckungsreise durch diverse Amiga-Webseiten habe ich festgestellt, dass die Entwicklung von Hard- und Software weitergegangen ist und war Feuer und Flamme.

Nach dem Kauf einer Indivision AGA MK1 konnte ich problemlos meinen A4000D (CPU Motorola 68040 mit 25 MHz, 16 MB Fast-RAM) mit einem angeschlossenen TFT-Monitor starten. Ich war total beeindruckt von der Indivision AGA MK1 wegen dem Abgreifen der Daten vom Lisa-Chip und der Aufbereitung und Ausgabe über VGA. Das machte Appetit auf mehr.

Als Linux-Fan habe ich dann Debian Linux 3.1r8 m68k auf dem 4000D installiert (Screenshot). Was so gut funktionierte, dass ich mit Linux auf dem Amiga immer weiter machen wollte.

Nach einer Weile kam dann der Wunsch auf, einen Amiga 4000T zu kaufen. Das war ein Traum, den ich mir damals nicht erfüllt habe. Also suchte ich nach Anzeigen und fand auch jemanden, der seinen A4000T verkaufen wollte. Ich fuhr hin und war über den Zustand von diesem A4000T total enttäuscht.

Aber ich habe zu diesem Zeitpunkt auch schon vom X1000 erfahren und war total begeistert. Nur der Preis schreckte mich ein wenig ab und die Verfügbarkeit war noch ein Problem. Ein Händler hatte aber einen gebrauchten ACube Sam440ep-flex (Messe-Ausstellungsstück) im Angebot. Ich dachte mir, warum kaufe ich mir anstatt eines teuren A4000T nicht gleich einen leistungsstärkeren und günstigeren NG-Amiga. Also schlug ich zu und kaufte ihn mir.

Der Sam war einfach nur toll, sodass ich den Amiga 4000T schnell vergessen hatte. Ich nutzte OS4.1 mit allen meinen m68k-Spielen und brauchte auf einmal meinen A4000D nicht mehr. Ich installierte zusätzlich (wie es sich für einen Linux-Fanatiker gehört) Linux und war mit dem Ergebnis sehr zufrieden.

Aber der Wunsch nach dem X1000 war nicht aus meinem Kopf heraus zu bekommen und in einer Hauruck-Aktion bestellte ich diesen am Ende des Jahres 2012 und bekam diesen am Anfang des Jahres 2013. Ich nutzte diesen genauso wie den Sam und installierte auch wieder Linux (was sonst?).

Ich war super zufrieden, außer mit der Hardware 3D-Beschleunigung unter Linux. Es gab Probleme, wenn ich SuperTuxKart gespielt habe, was mich frustrierte.

Das Problem wurde in neueren Kernel-Versionen behoben, aber diese gab es noch nicht für den X1000. Ich habe mit Hilfe von Markus einen neuen Kernel kompilieren können, der die Probleme gelöst hatte. Diesen habe ich dann auch veröffentlicht.

Nach der Veröffentlichung eines weiteren Kernels, fragte mich Trevor, ob ich beim A-EON Linux Support-Team anfangen möchte. Und so nahm das Schicksal seinen Lauf, mit Messebesuchen und vielen neuen Kontakten zu anderen Amiga-Begeisterten. Eine Entwicklung, die ich nicht missen möchte und so nicht erwartet hatte.

Tja, dass passiert alles wenn man ein Kabel auf dem Dachboden sucht und in den Schatzkisten wühlt. Also überlegt euch gut, ob ihr im Keller oder auf dem Dachboden in Kisten mit Computersachen schaut, denn da könnten Erinnerungen und Träume geweckt werden. ;-)" (dr)

[Meldung: 07. Dez. 2022, 06:18] [Kommentare: 1 - 07. Dez. 2022, 17:16]
[Per E-Mail versenden]  [Druck-Version]  [ASCII-Version]
06.Dez.2022



Adventskalender: Tür 6 - Matthias Böcker
Zum Nikolaustag und dem sechsten Türchen hat Matthias "UltraGelb" Böcker für alle MorphOS-Nutzer etwas Besonderes im Gepäck: extra für unseren Adventskalender hat er ein winterliches Screenblanker-Modul geschrieben.

Bereits in den Anfängen von amiga-news.de war auch Matthias mit seinem genialen FTP-Clienten AmiTradeCenter (ATC) in den Schlagzeilen: Am 27. März 2000 berichteten wir über seine erste Prerelease von ATC. Den Clienten entwickelte er bis zur Version 1.4 aus dem Jahr 2010 weiter. Als fleißiger Entwickler vor allem für MorphOS hat über die Jahre hinweg zum Beispiel das Spaßprogramm ShapeShow, die digitale Uhr ClockToy oder aus neuerer Zeit und auch für AmigaOS 3 und 4 das Dienstprogramm zur automatischen Aktualisierung von Versions-, Revisions- und Buildnummern RevFlex oder das Vergrößerungs-Tool Lupe veröffentlicht.

Wir sagen Danke für sein Engagement und natürlich auch für die schöne Nikolausüberraschung und übergeben an Matthias:

"Dies ist mein Beitrag zum amiga-news.de Adventskalender. Zum festlichen Thema passend handelt es sich um ein Screenblanker-Modul für MorphOS, das den aktiven Bildschirm mit Schneeflocken berieselt, die sich auf Fenstern und am unteren Bildschirmrand ansammeln.

Vielen Dank an das Team von amiga-news.de für die gute Arbeit! Allen Usern wünsche ich noch eine schöne Adventszeit und ein frohes Fest :-)"

Download: Snow.lha (55KB) (dr)

[Meldung: 06. Dez. 2022, 18:52] [Kommentare: 2 - 16. Dez. 2022, 15:20]
[Per E-Mail versenden]  [Druck-Version]  [ASCII-Version]
1 15 25 ... <- 30 31 32 33 34 35 36 37 38 39 40 -> ... 45 430 820

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.