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 07.07.2003, 20:19   #1
 
Registriert seit: 05.06.2003
Alter: 33

Anaconda hat die Renommee-Anzeige deaktiviert

Anaconda eine Nachricht über ICQ schicken
Standard time.h

Ich wollte die time.h vom Visual Studio benutzen, bekam aber einen Fehler, weil diese nur für MACs/PCs gemacht ist. Meine Frage nun, gibt es einen Gleichwertigen Ersatz für den GBA-Entwickler?
Anaconda ist offline   Mit Zitat antworten
Sponsored Links
Alt 07.07.2003, 20:20   #2
Tom männlich
 
Benutzerbild von Tom
 
Registriert seit: 08.10.2002
Alter: 34

Tom hat die Renommee-Anzeige deaktiviert

Standard

Was kann time.h?
Tom ist offline   Mit Zitat antworten
Alt 07.07.2003, 20:23   #3
 
Registriert seit: 05.06.2003
Alter: 33

Anaconda hat die Renommee-Anzeige deaktiviert

Anaconda eine Nachricht über ICQ schicken
Standard

Die Systemzeit auslesen und die möglichkeit eine Variable in Zeitformat zu machen.

Eigentlich noch mehr, aber mehr brauche ich nicht
Anaconda ist offline   Mit Zitat antworten
Alt 07.07.2003, 20:33   #4
Tom männlich
 
Benutzerbild von Tom
 
Registriert seit: 08.10.2002
Alter: 34

Tom hat die Renommee-Anzeige deaktiviert

Standard

Da gibt es mehrere Möglichkeiten:

A: Du bastelst Dir das ganze mit Timern und Interups zusammen..

B: Du macht es mit VBlanks

Für die Zeit musst Du nur eine Struktur wie z.B.:

Code:
struct time
{
	u16 tausendstel;
	u16 sekunden;
	u16 minuten;
	u16 stunden;
};
machen und eine statische Version davon bei jedem Interupt bzw. VBlank um die entsprechende Zeit(bei VBlanks 16,7 tausendstel) erhöhen..

Mit der kannst Du dann andere Variablen des Typs time vergleichen..
Tom ist offline   Mit Zitat antworten
Alt 07.07.2003, 20:37   #5
 
Registriert seit: 05.06.2003
Alter: 33

Anaconda hat die Renommee-Anzeige deaktiviert

Anaconda eine Nachricht über ICQ schicken
Standard

VBlanks?? Was ist das?? Gibts da irgendwo ein Tutorial?
Anaconda ist offline   Mit Zitat antworten
Alt 07.07.2003, 20:57   #6
Tom männlich
 
Benutzerbild von Tom
 
Registriert seit: 08.10.2002
Alter: 34

Tom hat die Renommee-Anzeige deaktiviert

Standard

Sorry, ich hab´ keinen gefunden..

Du musst Dir das so vorstellen:

Der Screen des GBA wird auf die selbe Weise wie ein Fernseher aktualisiert.. Die Bildpunkte werden von links nach rechts und von Oben nach unten erneuert.

Wenn eine ganze Zeile gefüllt ist, tritt ein so genanntes H-Blank ein. das bedeutet, das der Graphik-Chip kurz eine Pause macht, in der man Zeit hat auf den Videospeicher zuzugreifen. Das passiert alle 73.433 µs.

Wenn der ganze Bildschirm gefüllt ist (also jedes 160. HBlank) tritt ein VBlank ein. VBlanks dauern länger als HBlanks und eignen sich in erster Linie dazu, dafür zu sorgen, dass man das ganze Programm im "Takt" hält, also damit das Spiel nicht bei rechen-intensiveren Stellen langsamer oder bei Stellen, die wenig Berechnungen brauchen, schneller wird(eher zweiteres).

Mit der Funktion:

Code:
void WaitForVsync(void)								//Zur Synchronisation der Hauptschleife..
{
	while((volatile u16)REG_VCOUNT != 160){}
}
kannst Du den GBA bis zum nächsten VBlank warten lassen, wenn es bis zu nächsten Bild nichts mehr zu tun gibt. Wenn Du direkt nachher die Zeit um 16,7 ms erhöhst kannst Du den VBlank-Zyklus des GBA zum Zeitmessen nutzen..
Tom ist offline   Mit Zitat antworten
Alt 08.07.2003, 15:31   #7
 
Registriert seit: 05.06.2003
Alter: 33

Anaconda hat die Renommee-Anzeige deaktiviert

Anaconda eine Nachricht über ICQ schicken
Standard

Kannst du mir noch gerade sagen was "volatile u16" bedeutet? u 16 ist klar, aber ist "volatile" nur ein Variablen name??
Anaconda ist offline   Mit Zitat antworten
Alt 08.07.2003, 16:15   #8
Tom männlich
 
Benutzerbild von Tom
 
Registriert seit: 08.10.2002
Alter: 34

Tom hat die Renommee-Anzeige deaktiviert

Standard

volatile ist ein Hinweis an den Kompiler, dass die Variable nicht durch das Programm, sondern von ausserhalb geändert wird. In diesem Fall eben vom Grafik-Chip.
Tom ist offline   Mit Zitat antworten
Alt 18.07.2003, 22:12   #9
 
Registriert seit: 05.06.2003
Alter: 33

Anaconda hat die Renommee-Anzeige deaktiviert

Anaconda eine Nachricht über ICQ schicken
Standard

Wie kann man den tausendstel um 16.7 erhoehen? Ich dachte der GBA erkennt keine Kommazahlen.
Ist es moeglich dass das Programm auf einem Emu nicht richtig laeuft? Denn innerhalb von 6-8 realen Sekunden vergehen 60 (Emu) GBA Sekunden.
Anaconda ist offline   Mit Zitat antworten
Alt 19.07.2003, 12:24   #10
 
Registriert seit: 27.06.2003
Alter: 33

Vertex hat die Renommee-Anzeige deaktiviert

Standard

Hi!
Event könnte man doch aller VBlanks eine variable um
167 erhöhen ?oder Wenn Du einen Wert brauchst, dann
dividierst Du das ganze wieder durch 10.
mfg olli
Vertex 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
Time Ace ______ Spiele (Nintendo DS) 4 12.02.2007 19:13
It's Christmas Time Finalzero Spiele (Nintendo DS) 1 12.12.2006 12:57
Illusion of Time Seto Retro 12 28.03.2005 03:17
GS vs. Illusion of Time Iceman Spiele (GBA) 3 30.01.2002 18:51


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:53 Uhr.


Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2020, 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