Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 11.07.2006, 22:08 Titel: Prog funzt net...egal was ich mach |
|
|
folgender sourcecode funktionier nur, wenn ich die zeilen mit nummer 1-6 auskommentiere:
Code: | 'ripper.bas -- zerteilt dateien in "handliche" 8mb-portionen
screen 12
print "Sound Ripper"
sleep
on error goto s
1 open "D:\Diablo II\d2speech.mpq" for binary as #1
2 open "C:\Temp.wav" for binary as #2
3 dim buffer as string * (1024*1024*8)
4 get #1,,buffer
5 put #2,,buffer
6 close #1,#2
s:
if err then print "Fehler ";trim(str(err)); "trat auf."
sleep |
weiß jemand, warum? das prog STARTET noch nicht mal, gibt also nocht nicht mal die PRINT-nachricht aus, wenn EINER der open-befehle noch da ist.... ich habs schon mit cd-laufwerken und so probiert, aber alles klappt nicht... es lässt sich nur starten, wenn keiner der dateihandler aktiv ist.
freebasic 0.16b _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 11.07.2006, 22:45 Titel: |
|
|
Hi Jojo,
ich kann schon erkennen, daß du #1 lesen möchtest und #2 schreiben..
..aber kann FB das auch?
Open erklärt mir, daß ich einen DateiModus angeben muß..
Kann das schon der Fehler sein?
Referenz rulez
Mit welchen Optionen kompilierst du denn das?
Aaahhh, vergiß es, ich hatte mich nur daran gestört, daß du Input und Output nicht angegeben hattest..
..Binary ist aber auch erlaubt *nächtesmalerstreferenzlesenunddannpostensry*
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 12.07.2006, 02:41 Titel: |
|
|
Code: | dim buffer as string*(1024*1024*768)
screen 12
Print "hallo"
sleep |
Komisch...
Dieser code geht auch nicht. Vielleicht ein Bug?
Ich hab auch schon den wert ausgerechnet und dann string*xxxx geschrieben, doch geht auch nicht. Ich weiß aber auch nicht, ob ich die neuste FB Version habe, bin im Moment unter Windows, normalerweise bin ich ja unter Linux. |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 12.07.2006, 09:52 Titel: |
|
|
programmierer hat Folgendes geschrieben: | Code: | dim buffer as string*(1024*1024*768) |
|
Vielleicht wäre ALLOCATE eleganter.
Wobei ich nicht verstehe, wieso du zuerst alles im RAM haben willst.
Wieso nicht Blockweisse?
Zur Berechnung:
1 Byte
*1024
1 Kilobyte
*1024
1 Megabyte
*768
768 Megabyte?!
Dann braucht das Programm ja 1 Gigabyte RAM um sauber zu laufen. _________________ 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 |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 12.07.2006, 18:13 Titel: |
|
|
lol, genau DA ist das Problem.
Man kann nicht mehr Speicher haben, als der PC hat, wo man das Programm kompiliert. Steht in der Referenz.  |
|
Nach oben |
|
 |
jb

Anmeldungsdatum: 14.01.2005 Beiträge: 2010
|
Verfasst am: 12.07.2006, 18:16 Titel: |
|
|
Also ich glaub Jojo hat sich ein bissal verrechnet , steht doch in seinem Code:
Code: |
'ripper.bas -- zerteilt dateien in "handliche" 8mb-portionen
|
jb _________________ Elektronik und Programmieren |
|
Nach oben |
|
 |
Michael Frey

