PlanetSwitch Planet3DS PlanetVita PSP.de PlanetiPhone Classics Forum Handheld-Wiki

PGN-ID:[?] (Nicht eingeloggt)
Login
Registrieren
PlanetDS PlanetGameboy N-Page.de
portablegaming.de  

Zurück   portablegaming.de > Allgemeines Spielehandheldforum, GBA, N-Gage und Development > Development Abteilung


Development Abteilung Ihr wollt für euren Lieblingshandheld Spiele oder Tools entwickeln?
Bitte die Präfixe benutzen!

Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
Alt 11.05.2002, 13:03   #1
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard Hi! Bin neu hier und habe auch schon ein Problem! (sicher sympel für e

Hi!
ich bin neu hier und habe kaum Erfahrung!
ich wollte mal eine Bildbetrachter programmieren mit selbsterstellten Bildern!
ich habe 5 Bilder umgewandelt mit dem gfx converter und wollte sie in das programm einbinden!
ich habe euer Beispiel-Programm genommen und folgendermaßen verändert (der komplett neue Code):

// Bildbetrachter.c AGBmain Entry point is contained here (main program loop)

#include <gba.h>
#include "screenmode.h"

//Einfügen der Bilder
/////////////////////
#include "1.h"
#include "2.h"
#include "3.h"
#include "4.h"
#include "5.h"

//Festlegen der Adressen
////////////////////////
u8* videobuffer = (u8*)0x6000000;
u16* palettebuffer = (u16*)0x5000000;

//Der GBA ist doch zu schnell
/////////////////////////////
void WAIT(int x) {int i=0;while(i<x) i++;}

int main(void)
{
int i, bildindex = 0;
int MaxPal = 256, MaxPixel = 38400;

//Wenn 256 Farben ausreichen kann man Mode 4 verwenden
//////////////////////////////////////////////////////
SetMode(MODE_4 | BG2_ENABLE);

while(1)
{
if(!((*KEYS) & KEY_A))
{
bildindex++;
if(bildindex >= 5) bildindex = 0;
WAIT(100000);
}

switch(bildindex)
{
case 0:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 1_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 1_Map[i];
break;
case 1:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 2_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 2_Map[i];
break;
case 2:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 3_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 3_Map[i];
break;
case 3:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 4_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 4_Map[i];
break;
case 4:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 5_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 5_Map[i];
break;
}
}
}

//end of entry point


Soweit so gut, ich glaube da liegt auch nicht der Fehler drin, na ja, meine Batch Datei sieht so aus:

path=C:\devkitadv\bin (wird komischer weise hier im board mit 2 "//" dargestellt...)
gcc -o Bildbetrachter.elf Bildbetrachter.cpp -lm
objcopy -O binary Bildbetrachter.elf hehe.bin
del *.elf

und rausgekommen ist beim compilieren das hier:

komisch, wird nicht angezeigt obwohl der link richtig ist...
was solls, dann klickt eben auf www.zeckenberger.de/Problem.jpg

hmm, in meinem Ordner wo die „hehe.bin“ erscheinen müsste sind folgende Dateien vorhanden:

1.h
2.h
3.h
4.h
5.h
Bildbetrachter.cpp
gba.h
Make.bat
screenmode.h

So, jetzt seit ihr an der Reihe, wo liegt der Fehler???

(ich vermute das Konverter prog hat Misst gebaut oder ich bin einfach nur zu blöd... )

Zeckenberger ist offline   Mit Zitat antworten
Sponsored Links
Alt 11.05.2002, 17:01   #2
Ehemaliger Admin
 
Benutzerbild von hurik
 
Registriert seit: 27.12.2001
Ort: Konstanz
Alter: 36
Spielt gerade: Original Wars (PC, 2001) sack schwer ...

hurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannt

hurik eine Nachricht über ICQ schicken
Standard

1. deine überschrieft ist nicht gut gewählt. bzw sie war sogar ziemlich doof.
2. hätte das ins thema tutorial 2 rein sollen oder bei 3.
3. naja egal jetzt weist du es und ich antworte auf deine frage.

ok alls erstesmal löscht due die gba.h und screenmode.h und ersetzt sie durch diese datei: http://www.planetgameboy.de/artikel/...tut3/gball.zip
das meine header die alles wichtige hat. lies das einfach mal im 3 tut nach. oder in der kommentar zeile des files.
änder dem entsprechend auch deine include zeile. das müste erstmal die ersten fehler beseiteigen.

u8* videobuffer = (u8*)0x6000000;
u16* palettebuffer = (u16*)0x5000000;


das kannst du eigentlich auch weg lassen. sind schon in der gball.h datei drinnen, heissen da nur BGPaletteMem und VideoBuffer.

ok die anderen fehler müsten bei umwandel der bilder mit dem tool gekommen sein. also hast du das alles gemacht wie es im 2 tut von luckygeorge steht?

schreib mal weider was jetzt noch ent geht.

mach es doch lieber so wie ich im 3 tut mit dma und so ist einfach schöner!

mfg hurik
hurik ist offline   Mit Zitat antworten
Alt 11.05.2002, 18:36   #3
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

hmmm, das mit dem DMA mach ich später...
ok, meine cpp datei sieht nun so aus:

// Bildbetrachter.c AGBmain Entry point is contained here (main program loop)

#include <gball.h>

//Einfügen der Bilder
/////////////////////
#include "1.h"
#include "2.h"
#include "3.h"
#include "4.h"
#include "5.h"

//Festlegen der Adressen
////////////////////////
u8* videobuffer = (u8*)0x6000000;
u16* palettebuffer = (u16*)0x5000000;

//Der GBA ist doch zu schnell
/////////////////////////////
void WAIT(int x) {int i=0;while(i<x) i++;}

int main(void)
{
int i, bildindex = 0;
int MaxPal = 256, MaxPixel = 38400;

//Wenn 256 Farben ausreichen kann man Mode 4 verwenden
//////////////////////////////////////////////////////
SetMode(MODE_4 | BG2_ENABLE);

while(1)
{
if(!((*KEYS) & KEY_A))
{
bildindex++;
if(bildindex >= 5) bildindex = 0;
WAIT(100000);
}

switch(bildindex)
{
case 0:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 1_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 1_Map[i];
break;
case 1:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 2_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 2_Map[i];
break;
case 2:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 3_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 3_Map[i];
break;
case 3:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 4_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 4_Map[i];
break;
case 4:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 5_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 5_Map[i];
break;
}
}
}

//end of entry point


rausgekommen beim compilieren ist das hier:



ach ja:
das die überschrift so doof ist liegt nur an diesem board hier...

danke für deine hilfe...
Zeckenberger ist offline   Mit Zitat antworten
Alt 11.05.2002, 18:57   #4
 
Registriert seit: 24.04.2002

Locke hat die Renommee-Anzeige deaktiviert

Locke eine Nachricht über ICQ schicken
Standard

du must die gball.h im gleichen verzeichnis haben, wie die cpp und die make datei. wenn du dies nicht hast, dann kommt die meldung
"gball.h - no such file or directory"

dann sollten schonmal einige fehler weniger kommen!

ciao Locke
Locke ist offline   Mit Zitat antworten
Alt 11.05.2002, 23:26   #5
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

muss dich leider enttäuschen, die sind alle im gleichen Ordner!
Zeckenberger ist offline   Mit Zitat antworten
Alt 11.05.2002, 23:54   #6
 
Registriert seit: 24.04.2002

Locke hat die Renommee-Anzeige deaktiviert

Locke eine Nachricht über ICQ schicken
Standard

hhm....komisch. aber ich denke, dass es was in der richtung sein muss. denn ich glaub die fehler wären alle weg, wenn er mit der gball.h keinen stress machen würde...
wirklcih komisch.

ciao locke
Locke ist offline   Mit Zitat antworten
Alt 12.05.2002, 11:35   #7
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

boahh ist das alles verwirrend!
ich habe gerade mal alle 5 bilder mit anderen ausgetauscht und dann kam beim compilieren ein andere fehler mit irgenwas token...

es wäre furchtbar nett wenn einer villeicht selber mal das programm machen würde mit seinen selber erstellten pics und es mir dann villeicht noch mal schicken würde! (alle datein die dazugehören damit man es probelmlos compileren kann, inklusive bat datei...)

so könnte der Fehler villeicht behoben werden!
wäre aber gut wenn die *cpp datei genommen wird:

// Bildbetrachter.c AGBmain Entry point is contained here (main program loop)

#include <gball.h>

//Einfügen der Bilder
/////////////////////
#include "1.h"
#include "2.h"
#include "3.h"
#include "4.h"
#include "5.h"

//Festlegen der Adressen
////////////////////////
u8* videobuffer = (u8*)0x6000000;
u16* palettebuffer = (u16*)0x5000000;

//Der GBA ist doch zu schnell
/////////////////////////////
void WAIT(int x) {int i=0;while(i<x) i++;}

int main(void)
{
int i, bildindex = 0;
int MaxPal = 256, MaxPixel = 38400;

//Wenn 256 Farben ausreichen kann man Mode 4 verwenden
//////////////////////////////////////////////////////
SetMode(MODE_4 | BG2_ENABLE);

while(1)
{
if(!((*KEYS) & KEY_A))
{
bildindex++;
if(bildindex >= 5) bildindex = 0;
WAIT(100000);
}

switch(bildindex)
{
case 0:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 1_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 1_Map[i];
break;
case 1:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 2_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 2_Map[i];
break;
case 2:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 3_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 3_Map[i];
break;
case 3:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 4_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 4_Map[i];
break;
case 4:
for(i=0;i<MaxPal;i++) palettebuffer[i] = 5_Palette[i];
for(i=0;i<MaxPixel;i++) videobuffer[i] = 5_Map[i];
break;
}
}
}

//end of entry point

wie gesagt, wäre echt super nett von euch!
meine e-mail:
zeckenberger@gmx.de

*irgendwie schade das hier aufm board nicht so die post abgeht*
Zeckenberger ist offline   Mit Zitat antworten
Alt 12.05.2002, 12:01   #8
Ehemaliger Admin
 
Benutzerbild von hurik
 
Registriert seit: 27.12.2001
Ort: Konstanz
Alter: 36
Spielt gerade: Original Wars (PC, 2001) sack schwer ...

hurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannt

hurik eine Nachricht über ICQ schicken
Standard

ok hier mal allgemeine frische kur für deinen code:

#include "gball.h" // die <> warn falsch

#include "1.h"
#include "2.h"
#include "3.h"
#include "4.h"
#include "5.h"

void WAIT(int x)
{
int i=0;
while(i<x)
i++;
}

int main(void)
{
bildindex = 0;
int MaxPal = 256, MaxPixel = 38400;

SetMode(MODE_4 | BG2_ENABLE);

while(1)
{
if(!((*KEYS) & KEY_A))
{
bildindex++;
if(bildindex >= 5) bildindex = 0;
WAIT(100000);
}

switch(bildindex)
{
case 0:
for(c = 0; c < MaxPal; c++) BGPaletteMem[c] = 1_Palette[c]; // die c variable wird in der gbal.h deklariert
for(c = 0; c < MaxPixel; c++) VideoBuffer[c] = 1_Map[c];
break;
case 1:
for(c = 0;c < MaxPal; c++) BGPaletteMem[c] = 2_Palette[c];
for(c = 0;c < MaxPixel; c++) VideoBuffer[c] = 2_Map[c];
break;
case 2:
for(c = 0;c < MaxPal; c++) BGPaletteMem[c] = 3_Palette[c];
for(c = 0;c < MaxPixel; c++) VideoBuffer[c] = 3_Map[c];
break;
case 3:
for(c = 0;c < MaxPal; c++) BGPaletteMem[c] = 4_Palette[c];
for(c = 0;c < MaxPixel; c++) VideoBuffer[c] = 4_Map[c];
break;
case 4:
for(c = 0;c < MaxPal; c++) BGPaletteMem[c] = 5_Palette[c];
for(c = 0;c < MaxPixel; c++) VideoBuffer[c] = 5_Map[c];
break;
}
}
}

wandel deine bilder mal in pcx dateien um (mit irgendeinem prog z.b. photoshop, acdsee, ...) nd lad das prog runte5rund wandel es mit dem um http://216.167.73.47/~dovoto/English/pcx2gba.zip (datei einfach auf das file ziehn) du must aber auch noch 5_Palette[c] änder da das prog das mit anderen namen erstellt. also die erstellte datei öffnen und anschauen.
hurik ist offline   Mit Zitat antworten
Alt 12.05.2002, 12:33   #9
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

tut mir leid wenn ich nerfe, aber ich bin eben noch ein anfänger auf dem Gebiet!
was genau meinst du mit "du must aber auch noch 5_Palette[c] änden"?
in der erstellten *h datei kann ich nix erkennen wo ich was ändern müsste!
Also wo genau und was muss ich ändern in der datei?
Zeckenberger ist offline   Mit Zitat antworten
Alt 12.05.2002, 17:50   #10
Ehemaliger Admin
 
Benutzerbild von hurik
 
Registriert seit: 27.12.2001
Ort: Konstanz
Alter: 36
Spielt gerade: Original Wars (PC, 2001) sack schwer ...

hurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannt

hurik eine Nachricht über ICQ schicken
Standard

schick mal deine ganzen sachen also den quellcode mit den ganzen headern an andreas@giemza.org ich schau es mir an und korregiere es und schreibe was du falsch gemacht hast. bitte packe dein zeug in nem zip file oder ace.
hurik ist offline   Mit Zitat antworten
Alt 13.05.2002, 15:34   #11
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

zip file ist weg!
thx
Zeckenberger ist offline   Mit Zitat antworten
Alt 20.05.2002, 11:03   #12
Ehemaliger Admin
 
Benutzerbild von hurik
 
Registriert seit: 27.12.2001
Ort: Konstanz
Alter: 36
Spielt gerade: Original Wars (PC, 2001) sack schwer ...

hurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannt

hurik eine Nachricht über ICQ schicken
Standard

kann dir net helfen wenn du net auf meine mail antwortest!
hurik ist offline   Mit Zitat antworten
Alt 24.05.2002, 17:26   #13
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

ohh, man, tut mir echt leid!
das lag daran, dass ich ca. eine Woche nicht mehr am PC war...

Naja, ich versuche das Programm noch mal zu machen mit anderen Bildern und wenn das dann immer noch nicht geht dann kann ich hoffentlich noch mal nachfragen! (hoffentlich bist du nicht sauer auf mich! )

noch mal ne andere Frage:
In c gibt es die Anweisung "printf" um Sachen auszugeben!
gibt es sone art Funktion auch für den GBA?

Kann man etwa Schrift auf dem GBA nur als Grafiken darstellen oder gibt es dafür auch einen allgemeinen Befehl???

-----------------------
mein ziel ist es nämlich für das nächste Projekt ein Programm zu schreiben, was eingegeben Zahlen in eine Reihenfolge bringt! (nach der Größe geordnet)
am Besten wäre dafür das gute alte printf und scanf, dennoch habe ich Zweifel das es so was für den GBA gibbet!

Nun ja, ich freu mich auf Antworten...
Zeckenberger ist offline   Mit Zitat antworten
Alt 24.05.2002, 18:41   #14
Ehemaliger Admin
 
Benutzerbild von hurik
 
Registriert seit: 27.12.2001
Ort: Konstanz
Alter: 36
Spielt gerade: Original Wars (PC, 2001) sack schwer ...

hurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannt

hurik eine Nachricht über ICQ schicken
Standard

man kann leider schrieft nur als grafik ausgeben. leider aber man kann sehr gut das mit backgroundsmachen. also mann muss sich nur eine standart funktion schreiben und kann die dann in seinen ganzen programmen verwenden!
hurik ist offline   Mit Zitat antworten
Alt 24.05.2002, 18:53   #15
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

gibst sone Art "standart funktion" irgendwo zum downloaden?
außerdem muss es ja ein heiden Spaß machen so eine Art "Tastatur" zu programmieren!!!
Zeckenberger ist offline   Mit Zitat antworten
Alt 24.05.2002, 21:22   #16
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

hab dir übrings mal die neue zip mit pics geschickt!
Zeckenberger ist offline   Mit Zitat antworten
Alt 24.05.2002, 21:40   #17
ehem. Teammitglied
 
Benutzerbild von Zermatscher
 
Registriert seit: 16.02.2002
Ort: Tübingen
Alter: 35
Spielt gerade: GTA VI; Forza 3

Zermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer AnblickZermatscher ist ein wunderbarer Anblick

Standard

tach Zeckenberger. mal nicht zum thered:

Du bist doch vom N - Zone Board oder? Dich sehe ich da öfters, weil dich dauernd immer irgendwelche leute anpöbeln weil du nen flash linker benutzt. Stimmts oder hab ich recht?
__________________
Dreckiges Geschirr schimmelt nicht, wenn man es einfriert!
Zermatscher ist offline   Mit Zitat antworten
Alt 24.05.2002, 21:46   #18
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

was?, wie?, ich was?...
ich muss weg...
Zeckenberger ist offline   Mit Zitat antworten
Alt 25.05.2002, 01:00   #19
Ehemaliger Admin
 
Benutzerbild von hurik
 
Registriert seit: 27.12.2001
Ort: Konstanz
Alter: 36
Spielt gerade: Original Wars (PC, 2001) sack schwer ...

hurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannthurik ist jedem bekannt

hurik eine Nachricht über ICQ schicken
Standard

hallo das hat hier nix zu suchen!!!!
dafür gibts pms!!!
danke
hurik ist offline   Mit Zitat antworten
Alt 25.05.2002, 12:30   #20
 
Registriert seit: 02.05.2002

Zeckenberger hat die Renommee-Anzeige deaktiviert

Standard

hast du meine mail erhalten?
Zeckenberger ist offline   Mit Zitat antworten
Antwort

  portablegaming.de > Allgemeines Spielehandheldforum, GBA, N-Gage und Development > Development Abteilung

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[TUT] |PSP| PC Headset-Adapter für SOCOM und andere Games kamatschka Hardware (PSP) 9 17.05.2009 18:04
Fragen über Fragen - und Antworten Raiden91 PC/Mac 9 06.05.2007 22:02
Die wii und die Zukunft und ein paar Fragen^^ xSLIPKNOTx Wii U, Wii & GameCube 14 09.01.2007 18:21
Was tut ihr gegen das zu dunkele und blendende Display des GBAs? Lucky-Strike4life Hardware (GBA) 14 16.02.2002 23:25


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:46 Uhr.


Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.0
Template-Modifikationen durch TMS
PortableGaming.de © bk 2000 - 2010

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231