GameBoy Development Tools

background image

Seit es den Gameboy-Spielcomputer gibt, gibt
es auch Interesse an Anwendungen, für die
dieser kostengünstige Handheld vom Her-
steller nicht vorgesehen wurde. Damit sind
aber nicht die illegalen Aktivitäten wie das
Kopieren von Spielecassetten und den Einsatz
von Flash-RAM-Cartridges für das Herunter-
laden von Spielen. Etwas anderes ist es
schon, wenn man eigene (Spiele-)Programme
für den Gameboy entwickelt. Das erfordert
nicht nur eigenschöpferische Leistung, son-
dern auch detaillierte Kenntnisse über den

Aufbau des Gameboy und die Pro-
grammierung seines Prozessors.
Am anspruchsvollsten sind hinge-
gen Anwendungen wie beim
GBDSO, wobei nicht nur die Soft-
ware, sondern auch zusätzliche
anwendungsspezifische Hardware
selbst entwickelt wurde.
An Informationen für solche Ent-
wicklungen besteht im Internet kein
Mangel, im Gegenteil: Es gibt so
viele Fundstellen, dass man viel Zeit

aufwenden müsste, um das Richtige
zu finden. Diese Mühe verringert
sich erheblich, wenn man sich zuerst
die hier vorgestellten Sites ansieht,
die wir für Sie recherchiert haben.
Danach können Sie immer noch
selbst das Netz Ihrer Lieblings-Such-
maschine auswerfen - das Angebot
ist so groß, dass es noch genug zu
entdecken gibt.

Inside Gameboy

Intel inside sucht man beim Game-
boy vergebens. Sein Prozessor ist
dem Z80 ähnlich, der in der Zeit der
8/16-bit-Computer zeitweilig populä-
rer war als die damaligen Intel-Pro-
zessoren. Fairerweise muss man
auch erwähnen, dass der Z80 sei-
nerseits Gemeinsamkeiten mit dem
“Stammvater” 8080 von Intel auf-
weist, dem ersten Prozessor, der in
einem “Personal Computer” ver-
wendet wurde.
Wenn man Software für den Game-
boy-Prozessor entwickelt, ist das in
Bild 1 gezeigte Memory-map von
zentraler Bedeutung. Der Adress-
raum des Gameboy enthält ver-
schiedene RAM-Bereiche (regulärer
interner Speicher, Videospeicher,
Sprite-Speicher) sowie ROM-Berei-
che, memory-mapped I/O und drei
Register, die die Auswahl anderer

MIKROPROZESSOR

72

Elektor

12/2000

GBDT — GameBoy

Development Tools

Von Luc Lemmens

Die beiden Artikel über das Gameboy Digital Sampling Oscilloscope
(GBDSO) haben ihre Wirkung nicht verfehlt. Über tausend Anfragen zei-
gen, dass ein starkes Interesse an der Nicht-Spiele-Anwendung dieser ver-
breiteten Spielekonsole besteht, das über den traditionellen Leserkreis
von Elektor weit hinausreicht. Die häufige Frage nach Informationen für
eigene GB-Applikationen beantwortet dieser Beitrag.

background image

cher verwenden. Für erste Versuche ist dem
aber ein Gameboy-Emulator mit Sicherheit
vorzuziehen. Eine andere Möglichkeit wäre
ein EPROM-Emulator, für den man aber wie-
der einen passenden Adapter für die Verbin-
dung zum Applikationsboard benötigt. Unab-
hängig davon, mit welcher Methode man
arbeitet, steht am Ende immer der echte Test
mit der (hoffentlich) endgültigen Platine.
In den meisten Fällen benötigt man auch ein
Hilfsprogramm, das den richtigen Header hin-
zufügt (der vom Gameboy beim Einschalten
abgefragt wird) und außerdem die richtige
Prüfsumme berechnet. Ein solches Hilfspro-
gramm ist zum Beispiel RGBFIX.
Nach dem Start-up bestimmt im Folgenden
das Programm im Cartridge-ROM, was wei-
ter passiert.

Zutaten

Zuerst einmal braucht man einen Gameboy -
oder etwa nicht? Für den Anfang nicht unbe-
dingt - im Internet findet man verschiedene
GB-Emulatoren, mit denen man GB-Software
auch ohne Gameboy auf verschiedenen ande-
ren Computern testen kann, bevor man es mit
einem echten Gameboy versucht. Allerdings
ist es speziell beim Entwickeln neuer Hard-
ware schon irgendwann unvermeidbar, das
Ganze mit einem RGB (Real GameBoy) zum
Laufen zu bringen...
Neben den Hardware-Entwicklungshilfen ist
natürlich auch ein integriertes Entwick-
lungssystem sehr hilfreich, wie zum Beispiel
das “GameBoy Development Studio”. Diese
ausgezeichnete Toolbox bündelt alle Kompo-
nenten der Entwicklungs-Software in einem
auf Graphik basierten Paket. Sehr empfeh-
lenswert ist auch das GameBoy Development
Kit (GBDK), schon allein wegen seiner bei-
spielhaften Beispielsammlung...

