Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Grzfrz

Anmeldungsdatum: 24.04.2005 Beiträge: 2 Wohnort: Österreich
|
Verfasst am: 24.04.2005, 11:04 Titel: QBasic 4.5 Compiler hängt wegen Variable? |
|
|
Gleich Vorneweg: Ich hoffe, dass ist keine Frage die ihr 10x/Tag hört, aber zumindestens habe ich weder in der FAQ noch mit der Suche eine Antwort finden können.
Ich habe ein Problem mit dem Qbasic Compiler von QuickBasic 4.5: Wenn ich mein "Spiel" (das es jedenfalls mal werden sollte ) compilieren will, kommt immer diese Fehlermeldung:
0030 003A DIM SHARED screen1%(0 to 32004), tank%(148), hori%(639), ex%, power%, angle%
^Data Memory overflow
43101 bytes available
39114 bytes free
0 Warning error(s)
1 Severe Error(s)
Das ^ steht übrigens unter der ) von hori%(639). Geschrieben ist das ganze in qbasic 1.1, wo es auch tadellos läuft. Kann der Fehler wegen dem ziemlich großen screen1% Array sein? Wenn ich die nämlich nur bis 31000 definiere und auch das restliche Prog anpasse, geht es. Nur leider schneidet er mir dann natürlich einen Teil des Bildes weg, das darin gespeichert wird. Auch ein aufteilen in 2 kleinere Variablen bringt die gleiche Meldung, was heißen könnte, dass ihm die Gesammtgröße der Variablen zu groß wird?
Wer hat einen Rat für mich? Irgendwie muss sich das Teil doch in eine exe verwandeln lassen  |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 24.04.2005, 11:16 Titel: |
|
|
Hallo.
Schon mal versucht, am Anfang des Programms '$DYNAMIC zu schreiben und QB mit dem Parameter /Ah zu starten? Ich denke nämlich auch, dass es an der Gesamtgröße deiner Variablen liegt.
Eine andere Möglichkeit wäre, 2 Zahlen in einem Integer zu verstauen. Ein Integer ist 2 Bytes groß. Wie groß sind die Zahlen, die du in das größte Array reintust? Du könntest auch einen String statt des Arrays anlegen und dann Werte von 0-255 in nur einem Byte speichern und mit ASC(MID$(...)) wieder rausholen.
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Grzfrz

Anmeldungsdatum: 24.04.2005 Beiträge: 2 Wohnort: Österreich
|
Verfasst am: 24.04.2005, 11:32 Titel: |
|
|
Du verdienst einen Orden!
Gleich die erste Lösung mit /Ah und '$DYNAMIC hat prächtig geklappt. Nur, was macht das $DYNAMIC bzw. $STATIC eigentlich? In der Hilfe steht nur: "metacommands that control the allocation of dimensioned arrays" |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 24.04.2005, 12:07 Titel: |
|
|
Zitat: |
Danke, der Applaus ist gerechtfertigt!
|
 _________________ www.piratenpartei.de |
|
Nach oben |
|
 |
|