|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 02.02.2006, 11:51 Titel: |
|
|
So, ich wollte dir eigentlich 'ne Nachricht mit den genauen Problemen schreiben, aber heute funktionierte alles problemlos.
Super Spiel! _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 02.02.2006, 15:45 Titel: |
|
|
Jo, danke
in jedem fall hab ich jetzt wieder die motivation, weiter zu machen!
edit: da ja alles zu funktionieren scheint, gibt's jetzt die offizielle version hier! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 07.02.2006, 21:50 Titel: |
|
|
sorry 4 doppelpost,aber das is schon so lang her...
@ Eastler_Dart: Du stehst jetzt in den credits,schließlich hab ich es deiner korrektur zu verdanken,dass das spiel wieder läuft! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 12.02.2006, 19:26 Titel: |
|
|
Hier ist nochmal der aktuelle Source.
Das Problem ist nämlich nochmal auf einem anderen PC aufgetaucht. Ich konnte es wieder beim Laden einer Grafikdatei finden... Diesmal beim Laden der Obj-* Dateien (Siehe loadgrafix-sub).
Sieht vielleicht jemand wieder falsche ImageCreate/Get Anweisungen? Ich habe nochmal alles überprüft, aber es scheint keine falsche Definition vorhanden zu sein. Treten bei euch vielleicht auch andere Ergebnisse wieder auf? Auf dem Entwicklungs-PC tritt (mal wieder...) kein Fehler auf.
danke im Vorraus
-Jojo _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 17.02.2006, 23:26 Titel: |
|
|
wär ganz praktisch, wenn's noch ein paar beta-tester gäbe, die meine absturz-ergebnisse bwestätigen könnten.... _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Michael Frey
Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 18.02.2006, 09:52 Titel: |
|
|
Fruit hat Folgendes geschrieben: | Ein Fehler trat auf.
Fehlernummer: 0 bei Zeile -1
Das Programm kann versuchen, fortzufahren.
Fortfahren [J/N] |
fbc-output hat Folgendes geschrieben: | Command executed:
"C:\FreeBASIC\fbc.exe" "C:\FreeBASIC\fruit-unstable\Fruit.bas" -ex
Results:
Compilation successful
Generated executable: C:\FreeBASIC\fruit-unstable\Fruit.exe
System:
FBIde: 0.4.5
fbc: FreeBASIC Compiler - Version 0.15 for win32 (target:win32)
OS: Windows XP (build 2600, Service Pack 2) |
Fehlen mir irgendwelche Dateien?
Oder ist das der Fehler den du meinst? _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 19.02.2006, 22:03 Titel: |
|
|
Jaja, "wie immer". Das liegt wohl daran, dass wieder auf unallocateten speicehr geschreiben wird. aber wo? ich find nix! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Michael Frey
Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 20.02.2006, 19:43 Titel: |
|
|
Echt mühsam das Bugfixen in FB ..
Ich bin in der Subroutine "Sub LoadPicture (File As String)" wobei File="Obj-1" ist.
Nun geht's weiter in Richtung LoadSize2 ...
Jetzt komm ich nicht mehr weiter, den Teil des Codes verstehe ich nicht. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
|
Eastler_dart
Anmeldungsdatum: 25.09.2005 Beiträge: 177 Wohnort: Baden-Würtemberg + Sachsen
|
Verfasst am: 20.02.2006, 21:55 Titel: |
|
|
So, hab nochmal deinen Source gezogen.
1) suuuuuper
gefällt mir gut, dein Spiel. Bin zwar kein gamer, habs trotzdem 2mal gespielt , konnte nicht anders - grins
2) nur Fehler hab ich halt keinen gefunden. Hm. Drum hier ganz deutlich: ich hab 256MB Ram auf m Rechner, check mal bei deinen Testrechnern durch, ob derjenige, der muckt, weniger Ram drauf hat. Vielleicht reicht ja einfach der Ram nicht aus.
Am Grafik-Ram kanns auch nicht liegen, ich hab hier 4MB (in Worten VIER - grins), weniger wird wohl keiner haben, und bei mir läufts. ModeX ist auch ne relativ sicherer Auflösung, wär schon verteufelt, wenn dein PC mit Fehlermeldung ModeX nicht richtig kann.
Sound scheint bei mir fehlerfrei zu laufen, hab aber keine Lautsprecher dran, hör also nix.
Und mehr ist ja nicht:
Ram, Grafik, und Sound.
Tippe mal auf Hardware-Unterschiede, inkompatible Soundkarte kann auch verworrene Fehler auslösen.
Hoffe du findest den Fehler. Versuche immer die Hardware-Daten der Rechner zu vergleichen, bei denen ein Fehler auftritt. Baujahr Grafikkarte könnte auch interessant sein, das Alter dürfte aber schon mit Grafik-Speichergröße zu prüfen sein.
hier meine Testhardware auf der Fruit läuft (1-Spielermodus):
CPU 200MMX, RAM 256MB, Grafik: S3 Virge DX 4MB, Monitorauflösung: 1280x1024, Sound: SoundBlaster AWE32
nochmals Kompliment
Eastler
P.S: was hat es eigentlich mit der "Readme.bas" auf sich?
hab fruit.bas unter FB16Win compiliert! _________________ Kaum macht mans richtig, schon geht's |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 20.02.2006, 22:05 Titel: |
|
|
Readme.bas: Das ist die tolle Amiga-Style Readme-datei
Also, LoadSize² ist ein RLE-Decoder, von mir selbst entwickelt. der sollte eigentlich fehlerfrei sein.
Komisch, ich hab 512 mb ram, und es funzt nicht. bei mir scheint's auch die OBJ-1 datei zu sein. aber auf meinem rechner mit 256 mb ram geht's fehlerfrei.......
ich finde einfach nix _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 20.02.2006, 22:19 Titel: |
|
|
@Eastler_Dart: Wieder mal OT, aber: so 'ne große Auflösung macht deine GraKa mit?? *erstaunt-sei* _________________ Eine handvoll Glück reicht nie für zwei.
--
|
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 20.02.2006, 22:35 Titel: |
|
|
die größte auflösung ist immer noch der startbildschirm: 640x480x256 (im hintergrund werden paletten geladen, deswegen die 256c).... wer das net kann
aber das problem bleibt! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
Eastler_dart
Anmeldungsdatum: 25.09.2005 Beiträge: 177 Wohnort: Baden-Würtemberg + Sachsen
|
Verfasst am: 21.02.2006, 13:24 Titel: |
|
|
Hi Leute
@Mao: Ups, hab nachgeguckt, über Nacht ist meine Grafikkarte einfach so zu ner Viper V330 (Riva128) Mutiert , wie das nun passiert ist, keine Ahnung -sorry
@Sebastian: Dann laufen noch n paar von den Tollen DXern?
DX-2 waren doch 40/50/66Mhz, oder nicht? Hab mir n DX-4/100 und n DX-4/133 aufgehoben, nur kein Board mehr dazu.
Fährst du darauf ein Windows?
@JoJo: Bin/war irgendwie n bisserl von der Rolle. Hab mal den ganzen Thread überflogen.
Du hattest geschrieben, daß die "unwichtigen" Ram-Anpassungen doch Schuld hatten. Da hast du Recht. Ich hatte nur nach "überschreiben von unallocateten Speicher" gesucht.
Mir war nicht klar, daß ein falsches Dim/Allocate für ein Bild hinterher falsche Größenangaben beim Bild-wieder-anzeigen zur Folge hat.
Auch mit der Bitmap-Struktur läufts dann etwas holperig. sorry nochmal, aber du hast das ja super hingekriegt.
Aber jetzt aktuell, bin mir nicht so sicher, wo denn nun bei euch ein Fehler auftritt
Beim Starten? oder läuft es ein Stück und meckert erst im Spielverlauf? Wie sieht der Fehler denn aus?
Falls die Fehlerbeschreibung, welche Michael Frey zitiert, der aktuelle Fehler ist, dann scheint das ja kein Fehler zu sein, denn Fehler-Nr: 0 heißt doch "kein Fehler aufgetreten". Dabei stört mich aber, daß der Fehler in Zeile Nr -1 stehen soll
Vielleicht wird die erzeugte Fehlernummer ja gar nicht wirklich angezeigt,
ändere mal auf dem Testrechner die Fehlerbehandlungsroutine, laß die Formatierung etc weg, Schreib einfach: "Print Err" ohne trim oder str$
in einem anderen Thread hat ytwinky einige FB-Fehlernummern ermittelt: Code: | Laufzeitfehler Meldung
1 illegal function call
2 file not found
3 file I/O error
4 out of memory
5 illegal resume
6 out of bounds array access
7 null pointer access
8 no privileges
9 "interrupted" signal
10 "illegal instruction" signal
11 "floating point error" signal
12 "segmentation violation" signal
13 "termination request" signal
14 "abnormal termination" signal
15 "quit request" signal
ab hier(bei ~14286 habe ich abgebrochen) kommt nur noch:
nr at line: 6
(Thanks at ytwinky)
| aber das nützt hier erst was, wenn FB den Fehler identifizieren kann und ne Nummer dazu rausgibt
Irgendwie sollte die Fehlerquelle mal eingekreist werden. Folgende Vorschläge:
a) Virenscanner / Firewall und sonstige Win-Progs abschalten, reines Win ohne alles, und nochmal testen
b) am Fehler-Testrechner unter anderen Betriebssystemen laufen lassen (falls möglich), vielleicht im reinen DOS? Mode-X läuft derzeit unter FB-DOS (glaub ich ). Falls du das Compilieren für DOS nicht hinkriegst, kann ich dir das machen (ich fahre W98, und da geht FB-Dos ohne Dos zu Booten). Falls der Testrechner kein DOS hat, ggf mit Diskette booten, hat der Rechner ein Diskettenlaufwerk?
Aber so richtig wirklich hab ich noch keine Idee zum Fehler. Ist nur merkwürdig, daß FB keine Fehlernummer dazu hat
man liest sich
Eastler _________________ Kaum macht mans richtig, schon geht's |
|
Nach oben |
|
|
MisterD
Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 21.02.2006, 15:42 Titel: |
|
|
vielleicht kannst du mit http://referenz.freebasic.de/?s=assert was anfangen.. _________________ "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra |
|
Nach oben |
|
|
Eastler_dart
Anmeldungsdatum: 25.09.2005 Beiträge: 177 Wohnort: Baden-Würtemberg + Sachsen
|
Verfasst am: 21.02.2006, 16:03 Titel: |
|
|
konnte nochmal etwas Zeit stehlen, um den Source zu checken. Dabei ist mir die Routine LoadSmallFont aufgefallen:
in Original von dir: Code: | Sub LoadSmallFont(File As String)
'1x5 bis 5x5
Screenlock
Screenset 1
LoadPicture file
MaxLetters=1
For L=1 To 255
SmallLetter(L)=0
Next
For L=0 To 320
If Point(L,0) >32 Then
If SmallLetter(MaxLetters)=0 Then MaxLetters=MaxLetters-1:Exit For
MaxLetters=MaxLetters+1
Else
SmallLetter(MaxLetters)=SmallLetter(MaxLetters)+1
End If
Next
X=0
For L=1 To MaxLetters
SmallFont(L)=ImageCreate(SmallLetter(L),5)
Get (X,0)-(X+SmallLetter(L)-1,4),SmallFont(L)
X=X+SmallLetter(L)+1
Next
Screenset 0
Screenunlock
Screenset 0
'print MaxLetters
End Sub |
Hab erst analysiert und dann damit rumexperimentiert. Die imagecreates und die dazugehörigen Get passen aufs pixel genau, das ist in Ordnung. Die grafikdatei, aus der der Font gelesen wird, ist auch ok. hm.
Beim experimentieren konnte ich "euren" Fehler (Error 0 in Zeile -1) mit folgender Ergänzung auch bei mir "erhalten":
Code: | Sub LoadSmallFont(File As String)
'1x5 bis 5x5
Screenlock
Screenset 1
LoadPicture file
MaxLetters=1
For L=1 To 255
SmallLetter(L)=0
Next
For L=0 To 320
'******Eastler reingesetzt*****
Screenunlock
'Screenset 0
PRINT " Eastler: L=";L;
'DO : LOOP WHILE INKEY$ = ""
'Screenset 1
Screenlock
'******Eastler reingesetzt*****
If Point(L,0) >32 Then
If SmallLetter(MaxLetters)=0 Then MaxLetters=MaxLetters-1:Exit For
MaxLetters=MaxLetters+1
Else
SmallLetter(MaxLetters)=SmallLetter(MaxLetters)+1
End If
Next
X=0
For L=1 To MaxLetters
SmallFont(L)=ImageCreate(SmallLetter(L),5)
Get (X,0)-(X+SmallLetter(L)-1,4),SmallFont(L)
X=X+SmallLetter(L)+1
Next
Screenset 0
Screenunlock
Screenset 0
'print MaxLetters
End Sub |
Wenn ich dabei aber die Zeilen "Screenset 0" und "Screenset 1" nicht auskommentiere, dann läuft alles normal ab. Hm.
Das läßt für mich den Schluß zu, es könnte mit Screenset und Screenlock/-unlock zusammenhängen, ein Timing-Problem oder sowas.
Da bei mir im Originalzustand kein Fehler auftritt, kann ich auch nicht weiter Probieren.
Lade bei dir mal deinen Source und lösche/auskommentiere am Ende der SUB LoadSmallFont die zeile "Screenset 0", am besten diejenige Zeile, die VOR "Screenunlock" steht (bei mir ist das Zeile Nr. 1069). Habe ernsthafte Hoffnungen, das es helfen könnte, wenn "Screenset 0" nur einmal drinn steht.
Auch hab ich gelesen, das man den Screen nicht zuuuu laaaange gelockt lassen soll. Probier mal testweise, zwischen den For-Next-Schleifen einfach ein Screenunlock : Screenlock zu setzen, sodaß Windows immer wieder mal ein paar milisekunden am Screen werkeln darf. Vielleicht sollte zwischen das unlock und lock auch ein Wartebefehl, sodaß Win etwas länger Zugriff auf den Screen hat.
Viel Glück damit
Eastler _________________ Kaum macht mans richtig, schon geht's |
|
Nach oben |
|
|
Eastler_dart
Anmeldungsdatum: 25.09.2005 Beiträge: 177 Wohnort: Baden-Würtemberg + Sachsen
|
Verfasst am: 21.02.2006, 18:37 Titel: |
|
|
Nachschlag zur Fehlersuche:
Wenn man die zeile "On Error Goto fehler" ausremmt, also FreeBasic selbst die Fehlerkontrolle übergibt, dann kommt eine Fehlernummer:
Aborting due to runtime error 12 ("segmentation violation" signal)
Beachte: gilt nur für meinem künstlichen Fehler, wie im Post zuvor beschrieben
Lesen kann man das aber nur, wenn man das kompilierte Programm mittels Datenumleitung z.B.: Fruit.exe > Meldung.txt startet und danach Meldung.txt öffnet.
Jetzt müßte auf einem Testrechner in der Originalen Fruit.bas das "ON ERROR GOTO fehler" ausgeremmt werden, neu kompilieren und dann mit Datenumleitung testen, ob auch dort der Fehler 12 entsteht
bis denne
Eastler _________________ Kaum macht mans richtig, schon geht's |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 21.02.2006, 18:42 Titel: |
|
|
@Eastler: Ja, ich hab noch insgesamt 3 486DX2er, 2 davon so wie sie sind lauffähig (beide IBM), bei dem anderen (Marke No-Name) ist die BIOS-Batterie hinüber, leider müsste ich die mühselig entlöten und eine neue einlöten...
Auf einem der beiden funktionierenden Rechner habe ich DOS zu Steuerungszwecken (COM/LPT mit QB) und auf dem anderen, dem "Microchannel" (*schwärm*) läuft sogar Windows 95. Es ist aber alles ziemlich langsam: Wenn man eine WordArt in Word 97 einfügen will, hat das Teil 'ne gewisse Zeit zu tun. Auf den PC gehört im Original Windows 3.1. _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
Michael Frey
Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 21.02.2006, 19:47 Titel: |
|
|
Ich hab mal den Code frisch runtergeladen und das "On Error Goto fehler" auskomentiert, der Fehler lautet nun anders.
Zitat: | Aborting due to runtime error 12 ("segmentation violation" signal) |
Echt hilfreich der Debug Modus ... .
Mal sehen was sich machen lässt.
An der Firewall liegt es glaube ich nicht, obwohl ich sie beendet habe kommt der Fehler. _________________ http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight |
|
Nach oben |
|
|
Jojo alter Rang
Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 22.02.2006, 22:07 Titel: |
|
|
Ja, das mit screenset/lock/unlock kann wirklich stimmen... wisst ihr, was mich das auch vermuten lässt?
wenn ich die LoadPictures auskommentiere, bleibt der bildschirm ja schwarz! Wenn ich dieses schwarz GETte, dann stürzt bei mir auch die fehlerfreie version ab. wenn ich aber das loadpicutre drinlsser,dann nicht! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
|
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|