(000152-1)

Speicher-Bereiche ermöglichen.
Dadurch kann der physikalisch vor-
handene (reale) Speicher viel größer
sein als die 64 KByte der ursprüngli-
chen Z80-Spezifikation.
Ein absolutes “Muss” für jeden
selbstentwickelnden GB-Anwender
ist die ausführliche Beschreibung
aller relevanten Hardwareaspekte,
die man in dem ‘gbspec.txt’ bei „Dr
Pan’s Gameboy technical documen-
tation
“ findet. Den Link finden Sie in
der Linkliste am Artikelende und
wie immer bei

www.elektor.de

in der

Linkliste des Monats”, die alle
Hyperlinks zu dieser Elektor-Aus-
gabe enthält.

Entwicklungssoftware

Was Assembler betrifft, stehen für
den Z80 aus der Blütezeit dieses Pro-
zessors noch ausgezeichnete Exem-
plare zur Verfügung. Die noch bes-
sere Nachricht ist aber, dass es spe-
ziell für den GB auch einen richtigen
C-Compiler gibt: Den GameBoy
Development Kit (GBDK). Dennoch
ziehen viele ihre Z80-Assembler vor,
weil der C-Compiler keinen für mini-
malen Umfang optimierten Kode
erzeugt.
Zu den im Internet bekannten
Assemblern zählen RGBDS, TASM
(Table Assembler - nicht Turbo

ASsembler), ADVanced GBIDE und
der im GBDK enthaltene Assembler.
Profis verwenden zum Beispiel ISAS,
einen Assembler, der zwar von Nin-
tendo empfohlen wird, aber leider
auch nur für lizenzierte Entwickler
zur Verfügung steht.
Jeder Assembler hat seine Vor- und
Nachteile, so dass jeder das ver-
wendet, was ihm am besten zusagt.
Der Gameboy arbeitet mit tiles
(wörtlich: Kacheln), was grafisch
gesehen Rechtecke mit 876 Pixeln
bedeutet. Die nächstgrößere Einheit
ist eine “map”, die aus 32x32 tiles
besteht. Graphische Bildschirm-
inhalte können auf dem PC mit Tile-
oder Map-Editoren wie Tile Buddy,
GB Tile Designer (GBTD) und GB
Map Builder (GBMB) zusammenge-
setzt werden - alles Programme, die
unter Windows 95 lauffähig sind.
DOS-User können auf TILE256
zurückgreifen. Außer diesen Editoren
gibt es auch Programme, mit denen
man Graphik-Dateien der Formate
BMP, PCX, GIF oder TIF in Gameboy-
Bilder umwandeln kann.

Hardware oder Software?

Für das Testen von Anwendungen
gibt es verschiedene Optionen. Zum
einen könnte man gleich eine Car-
tridge mit EPROM- oder Flash-Spei-

MIKROPROZESSOR

73

12/2000

Elektor

Internet-Adressen:

Jeff Frohwein’s Technical Page:

http://www.devrs.com/gb/

Pascal Felber and Michael Hope’s GBDK:

http://gbdk.sourceforge.net/

Ian James GBDS:

http://www.geocities.com/Eureka/9827/

Dr Pan’s Gameboy technical documentation:

http://www.gbdev.org/news/dl.html

Paul Robson’s GB97 emulator:

http://users.aol.com/autismuk/gameboy.htm

Bild 1. GameBoy Memory-map.

Interrupt Enable Register

FFFF

FF80

FF4C

FF00

FEA0

FE00

E000

C000

A000

8000

4000

6000

2000

0000

000152 - 11

RAM Bank Select

MBC1 ROM/RAM Select

ROM Bank Select

RAM Bank Enable

General Memory Map

General Memory Map

Internal RAM

Empty but unusable for I / O

I /O ports

Empty but unusable for I / O

Sprite Attrib Memory (OAM)

Echo of 8 kB Internal RAM

8 kB Internal RAM

8 kB switchable RAM bank

8 kB Video RAM

16 kB switchable ROM bank

16 kB ROM bank #0


Wyszukiwarka

Podobne podstrony:
Modul2, Courseware Development Tools
Modul1, Courseware Development Tools
Modul1, Courseware Development Tools
Modul9, Courseware Development Tools
Modul3, Courseware Development Tools
Modul7, Courseware Development Tools
Modul8, Courseware Development Tools
4 ABAP Development Tools
Modul6, Courseware Development Tools
Modul12, Courseware Development Tools
101 Learning and Development Tools Rok wydania 2011 oprawa miekka
Developing Usability Tools And Techniques For Designing And Testing Web Sites
4 Plant Structure, Growth and Development, before ppt
Human Development Index
Development of Carbon Nanotubes and Polymer Composites Therefrom
Password Recovery Tools, hakerskie
PC TOOLS

więcej podobnych podstron