Hallo, in meinem rom-Verzeichnis sind über 600 der Dateien defekt (und ich meine hier nicht die "non working"-Liste). Die Games erscheinen als nicht vorhanden (z.B. 1941, Outrun, ...).
Wenn ich die ZIPs direkt öffnen will, kommt eine Meldung "Archiv beschädigt - keine gültige ZIP-Datei". Wie kann es sein, dass eine derart grosse Menge an ZIP-Dateien kaputt sein sollen? Oder liegt die Ursache doch woanderst? Hat jemand ne Idee
Noch' paar Fakten:
- Mame 0.95, roms ebenfalls aus einem "0.95-Paket" (torrent) - Windows 2000 SP4 - geprüft mit PowerArchiver 2003 und WinRAR
« Zuletzt bearbeitet: 08.07.05 um 00:36:10 von DeinOpa »
Hmmm...schonmal versucht Mame neu zu installieren?? Ansonsten könnte ich mir nur vorstellen dass die Dateien wirklich kaputt sind die du dir von Torrent gezogen hast
Hatte das Problem mal mit Mame-Roms, die ich mir von Romnation runtergeladen hab. Aus irgendnem Grund hats mir die Zip-Archive nur zu nem Teil runtergeladen. Merkte man auch daran, dass die Dateigrössen kleiner war, als das, was auf RN dranstand. Bei nochmaligen DL-Versuchen gings dann.
Kannst ja mal folgendes Probieren: geh auf Romnation.net und kuck da mal in der DL-Liste - da steht für jedes Rom, wie gross es sein sollte. Wenn deines kleiner ist, weisst Du immerhin, dass da wer fehlerhafte Roms verbreitet
Das Prob gibts aber öfter - hatte ich mich schon bös ärgern dürfen bei fehlerhaften zum DL angebotenen Spielen für Neorage
Gerade bei http-Downloads kommt es häufig (je nach Server) vor, dass der Download einfach nach einer gewissen (willkürlichen) Zeit abbricht. Es gibt tatsächlich Server bei denen das ständig passiert, was äußerst nervig ist. Abhilfe schafft ein Download-Manager wie GetRight, der die abgebrochenen Downloads automatisch wieder aufnimmt.
Mich wundert es dass das Problem bei einer torrent-Datei auftritt. Hat dein BitTorrent denn fertig geladen? Denn du kannst nur sichergehen dass die Dateien fertig sind wenn bei BitTorrent "Done" dransteht und du auf "Finish" gehst (oder so ähnlich). Wie groß sind die Dateien? Wenn sie nur 1KB groß sind ist klar dass sie nicht fertig heruntergeladen (genau genommen gar nicht angefangen) wurden. Funktionieren andere Roms aus deinem Paket?
Am Mame wird es wohl kaum liegen, schließlich hat ja selbst der Explorer Probleme damit die Dateien zu öffnen.
An Mame liegts auf keinen Fall, das Programm ist ok. Auch checkt Bittorrent die Dateien per MD5, hier kann also nix schiefgehen. Hab jetzt auch mal eine kleinere ROM-Sammlung gesaugt, hat alles funktioniert. Vermutlich sind tatsächlich einige Torrent-Romset massiv fehlerhaft. Oder die Files sind - trotz richtiger Grösse - wirklich erst dann lesbar wenn ALLE Dateien empfangen und das Torrent komplett fertig ist. Da bin ich mir noch unsicher ... Daher evtnuell noch eine Frage an die Experten: Wenn ein Torrent aus mehreren Dateien besteht, die nacheinander (sequentiell) gesaugt werden - sind die Dateien dann trotzdem erst vollständig wenn das Torrent komplett ist... (also vielleicht gibts ja sowas wie ein "Freigabe-Bit" ?)
« Zuletzt bearbeitet: 09.07.05 um 00:25:36 von DeinOpa »
Hättest du gleich gesagt dass die Torrent Dateien noch nicht komplett gezogen waren hätte ich dir sofort sagen können dass es daran liegt. Die Datei die du ziehst besteht aus mehreren Sektoren...je nachdem welche gerade verfügbar sind werden die natürlich zuerst gezogen, d.h. die Datei kann vom Mittel- und Endstück schon gezogen sein aber der Anfang fehlt noch.
Na genau das sagte ich doch in meinem beitrag Es ist erst fertig wenn BitTorrent das auch meldet. BT erstellt immer sofort die Dateien und "füllt" sie dann mit der Zeit sozusagen aus. Also erst zuende laden, dann spielen.
naja, SO offensichtlich ist das aber nicht... ich weiss schon dass eine Datei nicht "plötzlich" da ist
Beispiel: hat ein rom 530 kb, so wird es geladen, wenn es "an der Reihe" ist, vorher steht es - je nach client - entweder mit 0 kb oder garnicht im Verzeichnis. Nun könnte man meinen, sobald die Datei die erwartete Grösse erreicht hat, nicht mehr weiterläd und die nächste Datei zu laden anfängt, dass diese dann vollständig ist. Immerhin werden die roms ja schön der Reihe nach gesaugt. Trotzdem ist das ZIP scheinbar "defekt". Ich näher mich einer Lösung: ich vermute, dass Bittorrent auch fertige Teile noch mit einem Hash versieht und dieses erst dann entfernt (quasi die Datei "freigibt") wenn das gesamte Torrent geladen hat. Ich habs so auch bei vielen mp3-Files beobachtet. Nur verwunderlich ist, dass einige fertig geladene Dateien (zip, mp3) auch schon direkt brauchbar aus dem Torrent-Temp-Verzeichnis sind. (Hierum geht es mir eigentlich: scheinbar komplette Files direkt aus dem Temp-Verzeichnis übernehmen).
Mein Problem hat also eigentlich mit dem Thema des Forums nicht unbedingt was zu tun (sorry an alle Kleinlichen *g*). Hat jemand einen Link, wo eventuell genau zu dem beschrieben Vorgang genaureres nachzulesen ist
(Ich benutze übrigens das edonkey-BT-Plugin, hate aber auch schon den Bittorrent-Client versucht)
« Zuletzt bearbeitet: 10.07.05 um 02:30:07 von DeinOpa »
Die eigentliche Frage kann ich nicht beantworten, aber zu den MP3s:
MP3s an sich funktionieren auch "halb" - kenn mich mit programmcode zwar nicht aus, vermute aber, dass der Dateiinhalt linear ist, sprich: Das Ding wird halt von vorne bis hinten abgespielt. Wenn da n Teil fehlt, is das wurscht, weil das ja eh nicht zwingend gebraucht wird. Bei manchen Videoformaten ists afaik ähnlich. Bei Zips, Programmen, whatever, sieht das halt anders aus.
Ja, so in etwa, das liegt unter anderem auch daran das mp3's an sich keine "steuer commands" für den PC enthalten. Bei .zip verhält es sich etwas anders, diese Archive eenthalten ja wiederherstellungsinformationen für das pack programm, je mehr Daten hier korrupt sind desto schwerer wird es für das pack programm alles korrekt wiederherzustellen. Das nächste problem ist: Ein einzelner Fehler in einer zip/rar Datei wirkt sich wesentlich schlimmer aus. Denn das Prinzip ist verinfach ausgedrückt dieses: Statt einer langen Zahlenfolge wie 1111 wird einfach 4x1 geschrieben. In wirklichkeit sieht das ganze natürlich etwas anders aus aber das Prinzip folgt diesem Muster. Jetzt reicht es natürlich wenn hier einmal der Multiplikator fehlt und schon kann das pack programm raten und raten.
Warum sich das jetzt bei roms und ähnlichem besonders blöd auswirkt? Generell muss ausführbahrer Programmcode so vollständig wie möglich sein denn ansontsen passiert es das dort zum Beispiel variablen nicht mehr definiert sind, loops entstehen und ähnliches. Hier kann man auch nicht einfach einen Teil überspringen und mit dem nächsten weitermachen.
Ich hoffe das ist in etwa verständlich, etwas professioneller, dafür auch komplizierter wird das ganze in fast jedem C-Buch beschrieben.
nochmal konkret meine Frage: Schützt ein Torrent-Client die schon vollständig geladene Dateien (z.B. durch anfügen eines Hash), so dass diese erst nach dem vollständigen Ende des Torrents wirklich lesbar/verwendbar werden. Und wenn ja: warum wirkt sich dass nicht auf jede sondern nur auf z.B. jede fünfte Datei aus?