Anmeldungsdatum: 18.12.2004 Beiträge: 2577 Wohnort: Schweiz
|
Verfasst am: 12.07.2006, 19:22 Titel: |
|
|
In Jojos Code steht auch
Code: | dim buffer as string * (1024*1024*8) |
Passt ja zu
Code: | 'ripper.bas -- zerteilt dateien in "handliche" 8mb-portionen |
Ich würde es trotzdem in kleineren Blöcken kopieren.
(Weil's mir in der Regel die Geschwindigkeit nicht Wichtig ist, kopiere ich Byte für Byte) _________________ 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 |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 12.07.2006, 20:36 Titel: |
|
|
Äh, bin ich dumm?
Also ich hab keine Ahnung wie ich auf 768 gekommen bin. |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 12.07.2006, 21:14 Titel: |
|
|
Jojo hat Folgendes geschrieben: | 3 dim buffer as string * (1024*1024*8 ) |
Wenn das geändert wird, in Code: | dim buffer as string * (1024*8 ) | dann 'läuft' das Programm..
Jedenfalls funktionieren dann die Print- und Sleep-Anweisungen..
Scheint also ein Speicher(platz)-Problem zu sein
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 12.07.2006, 21:17 Titel: |
|
|
8 mb hat bisher immer geklappt....
also wenns bei euch genrell an dem string liegt....muss ich mal weiterschaun... _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 12.07.2006, 21:43 Titel: |
|
|
Jeweils vor und nach der Dim-Anweisung steht ein ?Fre/1024/1024..
Wenn ich in der Dim-Anweisung 1024*1024 schreibe => Absturz
Also ist der Fehler bei 1024*1024 zu suchen, da Strings ja bis 2GB lang sein dürfen..
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 12.07.2006, 21:53 Titel: |
|
|
ja, aber 8 mb is ja um einiges weniger als 2 gb  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 12.07.2006, 21:55 Titel: |
|
|
hat jemand von 2GB statischen strings gesprochen? *g* _________________ "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 |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 12.07.2006, 23:25 Titel: |
|
|
Ooops, passen 2GB statische Strings nicht in 256 MB Hauptspeicher?
Dann muß ich wohl mein Swapfile vergrößern  _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 16.07.2006, 22:05 Titel: |
|
|
seltsamerweise funzt das ganze bei mir nur bis 1016 kb oder so.... ab 1017 is schluss!
früher (ältere fb version?!) hatte alles auch mit 8....16 mb gefunzt! _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Mongoose
Anmeldungsdatum: 23.07.2006 Beiträge: 1
|
Verfasst am: 23.07.2006, 15:54 Titel: |
|
|
Probiers mal mit dem Compilerschalter -t 8388608, damit vergrösserst du den Satck für das Programm auf 8 MB, dann solte es gehn. Standardmäßig hat man nur 1 MB Stack _________________ There are only 10 kinds of poeple: Those who understand binary and those who don't. |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 26.07.2006, 20:12 Titel: |
|
|
Nicht so wild mittie jungen Pferde
Wie ich gerade herausgefunden habe, vergrößert -t 2048 den Stack auf 2MB..
Bei -t 8388608 bleibt es dem geneigten Leser überlassen, auszurechnen, wie
groß der Stack dann wird
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 26.07.2006, 20:19 Titel: |
|
|
@ytwinky:
Och, also 8 Gigabyte. Was ist daran so besonders? Oder hast du etwa noch einen Rechner aus dem 21. Jahrhundert?
Ich glaub, er dachte, dass das in Byte angegeben wird.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 26.07.2006, 20:38 Titel: |
|
|
@Mao:
Mal ganz ehrlich, auch wenn das wie Nestbeschmutzung aussieht..
wenn ich einen Rechner hätte, der 8GB Stack vertrüge, dann wäre die
Analog/ISDN-Liga um noch ein Mitglied kleiner
btw:
Die fbc-Optionen habe ich um einen Hinweis ergänzt..
Analoge Grüße
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 27.07.2006, 13:21 Titel: |
|
|
Was brauchst du Highspeed Internet zum Surfen? Doch nur zum Downloaden!
Ein richtige Programmierer nimmt keine "fremden" Programme, er programmiert sie sich selbst. So, jetzt nenn mir ein Grund, warum ich keine 8 GB Stack + ISDN-Anschluss haben sollte.  _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
|