Autor Thema: SDL-Howto online  (Gelesen 14818 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Atari060

  • Benutzer
  • Beiträge: 2.346
  • Atari !!!
SDL-Howto online
« am: So 06.04.2008, 14:29:51 »
Hallo Leute,

ihr könnt euch das SDL-Howto herunterladen und wenn ihr wollt,habt ihr schon heute Abend euer erstes SDLProgramm portiert!

Über eure Erfolgsstories würde ich mich freuen!

Viel Spass!

http://060falcon.fortunecity.de/downloads/sdl-howto.txt
(Rechtsklick speicher unter)

MfG

Chris
Atari Falcon060

Offline tuxie

  • Benutzer
  • Beiträge: 6.830
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: SDL-Howto online
« Antwort #1 am: So 06.04.2008, 20:40:22 »
Hi Chris,

wäre es möglich die Datei in einer anderen Zeichencodierung hier einzustellen. Ich kann sie leider nicht öffnen.
Tschau Ingo

Offline Atari060

  • Benutzer
  • Beiträge: 2.346
  • Atari !!!
Re: SDL-Howto online
« Antwort #2 am: So 06.04.2008, 21:12:27 »
Hi,hier das Howto:

SDL und Atari - ein Anleitung um Spiele und andere Software zu portieren

Was ist SDL?

SDL ist die Abkkk�rzung fff�r Simple Direct Media Layer. Das Ganze ist eine sog.
Library, die am ehesten mit DirectX von Microsoft zu vergleichen ist. Sie
ist quasi die Schnittstelle zwischen der Soft- und der Hardware. Will heissen
wenn der Programmierer sein Programm mit SDL entwickelt, kann dieses theoretisch
auf jedes andere SDL-ff„hige System portiert werden, indem man es einfach nur
kompiliert. Die hardwarespezifischen Dinge  �bernimmt SDL dann (Ansteuerung
von Monitor, Abfrage der Tastatur, etc.).

Soweit die Theorie, in der Praxis treten manchmal einige Probleme auf, gerade
wenn man elitt„re und exotische Hardware wie den Atari verwendet. Aber es geht
oft einfacher als man denkt und selbst ich, als (noch) Nicht-C++ Programmierer
habe schon mehrere Spiele erfolgreich auf den Atari portiert.

Was brauche ich, um einen Port zu machen?

- einen Atari auf dem MiNT ll„uft (theoretisch langt ein 68000er, besser aber
  ab Falcon und TT aufww„rts), ein PC mit Aranym tut's auch!
 
- SDL

- wchar.h (ist am Ende des Textes zu finden. Einfach kopieren, in neuen Text
  einfff�gen und unter /usr/include als wchar.h abspeichern

- die Source eines SDL Spiels (z.B. toppler.sourceforge.net)

Los geht's:

Als erstes installiert man EasyMiNT (kann man unter
http://atari.st-katharina-apotheke.de herunterladen). Wichtig
hierbei ist, dass man NUR(!!!) basic, standard, net und devel installiert.
(evtl. kann man X11 noch installieren, das habe ich aber nicht getestet).
Unbeding von lib die Finger lassen, da es mindestens eine library enthh„lt die
das Portieren von SDL Spielen fast unmm”glich macht. Auf jeden Fall fff�r Anff„nger!
Ich ww„re daran fast verzweifelt! Hat mich zwei Wochen gekostet, bis jemand (mikro)
darauf gekommen ist!

WW„hlt bitte Xaaes staren, ohne login aus. Anders geht es zwar auch, aber wer
mit der bash startet, kennt sich damit vermutlich sowieso aus...

Hat man das hinter sich und das System auf seine WWW�nsche eingestellt (verwendet
man Xaaes muss man bis auf die Laufwerk nichts verr„ndern), kann es schon fast
losgehen ;-)

Bei der Verwendung von Myaes (mein LieblingsAES zur Zeit), muss man unbedingt
die Variable (export PATH) zu c:/tmp mit # auskommentieren, da sonst auch das
kompilieren nicht klappt. Fragt mich nicht warum, hab ich auch nach ein paar
Tagen erst rausgefunden. Ohne ll„uft es jedenfalls prima!

Okay, als nn„chstes besorgt man sich SDL. Das kann man unter
http://pmandin.atari.org beziehen. Getestet habe ich alles mit SDL-devel-1.2.13.
Wenn es ne neuere Version gibt, ist es wahrscheinlich kein Problem diese zu
verwende.

Zuguterletzt geht man auf http://sparemint.atari.org und saugt sich lib-ldg.rpm.
Die Dateien heissen nicht genau so wie ich schreibe (bin zu faul zum tippen),
aber man findet sie leicht, wenn man sich de Packages alphabetisch sortieren
ll„sst.

Die heruntergeladenene Dateien speichert man nun (am einfachsten) im obersten
verzeichnis seiner ext2 Partition (die wonach Easymint bei der Installation
gefragt hat). In meinem Fall ist das j:/ . Die folgenden Hinweise beziehen
sich auf meinen Fall.  Žndert bei euch einfach das j in euren Partitions-
buchstaben um!

Okay, aber jetzt geht's ans Eingemachte: das heruntergeladene Zeugs will
schliesslich auch installiert werden:

Als erstes startet man die "Bash". Das geht indem man toswin2 starte und dann
unter Datei "Shell starten" ausww„hlt. Danch  ”ffnet sich ein Fenster mit
der Eingabeaufforderung und man befindet sich im sog. root Verzeichnis.

Zum Installieren der Pakete gibt man zunn„chst "cd /" ein.

Dann tippt man erst "rpm -i lib-ldg.rpm" und dann "tar xzf SDL-devel-xxx.tar.gz"
ein. Beachtet, dass ihr nattt�rlich den exakten Dateinamen eingeben mmm�sst und
auch die Gross- und Kleinschreibung beachtet!

Zuguterletzt noch die Datei wchar.h nach j:/usr/include/ kopieren (einfach
�ber den Desktop)

Danach ist das System fertig eingerichtet und ihr kk”nnt mit dem Portieren
loslegen!

(SDL_mixer und die anderen SDL Teile, die von einigen Programmen benutzt werden
installiert ihr analog, wird aber nur benn”tigt, wenn man Sound haben will...
auf Patrices Seite ist auch beschrieben, welche rpms man dafff�r dann noch
braucht)

Das Installieren einer Source:

Okay, schnappen wir uns nun ein Spiel, welches wir fff�r den Atari kompilieren
wollen:

Nehmen wir zum Beispiel o.g. toppler.tar.gz

Die Datei herunterladen und auf j:/ abspeichern. In die Bash gehen. Wichtig,
dass man nun im "root" Verzeichnis ist. Also ggf. mit cd /root dahinein
wechseln.

Nun gibt man "tar xzf /j/toppler.tar.gz" ein.

Ist der Entpackvorgang fertig, wechselt man mit "cd toppler" in das Verzeichnis.
Ist man sich wegen des Namens nicht sicher, kann man mit "dir" nachsehen, oder
man  ”ffnet das root Verzeichnis mit dem Desktop.

Anschlieežend gibt man noch "./configure" ein... dann laufen viele viele Tests
ab, dann "make" und wenn man will noch "make install". Letzteres installiert
toppler systemweit, so dass man es aus jedem Verzeichnis aufrufen kann... ob
das sinnvoll ist, oder nicht, kann jeder selbst entscheiden...

Starten tut man toppler nun mit "toppler" oder "./toppler". Letzteres ist der
Fall, wenn man nur "make" eingegeben hat.

ACHTUNG: Bei Toppler gibt es eine Besonderheit, BEVOR man "make" eingibt, muss
man noch mit einem Texteditor (am Besten QED) zwei Dateien in dem Verzeichnis
„ndern: und zwar "decl.h" und "decl.cc" In diesen muss man am Ende
 
//#ifdef WIN32
..
//#endif

so abb„ndern (die // waren vorher nicht da).

Dies ist nur bei Toppler so. Xrick (Rick Dangerous) kann man beispielsweise
ohne jeglich  Žnderung kompilieren.

So genug der  šbung nun auf ans Werk!

Sucht  �ber Google nach "Sdl game open source", oder seht unter www.libsdl.org
nach, ladet fleissig Sourcen herunter und tippt ./configure und make bis die
Finger bluten ;-)

Es dauert manchmal recht lange, bis man ein passendes Spiel findet, was
"out of the box" ll„uft, aber es geht, GANZ OHNE PROGRAMMIERKENNTNISSE!

Lest euch vorher auch mal die INSTALL Anleitungen durch, oft muss man auch
nur make eintippen, oder wie bei xrick ./config (Xrick hat leider auf dem
Falcon nen Graphikbug, unter Aranym geht es... komisch...).

Lasst euch nicht unterkriegen und portiert was das Zeug hh„lt!

Viel Spass!

Euer

Christian

PS: Zum Starten der Programme unter TOS einfach das Verzeichnis auf eine
Atari Partition kopieren und z.B. xrick in xrick.ttp umbenennen. MM”glicherweise
gehen einige Sachen unter single TOS nicht, weil lange Dateinamen benn”tigt
werden...

Habt ihr Fragen, oder fertige Ports: meldet euch unter atari-falcon<at>gmx<punkt>net

Hier die wchar.h:

#ifndef _WCHAR_H
#define _WCHAR_H

/* Get size_t, wchar_t, wint_t and NULL from <stddef.h>. */
#define __need_size_t
#define __need_wchar_t
#define __need_NULL
#define __need_wint_t
#include <stddef.h>

#endif /* _WCHAR_H */
Atari Falcon060

Offline tuxie

  • Benutzer
  • Beiträge: 6.830
  • Falcon! Milan! Schuetzt die Raubvoegel!
Re: SDL-Howto online
« Antwort #3 am: Mi 09.04.2008, 11:44:01 »
Ich habe auf Newtosworld.de extra eine Kategorie SDL-Ports angelegt, könnt also eure Resultate da Uploaden. Wie einige hier schon wissen habe ich die aratux2 bald fertig, es sind noch einige Ecken und Kannten drin, dann werde ich einmal versuchen die Notwendigen SDL Sachen gleich mit einzubauen.
Tschau Ingo

Offline Atari060

  • Benutzer
  • Beiträge: 2.346
  • Atari !!!
Re: SDL-Howto online
« Antwort #4 am: Mo 14.11.2011, 12:36:06 »
Hier mal was, das sich portieren lassen sollte:

http://www.artsoft.org/rocksndiamonds/download.html

Hab leider derzeit keine funktionierende SDL- Umgebung...
Atari Falcon060

Offline m0n0

  • Benutzer
  • Beiträge: 984
Re: SDL-Howto online
« Antwort #5 am: Di 15.11.2011, 00:09:37 »
Ich habe schon ziemlich viel für SDL portiert (als testlauf, sozusagen). Aber die Erfahrung die ich selbst bei den simpelsten Spielen machen musste: Nur weil es simpel ist, heisst das noch lange nicht das es auch flüssig läuft. Hauptsächlich wohl, weil solche Spiele wohl häufig nicht sehr Versiert programmiert sind.

Das bedeutet also in den meisten Fällen, das nochänderungen / optimierungen am Code notwendig sind, der Aufwand kann von Software zu Software variieren, aber letztlich ist immer ein Verständnis des Speziellen Problematik von Nöten. 

Das soll nicht bedeuten das es auch für dieses Spiel so ist..., könnte aber sehr wahrscheinlich sein.

Von daher macht es vielleicht auch Sinn so eine Software auf einem alten PC zu testen, wenn das Flüssig geht, dann sollte es auf einem Atari auch recht machbar sein....

Offline Börr

  • Benutzer
  • Beiträge: 859
Re: SDL-Howto online
« Antwort #6 am: Do 24.01.2013, 21:05:20 »
Was muß man machen um SDL für einem vanilla Falcon zu machen? Oder geht das nicht?

Offline m0n0

  • Benutzer
  • Beiträge: 984
Re: SDL-Howto online
« Antwort #7 am: Do 24.01.2013, 22:20:44 »
Zitat
Was muß man machen um SDL für einem vanilla Falcon zu machen? Oder geht das nicht?

Du meinst make? Also das sollte in etwa so gehen:

./configure --host=m68k-atari-mint  (ein parameter fehlt noch... der angibt das man SDL für Atari machen will)

dann:

make

dann:

make install - wenn man will.

Offline Börr

  • Benutzer
  • Beiträge: 859
Re: SDL-Howto online
« Antwort #8 am: Fr 25.01.2013, 08:26:13 »
Eigentlich meinte ich ein Tutorial oder sowas, weil die paar SDL Tutorials die ich versucht habe haben viele functions nit gefunden. Wie sieht es mit dem ausführen aus, braucht man dann mint oder sowas?

Omikronman

  • Gast
Re: SDL-Howto online
« Antwort #9 am: Fr 25.01.2013, 19:45:35 »
Was hat SDL mit Atari zu tun? Gar nix. Für Spiele empfehle das zu booten, was im ROM ist. Nicht nur zum spielen, auch um Spiele zu programmieren. Börr weiß, was ich meine. :-)
« Letzte Änderung: Sa 26.01.2013, 11:55:55 von Imo »

Offline Börr

  • Benutzer
  • Beiträge: 859
Re: SDL-Howto online
« Antwort #10 am: Fr 25.01.2013, 20:53:01 »
imo du bist aber auch super vanilla :-P

Offline simonsunnyboy

  • Benutzer
  • Beiträge: 1.801
  • Rock'n'Roll is the thing - Jerry Lee is the king!
Re: SDL-Howto online
« Antwort #11 am: Sa 26.01.2013, 10:26:49 »
SDL auf dem Atari ist schon nett, es läuft leider nur mit Speedern vernünftig.

Für normale Atari Rechner (ST, STE, F030) ohne Mint und ohne Erweiterungen bleibt nicht genug Performance über.

Für einen CT60 oder die Firebee sieht das gaaaanz anders aus, da fängt SDL an, richtig Sinn zu machen, weil die Programmierarbeit dann für mehrere Plattformen erfolgen kann. PC, Linux und Atari können dann relativ leicht mit einem Code abgedeckt werden, wenn man sich ein bißchen Gedanken vorher macht.

Ich habe mir zum Erlernen von SDL mal vor über 10 Jahren ein Buch gekauft, "Programming Linux Games". Da war das meiste sinnvoll erklärt, ansonsten findet man eigentlich mit gogglen genug Wikis und Tutorials im Netz.

Das gute an SDL ist ja, daß man meist keine Plattformspezialitäten braucht. Der Aufruf, um ein Bildschirmfenster zu haben mit XxY Pixeln in 16Bit Farbtiefe sieht immer gleich aus.
Paradize - ST Offline Tournament
Stay cool, stay Atari!
1x2600jr, 1x1040STFm, 1x1040STE 4MB+TOS2.06+SatanDisk, 1xF030 14MB+FPU+NetUS-Bee

Offline Börr

  • Benutzer
  • Beiträge: 859
Re: SDL-Howto online
« Antwort #12 am: Sa 26.01.2013, 11:36:10 »
habe ein paar tuts durchversucht, aber der m68k crosscompiler muckt damit noch rumm und was schlimmer ist, der atari startet das prog zwar aber beendet es gleich wieder. Braucht man da noch irgenwelche dlls oder soetwas? Kennt wer ein Atari sdl tutorial oder howto?

Offline simonsunnyboy

  • Benutzer
  • Beiträge: 1.801
  • Rock'n'Roll is the thing - Jerry Lee is the king!
Re: SDL-Howto online
« Antwort #13 am: Sa 26.01.2013, 11:45:07 »
Ataris kennen keine DLLs. Da wird alles in ein Binary reingelinkt. Deswegen sind die auch ziemlich groß. Außer obiger Anleitung kenne ich auch bislang keine Atari spezifische. Vllt kann Dir Patrice Mandin weiterhelfen? IIRC betreut er SDL für Atari.
Paradize - ST Offline Tournament
Stay cool, stay Atari!
1x2600jr, 1x1040STFm, 1x1040STE 4MB+TOS2.06+SatanDisk, 1xF030 14MB+FPU+NetUS-Bee