eMail an MarcZum GästebuchKontakt per MSN-MessengerZum Messageboard

Entwicklungsumgebung für TAPs einrichten

Der folgende Guide von Gerti (Homepage) ist ein Auszug aus dem Topfield-Board und hier im Original zu finden

Verfasst am: Mo 27. Okt 2003, 19:53    Titel: Anleitung: Wie installiere ich mir die Entwicklungsumgebung  

Hi!

Diese Anleitung beschreibt die Installation der Entwicklunsumgebung für TAPs

1. Cygwin von http://www.cygwin.com downloaden und in den Ordner c:\cygwin installieren.

2. Das "Compiler environment" GCC for TAP von http://topfield.abock.de/tap/TF5000/tap5000.html dowloaden und in den Ordner c:\cygwin\usr\ entpacken (ggf. vorhandene Dateien überschreiben).

3. Die "API" tap_and_samples.zip von http://topfield.abock.de/tap/TF5000/tap5000.html downloaden und in c:\work\tap entpacken.


Nun hat man einen Ordner C:\cygwin in dem CYGWIN und die GCC for TAP installiert wurden.
Zusätzlich hat man noch den Ordner C:\work\tap, in dem die ganzen Beispiel TAPs und die *.h Dateien liegen.

Dort gibt es eine Datei tap.h - diese öffnen und folgenden Abschnitt wie angegeben abändern:

// -- GAME FUNCTION ---------------------------------------------------

include "tap_game.h"

extern bool (*TAP_Game_Init) ( void );
extern void (*TAP_Game_Close) ( void );
extern void (*TAP_Game_ScreenPut) ( void );
extern void (*TAP_Game_ScreenClear) ( void );
extern void (*TAP_Game_ScreenUpdate) ( void );
extern void (*TAP_Game_SpriteClear) ( long start, long len );
extern void (*TAP_Game_DrawSprite) ( void );
extern void TAP_Game_DirectSpritePut( int x, int y, SPIC_INFO *info );
extern long TAP_Game_SpritePut ( long spn, long x, long y, SPIC_INFO *info );

// ---------------------------------------------------------------------

so abändern:

// -- GAME FUNCTION ---------------------------------------------------

// include "tap_game.h"

extern bool (*TAP_Game_Init) ( void );
extern void (*TAP_Game_Close) ( void );
extern void (*TAP_Game_ScreenPut) ( void );
extern void (*TAP_Game_ScreenClear) ( void );
extern void (*TAP_Game_ScreenUpdate) ( void );
extern void (*TAP_Game_SpriteClear) ( long start, long len );
extern void (*TAP_Game_DrawSprite) ( void );
// extern void TAP_Game_DirectSpritePut( int x, int y, SPIC_INFO *info );
// extern long TAP_Game_SpritePut ( long spn, long x, long y, SPIC_INFO *info );

// ---------------------------------------------------------------------


Nun müssen noch die Pfade gesetzt werden, damit später alles notwendigen Dateien auch gefunden werden.

Bei Windows XP geht das wie folgt (bei anderen Windowsversionen müsste es aber ähnlich sein):

- "Arbeitsplatz" mit rechter Maustaste anklicken und "Eigenschaften" auswählen
- Reiter "Erweitert" anklicken
- Button "Umgebungsvariablen" anklicken
- Unter "Systemvariablen" folgende hinzufügen:

Name: C_INCLUDE_PATH
Wert: C:\WORK\TAP;C:\CYGWIN\INCLUDE; C:\CYGWIN\USR\INCLUDE

und

Name: CPLUS_INCLUDE_PATH
Wert: C:\WORK\TAP;C:\CYGWIN\INCLUDE; C:\CYGWIN\USR\INCLUDE

Anschließend den Wert der Variablen Path um folgenden Teil erweitern:
;c:\cygwin\usr\local\bin;c:\cygwin\bin

Nun habe ich mir auf dem Desktop eine Verknüpfung mit cmd.exe (das ist die Eingabeaufforderung) erstellt, die ich TAP-Entwicklung genannt habe:

Ziel: C:\WINDOWS\system32\cmd.exe
Ausführen in: C:\work\tap

Diese Verknüpfung öffnet die Eingabeaufforderung im Ordner C:\work\tap - welches ja der Ordner ist, in dem von nun an die Entwicklung stattfindet.

Am besten den Rechner jetzt einmal neu starten...ist zwar eigentlich nicht nötig, kann aber wohl nicht schaden.

Nun zum Testen, ob alles geklappt hat...
Als erstes legt man am besten mal eine Kopie des Ordners FIRE (liegt unter C:\work\tap) an und nennst diesen FIRE2.
Somit hat man die Möglichkeit, das Compilieren zu testen, ohne die originalen FireClock Files dabei ggf. zu beschädigen.
In dem kopierten Ordner FIRE2 löscht man nun alle Files bis auf build.bat, CLOCK.C und FIRE.C

Nun auf die Verknüpfung TAP-Entwicklung klicken (oder alternativ Start -> Ausführen auswählen, cmd eingeben, ok drücken und dann am Prompt cd C:\work\tap eingeben).
Nun ist man mit der Eingabeaufforderung im Ordner C:\work\tap
Als nächstes gibt man cd FIRE2 am Prompt ein und drückt Enter
Nun ist man im Ordner C:\work\tap\FIRE2

Um nun die FireClock testweise zu compilieren gibt man build ein und drückt erneut Enter.
Nun startet der Compiliervorgang (das dauert ein paar Sekunden).
Die Ausgaben an der Eingabeaufforderung müssten wie folgt aussehen:

-------------------------------------------------------------------------------
C:\work\tap>cd FIRE2

C:\work\tap\FIRE2>build

C:\work\tap\FIRE2>call ..\gcc clock.c

C:\work\tap\FIRE2>mips-gcc.exe -O2 -c -mtap -mlong-calls -msoft-float -I..\ -I .
.\include -I c:\cygwin\usr\include -I c:\cygwin\usr\local\include clock.c


C:\work\tap\FIRE2>call ..\gcc fire.c

C:\work\tap\FIRE2>mips-gcc.exe -O2 -c -mtap -mlong-calls -msoft-float -I..\ -I .
.\include -I c:\cygwin\usr\include -I c:\cygwin\usr\local\include fire.c


C:\work\tap\FIRE2>mips-ld -o fireclk.elf -T ..\TAP.ld clock.o fire.o -l tap -l c
-Map fireclk.map

C:\work\tap\FIRE2>mips-objcopy -O binary fireclk.elf fireclk.tap
C:\work\tap\FIRE2>
-------------------------------------------------------------------------------

Stimmt alles überein, kontrolliert man zur Sicherheit noch einmal den Inhalt des Ordners FIRE2, in dem sich jetzt acht Dateien befinden sollten:
build.bat
CLOCK.C
clock.o
FIRE.C
fire.o
fireclk.elf
fireclk.map
fireclk.tap

Die fertige TAP-Anwendung ist die Datei fireclk.tap (die 7.752 Bytes groß sein müsste).

Gruß,
Gerti

An dieser Stelle möchte ich mich nochmals bei Gerti für die Mühe bedanken, eine so ausführliche Anleitung zur doch ziemlich komplizierten Installation zusammenzustellen!

Impressum

Hit Counter