Neue Rubrik (Jof, 26. Jan 1995, 02:33:06):
... irgendwer wollte die doch haben?

-----------------------------------------------------------------------------



gesucht (Orktoeter, 26. Jan 1995, 08:31:06):
Erstmal Dank an Jof fuer die Promte erlediung :)
Ich suche eine Festplattencontrolerkarte fuer meinen Atari...
bin im besitz einer Megafile 30 :) Festplatte, nur mein Mfm-contoler hat sich
verabschiedet, falls noch jemand so etaws irgendwo im Keller oder so liegen
hat... ich waere dankbar dafuer :)
  Orktoeter :)

-----------------------------------------------------------------------------



Oh Jof, die Paderborner kommen!!! (Ronda, 26. Jan 1995, 13:51:34):
Hallo lieber Muensteraner!
Ein paar nette Paderborner suchen zur Party leider immer noch Platz
fuer ihre Luftmatratzen...
Wer haette die Moeglichkeit, drei bis vier (fuenf???) Muddies unterzubringen?
Wir bieten im Gegenzug Fuehrung durch das heilige Paderborn samt Verbrennung
als
Ketzer (wahlweise auch Essen 1 in der Mensa...)
Ueber ernstgemeinte Antworten wuerde sich besonders
Ronda freuen, welche die Bande mit dem Mini kutschieren soll...
(Legt bitte nen Dosenoeffner bereit fuer die Leute auf der Rueckbank =:) )
Tschuess,
                    Ronda
Ps: Ueber nicht ernstgemeinte Angebote freue ich mich natuerlich auch - warte
    schon auf den Rotfl - BUMS!!!

-----------------------------------------------------------------------------



 (Elric, 26. Jan 1995, 15:45:25):
suche Rahmen fuer Yamaha SR 500.
Elric.

-----------------------------------------------------------------------------



Suche Ueberschriften fuer Elrics Artikel (Yendi, 26. Jan 1995, 16:14:02):

-----------------------------------------------------------------------------



Hochzeit zu bieten! (Ronda, 26. Jan 1995, 18:17:35):
       SUCHEN NICHT MEHR-STOP-HABEN GEFUNDEN-STOP-BIETEN HOCHZEIT!!!

In einer lauen Sommernacht (das ist erstunken und erlogen...) trafen sich die
fuereinander bestimmten ANCALAGON und RONDA, schauten sich in die Augen (auch
das stimmt nicht, dauernd waren Silvana und Tonya im Weg...) und der Funke
flog ueber. Nachdem die Kneipe wieder geloescht war (tja, wer mit nem Drachen
anbandelt, muss auf alles gefasst sein!), entschieden sie sich, das Chaos noch
weiter zu vergroessern, indem sie ihre zerstoererischen Faehigkeiten
zusammenfuegen.

                        !!! DAS MORGENGRAUEN SEI GEWARNT !!!

In Zukunft ist mit brandstiftenden, vorlauten Sproesslingen der beiden zu
rechnen! (Von welchem der beiden Elternteile was stammt, wird hier nicht
verraten....au! Ronda! Nicht treten!!!)
Damit diese Verbindung auch Rechtens sei, wird hiermit kundgetan, dass die
beiden, falls der Prieser nicht wieder gemeuchelt wurde,

             am MONTAG, dem 30.1.1995 gegen 10.00 Uhr

getraut werden(falls die Braut bis dahin aus den Federn gekommen ist, sehr
verpennt die Frau...)Gaeste sind natuerlich herzlich eingeladen, von
Beileidsbekundungen moege Abstand genommen werden.

       SUCHEN NICHT MEHR-STOP-HABEN GEFUNDEN-STOP-BIETEN HOCHZEIT!!!


-----------------------------------------------------------------------------



Suche Turbokarte A2000 (Buri, 27. Jan 1995, 17:21:28):
Hallo Leute !
Ich suche eine TTurbokarte fuer meinen Amiga 2000, sie kann auch gebraucht
sein!!
Wenn jemand eine hat kann er mir mal schreiben!
Ich nehme auch eine 68020 Turbokarte !!!

Bis dann
Buri
 .

-----------------------------------------------------------------------------



Magic The Gathering ... (Looser, 30. Jan 1995, 13:32:13):
Hallo Muddies !
Ein Verrueckter Looser sucht Leute zum Tauschen und Spielen von
Magic: the Gatherig - Ihr wisst schon, dass daemliche Kartenspiel ...
Ich halte mich zur Zeit in Heidelberg auf, bin aber eigentlich in Tuebingen
zum Studieren bzw in Herford (bei Bielefeld) wohnhaft ...
Wenn also jemand Lust hat, a) Karten loszuwerden
oder b) zu spielen,
und c) vielleicht noch bei mir in der Naehe wohnt, der soll sich bitte
bei mir melden (via mudmail) - ich freue mich ueber jeden Suechtigen mehr

         Ciao,
           Looser ;-)

-----------------------------------------------------------------------------



Pentium gesucht (Icet,  1. Feb 1995, 04:52:18):
Suche bugfreien Pentium 60Mhz), da Pentium-Hotline immer besetzt.

-IceT (zumindest braucht mein PPP keinen Coproz ;-)

-----------------------------------------------------------------------------



Re: Pentium gesucht (Fraggle,  1. Feb 1995, 11:33:51):
#! rn=Icet rt=791610738
Ich hab mal gehoert, bugfreie Pentiums sollen nur als 75 bzw. 100 MHz
produziert werden, sollten aber bei Deinem Haendler umtauschbar sein. Genaues
weiss ich aber auch nich.
Fraggle

-----------------------------------------------------------------------------



Re: Re: Pentium gesucht (Beldin,  1. Feb 1995, 11:45:44):
#! rn=Fraggle rt=791634831
Kommt drauf an WO er es gekauft hat...
Bei Vobis ist jedenfalls NIX mit Umtausch - nach dem Motto: 'Das ist Intels
Aktion nicht UNSERE' :))).
Und bugfreie werden meines Wissens zumindest in 90/100 mHZ und vielleicht
auch 60 produziert, wobei die ersten beiden sicher sind!

Bye, und viel Spass beim Suchen wuenscht

Beldin ;)

-----------------------------------------------------------------------------



Re^3: Pentium gesucht (Grimmborn,  1. Feb 1995, 13:12:49):
#! rn=Beldin rt=791635544

Hmm, bugfreie Prozessoren? Wie kommt ihr da drauf? Und: Wie wollt ihr das
getestet haben?

Kopfschuettelnd ueber die Technigklaeubigkeit der Leute,

Grimmborn der Athist. Hat was mit "Unglauben" zu tun...

-----------------------------------------------------------------------------



Re^4: Pentium gesucht (Beldin,  1. Feb 1995, 13:53:55):
#! rn=Grimmborn rt=791640769
Ich glaube er meinte: 'FDIV-Bug-freie Prozessoren' das gaebe dem Ganzen doch
ein voellig anderes Licht, nicht wahr Grimmi?
CU :)

-----------------------------------------------------------------------------



HJEP!!! Die Paderborner suchen immer noch!!! (Ronda,  1. Feb 1995, 16:51:50):
Hallo liebe Muensteraner!!!
Wir suchen leider immer noch eine Gelegenheit, unsere Schlafsaecke
auszubreiten...
Bitte erbarmt Euch unser, sonst muss Ronda nachts zurueck nach Paderborn
fahren... oder wir muessten gegen 22.00 in der Jugendherberge sein!
Bitte, bitte: suchen also noch 3 oder 4 Plaetze a 2*1 Meter zum Schlafen...
Bieten im Gegenzug pflegeleichte, fast stubenreine Gaeste, die auch nen paar
Kilometer vom Treffpunkt entfernt untergebracht werden koennen (darf ich halt
nichts nettes Trinken...)
Bitte (irgendwie hab ich sehr viele "Bittes" hier drin :) ) meld Dich bald...
Tschuess,
           Mio und Ronda...
Ps: Argoch kommt mit uns mit, und Kati bearbeiten wir noch, damit sie
mitkommt..

-----------------------------------------------------------------------------



Re^5: Pentium gesucht (Loco,  1. Feb 1995, 19:24:13):
#! rn=Beldin rt=791643235
Wie waere es mit:
   Leicht unterdurchschnittlich buggy Prozessoren
? Nur als noch ein Vorschlag zur Formulierung.
  Loco

-----------------------------------------------------------------------------



Re^3: Pentium gesucht (Icet,  2. Feb 1995, 01:42:26):
#! rn=Beldin rt=791635544
Ohje....
Also, es werden natuerlich auch 60re umgetauscht...
Ausserdem hat die Umtauschaktion *nicht* mit dem haendler zu tun. Wie auch
hab ich doch meinen Pentium schon laenger als es die Garantie
erlaubt :)
Ich hab mal mit nem befreundeten Haendler gesprochen. Er meinte, er *darf*
gar keine Pentien austauschen zum Verkauf, sondern
muss seine Pentien vertkaufen und die Kaeufer
umtauschen lassen :(
Auf alle Faell scheisst der Hund ka Gummibaell und
umtauschen kann jeder, egal, welches Modell, wie alt oder sonstwas
Nur intakt muss er sein :)

-IceT (wollte sich nur ueber die ueberfuellte Pentium-Hotline beschweren)
P.S.: $/&%(#-Bettler, der vernichtet mein Layout hier...)

-----------------------------------------------------------------------------



Re^4: Pentium gesucht (Pilgrim,  2. Feb 1995, 20:23:19):
#! rn=Icet rt=791685746
Hi,
o.k., hier mal die Informationen, die ich zum Umtausch von
Pentium-Prozessoren habe (aus PC Professionel 2/95):

"Intels Austausch-Aktion
Intel tauscht nun doch alle Pentiums aus - und entschuldigt sich sogar
An 20 Dez. 94 kuendikte Intel an, alee falsch rechnenden CPUs auszutauschen
[..]
ein "no-question-asked" Umtausch-Aktion [..]
Intel wird diese Austauschprozessoren direkt an PC-Anwender schicken, die den
Prozessor selbst austauschen wollen[...]
Ausserdem ist Intel in Verhandlungen mit Dienstleistern, die den Pentium
kostenlos auswechseln [..]
Weiter Informationen gibt es unter der INTEL HOTLINE: 0130/818921
"

Pilgrim
p.s. : die umtauschaktion gilt "fuer alle aktuellen Versionen des Pentiums"

p.p.s: hofe gedient zu haben
p.p.p.s: entschuldigt die typos

-----------------------------------------------------------------------------



P-Bug Umtausch (Freund,  8. Feb 1995, 13:42:50):
Hi, seit Montag sollten(!) nur noch Bugfreie Prozessoren auf
dem MArkt sein. Ich arbeite bei einer Muensteraner Computerfirma,
und wir haben sie Montag bekommen.
Umtauschen duerfen wir nur UNSERE Pentiums (Eigenbedarf... :).
Ansonsten muss der Kunde selbst anrufen.
Faxen ist uebrigens besser, da nicht immer besetzt.
Wer noch Fragen hat, moege sie mailen / posten.
PS: Natuerlich werden 60, 75, 90 und 100er Pentiums ausgetauscht.
Freund.

-----------------------------------------------------------------------------



Re: P-Bug Umtausch (Boing,  8. Feb 1995, 13:46:04):
#! rn=Freund rt=792247370
Es gibt keine bugfreien Prozessoren ...
  Boing

-----------------------------------------------------------------------------



DB-Fahrplanprog (Ratz,  8. Feb 1995, 21:49:04):
Hallo,
an alle Bahnreisenden.
Habe gerade ein Bundesbahn Fahrplan Programm bei mir installiert.
Wer es per ftp holen will kann sich an mich wenden und sollte viel Zeit
mitbringen (ca. 25 MB)
Ich bin aber auch gerne bereit einzelne Auskuenfte ueber Abfahrtszeiten etc.
sofort zu geben.
Insbesondere fuer das Wochenende 10.2. ff.
Gruss ratzfatz Ratz

-----------------------------------------------------------------------------



OCR-Software gesucht! (Kretek, 10. Feb 1995, 17:06:26):
Hallo!

Ich suche DRINGEND eine zuverlaessige Texterkennungs-Software fuer Scanner,
natuerlich vorzugsweise Shareware oder Freeware... Das Operating System ist
eigentlich egal, ideal waeren Macintosh, Dos/Windows oder Unix (SUN).
Leider waren etliche ARCHIE-Suchen bis jetzt erfolglos...
Sollte also jemand von Euch eine FTP-Site kennen, wo ich solche Software
finden
kann, dann waere ich sehr dankbar um entweder MUD-Mail, oder E-Mail an meine
RL-Adresse, kretek@sun.cns.muskingum.edu

Danke und tschuess,
Kretek

-----------------------------------------------------------------------------



Re: P-Bug Umtausch (Har, 13. Feb 1995, 10:35:00):
#! rn=Freund rt=792247370
Tja seltsam mit den Petiums....
Uns haben sie Mitte Dezember letzten Jahres bei Intel versporchen unsere
(dabei auch mein eigener) Pentiums (60 und zwei 90er) umzutauschen, die  neuen
Prozessoren sollten Anfang Januar hier bei der uni eintreffen, und was ist, es
ist jetzt schon mitte, besser Ende Februar (*grummel*)

Har (scheisst auf Intel)

-----------------------------------------------------------------------------



Re: Re: P-Bug Umtausch (Fraggle, 13. Feb 1995, 13:59:07):
#! rn=Har rt=792668100
Har, warum aergerst Du dich so ueber Intelbugs, die lediglich statt 16 nur 8
stellige genauigkeit zulassen? Windoofs&Co rechnen doch eh nur mit 2 stelliger
genauigkeit :) Versuch mal 2 - 2.01 ;)

-----------------------------------------------------------------------------



Re^3: P-Bug Umtausch (Har, 13. Feb 1995, 14:38:51):
#! rn=Fraggle rt=792680347
Naja, fuer so nen scheiss habe ich eigentlich meinen Taschenrechner (oderdas
gute alte Kopfrechnen?), ausserdem geht es nicht nurum das genaue beim dem
verf*&^%ten Pentium sondern darum, dass die be*&%^&%ennen Prozessoren noch
nicht da sind ;)

Har (recfhnet im Kopf oder benutzt eh OS2 :) )

-----------------------------------------------------------------------------



Re: Re: P-Bug Umtausch (Fyt, 18. Feb 1995, 11:49:02):
#! rn=Har rt=792668100

Na klar, gibt's bugfreie Prozessoren...
Die haben eben dann ne Menge features :)

Fyt, grinsend.

-----------------------------------------------------------------------------



=-> WOHNUNG GESUCHT <-= (Nabinol,  3. Mar 1995, 18:38:31):

Hallo liebe MG-Spieler und Spielerinnen.

Ich suche auf diese leicht seltsame Weise
eine Wohnung in Muenster.
Ich bin aus Frankfurt am Main und studiere im Moment
bei Dresden Chemie im 7. Semster. Nun, ich moechte
nach Muenster wechseln, und dafuer brauche ich nun
eine Wohnung oder einen Platz in einer WG bis, hm,
sagen wir 500,-.

Wenn Ihr etwas habt, oder jemanden kennt, dann schreibt
mir doch biite eine kurze Email. Ich melde mich dann!

Wenn Ihr mir etwas anderes zu Muenster mitteilen wollt,
dann freue ic mich darueber natuerlich auch!

Ach so, ich heisse Ralf Oestereich und meine Email Adresse ist:

              oesterei@orion.hrz.ba-freiberg.de


Vielen Dank!

-----------------------------------------------------------------------------



suche GURPS (Schlonz, 17. Mar 1995, 16:08:24):
Hallo,

 ich suche
             GURPS : "Fantasy Folks"
                und
                   GURPS : "Magic"      !!!

Wer besitzt diese Buecher und wuerde sie mir verkaufen?

Ein hoffender   SCHLONZ

-----------------------------------------------------------------------------



Re: suche GURPS (Yendi, 17. Mar 1995, 20:58:15):
#! rn=Schlonz rt=795452904

Ich schaue morgen mal im Spiel(T)raum, Frauenstrasse 40, 48143 Muenster,
nach; die haben eigentlich eine ganze Menge GURPS... und wenn nicht, dann
kann man die immer noch bestellen, falls sie noch im Druck sind.


-----------------------------------------------------------------------------



PC-Spiel : DSA II DSternenschweif (Schlonz, 28. Mar 1995, 15:23:52):
Suche Tips fuer DSA II Sternenschweif. Gebe selbst auch gerne welche (soweit
ich kann).

Schlonz

-----------------------------------------------------------------------------



Re: PC-Spiel : DSA II DSternenschweif (Baboon, 29. Mar 1995, 09:37:24):
#! rn=Schlonz rt=796397032

Hm, kannstt du mir Tips fuer ne Amiga-Konvertierung geben? :-)

Baboon (Ich Amiga-Fan? Neeeeeeeeeeeeinnnnn!!! Ueberhaupt nicht! :-)



-----------------------------------------------------------------------------



Re: Re: PC-Spiel : DSA II DSternenschweif (Maso, 29. Mar 1995, 09:45:28):
#! rn=Baboon rt=796462644
Das einzige, was schwierig waere, waere die 3D-Engine. Die Graphiken kann man
sich ja *huestel* ausleihen *huestel*, und die Regeln kenne ich ja auswendig
(Ups, warum wird meine Nase auf einmal so lang?!?)

     Maso, der zu seiner Amiga steht (Ja, sie IST weiblich! ;-)

-----------------------------------------------------------------------------



Re^3: PC-Spiel : DSA II DSternenschweif (Anthea, 31. Mar 1995, 01:41:18):
#! rn=Maso rt=796463128
Ja, freilich ist sie weiblich... Maenner koennen garnicht so launisch sein :)

       Anthea

-----------------------------------------------------------------------------



Moggaen! (Hardil,  5. Apr 1995, 18:25:20):

Also nochmal:

cih hab jetzt der Versuchung nachgegeben, mir die neue SWF3-CD bestellt (und
schon bekommen) - und wenn jetzt jemand 'ne Pointe nicht mehr weiss, bin ich
gerne bereit, sie ihm zu verraten :-)
Alles weitere per mail...

			Hardil

-----------------------------------------------------------------------------



Re: Re: PC-Spiel : DSA II DSternenschweif (Schlonz,  6. Apr 1995, 11:26:06):
#! rn=Baboon rt=796462644
Nein , sorry.

Schlonz

-----------------------------------------------------------------------------



artikel Magic ... (Looser,  4. Mai 1995, 16:38:07):
Hia Muddies ...

Die Epidemie greift um sich ... wer von uns ist noch
nicht Magic:the Gathering infiziert ?
Fuer alle die die es sind und die tauschen wollen (und ein paar schoene
Karten haben) bzw in der Gegend von Tuebingen
wohnen und mal spielen wollen: Mailt mich an !!! (der tausch ist ja auch per
snailmail moeglich !) ...
Adresse ist einfach: blanke@sunrise.informatik.uni-tuebingen.de

Sagt einfach nur was ihr haben wollt und was ihr habt, und ich schicke Euch
dann mal ein Angebot rueber ...

Bis dann - lasst Euch nicht kleinkriegen ...
         Ciao
              Looser ;-)

-----------------------------------------------------------------------------



magic-karten (Snuggle, 17. Mai 1995, 13:18:21):
Nein, bitte nicht schlagen, ich weiss, dass einige hier dieses Spiel nicht
leiden koennen,
aber ich muss meine Sammlung verkaufen, sollten sich also Magic-Spieler hier
befinden, die noch Karten
suchen, dann schreibt mir doch mal ne Mail.
Ich habe saemtliche Karten von der Beta-Edition bis zu The Dark, sowie einige
Revised und unlimited Karten.
Die Chancen sind also recht gut, dass fuer jeden was dabei ist.
Snuggle

-----------------------------------------------------------------------------



Re: magic-karten (Caradhras, 19. Mai 1995, 03:51:48):
#! rn=Snuggle rt=800709501
Schreib doch bitte deine email dazu, oder sag sie mir wenigste,s du
weisst ja, dass ich jemand kenne der welche sucht.

      (und der nicht MG-t)          Tschoe      Cara

-----------------------------------------------------------------------------



Re: Re: magic-karten (Snuggle, 21. Mai 1995, 09:43:36):
#! rn=Caradhras rt=800848308
Ups,
sorry Cara, hab nicht dran gedacht.
Also fuer alle, die lieber meine E-mail-platte als die Mudplatte
fuellen wollen (:-) ) schreibt an folgende Adresse:
uzs339@uni-bonn.de

Gruss
Snuggle

P.S. Es ging dabei um Angebote fuer Magic-Karten. Ihr koennt zwar gerne auch
so schreiben,
aber bitte nicht die Platte jetzt mit allem moeglichen MUELL fuellen. Danke
:-)

-----------------------------------------------------------------------------



MFG gesucht (Aranya, 22. Mai 1995, 20:57:00):
Ich suche fuer den Himmelfahrtsdonnerstag oder den Mittwoch davor eine MFG
von Freiburg im Breisgau (unten links) nach Bad Segeberg (oben in der Mitte).
Da faehrt nicht zufaellig jemand von Euch?
Naja, war ja nur ne Frage.
Angebote unter 0761/276205 (Zimmer 516 verlangen)
Aranya

-----------------------------------------------------------------------------



VideoPLAYER gesucht :-) (Beldin, 24. Mai 1995, 16:58:26):
Hi Leute!
Ich suche (zwecks Aufraeumens alter Videokassetten) einen reinen
VideoPLAYER, dh ein Abspielgeraet, dass keine Rekorderfunktionen
hat (weil nicht gebraucht) und wuenschenswerterweise CINCH-Ausgaenge hat.
Ein zweiter Videorekorder waer zwar auch ok, ist aber meistens a) teuerer
b) unhandlicher und c) braeucht ich ihn eigentlich nicht wenn ich obig
genanntes Ding in brauchbarer Qualitaet bekaeme (KEINE S-VHS-Qualitaet :>)
Also wenn jemand sowas hat und loswerden moechte, bzw. einen kennt der einen
kennt usw. pp. :-) dann melde er sich bei mir unter mud-mail oder unter
grehsin@uni-muenster.de!

Ciao - Beldin

-----------------------------------------------------------------------------



Weltbild verloren... (Rumata, 29. Jun 1995, 17:49:50):
Hilfe!!!
Nachdem mir Jof und Boing gesagt haben, dass das MorgenGrauen doch
keine Pizza ist, habe ich mein Weltbild verloren!
Kann mir jemand helfen? Wo bin ich, wenn ich hier bin? Was ist der
Sinn von alledem?

Falls ihr Antworten habt, bitte an diese Newsgroup.

Rumata, restlos ratlos

-----------------------------------------------------------------------------



Re: Weltbild verloren... (Silvana, 29. Jun 1995, 17:53:01):
#! rn=Rumata rt=804440990
Hmmm - an Deiner Stelle wuerd ich mir schwer ueberlegen in was Du dann so
herzhaft bei einem Armageddon gebissen hast - wenn's keine Pizza war...
Vielleicht mal den Zahnarzt fragen?

grinsend - Silvana

-----------------------------------------------------------------------------



Re^3: Weltbild verloren... (Mesirii, 29. Jun 1995, 22:33:18):
#! rn=Cuchullin rt=804452977
Eher eine Ewiger Tag.
Sie haben das mit der Sonne nie richtig hinbekommen.
und die pizza war zwar mal da, aber wo soll silvano die mengen pizza
herbekommen,
wenn nicht aus der welt rausschneiden ?
Dann hat er immer wieder gebettlt, bis irgendein mitleidiger magier die
loecher
wieder gestopft hat.  so war das mit der pizza
Mesii, mmmhh PIZZA ;))

-----------------------------------------------------------------------------



Re^4: Weltbild verloren... (Rumata, 30. Jun 1995, 09:22:11):
#! rn=Mesirii rt=804457998
Bei der momentanen witterung empfehle ich sowieso das Polargebiet als
Staerkung zwischendurch. :-)
Vorrausgesetzt, die Welt ist *doch* eine Pizza... ?
Rumata, immer noch recht ratlos

-----------------------------------------------------------------------------



Live-Rollenspieler aufgepasst... (Hulle,  5. Jul 1995, 12:42:17):
Hallo Mud-Volk!
Einige von euch haben sich ja schon geoutet, aber ich bin sicher, hier gibt
es noch viel, viel mehr Live-Rollenspieler
Inm Moment entsteht eine Live-Rollenspiel FAQ, in der auch moeglichst viele
Veranstalteradressen enthalten sein sollen... als Anlaufpunkt fuer Leute, die
sich auch
fuers Live-RS interessieren.
Wenn ihr also auch drinstehen wollt, schickt mir doch eine Real-Adresse plus
Telephonnummer + evtl. Email (muss nicht Internet sein...)
Herzlichste Dankesgruesse
Hulle
*luebbdbi@rubc.rz.ruhr-uni-bochum.de*

-----------------------------------------------------------------------------



Re: Live-Rollenspieler aufgepasst... (Guldukat,  5. Jul 1995, 17:53:36):
#! rn=Hulle rt=804940937
Waere das nicht was fuer die Party? Son richtiges Live Rollenspiel am
Aaaaasee
GD

-----------------------------------------------------------------------------



Re^3: Live-Rollenspieler aufgepasst... (Highlander,  6. Jul 1995, 13:38:32):
#! rn=Dancer rt=804993710
Abgesehen davon, dass ich Dancer wohl mal wieder
ueber's Knie legen muss, moechte ich noch bemerken,
dass man schon Fluegel haben sollte zum Fliegen,
sonst halte ich den Unterricht fuer sinnlos.
Ich hab ja Fluegel, im Gegensatz zu der gelben Mieze, und ich kann
auch fliegen, im Gegensatz zu der gelben Mieze :>
   Highlander, Vater eines missratenen Sohnes ;>

-----------------------------------------------------------------------------



Re^5: Live-Rollenspieler aufgepasst... (Anthea,  6. Jul 1995, 16:19:06):
#! rn=Asmodis rt=805023896
Noe, nix von Anthea. Ich bin schliesslich nicht da, da ja die party nicht auf
eine woche spaeter verlegt wurde (aeh, nein, das soll nicht heissen, dass die
diskussion wieder anfangen soll)

       Anthea

-----------------------------------------------------------------------------



Suche Remote-Proggi! (Boebbel, 15. Jul 1995, 19:11:38):

Hi!

Ich suche ein Remote-Proggi, mit dem ich folgendes machen kann:
Ich will von einem zweiten Rechner, der ueber ein serielles Kabel mit meinem
Rechner verbunden ist, mudden.
Ich kann bei mir 2 Fenster oeffnen und durch hin und herklicken mit 2
Spielern gleichzeitig spielen.
Nun soll es aber so sein, dass ein zweiter Spieler von dem anderen Rechner
in dem einen Fenster spielt und ich in dem anderen...
Achja, das ganze laeuft unter Windoof.

Kennt jemand so ein Programm und wenn ja, wo gibts das?

Danke!
Boebbel

-----------------------------------------------------------------------------



Re: Suche Remote-Proggi! (Jimdigriz, 16. Jul 1995, 15:36:24):
#! rn=Boebbel rt=805828298
Hallo Boebbel !

Also da das unter Windows laeuft , was mE wohl nicht
multitaskingfaehig ist, duerfte es nicht moeglich sein.
Du kannst tatsaechlich zwei fenster aufmachen und spielen,weil
Du die Fenster ja nicht gleichzeitig bearbeiten kannst (immer nur
eines ist aktiv).

cu,
 James Bolivar diGriz


-----------------------------------------------------------------------------



Compi gesucht :) (Chicola, 26. Jul 1995, 10:31:57):
Huhu Ihr :)

Mein kleiner Bruder sucht einen Computer! Er will so ca 700-800 DM fuer einen
gebrauchten Compi ausgeben. Die Mindestanforderungen sind klar, oder ?

Muellt mich mal mit Euern Angeboten voll.

Auf den Postoten wartend                Chicola


-----------------------------------------------------------------------------



Re: Compi gesucht :) (Yendi, 26. Jul 1995, 13:13:42):
#! rn=Chicola rt=806747517

Tschuldigung, aber MIR sind die Mindestanforderungen NICHT klar:

Will er programmieren ueben? Dann reicht ein 386er mit 50er Platte.
Will er unter Windows arbeiten? Dann sollte es schon ein 486er sein.
Und fuer Spiele empfiehlt sich mittlerweile ein Pentium.

Also, was darfs denn sein? (Nicht, dass ich was zu verkaufen haette, nur so)

YTY


-----------------------------------------------------------------------------



Verkaufe PR,StarTrek,Shadowrun,Flusswelt und Illuminati (Bernard, 11. Aug 1995, 15:07:13):
Wie das subject schon sagt, will ich einiges loswerden:

Perry Rhodan: Hefte 1600-1602,1607-1617,1622-1635,1638-1660,
  1662-1687 und 1689-1746

Insgesamt 135 Hefte. (ich dachte an 90 DM als Preis)

Shadowrun: Die Buecher 1-10 und 13 (25 DM)

Farmer: Alle 5 Flusswelt-Buecher (15 DM)

Shea/Wilson: Illuminati-Trilogie (10 DM)

Star Trek: (60 Buecher fuer 180 DM)

TOS:
Vonda N. McIntyre: Star Trek II: Der Zorn des Khan
Robert E. Vardeman: Das Klingonen-Gambit
Lee Correy: Hort des Lebens
Vonda N. McIntyre: Star Trek III: Auf der Suche nach Mr Spock
S.M. Murdock: Das Netz der Romulaner
Sonni Cooper: Schwarzes Feuer
Robert E. Vardeman: Meuterei auf der Enterprise
Howard Weinstein: Die Macht der Krone
Sondra Marshak & Myrna Culbreath: Toedliches Dreieck
Diane Duane: Der verwundete Himmel
Vonda N. McIntyre: Star Trek IV: Zurueck in die Gegenwart
Greg Bear: Corona
John M. Ford: Der letzte Schachzug
Melinda Snodgrass: Die Traenen der Saenger
Jean Lorrah: Mord an der Vulkan Akademie
Laurence Yep: Herr der Schatten
Barbara Hambly: Ishmael
J.M. Dillard: Star Trek V: Am Rande des Universums
Della van Hise: Zeit zu toeten
Margaret Wander Bonanno: Geiseln fuer den Frieden
Majliss Larson: Das Faustpfand der Klingonen
J.M. Dillard: Bewusstseinsschatten
Brad Ferguson: Krise auf Centaurus
Diane Carey: Das Schlachtschiff
J.M. Dillard: Daemonen
Diane Carey: Der Verraeter
Gene DeWeese: Zwischen den Fronten
J.M. Dillard: Die verlorenen Jahre
Howard Weinstein: Akalla
Carmen Carter: McCoys Traeume
John M. Ford: Was kostet dieser Planet?
J.M. Dillard: Blutdurst
J.M. Dillard: Star Trek VI: Das unentdeckte Land
Jean Lorrah: Die UMUK-Seuche
David Dvorkin: Die Zeitfalle
Gene DeWeese: Nexus
Julia Ecklar: Kobayashi Maru

TNG:
David Gerrold: Mission Farpoint
Gene DeWeese: Die Friedenswaechter
Carmen Carter: Die Kinder von Hamlin
Jean Lorrah: Ueberlebende
Peter David: Planet der Waffen
Diane Carey: Gespensterschiff
Howard Weinstein: Macht Hunger
David & Daniel Dvorkin: Die Ehre des Captain
Michael Jan Friedman: Ein Ruf in die Dunkelheit
Peter David: Eine Hoelle namens Paradies
Carmen Carter u.a.: Planet des Untergangs
A.C. Crispin: Die Augen der Betrachter
Howard Weinstein: Im Exil
Michael Jan Friedman: Das verschwundene Juwel
Peter David: Vendetta
Peter David: Eine Lektion in Liebe
Howard Weinstein: Die Macht der Former

Die Anfaenge:
Vonda N. McIntyre: Die erste Mission
Margaret Wander Bonanno: Fremde vom Himmel
Diane Carey: Die letzte Grenze

Deep Space 9:
J.M. Dillard: Botschafter
Peter David: Die Belagerung
K.W. Jeter: Die Station der Cardassianer

Und wer mir alles zusammen abnimmt, kanns fuer 300 DM haben.

Bernard aka Frank Schmidt, fkschmid@cip.informatik.uni-erlangen.de

-----------------------------------------------------------------------------



Suche dringend Wohngelegenheit in MS (Mcloud, 24. Aug 1995, 09:46:00):
Hallo Muddies!

Da ich nun zum WS95/96 nach Muenster komme, um dort zu studieren,
wuerde ich auch gerne was zum Wohnen haben. /Fast) egal was, hauptsache ich
komme
mit etwa 450DM im Monat hin...
Den Antrag fuer die Studenten-WH habe ich schon
gestellt, aber ich moecht mich nicht darauf verlassen
muessen und dann im Jugendgaestehaus wohnen (1200 DM/Monat F)
:-)

Also: Waere echt riesig, wenn das hier klappen wuerde...

Gruss (noch aus Bremen)
McLoud (wuerdema@zfn.uni-bremen.de)
(RL: Michael Wuerdemann)

-----------------------------------------------------------------------------



Rodeln statt Jodeln (Hardil,  6. Okt 1995, 11:24:51):

Schlapper Magier (Loc*) und tuechtiger Reen-Rentner (Hardil) suchen
gleichgesinnte Meisterrodler.
Am besten jetzt gleich. :)

-Hardil. NNN.

-----------------------------------------------------------------------------



Re: Rodeln statt Jodeln (Locutus,  6. Okt 1995, 11:25:50):
#! rn=Hardil rt=812975091
Hardil ist n Aufschneider, nur weil er einmal gewonnen hat.

Loc. (testet die Waffen beim Rodeln durch)

-----------------------------------------------------------------------------



Re: Re: Rodeln statt Jodeln (Hardil,  6. Okt 1995, 11:26:34):
#! rn=Locutus rt=812975150

Locutus sucht nur faule Ausreden, weil er jedesmal verliert. Das Waffentesten
ist alles nur ein Vorwand. :)

-Hardil. NNN.

-----------------------------------------------------------------------------



Re^3: Rodeln statt Jodeln (Locutus,  6. Okt 1995, 11:27:48):
#! rn=Hardil rt=812975194
Willste nun n Flamewar?

Loc (ist schneller als die Polizei erlaubt)

P.S.: Ab nach Schmarrn.

-----------------------------------------------------------------------------



Re^4: Rodeln statt Jodeln (Hardil,  6. Okt 1995, 11:31:22):
#! rn=Locutus rt=812975268
Auja, Flamewar. :)
Ich kann ja sogar noch beim Schlittenfahren Artikel schreiben, wenn Du
dauernd aus der Kurve fliegst :)

Hardil. NNN.

-----------------------------------------------------------------------------



Versuchspersonen gesucht! (Bloodyharry, 17. Okt 1995, 09:18:55):

            Versuchspersonen gesucht!
            =========================


Was ?       Ein Experiment, bei dem Bilderraetsel zu loesen sind.
            Der Versuch dauert circa 2.0 Stunden.

Wo ?        Institut fuer Arbeitsphysiologie, (Abt. Ergonomie),
            44139 Dortmund, Ardeystrasse 67

Wer ?       Harry Schmidt
            Telefon: 0231/1084-380 (oder per teile bloodyharry mit ...)

Die Teilnahme an dem Experiment wird mit DM 30 entschaedigt.


Wer also in Dortmund, Essen, Bochum oder Hagen wohnt oder gerade mal in der
Naehe ist, kann an diesem Experiment gerne teilnehmen.


Harry

-----------------------------------------------------------------------------



Re: Versuchspersonen gesucht! (Bloodyharry, 17. Okt 1995, 09:22:27):
#! rn=Bloodyharry rt=813917935

Die Versuche beginnen ab Montag den 23. Oktober.
Die Zeiten fuer die einzelnen Experimente sind um 8:30, 11:00 und 13:30 Uhr.

Harry

-----------------------------------------------------------------------------



magickarten (arabians) gesucht ! (Looser, 18. Okt 1995, 11:36:42):
Hia !

Ich suche DRINGEND noch ARABIAN NIGHTS - Angebote und tauschvorstellungen
bitte per E-Mail an mich !

  Danke ...
	Looser ;-)

-----------------------------------------------------------------------------



Mal n bisschen was fuer meinen Compi (Aranya, 27. Okt 1995, 18:40:23):
Tag. Wie einige wissen, falle ich unter die Kategorie DAU. Und darum: Bitte
kein Gelaechter. Ich suche fuer meinen uralten IBM (so von 84 oder so)
ein 3 1/2"-Laufwerk und einen Drucker. Kann mir da jemand - auch mit Tips -
helfen?
MUDmail an mich.
Schankedoens
            Aranya

-----------------------------------------------------------------------------



Re: Mal n bisschen was fuer meinen Compi (Hadra, 28. Okt 1995, 01:44:26):
#! rn=Aranya rt=814815623
hi aranya,

ob 'moderne' floppys sich ohne weiters anschliessen lassen, weiss ich nicht
aber am paralleln port sollte sich wenig geaendert haben, also muesste jeder
drucker anschliessbar sein.

hadra - bastelt gerade

-----------------------------------------------------------------------------



Programmierer gesucht (Thorson,  9. Nov 1995, 13:14:11):
Hallo,

ich entwickle gerade im rahmen meiner Design-Diplomarbeit ein Konzept fuer
einen recht interessanten nichtkommerziellen Online-Dienst im WWW. Nun suche
ich noch einen programmierer, mit dem ich das projekt gemeinsam realisieren
kann. ErErfahrungen in HTML und Java waeren nicht schlecht.
Wer hat Lust?
Wer findet es spannend - im Zeitalter von Multimedia - mit einem Designer
zusammenzuarbeiten?
Weitere Infos gibt es auf Anfrage per E-Mail: liebold@uni-muenster.de

Gruss,
Thorson


-----------------------------------------------------------------------------



Re: Programmierer gesucht (Acrimon, 10. Nov 1995, 18:17:01):
#! rn=Thorson rt=815919251
Die wichtigste Info hast du vergessen: Um was fuer einen Online-Dienst
handelt es sich, was stellst du dir dabei vor?

Grusz, Acrimon

-----------------------------------------------------------------------------



Re: Re: Programmierer gesucht (Thorson, 13. Nov 1995, 22:15:51):
#! rn=Acrimon rt=816023821
>Um was fuer einen Online-Dienst handelt es sich,
>was stellst du dir dabei vor?

Es ist ein nichtkommerzielles kulturelles Angebot von internationaler
Bedeutung.
Mehr kann ich hier leider nicht sagen.
Das ganze wird sicherlich recht interessant werden und ich suche halt noch
einen Programmierer,
der 1. verrueckt ist ;-) 2. gut ist und 3. bereit ist HTML und Java zu
programmieren.

Gruss,
Thorsten
(liebold@uni-muenster.de)


-----------------------------------------------------------------------------



SCSI CDROM 4fach zu verkaufen (Etah, 16. Nov 1995, 13:53:02):
Ich habe ein nahezu neuwertiges SCSI CDROM mit 4fach Geschwindigkeit
zu verkaufen.

Sanyo CRD-254SH
Preis: 395,- DM

Etah. Mail bitte an leo@first.gmd.de

-----------------------------------------------------------------------------



Ausruestung gesucht (Ricewind, 25. Nov 1995, 15:50:52):
Suche folgende Ausruestungsgegenstaende
a) silbernes Kreuz zahle 5000 Muenzen

b) Sclangenhaut zahle 2000 Muenzen

c) Kiefeknochen eines Wasserunwesens zahle 1000 Muenzen

Ricewind.

-----------------------------------------------------------------------------



aeh... (Ricewind, 25. Nov 1995, 15:51:35):
zahle 10.000 fuer den Kieferknochen

Ricewind

-----------------------------------------------------------------------------



Computer-Preise USA (Cerebus, 19. Dez 1995, 16:09:05):
Hallihallo!

Ich werde im naechsten Sommer wenn alles klappt in die USA zum Studieren
wechseln. Ich habe vor, mir ein Notebook zu kaufen und bin jetzt daran
interessiert, was die Dinger in den Staaten kosten.

Meine Frage: Kann mir jemand mitteilen, wieviel in den USA ungefaehr ein
Standard-Notebook kostet? (486, Farb-Monitor, 4MB Ram, Festplatte egal). Ich
brauche nur ungefaehre Vergleichspreise, damit ich mich entscheiden kann, ob
ich es hier oder drueben kaufe.

Da ich i.M. aeusserst selten im MG bin, waere es nett, wenn mir die Antworten
per e-mail zugesandt werden koennten:
jan.schmidt@stud.uni-bamberg.de

Tausend Dank!!!

Cerebus

-----------------------------------------------------------------------------



alles zu mir.... (Semira, 19. Dez 1995, 18:11:45):
Mein virtueller Briefkasten hungert vor sich hin und das muss doch einfach
geaendert werden. Drum hier mein Aufruf:

Alle unterhaltsamen Logs, Geschichten und ganz besonders Todessequenzen her
zu mir: koch@hartree.pc.uni-koeln de.

Haut mich engy jetzt, wenn ich seine email hier rumposte? Ach was, ich haut
notfalls zurueck.

Also auf, ihr lieben, schickt mir alles was ihr finden koennt

*weihnachtsknuddels*

Semira

-----------------------------------------------------------------------------



kochbuch & zigarettenetui (Hadra, 30. Dez 1995, 11:53:22):
nach dem treffen am 29.12. in koeln sind ein kochbuch und ein zigarettenetui
liegengeblieben. damit der kram nicht unter die raeder kommt, haben wir das
mitgenommen. wer so was vermisst moege sich bitte mit einer naeheren
beschreibung der gegenstaende an mich wenden.

hadra - jaeger und sammler

-----------------------------------------------------------------------------



Re: kochbuch & zigarettenetui (Sushi, 30. Dez 1995, 11:54:38):
~#! rn=Hadra rt=820320802
~#! tid=820320802
Okay, und was noch? 6 Brieftaschen, 5 Uhren und ein paar Autos?
... Kleptomanen...

*grins*

Sushi
Guten Rutsch mit Lebertran!

-----------------------------------------------------------------------------



Apfelmaennchen (Engywuck,  3. Jan 1996, 11:10:08):
Hallo!
Ich suche da so ein Programm, mit dem ich Apfelmaennchen und sowas malen
kann. Ich hab zwar so eins, aber das hat den Nachteil, dass ich die
entstehenden Bilder nicht abspeichern kann, und das waere mir wichtig.
Ach ja, das ganze sollte unter (Jof weghoeren) Windows laufen und am besten
ueber ftp erreichbar sein oder so.
Also, wenn jemand was weiss: Mail an mich!

Eure Engy

-----------------------------------------------------------------------------



Trauminsel (Engywuck,  3. Jan 1996, 11:15:58):
Nochwas als Nachtrag:
Ich suche auch noch ein Bild (gif oder jpg oder so) von einer Insel. Also,
man sieht ja manchmal so Bilder: Ganz viel Blaues Wasser, und in der Mitte
eine Palmeninsel, so gross, dass man zu Fuss in 5 Minuten einmal rum ist. Oder
das Bild eines Strandes, mit ein paar Palmen, die sich gemaechlich ins Wasser
neigen...
Sowas such ich. Wenn jemand ne Stelle im WWW weiss, oder ftp oder so ein Bild
selbst hat: mail an mich.

So, jetzt bin ich wieder still.
Ciao,
  Engy

-----------------------------------------------------------------------------



zeit (Gundur,  8. Jan 1996, 21:23:32):
Also bieten tu ich nix...
Allerdings such ich ne moeglichkeit mir fuer nen Computer der am netz haengt
die zeit extern also ueber netz zu holen...
Wenn einer weiss wie oder ob das geht soll er mir bitte mailen
Danke im Vorraus
Gundur

-----------------------------------------------------------------------------



Re: zeit (Acrimon, 19. Jan 1996, 07:03:39):
~#! rn=Gundur rt=821132612
~#! tid=821132612
Ja, logg dich auf einem Unix-System ein und tippe "date"
Mit dem Befehl "time" kannst du das Ausgabeformat fuer date bestimmen.

Mehr dazu in den Manpages.

Grusz,
Acrimon der Rote Ritter

-----------------------------------------------------------------------------



Konverter gesucht (Gundur, 19. Jan 1996, 15:45:09):
Hi
Ich suche einen Konvert fuer Portable Bitmap nach Postscript
d.h. pbm oder pgm nach ps
Gruss
Gundur

-----------------------------------------------------------------------------



Re: Konverter gesucht (Hate, 20. Jan 1996, 14:09:35):
~#! rn=Gundur rt=822062709
~#! tid=822062709
ppmtops ? Liegt bei jedem pbmplus package dabei.

Hate.

-----------------------------------------------------------------------------



Suche Druckertreiber und Spiel (Augias, 29. Jan 1996, 12:13:47):
Suche dringend Druckertreiber der Firma Canon.
ODrucker: Canon LBP 4 Plus
fuer Win 95.

Suche Rollenspiel fuer PC aehnlich MUD, da Modemanschluss nur an
der Uni vorhanden ist. (Telekom und Eltern machen den Zugang von
Zuhause aus unmoeglich. Darum werde ich dadurch zum Einzelkaempfer vor dem
PC. Bzw. will es werden.
Ausserdem sind die Stuehle in der Uni so unbequem und Kaffee gib es
auch keinen..
q

-----------------------------------------------------------------------------



Re: Suche Druckertreiber und Spiel (Asmodis, 29. Jan 1996, 21:18:29):
~#! rn=Augias rt=822914027
~#! tid=822914027
Och, habt ihr keinen Kaffeeautomaten an der Uni ? :)

-----------------------------------------------------------------------------



Linux gesucht! (Engywuck,  1. Feb 1996, 14:57:33):
Hallo Leute!
Also, die Sache ist die: Ich hab ein kleines Fortran-Prog geschrieben,
welches ich jetzt gerne kompilieren moechte. Auf meinem Linux ist aber kein
f77-compiler drauf, also such ich jemanden, der das fuer mich machen koennte.
Falls jemand die moeglichkeit hat und so nett waere, mal eben 4 K
Fortransource fuer mich zu kompilieren, kann mir mal seine emailadresse
schicken, ich mail das sourcefile dann zu.
Das Binary dann natuerlich retour an mich ;)

Waer toll, wenn jemand helfen kann...
Engy.


P.S.: Evtl. waer das Programm auch fuer andere ganz interessant: Es berechnet
die Kohle, die man durch das heimische Mudden per Modem verpulvert ;)

-----------------------------------------------------------------------------



Re: Linux gesucht! (Mupfel,  1. Feb 1996, 20:21:45):
~#! rn=Engywuck rt=823183053
~#! tid=823183053
hast du kein f2c? das sollte doch bei jeder linux distribution dabei sein
(oder?). ansonsten: prep.ai.mit.edu

-mupfel-

-----------------------------------------------------------------------------



Traveller Buecher (Cauno, 16. Apr 1996, 12:14:30):

Vielleich kann mir hier ja jemand helfen. Ich suche zu dem Rollenspiel
"Traveller" noch einige aeltere Regel- und Quellbuecher. Das der Verlag,
bei dem die Teile erschienen sind, pleite gemacht hat, sehe ich keine
grosse Chance, die noch ueber den Vertrieb zu beziehen. Wer weiss, wo es
noch Material dazu gibt, dazu gehoeren auch bei anderen Verlagen erschienene
Buecher, der schicke mir bitte eine Mitteilung.

Speziell suche ich:
Alte Orignial-Buecher,
MegaTraveller-Material von GDW und Digest Group Publications.

Zeitschriften wie Explorer, Traveller Chronicle, und was ich noch nicht
kenne.

Traveller: The New Era hab' ich noch komplett bekommen (gerade rechtzeitig.)
Wer weiss Bescheid?
							Cau No

-----------------------------------------------------------------------------



Re: Traveller Buecher (Yendi, 16. Apr 1996, 12:36:39):
~#! rn=Cauno rt=829649670
~#! tid=829649670

Geruechteweise habe ich gehoert, dass Traveller von einem deutschen
Kleinstverlag rausgebracht werden soll. Das kann aber, selbst wenn es klappt,
noch ein Jaehrchen dauern.


-----------------------------------------------------------------------------



Re: Re: Traveller Buecher (Cauno, 18. Apr 1996, 09:56:21):
~#! rn=Yendi rt=829650999
~#! tid=829649670

Oh-oh. Hoffentlich uebersetzen die den nicht. Das hat FanPro damals schon
gemacht.

						C. No

-----------------------------------------------------------------------------



Re^3: Traveller Buecher (Raffi, 18. Apr 1996, 09:57:15):
~#! rn=Cauno rt=829814181
~#! tid=829649670
Soooooooo ueberragend war die Uebersetzung aber nicht - eher etwas 'farblos'.

Gruss
H.

-----------------------------------------------------------------------------



Re^4: Traveller Buecher (Cauno, 18. Apr 1996, 10:09:53):
~#! rn=Raffi rt=829814235
~#! tid=829649670

Naja, ob man nun lieber deutsch oder original liest, bleibt jedem selbst
ueberlassen. Da aber nur der Original-Traveller auf Deutsch erschienen ist und
ich den Rest im Original habe, wird es sehr verwirrend, wenn sich die Dinger
nachher mischen.

Davon abgesehen, sammle ich das Zeugs, und bin deswegen auch hinter den
aelteren, gleich welcher Sprache, her.

						C. No

-----------------------------------------------------------------------------



Re^13: Mal 3 Anregungen wieder aufgenommen (Bloodyharry, 19. Apr 1996, 14:47:43):
~#! rn=Freund rt=829907220
~#! tid=829607027
[Verlegt von entwicklung, Bloodyharry, 19. Apr 1996, 14:39:33]:
> (Sonst fange ich hier auch mit GC an... ;)

Apropos. Habt ihr die neuen GC-Editoren schon probiert:
Atari -> gc_orkst.204
Windows -> gc_orkpc.205

BH - moege der Saft mit Euch sein!


-----------------------------------------------------------------------------



Re^14: Mal 3 Anregungen wieder aufgenommen (Mupfel, 19. Apr 1996, 18:27:12):
~#! rn=Bloodyharry rt=829918063
~#! tid=829607027
Ja wo gibts die denn?

-mupfel- (sammelt Atari-Software, bevor es zu spaet ist :-)

-----------------------------------------------------------------------------



Re^15: Mal 3 Anregungen wieder aufgenommen (Bloodyharry, 21. Apr 1996, 01:02:41):
~#! rn=Mupfel rt=829931232
~#! tid=829607027
ftp://next.uni-dortmund.de/pub/gc/atari

BH

-----------------------------------------------------------------------------



Cobol (Terrorist, 22. Apr 1996, 08:46:19):

Ok kurz und knapp ich suche jemanden der Cobol kann
Komm echt nicht mit klar.
Also BITTE MELDE DICH

Terrorist hasst cobol :(

-----------------------------------------------------------------------------



Re: Cobol (Freund, 22. Apr 1996, 12:03:45):
~#! rn=Terrorist rt=830155579
~#! tid=830155579
Hi,

da ich auch ein Stueck weit stolz darauf bin,
etwas derart antiquiertes zu beherrschen:

Keine Mail, sondern als followup: ICH KANN COBOL!

Freund, lernt Datenverarbeitungskaufmann.
:)

-----------------------------------------------------------------------------



internet provider (Wurzel, 26. Apr 1996, 20:35:51):
hallo,

aus gegebenem (aergerlichem) anlass eine frage:

kennt jemand einen internet-provider in darmstadt, der eine einigermassen
stabile verbindung fertigbringt? kommt mir bitte nicht mit omnilink
(netsurf),
genau da will ich weg.

gruss, wurzel

-----------------------------------------------------------------------------



Wohnung in Koeln (Schrumpfi,  9. Mai 1996, 21:37:28):
Ich suche eine Wohnung in Koeln/Umgebung. Falls wer was weiss, bitte bei mir
melden. Thx im voraus
Schrumpfi

-----------------------------------------------------------------------------



Re: Wohnung in Koeln (Azzuro, 28. Mai 1996, 04:06:45):
~#! rn=Schrumpfi rt=831670648
~#! tid=831670648
Tut's zur Not auch ne Gruft????

-----------------------------------------------------------------------------



Re: Re: Wohnung in Koeln (Schrumpfi, 30. Mai 1996, 05:38:30):
~#! rn=Azzuro rt=833249205
~#! tid=831670648
Wenn die Gruft Kabelfernsehn hat, klar, immer her damit ;-)
S.

-----------------------------------------------------------------------------



oetti sucht was (Alanon, 30. Aug 1996, 13:37:50):
Ich suche meinen Arsch.. wer ihn 
gefunden hat oder sonstige dienliche Hinweise auf
dessen Verbleib geben kann, meldet sich bitte
bei Oetti oder Rantanplan.
Es winkt eine Belohnung.

-----------------------------------------------------------------------------



Re: oetti sucht was (Rantanplan, 30. Aug 1996, 13:39:02):
~#! rn=Alanon rt=841405070
~#! tid=841405070
Hmmmm !!

Ich glaub Pampers hat den...

R*

-----------------------------------------------------------------------------



Re: Re: oetti sucht was (Alanon, 30. Aug 1996, 13:39:28):
~#! rn=Rantanplan rt=841405142
~#! tid=841405070
Hee wer bekommt nun die belohnung

-----------------------------------------------------------------------------



Re: Re: oetti sucht was (Pampers, 30. Aug 1996, 14:47:35):
~#! rn=Rantanplan rt=841405142
~#! tid=841405070
Ich hab den nicht... :)
Ich hab nur Deinen.

Pampers. Der, dem Oettis Arsch gehoert. ;-)

-----------------------------------------------------------------------------



Re^3: oetti sucht was (Bloodyharry,  7. Sep 1996, 01:47:35):
~#! rn=Pampers rt=841409255
~#! tid=841405070
An Oettis Arsch gehoert ne Pampers?
Das verstehe ich nicht - klaert mich mal auf!

BH

-----------------------------------------------------------------------------



Suche Atari TOS 2.06 (Ketos, 25. Sep 1996, 22:57:22):
Ich suche fuer meinen ST Emulator unter Linux (STonX) jemanden der
ein TOS 2.06 hat. Ich selbst hab nur ein 1.05 und damit laeuft er nicht.
Mit einem kleinen Programm liese sich eine image datei vom TOS anfertigen
womit dann der Emulator liefe.
Werhat noch so ein TOS und ist berreit es mir zu geben?
- ketos -

-----------------------------------------------------------------------------



Re: Suche Atari TOS 2.06 (Mupfel, 30. Sep 1996, 21:58:11):
~#! rn=Ketos rt=843685042
~#! tid=843685042

Hm... Du meinst 2.05 oder? Laut STonX-Anleitung soll es auch mit 1.04
('Rainbow-TOS') gehen, das haette ich wohl da.

-mupfel-

-----------------------------------------------------------------------------



fachleute gesucht (Wurzel,  1. Okt 1996, 19:16:07):
hallo,

gibt es hier jemand mit profunden dce-kenntnissen? bevorzugt mit etwas
berufserfahrung?
wir suchen fuer ein projekt spezialisten mit dce-erfahrung. bei interesse
kurze mail an mich.

wurzel

-----------------------------------------------------------------------------



AD&D (Nirdavo,  2. Okt 1996, 10:34:55):
  Hallochen!
  Ausnahmnsweise von mir mal keinen Senf, sondern eine 'gesucht'-Meldung:
  Hat hier irgendjemand von AD&D 1st Edition das Spielerhandbuch, das
Dungeon-Master-Handbuch und die Unearthed Arcana? Wenn moeglich auf Englisch,
ich nehme sie aber auch auf Deutsch. Wer diese Buecher hat und sie mir
verkaufen (oder wenigstens ausleihen) moechte, maile bitte an mich.
  Zum Zweiten suche ich noch Leute, die genau so verrueckt sind wie ich, und
die Spellfire sammeln. Auch hier gilt: Mail an mich.

    Nirdavo, wartet auf tonnenweise Post.

-----------------------------------------------------------------------------



Re: AD&D (Wurzel,  2. Okt 1996, 19:43:49):
~#! rn=Nirdavo rt=844245295
~#! tid=844245295
hab ich doch alles... geb ich aber nicht her :) hoechstens als kopie, darueber
kann man reden.

wurzel

-----------------------------------------------------------------------------



Optische Maus fuer PC? (Ringor,  2. Okt 1996, 22:17:56):
Huhu!

Wie der Titel schon sagt, suche ich eine optische Maus fuer meinen PC.
Beim Rumstoebern im Netz ist mir bisher leider nur eine einzige Maus
aufgefallen: die "Optical Mouse" von Mouse Systems (einfallsreicher Name ;-).

Ich waere fuer jegliche Hinweise auf andere optische Maeuse und vor allem
fuer Bezugsquellen in .de dankbar. 

Ringor. Wird nie verstehen, warum sich immer das schlechtere durchsetzen muss.

-----------------------------------------------------------------------------



Re: Optische Maus fuer PC? (Acrimon,  2. Okt 1996, 22:19:25):
~#! rn=Ringor rt=844287476
~#! tid=844287476
Du kannst jede optische Maus einsetzen, die auch fuer den Amiga verwendet
wird.
Ich verwende zB die AlfaData Optical Mouse

-----------------------------------------------------------------------------



Re: Optische Maus fuer PC? (Hadra,  3. Okt 1996, 02:02:27):
~#! rn=Ringor rt=844287476
~#! tid=844287476
also ich weiss ja nicht was ne 'optische maus' ist, aber wenn du eine
schnurlose meinst, so gibt es auch eine von logi, die auch unter linux laeuft

-----------------------------------------------------------------------------



Re: Re: Optische Maus fuer PC? (Wurzel,  3. Okt 1996, 10:40:33):
~#! rn=Hadra rt=844300947
~#! tid=844287476
schnurlos? sind das die, die man nur einmal benutzt, weil man sie hinterher
nicht mehr wiederfindet? :)
wurzel

-----------------------------------------------------------------------------



Re^3: Optische Maus fuer PC? (Woody,  3. Okt 1996, 19:21:57):
~#! rn=Wurzel rt=844332033
~#! tid=844287476

Es gab nen 1:1 Nachbau der Mouse Systems PC-Mouse 3 von Genius,
die auch vertretbar guenstig war. Sollte doch wohl noch irgendwo
aufzutreiben sein...?

woody.- (mit dem original davon immer noch zufrieden)

-----------------------------------------------------------------------------



Re: Re: Optische Maus fuer PC? (Ringor,  3. Okt 1996, 23:17:48):
~#! rn=Hadra rt=844300947
~#! tid=844287476
Ne optische Maus hat zwar ne Schnur, dafuer aber keine Kugel ;-)
Die Schnur hat mich noch nie gestoert - aber wer einmal laenger mit ner 
optischen Maus gearbeitet hat, der moechte halt nie wieder mit ner "normalen"
Maus arbeiten muessen. 

Ringor. Nimmt dafuer sogar eine laengere Suche in Kauf.

-----------------------------------------------------------------------------



nix computer (Qitess,  4. Okt 1996, 12:08:45):

mal ne ganz andere frage :

Hat zufaellig jemand ein Bonanza-Rad , das er mir evtl verkaufen wuerde ?

jaja, ich weiss, dass ich n schlechten geschmack habe. aber ich suche nunmal
genau so ein haessliches hornlenker- und bananensattel bestuecktes
hippi-fahrrad mit lehne. evtl noch dranhaengende bunte baender nehme ich gerne
in kauf.

also : mails an Qitess :)

in QI schlummert ein kleiner Hippie :)


-----------------------------------------------------------------------------



Diplomarbeit in USA (Ronda, 19. Okt 1996, 14:58:10):
Hi!
hat jemand von Euch Erfahrungen mit Diplomarbeiten in den USA?
Oder eine Studienarbeit dort gemacht? Oder dort mal studiert?
Tips&Tricks dazu bitte an
                             Ronda

-----------------------------------------------------------------------------



*argl* ...? (Nichts,  1. Nov 1996, 19:11:09):

% elf2a: warning: statement starting with 'o' in /IF condition sends text to 
server, which is probably not what was intended.
% elf2a: warning: statement starting with 'n' in /IF condition sends text to 
server, which is probably not what was intended.
% elf2a: warning: statement starting with 'n' in /IF condition sends text to 
server, which is probably not what was intended.

Hi...
Davon hat es mir eben den Schirm vollgemuellt, ich wuere doch zu gerne wissen,
was mein TF dazu bewogen hat, das Wegescript anders zu bewerten und so einen
Muell daraus zu machen...

Anatol, ratlos


-----------------------------------------------------------------------------



Re: *argl* ...? (Methedras,  1. Nov 1996, 22:55:49):
~#! rn=Nichts rt=846871869
~#! tid=846871869
Elf2a? Ist das die Klasse, in die Elfen eingestuft werden? Ist aber
recht niedrig. Aber schon ok so.

       Methedras - Ex-Zwerg, Bergzwerg

-----------------------------------------------------------------------------



Re: *argl* ...? (Acrimon,  2. Nov 1996, 16:40:24):
~#! rn=Nichts rt=846871869
~#! tid=846871869
Das ist mir in letzter Zeit auch passiert, und zwar seit meine Trigger etwas
aufwendiger gestaltet sind und Einiges berechnen.
Wenn ich schnell tippe und meine Befehle zum MUD sende, noch waehrend TF an
den Triggern rechnet, kommt eben solch eine unsinnige Warnung.
Auf die Funktion hat das allerdings keinen Einflusz; ich war am Ende da, wo
ich sein wollte, und die Trigger wurden korrekt berechnet.
Da das auch bei Dir auftritt, vermute ich, dasz das ein Fehler bestimmter
TF-Versionen ist und moeglicherweise bald behoben wird.

Im Uebrigen sind dies alles nur Vermutungen von mir und keine Tatsachen.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re: Re: *argl* ...? (Anatol,  2. Nov 1996, 16:42:02):
~#! rn=Acrimon rt=846949224
~#! tid=846871869

Eine sehr unangenehme Nebenerscheinung ist, dass die Befehle nicht die
richtige Session treffen, wenn man mehrere ueber ein Fenster (foreground/
background) laufen hat. Und das ist SEHR aergerlich.

Anatol


-----------------------------------------------------------------------------



UNIX SYSTEM ADMIN (Ratz,  3. Nov 1996, 16:48:57):
Hallo,
ich koennte einen Job als UNIX SYSTEM ADMIN bei einer Firma in Lohmar naehe
Koeln ueber einen Freund vermitteln. Bezahlung ca. aehnlich wie ein Hiwi- Job
. Kenntnisse auf den gebieten Unix , Netzwerke, Pc etc. sind Voraussetzung.
Falls es interessenten gibt, erst mal bei mir melden. Ich werde ihn dann
weitervermitteln.
mail am besten an : zimm@mpie-duesseldorf.mpg.de
Gruss Ratz

-----------------------------------------------------------------------------



Re: UNIX SYSTEM ADMIN (Methedras,  3. Nov 1996, 20:11:18):
~#! rn=Ratz rt=847036137
~#! tid=847036137
Hiwi-Job? dafuer gibts in Passau genau 10.00 DM die Stunde. So wenig
kriegt man als Sysadmin? Erstaunlich, wer nimmt nur die Arbeit an?

            Methedras

-----------------------------------------------------------------------------



Re: Re: UNIX SYSTEM ADMIN (Anakin,  3. Nov 1996, 21:29:54):
~#! rn=Methedras rt=847048278
~#! tid=847036137
Also als HiWi bekommt man in Berlin 18,23 DM im Moment. Dafuer
kann man schon arbeiten gehen.

Anakin.

-----------------------------------------------------------------------------



Re^3: UNIX SYSTEM ADMIN (Grimmborn,  4. Nov 1996, 00:11:22):
~#! rn=Anakin rt=847052994
~#! tid=847036137

Aeh, ihr wisst dasss HiWi im engeren Sinne eine wissenschaftliche Hilfskraft
ist? Die bekommt (in Koeln) genau das doppelte einer SHK (studentischen
Hilfskraft), setzt einen Abschluss (Diplom) voraus und gibt dann so grob
32DM/Stunde. Und das ist doch schonmal sooo armselig nicht, oder?

Grimmborn der Atheist. SAK. Noch schlechter bezahlt als SHK...


-----------------------------------------------------------------------------



Re^3: UNIX SYSTEM ADMIN (Kretek,  4. Nov 1996, 12:09:34):
~#! rn=Anakin rt=847052994
~#! tid=847036137
**seufz**
Ich sollte vielleicht die Uni wechseln...

KreteK
(schuftet auch auf 10-DM-Basis)

-----------------------------------------------------------------------------



Re^4: UNIX SYSTEM ADMIN (Wurzel,  4. Nov 1996, 19:53:29):
~#! rn=Kretek rt=847105774
~#! tid=847036137
oder endlich fertigwerden. eigentlich die bessere alternative.

wurzel (wuerde fuer 32 mark pro stunde morgens nicht mal aufstehen :)

-----------------------------------------------------------------------------



Re: Re: *argl* ...? (Mupfel,  4. Nov 1996, 20:17:48):
~#! rn=Methedras rt=846885349
~#! tid=846871869

*Du* bist Bergzwerg???

-mupfel-

-----------------------------------------------------------------------------



Re^3: *argl* ...? (Methedras,  4. Nov 1996, 23:22:41):
~#! rn=Mupfel rt=847135068
~#! tid=846871869
Nicht der Bergzwerg aus UNItopia. :)

-----------------------------------------------------------------------------



Re^3: *argl* ...? (Ancalagon,  5. Nov 1996, 09:03:47):
~#! rn=Mupfel rt=847135068
~#! tid=846871869
tach!
er ist wohl eher ein Zwergberg....... :)
nur mal so....
                                               Ancalagon
                                        Draco knuddellensis major

-----------------------------------------------------------------------------



Re^5: UNIX SYSTEM ADMIN (Raffi,  5. Nov 1996, 11:30:35):
~#! rn=Wurzel rt=847133609
~#! tid=847036137

Wieso ? 32 DM die Stunde ist doch Ok.
(Ich geh mal davon aus das diese 32 DM nach Waigel und Bluems Zugriff gemessen
sind :)

Gruss
H.

-----------------------------------------------------------------------------



Re^5: UNIX SYSTEM ADMIN (Kretek,  5. Nov 1996, 16:06:20):
~#! rn=Wurzel rt=847133609
~#! tid=847036137
Gemeinheit!
Wenn Du damit auf meine mittlerweile nahe an Caradhras' Niveau aufgestiegene
Semesterzahl anspielen willst, dann, dann... Dann ist Dir das voll
gelungen! :-)

KreteK

-----------------------------------------------------------------------------



Re: *argl* ...? (Catweazle,  5. Nov 1996, 19:10:44):
~#! rn=Nichts rt=846871869
~#! tid=846871869

suche-biete?
YTC

-----------------------------------------------------------------------------



Re: Re: *argl* ...? (Methedras,  6. Nov 1996, 08:30:07):
~#! rn=Catweazle rt=847217444
~#! tid=846871869
Klar, er sucht eine Loesung fuer sein Problem und bietet komischer
Ausgaben von tf.

-----------------------------------------------------------------------------



LYNX fuer DOS? (Kretek, 22. Nov 1996, 18:00:07):
Hallole!

Wie schon aus dem Subject unschwer zu erkennen: Ich suche
den LYNX-Browser fuer MS-DOOF. Sollte Freeware sein, weil's unser RZ
sonst ja doch nicht installieren wird... Gips sowas, und wenn ja,
wo denn? Archie findet naemlich nix.


Ciao,
KreteK

-----------------------------------------------------------------------------



Re: LYNX fuer DOS? (Bloodyharry, 23. Nov 1996, 00:06:43):
~#! rn=Kretek rt=848682007
~#! tid=848682007
Ich fuerchte da kannst Du sehr lange suchen...
Installiere Linux, zb von der SuSE CD, da ist lynx dabei und ist alles
freeware. Natuerlich ist noch viel mehr dabei. :)
DOS kann man weiterhin nutzen, zb das Kommando startlin.

bh

-----------------------------------------------------------------------------



Re: Re: LYNX fuer DOS? (Hadra, 23. Nov 1996, 00:11:38):
~#! rn=Bloodyharry rt=848704003
~#! tid=848682007
fuer dos lynx braucht er nicht lange zusuchen, sondern einfach mal unter
ftp://ftp.rhrz.uni-bonn.de/pub/pc/dos/netze/www/lynx08b.zip
nachzusehen.

das teil ist zwar alles andere als berauschen, aber es funzt halbwegs.

-----------------------------------------------------------------------------



Re^3: LYNX fuer DOS? (Babs, 23. Nov 1996, 05:47:21):
~#! rn=Hadra rt=848704298
~#! tid=848682007
Ich kann nur abraten. Lynx kann paraktisch nix: keine Grafiksachen, kein
Java, keine Frames...
Es gibt kaum eine Webseite, die man damit halbwegs ansehen kann.
Dagegen gibts Netscape fuer uralt Windoof fuer Unis uns sonstige Ausbildungs-
einrichtungen als Freeware.
Damit geht fast alles. 

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Tasha, 23. Nov 1996, 12:11:04):
~#! rn=Babs rt=848724441
~#! tid=848682007
Hi1

Na klasse, dann kann Lynx doch alles was man will: Keine ewigen downloads von
Grafiken die man eh nicht sehen will, keine Sicherheitsluecken durch Java,
keine Frames, bei denen man den filenamen der seite, die einen interessiert
nicht mehr sehen kann.
Und das beste: Leute, die zu doof sind, eine Seite Browser-Unabhaengig zu
gestalten (ich sag mal nur ALT) kann man auch gleich richtig anscheissen. :)
Lynx rules!

Tasha

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Hadra, 23. Nov 1996, 12:24:58):
~#! rn=Babs rt=848724441
~#! tid=848682007
lynx ist der einzig wahre browser (es sei denn man will den neuen playboy
lesen ;)
mal abgesehen davon war urspruenglich nicht nach netscape fuer uralt windoof
gefragt sondern schlicht und ergreifend nach lynx fuer dos ;)

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Fyt, 23. Nov 1996, 15:11:00):
~#! rn=Babs rt=848724441
~#! tid=848682007

Hm, Babs, wenn Du natuerlich nur bunte Bilder anschauen willst...
Oder die anderen Spielereine, die WWW-'Autoren' fuer unverzichtbar halten.
Ich komme mindestens 90% der Zeit mit Lynx aus, und ich denk mal, dass jeder,
der das WWW als Informationsquelle und nicht als Spielwiese betrachtet, auf
aehnlich Werte kommt. 

Fyt.


-----------------------------------------------------------------------------



Re^5: LYNX fuer DOS? (Fyt, 23. Nov 1996, 15:13:06):
~#! rn=Fyt rt=848758260
~#! tid=848682007

BTW: Mein Lynx kann mir zwar keine bunten Bilder zeigen, aber er weiss,
wie er 'zgv' aufrufen kann. Und das reicht manchmal...

Fyt.

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Toe, 23. Nov 1996, 23:43:22):
~#! rn=Babs rt=848724441
~#! tid=848682007
Grafik, Java und Frames sind m. E. voellig ueberfluessig!
toe

-----------------------------------------------------------------------------



Re^5: LYNX fuer DOS? (Woody, 24. Nov 1996, 01:41:39):
~#! rn=Toe rt=848789002
~#! tid=848682007

jo fuehrt doch endlich wieder die guten alten 40x25 screens ein >:)

woody, die zeit um 20 jahre zurueckdrehend.

-----------------------------------------------------------------------------



Re^6: LYNX fuer DOS? (Cheasy, 24. Nov 1996, 01:57:35):
~#! rn=Woody rt=848796099
~#! tid=848682007

Ich will Lynx fuern Teletype. Die rattern so schoen ;-)
-Cheasy

-----------------------------------------------------------------------------



Re^7: LYNX fuer DOS? (Engywuck, 24. Nov 1996, 13:56:28):
~#! rn=Cheasy rt=848797055
~#! tid=848682007
Also ich find Frames von der Anwendung her manchmal recht praktisch. Sie
ordnen etwas das Informationschaos auf uebergrossen Seiten. Auf Grafik
verzichtet mein Netscape auch meistens (kennt eigentlich keiner die Option
"Autoload Images off" ?), und daher brauch ich so ein unhandliches Lynx nicht.
Aber ich bin ja auch ein Weichei und Warmduscher und nehm lieber Word statt
TeX ;)

Engy*

-----------------------------------------------------------------------------



Re^5: LYNX fuer DOS? (Kretek, 24. Nov 1996, 17:54:28):
~#! rn=Hadra rt=848748298
~#! tid=848682007
Richtig! Hadra versteht mich!
Netscape fuer Win haben wir doch schon laaaaange in der Uni. Es
geht ja auch nur darum, unter DOS einen funtionsfaehigen Browser
zur Verfuegung zu haben, ohne gleich WIN hochfahren zu muessen.
Und zur Kontrolle von Texten u. ae. tut's LYNX dreimal.

KreteK

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Bloodyharry, 25. Nov 1996, 01:33:57):
~#! rn=Babs rt=848724441
~#! tid=848682007
Netscape sucks
Lynx rules!

bh

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Aline, 25. Nov 1996, 09:38:14):
~#! rn=Babs rt=848724441
~#! tid=848682007
Babs schrieb:

>Ich kann nur abraten. Lynx kann paraktisch nix: keine Grafiksachen, kein
>Java, keine Frames...

Hoert sich doch klasse an! Hoert sich so an als wuerde von jeder
WWW-Seite nur das wichtigste uebertragen. Der Text, dass die meisten
Seiten ihren geringen Informationsgehalt mit Graphik, Frames und Co.
kaschieren muessen fuehrt doch nur zu mehr Netlag.

Aline (will endlich etwas weniger LAG haben!)

-----------------------------------------------------------------------------



Re^5: LYNX fuer DOS? (Quasimodo, 25. Nov 1996, 14:41:16):
~#! rn=Aline rt=848911094
~#! tid=848682007
Ich glaube, dass wir einfach nur im falschen Land leben. Ich bin letzte Woche
in Schweden gewesen. Da stoeren die Grafiken gar nicht, weil sie eh in 0,nix
geladen sind. Die Schweden scheinen etwas mehr Wert auf technische Neuerungen
zu legen. Sieht man schon an der Handy-Quote.

Quasimodo

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Acrimon, 25. Nov 1996, 18:25:33):
~#! rn=Babs rt=848724441
~#! tid=848682007
Sage nichts gegen Lynx!
Es ist ein gewaltiger Vorteil, nicht von Grafiksachen, sinnlosen Applets und
Derartigem belaestigt zu werden und das Geld aus der Tasche gezogen zu
bekommen.
Und eine Seite, die unter Lynx nixht lesbar ist - die ist es nicht wert,
geladen zu werden.

Acrimon, der Rote Ritter mag kein "Herumgesurfe" (Netzlag).

-----------------------------------------------------------------------------



Re^4: LYNX fuer DOS? (Marcus, 25. Nov 1996, 23:48:57):
~#! rn=Babs rt=848724441
~#! tid=848682007
>Ich kann nur abraten. Lynx kann paraktisch nix: keine Grafiksachen, kein
>Java, keine Frames...
2.6 kann Frames. Und clients-side imagemaps. Und alles, was so in html3.2 drin
ist und sich auf textbasis implementieren laesst. Zwar vielleicht nicht so,
wie man es von netscape gewoehnt ist, aber so ungefaehr. Bilder kann man
bei Bedarf nachladen und mit 'xv' ansehen. Backgroundsounds kriegen auch nen
link (fuer 'playmidi' o.ae.) 

>Es gibt kaum eine Webseite, die man damit halbwegs ansehen kann.
Nun, ich benutze Lynx um Informationen zu bekommen. Nicht bunte Bildchen.
[Und ja, auch die trailer der neuesten DS9 folge kann man sich mit Lynx saugen
 ;)]
>Dagegen gibts Netscape fuer uralt Windoof fuer Unis uns sonstige Ausbildungs-
>einrichtungen als Freeware.

Tja. Lynx musst du dafuer selbst compilieren. Echt schrecklich.

Marcus

-----------------------------------------------------------------------------



War mal wer in den USA? (Ronda, 30. Nov 1996, 15:08:03):
Ich wunder mich immer, was man in dieser Rubrik alles findet, warum also nicht
auch das:
Ich suche Leute, die schon mal in den Usa an einer Uni waren...
Und zwar wuerde ich gern in den USA meine Diplomarbeit machen - und dafuer
waere es klasse, wenn ich da schon Ansprechpartner haette...
In der Hoffnung, dass da jemand irgendwen kennt, der nen Kumpel hat, dessen
Schwester nen Freund hat, dessen Geliebte *na und so weiter...*
Bevor ichs vergesse: (ist vielleicht ja nen bisschen wichtig...) - ich
studiere Maschinenbau =;) *naja, ne Arbeit ueber die Vermehrung von
Wuestentieren bei Umgebungstemperaturen ueber 70 Grad ware also fuer mich ...
nicht so ganz das richtige...*
Waer toll, wenn jemand was wuesste!
Danke schon mal,
                 Ronad
Argl... natuerlich    Ronda
*fingereinfrierundnichtmehrschnellgenugtippenkoennend*

-----------------------------------------------------------------------------



Re: Dringend alte ZT-liste gesucht! (Grimmborn,  5. Dez 1996, 16:42:32):
~#! rn=Macq rt=849799527
~#! tid=849799527

Aha, ist das der neue Stil hier?
Ich bin an diversen Komplettloesungen interessiert. Schrat, Bennie und
Amaryllis hab ich schon. Wer was hat: Schickts mir doch bevor es vergammelt.
Mein Zweitie freut sich!

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^3: Dringend alte Zt-liste gesucht! (Grimmborn,  5. Dez 1996, 16:54:44):
~#! rn=Macq rt=849800950
~#! tid=849800950

rechthaberisch? Inwieweit, ich hab doch nichts kritisiert was Du geschrieben
hast?
Aber wenn hier per Anzeige nach zt-Listen gesucht wird kann ich doch auch nach
Komplettloesungen suchen, unabhaengig vom Alter?

Grimmborn der Atheist, ziemlich sicher aelter als Macq...

-----------------------------------------------------------------------------



Re^4: Dringend alte Zt-liste gesucht! (Oetti,  5. Dez 1996, 16:55:45):
~#! rn=Grimmborn rt=849801284
~#! tid=849800950
DA faellt mir ein...

Ich suche das Komplettscript: Magier in einer Stunde...

Mail me...;-))

Gruss

Oe*

-----------------------------------------------------------------------------



Re^5: Dringend alte Zt-liste gesucht! (Rochus,  5. Dez 1996, 16:56:47):
~#! rn=Oetti rt=849801345
~#! tid=849800950
Frag mal Fyt nach /magier

-----------------------------------------------------------------------------



Re^5: Dringend alte Zt-liste gesucht! (Grimmborn,  5. Dez 1996, 16:59:54):
~#! rn=Oetti rt=849801345
~#! tid=849800950
Logisch, den Befehl "Nicht mehr Magier in 5 Minuten" kennst Du ja schon... ;-)

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^6: Dringend alte Zt-liste gesucht! (Hadra,  5. Dez 1996, 18:19:39):
~#! rn=Rochus rt=849801407
~#! tid=849800950
hab gerade fyt gefingert, der ist immer noch spieler.
das script scheint also nicht fertig zu sein ;)

-----------------------------------------------------------------------------



Re: Re: Dringend alte ZT-liste gesucht! (Fyt,  5. Dez 1996, 20:48:58):
~#! rn=Grimmborn rt=849800552
~#! tid=849799527
Hm, die von der Arena koenntest Du bekommen, Grimmi ;-)

Fyt.


-----------------------------------------------------------------------------



Re^6: Dringend alte Zt-liste gesucht! (Fyt,  5. Dez 1996, 20:50:22):
~#! rn=Rochus rt=849801407
~#! tid=849800950

Hm, Rochus, ich hab die Sache mit 'zwinge magier zu clone /obj/vertrag'
noch nicht hinbekommen, aber vielleicht koenntest Du mir ja helfen dabei :-)

Fyt.

-----------------------------------------------------------------------------



Re^3: Dringend alte ZT-liste gesucht! (Cauno,  6. Dez 1996, 11:37:10):
~#! rn=Fyt rt=849815338
~#! tid=849799527
Ich haette da noch eine fuer Inferno anzubieten ... Tode mit eingeschlossen.

C. No

-----------------------------------------------------------------------------



Re: Dringend alte ZT-liste gesucht! (Yendi,  6. Dez 1996, 16:03:48):
~#! rn=Macq rt=849799527
~#! tid=849799527

Och, frag doch mal R?ne nach seinem Auto-ZT-skript -- wenn Du ihm genug
bietest, laesst er es Dich vielleicht mal abklappern...
Aber das wuerde, denke ich, ein wenig auffallen...

Yendi, nachdenklich seine stats musternd.


-----------------------------------------------------------------------------



Re: Dringend alte ZT-liste gesucht! (Asmodis,  9. Dez 1996, 21:25:41):
~#! rn=Macq rt=849799527
~#! tid=849799527
Hmm, war letztes jahr nicht 1995 ??
Oder ist Sylvester schon vorbei ?

Asmodis (beunruhigt, etwas verpasst zu haben ...)

-----------------------------------------------------------------------------



Plug-In und wav-files (Har, 12. Dez 1996, 10:27:34):
Moin...der archie ist irgendwie ueberlastet und schmeisst mich dauernd raus,
deshalb hier eine bitte:
Weiss einer ein Plug-In fuer Netscape, dass es erlaubt .gz-files zu
lesen/downzuloaden.Es gibt bei Netscape was namens Keyview, aber duer die
Version muss man sich registrieren lassen (argl). liegt das vieleich irgendwo
auf einem Mirror?
Ausserdem suche ich wav-files des neuen Star-trek-Films, irgendeiner von Euch
bekloppten muesste doch schon welche haben, oder?

Antworten per Mail an mich

thank you in advance

Har

-----------------------------------------------------------------------------



Computerspiele fuer Kinder (Bogus, 17. Dez 1996, 08:43:59):
Hi Leute,
ich suche Computerspiele fuer Kinder ab 5 Jahren. Es sollten keine
Ballerspiele sein, sondern irgendwas nettes. Wenn man das mit dem MG
vergleicht sollten die Spiele so dass Level von Schrat, Lan Wu's Tasche oder
Titiwu haben. 
Ich weiss, dass es frueher mal Winnie the Pooh (?) auf dem Atari gab -- leider
auf englisch. 
Also mailt mir, wenn ihr irgendwelche schoenen Kinderspiele kennt (es duerfen
auch paedagogisch wertvolle sein *grins*).
Danke
Bogus, verzweifelt suchend

-----------------------------------------------------------------------------



Re: Computerspiele fuer Kinder (Tanis, 17. Dez 1996, 10:46:50):
~#! rn=Bogus rt=850808639
~#! tid=850808639
Alles was mit Super Mario zu tun hat *grins breit*

Tanis ... der Super Mario spitze findet :)

-----------------------------------------------------------------------------



Re: Re: Computerspiele fuer Kinder (Yantro, 17. Dez 1996, 10:55:27):
~#! rn=Tanis rt=850816010
~#! tid=850808639

Fuer mich ist BoulderDash in allen Variationen immer noch das Ultimo... aber
vielleicht haenge ich da auch sentimentalen C64-Zeiten nach :)
Yantro

-----------------------------------------------------------------------------



Re: Re: Computerspiele fuer Kinder (Supermario, 17. Dez 1996, 13:00:50):
~#! rn=Tanis rt=850816010
~#! tid=850808639


             Meinst Du etwa mich? ;)





-----------------------------------------------------------------------------



Re^3: Computerspiele fuer Kinder (Grimmborn, 17. Dez 1996, 13:06:51):
~#! rn=Supermario rt=850824050
~#! tid=850808639

Phh, bring Du erstmal noch ne Weile eine Riesenleistung im Defensivbereich,
rede dann mit dem Bundestrainer darueber und lass uns dann im naechsten Jahr
den Supermario sehen.

Grimmborn der Atheist liest Sportseiten in der Zeitung.


-----------------------------------------------------------------------------



Re: Computerspiele fuer Kinder (Bloodyharry, 17. Dez 1996, 14:41:07):
~#! rn=Bogus rt=850808639
~#! tid=850808639
Schau Dir mal 'The incredible Toons' an. Das ist der Nachfolger von 'The
incredible Machine'. Ist vieleicht noch etwas schwer fuer 5jaehrige aber mit
etwas Hilfe macht das Kindern richtig Spass, da man nebenbei auch einigen
Unsinn anstellen kann. Jedenfalls ist es lustig, lehrreich und mal was anderes
als die dumpfsinnigen Ballerspiele.

bh

-----------------------------------------------------------------------------



Re: Re: Computerspiele fuer Kinder (Schoko, 17. Dez 1996, 21:10:35):
~#! rn=Bloodyharry rt=850830067 rg=suche-biete
~#! tid=850808639
Hmmmm

Ich frage mich warum er in seinem Artikel schrieb MAILT mir :))

Schoko ( hat heute mal ausnamsweise seinen Zeigefinger lehrerhaft zum Tadel
erhoben :)

-----------------------------------------------------------------------------



Re^3: Computerspiele fuer Kinder (Bloodyharry, 18. Dez 1996, 01:20:44):
~#! rn=Schoko rt=850853435 rg=suche-biete
~#! tid=850808639
Weil ich der Meinug bin, das es sicher noch andere Leute interessieren
koennte. Was interessiert es mich da, was er geschrieben hat.

bh

-----------------------------------------------------------------------------



Re: Computerspiele fuer Kinder (Raffi, 18. Dez 1996, 10:07:14):
~#! rn=Bogus rt=850808639
~#! tid=850808639
Da Gibts jetzt Kaeptn Blaubaer als Spiel .... ich habs mir mal kurz angeschaut
... wirklich niedlich gemacht (Zeichnungen alle vom Moers) Der Spielinhalt ist
vieleicht nicht gerade ne herausforderung, bewegt sich aber auf dem Niveau
einer guten Queste.

Ausserdem hab ich letztens was in der Buchhandlung gesehen, das nett war, aber
ich weiss jetzt den namen nicht mehr ... ich schau nochmal.

Gruss
H.

-----------------------------------------------------------------------------



Mac gesucht (Sushi, 18. Dez 1996, 12:50:50):
Ein Kasten Bier fuer den, der mir 5 Dateien auf einem Mac ins Dos-Format
ueberrtraegt.

Sushi
uzs8kb@uni-bonn.de

-----------------------------------------------------------------------------



Re: Mac gesucht (Hate, 18. Dez 1996, 15:47:57):
~#! rn=Sushi rt=850909850 rg=suche-biete
~#! tid=850909850
Tja, wo sind die Dateien?

Hate.

-----------------------------------------------------------------------------



Re: Re: Computerspiele fuer Kinder (Catweazle, 23. Dez 1996, 13:46:40):
~#! rn=Raffi rt=850900034 rg=suche-biete
~#! tid=850808639

Puh, schreibt ihr alle eine Kacke. War doch ne ganz einfache Frage:

http://www.vox.de/click/kw9651/game.html , da gibts zumindest ein paar
Anregungen.

Die Sendung ist von Samstag, wird aber zumeist wiederholt, ich empfehle 
daeher: ansehen.

Yours truly,
     Catweazle

-----------------------------------------------------------------------------



HTML-Editor fuer Linux (Sushi,  2. Jan 1997, 17:48:24):
s.o.
Bitte keine Witze wie "emacs" (8 Megs and constantly swapping), "xemacs" oder
"vi". Lieber einen Tip, ob es z.B. ASHE fuer Linux gibt und wenn ja, wo.

Danke.

Sushi

-----------------------------------------------------------------------------



Re: HTML-Editor fuer Linux (Prolog,  3. Jan 1997, 09:20:24):
~#! rn=Sushi rt=852223704 rg=suche-biete
~#! tid=852223704
Was hast du gegen vi. Der ist doch ganz nett, wenn man mit ihm umgehen kann.
Ausserdem ist er ed-kompatible. Und den wirst du als Magier im MUD wohl
kennen. Oder programmierst du nicht und musst ab und zu Bugs online (also ohne
downloading) entfernen? :-)

ProoG

-----------------------------------------------------------------------------



Re: Re: HTML-Editor fuer Linux (Jariel,  6. Jan 1997, 02:11:56):
~#! rn=Prolog rt=852279624 rg=suche-biete
~#! tid=852223704
ansonsten probier doch Netscape 30.1 Gold aus. der hat nen internen Editor.

J.

-----------------------------------------------------------------------------



Re^3: HTML-Editor fuer Linux (Kretek,  6. Jan 1997, 13:02:55):
~#! rn=Jariel rt=852513116 rg=suche-biete
~#! tid=852223704
Aehm... Entweder, Du meinst Netscape 3.01, Jariel, oder ich hab da ein paar
Updates verpasst...



       | /  |\  |--  ---  |--  | /
       |<   |/  |-    |   |-   |<
       | \  |\  |--   |   |--  | \

-----------------------------------------------------------------------------



Artikel gesucht. :-) (Morgon, 12. Jan 1997, 13:48:51):
Hat noch einer den Artikel: 'Die 10 besten Gruende warum Gott keine Frau ist'
Mail an mich. :-)

-----------------------------------------------------------------------------



suche liedtext (Kartoffel, 12. Jan 1997, 15:21:17):

Halloele,

hat jemand von Euch den Text zu 'Don't fear the Reaper'?

Wenn ja, waer lieb wenn der/diejenige mir den mal schicken koennte.

Kartoffel

-----------------------------------------------------------------------------



Regelwerke... (Anatol, 12. Jan 1997, 18:39:13):

Ich suche alte Regelwerke, deutsch oder englisch.
Wer also seine nicht mehr braucht... mail me ;-)

Anatol

-----------------------------------------------------------------------------



Re: Regelwerke... (Lycar, 12. Jan 1997, 20:16:11):
~#! rn=Anatol rt=853090753 rg=suche-biete
~#! tid=853090753
Ich hab die D&D Basisregeln (die beiden roten Buecher) doppelt .... 
Wer bietet am meissten ;)

Lycar

-----------------------------------------------------------------------------



Festplatte gesucht (Dancer, 14. Jan 1997, 02:29:38):
Hi,

ich suche eine SCSI-Festplatte, um die 2 GB gross, bei mir wirds zu voll in
der Kiste. :) Hat jemand rein zufaellig eine ibm dors abzugeben oder etwas
anderes Brauchbares zu vernuenftigem Preis?

Dancer


-----------------------------------------------------------------------------



Re: Festplatte gesucht (Har, 14. Jan 1997, 09:37:06):
~#! rn=Dancer rt=853205378 rg=suche-biete
~#! tid=853205378
Eine IBM-Dors haette cih auch gerne, falls einer also gleich 2 hat oder weiss,
won man 2 herbekommt...

Har (sucht seit Anfang Dezember nach einer 2,1 IBM)

-----------------------------------------------------------------------------



Re: Re: Festplatte gesucht (Hadra, 15. Jan 1997, 01:22:38):
~#! rn=Har rt=853231026 rg=suche-biete
~#! tid=853205378
lasst uns nen club aufmachen ;)

-----------------------------------------------------------------------------



Re: Festplatte gesucht (Boing, 15. Jan 1997, 13:25:56):
~#! rn=Dancer rt=853205378 rg=suche-biete
~#! tid=853205378
Ist Dein Map-Generator etwas ausser Kontrolle geraten? :)
  Boing

-----------------------------------------------------------------------------



Re: Re: Festplatte gesucht (Raffi, 15. Jan 1997, 14:05:39):
~#! rn=Boing rt=853331156 rg=suche-biete
~#! tid=853205378
Schaetze das ist ne folge von WinDoof 95.

H.
(Will auch mitglied im SCSI-Sucher-Fanclub werden)

-----------------------------------------------------------------------------



Re^3: Festplatte gesucht (Irix, 16. Jan 1997, 15:14:00):
~#! rn=Hadra rt=853287758 rg=suche-biete
~#! tid=853205378
Duerfen auch Leute rein die eine haben? :)

L.F.

-----------------------------------------------------------------------------



Re^4: Festplatte gesucht (Har, 16. Jan 1997, 16:06:25):
~#! rn=Irix rt=853424040 rg=suche-biete
~#! tid=853205378
Leute die eine haben duerfen nur rein, wenn sie diese vorher bei mir
abliefern!

Har (gierig auf ne neue Platte)

P.S.: Wer schlaegt ne Alternative vor?

-----------------------------------------------------------------------------



Re^5: Festplatte gesucht (Wurzel, 16. Jan 1997, 20:51:03):
~#! rn=Har rt=853427185 rg=suche-biete
~#! tid=853205378
alternative? kein problem, ich habe 2x hp c3323 laufen, die zwar nur jeweils
ein gb haben, aber eins steht fuer mich fest: die naechste (groessere) platte
wird wieder hp.

wurzel

-----------------------------------------------------------------------------



Ich komme nach Stuttgart *jubel!* (Ronda, 17. Jan 1997, 14:40:50):
Aaaaalso, wenn alles glatt geht, werd ich ab dem 1.3. fuer sechs Monate nach
Stuttgart kommen *zu dem Autohersteller mit den niedlichen Sternchen auffem
Kuehler =;) *
Ich suche nun dafuer ne Bude oder ein Zimmer - weiss zufaellig jemand eine
Wohnung - oder kennt jemanden, der jemanden kennt - oder hat nen guten Tip?
Wuerd mich freuen *tu auch mindestens ein Bier dafuer aus.... wenn ich auch
eins trinken darf....*

       Ronda

-----------------------------------------------------------------------------



Re^3: Festplatte gesucht (Nasim, 19. Jan 1997, 20:22:25):
~#! rn=Hadra rt=853287758 rg=suche-biete
~#! tid=853205378
Hm, ich haette vorgestern noch welche bekommen koennen, allerdings zu 'nem
ziemlich schlechten Preis. Aber angeblich sind die Produktionsumstellungen bei
IBM abgeschlossen und nun wird wieder reichlich produziert. Allerdings nur
noch Ultra- und Ultra-Wide-SCSI-Platten.

   Nasim (Dealer)

-----------------------------------------------------------------------------



Programmier-Problem (Dieder, 27. Jan 1997, 15:06:27):
Hi!

Ich suche eine Scroll-Routine fuer den VESA-Mode $101 *640x480x256*,
moeglichst in aalle RIchtungen und auch ausschnittsweise.

Wer sowas hat bittebitte Mail an mich, ich such das schon seit Ewigkeiten, da
ich anscheinend zu lame bin das selber zu proggen! ;)

Gruss,
Dieder

-----------------------------------------------------------------------------



latex2winword6 (Ratz, 29. Jan 1997, 09:55:18):
moin,
da es neuerdings Verlage gibt die Artikel nur in Winword annehmen und nicht in
TEX, suche ich ein gut funktionierendes Konvertieungs-System. Ideen,
Anregungen bitte an mich. oder an zimm@mpie-duesseldorf.mpg.de
Danke

-----------------------------------------------------------------------------



Re: latex2winword6 (Wurzel, 29. Jan 1997, 18:39:37):
~#! rn=Ratz rt=854528118 rg=suche-biete
~#! tid=854528118
wir nehmen fuer so etwas werkstudenten :)

-> schmarrn

wurzel

-----------------------------------------------------------------------------



Re: latex2winword6 (Cauno, 30. Jan 1997, 10:38:37):
~#! rn=Ratz rt=854528118 rg=suche-biete
~#! tid=854528118
Ich empfehle ein System fuer die Konvertierung des Verlages zu
Linux-Anwendern. Ist ja schlimm, dieser Windows-Chauvinismus ...

C. No
nn

-----------------------------------------------------------------------------



Re: Re: latex2winword6 (Engywuck, 30. Jan 1997, 11:05:56):
~#! rn=Cauno rt=854617117 rg=suche-biete
~#! tid=854528118
Ich denke kaum, dass es sich ein Verlag leisten kann, nur noch TeX-Dokumente
anzunehmen ;) Es sei denn, er will nur noch eine Handvoll Publikationen pro
Jahr ;)

Engy*

-----------------------------------------------------------------------------



Re^3: latex2winword6 (Cauno, 30. Jan 1997, 13:47:33):
~#! rn=Engywuck rt=854618756 rg=suche-biete
~#! tid=854528118
Sollen Sie ja auch nicht. Aber nur Windoof-Dokumente zu nehmen, find ich
unverschaemt.

C. No

-----------------------------------------------------------------------------



suche 1830 (Snuggle, 30. Jan 1997, 14:00:07):
Hi Ihrs,

ich suche das Spiel 1830 und zwar die Computerversion davon. Das Brettspiel
finde ich einfach nur genial, aber leider ist die Computerversion beim
Haendler vergriffen. Hat vielleicht jemand das Teil und waer bereit, es
abzugeben?

Snug.

-----------------------------------------------------------------------------



Re: suche 1830 (Sidolin, 30. Jan 1997, 14:02:36):
~#! rn=Snuggle rt=854629207 rg=suche-biete
~#! tid=854629207
Vergiss es...
Es hat reichlich Bugs, die Computergegner sind mehr als nur laecherlich
(wer in einer Partie alleine gegen den Computer nicht alle 8 Firmen kriegt,
macht was falsch)
und auch sonst ist das Brettspiel besser. :-)

Sidolin. Streckenbaumeister 4.DAN. :-)

-----------------------------------------------------------------------------



Re^4: latex2winword6 (Kretek, 30. Jan 1997, 15:35:35):
~#! rn=Cauno rt=854628453 rg=suche-biete
~#! tid=854528118
Ist aber mittlerweile (leider) fast schon Usus. War ein ziemliches
Problem, als mein damaliger Scheff und ich in den USA ein Buch ueber einen
deutschen Verlag (mit Sitz in N.Y.) publizieren wollten, weil auch die auf
einer WinWord-Datei bestanden, und in .EDU-Land benutzt wirklich so gut wie
jeder WordPerfect... War 'ne ekelhafte Konvertiererei, weil der eingebaute
Converter ein paar Spezialformate ums Verrecken nicht richtig umsetzen
wollte (konnte?)


       | /  |\  |--  ---  |--  | /
       |<   |/  |-    |   |-   |<
       | \  |\  |--   |   |--  | \

-----------------------------------------------------------------------------



Re^5: latex2winword6 (Har, 30. Jan 1997, 16:29:08):
~#! rn=Kretek rt=854634935 rg=suche-biete
~#! tid=854528118
argl, geht dieser winword-wordperfect-latex-thread schon wiederlos, bitte
nicht, jeder schreibt wie er will und muss dann halt acuh manchmal
konvertieren, schluss Ende aus

Har(s Artiekl wurden, in winword, anstandslos akzeptiert, gedruckt und
veroeffentlicht)

-----------------------------------------------------------------------------



Re^6: latex2winword6 (Grimmborn, 30. Jan 1997, 16:31:40):
~#! rn=Har rt=854638148 rg=suche-biete
~#! tid=854528118
Du verstehst nicht worum es geht: Der Konsens ist, jeder solle doch schreiben
duerfen wie er will.
Der Streitpunkt sind Verlage, die nur eine Form akzeptieren (WfW6) und keine
Andere.
Das Problem sind fehlende tex2word6-Konverter.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^7: latex2winword6 (Har, 30. Jan 1997, 16:36:38):
~#! rn=Grimmborn rt=854638300 rg=suche-biete
~#! tid=854528118
Hmmm, hab das Problem glaube ich schon verstanden, ich aerger mich auch
masslos, wenn ich von eoinem amerikanischen Verlag gezwungen werde, die
Druckvorlagen eigenhaendig und zeilengenau auf amerikanischem Format zu
erstellen, die Sache ist aber die: Eine Druckerei kann un wird niemals nicht
6000 verschiedenen Konvertierungsprogramme bereit halten, ddann haetten sie
naemlich jeden Tag die Probleme, die ihr habt. Aus diesem Grund wird halt
einfach eine Sache festgelegt, womit nat
womit natuerlich die Probleme beim Schreibenden sind. Und daran aender die
Argumentation der boese boese Verleger will mein TeX-File nicht haben nun mal
nix ;-)

Har (kann aber leider nicht mit einem Konverter dienen)

Schluss des Threads, ich schreibe hier eh nur, weil ich Langeweile habe 

-----------------------------------------------------------------------------



Re^8: latex2winword6 (Rumata, 31. Jan 1997, 09:58:04):
~#! rn=Har rt=854638598 rg=suche-biete
~#! tid=854528118
Manchmal frage ich mich, was die Verlage gemacht haben, als es noch
garkeite Textverarbeitungen gab. :-)
Aber nur manchmal ... :-))
Rumata

-----------------------------------------------------------------------------



Re^7: latex2winword6 (Hadra, 31. Jan 1997, 13:23:28):
~#! rn=Grimmborn rt=854638300 rg=suche-biete
~#! tid=854528118
der konsens ist, dass ich bei einem verlag der meinen kram veroeffentlichen
soll/will erst mal frage wie das zeug aussehen soll.

-----------------------------------------------------------------------------



Re^8: latex2winword6 (Grimmborn, 31. Jan 1997, 13:40:24):
~#! rn=Hadra rt=854713408 rg=suche-biete
~#! tid=854528118
*seufz* Genau das hatter getan und dann nach dem Konverter gesucht (ich
schreib mein Zeug doch bitte so wie ich will und konvertiere spaeter). Fuer
die Diskussion kanner nun wirklich nichts.

GdA

-----------------------------------------------------------------------------



Austritt (Dancer, 31. Jan 1997, 14:11:59):
Ich wollte nur mal kurz berichten, dass ich aus dem Festplatten-Such-Club
austrete. Seit heute surrrt eine 9GB-Micropolis-AV neben einer 4GB-Dors in der
Kiste hier und laesst mein Herz hoeher schlagen.
Danke fuer die Hilfe (die, an die das geht wissen das jetzt :) ).

Dancer

P.S.: die 2GB-Dors ist im Moment nicht lieferbar, also wenn ihr noch eine
sucht, nehmt was ihr kriegen koennt. Alternate in Giessen hat noch welche fuer
600.-

-----------------------------------------------------------------------------



Re^9: latex2winword6 (Kretek,  1. Feb 1997, 05:19:16):
~#! rn=Rumata rt=854701084 rg=suche-biete
~#! tid=854528118
Da hammse Seite fuer Seite aus Eichenholz rausgeschnitzt :-)


       | /  |\  |--  ---  |--  | /
       |<   |/  |-    |   |-   |<
       | \  |\  |--   |   |--  | \

-----------------------------------------------------------------------------



Re: Re: suche 1830 (Snuggle,  3. Feb 1997, 17:06:54):
~#! rn=Sidolin rt=854629356 rg=suche-biete
~#! tid=854629207
moment.. alle 8 Firmen zu bekommen koennte aufgrund der MaxShares, die
man halten darf schwierig werden, oder ist das im CompiSpiel ausgebaut?

Ansonsten hatte ich bisher gehoert, dass die Gegner eher zu gut sein 
sollten, als zu schlecht.. naja, anschauen wuerd ichs ggf trotzdem gern,
denn wann kriegt man schon genug Leute fuer eine mehrstuendige Partie
zusammen? Ich kann das Spiel ja mal mit nach Karlsruhe bringen - vielleicht
haben ja ein paar Leute Samstag Nachmittag nix besseres zu tun :-)


however.
snug.

-----------------------------------------------------------------------------



Re^3: suche 1830 (Sidolin,  3. Feb 1997, 17:09:10):
~#! rn=Snuggle rt=854986014 rg=suche-biete
~#! tid=854629207
Nein, das ist nicht ausgebaut...
Aber wenn Du genug Bonusgesellschaften hast, ist das egal. :-)

Sidolin. Dr. des Streckenbaus.

-----------------------------------------------------------------------------



Ich auch mal was schreiben... (Oetti,  3. Feb 1997, 17:11:24):
Suche: Supertolle, wunderschoene Frau, am besten noch intelligent...

Biete: Rein gar nix !!!

Oe*

-----------------------------------------------------------------------------



Re: Ich auch mal was schreiben... (Yantro,  4. Feb 1997, 11:24:30):
~#! rn=Oetti rt=854986284 rg=suche-biete
~#! tid=854986284

Hmmm Oetti ist ein Depp... was will man mehr, wenn man Telka schon hat und
Silvana  nie kriegen wird? Oetti, bei der zweitliebsten Frau im Mud solltest
du nicht klagen.

Yantro

-----------------------------------------------------------------------------



Hilfe (Cauno,  4. Feb 1997, 11:29:13):
Ich suche Informationen zu verschiedenen Fernsehserien, speziell
Erstsendedaten, Originaltitel (sogenannte Episode Guides) u.a.
Ein paar Zeitschriften und Sites im Internet kenne ich schon. Auch private
Aufzeichnungen, so sie denn existieren, koennen helfen.
Wer so etwas hat und mir zur Verfuegung stellen kann, bitte melden. Ich suche
praktisch ein Archiv von Fernsehillustrierten zur Recherche.

C. No

-----------------------------------------------------------------------------



Re: Re: Ich auch mal was schreiben... (Oetti,  4. Feb 1997, 16:24:32):
~#! rn=Yantro rt=855051870 rg=suche-biete
~#! tid=854986284
Yantro...

bei Dir ist JEDE Frau die zweitliebste im Mud.....

*genervt sei*

-----------------------------------------------------------------------------



Noch'n Versuch ! (Oetti,  4. Feb 1997, 16:34:32):
Hi !

Suche: Alles !!!

Biete: Alles !!

Oe*

-----------------------------------------------------------------------------



Re: Noch'n Versuch ! (Sushi,  4. Feb 1997, 16:36:28):
~#! rn=Oetti rt=855070472 rg=suche-biete
~#! tid=855070472
Hier kannst Du jede Menge Tritte haben. Garantiert gratis. Aber wegen der
Groesse gibt es Mindermengenzuschlag.

Sushi

-----------------------------------------------------------------------------



Re^3: Ich auch mal was schreiben... (Grimmborn,  4. Feb 1997, 17:01:09):
~#! rn=Oetti rt=855069872 rg=suche-biete
~#! tid=854986284
Immerhin gibt Yantro nicht so verzweifelte, notgeile Artikel auf...

Ausserdem hat Yantro auch drittliebste Frauen, wie ich aus zuverlaessiger
Quelle weiss. Ich gehoere z.B. dazu. :-)

Grimmborn der Atheist

-----------------------------------------------------------------------------



*seufz* (Oetti,  4. Feb 1997, 17:14:31):
Ich hab Dich ja mal fuer Intelligent gehalten Grimmborn...

Glaubst Du wirklich, dass jemand auf so nen plumpen Artikel antwortet...

Aber das ist ja Sinn der Sache, dann kann ich mich drueber aufregen, 
dass niemand geantwortet hat, und schon ist mein
Adrenalinhaushalt wieder in Ordnung, denk doch mal mit...

Oe*

-----------------------------------------------------------------------------



Re: Ich auch mal was schreiben... (Jasper,  5. Feb 1997, 03:07:13):
~#! rn=Oetti rt=854986284 rg=suche-biete
~#! tid=854986284
am besten waers wenn die ne eineiige zwillingsschweseter haette, die nehm ich
dann :)

-----------------------------------------------------------------------------



Re. Ich auch mal was schreiben... (Tamara,  7. Feb 1997, 19:24:20):
Bin leider schon vergeben...

armer Oettie!

-----------------------------------------------------------------------------



Nochn Verusch (Oetti, 10. Feb 1997, 20:44:39):

Das sollte Verscuh heissen im Titel....

Suche: Rein gar nix !

Biete: Kaesesocken !!

Oe*

-----------------------------------------------------------------------------



Re: Nochn Verusch (Socrate, 11. Feb 1997, 09:19:18):
~#! rn=Oetti rt=855603879 rg=suche-biete
~#! tid=855603879
Geil, die hab ich schon immer gesucht!
Ich gebe dir dafuer ein gebrauchtes Tempo mit den ausgesuchtesten Riesenpopel.
Baeh.
Socrate *schuettel*
PS: ;-)

-----------------------------------------------------------------------------



BIOS-Update (Kretek, 13. Feb 1997, 17:04:03):
Huhu! :-)

Also, ich hab da bei mir zu Hause so 'nen P60-Tower von Escom rumstehen,
ca. 2 Jahre alt, das Teil. Hat natuerlich auch noch das alte BIOS.
Jetzt wuerd ich mir da gern ein Update draufklatschen. Frage: Weiss jemand,
wo ich sowas herbekomme, nachdem die guten ja pleite gegangen sind?

Tschuessle,


       | /  |\  |--  ---  |--  | /
       |<   |/  |-    |   |-   |<
       | \  |\  |--   |   |--  | \

-----------------------------------------------------------------------------



Re: BIOS-Update (Hate, 13. Feb 1997, 23:10:50):
~#! rn=Kretek rt=855849843 rg=suche-biete
~#! tid=855849843
Das BIOS hat ja wenig mit dem zu tun, der die Kisten zusammenschraubt...
DU brauchst den Board-Hersteller. Und dann suchen.

Hate.

-----------------------------------------------------------------------------



Wave-File gesucht! (Engywuck, 14. Feb 1997, 13:49:58):
Hallo!
Ich suche ein Wave-File (.wav) von einem schoenen Donner. So ein schoen
grosser krachender... Wenn einer sowas hat, vielleicht auf ner CD mit
Soundeffekten oder so - bitte Nachricht an mich.

Ciao, Engy*

-----------------------------------------------------------------------------



Re: Wave-File gesucht! (Mupfel, 25. Feb 1997, 19:39:27):
~#! rn=Engywuck rt=855924598 rg=suche-biete
~#! tid=855924598
Hm... auf der CD "Stakato 2" isn recht schoener Donner... musste halt dann nur
irgendwie 'capturen', weils ne Audio-CD ist... (vorausgesetzt du kommst du
ueberhaupt dran :-)

-mupfel-

-----------------------------------------------------------------------------



Re: Re: Wave-File gesucht! (Pilgrim,  3. Mar 1997, 13:09:01):
~#! rn=Mupfel rt=856895967 rg=suche-biete
~#! tid=855924598
Hmm,
ich glaub ... DEN hab ich irgendwo rummliegen ... ich werds mal 16 bit 44kHz
Stereo sampeln und Eng* per ftp ueberspielen ... aber ich denke des werden
soch ein paar MB werden ... ;-)

Pilgrim

-----------------------------------------------------------------------------



Re^3: Wave-File gesucht! (Engywuck,  4. Mar 1997, 13:59:06):
~#! rn=Pilgrim rt=857390941 rg=suche-biete
~#! tid=855924598
Das waer aber nett :)
Obwohl ich auch schon mit 8 bit 22KHz mono zufrieden waere... Es sei denn, der
Donner hat wirklich nen schoenen Stereoeffekt, dann waers natuerlich schade,
sowas verkommen zu lassen. 
Ausserdem hab ich kein oeffentliches ftp, aber meine Mailbox verkraftet auch
mehr als ein paar lumpige MB ;)

Engy*

-----------------------------------------------------------------------------



Suche nen guten Provider in Stuttgart (Ronda,  7. Mar 1997, 22:41:17):
Da es mich fuer ein halbes Jahr nach Stuttgart verschlagen hat, suche ich nun
eine Moeglichkeit, wieder ins Internet (und natuerlich auch ins Mud!!!) zu
kommen.
Ueber die Uni komm ich wohl nicht rein, als Studi kann ich mich wohl nicht
anmelden, da ich noch in Paderborn studiere *so nen Mist!*
Wer hat Ahnung von guten (billigen!) Providern - z.B. auch AOL, Compuserve
etc.? Was loehnt man da? Was gibts da fuer Unterschiede? *fuers Lesen meiner
Mails auf dem Uni-Account? Fuer FTP?*
Ich hoff, dass jemand sich meldet, irgendwie ist so ein einsamer Computer ohne
Netzanschluss ziemlich langweilig ;(
Bis bald mal *wenn ich nen Provider finde, dann bald, sonst nur noch alle 2-3
Wochen am Wochenende =;( *
       Ronda
Ps: Antworten bitte auch als Mail an mich... ich komm vielleicht *sicher ;(*
nicht dazu, die MPA zu lesen ... wahnsinnig-supertoll waere allerdings ne
Nachricht unter Tel. 0711-562977 =;)

-----------------------------------------------------------------------------



Re: Suche nen guten Provider in Stuttgart (Hate,  8. Mar 1997, 12:41:44):
~#! rn=Ronda rt=857770877 rg=suche-biete
~#! tid=857770877
http://www.individual.net/

Dort kann man seine TelNr Vorwahl oder PLZ angeben und kriegt den
naechsten Provider. IN ist sehr guenstig!

Hate.

-----------------------------------------------------------------------------



Speicher (Key, 31. Mar 1997, 13:24:52):
Halloe,
Ich suche fuer meinen kleinen 486 DX/50 zum einen 2*4MB Ram (Simm),
und zum anderen eine fuer die heutigen Verhaeltnisse Festplatte (bis zu 400
MB)
Hat vielleicht noch jemand sowas rumliegen und wuerde sie verkaufen?
Hier in Marburg kriege ich leider in jedem Computerladen gesagt das man
soetwas nicht mehr bekommt ...
Antworten bitte an mich mailen.
Dane
Key

-----------------------------------------------------------------------------



Job (Schrumpfi, 21. Apr 1997, 01:06:29):
Ich moechte im Sommer fuer 2 Monate mal wieder nach Koeln schaun, allerdings
bruch ich da arbeit, falls jemand was fuer Juli/August im Roadiebereich weiss,
dann bitte mail an mich. 
Ich kenn mich am besten mit Buehne aus also Buehne aufbaun ect.
Schrumpfi haelts im Sommer in Linz nie aus.

-----------------------------------------------------------------------------



Schiffsbilder (Tux, 11. Jul 1997, 14:40:06):
Hiho, ich suche bilder von schiffen in allen groessen und lagen (von oben,
unten, rechts, vorne etc....)

also falls jemand was weiss, mail an mich oder hier antwoten

danke

-----------------------------------------------------------------------------



Re: Schiffsbilder (Bottom, 11. Jul 1997, 20:39:08):
~#! rn=Tux rt=868624806 rg=suche-biete
~#! tid=868624806

Hmm...habe mich im Kindergarten mit mehr oder weniger grossem Erfolg als
Kuenstler versucht...habe mich dann aber entschlossen eine etwas andere
Laufbahn einzuschlagen. Gruende tun hier nichts zur Sache! Wie auch immer - da
waren auch einige Schiffsmotive dabei, da bin ich mir ganz sicher! Interesse?
;-)

Bottom - heute Kleriker (war nicht immer so)

-----------------------------------------------------------------------------



Schlafplatz in Frankfurt waehrend der IAA gesucht (Snuggle, 31. Jul 1997, 10:49:20):
Hi Ihrs,

nicht ich, aber eine gute Freundin hat einen Job auf der IAA und sucht fuer
die Zeit (ich glaube 9.-21. September) einen (oder mehrere) Leute, die ihr
fuer ein paar Tage ein Plaetzchen zur Verfuegung stellen koennen, an dem sie
sich einrollen kann.

Falls jemand 2 Quadratmeter entbehren kann, bitte mail an mich

Gruss
Snuggle

-----------------------------------------------------------------------------



Suchen HIWI mit Unix-Kenntnissen (Denti, 31. Jul 1997, 12:17:34):

Hallo!

Wir suchen hier im MPI fuer biophysikalische Chemie in Goettingen
in der Zentralen EDV-Gruppe einen HIWI. Dieser sollte sich mit 
Unix (allgemein, Linux, Digital-Unix, Irix im speziellen) und
mindestens einer Programmiersprache (C, C++) auskennen. 
Kohle ist das hier uebliche, ca. 1100.- im Monat. Arbeitszeit 83
Stunden/Monat.
Aufgaben waeren Betreuung des WWW-Servers (Indy) und allgemeine 
PC-Unix und Unix-Betreuung, kleinere Programmieraufgaben.

Ach so, Kohle ist eigentlich mehr, aber man muss ja Rentenversicherung
latzen.

Bewerben koennt ihr euch bei 

Max-Planck-Institut fuer biophysikalische Chemie
Friedrich-Bonhoeffer-Institut

ZEWEG-EDV-Gruppe
Herr Kessling

Am Fassberg
37077 Goettingen

Denti mal als Stellenvermittler

-----------------------------------------------------------------------------



Re: Suchen HIWI mit Unix-Kenntnissen (Highlander, 31. Jul 1997, 12:31:42):
~#! rn=Denti rt=870344254 rg=suche-biete
~#! tid=870344254
Die Arbeitszeit koennt ihr sowieso vergessen, oder zaehlt ein Monat
neuerdings mehr als 4 Wochen?
83/4 > 20 - fuer Studenten im Semester ein no-go.
Ausser sie arbeiten gerne fuer Geld, das sie nicht kriegen.
  HrT

-----------------------------------------------------------------------------



Re: Re: Suchen HIWI mit Unix-Kenntnissen (Denti, 31. Jul 1997, 12:33:49):
~#! rn=Highlander rt=870345102 rg=suche-biete
~#! tid=870344254

Nein, das ist auf die Jahresarbeitszeit gerechnet und kommt hin, das
ist der Vertrag fuer Studentenjobs, der auch an der Uni in aehnlicher
Form benutzt wird. Das ist auf 19 h in der Woche berechnet, sollte 
also gehen

Denti

-----------------------------------------------------------------------------



Re^3: Suchen HIWI mit Unix-Kenntnissen (Bottom, 13. Aug 1997, 19:32:55):
~#! rn=Denti rt=870345229 rg=suche-biete
~#! tid=870344254

1100/83 = 13,25 

Da muss Muetterchen aber ganz schoen stricken fuer ihr Auskommen...gibt's bei
Mc Donalds nicht mehr???

Bottom - spendet regelmaessig im Elfenhain fuer arme Spieler

-----------------------------------------------------------------------------



Re^4: Suchen HIWI mit Unix-Kenntnissen (Denti, 13. Aug 1997, 21:08:25):
~#! rn=Bottom rt=871493575 rg=suche-biete
~#! tid=870344254


Jo, ist etwas wenig, aber inzwischen haben wir einen ;).
Eigentlich waren es 15.68 /h, aber dank der neuen Regelung, nach der auch
ein Studi Rentenversicherung zahlen muss, wirds halt weniger, aber wenn 
man bedenkt, dass es ein 13. Gehalt gibt, sieht es schon wieder besser 
aus ;)

Denti

-----------------------------------------------------------------------------



Re^4: Suchen HIWI mit Unix-Kenntnissen (Kretek, 21. Aug 1997, 15:31:47):
~#! rn=Bottom rt=871493575 rg=suche-biete
~#! tid=870344254
Ich weiss gar nicht, was ihr habt... Hier in Passau bekommen die Hiwis
10 (!) DM die Stunde. Gell, Caradhras?

KreteK

-----------------------------------------------------------------------------



Re^5: Suchen HIWI mit Unix-Kenntnissen (Anakin, 21. Aug 1997, 15:34:39):
~#! rn=Kretek rt=872170307 rg=suche-biete
~#! tid=870344254
Hmm also in Berlin gibt es 18.90 oder so fuer HiWis.

Anakin.

-----------------------------------------------------------------------------



Re^6: Suchen HIWI mit Unix-Kenntnissen (Fyt, 21. Aug 1997, 15:35:39):
~#! rn=Anakin rt=872170479 rg=suche-biete
~#! tid=870344254

Bar auf die Hand?

Fyt.

-----------------------------------------------------------------------------



Re^7: Suchen HIWI mit Unix-Kenntnissen (Anakin, 21. Aug 1997, 15:36:52):
~#! rn=Fyt rt=872170539 rg=suche-biete
~#! tid=870344254
Ja. Wenn man nen alten Vertrag, also vor dem 31.12.96 
abgeschlossen hatte, sonst gehen da jetzt die Prozente
fuer Rente usw. runter.

Anakin.

-----------------------------------------------------------------------------



Re^6: Suchen HIWI mit Unix-Kenntnissen (Tunixgut, 22. Aug 1997, 09:26:52):
~#! rn=Anakin rt=872170479 rg=suche-biete
~#! tid=870344254
Also, ICH krieg' 15.00 Maerker oda so, dafuer, dass ich neben dem mudden noch
aufpasse, dass keiner seinen Kaffee ueba die tastatur kippt und irgendwann
abends abschliesse...

TuNixGut

-----------------------------------------------------------------------------



Re^7: Suchen HIWI mit Unix-Kenntnissen (Caradhras, 23. Aug 1997, 16:54:40):
~#! rn=Tunixgut rt=872234812 rg=suche-biete
~#! tid=870344254
Jaja, meine 10.00 Mark pro Stunde muss ich auch nicht versteuern. *grins*
Und noch nicht mal Versicherung dafuer zahlen! *jubel*
(In Bayern weiss man ja nie!)

         Bergchen Caradhras - winkt allen auffer Mudfete zu

-----------------------------------------------------------------------------



Assistentenstelle Maschbau gesucht (Zephyr, 25. Aug 1997, 11:36:22):

1. manuelle Mitteilung an alle Mitglieder des Morgengrauens!
Dass (sic!) Zephyr als Autorin genannt wird, ist volle Absicht: der
Firewall laesst mich nicht mudden, und sie war so lieb, es in die MPA zu
posten ;)

Da irgendwie in diesem Mud die erstaunlichsten Dinge klappen, wuerde es
mich nicht allzusehr erstaunen, wenn Ihr dazu etwas helfen koenntet (ich
werde mich auch sicher irgendwie erkenntlich zeigen - mag noch jemand
ein Schnitzel oder einen Maiskolben?)...
Ich darf mich hoffentlich ab dem 1.10. Diplom Ingenieur Maschinenbau
schimpfen und suche eine Assistentenstelle (moeglichst irgendwo wo es
Telnet gibt =:) ) - bei den Themen bin ich relativ flexibel, habe
Fachrichtung Konstruktion studiert, bisschen Ahnung von CAD / Computern
/ Programmieren / BWL etc.
Wenn Ihr zufaellig also einen Aushang an der Uni seht, Professor seid
oder aehnliches: bitte schickt mir eine Mail an Ronda@mg.uni-muenster.de
...
Vielen Dank,
               Ronda


-----------------------------------------------------------------------------



Ja wo isser denn??? (Catweazle, 27. Aug 1997, 15:38:33):

Catweazle sucht marco Chiriaco!

YTC

-----------------------------------------------------------------------------



Mit Gruss von Ronda: (Key,  8. Sep 1997, 22:11:24):
 
1. automatische Mitteilung an alle Mitglieder des Wolpert...
Morgengrauens!
Das (sic!) Key als Autor genannt wird, ist total absichtlich - ich hab
hier kein Telnet...
 
Hi,
ich suche Dich! Du hast doch sicher eine eigene WWW-Seite (moeglichst
mit ein paar Infos zum Morgengrauen).
Dafuer biete ich Dir einen Link auf meiner MG-Seite an ;)
 
Eigentlich waere es IMHO am schoensten, wenn man sich genau wie die
Email- auch die WWW-Adresse setzen koennte - aber so lange das nicht
geht, versuch ich halt mal, ein paar Adressen zu sammeln (so um die 35
hab ich ja schon gefunden, aber das werden doch nicht alle sein?).
 
Also wer mag: schaut mal einfach auf
http://members.tripod.com/~hedderich/mg.html vorbei und hinterlasst Eure
Url - oder schickt mir eine Mud-Mail.
Tschuess bis hoffentlich bald,
                                  Ronda

-----------------------------------------------------------------------------



Re: Mit Gruss von Ronda: (Anatol,  8. Sep 1997, 22:12:30):
~#! rn=Key rt=873749484 rg=suche-biete
~#! tid=873749484

> url
Deine offizielle URL-Adresse lautet: 0

Fragt sich nur, was Hate noch draus macht :)
Anatol


-----------------------------------------------------------------------------



Re: Re: Mit Gruss von Ronda: (Janitze,  9. Sep 1997, 00:20:36):
~#! rn=Anatol rt=873749550 rg=suche-biete
~#! tid=873749484
ich wusste schon immer, das Key ein Zweitie von Ronda ist :)

Janice setzt Geruechte in die Welt

-----------------------------------------------------------------------------



Gefunden (Yendi, 12. Dez 1997, 12:57:15):

Falls irgendein BA das SSP-Zeugs, was er in der Elfenpost liegengelassen hat,
noch braucht, sooll er mir Bescheid geben...


-----------------------------------------------------------------------------



Re: Re: DM/CSB (Gnome, 25. Jan 1998, 01:23:08):
~#! rn=Lupus rt=885679500 rg=suche-biete
~#! tid=885617688
ich hoer mich mal um, versprechen kann ich nix ;-)

gnOme

-----------------------------------------------------------------------------



Re: Re: DM/CSB (Asmodis, 25. Jan 1998, 01:34:05):
~#! rn=Lupus rt=885679500 rg=suche-biete
~#! tid=885617688
ich hab noch Turrican II fuer den C64 irgendwo herumliegen :)

-----------------------------------------------------------------------------



Re: Re: DM/CSB (Trekan, 26. Jan 1998, 01:23:53):
~#! rn=Mars rt=885669608 rg=suche-biete
~#! tid=885617688
Chaos Stries Back fuer Windows existiert
siehe dazu www.metacrawler.com
Trekan

-----------------------------------------------------------------------------



suche >P75 (Nixihou, 26. Jan 1998, 10:03:03):
hi,
koennte ja sein das irgendwer nen pentium-prozessor in der ecke 
rumschimmeln hat, der besser als ein p75 ist....
ich waere an sowas interessiert (ohne mmx) wenns nicht allzu teuer waer!

nixihou, hats damit aber nicht eilig

-----------------------------------------------------------------------------



Re: Re: DM/CSB (Quasimodo, 26. Jan 1998, 12:10:56):
~#! rn=Lupus rt=885679500 rg=suche-biete
~#! tid=885617688
Auch keine richtige Antwort, aber ich suche "Starflight II" fuer den PC. Soll
es angeblich geben.

Quasi.

-----------------------------------------------------------------------------



Re: DM/CSB (Morgoth, 27. Jan 1998, 08:11:51):
~#! rn=Felagund rt=885617688 rg=suche-biete
~#! tid=885617688
Jau, Dungeon Master habe ich auf PC, CSB suche ich auch noch. Ich hab DM vor
urururururZeiten irgendwo mal in einem Softwareladen gesehen und es sofort
gekauft. Seit dem bekomme ich fast taeglich mails aus ueberall, ob ich denn DM
nicht mal als mail verschicken kann.
M*

-----------------------------------------------------------------------------



Feuerversicherung (Zephyr, 27. Jan 1998, 14:22:30):

Suche preiswerte Feuerversicherung fuer Studenten.
Meine Wohnung fuer 1000/m^2 zu versichern
halte ich etwas fuer uebertrieben :)

Fuer Hinweise dankbar, Zephyr

-----------------------------------------------------------------------------



Re: Feuerversicherung (Hobo, 27. Jan 1998, 14:24:20):
~#! rn=Zephyr rt=885907350 rg=suche-biete
~#! tid=885907350
Du willst Deine Wohnung gegen Feuer versichern? Ist das nicht in der
Versicherung vom ganzen Haus mit dabei?
Nebenbei stellt sich mir da die Frage: Bist Du Chemikerin? ;)

Hobo - keine Ahnung, aber nur von idlenden Magiern umgeben

-----------------------------------------------------------------------------



Re: Feuerversicherung (Zorro, 27. Jan 1998, 14:29:41):
~#! rn=Zephyr rt=885907350 rg=suche-biete
~#! tid=885907350
Such Dir nen Feuerwehrmann oder werde Feuerwehrfrau

Zorro :)

-----------------------------------------------------------------------------



Re: Feuerversicherung (Yendi, 27. Jan 1998, 14:51:46):
~#! rn=Zephyr rt=885907350 rg=suche-biete
~#! tid=885907350

Aeh -- kommt Jof zu Besuch?

;) Yendi


-----------------------------------------------------------------------------



Re: Re: Feuerversicherung (Semira, 27. Jan 1998, 18:34:10):
~#! rn=Hobo rt=885907460 rg=suche-biete
~#! tid=885907350
da faellt mir doch gleich wieder die Sache mit Engy und der Brokkolisuppe
ein...wenn man einen Chemiker im Haus hat und der was kochen will, ist eine
Feuerversicherung nicht die schlechteste Idee ;)

Ok, schmarrn, *knuddels* Semira

-----------------------------------------------------------------------------



Re^3: Feuerversicherung (Zorro, 27. Jan 1998, 18:39:24):
~#! rn=Semira rt=885922450 rg=suche-biete
~#! tid=885907350
Ja aber nur wenn man es nen Theoretiker machen laesst ... "normale" Chemiker
koennen kochen ...

Zorro schmunzelt.

-----------------------------------------------------------------------------



Re: Feuerversicherung (Grimmborn, 28. Jan 1998, 09:01:14):
~#! rn=Zephyr rt=885907350 rg=suche-biete
~#! tid=885907350
Aeh, hab ich was nicht verstanden? Feuerversicherung von eintausend Deutsche
Mark pro Quadratmeter? Wo wohnst Du? Am Krater des Vesuv?

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re: Re: Feuerversicherung (Quasimodo, 28. Jan 1998, 10:02:32):
~#! rn=Grimmborn rt=885974474 rg=suche-biete
~#! tid=885907350
1000/m^2: Versicherungssumme oder Beitrag?!?

Quasi

-----------------------------------------------------------------------------



Re^3: Feuerversicherung (Zephyr, 28. Jan 1998, 11:22:15):
~#! rn=Quasimodo rt=885978152 rg=suche-biete
~#! tid=885907350

Ok, ich hab mich was ungluecklich ausgedrueckt. Die sind der Meinung,
dass ich pro Quadratmeter meiner Bude Werte von 1000 DM rumstehn hab.
So besser?

Zephyr, um die es eigentlich gar nicht geht, sondern um ihre Schwester

-----------------------------------------------------------------------------



Zauberzeit (Li, 28. Jan 1998, 11:28:46):
Hi!
ich suche einen Artikel aus der Zeitschrift Zauberzeit. Und zwar soll es in
Ausgabe 29 einen Artikel ueber eine Spukmuehle geben. Hat die jemand? 
Oder kennt jemand den Artikel, ich muss nur wissen, um was es da geht.
Li

-----------------------------------------------------------------------------



Re^4: Feuerversicherung (Key, 28. Jan 1998, 11:51:15):
~#! rn=Zephyr rt=885982935 rg=suche-biete
~#! tid=885907350
Pro Quadratmeter Zeugs fuer 1000DM rumstehen?
Aeh ... gibst Dur mir mal die Adresse? ,) Und Infos ueber das Alarmsystem? :)

Ich glaube ich kann helfen indem ich die Preise senke :))

Key

-----------------------------------------------------------------------------



Re^5: Feuerversicherung (Alpha, 28. Jan 1998, 13:26:07):
~#! rn=Key rt=885984675 rg=suche-biete
~#! tid=885907350
In einer 10qm Wohnung sollten 1000 DM/qm doch leicht zu errreichen sein, auch
als Bafoeg-beziehender Student.

-----------------------------------------------------------------------------



Re^6: Feuerversicherung (Grimmborn, 28. Jan 1998, 20:16:38):
~#! rn=Alpha rt=885990367 rg=suche-biete
~#! tid=885907350
Habe Wohnung von 31qm.
Suche jemanden, der mir meinen Hausrat fuer 30.000DM abkauft.
Angebote bitte per mail.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Pfeifenraucher vor (Silvana, 15. Feb 1998, 19:57:20):
Hi.
Ich suche fuer verschiedene Tabacksorten eine Beschreibung dessen, was
jemand, der was von Taback versteht, beim Rauchen wohl empfinden mag.
Da ich selbst aber Nichtraucherin bin, hab ich da keinerlei Erfahrung.
Wer also schon immer mal eine Tabacksorte kreieren wollte: Hier ist
die Gelegenheit. Ideen zu mir (per mail).

  Thanx - Silvana

-----------------------------------------------------------------------------



Wann wirds mal wieder richtig Sommer? (Catweazle, 16. Feb 1998, 15:07:24):
Moin!

Ich such den Text des subjektigen Liedes (attention, genitiv detected) im 
Original von Rudi Krakehl (oder so aehnlich). 
Yours truly,
      Catweazle (dankbar fuer passende mail)

-----------------------------------------------------------------------------



Re: Wann wirds mal wieder richtig Sommer? (Calum, 16. Feb 1998, 15:34:23):
~#! rn=Catweazle rt=887638044 rg=suche-biete
~#! tid=887638044

Wie waer's damit:

Wir brauchten frueher keine lange Reise
Wir wurden braun auf Borkum und auf Sylt
Doch heute sind die Braunen nur noch Weisse
Denn hier wird man ja doch nur tiefgekuehlt.

Ja, frueher gab's noch hitzfrei, das Freibad war schon auf im Mai,
Ich sass bis in die Nacht vor unser'm Haus
Da hatten wir noch Sonnenbrand, und Riesenquallen an dem Strand
Und Eis; und jeder Schutzmann zog die Jacke aus.

        (Refr:)
        Wann wird's mal wieder richtig Sommer?
        Ein Sommer wie es frueher einmal war
        Ja, mit Sonnenschein von Juni bis September
        Und nicht so nass und so sibirisch wie im letzten Jahr

Und was wir da fuer Hitzewellen hatten
Pulloverfabrikanten gingen ein
Da gab es bis zu vierzig Grad im Schatten
Wir mussten mit dem Wasser sparsam sein.

Die Sonne knallte ins Gesicht, da brauchte man die Sauna nicht
Ein Schaf war damals froh wenn man es schor
Es war hier wie in Afrika, wer durfte machte FKK
doch heute singen alle nur noch laut im Chor:

        (Refr)

Der Winter war der Reinfall des Jahrhunderts
Nur ueber tausend Meter gab es Schnee
Mein Milchmann sagt "Dies Klima hier, wen wundert's?
Denn schuld daran ist nur die SPD."

Ich find das geht ein bisschen weit, doch bald ist wieder Urlaubszeit
Und wer von uns denkt da nicht dauernd dran?
Trotz allem hoff' ich unbeirrt dass unser Wetter besser wird,
nur wann - und diese Frage geht uns alle an.

        (Refr.)

Gitarrenakkorde gibt's auf Anfrage ebenfalls.
 - Calum -

-----------------------------------------------------------------------------



Re: Re: Wann wirds mal wieder richtig Sommer? (Catweazle, 16. Feb 1998, 15:59:13):
~#! rn=Calum rt=887639663 rg=suche-biete
~#! tid=887638044
Fein.
Ich habs jetzt auch im Netz gefunden.
Ein search nach 'Rudi Carrell" hat in der menge der Hits versagt, jedoch
bin ich mit 'wann wirds mal wieder richtig Sommer' direkt im Ziel
gelandet :-)

THx,
   YTC

-----------------------------------------------------------------------------



ABERmud-Files (Sklave, 16. Feb 1998, 19:24:53):
Hallo, zusammen!

Ein Kumpel von mir sucht Files (Raeume, Waffen, Monster...) fuer ein 
ABERmud (ich glaube, ABER 5), das er bei sich zu Hause installieren will.
Wenn jemand weiss, wo's solche Files zu finden gibt, dann bitte eine
kurze eMail an: dietel01@fsrz1.rz.uni-passau.de

Danke,
KreteK

-----------------------------------------------------------------------------



Suche: Prozessor und SCSI Ctrl (Schlingel, 17. Feb 1998, 13:09:13):
Hi all!

Mein Rechner ist leicht lahm und da ich die Diplomarbeit gerade starte
suche ich ein schnelleres Teil, da ich aber auch wenig Kohle habe suche
ich gebraucht ein paar Teile (Rest habe ich inzwischen schon):
SCSI Ctrl fuer PCI
Pentium Prozessor (200 MHz) oder K6 (166MHz oder 200MHz) mit oder
ohne MMX.

Wenn ihr was habt, dann mailt mir doch ein Angebot...
Danke erstmal...

Schlingel

-----------------------------------------------------------------------------



Re: Suche: Prozessor und SCSI Ctrl (Grimmborn, 18. Feb 1998, 21:41:43):
~#! rn=Schlingel rt=887717353 rg=suche-biete
~#! tid=887717353
> Pentium Prozessor (200 MHz) oder K6 (166MHz oder 200MHz) 

Meine Guete, was machst Du fuer eine Diplomarbeit? Computersimulation auf dem
eigenen Rechner?

GdA

-----------------------------------------------------------------------------



Re: Re: Suche: Prozessor und SCSI Ctrl (Schlingel, 19. Feb 1998, 02:13:21):
~#! rn=Grimmborn rt=887834503 rg=suche-biete
~#! tid=887717353
Nein, nein Grimi... es ist nur eine megamaessige Datenbank... und da die
Firma die die Diplomarbeit anbietet mehr als 100 km entfernt ist wuerde ich
es gerne daheim machen, damit ich nicht andauernd in die Uni rennen muss und
auf den lahmen Kisten, die mit Javasupport noch kuenstlich ausgebremst werden,
arbeiten muesste.

Ist der Grund akzeptiert ;-)

Schlingel, aus der Ferne Grimmi knuddelnd.

-----------------------------------------------------------------------------



Re^3: Suche: Prozessor und SCSI Ctrl (Pilgrim, 20. Feb 1998, 14:59:12):
~#! rn=Schlingel rt=887850801 rg=suche-biete
~#! tid=887717353
Hmm,#

und ich dachte, da will einer zwischen dem Schreiben der Diplomarbeit
nen bissel spielen ;-)

Pilgrim

-----------------------------------------------------------------------------



Hilfe bei Examensarbeit (Callista, 24. Feb 1998, 17:43:32):
Hi,
ich studiere Gehoerlosen und Schwerhoerigenpaedagogik und moechte meine
Examensarbeit gerne zum Thema
"Gehoerlose und Internet" schreiben.
Dazu muss ich ersteinmal Gehoerlose oder Schwerhoerige finden, die mir dabei
helfen koennen und bereit sind
Fragen zu beantworten.
Falls jemand hier Gehoerlose oder Schwerhoerige kennt oder selber Gehoerlos
ist, dann schreibt mir doch bitte einen Brief
nach EHLANA@AVALON oder EHLANA@ZEIT.
Ich wuerde mich sehr freuen.
Auch Tips ueber bestimmte Angebote fuer Gehoerlose im Internet waeren
hilfreich.
Also ich hoffe auf viele Briefe.
Ehlana/Callista

-----------------------------------------------------------------------------



Linux-Profi gesucht (Silvana,  4. Mar 1998, 10:28:23):

Ich suche dringend jemanden, der in der Lage ist, meinen ISDN-Zugang unter
Linux zu konfigurieren. Es handelt sich um eine FritzCard Version 1.0,
die unter Win 3.11 und Win95 problemlos laeuft (nach ein paar Tricks).
Belohnung... Hm. :) Nen Kasten Bier ist mir jetzt zu platt... Aber mir (uns)
wird schon was einfallen. :)

Silvana

PS: Fuer Verpflegung waehrend der Konfiguration wird selbstverstaendlich
    gesorgt.
Hi.

-----------------------------------------------------------------------------



Re: Linux-Profi gesucht (Zarniya,  4. Mar 1998, 10:33:55):
~#! rn=Silvana rt=889003703 rg=suche-biete
~#! tid=889003703
nur als Tip... ich wuerd als Belohnung Konfekt verlangen :)

Zarniya

-----------------------------------------------------------------------------



elm/MIME (Li,  4. Mar 1998, 10:49:56):
hi!
Ich suche jemanden, der mir sagen kann, wie ich mit meinem elm.mail programm
mails im MIMe format lesen kann. Die Leute hier im Dispatch haben keine
Ahnung, die haben gesagt, ich solle es mit uudecode versuchen...
Li

-----------------------------------------------------------------------------



Re: elm/MIME (Dhojakt,  4. Mar 1998, 13:23:41):
~#! rn=Li rt=889004996 rg=suche-biete
~#! tid=889004996
Also bei mir macht elm das automatisch, sieht dann so aus:

---Executing: shownonascii

What to do with the iso-8859-1 TEXT data (372 Bytes)?

 1 -- SAVE  to a file
 2 -- VIEW  using "morepgp /tmp/mm.a000sC"

Your choice: (<RETURN> = exit):


This message contains raw digital data, which can either be viewed as text
or written to a file.

What do you want to do with the raw data?
1 -- See it as text
2 -- Write it to a file
3 -- Just skip it

Und bei elm -v wird einiges zur Config angezeigt, da steht bei mir u.a.
        Elm 2.4 PL21, of October 1, 1992
        Support Multipurpose Internet Mail Extensions: MIME

Hoffe das hilft, Khidar.

-----------------------------------------------------------------------------



Re: Linux-Profi gesucht (Grimmborn,  4. Mar 1998, 18:51:13):
~#! rn=Silvana rt=889003703 rg=suche-biete
~#! tid=889003703
Leider hab ich keine Zeit und Gelegenheit, mich mal an sowas zu versuchen,
aber schau mal auf http://www.rz.uni-sb.de/netze/linux/isdn-2-0.html, die
sieht ganz gut aus.

Grimmborn der Atheist

P.S. Der Zugang ist natuerlich fuer Deinen Zugang zu modifizieren...

-----------------------------------------------------------------------------



Re: Re: elm/MIME (Jimdigriz,  4. Mar 1998, 19:44:07):
~#! rn=Dhojakt rt=889014221 rg=suche-biete
~#! tid=889004996
Hoi,

ja soweit ich weiss, muss der MIME Support
in elm eincompiliert werden.
Das waer eine gute Gelegenheit auf einen neuen
mail client zu wechseln, elm wird ja schon laenger nicht
mehr entwickelt. Der Entwickler, ME, hat aber einen neuen
geschrieben, der sich aehnlich bedienen lasst,
ein alias-konvertierungsprogramm enthaelt , 
ansonsten aber 1000x besser und maechtiger ist :)
-=> mutt <=- (aktuelle Version IMHO 0.88)

Viel Spass damit.

Ciao,
 Jim DiGriz.

P.S.: falls du elm nehmen musst, und auch keinen  mutt installieren
 kannst oder willst, hilft glaub ich nur metamail als externes 
 Kommando zu verwenden.

-----------------------------------------------------------------------------



Re^3: elm/MIME (Jimdigriz,  4. Mar 1998, 19:45:18):
~#! rn=Jimdigriz rt=889037047 rg=suche-biete
~#! tid=889004996

Ich hab vergessen, bei diesem
"mein MUA ist besser als Deiner" - Artikel folgendes
Zitat vom Entwickler vergessen hinzuschreiben:

 "All mail clients suck, this one just sucks less" - ME

JdG
.#

-----------------------------------------------------------------------------



Re^3: elm/MIME (Pra,  5. Mar 1998, 17:39:45):
~#! rn=Jimdigriz rt=889037047 rg=suche-biete
~#! tid=889004996
Aeh, sehe ich das richtig: JimDiGriz ist der Entwickler von elm?

(me=ich, bzw. meiner einer)

Pra, fragend.

-----------------------------------------------------------------------------



Re^3: elm/MIME (Grimmborn,  5. Mar 1998, 18:22:42):
~#! rn=Jimdigriz rt=889037047 rg=suche-biete
~#! tid=889004996
Du verwechselst IMHO mit AFAIK...

GdA

-----------------------------------------------------------------------------



Re^4: elm/MIME (Jimdigriz,  6. Mar 1998, 20:40:22):
~#! rn=Pra rt=889115985 rg=suche-biete
~#! tid=889004996

Deppinmeineaugn!

:-)

JdG

-----------------------------------------------------------------------------



Re^4: elm/MIME (Jimdigriz,  6. Mar 1998, 20:40:42):
~#! rn=Grimmborn rt=889118562 rg=suche-biete
~#! tid=889004996
Ja richtig, bessers aus.

Ciao,
 Jim DiGriz

-----------------------------------------------------------------------------



ZT-Liste (Hardil, 19. Mar 1998, 13:02:24):

Such aktuelle ZT-Liste.
Biete dafuer: ZT-Liste, Stand 21. April 1994.

Wer tauscht? :-)

-Hardil.
Raeumt gerade alte Files auf.

-----------------------------------------------------------------------------



Re: ZT-Liste (Anakin, 19. Mar 1998, 13:05:22):
~#! rn=Hardil rt=890308944 rg=suche-biete
~#! tid=890308944
Ich hab eine von Sept. 94 oder so. Aber ich hab dafuer
ne Spielertopliste vom 6.1.95 :)

Anakin.

-----------------------------------------------------------------------------



Re: Re: ZT-Liste (Zephyr, 19. Mar 1998, 13:08:52):
~#! rn=Anakin rt=890309122 rg=suche-biete
~#! tid=890308944
Ich kann noch ne Questliste von Ende 94 anbieten, falls
wer Interesse hat :)

Zephyr

-----------------------------------------------------------------------------



Re^3: ZT-Liste (Hardil, 19. Mar 1998, 13:11:45):
~#! rn=Zephyr rt=890309332 rg=suche-biete
~#! tid=890308944

gerade gefunden:

eine Liste aller Muds (Stand Dezember 1993). Wer will?

-Hardil. Mudd mal was tun, um sein Rentnerdasei zu untermauern.

-----------------------------------------------------------------------------



Re^4: ZT-Liste (Qitess, 19. Mar 1998, 13:13:00):
~#! rn=Hardil rt=890309505 rg=suche-biete
~#! tid=890308944
Tja, Hardil , watt mudd, datt mudd , nech ?

QI**

-----------------------------------------------------------------------------



RL-EHE (Orktoeter, 19. Mar 1998, 15:13:34):
HI !
Es gibt ja nun reichlich Ehen im MG und es soll ja tatsaechlich auch schon so
einige gegeben haben, die sich auch in RL naehergekommen sind, aber wie sieht
das mit RL-Paaren aus ? Gibst es da schon welche ? Wenn ja, waren sie schon
vorher so dumm^H^H^H^H^H^H^Hverheiratet ?
Antworten werden auf wunsch auch vertraulich behandelt.
OrkT.

-----------------------------------------------------------------------------



Re: RL-EHE (Catweazle, 19. Mar 1998, 15:54:18):
~#! rn=Orktoeter rt=890316814 rg=suche-biete
~#! tid=890316814
Ich kenn 2 RL-Paare.
Kennt jemand mehr?
YTC

-----------------------------------------------------------------------------



Re: Re: RL-EHE (Anakin, 19. Mar 1998, 16:07:25):
~#! rn=Catweazle rt=890319258 rg=suche-biete
~#! tid=890316814
mnd 7 :)

-----------------------------------------------------------------------------



Re^3: RL-EHE (Grimmborn, 19. Mar 1998, 17:33:09):
~#! rn=Anakin rt=890320045 rg=suche-biete
~#! tid=890316814
Ich kenne ziemlich viele RL-Paare. Meine Eltern. Meine Grosseltern (2x). Die
Eltern meiner Ex. Ein Kollege von mir hat geheiratet. Mein Bruder wohnt mit
seiner Freundin zusammen, meine Schwester mit ihrem Freund (der Aermste). Das
laesst sich ziemlich beliebig weiterfuehren...

Grimmborn der Atheist

-----------------------------------------------------------------------------



Grafikkarte fuer VESA- Local Bus  (Hobo, 25. Mar 1998, 15:25:13):
Was im Titel steht, suche ich - mit mind. 1 MB.
Hat jemand sowas uebrig und will's los werden?

  hobo

-----------------------------------------------------------------------------



Re: Grafikkarte fuer VESA- Local Bus  (Gundur, 25. Mar 1998, 17:56:35):
~#! rn=Hobo rt=890835913 rg=suche-biete
~#! tid=890835913
Hm
Das was im Titel steht und was Du suchst haett ich eventuell noch irgendwo
rumfahrn *such*
Wie waers mit nem Tausch so a la Kartoffelspiel? (Ich hoff Du kennst das :-) )
mfG
Gundur

-----------------------------------------------------------------------------



Re: Re: Grafikkarte fuer VESA- Local Bus  (Hobo, 26. Mar 1998, 08:19:27):
~#! rn=Gundur rt=890844995 rg=suche-biete
~#! tid=890835913
Kartoffelspiel?
Ich kenn nur Bahnhof ;)

 Hobo

-----------------------------------------------------------------------------



Fahrradritzel gesucht (Lefty,  6. Apr 1998, 17:26:31):
Hi,

kann mir jemand sagen, wie bzw. wo ich an ein Ritzel fuer
den hinteren Ritzelblock beim Fahrrad bekomme ?

Das Teil hat 14 Zaehne, wobei die Besonderheit ist, dass
es ein Innengewinde hat, damit die anderen Ritzel halt
fest sind.

Die anderen Ritzel sind so durch Kerben mit dem Aufsatz
an der Felge verbunden, also nur das letzte kleinste hat
dieses Innengewinde.

Hm, so nen Fahrradprofi bin ich nicht, vielleicht kann ja
jemand was mit meiner Schilderung anfangen.

CU Lefty

-----------------------------------------------------------------------------



Re: Fahrradritzel gesucht (Jasper,  6. Apr 1998, 17:27:57):
~#! rn=Lefty rt=891876391 rg=suche-biete
~#! tid=891876391
geh mal an ne uni, da stehen immer genug fahrraeder rum, bei denen man sich
was abschrauben kann :)

-----------------------------------------------------------------------------



durchstimmbare Laserdiode! (Serverus,  9. Apr 1998, 12:03:08):
Hi Leute!

Kennt jemand von euch  einen Anbieter von durchstimmbaren Laserdioden,
Mglichst im deutschen Raum, wenn ja waer es nicht schlecht , wenn Ihr mir mal
die Internetadresse rueberreichen koenntet. Ich danke Euch schonmal im Voraus.

Serverus.

-----------------------------------------------------------------------------



Re: durchstimmbare Laserdiode! (Wurzel, 10. Apr 1998, 23:05:58):
~#! rn=Serverus rt=892116188 rg=suche-biete
~#! tid=892116188
hm, vor jahren haben wir die dinger selbst gebaut... ich wuerde mal bei den
unis nachfragen, dort gibts meist sowas. ob das jetzt auch kommerziell
gemacht wird, weiss ich nicht, koennte aber zur not etwas "entwicklungshilfe"
fuer den eigenbau geben :)

wurzel

-----------------------------------------------------------------------------



Magic ... (Key, 14. Apr 1998, 12:26:20):
Halloe :)
So mal sehen obs hier Opfer gibt ;)
Und zwar hab ich Magic fuer die Playstation gekauft ... naja net gerade mein
Ding .. 
Also ... wer haette Interesse? :)

Key, kurz knapp :)

-----------------------------------------------------------------------------



Festplatte (Li, 16. Apr 1998, 12:17:41):
Halloechen!
Ist irgendjemand grade dabei, seinen Pc aufzuruesten und hat noch eine
Festplatte uebrig?
Ich suche eine EIDE-Festplatte, Groesse relativ egal, hautpsache nicht zu
teuer... Falls jemand wasdahat, bitte mail an: omahl@hrz-uni.bielefeld.de, da
ich im moment nicht so oft im MG bin. 
Thnx, Li

-----------------------------------------------------------------------------



Netzteil fuer HP (Larissa, 16. Apr 1998, 12:27:13):
Ahoi!

Ich habe einen alten 4-86 HP-PC geschenkt bekommen, bei dem das
Netzteil am Popo ist. Hat einer zufaellig ein Netzteil uebrig? 
Das Ding ist sehr lang und schmal, bekommt man nur bei HP aber 
ich will natuerlich keine neues kaufen. Wer noch ne alte HP-Kiste
zum ausschlachten hat kann mir ja mal mailen wegen genauen daten und so.

Danke, Lari

-----------------------------------------------------------------------------



Wohnung in Duesseldorf gesucht (Ronda,  6. Mai 1998, 20:12:27):
Hallo Ihrs!
Meine Freundin verschlaegts wohl so in die Richtung Duesseldorf/Ratingen.
Weiss von Euch zufaellig jemand eine Wohnung da in der Naehe, 2-3 Zimmer, warm
dann doch moeglichst unter 1000 DM.
Wo kann man denn da ganz gut wohnen bzw. wo sollte man mal suchen?
Vielen Dank fuer jede Info,

Ronda

-----------------------------------------------------------------------------



Re: Wohnung in Duesseldorf gesucht (Grimmborn,  6. Mai 1998, 21:26:44):
~#! rn=Ronda rt=894478347 rg=suche-biete
~#! tid=894478347
Gut wohnen kann man da in der Gegend natuerlich nur in Koeln.

> Vielen Dank fuer jede Info,

Da nich fuer,
              Grimmborn der Atheist

-----------------------------------------------------------------------------



Re: Re: Wohnung in Duesseldorf gesucht (Augra,  7. Mai 1998, 22:06:43):
~#! rn=Grimmborn rt=894482804 rg=suche-biete
~#! tid=894478347
> Da nich fuer

Ich denk, damit hat sich Herr Grimmborn dann doch als heimlicher Westfale
geoutet.:)

A. Weissnix.

-----------------------------------------------------------------------------



Re^3: Wohnung in Duesseldorf gesucht (Grimmborn,  8. Mai 1998, 10:23:19):
~#! rn=Augra rt=894571603 rg=suche-biete
~#! tid=894478347
Peinlich peinlich. Der Ausdruck "Da nich fuer" hat mit Westfalen nichts zu
tun. Das ist echt norddeutsch. Heringskoeppe also.

> A. Weissnix.
Jepp. ;-)

Grimmborn der Atheist mit Fremdsprachenkenntnissen

-----------------------------------------------------------------------------



Re^4: Wohnung in Duesseldorf gesucht (Augra,  8. Mai 1998, 11:23:16):
~#! rn=Grimmborn rt=894615799 rg=suche-biete
~#! tid=894478347
>Grimmborn der Atheist mit Fremdsprachenkenntnisen

Von wegen, komm mir bloss nicht so polyglott daher, der Ausdruck hat mit den
Fischkoeppen nix zu tun, ist allenffall muensterlaendisch, aber eher noch
westfaelisch.

A. Weissnix.

-----------------------------------------------------------------------------



Re^5: Wohnung in Duesseldorf gesucht (Grimmborn,  8. Mai 1998, 11:34:50):
~#! rn=Augra rt=894619396 rg=suche-biete
~#! tid=894478347
Seit wann liegt Hamburg im Muensterland?

G. Weissalles(besser).

-----------------------------------------------------------------------------



Re^5: Wohnung in Duesseldorf gesucht (Embe,  8. Mai 1998, 18:34:21):
~#! rn=Augra rt=894619396 rg=suche-biete
~#! tid=894478347
h"a? 
ich hab 8 jahre lang n"ordlich vom weisswurst"aquator
(s"udlich der elbe beginnt bayern) gelebt.

'da nich f"ur' geh"ort definitiv zum hamburger umgangston.

gruss, eMBee.

-----------------------------------------------------------------------------



Re^6: Wohnung in Duesseldorf gesucht (Anatol,  8. Mai 1998, 18:50:10):
~#! rn=Embe rt=894645261 rg=suche-biete
~#! tid=894478347
Und ich dachte immer, dass alles noerdlich der Donau zu Preussen gehoert.

Uijeh, Geographie war noch nie meine Staerke.

Anatol


-----------------------------------------------------------------------------



Re^7: Wohnung in Duesseldorf gesucht (Grimmborn,  8. Mai 1998, 18:55:26):
~#! rn=Anatol rt=894646210 rg=suche-biete
~#! tid=894478347
Ach was. Preussen ist rechtsrheinisch. Womit eigentlich schon alles gesagt
waere...

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^5: Wohnung in Duesseldorf gesucht (Overlord,  8. Mai 1998, 19:15:52):
~#! rn=Augra rt=894619396 rg=suche-biete
~#! tid=894478347

Doch der ist echt norddeutsch.

Ovi , seines Zeichens Fischkopp und steht dazu.
Deutsch war meine erste Fremdsprache :)

-----------------------------------------------------------------------------



Re^4: Wohnung in Duesseldorf gesucht (Lug,  8. Mai 1998, 22:24:41):
~#! rn=Grimmborn rt=894615799 rg=suche-biete
~#! tid=894478347

Da nich fuer?

Quark Grimmi.

FidKG
Lug

-----------------------------------------------------------------------------



Re^6: Wohnung in Duesseldorf gesucht (Lug,  8. Mai 1998, 22:25:30):
~#! rn=Overlord rt=894647752 rg=suche-biete
~#! tid=894478347

Was ist fuer Dich Norddeutsch, Overlord?

Muenster?

Bayern begint hinter den Dammer Bergen.
Lug

-----------------------------------------------------------------------------



Re^6: Wohnung in Duesseldorf gesucht (Gnome,  9. Mai 1998, 01:15:25):
~#! rn=Embe rt=894645261 rg=suche-biete
~#! tid=894478347
abgesehen davon, dass der artikel von Embe aufgrund seiner
rechtschreibschw"ache recht holprig zu lesen ist und damit auch der
inhalt erst beim 3. durchlesen (oder virtuelles cut&pasten ;-))
klar wird, stimme ich ihm und herrn grimmborn aber zu:

"da nich fuer" ist und bleibt nordeutsch.

gnOme mit 7 jahren schleswig-holzbein-erfahrung.

-----------------------------------------------------------------------------



Re^7: Wohnung in Duesseldorf gesucht (Lug,  9. Mai 1998, 01:16:27):
~#! rn=Gnome rt=894669325 rg=suche-biete
~#! tid=894478347
Aha,

die Schleswig-Holsteiner also. Ihr zaehlt eh nur als Halbdaenen.
FidKG
Lug

-----------------------------------------------------------------------------



Re^7: Wohnung in Duesseldorf gesucht (Embe,  9. Mai 1998, 01:45:22):
~#! rn=Gnome rt=894669325 rg=suche-biete
~#! tid=894478347
hmm...
-- ich pfeif auf die rechtschreibung.
-- ich bin wiener, und ich schreib so wie ich red
-- ich kann nur einen schreibfehler (beginnt) finden.
demnach kann das problem nur dein mangelndes verst"andniss f"ur meine
muttersprache sein. (das soll kein vorwurf sein). an rechtschreibschw"ache
kanns nicht liegen.

gruss, eMBee. :-))

-----------------------------------------------------------------------------



Re^7: Wohnung in Duesseldorf gesucht (Dhojakt,  9. Mai 1998, 01:47:00):
~#! rn=Gnome rt=894669325 rg=suche-biete
~#! tid=894478347
Ich denk mal, er meinte mit Rechtschreibwaeche eher deine Vorliebe fuer
TEX-konstrukte.

-----------------------------------------------------------------------------



Re^8: Wohnung in Duesseldorf gesucht (Dieder,  9. Mai 1998, 01:48:35):
~#! rn=Dhojakt rt=894671220 rg=suche-biete
~#! tid=894478347
seh ich auch so...
Dieder, hat sich gedacht was er da liest...

-----------------------------------------------------------------------------



Re^8: Wohnung in Duesseldorf gesucht (Morgoth,  9. Mai 1998, 15:02:42):
~#! rn=Embe rt=894671122 rg=suche-biete
~#! tid=894478347
mir egal wo du herkommst, lass nur diese daemlichen " vor den umlauten und
schreib sie leserlich als (a|o|u)e
M*

-----------------------------------------------------------------------------



Re^7: Wohnung in Duesseldorf gesucht (Overlord,  9. Mai 1998, 19:52:10):
~#! rn=Lug rt=894659130 rg=suche-biete
~#! tid=894478347
Norddeutsch ist fuer mich alles noerdlich von Hamburg. Alles andere ist Sahara
Nord.
Die Tatsache, dass ich verdonnert bin, in diesem Kuhkaff Mainz zu leben,
heisst nicht, dass ich von hier komme

Ovi

-----------------------------------------------------------------------------



Re^8: Wohnung in Duesseldorf gesucht (Hardil, 11. Mai 1998, 11:42:55):
~#! rn=Embe rt=894671122 rg=suche-biete
~#! tid=894478347

ach Embe,

trotz der Rechtschreibreform und Deiner Wiener Herkunft darfst Du trotzdem
nicht "Verstaendniss" schreiben. Und ich glaub Dir auch nicht, dass Du das so
aussprichst. :)
Worum es wohl ging, war Deine Unsitte, ueberall Anfuehrungszeichen statt 'e'
einzusetzen. Das macht die Formatierung etwas unuebersichtlich.

Konrad Duden.

-----------------------------------------------------------------------------



Re^8: Wohnung in Duesseldorf gesucht (Daria, 31. Mai 1998, 16:49:19):
~#! rn=Overlord rt=894736330 rg=suche-biete
~#! tid=894478347
Hi,

Fuer mich gehoert alles westlich von Soest NICHT mehr zu Westfalen.
Sondern zum Ruhrgebiet.

Daria (aus dem Paderborner Land)

-----------------------------------------------------------------------------



Re^9: Wohnung in Duesseldorf gesucht (Lug, 31. Mai 1998, 17:01:46):
~#! rn=Daria rt=896626159 rg=suche-biete
~#! tid=894478347
 Hm,

fuer mich gehoert das zu Bayern.

Lug

-----------------------------------------------------------------------------



Re^10: Wohnung in Duesseldorf gesucht (Wurzel,  1. Jun 1998, 15:50:09):
~#! rn=Lug rt=896626906 rg=suche-biete
~#! tid=894478347
du solltest mal deine geographie-kenntnisse ueberpruefen. das ist eindeutig
im fischkopfland.

wurzel

-----------------------------------------------------------------------------



Re^11: Wohnung in Duesseldorf gesucht (Lug,  2. Jun 1998, 00:59:15):
~#! rn=Wurzel rt=896709009 rg=suche-biete
~#! tid=894478347

Nee Wurzel, nee!

Hinter Dammer Berge beginnt Bayern ;)

FidKG
lug

-----------------------------------------------------------------------------



Mal was anderes (Zephyr,  4. Jun 1998, 14:29:29):

Sammelt zufaellig wer von Euch Zuckerstuecke? Meine
Schwester loest naemlich ihre Sammlung auf.
*knuddels*
             Zephyr

-----------------------------------------------------------------------------



Re: Mal was anderes (Jasper,  4. Jun 1998, 16:09:44):
~#! rn=Zephyr rt=896963369 rg=suche-biete
~#! tid=896963369
Zuckerstuecke???? wie alt sind die denn, ich trink hin und wieder auch mal
zucker im kaffee.

-----------------------------------------------------------------------------



Re: Mal was anderes (Bloodyharry,  5. Jun 1998, 12:50:19):
~#! rn=Zephyr rt=896963369 rg=suche-biete
~#! tid=896963369
Sie loest sie auf? Das gibt aber ne Menge Zuckerwasser.

BH - schmarrend

-----------------------------------------------------------------------------



Re: Re: Mal was anderes (Grimmborn,  8. Jun 1998, 22:48:26):
~#! rn=Bloodyharry rt=897043819 rg=suche-biete
~#! tid=896963369
Noe, nicht unbedingt. Da ist ueberraschend wenig Wasser fuer noetig.

Grimmborn der Atheist

-----------------------------------------------------------------------------



jobs (Wurzel, 11. Jun 1998, 10:02:55):
spezialisten gesucht...

kennt jemand tuxedo? einigermassen gut und hat damit schon was gemacht?
kann ggf. auch andere in das thema einweisen?

bei interesse mail hier oder anrufen: 0171-5350572
einsatzort waere muenchen, einsatzdauer 2-3 monate (ggf. auch festanstellung
moeglich, falls interesse). ueber bezahlung kann man reden, wenig ist es
jedenfalls nicht.

ebenfalls gesucht: firewall-spezialist
sollte ggf. sicherheitsluecken finden koennen.
konditionen wie oben.

wurzel

p.s. falls die formatierung daneben ist, liegt es am windoof-telnet, muss
hier quasi blind tippen... urgs

-----------------------------------------------------------------------------



CGI-Webspace gesucht (Ronda,  1. Jul 1998, 13:14:31):
Hallo,
da mein bisheriger Anbieter leider seinen Service zumacht, suche ich zum 1.8.
etwas Speicherplatz fuer meine CGIs - unter anderem die Liste der WWW-Seiten
von Morgengrau'lern.
Das ganze ist nicht mit allzuviel Datentransfer verbunden, da Bilder etc von
einem anderen Server kommen koennen.

Weiss von Euch jemand zufaellig also einen Anbieter von (moeglichst
kostenlosem) CGI-Platz?
Uber jede Antwort freut sich

Ronda.

-----------------------------------------------------------------------------



Suche Verrueckte zum Abheben! (Ronda,  3. Jul 1998, 10:37:00):
Hi,
nachdem unter anderem Philou mich die ganze Zeit davon ueberzeugt, dass es
viel mehr Spass macht, mit nem Fetzen Stoff ueber sich durch die Gegend zu
fliegen, als auf nem harten Hexenbesen rumzusausen, komme ich wohl nicht
drumrum:
Ich werde wahrscheinlich im August/September in den Alpen einen
Gleitschirmkurs machen - und da das noch viel mehr Spass macht, wenn noch
andere Verrueck^h^h^h^hMudder mitkommen, hier die Frage:

Hast Du nicht auch Lust, mal die Welt von oben zu sehen? Dabei nicht so ne
dicke Flugzeugwand zwischen Dir und dem Himmel, sondern direkt mit der Nase im
Wind?
Naehere Infos bei der bereits vor Vorfreude abhebenden

Ronda
*Ich will Feuerwehrma^h^h^h^h^h^hGleitschirm-Fliegen!!!*

-----------------------------------------------------------------------------



Re: Suche Verrueckte zum Abheben! (Dieder,  3. Jul 1998, 11:40:17):
~#! rn=Ronda rt=899455020 rg=suche-biete
~#! tid=899455020
mag schon sein, aber die Leistungen ueberzeugen mich halt nicht gerade. Ich
fliege lieber stundenlang und teilweise mehrere hundert Kilometer weit im
reinen Gleitflug, das erreiche ich aber mit nem Gleitschirm leider nicht.
Ausserdem kann ich im Segelflugzeug bis zu 270 fliegen und Kunstflug machen :)

Dieder, ueberzeugter Segelflieger

-----------------------------------------------------------------------------



Re: Suche Verrueckte zum Abheben! (Key,  3. Jul 1998, 17:49:23):
~#! rn=Ronda rt=899455020 rg=suche-biete
~#! tid=899455020
Lust hab ich :)

Bezahlst Dus mir und sagst meinen Chef das ich mehr Urlaub brauche? :)

Key

-----------------------------------------------------------------------------



Re: Re: Suche Verrueckte zum Abheben! (Denti,  3. Jul 1998, 21:26:54):
~#! rn=Key rt=899480963 rg=suche-biete
~#! tid=899455020

Interesse haette ich schon (bin halt Lizenzen-Sammler), aber leider fehlt
mir das Geld und die Zeit, da ich dann in der Theorie fuer meine
CPL (Commercial Pilot License) stecke.

Allerdings muss ich Dieder recht geben, Segelfliegen ist irgendwie die
schoenste Art des Fliegens ;)

Denti

-----------------------------------------------------------------------------



Bosnien (Hardil,  7. Jul 1998, 14:59:33):

Suche Heckenschuetzen.
Grund: siehe Rubrik party. Evtl verlegt nach Schmarrn oder Muell.


-----------------------------------------------------------------------------



Speicher gesucht (Orktoeter, 13. Jul 1998, 16:16:41):
Hi !
Suche 2 PS2 16MB 60ns Module
Angebote bitte per Mail na mich

Orktoeter.
,

-----------------------------------------------------------------------------



Re: Speicher gesucht (Ringor, 13. Jul 1998, 21:13:27):
~#! rn=Orktoeter rt=900339401 rg=suche-biete
~#! tid=900339401
Die kosten pro Stueck neu im Laden 23,- DM. 

Da lohnt sich kaum das Porto, wenn Du die gebraucht von jemandem kaufen
willst. Nur so als Anmerkung. ;-)

Ringor

-----------------------------------------------------------------------------



Suche Uebernachtungsmoeglichkeit Nuernberg/Regensburg (Orktoeter, 14. Jul 1998, 14:19:01):
Hi !
Suche fuer 2 Personen (nichtraucher, pflegeleicht) fuer die Nacht vom 15.8.
auf den 16.8. einen Schlafplatz in einer der oben genannten Staedte.
Bei schoenem Wetter reicht auch etwas Platz fuer ein Zelt im Garten.

OrkT.

-----------------------------------------------------------------------------



wohnung (Wurzel, 16. Jul 1998, 19:55:56):
hiho,

es zeichnet sich ab, dass ich doch wohl noch etliche jahre in muenchen
bleiben werde. und da ich so lange nun auch nicht im hotel wohnen kann
(ausserdem muss ich irgendwo meinen pc zum mudden aufstellen) brauche
ich jetzt eine wohnung.

also, gesucht ist eine 3-4 zimmer wohnung in schwabing oder milbertshofen.
moeglichst bald, kosten bis max 2000,- im monat.

wer was weiss, bitte per mail an mich.

wurzel

-----------------------------------------------------------------------------



Suche: (Vampy,  1. Aug 1998, 00:28:33):
Ich suche das Buch "Battle Isle die Saga", bitte bei mir melden, wenn
das jemand findet. Bestellung ist leider unmoeglich, ich kann es nur
nich von Geschaeften bekommen die es auf vorrat haben...
  danke
         vampy

-----------------------------------------------------------------------------



Re: Suche: (Vampy,  1. Aug 1998, 00:47:54):
~#! rn=Vampy rt=901924113 rg=suche-biete
~#! tid=901924113
vampy beantragt das "nicht" zu streichen... grobe fahrlaessigkeit...

-----------------------------------------------------------------------------



Vortragende gesucht (Silvana,  4. Aug 1998, 00:28:21):
Hi.

Ich suche dringen noch Vortragende fuer das MudParty-Seminar. Das muessen
nicht unbedingt Magier des MG sein, bei den Themen:

1) Die Gilden des Morgengrauens (kurze Vorstellung fuer unsere
Spieler-Newbies)
2) Ein LPC-Anfaenger-Thema nach Wahl, da haben wir noch _GAR NICHTS_!
3) Virtual Compiler (wurde mehrfach gewuenscht).

   Silvana

-----------------------------------------------------------------------------



Re: Vortragende gesucht (Patryn,  4. Aug 1998, 01:03:13):
~#! rn=Silvana rt=902183301 rg=suche-biete
~#! tid=902183301
hey, ich hab doch nen lpc-anfaenger-thema uebernommen :)
das wird bei weitem nix fuer super-duper-programmierer.

------
patryn

-----------------------------------------------------------------------------



Ultima (Morgoth,  5. Aug 1998, 14:25:39):
Hi Leute,
ich bastel grade an meinen Ultima-Webseiten (mal wieder) und haette dafuer
gerne noch weitere Tips und Hinweise, Karten, Bilder, Specials, Infos usw.
Wer seine alten Aufzeichnungen durchwuehlt und da etwas findet kann es mir per
mail schicken an: sven@thor.chemie.uni-dortmund.de
Wenn ihr wollt, erwaehne ich Euch auch dann auf der Webseite ;-)

Morgoth, Master of virtues, AVATAR

-----------------------------------------------------------------------------



X-Server fuer Mac gesucht (Bloodyharry, 13. Aug 1998, 08:04:14):
HiHo,

kennt jemand einen X-Server fuer den Macintosh?
Sollte schon ein xfree oder so sein.

bh

-----------------------------------------------------------------------------



moebliertes zimmer (Aurian, 13. Aug 1998, 15:29:03):


ich suche fuer einen bekannten ein moebliertes zimmer in duesseldorf....

wer was weis, oder von dem freud der freundinn des schwagers der schwester
seines kupels gehoert hat wo es sowas gibt....  (bitte melden *grins*)

aurian

-----------------------------------------------------------------------------



Suche Mainboard (Tameli, 17. Aug 1998, 23:23:51):
mein liebes treues board hat mich verlassen *schnief*
nu mal ne frage , hat nicht noch wer ein funktionstuechtiges 586er-Board so
rumliegen ..:-) ?

Tameli *hoff*

-----------------------------------------------------------------------------



Re: Suche Mainboard (Lug, 22. Aug 1998, 02:18:49):
~#! rn=Tameli rt=903389031 rg=suche-biete
~#! tid=903389031

kann mir denken, woran das liegt...

FidKG
Lug

-----------------------------------------------------------------------------



Spielt hier jemand PostSpiele? (Quillian, 24. Aug 1998, 13:32:05):
Hiho

Auch wenn es in einem Mud evtl. die falsche Frage ist: Spielt hier jemand
Spiele per Post (am besten mit Fantasy-Hintergrund)? Ich plane ein solches
Spiel zwecks Programmieruebung zu konzipieren und suche nun allerlei
Dokumentation. Hat jemand sowas schon mal angefangen? Gibt es evtl ein solches
Spiel (zumindest das Auswerteprogramm der Zuege) als Freeware im Quellcode?
Oder ist jemand Meister dieses Spielgenreres und kann mir wertvolle Tips
geben?
Bitte einfach hier an Quillian mailen.

Q.

-----------------------------------------------------------------------------



Re: Re: Suche Mainboard (Key, 25. Aug 1998, 10:03:48):
~#! rn=Lug rt=903745129 rg=suche-biete
~#! tid=903389031
Tameli ist blond und hat die Chips gefuttert? =;))

Key schmarrnt ,)

-----------------------------------------------------------------------------



Suche HTML-Hilfe :) (Anatol, 25. Aug 1998, 23:45:08):
Heya!
Ich habe viele Probleme, interessant sind momentan die zwei:
a) Ich moechte ein html-Dokument drucken, ohne die Style-Angaben (z.B. 
   Einrueckung der Ueberschrift oder Textjustifizierung) zu verlieren. Der
   Print-Button in Netscape.405 ignoriert jene noch fleissig *seufz*.

b) Eben jenes Netscape zeigt eigenwilliges Verhalten, wenn Style-Angaben 
   gemacht werden und ein anklickbares rechtsorientiertes Icon neben einer 
   h3/h4-Ueberschrift zu liegen kommt - der Link wird nicht als Link erkannt,
   bzw. nur die untersten Pixel des 15x15-GIFs...

Any help offered?
Anatol


-----------------------------------------------------------------------------



Re: Suche HTML-Hilfe :) (Slyfox, 26. Aug 1998, 05:48:48):
~#! rn=Anatol rt=904081508 rg=suche-biete
~#! tid=904081508
Versuch's mal mit dem Internet Explorer 4 unter Windows :))

  Sly

-----------------------------------------------------------------------------



Re: Suche HTML-Hilfe :) (Catweazle, 26. Aug 1998, 10:27:04):
~#! rn=Anatol rt=904081508 rg=suche-biete
~#! tid=904081508
a) Speicher es als PS-file ab und drucks dann.
b) haeh?

YTC

-----------------------------------------------------------------------------



suche: Riverdance-Karten (Zorro, 26. Aug 1998, 12:25:45):
Ich suche 2 zusammenhaengende Karte fuer Riverdance an einem WE irgendwo in
Deutschland (am liebsten Oberhausen im November)...
Wer wen kennt der wen kennt der gehoert hat, dass jemand karten loswerden will
moechte sich bitte bei mir melden :)

Gruss Zorro

-----------------------------------------------------------------------------



Re: suche: Riverdance-Karten (Highlander, 26. Aug 1998, 12:39:31):
~#! rn=Zorro rt=904127145 rg=suche-biete
~#! tid=904127145
Vorneweg: Ich kenn keinen, der welche loswerden will.
Aber ich habe zwei fuer Muenchen am 12. September *freu* :>
  HrT, mal protzend ;>

-----------------------------------------------------------------------------



Re: Re: suche: Riverdance-Karten (Pilgrim, 26. Aug 1998, 13:56:14):
~#! rn=Highlander rt=904127971 rg=suche-biete
~#! tid=904127145
Apropos RiverDance,

auf Kabel )Kabel 1 oder 3sat oder so) kam vor einigen Wochen ein ca.
einstuendiges Special von deren (aktueller) Show - sehr beeindruckend!
Frage: Hat das Zufaellig eine auf Video aufgenommen (und kann mir das mal
Kopieren) ?

Pilgrim

-----------------------------------------------------------------------------



Re^3: suche: Riverdance-Karten (Cauno, 26. Aug 1998, 14:07:19):
~#! rn=Pilgrim rt=904132574 rg=suche-biete
~#! tid=904127145
Das lief auf den dritten. Ich habs aufgenommen, ueberspielen ist im Moment ein
problem, prinzipiell aber moeglich.

C. No

-----------------------------------------------------------------------------



Re^4: suche: Riverdance-Karten (Highlander, 26. Aug 1998, 14:13:16):
~#! rn=Cauno rt=904133239 rg=suche-biete
~#! tid=904127145
Das war aber nicht Riverdance, sondern Lord of the Dance
   HrT

-----------------------------------------------------------------------------



Re^5: suche: Riverdance-Karten (Cauno, 26. Aug 1998, 14:15:08):
~#! rn=Highlander rt=904133596 rg=suche-biete
~#! tid=904127145
Das war RIVERDANCE! Hast du meine Kassette oder weisst du, was ich aufnehme?
Ich mag die Show naemlich auch.

C. No

-----------------------------------------------------------------------------



Re^6: suche: Riverdance-Karten (Highlander, 26. Aug 1998, 14:16:27):
~#! rn=Cauno rt=904133708 rg=suche-biete
~#! tid=904127145
Sicher? Na gut. Irr halt ich mich. :>
  HrT

-----------------------------------------------------------------------------



Re^4: suche: Riverdance-Karten (Zorro, 26. Aug 1998, 15:30:11):
~#! rn=Cauno rt=904133239 rg=suche-biete
~#! tid=904127145
ne das war Lord of The Dance

-----------------------------------------------------------------------------



Re^5: suche: Riverdance-Karten (Pilgrim, 26. Aug 1998, 15:40:03):
~#! rn=Zorro rt=904138211 rg=suche-biete
~#! tid=904127145
Ne das war RiverDance ... mit dem anscheinend aktuellen Programm:
Geschichte der Iren und Auszug der Iren nach USA ... mit dem TanzDuell 
amerik. Steptaenzer (schwarz) vs. irischer Steptaezer (der war aber nicht
rothaarig ;-)) ... also, ich weiss schon was ich gesehen hab und was ich suche
;-)

Pilgrim

-----------------------------------------------------------------------------



Re^6: suche: Riverdance-Karten (Zorro, 26. Aug 1998, 15:43:36):
~#! rn=Pilgrim rt=904138803 rg=suche-biete
~#! tid=904127145
ok ok ich dachte du meintest die auffuehrung am sonntag auf N3 das war
naemlich Lord of the dance ...

-----------------------------------------------------------------------------



Re^7: suche: Riverdance-Karten (Rantanplan, 26. Aug 1998, 19:51:57):
~#! rn=Zorro rt=904139016 rg=suche-biete
~#! tid=904127145
Klugscheisser, alle ;-))

Ihr guckt Riverdance doch ehh nur wegen der 1000 steppenden Toertchen ;-)

Oe*

-----------------------------------------------------------------------------



Re^8: suche: Riverdance-Karten (Zorro, 27. Aug 1998, 15:24:19):
~#! rn=Rantanplan rt=904153917 rg=suche-biete
~#! tid=904127145
Solange Du uns nicht vorwirfst nur wegen den steppenden Gesellen dahin zugehen
haste vielleicht recht :)

Zorro

-----------------------------------------------------------------------------



Re^9: suche: Riverdance-Karten (Cauno, 28. Aug 1998, 12:32:15):
~#! rn=Zorro rt=904224259 rg=suche-biete
~#! tid=904127145
Um das ganze jetzt auch jedem der keine Ahnung hat, naeherzubringen (Falls es
hier ueberhaupt solche gibt): heute nacht wiederholt der MDR das einstuendige
special! Das sollte auch die gelegenheit sein, es aufzunehmen ... sofern man
kabel hat oder einen kennt, der es hat.

C. No

-----------------------------------------------------------------------------



Suche Buecher (Cauno, 28. Aug 1998, 12:43:12):


Vielleicht kann mir jemand helfen.
Ich suche "Das Science Fiction Jahr 1997" aus dem Heyne Verlag.
Die Dinger erscheinen immer in einer mickrigen Auflage, deswegen sind sie ein
Jahr spaeter schon vergriffen. Wenn jemand doch noch eines sehen sollte, bitte
melde er sich. Es kann auch aus einem Antiquariat sein, solange es in Ordnung
ist (soll heissen: kein zerfledderter Umschlag oder aehnliches)
Wenn auch noch der Band von 1988 auftauchen sollte, waere ich sehr froh.
Also. Hat jemand so eins gesehen?

C. No

-----------------------------------------------------------------------------



Re: Re: Suche Verrueckte zum Abheben! (Raffi, 28. Aug 1998, 17:16:59):
~#! rn=Dieder rt=899458817 rg=suche-biete
~#! tid=899455020
Raser
Gruss
H.

-----------------------------------------------------------------------------



Re^3: suche: Riverdance-Karten (Lug, 30. Aug 1998, 05:15:56):
~#! rn=Pilgrim rt=904132574 rg=suche-biete
~#! tid=904127145
Riverdance?

Das gebruellte Tiocfaidh ar la sagt ja wohl alles...
Da geht Eure Knete hin.

Knapp
Lug

-----------------------------------------------------------------------------



Suche: Rockabilly-/Psychobilly-CDs (Kretek,  1. Sep 1998, 04:16:14):
Hallo, Leute!

Ich suche fuer einen Kumpel, der neuerdings ziemlich auf Rockabilly & Co.
abfaehrt, ein paar Tips zu guten CDs aus dem Genre, wenn moeglich auch
mit (Online-)Bezugsquellen, da ich selber mich in der Richtung nicht so
auskenne...
Wenn da jemand was weiss (oder vielleicht auch selber was zu verkaufen hat?),
dann bitte Antwort an:
   kretek@antisocial.com

Danke, und Ciao!

KreteK
          
          kretek@antisocial.com


-----------------------------------------------------------------------------



Re: Suche: Rockabilly-/Psychobilly-CDs (Kretek,  1. Sep 1998, 04:20:44):
~#! rn=Kretek rt=904616174 rg=suche-biete
~#! tid=904616174
Achso, ja, bevor sich jetzt noch einer die Frage stellt, warum der Kerl
nicht einfach selber sucht: Der hat demnaechst Geburtstag, und wer sucht
sich seine Geschenke schon gerne selber aus? :-)
In Puncto "Was hatter denn schon?" noch 'ne ganz einfache Antwort: Bis jetzt
nur aufgenommenes Zeug von Freunden, quer Beet a la "Home-made Sampler".

Ciao,
KreteK
          
          kretek@antisocial.com


-----------------------------------------------------------------------------



Re: Suche Buecher (Jimdigriz,  4. Sep 1998, 18:26:46):
~#! rn=Cauno rt=904300992 rg=suche-biete
~#! tid=904300992
Hoi,

irgendeins hab ich 1997 sicher nicht, aber 1988 koennte sein,
ich kuck daheim mal nach,

Ciao,
 Jim DiGriz
,

-----------------------------------------------------------------------------



Re: Re: Suche: Rockabilly-/Psychobilly-CDs (Jimdigriz,  4. Sep 1998, 18:28:25):
~#! rn=Kretek rt=904616444 rg=suche-biete
~#! tid=904616174
Hoi,

schau mal ob Du ne CD (besser waere Konzertticket) von den
 "Lightning Beat Man & his never heard of 'ems" kriegst.

Die bringens :)

Ciao,
 JdG

-----------------------------------------------------------------------------



Re: Spielt hier jemand PostSpiele? (Gwynwaiter,  6. Sep 1998, 16:40:23):
~#! rn=Quillian rt=903958325 rg=suche-biete
~#! tid=903958325
Ja ich.
Gwyn*

-----------------------------------------------------------------------------



Re^5: suche: Riverdance-Karten (Gwynwaiter,  6. Sep 1998, 16:43:08):
~#! rn=Zorro rt=904138211 rg=suche-biete
~#! tid=904127145
Beides ist richtig. Je nachdem von wann bzw. von welchem dritten Programm die
Rde ist.

Gwyn*

-----------------------------------------------------------------------------



Re^6: suche: Riverdance-Karten (Cauno,  7. Sep 1998, 12:46:41):
~#! rn=Gwynwaiter rt=905092988 rg=suche-biete
~#! tid=904127145
Also, um die Sache endlich mal klarzustellen:
'Riverdance' lief bisher auf Bayern 3, Nord 3 (mit untertitelten
Zwischentexten), wo ich es aufgenommen habe und zuletzt auf dem MDR.

'Lord of the Dance' habe ich bisher noch nicht gesehen.

C. No

-----------------------------------------------------------------------------



braucht jemnad einen geldspielautomaten? (Prog,  9. Sep 1998, 01:06:07):
Ich hab nen neuwertigen Geldspielautomaten, von Baly Wolf zu verkaufen! np.
5000DM, vp. 1500DM! 


wer ihn haben will, oder wer fragen hat, muss mir nur mailen!

-----------------------------------------------------------------------------



Ultima 6 und Vorgaenger (Lefty, 18. Sep 1998, 11:56:00):
Hi,

ich suche Ultima 6 und eventuell die Vorgaenger, so es diese denn auch fuer
den PC gibt. Infos, wer sowas hat bzw. wo ich es bekomme bitte direkt an mich.

Lefty

-----------------------------------------------------------------------------



Re: Ultima 6 und Vorgaenger (Lyra, 18. Sep 1998, 12:01:19):
~#! rn=Lefty rt=906112560 rg=suche-biete
~#! tid=906112560
Es soll eine Sammlung Ultima 1-8 geben. Auch recht preiswert. Heisst Ultima
Collection oder so.

Lyra

-----------------------------------------------------------------------------



Re: Ultima 6 und Vorgaenger (Catweazle, 18. Sep 1998, 12:35:16):
~#! rn=Lefty rt=906112560 rg=suche-biete
~#! tid=906112560
Ich hab noch das Original fuer den 64er, reicht das?
YTC

-----------------------------------------------------------------------------



Re: Ultima 6 und Vorgaenger (Morgoth, 18. Sep 1998, 12:51:18):
~#! rn=Lefty rt=906112560 rg=suche-biete
~#! tid=906112560
1-4 kannst aus Netz ziehen. Such einfach auf nem Archie-Server nach
ultima[1-4].zip

M*

-----------------------------------------------------------------------------



Re: Re: Ultima 6 und Vorgaenger (Lefty, 18. Sep 1998, 13:23:34):
~#! rn=Catweazle rt=906114916 rg=suche-biete
~#! tid=906112560
neh, ich haette es gerne fuer den pc, es sei denn du hast nen guten emulator
:)

Lefty

-----------------------------------------------------------------------------



Suche Monitor !!! (Groo, 20. Okt 1998, 17:19:33):
ICh brauch unbedingt einen Monitor fuer den PC , allso
nett waer so >=  17'     
Bitte schnell an mich schreiben 
Groo

-----------------------------------------------------------------------------



Re: Suche Monitor !!! (Morgoth, 20. Okt 1998, 23:26:29):
~#! rn=Groo rt=908903973 rg=suche-biete
~#! tid=908903973
an mich

-----------------------------------------------------------------------------



Re: Suche Monitor !!! (Jameson, 20. Okt 1998, 23:34:17):
~#! rn=Groo rt=908903973 rg=suche-biete
~#! tid=908903973
> ICh brauch unbedingt einen Monitor fuer den PC , allso
> nett waer so >=  17'

Siebzehn Fuss? Wow wenn Du so einen kriegst, sag mal was er gekostet hat :-)

jAmeson

-----------------------------------------------------------------------------



Re: Re: Suche Monitor !!! (Hate, 21. Okt 1998, 10:34:07):
~#! rn=Morgoth rt=908925989 rg=suche-biete
~#! tid=908903973
Was willste denn zahlen fuer sowas? Vielleicht tausch ich ja meinen 21"
gegen einen Flachbildschirm, aber da muss der Preis stimmen :-)

Hate.

-----------------------------------------------------------------------------



S:Laserdrucker (Orktoeter, 21. Okt 1998, 13:14:36):
Suche einen Laserdrucker mit 600*600 DPI, moeglichst ein Markengeraet. Er
sollte kein Ozon emittieren und Toner und Walze sollten getrennt gewechselt
werden koennen.

Angebote bitte per Mail an mich, OrkT.

-----------------------------------------------------------------------------



Re: S:Laserdrucker (Gnome, 22. Okt 1998, 19:10:02):
~#! rn=Orktoeter rt=908975676 rg=suche-biete
~#! tid=908975676
Drucker: HP 6L
Preis  : 699,-

bester laserdrucker in der preiskategorie, wo geht :)

das mit dem ozon, toner und walze weiss ich allerdings nicht so genau.

gnOme

-----------------------------------------------------------------------------



Sekundaerliteratur (Silvana, 22. Okt 1998, 22:26:05):
Hi.

Ich suche fuer ein Seminar alles moegliche an Literatur ueber Muds
und Erwaehungen des Morgengrauens im besonderen. Ausserdem alles, 
was mit Mud-Folgen und Nutzungsgewohnheiten zu tun hat. Da gabs
doch nen paar Diplomarbeiten auch im Netz zu, oder?
Ideen und Hinweise bitte per mail an mich (ich bin vergesslich!)

  Silvana (dankt schon mal)

-----------------------------------------------------------------------------



Re: Suche Monitor !!! (Sirona, 22. Okt 1998, 22:58:22):
~#! rn=Groo rt=908903973 rg=suche-biete
~#! tid=908903973
hab da noch 2 19" ueber .. sind sony roehren von HDS ViewStation .. kommst du
sie abholen ? :-)
- sirona -

-----------------------------------------------------------------------------



Re: Sekundaerliteratur (Guard, 23. Okt 1998, 09:19:57):
~#! rn=Silvana rt=909095165 rg=suche-biete
~#! tid=909095165
Hi

versuch mal www.mud.de , die haben eigentlich viele links auf presse und
forschungsarbeiten

Guard

-----------------------------------------------------------------------------



Re: Re: Sekundaerliteratur (Zarniya, 23. Okt 1998, 09:24:30):
~#! rn=Guard rt=909134397 rg=suche-biete
~#! tid=909095165
Es gibt immer wieder Leute, die Silvana fuer bloed halten. GRATS, Guard! :)

-----------------------------------------------------------------------------



S: P200-CPU (Ohne MMX) (Orktoeter, 23. Okt 1998, 15:42:20):
Der Titel sagt alles, Angebote bitte per Mail an mich.
OrkT

-----------------------------------------------------------------------------



Re^3: Sekundaerliteratur (Silvana, 23. Okt 1998, 17:44:21):
~#! rn=Zarniya rt=909134670 rg=suche-biete
~#! tid=909095165
Auch wenn ich dort schon geguckt hab: Danke fuer den Hinweis, Guard.

  Silvana (nicht bloed (hoffentlich), aber fuer Vergesslichkeit
          bekannt)

-----------------------------------------------------------------------------



Re: Re: Suche Monitor !!! (Key, 24. Okt 1998, 21:03:04):
~#! rn=Sirona rt=909097102 rg=suche-biete
~#! tid=908903973
Einen an mich bitte ;)
Was willste fuer haben? =;)

Key

-----------------------------------------------------------------------------



Kleiner Prantium :) (Key, 25. Okt 1998, 13:35:47):
Hmm hat einer fuer euch noch nen kleinen Pentium samt Board rumfliegen?

Suche noch dringend irgendwas kleines ... 100 - 166 reicht :)

Key

-----------------------------------------------------------------------------



Re: Kleiner Prantium :) (Pra, 25. Okt 1998, 14:21:43):
~#! rn=Key rt=909322547 rg=suche-biete
~#! tid=909322547
Wat is denn ein 'Prantium'?

Soll das eine Anspielung sein?

Pra. Verwirrt.

-----------------------------------------------------------------------------



SGI-Experte gesucht (Grimmborn, 25. Okt 1998, 22:14:08):
Kann mir jemand einen Tip geben, wie ich IRIX 5.3 installieren kann? Ich hab
eine SGI, einen Linux-Rechner mit kernel patch fuer els (dem file system von
SGI), die IRIX 5.3er CD, eine vage Vorstellung was bootp ist sowie einer
Netzverbindung zwischen den beiden Rechnern (sobald ich den AUI/BNC bzw.
AUI/RJ45 Adapter habe). Das Handbuch zur IRIX-Installation fehlt mir leider.
Basically ist die Frage: Welches file von der CD muss ich ueber bootp starten,
damit ich mich dann weiter durch die Installation hangeln kann?

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re: SGI-Experte gesucht (Embe, 26. Okt 1998, 02:07:45):
~#! rn=Grimmborn rt=909353648 rg=suche-biete
~#! tid=909353648
hmm, ich dachte die IRIX cd's sind eh im rockridge-format...

uff, also auf jeden fall brauchst du einen tftp-server,
und ich glaub du musst einfach nur die ganze cd per tftp exportieren,
und dan der SGI-kiste sagen, wo der tftp-server is...

wenn das nicht hinhaut, dann versuch ich das hier nochmal in der doku
nachzuschaun, gemacht hab ich sowas zumindest schon mal (allerdings von irix
zu irix und nicht via linux...

und "ah, ich kann mich nicht erinnern bootp gebraucht zu haben...

gruss, eMBee.

-----------------------------------------------------------------------------



Laserdrucker (Catweazle, 26. Okt 1998, 15:38:34):
~#! on=Tangalur ot=909410044 og=hardsoftware
Weil in suche-biete alles voll
ist speziell hier fuer ORKT


       ---------------CANON--------------- 
                                                       0,00 DM 

       CANON BJC-250, Color-Option, 360x360dpi 
                                                      199,00 DM 

       CANON BJC-7000, Color, 1200x600dpi 
                                                      529,00 DM 

       ---------------MINOLTA--------------- 
                                                       0,00 DM 

       MINOLTA PAGE PRO 6L, Laser, s/w, 600dpi 
                                                      444,00 DM 

       MINOLTA PAGE PRO 6, Laser, s/w, 600dpi 
                                                      569,00 DM 

       MINOLTA PAGE PRO 8L, Laser, s/w, 600dpi 
                                                      609,00 DM 

       MINOLTA PAGE PRO 8, Laser, s/w, 600dpi 
                                                      766,00 DM 

       ---------------EPSON--------------- 
                                                       0,00 DM 

       EPSON STYLUS 300, Color, 720x720dpi 
                                                      189,00 DM 

       EPSON STYLUS 400, Color, 720x720dpi 
                                                      299,00 DM 

       EPSON STYLUS 440 Color, 720x720dpi 
                                                      325,00 DM 

       EPSON STYLUS 640, Color, 1440x720dpi 
                                                      399,00 DM 

       EPSON STYLUS 740, Color, 1440x720dpi 
                                                      539,00 DM 

       EPSON STYLUS 800, Color, 1440x720dpi 
                                                      459,00 DM 

       EPSON STYLUS 850, Color, 1440x720dpi 
                                                      679,00 DM 

       EPSON STYLUS PHOTO-700, Color, 1440x720dpi 
                                                      459,00 DM 

       EPSON STYLUS 1520, Color, 1440x720dpi, Din-A3 
                                                    1.333,00 DM 

       ---------------HEWLETT PACKARD------------- 
                                                       0,00 DM 

       HP 690C, Color, 600x600dpi 
                                                      315,00 DM 

       HP 690C+, Color, 600x600dpi 
                                                      359,00 DM 

       HP 710C, Color, 600x600dpi 
                                                      449,00 DM 

       HP 720C, Color, 600x600dpi 
                                                      499,00 DM 

       HP 890C, Color, 600x600dpi 
                                                      619,00 DM 

       HP 1120C, Color, 600x600dpi, Din-A3 
                                                      889,00 DM 

       HP OFFICE-JET 635 
                                                      888,00 DM 

       HP 6L, Laser, s/w, 600dpi 
                                                      679,00 DM 

                 



-----------------------------------------------------------------------------



Re: Re: SGI-Experte gesucht (Grimmborn, 26. Okt 1998, 22:49:36):
~#! rn=Embe rt=909367665 rg=suche-biete
~#! tid=909353648
IRIX 5.3 ist ebenso wie die beiden patches-CDs im els-Format. Ehrlich, ich
habs ausprobiert.
Wieso sollte ich das euber tftp machen (ich nehme an auch das geht ueber
Linux?) wenn ichs auch mit bootp machen kann - Vorteile, Nachteile?
Das mit der Dokumentation ist eben genau das Problem, weswegen ich die Anfrage
hier gestellt hatte. Wenn ich ein FM zum R haette, koennte ich mir ja selber
helfen. ;-)

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^3: SGI-Experte gesucht (Embe, 26. Okt 1998, 23:10:10):
~#! rn=Grimmborn rt=909442176 rg=suche-biete
~#! tid=909353648
der punkt is, ich glaube nicht, das es mit bootp geht,
und was die doku angeht, lies doch mein posting nochmal :-)

gruss, eMBee.
ps linux kann tftp, selbstredend...

-----------------------------------------------------------------------------



Re^4: SGI-Experte gesucht (Grimmborn, 26. Okt 1998, 23:20:10):
~#! rn=Embe rt=909443410 rg=suche-biete
~#! tid=909353648
Also, ich hab eine andere Doku von dem Teil (da hats etwa eineinhalb
Regalmeter, 7cm davon hab ich), den "System Administrator's Guide". Dort wird
bootp empfohlen (und gesagt, wie man das auf einer anderen SGI einrichtet).

Grimmborn der Atheist

P.S. Ach ja, und dass ich nicht unterscheiden kann, wer in welcher Doku was
     liest liegt an der Uhrzeit. Und vielleicht ein bischen am Wein.

-----------------------------------------------------------------------------



Schilder aus aller Welt - Ein Cyber-Art-Projekt (Philou, 28. Okt 1998, 13:27:36):
[B[BSeit einiger Zeit habe ich ein Internet-Projekt
ins Leben gerufen, bei dem ihr Forografien
einsenden koennt. Das Thema lautet: Schilder aus aller Welt

Wenn jemand von Euch ein verruecktes Foto
ueber lustige Schilder aus aller Welt hat,
so schickt es mir zu ( als scan-datei via email 
oder das Foto selbst ) 
Die Einsendung wird dann auf der Homepage der virtuellen
Galerie KunstSTueck Wuppertal in das Cyber-Art-Projekt
"Schilder aus aller Welt" aufgenommen.

Gespannt auf die Einsendungen wartet

Euer Philou

email: jogoart@bogw.de
homepage: www.jogoart.bogw.de


-----------------------------------------------------------------------------



S: Brother HL 1050 (Orktoeter,  2. Nov 1998, 16:40:32):
Hi !
Wenn jemand einen Laden kennt, der den oben genannten Drucker guenstig
anbietet, bitte eine Mail an mich.

OrkT.

-----------------------------------------------------------------------------



Palmtop mit windows ce 2.0 fuer Tests (Ronda, 17. Nov 1998, 08:53:12):
Hallo,
hat jemand von Euch eventuell einen Palmtop oder aehnliches, was ueber Windows
CE 2.0 verfuegt?
Fuer ein Projekt wollen wir eventuell Excel auf den Winzlingen einsetzen, dazu
wuerde ich gern austesten, ob da
- mehrere Seiten / Datenblaetter
- "Gueltigkeitsregeln" (ComboBox-Liste)
- genug Speicher fuer ca 400-700 KB grosse Excelsheets hat.
Ueber jede Info dazu wuerde ich mich freuen - wenn jemand so ein Geraet im
Zugriff hat, wuerde es auch ausreichen, mal zwei-drei Excel-Sheets vom PC auf
den Winzling zu laden und da auszutesten.
Vielen Dank fuer Eure Hilfe,

Ronda

Ps: Nein, da geht leider kein Linux, diesmal nicht ;)

-----------------------------------------------------------------------------



Re: Palmtop mit windows ce 2.0 fuer Tests (Grimmborn, 17. Nov 1998, 12:10:22):
~#! rn=Ronda rt=911292792 rg=suche-biete
~#! tid=911292792
Ich hab so ein Teil zwar nicht, aber die (noch) aktuelle ct hat da einen
groesseren Teil ueber so Dingelchen. Hab ihn nur ueberflogen, irgendwas mit
Excel kam drin vor. Und dass es nicht so der absolut letzte Brueller sei
(abgespeckt halt).

Grimmborn der Atheist

-----------------------------------------------------------------------------



MFG Bonn - Neustadt/Weinstr. 22.11. (Jameson, 17. Nov 1998, 17:31:22):
SUCHE fuer Sonntag, 22.11. nachmittags oder abends

entweder per Zug (Wochenendticket), auch Teilstrecke (*)
eine/n Mitfahrer/in

oder einen Platz im Auto (ich habe wenig Gepaeck)

von BONN nach NEUSTADT/WEINSTRASSE.

(*) 2 alternative Strecken:
Bonn - Koblenz - Bingen - Hochspeyer - Neustadt (4:32 h)
oder
Bonn - Koblenz - Ludwigshafen/Rhein - Neustadt (5:04 h)

Tel. 06321/84464 (nur abends)
oder bis Samstag Mail an juergen@pilhuhn.de schicken.

jAmeson

-----------------------------------------------------------------------------



Re: Palmtop mit windows ce 2.0 fuer Tests (Wurzel, 19. Nov 1998, 20:39:04):
~#! rn=Ronda rt=911292792 rg=suche-biete
~#! tid=911292792
stimmt, da gibts kein linux.
aber: versuchs mal mit dem palmpilot oder palm3 von 3com. braucht kein
windoof und laeuft super. ein spreadsheet gibts fuer umme aus dem net.

wurzel (es gibt immer alternativen zu microschrott)

-----------------------------------------------------------------------------



roten rosen (Zorro, 23. Nov 1998, 19:16:30):
hier auch nochmal ...

ich suche karten (2-4) fuer ein toten hosen weihnachtskonzert 20.12.
oberhausen oder 26.12. duesseldorf...
wenn wer welche loswerden will bei mir bitte melden

Zorro
&&

-----------------------------------------------------------------------------



Kleines Board :) (Key, 25. Nov 1998, 13:27:38):

Halloe ich such mal wieder (immernoch) nen kleines Board samt Prozessor (ab
100MHZ Pentium) moeglichst billig :)

Los los meldet euch ;)

Key

-----------------------------------------------------------------------------



Re: Kleines Board :) (Catweazle, 26. Nov 1998, 00:14:19):
~#! rn=Key rt=912000458 rg=suche-biete
~#! tid=912000458
Gigabyte HX, 512 PBC, kein Speicher, kein Luefter, P120.
Was zahlste? :)
YTC

-----------------------------------------------------------------------------



Stellengesuch (Catweazle,  1. Dez 1998, 13:36:23):
~#! on=Catweazle ot=912519220 og=anzeigen
~#! on=Markath ot=912511672 og=allgemeines
Hallo,
die Agentur in der ich arbeite (berens&partner duesseldorf, www.berensp.com)
sucht HTML bzw. JavaScript Authoren. Wer interesse an einen Job bei einer
InternetAgentur hat und bereit ist ca. 3 Tage die Woche dort zu produzieren,
kann sich einfach bei mir melden (r.wahl@berensp.com).

-----------------------------------------------------------------------------



Wizadry 7 (Trug,  4. Dez 1998, 12:31:27):
Da leider mein altes DOS-Wizardry 7 aufgrund Timingprobleme mit der CPU bzw.
mit den Cache nicht zurandekommt und prompt abstuerzt (auch unter einen
DOS-Emulator), suche ich die 'aufpolierte' Version Wizardry 7 Gold. 

Es ist dabei egal, ob es die Windows oder MSDOS Version ist.

Trug, verzweifelt.

-----------------------------------------------------------------------------



Mediziner, Sadisten und aehnliche Quacksalber (Dante,  5. Dez 1998, 15:24:07):
Kann mir jem sagen, wo man preisguenstig (kostenlos wird sich ja wohl nicht
machen lassen) Software fuer Medizinstudenten, Aerzte usw...via net bekommen
kann. Egal ob Lernprogramme oder Lexika usw...
Danke

-----------------------------------------------------------------------------



Re: Mediziner, Sadisten und aehnliche Quacksalber (Acrimon,  7. Dez 1998, 17:55:55):
~#! rn=Dante rt=912871447 rg=suche-biete
~#! tid=912871447
Unter
http://www.klug-suchen.de/dat/Wissenschaft/Medizin/
und
http://ftpsearch.lycos.com/
wirst Du Einiges finden.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Pc-Einzelteile (Birdy,  8. Dez 1998, 09:15:16):
Hiho !

Ich wollte mal fragen, ob jemand billig/ge
braucht nen Tower, ne Graphikkarte, ne Soundkarte, n 17zoeller
, und ne Festplatte abzugeben hat.
Ich komm naemlich ganz billig an nen p200 mit board und brauch nun nur nohc
den Rest des Compis.
:))

Birdy, suchend

-----------------------------------------------------------------------------



Re: Pc-Einzelteile (Key,  8. Dez 1998, 10:13:21):
~#! rn=Birdy rt=913108516 rg=suche-biete
~#! tid=913108516
Aeh also ich nehm den p200 ;)

Key hat leider nix ueber :)

P.S.: Frag mal die Schweizer, da hatte jemand nen 17 Zoller fuer Selbstabholer
,)

-----------------------------------------------------------------------------



Re: Re: Pc-Einzelteile (Sirona, 13. Dez 1998, 19:23:35):
~#! rn=Key rt=913112001 rg=suche-biete
~#! tid=913108516
aem das war kein 17 ..
der 19 er steht aber immer noch bei mir rum .. ist von ner HDS ViewStation
-> Sony Trinitron roehre .. 1600 1200 mehr weiss ich eigentlich gar nicht.. :)
ausser das es bnc anschluesse hat und der/die, der/die das teil abholen kommt
so eines noch besorgen muss ..
greetings sirona .. ach ja aem fals ich wieder mal vorhabe fuer einige tage
nicht hier zu erscheinen -> sirona@webdream.ch .. :)

-----------------------------------------------------------------------------



CPUs zu verkaufen (Gnome, 13. Dez 1998, 22:12:32):
hi,

verkaufe nen P133 fuer 40,- und nen P90 fuer 20,-.
beide zusammen gibbet fuer 50,- :)

tausche wahlweise gegen mind. 4 32-pol SIMMs a 4 MB (60ns).
8 von der sorte waeren natuerlich besser... :)

interessierte bitte mail an mich.

gnOme

-----------------------------------------------------------------------------



Re: CPUs zu verkaufen (Key, 15. Dez 1998, 13:29:29):
~#! rn=Gnome rt=913587152 rg=suche-biete
~#! tid=913587152
Hmpf haetteste das net frueher sagen koennen?

Padreic habbich Umtauschrecht? =;)

Key

-----------------------------------------------------------------------------



CD Writer YamahaCDR-200t oder CDRW 2260 (Groo, 14. Jan 1999, 04:28:32):
Angebote bitte hier pair Mail
Thanxs
Groo

-----------------------------------------------------------------------------



Lied gesucht (Dieder, 14. Jan 1999, 14:39:06):
Hi!

Ich suche schon ewig lang verzweifelt ein bestimmtes Lied. Alle Recherche im
Internet, Newsgroupanfragen, lyrics-Server-Durchforsten etc. hat nix gebracht,
deshalb versuche ich es mal hier.

Das einzige, was ich von dem Lied weiss, ist, dass darin die Zeilen "Geld ist
nicht wichtig, aber scheen musse sein" vorkommen. Das Teil ist eher in
Molltonarten geschrieben, aber dennoch recht flott vom Rhythmus und Tempo her.

Vom Musikstil her wuerde ich eher auf ein Musicalstueck oder ein Stueck aus
einer Operette tippen, es koennte auch eine englische Uebersetzung sein.
Eine Anfrage an den SWR brachte die Antwort, es handle sich um ein Lied aus
der CD "In Muenchen steht ein Hofbraeuhaus" von Alex Berlin, was ich aber kaum
glauben kann, da es wie gesagt vom Stil her ueberhaupt nicht in diese
"Sauflieder" (Hab ich da jetzt jemanden beleidigt? Sorry :-))) passt.

Also: Kennt jemand zufaellig das Stueck oder koennte mir Tips geben, wo ich
noch suchen koennte?

Fuer jewede Art von Antwort waere ich dankbar.

Gruss,
Dieder

-----------------------------------------------------------------------------



S: PC Hardware Teile (Orktoeter, 14. Jan 1999, 14:45:26):
Gesucht werden :
  Pentium Mainboard (alter Pentium, ohne CPU)
  Grafikkarte (alt)
  Floppylaufwerk
  Tastaur
  Maus

Wer so etwas ueber hat, bitte Mail an mich

OrkT

-----------------------------------------------------------------------------



Re: Lied gesucht (Key, 14. Jan 1999, 16:08:18):
~#! rn=Dieder rt=916324746 rg=suche-biete
~#! tid=916324746
Also ich erinnere mich dunkle an ein lied das es sein koennte, und das ist
eins von den dir gennanten saufliedern ;)

Key

-----------------------------------------------------------------------------



Re: Re: Lied gesucht (Dieder, 14. Jan 1999, 16:40:48):
~#! rn=Key rt=916330098 rg=suche-biete
~#! tid=916324746
oha, koennte also doch die richtige Faehrte sein... haett ich nich gedacht.
Danke erstmal ;-)

Dieder

-----------------------------------------------------------------------------



Re: Lied gesucht (Qitess, 14. Jan 1999, 17:59:22):
~#! rn=Dieder rt=916324746 rg=suche-biete
~#! tid=916324746
also, ich kenn das lied, aber weiss nicht, von wem das geschrieben oder
gesungen wird :) 
QI**

-----------------------------------------------------------------------------



lied gesucht (Smarte, 15. Jan 1999, 11:03:50):
Ich kenne das lied auch wurde von einer Frau gesungen (ca. in den 60er-70-er
Jahren ). Als Sauflied habe ich es heutzutage schon oefter gehoert und ich
meine die Saengerin war rothaarig .

Smarte kramt in seinem Gedaechtnis nach unuetzen Informationen.

-----------------------------------------------------------------------------



Re: lied gesucht (Dieder, 15. Jan 1999, 13:33:08):
~#! rn=Smarte rt=916398230 rg=suche-biete
~#! tid=916398230
danke schonmal fuer alle Informationen ;-)

bringt mich zwar im Moment nicht viel weiter, aber ich versuche mal,
Puzzlestein an Puzzlestein zu setzen :-)

Dieder

-----------------------------------------------------------------------------



Re: lied gesucht (Key, 15. Jan 1999, 19:22:26):
~#! rn=Smarte rt=916398230 rg=suche-biete
~#! tid=916398230
Hmm nene soweit ich mich erinnere von nem Mann ... Oder es ist halt
abgekupfert ... *zuck*

Key

-----------------------------------------------------------------------------



Re: Re: lied gesucht (Asmodis, 15. Jan 1999, 23:25:51):
~#! rn=Dieder rt=916407188 rg=suche-biete
~#! tid=916398230
Hmm, ich glaub auch, es war ein Mann, irgensoein Clown bei 'Mainz ist Mainz
wie es singt und lacht'

-----------------------------------------------------------------------------



Re: CD Writer YamahaCDR-200t oder CDRW 2260 (Grimmborn, 16. Jan 1999, 21:33:52):
~#! rn=Groo rt=916288112 rg=suche-biete
~#! tid=916288112
Ich biete Dir 100DM. Fuer den CDRW 2260.

GdA

-----------------------------------------------------------------------------



Musiktheoretiker an die Front ! (Flinx, 19. Jan 1999, 13:23:05):
Aehm....*leichtrodwerd* ich braeuchte mal die Hilfe eines
Musikbewanderten Mudders. Wie unschwer zu erkennen ;(hoffe ich jedenfalls)
habe ich hier eine Tonleiter skiziert.
eben jene braeuchte allerdings mit 5 "b", und zwar sowohl
im violinen als auch im bassschluessel (heissen die ueberhaupt so ?)
Sinn des ganzen ist die umsetzung eines Klavierstuecks fuer meine 
Klampfe. Jaja, ich weiss, wenn ich noch nicht mal Ahnung vom
Notenlesen habe, wird das nicht so ganz einfach werden.
Belohnung ? Keine Ahnung. Ich spiel das Stueck auf der naechsten
Mudfete. Oder ist das eher ne Drohung ? uch egal.
waere jedenfalls fuer hilfe dankbar !;
Flinx.
g;-----------f-
e;---------d---
c;-------h-----
a;-----g-------
f;---e---------
d;-c-
h;-a-
g;-f-
e

-----------------------------------------------------------------------------



Re: Musiktheoretiker an die Front ! (Dieder, 19. Jan 1999, 14:48:57):
~#! rn=Flinx rt=916752185 rg=suche-biete
~#! tid=916752185
schick mir das Teil zu, duerfte kein Problem sein.

Dieder

-----------------------------------------------------------------------------



Mathematiker/Informatiker/Hacker gesucht. (Fyt, 21. Jan 1999, 11:02:30):


-------------------------------- snip ---------------------------------

             Mathematiker mit Programmierkenntnissen gesucht

F\374r die Bearbeitung eines Drittmittelprojektes f\374r die
Telekommunikations-industrie suchen wir zwei Mitarbeiter zum
fr\374hestm\366glichen Zeitpunkt f\374r
zun\344chst ein Jahr (mit der M\366glichkeit der Verl\344ngerung).

Stellenbeschreibung:

(1) Mathematiker mit Programmiererfahrung

Gute Kenntnisse in den folgenden Gebieten sind erforderlich:
* Graphentheorie und Kombinatorik
* C++ Programmierung
* MAPLE

(2) Programmierer/Systembetreuer mit Verst\344ndnis f\374r mathematische
Probleme

Vorausgesetzte Kenntnisse:


* UNIX und WINDOWS
* C++ Programmierung
* Internet (Pflege eines Webservers)
* M\366glichst auch Kenntnisse in PASCAL/DELPHI

Die Arbeitsaufgaben beinhalten die Entwicklung von Methoden, Algorithmen
und Programmen f\374r die Analyse der Erreichbarkeit, Zuverl\344ssigkeit und
Sicherheit von Kommunikationsnetzen. Die Verg\374tung der Stellen erfolgt
nach BAT-O IIa bzw. BAT-O IIa/2.

Bewerber melden sich bitte per e-mail oder schriftlich bei:

Prof. Peter Tittmann
Fachbereich Mathematik
Hochschule Mittweida
09648 Mittweida
Technikumplatz 17

e-mail: peter@htwm.de

Telefon: 03727 58-1031

-------------------------------- snip ---------------------------------


Oder bei mir (Fyt@AnderLand) melden.

Fyt.

-----------------------------------------------------------------------------



Suche Kindergeldempfaenger ueber 27 (Zephyr, 22. Jan 1999, 00:22:43):

Ist hier irgendwer, der schon 27 oder aelter ist und noch 
Kindergeld kriegt? Wenn ja, warum? Oder irgendnen Jurist
der da Ahnung hat?

*knuddels*
  Zephyr

-----------------------------------------------------------------------------



Re: Suche Kindergeldempfaenger ueber 27 (Tarina, 22. Jan 1999, 00:28:54):
~#! rn=Zephyr rt=916964563 rg=suche-biete
~#! tid=916964563
Kindergeld...

Es gibt nur zwei Moeglichkeiten, Kindergeld fuer ein Kind ueber 27 Jahre zu
erhalten.
1. Moeglichkeit: das Kind ist behindert und kann fuer seinen Lebensunterhalt
nicht aufkommen.
zeit
2. Moeglichkeit: das Kind hat Wehr- oder Zivildienst geleistet. Dabei wird
dann 
    hoechstens die Dauer des Dienstes auf das 27. Lebensjahr aufgeschlagen.
Das die
   uebrigen Voraussetzungen fuer Kindergeld erfuellt sein mussen (Ausbildung)
versteht
   sich wohl von selbst.

Gruss,
Tarina

-----------------------------------------------------------------------------



Re: Re: Suche Kindergeldempfaenger ueber 27 (Key, 22. Jan 1999, 15:53:46):
~#! rn=Tarina rt=916964934 rg=suche-biete
~#! tid=916964563
*gruebel*
Also 1 ist voellig klar .... das zweite dachte ich sei nur bis zum 25.
Lebensjahr gueltig *zuck* Kann mich irren ,)

Key

-----------------------------------------------------------------------------



Re^3: Suche Kindergeldempfaenger ueber 27 (Tarina, 22. Jan 1999, 19:06:14):
~#! rn=Key rt=917020426 rg=suche-biete
~#! tid=916964563
Ganz sicher: 27 !


-----------------------------------------------------------------------------



Re: Suche Kindergeldempfaenger ueber 27 (Cyann, 23. Jan 1999, 02:37:00):
~#! rn=Zephyr rt=916964563 rg=suche-biete
~#! tid=916964563
Aehm... Meinst Du SELBST Kindergeld kriegen oder dass die Eltern 
Kindergeld fuer einen bekommen? Wie das mit dem selbst Kindergeld
kriegen geht, koennt ich Dir erklaeren...

   Cyann

-----------------------------------------------------------------------------



Suche Remailer (Koomi, 26. Jan 1999, 22:35:41):
Ich suche einen vernuenftigen (freien) Remailer, der mir die Mails auf meine
tatsaechliche Mailadresse umlenkt und nicht einen mit dummen Spam aergert.
Auch nicht solche Anbieter, die einen a la GMX Loecher in den Bauch fragen und
man da ein ganzes Profil angeben muss.

(das ich da natuerlich irgendwas testweise bei GMX eingetragen habe, versteht
sich von selbst. Leider funktioniert GMX nicht)

Sinn der Sache ist eine Art "ewige" Adresse, weil ich demnaechst meinen
Provider wahrscheinlich oefters wechseln werde und ich nicht auf solche
Adressen wie Geocities, Yahoo oder aehnlichen ausweichen will.

Halbelf Koomi

-----------------------------------------------------------------------------



S: Computerteile (Orktoeter, 27. Jan 1999, 14:45:42):
Ich suche immer noch Teile fuer einen Compi :

- Pentium Motherbord (ohne MMX) ohen CPU (evtl. auch ohne RAM)
- Grafikkarte mit 2 MB
- Maus
- Floppylaufwerk

Angebote bitte per Mail an mich, OrkT.

-----------------------------------------------------------------------------



Re: S: Computerteile (Key, 27. Jan 1999, 15:03:33):
~#! rn=Orktoeter rt=917448342 rg=suche-biete
~#! tid=917448342
Hmm also Grafikkarte hab ich noch eine .... koennte sogar 2MB sein ... Nur
isses ne uralte =;)

Key

-----------------------------------------------------------------------------



Re: S: Computerteile (Jehova, 27. Jan 1999, 16:46:18):
~#! rn=Orktoeter rt=917448342 rg=suche-biete
~#! tid=917448342

So. Hm. ich hab' das alles und sogar noch ein bisserl mehr :)

Pentium 120 MHz, Big-Tower
72 MB RAM (2x32 MB + 2x4MB EDO)
1 GB SCSI-Festplatte Seagate ST 31200 N
Adaptec AHA 1540/1542? CF SCSI-Controller
Sony CDU-561 CD-ROM (SCSI)
SCSI-Flachbettscanner Siemens Nixdorf/AGFA 9036,
Standard-Tastatur + Maus,
PG5V Shared Memory-Grafikkarte,
Standard-Soundkarte,
Top-Zustand.

DM 450,-

P.S.: Ist was fuer Selbstabholer ...

-----------------------------------------------------------------------------



Re: Re: S: Computerteile (Key, 27. Jan 1999, 16:51:35):
~#! rn=Jehova rt=917455578 rg=suche-biete
~#! tid=917448342
Haetteste das mal nen bisserl frueher gesagt ;)

Key

-----------------------------------------------------------------------------



Re: Suche Remailer (Marcus, 27. Jan 1999, 16:54:30):
~#! rn=Koomi rt=917390141 rg=suche-biete
~#! tid=917390141
Wenn du ein, err, richtiges OS benutzt, saugst du die Mail von dem 
jeweiligem Mailserver per pop3, fuetterst die kurz durch ein procmail
script und wirst auch so den Spam los. Downloaden musst du ihn aber noch.

Ciao, Marcus

-----------------------------------------------------------------------------



Re^3: S: Computerteile (Jehova, 27. Jan 1999, 16:55:32):
~#! rn=Key rt=917455895 rg=suche-biete
~#! tid=917448342

das teil macht sich auch gut als zweitrechner ...

j*

-----------------------------------------------------------------------------



Re: Re: Suche Remailer (Koomi, 27. Jan 1999, 19:20:44):
~#! rn=Marcus rt=917456070 rg=suche-biete
~#! tid=917390141
Tja, ich benutze _zuhause_ das 'richtige' Betriebssytem, aber so auf der Uni
und im Teilzeitjob hab ich es mit ein paar anderen OSsen zu tun, aber das hat
nichts mit meiner Anfrage zu tun.

Ich wollte nur eine ewiggueltige Email-Adresse mir besorgen, damit ich nicht
xmal mehr die ganzen Anmeldungen fuer die Mailingliste korrigieren muss. Das
mit den Spam war nur die Befuerchtung, dass ich aufgrund dieser 'festen'
Adresse damit mehr eingedeckt werden.

Wie auch immer, ich hab eine netten gefunden, der auch noch als zusaetzliches
Zuckerl mir eine 'ewige' Homepage-URL bereitstellt.

Halbelf Koomi

PS: Acrimon, du bekommst noch die eine Mail :)

-----------------------------------------------------------------------------



Re: Re: S: Computerteile (Morgoth, 28. Jan 1999, 09:07:33):
~#! rn=Jehova rt=917455578 rg=suche-biete
~#! tid=917448342
NEHM ICH !


-----------------------------------------------------------------------------



Re: S: Computerteile (Nimbus, 28. Jan 1999, 11:36:19):
~#! rn=Orktoeter rt=917448342 rg=suche-biete
~#! tid=917448342
Hi OrkT!

Grafikkarte habe ich noch eine: ne ELSA Victory 3D mit 2 MB EDO.
Chipsatz S3 Virge. Die ist allerdings im Moment noch in nem anderen
Rechner, ich kann noch net sagen wann ich sie wieder habe.
Falls du interessiert bist mail einfach an: nimbus.priv@gmx.net

Nimbus

-----------------------------------------------------------------------------



Suche Brenner (Mesirii, 29. Jan 1999, 11:44:35):
Hallo,
ich suche nen Cd-Brenner zum gelegentlichen Brennen.
1x wuerde reichen, aber funktionieren sollte er schon.
Angebote an mich ;)

-----------------------------------------------------------------------------



Re: Mathematiker/Informatiker/Hacker gesucht. (Ronda, 29. Jan 1999, 13:42:30):
~#! rn=Fyt rt=916916550 rg=suche-biete
~#! tid=916916550
*grins*
Und der soll Euch dann beibringen, dass man keine Umlaute benutzt? Um die
Sicherheit und Zuverlaessigkeit Eurer Kommunikation zu verbessern? 

*ok, ich sollte besser arbeiten und nicht bloedeln...* Ronda

-----------------------------------------------------------------------------



Re: Re: Mathematiker/Informatiker/Hacker gesucht. (Acrimon, 29. Jan 1999, 20:10:18):
~#! rn=Ronda rt=917617350 rg=suche-biete
~#! tid=916916550
Eben gerade zu diesem Zweck (naemlich um die Sicherheit und Zuverlaessigkeit
der Kommunikation zu verbessern) sollte man eben *schon* Umlaute verwenden.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



P 200 (Smarte,  1. Feb 1999, 21:51:08):
Halloele 
Ich suche fuer den zweit Rechner eines Kameraden noch einen 200 Pentium
Ihr koennt mir dazu (sofern ihr da was habt) eine mail schicken.
Addresse : sw1749@hrz.uni-essen.de oder einfach hier im mud :)

Smarte 

-----------------------------------------------------------------------------



Re: P 200 (Key,  2. Feb 1999, 08:36:22):
~#! rn=Smarte rt=917905868 rg=suche-biete
~#! tid=917905868
Der Trend geht zum Zweitrechner :)

Also wer nen 450 Pentium 2 ueber hat .... Ich such noch nen gescheiten
Erstrechner ;)

Key schmarrnd

P.S.: achja natuerlich brauch ich auch noch fuer meinen Brennrechner mehrere
CD-Brenner :)

-----------------------------------------------------------------------------



Re: P 200 (Bhamir,  3. Feb 1999, 16:31:17):
~#! rn=Smarte rt=917905868 rg=suche-biete
~#! tid=917905868
Aehh, soll das ne Dual oder ne single Voltage Variante sein .. ich nehme doch
an ne singel Voltage, oder?

Bhamir (hat nen P200 (dual) den er aber noch selbst brauch , sorry)

-----------------------------------------------------------------------------



Re: Re: P 200 (Willow,  4. Feb 1999, 13:20:18):
~#! rn=Key rt=917944582 rg=suche-biete
~#! tid=917905868
aehm, wie jetzt zweitrechner? ich dachte, wir sind schom beim drittrechner... 
;-)
Weidchen Willow am Umschalten zwischen den REchnern...

-----------------------------------------------------------------------------



Re^3: P 200 (Grimmborn,  7. Feb 1999, 01:54:05):
~#! rn=Willow rt=918134418 rg=suche-biete
~#! tid=917905868
Geht so. 
Mein Drittrechner hat keinen Luefter mehr. Und auch kein RAM. Was nichts
macht, da ich keinen brauchbaren Monitor fuer ihn uebrig habe und das optische
Mauspad zur Maus eh nicht habe.
Aber als Ersatzteillager fuer Rechner #2 ist er brauchbar. ;-)

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: P 200 (Ringor,  7. Feb 1999, 10:26:03):
~#! rn=Grimmborn rt=918352445 rg=suche-biete
~#! tid=917905868
Wie - bei Dir gammelt eine optische Maus rum?

So ein bis zwei Mauspads dafuer hab ich wohl noch irgendwo, nur die passenden
Maeuse dazu sind ja nicht mehr zu bekommen. Ausgestorben. Verdraengt vom Markt
von schlechteren Produkten. Das uebliche Spiel halt ...

Ringor denkt . o O(frueher war alles besser)

-----------------------------------------------------------------------------



Re^5: P 200 (Anatol,  7. Feb 1999, 15:54:14):
~#! rn=Ringor rt=918383163 rg=suche-biete
~#! tid=917905868
War bei diesen Mauesen nicht das Problem, dass sie immer genau im rechten
Winkel zum Pad ausgerichtet sein muessen? Ich fand das eklig...

Anatol


-----------------------------------------------------------------------------



Re^6: P 200 (Ringor,  7. Feb 1999, 15:55:08):
~#! rn=Anatol rt=918402854 rg=suche-biete
~#! tid=917905868
Nein, das war nur bei den ganz schlechten.

Vernuenftige Maeuse haben sogar auf ner Jeans hervorragend funktioniert. :-)

Ringor.

-----------------------------------------------------------------------------



Re^7: P 200 (Anatol,  7. Feb 1999, 15:55:31):
~#! rn=Ringor rt=918402908 rg=suche-biete
~#! tid=917905868
Wundert mich das jetzt? Schliesslich waren das Maeuse von unserer Uni...

Anatol *seufz*


-----------------------------------------------------------------------------



Re^6: P 200 (Embe,  7. Feb 1999, 18:03:21):
~#! rn=Anatol rt=918402854 rg=suche-biete
~#! tid=917905868
nein, das is kein problem, zumindest bei den sun-m"aeusen nicht...

gruss, eMBee.

-----------------------------------------------------------------------------



Re^7: P 200 (Embe,  7. Feb 1999, 18:04:21):
~#! rn=Ringor rt=918402908 rg=suche-biete
~#! tid=917905868
optische?

gruss, eMBee.

-----------------------------------------------------------------------------



Re^8: P 200 (Ringor,  7. Feb 1999, 18:18:52):
~#! rn=Embe rt=918410661 rg=suche-biete
~#! tid=917905868
Aber natuerlich optische. Ne Standard-nicht-weisse-Jeans ist so schoen
gemustert ... meine optische Maus (Boing hab sie seelig) lies sich darauf fast
so gut bewegen wie auf ihrem Pad.

Dass die Bewegungen dann nicht absolut geradlinig waren, ist klar -
schliesslich ist das Muster der Jeans nicht so schoen gleichmaessig. ;-)

Ringor

-----------------------------------------------------------------------------



Re^9: P 200 (Bottom,  8. Feb 1999, 19:11:00):
~#! rn=Ringor rt=918411532 rg=suche-biete
~#! tid=917905868

Bei uns wurde kuerzlich der SUN-Pool gegen PCs ausgetauscht. Der Schuldige
wurde inzwischen gehenkt, die PCs sind leider immer noch da. Moeglicherweise
gammeln die Maeuse noch in irgendeiner Kellerecke - koennte mal
nachfragen...es waren optische Maeuse SUN Type 5, flitzten mit 15 mA sowohl
auf der Jeans auls auch auf dem dazugehoerigen Pad - die Jeans durfte
allerdings nicht zu versifft sein - deshalb funktionierte das bei mir immer
nur maessig...tja...was bieteste fuer eine Maus mit Pad? Bei groesserer
Nachfrage organisier in 'nen Handel! ;-)

Bottom - fuer die Kollekte


-----------------------------------------------------------------------------



Re^10: P 200 (Grimmborn,  9. Feb 1999, 12:45:49):
~#! rn=Bottom rt=918501060 rg=suche-biete
~#! tid=917905868
Ich haette in dem Fall gerne ein Pad. Auch wenn das mit der Rechtwinkligkeit
durchaus halbwegs stimmen muss (sowohl bei SGI als auch bei SUN) finde ich die
Teile einfach cooler. Und man muss das Innenleben nicht immer vom Staub
befreien.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^13: P 200 (Hate,  9. Feb 1999, 13:28:58):
~#! rn=Key rt=918566896 rg=suche-biete
~#! tid=917905868
Richtig nett sind Maeuse nur ohne Schwanz.

Hate.

-----------------------------------------------------------------------------



Re^14: P 200 (Anakin,  9. Feb 1999, 13:31:55):
~#! rn=Hate rt=918566938 rg=suche-biete
~#! tid=917905868

Angeber. :)

Anakin.

-----------------------------------------------------------------------------



Re^14: P 200 (Aline,  9. Feb 1999, 14:22:03):
~#! rn=Hate rt=918566938 rg=suche-biete
~#! tid=917905868

Warte mal, bis nette Kollegen Dir Deine Funkmaus verstecken ;)

Aline

-----------------------------------------------------------------------------



Re^11: P 200 (Acrimon,  9. Feb 1999, 16:07:30):
~#! rn=Grimmborn rt=918564349 rg=suche-biete
~#! tid=917905868
Nein. Stimmt nicht.
Jedenfalls kann ich auf meinem Mauspad die optische Maus bis zu 30 Grad nach
links oder rechts schief halten, und sie funktioniert immer noch glaenzend.
Das sind zusammen 60 Grad Neigungswinkel, mit denen meine optische Maus
arbeitet.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^12: P 200 (Bottom,  9. Feb 1999, 19:51:16):
~#! rn=Acrimon rt=918576450 rg=suche-biete
~#! tid=917905868

Stimmt! Ich hab's nachgemessen. Die Maeuse koennen halt was.


-----------------------------------------------------------------------------



Re^14: P 200 (Grimmborn,  9. Feb 1999, 23:19:29):
~#! rn=Hate rt=918566938 rg=suche-biete
~#! tid=917905868
Du meinst die "Ex-und-hopp-Maeuse"? Einmal benutzt, nie wiedergefunden?

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^15: P 200 (Hate, 10. Feb 1999, 10:43:00):
~#! rn=Grimmborn rt=918602369 rg=suche-biete
~#! tid=917905868
Also a) hab ich die Zuhause und dann sind die nicht weg, einziger nachteil,
wenn sie einem mal runterfaellt, dann kann man sie nicht am Schwanz
auffangen bevor sie auf dem Boden aufschlaegt.

Hate.

-----------------------------------------------------------------------------



Re^16: P 200 (Key, 10. Feb 1999, 11:36:08):
~#! rn=Hate rt=918643380 rg=suche-biete
~#! tid=917905868
Also irgendwie ... eine Maus ohne Schwanz ... ist wie ... Bier ohne Schaum ;)

Key

-----------------------------------------------------------------------------



Re^17: P 200 (Anatol, 10. Feb 1999, 11:58:30):
~#! rn=Key rt=918646568 rg=suche-biete
~#! tid=917905868
Mit dem Unterschied, dass es das Bier selbst vielleicht nicht ganz so
drastisch sieht wie die Maus.... armes Ding. :o)

Anatol


-----------------------------------------------------------------------------



Re^18: P 200 (Cyann, 11. Feb 1999, 20:15:51):
~#! rn=Anatol rt=918647910 rg=suche-biete
~#! tid=917905868
Ne, Key. Bier ohne Schaum ist einfach nur alt. Ne Maus ohne Schwanz ist kaputt
- oder bald wech. 
Dabei kann ich uebrigens den Trackman marble empfehlen. Trotz inzwischen ueber
einem Jahr Dauergebrauch noch nie gereinigt und immer noch voll
funktionsfaehig. Was will man mehr?

  Cyann

-----------------------------------------------------------------------------



Re^16: P 200 (Yaren, 11. Feb 1999, 22:37:30):
~#! rn=Hate rt=918643380 rg=suche-biete
~#! tid=917905868
und viel spass mit ner funkmaus auf ner lan-party, wenn der typ gegenueber
dieselbe hat :-) oder mitten im match die batterie alle ist ...

Yaren steht auf 08/15-maeuse. naja: 3 buttons und von logitech ;-)

-----------------------------------------------------------------------------



Re^17: P 200 (Hate, 12. Feb 1999, 15:31:41):
~#! rn=Yaren rt=918772650 rg=suche-biete
~#! tid=917905868
Ich schlepp doch nicht meinen Rechner fuer sowas durch die Gegend.
Ausserdem gibts dafuer schnelle Internetanbindung, da hat man das
Problem nicht.

Hate.

-----------------------------------------------------------------------------



Re^14: P 200 (Tarina, 13. Feb 1999, 01:36:02):
~#! rn=Hate rt=918566938 rg=suche-biete
~#! tid=917905868
Was Du nicht willst, das Dir man tu, das fueg auch keinem andern zu :-)

Tarina

-----------------------------------------------------------------------------



Re^18: P 200 (Yaren, 15. Feb 1999, 23:31:04):
~#! rn=Hate rt=918833501 rg=suche-biete
~#! tid=917905868
naja, mit ping 10 und ohne packetloss mit 64 leuten auf nem server ... habe
ich selbst auf uni-servern mit guter isdn-anbindung nicht ... ausserdem trifft
man sich auf lan-parties; wieso gehst du zu mud-treffen?

Yaren.

-----------------------------------------------------------------------------



Suche Freeware (Gorog, 21. Feb 1999, 01:08:56):
Ich bin auf der Suche nach ner Freeware-Version von nem 32Bit Zmud neulich
hatte irgendwer be Adresse dafuer. Vielleicht kann der mir die ja mal mailen
oder so.

Gorog der dummerweise den Namen und die Adresse vergessen hat.

-----------------------------------------------------------------------------



Re: Suche Freeware (Zwocklhuber, 21. Feb 1999, 02:42:22):
~#! rn=Gorog rt=919559336 rg=suche-biete
~#! tid=919559336
???
gibt das da freeware von zmud? *interessiert sei und staun*

-----------------------------------------------------------------------------



Idlende Rechner gesucht! (Ronda, 22. Feb 1999, 09:06:07):
Dein Rechner langweilt sich, weil das Mud lagt? Lass ihn doch was sinnvolles
tun ;)
Seit mehr als einem Jahr rechnen schon recht viele Computer von Muddern (ok,
nicht nur ;) ) daran rum, einen Code eines Verschluesselungsalgorithmus zu
bestimmen. Unser Team ist im Moment auf Rang 33 - mit ein paar mehr Rechnern
muesste es eigentlich moeglich sein, das noch ein wenig zu verbessern...
Schaut' Euch doch einfach mal http://www.aei-potsdam.mpg.de/~wehrens/rc5/ an,
da steht genaueres dazu.
Tschuess und "happy cracking",

Ronda

-----------------------------------------------------------------------------



Re: Re: Suche Freeware (Tunixgut, 22. Feb 1999, 09:45:04):
~#! rn=Zwocklhuber rt=919564942 rg=suche-biete
~#! tid=919559336
Soweit ich mich erinnere, hatten die mal die neueren Versionen Share- und
voellig veraltete Freeware... Wobei's die Freeware auch taten. Frag mich abba
bitte keina nach der Adresse...

's Karate-Zwerchle

-----------------------------------------------------------------------------



suche TF (Gnome, 22. Feb 1999, 22:02:49):
hi,
ich suche
1. tf fuern amiga (nicht lachen, antworten :))
2. tf 3.5 beta TK 2 mit statuszeilen-patch fuer win95
3. siehe 2. fuer unix

ja, ich weiss, dass es mitlerweile 4.0 gamma 1 gibt. aber die suche
nach den aelteren versionen hat... sagen wir... interne gruende :)
irgendwo muessen die doch noch rumfliegen, wer weiss die url?

gnOme

-----------------------------------------------------------------------------



Re: suche TF (Anatol, 22. Feb 1999, 22:27:45):
~#! rn=Gnome rt=919720969 rg=suche-biete
~#! tid=919720969
ftp://sl.mud.de:4713/Software/Clients/tf-40a7BIN_AMIGA.lha
ftp://sl.mud.de:4713/Software/Clients/tf-40a7BIN_AMIGA.readme

Aktuell ist uebrigens tf 4.0 gamma _3_. :o)

Anatol


-----------------------------------------------------------------------------



Cyrix PR300 (Gnome, 23. Feb 1999, 20:15:53):
hi,

verkaufe

CPU IBM/Cyrix MX M2 PR300 MHz, 2,9V, VRE

fuer schlappe DM 70,-

mail an mich.

gnOme

-----------------------------------------------------------------------------



S: Computerteile (Orktoeter,  8. Mar 1999, 16:06:46):
Gesucht werden :
- Pentium Mainboard passend fuer eine P100 CPU
- PCI Grafikkarte (mindestens 2 MB)
- Maus
- Floppy (1,44)

Wenn du so etwas hast und es guenstig weggeben moechtest, bitte Mail an mich.

OrkT.

-----------------------------------------------------------------------------



Re: S: Computerteile (Anakin,  8. Mar 1999, 16:07:31):
~#! rn=Orktoeter rt=920909206 rg=suche-biete
~#! tid=920909206

Was zahlst du fuer die Grafikkarte 2MB?

Anakin.

-----------------------------------------------------------------------------



Suche SCSI HDD (Jimdigriz,  9. Mar 1999, 13:32:37):
HIho,

Ich suche eine IBM SCSI (single ended, keine LVD oder Wide)
Harddisk. so ab 2 GB 

Wer sowas loswerden will bitte mail an mich.

Ciao,
 Jim DiGriz

-----------------------------------------------------------------------------



Gesucht! (Key, 17. Mar 1999, 16:46:27):
Huhu :)

Ich suche eine nette gutaussehende Frau die Lust auf Urlaub hat ;)

Bezahlt wird natuerlich alles vom Partygeld der anderen =;)))

Ich wuerde sagen ne schoene kleine Kreuzfahrt 1. Klasse und danach zum
ausspannen 2 Wochen Hawaii :)

Na wer hat Lust?

Key

-----------------------------------------------------------------------------



Re: Gesucht! (Aline, 17. Mar 1999, 17:17:48):
~#! rn=Key rt=921689187 rg=suche-biete
~#! tid=921689187


Hmm Lust auf Urlaub hab ich schon....

aber mit Dir? ;)

Ausserdem bin ich weder nett (s.o.), noch gutaussehend, bleibt
also nur noch Frau (oder?).

Also schieb die Kohle rueber und ich schreib Dir auch ne 
nette Ansichtskarte ;)

Kuesschen Aline


-----------------------------------------------------------------------------



Re: Re: Gesucht! (Grimmborn, 17. Mar 1999, 18:00:14):
~#! rn=Aline rt=921691068 rg=suche-biete
~#! tid=921689187
streiche Frau, setze Emanze.
Dafuer gutaussehend und nett (gelegentlich).

Was ist das da eigentlcih auf Deinem Ruecken?

Grimmborn der Atheist (gd&r)

-----------------------------------------------------------------------------



Suche Schriftliches zum Thema Rollenspiele (Daria, 19. Mar 1999, 20:00:17):
Und zwar meine ich nicht Muds, sondern DSA, AD&D und so.
Wisst Ihr obs da ueberhaupt was gibt an "wissenschaftlichen"
Abhandlungen? Ich nehm alles, Frageboegen, Sternartikel *g*... 
Webseiten waern super, aber ich nehm auch Hinweise auf Zeitschriften oder
Buecher.

Danke im voraus!
Daria Wetterwachs
,

-----------------------------------------------------------------------------



zimmer in berlin (Gnome, 20. Mar 1999, 23:39:55):
hi,

demnaechst wird bei mir ein zimmer frei und deshalb such ich einen
nach-/unter-/nebenmieter.

zimmer = hell, 20 qm, ruhige lage, informatik-institut-naehe :)

mail an mich.

gnOme

-----------------------------------------------------------------------------



Suche Soundkarte (Nimbus,  9. Apr 1999, 17:38:23):
Hi!
Ich suche eine soundblaster AWE64 ISA. Gibt's zwar vereinzelt noch im Handel,
aber vielleicht will grade jemand auf die SB Live umsteigen und
hat noch ne AWE ueber...

Falls jemand eine zur Verfuegung haette, bitte Mail an nimbus.priv@gmx.net

Gruessles von
Nimbus

-----------------------------------------------------------------------------



Mal was aussergewoehnliches.... (Zook, 12. Apr 1999, 23:53:35):

Ich suche nen Zeitschriftenband... und zwar
"European Economic Review" ... Band von 1990. 
Hat zufaellig ne Bibliothek von Euch den? Bitte kurz 
Mail an mich... is mittelmaessig eilig... :)))))

Gruss, Zook.

-----------------------------------------------------------------------------



Festpladde (Yendi, 13. Apr 1999, 19:04:21):
Wo hier gerade von 256MB RAM fuer den MUD-Rechner die Rede ist:

Ich habe beim Umzug noch eine kleine (210MB?) IDE-Platte aus den 80ern oder
fruehen 90ern gefunden. Wer also seinen alten Druckerspooler mit einer
Zweitplatte versehen will oder das Teil sonstwie gebrauchen kann, soll sich
melden, ansonsten wandert das Ding auf den Muell.

YTY


-----------------------------------------------------------------------------



Re: Festpladde (Yendi, 15. Apr 1999, 15:43:00):
~#! rn=Yendi rt=924023061 rg=suche-biete
~#! tid=924023061
OK, mittlerweile habe ich 4 Bewerbungen, die erste davon stammt von Key.
Die Platte geht als an ihn, sobald er mir verraet, _wie_.
Ich lass mich dann auf der naechsten Party zu ein paar Bierchen einladen, OK?

YTY


-----------------------------------------------------------------------------



Re: Mal was aussergewoehnliches.... (Celebdil, 17. Apr 1999, 16:43:49):
~#! rn=Zook rt=923954015 rg=suche-biete
~#! tid=923954015
                  Kuckuck

European Economic Review ist hier in der Bib, Zook. Auch 1990.
Ich haette auch etwas gebraucht, hab' nur grade die Literaturangabe 
nicht dabei. Sowas. :)

           *wink*      Bergchen Celebdil

-----------------------------------------------------------------------------



"86-486 (Key, 21. Apr 1999, 14:16:53):
Huhu :)
Suche fuer nenn Freund alte Rechner ... alles was mit 286 anfaengt bis zu 486
.... Wer was hat bitte melden :)

Key

-----------------------------------------------------------------------------



Re: "86-486 (Qitess, 21. Apr 1999, 14:19:11):
~#! rn=Key rt=924697013 rg=suche-biete
~#! tid=924697013
mein vater haette da noch einen 286er, aber ich glaube, er haelt das fuer DIE
erfindung schlechthin und rueckt ihn nicht raus. immerhin hat er letztens
irgendeine alte word-version dafuer auftreiben koennen.
vielleicht findet er es auch immer nur wieder klasse bei seinem
computer-sercicenter der einzige zu sein mit sowas.
:)
QI** liebt auch vor allem den Nadeldrucker, der "einer der leisesten ist".

-----------------------------------------------------------------------------



Re: "86-486 (Stoerti, 21. Apr 1999, 14:53:18):
~#! rn=Key rt=924697013 rg=suche-biete
~#! tid=924697013
ich hab nen paar mainboards mit cpu und teilweise auch ram drauf hier liegen,
wollt ich gestern schon wegschmeissen :-)
sind 486'33 bis 486'120
und funktionieren sogar alle!
ich wohn in der naehe von frankfurt (bad soden) : hols dir ab :-)

-----------------------------------------------------------------------------



Re: Re: "86-486 (Jehova, 21. Apr 1999, 20:07:12):
~#! rn=Stoerti rt=924699198 rg=suche-biete
~#! tid=924697013
also gestern hab' ich das 386/16mhz-board entsorgt, das ich seit 2 monaten
verschenken wollte :) uebrig sind noch eine 1,44mb floppy, eine alte
grafikkarte (sollte sogar vga schaffen :) ) und eine micom interlan
netzwerkkarte. wenn du was davon brauchst, mail mich an :)

j*

-----------------------------------------------------------------------------



Re: "86-486 (Hight, 21. Apr 1999, 21:07:42):
~#! rn=Key rt=924697013 rg=suche-biete
~#! tid=924697013
ich hab noch nen uralten 386 leptop ueber *g* meinen 486 behalte ich noch bis
ich endlich nen neuen bekomm bzw. bis ich ne bank ueberfallen hab und mir
einen kaufen kann .o)

hight

-----------------------------------------------------------------------------



VK: A4k/25 (Jehova, 21. Apr 1999, 21:18:51):
Verkaufe:

Amiga 4000/25 D

- 2 Prozessoren, 25 MHz (68EC030 on Board, 68040 auf Prozessorkarte)
- CyberVision 64 3D-Grafikkarte (S3-Chip), 4 MB
- RGB-Monitor (zum Spielen oder fuer Video-Anwendungen)
  (Man braeuchte allerdings noch einen richtigen VGA-Monitor
   zum vernuenftigen Arbeiten)
- 1 GB Seagate-HD (2,5")
- 1 Kiste Original-Software und ein paar Buecher.
  Hauptsaechlich Programmier-Kram (Maxon-C++ 4, O.M.A. 3.0, ...)
- Verschiedene Kabel, 4fach-IDE-Adapter, SCART, usw.
- 4fach-IDE-CD-ROM
- Viele CDs (NetBSD, AmiNet, Spiele, von div. Magazinen)
- Laeuft unter Amiga-OS 3.0 und Mac-OS 7.0.1 (beide laufen
  a.W. im Multitasking gleichzeitig).
- 19 MB Hauptspeicher

Bei Interesse einfach mal melden.

Gruss, J*

-----------------------------------------------------------------------------



Biete sundkarte (Hera, 10. Mai 1999, 18:38:31):
Biete ne nagelneue Soundblaster Live Value...einmal ein- und wieder
ausgebaut...

NP ca. 150,- gegen Gebot...

Bei Interesse email am besten an hfandrie@fh-brandenburg.de

Hera

-----------------------------------------------------------------------------



schriftarten (Gnome, 13. Mai 1999, 23:08:21):
hi,

suche designer-schriftarten (also keine 08/15-fonts) fuer w95.
ich weiss, die sind meistens recht teuer, deshalb brauch ich sie
moeglichst fuer umsonst ;-)
weiss jmd ne URL?

gnOme

-----------------------------------------------------------------------------



FNORD (Alpha, 17. Mai 1999, 00:22:21):
Ich suche Informationen zu FNORD.
Biete meine Dankbarkeit - wenn noetig noch mehr ;)
Alpha.

-----------------------------------------------------------------------------



Re: FNORD (Songoku, 17. Mai 1999, 11:08:50):
~#! rn=Alpha rt=926893341 rg=suche-biete
~#! tid=926893341
FNORD???
Was ist den das ?? 
Das ist ja nichtmal ein richtiges Wort.

Sayounara! 

(SonGoku Mitglied der Japanischen Iluminaten(Aussenstelle Muenchen))

-----------------------------------------------------------------------------



Re: FNORD (Jimdigriz, 17. Mai 1999, 11:25:39):
~#! rn=Alpha rt=926893341 rg=suche-biete
~#! tid=926893341
Hoi,

Was willst du da wissen ? 
Entweder Du siehst sie, oder eben nicht.

JdG (Hail Discordia)

-----------------------------------------------------------------------------



oldies (Catweazle, 31. Mai 1999, 01:06:14):
Moin!

Ich habe in meiner ewigen Sucht einige alte C64-er Spiele 
wiederentdeckt, die mich immer noch reizen. Da der Emulator
aber meist genauso langsam ist wie das Original (zB beim Platten-
zugriff) greif ich doch lieber auf schneller Varianten zurueck.
Ok ok, nicht ganz stilgerecht, aber trotzdem hilfreich.
Also: hat jemand von Euch eines der folgenden Spiele auf 
PC-Basis, oder kann mir empfehlen, woe ich es erstehen kann?
Bard' Tale I-III
Dragonwars
Wasteland

Please, help,

Yours truly,
      Catweazle

-----------------------------------------------------------------------------



Re: oldies (Morgoth, 31. Mai 1999, 08:20:21):
~#! rn=Catweazle rt=928105574 rg=suche-biete
~#! tid=928105574
Bis auf DragonWars habe ich die Spiele fuern PC. ;-)) 
Kann ich Dir mal mailen, is nicht so viel.

M*

-----------------------------------------------------------------------------



Re: Re: oldies (Apsu, 31. Mai 1999, 08:21:15):
~#! rn=Morgoth rt=928131621 rg=suche-biete
~#! tid=928105574
Wasteland haette ich auch gerne

Apsu

-----------------------------------------------------------------------------



Re^3: oldies (Neb, 31. Mai 1999, 08:45:57):
~#! rn=Apsu rt=928131675 rg=suche-biete
~#! tid=928105574
Und ich Bards Tale I-III ;)

Neb.

-----------------------------------------------------------------------------



Re: oldies (Catweazle, 31. Mai 1999, 13:56:36):
~#! rn=Catweazle rt=928105574 rg=suche-biete
~#! tid=928105574
Noch was.

Ich habs zwar gerade fuern 64er gefunden, bin aber der Meinung das auf dem PC
kennengelernt zu haben. Wers hat/weiss:

Starflight

YTC

-----------------------------------------------------------------------------



Re: Re: oldies (Bambulko, 31. Mai 1999, 13:58:51):
~#! rn=Catweazle rt=928151796 rg=suche-biete
~#! tid=928105574
Starflight kenn ich nur fuer den Amiga.........
Und gibt es Wasteland wirklich fuer PC????/

Bambulko

-----------------------------------------------------------------------------



Schafkopf-Karten (Zook, 31. Mai 1999, 19:28:30):
Hiho,

ich suche Schafkopf-Karten (moeglichst guenstig und schon
mehr als ein Spiel). Kennt da jemand ne guenstige
Bezugsquelle? 

Gruss, Zook.

-----------------------------------------------------------------------------



Re^4: oldies (Morgoth,  1. Jun 1999, 07:47:25):
~#! rn=Neb rt=928133157 rg=suche-biete
~#! tid=928105574
Ihr seid euch bewusst, dass das mit dem copyright nicht so ganz legal ist.
aber ich geh einfach mal davon aus, dass ihr alle die spiele habt und leider
auch die sicherheitskopieen der hund gefressen hat.
Ich werd catty das zeug mal schicken, der kann es ja irgendwo in /open legen,
so dass jeder saugen kann. 
btw. Dungeon Master leg ich auch dazu.

M*

-----------------------------------------------------------------------------



vmware (Larissa,  4. Jun 1999, 16:57:28):

Hi!

Wer hat Erfahrung mit vmware und kann sich hier kurz ein bissl darueber
auslassen, mit dem Augenmerk auf: Ich sach meinem Chef, dass ich lieber
Linux als NT will, aber die Haelfte aller Firmenware laeuft auf NT.

DANKE!
Lari.

-----------------------------------------------------------------------------



MFG (Critter,  7. Jun 1999, 21:09:53):
suche fuer donnerstag den 10. ne MFG (mitfahrgelegenheit) nach hamburg
startort wuerde fuer mich hagen siegen koeln oder aehnliches sein
thanx c.

-----------------------------------------------------------------------------



Tina Turner (Bambulko,  8. Jun 1999, 14:39:51):
Hi,
ich brauche eine mp3-Version von Tina Turners Lied "Simply the Best"
Hat das jemand, oder weiss jemand wo das steht??

Bambulko

-----------------------------------------------------------------------------



Suche Modul fuer Statuszeile (Trug, 10. Jun 1999, 10:41:41):
Ich suche fuer die Statuszeile von Ringor ein Modul fuer die Zauberer, dass
dann analog wie bei den Kaempfern die wichtigsten Informationen anzeigt.

Hat da schon jemand sich eins gemacht? Wenn ja, wuerde es mich freuen, wenn
er/sie es mir zusenden wuerde.

Nein, ich hab nicht genuegend Programmiererfahrung mit tf, dass ich mir selber
das machen koennte.

Trug.

-----------------------------------------------------------------------------



Re^3: oldies (Trug, 10. Jun 1999, 11:35:51):
~#! rn=Bambulko rt=928151931 rg=suche-biete
~#! tid=928105574
jep, ich habe Wasteland fuer den PC, aber leider nicht die Doku dazu :(

Wers haben will, soll mir eine Mail schicken, das Archiv (ZIP) ist ca 680KB
gross. Dragon Wars fuer den PC hab ich auch, braucht (unkomprimiert) schlappe
700KB, aber ohne den Journaleintraegen ist es wie Wasteland kaum spielbar.

Trug

PS: Suche Ultima VI fuer PC :)

-----------------------------------------------------------------------------



Re^4: oldies (Boing, 10. Jun 1999, 11:37:07):
~#! rn=Trug rt=929007351 rg=suche-biete
~#! tid=928105574
Zu Ultima 6: Kauf es im Laden
Wenn das hier zur Raubkopiehandelsrubrik verkommt dann kann das Mud
in seiner Existenz ernsthafte Probleme bekommen, also lasst den Scheiss!
  Boing

-----------------------------------------------------------------------------



Re^6: oldies (Hate, 10. Jun 1999, 11:43:16):
~#! rn=Trug rt=929007597 rg=suche-biete
~#! tid=928105574
Wenn Du alles mitsamt Programmen verkauft hast, verletzt Du Uhrheber und
Kopierrechte durch das behalten der Software. Und wenn Du sie jetzt 
weitergibst wird es nicht besser.

Hate.

-----------------------------------------------------------------------------



SF-Antiquariat (Ivo, 11. Jun 1999, 18:33:21):
Hallo Leute,

bin vor kurzem ueber ein empfehlenswertes, weil schnelles und unkompliziertes,
online-Versandantiquariat (deutsch,englische..) gestolpert und wollte das mal
weiterempfehlen ..

Viel Spass beim Shoppen ..

Ivo

-----------------------------------------------------------------------------



Re: SF-Antiquariat (Pra, 11. Jun 1999, 18:34:19):
~#! rn=Ivo rt=929118801 rg=suche-biete
~#! tid=929118801

Auja, empfiehl' mal. Welche Adresse?

Pra.

-----------------------------------------------------------------------------



Re: Re: SF-Antiquariat (Ivo, 11. Jun 1999, 18:36:01):
~#! rn=Pra rt=929118859 rg=suche-biete
~#! tid=929118801
weiss auch nicht, mein ZMud loescht die webadreese immer raus ;)

neuer Versuch:
www.storisende.com/SF.html

Mal schauen, obs geklappt hat 
9

Ivo

-----------------------------------------------------------------------------



Re^3: SF-Antiquariat (Gnome, 12. Jun 1999, 12:57:12):
~#! rn=Ivo rt=929118961 rg=suche-biete
~#! tid=929118801
ein ~r wuerde dir aus der patsche helfen :)

gnOme

-----------------------------------------------------------------------------



Suche Titel der 'Keilerkopf'-CD (Morgoth, 14. Jun 1999, 15:11:33):
Der erste Titel heisst wohl 'Jaja', aber ich haette auch gerne die anderen. Im
web find ich leider nix dazu. wer also die keilerkopf da hat, schicke mir doch
ne kurze mail mit den titeln.

thanx

M*

-----------------------------------------------------------------------------



Japanese Dictionary (Widewitt, 15. Jun 1999, 16:25:55):
Tach acuh

Kennt von euch einer ein Online-Woerterbuch fuer Japanisch ?!?

Kann leider kein gutes finden :(

Domo Widewitt

-----------------------------------------------------------------------------



Re: Japanese Dictionary (Acrimon, 15. Jun 1999, 19:14:17):
~#! rn=Widewitt rt=929456755 rg=suche-biete
~#! tid=929456755
klar:

http://www.notredame.ac.jp/cgi-bin/jedi-inon
http://www.wg.omron.co.jp/cgi-bin/j-e/dict
http://www.cs.cmu.edu:8001/cgi-bin/j-e/gateway?SASE=jis/dict
http://www.dgs.monash.edu.au/~jwb/wwwjdic.html

Ob die gut sind, muszt Du allerdings selber ausprobieren.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Nina Hagen-Konzert am 27.6. (Ronda, 23. Jun 1999, 16:08:41):
Hi,
mir ist leider was dazwischengekommen: wer haette gern ein-zwei Karten fuer
das Nina-Hagen-Konzert am Sonntag in Krefeld?
Bitte einfach mal per Mail melden ;)

Ronda

-----------------------------------------------------------------------------



Re: Nina Hagen-Konzert am 27.6. (Ronda, 24. Jun 1999, 15:53:39):
~#! rn=Ronda rt=930146921 rg=suche-biete
~#! tid=930146921
Oehm, Nina ist auch was dazwischengekommen, hab ich grad gesehen ;)
Also: kein Nina Hagen Konzert diesen Sonntag in Krefeld, also auch keine Karte
zu verschenken...
Soll im August nachgeholt werden - haette da jemand Interesse an einer oder
eventuell zwei Karten?

Tschuess,

Ronda

-----------------------------------------------------------------------------



S: Motherboard-Empfehlung (Amaryllis, 24. Jun 1999, 16:16:13):
Hallo,

kann mir jemand ein Motherboard fuer einen AMD K6-3 mit 400 oder 450 MHz
empfehlen? Sollte Platten >8GB Partition unterstuetzen, kein SCSI, aber
einigermassen hohe Leistung, wenn moeglich ein Markenboard (Asus, Gigabyte)
mit passabel hohem Cache.
Ich war mit meinem alten Rechner jahrelang gluecklich und bin deshalb laengst
nicht mehr auf dem neusten Stand, was da was taugt - ausserdem sind die Sockel
ja auch teilweise unterschiedlich.

Thx,
Ama*

-----------------------------------------------------------------------------



Re: S: Motherboard-Empfehlung (Postit, 14. Jul 1999, 18:53:11):
~#! rn=Amaryllis rt=930233773 rg=suche-biete
~#! tid=930233773
Schau Dich bei Aopen oder DFI Boards um ... 

Klebezettel

-----------------------------------------------------------------------------



Suche (Dante,  8. Aug 1999, 15:25:40):
eine Liste bzw einen online Katalog in dem alle bzw sehr viele MTB/Rennraeder
stehen , beschrieben sind, die 98/99 herausgekommen sind usw...
Finde den verammten &/&/)/( nicht...

-----------------------------------------------------------------------------



Anne McCaffrey / Pern (Tolgan, 31. Aug 1999, 23:01:48):

Hi, kann mir vielleicht jemand Tips geben, wo ich evtl. noch vergriffene
Buecher von Anne McCaffrey aus dem Drachenreiter-Zyklus bekommen kann?! Wuerde
mich ueber Mails sehr freuen.

Tolgan


-----------------------------------------------------------------------------



Re: Anne McCaffrey / Pern (Tarina,  1. Sep 1999, 16:07:51):
~#! rn=Tolgan rt=936140508 rg=suche-biete
~#! tid=936140508
Ich koennt jetzt gemein sein, und sagen in meinem Buecherschrank (was
zweifellos richtig aber wenig hilfreich waere).

Da ich aber vor ungefaehr 18 Jahren vor dem gleichen Problem stand: horch Dich
in
Deinem Wohnort mal um nach Laeden, die gebrauchte Buecher verkaufen. da findet
man manchmal wahre Schaetze.

Gruss,
Tarina

-----------------------------------------------------------------------------



Uebernachtungsmoeglichkeit gesucht (Arkana,  6. Sep 1999, 20:58:16):
Suche Uebernachtungsmoeglichtkeit fuer 2 Leute in der Naehe von Satzvey fuer
naechstes WE (Sa-So). Mail bitte an mich oder an Orktoeter.

-----------------------------------------------------------------------------



Re: Anne McCaffrey / Pern (Lug,  7. Sep 1999, 22:08:07):
~#! rn=Tolgan rt=936140508 rg=suche-biete
~#! tid=936140508

Hm,

nenn mir den Preis den zu bezahlen wuerdest ;) Ist er hoch genug, dann kannste
meine haben ;)
Ich sagte HOCH.
Lug

-----------------------------------------------------------------------------



Nina-Hagen-Fans gesucht ;) (Ronda,  9. Sep 1999, 15:19:20):
Hi,
wer von Euch mag a) in ein Konzert mit Nina Hagen und Vivid Sun gehen und ist
b) noch so schnell mit den Entscheidungen, morgen abend mal eben mit mir in
Krefeld ins Konzert zu gehen?
Ich hab da zwei Eintrittskarten gewonnen und hab bisher noch niemanden
gefunden, der mit mir da reinwollte ;)))

Wens interessiert: bitte einfach Mail an Hedderich@gmx.net oder per Mudmail.
Ahc ja: das ganze geht Freitag den 10.9. um 20.30 los in der Kulturfabrik...

Tschuess,

Ronda

-----------------------------------------------------------------------------



Hamburger vor! (Foobar, 19. Sep 1999, 17:20:46):
Hallo.

Z. Zt. weile ich in in der Woche in HH.

Kennt jemand hier ein brauchbares und preiswertes Internet-Cafe zum mudden?

Tips an

     Foobar

-----------------------------------------------------------------------------



Job-Angebot :o) (Wurst, 22. Sep 1999, 11:02:50):

 Mal was anderes:

 Wir sichen dringend eine(n) 
 Produktionsleiter/in fuer Internetprojekte.

 Es geht um eine kleine, aber aufstrebende und sehr
 erfolgreiche Agentur in Muenchen.

 Der Job ist insgesamt locker, ZMud und TF sind 
 installiert und es is ne 2MBit-Leitung und ein
 Homemud vorhanden. :o)

 Wer Interesse hat, sollte etwas Erfahrungen in
 HTML, JS und moeglichst noch in Perl haben und
 ausserdem was von Projektsteuerung allgemein 
 verstehen.

 Das ist kein Witz, wir suchen wirklich drigend 
 jemanden fuer diesen Job.
 Falls jemand Interesse daran hat, sollte er sich
 bitte per Mail an mich oder Reaper wenden.

 Vielleicht klappz ja ;)

 Gruss, Wurst

-----------------------------------------------------------------------------



Re: Job-Angebot :o) (Wurzel, 22. Sep 1999, 18:28:49):
~#! rn=Wurst rt=937998170 rg=suche-biete
~#! tid=937998170
wer nach muenchen kommen will, hat dort natuerlich noch jede menge andere
angebote... wir z.b wollen dieses jahr noch etwa 20 leute einstellen in
verschiedenen positionen, von projektleitern ueber datenbank-gurus bis zu
java/c++ entwicklern und einige mehr.
ich will wurst jetzt damit keine konkurrenz machen, wer lieber in einer
kleineren firma webseiten stricken will, ist dort sicher besser aufgehoben.

wurzel

-----------------------------------------------------------------------------



Re: Re: Job-Angebot :o) (Trance, 23. Sep 1999, 08:45:02):
~#! rn=Wurzel rt=938024929 rg=suche-biete
~#! tid=937998170
Na, wenn wir schon dabei sind ;)

Ich will den wu* nicht Konkurrenz machen, aber in Frankfurt sind bei einem
renommierten schwaebischen Zulieferer fuer KFZ-Hersteller noch Jobs frei!

Wir machen sowas wie PCs fuers Auto, Basis Windows CE. Gesucht werden
C++/COM-Entwickler, Mudden ist leider nicht mglich wg. Firewall. 

Wer an einem interessanten Zukunftsprojekt mitarbeiten will, wende sich
vertrauensvoll an mich! :)


Trance

-----------------------------------------------------------------------------



Re^3: Job-Angebot :o) (Larissa, 24. Sep 1999, 14:04:57):
~#! rn=Trance rt=938076302 rg=suche-biete
~#! tid=937998170

Wer in einem Laden arbeitet, wo zur Zeit _keine_ 
Programmier/DBA/System-Jobs unbesetzt sind, der werfe den 
ersten Stein.

Lari, bei uns gibst schon 'Schnuppertage' fuer Interessierte.

-----------------------------------------------------------------------------



Re^4: Job-Angebot :o) (Engywuck, 27. Sep 1999, 16:31:39):
~#! rn=Larissa rt=938181897 rg=suche-biete
~#! tid=937998170
*werf*

Wir haben grad 2 Eingestellt, jetzt ist mal wieder fuer ein Jahr Ruhe ;-)

Engy*

-----------------------------------------------------------------------------



Re^3: Job-Angebot :o) (Ark,  5. Okt 1999, 17:12:52):
~#! rn=Trance rt=938076302 rg=suche-biete
~#! tid=937998170
Hm, wieviel zahlen Eure Firmen eigentlich fuer Vermittlungen? Ist das im
5-stelligen Bereich? Nur mal aus Interesse :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Definition von MUD (Widewitt, 14. Okt 1999, 12:44:56):
Tach auch !

Eine Freundin von mir schreibt gerade ihre Diplo ueber Vertrauensbildung ueber
elektronische Medien (oder so aehlich). Jetzt braeuchte sie noch eine
Definition von MUD. Kennt da von euch einer eine gute ? Moeglichst
wissenschaftlich ?

Danke Widewitt

-----------------------------------------------------------------------------



Re: Definition von MUD (Hate, 14. Okt 1999, 12:58:50):
~#! rn=Widewitt rt=939897896 rg=suche-biete
~#! tid=939897896
MUD - Englisch fuer Dreck, Schlamm -> ergo: Elektronisches Schlammringen.

Hate.

-----------------------------------------------------------------------------



Re: Re: Definition von MUD (Anatol, 14. Okt 1999, 14:04:50):
~#! rn=Hate rt=939898730 rg=suche-biete
~#! tid=939897896
Die Webseiten von mud.de verweisen meines Wissens auf einen Stapel
Presse-Meldungen/-Notizen/-Berichte und auch auf die eine oder andere
Arbeit mit wissenschaftlichem Anspruch.

Anatol


-----------------------------------------------------------------------------



Re: Definition von MUD (Lug, 15. Okt 1999, 00:59:44):
~#! rn=Widewitt rt=939897896 rg=suche-biete
~#! tid=939897896

Definition von MUD?

Sexclub im Internet...

Mortalapostel
Lug

-----------------------------------------------------------------------------



Re: Re: Definition von MUD (Alboin, 15. Okt 1999, 01:04:56):
~#! rn=Lug rt=939941984 rg=suche-biete
~#! tid=939897896
Lugerl, du liest zuviel Freud. Ich sag eher: ein Club zu kurz gekommender
Weicheier.

Alboin, meint Einsicht ist der erste Schritt ...

-----------------------------------------------------------------------------



Re: Definition von MUD (Erdbeere, 15. Okt 1999, 12:09:12):
~#! rn=Widewitt rt=939897896 rg=suche-biete
~#! tid=939897896
Vielleicht schaut sie sich einmal die Arbeiten durch, die auf
http://www.mud.de liegen? In einigen von diesen Arbeiten ist sicher etwas
dabei.

Erdbeere.

-----------------------------------------------------------------------------



Re: Re: Definition von MUD (Wurzel, 15. Okt 1999, 19:39:26):
~#! rn=Lug rt=939941984 rg=suche-biete
~#! tid=939897896
mortalapostel gefaellt mir, hoffentlich war das jetzt kein typo :)

-----------------------------------------------------------------------------



Re: Re: Definition von MUD (Marcus, 19. Okt 1999, 21:37:31):
~#! rn=Hate rt=939898730 rg=suche-biete
~#! tid=939897896
MUD == Monsterous Undergrade Devourer (Monsterhafter Vordiplomanden
Versczhlinger)

Ciao, M

-----------------------------------------------------------------------------



Re^3: Definition von MUD (Lug, 20. Okt 1999, 00:26:40):
~#! rn=Wurzel rt=940009166 rg=suche-biete
~#! tid=939897896

das war kein Typo, alles andere wie ueblich schon....

Krikelnd
Lug

-----------------------------------------------------------------------------



Suche CD-Rom und Modem... (Isis, 22. Okt 1999, 18:27:40):
Suche fuer meine alte Kiste noch ein CD-Rom Laufwerk und nen Modem...
muss nich schnell sein, nur zum mailen gedacht...

achso...moeglichst guenstig natuerlich...;-)

Hera

-----------------------------------------------------------------------------



Uebernachtung Duesseldorf (Rikus, 10. Nov 1999, 20:43:02):
Gruss!
wer hat fuer mich obiges in der Nacht vom 4. zum 5.12?

Danke, Rikus

-----------------------------------------------------------------------------



HILFE! (Branwen, 11. Nov 1999, 17:41:34):
Da wir einen 'supernetten' tierfeindlichen Vermieter haben, der wunscht, dass
unser Hund bis zum 26.11. verschwunden ist, haben wir hier ein kleines
Problem, denn so schnell findet man keine neue Wohnung :(

Ich moechte also auf diesem Wege die netten und alle anderen Muenchner
Mudder(oder solche, die hier Connections haben oder was auch immer) um Hilfe
bitten:

Wer kann einen schnuckeligen kleinen Hund uebergangsweise bei sich
unterbringen? (Wir kommen natuerlich fuer die entstehenden Kosten auf.)

Wer hat Ahnung, wo wir schnell eine hundefreundliche Wohnung im Raum Muenchen
herbekommen?

Fuer die Hilfe bedankt sich im voraus:
Branwen

-----------------------------------------------------------------------------



Re: HILFE! (Grimmborn, 11. Nov 1999, 17:47:59):
~#! rn=Branwen rt=942338494 rg=suche-biete
~#! tid=942338494
Auch wenn das sicher nicht hilft, aber gab es nicht mal was, dass es nicht
ganz so einfach ist, die Haltung von "schnuckeligen, kleinen Hunden" zu
verbieten? Im Zweifelsfall hat der Vermieter vor dem Richter ein Problem...

Aber quasi gegen den Vermieter zu wohnen macht auch keinen Spass, das kann ich
so sagen... also, viel Glueck bei der Wohnungssuche!

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re: Re: HILFE! (Branwen, 11. Nov 1999, 17:53:16):
~#! rn=Grimmborn rt=942338879 rg=suche-biete
~#! tid=942338494
Der Vermieter hat die Sache bereits dem Anwalt uebergeben und ist nicht
kompromissbereit.
Der Anwalt hat auch ein Aktenzeichen oder wie man das nennt, das dem Vermieter
recht gibt :((

Und einer aus'm Haus hat schon einen Prozess am Hals. Da hab ich ja gar keinen
Bock drauf, auch einen abzubekommen...

Seufzend, Branwen

-----------------------------------------------------------------------------



Re^3: HILFE! (Pra, 11. Nov 1999, 18:42:02):
~#! rn=Branwen rt=942339196 rg=suche-biete
~#! tid=942338494
Ich wuerde mal unverbindlich beim Mieterschutzbund nachfragen.

Pra.

P.S. Die Mitgliedschaft lohnt sich meistens sowieso irgendwann.

P.P.S. Alle Vermieter sind Kapitalistensaeue. Sowieso. Und ganz ohne 
  Verallgemeinerungen ;-)

-----------------------------------------------------------------------------



Re^4: HILFE! (Alpha, 11. Nov 1999, 18:43:52):
~#! rn=Pra rt=942342122 rg=suche-biete
~#! tid=942338494
Lieber mieten als unter der Bruecke pennen....

Aber der Hund der kann doch im Auto pennen, erstemal, oder?

Alpha.

-----------------------------------------------------------------------------



Re^5: HILFE! (Bambulko, 11. Nov 1999, 18:45:54):
~#! rn=Alpha rt=942342232 rg=suche-biete
~#! tid=942338494
Auja...und erfrieren, wenn er nicht erstickt.

Bambulko

-----------------------------------------------------------------------------



Re^6: HILFE! (Alpha, 11. Nov 1999, 18:48:04):
~#! rn=Bambulko rt=942342354 rg=suche-biete
~#! tid=942338494
Ersticken geht nicht, denk ich. Son Hundelchen hat doch keinen groesseren
Sauerstoffverbrauch als nen Mensch - und im Auto gepennt ham wa doch schon
fast alle. Aber erfrieren ... Es ist ja Winter, stimmt ja. Dann halt den Motor
laufen lassen. Kostet ja nur 1.4 Liter/Stunde, soweit ich mich nicht irre.
Alpha.

-----------------------------------------------------------------------------



Re^7: HILFE! (Hobo, 11. Nov 1999, 19:08:52):
~#! rn=Alpha rt=942342484 rg=suche-biete
~#! tid=942338494
Die Diskussion ist wohl eh ueberfluessig. Kein Hundehalter wird senien Hund im
Auto halten wollen. Und es geht hier ja nicht nur um die Nacht, sondern um den
ganzen Tag.

 Hobo - kennt da wen in Muenchen und fragt da mal.

-----------------------------------------------------------------------------



Re^8: HILFE! (Alpha, 11. Nov 1999, 20:22:22):
~#! rn=Hobo rt=942343732 rg=suche-biete
~#! tid=942338494
Naja...ich kenn mich eh nur mit Katzen aus. Die machen lieb in ihr Toilettchen
und sind ansonnsten ganz lieb und machen vor allem keinen Radau, so dass die
Nachbarn nicht gestoert werden und der Vermieter nicht einmal etwas davon
mitbekommt.
Alpha.

-----------------------------------------------------------------------------



Re^9: HILFE! (Koomiker, 11. Nov 1999, 20:26:36):
~#! rn=Alpha rt=942348142 rg=suche-biete
~#! tid=942338494
Der Vermieter kriegt spaetestens dann was mit, wenn irgendwelche *ZENSUR*
Nachbarn ihm erzaehlen, dass da diese komischen Leute sind, die ausserdem 
einen Hund haben und den schlecht behandeln und ueberhaupt.

Ob das mit dem schlecht behandeln stimmt oder nicht, interessiert eh keinen.
Und was die Betreffenden dazu zu sagen haben auch nicht. Schliesslich wohnen
diese Denunzianten ja schon laenger in dem Haus als Branwen und der Hund.

So ist das eben...

-----------------------------------------------------------------------------



Re^10: HILFE! (Rikus, 11. Nov 1999, 22:58:14):
~#! rn=Koomiker rt=942348396 rg=suche-biete
~#! tid=942338494
huhu Schwesterchen :)
soweit ich weiss, muss explizit im Mietvertrag stehen, dass Tierhaltung
nicht erlaubt ist.

Rikus

-----------------------------------------------------------------------------



Re^9: HILFE! (Jasper, 12. Nov 1999, 04:45:54):
~#! rn=Alpha rt=942348142 rg=suche-biete
~#! tid=942338494
ja und dafuer stinkt die wohnung nach katzenpisse

jasper hasst katzen und liebt hunde 

-----------------------------------------------------------------------------



Re^10: HILFE! (Tarina, 12. Nov 1999, 08:41:22):
~#! rn=Jasper rt=942378354 rg=suche-biete
~#! tid=942338494

Das ist aber meistens eher ein Hinweis auf unsaubere Katzenbesitzer als
auf Katzen. 

Tarina

-----------------------------------------------------------------------------



Re: HILFE! (Larissa, 12. Nov 1999, 19:22:13):
~#! rn=Branwen rt=942338494 rg=suche-biete
~#! tid=942338494
Hi!

Wenn explizit im Mietvertrag steht, dass Tierhaltung verboten ist hat
mans natuerlich schwer, gilt aber nicht immer, zum beispiel wenn das
Tierchen entscheident zur Lebensqualitaet beitraegt (einsame Oma) oder
garnicht als Tier gilt (Hamster oder so).
Wenn nichts im Mietvertrag steht gilt soweit ich weiss: Gibts schon einen#
Hund im Haus kann ein weiterer nicht verboten werden. 

Oft haben Vermieter auch nur Angst um den Teppich und ein Zusatz im Vertrag
wie: Wir kommen fuer alle Schaeden auf!, hat schon viele Vermieter
schnell beruhigt. 
Genaue Rechtskenntnis hab ich aber nicht.

Lari.

-----------------------------------------------------------------------------



Re^4: HILFE! (Wurzel, 12. Nov 1999, 23:29:48):
~#! rn=Pra rt=942342122 rg=suche-biete
~#! tid=942338494
was heisst hier "ganz ohne verallgemeinerungen" ? das hat mit kapitalismus
nichts zu tun, wenn einer ein drecksack ist. und nicht alle vermieter sind
drecksaecke, soviel ist auch sicher.
aber fuer nullraffer und nixhaber ist es natuerlich immer toll, wenn sie auf
"die kapitalisten" schimpfen koennen.

wurzel die kapitalistensau

-----------------------------------------------------------------------------



Re: Re: HILFE! (Kartoffel, 14. Nov 1999, 23:34:59):
~#! rn=Larissa rt=942430933 rg=suche-biete
~#! tid=942338494
Jo, grundsaetzlich muss die Tierhaltung im Mietvertrag verboten sein,
allerdings zaehlen wie Larissa schon schrieb dazu sogenannte 'Kleintiere'
nicht
Leider fallen Hunde grundsaetzlich _nicht_ unter Kleintiere, egal wie gross,
schwer oder laut sie sie sind, dafuer aber Nager, Ziervoegel und so weit ich
weiss auch Katzen.

Toffel - hat auch ein 'Nicht-Tier

-----------------------------------------------------------------------------



Texas Konzert im Koelner E-Werk. (Bhamir, 15. Nov 1999, 18:55:47):
Will noch jemand aus Dortmund am 19.11 zum texas Konzert ins Koelner E-Werk?
Bhamir

-----------------------------------------------------------------------------



Re: Texas Konzert im Koelner E-Werk. (Rikus, 15. Nov 1999, 20:01:26):
~#! rn=Bhamir rt=942688547 rg=suche-biete
~#! tid=942688547
bin zwar nicht au DO, aber bei der Musik schlaeft man eher ein :)

Rikus

-----------------------------------------------------------------------------



Re^3: HILFE! (Nixihou, 17. Nov 1999, 12:19:20):
~#! rn=Branwen rt=942339196 rg=suche-biete
~#! tid=942338494
mieterschutzbund, wirkt wunder....
ebenso gegenklagen an den prozess des "mitmieters" dranhaengen, damit immer
nur EIN richter ueber alle im Haus anfallenden Prozesse entscheidet und nicht
verschiedene richter zwei gleichgelagerte faelle bearbeiten.
zumindest in bielefeld richtet sich der bearbeitende richter immer nach dem 
anfangsbuchstaben des verklagten, nicht nach dem des klaegers... (irgendsowas
wars....)

nixihou, suelzend

-----------------------------------------------------------------------------



Re: HILFE! (Apsu, 17. Nov 1999, 18:51:07):
~#! rn=Branwen rt=942338494 rg=suche-biete
~#! tid=942338494
Ne _erschwingliche_ Wohnung? in Muenchen? hmmmm Ade Wautzi :)

Apsu

-----------------------------------------------------------------------------



Re^4: HILFE! (Apsu, 17. Nov 1999, 18:53:11):
~#! rn=Pra rt=942342122 rg=suche-biete
~#! tid=942338494
Noe stimmt nicht. Bei meiner Vermieterin wohne ich fuer 30 DM + strom auf 40
qm und die is schwerst in Ordnung!

Apsu, Sympathisant von Kapitalistensaeuen :)

-----------------------------------------------------------------------------



Re^5: HILFE! (Apsu, 17. Nov 1999, 18:54:53):
~#! rn=Apsu rt=942861191 rg=suche-biete
~#! tid=942338494
ARGL: 30 DM soll natuerlich 300 DM heissen :)

-----------------------------------------------------------------------------



Re^6: HILFE! (Bubba, 26. Nov 1999, 13:31:27):
~#! rn=Apsu rt=942861293 rg=suche-biete
~#! tid=942338494
Bei meiner Vermieterin wohne ich auch fuer 300 DM/halber Stunde. Dafuer steh
ich dann auch unter Strom und die Vermieterin macht's auch wie 'ne Huendin.
Ach ja...'ne Sau ist sie auch, ob auch kapitalistisch weiss ich nicht, aber
Geld nimmt sie halt auch ganz gern...


-----------------------------------------------------------------------------



B: 2 Gasherde (Orktoeter,  3. Dez 1999, 16:52:47):
Biete 2 Gasherde, gerne auch einzeln. Gegen abholung (wenn ne Kiste
Wasser/Cola dabei abfaellt um so besser). Abzuholen sind die Herde in
Dortmund-Marten. Bei Interesse Mail an mich oder Arkana.

OrkT.

-----------------------------------------------------------------------------



Re: B: 2 Gasherde (Mupfel,  3. Dez 1999, 23:56:53):
~#! rn=Orktoeter rt=944236367 rg=suche-biete
~#! tid=944236367
Was zum Henker hast Du mit 2 Gasherden gemacht? :)

-mupfel-
(nein kein interesse hab selbst einen ;)

-----------------------------------------------------------------------------



Lars II for Windoof (Cisou, 13. Dez 1999, 18:36:05):
Huhu !
Ich hab groessere Probleme damit, Daten von Lars auf Lars II for Windows zu
uebertragen und suche nun haenderingend nach jemandem, der sich damit
auskennt.

Mail bitte an mich und bitte keine Vorschlaege nach besseren
Datenbanken-Programmen, die hat mein Chef schon abgeschmettert.

Die diebische Elster - hat einfach keine Lust, nochmal 5000 Objekte neu
einzugeben.

Vielen Dank ! 

-----------------------------------------------------------------------------



Re: Re: B: 2 Gasherde (Jasper, 17. Dez 1999, 10:28:40):
~#! rn=Mupfel rt=944261813 rg=suche-biete
~#! tid=944236367
hehe, vermutlich hat er auf dem einen herd rund um die uhr eiweiss (eiklar
fuer pampers) mit dosenmilch erhitzt :)

Jasper haette nu fast wieder das 'atme' vergessen :)

-----------------------------------------------------------------------------



verkaufe Twingo (Sandie, 18. Dez 1999, 18:29:01):
Renault Twingo, blau, Baujahr 9/93, 40 kW, 54PS, GKAT, 
91500 km, aus erster Hand, 
Radio+Kassette, Winterreifen, 
VB 4500,-
mehr Infos bei mir :-)
sandie

-----------------------------------------------------------------------------



Re: Lars II for Windoof (Qitess, 20. Dez 1999, 10:47:47):
~#! rn=Cisou rt=945106565 rg=suche-biete
~#! tid=945106565
Ist ja interressant, Cisou, was hast denn Du auf Festins beiden Rechnern zu
suchen? Die heissen naemlich auch Lars und Lars II ;)

QI**
-> Abfall

-----------------------------------------------------------------------------



Re: Re: Lars II for Windoof (Cisou, 20. Dez 1999, 21:15:56):
~#! rn=Qitess rt=945683267 rg=suche-biete
~#! tid=945106565

Ich wusste es, nur noch die Rechner werden so genannt, nicht die Programme,
die der Welt was bringen bzw. noch von selbiger genutzt werden *seufz*.

Ich kenn zwar Festin, aber weder seine Rechner, noch seine Gruende, diese Lars
zu nennen.

Die Elster - hofft noch immer auf jemanden, der sich bei diesem Uralt-Prgramm
auskennt und schickt Lars II im Geiste schon zu selbigem :-)

-----------------------------------------------------------------------------



RAGE (Mesirii, 21. Dez 1999, 01:37:34):
Liebe Leute,
da ich mir nun extra nen Drucker zugelegt hab, der Karton bedrucken kann.
und nach viel Aufwand auch 200 Blatt Spielkartenkarton bekommen hab, 
wollte ich mich mal endlich dran machen, Ragespiele herzustellen.
C4 hatte meine Idee aufgegriffen und vorgeschlagen die Farben vom Minirage
in Rassen umzumuenzen. Ich find es witzig (Zwerg ist trumpf ;), brauche 
aber dafuer ein paar gute Bilder fuer die Rassen (fanasymaessig) so wie in
den Rollenspielen, die auf die Karten sollen. Ausserdem such ich noch
Motivideen fuer die Sonderkarten (z.B. TOD fuer Joker)
Vorschlaege fuer die Rueckseite (nur s/w) waeren auch nicht schlecht.
Ich tendier zur Zeit zu der MG-Karte von Sique.
Mails an mich.

Mesi

-----------------------------------------------------------------------------



Re: RAGE (Mupfel, 21. Dez 1999, 11:21:41):
~#! rn=Mesirii rt=945736654 rg=suche-biete
~#! tid=945736654
Hmja ich hatte einfach bunte Zahlen mit WordArt gemacht... aber warum nicht.
Schau mal im Internet nach Motiven fuer Tarot-Karten, da ist doch bestimmt
auchn guter Tod bei...

-mupfel-

-----------------------------------------------------------------------------



[S] Doom fuer PC (Baboon, 21. Dez 1999, 13:02:42):
Fuer einen gepflegten Blutrausch zum Jahrtausendwechsel
suche ich Doom/DoomII/Ultimate Doom fuer PC. Da das
aber schon zimelich alte Kamellen sind scheint es das
nirgends mehr zu geben.
Wenn jemand die Spiele hat und sie abtreten moechte,
bzw. weiss wo ich sie noch bekommen kann, soll er es
mich (oder mein alter ego a2738481@smail.uni-koeln.de)
wissen lassen.

Baboon() wuenscht sich ein Weihnachts-Doom
mit schneeballwerfenden Wichteln. :-)     

-----------------------------------------------------------------------------



Windows-User gesucht ;) (Ronda, 23. Dez 1999, 00:58:54):
Hi,
ich bastel an einem kleinen Bildschirmschoner unter Windows und suche ein paar
leidensfaehige Windowsbenutzer, die ihn ein wenig ausprobieren wollen (ok,
sind wir Windowsbenutzer nicht alle _seh_ leidensfaehig?).
Er funzt zumindest auf meinem Rechner schon so weit, dass man sich alle
moegclihen und unmoeglichen Bilder aussuchen kann, die er anzeigen soll.
Zusaetzlich ergab sich eher so nebenbei eigentlich das interessanteste: man
kann sich auch Webseiten im Bildschirmschoner anzeigen lassen,
Satellitenbilder, Boersenkurse, LiveCams - was man halt so anschauen mag ;)

Du hast Lust, ein bisschen Betatester zu spielen? Meld' Dich bitte einfach bei
mir per Mail an ronda@mg.mud.de.

Danke,

Ronda

-----------------------------------------------------------------------------



Re: Windows-User gesucht ;) (Gnome, 23. Dez 1999, 04:24:38):
~#! rn=Ronda rt=945907134 rg=suche-biete
~#! tid=945907134
also wenn du einen _ordentlich_ screensaver ala matrix hinbekommst,
wirst du mein lieblingsmagier oder sonstwas... :)
nein, der unter whatisthematrix.com ist schrott, man mags kaum glauben.

gnOme

-----------------------------------------------------------------------------



Re: Re: Windows-User gesucht ;) (Boing, 23. Dez 1999, 07:27:25):
~#! rn=Gnome rt=945919478 rg=suche-biete
~#! tid=945907134
Ich hab nie verstanden wieso man sich einen Bildschirmschoner anschauen
sollte, der geht doch los wenn man NICHT am Rechner sitzt ... ;)
  Boing

-----------------------------------------------------------------------------



Re^3: Windows-User gesucht ;) (Tarina, 23. Dez 1999, 10:03:20):
~#! rn=Boing rt=945930445 rg=suche-biete
~#! tid=945907134
Recht hast Du. Aber wenn es ein wirklich guter Screensaver ist, haelt der
einen ja auch vielleicht davon ab, eine Taste zu druecken.

Screensaver als Mittel gegen Computersucht? ;-)))

Also der Screensaver Voodoo Lights ist super. So klasse, dass sich Jemand
hingesetzt hat und den alten auf Linux portiert hat. Bei den neueren Voodoo
Lights gibts leider den source nicht. Schnief.

Tarina

-----------------------------------------------------------------------------



Re^4: Windows-User gesucht ;) (Rikus, 23. Dez 1999, 10:57:25):
~#! rn=Tarina rt=945939800 rg=suche-biete
~#! tid=945907134
am besten finde ich den dpms-mode.

rikus

-----------------------------------------------------------------------------



Re: Re: Windows-User gesucht ;) (Catweazle, 23. Dez 1999, 11:24:09):
~#! rn=Gnome rt=945919478 rg=suche-biete
~#! tid=945907134
Also mein Matrix-screensaver unter Linux ist grosse Klasse.
Der war bei der RedHat6.1 sogar dabei, wenn man (achtung schoener
Zufall :-) 'Gnome' als WM benutzt :)

YTC

-----------------------------------------------------------------------------



Re^3: Windows-User gesucht ;) (Ronda, 23. Dez 1999, 18:30:29):
~#! rn=Catweazle rt=945944649 rg=suche-biete
~#! tid=945907134
Oergs ;) Nun sagt mir nochmal bitte, was Ihr mit Matrix-Bildschirmschoner
meint??? (ich werd alt und schusselich... oehm... ich BIN alt und
schusselich... hatte ich nur vergessen ;) )

Ronda *unfaehig, unwissend - auf der Suche nach Win-Usern!*

-----------------------------------------------------------------------------



Re^3: Windows-User gesucht ;) (Thorak, 23. Dez 1999, 19:00:41):
~#! rn=Boing rt=945930445 rg=suche-biete
~#! tid=945907134
kennst du das nicht?
man kommt mitten in der nacht von der party heim, ist total am ende
aber die sucht treibt einen an den rechner. man doest voellig
tatenlos vor monitor rum und die augen werden immer schwerer.
das unterbewusstsein oeffnet sich immer weiter...
und: zappzadapp geht der screensaver an. hast du dir mal ueberlegt,
was du deinem gehirn antust, wenn in dieser situation der standard-
windows-screensaver mit den fliegenden windows kommt?
:-))

thorak

-----------------------------------------------------------------------------



Ronda hat sich verliebt - Alten Besen abzugeben! (Ronda, 29. Dez 1999, 21:17:13):
Ronda hat sich in Winterburg bei der Party verliebt! Und zwar in einen neuen
"Besen" (jau, Sugi und Anatol, fast den, den ich da ausprobiert hab' - nur
viel blauer!)

Schweren Herzens trennt sie sich nun von ihrem alten Besen:

Marke Citroen ZX (knapp so gross wie'n Golf, aber den fliegt ja jeder!),
Oktober 1993 geschluepft, 90 Pferdchen dieseln turbogeladen vor sich hin, die
Borsten sind fast neu (oergs, versteht dann doch keiner ;)) sprich: sowohl die
Sommer- als auch die Winterreifen sind erst ein Jahr alt! (Warum hab' ich
Idiot neue Breitreifen...? egal - weg musser!).
Singen musst Du nicht beim Flug: drin ist nen Radio mit Kassette und - tadah!
- 10 fach-CD-Wechsler. Ansonsten geht auch fast alles andere wie im Flug:
elektrische Fensterheber (denn der Besen hat zwei Tueren und ne grosse
Heckklappe) und Zentralverriegelung mit Funk. Ein elektrisches Schiebedach
sorgt fuer gute Durchlueftung, der rechte elektrische Rueckspiegel fuer gute
Sicht - den linken musste manuell verstellen - aber das haelt jung ;)

Hab' ich was vergessen? Die Kiste sieht wirklich gut aus - find' ich ;) (Oder
hast Du schon mal nen Turbodiesel mit Breitreifen - ach ja, Sommerreifen auf
Alufelgen - Sportauspuff und Lederlenkrad gesehen? Der Vorbesitzer hatte 'nen
besonderen Geschmack - und ich nun auch!)

Da der Besen viel fuer den Transport zwischen zwei (oergs - oehm.... drei...)
sich liebenden eingesetzt wurde, hat er allerdings schon sehr viele Autobahnen
gesehen und ist bereits 187 tausend Kilometer gefahren. Dafuer soll er aber
nur noch um 4999 Muenzen - oehm - Mark kosten.

Du willst meinen schwarzen (sorry: antrazit metallic!) Wunderbesen haben?
Meld' Dich einfach bei Ronda - oder funk' sie an unter 0172-7105254 =:)

-----------------------------------------------------------------------------



Freunde? (Anakin,  6. Jan 2000, 10:32:34):
Hat jemand Caradhras, Rantanplan, Trancefear, Tweeg, Hurin,
Gundur, Rudiratter, Oetti, Yogibaer, Guybrush, Bone oder
Schrumpfi gesehen?
Ich bin es leid die ganzen frufe von Zephyr mitzubekommen und
nicht zu wissen worum es geht. Alle meine Freunde sind
eher aeusserst selten hier oder gebanisht.
Naja gut Bone seh ich schon irgendwie noch.

Anakin.

-----------------------------------------------------------------------------



Re: Freunde? (Mahatmu,  6. Jan 2000, 11:05:12):
~#! rn=Anakin rt=947151154 rg=suche-biete
~#! tid=947151154
Tweeg findet man in PK-MUD. Ob Du ihn von dort aus aufs FBand nehmen
kannst halte ich fuer fraglich :>

Mahatmu

-----------------------------------------------------------------------------



Re: Freunde? (Jimdigriz,  6. Jan 2000, 11:44:36):
~#! rn=Anakin rt=947151154 rg=suche-biete
~#! tid=947151154
mmm

Mit Guybrush geh ich alle halbe Jahr maln Bierchen trinken,
sonst *seufz* ... *Sommerlager 1996 Bilder rauskram*..

JdG

-----------------------------------------------------------------------------



Cleopatra (Jameson, 11. Jan 2000, 16:00:16):
Hat jemand diesen Sonntag/Montag (9./10.1.) zufaellig den RTL-Zweiteiler
Cleopatra auf VHS-Kassette aufgenommen?
Im Prinzip kommt es nur auf den zweiten Teil an, aber auch der vollstaendige
Film wird gerne genommen :)
Ueber die Uebergabe usw. kann man sich ja noch einigen - aber bitte keine
Diskussionen ueber Qualitaet und Geschmack ;-)

jAmeson

-----------------------------------------------------------------------------



Re: Cleopatra (Jimdigriz, 11. Jan 2000, 16:23:58):
~#! rn=Jameson rt=947602816 rg=suche-biete
~#! tid=947602816

Wieso will wer so eine grauenvoll geschmacklose 
Billigfernsehproduktion niedrigster Qualitaet und
Effektheischerei haben ? Das ist doch Videobandverschwendung. 

SCNR,
 JdG :)

-----------------------------------------------------------------------------



Re: Re: Cleopatra (Gnome, 11. Jan 2000, 16:25:08):
~#! rn=Jimdigriz rt=947604238 rg=suche-biete
~#! tid=947602816
woher weisst du das denn so genau? du hast dir diesen streifen doch
nicht etwas angesehen? :)

gnOme

-----------------------------------------------------------------------------



Re^3: Cleopatra (Jimdigriz, 11. Jan 2000, 16:26:57):
~#! rn=Gnome rt=947604308 rg=suche-biete
~#! tid=947602816

Ich hab die Vorschau gesehen und nehme fuer mich
in Anspruch mir daraus ein (Vor-)Urteil zu bilden. :)

JdG

-----------------------------------------------------------------------------



Re^4: Cleopatra (Alboin, 11. Jan 2000, 17:08:52):
~#! rn=Jimdigriz rt=947604417 rg=suche-biete
~#! tid=947602816
wo Jimmy recht hat hat er recht :-)

die schoenen Historienstoffe werden in letzter Zeit nur noch verhunzt, vor
weihnachten tat ich mir 'jean d'Arc' an und mir wird jetzt noch schlecht wenn

ich mich an das Laecheln der heiligen Johann erinnere: das war gerade so wie
eine Teenagerin verlegen laechelt, wenn sie von ihrem Schwarm angeschaut wird.

Wenn RTL gross fuer einen Historienfilm wirbt sollte man am besten eins tun:
wegschalten:-)

Alboin

-----------------------------------------------------------------------------



Cleopatra (Jameson, 12. Jan 2000, 03:18:05):
*Augen verdreh*

Ich wusste es :-)

Aber hat es nun jemand auf Kassette?

jAmeson

-----------------------------------------------------------------------------



Re^5: Cleopatra (Lug, 12. Jan 2000, 03:47:54):
~#! rn=Alboin rt=947606932 rg=suche-biete
~#! tid=947602816
Recht so Alboin,

wann immer die Schnalle wieder so einen christlichen Megaorgasmus mitsamt
Marienerschein bekam, hoffte ich das einer sie in zwei Teile hakt. Der
SCheiterhaufen am Ende war doch ganz versoehnlich, so irgendwie so...

Peace ey
Lug

-----------------------------------------------------------------------------



Re: Cleopatra (Jimdigriz, 12. Jan 2000, 11:26:17):
~#! rn=Jameson rt=947643485 rg=suche-biete
~#! tid=947643485

Sei stolz auf Deinen Bait, er hat doch prima funktinoiert. :)

JdG

-----------------------------------------------------------------------------



Re: Freunde? (Rantanplan, 18. Jan 2000, 02:12:28):
~#! rn=Anakin rt=947151154 rg=suche-biete
~#! tid=947151154
Also OEtti ist gebanisht und ich bin jetzt hier Ana* ;)

Frieden und Liebe und moege die Macht mit Dir sein !

In LEipzig dann wieder... ?


Ran*

-----------------------------------------------------------------------------



Suche Uebersetzung (Feuerwehr, 17. Feb 2000, 19:39:02):
Hi!

Ich suche eine politisch korrekte Uebersetzung von z.B. folgendem Ausdruck:
'There are high probabilities in the tail of the distribution'.
Es geht hier um das Wort 'tail'. Meine bisherige Arbeit hat wegen der direkten
Uebersetzung einen etwas obszoenen Touch, der nicht so recht ankommt.

Vorschlaege bitte per Mail an mich...

     112.

-----------------------------------------------------------------------------



Re: Suche Uebersetzung (Feuerwehr, 17. Feb 2000, 19:41:06):
~#! rn=Feuerwehr rt=950812742 rg=suche-biete
~#! tid=950812742

Gluecklicherweise habe ich wenigstens eine schoene Uebersetzung fuer
'heavy-tailed' gefunden. Die Leute haetten mich exmatrikuliert!!!

-----------------------------------------------------------------------------



Re: Suche Uebersetzung (Liara, 17. Feb 2000, 19:41:40):
~#! rn=Feuerwehr rt=950812742 rg=suche-biete
~#! tid=950812742
Und was bietest Du so fuer die Uebersetzung? ;-)
Schliesslich heisst die Rubrik Suche-Biete.

Liara, Zwergenzauberine (-> Schmarrn)

-----------------------------------------------------------------------------



Re: Re: Suche Uebersetzung (Grimmborn, 18. Feb 2000, 18:42:23):
~#! rn=Liara rt=950812900 rg=suche-biete
~#! tid=950812742
Ich halte es fuer uebertrieben, fuer den Satz "Da sind hohe
Wahrscheinlichkeiten infolge der Zerstoerung" etwas zu fordern. Das sollte
einem ein Mitmudder schon wert sein.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^3: Suche Uebersetzung (Nixihou, 25. Feb 2000, 14:25:21):
~#! rn=Grimmborn rt=950895743 rg=suche-biete
~#! tid=950812742
"tail of the distribution" -> Anhang der veroeffentlichung ??
oder Ende der ...

nixihou, raet nur..

-----------------------------------------------------------------------------



HiFi-Kompos (Gnome, 19. Mar 2000, 20:22:50):
verkaufe verstaerker/tuner-gespann, aber nur zusammen.

verstaerker: kenwood ka-5040r, schwarz, 4 jahre alt, 2x 140W (sinus) an 4 ohm,
             tape monitor, rec selector, source direct, 2x2 boxenklemmen,
             MM & MC, IR-RC

tuner: kenwood kt6040, schwarz, 3 jahre alt, kabeltauglich, 99 speicher,
       active reception, programmierbar

beide kompos sind optisch und technisch einwandfrei und liegen klanglich
im oberen mittelfeld. vb 850,-

mail an mich.

gnOme

-----------------------------------------------------------------------------



S: WinCE Tools fuer Visual-C (Jehova, 19. Mar 2000, 21:03:18):

Hi.

Ich suche die WindowsCE Tools-CD fuer Visual-C++ 5 oder 6. Das braucht man, um
fuer WindowsCE-Rechner Programme zu schreiben, aber bei MS ist das ziemlich
teuer. Da das Programm auch auf verschiedenen Zeitschriften-CDs
veroeffentlicht sein soll (laut Newsgroups z.B. auf der CD zum MS Systems
Journal 5/99), wollte ich mal fragen, ob nicht jemand eine solche Zeitschrift
bzw. CD noch irgendwo rumliegen hat ...

J*

-----------------------------------------------------------------------------



Re: HiFi-Kompos (Mupfel, 19. Mar 2000, 23:43:18):
~#! rn=Gnome rt=953493770 rg=suche-biete
~#! tid=953493770
wieviele tape eingaenge?

-mupfel-

-----------------------------------------------------------------------------



Re: Re: HiFi-Kompos (Gnome, 20. Mar 2000, 00:04:23):
~#! rn=Mupfel rt=953505798 rg=suche-biete
~#! tid=953493770
2 normale, 1 tape monitor

gnOme

-----------------------------------------------------------------------------



S: Maerchen als Tondatei (Kwaks, 27. Mar 2000, 15:19:18):
Hi!

Kennt jemand eine Quelle im Internet, von der man Maerchen, Sagen etc.
als Tondatei beziehen kann? Meine bisherige Recherche brachte mir "nur"
Texte. Fuer Adressen waere ich sehr dankbar.

Kwaks

-----------------------------------------------------------------------------



Re: S: Maerchen als Tondatei (Pra, 27. Mar 2000, 15:30:13):
~#! rn=Kwaks rt=954163158 rg=suche-biete
~#! tid=954163158
Versuch's mal mit dem Programm Napster: www.napster.com
Ist zwar eher fuer Musik geeignet, aber ich habe da auch schon
Hoerspiele gefunden (z.B. 3? oder 5Freunde), warum also nicht
Maerchen?

Pra.

-----------------------------------------------------------------------------



WG in Dresden (Rikus, 30. Mar 2000, 14:52:54):
Hi,
ab Mai/Juni miete ich mir eine 3-Raumwohnung in Dresden und suche
noch jemand Netten (NR!), um mit mir eine 2er WG zu gruenden.
Bei Interesse und Fragen bitte NUR unter 0172/3721427
melden.

Danke, Rikus

-----------------------------------------------------------------------------



Re: WG in Dresden (Rikus, 30. Mar 2000, 14:56:30):
~#! rn=Rikus rt=954420774 rg=suche-biete
~#! tid=954420774
bzw. wer kennt jemand, der bei mir einziehen moechte?

Rikus

-----------------------------------------------------------------------------



Re: Re: WG in Dresden (Mupfel, 30. Mar 2000, 22:17:14):
~#! rn=Rikus rt=954420990 rg=suche-biete
~#! tid=954420774
willst du ne ehrliche antwort? ;)

-mupfel-

-----------------------------------------------------------------------------



Radtouren um Dresden (Rikus, 11. Mai 2000, 08:35:54):
Gruss,
die geht vor allem an die Dresdner... In einer Woche ziehe ich nach
Dresden und kann so mit meinen bisherigen Mitfahrern schlecht 
Radtouren unternehmen. Wer von Euch hat also z.B. Sonntags Zeit und
Lust zum Trekking/MTB bis zu 100km oder auch gern ab und zu wochentags
nach der Arbeit fuer 2-3 Stunden? Die Entfernungs- und Zeitangaben
koennen natuerlich gern nach oben oder unten korrigiert werden! :)

Danke, Rikus

-----------------------------------------------------------------------------



Re: Radtouren um Dresden (Mupfel, 11. Mai 2000, 11:36:48):
~#! rn=Rikus rt=958026954 rg=suche-biete
~#! tid=958026954
MTB ? so richtug quer durchn Matsch und so? naja....

-mupfel-

-----------------------------------------------------------------------------



Re: Radtouren um Dresden (Hood, 11. Mai 2000, 13:08:50):
~#! rn=Rikus rt=958026954 rg=suche-biete
~#! tid=958026954
hey, sonst muss man fuer SM-sessions immer teures geld bezahlen und in
fragwuerdige etablissements (man lese mit fuzzy-logik) einkehren :)

-----------------------------------------------------------------------------



Re: Re: Radtouren um Dresden (Rikus, 11. Mai 2000, 13:10:48):
~#! rn=Hood rt=958043330 rg=suche-biete
~#! tid=958026954
was ist bei 100km oder 2-3h SM? Das geht erst viel spaeter los :-)

Rikus

-----------------------------------------------------------------------------



Re: Re: Radtouren um Dresden (Rikus, 11. Mai 2000, 13:11:52):
~#! rn=Hood rt=958043330 rg=suche-biete
~#! tid=958026954
Wie ich Deinen Artikel verstehe, ist das eine Zusage :)

Rikus

-----------------------------------------------------------------------------



Re^3: Radtouren um Dresden (Hood, 11. Mai 2000, 13:12:40):
~#! rn=Rikus rt=958043512 rg=suche-biete
~#! tid=958026954
das problem ist, nach 2-3 stunden bin ich tod. dann erlebe ich also den
eigentlichen SM-part gar nicht mehr...nee nee :)

-----------------------------------------------------------------------------



Re^4: Radtouren um Dresden (Mupfel, 11. Mai 2000, 14:03:48):
~#! rn=Hood rt=958043560 rg=suche-biete
~#! tid=958026954
Ueben, Ueben, Hood... dann kannste bald schon mit Rikus mithalten ;)

-mupfel- (ist froh nicht in Dresden zu wohnen ;)

-----------------------------------------------------------------------------



Re^4: Radtouren um Dresden (Pra, 11. Mai 2000, 14:04:20):
~#! rn=Hood rt=958043560 rg=suche-biete
~#! tid=958026954
wenn du tod waerst, wuerdest du in Grossbuchstaben schreiben.
Nach 2-3 Stunden bist du hoechstens tot.

Pra. Besserwissend. Sowieso.

-----------------------------------------------------------------------------



v-karte (Gnome, 11. Mai 2000, 14:23:39):
hi,

ist hier jmd, der sich gut mit video-karten auskennt und mich beim
kauf einer solchen beraten koennte?

gnOme

-----------------------------------------------------------------------------



Uebernachtung zur Expo gesucht (Snuggle, 15. Jun 2000, 12:57:41):
HiIHrs,

auch wenn mich kaum noch einer hier kennt, suche ich ein Plaetzchen zur
Uebernahctung in oder um Hannover (will zur Expo). Zeitpunkt ist fast egal,
sollte irgendwo fruehestens in 2 spaestestens in 8 Wochen sein und moeglichst
nicht am Wochenende.

Freue mich ueber jedes Angeboit.

Tschaui

Snuggle

PS sorry fuer den fuerchterlichen TExt, aber ich schreibe an einem Terminal
mit irgendner voellig krummen emulation und ohne Korrekturmoeglichkeit.


-----------------------------------------------------------------------------



Kreditkarte (Nimbus, 30. Jun 2000, 14:00:50):
Da ich in Kuerze fuer ein halbes Jahr nach Australien gehen werde,
habe ich mich mal ueber Kreditkarten, Kosten, Nutzungsbedingunge etc.
erkundigt. Kann mir vielleicht jemand zu einer bestimmten Karte raten
oder von einer anderen abraten? Oder kennt jemand guenstige Studi-Angebote
(so wie z.B. bei der Barclaycard) ? Ich wuerde gerne vergleichen...
Ach ja: falls jemand schon in Oz war, waer ich natuerlich ueber sonstige
Infos, Tipps und Hinweise dankbar ;)

Nimbus

-----------------------------------------------------------------------------



Re: Kreditkarte (Muadib, 30. Jun 2000, 16:35:34):
~#! rn=Nimbus rt=962366450 rg=suche-biete
~#! tid=962366450
hi,

mit visa kam ich hervorragend klar bei den aussies

muadib

-----------------------------------------------------------------------------



Re: Re: Kreditkarte (Troy,  2. Jul 2000, 12:58:59):
~#! rn=Muadib rt=962375734 rg=suche-biete
~#! tid=962366450
Hi,

tja. wie es so ist: Ich habe mich down under gut mit MasterCard durch-
geschlagen. Aber das ist da realtiv egal, denn in .au gibts eine staat-
liche Kreditorganisation namens eftpos (frag nicht, was das heisst).
Die sorgt dafuer, dass Du auch am anus mundi noch besser mit Karte als
mit Barem loehnst. Ausserdem bedenke folgendes: Die kleinste Muenzeinheit
in .au ist die 5-Cent-Muenze. Im Klartext: Bai Bareinkaeufen wird gerundet
und zwar AUFgerundet. Wenn Du mit Karte zahlst, dann nicht ;-)

Eine Sache gibts allerdings, die fuer VISA und gegen alle anderen Karten
spricht: VISA ist offizieller Sponsor von Sydney 2000 (Olympia) und hat
durchgesetzt, dass dort keine anderen Karten genommen werden (was ich
persoenlich fuer eher geschaeftsschaedigend fuer Olympia finde).

Auf jeden Fall: Besorg Dir keine Reiseschecks, wenn Du keine herzlichen
Lacher ernten willst (nur ausserhalb der Grossstaedte, als da waeren:
Sydney, Melbourne, Adelaide, Brisbane und Perth, mit viel Liebe noch
Townsville, Rockhampton, Newcastle und Cairns).

Oben genannte eftpos hat uebrigens des Effekt, dass Du in der Pampa
keine Transaktionsgebuehren zahlst (die Umrechnungskosten hast Du
allerdings trotzdem).

Troy

P.S. Ich habe mich zunaechst gewundert, wie wenig Polizei es doch in .au
so auf der Strasse gibt, bis ich festgestellt habe, dass saemtliche Bus-
und Taxifahrer gleichzeitig Polizisten mit dem Recht zu blitzen sind.
Der Taxifahrer, den ich diesbezueglich ansprach, meinte nur, es sei bei
18 Millionen Einwohnern in einem Land der Groesse Europas nicht sinnvoll,
noch ne eigene Polizei aufzustellen...

-----------------------------------------------------------------------------



Re: Uebernachtung zur Expo gesucht (Troy,  2. Jul 2000, 13:02:25):
~#! rn=Snuggle rt=961066661 rg=suche-biete
~#! tid=961066661
Wie weit ist Deine Schmerzensgrenze bezueglich "um Hannover"?
Ich haett sonst was frei (in Hamburg). Sind mit Bahn plus 1 Tritt immer noch
DM 245 von hier. Mit Auto und Parkplatz DM 82, ohne Parkplatz (was fuern
Muell) DM 62.

Troy

-----------------------------------------------------------------------------



Suche Betatester (Ronda,  3. Jul 2000, 11:15:09):
Hi,
irgendwie muckt mein Programm seit neuestem rum - anscheinend liegts bei
manchen Usern am Internet Explorer 5.5 beta.
Wenn Du also bereits Betatester fuer Microsoft bist, indem Du den IE 5.5 b
installiert hast - koenntest Du mir bitte kurz helfen, indem Du ein paar
kleinere Sachen austestest.

Bitte meld' Dich bei Interesse einfach unter hedderich@gmx.net

Vielen Dank,

Ronda

-----------------------------------------------------------------------------



Re^3: Kreditkarte (Nimbus,  3. Jul 2000, 13:12:08):
~#! rn=Troy rt=962535539 rg=suche-biete
~#! tid=962366450
Vielen Dank an Muadib und Troy fuer die Infos! Falls ihr noch Tips
fuer "Muss"-Unternehmungen habt, nur her damit ;-)

Nimbus

-----------------------------------------------------------------------------



Re^4: Kreditkarte (Troy,  4. Jul 2000, 10:07:02):
~#! rn=Nimbus rt=962622728 rg=suche-biete
~#! tid=962366450
Tja also (jetzt kommt ein laengerer Absatz)...

Es kommt natuerlich darauf an, wohin in .au Du speziell fahren willst. Ich
hatte damals nur 6 Wochen, also hab ich mir die Zeit genau nach den
Sommerferien down-under ausgesucht (die beginnen Weihnachten und enden mit
der zweiten Februarwoche). Das hat naemlich den Effekt, dass man auf den
Campingplaetzen tatsaechlich nen freien Stellplatz ohne monatelange Vor-
bestellung kriegt. Damals bin ich nach Melbourne geflogen (British Airways)
und von Brisbane wieder zurueck. Das Auto (Ford Econovan Camperbus kam von
Maui (wie die Insel bei Hawaii)) war ausgesprochen guenstig (AU$59 pro Tag
plus Versicherung). Bei den gaengigen Vermietern (Hertz, Avis, Budget, etc)
waers doppelt so teuer gewesen. Wir waren zu zweit unten. Meine ADAC-
Mitgliedschaft hat mir auf jedem Campingplatz 10% Rabatt beschert, so dass
z. B. eine Nach full hookup (also Strom, Wasser, Abwasser plus Nutzung der
Anlagen)  (^^^^ das sollte Nacht heissen) gerade mal AU$12 in Sydney-Stadt
gekostet hat. Campingplaetze ham einen Vorteil gegenueber Backpackers und
Motels: Es wird eine Ruhezeit eingehalten ab 22.00 Uhr. Man glaubt gar nicht
wie einem 10 Englaender auf den Zeiger gehen, die Nachts um 3 besoffen
rumgroelen. Durch die Campingtour (man kriegt bei Maui ein Telefonbuch mit
saemtlichen Campingplaetzen Australiens und deren Einrichtungen) waren die
6 Wochen Australien uebrigens billiger als 4 Wochen USA. Der Sprit fuers
Vehikel ist unten allerdings aehnlich teuer wie hier.

Kauf Dir maximal 1 Tube Sonnenoel. Den australian-strength-sunblocker gibts
hier eh nicht und den kriegst unten in jedem groesseren Supermarkt oder
(man beachte) Hardware-Store. Falls Du fotografieren willst: File sind in .de
ungefaehr halb so teuer wie in .au. Kauf sie also besser hier (ich hab
fuer die 6 Wochen 11 File a 36 Bilder vollgehaun und es war zu wenig). Kauf
nix ueber 100ASA, es sei denn, Du willst unter Tage fotografieren. Die
Sonneneinstrahlung toetet jedes Bild ueber 100ASA. Eine Kuehlbox (in .au
"Esky" ([ess-ki:]) genannt) gibts billich im Supermarkt und Eis gibts
ueberall (ausserhalb der Staedte gratis). Es lohnt sich uebrigens auch die
Filme zu kuehlen.

In .au gilt zwar Linksverkehr wie in England, aber RECHTS VOR LINKS wie hier.
Das ist nur aufm Land interessant, da dort keine vorfahrtregelnden Zeichen
an den Kreuzungen stehen. Geblitzt wird aus allen Lagen (Auto, Hubschrauber,
etc.). Da mein Bus damals maximal 120 machte, wars fuer mich kein Problem.
Wenn Du nach Norden von Queensland willst (noerdlich von Rockhampton) nimm
ein Auto mit mindestens 50cm Wattiefe. Alles andere erzeugt bei den Aussies
einen guten Lacher, wenn Du damit in einer Furt (=causeway) steckenbleibst.
Die gibts auch auf dem Princes Highway! In saemtlichen Autoversicherungen
sind 2 Dinge nicht Drin (auch bei Vollkasko = complete cover [CC]), naemlich
1.) Windschutzscheiben (die gehen wegen des Steinschlags auf unpaved roads
leicht zu Bruch, Kosten ca AU$30 pro Scheibe) und 2.) Bergungskosten. Diesen
2. Punkt sollte man nicht unterschaetzen. Wenn Du irgendwo absaeufst, weil
Deine Wattiefe nicht gross genug war, freuen sich die Aussies.

Kommen wir nun zu den Sehenswuerdigkeiten ;-)
Melbourne: Sieht aus wie Manhatten (quadratisch, praktisch, grau). Die
einzige Parkanlage (Royal-Albert-Park) wurde zubetoniert und heisst jetzt
Royal-Albert-Formula-I-Racecourse. Wir haben in Melbourne-Stadt nix wirklich
sehenswertes gefunden. In der Umgebung allerdings umso me[he]r:
- Ballarat (ca 140km W von Melbourne). Goldgrube (fuer Touristen immer noch
in Betrieb) und Schauplatz von "Blood-on-the-cross". Die Australische Fahne
heisst Southern-Cross-Jack und in Ballarat fand die erste "Schlacht" statt,
in der unter eben dieser Fahne Blut vergossen wurde (Battle of the Eureka
Stockade). Das wirds den Touries abends vorgefuehrt.
- The Grampians (Gariwerd). Ersteres der britisch-schottische, letzteres der
  Aborigine-Name. Nochmal 50km W von Ballarat. Ist ein absolut geiler
  Nationalpark. Man kann die Jaws-of-Death erklimmen oder den Nervetest
  (beides nix fuer Leute mit Hoehenangst).
- Die Great Ocean Road. Wenn man von den Grampians zur Kueste nach Sueden das
  Lot faellt, trifft man deren Anfang. Bei Melbourne ist dann das Ende.
  Tolle Kuestenlandschaft, suedliches Eismeer.
- Wilson's Promontory (in Melbourne nur "The Prom" genannt) 200km SO von MB.
  Einer von 3 australischen NPs, die Eintritt kosten. Der suedlichste Punkt
  des Hauptkontinents (ausser Tasmanien). Tolle Tiere (Emus, Koalas, Roos
  (=Kaenguruhs), Wallabys, etc. Geiler Strand am Campingplaz (Postkarte).
  Leider traegt, wie oben beschrieben, das Meer den Namen "suedliches
  Polarmeer". Vorteil: Keine Haie, keine Quellen, etc. Nachteil: Arschkalt
  (Luft war 40 grad C, Wasser 18 grad C, laut den Einheimischen "hot").
  Wenn man am Eingang gleicht sagt, dass man Campen will (und dies bezahlt)
  faellt der regulaere Eintrittspreis weg (statt AU$20 Eintritt fuer 1 Tag
  AU$27 Camping fuer drei Tage (zwei Naechte)).

Dann weiter auf dem Princes Highway zunaechst von Wilson's Prom nach Osten:
- Es kommt ein geiles Strandgebiet mit einem geschachtelten Haff (will
  sagen: Zwei Landzungen verschachtelt, Man sieht also Land, Wasser, Land,
  Wasser, Land, Wasser). Es hat sich fuer uns gelohnt, dort Surfbretter zu
  kaufen und die nachher mitzunehmen (BA war so kulant). Preis von AU$150
  (Bodyboards) bzw. AU$300 (Surfbretter) aufwaerts. "Rucksaecke" fuer die
  Bodyboards gibts auch. Wenn man sie mieten will, kosts AU$15 (Bodyboards)
  bzw AU$40 JE STUNDE. Der Preis wird damit begruendet, dass die Teile von
  den Touristen immer verloren werden. Beispiel Bodyboard: Wenn Du
  beabsichtigst, mindestens 12 Stunden surfen zu gehen, hat sich der Kauf
  schon gelohnt.
- Dann gibts da irgendo Tropfsteinhoehen (wenn man halt Hoehlen mag). Der
  einzige Ort, wo ein mehr-als-100ASA-Film gerechtfertigt und belichtbar
  war.

- Beliebige mehr oder weniger tolle Orte ("Die Kaesestadt der suedlichen
  Halbkugel", etc.) bis Sydney.

Ueber Sydney muss ich wohl nix schreiben? Die Stadt allein haette die 6
Wochen gefuellt.

Wir sind dann auf dem New-England-Highway ein Stueck ins Landesinnere
gefahren, weil dort das Hunter Valley liegt (DAS Weinbaugebiet von NSW). Da
in .au wie auch in Canada die meisten Restaurants BYOs sind (bring-your-own)
haben wir uns im Hunter alley eine Kiste halb und halb (6x Rot- nd 6x Weiss-
wein) besorgt, die wir dann in die Restaurants mitgenommen haben.
Dann gibts in der Naehe von Tamworth ("The Country-Music-Capital", die
Stadt mit den meisten Schlachthoefen pro Einwohner) in einem Oertchen namens
Dutton eine Met-Herstellung (goiles Zeuch).

Schliesslich Queensland:
Goald Coast (Surfer Paradise, etc.) ist das Las Vegas Australiens (man besuche
zum Daddeln das Conrad Jupiter's Hotel). Brisbane ist ganz nett, machte aber
die Wurst nicht warm. Noerdlich von Brisbane gibts ne Menge Orte an der Kueste
die ich hier nicht alle aufzaehle. Ausnahmen:
a) Bribie Island (Da gibts gleich hinter der Bruecke auf die Insel auf der
   linken Seite ein Lokal namens "Surf-N-Turf". Die haben ein geniales Menue)
b) Fraser Island (weiter noerdlich). Die grosste Sand-Insel der Welt. Man 
   miete sich ein "Moke" (=Beach-Buggy) und heize den 90Mile-Beach runter.

Ueber die Lande noerdlich von Rockhampton kann ich nur wenig sagen. Ich war
zwar in Cairns, aber zur selben Zeit war Justin da (Tropical Cyclone class 3,
also ein Hurricane). Ich hab daher das Weite gesucht (schnueff, kein Riff-
Tauchen).

Ich hoffe, es hilft Dir.

Troy

-----------------------------------------------------------------------------



Re^5: Kreditkarte (Nimbus,  4. Jul 2000, 12:25:59):
~#! rn=Troy rt=962698022 rg=suche-biete
~#! tid=962366450
> Ich hoffe, es hilft dir.

Klar, sehr. Ich, bzw. wir (auch zu zweit) gehen fuer ein halbes Jahr, von
daher
haben wir genug Zeit alles moegliche anzuschauen. Vielen Dank fuer die
ausfuehrlichen Infos!

Nimbus

-----------------------------------------------------------------------------



Re^6: Kreditkarte (Rikus,  4. Jul 2000, 12:39:00):
~#! rn=Nimbus rt=962706359 rg=suche-biete
~#! tid=962366450
falls Du Kartenmaterial oder irgendwas in der Art brauchst, oder 600 Bilder
von
meinem Australienurlaub sehen willst, dann komm mal nach Dresden :)

Rikus

-----------------------------------------------------------------------------



Re^5: Kreditkarte (Feuerwehr,  4. Jul 2000, 13:04:43):
~#! rn=Troy rt=962698022 rg=suche-biete
~#! tid=962366450

Aehm, findet ihr nicht, dass derartig persoehnliche und lange Antworten doch
besser per Mail geschickt werden sollten? 

   112.

-----------------------------------------------------------------------------



Re^6: Kreditkarte (Silvana,  4. Jul 2000, 13:14:06):
~#! rn=Feuerwehr rt=962708683 rg=suche-biete
~#! tid=962366450
Noe, ich fand das eigentlich auch ganz interessant. Vielleicht immer noch
reichtlich lang, aber interessant.

  Silvana

-----------------------------------------------------------------------------



Re^7: Kreditkarte (Rochus,  4. Jul 2000, 19:02:42):
~#! rn=Silvana rt=962709246 rg=suche-biete
~#! tid=962366450
Aehm, die 600 Bilder aber bitte nicht in die MPA posten... :-)

-----------------------------------------------------------------------------



Re^5: Kreditkarte (Liara,  4. Jul 2000, 19:13:25):
~#! rn=Troy rt=962698022 rg=suche-biete
~#! tid=962366450
Boah. :-)
Toll, wenn ich mal nach Australien fahre, nehme ich Dich einfach mit, Troy.
:-)
Netter Effekt uebrigens mit Ringors Kampfscrollreduzierer bei der Great Ocean
Road. ;-)

Liara, Zwergenzauberine, begeistert von den Tips :-)

-----------------------------------------------------------------------------



Re^6: Kreditkarte (Ringor,  4. Jul 2000, 21:24:04):
~#! rn=Liara rt=962730805 rg=suche-biete
~#! tid=962366450
Fuer die Statistik: der "nette Effekt" ist in der aktuellen Version schon
behoben. Und nein, noch liegt sie nicht auf der Webseite. ;-)

Die Webseiten ziehen in absehbarer Zeit um und _dann_ gibt es auch wieder neue
Versionen. Wer also konkrete Vorschlaege hat, was ich einbauen/aendern soll,
der maile mir jetzt.


Ringor

P.S: unter "konkret" verstehe ich, dass die einzubauenden/zu aendernden Texte
mit beigefuegt sind. Ich habe nicht die Zeit, mir die alle selber
rauszusuchen. Danke.

-----------------------------------------------------------------------------



Re: Re: Uebernachtung zur Expo gesucht (Snuggle,  6. Jul 2000, 09:29:41):
~#! rn=Troy rt=962535745 rg=suche-biete
~#! tid=961066661
Hmm. Ich hatte gedacht, ich fahre mit dem AUto in die Naehe, mit der Bahn das
restliche Stueck, gehe einen Abend mit dem Abendticket ab 19 Uhr rein,
Uebernachte (Bahnfahrt) irgendwo in der Naehe und gebe mir den naechsten Tag
nochmal komplett, anschliessend entweder nochmal Uebernachtung oder Bahnfahrt
zum Auto und Heimreise.
245 Maerker wollte ich aber fuer Bahn plus Tritt nicht ausgeben. Dennoch
herzlichen Dank fuers Angebot.
245 Maerker wollte ich aber fuer Bahn plus Tritt nicht ausgeben. Dennoch
herzlichen Dank fuers Angebot.
argl

Tschaui
Tschaui

*Ich hasse diesen Editor :-( *

Snuggle

-----------------------------------------------------------------------------



Re: Kreditkarte (Wurzel,  6. Jul 2000, 22:34:51):
~#! rn=Nimbus rt=962366450 rg=suche-biete
~#! tid=962366450
hm, ganz guenstig und sehr empfehlenswertes doppel (visa + mastercard) gibts
als mercedes-card. ist absolut gebuehrenfrei, guenstiger gehts nicht...

wurzel

p.s. kleine einschraenkung: man muss die fahrgestellnummer seines mercedes
angeben :)

-----------------------------------------------------------------------------



Re: Re: Kreditkarte (Ronda,  6. Jul 2000, 22:35:49):
~#! rn=Wurzel rt=962915691 rg=suche-biete
~#! tid=962366450
*rotfl* Ok, fuer die Nicht-Mercedesfahrer: ich glaube bei MLP gibts auch
Kreditkarten im ersten Jahr kostenlos - allerdings wird man dann
ueblicherweise die MLP-berater kaum noch los...

Ronda

-----------------------------------------------------------------------------



Re^3: Kreditkarte (Tiamak,  6. Jul 2000, 22:38:48):
~#! rn=Ronda rt=962915749 rg=suche-biete
~#! tid=962366450
Wie DIE an die Adressen kommen, ist mir immer noch ein Raetsel. Von denen hat
bei uns das halbe (aber wirklich nur das halbe) Semester zum Vordiplom Post
bekommen, in der sie uns zum Diplom (knapp daneben ist auch vorbei)
gratulieren wollten.

Heutzutage handeln anscheinend selbst die Unis schon mit Adressen ...


Tiamak

-----------------------------------------------------------------------------



Re^4: Kreditkarte (Leibniz,  6. Jul 2000, 22:42:25):
~#! rn=Tiamak rt=962915928 rg=suche-biete
~#! tid=962366450
ich bin die irgendwann wieder losgeworden nachdem ich gesagt hab, dass ich eh
umziehen werde :)

leibi

-----------------------------------------------------------------------------



Re^5: Kreditkarte (Wurzel,  6. Jul 2000, 22:43:37):
~#! rn=Leibniz rt=962916145 rg=suche-biete
~#! tid=962366450
ein einfaches "nein" kann auch schon reichen. jedenfalls wenn es mit dem
entsprechenden nachdruck vorgebracht wird :)

wurzel

-----------------------------------------------------------------------------



Re^6: Kreditkarte (Dieder,  6. Jul 2000, 22:45:53):
~#! rn=Wurzel rt=962916217 rg=suche-biete
~#! tid=962366450
genau.

Hat bei mir auch gewirkt, als mich heute die AOK angerufen hat und mir ne
superduper Versicherung anpreisen wollte :-)

Dieder

-----------------------------------------------------------------------------



Re^7: Kreditkarte (Tiamak,  6. Jul 2000, 22:48:43):
~#! rn=Dieder rt=962916353 rg=suche-biete
~#! tid=962366450
Och, bei unverlangter telefonischer Werbung hat man doch leichtes Spiel. Die
ist naemlich verboten in .de.

Laestiger ist da die Werbung per Post. Die wird man leider nicht ganz so
einfach los. Wobei MLP das noch halbwegs schnell begriffen hat mit der in den
beigefuegten Rueckumschlag zurueckgestopften Werbung. Da sind gewisse
Klassenlotterien deutlich hartnaeckiger. ;-)


Tiamak

-----------------------------------------------------------------------------



Re^8: Kreditkarte (Dieder,  6. Jul 2000, 22:52:23):
~#! rn=Tiamak rt=962916523 rg=suche-biete
~#! tid=962366450
hm, so einfach scheint das nicht zu sein - die AOK ist ja schliesslich nicht
irgendwer... Wuerde mich aber mal interessieren wie da wirklich die Rechtslage
ist. Vor ner Woche hatte ich nen Brief im Kasten dass sie mich mal anrufen
wuerden wegen irgendwas tollem, und heute haben sie mich tatsaechlich auch mal
erreicht :)

Und was Klassenlotterien und andere "serioes werbende" Nerver angeht: "Annahme
verweigert, zurueck an Absender"... mittlerweile hab ich Ruhe. Irgendwann
kostet das die Absender naemlich auch was - wenns nur genuegend viele so
machen. :)

Dieder

-----------------------------------------------------------------------------



Re^9: Kreditkarte (Alboin,  6. Jul 2000, 22:54:27):
~#! rn=Dieder rt=962916743 rg=suche-biete
~#! tid=962366450
soviel ich weiss kann man sich auch auf ne Liste setzen lassen (die sog.
Robinsonliste) muss das aber jedes Jahr neu machen, und bleibt dann von den
Nervern verschont. Weiss jemand zufaellig wo man sich da melden kann?

Alboin

-----------------------------------------------------------------------------



Re^9: Kreditkarte (Tiamak,  6. Jul 2000, 22:54:51):
~#! rn=Dieder rt=962916743 rg=suche-biete
~#! tid=962366450
Naja, fuer "Annahme verweigert" muss ich zum Postamt. Fuer ihre eigene Werbung
im beigelegten Rueckumschlag nicht. Und die muessen sie auch bezahlen. :-)

Die Groesse der AOK ist bei telefonischer Werbung uebrigens vollkommen egal.
Ohne Deine Einwilligung ist die illegal.

Falls Du aber Kunde bei dem Unternehmen bist und beim Unterschreiben des
Vertrags nicht aufgepasst hast (da sind immer nette Klauseln, die man
tatsaechlich gefahrlos streichen darf im Kleingedruckten), dann hast Du denen
Dein Einverstaendnis gegeben ...

Ist aber jederzeit zu widerrufen.


Tiamak

-----------------------------------------------------------------------------



Re^10: Kreditkarte (Jenandra,  6. Jul 2000, 22:56:33):
~#! rn=Tiamak rt=962916891 rg=suche-biete
~#! tid=962366450
irrtum, fuer annahme verweigert reicht, genau das und 'zurueck an absender'
auf den ungeoeffneten umschlag zu schreiben und ab in den gelben kasten damit.
hat bei mir auch gewirkt, ich bin jetzt bloss so oft umgezogen dass ich sie
wieder am hals hab :-)

Jenandra

-----------------------------------------------------------------------------



Re^10: Kreditkarte (Dieder,  6. Jul 2000, 22:56:51):
~#! rn=Tiamak rt=962916891 rg=suche-biete
~#! tid=962366450
noe musste nicht - dem Postboten mitgeben oder wie bei mir am Briefkasten um
die Ecke einwerfen :)

Eingewilligt hab ich nirgends, bin auch bei denen kein Kunde. Also wirds
langsam interessant :)

Dieder

-----------------------------------------------------------------------------



Re^11: Kreditkarte (Tiamak,  6. Jul 2000, 23:00:13):
~#! rn=Dieder rt=962917011 rg=suche-biete
~#! tid=962366450
Okay, dass das auch auf die einfache Art geht, wusste ich nicht. Wieder was
gelernt. :-) Vielleicht sollte ich dann bei den hartnaeckigen Firmen beides
mal austesten.

Geruechtehalber klappt auch das mit dem "Empfaenger verstorben", aber ich hab
momentan keinen Bock auf irgendwelche Komplikationen - und bei meinem Glueck
gibt's die 100%ig ;^)

Bei unverlangter Telefonwerbung reicht es uebrigens meistens, mal freundlich
nachzufragen, ob die ueberhaupt wissen, dass das, was die da gerade machen,
illegal ist ... 

Demnaechst frag ich allerdings nochmal genau nach, wen die ueberhaupt sprechen
wollen. Der letzte redete sich naemlich raus, dass er dann wohl meinen
Vormieter meinte. Hmpf. ;-)


Tiamak

-----------------------------------------------------------------------------



Re^11: Kreditkarte (Anatol,  6. Jul 2000, 23:00:39):
~#! rn=Dieder rt=962917011 rg=suche-biete
~#! tid=962366450
Postwurfsendungen werden bei "Annahme verweigert" oder "Zurueck an
Absender" nicht zurueckgesendet, sondern einfach ausgesondert.

Also. Rueckumschlag verwenden. ]:o)

Anatol

-----------------------------------------------------------------------------



Re^12: Kreditkarte (Liara,  7. Jul 2000, 00:00:25):
~#! rn=Tiamak rt=962917213 rg=suche-biete
~#! tid=962366450
Solange Du durch diese Kreditkartendiskussion nicht auf falsche Gedanken
kommst ... ;-)

Liara, Zwergenzauberine, moechte sich nicht erst nen Mercedes kaufen, um
Tiamaks Seer-Card benutzen zu koennen ;-)

-----------------------------------------------------------------------------



Re^13: Kreditkarte (Tiamak,  7. Jul 2000, 11:50:21):
~#! rn=Liara rt=962920825 rg=suche-biete
~#! tid=962366450
Also eigentlich hab ich die Diskussion bis eben noch nicht mit der Seer-Card
in Verbindung gebracht.

Aber wenn Du mich _so_ fragst ... hmmmmmmm :-)


Tiamak

-----------------------------------------------------------------------------



Re^14: Kreditkarte (Karis,  7. Jul 2000, 11:51:47):
~#! rn=Tiamak rt=962963421 rg=suche-biete
~#! tid=962366450
WENN Du schon solche Ueberlegungen anstellst ... bau erstmal
nen anstaendigen Mercedes-Laden ein :)

Karis

-----------------------------------------------------------------------------



Re^15: Kreditkarte (Tiamak,  7. Jul 2000, 11:52:21):
~#! rn=Karis rt=962963507 rg=suche-biete
~#! tid=962366450
Wer hat gesagt, dass man das unbedingt auf nen Mercedes beziehen muss?

Da gibt es genug andere Kriterien ...


Tiamak

-----------------------------------------------------------------------------



Re^16: Kreditkarte (Karis,  7. Jul 2000, 11:53:07):
~#! rn=Tiamak rt=962963541 rg=suche-biete
~#! tid=962366450
Stimmt. Du koenntest auch die Fahrgestellnummer des Rollstuhls nehmen:)

Karis

-----------------------------------------------------------------------------



Re^17: Kreditkarte (Catweazle,  7. Jul 2000, 11:57:51):
~#! rn=Karis rt=962963587 rg=suche-biete
~#! tid=962366450
Es gibt nen Rollstuhl von Mercedes?
YTC

-----------------------------------------------------------------------------



Re^18: Kreditkarte (Karis,  7. Jul 2000, 12:02:10):
~#! rn=Catweazle rt=962963871 rg=suche-biete
~#! tid=962366450
Was nicht ist, kann ja noch werden.
Karis

-----------------------------------------------------------------------------



Re^19: Kreditkarte (Troy,  7. Jul 2000, 17:37:28):
~#! rn=Karis rt=962964130 rg=suche-biete
~#! tid=962366450
*grins* Man wird MLP-Spamming auch dann wieder los, wenn man ihnen beweist,
dass man anderswo ein guenstigeres Angebot bekommen hat. Die Karte gilt bei
MLP uebrigens als uneingeschraenkt kostenlos, wenn man dort mindestens ein
MLP-Produkt bezogen hat.

Alternativ kann man bei MLP auch mit Re-Spamming ueber e-Mails antworten.
Die begreifen dann recht schnell, dass weniger Werbung oft mehr ist.

Troy

-----------------------------------------------------------------------------



Re^14: Kreditkarte (Gnome,  8. Jul 2000, 00:37:36):
~#! rn=Tiamak rt=962963421 rg=suche-biete
~#! tid=962366450
wer will denn die seer-card bei DEN einzahlungsgebuehren?
raffzwerg :)

gnOme

-----------------------------------------------------------------------------



Re^15: Kreditkarte (Tiamak,  8. Jul 2000, 13:08:00):
~#! rn=Gnome rt=963009456 rg=suche-biete
~#! tid=962366450
Stimmt eigentlich. Da die Seer-Card ja gar nicht benutzt wird, kann ich sie
auch wieder abhaengen.


Tiamak denkt . o O(Schade um die Arbeit)

P.S: bevor ihr mich jetzt erschlagt: </ironie>

-----------------------------------------------------------------------------



Re^4: Kreditkarte (Nimbus, 10. Jul 2000, 12:47:30):
~#! rn=Tiamak rt=962915928 rg=suche-biete
~#! tid=962366450
Jo, bei uns stehn die immer vor dem Hoersaal, wenn Klausur geschrieben wird,
und verteilen Infoblaettchen und Preisraetsel. Der Hammer war dann, als die
Klausur vorbei war und wir rausschlappen, stehn die wieder da und fragen
mich ob ich das Zeugs ausgefuellt habe. Ich hab dann gefragt, ob sie
wirklich der Meinung sind, dass ich das waehrend einer Klausur mache...

Nimbus

-----------------------------------------------------------------------------



Re^10: Kreditkarte (Acrimon, 10. Jul 2000, 21:06:45):
~#! rn=Alboin rt=962916867 rg=suche-biete
~#! tid=962366450
Den eigenen Namen auf eine Liste setzen lassen, nur weil man _nicht_ mit
Werbung belaestigt werden moechte?
Schlechte Politik. Der Default sollte sein, dasz man keine Werbung bekommt, es
sei denn man hat sie bestellt.
Ich denke, da bringt es mehr, die Werbung zurckzuschicken.

Acrimon

-----------------------------------------------------------------------------



Re^10: Kreditkarte (Gnome, 12. Jul 2000, 22:44:39):
~#! rn=Alboin rt=962916867 rg=suche-biete
~#! tid=962366450
Robinsonliste:

DDV-Robinsonliste
Postfach 1401
71243 Ditzingen

07156/951010

gnOme

-----------------------------------------------------------------------------



suche amerikanischen schulbus (Mysterious, 14. Jul 2000, 15:26:39):
ni hao!

weiss jemand, wo man das bekommt? gebraucht oder neu? innerhalb eu oder noch
besser d?

tia,
mYstEriOus

-----------------------------------------------------------------------------



Re^11: Kreditkarte (Acrimon, 14. Jul 2000, 19:46:53):
~#! rn=Gnome rt=963434679 rg=suche-biete
~#! tid=962366450
Wuerd ich nicht machen, aus mehreren Gruenden:
- Die Robinsonliste ist von den Firmen selbst initiiert, genauer: von einer
"freiwilligen Vereinigung von Werbetreibenden und Wirtschaftsunternehmen".
- Jeder, der eine Firma angeben kann, kann die Liste einsehen.
- Es halten sich beileibe nicht alle Firmen an die Liste. Wer ohne
Einschrnkung Werbung verschicken will, der braucht sich zu nichts zu
verpflichten. Daher ist die Liste nur ein sehr unzureichender Schutz.
- Die Firmen haben die Liste aufgestellt, damit sie bedenkenloser Werbung
verschicken koennen, ohne vorher die explizite Erlaubnis dazu von ihren Opfern
zu haben.

Wer Werbung verschickt, der kann nach wie vor wegen Spamming seinen
Internet-Account gestrichen bekommen.
Habt Ihr Werbung bekommen, dann schickt sie an den Postmaster des Rechners,
von dem aus die Werbung verschickt wurde, zusammen mit dem gesamten Header der
Werbung und der Drohung, da Ihr dieselbe Mail an den nchsthheren Postmaster im
Internet verschickt, falls der angeschriebene Postmaster nicht dafr sorgt, da
die Werbung aufhrt.
Das wirkt.

Acrimon

-----------------------------------------------------------------------------



Re^12: Kreditkarte (Troy, 17. Jul 2000, 10:01:14):
~#! rn=Acrimon rt=963596813 rg=suche-biete
~#! tid=962366450
Aehm, ist Nimbus eigentlich noch da? Oder ist diese Diskussion akademisch?

Troy - nach .au schauend

-----------------------------------------------------------------------------



Re^13: Kreditkarte (Dieder, 17. Jul 2000, 10:55:56):
~#! rn=Troy rt=963820874 rg=suche-biete
~#! tid=962366450
der ist noch da, allerdings eher in einem anderen Mud vertreten. Ich werd ihm
mal sagen dass er hier mal wieder reinschauen soll - meines Wissens fliegt er
Anfang August.

Dieder

-----------------------------------------------------------------------------



Ich bin - noch - da :) (Nimbus, 20. Jul 2000, 01:05:17):
Hi zusammen,
entgegen der Vermutungen bin ich noch da, allerdings wie Dieder sagte
teils andermuddig, hauptsaechlich allerdings pruefungsstressig :-(
Ich bin voraussichtlich noch bis zur ersten Augustwoche da, danach hoffe
ich natuerlich von .au aus regelmaessig wieder reinschauen zu koennen.
Das duerfte kein Problem darstellen ;)
Fuer eine Fortsetzung des Threads und weitere Infos bin ich auf alle
Faelle immer aufgeschlossen :-)

Nimbus (bald vom Stress erloest)

-----------------------------------------------------------------------------



Re^4: Kreditkarte (Flintnail, 25. Jul 2000, 01:15:16):
~#! rn=Tiamak rt=962915928 rg=suche-biete
~#! tid=962366450
Hi..
in meinen AStA -Tagen habe ich sie mal aus unseren Raeumlichkeiten
verwiesen..nachdem eine meiner Kommilitoninnen (hmm..schweres Wort:) ) u.a.
als Gegenleistung fuer ein 'tolles Buch' meine Adresse ..neben 2 weiteren
Adressen.. weitergab!  Naja..und ihre Reklamezettel, mit denen sie die
schwarzen Bretter der Studentenschaft zuflasterten, durften sie auch wieder
abholen:)

Pack elendes..

Flint*

-----------------------------------------------------------------------------



Re^5: Kreditkarte (Flintnail, 25. Jul 2000, 01:19:10):
~#! rn=Flintnail rt=964480516 rg=suche-biete
~#! tid=962366450
Tscha..man sollte mal artikel eines threads zu Ende lesen:) ..mit dem Pack
meinte ich natuerlich, die netten MLP-Berater...:)

Flint*

-----------------------------------------------------------------------------



Mustervertrag fuer Softwareerstellung gesucht (Ronda, 25. Jul 2000, 19:36:53):
Hallo,

nun ist's passiert: es gibt einen potentiellen Kunden... und ich hab' noch zu
wenig Ahnung von der Vertragsgestaltung bei Softwareentwicklungen. Im Web habe
ich bisher leider auch noch nicht so viel hilfreiches gefunden - vielleicht
weiss jemand von Euch etwas weiter?

Sprich. Hat jemand von Euch zufaellig mal Software verkauft, im Rahmen eines
Werksvertrages entwickelt - und einen entsprechenden Vertrag greifbar, damit
ich nicht voellig im Dunkeln tappe?

Vielen Dank auch fuer Tipps, wo man so etwas finden koennte,

Ronda *baff, dass jemand die Software kaufen will ;-)*

Ps: nein, ein normaler "EULA" a la M$ hilft nicht so richtig, da es eine
Spezialanpassung der Software werden soll...

-----------------------------------------------------------------------------



Re: Mustervertrag fuer Softwareerstellung gesucht (Hate, 26. Jul 2000, 10:32:40):
~#! rn=Ronda rt=964546613 rg=suche-biete
~#! tid=964546613
Geh zu einem Anwalt!
Hate.

-----------------------------------------------------------------------------



Re: Re: Mustervertrag fuer Softwareerstellung gesucht (Catweazle, 26. Jul 2000, 11:05:02):
~#! rn=Hate rt=964600360 rg=suche-biete
~#! tid=964546613
Unbedingt!
Wenn Du als einfacher Gewerbebesitzer anfaengst Software zu _verkaufen_
haftest Du auch voll dafuer, und zwar Du ganz persoenlich und ganz alleine.
Ich weiss ja nicht, was fuer eine Software Du da verkaufst,
aber wenn die irgendwelche Fehlfunktionen hat oder fuer betriebliche 
Maengel sorgt, oder sogar fuer Produktionsausfall oder sowas, dann 
kann sowas ganz schnell in Hoehe von Millionenbetraegen gehen (und 
wenns nur nen Taschenrechner ist, der sich irgendwie vertut).
Folgekosten bei Software koennen enorm sein und da wuerde ich mich 
unbedingt rechtzeitig kompetent informieren und absichern (zur Not ne GmbH
gruenden oder sowas...).
YTC

-----------------------------------------------------------------------------



Re^3: Mustervertrag fuer Softwareerstellung gesucht (Zook, 26. Jul 2000, 11:07:29):
~#! rn=Catweazle rt=964602302 rg=suche-biete
~#! tid=964546613
Jau, da hat Catty recht... Ich habe auch gehoert, dass man sich da 
auch versichern kann; frag mich aber nicht, was die Versicherung
abdeckt und was sie kostet... Auf alle Faelle: Beraten lassen und d
as ausfuehrlich :)

Gruss, Zook.

-----------------------------------------------------------------------------



Re^4: Mustervertrag fuer Softwareerstellung gesucht (Padreic, 26. Jul 2000, 12:36:04):
~#! rn=Zook rt=964602449 rg=suche-biete
~#! tid=964546613
Versicherung is praktisch unbezahlbar und fuer kleine Unternehmen ueberhaupt
nicht zu leisten weil Du alle moeglichen Standards und Pruefungen nachweisen
musst -> vergisses
Einen generellen Haftungsauschluss solltest Du jedoch aufnehmen, das ist bei
"normaler" Software auch ziemlich ueblich, dann bist Du nur bei grober
Fahrlaessigkeit haftbar zu machen...

Pad*

-----------------------------------------------------------------------------



Re^3: Mustervertrag fuer Softwareerstellung gesucht (Hate, 26. Jul 2000, 13:17:55):
~#! rn=Catweazle rt=964602302 rg=suche-biete
~#! tid=964546613
Oder man macht ne Lizenz die alles abstreitet :-)
Damit haben wir gute Erfahrungen gemacht.

Hate.

-----------------------------------------------------------------------------



Zeitzonen (Silvana, 27. Jul 2000, 22:51:06):
Salve

Gibt es eigentlich so etwas wie eine Tabelle der Zeitzonen-Abkuerzungen? Was
GMT ist, weiss ich oder PST, aber es gibt da ja ne ganze Menge von. Falls
jemand da eine moeglichst vollstaendige Tabelle von hat, bitte ich um
Link/Zusendung.

  Silvana

-----------------------------------------------------------------------------



Re: Zeitzonen (Silvana, 27. Jul 2000, 23:34:04):
~#! rn=Silvana rt=964731066 rg=suche-biete
~#! tid=964731066
Ich muss das ganze noch ein klein wenig erweitern: Informationen darueber,
wann wo Sommer/Winterzeit-Wechsel auftreten, waeren auch sehr willkommen.

  Silvana

-----------------------------------------------------------------------------



Re: Re: Zeitzonen (Liara, 28. Jul 2000, 00:37:51):
~#! rn=Silvana rt=964733644 rg=suche-biete
~#! tid=964731066
Gips dafuer Pralinen? *g*

Liara, Zwergenzauberine, dreist und ahnungslos

-----------------------------------------------------------------------------



Re: Re: Zeitzonen (Muadib, 28. Jul 2000, 11:45:12):
~#! rn=Silvana rt=964733644 rg=suche-biete
~#! tid=964731066
hi,

vielleicht kann da die physikalisch-technische bundesanstalt weiterhelfe.
eine tabelle findet sich unter http://www.ptb.de/deutsch/org/4/43/432/zeit.htm

gruss

muadib
*schmeisst ein n nach*

-----------------------------------------------------------------------------



Re^3: Zeitzonen (Troy, 31. Jul 2000, 08:10:46):
~#! rn=Muadib rt=964777512 rg=suche-biete
~#! tid=964731066
Jo. PTB ist genau richtig. Da gibts auch die offiziell korrekten Algorithmen
fuer Ostern, die 1. Kalenderwoche, die 53. Kalenderwoche, etc.

Uebrigens: PST ist Pacific Standard Time, nicht zu verwechseln mit PDT, was
Pacific Daylight Savings Time ist (manchmal auch PDST genannt). USA-Landen
teilen sich auf (von Ost nach West) in:  Newfoundland Time (NFT, aeusserster
Zipfel von Maine), EST (Eastern Time), CNT (Central Time), MNT (Mountain
Time), PST (Pacific Standard Time), AST (Alaska Standard Time), (Luecke von
1 Stunde), HWT (Hawaiian Time). Diese Abkuerzungen sind NICHT nach der
Physikalisch Technischen Bundesanstalt, da sich die Amis noch nie wirklich
an Deutsche Industrie Normen gehalten haben ;-) Eastern ist Frankfurt-6,
Pacific Standard Frankfurt-9 Stunden. In Australien gibts uebrigens im
Norden (Queensland, Northern Territories und West Australia; letzteres ganz)
KEINE Sommerzeit, EGAL was die PTB schreibt.

Troy

-----------------------------------------------------------------------------



Mitarbeiter gesucht! (dringend) (Wurst, 31. Jul 2000, 13:17:38):

 Wir  suchen  wiedermal  _DRINGEND_  Leute, die  Ahnung  von  XML/XSL 
 und/oder  Java  (JSP/JSE/JSF)  haben und  Lust haetten, ne Weile  in 
 Muenchen zu arbeiten.

 Durch diverse grosse Auftraege von grossen Kunden und messebedingtem 
 Termindruck  brauchen wir bis ca. Ende November dringend noch Leute, 
 die uns hier unterstuetzen koennten. 

 Die  Bezahlung ist  natuerlich  angemessen, fuer  die  Unterbringung 
 wuerde ggf. auch gesorgt.

 Wer also  noch Interesse  dran hat, den  Sommer im  sonnigen  Bayern 
 zu verbringen, sowieso aus dieser Gegend kommt oder noch Fragen hat, 
 der melde sich  bitte bei mir unter: 089 / 54 70 65-34 oder per mail 
 an burgarth@zeilbeck.de.


 Wurst->suchen(Mitarbeiter)


 P.S. Ach ja, wir suchen  selbstverstaendlich  auch jede Menge FESTER 
 Mitarbeiter in diesem Bereich!

-----------------------------------------------------------------------------



Zimmer in Bonn (Darkwing, 31. Jul 2000, 19:42:39):
Hiho,

Ich wechsel zum Oktober die Uni nach Bonn ... und muss mich wohl so langsam
mal um ein Zimmer in Bonn kuemmern :)
Also wenn wer von den Bonnern was weiss, bitte mal Bescheid sagen. Naehe zur
Informatik waere sehr praktisch, ansonsten kenn ich mich mit den ganzen Bonner
Bezirken noch nicht so recht aus.

Vielleicht ergibt sich ja was, waere schoen...
Darkwing

-----------------------------------------------------------------------------



Re: Zeitzonen (Karam, 31. Jul 2000, 21:51:36):
~#! rn=Silvana rt=964731066 rg=suche-biete
~#! tid=964731066
Wenn du es unkomfortable magst und ein passendes OS hast:

  find /usr/share/zoneinfo -type f

Einzelne Zonen betrachten mit zdump, z.B.

  /usr/sbin/zdump -v MET

-- 
Karam

-----------------------------------------------------------------------------



Re: Zimmer in Bonn (Pra,  1. Aug 2000, 13:54:43):
~#! rn=Darkwing rt=965065359 rg=suche-biete
~#! tid=965065359
WG? Appartement? Preisvorstellung?

Pra. Privater Makler aus Passion ;-)

-----------------------------------------------------------------------------



TGS gesucht (Atoz,  9. Aug 2000, 15:42:45):
Hallo liebe Chemiker, Physiker und Kristallographen (so es ausser mir noch
welche gibt ;) )

Ich suche eine Anleitung um TGS herzustellen. (Triglycinulfat) Wahlweise auch
eine Adresse, bei der man den Kram auch schon in moeglichst reiner Form (5N
waer schon nicht schlecht...) herkriegen kann.
Wer etwas weiss: waer nett, wenn Du eine kleine Mail an mich schicken
wuerdest.
Gruss, Atoz

-----------------------------------------------------------------------------



Re: TGS gesucht (Mupfel, 13. Aug 2000, 23:00:20):
~#! rn=Atoz rt=965828565 rg=suche-biete
~#! tid=965828565
Merck?

-mupfel-

-----------------------------------------------------------------------------



Shadow... (Dante, 17. Aug 2000, 13:01:25):
Nein, ich meine nicht die fun ...
kann mir jem sagen was denn der wahre Unterschied zwischen einer
Shadow VT 1100 C3 und einer VT 1100 C2 ist.
tnx

-----------------------------------------------------------------------------



international money order (Silvana, 18. Aug 2000, 10:31:12):
Salve

Es scheint in den USA eine Moeglichkeit zu geben, Geld per "money order" zu
verschicken. Angeblich geht das auch von anderen Laendern aus mit einer
"international money order". Ich habe allerdings keine Vorstellung, was das
ist und wie das geht und was fuer ein Unternehmen sich damit beschaeftigt.
Meine Bank bestreitet, dass es so etwas gibt... Kann mir da irgendwer weiter
helfen?

  Silvana

-----------------------------------------------------------------------------



Re: international money order (Pilgrim, 18. Aug 2000, 16:47:26):
~#! rn=Silvana rt=966587472 rg=suche-biete
~#! tid=966587472
Hmm,

nur ne Vermutung ... schonmal die PostBank gefragt?
Pilgrim

-----------------------------------------------------------------------------



Re: Re: international money order (Silvana, 18. Aug 2000, 16:58:41):
~#! rn=Pilgrim rt=966610046 rg=suche-biete
~#! tid=966587472
Guter Tip. Leider wissen die auch nicht, was eine money order ueberhaupt ist,
aber sie bieten etwas an, das der Beschreibung nach sicherer, schneller und
billiger ist, als jede andere Methode, die ich gefunden hab. Muss ich halt
abwarten, was dieser Ami dazu sagt...

Silvana (bald Expertin fuer Auslandsueberweisungen)

-----------------------------------------------------------------------------



Re^3: international money order (Stopdenbus, 22. Aug 2000, 23:02:27):
~#! rn=Silvana rt=966610721 rg=suche-biete
~#! tid=966587472
das wird dann wohl der Western Union Money Transfer gewesen sein, faengt
bei 50 DM Entgelt an.
Stoppi 

-----------------------------------------------------------------------------



Re^4: international money order (Troy, 24. Aug 2000, 08:17:01):
~#! rn=Stopdenbus rt=966978147 rg=suche-biete
~#! tid=966587472
Stimmt.

Die Western Union macht sowas. Interessanterweise befinden die sich
(zumindest in Hamburg) in Kooperation mit der PostBank. Es spricht also
mal wieder fuer den dortigen Filz, dass die PostBank davon keine Ahnung hat.

Troy

-----------------------------------------------------------------------------



EBay (Anakin, 12. Sep 2000, 10:45:17):
Hi,

spricht irgendwas dagegen wenn ich meine Zweities mit 1096 AP
Seheranforderung auf EBay verkaufe ? :-)

Anakin.

-----------------------------------------------------------------------------



Re: EBay (Pilgrim, 12. Sep 2000, 12:15:20):
~#! rn=Anakin rt=968748317 rg=suche-biete
~#! tid=968748317
Ahe ... das gehoert wohl unter Witze, oder?

Pilgrim

keine (gekauften) Wurstseher ins MG

-----------------------------------------------------------------------------



Re: Re: EBay (Anacrion, 12. Sep 2000, 17:29:16):
~#! rn=Pilgrim rt=968753720 rg=suche-biete
~#! tid=968748317
Also eigentlich sollte die AP-Anforderung mittlerweile egal sein, solange die
Bieter keine FP-Listen dazukriegen ;)

Gruss Anac* - hat mit seinen xties arg kaempfen muessen um die FP

-----------------------------------------------------------------------------



Re: Re: EBay (Orktoeter, 12. Sep 2000, 19:44:00):
~#! rn=Pilgrim rt=968753720 rg=suche-biete
~#! tid=968748317
Du hast noch Zweities, die nicht auf die Registriert sind ? ohoh...

OrkT.

-----------------------------------------------------------------------------



Re: EBay (Guildo, 13. Sep 2000, 09:14:21):
~#! rn=Anakin rt=968748317 rg=suche-biete
~#! tid=968748317
Wieso denn in der Ferne schweifen (oder wie heisst das)? Verkaufen kannst Du
doch auch hier im MG.
Ich biete 50000 Muenzen.

Gruss,
Guildo

-----------------------------------------------------------------------------



Re: Re: EBay (Humni, 13. Sep 2000, 09:16:23):
~#! rn=Guildo rt=968829261 rg=suche-biete
~#! tid=968748317
Ich biete einfach mal mit und gehe auf 1000000.
Gut dass es AddMoney gibt ;-)

humni -> schmarrn

-----------------------------------------------------------------------------



magic-karten (Gnome, 25. Sep 2000, 14:52:37):
biete 2,7 kg magic-karten gegen gebot.
nein, es darf nicht ausgesucht werden und die sollen wenn moeglich
noch diese woche weg...

gnOme

-----------------------------------------------------------------------------



Myst/Riven (Karis, 25. Sep 2000, 15:51:06):
Die beiden Spiele such ich. Angebote bitte (per mail) an mich.

Karis

-----------------------------------------------------------------------------



Re: Myst/Riven (Boing, 25. Sep 2000, 16:45:00):
~#! rn=Karis rt=969889866 rg=suche-biete
~#! tid=969889866
Gibt's im Karstadt im Doppelpack fuer 30 oder 40 DM.
  Boing

-----------------------------------------------------------------------------



Re: magic-karten (Yendi, 26. Sep 2000, 11:24:04):
~#! rn=Gnome rt=969886357 rg=suche-biete
~#! tid=969886357
Biete ca. einen halben Zentner Magic-Karten gegen Gebot, von Aniquities bis --
aeh -- wie hiess das nach Ice Age?


-----------------------------------------------------------------------------



Re: Re: magic-karten (Qitess, 26. Sep 2000, 17:19:09):
~#! rn=Yendi rt=969960244 rg=suche-biete
~#! tid=969886357
biete 1000 muenzen
QI**

-----------------------------------------------------------------------------



Re^3: magic-karten (Grimmborn, 26. Sep 2000, 19:50:57):
~#! rn=Qitess rt=969981549 rg=suche-biete
~#! tid=969886357
Ich biete 100 (einhundert) Deutsche Pfennige fuer das halbe Zentner
Magic-Karten. Versandkosten gehen zu Lasten des Versenders, gelle?

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: magic-karten (Yendi, 27. Sep 2000, 16:38:20):
~#! rn=Grimmborn rt=969990657 rg=suche-biete
~#! tid=969886357
Da nehme ich doch lieber die 1000 Muenzen. Zehn-DM-Stuecke, wenn's beliebt;
ich uebernehme auch das Porto.

YTY


-----------------------------------------------------------------------------



Re^5: magic-karten (Qitess, 29. Sep 2000, 18:48:48):
~#! rn=Yendi rt=970065500 rg=suche-biete
~#! tid=969886357
also ich dachte da eher an 1000 deutsche kupfermuenzen...steht ne eins
drauf...
QI**

-----------------------------------------------------------------------------



monkey isle (island?) (Stopdenbus,  3. Okt 2000, 20:35:55):
Hi !
Kennt wer noch das Spiel monkey isle mit guybrush treepwood oder aehnlich...
Ich hab das bei mir wieder entdeckt, den ersten Teil, leider ohne
Kopierschutzabfrage (welcher Pirat wurde wann gehaengt ...)
Hat das noch wer und kanns mir geben/mailen/faxen/schicken/erzaehlen ?

Dank schonmal !

Stoppi

-----------------------------------------------------------------------------



Monitor&Rottoene (Dante,  4. Okt 2000, 09:45:46):
Mein Monitor verliert in letzter Zeit immer oefter die Rottoene. Ab und an
wird das Bild dann wieder
normal. Was kann die Ursache dafuer sein bzw was kann der Spass bei ner
Reparatur ca kosten?
Danke.
Dante, will endlich wieder Rotsehen:-)

-----------------------------------------------------------------------------



Re: Monitor&Rottoene (Ronda,  4. Okt 2000, 11:22:58):
~#! rn=Dante rt=970645546 rg=suche-biete
~#! tid=970645546
Tja, da gibts mehrere moegliche Ursachen, wenn Du Glueck hast, ists was
eifncahes: wackel mal ab Kabel ;-) Kontaktproblem am Stecker oder vielleicht
nen Kabelbruch einer Litze (passiert bei uns im Poolraum immer mal).
Alle anderen moeglichen Fehler sind IMHO teuer ;-(

Ronda drueckt die Daumen...

-----------------------------------------------------------------------------



Java-Programmierer gesucht! (Jof, 13. Okt 2000, 09:45:41):

Hallo,

wenn Du Java programmieren kannst und einen Fulltime- (Fullmoney:))- Job
in einem jungen Team suchst, dann solltest Du Dich so bald wie moeglich
bei uns per Email oder Telefon bei uns melden. Deine Aufgabe waere es,
fuer unsere Kunden ECommerce-Applikationen zu entwickeln. Die Platformen,
die zum Einsatz kommen, sind Apache-Tomcat unter Linux mit Adabas D und
IBM WebSphere unter AIX mit DB2 (auf AIX und OS/390).

 Du erreichst uns unter:
0251-98725-14 (Nemesis, Heiner Juenemann) 
oder per Email unter fraune@trisinus.de oder juneman@trisinus.de.

 Bis demnaechst,

 Jof

-----------------------------------------------------------------------------



Wohnung in Giessen gesucht (Ronda,  2. Nov 2000, 23:20:29):
Hi,

einer Bekannten hatte ich vor ewigen Jahren mal das Morgengrauen gezeigt und
sie damit ein paar Naechte lang damit vom Schlafen abgehalten... (ej, nicht
was Ihr denkt! Nur mudden!)

Nun sprachen wir grade wieder ueber das Morgengrauen - sie war total baff,
dass es das MG noch gibt ;-) Und irgendwie kamen wir drauf, dass man ueber das
MG so viele Leute quer durch Deutschland kennt... und von da war der Weg dann
nicht mehr weit, dass sie bald nach Giessen ziehen muss und da eine Wochnung
sucht. (Also ich finde, dass das sehr wohl einen logischen Zusammenhang hat...
oder so... naj... ein bisschen logisch ist das doch schon, oder?)
Egal wie: Nun wuerd' ich ihr gern beweisen, dass das Morgengrauen kein
bisschen alt geworden ist - sondern so genial, dass man darueber sogar ne Bude
in Giessen finden, halt was halbwegs anstaendiges fuer eine echte
Diplom-Ingenieurin, gross genug fuer eine ganze Person (keine untervermietete
Speisekammer!) und nicht gar so teuer.

Es waere absolut genial, wenn Ihr Ideen dazu wuesstet - ganz herzlichen Dank
schon jetzt dafuer,

Ronda

-----------------------------------------------------------------------------



Re: Wohnung in Giessen gesucht (Liara,  2. Nov 2000, 23:35:57):
~#! rn=Ronda rt=973203629 rg=suche-biete
~#! tid=973203629
Hm, also Du willst mit ihr ins Bett. Soviel hab' ich kapiert.

... Aber wieso braucht ihr dafuer 'ne Wohnung in Giessen? ;-)

LZ

-----------------------------------------------------------------------------



Re: Re: Wohnung in Giessen gesucht (Grimmborn,  2. Nov 2000, 23:38:48):
~#! rn=Liara rt=973204557 rg=suche-biete
~#! tid=973203629
Ein kluger Mann haelt sich immer einen Fluchtweg offen.

GdA

-----------------------------------------------------------------------------



Re: Re: Wohnung in Giessen gesucht (Ronda,  2. Nov 2000, 23:39:40):
~#! rn=Liara rt=973204557 rg=suche-biete
~#! tid=973203629
Liara, verrat nicht immer alles. Und wolltest DU nicht nach Giessen ziehen?!

Ronda *FRAUEN!*

-----------------------------------------------------------------------------



Re^3: Wohnung in Giessen gesucht (Foobar,  2. Nov 2000, 23:40:14):
~#! rn=Ronda rt=973204780 rg=suche-biete
~#! tid=973203629
Ach, Liara ist die Bekannte?

Foobar - kommt nicht mehr mit

-----------------------------------------------------------------------------



Re^4: Wohnung in Giessen gesucht (Liara,  2. Nov 2000, 23:40:50):
~#! rn=Foobar rt=973204814 rg=suche-biete
~#! tid=973203629
Noe, ich habe ne Bude in Bonn. ;-)

LZ

-----------------------------------------------------------------------------



Re^4: Wohnung in Giessen gesucht (Ronda,  2. Nov 2000, 23:41:08):
~#! rn=Foobar rt=973204814 rg=suche-biete
~#! tid=973203629
Ej, schmarrnt nicht alle in dem Thread rum - nur weil Liaralein Artikel
wollte... ts!

Und ich such wirklich ne Bude fuer eine Bekannte - ohne Hintergedanken ;-)

Ronda - einfach so nett.

-----------------------------------------------------------------------------



Re^5: Wohnung in Giessen gesucht (Montanus,  3. Nov 2000, 00:02:59):
~#! rn=Ronda rt=973204868 rg=suche-biete
~#! tid=973203629

kwer in giessen
      Liste der Mitspieler vom Fre,  3. Nov 2000, 00:01:49 (2 Teilnehmer)

*Liara..........wS *Ronda...........M

-----------------------------------------------------------------------------



winsock2 (Birdy, 15. Nov 2000, 21:10:37):
suche winsock2 fuer win98
gibts das ueberhaupt schon ?

-----------------------------------------------------------------------------



Re: winsock2 (Pilgrim, 16. Nov 2000, 17:42:58):
~#! rn=Birdy rt=974319037 rg=suche-biete
~#! tid=974319037
> suche winsock2 fuer win98
> gibts das ueberhaupt schon ?

http://www.tucows.de/files/ws2setup.exe

Olaf

-----------------------------------------------------------------------------



stuttgart (Birdy, 21. Nov 2000, 18:08:26):
hiho !

ich such ne moeglichst billige uebernachtungsmoeglichkeit in stuttgart fuer
eine woche anfang oder mitte dezember.
n bissel komfort wird aber schon verlangt :)

bye
birdy

-----------------------------------------------------------------------------



Heute suche ich mal ne Wohnung... ;) (Zook, 12. Dez 2000, 14:44:14):
Hi, heute suche ich mal fuer nen Bekannten ne Wohnung *grins Ronda* und
zwar in Frankfurt/Main, am besten 1 ZKB unter 1.000 DM nicht zu weit
vom Zentrum entfernt, d.h. schnell U- oder S-Bahn-Anbindung erwuenscht.

Ueber Tips wuerde ich mich freuen!

Gruss, Zook.

-----------------------------------------------------------------------------



noten gesucht! (Rayzeel, 24. Dez 2000, 21:56:12):
Hallo Leute,

Ich suche verzweifelt die Klaviernoten fuer 'Walking in Memphis' von Marc
Cohn. Hat die vielleicht jemand von Euch?

Gruss, Ray**

-----------------------------------------------------------------------------



Re: noten gesucht! (Rochus, 25. Dez 2000, 11:24:01):
~#! rn=Rayzeel rt=977691372 rg=suche-biete
~#! tid=977691372
Hast Du schon mal versucht, das
als MIDI-File zu finden?
Dadurch kannst Du naemlich auch an die Noten rankommen...

  Rochus

-----------------------------------------------------------------------------



Re: Re: noten gesucht! (Cymonk, 25. Dez 2000, 23:25:25):
~#! rn=Rochus rt=977739841 rg=suche-biete
~#! tid=977691372
z.b.
http://ireland.iol.ie/~shane/music_midi.htm

eine seite unter vielen ...

gruss,
cy

-----------------------------------------------------------------------------



Kein (Linflas, 30. Dez 2000, 19:50:59):

[Seher:Tiamak] biete Crash, suche Bugfix ]:->

Linflas, denkt nur schmarrn.

-----------------------------------------------------------------------------



Netzteil fuer Toshiba Portege 300CT (Anatol, 20. Jan 2001, 14:29:14):
Suche Netzteil fuer Toshiba Portege 300CT. Und vermutlich werde ich
auch ein externes Floppy/CD-Rom suchen, aber das weiss ich erst, wenn
ich das Netzteil habe und weiss, dass die Kiste tut... ;)

Anatol

-----------------------------------------------------------------------------



Internet Professionell 8/2000 (Ronda, 24. Jan 2001, 15:31:14):
Hi,

hat vielleicht jemand von Euch die Zeitung Internet Professionell 8/2000 noch
irgendwo? Ich hab' eine kleine Frage zu einem bestimmten Artikel und find' die
Zeitung hier nirgendwo ;-(

Ueber Hilfe riesig dankbar,

Ronda

-----------------------------------------------------------------------------



Latex-Editor fuer Windows (Daria, 25. Jan 2001, 14:08:01):
Huhu,
kennt jemand von Euch einen schicken, halbwegs komfortablen Editor unter
Windows, der Syntax-Highlighting bei .tex-Dateien macht - und moeglichst auch
noch Freeware ist?
Ok, vielleicht ein paar viele Wuensche auf einmal ;-)))

Es ist fuer Win97.

Danke,
Daria
PS: Aussagen wie "nimm Linux oder Unix" oder "schmeiss mal Yahoo an" helfen
mir NICHT weiter.

-----------------------------------------------------------------------------



Re: Latex-Editor fuer Windows (Zook, 25. Jan 2001, 14:08:31):
~#! rn=Daria rt=980428081 rg=suche-biete
~#! tid=980428081
Es gibt wohl XEmacs auch fuer Windows, der kann dann alles. :)

Zook.

-----------------------------------------------------------------------------



Re: Re: Latex-Editor fuer Windows (Daria, 25. Jan 2001, 14:09:19):
~#! rn=Zook rt=980428111 rg=suche-biete
~#! tid=980428081
Ich MAG xemacs, den nehm ich in der Uni auch immer.
Aber wo kann ich den runterladen?
Und ist der kostenlos?

Daria

-----------------------------------------------------------------------------



Re: Re: Latex-Editor fuer Windows (Foobar, 25. Jan 2001, 14:09:53):
~#! rn=Zook rt=980428111 rg=suche-biete
~#! tid=980428081
UltraEdit32 oder TextPad sollten das koennen, evtl. musst Du dir die
Rule-Files selber schreiben...

Foobar

-----------------------------------------------------------------------------



Re: Re: Latex-Editor fuer Windows (Silvana, 25. Jan 2001, 14:09:57):
~#! rn=Zook rt=980428111 rg=suche-biete
~#! tid=980428081
Textpad ist zwar nicht freeware, aber Shareware und (fast) uneingeschraenkt
dauerhaft nutzbar. Dem kann man sicher auch .tex-Highlighting beibringen.

  Silvana

-----------------------------------------------------------------------------



Re: Latex-Editor fuer Windows (Muadib, 25. Jan 2001, 14:15:14):
~#! rn=Daria rt=980428081 rg=suche-biete
~#! tid=980428081
hi,

versuch mal den textpad (www.textpad.com), dafuer sollte es auch ein
tex-syntaxfile geben

gruss

muadib

-----------------------------------------------------------------------------



Re^3: Latex-Editor fuer Windows (Daria, 25. Jan 2001, 14:15:24):
~#! rn=Silvana rt=980428197 rg=suche-biete
~#! tid=980428081
Danke schoen an alle fuer die schnelle Hilfe! Auf die einfachsten Dinge wie
www.xemacs.org kommt man natuerlich nicht selbst ;-)
*knuddel*
Daria

-----------------------------------------------------------------------------



Re^3: Latex-Editor fuer Windows (Rikus, 25. Jan 2001, 14:16:55):
~#! rn=Daria rt=980428159 rg=suche-biete
~#! tid=980428081
http://www.gnu.org/software/emacs/windows/ntemacs.html

Rikus

-----------------------------------------------------------------------------



Re: Latex-Editor fuer Windows (Vanion, 25. Jan 2001, 16:39:19):
~#! rn=Daria rt=980428081 rg=suche-biete
~#! tid=980428081
Also ich war immer mit WinEdt zufrieden. Insbesondere in Kombination mit
miktex is der Editor sehr komfortabel und leistungsfaehig.

V*

http://www.winedt.com/
http://www.miktex.org/
oder bei dante vorbeischauen *g*

-----------------------------------------------------------------------------



Re: Re: Latex-Editor fuer Windows (Troy, 25. Jan 2001, 18:20:56):
~#! rn=Vanion rt=980437159 rg=suche-biete
~#! tid=980428081
Gibts nicht auch Lyx fuer Windows? Zumindest gibts Lyx fuer Cygwin und Cygwin
fuer Windows (siehe sourceware.cygnus.com fuer Cygwin, www.lyx.org fuer Lyx).

Dort (www.lyx.org/download) gibts auch den Lyx Port fuer Windows.

Einfach mal reinschaun

Troy

-----------------------------------------------------------------------------



Re: Latex-Editor fuer Windows (Ronda, 25. Jan 2001, 20:17:45):
~#! rn=Daria rt=980428081 rg=suche-biete
~#! tid=980428081
Hi,
so richtig schick ist er vielleicht nicht, aber recht klein, praktisch und
passt zu MikTex:
WinShell, http://www.WinShell.de

Viel Spass beim Austesten,

Ronda

Ps: Benutzt Du unter Win auch MikTex oder gibts da was sinnvolleres?

-----------------------------------------------------------------------------



Re: Re: Latex-Editor fuer Windows (Daria, 26. Jan 2001, 12:57:33):
~#! rn=Ronda rt=980450265 rg=suche-biete
~#! tid=980428081
Also ich hab miktex.
Daria

-----------------------------------------------------------------------------



Forscher Gesucht (Tower, 28. Jan 2001, 16:17:03):
Nachdem ich vor einiger Zeit erfolgreich die Auge des Teufels-Quest gloest
habe sind immer noch ein paar Fragen offen, die ich gerne noch geklaert
haette.
Wer meint sie sehr gruendlich gespielt und viel geforscht zu haben moege sich
bitte bei mir melden und bekommt dann eine Mail mit der Liste der Fragen.

Tower

PS 
Die Fragen beziehen sich auf Dinge, die nicht zum Loesen der Quest noetig sind
und stellen daher keine Hilfe da. Sie aus diesem Grund anzufordern lohnt daher
nicht.

-----------------------------------------------------------------------------



Mitspieler gesucht! :) (Ancalagon,  6. Feb 2001, 21:18:19):
Halloechenknuddels allerseits! Ich suche noch ein paar Mitspieler fuer ne
Runde VGA-Planets! Da wir alle (auch ich als Host) noch relativ unerfahren
sind, am besten ebenfalls anfaenger oder Experten, die bereit sind auch mal
ein paar Tips und Tricks abzugeben....
Meldungen mit Rassenwunsch bitte an 

tenor@bitel.net

Danke allerseits!!!

Ancalagon
Dracoknuddellensis major

-----------------------------------------------------------------------------



Re: Mitspieler gesucht! :) (Yendi,  7. Feb 2001, 11:27:52):
~#! rn=Ancalagon rt=981490699 rg=suche-biete
~#! tid=981490699
Nimm lieber "stars!", das macht mehr Spass.

YTY


-----------------------------------------------------------------------------



Spracherkennungsprogramm (Dante,  9. Feb 2001, 08:44:32):
Ich suche ein brauchbares Spracherkennungsprogramm, das aber nicht den
Preis eines Einfamilienhauses haben soll, trotzdem aber gut sein sollte.
Es muss eigentlich "nur" das gesprochene korrekt in Text umwandeln koennen,
bescheiden wie ich bin will ich nicht mehr.
Kann mir jem was empfehlen, hat da jem Erfahrungen dazu?
Aja, ob fuer Win oder Linux waer mir egal...
danke

-----------------------------------------------------------------------------



Re: Spracherkennungsprogramm (Dreamer, 10. Feb 2001, 00:47:39):
~#! rn=Dante rt=981704672 rg=suche-biete
~#! tid=981704672

Nun,

dann wuerde ich auf Anhieb mal Dragon Dictate in der Version von mind. 5 sehr
empfehlen. Bei eingermassen gutem hochdeutsch kann man damit fliessend
diktieren ohne Pausen. Hat eine sehr hohe Erkennungsrate und Vorteil auch ohne
stundenlanges "Beibringen" kann man so quasi gleich loslegen mit diktieren.
Bei der Deluxe Version gibbs auch nen Proggi um sein Win System mit
Sprachbefehlen zu kontrollieren.

Das Programm ist von Dragon Systems und IMHO besser als das IBM ViaVoice.
Ersteres ist auch billiger als das Zweite, sollte "nur" so um die 49.90DM oder
79DM kosten wenn ich mich nicht irre. :)

Gruss, Dreamer

-----------------------------------------------------------------------------



Re: Mitspieler gesucht! :) (Troy, 12. Feb 2001, 11:00:21):
~#! rn=Ancalagon rt=981490699 rg=suche-biete
~#! tid=981490699
Hmm. Mitspielen krieg ich nicht mehr hin. Es waere das 19. Spiel pro Woche...
Braucht ihr vielleicht ggf. ein paar Tools fuer den PHost? Oder macht ihr die
Auswertungen etwa mit dem Tim Wissman host (oh graus)? Fuer Fragen bzgl.
planets steh ich zur Verfuegung. Auch zum autohosten, dann allerdings nur
unter
Linux.

Troy

-----------------------------------------------------------------------------



Suche Mac-Emulator (Gorog, 12. Feb 2001, 17:25:39):
M PC-Emulator fuer nen Mac. Is einfach zu langweilig bei uns im Labor (; Waer
schoen wenn das auch noch freeware waere. Vielen Dank

Gorog, Will PC-Games auf nem Mac

-----------------------------------------------------------------------------



Zelt (Qitess, 12. Feb 2001, 18:36:22):
Hallo.
Ich suche ein Zelt fuer etwa 8-10 personen
es sollte nach moeglichkeit ein 'sudan' oder 'sahara' sein.
wer so eins hat weiss sicherlich, dass damit ein weisses baumwollzelt gemeint
ist (sahara quadratisch, sudan rund)
am liebsten das runde und am liebsten nicht mit nem reissverschluss sondern
mit schlingenverschluss
holz-oder metallgestaenge ist relativ egal
bitte mails an qitess oder festin
QI**

-----------------------------------------------------------------------------



Felle/Leder (Qitess, 12. Feb 2001, 18:39:58):
suche ausserdem alte und neue Kuh-/Pferd-/Katzen-/Maus-/und vor allem
Schaffelle und grosse Lederreste

bitte auch melden bei qitess
QI**

-----------------------------------------------------------------------------



Re: Felle/Leder (Wurzel, 12. Feb 2001, 18:40:54):
~#! rn=Qitess rt=981999598 rg=suche-biete
~#! tid=981999598
frag mal bei der regierung nach. die muessten so ca. 400000 kuhfelle
uebrig haben.

wurzel

-----------------------------------------------------------------------------



Re: Re: Felle/Leder (Silvana, 12. Feb 2001, 20:16:56):
~#! rn=Wurzel rt=981999654 rg=suche-biete
~#! tid=981999598
Irrtum... Die Lederpreise steigen derzeit heftig, weil die Zahl der
Schlachtungen drastisch zurueckgegangen ist. Derzeit hat vermutlich eher
niemand Leder ueber.

  Silvana

-----------------------------------------------------------------------------



Re: Suche Mac-Emulator (Trug, 12. Feb 2001, 22:37:11):
~#! rn=Gorog rt=981995139 rg=suche-biete
~#! tid=981995139
www.bochs.com bzw www.plex86.org


-----------------------------------------------------------------------------



Re: Suche Mac-Emulator (Troy, 13. Feb 2001, 08:47:52):
~#! rn=Gorog rt=981995139 rg=suche-biete
~#! tid=981995139
schau mal unter www.emulation.net nach ;-)

Troy

-----------------------------------------------------------------------------



Re: Felle/Leder (Yendi, 13. Feb 2001, 17:10:02):
~#! rn=Qitess rt=981999598 rg=suche-biete
~#! tid=981999598
Pfadfinder oder Mittelalter?

YTY


-----------------------------------------------------------------------------



Re: Re: Felle/Leder (Qitess, 15. Feb 2001, 17:16:33):
~#! rn=Yendi rt=982080602 rg=suche-biete
~#! tid=981999598
...wie kommst du jetzt auf pfadfinder?
QI** augenzwinkernd

-----------------------------------------------------------------------------



Kennt jemand (Dante, 16. Feb 2001, 07:56:28):
nen mp3 server fuer klassische Musik bzw ne Art napster fuer Klassik.
danke

-----------------------------------------------------------------------------



Re: Kennt jemand (Cymonk, 17. Feb 2001, 00:33:32):
~#! rn=Dante rt=982306588 rg=suche-biete
~#! tid=982306588

mp3.com?!? nein, kein scherz! :)

gruss,
cy

-----------------------------------------------------------------------------



Re: Re: Kennt jemand (Noki, 17. Feb 2001, 13:33:48):
~#! rn=Cymonk rt=982366412 rg=suche-biete
~#! tid=982306588

Nur ein doofer Tip : versuchs mal mit einer der Metasuchmaschinen auf
www.bresso.com - die finden hin und wieder auch Klassisches.

noki

-----------------------------------------------------------------------------



Wohnung in Berlin (Isis, 20. Feb 2001, 20:02:06):
Suche baldmoeglichst eine guenstige 2 Zimmer Wohnung in Berlin. So max. 700 DM
warm.

Wer was weiss, oder ne gute Immobielienverwaltungsgesellschaft kennt, bitte
mail an Hera...

Hera

-----------------------------------------------------------------------------



Icons fuer Mapper gesucht (Mesirii, 25. Feb 2001, 15:48:28):
Da ich meinen Mapper gerne mit nen paar Icons ausstatten wuerde, suche ich 
sowas. Leider hatte ich bisher im Web keinen so richtigen Erfolg.
Da unter Euch ja ne Menge Leute sind, die mit Webseitendesign und so zu tun 
haben, dachte ich, dass ihr da nen paar gute Quellen habt oder kennt.

Also ich brauche zum einem Icons mit denen man Raumtypen darstellen kann.
Strasse, Hoehle, Haus, Wald, Berge, Ebene, Meer, Fluss, Wueste usw.

Ausserdem noch sowas: 
Post, Kneipe, Tanke (vielleicht ne Art Heilquelle oder so), Icons fuer NPCs,
fuer den Spieler selber, Laden, Portale, Gilden ...

Also wer mir da helfen koennte, kriegt nen dickes Dankeschoen :)

Mesirii

-----------------------------------------------------------------------------



Wohnung in Marburg (Kartoffel, 26. Feb 2001, 22:19:25):
 Hi Ihrs,

mein Mann faengt am 1.4. in Marburg als PostDoc an, deswegen suchen wir
uebergangsweise eine moeglichst moeblierte Wohnung (1-2 Zimmer), wer was
weiss, oder einen kennt, der was weis, oder... bitte mail an mich.

'Toffel

-----------------------------------------------------------------------------



Job im Muenchen fuer Grafiker? (Hobo,  2. Mar 2001, 14:02:24):
Ein Freund (Grafiker) sucht einen Job in Muenchen.
Falls zufaellig einer von Euch was wuesste, waere es klasse, wenn er mir
bescheid sagen wuerde.
Falls zufaellig einer von Euch was wuesste, waere es klasse, wenn er mir
bescheid sagen wuerde.
Danke

    Hobo

-----------------------------------------------------------------------------



Laptop (Liara,  2. Mar 2001, 18:47:33):
Hat jemand einen gebrauchten Laptop rumstehen und moechte ihn gerne loswerden?

LZ, erstmal pauschal

-----------------------------------------------------------------------------



Lied gesucht... (Dante,  3. Mar 2001, 18:57:41):
Weiss jem von wem das Lied aus der Leviswerbung ist bei der eine Frau und
ein Mann sich in der Ubahn begegnen usw...aus dieser Twisted..Reihe...
bzw wie das Lied heist.
tnx

-----------------------------------------------------------------------------



Re: Lied gesucht... (Solmyr,  3. Mar 2001, 18:58:29):
~#! rn=Dante rt=983642261 rg=suche-biete
~#! tid=983642261
Die Rubrik heisst Suche-Biete :) Was bietest Du fuer diese Information?

Sol

-----------------------------------------------------------------------------



Re: Re: Lied gesucht... (Dante,  3. Mar 2001, 18:59:03):
~#! rn=Solmyr rt=983642309 rg=suche-biete
~#! tid=983642261
Dir kleiner Sol ein paar auf den Po...
:-)

-----------------------------------------------------------------------------



Simulationsprogramm gesucht (Atoz,  5. Mar 2001, 13:59:18):
Moin!
Kennt einer eine Seite im Netz auf der man sich Simulationen fuer
Laue-Aufnahmen anzeigen lassen kann?
Wahlweise suche ich auch eine bereits indizierte Aufnahme von NaCl in Richtung
100 aufgenommen...
Gruss, Atoz

-----------------------------------------------------------------------------



Re: Simulationsprogramm gesucht (Morgoth,  5. Mar 2001, 14:31:10):
~#! rn=Atoz rt=983797158 rg=suche-biete
~#! tid=983797158
Hmm, in welchem Format brauchst du das? Ich hab ein programm dass dir aus EZ
und h,k,l,Fo^2,s(Fo^2) sowas bastelt.

M*

-----------------------------------------------------------------------------



Re: Simulationsprogramm gesucht (Pilgrim,  7. Mar 2001, 19:49:43):
~#! rn=Atoz rt=983797158 rg=suche-biete
~#! tid=983797158
>> Laue-Aufnahmen anzeigen lassen kann?

Aeh ... da ich noch nie Laueaufnahmen gemacht hab' (ausser vielleicht
mal in nem Praktikum) und gerde kein Buch zu Hand hab' weiss
ich zwar nicht ganz genau, was Du suchst, aber
http://www.geol.uni-erlangen.de/html/software/soft.html
ist ein guter Startpunkt.

Powder Cell fuer Pulverdiffraktogramme aus Einkristalldaten und Anpassung
experimenteller Beugungsaufnahmen ganz net, siehe ...
http://www.bam.de/php/loadframe.php?a=http://www.bam.de/service/publikationen/
software_i.htm

Pilgrim

-----------------------------------------------------------------------------



Re: Simulationsprogramm gesucht (Apsu, 11. Mar 2001, 13:12:10):
~#! rn=Atoz rt=983797158 rg=suche-biete
~#! tid=983797158
Wenns an Deiner Unie Fachschaft Geologie oder besser gar Mineralogie gibt,
frag mal. Die werden dich mit nicht mehr gebrauchten Aufnahmen zuschmeissen
koennen, dass Du nen Tieflader brauchst.

Apsu

-----------------------------------------------------------------------------



Re: Re: Simulationsprogramm gesucht (Atoz, 12. Mar 2001, 12:54:24):
~#! rn=Apsu rt=984312730 rg=suche-biete
~#! tid=983797158
Aeh ja, Klasse Idee, vor allem, weil ich selber Mineralogie studiere und mir
eeigentlich nur ein bisschen Arbeit beim Auswerten sparen wollte.
Ich habe halt ein Programm gesucht, dass mir die moeglichen auftretenden
Reflexe ausspuckt, die bei einer Laue-Aufnahem in Richtung (100) bei NaCl
auftreten. (Ich bin eben faul, aber ich steh dazu ;))) )
Gruss, Atoz

-----------------------------------------------------------------------------



Re^3: Simulationsprogramm gesucht (Noki, 12. Mar 2001, 13:01:07):
~#! rn=Atoz rt=984398064 rg=suche-biete
~#! tid=983797158
hilft das?

 http://www.nirim.go.jp/~weber/dos/koqua.html

noki, nur einen schuss ins blaue wagend...

-----------------------------------------------------------------------------



Kampfzwerge (Solmyr, 12. Mar 2001, 17:02:28):
Hoi, ich bin gleich auf'm Weg zum Tattoostudio und da ich eben auf der
Ebene keine Antwort erhalten habe, frag ich mal hier :) Ich suche fuer'n
Tattoo auf meiner Schulter oder woanders einen Kampfzwerg und braeuchte
davon ein paar Motive. Falls jemand da ne url hat, bitte eine Mail an mich.

Thx Sol*

-----------------------------------------------------------------------------



Re: Kampfzwerge (Troy, 13. Mar 2001, 09:10:52):
~#! rn=Solmyr rt=984412948 rg=suche-biete
~#! tid=984412948
Argl. Ich hab alles moegliche hier, nur keine Zwerge (Das sollte jetzt KEINE
Diskriminierung sein!). Versuchs mal unter ftp://ftp.sunet.se/pub/pictures
und dann fantasy oder so. Da liegt tonnenweise Zeug, u. a. der komplette
Boris Vallejo.

Troy

-----------------------------------------------------------------------------



Re: Re: Kampfzwerge (Wurzel, 13. Mar 2001, 20:49:17):
~#! rn=Troy rt=984471052 rg=suche-biete
~#! tid=984412948
zu tattoos kann ich www.tattoonet.de empfehlen. auch fuer kampfzwerge :)

wurzel

-----------------------------------------------------------------------------



CRACK (Zarniya, 15. Mar 2001, 14:30:38):

Hi, 

ich suche die neuste Version von Crack, bitte mit Quelle zum download....
bitte mail an mich....

Marc

-----------------------------------------------------------------------------



Re: CRACK (Wurzel, 15. Mar 2001, 21:34:41):
~#! rn=Zarniya rt=984663038 rg=suche-biete
~#! tid=984663038
hm...
empfehle den freundlichen dealer an der ecke. ob der allerdings das
zeug zum downloaden aufbereitet, bezweifel ich.

wurzel

-----------------------------------------------------------------------------



Sockel7-Mainboard (Grimman, 19. Mar 2001, 21:08:48):
Also das Ding is folgendes ... Mein gutes Asus P5A hat den Dienst quittiert ,
und nu brauch ich recht dringend nen Sockel7 Mainboard.
Vielleicht hat ja jemand noch was nettes rumliegen, was er nich mehr braucht
...
Waere nett, wenn sich betreffende Personen an mich wenden

Vielen Dank
GrimMan
GrimMan
Ach ja : MBIMG !!!

-----------------------------------------------------------------------------



Cebit (Amaryllis, 24. Mar 2001, 15:11:09):
Hiho,

faehrt noch jemand, der ungefaehr auf der Achse Bodensee-Hannover wohnt, die
naechsten Tage noch zur Cebit?
Falls ja, bitte bei mir melden - ich haette Interesse an einer
Fahrgemeinschaft.

Gruss,
Ama*

-----------------------------------------------------------------------------



Vampire Spielerhandbuch (Rayzeel, 29. Mar 2001, 00:48:46):
Hallo,

Ich suche *dringend* das Vampire-Spielerhandbuch (2. Edition), das leider
out-of-print ist. Ich zahle bis 50,- DM.

Vielen Dank im Voraus, Ray**

P.S. Ja, bei e-bay und Co. hab ich's schon versucht :)

-----------------------------------------------------------------------------



DVD-Player (Ringor, 24. Apr 2001, 22:40:05):
Hiho!

Ich wuerde mir gerne einen Standalone-DVD-Player kaufen, aber irgendwie
scheine ich zu anspruchsvoll zu sein. ;-) Nach-/Umruestsaetze gegen
Regionalcode-Abfragen und Macrovision bekommt man ja mittlerweile fuer fast
jedes Modell, aber was ich ebenfalls dringend abgeschaltet haben moechte, ist
die sogenannte "User Operation Prohibition" (UOP). 

Leider habe ich bisher nur fuer Sony-DVD-Player entsprechende Modifikationen
gefunden. Dummerweise koennen die Sonys aber keine CD-R/CD-RW abspielen. Ich
brauch zwar nicht unbedingt nen MP3-Player, aber selbstgebrannte Video-CDs
sollte das Teil schon abspielen koennen ...

Also: gibt es die eierlegende Wollmilchsau unter den DVD-Playern, oder bin ich
einfach zu anspruchsvoll?


Ciao, Ringor

P.S: Wem "UOP" nix sagt: das sind die kleinen Nettigkeiten, mit denen die 
     Filmfirmen dafuer sorgen, dass man manche Sequenzen (Werbung,
     FBI-Warnung etc.) nicht ueberspringen kann, zwischen verschiedenen
     Sprachversionen nur im Hauptmenue wechseln kann anstatt direkt ueber die
     Fernbedienung oder - besonders aergerlich - bei der Originalfassung 
     "aus lizenzrechtlichen Gruenden" zwangsweise Untertitel eingeblendet 
     bekommt.

-----------------------------------------------------------------------------



Re: DVD-Player (Gnome, 25. Apr 2001, 00:06:51):
~#! rn=Ringor rt=988144805 rg=suche-biete
~#! tid=988144805
also ich hab hier mal ein paar geraete, die du naeher betrachten koenntest:

- philips dvd-960 (um 1500,-)
- philips dvd-1010 (um 2000,-)

sehen gut aus, koenne R und RW abspielen, super sound- und tonqualitaet,
ausgaenge: AC-3, MPEG, PCM, DTS. was mit UOP ist, weiss ich nicht.

gnOme

-----------------------------------------------------------------------------



Re: Re: DVD-Player (Anacrion, 25. Apr 2001, 00:08:59):
~#! rn=Gnome rt=988150011 rg=suche-biete
~#! tid=988144805
Also im Vergleich zu DVD-Laufwerken ist das ja schon recht teuer ...

-----------------------------------------------------------------------------



Re^3: DVD-Player (Pilgrim, 25. Apr 2001, 13:53:14):
~#! rn=Anacrion rt=988150139 rg=suche-biete
~#! tid=988144805
Hmmm, Anacrion,

eierlegende Wollmilchsau und billig ... das schliesst sich irgendwie aus ...
Selbst preiswert ist schon sonne Sache ...

Pilgrim

-----------------------------------------------------------------------------



Re^4: DVD-Player (Catweazle, 25. Apr 2001, 14:06:57):
~#! rn=Pilgrim rt=988199594 rg=suche-biete
~#! tid=988144805
Und jetzt nimmste noch den mangelden Standard mit dazu und schon wuerd ich
niemals mehr solche Preise fuer ein vielleicht schon bald ueberfluessiges
Geraet ausgeben.
Solange jeder seine eigenen RW's braet sind mir vierstelligen Summen deutlich
zu hoch. In zwei Jahren vielleicht. Bis dahin muss ich mich wohl mit meinem
DVD-ROM zufrieden geben, das sind wenigstens nur 200 potentiell rausgeworfene
Maerker.

Yours truly,
     Catweazle

PS: Jaaaa, ich weiss wie man 'potent' ausspricht, ich bin aber ignorant.

-----------------------------------------------------------------------------



Re^5: DVD-Player (Ringor, 25. Apr 2001, 20:31:24):
~#! rn=Catweazle rt=988200417 rg=suche-biete
~#! tid=988144805
Also die eierlegende Wollmilchsau darf ruhig etwas kosten. Mit 1000-1500,-DM
rechne ich sowieso. Jajaja, ein DVD-Rom ist billiger. Hab ich auch schon. Aber
der passende schnelle Rechner drum herum ist noch was teurer - vom fehlenden
Komfort ganz zu schweigen ...

Der Tip mit den Philips-Geraeten war schon gut, aber leider lassen sich die
laestigen Einschraenkungen dabei auch mit Umruestsatz nicht abschalten. :-(


Ringor sucht weiter.

-----------------------------------------------------------------------------



artikel gesucht!!!! (Ancalagon,  1. Mai 2001, 09:46:55):
Halloechenknuddels!
Ich habe gerade einen netten Artikel gelasen mit Namen "20 rules for the
blues" oder so....
Leider hatte ich vergessen mir den rueberzuziehen.
Da ich jetzt vom rechner weg muss, koennte bitte der Autor (wars LiOCOCoder
jemand andres nettes mir den Artikel mal zumailen????
Das waere total nett, ey! :)

Reichlichste Dankesknuddels vorweg!
Ancalagon

-----------------------------------------------------------------------------



Re: artikel gesucht!!!! (Anatol,  1. Mai 2001, 14:26:50):
~#! rn=Ancalagon rt=988703215 rg=suche-biete
~#! tid=988703215
Done.

-----------------------------------------------------------------------------



CREATIVE LIVE PLAYER 1024 (PCI) (Gnome,  3. Mai 2001, 00:13:21):
biete o.g. artikel fuer 100,- incl. verpackungs-/versandkosten :)

gnOme

-----------------------------------------------------------------------------



Re: CREATIVE LIVE PLAYER 1024 (PCI) (Muadib,  3. Mai 2001, 10:58:03):
~#! rn=Gnome rt=988841601 rg=suche-biete
~#! tid=988841601
bulk oder retail?

-----------------------------------------------------------------------------



Re: Re: CREATIVE LIVE PLAYER 1024 (PCI) (Pilgrim,  3. Mai 2001, 12:02:43):
~#! rn=Muadib rt=988880283 rg=suche-biete
~#! tid=988841601
Wenn er schon gelesen wurde ... ist er schon gebraucht!

Pilgrim

-----------------------------------------------------------------------------



Re^3: CREATIVE LIVE PLAYER 1024 (PCI) (Muadib,  3. Mai 2001, 13:57:05):
~#! rn=Pilgrim rt=988884163 rg=suche-biete
~#! tid=988841601
die antwort versteh ich nun nicht. erklaer mal bitte.

-----------------------------------------------------------------------------



Re: Re: CREATIVE LIVE PLAYER 1024 (PCI) (Gnome,  3. Mai 2001, 23:58:38):
~#! rn=Muadib rt=988880283 rg=suche-biete
~#! tid=988841601
du bekommst die karte incl. der treiber-CD. entscheide selbst, ob bulk
oder retail... :)

gnOme

-----------------------------------------------------------------------------



canon-kamera (Gnome,  9. Mai 2001, 01:46:58):
biete canon-kamera "elph lt260", ein jahr alt. preis VB.

gnOme

-----------------------------------------------------------------------------



Re: canon-kamera (Grimmborn,  9. Mai 2001, 08:58:18):
~#! rn=Gnome rt=989365618 rg=suche-biete
~#! tid=989365618
Fuempf Maack.

GdA

-----------------------------------------------------------------------------



Re: Re: canon-kamera (Montanus,  9. Mai 2001, 15:29:55):
~#! rn=Grimmborn rt=989391498 rg=suche-biete
~#! tid=989365618
Fuempf Maack Pfirsich.

-----------------------------------------------------------------------------



Name vom Maus-Elefanten? (Jameson, 10. Mai 2001, 14:30:51):
Hat der blaue Elefant aus der Sendung mit der Maus eigentlich einen Namen?
Auf der Maus-Seite ist schon mal nix zu finden.
Brauch ich fuer eine Art Quiz :)

jAmeson, Maus-Fan

-----------------------------------------------------------------------------



Re: Name vom Maus-Elefanten? (Linflas, 10. Mai 2001, 14:57:12):
~#! rn=Jameson rt=989497851 rg=suche-biete
~#! tid=989497851
Na der Elefant heisst Elefant. Die Maus heisst ja auch Maus und hat keinen
bestimmten Namen. "Die Sendung mit der Maus und dem Elefanten"
Linflas, weiss sowas.

-----------------------------------------------------------------------------



Re: Name vom Maus-Elefanten? (Ancalagon, 11. Mai 2001, 17:26:23):
~#! rn=Jameson rt=989497851 rg=suche-biete
~#! tid=989497851
halloeleknuddels!
Der kleine blaue Elefeant ist einfach der kleine blaue elefant. Auch ohne
Namen! :)
Knuddels,

Ancalagon (Maus-Fan) :)

-----------------------------------------------------------------------------



Kabel fuer 3Com PC-Card (Mesirii, 22. Mai 2001, 22:16:17):
Hallo,
mir ist vor einer Weile das Kabel zu einer EtherLinkIII von 3Com (3C589C)
kaputtgegangen. Da der Fachhandel mit 80 Mark genausoviel dafuer haben
will, wie ne neue No-Name kostet, wollte ich fragen ob zufaellig einer
von euch so nen Kabel ueber hat. Wenn nicht, wuerde ich die Karte abgeben :)
Um den Preis wird dann gefeilscht.
Mesi

-----------------------------------------------------------------------------



Re: Kabel fuer 3Com PC-Card (Grimmborn, 22. Mai 2001, 23:58:53):
~#! rn=Mesirii rt=990562577 rg=suche-biete
~#! tid=990562577
Nur weil ich mir wenig drunter vorstellen kann, fuer mich sind Ethernetkabel
eigentlich bisher immer low cost Artikel gewesen: Was ist an dem Kabel so
besonderes? 

GdA

-----------------------------------------------------------------------------



Re: Re: Kabel fuer 3Com PC-Card (Mesirii, 23. Mai 2001, 00:21:59):
~#! rn=Grimmborn rt=990568733 rg=suche-biete
~#! tid=990562577
Hmm frag mich nich, aber das Zeugs ist wie Druckerpatronen wahrscheinlich ne
Lizenz zum Gelddrucken.
Das ist so ne kleine Kabelpeitsche fuer PCMCIA Karten!! Kein normales TP oder
BNC Kabel :)
Und die PCMCIA Karten haben zwar denselben Stecker aber die moegen die
Adapter-
kabel der andern nich.
Mesi

-----------------------------------------------------------------------------



Berlin Kurzurlaub (Zarniya,  7. Jun 2001, 12:47:14):
Hallo, 

ich suche fuer Berlin mitte eine uebernachtungsmoeglichkeit, also kleines
Hotel oder aehnlich ... sollte wirklich preiswert sein, aber dennoch keine
ueble Absteige. Wenn einer von euch infos dazu hat, dann bitte mail an mich.

Danke, 
Marc

-----------------------------------------------------------------------------



Rotkaeppchen (Orktoeter, 10. Jun 2001, 23:39:30):

Ich such noch Versionen von Rotkaeppchen. Wer welche hat oder weiss wo solche
im Web zu finden sind... bitte Mail an mich.
 
Orktoeter.

-----------------------------------------------------------------------------



ANNO 1602 (Orktoeter, 12. Jun 2001, 08:53:24):
Suche oben genanntes Spiel.
Wer es also schon durchgespielt hat, oder einfach keine Lust mehr es
weiterzuspielen... mail mit Angebot an mich.

Orktoeter.

-----------------------------------------------------------------------------



Re: ANNO 1602 (Catweazle, 12. Jun 2001, 08:57:02):
~#! rn=Orktoeter rt=992328804 rg=suche-biete
~#! tid=992328804
hab ich, geb ich nicht her :-)

YTC (auf 1503 wartend)

-----------------------------------------------------------------------------



Buffy & Angel (Morgoth, 12. Jun 2001, 09:09:01):
Hi,

wenn irgendwer die original Buffy & Angel-Folgen auf CD hat und sie irgendwie
verschicken kann (FTP, Post...) dann melde sich dieser irgendwer doch mal ;-))

M*

-----------------------------------------------------------------------------



Re: Rotkaeppchen (Mupfel, 12. Jun 2001, 22:46:49):
~#! rn=Orktoeter rt=992209170 rg=suche-biete
~#! tid=992209170
telnet al.mud.de 31415 ;)

-mupfel-

-----------------------------------------------------------------------------



Office 2000 (Apsu, 14. Jun 2001, 07:46:03):
Suche ein Office 2000-Paket. Jeder sagt mir, man kann es problemlos auftreiben
aber niemand hat es ;-)

Angebote bitte per mail an mich :)
Apsu

-----------------------------------------------------------------------------



Re: Office 2000 (Grimmborn, 14. Jun 2001, 09:59:13):
~#! rn=Apsu rt=992497563 rg=suche-biete
~#! tid=992497563
Wieso hat das nicht Dein freundlicher Computerhaendler um die Ecke? Den wuerde
ich doch als erste Anlaufstelle versuchen.

Grimmborn der Atheist

-----------------------------------------------------------------------------



S: Wohnung in Koelle (Amaryllis, 14. Jun 2001, 13:40:24):
Huhu,

da ich ab dem 01.07. Koeln unsicher machen werde, suche ich ab diesem Datum
eine Wohnung in Koeln. Sollte etwa 2 Zimmer haben, ca. 50-70 qm.
Falls jemand da irgendwie helfen oder mir Makler empfehlen kann, bin ich um
Info dankbar :)

Gruss,
dat Feesche, (uebt schonmal, nae :))

-----------------------------------------------------------------------------



Re: Re: Office 2000 (Apsu, 14. Jun 2001, 20:48:49):
~#! rn=Grimmborn rt=992505553 rg=suche-biete
~#! tid=992497563
Weil es Office 2000 offiziell nicht mehr gibt, seitdem Office XP raus ist.

-----------------------------------------------------------------------------



Bilder von Politikern (Daria, 15. Jun 2001, 13:51:15):
Hallo,
ich suche Bilder von Politikern in der Zeit von 1900 -1914.
Ich denke an Bethmann Hollweg (Theodor von), von Moltke, Sir Edward Grey,...

Weiss jemand von Euch wo ich sowas finde?

Danke schoen!
Daria

-----------------------------------------------------------------------------



Re: Bilder von Politikern (Troy, 15. Jun 2001, 17:05:04):
~#! rn=Daria rt=992605875 rg=suche-biete
~#! tid=992605875
von Bethmann-Hollweg findest Du unter:
http://www.deutsche-chronik.de/dch/dch_2154.htm

andere Leute unter http://www.deutsche-chronik.de/bilder/plst108.htm

schau auch unter http://www.weltchronik.de/bilder/main.htm nach

-----------------------------------------------------------------------------



Suche Wohnung in Berlin (Denti, 15. Jun 2001, 21:04:55):

Hallihallo

ich suche eine Wohnung in Berlin, moeglichst in Charlottenburg mit 
gute Anbindung an den OEPNV, vor allem in Richtung Flughafen Tegel.
Ich dachte an 45-55 qm aufgeteilt auf zwei Zimmer.

Angebote entweder per mudmail oder an s-h.sieber@web.de

Denti

-----------------------------------------------------------------------------



Re: Re: Bilder von Politikern (Daria, 18. Jun 2001, 13:59:11):
~#! rn=Troy rt=992617504 rg=suche-biete
~#! tid=992605875
Dankeschoen, die SIte is nett!

*freu*
Daria

-----------------------------------------------------------------------------



Prattchet-Zitat gesucht (Atoz, 19. Jun 2001, 16:24:37):
Hallo Ihr!
Ich suche die deutsche Uebersetzung samt Quellenangabe von dem Spruch:

"multiple exclamation marks are a sign of a degenerated mind" (So er so
richtig ist, da bin ich mir auch nicht so ganz sicher...)

Muesste schon genau sein, die Angabe. Zitieren ohne Quelle kommt nicht so gut
;)))

gruss,
Atoz

-----------------------------------------------------------------------------



Re: Prattchet-Zitat gesucht (Boing, 19. Jun 2001, 16:26:15):
~#! rn=Atoz rt=992960677 rg=suche-biete
~#! tid=992960677
Multiple exclamation marks are a sure sign of a diseased mind.
Die Quelle ist Eric, Terry Pratchett ... Grimmborn kennt auch noch
die Seitenzahl ... ;)
  Boing

-----------------------------------------------------------------------------



Re: Prattchet-Zitat gesucht (Grimmborn, 19. Jun 2001, 16:26:49):
~#! rn=Atoz rt=992960677 rg=suche-biete
~#! tid=992960677
"Multipel exclamation marks are a sure sign of a diseased mind!" (T.
Pratchett, Eric, S.121)
Mit der deutschen Uebersetzung kann ich allerdings nicht dienen.

GdA

-----------------------------------------------------------------------------



Re: Re: Prattchet-Zitat gesucht (Isi, 19. Jun 2001, 16:27:05):
~#! rn=Boing rt=992960775 rg=suche-biete
~#! tid=992960677
und aehnliches Zitat noch mal in Maskerade
Isi (Agneswerfend)

-----------------------------------------------------------------------------



Re^3: Prattchet-Zitat gesucht (Atoz, 19. Jun 2001, 16:44:47):
~#! rn=Isi rt=992960825 rg=suche-biete
~#! tid=992960677
Thx damit kann ich dann auch in der Buchhandlung suchen gehen (die werden sich
freuen ;))) )
Gruss,
Atoz

-----------------------------------------------------------------------------



Re: Re: Prattchet-Zitat gesucht (Anatol, 20. Jun 2001, 01:12:04):
~#! rn=Grimmborn rt=992960809 rg=suche-biete
~#! tid=992960677
"Drei Ausrufezeichen", fuhr er fort und schuettelte den Kopf.
"Sicheres Zeichen fuer einen kranken Geist."

T. Pratchett, Eric (deutsche Uebersetzung, S.122).

Merke: Nur das englische Original lohnt des Zitierens. ;)


-----------------------------------------------------------------------------



Re^3: Prattchet-Zitat gesucht (Krellja, 20. Jun 2001, 12:36:56):
~#! rn=Anatol rt=992992324 rg=suche-biete
~#! tid=992960677
Fuer solche und andere Pratchettfaelle sehr hilfreich ist 

www.lspace.org

Tschuess
      Krellja

-----------------------------------------------------------------------------



Re^4: Prattchet-Zitat gesucht (Atoz, 20. Jun 2001, 15:51:58):
~#! rn=Krellja rt=993033416 rg=suche-biete
~#! tid=992960677
Thx. die Seite ist wirklich nett!
Aber die deutsche Uerbesetzung (danke Anatol!) - so schlecht sie auch sein mag
- passt ziemlich gut: in dem Aushang den ich damit kommentieren will, kommen
zweimal 3 Ausrufezeichen vor ;)))

Gruss,
AtoZ

-----------------------------------------------------------------------------



Wohnung in Stuttgart (Foobar,  6. Jul 2001, 13:59:31):
Moin.

Ein Bekannter von mir sucht zum 1.8. eine Wohnung in Stuttgart. 2 Zimmer
sollten es wohl sein...

Falls da jemand was anzubieten hat oder auch einen heissen Tip zur
Wohnungssuche in Stuttgart wuerde ich mich ueber eine Mail freuen.

Gruss,

     Foobar

-----------------------------------------------------------------------------



Re: Wohnung in Stuttgart (Cuchullin,  6. Jul 2001, 14:10:33):
~#! rn=Foobar rt=994420771 rg=suche-biete
~#! tid=994420771
Er sollte schwaebisch lernen. Schnell.

''Sie kommed wega dem Ein-Zimmer-Appartment? (laut nach hinten rufend:)
ELLIE? WO ISSN DER KELLERSCHLUESSL? (wieder zum Suchenden:) Die Raeum-
lichkeiten liegen zu ebener Erde.... Die Degge zumindest. ... Sooo
bassed se uff, auf dr Drepp isch's a weng rudschig... Graaaaaaaaaaad
mach i's Maul zu. ....Henn Se sich wiedr? No daschdet se sich mal
do rechts an dr Wand lang, do muesst an Lichtschaldr komma... henn
Se'n? Guad, no praegad se sich die Stell guad ei, falls ma mal elegdrischs
Licht valega lassed...''

Cuch - kann Keuler leider nicht wirklich wortgetreu wiedergeben :\

-----------------------------------------------------------------------------



Re: Re: Wohnung in Stuttgart (Muadib,  6. Jul 2001, 14:20:12):
~#! rn=Cuchullin rt=994421433 rg=suche-biete
~#! tid=994420771
stuttgart ist schwaebisch ? ;)

-----------------------------------------------------------------------------



Re^3: Wohnung in Stuttgart (Imda,  6. Jul 2001, 14:23:46):
~#! rn=Muadib rt=994422012 rg=suche-biete
~#! tid=994420771
Noe. Greuelpropaganda.

-----------------------------------------------------------------------------



Re^4: Wohnung in Stuttgart (Cuchullin,  6. Jul 2001, 14:26:35):
~#! rn=Imda rt=994422226 rg=suche-biete
~#! tid=994420771
Schduagad isch so schwaebisch wie Wien oeschdoreichisch sei dud.

Also scho a weng, abr au scho a weng ebbes anderes. :)

Cuch

-----------------------------------------------------------------------------



Re^5: Wohnung in Stuttgart (Foobar,  6. Jul 2001, 15:27:19):
~#! rn=Cuchullin rt=994422395 rg=suche-biete
~#! tid=994420771
Seine Eltern sind Schwaben, er ist also bilingual aufgewachsen.

Gruss,

    Foobar

-----------------------------------------------------------------------------



Publikationen ueber Muds (Cisou,  8. Jul 2001, 20:01:37):

Hallo zusammen,

ich bin auf der Suche nach wissenschaftlichen Publikationen ueber Muds.

Ich meine mich zu erinnern, dass vor einiger Zeit eine
Diplom/Magister/Doktorarbeit ueber das MG geschrieben wurde.
Kann mir jemand die Literaturangabe oder einen richtungsweisenden Hinweis
geben?

Auch Veroeffentlichungen ueber andere Muds wuerden mir sehr weiterhelfen, vor
allem geistes- und am liebsten sozial- oder kulturwissenschaftlicher Art.

Vielen Dank fuer Eure Hilfe, ich queste allein nun mal nicht gern ;).

Das Elsterchen

-----------------------------------------------------------------------------



Re: Publikationen ueber Muds (Humni,  8. Jul 2001, 22:33:01):
~#! rn=Cisou rt=994615297 rg=suche-biete
~#! tid=994615297
Ah ja.

Meinereiner sucht sowas auch.

Und vielleicht schreib ich selbst auch noch sowas, aber das wird noch dauern,
und wird nicht uebers MG gehen ;-)

Also, wenn jemand an Cisou mailt bitte CC an mich ;-)

Humni

-----------------------------------------------------------------------------



Re: Publikationen ueber Muds (Liafar,  8. Jul 2001, 22:48:03):
~#! rn=Cisou rt=994615297 rg=suche-biete
~#! tid=994615297
wenn mich nicht alles taeuscht dann koennte das etwas sein?
ftp://mg.mud.de/Texte/Soziales/Verhalten.ps

Liafar

-----------------------------------------------------------------------------



S: Meinungen (Woody, 12. Jul 2001, 14:35:19):
Gux!

Suche Meinungen, Erfahrungen, etc. zum Sony CMD-J5.
http://www.sony-europe.com/j5


thxia,
Woody.-


-----------------------------------------------------------------------------



Re: S: Meinungen (Linflas, 12. Jul 2001, 16:23:31):
~#! rn=Woody rt=994941319 rg=suche-biete
~#! tid=994941319
Sony ist Schrott. Bis vor kurzem hatte ich den Vorgaenger und war endlos
unzufriefen. Softwarefehler und ein umstaendliches Menu sollten als
Abschreckung reichen. Meiner Meinung nach kann man zur Zeit nur zu Siemens
oder Nokia greifen.

Linflas im Mobiltelefonwahn.

-----------------------------------------------------------------------------



uli keuler (Gnome, 14. Jul 2001, 00:47:29):
suche jmd, der CDs vom o.g. kuenstler hat und mir sagen kann, welche
am empfehlenswertesten ist.

gnOme

-----------------------------------------------------------------------------



zip 100 (Macq, 18. Jul 2001, 14:04:11):
Suche Zip 100 extern parallel, kann auch gebraucht sein, sollte aber
funktionieren und wenn moeglich bil..aehm...preiswert.

Mac.

-----------------------------------------------------------------------------



Suche: Londoner Schuldenabkommen (Daria, 25. Jul 2001, 15:55:26):
Huhu,
ich suche den o.g. Text.
Metacrawler hilft leider nicht: Man bekommt entweder Seiten zum Schuldenerlass
fuer 3.Welt-Staaten, zur Zwangsarbeitentschaedigung (ok, das Ding hat mit
diesen Themen natuerlich eng zu tun, aber das steht nirgends der Text selbst)
oder so - ich will mal sagen interessante Seiten wie
www.konservative-epoche.de

Letzeres ist das, was der Titel verspricht - und noch ein bisschen (?)
rechter.

Waere toll wenn mir jemand weiterhelfen koennte!
Daria

-----------------------------------------------------------------------------



Re: Suche: Londoner Schuldenabkommen (Daria, 25. Jul 2001, 15:56:53):
~#! rn=Daria rt=996069326 rg=suche-biete
~#! tid=996069326
1. ein s ist zu streichen.
2. Das Ding is von 1953.
Daria

-----------------------------------------------------------------------------



Re: Re: Suche: Londoner Schuldenabkommen (Daria, 25. Jul 2001, 16:00:35):
~#! rn=Daria rt=996069413 rg=suche-biete
~#! tid=996069326
Ich habs schon. Google rulez - ueber Umwege bin ich an die Info gekommen, dass
es wohl im BGBl steht (auch wenn ich das eigentlich verneint haette).
Danke Grimmborn!
Daria
,

-----------------------------------------------------------------------------



Wohnung in Hannover (Schleicher,  4. Sep 2001, 09:15:44):
Hiho,
wenn jemand mal was davon hoert das in Hannover eine NETTE bezahlbare Wohnung
frei wird (ca. 70qm 700dm Lage am liebsten Lister Meile) moege er sich doch
bitte mal mit nem kurzem tm oder ner Mail an mich wenden. Termin? Hmmm...
alles ab gestern oder so... Aber da das hier ja suche-biete heisst im Gegenzug
biete ich eine Wohnung in Duesseldorf-Oberkassel 3 Zi. 77qm renovierter Altbau
mit Stuck und Holzdielen fuer 985 DM +Strom. Wer daran Interesse haben sollte
s.o.

Schleicher der der Liebe wegen umziehende.

-----------------------------------------------------------------------------



Wohnung in Berlin (Linflas,  6. Sep 2001, 11:18:54):
Hallo,

kennst du jemanden, der jemand kennt, der ... ? Ich suche eine kleine, feine
Wohnung in Berlin zwischen 30 und 40 qm zum studentengerechten Preis von DM
500 warm. Ganz besonders scharf bin ich dabei auf Kreuzberg; F'Hain,
PrenzlBerg und Wedding gehen aber zur Not auch (in dieser Reihenfolge! ;-).
Termin ist der 1.11.2001, ueber jede Mail freue ich mich :-)
Anzubieten habe ich ein Zimmer in einer 2-er WG ab dem 1.11 in einem
vollsaniertem Altbau in PrenzlBerg, Lychener Str.! 1 OG, 24 qm, ein
Wohnzimmer, eine grosse Kueche und ein tolles Bad fuer schlappe 600
Silberlinge im Monat. Kabel und ISDN fuer den Infotainment-Overkill ist auch
da.

Linflas, auf der Pirsch.

-----------------------------------------------------------------------------



Re: Wohnung in Berlin (Solmyr,  9. Sep 2001, 16:57:23):
~#! rn=Linflas rt=999767934 rg=suche-biete
~#! tid=999767934
Lass mich raten :) Du bist Ihnen so auf die Eier gegangen, dass Du von
selber beschlossen hast, auszuziehen? :) *fg*

Generell kann man es immer bei der GSW probieren, habe ich Dir aber
bereits mal erzaehlt. Ich wohn im Wedding (Osloer Str direkt an der
U-Bahn, trotz Strasse ists leise, huebsches Haus, super saniert,
kifferfreundlich (oeh?), halt alles was das alternative Herz begehrt.
  http://www.gsw.de/
  http://www.berlin.de/ -> nach Wohnungen suchen
  http://www.zitty.de/ -> DIE alternative Berlinzeitung mit Anzeigen

Das war eigentlich alles. Falls Du bis dahin nix gefunden hast und un-
bedingt raus musst, auch wenn ich Dich kaum kenne (F-Band trallala und
so), ich hab dann dennoch einige Woechelchen Platz.

Gruss Sol*

-----------------------------------------------------------------------------



Biete RDRAM (Anacrion, 13. Sep 2001, 04:17:06):
~#! on=Anacrion ot=1000336034 og=hardsoftware
Habe meinen Rechner grade upgegradet und daher 128MB PC700 RDRAM abzugeben
....

Will wer ?

Zuschriften BmP (biete mit Preisangebot) an:

anacrion@mg.mud.de

anac*

-----------------------------------------------------------------------------



thinkgeek (Catweazle, 14. Sep 2001, 10:30:56):
Moin!

Dieser Aufruf geht wahrscheinlich eher an alle, die ab und an beim stammtisch
Muenster auftauchen, da ich sonst die Waren nicht ausliefern kann.

Ich moechte mir bei www.thinkgeek.com ein paar t-shirts bestellen. Um die
horrenden Lieferkosten zu reduzieren, moechte ich eine Sammelbestellung daraus
machen. 
Schau Dir also mal die Sachen bei www.thinkgeek.com an, und wenn du was davon
moechtest, mail mir was, dann bestell ich es mit. 

Ich werden diesen Monat noch bestellen.

Yours truly,
     Catweazle

-----------------------------------------------------------------------------



Albion (Troy, 19. Sep 2001, 09:43:48):
Hi,

ich suche ein Computerspiel namens Albion, welches BlueByte im Jahre 1995
rausgebracht hat. Das ist so ein Besiedle-Fremde-Welt-Spiel.

Dafuer biete ich ein anderes "altes" Spiel an, z. B. Ascendancy oder
Transport Tycoon Deluxe, das ist aber verhandelbar.

Wer hat Albion noch, spielts nicht mehr und wills loswerden? Im Zweifelsfall
auch gegen Maerker?

Troy

-----------------------------------------------------------------------------



Re: Albion (Boing, 19. Sep 2001, 10:49:03):
~#! rn=Troy rt=1000885428 rg=suche-biete
~#! tid=1000885428
Ich glaub, ich hab das mal in so einer Zeitschriftenversion gekauft.
Ich schau mal heute abend nach.
  Boing

-----------------------------------------------------------------------------



Re: Re: Albion (Humni, 19. Sep 2001, 11:08:36):
~#! rn=Boing rt=1000889343 rg=suche-biete
~#! tid=1000885428
Eben, da hab ich das auch her (habs aber noch nicht durch), das gabs bei
Bestseller Games, kann man die nicht nachbestellen oder so?
Teuer waren die nicht, glaub ich.

Humni

-----------------------------------------------------------------------------



Re^3: Albion (Anoris, 19. Sep 2001, 22:48:55):
~#! rn=Humni rt=1000890516 rg=suche-biete
~#! tid=1000885428
Bestseller hab ich damals fuer CHF 9.90 und Bestseller Gold fuer 14.90
gekauft. Braucht wer noch was? Sind sicherlich um die 25 - 30 Spiele.

Wenns wen interssiert mach ich auch ne Liste draus ...

- Anoris ;)

-----------------------------------------------------------------------------



Nimda (Vardion, 19. Sep 2001, 23:25:43):
Hi.

Hat sich zufaellig wer diesen neuen Nimda eingefangen? Ich haette gern ne
Kopie von dem (passt hervorragend zu meiner Studienarbeit). Ein URL, wo ich
ihn mir ziehen kann tuts auch.

Vardion, meint es ernst

-----------------------------------------------------------------------------



Bunkai (Muaddib, 20. Sep 2001, 14:09:22):
Hi,

gibts eigentlich ein paar Karateka hier? Ich meine RL-Karate, vorzugsweise
Shotokan. Ich suche Literatur ueber Bunkai, moeglichst umfassend. Weiss da
jemand was?

Mua

-----------------------------------------------------------------------------



Millennium Folge gesucht (Zarniya,  4. Okt 2001, 11:33:26):

Hi, 

durch die Terroranschlaege in den USA ist eine Folge der Serie Millennium
namens "Junge Haende" ausgefallen... inzwischen weiss ich, dass PRO7 die eine
Woche spaeter im Anschluss an die regulaere Folge gesendet hat... hat das
einer aufgenommen oder kennt jemanden ? 

Bitte per Email bei mir melden... 

Marc

-----------------------------------------------------------------------------



suiche schlafplatz zur messe (Snuggle, 13. Okt 2001, 01:24:22):
Hi Ihrs,

suche einen schlplatz (bzw. 2) zur Essener Spielemsse). 
Falls jemand n der Naehe wohnt oder einen guten Tp hat, wo man wegen eines
Pltzes anfrganen koennte, bitte, meldet Euc.
Wir wollen so lange, wie moeglich afhren.

Tschaui

Snuggle.


-----------------------------------------------------------------------------



S: Festplatte (Orktoeter, 26. Okt 2001, 14:28:10):
Hi!
Wer noch eine (ruhig aeltere) Festplatte hat (groesser 1 GB) der diese abgeben
moechte, maile mir mal ein Angebot. 

OrkT.

-----------------------------------------------------------------------------



Mitfahrgelegenheit... (Critter,  5. Nov 2001, 21:51:22):
suche noch fuer freitag ne mitfahrgelegenheit fuer zwei personen nach
stuttgart......
vorzugsweise muenster, bremen oder osnabrueck....
darf aber auch hannover braunschweig oder so sein.
wer was weiss bitte bei mir melden.... email: starbinder@gmx.de
gruss critter

-----------------------------------------------------------------------------



Re: Mitfahrgelegenheit... (Humni,  5. Nov 2001, 21:54:36):
~#! rn=Critter rt=1004993482 rg=suche-biete
~#! tid=1004993482
Nicht dass man das nicht hier erstmal versuchen sollte...
aber ich hab (allerdings als Fahrer) mit www.mitfahrzentrale.de schon gut
Erfahrungen gemacht.

Humni

-----------------------------------------------------------------------------



Re: Re: Mitfahrgelegenheit... (Zook,  5. Nov 2001, 22:07:13):
~#! rn=Humni rt=1004993676 rg=suche-biete
~#! tid=1004993482
Bist Du dann auch in KN angekommen ohne vorher ueber die schweizer
Grenze zu fahren?

Zook.

-----------------------------------------------------------------------------



Spiel gesucht (Rikus,  8. Nov 2001, 14:33:15):
Hi,
was gibt es fuer schoene Brettspiele ab 2 Personen? Es sollte aber
nicht in der Art Siedler sein...

Danke, Rikus

-----------------------------------------------------------------------------



Re: Spiel gesucht (Orktoeter,  8. Nov 2001, 14:33:51):
~#! rn=Rikus rt=1005226395 rg=suche-biete
~#! tid=1005226395
Schach


OrkT.

PS fuer zwei bis zwei Personen

-----------------------------------------------------------------------------



Re: Re: Spiel gesucht (Catweazle,  8. Nov 2001, 14:38:23):
~#! rn=Orktoeter rt=1005226431 rg=suche-biete
~#! tid=1005226395
Muehle.

YTC

-----------------------------------------------------------------------------



Re^3: Spiel gesucht (Humni,  8. Nov 2001, 14:38:51):
~#! rn=Catweazle rt=1005226703 rg=suche-biete
~#! tid=1005226395
Risiko (gerade nochmal gespielt)
ansonsten natuerlich Karten und Wuerfel.

Und jede Menge Rollenspiele ;-)

Humni
PS: Fuer welchen Zweck? Als Geschenk?

-----------------------------------------------------------------------------



Re^3: Spiel gesucht (Rikus,  8. Nov 2001, 14:39:13):
~#! rn=Catweazle rt=1005226703 rg=suche-biete
~#! tid=1005226395
ich suche eher was aktuelleres als Geschenk :) Muehle, Schach etc haben
wir schon.

Rikus

-----------------------------------------------------------------------------



Re^4: Spiel gesucht (Amaryllis,  8. Nov 2001, 14:40:06):
~#! rn=Rikus rt=1005226753 rg=suche-biete
~#! tid=1005226395
Der Klassiker: Mensch aergere Dich nicht :-)

Ama*

-----------------------------------------------------------------------------



Re^5: Spiel gesucht (Humni,  8. Nov 2001, 14:41:30):
~#! rn=Amaryllis rt=1005226806 rg=suche-biete
~#! tid=1005226395
Tabu, Outburst.. ach ja, dafuer braucht man mehr Leute.
Trivial Pursuit.
Aktuelle Spiele kenn ich leider nicht.

Humni

-----------------------------------------------------------------------------



Re^4: Spiel gesucht (Anthea,  8. Nov 2001, 14:41:48):
~#! rn=Rikus rt=1005226753 rg=suche-biete
~#! tid=1005226395
Hm... fuer zwei Spieler, auch wenn es ein Kartenspiel und kein Brettspiel ist,
gefiel mir immer das "Caesar & Cleopatra" ganz gut.
Fuer 2 und mehr mag ich z.B. Lobo77 oder Set (auch Kartenspiele).
Bei Billabong (Brettspiel) weiss ich jetzt nicht, ob es schon fuer 2 spieler
geht, mit 4 oder 5 macht es aber definitiv mehr Spass.

-----------------------------------------------------------------------------



Re: Spiel gesucht (Zarniya,  8. Nov 2001, 14:42:46):
~#! rn=Rikus rt=1005226395 rg=suche-biete
~#! tid=1005226395
ist auch was aelter, aber ich fand Abalone immer nett.

Marc

-----------------------------------------------------------------------------



Re^6: Spiel gesucht (Dunst,  8. Nov 2001, 14:43:22):
~#! rn=Humni rt=1005226890 rg=suche-biete
~#! tid=1005226395

Caesar und Cloepatra, oder Druidenwalzer.
Roborally zu zweit is nicht son Hit, aber mit mehreren supergeil.

Dunst

-----------------------------------------------------------------------------



Re: Re: Spiel gesucht (Gnome,  8. Nov 2001, 14:43:30):
~#! rn=Zarniya rt=1005226966 rg=suche-biete
~#! tid=1005226395
ja, go und abalone sind sehr schoen.

-----------------------------------------------------------------------------



Re^3: Spiel gesucht (Rikus,  8. Nov 2001, 14:44:39):
~#! rn=Gnome rt=1005227010 rg=suche-biete
~#! tid=1005226395
danke fuer die aufzaehlungen! nun muss ich nur noch in einen laden
und die mal ansehen (ich muss die ja sicherlich auch mal mitspielen :) )

rikus

-----------------------------------------------------------------------------



Re^4: Spiel gesucht (Cassandra,  8. Nov 2001, 14:46:20):
~#! rn=Rikus rt=1005227079 rg=suche-biete
~#! tid=1005226395
Also ich find Rosenkrieg ganz nett.
Janine

-----------------------------------------------------------------------------



Re^4: Spiel gesucht (Ark,  8. Nov 2001, 15:23:35):
~#! rn=Rikus rt=1005226753 rg=suche-biete
~#! tid=1005226395
Carcassonne.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^5: Spiel gesucht (Amaryllis,  8. Nov 2001, 15:30:55):
~#! rn=Ark rt=1005229415 rg=suche-biete
~#! tid=1005226395
Hierbei handelt es sich um eine Stadt in Suedwestfrankreich, die auch
"Rothenburg des Suedens" genannt wird.
Brettspiele finden hier natuerlich auch statt, z.B. Boule :-)

Ama*

-----------------------------------------------------------------------------



Re^6: Spiel gesucht (Ark,  8. Nov 2001, 15:34:31):
~#! rn=Amaryllis rt=1005229855 rg=suche-biete
~#! tid=1005226395
Isn Brettspiel.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^7: Spiel gesucht (Linflas,  8. Nov 2001, 15:57:34):
~#! rn=Ark rt=1005230071 rg=suche-biete
~#! tid=1005226395
Bei "GO" schliesse ich mich an, ist gfast wie Mudden, wenn du einmal dran
sitzt, stehst du so schnell nicht wieder auf.

L.

-----------------------------------------------------------------------------



Re^8: Spiel gesucht (Grimmborn,  8. Nov 2001, 16:06:49):
~#! rn=Linflas rt=1005231454 rg=suche-biete
~#! tid=1005226395
Faellt aber nicht eben unter die Rubrik "neue Spiele".

GdA

-----------------------------------------------------------------------------



Re: Spiel gesucht (Muadib,  8. Nov 2001, 16:40:24):
~#! rn=Rikus rt=1005226395 rg=suche-biete
~#! tid=1005226395
kahla

-----------------------------------------------------------------------------



Re: Re: Spiel gesucht (Montanus,  8. Nov 2001, 19:07:05):
~#! rn=Muadib rt=1005234024 rg=suche-biete
~#! tid=1005226395
Ark hat recht: Carcassonne ist nicht zu Unrecht gerade Spiel des Jahres
geworden.
Sonst fuer zwei: Lost Cities (Kosmos, ca 25 DM) hat vom Wiederspielwert wohl
das hoechste Preis-Leistungsverhaeltnis. Fuer mehr als zwei Spieler: Die
Fuersten von Florenz sowie Die haendler von Genua (beide bei alea, ca 45 DM) -
sehr schoene Spiele.
Nicht zu empfehlen - allkes, auf dem "Herr der Ringe" draufsteht. Reine
Abzocke.

-----------------------------------------------------------------------------



Re^3: Spiel gesucht (Troy,  9. Nov 2001, 08:35:54):
~#! rn=Montanus rt=1005242825 rg=suche-biete
~#! tid=1005226395
Auch ich weiss nicht, obs schon ab 2 Personen geht, max ist 4 und aelter is
es auch schon: SuperGang (franzoesisches Gangster-Spiel): Obergeil!

Troy

-----------------------------------------------------------------------------



Re^4: Spiel gesucht (Janka,  9. Nov 2001, 10:07:34):
~#! rn=Troy rt=1005291354 rg=suche-biete
~#! tid=1005226395
Ich kenn' auch eins fuer genau 2 Personen. ;) Das versuche ich Rikus schon
seit Jahren zu erklaeren. Aber er versteht es einfach nicht.

-----------------------------------------------------------------------------



Re: Re: Spiel gesucht (Alboin,  9. Nov 2001, 19:06:00):
~#! rn=Muadib rt=1005234024 rg=suche-biete
~#! tid=1005226395
Das heisst Kalaha, und ich kanns auch nur empfehlen.

Alboin

-----------------------------------------------------------------------------



Re: Spiel gesucht (Daria, 14. Nov 2001, 14:05:40):
~#! rn=Rikus rt=1005226395 rg=suche-biete
~#! tid=1005226395
Torres
Carolus Magnus

beide sind fuer 2-4, machen aber auch zu zweit Spass.
Daria hat beide zu Hause.
-

-----------------------------------------------------------------------------



Re^3: Spiel gesucht (Daria, 14. Nov 2001, 14:07:04):
~#! rn=Montanus rt=1005242825 rg=suche-biete
~#! tid=1005226395
Ich finde ja Carcassonne auch sehr schoen, aber es ist doch ZIEMLICH nah an
Entdecker von Klaus Teuber...
Daria

-----------------------------------------------------------------------------



Re^4: Spiel gesucht (Anacrion, 14. Nov 2001, 16:30:37):
~#! rn=Daria rt=1005743224 rg=suche-biete
~#! tid=1005226395
Empires in Arms
Pax Britannica
Republic of Rome


alle locker wochenfuellend :o)

Anac*

-----------------------------------------------------------------------------



Indy II ungeschnitten gesucht (Atoz, 16. Nov 2001, 20:47:42):
Huhu!

Ich suche Indiana Jones II in ungeschnittener Version (muessten demnach auch
erst frei ab 18 sein) und moeglichst auch noch in Englisch, sprich PAL.
Kann mir da jemand weiterhelfen?

(I und III vielleicht auch, so sie genauso verstuemmelt wurden wie II)

Amazon hat nur Versionen ab 16.

Gruss AtoZ - hasst verstuemmelte Filme!

-----------------------------------------------------------------------------



Buecher gesucht (Morgoth, 18. Nov 2001, 20:53:53):
Hi
ich suche Buecher von Anne McCaffrey aus der Drachenwelt Saga oder zumindest
irgendeinen Shop wo diese zu beziehen sind:
Die Welt der Drachen
Drachentrommel
Noreta - Die Drachenherrin von Pern
Nerilkas Abenteuer

Sachdienliche Hinweise, die zur Ergreifung der o.g. Titel fuehren werden mit
einem Knuddeln von Tevildo belohnt. 

M*

-----------------------------------------------------------------------------



Re: Buecher gesucht (Marcus, 18. Nov 2001, 22:37:00):
~#! rn=Morgoth rt=1006113233 rg=suche-biete
~#! tid=1006113233
Nun, alle 4 Baende befinden sich in meinem Regal, aber das wird dir
nicht viel weiterhelfen. 

Selbst amazon.de hat nur die englischen Fassungen anscheinend. 

Die sind da aber nicht mal so teuer.... 

Ciao, Marcus

-----------------------------------------------------------------------------



Re: Buecher gesucht (Ivo, 18. Nov 2001, 22:44:50):
~#! rn=Morgoth rt=1006113233 rg=suche-biete
~#! tid=1006113233
Hallo,

vielleicht hat ja das antiquariat www.storisende.com davon was im angebot..

Gruss, Ivo

-----------------------------------------------------------------------------



Re: Re: Buecher gesucht (Bambi, 19. Nov 2001, 00:48:54):
~#! rn=Ivo rt=1006119890 rg=suche-biete
~#! tid=1006113233
In Karlsruhe gibts den Comic-Power, aber ich weiss nicht, ob der genau diese
Exemplare hat. Der hatte sogar zeitweise Lieferprobleme bei "Saga Dunkelelf",
aber wenn ich solche Buecher such, dann geh ich meistens dort zuerst hin.

-----------------------------------------------------------------------------



Re: Indy II ungeschnitten gesucht (Catweazle, 19. Nov 2001, 08:27:43):
~#! rn=Atoz rt=1005940062 rg=suche-biete
~#! tid=1005940062
Du willst die Version wo der Priester das Herz tatsaechlich auch ausgraebt und
nicht mehr nur ploetzlich in der Hand hat. Und Indy an der Haengebruecke
haengend die Finger in die Brust quetscht. 

Hmhm, hab ich auch nur ein einziges mal im Kino gesehen und danach nie
wieder...

Vielleicht auf DVD, cut scenes oder so?

Yours truly,
     Catweazle

-----------------------------------------------------------------------------



Re: Re: Buecher gesucht (Morgoth, 19. Nov 2001, 08:38:26):
~#! rn=Marcus rt=1006119420 rg=suche-biete
~#! tid=1006113233
Naja, wenn sie fuer mich waeren, wuerd ich die ja nehmen, aber dummerweise
will meine Ma die gerne haben und die versteht nich allzuviel englisch.

M*

-----------------------------------------------------------------------------



MFG nach Winterburg gesucht! (Ancalagon, 21. Nov 2001, 20:54:21):
Halloechenknuddels!
Falls ich eine MFG finde, wuerde ich gerne zur weihnachtsfete nach Winterburg
kommen und euch alle durchknuddeln! :)
Gibt es jemanden, der mich aus Bielefeld mitnehmen kann?
Als gegenleistung biete ich unschlagbar gute Laune und weihnachtsplaetzchen
an.... :)

mails an mich ins MorgenGrauen oder an tenor@bitel.net

dankeschoenst,

Ancalagon

-----------------------------------------------------------------------------



Re: MFG nach Winterburg gesucht! (Hobo, 22. Nov 2001, 10:39:17):
~#! rn=Ancalagon rt=1006372461 rg=suche-biete
~#! tid=1006372461
Hobo wirft Ancalagon ein "Mit freundlichen Gruessen" (kurz: MFG) zu und
erwartet ihn auf der Party.

   Hobo - kommt gar nicht

-----------------------------------------------------------------------------



Re^3: Buecher gesucht (Apollonia, 23. Nov 2001, 13:59:20):
~#! rn=Morgoth rt=1006155506 rg=suche-biete
~#! tid=1006113233
Also ich hab die hier auch stehen... bzw. nicht mehr lange, weil eine gewisse
Apfelsinenehefrau auch auf der Jagd nach den Buechern ist.

Apo*
paketschickend

-----------------------------------------------------------------------------



Wings of Fury. (Bambi, 23. Nov 2001, 16:47:46):
Kennt wer noch das Spiel "Wings of Fury" und weiss, wo man das herbekommen
kann?
Ich haetts gerne fuern PC, glaube aber, das mal aufm Amiga gehabt zu haben.
Gibts das fuern PC?
Und war das indiziert?

-----------------------------------------------------------------------------



Re: Wings of Fury. (Mandragon, 23. Nov 2001, 16:48:26):
~#! rn=Bambi rt=1006530466 rg=suche-biete
~#! tid=1006530466
Hab ne Amigaversion. Glaube damals gabs nur CGA-Grafik fuer PCs :o)

Ma*

-----------------------------------------------------------------------------



Suche Wohnung in Muenster (Kartoffel, 25. Nov 2001, 10:15:53):

Halloele,

wir suchen zum 15.2./1.3.2002 eine 4-5 Zimmer-Wohnung in Muenster.
Wer Vermieter/Verwalter/Anzeigenboersen ... kennt, bitte mail an mich.

'Toffel

-----------------------------------------------------------------------------



MFG nach Winterburg gesucht (Apollonia, 25. Nov 2001, 11:10:29):
Hallo Leute,

Nonne, Silvara und ich suchen vorsorglich eine MFG nach Winterburg, da leider
nicht sicher ist, ob wir uns ein Auto leihen koennen. Und die Anbindung an
oeffentliche Verkehrsmittel war superschlecht, wenn ich mich da richtig
erinnere.

Also, wer noch 3 Plaetze frei hat und zufaellig an Dortmund vorbei kommt,
sollte sich melden. Kriegt auch Extra-Muffins ;o)

Apo*

-----------------------------------------------------------------------------



Roborally (Ahab, 11. Dez 2001, 16:31:50):
Hiho :-)

Ich bin auf der Suche nach dem amerikanischen/englischsprachigen Original von
Roborally (das mit den Zinnrobotern, nach Moeglichkeit unbemalt). Wenn jemand
sowas hat und nicht mehr braucht: bitte melden.

Danke schonmal und Ahoi,

Ahab.

-----------------------------------------------------------------------------



Re: Roborally (Catweazle, 11. Dez 2001, 16:35:47):
~#! rn=Ahab rt=1008084710 rg=suche-biete
~#! tid=1008084710
Witzig. Wirklich witzig.

"...nicht mehr braucht."

Hi Hi ...

YTC

-----------------------------------------------------------------------------



Re: Re: Roborally (Zook, 11. Dez 2001, 16:36:45):
~#! rn=Catweazle rt=1008084947 rg=suche-biete
~#! tid=1008084710
Zook hat an der Stelle auch geschmunzelt.

P.S.: Welche Erweiterungen sind denn empfehlenswert? Irgendwas gabs doch
auch mit mehreren Ebenen, oder? 

-----------------------------------------------------------------------------



Re^3: Roborally (Catweazle, 11. Dez 2001, 16:38:20):
~#! rn=Zook rt=1008085005 rg=suche-biete
~#! tid=1008084710
Ja, die Erweiterung hab ich. Ist auch supergeil, vor allem wenn man dabei
anderen Robbies ueber den Kopf rattern kann :-)
Aber frag mich nicht wie die heisst, muesste ich nachsehen.

YTC

-----------------------------------------------------------------------------



Re^4: Roborally (Montanus, 11. Dez 2001, 16:41:56):
~#! rn=Catweazle rt=1008085100 rg=suche-biete
~#! tid=1008084710
Bringt mich nicht um, aber ich hab letzte Woche noch zwei eingeschweisste im
Laden gekauft. :-) Mit Angestelltenrabatt. :-)

-Montanus (hat die Haelfte seienr Weihnachtseinkaeufe bereits hinter sich)

-----------------------------------------------------------------------------



Re^5: Roborally (Mtv, 11. Dez 2001, 16:49:34):
~#! rn=Montanus rt=1008085316 rg=suche-biete
~#! tid=1008084710
Hm, ich weiss zwar nicht ob das dabei ist, aber die kann man bei uns noch
kaufen
Robo Rally Fr.  49.90 
Robo Rally Crash & Burn Fr.  49.90 
Robo Rally Grand Prix -englisch- Fr.  28.90

-----------------------------------------------------------------------------



Re^6: Roborally (Montanus, 11. Dez 2001, 16:55:16):
~#! rn=Mtv rt=1008085774 rg=suche-biete
~#! tid=1008084710
Das ist das deutsche RoboRallye. Amigo-Version. Mit nur 4 Robotern, udn aus
Plastik.
Es geht hier ums amerikanische Original, 8 Roboter, aus Zinn. Und schon lange
nicht mehr in print, daher inzwischen Sammlerstueck.

-----------------------------------------------------------------------------



Re^7: Roborally (Olli, 13. Dez 2001, 22:11:16):
~#! rn=Montanus rt=1008086116 rg=suche-biete
~#! tid=1008084710
Als Erweiterung hab ich hier noch Armed&Dangerous....

Olli - gibt seine Zinnroboter aber auch nicht her :)

-----------------------------------------------------------------------------



Re^8: Roborally (Grimmborn, 13. Dez 2001, 22:14:15):
~#! rn=Olli rt=1008277876 rg=suche-biete
~#! tid=1008084710
Wenn ihr hier so auf Roboter steht kann ich auf RTL2 "Robot Wars" empfehlen.
Die Kommentare sind zwar eher aermlich, aber die Kaempfe sind oft lustig.
Beeindruckend was fuer unfaehige Leute ins TV gelassen werden. Um die 80 kg
sollten sich ja nun wirklich wesentlich effektiver einsetzen lassen, selbst
wenn Explosivstoffe verboten sind.

GdA

-----------------------------------------------------------------------------



Re^9: Roborally (Olli, 13. Dez 2001, 22:15:03):
~#! rn=Grimmborn rt=1008278055 rg=suche-biete
~#! tid=1008084710
Robot Wars mit RoboRally zu vergleichen, ist ja schon hart an der Grenze :)

Olli

-----------------------------------------------------------------------------



Re^10: Roborally (Montanus, 13. Dez 2001, 22:38:56):
~#! rn=Olli rt=1008278103 rg=suche-biete
~#! tid=1008084710
Rasende Roboter ist uebrigens auch ein nettes Spielchen. Am besten SOlitaer
oder pbm, damit man genug Zeit zum Nachdenken hat.

-----------------------------------------------------------------------------



Re^11: Roborally (Krellja, 14. Dez 2001, 02:10:21):
~#! rn=Montanus rt=1008279536 rg=suche-biete
~#! tid=1008084710
Wobei das natuerlich ein ganz anderes Spiel ist :) Ich spiele das aber auch
gerne FTF.

Robot war ist doch vom Konzept her arg verwand mit der Idee zu RoboRally. Nur
das Feld ist halt ein wenig klein und der Kommentar grottig.

Seit wann gibt es das englische RR denn nicht mehr? Wenn ich nicht mal wieder
unter der Alterskrankheit "abgelaufene Zeit unterschaetzen" leide, dann ist
meines erst Max. 3 Jahre alt.

Tschuess
           Krellja

-----------------------------------------------------------------------------



Fuer Sammler! (Nirdavo, 14. Dez 2001, 10:09:43):
  Hallo allerseits!
  Gibts hier vielleicht irgendwen, der (leere) Einwegfeuerzeuge sammelt? Ich
hatte mal fuer einen Arbeitskollegen einen ganzen Haufen gesammelt, ihn aber
mehrere Jahre nicht gesehen. Als ich sie ihm dann doch einmal zukommen lassen
wollte, habe ich erfahren, dass der inzwischen gestorben ist (pikanterweise an
Lungenkrebs).
  Also: Sollte jemand Interesse haben, kurze Mail an mich. Bis auf das Porto
gibts die Dinger geschenkt!

  Nirdavo

-----------------------------------------------------------------------------



Re^12: Roborally (Ahab, 14. Dez 2001, 10:27:10):
~#! rn=Krellja rt=1008292221 rg=suche-biete
~#! tid=1008084710
Robot Wars hab ich bisher einmal gesehen und mich ziemlich abgerollt. Die sind
schon ein wenig irre, oder? *kicher* Der Kommentar ist halt ziemlich
Wrestling-like, aber wen wundert das? Schau mal, auf welchem Sender das
laeuft... *schulterzuck*

Das englische Roborally ist bei Wizards of the Coast im Online-Shop als
'Out of Stock' markiert. Es gibt wohl noch einige Kopien in den Laeden dort,
aber im wesentlichen werden derzeit originalverschweisste Basisspiele fuer
im Vergleich zum Alter enorme Liebhaberpreise vertingelt (ebay z.B. rund
US$ 60).

Ahoi,
Ahab.

-----------------------------------------------------------------------------



Re^9: Roborally (Matis, 14. Dez 2001, 10:46:53):
~#! rn=Grimmborn rt=1008278055 rg=suche-biete
~#! tid=1008084710
Ist RTL2's "Robot Wars" eine deutsche Adaptation oder einfach eine
Uebersetzung des englischen Orginals? Klar ist viel Schrott dabei (im
wahrsten Sinne des Wortes), aber manche der kleinen Dinger sind echt
spassig. Am besten fand ich bisher den Panzer der Army - der ist einfach
ueber alle Gegner druebergefahren ...

Matis

-----------------------------------------------------------------------------



Re^10: Roborally (Anatol, 14. Dez 2001, 10:48:43):
~#! rn=Matis rt=1008323213 rg=suche-biete
~#! tid=1008084710
Uebersetzung. Faszinierenderweise haben wir das schon vor einem Jahr 
in der Uni betrieben - Mit LEGO Mindstorm Roboter. :) Wenn man bedenkt,
dass man, wenn man das urspruengliche Lego-Betriebssystem runterwirft 
und LegOS installiert, die kleinen PBricks wirklich *gut* programmieren
kann... wir hatten unseren Spass. Die Zuschauer auch :)

Anatol - 3. Platz im Line-Following, beim Wrestling nicht angetreten :)


-----------------------------------------------------------------------------



Re^11: Roborally (Matis, 14. Dez 2001, 10:51:10):
~#! rn=Anatol rt=1008323323 rg=suche-biete
~#! tid=1008084710
Hey, Wrestling ist 'ne Klass Idee. Ich fand schon immer, dass die dummen
Sonydogs einfach nicht die wahren Fussballer sind - wildes Rumkeilen dagegen
scheint wie geschaffen fuer sie zu sein. 

Matis

-----------------------------------------------------------------------------



Re^12: Roborally (Anatol, 14. Dez 2001, 10:52:48):
~#! rn=Matis rt=1008323470 rg=suche-biete
~#! tid=1008084710
Naja, im Gegensatz zu den RobotWar-Kerlchen mussten unsere winzigen
Streiter autonom agieren. Nix war es mit Fernbedienung... ;)

Anatol

-----------------------------------------------------------------------------



Re^13: Roborally (Anthea, 14. Dez 2001, 10:54:06):
~#! rn=Anatol rt=1008323568 rg=suche-biete
~#! tid=1008084710
Das heisst, sie sind wirklich deiner Programmierung auf Gedeih und Verderben
ausgesetzt? Gab es bei euch auch so "Hindernisse" wie Gruben, Hausrobots, etc?

-----------------------------------------------------------------------------



Re^14: Roborally (Matis, 14. Dez 2001, 10:56:36):
~#! rn=Anthea rt=1008323646 rg=suche-biete
~#! tid=1008084710
Erstmal muessen sich die Viecher gegenseitig finden - schwer genug ;o).

Matis

-----------------------------------------------------------------------------



Re^15: Roborally (Anthea, 14. Dez 2001, 10:57:50):
~#! rn=Matis rt=1008323796 rg=suche-biete
~#! tid=1008084710
Oooch, das geht ueber Magnetfelder doch ganz einfach, oder? In den einen Robot
baust Du einen Magnet-Suedpol ein, in den anderen einen Magnet-Nordpol, und
schon sind sie untrennbar ;)

-----------------------------------------------------------------------------



Re^16: Roborally (Nirdavo, 14. Dez 2001, 11:01:29):
~#! rn=Anthea rt=1008323870 rg=suche-biete
~#! tid=1008084710
UNd zusaetzlich gibts dann noch den Knobelpreis fuer die Entdeckung der
magnetischen Monopole :-)

  Nirdavo, fasziniert

-----------------------------------------------------------------------------



Re^17: Roborally (Anatol, 14. Dez 2001, 11:03:49):
~#! rn=Nirdavo rt=1008324089 rg=suche-biete
~#! tid=1008084710
Nein, unser Feld war kreisrund, und von der Mitte zum Rand hin dunkler
werdend. Die Navigation via Lichtsensor sorgte also dafuer, dass die
Teile (i.d.R.) nicht allein runterfallen, die Tastsensoren sorgten
dafuer, dass der Gegner trotzdem runterplumst :) Zerlegt hat es selten
einen Roboter, von daher war es fuer die oeffentliche Blutruenstigkeit
nicht sooo furchtbar wild.

Ana*

-----------------------------------------------------------------------------



Re^16: Roborally (Bambi, 14. Dez 2001, 19:07:09):
~#! rn=Anthea rt=1008323870 rg=suche-biete
~#! tid=1008084710
[ ] Dir ist klar, dass es jedem magnetischen Pol ein Gegenstueck gibt.

-----------------------------------------------------------------------------



Re^17: Roborally (Orktoeter, 14. Dez 2001, 19:09:13):
~#! rn=Bambi rt=1008353229 rg=suche-biete
~#! tid=1008084710
[ ] Du hast den Thread zu ende gelesen bevor du geantwotet  hast


-----------------------------------------------------------------------------



Re^18: Roborally (Grimmborn, 14. Dez 2001, 19:16:27):
~#! rn=Orktoeter rt=1008353353 rg=suche-biete
~#! tid=1008084710
Ach was, er hat halt nur Physik-Leistungskurs gehabt. Dort kommen die GUTs,
die z.T> magnetische Monopole postulieren, noch nicht vor. Kann passieren.

GdA

-----------------------------------------------------------------------------



Re^19: Roborally (Anthea, 14. Dez 2001, 20:56:06):
~#! rn=Grimmborn rt=1008353787 rg=suche-biete
~#! tid=1008084710
[ ] Bambi kennt den Witz mit dem Physikprofessor, der das Perpetuum
    Mobile mit magnetischen Monopolen patentiert


-----------------------------------------------------------------------------



Re^20: Roborally (Grimmborn, 14. Dez 2001, 21:06:13):
~#! rn=Anthea rt=1008359766 rg=suche-biete
~#! tid=1008084710
[ ] Das ist nicht nett wenn alle auf Bambi rumhacken, nur weil sein Physik-
    Leistungskurswissen nicht ausreicht.

GdA

-----------------------------------------------------------------------------



Hotelzimmer in Bangkok gesucht (Illmatic, 17. Dez 2001, 14:37:01):
Hallo allerseits,

ich werde im Januar Urlaub in Bangkok machen, suche aber noch nach einem
preiswerten Hotel/Hostel/Guest House in der City. Optimalerweise im
Banglamphu/Khao San-Gebiet (unter 400Baht/Nacht). Falls einer von Euch
Telefonnummern/Internetseiten/Empfehlungen fuer mich hat, waere ich darueber
sehr dankbar.
Illmatic, auf Emails hoffend.

 PS: Ideal waeren Hotels, wo man online buchen kann.

-----------------------------------------------------------------------------



Linux Magazin (Nimbus, 17. Dez 2001, 21:46:03):
~#! on=Nimbus ot=1008621816 og=anzeigen
Moinmoin,
ich suche einen Artikel aus dem Linux Magazin 5/2001. Es ging dabei
um Kylix. Online konnte ich den Artikel leider nicht finden, und
deshalb: hat vielleicht jemand ein Abonnement und die Moeglichkeit
(und Bereitschaft ;) ) den einzuscannen und mir zuzuschicken? Oder
gibts vielleicht doch eine Moeglichkeit anderweitig an den
ranzukommen (ok Heft nachbestellen aber vielleicht gehts ja auch
anders...) ?

Nimbus (nimbus.priv@gmx.net falls je...*hoff*)

-----------------------------------------------------------------------------



Re: Linux Magazin (Nimbus, 17. Dez 2001, 21:46:45):
~#! on=Nimbus ot=1008621931 og=anzeigen
~#! rn=Nimbus rt=1008621816 rg=anzeigen
~#! tid=1008621816
...ueberlege gerade ob der Artikel nicht besser in suche-biete
aufgehoben waere... :-/

-----------------------------------------------------------------------------



Re: Re: Linux Magazin (Mupfel, 17. Dez 2001, 22:30:23):
~#! rn=Nimbus rt=1008622005 rg=suche-biete
~#! tid=1008621816
Oh, kann sein dass ich den hab... mom mal suchen... ja unter einem riesigen
berg anderer zeitungen ;) aber ich hab keinen scanner ;(

-mupfel- 

-----------------------------------------------------------------------------



Re^3: Linux Magazin (Montanus, 17. Dez 2001, 22:40:19):
~#! rn=Mupfel rt=1008624623 rg=suche-biete
~#! tid=1008621816
Abtippen! :-)

-----------------------------------------------------------------------------



S: Haeuslebauer (Tilly, 18. Dez 2001, 14:32:27):
Suche den Haeuslebauer, der sein Seherhaus im Polarwaeldchen
abstellen wollte. Hab die Mail geloescht und den Namen ver-
gessen .... :-)

 - Tilly - 

-----------------------------------------------------------------------------



Re: S: Haeuslebauer (Wurzel, 18. Dez 2001, 23:11:13):
~#! rn=Tilly rt=1008682347 rg=suche-biete
~#! tid=1008682347
bist du sicher, dass du nicht aus versehen den spieler geloescht hast?

-----------------------------------------------------------------------------



Re: Re: S: Haeuslebauer (Tilly, 18. Dez 2001, 23:27:03):
~#! rn=Wurzel rt=1008713473 rg=suche-biete
~#! tid=1008682347
Nein, bin ich mir nicht. Was auch das mit dem Namen erklaeren wuerde :)

-----------------------------------------------------------------------------



Lords of the Rising Sun (Birdy, 25. Dez 2001, 20:01:13):
Hiho!
Ich suche schon ewig das Amiga-Spiel "Lords of the Rising Sun".
Alle bisherigen Links waren kaputt oder ich konnte da nix runterladen. :(
Hilfe!

Birdy

-----------------------------------------------------------------------------



Re: Lords of the Rising Sun (Mandragon, 26. Dez 2001, 11:12:47):
~#! rn=Birdy rt=1009306873 rg=suche-biete
~#! tid=1009306873
Also ich haette da ein Original rumfliegen .... DUMMERWEISE ist die Sequenz
mit dem Shuriken-abwehren wegen Disk-Fehler buggy -> crash .... aber die
yoshitsune-seite sollte 1a funktionieren ...

Ma*

-----------------------------------------------------------------------------



Billabong (Liara,  4. Jan 2002, 17:07:18):
Falls jemand das Spiel 'Billabong' von Amigo noch im Keller rumstehen hat ...
Ich waere daran interessiert.

ZZL, bastelt und malt sonst selber

-----------------------------------------------------------------------------



Re^21: Roborally (Alboin,  4. Jan 2002, 17:34:39):
~#! rn=Grimmborn rt=1008360373 rg=suche-biete
~#! tid=1008084710
das ich hier auf Grimms Artikel antworte ist rein zufaellig. 
Also ich habe mir vor kurzem die Amigo Version fuer schlappe 28 Maerker
erstanden und ueberlege mir ob ich auch gleich die Crash&Burn Erwiterung
kaufe. Kann mir jemand sagen welche Unterschiede es insgesammt ueberhaupt zu
den Originalversionen gibt?

Alboin

-----------------------------------------------------------------------------



Re^22: Roborally (Feuerwehr,  5. Jan 2002, 17:16:40):
~#! rn=Alboin rt=1010162079 rg=suche-biete
~#! tid=1008084710
Huhu!

Naja, in der Originalversion sind Zinnfiguren drinn, das Design ist etwas
anders (die Karten sind nicht so bunt), es gibt keine
Programmierhilfplaettchen, man startet als "virtuelle Roboter", die
Bodenplatten unterscheiden sich (bei Crash und Burn gibt es noch
Radioaktivitaet bei, nich?) und die Beschiftung ist in englischer Sprache :).

Generell ist die englische Version somit natuerlich viel cooler :). Ich habe
als Erweiterung "Armed and Dangerous", aber die gibt es wohl nicht mehr zu
kaufen. 

Gruss,

     112.

-----------------------------------------------------------------------------



Re^23: Roborally (Tiamak,  5. Jan 2002, 17:20:12):
~#! rn=Feuerwehr rt=1010247400 rg=suche-biete
~#! tid=1008084710
Die virtuellen Roboter sind ne Regel fuer Weicheier. ;^)


Tiamak. Ist froh, dass die in der deutschen Ausgabe raus sind.

-----------------------------------------------------------------------------



Re^24: Roborally (Cuchullin,  5. Jan 2002, 17:21:54):
~#! rn=Tiamak rt=1010247612 rg=suche-biete
~#! tid=1008084710
Oh ja, ich habs aufm Winterburg-Con geschafft, den Weg zum ersten Checkpoint
- drei oder vier Runden - zusammen mit Puma virtuell zu bleiben. :o)


-----------------------------------------------------------------------------



Re^23: Roborally (Daria,  6. Jan 2002, 14:01:33):
~#! rn=Feuerwehr rt=1010247400 rg=suche-biete
~#! tid=1008084710
Man kann die Unterschiede so zusammenfassen:
Die zwei deutschen Kaesten ergeben den Grundkasten der Ami-Version. Mit
weniger Option-cards.
Daria, wird sich Crash & Burn auch noch kaufen.

-----------------------------------------------------------------------------



Re: Star Wars mal anders (Daria,  6. Jan 2002, 14:06:50):
~#! rn=Morgoth rt=1008940053 rg=www
~#! tid=1008940053
Die deutsche Version bietet uebrigens den Vorteil, dass die Rueckseiten der
Platten noch benutzbar sind - sprich man kann aus den Weiten des www weitere
Plaene ausdrucken und aufkleben. Wenn jemand sich fuer entsprechende Links
interessiert - ich weiss wen ich da faragen muss ;-)
Daria flucht - scheiss wintelnet

-----------------------------------------------------------------------------



Re: Re: Star Wars mal anders (Catweazle,  7. Jan 2002, 09:03:17):
~#! rn=Daria rt=1010322410 rg=suche-biete
~#! tid=1008940053
Frag :-)

YTC

-----------------------------------------------------------------------------



B: Schlafzimmer (Orktoeter,  8. Jan 2002, 18:19:42):
Biete Schlafzimmer
Bett, 160*200cm schwarz (ohne Rost und Matratze)
dazu 2 dreieckige Beistelltische
 
Drei Schraenke, schwarz:
80cm breit, 60cm tief Spiegeltueren
60cm breit, 60cm tief
80cm breit, 35(?)cm tief
 
Hoehe fuer alle Schraenke 2,02 Meter.
 
Preis VB
 
Bei Interesse mail an mich oder besser Anrufen unter Wien 0043/ (0)1 2923500 

OrkT.

-----------------------------------------------------------------------------



Re: B: Schlafzimmer (Zook,  8. Jan 2002, 18:24:04):
~#! rn=Orktoeter rt=1010510382 rg=suche-biete
~#! tid=1010510382
Wo ist denn das Schlafzimmer? Damit jedermann auch noch die Transportkosten
berechnen kann. ;) 

Zook.

-----------------------------------------------------------------------------



Re: Re: B: Schlafzimmer (Noki,  8. Jan 2002, 18:24:52):
~#! rn=Zook rt=1010510644 rg=suche-biete
~#! tid=1010510382
Ich tippe auf Wien. Hab ich jetzt was gewonnen? *g*
Noki, auf ein Kommoedchen hoffend.

-----------------------------------------------------------------------------



Re^3: B: Schlafzimmer (Orktoeter,  8. Jan 2002, 18:26:02):
~#! rn=Noki rt=1010510692 rg=suche-biete
~#! tid=1010510382
Mach das mit dem Gewinn mit Zook ab, aber ja, dafuer habe ich Wien vor die
Tel.Nr. geschrieben


OrkT.

-----------------------------------------------------------------------------



Re^4: B: Schlafzimmer (Zook,  8. Jan 2002, 18:26:20):
~#! rn=Orktoeter rt=1010510762 rg=suche-biete
~#! tid=1010510382
Naja, haett ja sein koennen, dass es woanders steht und Du es nur 
verkaufen moechtest.

Zook.

-----------------------------------------------------------------------------



Re^5: B: Schlafzimmer (Orktoeter,  8. Jan 2002, 18:27:59):
~#! rn=Zook rt=1010510780 rg=suche-biete
~#! tid=1010510382
Also nur um es noch mal ganz eindeutig (eineindeutig wie mein Matheprof immer
zu sagen pflegte) zu machen:

Die Moebel stehen in Wien und muessen bei Interesse auch dort abgeholt werden.

OrkT.

-----------------------------------------------------------------------------



HdR (Zarniya,  9. Jan 2002, 12:33:34):

Hi, 

es gibt doch von dem Hoerspiel zu HdR MP3 Versionen... hat die einer?
Vielleicht schon auf CD gebrannt? Oder doch zum Download? Bitte mal melden...
leider hab ich die Ausstrahlung vor ein paar Wochen im Radio mal wieder
verpasst.

Marc

-----------------------------------------------------------------------------



Re: HdR (Catweazle,  9. Jan 2002, 12:36:02):
~#! rn=Zarniya rt=1010576014 rg=suche-biete
~#! tid=1010576014
Ist das nicht illegal? 

YTC (heh heh :-)

-----------------------------------------------------------------------------



Re: HdR (Tangalur,  9. Jan 2002, 12:41:41):
~#! rn=Zarniya rt=1010576014 rg=suche-biete
~#! tid=1010576014
Saturn  hatte die CDs hier in Kolen drastisch runter gesetzt:
und zwar von zweihundert irgendwas auf 49,95 oder so. war allerdings vor
Weihnachten.

-----------------------------------------------------------------------------



Re: Re: HdR (Zarniya,  9. Jan 2002, 12:42:23):
~#! rn=Tangalur rt=1010576501 rg=suche-biete
~#! tid=1010576014
jaja.. die 49,95 sind aber EURO. :( 

-----------------------------------------------------------------------------



Re^3: HdR (Anthea,  9. Jan 2002, 12:51:33):
~#! rn=Zarniya rt=1010576543 rg=suche-biete
~#! tid=1010576014
trotzdem sind 49,95 Euro viel weniger als zweihundert irgendwas DM

-----------------------------------------------------------------------------



Re: Re: HdR (Pilgrim,  9. Jan 2002, 13:38:28):
~#! rn=Catweazle rt=1010576162 rg=suche-biete
~#! tid=1010576014
Denke nicht (unbedingt).

Wenn ich das Hoerspiel selber aufgenommen haette, aus dem Radio,
wird das wohl kaum illegal sein, oder?
Wenn ich einen Freund gebeten haette, es fuer mich aufzunehmen - waer
das illegal?

Pilgrim

-----------------------------------------------------------------------------



Re^3: HdR (Cuchullin,  9. Jan 2002, 13:43:02):
~#! rn=Pilgrim rt=1010579908 rg=suche-biete
~#! tid=1010576014
Doch. Mit dieser Argumentation koenntest Du das mp3-Vertreiben jedes
Musikstuecks, das bereits im Radio lief, rechtfertigen. Waer ein wenig
sehr dreist.

Cuch

-----------------------------------------------------------------------------



Re: Re: HdR (Bambi,  9. Jan 2002, 14:35:25):
~#! rn=Catweazle rt=1010576162 rg=suche-biete
~#! tid=1010576014
Was soll daran illegal sein, eine Radiosendung verpasst zu haben? ;)

-----------------------------------------------------------------------------



Re^4: HdR (Naddl,  9. Jan 2002, 14:45:52):
~#! rn=Cuchullin rt=1010580182 rg=suche-biete
~#! tid=1010576014
Duerfen nicht aus genau dem Grunde neuere Musikstuecke im Radio nicht
ausgespielt werden? Quatschende Moderatoren - kein Problem beim Aufnehmen?

i.A. Gloin(son)

-----------------------------------------------------------------------------



Re^3: HdR (Vanion,  9. Jan 2002, 14:49:24):
~#! rn=Pilgrim rt=1010579908 rg=suche-biete
~#! tid=1010576014
Ich glaub da gibt es ein Urteil. Selbst aufgenommenes darf man weitergeben
(Damals ging es um Videos). Es gab aber eine Obergrenze. Ab 8 mal verleihen
wird einem unterstellt, dass man das geschaeftlich betreibt ... 

V* hat das genaue Urteil nicht mehr im Kopf.

-----------------------------------------------------------------------------



Re^4: HdR (Zook,  9. Jan 2002, 14:53:11):
~#! rn=Vanion rt=1010584164 rg=suche-biete
~#! tid=1010576014
Ha! Nen Urteil war das? Das wuerde es erklaeren. Ich hab das naemlich
im UrhrG nicht gefunden....

Zook.

-----------------------------------------------------------------------------



Re^5: HdR (Orktoeter,  9. Jan 2002, 14:57:45):
~#! rn=Zook rt=1010584391 rg=suche-biete
~#! tid=1010576014
ist zwar die falsche rubrik, aber wenn wir gerade bei dem Thema Recht und
Urteile sind. Wieso kommt es scheinbar nur mir merkwuerdig vor, wenn jemand
sich die Wortmarke Mobilix eintragen liess und er dann jetzt vom Besitzer der
Wortmarke Obelix nicht nur darauf verklagt wird, diese Wortmarke wieder
loeschen zu lassen, sondern auch noch fuer jede benutzung bezahlen soll.
Muesste man nicht davon ausgehen koennen das die zustaendige Stelle mit
erteilen der Wortmarke auch das entsprechende Recht zugesteht? (hoechstens
aber das auf Antrag die neu hinzugekommene Wortmarke wieder geloescht werden
muss, aber auf keinen Fall sehe ich da eine Strafe gerechtfertigt): oder was
sehe ich da falsch?

OrkT, so manches Gesetzt und so manchen Richterspruch nicht nachvollziehen
koennend.

-----------------------------------------------------------------------------



Re^6: HdR (Zook,  9. Jan 2002, 14:59:51):
~#! rn=Orktoeter rt=1010584665 rg=suche-biete
~#! tid=1010576014
deutsches oder oesterreichisches Recht?


-----------------------------------------------------------------------------



Re^6: HdR (Catweazle,  9. Jan 2002, 15:14:51):
~#! rn=Orktoeter rt=1010584665 rg=suche-biete
~#! tid=1010576014
In Kurz: Soweit ich weiss 'vergibt' die Vergebende Stelle nur, 'prueft' aber
nicht (auf Rechtschaffenheit). 
Waere sonst ne verdammt grosse Matrix, die die da Abklappern muessten. 

Im Zweifel moege man mich berichtigen...

YTC

-----------------------------------------------------------------------------



Re^7: HdR (Amaryllis,  9. Jan 2002, 15:16:44):
~#! rn=Zook rt=1010584791 rg=suche-biete
~#! tid=1010576014
oesterreichisches "Recht"?

Im Land, wo Ordnungshueter schaetzen "koennen", ob Du 110 oder 120 gefahren
bist, will ich von Rechtssprechung eigentlich nicht mehr viel hoeren.

Ama*, wird eh keinen Fuss mehr auf oesterreichischen Boden setzen.

-----------------------------------------------------------------------------



Re^8: HdR (Muaddib,  9. Jan 2002, 15:19:20):
~#! rn=Amaryllis rt=1010585804 rg=suche-biete
~#! tid=1010576014
FYI, das "Gesetz" ist laengst nicht mehr gueltig.

Mua

-----------------------------------------------------------------------------



Re^9: HdR (Amaryllis,  9. Jan 2002, 15:20:54):
~#! rn=Muaddib rt=1010585960 rg=suche-biete
~#! tid=1010576014
Was, die sind tatsaechlich lernfaehig?

Ama*, unglaeubig.

-----------------------------------------------------------------------------



Re^10: HdR (Cuchullin,  9. Jan 2002, 15:22:06):
~#! rn=Amaryllis rt=1010586054 rg=suche-biete
~#! tid=1010576014
Du bist ja auch kein Oesterreicher, Amaryllis.

SCNR ;)


-----------------------------------------------------------------------------



Re^11: HdR (Amaryllis,  9. Jan 2002, 15:24:23):
~#! rn=Cuchullin rt=1010586126 rg=suche-biete
~#! tid=1010576014
Und das ist auch gut so! [tm]

Ama*, heilfroh :)

-----------------------------------------------------------------------------



Re^12: HdR (Zook,  9. Jan 2002, 15:41:38):
~#! rn=Amaryllis rt=1010586263 rg=suche-biete
~#! tid=1010576014
Ich wuerd vermuten, dass hat der EuGH gekippt ;)

Zook vermutet bei manchen Sachen nur wenig Einsicht bei den Akteuren selbst.

-----------------------------------------------------------------------------



Re^12: HdR (Woody, 12. Jan 2002, 01:18:27):
~#! rn=Amaryllis rt=1010586263 rg=suche-biete
~#! tid=1010576014
> Ama*, heilfroh :)

Woody, ebenso. :)


-----------------------------------------------------------------------------



Seele (Elizabeth, 17. Jan 2002, 20:15:15):
Suche eine Seele, wenns geht wenig gebraucht und orginalverpackt.
Zahle (vb) etwa 5 euro pro seele. Der wert steigert sich durch gut oder
boese.. Wenn jmd seine verkaufen moechte -> elizabeth@mg oder direkt per tm
.s

-----------------------------------------------------------------------------



Re: Seele (Grimmborn, 17. Jan 2002, 20:31:34):
~#! rn=Elizabeth rt=1011294915 rg=suche-biete
~#! tid=1011294915
Du redest von diesen Wuerstchen aus Suedwestbayern?

GdA

-----------------------------------------------------------------------------



Re: Re: Seele (Silvana, 17. Jan 2002, 22:01:45):
~#! rn=Grimmborn rt=1011295894 rg=suche-biete
~#! tid=1011294915
Die kann man auch "gebraucht" kaufen? OK, das gehoert jetzt zu den Dingen, die
ich mir lieber gar nicht erst vorstellen will... *wurgs*

  Silvana

-----------------------------------------------------------------------------



Re^20145: Hach... nu is was drin, inner MPA. (Montanus, 18. Jan 2002, 17:43:19):
~#! rn=Grimmborn rt=1011349539 rg=megaschmarrn
~#! tid=982328278
Biete: Hobbitnamen.

http://www.chriswetherell.com/hobbit/default.asp

bietet das an - die Seite hat aber eine sehr niedrige bandwidth, es kann also
ne Weile dauern, bis man draufkommt.
Macht aber Spass.

-----------------------------------------------------------------------------



Re^20146: Hach... nu is was drin, inner MPA. (Daria, 18. Jan 2002, 20:40:09):
~#! rn=Montanus rt=1011372199 rg=suche-biete
~#! tid=982328278
*wischdieTraenenausdenAugen*

Tja, die Seite ist wohl nichts fuer die Maenner, die den Vornamen "Carsten"
haben, das wird naemlich als "Popo" uebersetzt...

Daria hat einen neuen Bookmark.

-----------------------------------------------------------------------------



DivX (Dante, 20. Jan 2002, 23:17:21):
Ich hab da ein Problem: Und zwar einen avi-Film divx bei dem NUR
das Bild geht aber der Sound nicht, und zwar auf manchen System nicht, auf
anderen schon.
Der Audiocodec wird nicht erkannt, angeblich is das irgendein
DolBySorrundSchro/&(Zeugs...
Kennt jemand solche Probleme, bzw weiss mehr drueber.

-----------------------------------------------------------------------------



Re: DivX (Anthea, 21. Jan 2002, 12:15:59):
~#! rn=Dante rt=1011565041 rg=suche-biete
~#! tid=1011565041
Dazu gehe ich meist auf einen Rechner, auf dem der Schrott funktioniert,
starte den VirtualDub, Video auf StreamCopy, und fuer Audio eine neue
Komprimierung waehlen (z.B. MP3).

-----------------------------------------------------------------------------



Re: DivX (Armitage, 26. Jan 2002, 15:12:34):
~#! rn=Dante rt=1011565041 rg=suche-biete
~#! tid=1011565041
Du brauchst anscheinend einen Decoder fuer die AC3-Tonspur. Zumindest vermute
ich, dass es sich um eine solche handelt, da diese von manchen Leuten direkt
von ihrer DVD (Sicherheitskopie? ;) ohne Umwandlung in MP3 oder aehnlich
platzsparende Formate uebernommen wird. Ein entsprechender Decoder (fuer
Windows-Systeme) ist meisst Bestandteil von irgendwelchen Codec &
Filter-Packs,
aber auch einzeln (AC3DEC) zu haben.

-----------------------------------------------------------------------------



Webcam gesucht (Catweazle, 31. Jan 2002, 12:54:26):
Moin!

Ich braeuchte mal eine Empfehlung fuer eine Webcam. Anforderungen sind gute
Qualitaet, nach Moeglichkeit guenstiger Preis und Unterstuetzung fuer Linux. 

YTC

-----------------------------------------------------------------------------



Re: Webcam gesucht (Alboin, 31. Jan 2002, 14:14:20):
~#! rn=Catweazle rt=1012478066 rg=suche-biete
~#! tid=1012478066
oha, erleben wir jetzt Catty fruehmorgens beim Zaehne putzen, fruehstuecken,
duschen und was weiss ich nicht alles???

Al wie immer neugierig

-----------------------------------------------------------------------------



Re: Re: Webcam gesucht (Montanus, 31. Jan 2002, 17:40:35):
~#! rn=Alboin rt=1012482860 rg=suche-biete
~#! tid=1012478066
Oh, frag doch mal die ganzen SPAM-Anbieter: "me and my horny sister", "nude
russian girls" und so. Ich sach dir, wenn du es schaffst, denen ihre Webcam
wegzunehmen und dafuer zu sorgen, dass sie keine neue installieren, geb ich
dir einen aus. :-)

-----------------------------------------------------------------------------



Re^3: Webcam gesucht (Naddl, 31. Jan 2002, 17:51:09):
~#! rn=Montanus rt=1012495235 rg=suche-biete
~#! tid=1012478066
Du meinst dann schicken sie Dir keine E-Mail mehr? Optimist.

i.A. Gloin(son)

-----------------------------------------------------------------------------



S: Computeranimation von Chromosom (Orktoeter, 31. Jan 2002, 22:50:21):
Ich habe vor Jahren im Fernsehen mal einen kurzen Film gesehen, der meines
wissens eine reine Computeranimation ist. Dabei sieht man, wie sich zwei
Einzelstraenge naehern und die Basenpaare zusammenpassen, dann zoomt die
Kamera quasi raus und man sieht erst ein laengeres Stueck des doppelstrangs,
das dann beginnt sich zur Helix zu verdrillen und so weiter bis zum
vollstaendigen Chromosm.
 
Ich habe es schon versucht im www zu finden, musste aber zu meiner
Ueberraschung feststellen, das es dort nicht zu finden war.
 
Wenn also jemand das kennt und/oder weiss, wo ich das finden kann, bitte eine
mail an mich, danke!

OrkT.

-----------------------------------------------------------------------------



Webcam (Pertinaxe,  1. Feb 2002, 06:50:03):
Philips ToUCam Serie, z.B. 720k, kostet um die 90 Euro, Linux-Treiber im
Internet.**

-----------------------------------------------------------------------------



Re: Webcam (Catweazle,  1. Feb 2002, 07:53:29):
~#! rn=Pertinaxe rt=1012542603 rg=suche-biete
~#! tid=1012542603
Mist, das wollte ich nicht hoeren, ich hab ne 680 und bin sehr zufrieden, aber
der Preis war fuer manchen unzufriedenstellend. Gibts nix guenstigeres
vernuenftiges?

YTC

-----------------------------------------------------------------------------



Re: Re: Webcam (Montanus,  1. Feb 2002, 17:38:38):
~#! rn=Catweazle rt=1012546409 rg=suche-biete
~#! tid=1012542603
Biete: 
http://www.revolutionsf.com/images/subspace/blackriders.jpg

... die dazugehoerigen HIntergruende stehen in megaschmarrn. :-)

-----------------------------------------------------------------------------



Makler in D (Muaddib,  4. Feb 2002, 20:00:20):
Hi,

kkwer
ich suche einen Makler in Dueseldorf. Sachdienliche Hinweise bitte per tm oder
mail.

Danke
Mua

-----------------------------------------------------------------------------



Re: Makler in D (Amaryllis,  4. Feb 2002, 20:02:17):
~#! rn=Muaddib rt=1012849220 rg=suche-biete
~#! tid=1012849220
Hi,

ich weiss ja nicht, was Du genau brauchst...
Aber als ich nach Koeln gezogen bin, war es so, dass jeder Makler nur ein paar
Wohnungen anzubieten hatte. Sprich: ich habe 40 Makler angerufen und allen
meine Vorstellungen geschildert - irgendeiner hatte dann das passende und hat
den Zuschlag bekommen.
Auf die Makler bin ich ueber Wohnungsannouncen gekommen.

hth,
Ama*

-----------------------------------------------------------------------------



Re: Re: Makler in D (Grimmborn,  4. Feb 2002, 20:03:10):
~#! rn=Amaryllis rt=1012849337 rg=suche-biete
~#! tid=1012849220
Ansonsten sagt man dass die Gelben Seiten auch halbwegs informativ seien.

GdA

-----------------------------------------------------------------------------



Re^3: Makler in D (Amaryllis,  4. Feb 2002, 20:04:26):
~#! rn=Grimmborn rt=1012849390 rg=suche-biete
~#! tid=1012849220
Stimmt. Aber aus Wohnungsannounce und den dabei stehenden Makleranzeigen
kannst Du ggf. absehen, was fuer Wohnungen der Makler hauptsaechlich anbietet,
sprich: ob es sich ueberhaupt lohnt, dort anzurufen. Denn Makler gibts in
Koeln weit mehr als 40 :)

Ama*

-----------------------------------------------------------------------------



Re^4: Makler in D (Orktoeter,  4. Feb 2002, 21:33:45):
~#! rn=Amaryllis rt=1012849466 rg=suche-biete
~#! tid=1012849220
Noch ein Tip waere es, sich ueber den RdM (Ring deutscher Makler) passende
Makler raussuchen zu lassen, die sollten dann auch noch halbwegs serioes
sein...

OrkT.

-----------------------------------------------------------------------------



Re^5: Makler in D (Hobo,  5. Feb 2002, 09:39:31):
~#! rn=Orktoeter rt=1012854825 rg=suche-biete
~#! tid=1012849220
Oder das ganze auch beim VdM (Verband deutscher Makler).
Gibt's uebrigens beide im Internet unter www.rdm.de bzw. www.vdm.de

   Hobo

-----------------------------------------------------------------------------



Moin! (Liara,  8. Feb 2002, 21:30:18):

Ich muss ueber den Monatswechsel mal 2 Wochen regelmaessig so zwischen 9 und
18:30 Uhr an der Duesseldorfer Uni sein.
Habe mir grade mal die Nahverkehrverbindungen rausgesucht ... sieht nicht so
toll aus. Wie laeuft das mit dem Auto? Hat jemand Erfahrung mit der Strecke
Bonn/Duesseldorf? Wie lange braucht man so samt Staus/Baustellen?

Liara, waere dankbar fuer Tipps

-----------------------------------------------------------------------------



Zeitung gesucht! (Cisou, 18. Feb 2002, 18:40:53):
Westfaelische Nachrichten gesucht.

Ich suche dringend die Ausgabe der "Westfaelischen Nachrichten" vom Freitag,
den 15.2.02, insbesondere den Lokalteil von Osnabrueck. 

Ich uebernehme alle Portokosten etc., waere mir wirklich wichtig, die Zeitung
zu bekommen. 

Vielen Dank fuer Eure Hilfe!

Eure Elster


-----------------------------------------------------------------------------



Re: Zeitung gesucht! (Foobar, 18. Feb 2002, 18:41:35):
~#! rn=Cisou rt=1014054053 rg=suche-biete
~#! tid=1014054053
Foobar geht gleich mal am Altpapiercontainer vorbei, kann aber nix
versprechen.

-----------------------------------------------------------------------------



Re: Zeitung gesucht! (Mupfel, 19. Feb 2002, 01:00:28):
~#! rn=Cisou rt=1014054053 rg=suche-biete
~#! tid=1014054053
Aeh westfaelisch? osna lokalteil? hey diese stadt ist gross genug wir ham ne
eigene Zeitung ;)

-mupfel- (lokalpatriotisch ;)

-----------------------------------------------------------------------------



dojo (Muaddib, 18. Mar 2002, 23:20:10):
so - nochmal richtig :)

suche Shotokan-Karate-Do Dojo in Duesseldorf und Umgebung, traditionelles
Karate, kein Sportkarate. Moeglichst unter Leitung von Akio Nagai Shihan.
Biete Dankbarkeit :)

Mua

-----------------------------------------------------------------------------



Handflammenwerfer (Bambi, 20. Mar 2002, 22:05:56):
Hi.
Ich suche einen Handflammenwerfer fuer mein Zimmer sowie eine automatische
Zielerkennung, die kompatibel zu blutsaugenden Lebewesen ist, also diese
erkennt, die Waffe auf sie ausrichtet und feuert.
Alternativ wuerde ich anstatt des Handflammenwerfers auch eine chemische Keule
nehmen, dann braeuchte ich aber nen Atemschutz, was nicht so hipp ist, wenn
man damit pennen muss.

-----------------------------------------------------------------------------



Re: Handflammenwerfer (Morgoth, 20. Mar 2002, 22:10:41):
~#! rn=Bambi rt=1016658356 rg=suche-biete
~#! tid=1016658356
Kauf Dir ne Dose Haarspray oder billiges Deo und ein Feuerzeug. Als
Zielerkennung hast Du der Evolution zwei Augen zu verdanken, die mit einem
Superhochleistungsbiorechner (aka Gehirn) gekoppelt sind. Sollte prima
klappen.
Als chemische Keule empfehle ich Dir ein gutes Chili, eine Dose rohes
Sauerkraut (mit Saft) und ein Pfefferminzplaettchen.

M*

-----------------------------------------------------------------------------



Re: Handflammenwerfer (Imda, 20. Mar 2002, 22:15:26):
~#! rn=Bambi rt=1016658356 rg=suche-biete
~#! tid=1016658356
Fuer diese Groessenordnung eignet sich wohl am besten der VoFlWe41.
(Volksflammenwerfer, konstruiert 1941). Der is klein und handlich. die Lafette
mit Zieleinrichtung koenntest du aus Fischertechnik baun. Und die
Zielerfassung sollte ja heute jeder mittelmaessige PC hinkriegen.
Der VoFlWe ist leider ne Einwegkonstruktion, aber a) liesse er sich
entsprechend auswechseln, und b) vernichtet er garantiert alle blutsaugenden
Lebewesen in deinem Zimmer beim ersten Flammstrahl. Alle anderen Lebewesen
uebrigens auch.
Bezugsquelle waere der freundliche Museumsdirektor deines Vertrauens, oder
alternativ diverse vergessene Luftschutzanlagen in der Stadt deiner Wahl.

Viel Spass beim Basteln.

Imda.

-----------------------------------------------------------------------------



Re: Re: Handflammenwerfer (Montanus, 20. Mar 2002, 23:09:58):
~#! rn=Imda rt=1016658926 rg=suche-biete
~#! tid=1016658356
Ist megaschmarrn voll, oder was macht ihr hier?

-----------------------------------------------------------------------------



Suche GraKa (Nicolai, 26. Mar 2002, 23:56:59):
Hi

bin derzeit recht dringend auf der Suche nach ner ordentlichen Grafikkarte.
Bei meinem Board ist der AGP-Slot verreckt, also sollte es ne PCI-Card sein.
(derzeit steckt da ne Riva-tnt drin:-/  )
Ich nehm alles ab GF2MX, 32 mb reichen, darf gerne gebraucht sein.

Angebote am besten via mud-mail oder teile mit.

Gruss.

-----------------------------------------------------------------------------



S: MfG Muenchen-Muenster (Orktoeter, 30. Mar 2002, 16:36:02):
Suche fuer den Partyfreitag eine MfG von Muenchen nach Muenster 
Eine Uebernachtungsmoeglichkeit von Do. auf Freitag in Muenchen waere auch
nicht schlecht, wobei es sein kann, das ich erst spaet am Donnerstag Abend
ankomme.

Antworten bitte per Mail an mich, OrkT.

-----------------------------------------------------------------------------



FFM (Muaddib,  4. Apr 2002, 19:11:14):
Hi,

ich suche eine Wohnung in FFM. Anforderungen meinerseits:
- im Gruenen, dennoch verkehrstechnisch gut angebunden (s-bahn, u-bahn)
- Neubau
- 60-70 qm, 2 Zimmer
- Tiefgarage od. Parkplatz
- Golfplaetze in der Naeher waere ein Pluspunkt :)

Wer sowas in der Art kennt, oder einen guten Makler kennt -> pls mail.

thx,
Mua

-----------------------------------------------------------------------------



Re: FFM (Anacrion,  4. Apr 2002, 19:35:44):
~#! rn=Muaddib rt=1017940274 rg=suche-biete
~#! tid=1017940274
Hoert sich nach Verstaerkung fuer den Stati Rhein-Main an :o)

-----------------------------------------------------------------------------



Re: Re: FFM (Sharia,  5. Apr 2002, 12:04:59):
~#! rn=Anacrion rt=1017941744 rg=suche-biete
~#! tid=1017940274
ab wann suchst Du ? :)
ab Anfang Oktober wird meine Wohnung frei ... allerdings nur 55 qm ...
ansonsten relativ neuer bau (5 Jahre etwa) tiefgarage, 800m zur S-Bahn (8
min/2Stationen zu HBF) Schicke Einbaukueche, 3 min zum Westkreuz / Messe,
Balkon

Sharia

-----------------------------------------------------------------------------



Re^3: FFM (Muaddib,  5. Apr 2002, 12:20:16):
~#! rn=Sharia rt=1018001099 rg=suche-biete
~#! tid=1017940274
Ab jetzt. Leider. :)

-----------------------------------------------------------------------------



Touchdown (Montanus, 16. Apr 2002, 23:59:25):
Gesucht:
ein neuer Mitspieler fuer eine Partie Touchdown - eine
play-by-mail-Footballsimulation.
ZAT ist in etwa alle vier Wochen, Auswertung und Zugabgabe per eMail, Infos
und Regeln gibts bei mir.

-----------------------------------------------------------------------------



Suche Partituranfang (Daria, 18. Apr 2002, 13:38:26):
Huhu,

ich suche die Partitur fuer den Hochzeitsmarsch aus Mendelssohn-Bartoldys
(keine Garantie fuer Rechtschreibung) Sommernachtstraum.

Genauer brauche ich den Teil, der einem meistens dazu einfaellt ... also das
ta-taa-tata (ich hoffe ich wisst was ich meine *grins*)
Ich will das nicht spielen (ich kann kein Klavier) sondern auf eine
Einladungskarte drucken.

Wenn eine(r) von euch eine huebsche Version zu hause hat und mir das
einscannen und per Mail schicken wuerde faende ich das ganz supi, aber ich
nehm auch nen Link ins WeltWeite Netz.

Dankeschoen schon mal,
Daria

-----------------------------------------------------------------------------



Re: Suche Partituranfang (Grimmborn, 18. Apr 2002, 13:47:32):
~#! rn=Daria rt=1019129906 rg=suche-biete
~#! tid=1019129906
Das sollte eigentlich jeder halbwegs gut sortierte Musikladen fuehren?

GdA

-----------------------------------------------------------------------------



Re: Re: Suche Partituranfang (Daria, 18. Apr 2002, 13:48:29):
~#! rn=Grimmborn rt=1019130452 rg=suche-biete
~#! tid=1019129906
Da ich im Prinzip nur eine Zeile brauche und dann die Partitur danach nie
wieder, sehe ich es eigentlich nicht ein (nur wenn es sein muss) dafuer 10
Euro oder mehr dafuer auszugeben.
Daria

-----------------------------------------------------------------------------



Re^3: Suche Partituranfang (Boing, 18. Apr 2002, 13:50:45):
~#! rn=Daria rt=1019130509 rg=suche-biete
~#! tid=1019129906
Es gibt uebrigens auch Notenbibliotheken, da kann man sich sicher auch
mal ne Seite rauskopieren.
  Boing

-----------------------------------------------------------------------------



Re^3: Suche Partituranfang (Varlarion, 18. Apr 2002, 13:50:51):
~#! rn=Daria rt=1019130509 rg=suche-biete
~#! tid=1019129906
Versuchs doch mal in einer groesseren Buecherei. Ich kenne zwar nur die in MS,
aber soweit ich weiss kann man da auch Notenblaetter/-buecher ausleihen.

-----------------------------------------------------------------------------



Re^4: Suche Partituranfang (Daria, 18. Apr 2002, 13:52:40):
~#! rn=Varlarion rt=1019130651 rg=suche-biete
~#! tid=1019129906
Hier in der Diaspora (Paderborn) gibts keine Bibliothek die sowas fuehrt. Bei
uns an der Uni kann man zwar Musik studieren, aber die meisten Sachen (und
nach OPAC auch die Partituren) stehen in der Musikhochschule in Detmold.
Ich kann natuerlich auch mit dem Semesterticket nach Muenster fahren - ich
hatte nur halt gehofft es geht ohne viel Aufwand ;-)
Daria

-----------------------------------------------------------------------------



Re^5: Suche Partituranfang (Cicero, 18. Apr 2002, 13:56:01):
~#! rn=Daria rt=1019130760 rg=suche-biete
~#! tid=1019129906
Quael doch einfach Google... Sobald jemand rausgefunden hat wie man den Typen
richtig schreibt :)

-----------------------------------------------------------------------------



Re^4: Suche Partituranfang (Elberet, 18. Apr 2002, 13:56:13):
~#! rn=Boing rt=1019130645 rg=suche-biete
~#! tid=1019129906
also die meisten Stadtbibl;iotheken haben eine Notenabteilung. Dort findet
sich das vielleicht.

Elbi

-----------------------------------------------------------------------------



Re^5: Suche Partituranfang (Elberet, 18. Apr 2002, 13:56:53):
~#! rn=Daria rt=1019130760 rg=suche-biete
~#! tid=1019129906
Dann kannst ja auch gleich den Stati da besuchen :)

Elbi

-----------------------------------------------------------------------------



Re^6: Suche Partituranfang (Troy, 18. Apr 2002, 14:47:58):
~#! rn=Elberet rt=1019131013 rg=suche-biete
~#! tid=1019129906
Google bietet 4,80 Euro (http://www.dohr.de/autor/mendelssohn.htm)

Troy

-----------------------------------------------------------------------------



Re: Suche Partituranfang (Mogien, 18. Apr 2002, 15:47:08):
~#! rn=Daria rt=1019129906 rg=suche-biete
~#! tid=1019129906
Guck mal hier:
http://www.mfiles.co.uk/Scores/mendelssohn-wedding-march.htm
Unter "Print Score" liegt ein .zip, das 2 .gifs mit Notenbildern enthaelt.
Keine Ahnung, ob das auch wirklich die gesuchte Stelle ist...
Gruss,
Mogien

-----------------------------------------------------------------------------



Re: Re: Suche Partituranfang (Boing, 18. Apr 2002, 15:53:24):
~#! rn=Mogien rt=1019137628 rg=suche-biete
~#! tid=1019129906
Nette Seite ... :)
Bist Du eigentlich sicher, dass Du das Mendelssohn Teil suchst und nicht
eher das von Wagner?
Gibt's da auch: http://www.mfiles.co.uk/Scores/wagner-bridal-chorus.gif
  Boing

-----------------------------------------------------------------------------



Re^3: Suche Partituranfang (Elberet, 18. Apr 2002, 15:53:54):
~#! rn=Boing rt=1019138004 rg=suche-biete
~#! tid=1019129906
also das mendelssohn teil ist auf jeden fall viel schoener

Elbi 

-----------------------------------------------------------------------------



Re^4: Suche Partituranfang (Boing, 18. Apr 2002, 15:54:30):
~#! rn=Elberet rt=1019138034 rg=suche-biete
~#! tid=1019129906
Mag schon sein, aber das Wagner Teil passt eher auf Darias 'Tatatataa' :)
  Boing

-----------------------------------------------------------------------------



Re^5: Suche Partituranfang (Elberet, 18. Apr 2002, 15:55:20):
~#! rn=Boing rt=1019138070 rg=suche-biete
~#! tid=1019129906
du meinst nicht taaaaaaaa ta ta ta ta ta ta taaaaaaaaa? :)

Elberet

-----------------------------------------------------------------------------



Re^6: Suche Partituranfang (Cicero, 18. Apr 2002, 15:57:56):
~#! rn=Elberet rt=1019138120 rg=suche-biete
~#! tid=1019129906
Ta Ta Ta Raeaeaeaehhh!

-----------------------------------------------------------------------------



Re^7: Suche Partituranfang (Elberet, 18. Apr 2002, 15:58:48):
~#! rn=Cicero rt=1019138276 rg=suche-biete
~#! tid=1019129906
heiteres stuecke-raten? :) also welches stueck faengt an:

brummmmmmmmmmmmmmmm (tief) ;-)

Elbi

-----------------------------------------------------------------------------



Re^7: Suche Partituranfang (Cicero, 18. Apr 2002, 15:58:59):
~#! rn=Cicero rt=1019138276 rg=suche-biete
~#! tid=1019129906
Tschuldigung... Aber das konnt ich mir einfach nicht verkneifen :)

-----------------------------------------------------------------------------



Re^8: Suche Partituranfang (Troy, 18. Apr 2002, 16:04:43):
~#! rn=Cicero rt=1019138339 rg=suche-biete
~#! tid=1019129906
Ich haett hier noch ne Raetselsteinpartitur rumliegen...

Troy

-----------------------------------------------------------------------------



Re: Re: Suche Partituranfang (Daria, 18. Apr 2002, 17:15:11):
~#! rn=Mogien rt=1019137628 rg=suche-biete
~#! tid=1019129906
Hui, das sieht schon mal gut aus... dankeschoen!
*knuddels*
Daria

-----------------------------------------------------------------------------



Re: Re: Suche Partituranfang (Daria, 18. Apr 2002, 17:20:40):
~#! rn=Mogien rt=1019137628 rg=suche-biete
~#! tid=1019129906
Jaja, wenn man keine Ahnung hat...

Ich meinte tatsaechlich eigentlich das von Wagner. (Ich dachte das von
Mendelssohn waere aus Aida... so kann man sich taeuschen.)

Aber egal. Ich hab auf jeden Fall die Noten die ich brauche (und soviel weiss
ich noch aus meinem Musikunterricht dass ich den Noten ungefaehr folgen kann
wenn ich die Melodie kenne).

Nochmal ein ganz liebes Dankeschoen an alle die mir helfen wollten!

Daria

-----------------------------------------------------------------------------



Re^3: Suche Partituranfang (Karis, 19. Apr 2002, 13:20:53):
~#! rn=Daria rt=1019143240 rg=suche-biete
~#! tid=1019129906
Was hat Mendelssohn mit dem Sklavengirl zu tun????
Ach ja, Elbi :) Rheingold? Zarathustra?

Karis

-----------------------------------------------------------------------------



Re^4: Suche Partituranfang (Elberet, 19. Apr 2002, 13:58:33):
~#! rn=Karis rt=1019215253 rg=suche-biete
~#! tid=1019129906
also zarathustra hab ich gemeint ;)

Elbi

-----------------------------------------------------------------------------



Amazon CD / DVD-Gutschein (Ronda, 21. Apr 2002, 01:39:18):
Hm. Keine Ahnung ob das hier reinpasst ;-) Falls grad wer sowieso vor hat, bei
Amazon.de CDs oder DVDs zu kaufen: bis zum 30.4. gilt nen Gutscheincode der
Rolling-Stone ueber 5 Euro. Einfach "SPAREN-SPAREN" als Gutscheincode angeben
;-)

Ronda * ein paar Tropfen schwaebisches Blut hab ich anscheinend doch*

-----------------------------------------------------------------------------



Suche Sandemo Eisvolk 7-11 (Mesirii, 23. Apr 2002, 09:47:30):
Hallo,
mein Schatz hat bald Geburtstag und sie sucht schon seit einiger
Zeit die "Die Saga vom Eisvolk" Baende 7-11. Bei Ebay wollen die
da aber regelmaessig EUR 30+ pro Buch haben :(.
Also falls die jemand von Euch zufaellig zuhause stehen hat und
sie nicht mehr braucht wuerde ich mich riesig drueber freuen.
Ich waer auch schon damit zufriedne, sie mal zum Lesen ausgeborgt zu
bekommen. Sonst ist Preis Verhandlungssache (aber natuerlich < 30 EUR)

Danke Mesi

-----------------------------------------------------------------------------



WG in Karlsruhe (Widewitt,  5. Mai 2002, 21:24:06):
Hallo,

Ich und meine Freundin suchen ab Anfang August zwei Zimmer in einer WG in
Karlsruhe. Alternativ kann es auch eine 3- Zimmer Wohung sein. Also wenn
jemand nen sachdienlichen Hinweis geben kann waer ich sehr dankbar :-)

Die WG/Wohnung sollte natuerlich in der Naehe des Hbf sein, zwei Balkons oder
einen schoenen Garten haben, nette  Mitbewohner usw. das uebliche halt ;)

Gruss
Widewitt

-----------------------------------------------------------------------------



Wohnung / Heidelberg (Sharia,  7. Mai 2002, 14:48:09):
Hallo zusammen!

Ich suche so ab Oktober 2002 eine nette Wohnung ab 55qm in Heidelberg und
Umgebung... :) Am besten mit Balkon/Terasse, Badewanne, Einbaukueche, 2-4
Zimmern .. und das ganze natuerlich guenstig :) kann auch aufm Land sein :)

mails an Sharia bitte :) 


-----------------------------------------------------------------------------



Ausruestung (Birdy, 15. Mai 2002, 11:02:11):
Suche komplette Zaubererausruestung plus ewige Kompos, biete ewigen Dank. :)

-----------------------------------------------------------------------------



Re: Ausruestung (Birdy, 15. Mai 2002, 11:03:21):
~#! rn=Birdy rt=1021453331 rg=suche-biete
~#! tid=1021453331
Und eine Knuddelmaus brauch ich auch noch. *argl*

-----------------------------------------------------------------------------



Re: Re: Ausruestung (Brotnael, 15. Mai 2002, 16:38:44):
~#! rn=Birdy rt=1021453401 rg=suche-biete
~#! tid=1021453331
Die Knuddelmaus hab ich schon fuer dich, birdy :)

-----------------------------------------------------------------------------



Re^3: Ausruestung (Mandragon, 15. Mai 2002, 16:40:43):
~#! rn=Brotnael rt=1021473524 rg=suche-biete
~#! tid=1021453331
Och Broti .. Du bist aber lieb ...

-----------------------------------------------------------------------------



Re^4: Ausruestung (Pitfall, 15. Mai 2002, 16:41:01):
~#! rn=Mandragon rt=1021473643 rg=suche-biete
~#! tid=1021453331
ich braucht auch ausruestung...

-----------------------------------------------------------------------------



Re^5: Ausruestung (Mandragon, 15. Mai 2002, 16:41:29):
~#! rn=Pitfall rt=1021473661 rg=suche-biete
~#! tid=1021453331
Frag mal Grimmborn, ob er dir schnell welche clont ...

-----------------------------------------------------------------------------



Die Drei Fragezeichen (Liara, 26. Mai 2002, 13:40:27):
Moin!

Ich bin schon seit 'ner ganzen Menge Jahren bekennend suechtig nach der
Drei-Fragezeichen-Serie. (Buecher bei Kosmos, Hoerspiele bei Europa, du wirst
dich sicherlich erinnern ... ;). 

Im September/Oktober dieses Jahres sind die Original-Europa-Hoerspielsprecher
nun mit einer unveroeffentlichten Folge live auf Tour.
Ich wollte die Woche mal Karten reservieren fuer den Termin am 21.09. in Koeln
im Limelight. Im Internet ist das leider der einzige Tag, an dem die
Kartenreservierung nicht funzt (weil kaputt oder ausverkauft weiss ich leider
nicht).
Moeglicherweise hat ja jemand auch Interesse, so dass man zusammen fahren
koennte, falls man einen Termin in Anspruch nehmen muesste, der weiter
entfernt ist, weil man fuer Koeln keine Karten mehr bekommt.

Naehere Infos gips uebrigens unter www.dreifragezeichen.de.

Ich wuerde mich jedenfalls ueber eine Mail von Gleichgesinnten freuen. :-)

ZZL

-----------------------------------------------------------------------------



HdR auf CD (Zarniya, 29. Mai 2002, 08:29:15):
Hi, 

ich bin immer noch auf der Suche nach dem Hoerspiel als MP3 auf CD... mir
hatte es mal einer angeboten, aber dann nicht mehr gemeldet... 

Marc

-----------------------------------------------------------------------------



Re: HdR auf CD (Catweazle, 29. Mai 2002, 13:06:13):
~#! rn=Zarniya rt=1022653755 rg=suche-biete
~#! tid=1022653755
Also auf ebay gibts ~10 Hits fuer "Herr der RInge Hoerspiel", aber alles nur
auf 11 CDs. Ich nehme mal an, das sind dann Original-Audio-CDs, aber die
kannste Dir dann ja selber auf MP3 encoden.

YTC

-----------------------------------------------------------------------------



Die ewige Suche nach einem vernuenftigen... (Linflas,  7. Jun 2002, 15:52:30):
Email-Client unter Windows.

Vielleicht kennt jemand unter euch einen Email-Client fuer Windows, der in der
Lage ist beim Mail-composen (Yeah, denglisch, baby!) einfach mir, dem
Mail-composer, die Moeglichkeit offen zu lassen, dass From: frei zu
definieren. Erspart bei vielen Accounts doch eine Menge Arbeit.
Der soll die Mails dann ueber einen Mailserver verschicken und gut ist. Oder
ist das zu viel verlangt?

Fuer Hilfe dankbar...

L.

ps. Bitte keine Pine/Mutt-Debatte :-)

-----------------------------------------------------------------------------



Re: Die ewige Suche nach einem vernuenftigen... (Muadib,  7. Jun 2002, 16:27:13):
~#! rn=Linflas rt=1023457950 rg=suche-biete
~#! tid=1023457950
Outlook kann das, aber eigentlich moecht ich den Client ansonsten nicht
empfehlen. IMHO kann OutlookExpress das auch und ist "einigermassen"
brauchbar.

Gruss

Muadib

-----------------------------------------------------------------------------



Re: Die ewige Suche nach einem vernuenftigen... (Ronda,  7. Jun 2002, 22:29:38):
~#! rn=Linflas rt=1023457950 rg=suche-biete
~#! tid=1023457950
Hm. Was verstehst Du unter "From" frei definieren? Ein normaler Mailserver
duerfte / sollte das eigentlich nicht unterstuetzen IMHO. Outlook Express kann
mehrere Accounts relativ einfach verwenden, die Mails gehen dann halt ueber
den jeweiligen Mailserver raus. Aber ganz frei immer was neues ins From
schreiben geht nur, indem Du das Account wieder aenderst.
(Nochmal genauer zum zweiten Satz: Mailserver sollten meineswissens nur die
Mails rauslassen, die eine "passende" Mailadresse haben. Willst Du auch
"BillGates@microsoft.com" angeben koennen oder nur Adressen des Mailservers?)
Mehrere Accounts kann aber auch zB PMail verwenden, das ist halt nicht (so)
anfaellig fuer typische OutlookEx-Viren.

Ronda *sucht auch immer noch nach DEM Mailclient*

-----------------------------------------------------------------------------



Re: Re: Die ewige Suche nach einem vernuenftigen... (Cuchullin,  7. Jun 2002, 23:11:18):
~#! rn=Ronda rt=1023481778 rg=suche-biete
~#! tid=1023457950
Es gibt tatsaechlich auch Mailserver, die Dir gestatten, ein beliebiges
"From:" zu setzen (z.B. um nicht auf die T-Online-Server angewiesen zu 
sein), wenn Du vorher gepoppt (grins) hast. Wie die Authentifizierung
genau ablaeuft, weiss ich nicht. Aber das hatte mir halt jemand gesagt. :)

Cuch

-----------------------------------------------------------------------------



Re^3: Die ewige Suche nach einem vernuenftigen... (Screamer,  7. Jun 2002, 23:19:15):
~#! rn=Cuchullin rt=1023484278 rg=suche-biete
~#! tid=1023457950
naja, die Authentifizierung laeuft meisst ueber die
Sender-IP oder wenn externe zugreifen sollen mit
usernamen + passwort. Die Absenderadresse im Header
alleine ist ja keine sichere Methode. Bei
Mickysofts Outlook und Outlook-Express kann man aber
glaube ich seine emailadresse eingeben, die muss nicht
zum verwendeten Mailaccount passen glaube ich. diese
wird dann im From eingetragen. Der orginalsender ist
aber weiter der account und im Header der Mails
sichtbar. Geantwortet wird aber an die adresse im
From Tag.

100% sicher bin ich nicht, aber ich denke es geht so. ;-)

Screamer

-----------------------------------------------------------------------------



Re^4: Die ewige Suche nach einem vernuenftigen... (Screamer,  7. Jun 2002, 23:32:53):
~#! rn=Screamer rt=1023484755 rg=suche-biete
~#! tid=1023457950

ach ja, diese ganze sache passt uebrigens nicht der
rfc, die ich zu dem Thema fuer Mail mal gelesen habe.

Nur persoenliche Erfahrung also, die nicht unbdingt
allgemeingueltig sind :-(

Screamer

-----------------------------------------------------------------------------



Re^4: Die ewige Suche nach einem vernuenftigen... (Amaryllis,  8. Jun 2002, 00:35:35):
~#! rn=Screamer rt=1023484755 rg=suche-biete
~#! tid=1023457950
Um mal ein bisschen Klarheit zu schaffen - es gibt im Groben 3 Moeglichkeiten:
1. MTA akzeptiert Mail-Sender aufgrund dessen IP - keine Authentifizierung
noetig.
2. SMTP-Auth: vgl. POP3-Mailabruf (Login/Passwd)
3. SMTP after POP: Nutzer holt seine Mails per POP3 ab (Authentifizierung
durch Login/Passwd) und darf danach fuer eine gewisse Zeit (eine Minute?) Mail
ueber MTA versenden.

Alle diese Moeglichkeiten sind jedenfalls total unabhaengig davon, was ich als
Mail-Sender ins "From" eintrage - bis auf eventuelle Limitierungen, dass z.B.
der MTA prueft, ob ich als "Sender" zumindest eine gueltige TLD eingegeben
habe o.ae.
Dass auf "BillyG@microsoft.com" geprueft wird, waere mir neu und imho ein zu
hoher Aufwand.

Und noch was: Ob man das "Envelope-From" oder den Return-Path zu sehen
bekommt, haengt allein von dem MTA ab, der schlussendlich die Mail an den
Benutzer annimmt und in dessen Postfach legt. Das haengt ganz von dessen
Konfiguration ab, und es ist natuerlich keine Garantie, dass ein evtl.
angezeigter "Return-Path" auch korrekt ist.

Ama*

-----------------------------------------------------------------------------



Re^5: Die ewige Suche nach einem vernuenftigen... (Willow,  8. Jun 2002, 11:35:41):
~#! rn=Amaryllis rt=1023489335 rg=suche-biete
~#! tid=1023457950
Hmmm... meines Wissens ist es sogar so, dass emails, die ueber Toffline
verschickt werden automatisch vom Toffline-Mailserver ein from: verpasst
bekommen...
Zumindest meinte ich, diese Probleme mal in der Firma gehabt zu haben...
Weidchen Willow

-----------------------------------------------------------------------------



Re^6: Die ewige Suche nach einem vernuenftigen... (Sarkon,  8. Jun 2002, 11:46:51):
~#! rn=Willow rt=1023528941 rg=suche-biete
~#! tid=1023457950
Nur damit ich das richtig versteht, geht es hier darum nur das "from" zu
veraendern, wobei es angegebenen Absender auch wirklich gibt, oder sucht ihr
ein Programm, welches wirklich im Header oder eben als reply-adresse eine
beliebige Adresse ermoeglicht? (bsp: billy@micro...) Solche Programme gibt es
naemlich, wobei es sehr unwahrscheinlich ist, dass man die in irgendeinem
Laden kaufen kann. Ich kann mich nicht mehr genau an den Namen erinnern, aber
er klang nach "anonymailer" oder so :) Gabs auf ner Seite alla hacken.de *G*
Sarkon, in die Illegalitaet abrutschend.

-----------------------------------------------------------------------------



Re^7: Die ewige Suche nach einem vernuenftigen... (Imda,  8. Jun 2002, 13:23:56):
~#! rn=Sarkon rt=1023529611 rg=suche-biete
~#! tid=1023457950
telnet <mailserver> 25

is sogar bei meim betriebssystem dabei. Ist das jetzt boese ? das kann das
naemlich alles.
Haengt lediglich davon ab, wie schlecht der Mailserver konfiguriert is, sonst
garnix.
tstststs... aber ihr wollts ja bestimmt ne gui ;) 

Imda. der das schon des oefteren praktiziert hat....

-----------------------------------------------------------------------------



Re^6: Die ewige Suche nach einem vernuenftigen... (Olli,  8. Jun 2002, 14:13:54):
~#! rn=Willow rt=1023528941 rg=suche-biete
~#! tid=1023457950
Moin,

der Standard-T-Online-Mailserver macht das. Die bieten aber auch einen
Server an, der die From-Zeile voellig unberuehrt laesst, und alles
akzeptiert, solange es von einer T-Online-IP kommt.
Adresse ist smtprelay.t-online.de, auf der Service-Seite muss man sich
dafuer einmal (kostenlos) freischalten.

Olli

-----------------------------------------------------------------------------



Re^7: Die ewige Suche nach einem vernuenftigen... (Amaryllis,  8. Jun 2002, 18:52:01):
~#! rn=Olli rt=1023538434 rg=suche-biete
~#! tid=1023457950
Nennt sich "X-Sender" bei t-offline und ist leider bei neueren Kunden nicht
mehr die Telefonnummer, sondern eine andere Zahl... frueher konnte man die
virenverseuchten DAUs wenigstens dann noch anrufen und auf ihre Virenschleuder
hinweisen... :/

Ama*

-----------------------------------------------------------------------------



Re^8: Die ewige Suche nach einem vernuenftigen... (Cuchullin,  8. Jun 2002, 18:53:41):
~#! rn=Amaryllis rt=1023555121 rg=suche-biete
~#! tid=1023457950
Wuerde ich als grobe Datenschutzverletzung sehen, wenn da als X-Sender 
eine TELEFONNUMMER stehen wuerde. Also bitte...


-----------------------------------------------------------------------------



Re^9: Die ewige Suche nach einem vernuenftigen... (Amaryllis,  8. Jun 2002, 18:56:19):
~#! rn=Cuchullin rt=1023555221 rg=suche-biete
~#! tid=1023457950
Glaubs oder glaubs nicht. Bei alten - sprich: langjaehrigen - T-Offline-Kunden
steht als X-Sender die Telefonnummer drin (0190123456-001@t-online.de). Hat
mir mehrfach geholfen - ob das datenschutzrechtlich ok ist oder nicht, weiss
ich nicht, die werden das bei dem rosa Riesen aber schon geprueft haben :)

Ama*

-----------------------------------------------------------------------------



Re^10: Die ewige Suche nach einem vernuenftigen... (Linflas,  9. Jun 2002, 19:14:12):
~#! rn=Amaryllis rt=1023555379 rg=suche-biete
~#! tid=1023457950
hmmm, wenn ich das so richtig lese, laeuft es in der Tat auf eine ewige Suche
hinaus ;-)

Klar, wenn ich in meinen client ein anderes from: will, dann wechsle ich den
account. Das wollte ich aber vermeiden.
Ich hatte ja die leise Hoffnung, dass es unter Windows einen client gibt, der
sich aehnlich verhaelt wie Pine auf meinem Server. Das laesst sich naemlich so
konfigurieren, dass ich ohne weiteres eine mail als bill@microsoft.com
verschicken kann, und ohne Blick in den Header merkt niemand was davon.
Ich hab hier einen Stapel Emailadresse, die zwar verschieden sind (vor _und_
nach dem @), aber alle Antworten darauf in einer Mailbox landen. Und fuer jede
Adresse einen neuen Account zu generieren, macht mir keinen Spass.

Wie dem auch sei, danke fuer die Hilfe...

Linflas, faul.

-----------------------------------------------------------------------------



Re^11: Die ewige Suche nach einem vernuenftigen... (Muadib, 10. Jun 2002, 11:07:02):
~#! rn=Linflas rt=1023642852 rg=suche-biete
~#! tid=1023457950
hi,

unberuehrt ob der vorigen Diskussion (obwohl imda recht hat, telnet ist ein
prima mailclient) nochmal meine aussage zum beliebigen setzen des from-feldes:
outlook kann das.

gruss

muadib

-----------------------------------------------------------------------------



Re^12: Die ewige Suche nach einem vernuenftigen... (Muadib, 10. Jun 2002, 11:07:38):
~#! rn=Muadib rt=1023700022 rg=suche-biete
~#! tid=1023457950
und dafuer auch nochmal ein extra artikel: ich kann outlook trotzdem nicht
empfehlen!

-----------------------------------------------------------------------------



Re^13: Die ewige Suche nach einem vernuenftigen... (Linflas, 10. Jun 2002, 21:16:51):
~#! rn=Muadib rt=1023700058 rg=suche-biete
~#! tid=1023457950
Eben ;-)

Ich suche ja auch, siehe Topic, nach einem _vernuenftigen_ Client...

Linflas.

-----------------------------------------------------------------------------



Re^13: Die ewige Suche nach einem vernuenftigen... (Bambi, 12. Jun 2002, 13:42:37):
~#! rn=Muadib rt=1023700058 rg=suche-biete
~#! tid=1023457950
Ich schliess mich mal Deinen vorangegangenen Artikeln vorbehaltlos an. :)

-----------------------------------------------------------------------------



Re: Die Drei Fragezeichen (Liara, 12. Jun 2002, 22:20:54):
~#! rn=Liara rt=1022413227 rg=suche-biete
~#! tid=1022413227
Joot. Es gibt wohl noch Karten fuer die Rheinlandhalle in Muehlheim-Kaerlich
am 4.10.2002. Hat jemand aus dem Raum Koeln/Bonn Lust, da auch hinzugehen?
Karte kostet 16.80 Euro. Bestellung unter www.getgo.de.
Ich wuerde mich ueber eine Mail freuen!

ZZL

-----------------------------------------------------------------------------



firewall (Critter, 17. Jun 2002, 00:43:28):
suche ein tool, dass es mir erlaubt, unsere firewall auszutricksen
da ich ansonsten nur per telnet ueber port 80 rauskomme.
achja und ne anleitung wie ich das einzurichten habe, da ich nich wirklich
ahnung davon habe
gruss critter

-----------------------------------------------------------------------------



Re: firewall (Grimmborn, 17. Jun 2002, 00:46:38):
~#! rn=Critter rt=1024267408 rg=suche-biete
~#! tid=1024267408
Wenn Du einen Rechner ausserhalb unter Deiner Kontrolle hast, auf dem Du also
z.B. einen sshd auf port 80 lauschen lassen kannst, dann solltest Du recht
leicht einen ssh Tunnel aufbauen koennen ueber den Du alles weitere machen
kannst. Anleitung im aktuellen Linuxmagazin.

Je nachdem wo Du Dich befindest machst Du Dir mit dem Tunneln der firewall
_massive_ Probleme, wenn Du auffliegst.

GdA

-----------------------------------------------------------------------------



Re: firewall (Eldaron, 17. Jun 2002, 00:48:22):
~#! rn=Critter rt=1024267408 rg=suche-biete
~#! tid=1024267408
Du kannst saemtliche tcp-ip Verbindungen tunneln, auch ueber https. Ansonsten
bastelst du dir nen Rechner in der freien Wildbahn und connectest den auf Port
80, und der macht ein forward auf den MG-Rechner. Such mal nach rinetd z.b.

Eldaron

-----------------------------------------------------------------------------



Animated-Gif gesucht (Catweazle, 19. Jun 2002, 15:40:37):
Moin. 

Ich suche jemanden der sich gut mit Graphikprogrammen auskennt und mit ein
Animated-Gif basteln kann. Ich kenn mich damit nu leider gar nicht aus, und
meine verzweifelten Versuche mit Gimp waren recht schnell zum Scheitern
verurteilt. 
Ziel des ganzen soll es sein, entweder eine Schrift von links nach rechts
wippen zu lassen, oder den Hintergrund farblich durchscrollen zu lassen. 

Wer also meint er kriegt sowas hin und sich dafuer mit einem feuchten
Haendedruck begnuegt, dafuer aber auch ewiger Dankbarkeit von mir und meinen
Kollegen ausgesetzt sein wird, der moege sich bitte bei mir melden oder
mailen. 

Yours truly,
     Catweazle

-----------------------------------------------------------------------------



Re: Animated-Gif gesucht (Grimmborn, 19. Jun 2002, 15:43:09):
~#! rn=Catweazle rt=1024494037 rg=suche-biete
~#! tid=1024494037
Ich kann Dir einen schwarzen Hintergrund basteln der schoen durchscrollt -
zumindest kannst Du mir das Gegenteil nicht beweisen.
Ansonsten kannst Du mit arbeitslosen (Web)designern die Strasse pflastern, die
sollten langsam soweit sein auch fuer einen feuchten Haendedruck zu
arbeiten...

GdA

-----------------------------------------------------------------------------



Re: Re: Animated-Gif gesucht (Catweazle, 19. Jun 2002, 15:43:49):
~#! rn=Grimmborn rt=1024494189 rg=suche-biete
~#! tid=1024494037
... vergiss nicht die ewige Dankbarkeit!

Nein, das sollte nicht wie eine Drohung klingen :-)

YTC

-----------------------------------------------------------------------------



Re: Animated-Gif gesucht (Jameson, 19. Jun 2002, 17:24:11):
~#! rn=Catweazle rt=1024494037 rg=suche-biete
~#! tid=1024494037
Ist das Problem der Umgang mit dem Programm? oder das Erstellen der Grafik an
sich? Eine relativ unkomplizierte Software ist da der Animation Shop von Paint
Shop Pro (falls es fuer Unix sein soll, nuetzt Dich das natuerlich nichts). Da
solltest Du die Einzelbilder aber schon haben. PSP ist Shareware.

-----------------------------------------------------------------------------



Re: Re: Animated-Gif gesucht (Montanus, 19. Jun 2002, 20:25:48):
~#! rn=Jameson rt=1024500251 rg=suche-biete
~#! tid=1024494037
Also ganz einfach geht das mit Power-Point.
Da brauchste dann noch nciht mal nen Web-Designer fuer, das macht dir auch
jede Buero-Tippse.

-----------------------------------------------------------------------------



Re^3: Animated-Gif gesucht (Catweazle, 20. Jun 2002, 07:52:13):
~#! rn=Montanus rt=1024511148 rg=suche-biete
~#! tid=1024494037
Das Problem ist das Bild an sich. Das issn Logo, das haben wir schon ganz
lange, und ich weiss nicht welche Schrift das ist. 
Man muesste also aus dem gif die Schriftraustrennen und dann irgendwie zum
wippen bringen :) Und natuerlich den Hintergrund irgendwie reparieren. 

YTC

-----------------------------------------------------------------------------



HP Web JetAdmin und Casio Taschenrechner gesucht (Ahab, 20. Jun 2002, 11:09:22):
Hiho :-)

ich weiss, dass ich manchmal komische Wuensche habe. ;) Ich suche zweierlei,
was heute beides irgendwie schon antiquarisch ist:

1) Die HP Web JetAdmin-Software fuer Windows 98(SE), die es bei HP mal zum
   Download gab, die jetzt aber durch was neues ersetzt ist, das aber bei mir
   nicht funktioniert. Die Software dient zur Ansteuerung der Printserver von
   HP. Wenn die jemand haben sollte, bitte melden.

2) Ich hatte (bis ich ihn verbummelt hab) mal einen netten Casio-TR, den es
   heute leider nicht mehr zu kaufen gibt. Ich hab keine Bezeichnung von dem
   Ding parat, ich kanns bloss grob beschreiben. Der Rechner hatte eine
   Eingabezeile (14 Zeichen, Matrix) und eine Ergebnisanzeige (10+2,
   7-Segment-LCD), konnte das gesamte Alphabet plus einige griechische
Zeichen
   darstellen und auch Zeichen tiefstellen. Es gab dazu ein kleines Heft,
   in dem die (128?) Festspeicherformeln beschrieben waren. Ausserdem kam mit
   dem Teil irgendwie kaum einer zurecht, weil da statt eines '=' eine EXE-
   Taste drauf war. ;-)
   Das Ding haette ich gerne wieder, also wenn das jemand uebrig hat, bitte
   auch melden. :)

Das war's schon,
Ahoi,
Ahab.

P.S.: Der vergurkte Zeilenumbruch oben ist aergerlich, aber ich bin jetzt
      zu faul, das nochmal zu aendern. ;)

-----------------------------------------------------------------------------



Re: HP Web JetAdmin und Casio Taschenrechner gesucht (Troy, 20. Jun 2002, 11:23:17):
~#! rn=Ahab rt=1024564162 rg=suche-biete
~#! tid=1024564162
Ich hab den JetAdmin fuer Windows ME. Sofern der auch unter 98 laeuft, kannste
den haben.

Troy

-----------------------------------------------------------------------------



Re: Re: HP Web JetAdmin und Casio Taschenrechner gesucht (Grimmborn, 20. Jun 2002, 11:29:23):
~#! rn=Troy rt=1024564997 rg=suche-biete
~#! tid=1024564162
Bitte keinen warez-Handel in der mpa.

GdA

-----------------------------------------------------------------------------



Re^3: HP Web JetAdmin und Casio Taschenrechner gesucht (Troy, 20. Jun 2002, 11:30:26):
~#! rn=Grimmborn rt=1024565363 rg=suche-biete
~#! tid=1024564162
der JetAdmin ist Freeware von HP. Leider blos discontinued.
Das Teil benoetigt Hardware von HP, die man kaufen muss. Deswegen ist die
Software kostenlos.

Troy

-----------------------------------------------------------------------------



Re^4: HP Web JetAdmin und Casio Taschenrechner gesucht (Elberet, 20. Jun 2002, 11:31:04):
~#! rn=Troy rt=1024565426 rg=suche-biete
~#! tid=1024564162
und wenn man ne mail an hp schreibt?

Elbi

-----------------------------------------------------------------------------



Re^5: HP Web JetAdmin und Casio Taschenrechner gesucht (Troy, 20. Jun 2002, 11:31:44):
~#! rn=Elberet rt=1024565464 rg=suche-biete
~#! tid=1024564162
Geht einfacher:
http://www.hp.com/cposupport/nonjsnav/netprn.html (dort die erste Link)

Troy

-----------------------------------------------------------------------------



Re^3: HP Web JetAdmin und Casio Taschenrechner gesucht (Ahab, 20. Jun 2002, 11:32:34):
~#! rn=Grimmborn rt=1024565363 rg=suche-biete
~#! tid=1024564162
Dir ist schon klar, dass die das kostenlos verteilt haben? Die neue Software
ebenfalls, aber die tut halt nicht.

Ahoi,
Ahab, sich mehr Smileys wuenschend.

-----------------------------------------------------------------------------



Re^4: HP Web JetAdmin und Casio Taschenrechner gesucht (Grimmborn, 20. Jun 2002, 11:37:51):
~#! rn=Ahab rt=1024565554 rg=suche-biete
~#! tid=1024564162
Nicht alles was kostenlos verteilt wird darf kostenlos weiterverteilt werden.
Und wegen Dir werde ich gerade noch anfangen meine Artikel mit sebstevidenten
Smilies zu ueberfrachten, navielendank.

GdA

-----------------------------------------------------------------------------



Re^5: HP Web JetAdmin und Casio Taschenrechner gesucht (Tangalur, 20. Jun 2002, 11:47:12):
~#! rn=Grimmborn rt=1024565871 rg=suche-biete
~#! tid=1024564162
Der Casio Rechner koennte ein FX-602 P oder eines der nachfolge Modelle sein.
Selber habe ich noch eien FX-7000 G mit Grafik Ausgabe. Dei kleineren Modelle
dazu hiessen FX-3000 ode Fx-4000 P und haten die beschrieben Funktionen.
Anleitungen zu Casio Rechnern habe ich (unter Angabe der Typenbezeichnung)
kostenlos per Post von Casio bekommen.


-----------------------------------------------------------------------------



Re^6: HP Web JetAdmin und Casio Taschenrechner gesucht (Ahab, 20. Jun 2002, 11:48:58):
~#! rn=Tangalur rt=1024566432 rg=suche-biete
~#! tid=1024564162
Die Anleitung brauch ich nicht, bedienen kann ich das Ding wohl noch (hoffe
ich). Ich such den Rechner an sich, weil mir die modernen irgendwie nicht
so ganz zusagen ;)

Ahoi,
Ahab.

-----------------------------------------------------------------------------



Re^6: HP Web JetAdmin und Casio Taschenrechner gesucht (Tangalur, 20. Jun 2002, 11:50:54):
~#! rn=Tangalur rt=1024566432 rg=suche-biete
~#! tid=1024564162
sorry fuer die typos tippe hier blind ein....debke es koennte ein fx-3000 p
oder 4000-p sein...vielleicht findet man sowas bei e-bay

-----------------------------------------------------------------------------



Re^7: HP Web JetAdmin und Casio Taschenrechner gesucht (Matis, 20. Jun 2002, 15:10:11):
~#! rn=Tangalur rt=1024566654 rg=suche-biete
~#! tid=1024564162
Also mein TR traegt 

 "CASIO fx-5000F SCIENTIFIC FORMULA 128"

als Aufschrift und hat genau die beschriebenen Eigenschaften. Aber
bekommen tust Du ihn trotzdem nicht :o).

Matis

-----------------------------------------------------------------------------



Re^4: Animated-Gif gesucht (Mupfel, 21. Jun 2002, 00:30:01):
~#! rn=Catweazle rt=1024552333 rg=suche-biete
~#! tid=1024494037
Photiline kann das. Is ne Shareware (30 Tage testen, das sollte reichen).
Gibts bei www.pl32.de.
Man macht damit ein Bild mit Ebenen, wobei jede Ebene sozusagen der naechste
Schritt der Animation ist. Dann speicherste das ganze als Anim Gig wobei man
noch angeben kann wie schnell das laeuft usw.

-mupfel-
PS es heisst natuerlich PhotoLine ;)

-mupfel-

-----------------------------------------------------------------------------



Re^5: Animated-Gif gesucht (Mandragon, 21. Jun 2002, 07:59:43):
~#! rn=Mupfel rt=1024612201 rg=suche-biete
~#! tid=1024494037
Was meinst du mit SNAFU? Strawberries now all fudged up (von B&J) ?

Ma*

-----------------------------------------------------------------------------



Re^6: Animated-Gif gesucht (Montanus, 21. Jun 2002, 22:43:14):
~#! rn=Mandragon rt=1024639183 rg=suche-biete
~#! tid=1024494037
S(ituation) N(ormal) A(ll) F(ucked) U(p)
Weiss man spaetestens seit dem Lesen von Illuminati.

-----------------------------------------------------------------------------



TShirt Druck (Zarniya,  1. Jul 2002, 08:41:32):
Hallo, 

ich will eine kleinere Menge TShirts machen lassen, wenn es geht Siebdruck...
kennt sich da einer aus mit Preisen und Anbietern? Bitte per Email bei mir
melden.

Marc

-----------------------------------------------------------------------------



Visualisierungssoftware (Zarniya,  1. Jul 2002, 10:04:35):
HI, 

ich suche eine Visualisierungssoftware, die stf-dateien auslesen kann, diese
schoen, auch farbig darstellen und vielleicht auch noch animieren kann.
Sozusagen Filmchen basteln. Das ganze dient zur Veranschaulichung von MD
Simulationen in der Chemie. Bis jetzt nutzen wir SciAn, aber wir suchen
Alternativen... 

Vorschlaege bitte per Email an mich.

Marc

-----------------------------------------------------------------------------



Re: Animated-Gif gesucht (Roland,  2. Jul 2002, 14:00:06):
~#! rn=Catweazle rt=1024494037 rg=suche-biete
~#! tid=1024494037
Also ich wuerde da einfach ne kleine bastelarbeit vorschlagen .... 
mit einem guten grafikprogramm kannst du die schrift leicht vom hintergrund
trennen und belibig in den winkeln aendern ... und wieder auf den hintergrung
projezieren... 
das machst du 4-5 mal in unterschiedlichen winkeln auf der gleichen achse und
speicherst das als einzeldatein.
danach ist es ein leichtes das mit einem animier programm in bewegung zu
bringen... 
fuer windoof waer ein gutes zum beispiel   Gif Construction Set Professional 
das animier 95% allein man muss nur die bilderreihenfolge fest legen ... 
gibtz auch als shareware im netz zu laden ... etwas weniger funktionen aber
muste fuer die aktion reichen ... 

MfG Roland der nich schreiben kann ;) 

-----------------------------------------------------------------------------



undelete (Anoris,  5. Jul 2002, 00:34:24):
Da die Win2k Installation irgendwie einfach nicht geklapt hat, hab ich die
Festplatte an den 2ten PC rangehaengt und alle Daten gebackupt.

Festplatte neu NTFS formatiert, Win2k installiert und die Daten ueber das
Netzwerk zurueckverschoben.

Alle Verzeichniss sind vorhanden, nirgends aber die Files. Hoffnung:
Daten liegen auf dem Win98SE Rechner noch. Dafuer muessen die Daten,
da sie verschoben/geloscht wurden, wieder hergestellt werden.

Bitte um Tips fuer Tools ..

Danke!

-----------------------------------------------------------------------------



Re: undelete (Grimmborn,  5. Jul 2002, 06:41:42):
~#! rn=Anoris rt=1025822064 rg=suche-biete
~#! tid=1025822064
Win98SE? Dann guck mal in den Papierkorb.

GdA

-----------------------------------------------------------------------------



Re: Re: undelete (Jameson,  5. Jul 2002, 10:11:59):
~#! rn=Grimmborn rt=1025844102 rg=suche-biete
~#! tid=1025822064
ich glaub er sprach vom Windoof-Aequivalent von mv... nach verschieben is nix
mehr im Papierkorb.

-----------------------------------------------------------------------------



Re^3: undelete (Anoris,  5. Jul 2002, 12:58:45):
~#! rn=Jameson rt=1025856719 rg=suche-biete
~#! tid=1025822064
Wenn waehrend dem ziehen der Maus die Shifttaste gedrueckt wurde ... *snuef*

Das Backup ist vom 23.7.2001 .. 2 Ordner wurden anscheinend mit Inhalt kopiert
Aber wieso der Rest nicht? Warning gabs keine ..

- Anoris

-----------------------------------------------------------------------------



Meine Firma sucht.... (Anthea,  5. Jul 2002, 14:05:24):
iba ingenieurbuero anhaus gmbh 
Koenigswarterstrasse 44
90762 Fuerth
www.iba-germany.ccom
Wir sind        ein mittelstaendisches Unternehmen mit Stammsitz in Fuerth und
                beschaeftigen uns mit der Entwicklung und Herstellung von
                Hard- und Softwarekomponenten fuer PC- gestuetzte Messtechnik
                und PC- basierende Automatisierungssysteme. Mit unseren
                Produkten PDA und ibaAnalyzer sind wir im Bereich der Stahl-
                und Walzwerke auf dem Weltmarkt fuehrend. Neben Stuetzpunkten
                in Dortmund und Berlin sind wir noch mit Niederlassungen in
                Belgien, USA, Mexico und Venezuela vertreten.

Wir suchen      Softwareentwickler /in C++

Ihre Aufgaben   Spezifikation, Entwurf, Kodierung, Test und Dokumentation
                von Software fuer Automatisierungs- und Signalverarbeitungs-
                Systeme.

Ihr Profil      - Hoch- oder Fachhochschulausbildung und einige Jahre
                  Berufspraxis;
                - Teamfaehigkeit und sehr gute Englischkenntnisse;
                - fit im Design von intuitiven Bedieneroberflaechen fuer
                  Windows (MFC / API); 
                - Begriffe wie SPS, IEC1131 und Automatisierungstechnik
                  sind Ihnen nicht fremd;
                - ganz besonders auszeichnen koennten Sie sich mit
                  Kenntnissen im Compilerbau und Design von Algorithmen
                  (LEX / YACC).

Wir suchen      Diplom Betriebswirt /in oder Diplom Kaufmann /-frau)

Ihre Aufgaben   - Ergebnisrechnung, Kostenrechnung, Monatsabschluesse und
                  Controlling;
                - betriebswirtschaftliche Auswertungen und Vorausplanungen;
                - Fuehrung des Anlagevermoegens, Betreuung der Kostenstellen;
                - Kontrolle der Buchfuehrung und Mitarbeit bei der
                  Bilanzerstellung;

Ihr Profil      - gute Kenntnisse in Buchfuehrung;
                - Vertrautheit mit dem Datev-Programm (REWE);
                - sehr gute MS-Office- Kenntnisse (speziell MS-Access);
                - sicheres Englisch ist Voraussetzungen fuer diese
Taetigkeit.

Wir suchen      Vertriebsmitarbeiter /in

Das Produkt     Unser neues Produkt 
                      PDA S7-Direct-Access 
                ist in der Lage beliebige Prozessvariable im
                Millisekundentakt von der Siemens SPS anzufordern und
                zeitrichtig zu visualisieren und zu speichern.

Ihre Aufgaben   - Vertrieb dieses Produkts und die zugehoerige
                  Kundenberatung;
                - Verfassung und Veroeffentlichung von Fachaufsaetzen
                  und Gestaltung von Werbeauftritten in Fachzeitschriften;
                - Betreuung von Automatisierungsfachfirmen und Grosskunden,
                  verbunden mit gelegentlichen Vortragsveranstaltungen und
                  Messeauftritten;

Ihr Profil      - Anlagenerfahrung in der SPS- Programmierung (Siemens-S5/S7);
                -  Praktische Erfahrungen mit Feldbussen und deren
                  Projektierung (Profibus-DP);
                - vorteilhaft waehren auch Kenntnisse von grafischen
                  Programmiersprachen (CFC);
                - selbstaendiges Arbeiten, Kreativitaet, Kontaktfreudigkeit
                  und Fachkompetenz;
                - mit guten oder sogar sehr guten Englischkenntnissen
                  koennen Sie sich auch betrieblich weiterentwickeln.

Wir bieten      - einen sicheren, ausbaufaehigen Arbeitsplatz mit
                  leistungsgerechter Bezahlung;
                - Weiterbildungsmassnahmen;
                - ein hohes Mass an Selbstaendigkeit;
                - die individuelle Atmosphaere eines mittelstaendischen
Betriebes.

Wenn Sie Freude an innovativer Technik haben und unser internationales Team
verstaerken wollen, so bewerben Sie sich mit den ueblichen Unterlagen und
natuerlich auch mit Ihren Gehaltsvorstellungen. 
Mit einem Blick ins WEB koennen Sie mehr ueber uns, unsere Kunden und unsere
Produkte erfahren.

-----------------------------------------------------------------------------



xDSL? (Catweazle, 18. Jul 2002, 10:24:26):
Moin.

Ich moechte xDSL verstehen. Nicht nur das oberflaechliche Zeug, sondern die
Details. Technik, noetige Hardware, was hab ich zuhaus, was ist auf der
gegenseite, wie geht da die Authentifizierung, wie laeuft der traffic, IP,
PPPoE, bestenfalls noch ATM und VPN. 

Weiss da jemand ein gutes Buch zu, der Markt ist irgendwie mit Popel-T-DSL
fuer Kleinweich-Heimanwender, deren Internet nicht funktionert, ueberschwemmt.
Ich braeuchte da was professionelleres.

YTC

-----------------------------------------------------------------------------



Re: xDSL? (Mupfel, 20. Jul 2002, 20:30:50):
~#! rn=Catweazle rt=1026980666 rg=suche-biete
~#! tid=1026980666
such mal in google nach "dsl" und "linux" oder besser noch "dsl" und "freebsd"
- so findeste leichter seiten mit hintergrundinfos.

-mupfel-

-----------------------------------------------------------------------------



WhiteGlove (Muaddib, 23. Jul 2002, 23:45:15):
Hi,

ich suche Erfahrungsberichte ueber WhiteGlove[1] aus erster Hand[2]. Biete
Dankbarkeit.

[1] Fred Cohen & Associates, http://all.net/WG/
[2] das Marketingzeugs hab ich alles schon gelesen

Mua

-----------------------------------------------------------------------------



Filesharing (Zarniya, 24. Jul 2002, 15:56:55):

Hi, 

kennt eigentlich einer sowas wie Kazah oder audiogalaxy, was auch unter Unix
laeuft?


-----------------------------------------------------------------------------



Re: Re: Filesharing (Zarniya, 24. Jul 2002, 16:03:05):
~#! rn=Eldaron rt=1027519287 rg=suche-biete
~#! tid=1027519015
wie schade, dass ich von Unix rede und Du mir was von Linux erzaehlen
willst... 

Marc (der seine SGI eigentlich liebt und der kein Linux antun will)

-----------------------------------------------------------------------------



Re^3: Filesharing (Grimmborn, 24. Jul 2002, 16:03:47):
~#! rn=Zarniya rt=1027519385 rg=suche-biete
~#! tid=1027519015
Ach, Du hast kein X und keinen Zugriff auf einen Linuxrechner?

GdA

-----------------------------------------------------------------------------



Re^4: Filesharing (Zarniya, 24. Jul 2002, 16:04:29):
~#! rn=Grimmborn rt=1027519427 rg=suche-biete
~#! tid=1027519015
Ja, ich hab X und Zugriff auf einen Linuxrechner, aber den darf ich nicht
zumuellen mit Files :)

-----------------------------------------------------------------------------



Re^5: Filesharing (Grimmborn, 24. Jul 2002, 16:06:15):
~#! rn=Zarniya rt=1027519469 rg=suche-biete
~#! tid=1027519015
Es gibt NFS. Es gibt auch ein rsync/scp/whatever, womit man Daten regelmaessig
vom einen Rechner zum anderen schaufeln kann.

GdA

-----------------------------------------------------------------------------



Re^6: Filesharing (Zarniya, 24. Jul 2002, 16:07:03):
~#! rn=Grimmborn rt=1027519575 rg=suche-biete
~#! tid=1027519015
bring mich nicht auf Ideen :-)

-----------------------------------------------------------------------------



Re^3: Filesharing (Vardion, 24. Jul 2002, 16:07:28):
~#! rn=Zarniya rt=1027519385 rg=suche-biete
~#! tid=1027519015
Dann war das urspruengliche Posting aber ziemlich ungenau, da Binaries
zwischen Solaris, HP-UX, AIX, IRIX usw. wohl kaum kompatibel sind. Und wenn Du
Sourcen suchst, sollteste mit nem Linux-Link genug anfangen koennen, um nicht
drueber zu meckern :)

Vardion

-----------------------------------------------------------------------------



Re^4: Filesharing (Troy, 25. Jul 2002, 08:43:23):
~#! rn=Vardion rt=1027519648 rg=suche-biete
~#! tid=1027519015
gibts edonkey nicht als source-code? Mich deucht, da war was...
www.edonkey2000.com

Troy

-----------------------------------------------------------------------------



Suche Lehrbuch (Vanion, 14. Aug 2002, 19:06:54):
Hi,

kann mir jemand ein gutes Russisch-Lehrbuch empfehlen? Ich hab vor einigen
Jahren russisch gelernt und war auch mal ganz gut. Allerdings ist das schon 10
Jahre her. Nu will ich das Wissen wieder auffrischen.

Ich denke mir, dass ein normales Anfaenger-Buch meinen Anspruechen nicht
genuegt, da ich die Grammatik ja im Prinzip schon mal beherrscht habe und
alles nur reaktivieren muss. (und die Vokabeln nochmal lernen *aechtz*

V*, dankbar, im Voraus.

-----------------------------------------------------------------------------



Re: Suche Lehrbuch (Muadib, 15. Aug 2002, 11:23:06):
~#! rn=Vanion rt=1029344814 rg=suche-biete
~#! tid=1029344814
ich hatte mal ein lehrbuch aus dem verlag russkij jazik, das mir gut erschien.
ich weiss aber nicht mehr wie es heisst. ich schau mal nach ob ich es noch
hab.

muadib

-----------------------------------------------------------------------------



Buecher gesucht (Grimmborn, 22. Aug 2002, 14:22:32):
~#! on=Grimmborn ot=1030018394 og=anzeigen
~#! on=Morgoth ot=1030018244 og=hardsoftware
Hi,

meine Ma sucht folgende Buecher von Anne McAffrey:
Drachentrommel
Moreta - Die Drachenherrin von Pern
Nerilkas Abenteuer
Die Renegaten von Pern
Die Delphine von Pern

Wer sich von diesen Buechern trennen moechte, darf mir gerne mailen :))

M*

-----------------------------------------------------------------------------



Re: Buecher gesucht (Grimmborn, 22. Aug 2002, 14:23:09):
~#! rn=Grimmborn rt=1030018952 rg=suche-biete
~#! tid=1030018952
Peinlich, peinlich, ich weiss selber nicht mehr welche Rubriken es hier
gibt... Also, hier ist das wohl richtig aufgehoben.

GdA

-----------------------------------------------------------------------------



Drucker zu verschenken (Jehova,  4. Sep 2002, 13:49:00):
~#! on=Jehova ot=1031139929 og=hardsoftware
Verschenke einen 24-Nadel-Drucker Epson LQ 100.
Kann bei mir (Magdeburg) abgeholt werden.
Bei Versand muessen Kosten uebernommen werden.

Daten:
  24 Nadeln, Graustufen, 300dpi
  Endlospapier-Traktor + 1,6 Kisten Endlospapier
  Einzelblatteinzug ist fest eingebaut
  Kann auch Briefe usw. (manuell zugefuehrt) bedrucken
  Neupreis war 598 DM + Traktor 79 DM :-)
  Papiermagazin fasst 50 Blaetter
  200 Zeichen/Sek im EDV-Druck, sonst 27 Zeichen/Sek
  5 Eingebaute LQ-Schriftarten
  Handbuch mit ESC/P2-Beschreibung
  11 KB-Druckpuffer

Sieht wie neu aus und wegwerfen wollte ich ihn eigentlich nicht. Bei E-Bay
gibt's auch maximal mal ne Mark fuer. Also wer ihn haben will...

J*

-----------------------------------------------------------------------------



Suche Link/Info zu Online-Auktionen (Ronda,  4. Sep 2002, 21:37:21):
Hallo,

diesmal suche ich keine Wohnung, sondern Infos ;-)

Bei einer eBay-Auktion habe ich ne DVD ersteigert - und der Verkaeufer
will/kann nicht liefern, da sein Haendler die DVD nicht an ihn liefern wuerde.
Die DVD ist aber zB bei Amazon.de zu bekommen - nur halt eben viel teurer.
Weiss zufaellig jemand von Euch gute Infos dazu, welche rechtlichen Grundlagen
bei Online-Auktionen gelten? Gute Tipps, was ich machen kann, um die DVD doch
noch vom Verkaeufer zu bekommen - ich will die nun mal zum guenstigen Preis
bekommen und eben nicht bei Amazon kaufen ;-)

Ronda *dankbar fuer gute Ideen*

-----------------------------------------------------------------------------



Re: Suche Link/Info zu Online-Auktionen (Jehova,  5. Sep 2002, 04:38:51):
~#! rn=Ronda rt=1031168241 rg=suche-biete
~#! tid=1031168241

So wie ich das sehe hast Du zwar Anspruch auf die Lieferung Deiner DVD, aber
da der Warenwert zu niedrig ist, wird kein Gericht in Deutschland einen
Prozess deswegen zulassen und kein Anwalt (werden nach Streitwert bezahlt)
wird sich darum reissen, sowas anzunehmen.

Meine Erfahrung aus Prozessen (okay, da ging's immer um Einbruch) sagt mir,
dass die Taeter besser geschuetzt sind als die Opfer. Wenn z.B. nach einem
Einbruch der Taeter es richtig macht, wird er nur alles, was er noch nicht
versetzt hat zurueckgeben muessen; alles was versetzt ist wird er abstreiten
(und das weise man denen mal nach) und Schaeden (an Schloessern, ...) werden
so minimal ausfallen, so dass er nicht mal vor Gericht kommen muss. Ein Trick,
wie man dennoch an sein Geld kommen kann ist, seinen Anwalt zu bitten ein
Schreiben mit einer Schadensrechnung aufzusetzen und einen Zahlungstermin
anzugeben. Das muss offiziell aussehen. Wenn der Gegner den Trick nicht gleich
mitbekommt oder ueber seinen Anwalt die rechtmaessigkeit pruefen laesst,
bezahlt er evtl ausversehen. Eine Mahnung kannst Du sogar selbst verschicken.
Hilft natuerlich nur, wenn der Typ drauf reinfaellt und der Anwalt den Brief
ohne Erstberatungsgebuehr (Anwalt befreundet, man selbst ist Student, oder so)
verschickt :-) Was der lange Absatz soll? Dir zeigen, dass die rechtlichen
Mittel fuer Dich wahrscheinlich nichts bringen werden. Sei denn, Du kannst
Deine Forderung an die Russen-Mafia verkaufen. Was Dir aber trotzdem keine DVD
bescheren wird :-)

Dein einziges Druckmittel ist die Bewertung bei E-Bay. Drohe einfach mal, dass
die negativ ausfallen wird, wenn er nicht liefert. Zeige ihn evtl. auch als
Betrueger bei E-Bay an. Meiner Erfahrung nach handeln die meist recht flott
und die Leute werden verwarnt oder fliegen raus.

J*

-----------------------------------------------------------------------------



Re: Re: Suche Link/Info zu Online-Auktionen (Grimmborn,  5. Sep 2002, 06:52:11):
~#! rn=Jehova rt=1031193531 rg=suche-biete
~#! tid=1031168241
Kleiner Tip zu dem Thema:
http://www.russisch-inkasso.de/

GdA

-----------------------------------------------------------------------------



Re^3: Suche Link/Info zu Online-Auktionen (Krellja,  5. Sep 2002, 14:00:33):
~#! rn=Grimmborn rt=1031201531 rg=suche-biete
~#! tid=1031168241
Moin,

es gab da mal die Geschichte mit dem VW-Passat bei eBay, wo der Verkaeufer
auch nicht liefern wollte. Das ist bis zum Bundesgerichtshof gegangen und
der hat entschieden, dass bei einer Online-Auktion ein rechtsgueltiger
Vertrag zustande kommt.

O.k., das ist eine etwas andere Preisklasse als eine DVD aber vielleicht
kannst Du den Verkaeufer ja mal darauf hinweisen und ihm im klar machen,
dass Du trotz des geringen Streitwertes eine Strafanzeige nicht scheust.
Es gehe Dir halt ums Prinzip.

Selbst wenn es nie zu einem Verfahren kommen wird, unbequem ist so etwas
trotzdem.

Tschuess

Krellja

p.s. de.soc.recht.misc ist vielleicht auch eine gute Idee fuer Deine Frage.

-----------------------------------------------------------------------------



Re^4: Suche Link/Info zu Online-Auktionen (Ronda,  5. Sep 2002, 17:53:28):
~#! rn=Krellja rt=1031227233 rg=suche-biete
~#! tid=1031168241
Hi,

danke fuer Eure Tip(p)s - besonders Grimmborns Link klingt nach einer
handfesten Loesung ;-)
Die Geschichte mit dem VW hatte ich auch noch in Erinnerung, nur irgendwie
finde ich dazu nichts, auf das ich verweisen kann...
Eine schlechte Einstufungen bei eBay bekommt der Knabe von mir sowieso - das
hilft anscheinend auch nicht weiter ;-(

Danke fuer die Ideen,

Ronda *mit Moskau telefonierend*

-----------------------------------------------------------------------------



Re^5: Suche Link/Info zu Online-Auktionen (Pilgrim,  8. Sep 2002, 16:40:03):
~#! rn=Ronda rt=1031241208 rg=suche-biete
~#! tid=1031168241

Ebay und BGH
http://www.heise.de/newsticker/data/tig-07.11.01-002/
http://www.wlk-erlangen.de/wlk_aufs059.html

Oder
http://www.jurpc.de/rechtspr/20010255.htm

Das Aktenzeichen des BGH Urteils war VIII ZR 13/01


http://www.faktuell.de/Nestbeschmutzer/auktionen.shtml

Pilgrim

*.

-----------------------------------------------------------------------------



GasAnalyse-Geraete (Flauros,  8. Sep 2002, 18:06:53):
Ich suche mal einen Rat zu medizinischen Geraeten (Im anaesthesilogischem
Bereich):
Und zwar suche ich Adressen zu Firmen, die GasAnalyse-Geraete, bzw.
MultiGas-Monitore vertreiben/herstellen.

Wenn mir dort jemand eine Adresse oder einen Link schicken koennte, waere ich
sehr verbunden.

Vielen Dank

Flauros - will damit keinen Schund anstellen, keine Angst ;)

-----------------------------------------------------------------------------



Re: Buecher gesucht (Azzuro,  9. Sep 2002, 02:00:12):
~#! rn=Grimmborn rt=1030018952 rg=suche-biete
~#! tid=1030018952
Die Buecher sind von McCaffrey und nicht von McAffrey ;-)
Die Drachenherrin gibt es zur Zeit 4 Mal auf eBay
Drachentrommeln 5 Mal
...
Frohes Mitsteigern Grimmborn!

Nicht dass der Artikel Dir viel weiterhilft, aber ich war nach so langer zeit
mal wieder da,
 da musste ich natuerlich einen Artikel in die MPA setzen ;-)

Gruss
Azzuro

-----------------------------------------------------------------------------



Re: Re: Buecher gesucht (Grimmborn,  9. Sep 2002, 06:31:48):
~#! rn=Azzuro rt=1031529612 rg=suche-biete
~#! tid=1030018952
Welcome back. Und wenn Du die mpa noch gewohnt gewesen waerest haettest Du
sehen koennen dass Morgoth und nicht ich die Buecher gesucht hat...

GdA

-----------------------------------------------------------------------------



Re: Suche Link/Info zu Online-Auktionen (Flintnail,  9. Sep 2002, 13:03:19):
~#! rn=Ronda rt=1031168241 rg=suche-biete
~#! tid=1031168241
Hi,
nach meinen Erfahrungen ist es meist ein:

will

nicht liefern. Wieauchimmer, der gute Mensch hat sich nicht an die
Auktionsbedungungen gehalten. Versuchen kannst du folgendes:

Druck mit Androhung von Negativwertung und Meldung des gesamten Vorgangs an
Ebay - was zu einem Ausschluss des Benutzers fuehren kann - ausueben.
Wenn er einlenkt gut..ansonsten abschiessen diesen 'miesen Ebayer' :)

FLint*

-----------------------------------------------------------------------------



Re: Re: Suche Link/Info zu Online-Auktionen (Puk,  9. Sep 2002, 17:50:55):
~#! rn=Flintnail rt=1031569399 rg=suche-biete
~#! tid=1031168241
hehe, das hilft genau null :)
hatte das gleiche prob, ebay meinte dazu nur 'tja pech gehabt' (frei
uebersetzt) und meine negativ bewertung hat er natuerlich gleich mit einer
gekontert *shrug*
Zwingen kannst du im Grunde keinen, und bei kleineren sachen lohnt es sich
meines erachtens auch gar nicht

Puk

-----------------------------------------------------------------------------



Re^3: Suche Link/Info zu Online-Auktionen (Orktoeter,  9. Sep 2002, 18:09:24):
~#! rn=Puk rt=1031586655 rg=suche-biete
~#! tid=1031168241
BIn zwar kein Jurist, aber das ganze hat wohl zwei Seiten:

1. Eine strafrechtliche, das duerfte als Betrug zu werten sein. Insofern
kannst du gegen den versuchen bei der Staatsanwaltschaft eine Anzeige
einzureichen. Wenn es sich um einen so geringen Streitwert handelt, kann es
allerdings sein, das das nicht grossartig verfolgt wird. Selbst wenn bekommt
derjenige eine Strafe und du deine Sachen immer noch nicht.

2. Unabhaengig von 1. ist da die Zivilrechtliche Seite. Du kannst einen Anwalt
einschalten und auf Erfuellung des Vertrags klagen. Wenn du gewinnst kannst du
von dem Gegner auch noch die Uebernahme deiner Anwaltskosten verlangen.
Problem ist, wenn bei dem nichts zu holen ist, bleibst du auf allen Kosten
(Anwalt, Prozess..) sitzen.

OrkT, raet dazu mit beidem zu drohen aber notfalls ein Bier zu trinken und die
ganze Sache zu vergessen.

-----------------------------------------------------------------------------



Re^4: Suche Link/Info zu Online-Auktionen (Mandragon,  9. Sep 2002, 18:39:12):
~#! rn=Orktoeter rt=1031587764 rg=suche-biete
~#! tid=1031168241
Richtig geil ist dahingehend Scheidungsrecht. Hab da nen Fall in der
Verwandtschaft: Sie kriegt Sozialhilfe und verklagt ihn dauernd und er muss
dafuer noch Zahlen, weil sie es nicht zahlen kann.

Ma*

-----------------------------------------------------------------------------



Re^4: Suche Link/Info zu Online-Auktionen (Liara,  9. Sep 2002, 20:09:26):
~#! rn=Orktoeter rt=1031587764 rg=suche-biete
~#! tid=1031168241
Ich dachte immer, wenn das unter Zivilrecht faellt, tragen beide Seiten die
Kosten selber.

Slayer, bitte uebernehmen Sie! ;-)

-----------------------------------------------------------------------------



Re^5: Suche Link/Info zu Online-Auktionen (Mandragon,  9. Sep 2002, 20:10:56):
~#! rn=Liara rt=1031594966 rg=suche-biete
~#! tid=1031168241
Ne. Normalerweise muss der Verlierer zahlen. Es sei denn er hat nichts. Dann
geniesst er Armenrecht und der andere muss zahlen.

Ma*

-----------------------------------------------------------------------------



Re^5: Suche Link/Info zu Online-Auktionen (Trug, 11. Sep 2002, 19:56:15):
~#! rn=Mandragon rt=1031589552 rg=suche-biete
~#! tid=1031168241
Na, nicht immer ist das lustig; insbesondere wenn dieser arme 'er' seine
partnerin jahrelang gequaelt hat, warum soll dann nicht er auch mal buessen
dafuer?

-----------------------------------------------------------------------------



Re^6: Suche Link/Info zu Online-Auktionen (Flintnail, 13. Sep 2002, 14:21:23):
~#! rn=Trug rt=1031766975 rg=suche-biete
~#! tid=1031168241
Hmm...
vorsicht das da der Schein nicht trugt oder truegt :)
Du setzt vorraus das _er_ quaelt und sie die Scheidung will, oder?
Das heisst er ist koerperlich und/oder mental der Staerkere. Aber was:
Wenn sie mit Maedchennamen StarkimArm heisst, er a. die Kohle verdienen
muss und b. nach Feierabend sich um die Kinder kuemmern und den Haushalt
irgendwohin schmeissen muss? ;-) Zugegeben..rein hypothetisch aber in 
einem Zeitalter in dem Frauen doch schon ein paar mehr Rechte bekamen und
diese dann evt. einigen Vertreterinnen
Kopf schlugen...ach is doch alles Schmarrn ;-)

Kurz nochmal zur EbayGeschichte...

Ich hab da schon andere Erfahrungen gemacht. Kleinwertiges ersteigert,
Verkaeufer zig mal angemailt, der stelte sich Tod, anhand seiner 
Bewertung gesehen das mehrere sich ueber ihn aergerten, ebay darauf
und auf die Kontaktlosigkeit hingewiesen und die freundliche aber
bestimmte Auskunft vom Ebay-Team erhalten, das der Account aufgrund
der Userbeschwerden inzwischen gesperrt ist! Zack Tasche...

Gut mein Auktionsgut hatte ich nicht, aber das gute Gefuehl richtig
gehandelt zu haben und was gutes fuer den Rest der 'tollen e-buyer' 
getan zu haben...

mit anderen Worten: Orktoeter hat recht. Das gesparte Geld in Bier
anlegen ist definitv eine sinnvolle Alternative.

Flint*.

-----------------------------------------------------------------------------



Re^7: Suche Link/Info zu Online-Auktionen (Grimmborn, 13. Sep 2002, 14:46:24):
~#! rn=Flintnail rt=1031919683 rg=suche-biete
~#! tid=1031168241
Meine aktuelle Erfahrung mit ebay ist:
Ich versuche 25 Umzugskartons loszuwerden. An Selbstabholer, weil die Teile
sperrig sind und sich nicht wirklich gut verschicken lassen (UPS wuerde wohl
rund 60 EUR kosten). Im zweiten Versuch hab ich den zweiten Depp an der
Strippe, der das mit dem Abholen nicht so gesehen haben will und auch eher
ungern 10 EUR fuer die Kisten und 60 EUR fuer die Fracht zahlen will. Ich sag
euch, im dritten Anlauf gibts keine Gnade mehr, selbst wenn das schon wieder
so ein Bayer ist. Analphabeten, alle miteinander.

GdA

-----------------------------------------------------------------------------



Re^8: Suche Link/Info zu Online-Auktionen (Bambulko, 13. Sep 2002, 14:47:46):
~#! rn=Grimmborn rt=1031921184 rg=suche-biete
~#! tid=1031168241
Und Du darfst auch noch die ebay-gebuehren bezahlen?

Bambulko

-----------------------------------------------------------------------------



Re^9: Suche Link/Info zu Online-Auktionen (Bielefeld, 13. Sep 2002, 14:48:24):
~#! rn=Bambulko rt=1031921266 rg=suche-biete
~#! tid=1031168241
Wieso, bei geplatzten Transaktionen kann man sich das rueckerstatten
lassen...

-Bielefeld

-----------------------------------------------------------------------------



Re^10: Suche Link/Info zu Online-Auktionen (Grimmborn, 13. Sep 2002, 14:49:18):
~#! rn=Bielefeld rt=1031921304 rg=suche-biete
~#! tid=1031168241
Jaja, fuer die 40 Cent werd ich gerade noch nen Aufstand machen (der
Ersteigerer hat mir auch die Gebuehren angeboten), aber was nutzt mir das? Ich
will die Kartons loswerden, nicht Geld scheffeln.

GdA

-----------------------------------------------------------------------------



Re^11: Suche Link/Info zu Online-Auktionen (Bambulko, 13. Sep 2002, 14:50:04):
~#! rn=Grimmborn rt=1031921358 rg=suche-biete
~#! tid=1031168241
Brennen die nicht gut? Oder setzt das zu viel CO2 frei?

Bambulko

-----------------------------------------------------------------------------



Re^12: Suche Link/Info zu Online-Auktionen (Grimmborn, 13. Sep 2002, 14:53:27):
~#! rn=Bambulko rt=1031921404 rg=suche-biete
~#! tid=1031168241
Ich kann sie auch zum Altpapier rausstellen, aber das ist doch irgendwie
schade drum. Solche Kartons kosten neu auch mal so um die 2 EU/Stueck, das
kann sich doch jemand sparen. Ein Umzug ist teuer genug.

GdA

-----------------------------------------------------------------------------



Peanuts-Kenner gefragt (Daria, 15. Sep 2002, 11:31:44):
Huhu,
ich suche ein Bild vom kleinen rothaarigen Maedchen, in das charlie Brown
verliebt ist. Ich hoffe, dass das uberhaupt mal in einem Strip aufgetaucht
ist...
Danke!
Daria

-----------------------------------------------------------------------------



Re: Peanuts-Kenner gefragt (Humni, 16. Sep 2002, 14:21:23):
~#! rn=Daria rt=1032082304 rg=suche-biete
~#! tid=1032082304
Nein, ist es soweit ich weiss nicht. Angeblich gibt es einen Film, in dem es
zu sehen ist, aber in den Strips ist sie soweit ich weiss nie aufgetaucht. Ich
bin KEIN grosser Peanuts-Kenner, aber ich meine das mal in einem Interview
gelesen zu haben.

Humni

-----------------------------------------------------------------------------



Re: Re: Peanuts-Kenner gefragt (Anthea, 16. Sep 2002, 14:33:05):
~#! rn=Humni rt=1032178883 rg=suche-biete
~#! tid=1032082304
Yep, in der offiziellen Peanuts-FAQ (unter http://www.peanuts.com/ )

Q. What about the Little Red-Haired Girl?

A. There are two different lines of thought about "the Little Red-Haired
Girl." 

1) If you purely follow the strip (which is the preferred interpretation of
the story lines by most PEANUTS purists), the Little Red-Haired Girl is never
given a name. Actually, she's never even seen in the strip. 

2) The Little Red-Haired Girl did actually appear in one of the PEANUTS TV
specials ("It's Your First Kiss, Charlie Brown," 1977), in which she was
called "Heather." But in this instance, the creative decisions regarding her
appearance were decided by the show's animators - not Mr. Schulz.


-----------------------------------------------------------------------------



Re: Peanuts-Kenner gefragt (Snoopie, 16. Sep 2002, 14:34:13):
~#! rn=Daria rt=1032082304 rg=suche-biete
~#! tid=1032082304
Also es gibt ein rothaariges Maedl das auf C.B. steht Name: Peppermint Patty.
snooperl.

-----------------------------------------------------------------------------



Re: Re: Peanuts-Kenner gefragt (Anthea, 16. Sep 2002, 14:35:00):
~#! rn=Snoopie rt=1032179653 rg=suche-biete
~#! tid=1032082304
Schon, aber das ist eine Verdrehung der Frage.

-----------------------------------------------------------------------------



Re^3: Peanuts-Kenner gefragt (Humni, 16. Sep 2002, 14:41:35):
~#! rn=Anthea rt=1032179700 rg=suche-biete
~#! tid=1032082304
Nein, P.P. ist nicht ,,das kleine rothaarige Maedchen''. Das ist was ganz
anderes. IMHO wollte Schulz, dass diese Person immer ein ferner Wunschtraum
ist, der nichtmal fuer den Leser zu sehen ist.

Humni

-----------------------------------------------------------------------------



S: Sendmail-Experten (Amaryllis, 17. Sep 2002, 13:44:15):
Hi,

ich brauche eine Sendmail-Konfiguration, mit der ich alle Mail, die von einer
bestimmten Email-Adresse abgesendet werden, entweder als Datei auf Platte
speichern oder per BCC (unsichtbar fuer den Absendenden) an eine andere
Mailadresse als Kopie weitersenden kann.

Irgendwelche Hints?

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: Sendmail-Experten (Bambi, 17. Sep 2002, 13:45:37):
~#! rn=Amaryllis rt=1032263055 rg=suche-biete
~#! tid=1032263055
Ich weiss grad nicht, ob das mit dem "unsichtbar" fuer den Empfaenger gemacht
wird, aber forward-Listen in deinem linux (so du linux hast) sollten da
abhilfe schaffen.

-----------------------------------------------------------------------------



Re: Re: S: Sendmail-Experten (Grimmborn, 17. Sep 2002, 13:49:17):
~#! rn=Bambi rt=1032263137 rg=suche-biete
~#! tid=1032263055
Ja, entweder dem Empfaenger ein .forward unterjubeln, oder mit /etc/aliases
spielen.

GdA

-----------------------------------------------------------------------------



United Anschluss gesucht! (Ancalagon, 20. Sep 2002, 13:20:40):
Tagchenknuddels

Ich hab mal vor Jahren per email United gespielt und musst das dann beenden,
weil ich ne zeitlang kjeinen mailanschluss hatte. jetzt wuerd ich gerne mal
wieder einsteigen. weiss jemand, wo noch einbe liga laeuft und kann mir mail
adresse oder homepage davon mitteilen?
Ich weiss dass frueher mal ein paar muddies azusammen mit mir United gespielt
haben, aber ich weiss nicht mehr genau wer und ob die noch aktiv sind, wer was
weiss moege mir doch bitte mal mailen:::

dANKEWSKNUDDKLER IM VORAUS:::


aNCALAGON
++

++

NN
NN



++

-----------------------------------------------------------------------------



Re: United Anschluss gesucht! (Ancalagon, 20. Sep 2002, 13:22:00):
~#! rn=Ancalagon rt=1032520840 rg=suche-biete
~#! tid=1032520840
ich schon wieder...

Isst schon bloed, wenn man nicht aufpasst was man grad tippt.... naja habt ihr
halt was zum lachen..
Ancalagion


-----------------------------------------------------------------------------



Karte abzugeben (Liara, 29. Sep 2002, 23:56:06):
Falls jemand in der Naehe von Muehlheim-Kaerlich wohnt und sich mal ein
???-Hoerspiel live ansehen moechte:
Ich habe eine Karte fuer den 04.10.2002 (16.80 Euro), bin aber an dem Abend
leider verhindert. Ich taete die auch verschenken tun, damit sie wenigstens
noch einen Nutzen hat. ;-)
Es geht hier um die 'Master of Chess'-Tour in der Rheinlandhalle
(www.getgo.de).

-----------------------------------------------------------------------------



Zitate gesucht (Mesirii,  4. Okt 2002, 02:39:01):
Ich suche typische MG-Zitate, wie Heul' doch (c) Anatol oder Loesch Dich! (c)
Lug.
Bitte an zitate@mesirii.de schicken.
Danke
Gruss Mesi

-----------------------------------------------------------------------------



Re: Zitate gesucht (Montanus,  7. Okt 2002, 03:11:22):
~#! rn=Mesirii rt=1033691941 rg=suche-biete
~#! tid=1033691941
Hmmm.
Beide genannten "Zitate" sind nun leider falsch. Jedenfalls was das (c)
anbelangt.
Aber wenn du herausbekommst, von wem "rufe Dancer nach Pyramiden" original
stammt, lass es uns bitte wissen.

-----------------------------------------------------------------------------



Re: Zitate gesucht (Orktoeter,  7. Okt 2002, 08:51:52):
~#! rn=Mesirii rt=1033691941 rg=suche-biete
~#! tid=1033691941
Da war mal etwas mit einer Fee und einem Wunsch und immer wenn Grimmborn das
sagte hatte er dabei so ein grinsen im Gesicht...

OrkT.

-----------------------------------------------------------------------------



Re: Re: Zitate gesucht (Montanus,  7. Okt 2002, 15:42:03):
~#! rn=Orktoeter rt=1033973512 rg=suche-biete
~#! tid=1033691941
und da war auch was mit Shcneeman und wegg. Wie OT sagte, frag mal GdA.

-----------------------------------------------------------------------------



Re^3: Zitate gesucht (Grimmborn,  7. Okt 2002, 15:51:00):
~#! rn=Montanus rt=1033998123 rg=suche-biete
~#! tid=1033691941
Das war "shcneemann nahc wegg", um genau zu sein.

GdA

-----------------------------------------------------------------------------



Re^4: Zitate gesucht (Mupfel,  7. Okt 2002, 20:47:24):
~#! rn=Grimmborn rt=1033998660 rg=suche-biete
~#! tid=1033691941
Ich erinnere mich... als ich n kleiner Spieler war, gehoerte Grimmborn zu den
Topsehern (auch wenn er das selbst nicht so sieht ;), und hatte immer nen
flotten Spruch parat. Auch und vor allem gegen die Magier ;)

-mupfel-

-----------------------------------------------------------------------------



Re^5: Zitate gesucht (Grimmborn,  7. Okt 2002, 20:49:13):
~#! rn=Mupfel rt=1034016444 rg=suche-biete
~#! tid=1033691941
Zu der Zeit waren die Topseher Toeter und Ryne, und sonst gar keiner. An deren
Stil und Coolness kommt heutzutage niemand auch nur annaehernd ran.

GdA

-----------------------------------------------------------------------------



Re^6: Zitate gesucht (Willow,  7. Okt 2002, 21:39:14):
~#! rn=Grimmborn rt=1034016553 rg=suche-biete
~#! tid=1033691941
Yup - definitiv!!! ich erinnere an das eine party-bild: cattie mit leibwache
;)
Das Weiderl

-----------------------------------------------------------------------------



Re^7: Zitate gesucht (Mupfel,  7. Okt 2002, 21:46:16):
~#! rn=Willow rt=1034019554 rg=suche-biete
~#! tid=1033691941
Ich erinnere mich sogar an die Party ;)

-mupfel-

-----------------------------------------------------------------------------



Re^8: Zitate gesucht (Grimmborn,  7. Okt 2002, 21:47:41):
~#! rn=Mupfel rt=1034019976 rg=suche-biete
~#! tid=1033691941
Ich hab beim vorletzten Umzug die uttons und Faehnchen von der Party verloren.

GdA fragt: Toeter, wie spaet ist es?

-----------------------------------------------------------------------------



Biete: Verrueckte Idee. Suche: Verrueckte(n) fuer Senioren-Computerkurse ;-) (Ronda,  7. Okt 2002, 23:32:42):
Hi,

eine ziemlich verrueckte Sache: Hat jemand von Euch Lust/Ahnung, Computerkurse
fuer Senioren zu halten - im September 2003 fuer zwei Wochen?
Das ganze klingt - was ich bisher weiss - ziemlich verrueckt, sehr witzig und
... anders ;-)

Wen's interessiert: Melde Dich bitte moeglichst schnell per Mail oder direkt
an mich,

Ronda

-----------------------------------------------------------------------------



Baldur's Gate (Hera, 17. Okt 2002, 18:57:17):
Suche die Legenden der Schwertkueste ...

Hera

-----------------------------------------------------------------------------



Spiel in Esssen (Liara, 18. Okt 2002, 21:30:44):
Suche am Samstag eine Mitfahrgelegenheit von Essen in Richtung Bonn fuer 2
Leuts. :-) Ja, es ist etwas kurzfristig. ;-)
Ich gugge morgen nochmal in's Mud ... bidde um Handynummer oder so. :-)

-----------------------------------------------------------------------------



Re: Spiel in Esssen (Liara, 18. Okt 2002, 21:32:21):
~#! rn=Liara rt=1034969444 rg=suche-biete
~#! tid=1034969444
Aeh, genau Samstag-Abend. ;-)

-----------------------------------------------------------------------------



Pen & Paper Regelbuecher (Elizabeth,  5. Nov 2002, 19:46:01):
Ich such jemanden, der ein Pen & Paper Regelbuch(er) verkaufen will, oder auch
nur eins hat..
tm oder mail waer nett
eli*

-----------------------------------------------------------------------------



Re: Pen & Paper Regelbuecher (Foobar,  5. Nov 2002, 20:43:08):
~#! rn=Elizabeth rt=1036521961 rg=suche-biete
~#! tid=1036521961
Zu welchem System?

Oder ist es Dir recht wenn ich selber eben eins schreibe? :o)

Foobar

-----------------------------------------------------------------------------



Re: Re: Pen & Paper Regelbuecher (Humni,  6. Nov 2002, 12:10:28):
~#! rn=Foobar rt=1036525388 rg=suche-biete
~#! tid=1036521961
Pen&Paper gibt's tausende von Systemen. Wenn Du ,,irgendeins'' suchst, geh in
den naechsten Fantasyladen Deiner Wahl und schau was sie billig verramschen,
meist tun sie das aber nicht ohne Grund. Wenn Du glaubst, dass jemand von uns
ein gutes auch nur Ansatzweise verkaufen wuerde: Nie und Nimmer ;-)

Ich hab einige Regelbuecher und hab mich hiermit ansonsten gemeldet, aber ich
verkauf die nicht ;-)

Humni

-----------------------------------------------------------------------------



.de Domain (Anoris,  6. Nov 2002, 12:33:47):
Huhu MG

Um eine .de Domain zu registrieren, muss der ADMIN-C Kontakt in
Deutschland wohnhaft sein. Jetzt habe ich bei meiner Firma das erste
mal eine Anfrage fuer eine .de Domain erhalten, und frage euch, ob
sich irgendwer als ADMIN-C zur Verfuegung stellen wuerde. Vorteilhaft
waere es, wenn diese Person bereits eingetragen ist, und sich ein wenig
damit auskennt. Freu mich auf hoffentliche Mails. ;)

Liebe Gruesse
- Anoris

-----------------------------------------------------------------------------



Re^3: Pen & Paper Regelbuecher (Elizabeth,  6. Nov 2002, 16:10:42):
~#! rn=Humni rt=1036581028 rg=suche-biete
~#! tid=1036521961
humni heut mal ganz unfreundlich? tut mir ja leid..aber die infos, die ich
wollte hab ich schon bekommen..dankesehr.

-----------------------------------------------------------------------------



Re^4: Pen & Paper Regelbuecher (Humni,  6. Nov 2002, 16:12:04):
~#! rn=Elizabeth rt=1036595442 rg=suche-biete
~#! tid=1036521961
Hmm.. ? Also ich glaub meine unfreundlichen Artikel hast Du noch nicht
gesehen. Da sind keine Smileys drin....

Humni

-----------------------------------------------------------------------------



Azrael's Tears Mindscape gesucht (Inesha,  6. Nov 2002, 17:37:23):
Ich suche oben genanntes Spiel fuer Windows. Falls es jemand in seinem Besitz
hat und los werden will, waere ich hocherfreut davon in Kenntnis gesetzt zu
werden.
Vielen Dank Inesha

-----------------------------------------------------------------------------



digitalkamera (Gnome, 12. Nov 2002, 22:14:21):
hi,

kann mir jmd einen tip fuer eine digitalkamera geben?
eckdaten: mindestens 3 mega-pixel, maximal 400 euro.
gutes preis-leistungsverhaeltnis setze ich mal voraus :)

danke,

gnOme

-----------------------------------------------------------------------------



Re: digitalkamera (Anthea, 13. Nov 2002, 10:26:08):
~#! rn=Gnome rt=1037135661 rg=suche-biete
~#! tid=1037135661
Warte, dass es wieder die Digi-Kamera bei Aldi gibt. ;)

-----------------------------------------------------------------------------



Suche Win2000 (Yendi, 13. Nov 2002, 15:23:07):
Suche eine legale (!) und noch nicht totregistrierte Version von
Microsoft Windows 2000 fuer meinen Heim-PC. Falls jemand einen Haendler kennt,
der das noch im Sortiment hat und Studikonditionen biete, hilft's auch.

YTY

-----------------------------------------------------------------------------



UE-Eier HdR (Cassandra, 15. Nov 2002, 14:04:44):
Da es jetzt die neuen Figuren gibt.
Suche:
Eowyn, Frodo, Sam
Bite zum Tausch:
Gandalf, Faramir, Saruman

wer eine der gesucheten Figuren hat und diese gegen eine der anderen tauschen
moechte meldet sich bitte bei mir.
Wie waers ansonsten mit einer "Tauschboerse" in Thale

Cassandra

-----------------------------------------------------------------------------



Re: UE-Eier HdR (Catweazle, 15. Nov 2002, 14:08:44):
~#! rn=Cassandra rt=1037365484 rg=suche-biete
~#! tid=1037365484
Ich brauche immer noch Frodo, Gandalf und Aragorn aus dem ersten Satz. Tausch
hab ich noch. Bitte nur mit begelegtem U-Ei- Zettel.

YTC

-----------------------------------------------------------------------------



Immernoch Uli Keuler (Cuchullin, 16. Nov 2002, 18:09:50):
Ich suche noch immer: Uli Keuler, "Zimmer zu vermieten".

Im Handel leider seit Jahren vergriffen.

YTCu

-----------------------------------------------------------------------------



Handy geklaut (Liara, 24. Nov 2002, 19:36:08):
Aus o. a. Gruenden suche ich ein Siemens S35i.

-----------------------------------------------------------------------------



Re: Handy geklaut (Catweazle, 24. Nov 2002, 22:20:52):
~#! rn=Liara rt=1038162968 rg=suche-biete
~#! tid=1038162968
Kannst meins haben, sobald ich mir das neue S55 zu bezahlbaren Preisen geholt
habe :-)

YTC

-----------------------------------------------------------------------------



Re: Re: Handy geklaut (Bambulko,  1. Dez 2002, 11:13:30):
~#! rn=Catweazle rt=1038172852 rg=suche-biete
~#! tid=1038162968
Was ist bei Dir bezahlbar? 285 Euro?

Bambulko

-----------------------------------------------------------------------------



Schnurloses Telefon gesucht (Jameson,  2. Dez 2002, 15:17:21):
Hallo!

Ich will mir ein schnurloses Telefon zulegen, das ein paar Features haben
soll:

- Betrieb mit normalen Mignon-Akkus, keine Spezialakkus
- Freisprechen (darauf kann ich noch am ehesten verzichten)
- echtes Telefonbuch mit Namen und Telefonnummern (also nicht nur ein
Schnellwahlspeicher, in dem nur Telefonnummern drinstehen)

und vor allem

- Call-by-call mit Telefonbuch kombinierbar, d.h. ich waehle eine 010x0- oder
01900xx-Vorwahl und suche anschliessend einen Eintrag aus dem Telefonbuch aus.
(Dabei ist es mir persoenlich egal, ob ich vor dem Eingeben der Cbc-Vorwahl
ein Freizeichen haben muss oder nicht.)

Ich weiss, dass einige Siemens-Geraete das alles erfuellen, aber die sind auch
relativ teuer. Ausserdem vermute ich, dass das Call-by-call-feature auch
einige andere schnurlose Telefone haben, aber das geht aus den Angaben auf den
Verpackungen und meistens aus den Betriebsanleitungen (sofern man drankommt)
nicht hervor, und die Angestellten in den Laeden, in denen ich bisher war,
wussten darueber auch nichts (oder wollten nichts wissen).

Vielleicht ist ja der eine oder die andere so nett, mal mit dem eigenen
Telefon auszuprobieren, ob das mit dem Call-by-call so funktioniert, wie ich
es oben beschrieben habe. Es muesste doch das eine oder andere etwas
guenstigere geben, das das kann und auch sonst was taugt.

jAmeson

-----------------------------------------------------------------------------



Alte Fernsehserien... (Karis, 10. Dez 2002, 10:36:11):
Kennt noch jemand die Serie "Die Rebellen vom Liang Shang Po" ?
Wurde mal irgendwann Anfang der 80er ausgestrahlt, aber wohl
leider nie wiederholt... auf Video/DVD hab ich auch noch nix gefunden.
Hat da noch jemand was auf ner alten Kassette oder sonstige 
sachdienliche Hinweise?

Danke,
Karis

-----------------------------------------------------------------------------



Re: Alte Fernsehserien... (Morgoth, 10. Dez 2002, 10:37:25):
~#! rn=Karis rt=1039512971 rg=suche-biete
~#! tid=1039512971
Ja, kenne ich. Aber leider keine Aufzeichnungen, wenn Du was findest nehm ich
das auch gerne :)

M*

-----------------------------------------------------------------------------



Re: Re: Alte Fernsehserien... (Foobar, 10. Dez 2002, 10:52:54):
~#! rn=Morgoth rt=1039513045 rg=suche-biete
~#! tid=1039512971
Ich hab vor einigen Tagen in irgendeiner de. Newsgroup gelesen, dass die
Anfang 2003 auf DVD aufgelegt wird. Evtl. hilft eine kurze Suche bei
groups.google.de (heisst aber "Lian Shan Po" IIRC).

Gruss,

   Foobar

-----------------------------------------------------------------------------



Re^3: Alte Fernsehserien... (Karis, 10. Dez 2002, 11:08:49):
~#! rn=Foobar rt=1039513974 rg=suche-biete
~#! tid=1039512971
Jo, habs grad gefunden. Sieht so aus, als wuerden die
26 Episoden naechstes Jahr unter dem Titel 
"The Water Margin" auf DVD gepresst. Fein :)
Danke fuer die Hinweise,
Karis

-----------------------------------------------------------------------------



Re^4: Alte Fernsehserien... (Croft, 10. Dez 2002, 12:33:10):
~#! rn=Karis rt=1039514929 rg=suche-biete
~#! tid=1039512971
Schoene Seite fuer solche alten Serien:
http://www.fernsehserien.de/
Speziell ueber die Serie:
http://www.fernsehserien.de/frameset.php?sendung=565
Gruss Croft

-----------------------------------------------------------------------------



Re: Alte Fernsehserien... (Ancalagon, 13. Dez 2002, 01:23:52):
~#! rn=Karis rt=1039512971 rg=suche-biete
~#! tid=1039512971
Halloechenknuddels

Und wenn das dann auch zu mir kommen koennte *grins*

Ancalagon

(mochte besonders das maedel mit dem Doppelschwert auf dem Ruecken...) :)


-----------------------------------------------------------------------------



Irix 6.5 (Eldaron,  5. Feb 2003, 23:28:16):
Ich suche Installations-Cds fuer Irix 6.5. Wer sowas irgendwo rumliegen hat,
und mir einen guten Preis machen kann, wende sich bitte per tm oder Mail an
mich.

Eldaron

-----------------------------------------------------------------------------



Nymphensittich (Arancia,  6. Feb 2003, 00:22:13):
Uns ist vor geraumer Zeit ein Nymphesittich zugeflogen. Falls also jemand aus
dem Berliner Raum Interesse an eben diesem Vogel haette, wuerden wir ihn gerne
in treue Haende uebergeben. Er ist weiss und etwas laut. Passender Kaefig samt
Zubehoer gibt es dazu. Bei Interesse bitte mail an mich oder Nyx. 

-----------------------------------------------------------------------------



Guenstige Fluege (Amaryllis, 17. Feb 2003, 18:35:20):
Moin,

ich suche Anbieter von Billigfluegen, im speziellen geht es um einen Flug nach
Spanien.
Wer kennt da gute Links, wo man sich mal orientieren kann?

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Re: Guenstige Fluege (Elizabeth, 17. Feb 2003, 18:35:48):
~#! rn=Amaryllis rt=1045503320 rg=suche-biete
~#! tid=1045503320
wuerd ich auch gern wissen. 

-----------------------------------------------------------------------------



Re: Re: Guenstige Fluege (Grimmborn, 17. Feb 2003, 18:46:11):
~#! rn=Elizabeth rt=1045503348 rg=suche-biete
~#! tid=1045503320
Ihr lest keine Tageszeitungen (oder die falschen), ja? Da gibts doch taeglich
viele, viele Anzeigen. Besonders schoen ist diese Hapag Loyd Werbung: "Fliegen
zum Taxipreis" - wissen die was so eine Taxifahrt von Koeln nach Hamburg
kostet?

GdA

-----------------------------------------------------------------------------



Re^3: Guenstige Fluege (Amaryllis, 17. Feb 2003, 18:48:53):
~#! rn=Grimmborn rt=1045503971 rg=suche-biete
~#! tid=1045503320
Naja, ich hab keine Erfahrung damit, daher meine Frage. Vielleicht gibts ja
brauchbare "Portale" zum Einstieg, oder jemand kann (gutes oder schlechtes)
von Anbietern erzaehlen...

Ama*

-----------------------------------------------------------------------------



Re^4: Guenstige Fluege (Liara, 17. Feb 2003, 19:02:33):
~#! rn=Amaryllis rt=1045504133 rg=suche-biete
~#! tid=1045503320
Ich habe die besten Infos bisher aus dem SWR3-Clubmagazin. Der Sender hatte
die alle mal durchgetestet. Moeglicherweise gibt es da unter www.swr3.de mehr.

-----------------------------------------------------------------------------



Re^5: Guenstige Fluege (Liara, 17. Feb 2003, 19:06:27):
~#! rn=Liara rt=1045504953 rg=suche-biete
~#! tid=1045503320
Nachtrag: Die Infos gibt es im Netz ... und zwar zu beiden Tests, die sie
durchgefuehrt haben. Auf www.swr3.de zu 'Info' gehen und bisserl
runterscrollen. :)

-----------------------------------------------------------------------------



Re^6: Guenstige Fluege (Orktoeter, 17. Feb 2003, 19:33:12):
~#! rn=Liara rt=1045505187 rg=suche-biete
~#! tid=1045503320
www.germanwings.de (fliegen ab Koeln)
www.berlinair.de (fliegen ab Dortmund)

Dann gibts noch Ryan, HapagLoyd wie oben schon mal erwaehnt wurde und
andere...

OrkT, schon mit den ersten beiden geflogen und sehr zufrieden.

-----------------------------------------------------------------------------



Re^6: Guenstige Fluege (Croft, 17. Feb 2003, 19:33:14):
~#! rn=Liara rt=1045505187 rg=suche-biete
~#! tid=1045503320
Ryanair bietet zumindest mal Frankfurt/Hahn-Barcelona/Girona an.

Croft

-----------------------------------------------------------------------------



Re^7: Guenstige Fluege (Elizabeth, 17. Feb 2003, 19:33:26):
~#! rn=Orktoeter rt=1045506792 rg=suche-biete
~#! tid=1045503320
berlinair.de ab dortmund??

-----------------------------------------------------------------------------



Re^8: Guenstige Fluege (Orktoeter, 17. Feb 2003, 19:33:52):
~#! rn=Elizabeth rt=1045506806 rg=suche-biete
~#! tid=1045503320
yep

-----------------------------------------------------------------------------



Re^7: Guenstige Fluege (Muaddib, 17. Feb 2003, 21:20:25):
~#! rn=Croft rt=1045506794 rg=suche-biete
~#! tid=1045503320
Wenn Girona so nah an Barcelona ist, wie Hahn an Frankfurt... Na Mahlzeit. Da
kann man fuer die Taxikosten auch locker LH fliegen. Im uebrigen war der
Unterschied auf den Strecken, die ich so fliege, zwischen "Billigairline" und
LH nie besonders gross, wenn man die ganzen Taxen etc mitrechnet. Also fliege
ich lieber LH, das gibt wenigstens Statusmeilen. :)

cheers

-----------------------------------------------------------------------------



Re^8: Guenstige Fluege (Orktoeter, 17. Feb 2003, 21:37:53):
~#! rn=Muaddib rt=1045513225 rg=suche-biete
~#! tid=1045503320
Taxen etc. gibts zumindest bei den beiden Fluglinien die ich oben genannt habe
nicht. Dort ist der angegebene Flugpreis der Endpreis. (variert sehr, bei
Eurowings gibt es manchen Flug bereits fuer 19 Euro, die meisten kosten aber
einiges mehr).

OrkT findet 19 Euro deutlich guenstiger als alles was LH biete kann.

-----------------------------------------------------------------------------



Re^9: Guenstige Fluege (Muaddib, 17. Feb 2003, 21:55:33):
~#! rn=Orktoeter rt=1045514273 rg=suche-biete
~#! tid=1045503320
Also 19 EUR inkl. der Taxen? Cool - wenn man bedenkt, dass die Taxen noch
etwas mehr kosten als 19 EUR... ok, nachdem es second choice plaetze sind,
kosten die vermutlich nicht so viel wie FRA/DUS und KOnsorten... aber dass
Germanwings Geld herschenkt finde ich trotzdem cool. Oder gibts da etwas doch
Nachteile? Wieviel kostet denn der Rueckflug? 79 EUR? Fuer 119 EUR kann ich
auch mit einer nicht-billig Airline fliegen. Naja, jedem sein Kreuz, aber nur
eines und erste Tuer links und so.

Mua

-----------------------------------------------------------------------------



Re^10: Guenstige Fluege (Orktoeter, 17. Feb 2003, 21:57:43):
~#! rn=Muaddib rt=1045515333 rg=suche-biete
~#! tid=1045503320
19 Euro, one way, keine Zusatzkosten. Musst halt evtl. sehr frueh buchen damit
noch etwas frei ist und die Fluege fuer 19 Euro sind wie gesagt duenn gesaet.
Wenn du dir den Rueckflugtermin nicht beliebig aussuchen kannst wird der
teurer.

OrkT.

-----------------------------------------------------------------------------



Re^11: Guenstige Fluege (Muaddib, 17. Feb 2003, 22:00:21):
~#! rn=Orktoeter rt=1045515463 rg=suche-biete
~#! tid=1045503320
Und wer kann sich seinen Rueckflug /beliebig/ aussuchen? Und dann noch 2
Monate vorher buchen? Naja, ich hab mein Kreuz schon. Und will night jemand
diesen Thread beenden, bevor wir an die Erfolge von BC anknuepfen?

-----------------------------------------------------------------------------



Re^3: Guenstige Fluege (Dylac, 19. Feb 2003, 20:41:40):
~#! rn=Grimmborn rt=1045503971 rg=suche-biete
~#! tid=1045503320
Najo, ich kenn da RyanAir (fliegt glaub ich nur nach england) und SkyEurope.
Leider kA, ob skyeurope ausser bratislava auch andere startplaetze hat :)

Links weiss ich leider keine, aber wozu gibts google?

-----------------------------------------------------------------------------



Re^4: Guenstige Fluege (Grimmborn, 19. Feb 2003, 22:08:01):
~#! rn=Dylac rt=1045683700 rg=suche-biete
~#! tid=1045503320
Da kann ich Dir ein paar zusaetzliche Informationen geben:
- Ryanair fliegt in einige europaeische Laender, u.a. auch nach Irland. Ist
  immerhin deren Heimatland.
- Wenn Skyeuropa nur von Bratislava aus starten wuerde wuerden denen schnell
  die Flieger ausgehen. Oder werden die per Bahn zuruecktransportiert?

GdA

-----------------------------------------------------------------------------



Re^5: Guenstige Fluege (Spellfire, 20. Feb 2003, 08:51:14):
~#! rn=Grimmborn rt=1045688881 rg=suche-biete
~#! tid=1045503320
Noch nen kleinen Tio am Rande. Ist euch schonmal aufgefallen das z. B. bei
germanwing der Rueckflug selten zu den gleichbilligen Tarifen angeboten wird
wie der Hinflug? Abhilfe schafft, sich an nen anderen Rechner zu setzen fuer
den Rueckflug ;> 

-----------------------------------------------------------------------------



Re^6: Guenstige Fluege (Orktoeter, 20. Feb 2003, 13:45:22):
~#! rn=Spellfire rt=1045727474 rg=suche-biete
~#! tid=1045503320
Was willst du mit dem Artikel aussagen? Rueckfluege in dem Sinne das man dabei
gegenueber zwei Einzelfluegen spart gibt es meines wissens nach bei
Germanwings eh nicht (kein wunder bei den preisen). Wieso sollte es dann also
etwas bringen sich an einen anderen Rechner zu setzen? Verlegst du deinen
Artikel selber nach Scharrn oder muss Grimm* ran?

OrkT.

-----------------------------------------------------------------------------



Re^7: Guenstige Fluege (Ark, 20. Feb 2003, 13:58:54):
~#! rn=Orktoeter rt=1045745122 rg=suche-biete
~#! tid=1045503320
Ich denke, das war so gemeint, dass sich das Applet merkt, welcher Rechner
Flug A->B anfragt und bei einem entsprechenden Rueckflug beim gleichen Rechner
B->A einen anderen Preis ausspuckt als wenn man "noch keinen Hinflug"
angefragt haette. M.a.W. mit dem Hinflug wird gelockt, beim Rueckflug wird
bezahlt.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^8: Guenstige Fluege (Orktoeter, 20. Feb 2003, 15:39:58):
~#! rn=Ark rt=1045745934 rg=suche-biete
~#! tid=1045503320
Ich habe Verbindungen bislang immer getrennt gesucht (also immer nur one-way)
und kann nur sagen das die 19-Euro Fluege generell selten sind. Das liegt also
eher an der geringen Zahl dieser superpreiswerten Fluege, aber auch bei 29 und
selbst bei 49 Euro (fuer Wien-Koeln) seh ich das immer noch als aeusserst
Preiswert an.

OrkT.

-----------------------------------------------------------------------------



Re^9: Guenstige Fluege (Orktoeter, 20. Feb 2003, 18:04:05):
~#! rn=Orktoeter rt=1045751998 rg=suche-biete
~#! tid=1045503320
Sorry fuer den selbstreply, aber ich schreibe als reply auf den letzen
Artikel:

Billigflieger BerlinJet stellt Flugbetrieb ein

Also den hat es wohl auch (fuer 1,5 Wochen) gegben.

-----------------------------------------------------------------------------



Re^10: Guenstige Fluege (Spellfire, 21. Feb 2003, 00:56:32):
~#! rn=Orktoeter rt=1045760645 rg=suche-biete
~#! tid=1045503320
Huelfe,
orktoeter ignoriert mich doch, warum klappt das denn nicht in der mpa?!?!?

P.S: Ark hat recht
P.P.S.: Es gibt keinen unterschied Zwischen 2 seperaten Fluegen und einem
Return-Ticker im Konzept der billig Flieger

-----------------------------------------------------------------------------



handy motorola v50 (Gnome, 28. Feb 2003, 18:51:43):
verkaufe o.g. handy mit internet access, knapp 2 jahre alt, gut erhalten.
VB 80,-

gnOme

-----------------------------------------------------------------------------



Re^3: Guenstige Fluege (Kellybundy,  3. Mar 2003, 20:29:33):
~#! rn=Grimmborn rt=1045503971 rg=suche-biete
~#! tid=1045503320
Mit der Never-Come-Back-Airlines zum Suicide-Tarif? :)

Blondie

-----------------------------------------------------------------------------



Re^4: Guenstige Fluege (Troy,  4. Mar 2003, 19:48:38):
~#! rn=Kellybundy rt=1046719773 rg=suche-biete
~#! tid=1045503320
(Hier noch ein Nachtrag)
Nur zur Info: Angebote wie das von Hapag-Lloyd sind Kontingentangebote. Das
heisst, dass nur eine bestimmte Anzahl Tickets je Flug zu diesem Preis
verkauft werden (bei Hapag-Lloyd waren es 3 (drei) und nach Gerichtsurteil
dann 10 (zehn)). Alle weiteren Tickets kosten aehnlich wie Linie.
Ausserdem sind diese Kontingente (zumindest bei Hapag-Lloyd) Bulk-Purchase-
faehig, das wiederum heisst, dass zum Beispiel eine Firma sich diese Tickets
fuer alle Fluege der naechsten drei Wochen kaufen kann und dann (teurer)
weiter-
verkaufen. Die Fluggesellschaft darf immer noch mit dem billigen Preis
werben.

Troy
(arbeitet bei und fliegt mit Lufthansa, weil Mitarbeiter-Tarif -- da sieht
man dann wo die Billigtickets hinfuehren...)

-----------------------------------------------------------------------------



S: Mudder mit Digitalkamera in der Naehe von Rostock (Ringor,  6. Mar 2003, 17:57:08):
Hiho,

falls es in der Naehe von Rostock Mudder geben sollte, die in Besitz einer
Digitalkamera sind, wuerde ich mich ueber eine Mail freuen. 


Ringor. Moechte nicht fuer ein Foto nach Rostock fahren. ;-)

-----------------------------------------------------------------------------



Suche: Zeichner (Amaryllis,  9. Mar 2003, 18:08:41):
Hi,

fuer ein Projekt suche ich jemanden, der gut zeichnen kann. Stilrichtung geht
so in die "Comic, Karikatur"-Ecke. Kosten darf es nichts, bei entsprechendem
Erfolg gibts natuerlich eine Wuerdigung :-)
Also, wenn jemand Lust dazu hat (sind ein paar einfache Motive, mehr nicht)
meldet er sich bitte bei mir...

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Suche Unterkunft in Berlin... (Zook, 10. Mar 2003, 17:15:03):
Hallihallo,

haette denn jemand von Euch in Berlin (moeglichst zentral an den 
Veranstaltungsorten) ein Bett oder Platz fuer ne Iso-Matte fuer mich
in der Zeit vom 28. Mai bis 2. Juni 2003? Ich will da naemlich gerne
zum Oekumenischen Kirchentag. 

Gruss, Zook.

-----------------------------------------------------------------------------



Dateivergleich (Critter, 12. Mar 2003, 10:23:39):
Moinsen,
ich suche n Tool oder nen Weg, wie ich zwei TextDateien vergleichen kann.

Datei 1 enthaelt alle Zahlen von 1000000-5999999
Datei 2 enthaelt lauter Zahlen, die aus obigem Intervall stammen,
Nu soll mir das Tool/der Weg rausschmeissen, welche Zahlen in Datei 1
uebrigbleiben, wenn man alle Zahlen, die in Datei 2 sind,
rausschmeisst.
Vielen Dank im voraus Florian.

(konkret geht es darum, rauszufinden welche 0180 Nummern bei der
RegTp vergeben sind und welche nicht. Und die liefern einem nur ne
8MB grosse Textdatei).


-----------------------------------------------------------------------------



Re: Dateivergleich (Thufhir, 12. Mar 2003, 10:25:19):
~#! rn=Critter rt=1047461019 rg=suche-biete
~#! tid=1047461019
ich empfehle: man diff

-----------------------------------------------------------------------------



Re: Dateivergleich (Anatol, 12. Mar 2003, 10:27:43):
~#! rn=Critter rt=1047461019 rg=suche-biete
~#! tid=1047461019
cat file1 file2|sort|uniq -u

Etwaige Feinabstimmung vorbehalten...

-----------------------------------------------------------------------------



Re: Re: Dateivergleich (Critter, 12. Mar 2003, 11:09:53):
~#! rn=Anatol rt=1047461263 rg=suche-biete
~#! tid=1047461019
prima ideen.... nur is mein Broetchengeber WindowsNT basiert... als nix mit
diff und cat...
irgendne idee fuer windoof.

-----------------------------------------------------------------------------



Re^3: Dateivergleich (Vardion, 12. Mar 2003, 11:13:29):
~#! rn=Critter rt=1047463793 rg=suche-biete
~#! tid=1047461019
Cygwin32 installieren und dann Anatols Loesung :)
Ansonsten kann man sicher auch einen Mitarbeiter anheuern der dann in vielen
Stunden arbeit ein tolles grafisches Tool schreibt...

Vardion

-----------------------------------------------------------------------------



Re^4: Dateivergleich (Humni, 12. Mar 2003, 11:15:12):
~#! rn=Vardion rt=1047464009 rg=suche-biete
~#! tid=1047461019
Gibts nicht z.B. TcL oder Perl fuer Windows? Sollte doch nix kosten, weil OS
und so...

Humni

-----------------------------------------------------------------------------



Re^5: Dateivergleich (Zook, 12. Mar 2003, 11:15:28):
~#! rn=Humni rt=1047464112 rg=suche-biete
~#! tid=1047461019
Python RULEZ!

Zook.

-----------------------------------------------------------------------------



Re^5: Dateivergleich (Vardion, 12. Mar 2003, 11:17:38):
~#! rn=Humni rt=1047464112 rg=suche-biete
~#! tid=1047461019
Prinzipiell kann man natuerlich aus der Kuerzeren Liste ein Mapping/Hash
aufbauen und dann die lange Liste dagegen filtern. Das ist sowohl in Perl als
auch in Python in weniger als 20 Zeilen aufzuschreiben. Koennte in der tat
einfacher sein, als Cygwin zu installieren.

Vardion

-----------------------------------------------------------------------------



Re^6: Dateivergleich (Croft, 12. Mar 2003, 11:18:46):
~#! rn=Vardion rt=1047464258 rg=suche-biete
~#! tid=1047461019
Tcl waer auch noch ne Moeglichkeit ,-)

Croft

-----------------------------------------------------------------------------



Re^7: Dateivergleich (Vardion, 12. Mar 2003, 11:19:12):
~#! rn=Croft rt=1047464326 rg=suche-biete
~#! tid=1047461019
Moeglich, das kenn ich aber nicht :)

Vardion

-----------------------------------------------------------------------------



Re^8: Dateivergleich (Grimmborn, 12. Mar 2003, 11:34:25):
~#! rn=Vardion rt=1047464352 rg=suche-biete
~#! tid=1047461019
Ist doch viel zu umstaendlich. Sag Deinem Broetchengeber dass Du einen
Consultant an der Hand hast der diese Aufgabe fuer 500 kEUR macht, schick mir
die Datei und sich schicke Dir die gewuenschten Zahlen samt der Rechnung ueber
500 kEUR plus MwSt. zurueck. 

GdA

-----------------------------------------------------------------------------



Re^9: Dateivergleich (Grimmborn, 12. Mar 2003, 11:34:52):
~#! rn=Grimmborn rt=1047465265 rg=suche-biete
~#! tid=1047461019
500 EUR. Ich bin wohl etwas verwirrt.

GdA

-----------------------------------------------------------------------------



Re^6: Dateivergleich (Mupfel, 13. Mar 2003, 00:22:44):
~#! rn=Vardion rt=1047464258 rg=suche-biete
~#! tid=1047461019
Wie waers einfach in lpc? ;) Critter ist doch auch Magier in einem lpc
basierten MUD, kanner sich das eben durchlaufen lassen.... ;)

-mupfel-

-----------------------------------------------------------------------------



Re^4: Dateivergleich (Hood, 13. Mar 2003, 00:37:40):
~#! rn=Vardion rt=1047464009 rg=suche-biete
~#! tid=1047461019
FDuer windows hab ich bereits mehrere grafische diffs gesehen, an denen
sich linux 10 mal ne scheiba abschneiden darf.
Dafuer, keine Fragem mangelts dort trotzdem einer guten bash, halt cygwin :)


-----------------------------------------------------------------------------



Re^5: Dateivergleich (Nonne, 13. Mar 2003, 08:51:51):
~#! rn=Hood rt=1047512260 rg=suche-biete
~#! tid=1047461019
Und wozu braucht man diff? Bei mir:

1. Mal eben schauen, ob die Dateien identisch sind -> Grafik unnoetig
2. Eine Patch-Datei generieren -> Grafik unnoetig
3. Per Skript auf Ungleichheiten zweier Dateien reagieren -> Grafik stoert
eher

Also was macht man mit einem grafischen Diff?

Nonne, ratlos

-----------------------------------------------------------------------------



Re^6: Dateivergleich (Muadib, 13. Mar 2003, 09:58:00):
~#! rn=Nonne rt=1047541911 rg=suche-biete
~#! tid=1047461019
nenn mal das beste, ich such eins. windiff aus dem devstudio kann man kicken

-----------------------------------------------------------------------------



Re^7: Dateivergleich (Muadib, 13. Mar 2003, 10:00:00):
~#! rn=Muadib rt=1047545880 rg=suche-biete
~#! tid=1047461019
aeh der artikel sollte natuerlich auf hoods artikel folgen, bloede
megaschmarrnangewohnheiten.
wozu man es braucht? zur schnellen uebersicht ist sowas sehr gut geeignet.

-----------------------------------------------------------------------------



Re^6: Dateivergleich (Karis, 13. Mar 2003, 12:35:11):
~#! rn=Nonne rt=1047541911 rg=suche-biete
~#! tid=1047461019
Manchmal braucht man das schon grafisch. Naja... brauchen... 
es hilft einfach ungemein ;)
Guck Dir mal Beyond Compare an, dann weisste, was ich meine.

Karis

-----------------------------------------------------------------------------



Re^7: Dateivergleich (Zook, 13. Mar 2003, 13:45:10):
~#! rn=Karis rt=1047555311 rg=suche-biete
~#! tid=1047461019
Schick finde ich das ViewCVS oder wie das heisst. Da gibts lustige und 
huebsche Diff-Anzeigen unter Un*x, halt eben fuer CVS/RCS...

Zook

PS: Is mittlerweile nicht mehr in Perl, sondern gibt es auch in Python ;)

-----------------------------------------------------------------------------



Re^7: Dateivergleich (Woody, 13. Mar 2003, 16:51:11):
~#! rn=Karis rt=1047555311 rg=suche-biete
~#! tid=1047461019
mgdiff, (g)tkdiff, (g)vimdiff... die einen mehr grafisch, die anderen
mehr interaktiv. Ich habe eigentlich noch nichts aequivalentes unter
Win gefunden. Well, doch. gvimdiff fuer Windows.


-----------------------------------------------------------------------------



Re^8: Dateivergleich (Mandragon, 13. Mar 2003, 17:50:16):
~#! rn=Woody rt=1047570671 rg=suche-biete
~#! tid=1047461019
Unter Win2k gibts nen fBefehl 'fc' (filecomp) .. vielleicht tut der ja, was du
willst ...

Ma*

-----------------------------------------------------------------------------



Re^7: Dateivergleich (Hood, 14. Mar 2003, 01:23:15):
~#! rn=Muadib rt=1047545880 rg=suche-biete
~#! tid=1047461019
ich glaub was der typ auf arbeit letztens hatte hiess winmerge oder so,
aber wenn man unter google sowas fuer windows sucht, findet
man eigentlich x-hundert seiten dazu?!

viele entwicklungsumgebungen fuer programmierer bieten sowas auch,
teilweise als plugins.

-----------------------------------------------------------------------------



Re^8: Dateivergleich (Muadib, 14. Mar 2003, 14:14:01):
~#! rn=Hood rt=1047601395 rg=suche-biete
~#! tid=1047461019
naja und da ich nicht x-hundertmal testen wollte hab ich halt mal gefragt.
aber seis drum :)

-----------------------------------------------------------------------------



KL gesucht :) (Ancalagon, 17. Mar 2003, 23:08:32):
Halloechenknuddels!
hat noch jemand eine Loesung fuer Rubiks zauberwuerfel, die er kopieren und
mir zukommen lassen kann? Mein sohnemann (2 Jahre:) mchte seinen mal wieder
einfarbig haben, und mehr als erste und zweite ebene habe ich noch nie
auswendog hingekriegt.....
Also, wer hat, bitte mal an mich mehlen. oder kann man die irgendwo
runtersaugen??

Dankeknuddels,

Ancalagon


-----------------------------------------------------------------------------



Re: KL gesucht :) (Croft, 17. Mar 2003, 23:49:05):
~#! rn=Ancalagon rt=1047938912 rg=suche-biete
~#! tid=1047938912
Zuecke Google.  Da geistern genug Loesungen im Netz.  Ansonsten kannst
du auch schauen ob du noch nen Spiegel 4/81 irgendwo auftreibst ,-)

Croft

-----------------------------------------------------------------------------



Re: Re: KL gesucht :) (Vardion, 17. Mar 2003, 23:49:55):
~#! rn=Croft rt=1047941345 rg=suche-biete
~#! tid=1047938912
Es gibt auch diverse Programme, die derartige Wuerfel loesen.

Vardion

-----------------------------------------------------------------------------



Re^3: KL gesucht :) (Grimmborn, 18. Mar 2003, 05:37:35):
~#! rn=Vardion rt=1047941395 rg=suche-biete
~#! tid=1047938912
War das jetzt Questspielerhilfe?

GdA

-----------------------------------------------------------------------------



Re^4: KL gesucht :) (Mandragon, 18. Mar 2003, 08:56:58):
~#! rn=Grimmborn rt=1047962255 rg=suche-biete
~#! tid=1047938912
Ancalagons Sohn sitzt bestimmt auf Thorshavn fest ....

Ma*

-----------------------------------------------------------------------------



Re: KL gesucht :) (Catweazle, 18. Mar 2003, 13:29:44):
~#! rn=Ancalagon rt=1047938912 rg=suche-biete
~#! tid=1047938912
Schick mir den Wuerfel zu, ich dreh ihn Dir dann wieder richtig ...

YTC

-----------------------------------------------------------------------------



Re: KL gesucht :) (Elberet, 18. Mar 2003, 20:19:11):
~#! rn=Ancalagon rt=1047938912 rg=suche-biete
~#! tid=1047938912
hier findest du ne KL fuer Rubiks Cube. Das ganze laesst sich auch mit
Leichtigkeit auf viele andere derartige Spielzeuge ausdehnen.

http://www.math.rwth-aachen.de/LDFM/homes/GAP/WWW/Intro/rubik.html

Elbi.

-----------------------------------------------------------------------------



Uplift-Universum (Areelanir, 19. Mar 2003, 11:28:17):
Hallo Leute,
ich suche das Buch Sternenriff von David Brin (Band 1 der Uplift-Reihe). Es
muesste 1996 erschienen sein und ist inzwischen leider vergriffen. Wenn einer
es nicht mehr braucht oder mir leihen koennte, waere ich sehr dankbar.
Areelanir

-----------------------------------------------------------------------------



Re: Uplift-Universum (Catweazle, 19. Mar 2003, 12:13:23):
~#! rn=Areelanir rt=1048069697 rg=suche-biete
~#! tid=1048069697
www.amazon.de

http://www.amazon.com/exec/obidos/ASIN/0553269828/qid=1048072369/sr=2-2/ref=sr
_2_2/104-6227822-5682312

YTC

-----------------------------------------------------------------------------



Re: Re: Uplift-Universum (Areelanir, 19. Mar 2003, 12:26:05):
~#! rn=Catweazle rt=1048072403 rg=suche-biete
~#! tid=1048069697
Danke! Da finde ich zumindest die anderen, aber Sundiver (zu deutsch
Sonnentaucher) habe ich und das ist nicht Band 1...
nn
Areelanir

-----------------------------------------------------------------------------



Re^3: Uplift-Universum (Anthea, 19. Mar 2003, 12:27:09):
~#! rn=Areelanir rt=1048073165 rg=suche-biete
~#! tid=1048069697
Im Deutschen sind die orginal 3 Baende auf 6 Baende zerteilt worden,
wahrscheinlich, um mehr Geld scheffeln zu koennen.

-----------------------------------------------------------------------------



Re^3: Uplift-Universum (Croft, 19. Mar 2003, 12:28:57):
~#! rn=Areelanir rt=1048073165 rg=suche-biete
~#! tid=1048069697
Such mal auf
http://www.zvab.com/
Das ist das Zentrale Verzeichnis Antiquarischer Buecher.  Sieht zumindest
so aus als koenntest du da ein Exemplar fuer dich besorgen.

Gruss Croft

-----------------------------------------------------------------------------



Re^4: Uplift-Universum (Areelanir, 19. Mar 2003, 12:47:29):
~#! rn=Croft rt=1048073337 rg=suche-biete
~#! tid=1048069697
Au ja, fuer 30 Euro in der billigsten Taschenbuchversion... *seufz*

-----------------------------------------------------------------------------



Oscarrede von Michael Moore (Trug, 24. Mar 2003, 18:52:45):
Suche die Oscarrede von Michael Moore als mp3, ungeschnitten.

Trug

-----------------------------------------------------------------------------



Re: Oscarrede von Michael Moore (Vanion, 24. Mar 2003, 23:00:23):
~#! rn=Trug rt=1048528365 rg=suche-biete
~#! tid=1048528365
Ich hab sie derzeit nur auf Tape (neudeutsch fuer Video)

Sorry (auch fuer's neidisch machen)

V*

-----------------------------------------------------------------------------



Re: Oscarrede von Michael Moore (Alboin, 27. Mar 2003, 17:01:55):
~#! rn=Trug rt=1048528365 rg=suche-biete
~#! tid=1048528365
guck mal ob hier was ist :

http://www.oscar.com/oscarnight/winners/win_32297.html

Al

-----------------------------------------------------------------------------



Re: Oscarrede von Michael Moore (Catweazle, 28. Mar 2003, 08:20:29):
~#! rn=Trug rt=1048528365 rg=suche-biete
~#! tid=1048528365
http://people.ku.edu/~bag/mooreoscars.mp3

YTC

-----------------------------------------------------------------------------



Kopenhagen (Elizabeth, 12. Apr 2003, 16:58:00):
Fals jemand in der Zeit vom 26. Mai bis ? (etwa 3-4-5 Tage) mitkommen moechte
nach Kopenhagen von Berlin aus, kann er/sie sich ja mal melden.
Kosten: mit hin/rueckreise (berlin) und unterkunft je nach anzahl so um die
100 euronen

-----------------------------------------------------------------------------



Brettspiele gesucht (Ahab, 27. Apr 2003, 16:54:40):
Hi zusammen,

ich suche derzeit

o Ursuppe (+ Erweiterung)
o Puerto Rico
o Herr der Ringe + Die Feinde (R. Knizia)

Wenn sich jemand von einem der Spiele trennen moechte - bitte melden.

Ahoi,
Ahab.

-----------------------------------------------------------------------------



Thud! (Gorog, 27. Apr 2003, 17:12:39):
Moins

Suche: Informationen ueber das Spiel Thud.

Ist das nur ein sehr ueberteuerter Marketing-Gag,um die Popularitaet der 
Scheibenwelt Romane auszunutzen oder ist es vielleicht wirklich ein gutes
Spiel, das den Preis rechtfertigt?

mfGrog

-----------------------------------------------------------------------------



Junta (Daria,  1. Mai 2003, 23:50:52):
Hallo,
da faellt mir ein, dass ich immer noch guenstig das Spiel Junta zu kaufen
suche. Wir haben mal ein 25 DM Spiel verschenkt... sehr aergerlich...

Daria

-----------------------------------------------------------------------------



Re: Junta (Jadawin,  2. Mai 2003, 01:24:43):
~#! rn=Daria rt=1051825852 rg=suche-biete
~#! tid=1051825852
:hat das aber gibt es nicht her.

-----------------------------------------------------------------------------



Re: Re: Junta (Mandragon,  2. Mai 2003, 04:34:44):
~#! rn=Jadawin rt=1051831483 rg=suche-biete
~#! tid=1051825852
Dito.

Ma*

-----------------------------------------------------------------------------



Re^3: Junta (Bambi,  2. Mai 2003, 10:42:08):
~#! rn=Mandragon rt=1051842884 rg=suche-biete
~#! tid=1051825852
Ihr wollt uns doch nur hellhoerig machen, wie toll das ist.

Bambi hat auch ein paar gute DOS-Spiele. };)

-----------------------------------------------------------------------------



Re^4: Junta (Nonne,  2. Mai 2003, 21:01:24):
~#! rn=Bambi rt=1051864928 rg=suche-biete
~#! tid=1051825852
Ist doch voll scheisse, das Spiel.

Nonne, hat das nicht und will das auch nicht.

-----------------------------------------------------------------------------



Re: Re: Junta (Ancalagon,  3. Mai 2003, 00:04:16):
~#! rn=Jadawin rt=1051831483 rg=suche-biete
~#! tid=1051825852

: hat das auch, gibts auch nicht her, kanns aber zum Sommercamp mitbringen,
ums mal wieder zu spielen :)

Ancaknuddelagon

-----------------------------------------------------------------------------



Re^5: Junta (Jadawin,  3. Mai 2003, 17:47:07):
~#! rn=Nonne rt=1051902084 rg=suche-biete
~#! tid=1051825852
Wieso?
Jad*

-----------------------------------------------------------------------------



Re^6: Junta (Croft,  3. Mai 2003, 17:49:27):
~#! rn=Jadawin rt=1051976827 rg=suche-biete
~#! tid=1051825852
Das Putschspiel reisst das ganze recht auseinander und die Leute die nicht
dran teilnehmen koennen immer ne halbe Stunde was anderes machen.

Croft

-----------------------------------------------------------------------------



WiTex Dateien (Zarniya,  7. Mai 2003, 09:41:13):
Hallo, 

Ich muss witex dateien in was lesbares konvertieren... Ideen?

Marc

-----------------------------------------------------------------------------



Beworbenes Produkt gesucht (Oink, 11. Mai 2003, 15:27:05):
Ich suche ein Produkt, und zwar eins, das mit folgendem Slogan beworben
wurde...
"Nur wo .... draufsteht, ist auch .... drin".
Mit bestem Dank im Vorraus.

-----------------------------------------------------------------------------



Re: Beworbenes Produkt gesucht (Vanion, 11. Mai 2003, 15:55:40):
~#! rn=Oink rt=1052659625 rg=suche-biete
~#! tid=1052659625
Ja, denn nur wo nutella draufsteht, ist auch nutella drin!

V*

-----------------------------------------------------------------------------



Buch dringend gesucht! (Liara, 11. Mai 2003, 18:32:56):
Ernst Baeumler: Die grossen Medikamente
Gustav Luebbe Verlag 1992

Im Netz habe ich alles abgeklappert, es gibt wohl ein Exemplar, aber das kommt
nicht in Frage! Sollte das jemand im Schrank haben, bitte ich um Mail!! :)

-----------------------------------------------------------------------------



Ennio Moricone (Feigling, 13. Mai 2003, 23:28:32):
Hi,

ich suche die CD von Ennio Moricone - Der Profi, die Filmmusik
(falls es die ueberhaupt auf CD gibt... schon fuer diese Info
waere ich dankbar)... Falls es die Platte auf CD gibt, und
die jemand loswerden will, her damit :-)

Feigling (ist gar nicht feige, nur vorsichtig)

-----------------------------------------------------------------------------



Re: Ennio Moricone (Rochus, 14. Mai 2003, 00:04:19):
~#! rn=Feigling rt=1052861312 rg=suche-biete
~#! tid=1052861312
Laut freedb gibt es den Soundtrack komplett auf CD,
heisst "Le Professionnel", 13 Tracks, ca. 33 Minuten.
Koennte aber nicht leicht zu bekommen sein...

Das naechstgelegene was ich haette, waere ne Best-Of,
auf der "Chi Mai" und "Le Vent, Le Cri" sind...
die moechte ich aber behalten :-)

  Rochus

-----------------------------------------------------------------------------



Re: Re: Ennio Moricone (Feigling, 14. Mai 2003, 19:55:03):
~#! rn=Rochus rt=1052863459 rg=suche-biete
~#! tid=1052861312
Ahhhh, Super, wenn ich den "echten" Titel der CD hab, hilft das
schon :-) Danke. Die Best of, ist das nicht diese CD mit den
nachgespielten Stuecken. Ich hab gelesen dass die mit dem
Synthesizer nachgespielt sind. Das zumindest steht bei
Amazon als Kundenrezension dabei.

Feigling

-----------------------------------------------------------------------------



Re^3: Ennio Moricone (Rochus, 15. Mai 2003, 23:47:21):
~#! rn=Feigling rt=1052934903 rg=suche-biete
~#! tid=1052861312
Es gibt mehrere Best of, ich habe eine mir Originalen
(aber fast nur Western) und eine Doppel-CD mit allem moeglichen,
davon sind einige allerdings nachgespielt.
An Original-Soundtracks kann ich nur mit "The good, the bad and the ugly"
(selbstverstaendlich), "A fistful of dollars", "For a few dollars more",
"Once upon a time in the west" (Spiel mir das Lied vom Tod, muss bei
mir natuerlich auch sein) und "My Name is Nobody" dienen...
Die waren auch auf der Faschings-Party im Studentenclub, die unter dem
Motto "Wilder Westen" stand, sehr passend als Untermalung... :)
Ich suche selber noch "Orca"...


  Rochus

-----------------------------------------------------------------------------



Re^4: Ennio Moricone (Jadawin, 16. Mai 2003, 01:56:23):
~#! rn=Rochus rt=1053035241 rg=suche-biete
~#! tid=1052861312
Fuer Fans von 'Once upon a time in the west' sind natuerlich auch noch die
scores zu den anderen Charakteren empfehlenswert. Mein persoenlicher Favorit:
Cheyenne
Jad*

-----------------------------------------------------------------------------



Re^5: Ennio Moricone (Rochus, 16. Mai 2003, 22:47:28):
~#! rn=Jadawin rt=1053042983 rg=suche-biete
~#! tid=1052861312
Wenn ich "Soundtrack" schreibe, dann meine ich
den KOMPLETTEN Soundtrack :)
Und "Farewell to Cheyenne" finde ich auch klasse,
besonders die Pause :-)

  Rochus

-----------------------------------------------------------------------------



Re: Re: Ennio Moricone (Kellybundy, 18. Mai 2003, 18:59:37):
~#! rn=Rochus rt=1052863459 rg=suche-biete
~#! tid=1052861312
Tja mit den Soundtracks von Ennio Morricone is das leider so ne Sache.
Zumindest hier in Deutschland scheint man nur verkuerzte und elendigst
verpoppte Versionen zu bekommen, nach meiner Erfahrung. Z.B. der Soundtrack zu
The Good, the Bad and the Ugly (Zwei Glorreiche Halunken ist der deutsche
Titel) - wohl das bekannteste von Morricone ueberhaupt. ist in der
Originalversion schon ueber 30 min lang mit klassischem Orchester, Kanonen und
Glocken und richtig bombastisch geil im Finale. Ich habs mal irgendwo gehoert,
aber bin leider nie an diesen Originalsoundtrack herangekommen. Wenn jemand
Fahndungshinweise hat, danke im voraus :)
]]r
P.S. Man habe nachsicht mit der Formatierung ich hab hier nen exotischen
tastaturtreiber anscheinend ... :)
Blondchen

-----------------------------------------------------------------------------



Re^3: Ennio Moricone (Grimmborn, 18. Mai 2003, 19:18:28):
~#! rn=Kellybundy rt=1053277177 rg=suche-biete
~#! tid=1052861312
Natuerlich irrst Du, der bekanntest Soundtrack von Signore Morricone ist
natuerlich der mit der Mundharmonika. Ohne dass das eine Herabsetzung von den
beiden Halunken sein soll.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: Ennio Moricone (Flintnail, 20. Mai 2003, 13:09:03):
~#! rn=Grimmborn rt=1053278308 rg=suche-biete
~#! tid=1052861312
 Hoi...
 wenn ich Euch so ueber Ennio Moricone schreiben lese :)... faellt mir doch
glatt wieder Outlaws von LucasArts ein...

.die macht sich - find ich - auch ziemlich nett im CD-Player

flint *

-----------------------------------------------------------------------------



Re^5: Ennio Moricone (Rochus, 23. Mai 2003, 00:48:00):
~#! rn=Flintnail rt=1053428943 rg=suche-biete
~#! tid=1052861312
Ja, die habe ich auch direkt neben den Morricone-CDs...
Der hat den Stil von Ennio Morricone auch gut kopiert - man vergleiche
"Showdown" mit "The Ecstasy of Gold"...
(Letzteres gibt es uebrigens auch in einer Metallica-Version :)

  Rochus

-----------------------------------------------------------------------------



PC-Zubehoer fuer Videofreaks (Alboin, 31. Mai 2003, 00:11:00):
Gertename: Dazzle* (Fast) Hollywood DV Bridge
Zweck: Konvertiert mit und ohne Computer VHS Tapes in DV Format und umgekehrt,
dh. geeignet fr analoge und DV/D8 Videoaufnahmen
Kompatibilitt zu: Win 98, 2000, ME, XP und Mac OS
Paket enthlt: Hollywood DV Bridge Konverter Box; Kabel: i.link, FireWire, IEEE
1394; Installations CD und Bonus Software (VideoWave SE 4.0); Handbuch
Garantie: Gert wurde nie benutzt und hat laut Kassenzettel noch Garantie bis
30.10.04
Preis: 200? (Neupreis war: 459?; bester Preis im Internetversand z.Zt.
223,90?)

Anfragen bitte an: alboin@web.de

P.S. musste schnell gehen deswegen Umlaute weg und Fragezeichen statt
Eurozeichen!

-----------------------------------------------------------------------------



Vorlagen fuer Taetowierungen (Chuckylein,  2. Jun 2003, 20:22:00):
Suche seite mit selbigem Inhalt :) kostenlos, und so gut wie moeglich
Danke im vorraus falls wer was findet

Chucky

-----------------------------------------------------------------------------



Re: Vorlagen fuer Taetowierungen (Montanus,  2. Jun 2003, 20:23:20):
~#! rn=Chuckylein rt=1054578120 rg=suche-biete
~#! tid=1054578120
Kommt drauf an, was du eingeimpft bekommen willst. www.donaldduck.de bringt
sicher andere Ergebnisse als www.babes-in-toyland.com.

"He asked for a 13, but they drew a 31."

-----------------------------------------------------------------------------



Re: Re: Vorlagen fuer Taetowierungen (Chuckylein,  2. Jun 2003, 20:25:12):
~#! rn=Montanus rt=1054578200 rg=suche-biete
~#! tid=1054578120
Nerja, ich finde immer einige Seiten wo man alles findet, auch in genuegender
Anzahl, bloss leider mit Zugangssoftware. Aber speziell such ich drachen und
aehnliche Motive aus dem Fantasybereich. Aber im Prinzip bin ich auch anderen
Taetowierungen nicht abgeneigt. Kann das halt nicht so genau sagen, weil ich
mir so vieles wie moeglich anschaun will

-----------------------------------------------------------------------------



Re^3: Vorlagen fuer Taetowierungen (Elizabeth,  2. Jun 2003, 20:26:10):
~#! rn=Chuckylein rt=1054578312 rg=suche-biete
~#! tid=1054578120
www.ratemytatoo.com ? vll findeste da ne idee

-----------------------------------------------------------------------------



Tiscali-Flatrate (Mandragon, 17. Jun 2003, 21:38:44):

Hat jemand mit $SUBJECT Erfahrungen gemacht? Ist ja immerhin 10Euro/Monat
billiger als T-Offline. Gibts nen Pferdefuss?

Fragen ueber Fragen .... Antworten bitte hier oder per mail

Danke

Ma*

-----------------------------------------------------------------------------



Re: Tiscali-Flatrate (Catweazle, 18. Jun 2003, 08:55:39):
~#! rn=Mandragon rt=1055878724 rg=suche-biete
~#! tid=1055878724
Mafia.

YTC :-)

-----------------------------------------------------------------------------



Re: Re: Tiscali-Flatrate (Wurzel, 20. Jun 2003, 00:14:37):
~#! rn=Catweazle rt=1055919339 rg=suche-biete
~#! tid=1055878724
von tiscali weiss ich eigentlich nur, dass sie als kunde sehr schwierig sind.
"mafia" trifft es nicht schlecht :) ansonsten gilt: ausprobieren.

wurzel

-----------------------------------------------------------------------------



Re^3: Tiscali-Flatrate (Leibi, 20. Jun 2003, 16:12:41):
~#! rn=Wurzel rt=1056060877 rg=suche-biete
~#! tid=1055878724
also ich bin eigentlich zufrieden.
ueber 5 euro/monat kann man sich auch nicht beschweren.

leibi

-----------------------------------------------------------------------------



Re^4: Tiscali-Flatrate (Puk, 21. Jun 2003, 12:54:09):
~#! rn=Leibi rt=1056118361 rg=suche-biete
~#! tid=1055878724
mh, dafuer wurde mir zumindest erst gestern erzaehlt das Tiscali einige ports
gesperrt hat :)

Onlinekosten.de - News - Tiscali blockt Ports und beschneidet DSL ... 

eine google suche hilfe nach tiscali + dsl + ports bringt dich vielleicht doch
auf die idee was anderes zu waehlen und dafuer ein wenig mehr zu zahlen, nen
bekannter ist zumindest ziemlich am kotzen ;)

-----------------------------------------------------------------------------



Re^5: Tiscali-Flatrate (Vanion, 21. Jun 2003, 13:26:46):
~#! rn=Puk rt=1056192849 rg=suche-biete
~#! tid=1055878724
Lass mich raten. Die Ports, die normal fuer Gnutella-Server benutzt werden?

V*, kanns irgendwie nachvollziehen. Wenn ich ueberlege, was ein GB Transfer
kostet ....

-----------------------------------------------------------------------------



Re^6: Tiscali-Flatrate (Vardion, 23. Jun 2003, 22:41:48):
~#! rn=Vanion rt=1056194806 rg=suche-biete
~#! tid=1055878724
Vor 1-2 Jahren so etwa 5 Euro (fuer Internetprovider). Keine Ahnung, was es
jetzt kostet, das Uenkchen weiss da sicher mehr...

Vardion

-----------------------------------------------------------------------------



Re^7: Tiscali-Flatrate (Amaryllis, 23. Jun 2003, 22:52:24):
~#! rn=Vardion rt=1056400908 rg=suche-biete
~#! tid=1055878724
Das haengt von mehreren Faktoren ab: verwendeter Upstream, Auslastung, etc...
zudem weiss ich nicht, ob Du mit den 5 Euro nur die Kosten fuer den Provider
an den Upstream, oder die Gesamtkosten (z.B. inkl. aller Wartungs-,
Serverkosten etc., d.h. wenn man alles an involvierter Hard-, Soft- und
Manware auf den Traffic umrechnet) meinst? Desweiteren wuerde mich
interessieren, was die Quelle deiner "5 Euro" ist und wie sich dieser Betrag
genau definiert/zusammenrechnet.

Ama*

PS: Wir verwenden hier z.B. etliche unterschiedliche Upstreams, und da sieht
das ueberall ein bisschen anders aus...

-----------------------------------------------------------------------------



Re^8: Tiscali-Flatrate (Alpha,  3. Jul 2003, 01:16:09):
~#! rn=Amaryllis rt=1056401544 rg=suche-biete
~#! tid=1055878724
Also die rein variablen Kosten die durch einen GB zusaetzlichen Traffic
entstehen wuerden mich schon interessieren.

-----------------------------------------------------------------------------



Re^9: Tiscali-Flatrate (Morgoth,  3. Jul 2003, 07:31:47):
~#! rn=Alpha rt=1057187769 rg=suche-biete
~#! tid=1055878724
Du meinst 1GB pro Tag, oder? :)

M*

-----------------------------------------------------------------------------



maedels gesucht (Gabylon, 13. Jul 2003, 23:24:26):
guard und ich suchen 2 nette maedels, die mit uns und etwas geld
in urlaub fahren. zielort: hawaii oder so :)

gab

-----------------------------------------------------------------------------



Re: maedels gesucht (Maharet, 13. Jul 2003, 23:24:36):
~#! rn=Gabylon rt=1058131466 rg=suche-biete
~#! tid=1058131466
ich

Maha, meistens nett

-----------------------------------------------------------------------------



Re: maedels gesucht (Leibi, 13. Jul 2003, 23:25:47):
~#! rn=Gabylon rt=1058131466 rg=suche-biete
~#! tid=1058131466
kuba?

leibi

-----------------------------------------------------------------------------



Re: maedels gesucht (Mandragon, 13. Jul 2003, 23:26:23):
~#! rn=Gabylon rt=1058131466 rg=suche-biete
~#! tid=1058131466
Also habt ihr das Geld oder sollen sie das Geld mitbringen?

Ma*

-----------------------------------------------------------------------------



Re: Re: maedels gesucht (Guard, 13. Jul 2003, 23:27:41):
~#! rn=Mandragon rt=1058131583 rg=suche-biete
~#! tid=1058131466
ok, keine bewerbungen mehr noetig, maha hat noch gleich jemanden mitenpfohlen
und das geld kam von den partygeilen muddern
danke 

Guard

-----------------------------------------------------------------------------



Re^3: maedels gesucht (Guard, 13. Jul 2003, 23:35:28):
~#! rn=Guard rt=1058131661 rg=suche-biete
~#! tid=1058131466
ok, aufgrund teuflischer machenschaften suche ich dringend ersatz fuer den
hawaiurlaub :-) der contest ist wieder eroeffnet :-)

Guard *aengstlich*

-----------------------------------------------------------------------------



Re^4: maedels gesucht (Lug, 13. Jul 2003, 23:38:07):
~#! rn=Guard rt=1058132128 rg=suche-biete
~#! tid=1058131466
Ich hatte doch noch gar nicht mit dem Ritual angefangen...
L.

-----------------------------------------------------------------------------



Re^5: maedels gesucht (Guard, 13. Jul 2003, 23:53:14):
~#! rn=Lug rt=1058132287 rg=suche-biete
~#! tid=1058131466
ok, letzte mail zu dem thema, dann flieg ich ab.
ich war schrecklich dumm, hab die frauen mal wieder nich verstanden und mich
wie ein trottel verhalten... 
ich pack jetzt meine koffer und nehm die himmlischen geschenke mit

danke an maha :-)

Guard

-----------------------------------------------------------------------------



Re^6: maedels gesucht (Moonshine, 13. Jul 2003, 23:54:10):
~#! rn=Guard rt=1058133194 rg=suche-biete
~#! tid=1058131466
Nimmste mich mit? :-) 
Bueddebuedde!


Moonshine - ist auch brav und verstecjt sich im handgepaeck ...

-----------------------------------------------------------------------------



Psion Revo 8 MB (Mesirii,  4. Aug 2003, 11:00:52):
Ein Kumpel von mir will seinen Psion Revo 8MB mit nem zusaetzichen Batterie
Adapter verkaufen. Bei Interesse E-Mail an dn3@pdai.de.

Gruss mesi

-----------------------------------------------------------------------------



Musicmatch Jukebox (Liara, 23. Aug 2003, 13:40:10):
Hat jemand evtl. noch die _aeltere Version 6.0_ von Mmjb rumfliegen?

Beduerftige Gruesse, ZZL

-----------------------------------------------------------------------------



Re: Musicmatch Jukebox (Liara, 23. Aug 2003, 22:20:58):
~#! rn=Liara rt=1061638810 rg=suche-biete
~#! tid=1061638810
Hat sich erledigt. :)

-----------------------------------------------------------------------------



Re: Re: Musicmatch Jukebox (Medic, 23. Aug 2003, 22:28:21):
~#! rn=Liara rt=1061670058 rg=suche-biete
~#! tid=1061638810
war nicht auf Re^54321 n Preis?
,

-----------------------------------------------------------------------------



Re^3: Musicmatch Jukebox (Medic, 23. Aug 2003, 22:29:09):
~#! rn=Medic rt=1061670501 rg=suche-biete
~#! tid=1061638810
ups, falsche rubrik. irgendwannnlern ich auc,mit der mpa umzeugehen.
versprochen

(Muss ich jetzt M* schreiben?)

-----------------------------------------------------------------------------



Luftballons (Catweazle, 16. Sep 2003, 20:00:55):
Ich brauche Luftballons. 
In Massen. 

Hat wer welche auf Lager, kann ein Werbeballonslager anzapfen, oder kann mir
nen guten Tipp geben, wo ich welche bekommen kann?

YTC

-----------------------------------------------------------------------------



Re: Luftballons (Nonne, 16. Sep 2003, 20:41:36):
~#! rn=Catweazle rt=1063735255 rg=suche-biete
~#! tid=1063735255
Halt' doch die Leute hier an, ihre gebrauchten Kondome zu sammeln und Dir zu
schicken, die sollen sich ja enorm gross aufpusten lassen (c;

Nonne.

-----------------------------------------------------------------------------



Wohnung in Stuttgart gesucht ;-) (Ronda, 20. Sep 2003, 22:44:01):
Hallo,

ich suche mal wieder eine Wohnung. Moeglichst in Stuttgart-Gerlingen oder
Umgebung.

Randbedingungen: Moeglichst 3 Zimmer, >= 75qm, max. 600 Euro kalt.

Nebenbedingungen: Nen knuddeliger Hund (nix Kampfhund ;-) ) als Mitwohner -
und ganz wichtig: DSL sollte man da auch kriegen koennen ;-)

Und bevor hier Beileidsbekundungen kommen, warum ich zu den Schwaben gehe:
Ich geh' gar nicht - ich suche nur fuer zwei Freunde von mir ;-)

Vielen Dank fuer jede Idee, wie man an eine solche Idee kommen kann,

Ronda

-----------------------------------------------------------------------------



Re: Wohnung in Stuttgart gesucht ;-) (Zook, 21. Sep 2003, 12:28:33):
~#! rn=Ronda rt=1064090641 rg=suche-biete
~#! tid=1064090641
Ne Wohnung in Stuttgart ueber die MPA suchen zu wollen halte ich schon
fuer nen arg optimistisches Vorgehen... ;) 

Zook.

-----------------------------------------------------------------------------



karte fuer S04 : Fc Bayern (Amazora, 23. Sep 2003, 13:45:00):
ich such noch ne karte fuer das spiel S04 : fc bayern am 01.11.03.
hat rein zufaellig jemand eine ueber?

-----------------------------------------------------------------------------



Re: karte fuer S04 : Fc Bayern (Amaryllis, 23. Sep 2003, 16:46:48):
~#! rn=Amazora rt=1064317500 rg=suche-biete
~#! tid=1064317500
Such mal in Ebay unter "Tickets" nach "Schalke". Da sind einige drin,
allerdings nicht ganz billig...

Ama*

-----------------------------------------------------------------------------



Re: Re: karte fuer S04 : Fc Bayern (Amazora, 23. Sep 2003, 16:48:57):
~#! rn=Amaryllis rt=1064328408 rg=suche-biete
~#! tid=1064317500
das wollt ich mir eigentlich ersparen :-)
naja, vielleicht krieg ich ja noch irgendwo eine her. billiger :)
,

-----------------------------------------------------------------------------



Re^3: karte fuer S04 : Fc Bayern (Amazora, 23. Sep 2003, 16:56:59):
~#! rn=Amazora rt=1064328537 rg=suche-biete
~#! tid=1064317500
die billigste kostet 80 euro 
da kuck ichs mir lieber im fernsehn an ;-(

-----------------------------------------------------------------------------



Re: karte fuer S04 : Fc Bayern (Catweazle, 25. Sep 2003, 09:47:47):
~#! rn=Amazora rt=1064317500 rg=suche-biete
~#! tid=1064317500
Hihi, immer witzig die Amazora :-)

YTC

-----------------------------------------------------------------------------



Re: Re: karte fuer S04 : Fc Bayern (Amazora, 25. Sep 2003, 15:37:58):
~#! rn=Catweazle rt=1064476067 rg=suche-biete
~#! tid=1064317500
was heisst hier witzig?? das war mein ernst! ich bin so dermassen verzweifelt
am karte fuer das spiel suchen, dass ich sogar schon hier mein glueck versuche
amazora will auf dieses verfickte spiel

-----------------------------------------------------------------------------



Re^3: karte fuer S04 : Fc Bayern (Alboin, 25. Sep 2003, 15:39:52):
~#! rn=Amazora rt=1064497078 rg=suche-biete
~#! tid=1064317500
auch wenn die Schalker hochmotiviert sind, sie verlieren eh, spar die das Geld
einfach;-)

al

-----------------------------------------------------------------------------



Re^4: karte fuer S04 : Fc Bayern (Catweazle, 25. Sep 2003, 15:46:35):
~#! rn=Alboin rt=1064497192 rg=suche-biete
~#! tid=1064317500
Ja, ich wollte auch endlich mal in die Arena. Ich hab bereits vor drei Monaten
versucht welche zu bekommen und bin gescheitert.

YTC

-----------------------------------------------------------------------------



Re^5: karte fuer S04 : Fc Bayern (Amazora, 25. Sep 2003, 15:49:23):
~#! rn=Catweazle rt=1064497595 rg=suche-biete
~#! tid=1064317500
ich hab vielleicht das glueck, dass mir jemand vom fanclub eine zum geburtstag
schenkt aber weiss ned ob ers schafft. grundsaetzlich kriegt der fuer fast
jedes spiel eine karte (fuer jedes schalke spiel mein ich natuerlich) aber da
siehts voll bitter aus. ich hab eh ned ernsthaft geglaubt, dass es ueber die
mpa klappt aber vielleicht hat ja jemand eine die er nicht braucht weil er ned
kann. probieren kann man es ja mal.
amazora erwuergt alboin mit einem schalke schal

-----------------------------------------------------------------------------



Re^6: karte fuer S04 : Fc Bayern (Bambi, 25. Sep 2003, 22:52:46):
~#! rn=Amazora rt=1064497763 rg=suche-biete
~#! tid=1064317500
Irgendwann... ja irgendwann werde ich mal fragen...
Ich als Pfaelzer habe ja wenig Auswahl, was so Fussballclubs in der Naehe
betrifft. Da gaebs die Lauterer, die ein bissl im Norden und meines Wissens
sogar noch in der ersten Liga sind. Weiter im Sueden aber nicht mehr in RLP
gaebs die Karlsruher, aber was die (beziehungsweise ihr Fussballclub) grad
machen (ligamaessig) ist mir auch nicht bekannt. Dann gibts ja noch ein paar
Lebensmuede, die den 1. FC Bayern Muenchen toll finden. Lebensmuede deshalb,
weil man hier bei uns in der falschen Kneipe voll "Aerger" bekommen kann, wenn
man einem "eingefleischten" Lautern-Fan sagt, dass man die Muenchner toll
findet. Man kann sogar Aerger bekommen, wenn man kein Fussballfan ist und die
Terminaenderung der Gemeinderatssitzung auf halb 9 abends nicht verstehen kann
(wo doch die Lautern vorher Fussball spielen).
Was ich nun irgendwann mal fragen werde, weil ichs irgendwie nie so richtig
kapiert habe: Was findet man an Fussball, dass man 50 (oder wieviel wars
nochmal?) Euro bezahlt, um 90+15 Minuten ein Fussballspiel live (samt
Werbe?pause) zu sehen, wo man (je nach Platz) weniger (vom Spiel) mitbekommt
als vorm TV (und Pruegel bezieht, wenn man im "falschen" Block
sitzt/steht/Faehnchen schwenkt)?

Kanns mir bitte wer erklaeren, wenn ich mal danach fragen sollte?

... Muss das jetzt verlegt werden oder gilt die Suche nach einer Antwort als
Argument fuer diese Rubrik?

PS: Nicht, dass ich "Fusballfan sein" nicht tolerieren wuerde oder dass ichs
veralbern wollte... Ich verstehs nur nicht so ganz.

-----------------------------------------------------------------------------



Re^7: karte fuer S04 : Fc Bayern (Patryn, 25. Sep 2003, 22:57:14):
~#! rn=Bambi rt=1064523166 rg=suche-biete
~#! tid=1064317500
Lass sie doch, ich kann auch nich nachvollziehen, wie man stundenlang
auf fahrende Fahradfahrer glotzen kann.
Ist so mein Topfavorit an oeden Zuschauersportarten.

-----------------------------------------------------------------------------



Re^8: karte fuer S04 : Fc Bayern (Anoris, 25. Sep 2003, 23:55:58):
~#! rn=Patryn rt=1064523434 rg=suche-biete
~#! tid=1064317500
Tennis um weitere zu nennen ...

*duck*

- Anoris ;)

-----------------------------------------------------------------------------



Re^7: karte fuer S04 : Fc Bayern (Boing, 26. Sep 2003, 00:12:33):
~#! rn=Bambi rt=1064523166 rg=suche-biete
~#! tid=1064317500
Es gibt definitiv einen Unterschied zwischen Fussball vor dem Fernseher
und Fussball im Stadion. Gerade wenn das Stadion gerammelt voll ist, ist
die Stimmung halt kaum zu beschreiben. Wobei ich auch keine 50 Euro dafuer
ausgeben wuerde, beim KSC war das wesentlich billiger (ja, auch als sie
noch erste Liga gespielt haben), aber ich hatte auch immer nur einen
Stehplatz in der Kurve. Geh einfach mal auf den Betzenberg wenn Bayern
kommt und Du wirst es verstehen. :)
  Boing

-----------------------------------------------------------------------------



Re^8: karte fuer S04 : Fc Bayern (Muadib, 26. Sep 2003, 00:58:57):
~#! rn=Boing rt=1064527953 rg=suche-biete
~#! tid=1064317500
bambi: du hast die mainzer vergessen.
ansonsten da'core

-----------------------------------------------------------------------------



Re^9: karte fuer S04 : Fc Bayern (Montanus, 26. Sep 2003, 08:53:27):
~#! rn=Muadib rt=1064530737 rg=suche-biete
~#! tid=1064317500
Und natuerlich Eintracht Trier, falls du den Profifussball in RLP
vervollstaendigen willst.
Ich koennte versuchen, das Phaenomen zu beschreiben, aber das hat einer vor
mir viel besser gemacht. Ich empfehle also Nick Hornbys hervorragendes Buch
"Fever Pitch" (am besten auf englisch), zur Not auch die Verfilmung, auch wenn
die es nicht ganz so in der Tiefe rueberbringt wie das Buch.

-----------------------------------------------------------------------------



Re^7: karte fuer S04 : Fc Bayern (Amazora, 26. Sep 2003, 13:02:57):
~#! rn=Bambi rt=1064523166 rg=suche-biete
~#! tid=1064317500
in karlsruhe gibts einen schlake 04 fan club. ziemlich gross sogar. aeh
schalke04 *huestel*
wenn man im gegnerischen block ein faehnchen schwenkt ist man selber schuld
wenns eins auf die muetze gibt weil das dann doch ziemlich provokativ ist. 
ich kann dir jetzt nicht erklaeren was toll ist an fussball denn entweder man
mag fussball oder man mag fussball nicht. ich konnte allerdings schon einige
leute begeistern indem ich sie auf ein spiel mitgenommen hab. die sind dann
regelmaessig mitgegangen weil sie die stimmung gut fanden und irgendwann dann
auch die spiele interessant. grundsaetzlich zahlt man auch nur 8 euro auf nem
stehplatz. wenn man unbedingt sitzen will dann wirds halt teurer.  im fernsehn
sieht man zwar mehr vom spiel aber dafuer verpasst man die atmosphaere und die
kann schon ziemlich genial sein. ausserdem sieht man auch im stadion gut. ich
bin ziemlich klein und hab bis jetzt immer noch alles gut mitbekommen. 
amazora - fussballfan seit 25 jahren

-----------------------------------------------------------------------------



Re^8: karte fuer S04 : Fc Bayern (Muadib, 26. Sep 2003, 13:07:45):
~#! rn=Amazora rt=1064574177 rg=suche-biete
~#! tid=1064317500
fussball? 
langweilig

-----------------------------------------------------------------------------



Re^9: karte fuer S04 : Fc Bayern (Amazora, 26. Sep 2003, 13:11:34):
~#! rn=Muadib rt=1064574465 rg=suche-biete
~#! tid=1064317500
tja, so is es nunmal. die einen finden fussball langweilig und die anderen
schaun sich jedes spiel an.
amazora bleibt ihren farben treu: fc blau weiss linz ein ganzes leben lang

-----------------------------------------------------------------------------



Nachmieter gesucht (Berlin) (Rochus, 28. Sep 2003, 11:58:33):
So, ich werde Berlin jetzt wohl Richtung Dortmund verlassen
und suche daher zum 1. 11. einen Nachmieter.

Die Wohnung ist 66,45 m^2 gross, 2 Zimmer, Kueche, Bad mit Badewanne
und im 3. OG. Zur Wohnung gehoeren ein Keller und auf Wunsch ist
ein Stellplatz im Hof verfuegbar. Die Wohnlage ist nahe der
S-Baumschulenweg in Treptow, trotzdem sehr ruhig weil nicht
an der Strasse gelegen.
Das wichtigste fuer Mudder: DSL! :-)

Preis: Momentan zahle ich 230 kalt und 56 Nebenkosten.
Die Wohnung soll jedoch modernisiert werden, dann werden
es glaube ich 85 Euro mehr (maximal, koennten auch 75 sein).
Dafuer wird dabei das Bad neu installiert und gefliest,
und die Gasheizungen durch Zentralheizung ersetzt.
Ich weiss nur noch nicht wann, ideal waere natuerlich
direkt nach meinem Auszug -  ich habe dem Vermieter
jedenfalls ausdruecklich dazu geraten (zumal ich dann
nicht das Bad neu tapezieren und streichen muesste :)

Ich habe recht viel Arbeit in die Wohnung gesteckt und
ein Podest (Stauraum in 7 80x50 Schubladen und Sitzgelegenheit),
und eine Zwischendecke eingebaut (Stauraum in Breite des Flurs
(ca. 1.26m), ein 4m langes und ein 2m langes Stueck sind oben
mit stabilen 28mm Hobeldielen versehen, da koennen auch schwere Sachen
abgestellt werden, haelt sogar mein Gewicht aus. Die Decke hat
3 Luken). Ausserdem ist der Boden im FLur mit Holz belegt.

Ich wuerde die Einbauten gerne an einen Nachmieter uebergeben,
das Podest muesste ich sonst in jedem Fall ausbauen.
Was ich sonst noch abgeben kann: Teppiche (sind auf die
Wohnung zugeschnitten), Jalousien und Rollos (passen halt
genau auf die Fenster :) und DSL-Modem
(ich nehme in Dortmund wohl ish)

Also mir gefaellt die Wohnung sehr gut, wenn ich koennte
wuerde ich sie nach Dortmund mitnehmen *seufz*

Ach, in der Wohnung waren beim Einzug uebrigens
Spuele und Gasherd... der Vermieter will jedoch Gas
aus der Wohnung raushaben, bin mir nicht sicher
ob er den Herd ersetzt. Der Kuechenboden und die
Wand mit der Spuele sollen uebrigens auch
gefliest werden.

  Rochus

-----------------------------------------------------------------------------



Re: Nachmieter gesucht (Berlin) (Wargon, 28. Sep 2003, 17:52:49):
~#! rn=Rochus rt=1064743113 rg=suche-biete
~#! tid=1064743113
Hm, nur zur Klaerung: bezieht sich das "und im 3. OG" auf die gesamte Wohnung
oder nur auf das "Bad mit Badewanne"? ;)
  Wargon

-----------------------------------------------------------------------------



Re: Re: Nachmieter gesucht (Berlin) (Rochus, 29. Sep 2003, 10:20:28):
~#! rn=Wargon rt=1064764369 rg=suche-biete
~#! tid=1064743113
Selbstverstaendlich nur auf das Bad mit Badewanne.
Die Wohnung selbst ist im Erdgeschoss und Du musst nach dem
Baden jedesmal nackig durchs Treppenhaus laufen :)

  Rochus

-----------------------------------------------------------------------------



Re^3: Nachmieter gesucht (Berlin) (Bambulko, 29. Sep 2003, 10:37:02):
~#! rn=Rochus rt=1064823628 rg=suche-biete
~#! tid=1064743113
Sind denn Handtuecher und Bademaentel laut Hausordnung verboten?

Bambulko

-----------------------------------------------------------------------------



Re^3: Nachmieter gesucht (Berlin) (Patryn, 29. Sep 2003, 11:16:14):
~#! rn=Rochus rt=1064823628 rg=suche-biete
~#! tid=1064743113
Muss man da vorher nen Schaulaufen vor den anderen Mietern machen bevor das
OK des Vermieters kommt?

-----------------------------------------------------------------------------



Re: Nachmieter gesucht (Berlin) (Rochus, 29. Sep 2003, 12:08:39):
~#! rn=Rochus rt=1064743113 rg=suche-biete
~#! tid=1064743113
So, habe eben endlich Nachricht vom Vermieter bekommen...
Also, die Modernisierung wuerde wohl 4-6 Wochen dauern, ABER:
Wenn ich einen Mieter fuer eine der fertigen Wohnungen
finde bin ich auch vorzeitig aus dem Mietvertrag raus.

Im Angebot sind:
3. OG, 62qm, 296,62 kalt, 62 HK, 79,62 BK
3.OG, 62qm, 297,41 kalt, 60 HK, 79,81 BK
2. OG, 66qm, 319,40 kalt, 65 HK, 85,81 BK
HK=Heizkosten, BK=Nebenkosten (jeweils Vorschuss, kann bei der
Jahresabrechnung natuerlich angepasst werden... bei mir wurden
die Betriebskosten jedenfalls auf 56 Euro gesenkt nach der Abrechnung)

Alle Wohnungen mit 2 Monatsmieten Kaution, Einkommensnachweis und
Bescheinigung des letzten Vermieters, dass keine Mietschulden
bestehen (das will aber so ziemlich jeder :)

Ich habe eine der Wohnungen schon gesehen, die sind
alle sehr gut... nur nicht so schoen eingerichtet wie meine :)

  Rochus

-----------------------------------------------------------------------------



Spielzeug gesucht ... (Gloinson,  8. Okt 2003, 12:37:48):
hat jemand Tipps fuer einen Anbieter guenstiger (also neuer aber etwas
langsamerer) Laptops? Akku sollte allerdings drin sein, nicht so ein Teil mit
externem Pack.


-----------------------------------------------------------------------------



Re: Spielzeug gesucht ... (Ogo,  8. Okt 2003, 15:27:01):
~#! rn=Gloinson rt=1065609468 rg=suche-biete
~#! tid=1065609468
Du koenntest bei nofost.de gucken, allerdings musst du eine Kopie (D)eines
Studentenausweises hinfaxen. Die sind irgendwie von IBM subventioniert. Ich
hab meinen Schlepptop dort gekauft und bin mit Ausnahme von ein paar
Linux-Stolperstellen (ACPI) doch sehr zufrieden.

Ich weiss nicht, ob die Preise dort Deinem Verstaendnis von 'guenstig'
entsprechen; jedoch ist die Verarbeitung von IBM Laptops meines Erachtes nur
von Apple zu schlagen. 

Ogo

-----------------------------------------------------------------------------



Re: Re: Spielzeug gesucht ... (Krikkit,  8. Okt 2003, 15:37:56):
~#! rn=Ogo rt=1065619621 rg=suche-biete
~#! tid=1065609468
aehnliches gilt fuer http://www.bruenings-sander.de (alternativ
http://www.uni-notebooks.de/). soweit ich weiss, werden die notebooks u.a. von
der bundesregierung subventioniert. die preise weichen sehr von den normalen
einkaufpreisen ab, jedoch ist mit laengeren lieferzeiten zu rechnen, weil IBM
nur bestimmte kontigente in bestimmten zeitraeumen liefert (die werden wohl
irgendwo in GB gebaut).
bruennings-sander hat ladengeschaefte in berlin und muenchen. da kann man sich
mal die teile direkt anschauen (sonst kriegste ja IBM nicht im laden zu
sehen).
hinzuzufuegen sei noch, dass die IBM thinkpads r40 in manch
preis/leistungsvergleichen nicht so supertoll abgeschnitten haben (ich hab da
aber nur alte tests gelesen). eine ibm-harddisk ist oft nicht dabei. dennoch
ist die qualitaet in sachen verarbeitung und service sicherlich ein vorteil.

krikkit

-----------------------------------------------------------------------------



Re: Re: Spielzeug gesucht ... (Ark, 10. Okt 2003, 14:09:21):
~#! rn=Ogo rt=1065619621 rg=suche-biete
~#! tid=1065609468
Die werden nicht subventioniert. Die gibt es tatsaechlich so, nur die Menge
machts halt :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Suche "By Reason of Insanity" von Shane Stevens (Morgoth, 16. Okt 2003, 21:53:06):
Hi


ich hatte dieses Buch mal und hab es verliehen und nicht zurueck bekommen.
Leider gibt es das nicht mehr :( Falls das noch jemand hat (englische Ausgabe
natuerlich) oder besorgen kann....

M*

-----------------------------------------------------------------------------



Trivial (Bambi, 20. Okt 2003, 23:14:58):
Ich suche eine Definition des Wortes "trivial". Dummerweise kann ich weder
lesen noch schreiben, moechte die Definition daher bitte als Bildergeschichte
oder als MP3. Falls das nicht moeglich ist, nehm ichs zur Not auch als Text
und lass es mir am Stammtisch vorlesen.

MfG, Bambi.

-----------------------------------------------------------------------------



Re: Trivial (Catweazle, 20. Okt 2003, 23:17:42):
~#! rn=Bambi rt=1066684498 rg=suche-biete
~#! tid=1066684498
Trivial ...

YTC

-----------------------------------------------------------------------------



Re: Re: Trivial (Morgoth, 20. Okt 2003, 23:19:29):
~#! rn=Catweazle rt=1066684662 rg=suche-biete
~#! tid=1066684498
... Pursuit

M*

-----------------------------------------------------------------------------



Re^3: Trivial (Catweazle, 20. Okt 2003, 23:21:14):
~#! rn=Morgoth rt=1066684769 rg=suche-biete
~#! tid=1066684498
Zu trivial :-)

YTC

-----------------------------------------------------------------------------



B: BNC-Kabel (Orktoeter,  5. Nov 2003, 19:25:24):
Habe ein Kabel abzugeben, von VGA auf BNC.
Bei interesse, mail an mich.

OrkT.

-----------------------------------------------------------------------------



S: Speicher (Orktoeter,  5. Nov 2003, 19:26:50):
Suche 512MB DDR-RAM 266MHz.
Wer solchen hat und bereit ist ihn herzugeben... mail an mich.

OrkT.

-----------------------------------------------------------------------------



camcorder (Krikkit, 11. Nov 2003, 16:23:31):
hallo,

bald bin ich im urlaub und suche eine moeglichkeit, impressionen mitzunehmen.
da ich relativ pleite bin suche ich eine billige moeglichkeit videos
aufzunehmen. ich dachte da an nen analogen camcorder (ja, sowas gibts noch).
vielleicht hat ja jemand von euch so ne alte muehle im schrank rumgammeln (hi8
oder so) und will den endlich loswerden?! - ich nehms gern :-)

krikkit

ps. ich biete dafuer: keine ahnung, aber mindestens einen schokoriegel.

-----------------------------------------------------------------------------



Suche ... Job (Hobo, 22. Nov 2003, 21:25:58):
Hallo Ihr,

ich suche fuer meinen frisch ausstudierten Bruder nen Job. Ok, nein, ich suche
nicht den Job fuer ihn, aber ich hoffe, dass Ihr mir helfen koennt, eine
"geeignete" Firma aufzutun, wohin er dann seine Bewerbung schicken kann.

Was er gerne machen wuerde:
Am liebsten Trainee oder Einsteigerjob mit guten Weiterbildungsmoeglichkeiten.
Im Fachbereich Marketing, Strategie, irgendwas um die BWL drumrum
Gerne auch was "mit Menschen": Verkaufsschulung, Coaching, Consulting, aber
kein Telemarketing, Kundenberatung oder Verkauf

Wie Ihr wahrscheinlich gemerkt habt: MEIN Fachbereich ist das nicht, drum kann
ich nur kurz ne Richtung geben, in der er gerne arbeiten wuerde.

Und so wenig ich mich sonst mit meinem Bruder verstehe: Meiner Firma wuerde
ich ihn auf jeden Fall empfehlen, denn er ist jemand, der sich schnell auch in
neue Bereiche eindenken kann, Probleme sehr frueh erkennt und ansonsten auch
sehr flexibel ist. (Ausland? Gerne!) Und er hat ne ganze Menge Charisma, das
er auch gut einsetzen kann ;)

Bei Fragen, koennt Ihr mich gerne direkt anmailen unter terraicks@gmx.de

Ich wuerde mich freuen, wenn sich was ergeben wuerde!

    Hobo - hat als "Nur"Hausfrau keine Jobsorgen mehr ;)

-----------------------------------------------------------------------------



Koscheres Essen (Bambi, 27. Nov 2003, 14:35:14):
Suche Erklaerung, was Essen erfuellen muss, um als "koscher" angesehen zu
werden. Biete Dank.

-----------------------------------------------------------------------------



Re: Koscheres Essen (Anthea, 27. Nov 2003, 14:36:42):
~#! rn=Bambi rt=1069940114 rg=suche-biete
~#! tid=1069940114
http://www.hagalil.com/judentum/koscher/kaschruth.htm

-----------------------------------------------------------------------------



Re: Re: Koscheres Essen (Bambi, 27. Nov 2003, 14:36:54):
~#! rn=Anthea rt=1069940202 rg=suche-biete
~#! tid=1069940114
Danke.

-----------------------------------------------------------------------------



hallo (Dante, 27. Nov 2003, 19:24:13):
eine vielleicht etwas seltsam anmutende frage:
wo wuerdet ihr in .de hinziehen, wenn ihr es euch aussuchen koenntet.
ich will nicht in ein extrem-kaff aber auch nicht in ne megacity.
ich will klettern!!! und vielleicht schoene landschaft drumherum und wenns
geht sonne:-)
saechsische schweiz ? frankenjura ? was gibts da noch?
fuer infos oder tips oder irgendwasauchimmer waer ich dannkbar
dante

-----------------------------------------------------------------------------



Re: hallo (Muadib, 27. Nov 2003, 19:25:03):
~#! rn=Dante rt=1069957453 rg=suche-biete
~#! tid=1069957453
irgendein kaff leicht suedlich von cairns

-----------------------------------------------------------------------------



Re: Re: hallo (Humni, 27. Nov 2003, 19:47:37):
~#! rn=Muadib rt=1069957503 rg=suche-biete
~#! tid=1069957453
Also ich hab 2,5 Jahre in Freiburg (naja, gearbeitet, gewohnt 5 km noerdlich)
und die Gegend ist super, klettern kann man ... oeh.. da im Schwarzwald glaub
ich auch und Sonne ist auch da. Ich selbst mochte die Leute aber nicht so, die
waren mir zu eigen. Aber schoen isses da, kein Kaff, keine Megacity ists auch
und fuer meinen Geschmack viel zu viel Sonne. Ich hab auch prompt ne
Souterrain-Wohnung genommen. Im Sommer (vor allem in diesem) ging man sonst
wirklich ein.

Humni

-----------------------------------------------------------------------------



Re: hallo (Ark, 28. Nov 2003, 11:17:57):
~#! rn=Dante rt=1069957453 rg=suche-biete
~#! tid=1069957453
Freiburg? Was ist eigentlich ein Extremkaff?


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re: Re: hallo (Zook, 28. Nov 2003, 11:18:22):
~#! rn=Ark rt=1070014677 rg=suche-biete
~#! tid=1069957453
Darmstadt?

Zook.


-----------------------------------------------------------------------------



Re^3: hallo (Scorpion, 28. Nov 2003, 11:25:36):
~#! rn=Zook rt=1070014702 rg=suche-biete
~#! tid=1069957453
Bielefeld?

Scorpion in Deckung gehend. :)

-----------------------------------------------------------------------------



Re^4: hallo (Bielefeld, 28. Nov 2003, 11:25:58):
~#! rn=Scorpion rt=1070015136 rg=suche-biete
~#! tid=1069957453
:bietet Wiesbaden.

-Bielefeld

-----------------------------------------------------------------------------



Re^5: hallo (Catweazle, 28. Nov 2003, 11:28:28):
~#! rn=Bielefeld rt=1070015158 rg=suche-biete
~#! tid=1069957453
Alles luschig. Hagen.

YTC

-----------------------------------------------------------------------------



Re^6: hallo (Bielefeld, 28. Nov 2003, 11:29:45):
~#! rn=Catweazle rt=1070015308 rg=suche-biete
~#! tid=1069957453
War das nicht die Truemmerwueste an der Bahnstrecke 
Dortmund-Wuppertal?

-Bielefeld (zieht Wiesbaden zurueck)

-----------------------------------------------------------------------------



Re^6: hallo (Montanus, 28. Nov 2003, 11:32:59):
~#! rn=Catweazle rt=1070015308 rg=suche-biete
~#! tid=1069957453
In Hagen will man nicht wohnen. Es sei denn, man ist ein Zwieback. Dann schon
eher Staedte wie Bonn oder Kaiserslautern...

-----------------------------------------------------------------------------



Re^7: hallo (Amaryllis, 28. Nov 2003, 12:41:16):
~#! rn=Bielefeld rt=1070015385 rg=suche-biete
~#! tid=1069957453
Was ist Dortmund?
Was ist Wuppertal?

Ich biete Furtwangen... da fahr ich heute mal wieder hin :)

Ama*

-----------------------------------------------------------------------------



Re^8: hallo (Zook, 28. Nov 2003, 12:43:43):
~#! rn=Amaryllis rt=1070019676 rg=suche-biete
~#! tid=1069957453
Lass Dich nicht einschneien.

Zook.

-----------------------------------------------------------------------------



Re^8: hallo (Bambulko, 28. Nov 2003, 12:45:55):
~#! rn=Amaryllis rt=1070019676 rg=suche-biete
~#! tid=1069957453
Ihr scheint alle nicht zu wissen was ein wirkliches Kaff ist. Ich biete
Erkensruhr, in der Eifel..... Hat vieleicht 100 Einwohner. Das ist ein Kaff.

Bambulko

-----------------------------------------------------------------------------



Re^9: hallo (Amaryllis, 28. Nov 2003, 12:47:55):
~#! rn=Bambulko rt=1070019955 rg=suche-biete
~#! tid=1069957453
Du kennst Furtwangen anscheinend nicht.

Wenns da meterweise Schnee hat, ist man von der Aussenwelt in 1100m Hoehe
abgeschnitten. Keine Chance mehr.

Ama*, sass da selbst mal ne Woche fest, und ist anschliessend mit 3
gebrochenen Stossdaempferfedern heimgefahren, die das Schneegewicht auf dem
Auto nicht mehr ausgehalten haben...

-----------------------------------------------------------------------------



Re^9: hallo (Zook, 28. Nov 2003, 12:48:22):
~#! rn=Bambulko rt=1070019955 rg=suche-biete
~#! tid=1069957453
Wohnst Du da?

Zook betreibt investigativen Journalismus.

-----------------------------------------------------------------------------



Re^10: hallo (Zook, 28. Nov 2003, 12:48:48):
~#! rn=Amaryllis rt=1070020075 rg=suche-biete
~#! tid=1069957453
Zook weiss schon, warum er vor dem Einschneien gewarnt hat.

-----------------------------------------------------------------------------



Re^10: hallo (Bambulko, 28. Nov 2003, 12:55:33):
~#! rn=Zook rt=1070020102 rg=suche-biete
~#! tid=1069957453
Nein. 

Bambulko

-----------------------------------------------------------------------------



Re: hallo (Schlips, 28. Nov 2003, 16:36:08):
~#! rn=Dante rt=1069957453 rg=suche-biete
~#! tid=1069957453
Erlangen fand ich ganz nett- zumal Du da auch noch andere Staedte als Optionen
hast.
Ulm, wo ich jetzt lebe ist auch passabelaber etwas hmm ... 
naja zumindest ist es der Kaelte- und Nebelpol des Suedens.
Der Nebel erinnert etwas an SF im Sommer - das ist dann aber die einzige
Aehnlichkeit.

Schlips

-----------------------------------------------------------------------------



Re: Re: hallo (Medic, 28. Nov 2003, 17:29:27):
~#! rn=Schlips rt=1070033768 rg=suche-biete
~#! tid=1069957453
Hagen ist auch kaffig.

Medic, faehrt da spaeter noch hin.

-----------------------------------------------------------------------------



Re^3: hallo (Humni, 29. Nov 2003, 18:20:15):
~#! rn=Medic rt=1070036967 rg=suche-biete
~#! tid=1069957453
Ich bin im Sauerland aufgewachsen. Kommentare dazu kannst Du Dir von den
Leuten anhoeren, die auf meiner Geburtstagsparty im Sommer waren, waren ja
doch ei paar.

Nur ein paar Kostproben: 
"Wie lnge habt ihr hier schon Strom?"
"Was macht man hier nachmittags nach der Schule?"
"Hier hast Du nicht wirklich gewohnt, oder?"

...

Humni

-----------------------------------------------------------------------------



Re^10: hallo (Imda, 29. Nov 2003, 20:08:13):
~#! rn=Amaryllis rt=1070020075 rg=suche-biete
~#! tid=1069957453
Was zum Henker ist eine Stossdaempferfeder?

-----------------------------------------------------------------------------



Re^11: hallo (Foobar, 29. Nov 2003, 20:14:47):
~#! rn=Imda rt=1070132893 rg=suche-biete
~#! tid=1069957453
IIRC handelt es sich um die Feder, die sich um den Stossdaempfer herum
befindet.

-----------------------------------------------------------------------------



Re^4: hallo (Hobo, 29. Nov 2003, 20:31:24):
~#! rn=Humni rt=1070126415 rg=suche-biete
~#! tid=1069957453
Und nicht zu vergessen:
"Hier in der Gegend gibt's wohl nur eine Fahrschule und der Lehrer kann NICHT
auto fahren."

-----------------------------------------------------------------------------



Re^11: hallo (Maharet, 29. Nov 2003, 22:56:14):
~#! rn=Imda rt=1070132893 rg=suche-biete
~#! tid=1069957453
Ich kenn mich mit Autos ja nicht aus.  Ok, ich erkenn eins, wenn ich nahe
genug rangehe, aber sonst ...

Was Stossdaempferfeder angeht, hab ich aber schon Erfahrungen.  Mein Ex-Freund
hatte damals, als wir uns kennengelernt haben, sein Bett auf vier derartiger
Federn gebaut.  Gab interessante Effekte, wenn man die Eigenfrequenz der
Federn erreicht hat 
o)

Maha, in Erinnerungen schwelgend

-----------------------------------------------------------------------------



Re^12: hallo (Foobar, 29. Nov 2003, 23:00:02):
~#! rn=Maharet rt=1070142974 rg=suche-biete
~#! tid=1069957453
Send pix.

-----------------------------------------------------------------------------



Re: Re: hallo (Catweazle, 30. Nov 2003, 00:47:45):
~#! rn=Schlips rt=1070033768 rg=suche-biete
~#! tid=1069957453
Wissenswertes, wissenswertes, ueber Erlangen ...

Ach was, das versteht hier sowieso niemand mehr :-)

YTC

-----------------------------------------------------------------------------



Re^3: hallo (Mupfel, 30. Nov 2003, 01:02:13):
~#! rn=Catweazle rt=1070149665 rg=suche-biete
~#! tid=1069957453
Boah _das_ kennst Du noch? Alter Sack ;)

-mupfel-

-----------------------------------------------------------------------------



Re^4: hallo (Catweazle, 30. Nov 2003, 01:10:47):
~#! rn=Mupfel rt=1070150533 rg=suche-biete
~#! tid=1069957453
 Menno. verdammter Mist, jetzt rotiert dieser D>recksrefrain in meinem Kopf.
Wehe der ist morgen nicht weg :-)

YTC

-----------------------------------------------------------------------------



Re^5: hallo (Marcus, 30. Nov 2003, 08:49:12):
~#! rn=Catweazle rt=1070151047 rg=suche-biete
~#! tid=1069957453
Selbst ich hab das erst Jahre nachdem ich hergezogen bin gelernt ;)

Soviel an NDW Zeugs ist dann zum Glueck net nach Osten ruebergeschwappt vorher
;)

Ciao, Marcus

-----------------------------------------------------------------------------



Re^6: hallo (Montanus,  1. Dez 2003, 08:46:19):
~#! rn=Marcus rt=1070178552 rg=suche-biete
~#! tid=1069957453
Also wenn Mr. personifizierter Haarschwund Mupfel jemand anderes als "alten
Sack" bezeichnet... das wuerde mir schon zu denken geben...

-----------------------------------------------------------------------------



Re^4: hallo (Boing,  1. Dez 2003, 11:23:25):
~#! rn=Humni rt=1070126415 rg=suche-biete
~#! tid=1069957453
Ach das war im Sommer? Kam mir wie tiefster Winter vor ... :)
  Boing

-----------------------------------------------------------------------------



Cocktails (Gorog,  1. Dez 2003, 13:08:49):
Moins

Ich suche nach indischen Cocktails, moeglichst ohne Milch oder andere
Sattmacher.  Falls da jemand von Euch was kennt, waers nett wenn ihrs posten
koenntet oder mir ne mail schreibt. Danke
Gorog

-----------------------------------------------------------------------------



Re: Cocktails (Darklor,  1. Dez 2003, 13:34:50):
~#! rn=Gorog rt=1070280529 rg=suche-biete
~#! tid=1070280529
Was soll denn sonst noch alles NICHT darin sein?

Darklor

-----------------------------------------------------------------------------



Re: Re: Cocktails (Gorog,  1. Dez 2003, 14:10:43):
~#! rn=Darklor rt=1070282090 rg=suche-biete
~#! tid=1070280529
Ansonsten is es egal, Hauptsache indisch (; Saettigendens Zeugs ist eher
schlecht, weil wir hinterher noch mehr als vielzuviel indisches Essen
bekommen, und wenn man da keinen Hunger mehr hat, weil der Cocktail saettigend
war waer das nicht so gut

Gorog

-----------------------------------------------------------------------------



Re^9: hallo (Zarniya,  2. Dez 2003, 16:36:30):
~#! rn=Bambulko rt=1070019955 rg=suche-biete
~#! tid=1069957453
Quadrath-Ichendorf.... alleine schon wegen dem Scheiss Namen :)

-----------------------------------------------------------------------------



Re^3: Cocktails (Zarniya,  2. Dez 2003, 16:39:03):
~#! rn=Gorog rt=1070284243 rg=suche-biete
~#! tid=1070280529
Currywasser? :)

-----------------------------------------------------------------------------



Re^10: hallo (Bambulko,  2. Dez 2003, 17:18:59):
~#! rn=Zarniya rt=1070379390 rg=suche-biete
~#! tid=1069957453
Ok, Du hast gewonnen! Ich habe einen Freund der dort gewohnt hat....

Bambulko

-----------------------------------------------------------------------------



PDAs (Bambulko,  5. Dez 2003, 10:19:56):
Ich moechte mir gerne einen PDA zulegen, kenne mich aber nicht besonders auf
dem Markt aus. Ich kann bis 200 Euro ausgeben. Hat jemand hilfreiche Tipps
oder Empfehlungen?

Bambulko

-----------------------------------------------------------------------------



Re: PDAs (Bambulko,  5. Dez 2003, 15:15:59):
~#! rn=Bambulko rt=1070615996 rg=suche-biete
~#! tid=1070615996
Hat jemand schon Erfahrungen mit der Syncronisation von Pocket PCs mit Linux
Rechnern gemacht?

Bambulko

-----------------------------------------------------------------------------



Re: PDAs (Ogo,  5. Dez 2003, 16:58:09):
~#! rn=Bambulko rt=1070615996 rg=suche-biete
~#! tid=1070615996
PDA!=PDA Es kommt in erster Linie darauf an, was du damit machen willst, wenn
es nur um Adressverwaltung etc geht, reicht sicherlich ein kleiner
Schwarz/Weiss Palm. Mittlerweile gibt es aber PDAs, die sich
leistungstechnisch nicht vor aelteren Laptops verstecken muessen. Ich habe mir
den Zaurus 760 aus Japan mitbringen lassen (der kostete dort 460EUR). Das ist
ein Xscale Prozessor mit 400mhz, 64MB Ram, 128MB Speicher. Laeuft unter linux
embeddix und qtopia. Das Ding kannst du mit CF und SD/MM-Karten aufruesten. Es
hat eine Infrarotschnittestelle und ein usbnet eingebaut. (Du verbindest den
Zaurus mit einem USB-Kabel mit einem normalen Rechner und hast dort dann eine
Nic usb0) mit CF-Wlan Karte bist du sogar ohne Kabel im Netz (Infrarot geht
auch, ist aber langsam.) Man kann Filme gucken, ihn als mp3-Player
missbrauchen, uebers Handy per ssh Rechner fernwarten und so weiter und so
fort. Wenn du ambitionierter bist, sind linux-PDAs wirklich niedlich, mit
entsprechendem CrossCompiler kannst du fast alles drauf laufen lassen.
(zumindest wenn die Software gut geschrieben ist, z.b. sind shorts beim XScale
stdmaessig unsigned, bei x86 signed.) 
Bei diesen PDA-Boliden sind die Batterielaufzeiten auch so eine Sache, mein
Zaurus laeuft 8h im Dauerbetrieb. Wenn man ihn nicht braucht, macht er ein
Suspend to Ram (unter APM, geht aber wirklich ohne Probleme) und auch das
Display hat Sharp ziemlich gut hinbekommen, 640x480 bei 3.5"(?).
Die Zauri haben auch kleine Tastaturen, was fuer Leute wie mich, die eine
fuerchterliche Handschrift haben, ganz praktisch ist. ;)
Falls du dich fuer sowas interessierst:
http://www.linuxenterprise.de/itr/online_artikel/psecom,id,440,nodeid,9.html

Ogo

-----------------------------------------------------------------------------



Re: Re: PDAs (Vanion,  5. Dez 2003, 17:00:39):
~#! rn=Ogo rt=1070639889 rg=suche-biete
~#! tid=1070615996
Du hast einen Zaurus? Beneid *g* Da laeuft wadoku drauf.

V*, auchwillaberzuteuer.

-----------------------------------------------------------------------------



Re: Re: PDAs (Liara,  7. Dez 2003, 17:28:49):
~#! rn=Ogo rt=1070639889 rg=suche-biete
~#! tid=1070615996
Ist ja schoen, dass wir nun wissen, was du fuer einen tollen PDA hast. ;>

P. S.: In seinem Artikel stand etwas von 200 Euro. ;)

-----------------------------------------------------------------------------



Re: PDAs (Catweazle,  8. Dez 2003, 00:21:24):
~#! rn=Bambulko rt=1070615996 rg=suche-biete
~#! tid=1070615996
PDA-los, aber ein Umfeld nicht unwesentlicher Groesse beobachtend, schliesse
ich mich meinem Vorredner an: Zaurus. 
Da tuts (bei deiner Preisbeschraenkung) bestimmt auch ein auslaufendes Modell.

YTC

-----------------------------------------------------------------------------



altes Playmobil (Montanus, 12. Dez 2003, 14:25:07):
Ihr habt noch altes Playmobil auf dem SPeicher herumliegen, mit dem eh niemand
mehr spielt, und keine Lust/keine Zeit fuer eBay?
Falls ja, gebt mir kurz Bescheid, ich suche vor allem Sachen aus den Gebieten
Western und Piraten, ueber eine tolle Abloesesumme laesst sich da sicher gut
verhandeln.

Gruss

MOntanus

-----------------------------------------------------------------------------



Re^12: hallo (Kellybundy, 15. Dez 2003, 13:23:33):
~#! rn=Foobar rt=1070133287 rg=suche-biete
~#! tid=1069957453
Besser spaet als nie: Datt nennt man Federbein!
Kelly, Korinthen in die Schuessel drueckend

-----------------------------------------------------------------------------



Re^12: hallo (Foobar, 15. Dez 2003, 13:51:00):
~#! rn=Foobar rt=1070133287 rg=suche-biete
~#! tid=1069957453
Ist "Federbein" nicht der Fachterminus fuer die Einheit, welche der
Stossdaempfer und die Feder bilden? Also, das Gesamtkonstrukt? :o)

-----------------------------------------------------------------------------



Re^13: hallo (Kellybundy, 15. Dez 2003, 15:35:56):
~#! rn=Foobar rt=1071492660 rg=suche-biete
~#! tid=1069957453
nope. Stossdaempfer is Stossdaempfer und Federbein is Federbein.

-----------------------------------------------------------------------------



Re: altes Playmobil (Hobo, 15. Dez 2003, 22:26:00):
~#! rn=Montanus rt=1071235507 rg=suche-biete
~#! tid=1071235507
Ich hab einen Hobo. Und den geb' ich nicht her :)

  Hobo

-----------------------------------------------------------------------------



Kranfreich ;o) (Gitarre,  6. Jan 2004, 16:30:34):
Hallo zusammen,

ich will im Sommer fuer ca. 2 Wochen (vielleicht auch 3) nach Frankreich
fahren. Gibts da Gleichgesinnte?

Gitarre - will ihre sprachlichen Faehigkeiten ausbauen

-----------------------------------------------------------------------------



Re: Kranfreich ;o) (Helvetia,  6. Jan 2004, 18:13:52):
~#! rn=Gitarre rt=1073403034 rg=suche-biete
~#! tid=1073403034
wie waers dann mit ner Party in der fraenzoesischen Schweiz Gitarre ;-)

-----------------------------------------------------------------------------



GameCube Ersatzteil (Ogo, 25. Jan 2004, 12:43:08):
Ich suche diese kleine Kontrollerplatine vom Gamecube. Wenn also jemand einen
kaputten Gamecube rumstehen hat, waere ich sehr interessiert.
Konkret: Es geht um diese kleine Platine, die die 4 Anschlussbuchsen fuer die
Kontroller hat. Diese Platine ist mit einem ca. 1cm breiten Flachbandkabel mit
dem Mainboard verbunden; dieses Kabel kann man einfach rausziehene.

Mir ist ein Teil von dieser Platine abgebrochen, so dass man noch Kontroller
2-4 anschliessen kann, aber Kontroller in Buchse 1 sind halt tot. Diesen aber
braucht man fuer viele Spiele, um in das Menue zu kommen. 

Ogo, der das mangels Abgreifstellen nicht mehr drangeloetet bekommt

-----------------------------------------------------------------------------



S: Aufzeichnung von "Was bin ich?" (Thufhir, 29. Jan 2004, 16:08:39):
huhu

hat zufaellig irgendwer die Aufzeichnung der Show "Was bin ich?" auf Kabel 1
mit dem Stargast Joerg Wontorra?

gruss, szzt

-----------------------------------------------------------------------------



dt. Katholikentag Ulm (Vector, 21. Mar 2004, 14:59:11):
Hellas,

dieses Jahr findet der deutsche Katholikentag im (schoenen?) Ulm
statt. Falls das fuer jemanden interessant sein sollte, das ganze
steigt vom:

16.-20. Juni 2004

Ich biete zentrumsnahe kostenlose Uebernachtungen in dieser Zeit,
Wohnung sollte fuer 5-6 Schlafsaecke mit Inhalt reichen.
Bei Interesse kurze mail

--Vector--

P.S.: bis dahin gibts auch acror-flat :)

-----------------------------------------------------------------------------



Re: dt. Katholikentag Ulm (Zook, 21. Mar 2004, 15:07:44):
~#! rn=Vector rt=1079877551 rg=suche-biete
~#! tid=1079877551
Ich war am gemeinsamen Kirchentag in Berlin und seit dem schicken mir 
die Kathos staendig Einladungen zum Katholikentag in Ulm. Find ich ja ganz
putzig. :)

Aber mit Deinem Angebot einer Uebernachtungsmoeglichkeit werd ich mir das 
doch mal prompt ueberlegen (Prospekt liegt nur 20cm vom Laptop entfernt, seh
ich grad ;))).

Zook.

-----------------------------------------------------------------------------



Artikel :o) (Nyx, 22. Mar 2004, 18:45:25):
Huhu, 

spielt zufaellig jemand Beyond Good and Evil? Ich komm da an einer Stelle in
der Fabrik nicht weiter und koennte einen Tip gebrauchen. Um genau zu sein,
fehlt mir der viereckige Schluessel.

LG
LG
La Nyx

-----------------------------------------------------------------------------



Re: Artikel :o) (Croft, 22. Mar 2004, 18:50:49):
~#! rn=Nyx rt=1079977525 rg=suche-biete
~#! tid=1079977525
Schau mal auf dlh.net vorbei.  Die Chancen auf nen Walkthrough stehen da gut
,-)

Croft

-----------------------------------------------------------------------------



S: Obdach (Orktoeter, 24. Mar 2004, 22:44:15):
Hallo Muensteraner!

Da ich bereits am Mittowch den 31.3. einfliegen werde, suche ich fuer die
Naechte vom Mittwoch bis Freitag 2qm fuer meine Isomatte und mich.

Bin pflegeleicht, nichtraucher und stubenrein.

Antworten bitte per mail.

Schon mal im Vorraus danke sagend, Orktoeter.

-----------------------------------------------------------------------------



Re: S: Obdach (Foobar, 25. Mar 2004, 12:06:38):
~#! rn=Orktoeter rt=1080164655 rg=suche-biete
~#! tid=1080164655
Muss leider ablehnen, da ich ab dem 31.3. aus meiner Wohnung raus bin und erst
am Party-WE umziehe.

-----------------------------------------------------------------------------



Re: Re: S: Obdach (Zook, 25. Mar 2004, 12:16:16):
~#! rn=Foobar rt=1080212798 rg=suche-biete
~#! tid=1080164655
Ah, Du ziehst dann in die Halle und wegen Dir bekommen wir nur eine 
Abteilung in der Halle und wegen Dir muessen wir dann so frueh am Sonntag
wieder raus und wegen Dir wird die Halle erst spaet am Freitag beziehbar?

Zook.

-----------------------------------------------------------------------------



Re^3: S: Obdach (Foobar, 25. Mar 2004, 12:39:43):
~#! rn=Zook rt=1080213376 rg=suche-biete
~#! tid=1080164655
Nein.

-----------------------------------------------------------------------------



WG-Zimmer fuer kommendes Semester (Kenny, 19. Apr 2004, 18:14:54):
Hiho,
zwar etwas unkonventionell, aber ich suche einen Mitbewohner fuer kommendes
Semester in Berlin. Wer interessiert ist kann sich ja bei mir melden :D

-----------------------------------------------------------------------------



hanuta-Sammelbildle (Montanus, 21. Apr 2004, 13:09:48):
Es gibt seit gestern/heute die neuen EM-2004-Sammelbilder in den Hanutas.
Da ich nicht 300 Hanutas futtern will, um alle komplett zu haben, bin ich
ueber Sachspenden sehr dankbar. ;-)

-----------------------------------------------------------------------------



Re: hanuta-Sammelbildle (Matis, 21. Apr 2004, 15:56:02):
~#! rn=Montanus rt=1082545788 rg=suche-biete
~#! tid=1082545788
Du sollst 300 Hanutas kaufen. Was Du dann damit machst ist egal.

Matis

-----------------------------------------------------------------------------



Re: WG-Zimmer fuer kommendes Semester (Gnome, 23. Apr 2004, 00:02:57):
~#! rn=Kenny rt=1082391294 rg=suche-biete
~#! tid=1082391294
du solltest fuer einen studenten relevante daten aufzaehlen, sonst wird
das nix. also sowas wie:
- art des internetanschlusses (sehr wichtig)
- naehe zum naechsten spaetkauf bzw. tankstelle (sehr wichtig)
- bvg-erreichbarkeit (maessig wichtig)
- groesse des zimmers/wohnung/oder so (nicht ganz so wichtig)
- ...

;)

gnOme

-----------------------------------------------------------------------------



Re: hanuta-Sammelbildle (Roland, 27. Apr 2004, 09:15:00):
~#! rn=Montanus rt=1082545788 rg=suche-biete
~#! tid=1082545788
wir solln dir 300 hanutas schicken ;)

-----------------------------------------------------------------------------



Suche Loriot-Bild. (Catweazle, 27. Apr 2004, 10:20:28):

Da ein Grossteil unserer Belegschaft offenbar keine Ahnung hat, dass und wie
eine Klobuerste zu benutzen ist, suche ich folgendes Bildchen.

Ich erinner mich an einen Loriot'schen Cartoon aus seiner
Richtig/Falsch-Reihe:
Erstes Bild: Klobuerste zum Haarekaemmen benutzen (falsch)
Zweites Bild: Mit Klobuerste Hintern abwischen (falsch)
Drittes Bild: Klobuerste in Schuessel haltend (richtig)

Weiss jemand ob dieser Cartoon vielleicht irgendwo digital online rumliegt?
Ich wuerde den naemlich gerne in unsere Klos haengen...

YTC

-----------------------------------------------------------------------------



Re: Suche Loriot-Bild. (Boing, 27. Apr 2004, 10:22:36):
~#! rn=Catweazle rt=1083054028 rg=suche-biete
~#! tid=1083054028
Damit kann ich nicht dienen, aber Muadib hat kuerzlich ein UML 
Sequenzdiagramm zu diesem Thema erstellt ... ;)
  Boing

-----------------------------------------------------------------------------



Re: Re: Suche Loriot-Bild. (Catweazle, 27. Apr 2004, 10:55:04):
~#! rn=Boing rt=1083054156 rg=suche-biete
~#! tid=1083054028
Was auch immer das ist, ich nehm es :)

YTC

-----------------------------------------------------------------------------



Re^3: Suche Loriot-Bild. (Alboin, 27. Apr 2004, 18:44:26):
~#! rn=Catweazle rt=1083056104 rg=suche-biete
~#! tid=1083054028
aehm wenn ich mich recht erinnere steht bei Bild 2 (klobuerste im Hintern) -
Fast richtig!

Al

-----------------------------------------------------------------------------



Re: Suche Loriot-Bild. (Darkwing, 28. Apr 2004, 20:25:57):
~#! rn=Catweazle rt=1083054028 rg=suche-biete
~#! tid=1083054028
Suesterfeldstrasse 30, 3. Etage, hinteres Klo in Aachen :o)

-----------------------------------------------------------------------------



Re: Suche Loriot-Bild. (Apophis, 29. Apr 2004, 14:28:36):
~#! rn=Catweazle rt=1083054028 rg=suche-biete
~#! tid=1083054028
habs mal von unserm Abott auf Arbeit entfernt.. und eingescannt..

http://www.magenbrot.net/images/sonstiges/Toilettenbenutzung.jpg

bitte :)

Apo* - kein Heimscheisser *g*

-----------------------------------------------------------------------------



Aqua-Jogging-Gurt (Liara, 30. Apr 2004, 11:39:09):
Ich suche einen solchen. Sollte jemand hier etwas derartiges zu Hause
rumfliegen haben und es loswerden wollen, bitte Mail an mich.

-----------------------------------------------------------------------------



Foucaultsches Pendel <-- Enzyklopaedie (Anatol, 29. Mai 2004, 15:02:30):
Ist jemandem bekannt, ob und wo es eine Enzyklopaedie zum Buch
"Das Foucaultsche Pendel" (Eco) gibt?

Anatol sucht


-----------------------------------------------------------------------------



Re: Foucaultsches Pendel <-- Enzyklopaedie (Phobos, 29. Mai 2004, 17:03:03):
~#! rn=Anatol rt=1085835750 rg=suche-biete
~#! tid=1085835750
Ich hab ein Taschenbuch aus dem Heyne Verlag: "Das Geheimnis des Pendels 
entschluesselt" von Luigi Bauco/Francesco Millocca (ISBN 3-453-04324-3)
von 1990.

Das Buch bezeichnet sich selbst als Woerterbuch (Originaltitel: Dizionario 
del pendolo di Foucault), ist also wohl eine Art Enzueklopedingens. Erhaelt 
schaetzungsweise 1500 Eintraege auf 350 Seiten. Fuer mich war es damals mehr
als ausreichend.

Phobos - hat trotzdem nur die Haelfte verstanden

(Nein, mein Exemplar steht nicht zur Verfuegung.)

-----------------------------------------------------------------------------



Location in Koeln (Bambulko,  1. Jun 2004, 23:54:00):
Ich suche eine nette Location in Koeln und Umgebung fuer eine Hochzeit. Es
sollte etwas Stilvolles sein, wie eine alte Scheune, ein Gewoelbekeller oder
auch eine schoene Fabrikhalle.

Bitte melden, falls hier jemand etwas kennt. Es sollte fuer ca. 60 Personen
sein.

Bambulko

-----------------------------------------------------------------------------



Re: Location in Koeln (Muadib,  2. Jun 2004, 19:46:09):
~#! rn=Bambulko rt=1086126840 rg=suche-biete
~#! tid=1086126840
hoert sich nach dom an

-----------------------------------------------------------------------------



Re: Re: Location in Koeln (Muaddib,  6. Jun 2004, 21:33:16):
~#! rn=Muadib rt=1086198369 rg=suche-biete
~#! tid=1086126840
Das Hotel im Wasserturm. (http://www.hotel-im-wasserturm.de/)

Mua, Stammgast

-----------------------------------------------------------------------------



Lego ahoi! (Catweazle,  1. Jul 2004, 12:04:36):
Moin!

Vielleicht hab ich ja Glueck und jemand weiss was dazu:

Ich suche jemanden, der in der Lage ist einen  Lego-Brick-Film fuer mich zu
produzieren. Einene ganz kurzen, fuer moeglicherweise kleines Geld. Hat da wer
Kontakte?

YTC

-----------------------------------------------------------------------------



Fluege online! (Catweazle, 16. Jul 2004, 08:49:14):

Ich suche immer noch eine gute Moeglichkeit online Fluege zu buchen bzw.
Preise zu ermitteln.

Vor drei Wochen hatte ich da was wundervoilles gefunden, aber hab leider das
Bookmarking vergessen. Ich glaube sogar irgendwer hier aus dem Mud hat mir den
Tipp gegeben.

Weiss jemand eine gute Flugbuchuebersicht?

YTC

-----------------------------------------------------------------------------



Re: Fluege online! (Zook, 16. Jul 2004, 10:00:54):
~#! rn=Catweazle rt=1089960554 rg=suche-biete
~#! tid=1089960554
Wenn Du sie wiederfindest, nehme ich gerne die URL als Tip. :) Zook.

-----------------------------------------------------------------------------



Re: Re: Fluege online! (Grimmborn, 16. Jul 2004, 10:15:30):
~#! rn=Zook rt=1089964854 rg=suche-biete
~#! tid=1089960554
http://cms.lufthansa.com/fly/de/de/index

GdA

-----------------------------------------------------------------------------



Re^3: Fluege online! (Catweazle, 16. Jul 2004, 10:28:31):
~#! rn=Grimmborn rt=1089965730 rg=suche-biete
~#! tid=1089960554
Die Lufthansa/Star Alliance ist richtiger Dreck, da die Online wahre
Schweinepresie verlangen.
Ich habe fertig recherchiert (in Reihenfolge der Beliebtheit bzw. wer
scheinbar kostenguenstigst ist):

http://www.expedia.de
http://www.travel24.com
http://www.flug.de
http://www.airline-direct.de

Bei der Lufthansa war ich auch, aber die haben mich mit dem vergleichsweise
vierfachen Preis erschreckt.

YTC

-----------------------------------------------------------------------------



Re^4: Fluege online! (Grimmborn, 16. Jul 2004, 10:31:11):
~#! rn=Catweazle rt=1089966511 rg=suche-biete
~#! tid=1089960554
Der Preis war bei Deiner urspruenglichen Anfrage kein Kriterium.

GdA

-----------------------------------------------------------------------------



Re^5: Fluege online! (Cassandra, 16. Jul 2004, 10:32:57):
~#! rn=Grimmborn rt=1089966671 rg=suche-biete
~#! tid=1089960554
wenns nur darum geht fluege zu finden, geht auch
www.opodo.de
Hat aber auch nur die klassischen Fluglinien und nicht die Billigflieger im
Angebot

Ansonsten selbst bei den Airlines checken

Cassy

-----------------------------------------------------------------------------



Re: Re: Fluege online! (Muadib, 16. Jul 2004, 11:28:25):
~#! rn=Zook rt=1089964854 rg=suche-biete
~#! tid=1089960554
www.traveltopia.de und www.expedia.de
noch eine richtig gute seite habe ich demletzt verwendet, aber ich hab auch
kein bookmark mehr drauf

-----------------------------------------------------------------------------



B: 256MB DDR-RAM (Orktoeter, 27. Jul 2004, 11:44:23):

Auf dem Riegel steht: 256MB16.DDR/6L/266MHz
Der Speicher ist von DITech

Macht mir Angebote, wenn ihr interessiert seit.

Orktoeter.

-----------------------------------------------------------------------------



Re: B: 256MB DDR-RAM (Montanus, 28. Jul 2004, 09:21:31):
~#! rn=Orktoeter rt=1090921463 rg=suche-biete
~#! tid=1090921463
DDR-RAM? Lieber OrkT, die DDR gibt es seit einigen jahren nicht mehr, und ich
glaube, in der Computertechnologie waren die damals nicht auf dem Stand von
heute. *g*

-----------------------------------------------------------------------------



Re: Re: B: 256MB DDR-RAM (Betty, 28. Jul 2004, 09:52:25):
~#! rn=Montanus rt=1090999291 rg=suche-biete
~#! tid=1090921463
Die DDR-RAMs waren aber so gross, dass man sie auch mit Wurstfingern einbauen
konnte.
Originalwerbung: "Unsere Mikrocomputer sind die groessten der Welt"

-----------------------------------------------------------------------------



PowerBook G4 (Gnome, 29. Jul 2004, 17:07:19):
haette ein PowerBook G4 zu verkaufen. muesste nen 17" sein.
bei grundsaetzlichem interesse -> mail an mich.

gnOme

-----------------------------------------------------------------------------



GEO-Daten, Karten, Deutschland, Formate, R (Zook,  3. Aug 2004, 16:56:30):
Hi, ich benoetige fuer einige Darstellungen eine Deutschlandkarte
nach Bundeslaendern, evtl. sogar nach Raumordnungsregionen. Weiss jemand,
ob und wo es so etwas sogar frei verfuegbar gibt und leicht einlesbar
in Standard-"Karten"-Programm (hab keinen Plan, was es da fuer Datei-
Formate gibt). Verwenden will ich es hoechstwahrscheinlich mit der
Statistik-Software R.

Zook.

-----------------------------------------------------------------------------



Re: GEO-Daten, Karten, Deutschland, Formate, R (Zook,  3. Aug 2004, 20:08:57):
~#! rn=Zook rt=1091544990 rg=suche-biete
~#! tid=1091544990
Ah, nun habe ich immerhin nen paar Daten fuer ganz Europa. Hat irgendjemand
nen Plan von GeoInformationsSystemen? Ich hab die Daten einerseits in E00
und Arc/Info Format und kann die auch anzeigen/drucken, aber nicht so richtig
auswaehlen, dass ich nur Deutschland plus die Bundeslaender haben moechte;
zumindest weiss ich noch nicht, wie das geht.

Zook.

-----------------------------------------------------------------------------



biete Zimmer in WG (Toe, 21. Aug 2004, 09:21:57):
Ab 1. 10. habe ich ein Zimmer zu vermieten.
Entweder moebliert oder zur freien Einrichtung.
Bonn-West, Brueser Berg, 25 Busminuten zum Bahnhof.
Internet und eigene MSN sowie Mitbenutzung von Kueche, Bad und Wohnzimmer.
Bei Interesse Mail an mich.
toe

-----------------------------------------------------------------------------



Suche Altbaudeckenstatiker ;) (Gloinson, 23. Aug 2004, 00:31:02):
Ich habe heute ein schweres Geraet an meine Altbaudecke gehaengt (~45 kg). 4
Holzschrauben, 2 5x50 und 2 5x60 im Abstand von jeweils 5 bzw 10 cm (Rechteck)
durch ... das ist das Problem. Ich fuerchte, ich habe sie nur durch die Latten
zwischen den Balken geschraubt. Mit einem Nageltest habe ich die "harten
Stellen" ermittelt, beim Vorbohren ging es aber arg leicht hinein und
hindurch.
Preisfrage: Wird das dauerhaft halten? Oder sollte ich die eigentlichen Balken
suchen und von dort aus noch Schellen ueber die Halteplatte tackern? bisher
zeigt der Putz ueber dem Stroh keine Risse ... aber ... naja ... es ist RL und
ich kann mir keinen neuen Seherraum ermetzeln.


-----------------------------------------------------------------------------



Re: Suche Altbaudeckenstatiker ;) (Roland, 23. Aug 2004, 17:40:04):
~#! rn=Gloinson rt=1093213862 rg=suche-biete
~#! tid=1093213862
also solang es keine liebesschaukel ist die du dauerhaft schwer belastest,
_koennte es halten. D.h. falls du die finger von laest. anderer seitz wird ein
bauwerk, und insbesondere lehmdecken wohl nicht besser, sodas sich etwas
sicherheit wohl bezahlt machen wird. weil ich glaube kaum das die Schrauben
nach geben, ehr die komplette deckenverbauung. Und das staubt dann sicher ;).
Kurz... ich wuerd wohl mal auf Balkensuche gehen ... :o)

-----------------------------------------------------------------------------



Re: Suche Altbaudeckenstatiker ;) (Zook, 23. Aug 2004, 18:38:48):
~#! rn=Gloinson rt=1093213862 rg=suche-biete
~#! tid=1093213862
Ich finde ja nach wie vor noch spannend, was denn das fuer ein schweres
Geraet sein koennte....

Zook.

-----------------------------------------------------------------------------



Re: Re: Suche Altbaudeckenstatiker ;) (Croft, 23. Aug 2004, 18:42:14):
~#! rn=Zook rt=1093279128 rg=suche-biete
~#! tid=1093213862
Videoprojektoren sind eigentlich nicht so schwer *gruebel*

Croft

-----------------------------------------------------------------------------



Re^3: Suche Altbaudeckenstatiker ;) (Zook, 23. Aug 2004, 18:42:38):
~#! rn=Croft rt=1093279334 rg=suche-biete
~#! tid=1093213862
Kommt aufs Baujahr drauf an. Bekannter von mir hat 60kg an die Decke 
genagelt, um schoen Videos zu gucken.

ZOok.

-----------------------------------------------------------------------------



Re^4: Suche Altbaudeckenstatiker ;) (Zzarzzt, 23. Aug 2004, 18:43:20):
~#! rn=Zook rt=1093279358 rg=suche-biete
~#! tid=1093213862
Bestimmt nur Stummfilme, oder? Das Ding KANN ja gar nicht leise sein :)

Zz.

-----------------------------------------------------------------------------



Re^5: Suche Altbaudeckenstatiker ;) (Asuka, 23. Aug 2004, 18:43:38):
~#! rn=Zzarzzt rt=1093279400 rg=suche-biete
~#! tid=1093213862
Naja, wenns ihm Spass macht die Filme an der Decke zu gucken...

Asuka

-----------------------------------------------------------------------------



Re^6: Suche Altbaudeckenstatiker ;) (Gloinson, 23. Aug 2004, 19:00:08):
~#! rn=Asuka rt=1093279418 rg=suche-biete
~#! tid=1093213862
Ein Deckenventilator; 4,5 kg normale Last; bis zu 45 kg Zuglast im Betrieb
nach Anleitung. Ich schaetze, das muss auch gesagt werden, da das Geruettel
auch nicht gut ist. Hab mich schon damit abgefunden weiter rumbohren und vor
allem Kabel verlegen zu duerfen. Gnarf.


-----------------------------------------------------------------------------



Re^7: Suche Altbaudeckenstatiker ;) (Turbo, 23. Aug 2004, 19:13:15):
~#! rn=Gloinson rt=1093280408 rg=suche-biete
~#! tid=1093213862
Ich hab in ner Berliner Normaldecke (Altbau Tempelhof) seit 14 Jahren zwei
Ventilatoren in der Decke befestigt, den einen mit Duebeln eingegipst,
den anderen in die Bretter des Putztraegers geschraubt. Das ist 
ueberhaupt kein statisches Problem und da kommt keine Decke runter,
uebrigens auch keine Lehmdecke, die stabiler ist als man ihr es 
zutraut.
Ich dachte, du haettest etwas mit 45kg Gewicht, das zusaetzlich noch
vibriert etc. In dem Fall sollte man aufpassen.

Turbo (Kater)

-----------------------------------------------------------------------------



Re^8: Suche Altbaudeckenstatiker ;) (Ronda, 23. Aug 2004, 22:07:31):
~#! rn=Turbo rt=1093281195 rg=suche-biete
~#! tid=1093213862
Och, ich kenne ehemalige Studienkollegen (Maschinenbau-Ingenieure), die nun
beherzt zum Taschenrechner gegriffen haetten, theoretische Haltelasten und
Anzahl der Schrauben durcheinander gewirbelt haetten - um am Ende
herauszufinden, dass das mit Sicherheitsfaktor 1,39222 (die 5. Nachkommastelle
IST wichtig!) haelt. (Komischerweise ist grad denen dann immer irgendwas
knirschend um die Ohren geflogen.)
Ich war und bin doch etwas fauler, was das Rechnen angeht und bevorzuge
brachialere Methoden: VORSICHTIG dranhaengen. Langsam die Kraft auf den
Ventilator erhoehen. Wenns zu instabil wird: aufhoeren zu ziehen, mehr
Schrauben setzen. Rieselts nicht zu sehr: haengen lassen, im Betrieb
beobachten, ob das Ding immer mehr rieselt und Unwucht bekommt.

Ronda *pragmatisch. praktisch. und erstaunlicherweise: noch am Leben*

-----------------------------------------------------------------------------



Re^9: Suche Altbaudeckenstatiker ;) (Zook, 23. Aug 2004, 22:09:03):
~#! rn=Ronda rt=1093291651 rg=suche-biete
~#! tid=1093213862
Falls ich ergaenzen darf: "und zum Glueck nicht hauptberuflich fuer
Statik zustaendig".

Zook.

-----------------------------------------------------------------------------



Suche Loesung ;) (Anatol,  2. Sep 2004, 22:34:42):
alve,
ich habe ein paar Schwierigkeiten mit Gnuplot. :)

Ich muss eine groessere Menge Tupel einlesen und grafisch darstellen.

- theoretisch 60'000 Tupel oder mehr moeglich.
- X-Achse muss logarithmisch dargestellt sein.
- Aufgetragen werden dort Koordinaten, deren X-Komponente im
  Intervall [1..500000] liegt.

Problem:

Es ist natuerlich ziemlich unsinnig, wenn 100044x55 und 1000045x44
nicht zusammengefasst werden. Ich suche also eine Moeglichkeit, wie
ich die Werte zu auf einer logarithmischen Skala gleich breiten
"Saeulen" zusammenbuendle, um letzten Endes eine akzeptable Grafik
zu erhalten.

Als Hifsmittel, wenn Gnuplot das nicht mit Bordmitteln kann, habe
ich kleine Shelltools (gawk (hat nur natuerlichen Logaritzmus) und
bc sind drin, perl nicht) zur Verfuegung...

Mh.

Anatol kuckt fragend.


-----------------------------------------------------------------------------



Re: Suche Loesung ;) (Boing,  2. Sep 2004, 22:36:22):
~#! rn=Anatol rt=1094157282 rg=suche-biete
~#! tid=1094157282
Ich glaub Zook hat dafuer vor einigen Tagen eine Loesung in megaschmarrn
praesentiert.
  Boing

-----------------------------------------------------------------------------



Re: Suche Loesung ;) (Zook,  2. Sep 2004, 22:51:17):
~#! rn=Anatol rt=1094157282 rg=suche-biete
~#! tid=1094157282
Nimm R.

Auch wenn ich nicht weiss, wie das mit so vielen Datensaetzen zurecht kommt.

Zook.

-----------------------------------------------------------------------------



Re: Suche Loesung ;) (Ogo,  3. Sep 2004, 01:44:43):
~#! rn=Anatol rt=1094157282 rg=suche-biete
~#! tid=1094157282
Du meinst vermutlich den natuerlichen, aber zum Verstaendnis nehm ich mal den
10'er Logarithmus:
Du willst einfach die Koordinaten in Abschnitte wie 1 bis 9, 10 bis 99, 100
bis 999 usw. unterteilen und dann Saeulen damit bauen? Ich kann mir die Grafik
jetzt gerade nicht wirklich vorstellen, da die Y Werte innerhalb einer Saeule
doch ziemlich streuen koennen. Reden wir hier von Clusterungen anhand eines
vorgegebenes Merkmals (Saeule 10^4 z.B.) oder was willst du genau machen?


-----------------------------------------------------------------------------



Re: Re: Suche Loesung ;) (Ogo,  3. Sep 2004, 01:54:55):
~#! rn=Ogo rt=1094168683 rg=suche-biete
~#! tid=1094157282
Beim nochmaligen Durchlesen Deines Artikels beschraenkt sich die Frage
anscheinend auf das Bilden von gleichbreiten Saeulen aufbauend auf der
logarithmischen Achse. Zwischen 10^0 und 10^1 ist derselbe Abstand wie
zwischen 10^1 und 10^2 und derselbe Abstand wie 10^2 und 10^3. Also kannst du
den Exponenten auch in 0.1 Schritten hochzaehlen und erhaeltst gleichbleibend
breite Abstaende. Also kannst du einfach alle X Werte in 10^(x,y) Toepfe
werfen und daraus Saeulen bauen. Dann haettest du also eine Rasterung.
Natuerlich kannst du dort die Praezision hochschrauben. Also pro X-Wert
einfach auf den naechstkleineren 10^x.y abrunden. Mit bc als pseudocode 
define scale(x) {
   auto i
   while (x < 10^i ) {
     i+=0.1
   }
   return 10^i
}


-----------------------------------------------------------------------------



Re^3: Suche Loesung ;) (Anatol,  4. Sep 2004, 09:55:02):
~#! rn=Ogo rt=1094169295 rg=suche-biete
~#! tid=1094157282
Im Prinzip kommt da das raus, was ich brauche, ja, danke. Nur performant
ist es nicht. Leider ist Performanz in meinem Kontext ein wichtiger Faktor.

bc scheint uebrigens nur ganzzahlige Exponenten zu akzeptieren, mag das sein?

Was mir im Moment als optimale Loesung vorschwebt ist dann doch ein
C-Programmlein (gcc ist vorhanden), das den eigegebenen Wert schnappt,
irgendwie verarbeitet, rundet und irgendwie zurueckverarbeitet. ;)

Anatol - aaahnungslos 

-----------------------------------------------------------------------------



Re^4: Suche Loesung ;) (Ogo,  4. Sep 2004, 16:41:36):
~#! rn=Anatol rt=1094284502 rg=suche-biete
~#! tid=1094157282
Mal ausm Bauch heraus (und ohne irgendwelchen Coding Styles zu folgen...)

#include <stdio.h>
#include <math.h>

#define MAX 10000000
#define EXP_VARIANT exp10
#define BREITE 0.1

int main () {
float i;
int num;
num=1;
i=1.0;
while (EXP_VARIANT(i) < MAX)
{
i+=BREITE;
num++;
}
build_columns(num);
return 0;
}

build_columns(int num) {
float arr[num+1];
while (num--){
arr[num]=EXP_VARIANT((num*BREITE));
printf("%f\n",arr[num]);
}
/* Pseudocode starts here */
int i,j;
i=sizeof(data_arr);
int verteilung[sizeof(arr)];

while(i--) {
j=0;
while(data_arr[i]<arr[j])
j++;
verteilung[j]++;
}
/* Peusdocode ends here */
}


-----------------------------------------------------------------------------



Suche: Uebernachtungsmoeglichkeit, Kiel vom 2. zum 3.10. (Jehova,  8. Sep 2004, 08:03:37):

Hallo allerseits,

um es kurz zu machen, ich suche eine Uebernachtungsmoeglichkeit/Zimmer in Kiel
fuer die Nacht vom 2. zum 3. Oktober.

Zentrumsnaehe waere gut. Waere schoen, wenn jemand, der sich in Kiel auskennt
mal einen kleinen Tipp geben koennte. Auf der kiel.de-Website gibt's irgendwie
nur 08/15-Angebote und JHB gefaellt mir nicht so besonders ...

Viele Gruesse,

J*

-----------------------------------------------------------------------------



DSL-Anschluss (Liara, 10. Sep 2004, 19:19:04):
Moin!

Ich muss zur Zeit fuer jemanden einen DSL-Anbieter suchen.

Auf was sollte ich da bei den Angeboten von den ganzen Anbietern besonders
achten?
Ich hatte bisher mal Telekom und Arcor in Augenschein genommen, wobei mir das
bei Arcor alles irgendwie durchsichtiger erscheint.

Dankbar fuer Tip(p)s.

Liara, gequaelt

-----------------------------------------------------------------------------



Re: DSL-Anschluss (Gloinson, 10. Sep 2004, 19:27:40):
~#! rn=Liara rt=1094836744 rg=suche-biete
~#! tid=1094836744
Erstmal klaeren was dort angeboten wird. Telekom ist Hauptanbieter, Arcor
buddelt auch hie und da aber nicht ueberall.
Dann klaeren was der Mensch machen will. Extraschnell? Normalschnell?
Volumetarif? Zeittarif? Flat? Und dann dementsprechend bei Telekom und ihren
zahllosen Resellern das beste Angebot suchen. Die Reseller sind meist ein paar
Ticks langsamer, wenn der also 3MBit-super-duper-extraschnell will, wird nur
die Telekom es ihm wirklich bieten koennen.


-----------------------------------------------------------------------------



Re: Re: DSL-Anschluss (Grimmborn, 10. Sep 2004, 20:29:34):
~#! rn=Gloinson rt=1094837260 rg=suche-biete
~#! tid=1094836744
Das ist so nicht richtig. Mein 3 Mbit superduperschnell ist von Hansenet.

GdA

-----------------------------------------------------------------------------



Re: Re: DSL-Anschluss (Amaryllis, 10. Sep 2004, 20:32:38):
~#! rn=Gloinson rt=1094837260 rg=suche-biete
~#! tid=1094836744
Nicht ganz korrekt. Ich hab zuhause ne 6MBit-Standleitung, ueber NetCologne.
:)

Ama*

-----------------------------------------------------------------------------



Re^3: DSL-Anschluss (Gloinson, 10. Sep 2004, 20:34:32):
~#! rn=Amaryllis rt=1094841158 rg=suche-biete
~#! tid=1094836744
Herrjeja, es gibt auch noch lokale Anbieter. Die sollte man natuerlich in
Betracht ziehen. In 95% der Republik  ist das aber nicht der Fall.


-----------------------------------------------------------------------------



Re^4: DSL-Anschluss (Amaryllis, 10. Sep 2004, 20:39:02):
~#! rn=Gloinson rt=1094841272 rg=suche-biete
~#! tid=1094836744
Die groessten der lokalen Anbieter sollte man aber nicht unterschlagen.
NetCologne und HanseNet gehoeren dazu, beide liefern sich ein
Kopf-an-Kopf-Rennen, wobei imho NetCologne schon seit laengerem als groesster
deutscher Citycarrier vorne liegt :9

Ama*

-----------------------------------------------------------------------------



Re: Re: DSL-Anschluss (Morgoth, 10. Sep 2004, 20:40:50):
~#! rn=Gloinson rt=1094837260 rg=suche-biete
~#! tid=1094836744
Es gibt auch Anbieter, die nicht auf T-Offline aufsetzen. QSC mit QDSL zum
Beispiel oder lokale Anbieter wie in Dortmund die DOKOM. Aber erstmal genau
klaeren, was man haben will ist schon korrekt :)

M*

-----------------------------------------------------------------------------



Re^3: DSL-Anschluss (Foobar, 10. Sep 2004, 20:49:00):
~#! rn=Morgoth rt=1094841650 rg=suche-biete
~#! tid=1094836744
In Muenster gibt es die Citykom.

Seit heute habe ich nun endlich auch DSL. Und ich habe nur etwas ueber fuenf
Monate darauf gewartet.

Foobar

-----------------------------------------------------------------------------



Re: DSL-Anschluss (Apophis, 10. Sep 2004, 22:17:11):
~#! rn=Liara rt=1094836744 rg=suche-biete
~#! tid=1094836744
empfehlenswerte Links

www.onlinekosten.de
www.speed-surfer.de
www.internettarifrechner.de

-----------------------------------------------------------------------------



Re: Re: DSL-Anschluss (Croft, 11. Sep 2004, 10:24:16):
~#! rn=Apophis rt=1094847431 rg=suche-biete
~#! tid=1094836744
Apropos DSL-Kosten:  Von Versatel gibts ein Angebot von ISDN + DSL Flat
fuer 50 EUR.  D.h. das wuerde mich wohl 20 EUR pro Monat billiger
kommen als die Telekom.  Nur wo ist da der Haken?

Croft

-----------------------------------------------------------------------------



Re^3: DSL-Anschluss (Catweazle, 11. Sep 2004, 10:48:47):
~#! rn=Croft rt=1094891056 rg=suche-biete
~#! tid=1094836744
ich glaube, das ist etwa das zehnte Mal, dass ich diese Frage hoere :-)

Ich lass mich mal dazu herab und versuche eine Antwort:
Kundenbindung. 

Ob das jetzt als Nachteil zu werten ist, bleibt abzuwarten.

YTC

-----------------------------------------------------------------------------



Re^4: DSL-Anschluss (Croft, 11. Sep 2004, 15:18:40):
~#! rn=Catweazle rt=1094892527 rg=suche-biete
~#! tid=1094836744
Nuja, 2y binden iirc.  Hat jemand hier schon Erfahrungen mit Versatel?

Croft

-----------------------------------------------------------------------------



Re^5: DSL-Anschluss (Medic, 11. Sep 2004, 19:40:40):
~#! rn=Croft rt=1094908720 rg=suche-biete
~#! tid=1094836744
Und das ist nicht so ein "Setzt Anschluss von der Telekom voraus"-Angebot, das
dementsprechend irgendwelche Grundgebuehren nicht mit beinhaltet?

-----------------------------------------------------------------------------



Re^6: DSL-Anschluss (Foobar, 11. Sep 2004, 19:45:44):
~#! rn=Medic rt=1094924440 rg=suche-biete
~#! tid=1094836744
Nein.

http://www.versatel.de/index.php?id=1011

-----------------------------------------------------------------------------



Re^7: DSL-Anschluss (Foobar, 11. Sep 2004, 19:46:46):
~#! rn=Foobar rt=1094924744 rg=suche-biete
~#! tid=1094836744
Da faellt mir gerade auf, dass das monatliche Gespraechsguthaben nur noch 10,-
EUR betraegt...

-----------------------------------------------------------------------------



suche ;) (Ray, 13. Sep 2004, 23:35:29):
Suche Berliner Mudder, die im November bloed genug sind fuer Freibier und
Fressen Moebel aus dem 3ten Stock (ohne Aufzug) in nen LKW tragen wolln ;)
Gebe auch diverse Kuh-Artikeln ab (muhender Pullover Gr. 74/80, kuhgefleckte
Hose, ...).. ;)
Sind auch eher Kisten, keine Moebel ;)


-----------------------------------------------------------------------------



Re: suche ;) (Gloinson, 13. Sep 2004, 23:38:35):
~#! rn=Ray rt=1095111329 rg=suche-biete
~#! tid=1095111329
Du willst doch dem Kind nicht den Pullover wegnehmen?! Wo bleibt da deine
Pflicht zur kulturellen Bildung im Kindesalter?


-----------------------------------------------------------------------------



Re: Re: suche ;) (Ray, 13. Sep 2004, 23:39:05):
~#! rn=Gloinson rt=1095111515 rg=suche-biete
~#! tid=1095111329
rausgewachsen keine sorge ;)
aber ich wuerd ihn umnaehen fuer pit ;)

-----------------------------------------------------------------------------



Billigflieger (Medic, 15. Sep 2004, 17:41:01):
Hallo,

ich suche noch Anbieter bzw. Onlinevergleiche fuer Fluege mit Ziel ausserhalb
Europas.
Airline-Direct, Expedia, Flug.de, Travel24 und Traveltopia sind mir bekannt,
fuer weitere waere ich dankbar :-)

Medic

-----------------------------------------------------------------------------



Re: Billigflieger (Alboin, 15. Sep 2004, 18:08:51):
~#! rn=Medic rt=1095262861 rg=suche-biete
~#! tid=1095262861
hmm travel-overland? Jedenfalls war das der erste der wohl damit anfing.

al

-----------------------------------------------------------------------------



Kundenwerbung Sparda Bank Hamburg (Mesirii, 16. Sep 2004, 23:04:06):
Ist wer von Euch Kunde der Sparda-Bank Hamburg und mag mich werben?
Wenn ja dann her mit Euch.
Mesi

-----------------------------------------------------------------------------



Festplatte 120-200 Gig (Gloinson, 17. Sep 2004, 12:25:17):
Irgendwelche Empfehlungen? IDE ATA 100 ist das, was der Promise-Controller auf
dem A7V-Board bietet. Wenn ich das so sehe nehmen die sich wieder einmal alle
nicht so viel.


-----------------------------------------------------------------------------



Re: Festplatte 120-200 Gig (Zook, 17. Sep 2004, 12:25:39):
~#! rn=Gloinson rt=1095416717 rg=suche-biete
~#! tid=1095416717
Hauptsache laut, dann muss man sich auch nicht mit den Kollegen unterhalten.

ZOok.

-----------------------------------------------------------------------------



Re: Festplatte 120-200 Gig (Ogo, 17. Sep 2004, 13:11:58):
~#! rn=Gloinson rt=1095416717 rg=suche-biete
~#! tid=1095416717
Vorgestern Samsung SP1203N 120GB gekauft; gibt's in Berlin zum Abholen bei PPC
fuer 77 Eurotaler.


-----------------------------------------------------------------------------



Re: Re: Festplatte 120-200 Gig (Morgoth, 17. Sep 2004, 13:15:38):
~#! rn=Ogo rt=1095419518 rg=suche-biete
~#! tid=1095416717
Ich hab zwei Seagates mit 120GB und 8MB Cache (frag jetzt nicht nach der
Modellbezeichnung) in meinem Rechner und bin damit sehr zufrieden. Allerdings
ist Preis/Leistung im Moment bei 160GB am besten. 120GB wuerd ich nicht mehr
kaufen.

M*

-----------------------------------------------------------------------------



Re^3: Festplatte 120-200 Gig (Anthea, 17. Sep 2004, 13:33:00):
~#! rn=Morgoth rt=1095419738 rg=suche-biete
~#! tid=1095416717
Fuer die PVR-Receiver (Sat-Receiver mit Festplatte) stehen die Samsung-Platten
hoch im Kurs, da die wirklich sehr leise sind. Maxtor ist da ein ganzes Stueck
lauter, dafuer gibt es davon noch ein paar groessere Modelle. Und
WesternDigital wird wegen gewisser inkompatibilitaeten (sprich: die schalten
ihr bloedes S.M.A.R.T. immer an) vollkommen abgelehnt.

-----------------------------------------------------------------------------



Re^4: Festplatte 120-200 Gig (Gloinson, 17. Sep 2004, 14:13:19):
~#! rn=Anthea rt=1095420780 rg=suche-biete
~#! tid=1095416717
Naja, wir haben einen Standardrechner, der muss nicht fluesterleise sein, da
das Netzteil und der Luefter schon fauchen. Bisher war es eine Maxtor. Ich hab
hier derzeit die Seagate Barracuda 7200.7 160GB 8MB (ST3160023A) mit 25-34dB
und die etwas schnellere (laut Datenblatt, harumm) und die Hitachi Deskstar
7K250 160GB 8MB (HDS722516VLAT80) mit 26-30dB im Auge (ja, tut weh). Samsung
und Maxtor stellen keine vergleichbaren Platten her, da deren grosse Platten
alle auf U/DMA 133 ausgelegt sind und wir maximal 100 haben. Von den
eigentlich internen Daten sind die aber in etwa vergleichbar. Von Western
Digital sehe ich mal ob deiner Empfehlung einfach ab :)


-----------------------------------------------------------------------------



Re^5: Festplatte 120-200 Gig (Highlander, 17. Sep 2004, 14:17:53):
~#! rn=Gloinson rt=1095423199 rg=suche-biete
~#! tid=1095416717
Das mit dem SMART sollte in einem Rechner nicht so unbedingt stoeren,
wie's in den PVR tut. Aber man muss es auch nicht herausfordern.
Du kannst aber Deine Suche prinzipiell schon auf 133er Platten mit
ausdehnen, die laufen am 100er Interface dann halt etwas langsamer,
als sie koennten, ein Kompatibilitaetsproblem duerften sie aber
nicht kriegen.

HrT

-----------------------------------------------------------------------------



Was genau bedeutet "mimeo"? (Zook, 17. Sep 2004, 14:37:10):
Ich lese haeufig in Schriftenverzeichnissen fuer unveroeffentlichte
Arbeiten die Bezeichnung "mimeo" so wie in 

Zook, Wird man als Erzmagier eigentlich bekloppt oder ist das
Einstellungsvoraussetzung?, mimeo.

Was genau bedeutet dieses "mimeo"?

Zook.

-----------------------------------------------------------------------------



Re: Was genau bedeutet "mimeo"? (Catweazle, 17. Sep 2004, 15:22:46):
~#! rn=Zook rt=1095424630 rg=suche-biete
~#! tid=1095424630
Magier interpolieren Mathematiker endlicher Ordnung?

Ach was weiss denn ich ...

YTC

-----------------------------------------------------------------------------



Re: Was genau bedeutet "mimeo"? (Ogo, 18. Sep 2004, 04:25:42):
~#! rn=Zook rt=1095424630 rg=suche-biete
~#! tid=1095424630
http://en.wikipedia.org/wiki/Mimeograph_machine

Ogo, das freundliche Google-Frontend


-----------------------------------------------------------------------------



Re: Re: Was genau bedeutet "mimeo"? (Zook, 18. Sep 2004, 14:27:59):
~#! rn=Ogo rt=1095474342 rg=suche-biete
~#! tid=1095424630
Ja, soweit war ich auch schon. Nur, was bedeutet Mimeo nun im Verwendungs-
zusammenhang "Schriftenverzeichnis"?

Zook.

-----------------------------------------------------------------------------



Re^3: Was genau bedeutet "mimeo"? (Hobo, 18. Sep 2004, 20:21:54):
~#! rn=Zook rt=1095510479 rg=suche-biete
~#! tid=1095424630
http://www.wu-wien.ac.at/inst/vw2/vwII_quellenangaben.html

Literatur, die in keinem Journal, Buch etc. publiziert wurde  etwa
Symposiumsbeitrge, die nicht offiziell publiziert wurden , wird auch als
"graue Literatur" bezeichnet. Geben Sie bei der Zitierung nach obigen Regeln
alle verf|gbare Information an und versehen Sie den Literaturhinweis mit dem
Wort: "mimeo". Die Grundidee ist, dass die Quelle nach einigem
Rechercheaufwand durch die angegebenen Informationen auch f|r Dritte
auffindbar sein sollte. Zitierbeispiel: Aghion, Philippe und Howitt, Peter
(1996): Growth and the Structure of Knowledge. Beitrag f|r den CEPR Growth
Workshop des Centers for Economic Policy Research, 28.-30. Jnner 1996, Les
Arcs, mimeo. 

Hobo - kann auch googlen

-----------------------------------------------------------------------------



S: Siemens S45 (Amaryllis, 18. Sep 2004, 20:25:02):
Hi,

ich suche ein Siemens S45. Falls jemand sowas uebrig hat, in gutem Zustand und
vor allem moeglichst guenstig, bitte melden :)

Gruss,
Ama*

PS: Ja, ich weiss, es gibt Ebay, aber man kann ja mal fragen :)

-----------------------------------------------------------------------------



Re^4: Was genau bedeutet "mimeo"? (Ensof, 19. Sep 2004, 09:25:07):
~#! rn=Hobo rt=1095531714 rg=suche-biete
~#! tid=1095424630
Ich habe Zook so verstanden, dass er sehr wohl weiss, wie man mimeo 
anwendet. Die Frage war eher, was es bedeutet oder wo es herkommt:
Latein, Akronym, whatever.

Ensof (Kater)

-----------------------------------------------------------------------------



Re^5: Was genau bedeutet "mimeo"? (Zook, 19. Sep 2004, 11:46:27):
~#! rn=Ensof rt=1095578707 rg=suche-biete
~#! tid=1095424630
Hobo hat mich hinreichend aufgeklaert. ;)

Zook.

-----------------------------------------------------------------------------



Airwaves-Codes (Ogo, 21. Sep 2004, 11:32:03):
Hallo allerseits,

sollte jemand ueber eine dieser neueren Airwaves-Packungen mit der roten Ecke
stolpern, wuerde ich mich freuen, wenn er mir diese kleine, rote, neunstellige
Buchstaben-Zeichenkombination mir schicken wuerde, so er diese nicht selbst
sammelt.

Man muss _viele_ sammeln, damit man irgendwas interessantes "ersteigern" kann,
deswegen wuerde mich ueber jeden Code freuen :-)

Ogo


-----------------------------------------------------------------------------



Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 21:28:57):
Hat jemand Erfahrung mit sowas? Die Digikompaktblitze ist ja bewiesenermassen
Dreck. Nun gibt es von Hama, Meca, Solidor und Co Slaveblitze, die bei Blitz
einen eigenen Blitz ausloesen und schon mal eine Idee waeren. Ich hab aber
einen zwar alten aber doch recht ordentlichen Systemblitz und mindestens Hama
bietet einen Blitzausloeser, auf den ich das aufstecken koennte.

Also - irgendwer Erfahrung mit sowas?


-----------------------------------------------------------------------------



Re: Blitzgeraet via Slave koppeln (Grimmborn,  4. Okt 2004, 21:38:30):
~#! rn=Gloinson rt=1096918137 rg=suche-biete
~#! tid=1096918137
Nur theoretische. Wozu zum Geier brauchst Du Sekundaerblitze? Richtest Du Dir
ein Fotostudio ein?

GdA

-----------------------------------------------------------------------------



Re: Re: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 21:39:54):
~#! rn=Grimmborn rt=1096918710 rg=suche-biete
~#! tid=1096918137
Schon mal schlicht fuer Partyfotos. Kompaktblitze haben eine Reichweite von
2,50 Metern. Damit kannst du nichts. Mit einem schwenkbaren Systemblitz kannst
du wunderbar gut ausleuchten und das auch noch indirekt, also ohne
Schlagschatten und Rotauge.
Und das alles fuer den Preis einer Blitzschiene und eines Slaveblitzes ;)


-----------------------------------------------------------------------------



Re^3: Blitzgeraet via Slave koppeln (Grimmborn,  4. Okt 2004, 21:42:16):
~#! rn=Gloinson rt=1096918794 rg=suche-biete
~#! tid=1096918137
Und im Zweifelsfall einer Kamera, die damit umgehen kann. Und so eine Kamera
hat auch die Moeglichkeit, gleich einen anstaendigen Blitz anzuklemmen. Fuer
meine SLR habe ich genau so einen schwenk- und drehbaren Blitz, und im
Zweifelsfall weiss ich nicht, wie deren TTL Blitzsteuerung auf einen zweiten
Blitz reagieren wuerde.

GdA

-----------------------------------------------------------------------------



Re^4: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 21:45:22):
~#! rn=Grimmborn rt=1096918936 rg=suche-biete
~#! tid=1096918137
Die Kompensation von Ueberbelichtung ist eine der Fragen.

Ich geh das recht pragmatisch an - ich habe eine gute Kompaktdigicam, die ich
derzeit gern benutze und vor allem ueberall mit hinschleifen kann und
hinschleife. Die hat vor allem - nach den Linsen - das Manko des Blitzes. Das
kann man eventuell ausgleichen. Ja, ich habe auch eine analoge SLR, aber die
ist verdammt gross und schwer, die nimmt man nicht eben mit und haelt sie in
der Hand. Den externen Blitz wuerde ich fuer die zusaetzlich tragen muessen,
aber der steckt dann ohnehin erstmal im Rucksack ...


-----------------------------------------------------------------------------



Re^4: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 21:47:38):
~#! rn=Grimmborn rt=1096918936 rg=suche-biete
~#! tid=1096918137
PS zu Ueberbelichtung:

Die von Meca angebotenen Exemplare geben wohl nur so viel Blitzenergie ab wie
noch noetig. Ein Blitzschuh mit Blitzausloesung kann das sicher nicht
garantieren. Dafuer muesste ich dann mein Blitzgeraet wieder wie gewohnt
manuell anpassen, es sei das Geraet selbst kann das austarieren ...


-----------------------------------------------------------------------------



Re^5: Blitzgeraet via Slave koppeln (Grimmborn,  4. Okt 2004, 21:47:44):
~#! rn=Gloinson rt=1096919122 rg=suche-biete
~#! tid=1096918137
Wenn Du das Glueck hast, Kontakt zu einem Fotofachgeschaeft zu haben, dann
ueberlassen die Dir sicher einen Slaveblitz fuer ein, zwei Tage, damit Du
sehen kannst, ob das fuer Dich Sinn macht. 
Wobei ich der Meinung bin, dass Dich das auch moralisch verpflichtet, dann
einen eventuellen Kauf dort statt bei Saturn zu erwaegen, auch wenn das teurer
ist. Aber das muss in unserer "Geiz ist geil" Zeit nicht jeder so sehen.

GdA

-----------------------------------------------------------------------------



Re^6: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 21:48:58):
~#! rn=Grimmborn rt=1096919264 rg=suche-biete
~#! tid=1096918137
Das einzige Fotofachgeschaeft das ich kenne (und bei dem ich eine aehnliche
Argumentation wie du bei der Deutschen Bank vorbringen koennte) ist leider 120
km entfernt :)


-----------------------------------------------------------------------------



Re^6: Blitzgeraet via Slave koppeln (Ronda,  4. Okt 2004, 21:51:28):
~#! rn=Grimmborn rt=1096919264 rg=suche-biete
~#! tid=1096918137
Vorsicht! Grad bei Digicams haengt es wohl sehr genau davon ab, was man fuer
eine Kamera hat - manche Nachbau-Blitze scheinen nicht immer toll zu
funktionieren. Und die Frage waere auch, ob ein etwas besserer Blitz nicht
manchmal einfach Spass macht.

Ich hab ne Minolta Dimage 7i, da wurde mir von mehreren Seiten sehr deutlich
von Nicht-Minolta-Blitzen abgeraten. Und nein, es waren nicht nur Leute dabei,
die mir den Originalblitz verkaufen wollten. Nett ist, dass der Zweitblitz
sowohl direkt auf der Kamera funktioniert - ober eben quer durch den Raum
irgendwo anders hingestellt werden kann, Kamera und Blitz synchronisieren sich
dann, bestimmen, welcher Blitz (Kamera und extern) wie viel blitzen soll etc.
War zum Beispiel auch fuer Fotos eines Brunnens sehr nett, da man so die
Schatten einfach besser beeinflussen kann.
Daher: Bei Pauschalangaben waer ich sehr vorsichtig, google und eine
kompetente Gruppe/Forum zu Deiner Kamera hilft eher weiter.

Ronda *laenglich und eigentlich gar nicht da*

-----------------------------------------------------------------------------



Re^7: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 21:56:08):
~#! rn=Ronda rt=1096919488 rg=suche-biete
~#! tid=1096918137
Mhhh. Canon bietet nur den 420ex-Systemblitz an. Der zwar slave blitzen kann
aber ... nicht wirklich als passig erwaehnt wird. Wohingegen Metz zumindest
behauptet zur Axx-Reihe absolut kompatibel zu sein ... aber keine schwenkbaren
Kompaktblitze bietet.

Andere Foren grase ich auch gerade ab. Naja. Eierlegende Wollmilchsaeue.


-----------------------------------------------------------------------------



Re^8: Blitzgeraet via Slave koppeln (Grimmborn,  4. Okt 2004, 22:00:42):
~#! rn=Gloinson rt=1096919768 rg=suche-biete
~#! tid=1096918137
Es bleibt ja immer noch die gruendliche Radikalloesung: Kauf Dir ne
anstaendige Kamera, wenn Du solche Sachen machen willst.

GdA

-----------------------------------------------------------------------------



Re^9: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 22:02:08):
~#! rn=Grimmborn rt=1096920042 rg=suche-biete
~#! tid=1096918137
Es gibt leider keine kompakten Spiegelreflexkameras. Ausserdem ist mir das
Geld fuer Digitalbodys noch zu schade, da gibt es sicherlich in der naechsten
Zeit einen ziemlichen Qualitaetssprung.


-----------------------------------------------------------------------------



Re^9: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 22:04:54):
~#! rn=Grimmborn rt=1096920042 rg=suche-biete
~#! tid=1096918137
Ansonsten gibt es kaum eine ordentliche Digitalkompaktkamera mit Blitzschuh.
Entweder haben sie Blitzschuh und sind zu gross/zu unhandlich/mit zu
schlechter Optik ausgestattet oder sie sind prima und haben keinen Blitzschuh
;)


-----------------------------------------------------------------------------



Re^10: Blitzgeraet via Slave koppeln (Grimmborn,  4. Okt 2004, 22:05:56):
~#! rn=Gloinson rt=1096920294 rg=suche-biete
~#! tid=1096918137
Naja, wenn Du so auf Digital fixiert bist, ist das natuerlich schwer/teuer.
Dann warte halt noch ein paar Jahre.

GdA

-----------------------------------------------------------------------------



Re^11: Blitzgeraet via Slave koppeln (Gloinson,  4. Okt 2004, 22:09:18):
~#! rn=Grimmborn rt=1096920356 rg=suche-biete
~#! tid=1096918137
Nun, im nichtdigitalen Bereich kann es mir wurscht sein, da habe ich eine
funktionierende Kombination von Spiegelreflex und Blitz.
Aber es ist eine prinzipielle Frage, denn viele Kompaktkameras sind ganz prima
und vor allem fuer die nicht allzu anspruchsvollen Partyfotografien gut
geeignet ... solange das Licht anbleibt.


-----------------------------------------------------------------------------



Re^12: Blitzgeraet via Slave koppeln (Marcus,  4. Okt 2004, 23:04:36):
~#! rn=Gloinson rt=1096920558 rg=suche-biete
~#! tid=1096918137
Ein Kollege hat ne Canon EOS 20D ... er ist frisch verliebt. :)

Ciao, Marcus

-----------------------------------------------------------------------------



Re^13: Blitzgeraet via Slave koppeln (Catweazle,  5. Okt 2004, 07:32:02):
~#! rn=Marcus rt=1096923876 rg=suche-biete
~#! tid=1096918137
Erwaehn.Nicht.Die.20.D!

YTC

-----------------------------------------------------------------------------



Re^14: Blitzgeraet via Slave koppeln (Anthea,  5. Okt 2004, 08:46:45):
~#! rn=Catweazle rt=1096954322 rg=suche-biete
~#! tid=1096918137
Hm, mit meiner Minolta dImage Z2 habe ich bisher keine sonderlich schlechten
Erfahrungen gemacht, und mit dem 10x-Zoom (entspr. 38..380) und endlich wieder
einer Moeglichkeit, die ganzen Einstellungen per Hand vorzunehmen, vermisse
ich meine analoge Spiegelreflex auch nicht mehr so sehr. Und sie ist zwar
nicht fuer die Hemdtasche geeignet, aber doch noch recht kompakt, und sie hat
einen Blitzschuh ;)

-----------------------------------------------------------------------------



Re^12: Blitzgeraet via Slave koppeln (Zarniya,  5. Okt 2004, 09:55:08):
~#! rn=Gloinson rt=1096920558 rg=suche-biete
~#! tid=1096918137
aehm... was fuer Bilder willst Du machen, wenn das Licht aus ist??? SOOO einer
bist Du :-)

-----------------------------------------------------------------------------



Re^13: Blitzgeraet via Slave koppeln (Marcus,  5. Okt 2004, 10:00:34):
~#! rn=Zarniya rt=1096962908 rg=suche-biete
~#! tid=1096918137
Infrarot. :)

Ciao, Marcus

-----------------------------------------------------------------------------



Re^14: Blitzgeraet via Slave koppeln (Zarniya,  5. Okt 2004, 10:02:16):
~#! rn=Marcus rt=1096963234 rg=suche-biete
~#! tid=1096918137
wiewas?? Infrarot Blitz? :-)

-----------------------------------------------------------------------------



Re^15: Blitzgeraet via Slave koppeln (Gloinson,  5. Okt 2004, 10:46:33):
~#! rn=Zarniya rt=1096963336 rg=suche-biete
~#! tid=1096918137
Nee, fuer Infrarot muesste ich die Kamera ja imemr im Kuehlschrank
aufbewahren. Die Dimage ist etwas zu gross fuer den Geschmack des Kompakten.
Ich hatte schon die Canon S1 in der Hand, die einen recht sinnvollen
Bildstabilisator dabeihat ... aber sowas kann man sich einfach nicht mehr an
die Huefte schnallen ... und die Reviews ueberschlagen sich nicht unbedingt
wegen der Optik. Verstaendlich bei grossen Zooms.


-----------------------------------------------------------------------------



Re^16: Blitzgeraet via Slave koppeln (Marcus,  5. Okt 2004, 11:36:24):
~#! rn=Gloinson rt=1096965993 rg=suche-biete
~#! tid=1096918137

Tja. wie gross soll es sein, und wie gut. 

baytits.de zb verwendet wohl Canon IXUS Series (400 glaube ich) fuer iihre
Diskobilder. 

Ciao, Marcus

-----------------------------------------------------------------------------



Re^17: Blitzgeraet via Slave koppeln (Highlander,  5. Okt 2004, 11:38:50):
~#! rn=Marcus rt=1096968984 rg=suche-biete
~#! tid=1096918137
Nur so neugierdehalber - was verbirgt sich bitte hinter der URL?
Der Name ist, aeh, zumindest mehrdeutig.

HrT

-----------------------------------------------------------------------------



Re^17: Blitzgeraet via Slave koppeln (Anthea,  5. Okt 2004, 11:40:44):
~#! rn=Marcus rt=1096968984 rg=suche-biete
~#! tid=1096918137
Auf der Photokina ist doch gerade der neue lernfaehige Metz-Zusatzblitz
vorgestellt werden.
http://www.heise.de/newsticker/meldung/51647

-----------------------------------------------------------------------------



Re^18: Blitzgeraet via Slave koppeln (Zook,  5. Okt 2004, 11:41:18):
~#! rn=Anthea rt=1096969244 rg=suche-biete
~#! tid=1096918137
Wofuer Ihr alles Zeit habt...

Zook.


-----------------------------------------------------------------------------



Re^19: Blitzgeraet via Slave koppeln (Anthea,  5. Okt 2004, 11:41:46):
~#! rn=Zook rt=1096969278 rg=suche-biete
~#! tid=1096918137
Hm? Fuer den Newsticker ist doch immer Zeit.

-----------------------------------------------------------------------------



Re^20: Blitzgeraet via Slave koppeln (Gloinson,  5. Okt 2004, 12:00:00):
~#! rn=Anthea rt=1096969306 rg=suche-biete
~#! tid=1096918137
Jo, den hab ich auch im Auge. Leider kann man mit dem Geraet nur direkt
blitzen, was bei 129 Euro doch arg albern anmutet. Ich versuche gerade mehr
Daten zu dem Hama Zoom Digital Slva 24 herauszubekommen ...


-----------------------------------------------------------------------------



Re: Blitzgeraet via Slave koppeln (Ogo,  6. Okt 2004, 01:53:22):
~#! rn=Gloinson rt=1096918137 rg=suche-biete
~#! tid=1096918137
Keine Erfahrung, aber einen huebschen Link:
http://www.elektor.de/miniproj/details/040224.htm

Wenn es hilft, schoen, wenn nicht, bitte nicht rummeckern.

Ogo

-----------------------------------------------------------------------------



Re: Re: Blitzgeraet via Slave koppeln (Gloinson,  6. Okt 2004, 10:37:12):
~#! rn=Ogo rt=1097020402 rg=suche-biete
~#! tid=1096918137
Ich habe etwas aehnliches gefunden. Jetzt suche ich jemanden, der mit dem
Loetkolben geschickt ist und sich optional mit Platinen aetzen auskennt :)


-----------------------------------------------------------------------------



Suche Freiwillige ;) (Ray, 16. Okt 2004, 17:13:03):
Umzugstermin steht nun fest: 7.11. (Sonntag) gegen Mittag oder so :)

Jede helfende Hand ist gerne gesehen! Gibt ausserdem Essen und Trinken! ;)

Wer nicht weiss wo ich in Berlin wohn, meldet sich bitte per Mail ;)

lg
ray aka clementine@sl

-----------------------------------------------------------------------------



Re: Suche Freiwillige ;) (Ray, 22. Okt 2004, 01:22:42):
~#! rn=Ray rt=1097939583 rg=suche-biete
~#! tid=1097939583
@Pit: wenn du hilfst, erwartet dich am ende ein tolles teil, was
muuuuuuuuuuuuuht ;)

-----------------------------------------------------------------------------



S: Roemerglaeser (Cellar, 25. Okt 2004, 17:46:47):
Falls wer noch so etwas hat und bereit ist, das abzugeben, moege er/sie bitte
ein mail an Bernd.Jaeger1@gmx.at schreiben.

Ach ja, bitte keine Angebote fuer Roemer, sondern nur fuer Roemerglaeser, als
Beispiel diene: http://homepage.univie.ac.at/bernd.jaeger/img_2623.jpg

Cellar, nach Diktat wieder in der Versenkung verschwindend.

-----------------------------------------------------------------------------



Re: S: Roemerglaeser (Gloinson, 25. Okt 2004, 18:37:02):
~#! rn=Cellar rt=1098719207 rg=suche-biete
~#! tid=1098719207
Ein gelungenes Beispiel dafuer, wie man einen dreidimensionalen Gegenstand
fuer Bilderraetsel ablichtet. Ansonsten -> Troedelmarkt mit entsprechenden
Preisen.


-----------------------------------------------------------------------------



Cello zu verkaufen (Mieze,  4. Nov 2004, 16:22:56):
Hallo,

ein Bekannter von mir hat ein Cello (Baujahr 1949 oder 1950) zu verkaufen. Das
wuerde etwa 2000 Euro kosten. Kennt Ihr jemanden, der eins braucht? Bitte per
Mail an mich.

Mieze

-----------------------------------------------------------------------------



S: Kreditkarten-Anbieter (Amaryllis,  5. Nov 2004, 19:59:51):
Hi,

ich suche einen moeglichst guenstigen Anbieter von Kreditkarten. Ich brauche
eine Kreditkarte, die allerdings nahezu ausschliesslich ab und zu fuer
Online-Bestellungen benutzt wird (d.h. eher sehr selten). Daher sollten die
Gebuehren moeglichst gering sein.

Kann da jemand was empfehlen?

Gruss,
Ama*

PS: Nein, Studententarife greifen bei mir nicht mehr :)

-----------------------------------------------------------------------------



Re: S: Kreditkarten-Anbieter (Gloinson,  5. Nov 2004, 20:14:14):
~#! rn=Amaryllis rt=1099681191 rg=suche-biete
~#! tid=1099681191
Happydigits vergibt eine Kreditkarte - ich glaube Visa - fuer lau. Naja.
Sicherlich fuer Informationen, die sie ueber dich sammeln, aber fuer kein
Geld. Wenn sie das noch machen.


-----------------------------------------------------------------------------



Re: Re: S: Kreditkarten-Anbieter (Gloinson,  5. Nov 2004, 20:16:44):
~#! rn=Gloinson rt=1099682054 rg=suche-biete
~#! tid=1099681191
Online bestellbar. Und Mastercard. Natuerlich gegen dein Kaufverhalten, aber
ich hab zB mit meiner Kreditkarte auch kein nachvollzehbares Kaufverhalten
ausser mal eine Bahnfahrkarte oder einen absonderlichen Auslandseinkauf ...


-----------------------------------------------------------------------------



Re^3: S: Kreditkarten-Anbieter (Gloinson,  5. Nov 2004, 20:21:50):
~#! rn=Gloinson rt=1099682204 rg=suche-biete
~#! tid=1099681191
PS: Sag Bescheid, ob man die Kosten auf ein beliebiges Konto umbuchen kann ;)


-----------------------------------------------------------------------------



Re^4: S: Kreditkarten-Anbieter (Gloinson,  5. Nov 2004, 20:43:52):
~#! rn=Gloinson rt=1099682510 rg=suche-biete
~#! tid=1099681191
Wenn dir das glaeserne System nicht passt - wechsle zu einer Bank mit
"kostenloser" Kreditkarte (letztlich holen sie es sich da auch ueber Gebuehren
bei dir). Ansonsten eben 20 Euro im Jahr zahlen.


-----------------------------------------------------------------------------



Re: S: Kreditkarten-Anbieter (Jameson,  6. Nov 2004, 18:40:22):
~#! rn=Amaryllis rt=1099681191 rg=suche-biete
~#! tid=1099681191
Bei der Zeitschrift finanztest hat dieses Jahr mit Abstand das Kombi-Angebot
Girokonto+EC-Karte+Kreditkarte der Deutschen Kreditbank (www.dkb.de) gewonnen
- alles kostenlos. Mindesteinkommen 1300 Euro wegen der Kreditkarte, siehe
http://www.warentest.de:80/pls/sw/sw$nav.Startup?p_KNR=50040767192667200411061
83359&p_E1=2&p_E2=0&p_E3=80&p_E4=0&p_EbAend=1&p_inh=I:1197822 (sorry fuer den
langen Link) Ausschliesslich online gefuehrt (gibt keine Filialen) und sogar
mit (ebenfalls kostenloser) Partner-Kreditkarte. Geld abheben per EC-Karte
(heisst glaub ich inzwischen Maestro) kostenlos an allen Geldautomaten in
Euroland.

-----------------------------------------------------------------------------



Re: Re: S: Kreditkarten-Anbieter (Montanus,  8. Nov 2004, 08:57:05):
~#! rn=Jameson rt=1099762822 rg=suche-biete
~#! tid=1099681191
Probier die Sparda-Bank aus. Bei der Sparda West habe ich seit Jahren eine
kostenlose Matercard, bei der Sparda-Suedwest kostet sie zumindest im ersten
Jahr nichts.

-----------------------------------------------------------------------------



Re^3: S: Kreditkarten-Anbieter (Zook,  8. Nov 2004, 09:01:02):
~#! rn=Montanus rt=1099900625 rg=suche-biete
~#! tid=1099681191
Evtl. hilft Dir auch eine PSD Bank weiter. Zumindest die norddeutsche
machte mal Werbung im TV; fuer Dich ist wohl eher die psd-rhein-ruhr.de
zustaendig. Weiss aber nicht genau.

Zook.

-----------------------------------------------------------------------------



Re^4: S: Kreditkarten-Anbieter (Zook,  8. Nov 2004, 09:04:40):
~#! rn=Zook rt=1099900862 rg=suche-biete
~#! tid=1099681191
Ich korrigiere mich:

http://www.psd-koeln.de

Die Kontofuehrung ist komplett kostenlos incl. Bankcard. Visa Karte kostet
15 Euro im Jahr und MasterCard ebenfalls 15 Euro. 

Ob das fuer Dich guenstig genug ist.... 

Zook.

-----------------------------------------------------------------------------



Re: Re: buecher mit Tcl (Zook,  8. Nov 2004, 18:17:14):
~#! on=Gloinson ot=1099933892 og=megaschmarrn
~#! rn=Grimmborn rt=1099927714 rg=schmarrn
~#! tid=1099927582
Hast du das tufte Buch etwa, oh Zook?


-----------------------------------------------------------------------------



Re^3: buecher mit Tcl (Zook,  8. Nov 2004, 18:17:18):
~#! on=Zook ot=1099933982 og=megaschmarrn
~#! rn=Gloinson rt=1099933892 rg=megaschmarrn
~#! tid=1099927582
steht glaub ich bei meinen eltern, is aber schon ein paar jahre alt.

zook.

-----------------------------------------------------------------------------



Unterkunft in Hannover vom 25. bis 29. Mai 2005 (Zook, 10. Nov 2004, 12:33:56):
Ich suche eine Unterkunft fuer die Dauer des Kirchentages 2005 (25. bis
29. Mai) in Hannover. Gibt es jemanden, der Zeit, Lust und Kapazitaet hat,
mir eine Schlafstatt zu gewaehren?

Zook.


-----------------------------------------------------------------------------



Suche neuen Besitzer (Hobo, 13. Nov 2004, 21:38:02):
... fuer mein Pferd (ja, RL).
Wenn jemand zufaellig gerade ein Pferd sucht oder jemanden kennt, der dieses
tut, soll er sich gerne mal bei mir melden.

Achja, essbar ist er nicht. Viel zu viele Drogen und im Equidenpass ist das
"Nicht-Schlachttier" auch schon angekreuzt :)

Ciao

  Hobo

-----------------------------------------------------------------------------



Mitfahrgelelengheit nach Winterburg gesucht (Phoebe, 13. Nov 2004, 23:38:47):
hallo, ich suche eine mitfahrgelegen heit von muenchen oder umgebung nach
winterburg und moeglichst auch zurueck... wer also lust hat mich mitzunehmen,
bitte bei mir melden:)

-----------------------------------------------------------------------------



Re: Suche neuen Besitzer (Wurzel, 14. Nov 2004, 12:55:04):
~#! rn=Hobo rt=1100378282 rg=suche-biete
~#! tid=1100378282
du solltest vielleicht etwas mehr infos dazu schreiben (rasse, alter,
stockmass, preis etc.), damit man auch was damit anfangen kann. pferde gibt
es viele.

wurzel

p.s. nein, ich nicht. drei reichen mir.

-----------------------------------------------------------------------------



Re: Re: Suche neuen Besitzer (Hobo, 14. Nov 2004, 17:33:55):
~#! rn=Wurzel rt=1100433304 rg=suche-biete
~#! tid=1100378282
Das schreib ich dann persoenlich, wenn's jemanden interessiert. Der Rest kann
eh nichts damit anfangen, dass ich einen verrueckten Trakki mein eigen nenne
;)

Ciao

   Hobo

-----------------------------------------------------------------------------



Re^3: Suche neuen Besitzer (Gloinson, 14. Nov 2004, 18:05:16):
~#! rn=Hobo rt=1100450035 rg=suche-biete
~#! tid=1100378282
Naja, Trakehner koennen wir auch grad noch nachschlagen. Aber das aendert in
dem Fall an dem Geschmack nicht viel.


-----------------------------------------------------------------------------



Erfahrung mit Maschinenschrauben ... (Gloinson, 16. Nov 2004, 21:08:41):
... kann man die ohne weitere Probleme mit einer handelsueblichen Eisensaege
verkuerzen, oder versaut man sich in 5/5 Faellen das Gewinde derart, dass man
gleich haette auf einer Stange eines schneiden koennen?


-----------------------------------------------------------------------------



Re: Erfahrung mit Maschinenschrauben ... (Gloinson, 16. Nov 2004, 21:14:17):
~#! rn=Gloinson rt=1100635721 rg=suche-biete
~#! tid=1100635721
Zur Erklaerung: Ich habe hier Stockschrauben (Holzgewinde/Maschinengewinde),
der Maschinengewindeteil ist aber gelinde zu lang. Das muss nicht stoeren,
kann aber und insofern waere mir das kuerzer lieber. 6x25 ist der
Maschinenteil.


-----------------------------------------------------------------------------



Re: Re: Erfahrung mit Maschinenschrauben ... (Grumpf, 16. Nov 2004, 21:14:27):
~#! rn=Gloinson rt=1100635877 rg=suche-biete
~#! tid=1100635721
Wenn Du sie mit einer Eisensaege und etwas Geschick genau in einer
Gewinderille absaegst solltest Du sie hinterher wieder ganz normal verwenden
koennen da das Gewinde der Mutter das Gewinde der Schraube quasi
nachschneidet. Allerdings gehen dadurch die ersten 2 3 Umdrehungen etwas
schwerer.
Grumpf

-----------------------------------------------------------------------------



Re^3: Erfahrung mit Maschinenschrauben ... (Anthea, 17. Nov 2004, 08:08:35):
~#! rn=Grumpf rt=1100636067 rg=suche-biete
~#! tid=1100635721
Es kann auch helfen, eine Mutter vor dem Absaegen auf das Gewinde
aufzuschrauben und die nach dem Absaegen herunterzuschrauben, dabei werden die
Grate dann aus dem Gewinde herausgebogen und nicht herein.

-----------------------------------------------------------------------------



Re^4: Erfahrung mit Maschinenschrauben ... (Imda, 19. Nov 2004, 22:06:43):
~#! rn=Anthea rt=1100675315 rg=suche-biete
~#! tid=1100635721
Jup, genau so gehts. Vorher am besten noch mit der Feile drueber. Und
einspannen natuerlich mit Mutter ;)

-----------------------------------------------------------------------------



Fahrkarten Berlin->Winterburg zu verschenken (Mesirii, 25. Nov 2004, 15:59:00):
~#! on=Mesirii ot=1101394702 og=anzeigen
Da Tina und ich nun doch schon am Freitag vormittag dort sein muessen 
(wegen der Formalitaeten, so sparen wir uns die Extrareise vorher dahin).
sind unsere Hinfahrkarten ab Berlin frei. Also wer moechte kann gern mit
Gloinson & Co mitfahren.
Gruss
Mesi

-----------------------------------------------------------------------------



Mitfahrgelegenheit nach WiBu gesucht (Chagall, 26. Nov 2004, 13:54:40):
Falls irgendwer ueber Bonn faehrt und noch einen Platz freihat, ich
such noch eine Mitfahrgelegenheit (aus diversen Gruenden bin ich
leider nicht (mehr) in der Lage selbst zu fahren).

Gruss
Asuka/Chagall

-----------------------------------------------------------------------------



Re: Fahrkarten Berlin->Winterburg zu verschenken (Cassandra, 26. Nov 2004, 13:55:52):
~#! rn=Mesirii rt=1101394740 rg=suche-biete
~#! tid=1101394740
ich koennte dazu passend, von der richtung, noch plaetze auf einem
wochenendticket fuer die rueckfahrt bieten.
von bad Kreuznach ca 15Uhr nach  Halle 23:25

Cassy

-----------------------------------------------------------------------------



Re: Mitfahrgelegenheit nach WiBu gesucht (Wurzel, 26. Nov 2004, 13:59:36):
~#! rn=Chagall rt=1101473680 rg=suche-biete
~#! tid=1101473680
diverse gruende waren diverse schnaepse vor der alkoholkontrolle?
scnr

-----------------------------------------------------------------------------



Re: Re: Mitfahrgelegenheit nach WiBu gesucht (Chagall, 26. Nov 2004, 14:01:06):
~#! rn=Wurzel rt=1101473976 rg=suche-biete
~#! tid=1101473680
Nein, die vertragen sich nicht so gut mit Antidepressiva und
Beruhigungsmitteln.

MC

-----------------------------------------------------------------------------



Island (Zook,  2. Dez 2004, 13:29:05):
Hi, ist von Euch schon mal jemand nach Island gereist und kann guenstige
Reisemoeglichkeiten empfehlen? 

Zook..

-----------------------------------------------------------------------------



Re: Island (Grimmborn,  8. Dez 2004, 10:33:09):
~#! rn=Zook rt=1101990545 rg=suche-biete
~#! tid=1101990545
Geruechten zufolge ist die einzige Anreisemethode nach Island, die man
halbwegs als "guenstig" bezeichnen koennte, das Selberschwimmen. Achtung: Das
"Seepferdchen" ist dafuer nicht ausreichend, es sollte schon mindestens der
Freischwimmer sein.

GdA

-----------------------------------------------------------------------------



Re: Island (Gloinson,  8. Dez 2004, 14:59:57):
~#! rn=Zook rt=1101990545 rg=suche-biete
~#! tid=1101990545
Containerschiffreisen sollen ja ganz preiswert sein.


-----------------------------------------------------------------------------



Sylvesterparty (Cassandra,  8. Dez 2004, 17:06:38):
Suchen lustige Sylvesterfeier um das feiern fortzusetzen.

cassy & Lagitana(Claudia)

-----------------------------------------------------------------------------



Re: Sylvesterparty (Mieze,  8. Dez 2004, 17:08:36):
~#! rn=Cassandra rt=1102521998 rg=suche-biete
~#! tid=1102521998
Schreib dazu, dass Ihr echte Frauen seid :o)

Mieze 

-----------------------------------------------------------------------------



Re: Re: Sylvesterparty (Cassandra,  8. Dez 2004, 17:09:24):
~#! rn=Mieze rt=1102522116 rg=suche-biete
~#! tid=1102521998
hiermit verweise ich dazu einfach mal auf diverse Partyphotos

Cassy, wirklich weiblich seiend

-----------------------------------------------------------------------------



Re^3: Sylvesterparty (Orktoeter,  8. Dez 2004, 17:10:12):
~#! rn=Cassandra rt=1102522164 rg=suche-biete
~#! tid=1102521998
weiblich, ledig, jung, wi...

OrkT, der gerade gewuergt wird.

-----------------------------------------------------------------------------



Re^4: Sylvesterparty (Mieze,  8. Dez 2004, 17:17:40):
~#! rn=Orktoeter rt=1102522212 rg=suche-biete
~#! tid=1102521998
OrkT, traeum einfach weiter :o)

-----------------------------------------------------------------------------



Re^5: Sylvesterparty (Montanus,  8. Dez 2004, 18:12:16):
~#! rn=Mieze rt=1102522660 rg=suche-biete
~#! tid=1102521998
OrkT, virtuell schreibt sich mit v, nicht mit w.

-----------------------------------------------------------------------------



Re^6: Sylvesterparty (Bambi,  8. Dez 2004, 21:08:46):
~#! rn=Montanus rt=1102525936 rg=suche-biete
~#! tid=1102521998
Ja. Und?

-----------------------------------------------------------------------------



Alter Rechner zu verschenken (Mieze, 15. Dez 2004, 11:30:25):
Hallo,

ich hab einen alten Rechner (Pentium 166, Miditower, mit Monitor & Co.) zu
verschenken fuer jemanden, der ihn abholt. Hier nimmt er nur Platz weg.

Gruesse
Mieze - mistet aus

-----------------------------------------------------------------------------



LKW-Verleih mit Einwegtarif preisguenstig in Sueddeutschland (Gloinson, 16. Dez 2004, 22:44:31):
Wir wollen einen grossen Haufen Kram vom Bodensee nach Berlin schaffen, denn
weil wir demnaechst dort sind koennten wir das eigentlich selbst machen.
Leider ist der "guenstigste" Einwegtarif derzeit Europcar mit 130 Euro
Miete (300 km inklusive) + 122 Euro Extrakilometergeld + Sprit nicht
gerade hochguenstig.

Kennt jemand einen etwas preiswerteren LKW-Einweg-Verleih in der Gegend?


-----------------------------------------------------------------------------



Re: LKW-Verleih mit Einwegtarif preisguenstig in Sueddeutschland (Gloinson, 16. Dez 2004, 22:51:28):
~#! rn=Gloinson rt=1103233471 rg=suche-biete
~#! tid=1103233471
PS: ADAC-KArte haben wir nicht. Aber der Tipp ist schon mal gut, einen
Bekannten mit Karte mieten zu lassen ...


-----------------------------------------------------------------------------



DKB (Amaryllis,  4. Jan 2005, 22:32:26):
Moin

die DKB bietet kostenlose Kreditkarten etc. an - und hat angeblich gute
Kritiken bekommen. Gibts hier jemanden, der Kunde dort ist und mir von
Erfahrungen (insbesondere Kreditkartenkonten) berichten kann?

Gruss,
Ama*

-----------------------------------------------------------------------------



Re: DKB (Grimmborn,  4. Jan 2005, 23:04:13):
~#! rn=Amaryllis rt=1104874346 rg=suche-biete
~#! tid=1104874346
Ich bin (auch) Kunde der DKB und bin damit zufrieden. 

GdA

-----------------------------------------------------------------------------



MP3-Player (Gloinson, 21. Jan 2005, 15:27:37):
Folgende Anforderungen:
- gebraeuchliche Batterien (AAA waer recht)
- SD/MMC-erweiterbar
- UKW-Tuner
- halbwegs ordentliche Verarbeitung/Groesse
- etwas eigenen Speicher

(Prinzipiell waere mir ein HD-Player auch recht, dann sparte man das mit der
Erweiterung, aber HD-Player haben immer interne Akkus.)

Offen habe ich hier gerade Seiten mit:
MPIO FL 100-512,  Pontis SP 550 256, Schneider, PM 256, Rio Forge 256, Rio
Chiba Black 256, Rio Cali Green 256, Hyundai NewGen 5 TN-550

Kann jemand von irgend einem der Produkte abraten oder kann meine Liste
erweitern? Danke :)


-----------------------------------------------------------------------------



Re: MP3-Player (Trug, 21. Jan 2005, 21:59:42):
~#! rn=Gloinson rt=1106317657 rg=suche-biete
~#! tid=1106317657
Der Creative Muvo^2 ist auch ein ganz netter HD-Player.

Ausstattung:
 - (alt) 1,5 GB HDD, (neu) 4 GB HDD
 - auswechselbarer Akku
 - hat Radio (nie benutzt)
 - USB-Anschluss
 - verarbeitet WAV, MP3, WMA
 - ignoriert brav Daten und Verzeichnisse lassen sich beliebig schachteln,
   liest sauber MP3-Tags aus

Kostet so ungefaehr 230-270 Euro

-----------------------------------------------------------------------------



Re: Re: MP3-Player (Trug, 21. Jan 2005, 22:00:26):
~#! rn=Trug rt=1106341182 rg=suche-biete
~#! tid=1106317657
Achja... Groesse: ungefaehr so 2/3 so gross wie eine Zigarettenschachtel.

-----------------------------------------------------------------------------



Re: Re: MP3-Player (Ogo, 21. Jan 2005, 22:09:12):
~#! rn=Trug rt=1106341182 rg=suche-biete
~#! tid=1106317657
Die benutzt auch wer? Ich dachte, die 4GB Version wird nur gekauft, damit man
die CF 4GB Platte ausbauen kann, die sonst alleine im Handel 500 Eurotaler
kostet und seltsamerweise in diesem mp3-Player, der weniger als die Haelfte
kostet, verbaut wird. :P

-----------------------------------------------------------------------------



Re^3: MP3-Player (Trug, 21. Jan 2005, 22:10:00):
~#! rn=Ogo rt=1106341752 rg=suche-biete
~#! tid=1106317657
Ich hab einen der fleissig benutzt wird.

Trug

-----------------------------------------------------------------------------



Re: Re: MP3-Player (Gloinson, 21. Jan 2005, 22:13:51):
~#! rn=Trug rt=1106341182 rg=suche-biete
~#! tid=1106317657
Nee, so LiIon-Schweinkram kommt mir nicht ins Haus. Da gehst du dann mal auf
Reise und kannst das Teil nach dreissig Stunden vergessen, weil dir ein
weiterer Ersatzakku zu teuer war. Ganz zu schweigen von "Akku wegen
<irgendwas> kaputt, nu kauf mal teuer neu".


-----------------------------------------------------------------------------



Re^3: MP3-Player (Orktoeter, 21. Jan 2005, 22:16:03):
~#! rn=Gloinson rt=1106342031 rg=suche-biete
~#! tid=1106317657
die guten AA oder AAA sind doch auch schon laegst Li/Ionen-Akkus oder
Me/Hydrid.

OrkT.

-----------------------------------------------------------------------------



Re^4: MP3-Player (Gloinson, 21. Jan 2005, 22:18:49):
~#! rn=Orktoeter rt=1106342163 rg=suche-biete
~#! tid=1106317657
Bitte einen Link auf erschwingliche LiIon-AAA. Ich sag es vielleicht
deutlicher: Proprietaere Akkupacks mag ich nicht.


-----------------------------------------------------------------------------



Re^5: MP3-Player (Mischief, 23. Jan 2005, 01:48:51):
~#! rn=Gloinson rt=1106342329 rg=suche-biete
~#! tid=1106317657
Warum macht Ihr Euch eigentlich diese Muehe. Es gibt derzeit keinen besseren
MP3-Player als Apples iPod, bei 20GB Festplatte im grossen brauch ich keine
Erweiterbarkeit, Verarbeitung ist top, Wiederverkauf auch. Der ganze uebrige
Krempel versucht nur zu imitieren, Interface ist grausam, Verarbeitung auch...
M.

-----------------------------------------------------------------------------



Re^6: MP3-Player (Gralkor, 23. Jan 2005, 07:59:37):
~#! rn=Mischief rt=1106441331 rg=suche-biete
~#! tid=1106317657
der iPOD hat leider (hat mich vom Kauf abgehalten) zwei Nachteile.
1. spielt keine ogg-vorbis (und ehe ich meine gesamte Musiksammlung auf
primitive Formate versaue, damit ich sie mobil hoeren kann...)
2. er ist nicht nativ als Festplatte nutzbar (koennte ich meine Wechselplatte
zu Hause lassen)
3. OneWay-Bespielung (was drauf ist, kann nie wieder runter)

G.

-----------------------------------------------------------------------------



Re^7: MP3-Player (Gralkor, 23. Jan 2005, 08:00:25):
~#! rn=Gralkor rt=1106463577 rg=suche-biete
~#! tid=1106317657
das dritte ist nicht unbedingt ein Nachteil, da man ne 20GB-Platte nur schwer
bei normalem Gebrauch voll bekommt.
G.

-----------------------------------------------------------------------------



Re^7: MP3-Player (Amaryllis, 23. Jan 2005, 10:37:48):
~#! rn=Gralkor rt=1106463577 rg=suche-biete
~#! tid=1106317657
Also ich hab den Archos GMini220 und bin damit eigentlich sehr zufrieden. Ist
auch schoen als 20GB USB-Festplatte nutzbar :)

Hat allerdings Radio nur ueber eine externe, zusaetzlich kaufbare
Fernbedienung und fest installierte LiIo-Akkus. Dafuer auch ein eingebautes
Mikrophon fuer Aufnahmen.

Fuer meine Zwecke tuts das, zumal ich das damals noch recht teure Geraet quasi
fuer die Haelfte dank Vitamin-B vom Archos-Distributor Deutschland bekommen
hab :)

Gruss,
Ama*

-----------------------------------------------------------------------------



Re^7: MP3-Player (Gloinson, 23. Jan 2005, 10:55:03):
~#! rn=Gralkor rt=1106463577 rg=suche-biete
~#! tid=1106317657
Das ist nicht ernst gemeint, oder? Muss man im Menue per Hand loeschen oder
die Platte erst ausbauen ;)


-----------------------------------------------------------------------------



Re^6: MP3-Player (Muadib, 23. Jan 2005, 12:57:10):
~#! rn=Mischief rt=1106441331 rg=suche-biete
~#! tid=1106317657
also jeder mp3-player der nicht auf ein auswechselbares medium setzt ist einer
den ich nicht besitzen moechte. 
und sei sein interface noch so toll.
wenn das bei dir aufgrund von 20gb nicht so ist, dann ist das doch schoen fuer
dich. mir reicht das nicht

-----------------------------------------------------------------------------



Re^7: MP3-Player (Montanus, 24. Jan 2005, 00:11:11):
~#! rn=Muadib rt=1106481430 rg=suche-biete
~#! tid=1106317657
Also mein iPod laesst sich als Wechselplatte verwendet.
Vielleicht nur auf Macs. Dann solltest Du aber nachdenken, ob Du nicht einfach
das falsche OS hast.

-----------------------------------------------------------------------------



Re^8: MP3-Player (Muadib, 24. Jan 2005, 10:18:25):
~#! rn=Montanus rt=1106521871 rg=suche-biete
~#! tid=1106317657
ich glaube du hast mich missverstanden. ich will keinen mp3-player als
wechselbare platte, sondern einen mp3-player mit wechselbarer und
erweiterbarer platte

-----------------------------------------------------------------------------



Re: MP3-Player (Gnome, 24. Jan 2005, 12:46:40):
~#! rn=Gloinson rt=1106317657 rg=suche-biete
~#! tid=1106317657
c't 2004, Heft 26, S. 142 ff.

-----------------------------------------------------------------------------



Re: MP3-Player (Gloinson, 24. Jan 2005, 23:28:01):
~#! rn=Gloinson rt=1106317657 rg=suche-biete
~#! tid=1106317657
Ok, der Kreis wurde eingeengt:
- MPIO fiel im Vergleich mit Creative raus (s.u.)
  - so ganz iO, aber Menues nicht super
- Pontis fiel raus, weil die Pontis 600 alle sehr beschissene
  Verarbeitung haben
- Schneider fiel wegen allgemeiner Unkenntnis und im Vergleich mit
  Creative raus (hatten ihn zwar mal in der Hand, Daten sind aber sonst
  recht karg)
- Rio Chiba/Cali fallen wegen des toll prominenten und damit leicht
  kaputtspielbaren Knubbels heraus
- Archos Ondio faellt raus, weil die Verarbeitung wohl generell schlecht
  sei, der Akkus wie ein Scheunendrescher frisst und keine Hintergrund-
  beleuchtung hat

Drin sind:
- Hyundai Newgen, nur schlecht zu bekommen:
  http://www.teravalue.com/products/products_newgen_en.jsp
- Rio Audio Forge
  http://tinyurl.com/6r5jc
- Creative Muvo Sport C100
  http://tinyurl.com/5uwnb
- Philips SA230
  http://tinyurl.com/4y2ge

Alle erfuellen augenscheinlich die Hauptkriterien. Genaue Entscheidung steht
noch seitens Empfaenger aus ;)

Ausgeschieden sind ausserdem Siemens SX1 (Handy mit Symbian OS) oder PDAs wie
Zaurus, da die Trennung von Musikabspielen und wichtigem
Datengeraet/Kommunikationsgeraet wegen der zu erwartenden Belastungen im
Alltagsgebrauch/Sportgebrauch wichtiger erscheint.


-----------------------------------------------------------------------------



O2 versus T-Net (Mesirii,  6. Feb 2005, 22:09:38):

Da wir bald umziehen und die Frage nach dem Telefonanschluss steht,
wrde mich Eure Meinung zu folgender Frage interessieren:

Spricht was gegen O2 Genion Duo fuer 14,90 als Alternative
zu nem Telekom-Anschluss, wenn man eh kein DSL bekommt?

Ausser dass man kein Call by Call machen kann, aber wir
rufen eh wenig an.

Was ist dabei:

1 Handy

2x100 Frei SMS pro Monat

Tarife fast wie T-Net ohne Call by Call.

http://www.o2online.de/o2/interessenten/o2tarife/duo/haupt-art.html

City Option, d.h. z.B. aus DD (0351) zu allen 035xxx Vorwahlen
fr 0.7 ct.

Mesi, unentschlossen

-----------------------------------------------------------------------------



Re: O2 versus T-Net (Medic,  7. Feb 2005, 06:52:56):
~#! rn=Mesirii rt=1107724178 rg=suche-biete
~#! tid=1107724178
Ich bin kuerzlich von D1 zu O2 Genion gewechselt und habe noch einen
Festnetzanschluss T-Net Analog. Da Internet bei mir via Unileitung laeuft,
benutze ich den Festnetzanschluss eigentlich so gut wie gar nicht mehr. Am Tag
laufen bei mir so 5-10 Telefongespraeche auf, mal weniger, mal mehr, mal
kuerzer, mal laenger. Bisherige Telekomrechnung inklusive Grundgebuehr (ich
glaub 14,irgendwas Euro) lag meist zwischen 50 und 80 Euro, die O2-Rechnung
etwas darueber, wobei da alle ausserhalb der Homezone gefuehrten Gespraeche
mit dabei sind. Kuendige ich jetzt meinen Telekom-Anschluss und rechne O2
gegen D1+T-Net fahre ich unterm Strich mit O2 ein bisschen guenstiger. Wobei
ich mir bisher Auslandsgespraeche, von denen ich so 5-10 pro Monat habe, via
O2 verkniffen habe und diese ueber Call-by-Call fuehre. Achja, Cityoption ist
aktiv. Letztendlich liegts wohl, wie eigentlich immer, am eigenen
Telefonierverhalten, womit man billiger wegkommt.

Gruss,
Medic

-----------------------------------------------------------------------------



Re: Re: O2 versus T-Net (Darklor,  7. Feb 2005, 13:04:51):
~#! rn=Medic rt=1107755576 rg=suche-biete
~#! tid=1107724178
100 SMS im Monat? - kann man die ueberhaupt alle nutzen?

Darklor

-----------------------------------------------------------------------------



Re: O2 versus T-Net (Bambulko,  7. Feb 2005, 13:29:20):
~#! rn=Mesirii rt=1107724178 rg=suche-biete
~#! tid=1107724178
Teste auf jeden Fall zunaechst mal ob bei Dir der Empfang von O2 gut ist. Ich
hatte eine Zeit lang O2 Genion, aber dem Empfang zu Hause war nie besonders
gut.

Bambulko

-----------------------------------------------------------------------------



Re: Re: O2 versus T-Net (Maharet,  7. Feb 2005, 14:32:27):
~#! rn=Bambulko rt=1107779360 rg=suche-biete
~#! tid=1107724178
Wie testet man das?

-----------------------------------------------------------------------------



Re^3: O2 versus T-Net (Zook,  7. Feb 2005, 14:57:24):
~#! rn=Maharet rt=1107783147 rg=suche-biete
~#! tid=1107724178
nen bekannten mit o2 in die eigene wohnung stellen?

zook.

-----------------------------------------------------------------------------



Re^4: O2 versus T-Net (Maharet,  7. Feb 2005, 16:16:10):
~#! rn=Zook rt=1107784644 rg=suche-biete
~#! tid=1107724178
Wir wohnen in der Wohnung noch nicht, wir wuerden aber schon gern Telefon
beantragen, um nicht ewig ohne Verbindung zur Aussenwelt leben zu muessen. 
Wir heissen doch nicht Grimmborn.

-----------------------------------------------------------------------------



Re^5: O2 versus T-Net (Cassandra,  7. Feb 2005, 16:56:49):
~#! rn=Maharet rt=1107789370 rg=suche-biete
~#! tid=1107724178
hab bit 02 bisher gute erfahrungen. solltest aber mal im laden fragen ob bei
euch in der neuen Wohnung homezone geht, sollte aber in einer stadt kein
problem sein.
Ich hab das jetzt seit drei jahren und bisher lief alles gut, auch
Auslandsgespraeche wenn halt die auch etwas teurer.
Rechnung liegt im Schnitt bei 30-35 Euro bei 8 Euro grundgebuehr.

Der einzige nachteil den man hat ist halt das fehlende Festnetz zum surfen.

Janine

-----------------------------------------------------------------------------



Re^3: O2 versus T-Net (Kellybundy,  7. Feb 2005, 17:21:55):
~#! rn=Darklor rt=1107777891 rg=suche-biete
~#! tid=1107724178
Es gibt Spezialisten, die verSMSen 600-800 Euronen im Monat. Fazit: Ja, es ist
moeglich!

-----------------------------------------------------------------------------



Re^4: O2 versus T-Net (Foobar,  7. Feb 2005, 19:57:15):
~#! rn=Kellybundy rt=1107793315 rg=suche-biete
~#! tid=1107724178
Kann man so nicht sagen.

Kommt drauf an, was bei den Spezialisten die SMS kostet.

Aber alleine vom zeitlichen Aufwand des SMS-Schreibens her duerfte es klappen,
100 SMS im Monat zu verschicken.

Das sind ja nur etwas mehr als 3 pro Tag.

-----------------------------------------------------------------------------



Re^5: O2 versus T-Net (Boing,  8. Feb 2005, 10:00:24):
~#! rn=Foobar rt=1107802635 rg=suche-biete
~#! tid=1107724178
Wenn ich 3 im Monat verschicke ist das schon viel ... :)
  Boing

-----------------------------------------------------------------------------



MP3-Encoder + ID3-Tags aus freedb (Gloinson,  8. Feb 2005, 17:39:34):
Siehe oben,
 ich suche etwas, was aus CDs gut VBR, Joint Stereo MP3s erzeugt und dabei
 aus freedb oder einer aehnlichen CD-Datenbank die Daten in die ent-
 sprechenden ID3-Tags stopft.

Windows waere nett. Etwas mit Lame waere auch nett ;)


-----------------------------------------------------------------------------



Re: MP3-Encoder + ID3-Tags aus freedb (Morgoth,  8. Feb 2005, 18:22:41):
~#! rn=Gloinson rt=1107880774 rg=suche-biete
~#! tid=1107880774
Kukksu hier:
http://www.exactaudiocopy.de/

-----------------------------------------------------------------------------



Re: MP3-Encoder + ID3-Tags aus freedb (Ogo,  8. Feb 2005, 19:28:42):
~#! rn=Gloinson rt=1107880774 rg=suche-biete
~#! tid=1107880774
Da wir ja natuerlich auch politisch motiviert unsere Software aussuchen,
wollen wir ein Programm, dass nicht nur free as in free beer ist, sondern auch
free as in free speech.

http://cdexos.sourceforge.net/ Sieht zugegebenermassen nicht ganz so huebsch
aus, benutzt aber lame und kann alles, was gefordert war und das wichtigeste:
Es ist FOSS :)

Ich habe gehoert, dass Audiograbber mittlerweile auch kostenlos sein soll, ist
aber closed-source.

-----------------------------------------------------------------------------



Re: Re: MP3-Encoder + ID3-Tags aus freedb (Gloinson,  8. Feb 2005, 19:32:20):
~#! rn=Ogo rt=1107887322 rg=suche-biete
~#! tid=1107880774
Ui, ich erinnere mich. Der schlummerte auch mal auf der gecrashten Platte ;)

-----------------------------------------------------------------------------



Re^3: MP3-Encoder + ID3-Tags aus freedb (Croft,  8. Feb 2005, 19:34:14):
~#! rn=Gloinson rt=1107887540 rg=suche-biete
~#! tid=1107880774
http://www.wspse.de/WSPse/Linux-MP3c.php3
ist auch noch ganz nett.  Mit etwas Arbeit bekommt man den sicher auch
unter Win zu laufen, da der ueber entsprechend konfigurierbare Befehlszeilen
Ripper und Encoder anspricht.

Croft

-----------------------------------------------------------------------------



Computer-Audio entbrummen. (Catweazle, 17. Mar 2005, 12:31:50):
Meine Anlage brummt, wenn ich Ton vom Computer anmache. 

Das ist irgendein Doppelerdungsmuell.

Mir wurde gesagt, er gaebe Kabel, die man dazwischenstecken kann, dann geht
das Brummen weg (Erde trennen nehm ich an). 

Wie genau heisst das Bauteil? Ohne exakten Namen ist es recht schwierig einen
Versender dafuer zu finden :-)

YTC

-----------------------------------------------------------------------------



Re: Computer-Audio entbrummen. (Taranis, 17. Mar 2005, 13:00:54):
~#! rn=Catweazle rt=1111059110 rg=suche-biete
~#! tid=1111059110
Soweit ich weiss, kann man entweder mit einem Mantelstromfilter (die gibt es
sogar fertig mit Cinch-Kabeln etc.pp.) oder einem NF-Uebertrager versuchen.
Dabei faellt mir ein, dass ich das bei mir auch mal machen muss.

Taranis

-----------------------------------------------------------------------------



Re: Re: Computer-Audio entbrummen. (Catweazle, 17. Mar 2005, 13:14:41):
~#! rn=Taranis rt=1111060854 rg=suche-biete
~#! tid=1111059110
Ich hab nu http://tinyurl.com/6tegq gefunden, ich probiers mal damit ...

YTC

-----------------------------------------------------------------------------



Re^3: Computer-Audio entbrummen. (Taranis, 17. Mar 2005, 13:22:05):
~#! rn=Catweazle rt=1111061681 rg=suche-biete
~#! tid=1111059110
Ja, son  Ding hatte ich auch im Kopf. Berichte doch mal, ob das funktioniert
hat, dann besorg ich mir auch mal son Teil. ;-)

Taranis

-----------------------------------------------------------------------------



Re^4: Computer-Audio entbrummen. (Vanhelsing, 17. Mar 2005, 13:25:15):
~#! rn=Taranis rt=1111062125 rg=suche-biete
~#! tid=1111059110
Mein Vater hat, als mir das mal passiert ist, gesagt, ich soll ein (duennes)
Kabel von dem Audioausgang PC z.b. an eine Befestigungsschraube des PC Chassis
legen. Hat wunderbar funktioniert.

-----------------------------------------------------------------------------



Re^5: Computer-Audio entbrummen. (Nonne, 17. Mar 2005, 13:27:47):
~#! rn=Vanhelsing rt=1111062315 rg=suche-biete
~#! tid=1111059110
Das funktioniert aber nur, wenn die Masse vom Computer und der Stereoanlage
das gleiche Potential haben. Sonst fliesst ein Ausgleichstrom ueber die
Abschirmung des Cinch-Kabels.

Nonne.

-----------------------------------------------------------------------------



Re^6: Computer-Audio entbrummen. (Catweazle, 17. Mar 2005, 13:28:33):
~#! rn=Nonne rt=1111062467 rg=suche-biete
~#! tid=1111059110
Und die macht dann das fiese Brummen. Exakt. Zwei Massen halt :-)

YTC

-----------------------------------------------------------------------------



Re^7: Computer-Audio entbrummen. (Jameson, 17. Mar 2005, 13:33:23):
~#! rn=Catweazle rt=1111062513 rg=suche-biete
~#! tid=1111059110
Ich habe das interessante Feature zu bieten, dass ueber meine Audioleitung vom
Videorecorder zum PC (ich habe keine Stereoanlage bzw. keine Boxen, sondern
nur ein 4.1-Set fuer den PC) zunaechst nur ein Brummton und das Audiosignal
nur heftigst verzerrt ankommt, nach ein paar Minuten verschwindet aber der
Brummton und der Ton wird normal. Da muss wohl irgendein Potentialausgleich
stattfinden. Ich weiss noch nicht so genau, ob das fuer den PC (Laptop,
genauer gesagt) so gut ist, daher verwende ich das Kabel bisher nicht so
gerne. Ob wir mal eine Sammelbestellung machen sollten? ;-)

-----------------------------------------------------------------------------



Re^8: Computer-Audio entbrummen. (Kiria, 18. Mar 2005, 16:50:51):
~#! rn=Jameson rt=1111062803 rg=suche-biete
~#! tid=1111059110
Mein Audio hat an der Stereoanlage auch mal gebrummt..
Bei mir ging es einfach weg, indem ich den Drucker ans USB gestoepselt hab ?!

Ich will gar nicht zu genau wissen warum.. Hauptsache es brummt nicht ^_^

Kiria

-----------------------------------------------------------------------------



Re^9: Computer-Audio entbrummen. (Medic, 19. Mar 2005, 14:32:44):
~#! rn=Kiria rt=1111161051 rg=suche-biete
~#! tid=1111059110
Bei mir trat der Effekt bei Computer und gleichzeitig an die Anlage
gekoppeltem Fernseher die Macke ausgeloest. Das Brummen war dann mit
Mantelstromfilter weg, dummerweise war im Ausgleich das Fernsehbild
verrauscht...

-----------------------------------------------------------------------------



Re: Re: Computer-Audio entbrummen. (Kellybundy, 25. Mar 2005, 00:02:03):
~#! rn=Taranis rt=1111060854 rg=suche-biete
~#! tid=1111059110
Hehe klingt fast so wie Atomstromfilter :)

-----------------------------------------------------------------------------



Neusprech-Experten (Gloinson,  2. Apr 2005, 03:36:24):
Mir faellt gerade auf, wie haette man denn das Wort "neutral" in Neusprech
ersetzt? Nicht, dass "neutral" ein beizubehaltendes Wort gewesen waere, man
als Person konnte man nicht neutral bleiben. Aber zB in der Chemie haette es
ja noch ein "neutral" geben muessen ...


-----------------------------------------------------------------------------



Schnorcheltauchen? (Gloinson,  3. Apr 2005, 22:07:53):
Im Hochschulsport der TUB gibt es in diesem Semester einen Kurs
Unterwasserrugby. Leider haben die Voraussetzungen:
- Tauchgrundausbildung (Schnorchelkurs) bzw. ausreichende Vorerfahrung
  -> Jahre ist es her, dass ich einen Kurs Schnorcheln an der TUD nebst
     UW-Rugby absolvierte, den Anmeldungschein finde ich nimmermehr, was
     gibt es fuer Alternativen?
- Tauchtauglichkeitsbescheinigung
  - bei welcher Art Sportarzt bekommt man so etwas und wieviel loehnt
    man?


-----------------------------------------------------------------------------



Re: Schnorcheltauchen? (Vanion,  3. Apr 2005, 22:30:41):
~#! rn=Gloinson rt=1112558873 rg=suche-biete
~#! tid=1112558873
Der VDST bietet einen Apnoe-Tauchschein an, der hat hauptsaechlich Uebungen
und Probleme, die beim Tauchen ohne Geraet auftauchen, zum Thema. Vielleicht
ist es das, was Du suchst. (www.vdstapnoe.de). Der VDST organisiert seine
Ausbildung normalerweise in Vereinen. Das heisst, such nach einem Tauchverein
in Deiner Naehe, und frag dort, ob die einen Tauchlehrer haben, der eine
Apnoe-Bronze-Ausbildung macht.

Die Tauchtauglichkeit kann Dir afaik ein Allgemeinmediziner bescheinigen. In
der grossen Fassung beinhaltet das ein grosses Blutbild, ein Ruhe-EKG, ein
Lungenfunktionstest, einen Blick in die Ohren und eine allgemeinmedizinische
Untersuchung. Einen Untersuchungsbogen findest Du hier:
http://www.vdst.de/fachbereich/medizin/dokumente/vdst-u-bogen.pdf. Ob man
diesen Zettel seinem Arzt wirklich in die Hand druecken sollte, weiss ich aber
nicht. Mein Doc wusste auch ohne den, was er tat. Zumindest wirkte er so. Aber
als grober Anhaltspunkt sollte es helfen.

Ich hoff, das hilft erstmal weiter.

Gruesse,
V*

-----------------------------------------------------------------------------



Re: Schnorcheltauchen? (Gabylon,  3. Apr 2005, 22:35:57):
~#! rn=Gloinson rt=1112558873 rg=suche-biete
~#! tid=1112558873
UW-rugby?

ist das sowas wie das pendant fuer synchronschwimmen der frauen?
und: moechtest du dir nicht ne richtige sportart aussuchen? :)

gab

-----------------------------------------------------------------------------



Re: Re: Schnorcheltauchen? (Jimdigriz,  3. Apr 2005, 22:37:49):
~#! rn=Gabylon rt=1112560557 rg=suche-biete
~#! tid=1112558873

Ich kenn auch jemand der das macht. Ich find das ziemlich
beeindruckend.

JdG

-----------------------------------------------------------------------------



Re^3: Schnorcheltauchen? (Vanion,  3. Apr 2005, 22:41:01):
~#! rn=Jimdigriz rt=1112560669 rg=suche-biete
~#! tid=1112558873
Rugby ist schon fies genug, ohne dass man auch noch das Problem hat, sich
Gedanken darueber zu machen, wo man den naechsten Atemzug herbekommt.

Beeindruckend. Ja.

V*, haelt es ja eher mit entspannenden Tauchgaengen.

-----------------------------------------------------------------------------



Re^4: Schnorcheltauchen? (Gloinson,  3. Apr 2005, 22:42:15):
~#! rn=Vanion rt=1112560861 rg=suche-biete
~#! tid=1112558873
Pff. Wenn das Anfaenger spielen sind sie meist mehr damit beschaeftigt
vorwaertszukommen denn sich gegenseitig in den Boden zu rammen. 5x10x10 Meter
sind ziemlich viel Platz zum Verteilen.


-----------------------------------------------------------------------------



Re^5: Schnorcheltauchen? (Gabylon,  3. Apr 2005, 22:47:04):
~#! rn=Gloinson rt=1112560935 rg=suche-biete
~#! tid=1112558873
da lob ich mir ein fussballfeld. 60m x 100m. da ist platz fuer alles.
sogar fuers "in den boden rammen". und luft bekommt man immer.

gab

-----------------------------------------------------------------------------



Re^6: Schnorcheltauchen? (Vanion,  3. Apr 2005, 22:47:50):
~#! rn=Gabylon rt=1112561224 rg=suche-biete
~#! tid=1112558873
Fussball ist halt 'ne Maedchensportart :)

V*, grinst gemein.

-----------------------------------------------------------------------------



Re^7: Schnorcheltauchen? (Amaryllis,  3. Apr 2005, 23:03:10):
~#! rn=Vanion rt=1112561270 rg=suche-biete
~#! tid=1112558873
Dazu mal eine nette Definition aus de.alt.talk.unmut:

<zitat>
Alberne Sportart, bei der es darum geht einen aufgepl|sterten Kugelfisch in
ein Fischernetz zu treiben (komischerweise in das Netz der anderen
Fischkutterbesatzung und nicht ins eigene). Bevorzugt wird in diesem
Haushalt die Besatzung des Kutters "Schalke 04".
</zitat>

Quelle: <d2mft7$dnk$2@usenet.steering-group.net>

Ama, grinsend

-----------------------------------------------------------------------------



Re^6: Schnorcheltauchen? (Zook,  3. Apr 2005, 23:30:39):
~#! rn=Gabylon rt=1112561224 rg=suche-biete
~#! tid=1112558873
Ein Nachbar von mir spielte auch UW-Rugby. Hoerte sich eigentlich recht
interessant, aber auch recht anstrengend an. Schien auch nicht ganz so 
kreuzbandbelastend wie Fussball auf dem Grossfeld.

Und irgendwie sind doch die meisten Sportarten irgendwie albern....

Zook.

-----------------------------------------------------------------------------



Re^7: Schnorcheltauchen? (Montanus,  4. Apr 2005, 13:02:25):
~#! rn=Zook rt=1112563839 rg=suche-biete
~#! tid=1112558873
Es gibt nichts, was kruezbandbelastender ist als Wasserball und
Unterwasserrugby. Frag mal den Schoenheits-Chirurgen Deiner Wahl, wer die
meisten Narben am Knie hat...

-----------------------------------------------------------------------------



Re^8: Schnorcheltauchen? (Wurzel,  4. Apr 2005, 13:04:25):
~#! rn=Montanus rt=1112612545 rg=suche-biete
~#! tid=1112558873
welcher wasserballer oder uw-rugbyspieler geht denn zum schoenheitschirurgen?

-----------------------------------------------------------------------------



Re^9: Schnorcheltauchen? (Muadib,  4. Apr 2005, 13:56:45):
~#! rn=Wurzel rt=1112612665 rg=suche-biete
~#! tid=1112558873
das frage ich mich auch
vor allem weswegen geht der zum schoenheitschirurgen???

-----------------------------------------------------------------------------



Re^3: Computer-Audio entbrummen. (Zook,  4. Apr 2005, 16:18:46):
~#! on=Zook ot=1112624316 og=muell
~#! on=Gast1 ot=1112617827 og=suche-biete
~#! rn=Kellybundy rt=1111705323 rg=suche-biete
~#! tid=1111059110
Das Problem uert sich hauptschlich beim Anstecken von Antennenkabeln
(iKoax-Kabel von Antennendose an Tuner/Receiver bzw. Fernseher. Dafuer gibt es
die schon genannten Mantelstromfilter (im Prinzip 2 Elkos), die es im gut
sortierten Elektronikladen zu kaufen gibt. Schwuppdiwupp, brummen weg ... aber
wahrscheinlich ist das Problem eh schon geloest.

MfG

Ma*

-----------------------------------------------------------------------------



Re: MP3-Player (Gloinson,  4. Apr 2005, 18:08:30):
>Drin sind:
>- Hyundai Newgen, nur schlecht zu bekommen:
>  http://www.teravalue.com/products/products_newgen_en.jsp

Aufgrund der im Netz findbaren Angaben ueber extremen Stromhunger
ausgeschieden.

- Creative Muvo Sport C100
  http://tinyurl.com/5uwnb

Absolut in der engeren Wahl.

- Philips SA230
  http://tinyurl.com/4y2ge

Ziemlich billige Verarbeitung und gefiel ergonomisch nicht.

>- Rio Audio Forge
>  http://tinyurl.com/6r5jc

Der ist es jetzt geworden. Nachdem es eine Macke mit dem Display des ersten
Geraetes gab ist das zweite nun seit etliche Wochen im Einsatz.
Sound:
- ist IMHO iO, aber ich bin kein Experte
  - Equalizerschnickschnack ist dabei ...
- Leistung ist auch gut, man kann auch mal zwei Hoerer ranhaengen, ohne dass
  das Geraet in die Knie geht
Aufruestung:
- 1GB SD-Karte ist drin und macht was sie soll/wird total integriert
Transfer:
- beide Speicherbereiche werden als einzelne Laufwerke erkannt
- USB (2.0) ist zumindest normal schnell (also um 1.5 MB/s)
Handhabung:
- Menuefuehrung immer noch so angenehm wie vorgestellt
- gewaehlt werden kann nach:
  - Album/Artist/Genre/Track/Year/New Music/Playlist/Spoken Word/Aufnahme
    - Playlist sind diese ganz normalen MP3-Playlists
    - Rest definiert sich ueber die MP3-Informationen
  - nicht nach Verzeichnis (wie erwartet)
  Radio:
- eher schlecht im Vergleich zu meinem Aiwa CR-DS800
- nettes Ergaenzungsfeature, wenn einem wirklich die Musik ausgeht
Technikbla:
- Stromverbrauch ist in Ordnung, jedenfalls hat mich Martina noch nicht
  angejammert. Ok, auf der Urlaubsfahrt musste ich mal eben meine Funkmaus
  pluendern, aber wenn sie fuer 20h Fahrt den Akku vorher nicht laedt ...

Stoppuhr und Bookmarks haben wir noch nicht wirklich gebraucht.


-----------------------------------------------------------------------------



Re^4: Computer-Audio entbrummen. (Catweazle,  6. Apr 2005, 10:32:00):
~#! rn=Taranis rt=1111062125 rg=suche-biete
~#! tid=1111059110
Genau dieses Bauteil hat hervorragendst geholfen.

YTC

-----------------------------------------------------------------------------



Gnuplot... (Zook, 15. Apr 2005, 12:29:38):
... kennt da jemand gute einfuehrende Texte im WWW? 

Zook.

-----------------------------------------------------------------------------



Gartenklappsessel und Co. (Cornholio, 15. Apr 2005, 12:47:41):
Also im Moment gibt es bei Lidl und Kaufland gute Angebote bzgl. Liegen und
Sessel fuer Garten und Balkon.
Bei Lidl kostet Sessel 18 EUR, bei Kaufland 24 --allerdings mit schon mit
Bezug.
Bei Woole hatten sie schoene Teakholzvarianten, fuer allerdings 40 oder 50
Euroglocken/St.
Allerdings laesst mein Monatsfreiluftbudget keine Anschaffung einer
Teakholzgartengarnitur zu.
Daher:
Hat jemand preiswerte Neuware entdeckt (Stuehle, Tische, Swimmingpools inkl.
Poolgirl? :) )?

-----------------------------------------------------------------------------



Re: Gartenklappsessel und Co. (Cornholio, 19. Apr 2005, 07:34:48):
~#! rn=Cornholio rt=1113562061 rg=suche-biete
~#! tid=1113562061
Obwohl oder gerade weil ich suche kommt hier noch ein Update (und evtl.
fortsetzend, vielleicht erbarmt sich ja "jemand" nach dem Sommer und loescht
diese Eintraege, da sie dann ja nicht mehr so up to date sein duerften):
Beistelltisch, klappbar (glaub ich), 17 EUR, EUKALYPTUS, geoelt, allerdings
40x40cm
bei Rossmann


-----------------------------------------------------------------------------



SW (Gloinson,  3. Mai 2005, 00:12:01):
Suche eine Software, mit der ich meinem Rechner ziemlich fix sagen kann, wie
schnell er maximal laufen darf (idealerweise eine, die ihn auf Maximum unter
einer bestimmten Luefterdrehzahl haelt). Windows. Speedswitch XP kann so wa
indirekt ueber Erfahrungswert und dreimal klicken, ich haette aber gern was
sehr fixes wie ein Kontextmenue am Menueicon, damit ich zwischen "Leise",
"Batterieschonen", "Full Power!" schnell wechseln kann.

Und das Ganze idealerweise auch fuer *nix, aber da nicht so dringend, die
Spiele da fressen nicht soviel ;)

PS: Centrino-Laptop mit Dothan. Wozu kauft man sich sonst das Zeugs.


-----------------------------------------------------------------------------



Re: SW (Anthea,  6. Mai 2005, 10:26:14):
~#! rn=Gloinson rt=1115071921 rg=suche-biete
~#! tid=1115071921
Du meinst sowas wie PC-Bremse?
http://www.lrz-muenchen.de/~leoklein/downloads.html#bremse

-----------------------------------------------------------------------------



Praesentationen :o) (Nyx, 17. Mai 2005, 20:27:14):
irgenjemand von Euch kennt doch sicher einen einfachen und kostenguenstigen
Weg, Bildschirm-
praesentationen (Flash?), frei generierbare Listen und druckfaehige Exposs
mittels Datenbankabfrage zu erstellen.
Urspruenglich war das mit Adobe geplant, aber deren Development Kit ist wohl
schwerer zu bekommen, als gedacht und fuer unseren Firmen-Intranet-Menschen
mit zuviel Aufwand verbunden.
Aber da so etwas ja tausende Firmen bereits machen, bin ich mir sicher, dass
es da so etwas wie einen Standard geben muss. Es wird doch nicht jeder das Rad
jedesmal neu erfinden, oder?
Bin fuer Anregungen sehr dankbar, und noch dankbarer wenn sie mich per email
erreichen (n-y-x@arcor.de).
Bitte denkt dran, dass ich es verstehen muss :o) Also bitte in DAU-Sprache
*grinsel*

Danke schon mal fuer die Hilfe :o)

Gruesse

La Nyx

-----------------------------------------------------------------------------



Re: Praesentationen :o) (Grimmborn, 18. Mai 2005, 00:28:19):
~#! rn=Nyx rt=1116354434 rg=suche-biete
~#! tid=1116354434
Vielleicht stehe ich auf dem Schlauch, aber was Du willst ist eine
Datenbankabfrage mit anschliessender Weiterverarbeitung, ja? Nimmt man fuer
sowas nicht perl oder python oder sowas? 

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re: Praesentationen :o) (Catweazle, 18. Mai 2005, 08:24:10):
~#! rn=Nyx rt=1116354434 rg=suche-biete
~#! tid=1116354434
Das was du haben willst 'klingt' nach einem Content Management System (CMS).
Davon gibt es zuviele, asl das man da konkret fuer deine Beduerfnisse eins
empfehlen koennte. Wie immer an dieser Stelle nenn ich gerne Typo3, das ist
umsonst, kann bestimmt alles, ist aber auch dementsprechend komplex.

Beim Stichwort Expose fallen mir immer Makler und deren Webseiten ein. Falls
es tatsaechlich darum geht: fuer diesen Fall gibt es auch professionelle
Produkte, die gar nicht teuer sein muessen. Da mich dies persoenlich betrifft,
frag fuer sowas doch mal beim entsprechenden unserer Altgoetter an.

YTC

-----------------------------------------------------------------------------



Re: Re: Praesentationen :o) (Ronda, 18. Mai 2005, 22:28:20):
~#! rn=Catweazle rt=1116397450 rg=suche-biete
~#! tid=1116354434
*schmunzel* ok, ich schliess mich mal dem Unverstaendnis und dem Ratespiel an
;-)
Du willst Praesentationen - mit Flash...? -, Listen und all das mit einem
System machen? Ja, das koennte in Richtung CMS (oder meinetwegen
Web-Content-Management) klingen, aber auch in Richtung Crystal Reports
(Report-Generator), in Richtung Flash-Spielereien - oder in Richtung
Perl&Co... also in voellig verschiedene Richtungen - gehen ;-)
Mit nen bisschen mehr Infos machts Raten mehr Spass - gern auch per Mail...

Ronda *mit unterschiedlichsten System sehr merkwuerdige Sachen machend*

-----------------------------------------------------------------------------



Re^3: Praesentationen :o) (Nyx, 19. Mai 2005, 07:21:01):
~#! rn=Ronda rt=1116448100 rg=suche-biete
~#! tid=1116354434
Okay, ich versuche das mal zu praezisieren :o)

Also es gibt eine Access-Datenbank. Und einen Ordnern mit jpgs. 
Daraus werden sollen Referenzlisten in einer kurzen und einer langen Version. 
Und jedes Projekt soll eben in Exposform druckbar sein.
Ausserdem soll man eine Bildschirmpraesentation (im Corporate Design versteht
sich) erstellen koennen.
Die Referenzlisten und die Bildschirmpraesentation sollen natuerlich frei
generierbar sein, also nach einem bestimmten Industriezweig, Projektvolumen,
oder Zeit der Ausfuehrung selektierbar.
Die Bildschirmpraesentation soll mit einem 'normal' eingerichteten Internet
Explorer abspielbar sein.

Das ganze soll einfach uebers Firmenintranet zu nutzen sein. Also es darf
keine zusaetzliche Software benoetigt werden - der Wunsch ist eben ein paar
Klicks und man hat die Referenzliste oder die Praesentation seiner Wahl in
druckbarer bzw. vorfuehrbarer Form.

Bis jetzt laeuft saemtlicher Praesentationskram in allen Niederlassungen ueber
Powerpoint - das bedeutet eben, dass man das jedesmal neu anfassen muss, und
sich nach den Daten totsucht.

So, ich hoffe, das war klar genug.

Gruesse und nochmal danke.

La Nyx 

-----------------------------------------------------------------------------



Unterkunft in Muenchen fuer August/September 2005 (Perdita, 21. Mai 2005, 15:38:04):
Hallo allerseits,
mein Bruder sucht fuer August und September eine Unterkunft in Muenchen fuer
ein Praktikum, das er dort macht.
Ihm wuerde schon irgendein "Unterschlupf" reichen, muss also keine Wohnung
sein oder so. Hat jemand sowas zufaellig gerade im Angebot oder kennt
jemanden, der jemanden kennt, der ein Zimmer frei hat oder so?
Perdita

-----------------------------------------------------------------------------



Backup-Skript fuer Linux gesucht (Amaryllis, 22. Mai 2005, 22:45:40):
Hi,

ich suche ein Backup-Tool/Skript fuer Linux. Ok, dutzende probiert, keines
passt so richtig. Bevor ich mir das Skript selber schreibe, weils vielleicht
schon jemand vor mir erfunden hat, die Anforderungen:

Im Prinzip soll ein komplettes Verzeichnis inkl. aller Unterverzeichnisse in
ein anderes Verzeichnis gesichert werden. Dateien, die nicht geaendert wurden,
werden dabei mit dem alten Timestamp gesichert, Aenderungen in einer Datei
fuehren dazu, dass die Datei mit dem AEnderungsdatum im Namen neben der alten
Datei gespeichert wird, z.b. "test.txt", "test_2005_05_22.txt" oder sowas.
Sprich: ich moechte eine Historie haben.

Ich denke, dass rsync sowas kann und natuerlich prinzipiell auch CVS geeignet
waere, aber ich moechte nicht aus- und einchecken muessen.

Kennt da jemand was? Ansonsten waere es wohl auch kein Hexenwerk, das selbst
zu stricken.

Ama*

-----------------------------------------------------------------------------



Re: Backup-Skript fuer Linux gesucht (Amaryllis, 22. Mai 2005, 23:33:52):
~#! rn=Amaryllis rt=1116794740 rg=suche-biete
~#! tid=1116794740
Hi,

ich scheine Informationen vergessen zu haben :)
Es sollte moeglich sein, eine Datei vom Zeitpunkt X herzustellen, auch wenn
diese danach geaendert wurde. Ich weiss, dass dies einen relativ hohen
Speicheraufwand erfordert, aber das ist nicht das Problem...

Ama*

-----------------------------------------------------------------------------



Re: Re: Backup-Skript fuer Linux gesucht (Catweazle, 23. Mai 2005, 08:47:59):
~#! rn=Amaryllis rt=1116797632 rg=suche-biete
~#! tid=1116794740
ADSM bzw. TSM. Von IBM und daher nicht umsonst. Aber gut. Und fuer dich
ueberladen. Aber vielleicht bezahlts dein Chef ja :)

YTC

-----------------------------------------------------------------------------



Re: Backup-Skript fuer Linux gesucht (Zook, 23. Mai 2005, 10:53:26):
~#! rn=Amaryllis rt=1116794740 rg=suche-biete
~#! tid=1116794740
Es gibt fuer Subversion auch so einen Aufsatz, der fuer einen Verzeichnis-
baum staendig die bisherigen Versionen nachhaelt ohne dass man da ein- und
auschecken muss. Hab aber wieder vergessen, wie das heisst, findest Du sicher
unter http://subversion.tigris.org.

Zook.

-----------------------------------------------------------------------------



Re: Re: Backup-Skript fuer Linux gesucht (Zook, 23. Mai 2005, 11:01:06):
~#! rn=Zook rt=1116838406 rg=suche-biete
~#! tid=1116794740
Vll. hier:
http://www.unixboard.de/vb3/showthread.php?t=1276
http://subversion.tigris.org/webdav-usage.html

Aber keine Ahnung, obs das ist, was Du suchst, ich kenn mich mit diesem
Anwendungsfall von Subversion nicht aus.

Zook.

-----------------------------------------------------------------------------



dvd-portable (Gabylon, 23. Mai 2005, 13:45:26):
hallo,

ich bin auf der suche nach einem tragbaren dvd-player, der vor allem
die faehigkeit besitzen sollte, video-signale aus einem camcorder per
firewire sofort sichtbar werden zu lassen. gibt es sowas ueberhaupt?
geld spielt erstmal keine rolle.

gab

-----------------------------------------------------------------------------



Re^3: Backup-Skript fuer Linux gesucht (Gralkor, 23. Mai 2005, 18:08:04):
~#! rn=Zook rt=1116838866 rg=suche-biete
~#! tid=1116794740
http://www.tensor.de

Die haben sowas geschrieben, nicht zu 100% das, was Du willst, aber die
Anpassung sollte nicht so schwer sein...

G.

-----------------------------------------------------------------------------



Re^4: Backup-Skript fuer Linux gesucht (Amaryllis, 23. Mai 2005, 18:12:24):
~#! rn=Gralkor rt=1116864484 rg=suche-biete
~#! tid=1116794740
Hm, wenn Du mit "nicht zu 100% das, was Du willst" meinst, dass das Tool von
Tensor fuer Win* ist, waehrend ich was fuer Linux suche, koenntest Du Recht
haben :)

Ich stricke mir derzeit ein eigenes Skript...

Ama*

-----------------------------------------------------------------------------



Re^5: Geht vorher auf's Klo... (Gloinson, 25. Mai 2005, 01:16:21):
~#! on=Householder ot=1116878046 og=www
~#! rn=Muadib rt=1116869518 rg=www
~#! tid=1115398305
ich glaub amanda kann was du suchst. Da kann man zumindest die Dateien von
einem gegebenen Zeitpunkt (an dem ein backup stattfand) wiederherstellen
(amrecover+setdate). Die gesicherten Dateien liegen halt nicht mit
Zeitstempeln in einem verzeichnisbaum rum sondern zusammen mit einem index in
einem dump. 

-----------------------------------------------------------------------------



Re^5: Backup-Skript fuer Linux gesucht (Gralkor, 25. Mai 2005, 05:12:17):
~#! rn=Amaryllis rt=1116864744 rg=suche-biete
~#! tid=1116794740
sehe nur gerade, dass sie nur das Windows-Ding in der Werbung haben.
GIbt es aber auch fuer Linux (weiss ich zufaellig ziemlich genau ^^)
G.

-----------------------------------------------------------------------------



Glasebenenzeugs (Mesirii, 26. Mai 2005, 11:32:49):
Wer mein Glasebenezeugs beim Tentakelmonster aufgelesen hatte (sorry hatte
disconnect) moege sich bitte melden. Wenigstens eine komplette Hose (waren 2).
haette ich schon gern wieder.

Danke Mesi

-----------------------------------------------------------------------------



Suche Liedtext (Darklor, 31. Mai 2005, 23:59:06):
Kennt oder hat hier jemand zufaellig den Text und/oder die Uebersetzung von
"Mull of Kintyre" zur Verfuegung?

Darklor

-----------------------------------------------------------------------------



Re: Suche Liedtext (Maharet,  1. Jun 2005, 00:01:42):
~#! rn=Darklor rt=1117576746 rg=suche-biete
~#! tid=1117576746
http://www.lyricsdepot.com/Paul_mccartney/mull-of-kintyre.html

google ist dein Freund.

-----------------------------------------------------------------------------



Re: Re: Suche Liedtext (Darklor,  1. Jun 2005, 10:42:57):
~#! rn=Maharet rt=1117576902 rg=suche-biete
~#! tid=1117576746
Ah, Danke! - Mein Freund war google nich - da die deutschen Anbieter von
Liedtexten anscheinend alle eine Abmahnung von einer Berliner Kanzlei bekommen
haben... *sigh* 

Darklor

-----------------------------------------------------------------------------



Re^3: Suche Liedtext (Maharet,  1. Jun 2005, 13:24:24):
~#! rn=Darklor rt=1117615377 rg=suche-biete
~#! tid=1117576746
Dein Google kann nur deutsch?

-----------------------------------------------------------------------------



Re^4: Suche Liedtext (Darklor,  1. Jun 2005, 15:18:47):
~#! rn=Maharet rt=1117625064 rg=suche-biete
~#! tid=1117576746
Das nich - aber mein google war vor allem auf der Jagd nach dem deutschen Text

Darklor

-----------------------------------------------------------------------------



Re^5: Suche Liedtext (Wurzel,  1. Jun 2005, 15:21:57):
~#! rn=Darklor rt=1117631927 rg=suche-biete
~#! tid=1117576746
fuer mull of kintyre gibt es einen deutschen text? was es nicht alle gibt...

-----------------------------------------------------------------------------



Re^6: Suche Liedtext (Kellybundy,  1. Jun 2005, 16:41:25):
~#! rn=Wurzel rt=1117632117 rg=suche-biete
~#! tid=1117576746
Ja, wenns dazu nen deutschen Text gibt, dann kommt bis naechste Woche auch die
Tekkno-Version davon heraus *schauder*

Bloe^Hndchen

-----------------------------------------------------------------------------



Re^7: Suche Liedtext (Maharet,  1. Jun 2005, 16:42:13):
~#! rn=Kellybundy rt=1117636885 rg=suche-biete
~#! tid=1117576746
Dein Google ist aber merkwuerdig. Oder lag es vielleicht doch an dir? ;)

-----------------------------------------------------------------------------



Re^8: Suche Liedtext (Kellybundy,  1. Jun 2005, 16:46:15):
~#! rn=Maharet rt=1117636933 rg=suche-biete
~#! tid=1117576746
Mein google, Dein google. Google ist fuer alle da ! :) Ausserdem war's, wenn
ueberhaupt, Darklor's google

Bloe^Hndchen

-----------------------------------------------------------------------------



Re^9: Suche Liedtext (Maharet,  1. Jun 2005, 16:47:19):
~#! rn=Kellybundy rt=1117637175 rg=suche-biete
~#! tid=1117576746
Dann lag es wohl an ihm.

-----------------------------------------------------------------------------



Re^10: Suche Liedtext (Kellybundy,  1. Jun 2005, 16:48:17):
~#! rn=Maharet rt=1117637239 rg=suche-biete
~#! tid=1117576746
Klar Ich war es nicht, Scheff, ich bin unschuldig wie immer! worum gehts denn
ueberhaupt? ;-P

Bloe^Hndchen

-----------------------------------------------------------------------------



Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 14:42:39):
Update:
Bei Woole gibt es Liegen und Haengematten (mit Geruest) fuer 20 Euro-Glocken.
Die Liege scheint okay zu sein, Haengematte nicht probiert.

Bei "Kaiser's" (ja, apostrophiert) schoene Komplettausruestung Vollholz fuer
aber dann
richtiges Geld (>200EUR).
Die Stuehle bei Woole sind Schrott; machen keinen guten Eindruck.

-----------------------------------------------------------------------------



Re: Balkon- u. Gartenzeuch (Zook,  8. Jun 2005, 15:38:09):
~#! rn=Cornholio rt=1118234559 rg=suche-biete
~#! tid=1118234559
Und was suchst oder bietest Du nun?

Zook.

-----------------------------------------------------------------------------



Re: Re: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 15:38:47):
~#! rn=Zook rt=1118237889 rg=suche-biete
~#! tid=1118234559
Ich suche, das ging unter, da der Artikel wieder geloescht wurde,
Gartenmoebel.
Und da ich das tue und glaube, dass auch andere daran interessiert sein
koennten, poste ich hier updates :)

-----------------------------------------------------------------------------



Re^3: Balkon- u. Gartenzeuch (Darklor,  8. Jun 2005, 15:40:07):
~#! rn=Cornholio rt=1118237927 rg=suche-biete
~#! tid=1118234559
Schon mal bei eBay gesucht?

Darklor

-----------------------------------------------------------------------------



Re^3: Balkon- u. Gartenzeuch (Croft,  8. Jun 2005, 15:40:53):
~#! rn=Cornholio rt=1118237927 rg=suche-biete
~#! tid=1118234559
Geloescht wurde der Artikel nicht.  Er ist nur ins Archiv gefallen.

Croft

-----------------------------------------------------------------------------



Re^4: Balkon- u. Gartenzeuch (Anthea,  8. Jun 2005, 15:40:55):
~#! rn=Darklor rt=1118238007 rg=suche-biete
~#! tid=1118234559
Beim Dehner gibt es ganz nette recht robuste Gartenstuehle. Nicht ganz billig,
aber dafuer halten die halt auch was aus.

-----------------------------------------------------------------------------



Re^5: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 15:42:08):
~#! rn=Anthea rt=1118238055 rg=suche-biete
~#! tid=1118234559
Archiviert und hier jetzt nicht mehr so zugaenglich :)

Dehner gibt es hier leider nicht.

-----------------------------------------------------------------------------



Re^5: Balkon- u. Gartenzeuch (Maharet,  8. Jun 2005, 15:43:20):
~#! rn=Anthea rt=1118238055 rg=suche-biete
~#! tid=1118234559
Wir haben im Kaufland zwei Stuehle und einen Tisch aus Alu gefunden, die Sitz-
und Lehnflaeche gewoben (oder so), also sehr angenehm zu sitzen und zu liegen.
Wasserfest und so leicht, dass auch ich Watschelkugel die Sachen ungefaehrdet
auf den Balkon und wieder runtertragen kann.  Und billig war es auch, aber den
genauen Preis muesstest du bei Mesirii erfragen.

-----------------------------------------------------------------------------



Re^6: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 15:44:36):
~#! rn=Maharet rt=1118238200 rg=suche-biete
~#! tid=1118234559
Aaah :)
Ohne rostgefaehrdete Teile die Moebel?
Hatte mal einen Unfall mit diesen Billigdingern, die
Rohrgerueste haben und da ist mir eine Rostsauce of den
Teppich gelaufen. Toll.

-----------------------------------------------------------------------------



Re^7: Balkon- u. Gartenzeuch (Maharet,  8. Jun 2005, 15:44:54):
~#! rn=Cornholio rt=1118238276 rg=suche-biete
~#! tid=1118234559
Soweit ich weiss ist Alu rostfrei.

-----------------------------------------------------------------------------



Re^8: Balkon- u. Gartenzeuch (Anthea,  8. Jun 2005, 15:45:26):
~#! rn=Maharet rt=1118238294 rg=suche-biete
~#! tid=1118234559
Eigentlich nicht, aber Aluminiumoxid ist wesentlich stabiler als Eisenoxid.

-----------------------------------------------------------------------------



Re^9: Balkon- u. Gartenzeuch (Grimmborn,  8. Jun 2005, 15:54:14):
~#! rn=Anthea rt=1118238326 rg=suche-biete
~#! tid=1118234559
Interessant, Du hast Teppich im Garten? Was es nicht alles gibt...
Und die (tatsaechlich vorhandene) groessere Stabilitaet des Aluminiumoxids
gegenueber dem Eisenoxid ist gar nicht mal der Punkt, der Trick ist die
Kristallstruktur: Eisenoxid ist voluminoeser als Eisen, Aluminium ist
voluminoeser als Aluminiumoxid. D.h. die Aluminiumoxidschicht schuetzt das
Aluminium vor weiteren Angriffen, waehrend das Eisenoxid aufbricht und den
Zugang zum darunterliegenden Eisen ermoeglicht. 

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^10: Balkon- u. Gartenzeuch (Anthea,  8. Jun 2005, 15:58:34):
~#! rn=Grimmborn rt=1118238854 rg=suche-biete
~#! tid=1118234559
Zudem noch gesagt werden kann, dass Eisenoxid als Katalysator fuer die
Verbindung von Eisen mit Sauerstoff wirkt.

-----------------------------------------------------------------------------



Re^11: Balkon- u. Gartenzeuch (Maharet,  8. Jun 2005, 16:06:58):
~#! rn=Anthea rt=1118239114 rg=suche-biete
~#! tid=1118234559
Ich muss auch ehrlich sagen, dass fuer mich Rost nur Eisenoxid ist.  Dass auch
andere Metalloxide als Rost bezeichnet werden, ist mir neu.

-----------------------------------------------------------------------------



Re^12: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 16:07:32):
~#! rn=Maharet rt=1118239618 rg=suche-biete
~#! tid=1118234559
Darum auch meine anfaengliche Frage nach moeglichen
Eisenteilen :)

-----------------------------------------------------------------------------



Re^13: Balkon- u. Gartenzeuch (Maharet,  8. Jun 2005, 16:08:38):
~#! rn=Cornholio rt=1118239652 rg=suche-biete
~#! tid=1118234559
Ich hab da nix getestet, bisher ist aber noch kein Rost iS von rotem Eisenoxid
zu erkennen. Das ist auch irgendwie beschichtet, glaub ich.

-----------------------------------------------------------------------------



Re^14: Balkon- u. Gartenzeuch (Anthea,  8. Jun 2005, 16:10:59):
~#! rn=Maharet rt=1118239718 rg=suche-biete
~#! tid=1118234559
Hm, die Wikipedia behauptet auch, dass "Rost" nur bei Eisen existiert.
http://de.wikipedia.org/wiki/Rost_%28Korrosion%29

-----------------------------------------------------------------------------



Re^15: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 16:12:11):
~#! rn=Anthea rt=1118239859 rg=suche-biete
~#! tid=1118234559
Ih, wikipedia :)
Aber auch andere Quellen behaupten dass, wie z.B. der Duden.

-----------------------------------------------------------------------------



Re^16: Balkon- u. Gartenzeuch (Arathorn,  8. Jun 2005, 20:11:10):
~#! rn=Cornholio rt=1118239931 rg=suche-biete
~#! tid=1118234559
Weiterer Nachteil bei Rost (i.S.v. Eisenoxid) ist, dass dieser ein mehrfach
hoeheres Volumen hat als das Eisen, aus dem er enstanden ist, und zudem
sehr leicht abblaettert.

Das fuehrt dann zu der beruehmten braunen Sosse, die dann ueberall rumsaut.
Bei Aluminiumoxid passiert das nicht, es bildet sich nur eine Passivierungs-
schicht und dann ists Feierabend.

Arathorn, nur mal so einwerfend.

-----------------------------------------------------------------------------



Re^17: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 20:13:10):
~#! rn=Arathorn rt=1118254270 rg=suche-biete
~#! tid=1118234559
Ich denke da an eloxiertes Alu fuer Gehaeuse, Kuehlkoerper (IR-Schwarzkoerper)
und dergleichen.

Andere Frage (da der Thread nun sowieso dahinlaeuft) zur "braunen Sosse"
(nein, nicht die NPD):
Wie kann man die durch sie verursachten Flecken in z.B. Textilien
schadlos entfernen?

-----------------------------------------------------------------------------



Re^18: Balkon- u. Gartenzeuch (Muadib,  8. Jun 2005, 20:13:42):
~#! rn=Cornholio rt=1118254390 rg=suche-biete
~#! tid=1118234559
grosszuegig ausschneiden

-----------------------------------------------------------------------------



Re^19: Balkon- u. Gartenzeuch (Cornholio,  8. Jun 2005, 20:14:56):
~#! rn=Muadib rt=1118254422 rg=suche-biete
~#! tid=1118234559
Tja, schadlos meinte ich und meinte auch nicht sowas :)
Aber ich hab schon mal ein komplettes Bett entsorgt nach so
einer kleinen Panne.
Das Bett sah aus wie vollgegekackt, dabei hatte ich doch meine Pampers an.

-----------------------------------------------------------------------------



Re^17: Balkon- u. Gartenzeuch (Kellybundy,  8. Jun 2005, 21:37:00):
~#! rn=Arathorn rt=1118254270 rg=suche-biete
~#! tid=1118234559
Bei Eisen gibbet den sogenannten 'Edelrost', und zwar Fe(II)-Sulfat. Das
schuetzt auch hervorragend, und der Bildung desselbigen kann man halt mit
geeigneten Chemikalien nachhelfen 'Brueniermittel'

Kelly, kackt mal wieder Korinthen. Oh wie niedlich! Sogar die Kack-Korinthen
sind blond *GG*

-----------------------------------------------------------------------------



Re^20: Balkon- u. Gartenzeuch (Maharet,  9. Jun 2005, 09:35:31):
~#! rn=Cornholio rt=1118254496 rg=suche-biete
~#! tid=1118234559
Also die www.hausfrauenseite.de behauptet - ich zitiere:

Rostflecken kann man mit heissem Zitronenwasser entfernen. Nach der Behandlung
muss man kraeftig nachspuelen

Ich erwarte deinen Bericht.

-----------------------------------------------------------------------------



Re^21: Balkon- u. Gartenzeuch (Zarniya, 10. Jun 2005, 10:12:02):
~#! rn=Maharet rt=1118302531 rg=suche-biete
~#! tid=1118234559
oder schuett Cola drauf.

-----------------------------------------------------------------------------



Re^22: Balkon- u. Gartenzeuch (Wurzel, 10. Jun 2005, 10:13:50):
~#! rn=Zarniya rt=1118391122 rg=suche-biete
~#! tid=1118234559
die in cola enthaltene orthophosphorsaeure ist meines wissens zu schwach, um
rost zu loesen. das gibt mehr sauerei als sonstwas.

-----------------------------------------------------------------------------



Re^23: Balkon- u. Gartenzeuch (Anthea, 10. Jun 2005, 10:30:39):
~#! rn=Wurzel rt=1118391230 rg=suche-biete
~#! tid=1118234559
Passt aber farblich ganz gut :)

-----------------------------------------------------------------------------



Re^24: Balkon- u. Gartenzeuch (Anthea, 10. Jun 2005, 10:41:43):
~#! rn=Anthea rt=1118392239 rg=suche-biete
~#! tid=1118234559
So, angeblich wird als effektives Rostschutzmittel "Bleimennige" empfohlen.
Dann soll es auch wirklich nicht mehr so schnell weiterrosten.

-----------------------------------------------------------------------------



Re^25: Balkon- u. Gartenzeuch (Cornholio, 10. Jun 2005, 14:06:18):
~#! rn=Anthea rt=1118392903 rg=suche-biete
~#! tid=1118234559
Oh. ja. Nett :)
Bleimenninge, Cola und Rost auf dem Bett.
Klingt entweder nach Fruehstueck in Las Vegas
oder nach Joseph Beuys ;)

Aber trotzdem vielen Dank fuer die vielen Tipps.
(Ging ja -- nach den Informationen ueber Gartenmoebel -- darum,
wie man solche Flecken wieder aus Textilien herauskriegt.
Inklusiv Geshundheitsaspekte.)
:)

-----------------------------------------------------------------------------



CarSound (Roland, 12. Jun 2005, 21:25:25):
jemand ahnung wo ich dieses radio noch bekomm.

Sony CDX-F7700

is irgendwie nirgens mehr zu finden .. dabei is die serie noch garnet so alt
:(

Ro*

-----------------------------------------------------------------------------



Re: CarSound (Ronda, 12. Jun 2005, 21:26:33):
~#! rn=Roland rt=1118604325 rg=suche-biete
~#! tid=1118604325
Hm. Warum brauchst Du denn exakt dieses Radio? Die einzige Idee, die ich so
haette, waere ebay. Aber da duerftest Du schon geschaut haben?

Ronda

-----------------------------------------------------------------------------



Re: CarSound (Grimmborn, 12. Jun 2005, 21:27:35):
~#! rn=Roland rt=1118604325 rg=suche-biete
~#! tid=1118604325
Ist Dein ebay kaputt? Ich hab da durch reines pasten einen Treffer. Ungeachtet
der Tatsache, dass viele Leute nicht in der Lage sind ihre Artikel in der
Titelzeile nicht anstaendig zu benennen.

GdA

-----------------------------------------------------------------------------



wg-stress wegen telefon :) (Vector, 13. Jun 2005, 16:39:34):
hiho

wohne hier in einer 3er wg mit gemeinsamem telefon das 
fuer alle zugaengig im flur steht. nun gibts stress
wegen einer rechnung:
der verursacher behauptet einfach er hat das nicht
telefoniert und siehst die sache als erledigt an.
ganz so erledigt ist das fuer mich leider nicht, weil
auf meinen namen das telefon laeuft und somit die
zeche bei mir haengen bleibt.
sowohl ich als auch der 3te mitbewohner sind uns sicher
das der offene posten von dem uebeltaeter verursacht wurde
(ok das sicher sein wird nicht viel helfen).
gibt es iiiiirgend eine moeglichkeit das geld von ihm
einzufordern? gleich gross mit anwalt wird wohl wenig
helfen?!

-----------------------------------------------------------------------------



Re: wg-stress wegen telefon :) (Vector, 13. Jun 2005, 16:40:24):
~#! rn=Vector rt=1118673574 rg=suche-biete
~#! tid=1118673574
bitte auch nur ernstgemeinte meinungen
fuer schmarrn und gag hab ich derzeit keine
nerven, geht um einen fast 4stelligen betrag

-----------------------------------------------------------------------------



Re: wg-stress wegen telefon :) (Wurzel, 13. Jun 2005, 16:41:00):
~#! rn=Vector rt=1118673574 rg=suche-biete
~#! tid=1118673574
ich haette eine menge ratschlaege dafuer, wie du das in zukunft verhindern
koenntest, aber das ist wahrscheinlich nicht das, was du willst.

-----------------------------------------------------------------------------



Re: Re: wg-stress wegen telefon :) (Grimmborn, 13. Jun 2005, 16:46:55):
~#! rn=Wurzel rt=1118673660 rg=suche-biete
~#! tid=1118673574
Ich haette auch eine Menge Ratschlaege wie Du das Geld von ihm einfordern
koenntest, siehe z.B. www.russisch-inkasso.de. Ob Du das allerdings willst...

GdA

-----------------------------------------------------------------------------



Re: wg-stress wegen telefon :) (Gabylon, 13. Jun 2005, 16:51:15):
~#! rn=Vector rt=1118673574 rg=suche-biete
~#! tid=1118673574
wenn das tel auf deinen namen laeuft, ist es wahrscheinlich, dass auch die
wohnung unter deinem namen laeuft und du mit den anderen beiden einen
(hoffentlich) schriftlichen untermietvertrag hast.

wenn das der fall ist, ist es wahrscheinlich auch so, dass der poese
purche dir mietkaution geben musste, ueber die du verfuegen kannst?

waere so mein erster gedanke. weiss aber nicht, ob das auch juristisch
korrekt waere oder ob du hinterher doch der doppelt dumme waerst, weil
du dich an seinem geld vergangen hast...

gab

-----------------------------------------------------------------------------



Re: Re: wg-stress wegen telefon :) (Vector, 13. Jun 2005, 16:55:46):
~#! rn=Gabylon rt=1118674275 rg=suche-biete
~#! tid=1118673574

jeder der drei bewohner hat einen eigenen mietvertrag
mit dem hauseigentuemer und an diesen extra kaution
bezahlt.

mit dem hausbesitzer komm ich allerdings gut aus 
und hab mir schon ueberlegt das ich das telefon
einfach auf ihn ueberschreibe und ihm uebergebe mit
den offenen betraegen und er sich die von der kaution
von dem seppel holen soll. nur glaub ich kaum das
das zulaessig ist weils ja schwer (gar nicht) nach-
zuweisen ist das er telefoniert hat

-----------------------------------------------------------------------------



Re^3: wg-stress wegen telefon :) (Gloinson, 13. Jun 2005, 16:58:26):
~#! rn=Vector rt=1118674546 rg=suche-biete
~#! tid=1118673574
Ich glaube das wird rechtlich ein witziges Kdudelmuddel, wenn die Kaution mit
dem Telefonvertrag in Zusammenhang kommen soll. Sieh es ein: Du hast verloren.
Schlepp ihn mit euer beides Aussagen vor Gericht (bzw. droh damit) und versuch
es einzuklagen - dann trennt besser auch die Wohnung - oder uebernimm es
zaehneknirschend - dann legt euch fuer die Zukunft ein PIN-Telefon zu oAe.


-----------------------------------------------------------------------------



Re^3: wg-stress wegen telefon :) (Ark, 13. Jun 2005, 16:58:28):
~#! rn=Vector rt=1118674546 rg=suche-biete
~#! tid=1118673574
Ruf die Nummer im Ausland an und lass Dir sagen, ob er mit ihm/ihr/es
telefoniert hat. Konfrontiere ihn damit unter Zeugen. Vielleicht nutzt das ja
:-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^4: wg-stress wegen telefon :) (Croft, 13. Jun 2005, 16:59:40):
~#! rn=Ark rt=1118674708 rg=suche-biete
~#! tid=1118673574
Ansonsten salominisch dritteln und das Leid verteilen.

Croft

-----------------------------------------------------------------------------



Re^4: wg-stress wegen telefon :) (Vector, 13. Jun 2005, 17:00:20):
~#! rn=Ark rt=1118674708 rg=suche-biete
~#! tid=1118673574
zaehneknirschend uebernehmen ist gleichbedeutend mit einer
bankrotterklaerung (finanziell gemeint) kein mud mehr auf
unbestimmte zeit etc.
die nummer im ausland ist eine service-nummer, wer schauen
will was da dran ist: 0190-771177, achtung teuer^^

-----------------------------------------------------------------------------



Re^5: wg-stress wegen telefon :) (Maharet, 13. Jun 2005, 17:00:22):
~#! rn=Croft rt=1118674780 rg=suche-biete
~#! tid=1118673574
Vor Gericht wuerde ich nicht gehen, wenn ich keinen eindeutigen Beweis habe.
Zwei starke Vermutung auf Klaegerseite ueberzeugen keinen Richter.

-----------------------------------------------------------------------------



Re^6: wg-stress wegen telefon :) (Gloinson, 13. Jun 2005, 17:02:14):
~#! rn=Maharet rt=1118674822 rg=suche-biete
~#! tid=1118673574
Das habe ich vermutet. Insofern wird das einfach unmoeglich, ein frei
verfuegbares Telefon ist nunmal unueberwachtes Gemeingut. Da ist die
palominische Teilung noch am Besten. Und das PIN-Telefon in Zukunft. Sowas
bietet/bot die Telekotz doch frueher mal an, oder nicht?


-----------------------------------------------------------------------------



Re^7: wg-stress wegen telefon :) (Humni, 13. Jun 2005, 17:04:14):
~#! rn=Gloinson rt=1118674934 rg=suche-biete
~#! tid=1118673574
Koennt ihr nicht bei bestimmten Anrufen nachweisen, dass ihr um die Zeit gar
nicht im Haus wart? Nur so eine Idee.

Humni

-----------------------------------------------------------------------------



Re^8: wg-stress wegen telefon :) (Croft, 13. Jun 2005, 17:05:18):
~#! rn=Humni rt=1118675054 rg=suche-biete
~#! tid=1118673574
Dienstekennzahl 	Rufnummer 	Betreiber 
190	771177	Talkline GmbH & Co. KG

Adresse:
Talkline GmbH & Co. KG
Talkline-Platz 1
25337 Elmshorn

Quelle: http://www.regtp.de/

Croft

-----------------------------------------------------------------------------



Re^9: wg-stress wegen telefon :) (Wurzel, 13. Jun 2005, 17:14:48):
~#! rn=Croft rt=1118675118 rg=suche-biete
~#! tid=1118673574
hm, eine schweinkram-nummer? das wird nett :)

-----------------------------------------------------------------------------



Re^10: wg-stress wegen telefon :) (Zook, 13. Jun 2005, 17:16:06):
~#! rn=Wurzel rt=1118675688 rg=suche-biete
~#! tid=1118673574
mir is noch nicht klar, was es fuer ne nummer ist ;) erkennst du sie wieder,
wurzel?

zook.

-----------------------------------------------------------------------------



Re^11: wg-stress wegen telefon :) (Gloinson, 13. Jun 2005, 17:17:38):
~#! rn=Zook rt=1118675766 rg=suche-biete
~#! tid=1118673574
Telegate oder 0190 331 331 .... Liest man Abends an den Anzeigen auf der
Glotze. Hey, vor x Jahren war waehrend der Enterprise-Wiederholung des
naechstesn Pronowerbungszaehlen in MG in. 21 in einem Werbungsblock war unser
Rekord 1997.


-----------------------------------------------------------------------------



Re^11: wg-stress wegen telefon :) (Wurzel, 13. Jun 2005, 17:18:08):
~#! rn=Zook rt=1118675766 rg=suche-biete
~#! tid=1118673574
nein, aber eine talkline-0190er nummer legt sowas nahe. 
da gleich noch einen hinweis: erstmal die telefonrechnung nicht bezahlen.
die deutsche telekom treibt das geld dafuer nicht ein, das muss schon der
anbieter, in diesem fall talkline, selbst machen.
da kann man dann auch mal hinterfragen, ob talkline den anspruch beweisen
kann.

-----------------------------------------------------------------------------



Re^12: wg-stress wegen telefon :) (Zook, 13. Jun 2005, 17:22:49):
~#! rn=Wurzel rt=1118675888 rg=suche-biete
~#! tid=1118673574
guter tipp! daran hatte ich nicht gedacht, dass die das inkasso dafuer
gar nicht machen (auch wenn es nicht die telekom ist).

des weiteren sieht das bei talkline.de fast so aus, als handele es sich
um "handy"-services (zumindest bieten die sowas an). das machte dann den
nachweis ja relativ einfach... (einfacher als beim telefonsex ;)

zook.

-----------------------------------------------------------------------------



Re^6: wg-stress wegen telefon :) (Cornholio, 13. Jun 2005, 17:52:20):
~#! rn=Maharet rt=1118674822 rg=suche-biete
~#! tid=1118673574
Hast du denn schon gezahlt an die Telefongesellschaft?

-----------------------------------------------------------------------------



Re^7: wg-stress wegen telefon :) (Vector, 13. Jun 2005, 17:56:50):
~#! rn=Cornholio rt=1118677940 rg=suche-biete
~#! tid=1118673574
bisher ist nicht gezahlt es fehlen auch die finanziellen mittel

-----------------------------------------------------------------------------



Re^8: wg-stress wegen telefon :) (Cornholio, 13. Jun 2005, 17:57:24):
~#! rn=Vector rt=1118678210 rg=suche-biete
~#! tid=1118673574
Das ist schon mal besser als gezahlt.
Wie war das? Sittenwidrigkeit, Maha?
Muss man da zahlen, wenn da Teleporno dran sein sollte?

-----------------------------------------------------------------------------



Re^9: wg-stress wegen telefon :) (Maharet, 13. Jun 2005, 17:59:07):
~#! rn=Cornholio rt=1118678244 rg=suche-biete
~#! tid=1118673574
wenn das jemand genutzt hat, soll er auch zahlen. Wieso sittenwidrig?
Sittenwidrigkeit hat nichts mit Pfuibaba zu tun. Das koennte man allenfalls
bei Wucher annehmen. Aber weiss das mal nach ;)

-----------------------------------------------------------------------------



Re^10: wg-stress wegen telefon :) (Cornholio, 13. Jun 2005, 18:03:41):
~#! rn=Maharet rt=1118678347 rg=suche-biete
~#! tid=1118673574
Hm,
aber der Anwalt, den du dir evtl. nehmen musst (RS vorhanden?),
wird das vielleicht auf  138 BGB pruefen.
Auf jeden Fall wuerde ich erstmal die faellige Summe nicht
zahlen, hoechstens den Rest.
Vielleicht hat der Betreiber der 0190er einen Log?

-----------------------------------------------------------------------------



Re^11: wg-stress wegen telefon :) (Maharet, 13. Jun 2005, 18:33:30):
~#! rn=Cornholio rt=1118678621 rg=suche-biete
~#! tid=1118673574
Und was dann, wenn er es auf 138 BGB geprueft hat? Damit haste doch noch
nichts gewonnen.

-----------------------------------------------------------------------------



Re^12: wg-stress wegen telefon :) (Grimmborn, 13. Jun 2005, 20:10:01):
~#! rn=Maharet rt=1118680410 rg=suche-biete
~#! tid=1118673574
Klar, der Betreiber wird ein log haben. Da steht drin, dass von der Nummer
(also Vektors Nummer) zu der Uhrzeit an dem Datum solange telefoniert wurde.
"Und wieso fragen Sie da ueberhaupt nach, schliesslich haben wir Ihnen doch
die Rechnung gestellt, da steht das doch alles drin? Nu ueberweisen Sie bitte
dembald, sonst muessen wir leider mahnen." 
Was genau soll die Frage nach dem log also bringen?

GdA

-----------------------------------------------------------------------------



Re^13: wg-stress wegen telefon :) (Zook, 13. Jun 2005, 20:11:57):
~#! rn=Grimmborn rt=1118686201 rg=suche-biete
~#! tid=1118673574
log koennte auch bedeuten, dass die zB in ihrem kontakt- oder kunden-system
daten zu dem gespraech hinterlegt haben, die rueckschluesse auf den
menschen auf der anderen seite zulassen...

zook.

-----------------------------------------------------------------------------



Re^14: wg-stress wegen telefon :) (Maharet, 13. Jun 2005, 20:13:11):
~#! rn=Zook rt=1118686317 rg=suche-biete
~#! tid=1118673574
Tonbaender mit der Stimme des Anrufers? Oder was koennte hier sonst helfen,
den boesen Buben zu enttarnen?

-----------------------------------------------------------------------------



Re^14: wg-stress wegen telefon :) (Arathorn, 13. Jun 2005, 20:13:39):
~#! rn=Zook rt=1118686317 rg=suche-biete
~#! tid=1118673574
Ist es denn sicher, dass die Nummer keine Dialer-Nummer ist/war?

Arathorn.

-----------------------------------------------------------------------------



Re^15: wg-stress wegen telefon :) (Zook, 13. Jun 2005, 20:13:55):
~#! rn=Maharet rt=1118686391 rg=suche-biete
~#! tid=1118673574
Sexuelle Vorlieben? ;)

Zook.

-----------------------------------------------------------------------------



Re^15: wg-stress wegen telefon :) (Cassandra, 13. Jun 2005, 20:14:29):
~#! rn=Maharet rt=1118686391 rg=suche-biete
~#! tid=1118673574
Koennt Ihr nachvollziehen wer von euch zu den fraglichen Zeiten wo war?


-----------------------------------------------------------------------------



Re^16: wg-stress wegen telefon :) (Grimmborn, 13. Jun 2005, 20:15:35):
~#! rn=Cassandra rt=1118686469 rg=suche-biete
~#! tid=1118673574
"Hmm, lass mich nachdenken... ich glaube, ich hab zu der fraglichen Zeit
telefoniert. Mit meiner... aeh... Freundin..."

GdA

-----------------------------------------------------------------------------



Re^16: wg-stress wegen telefon :) (Gloinson, 13. Jun 2005, 20:15:45):
~#! rn=Cassandra rt=1118686469 rg=suche-biete
~#! tid=1118673574
Au ja, Alibi. "Herr Richter, die beiden Mitbewohner sind homosexuell und
wuerden solche Nummern nicht anrufen." "Aber dort gibt es auch Gay-Nummern."
"Mist."


-----------------------------------------------------------------------------



Re^17: wg-stress wegen telefon :) (Cassandra, 13. Jun 2005, 20:16:37):
~#! rn=Gloinson rt=1118686545 rg=suche-biete
~#! tid=1118673574
nein, das wuerde kaum ueberzeugend sein, aber Vorlesungen mit
anwesenheitsliste, etc vielleicht schon eher

-----------------------------------------------------------------------------



Re^18: wg-stress wegen telefon :) (Zook, 13. Jun 2005, 20:16:59):
~#! rn=Cassandra rt=1118686597 rg=suche-biete
~#! tid=1118673574
ich glaube, die anrufe wurden nachts getaetigt ;)

zook.

-----------------------------------------------------------------------------



Re^19: wg-stress wegen telefon :) (Cornholio, 13. Jun 2005, 21:07:23):
~#! rn=Zook rt=1118686619 rg=suche-biete
~#! tid=1118673574
Jupp,
und ich dachte bei Log auch eher an eventuelle
"Gespraechsnotizen".

-----------------------------------------------------------------------------



Re^20: wg-stress wegen telefon :) (Gloinson, 13. Jun 2005, 21:08:49):
~#! rn=Cornholio rt=1118689643 rg=suche-biete
~#! tid=1118673574
Also doch sexuelle Vorlieben?


-----------------------------------------------------------------------------



Re^21: wg-stress wegen telefon :) (Maharet, 13. Jun 2005, 21:10:23):
~#! rn=Gloinson rt=1118689729 rg=suche-biete
~#! tid=1118673574
So aergerlich die Situation ist - sich deswegen Ueberwachen und Abhoeren mit
Speichern von Telefongespraechen zu wuenschen, halte ich fuer uebertrieben ;)

-----------------------------------------------------------------------------



Re^22: wg-stress wegen telefon :) (Kiria, 13. Jun 2005, 21:11:30):
~#! rn=Maharet rt=1118689823 rg=suche-biete
~#! tid=1118673574
Wobei das abhoeren anscheinend interessant werden koennte - besonders was
sexuelle Vorlieben angeht.

-----------------------------------------------------------------------------



Re^22: wg-stress wegen telefon :) (Grimmborn, 13. Jun 2005, 21:11:46):
~#! rn=Maharet rt=1118689823 rg=suche-biete
~#! tid=1118673574
Oh, fuer unseren Innenminister waere das noch sehr gemaessigt. Der kann sich
noch ganz andere Wuensche vorstellen.

GdA

-----------------------------------------------------------------------------



Re^22: wg-stress wegen telefon :) (Zook, 13. Jun 2005, 21:56:05):
~#! rn=Maharet rt=1118689823 rg=suche-biete
~#! tid=1118673574
bei banken o.ae. ist das ueblich... ;) zook.

-----------------------------------------------------------------------------



Re: Re: CarSound (Roland, 14. Jun 2005, 15:42:18):
~#! rn=Grimmborn rt=1118604455 rg=suche-biete
~#! tid=1118604325
Klaa hab ich geschaut. lustigerweise hatte ich da nur auslaendische kontakte,
mit unter nen italiaehner ;) der wollte da 400 euronen haben fuer, und dann
noch einer der hat noch mit Pfund gerechnet ... von deutscher seite her nur
einer und da war schon ne weile eingebaut und keine garantie, also n privater.
da hab ich schlechte erfahrungen gemacht bei solchen sachen, n online-store
hab ich noch keinen gefunden wo das anbietet.  naja mal weiter forschen

Ro*

-----------------------------------------------------------------------------



Re^3: CarSound (Grimmborn, 14. Jun 2005, 15:48:45):
~#! rn=Roland rt=1118756538 rg=suche-biete
~#! tid=1118604325
Vorgestern gabs einen der das Teil neu&OVP im Sofortkauf verkauft hat. 34 von
34 verfuegbar. Momentan bietet einer ein Demogeraet an. Beide in Deutschland.
Sei halt ein bischen geduldiger und probiers immer wieder. 

GdA

-----------------------------------------------------------------------------



Re: Re: wg-stress wegen telefon :) (Kellybundy, 14. Jun 2005, 20:36:49):
~#! rn=Gabylon rt=1118674275 rg=suche-biete
~#! tid=1118673574
Jepp das ist IMHO juristisch korrekt, habe ich schon mal so gehandhabt

-----------------------------------------------------------------------------



Re^3: wg-stress wegen telefon :) (Kellybundy, 14. Jun 2005, 20:43:23):
~#! rn=Kellybundy rt=1118774209 rg=suche-biete
~#! tid=1118673574
Wobei ich bei der beweislage auf der sicheren seite war *hust*

-----------------------------------------------------------------------------



Re^4: CarSound (Roland, 16. Jun 2005, 17:34:46):
~#! rn=Grimmborn rt=1118756925 rg=suche-biete
~#! tid=1118604325
) okok geduld is bei sowat net meine staerke, gleich ma schaun
 . :)

-----------------------------------------------------------------------------



Gleisanordnung Kassel HBF (Cassandra,  7. Jul 2005, 13:11:53):
Kann mir zufaellig einer sagen wie in kassel HBf die gleise angeordnet sind
oder wie ich das rausfinden kann? Speziell geht es um die gleise 6 und 7, ist
das ein bahnsteig?

Cassy

P.s. nein auf der bahnhomepage scheint es sowas nicht zu geben

-----------------------------------------------------------------------------



Re: Gleisanordnung Kassel HBF (Zook,  7. Jul 2005, 13:15:25):
~#! rn=Cassandra rt=1120734713 rg=suche-biete
~#! tid=1120734713
Ich weiss nur noch, dass es ein Sackbahnhof ist. Vll. erkennst Du auf diesen
Bildern etwasd:
http://www.gleis4.de/html/kassel_hbf.html

Zook.

-----------------------------------------------------------------------------



Re: Re: Gleisanordnung Kassel HBF (Gloinson,  7. Jul 2005, 13:22:49):
~#! rn=Zook rt=1120734925 rg=suche-biete
~#! tid=1120734713
Kopfbahnhof. Woltle ich auch sagen :)


-----------------------------------------------------------------------------



Re^3: Gleisanordnung Kassel HBF (Cassandra,  7. Jul 2005, 13:24:35):
~#! rn=Gloinson rt=1120735369 rg=suche-biete
~#! tid=1120734713
Kopfbahnhof weiss ich. mir gehts darum wie weit das zwischen den gleisen ist
und ob ich den umstieg demnach in der zeit schaffen kann (mit raedern). Die
Bilder von zook geben da schon gute hinweise das das ein bahnsteig sein
muesste.

Danke

Cassy

-----------------------------------------------------------------------------



Re^4: Gleisanordnung Kassel HBF (Gloinson,  7. Jul 2005, 13:26:51):
~#! rn=Cassandra rt=1120735475 rg=suche-biete
~#! tid=1120734713
Eh spekulativ. Nicht die Dauer deiner 60 Sekunden auf Pedale-rumrollern
begrenzt deine Aussicht auf Erfolg sondern die Verspaetung des Zuges bzw. die
Prioritaet des anderen. Steigst du von hoeherrangigem Zug in niederrangigen um
und sind 3 Minuten zugesichert, dann wartet der oft ... wenn du beim Schaffner
Bescheid sagst.
Mit Fahrrad umsteigen geht eh schneller als mit sonstigem Gepaeck. Alles auf
aufs Rad und Ruecken und losrollern.


-----------------------------------------------------------------------------



Re^5: Gleisanordnung Kassel HBF (Zook,  7. Jul 2005, 13:28:53):
~#! rn=Gloinson rt=1120735611 rg=suche-biete
~#! tid=1120734713
Kassel Hauptbahnhof ist auch eher "gemuetlich". Wundert mich, dass man da
in irgendwas umsteigen will/kann. 

Zook.

-----------------------------------------------------------------------------



Re^6: Gleisanordnung Kassel HBF (Cassandra,  7. Jul 2005, 13:30:03):
~#! rn=Zook rt=1120735733 rg=suche-biete
~#! tid=1120734713
mit wochenendticket kann/muss man da umsteigen wenn man von ost nach west
will. zum beispiel von Halle zur Party
 Cassy

-----------------------------------------------------------------------------



Re^7: Gleisanordnung Kassel HBF (Gloinson,  7. Jul 2005, 13:34:59):
~#! rn=Cassandra rt=1120735803 rg=suche-biete
~#! tid=1120734713
Ja, nach meinem Google Earth liegen Hoelle Saale, Hattingen und Kassel fast
auf einer Linie ;)


-----------------------------------------------------------------------------



Re^7: Gleisanordnung Kassel HBF (Zook,  7. Jul 2005, 14:23:35):
~#! rn=Cassandra rt=1120735803 rg=suche-biete
~#! tid=1120734713
Ah. Und ich haett gedacht, da steigt man in KS-Wilhelmshoehe um. Zook.

-----------------------------------------------------------------------------



Re^5: Gleisanordnung Kassel HBF (Kellybundy, 10. Jul 2005, 22:07:06):
~#! rn=Gloinson rt=1120735611 rg=suche-biete
~#! tid=1120734713
Ausserdem ist der ehemalige HB von Kassel jetzt nur noch fuer den
Regionalverkehr zustaendig und Wilhelmshoehe der eigentliche Hauptbahnhof.
Will sagen: am 'alten' HB wartet nix, wenn du zu spaet kommst, haste gelitten.

-----------------------------------------------------------------------------



S: Roemerglaeser (Orktoeter,  4. Aug 2005, 20:49:22):
 Als Beispiel:
http://homepage.univie.ac.at/bernd.jaeger/img_2623.jpg

Wer also noch so etwas herumstehen hat und bereit ist, es abzugeben der
schicke mir bitte eine mail....

Je aufwaendiger und filigraner um so lieber.

-----------------------------------------------------------------------------



Zelt (Catweazle,  5. Aug 2005, 13:26:28):
Wenn ich ein Zelt haben wollte. So fuer grosse Menschen geeignet. Auch fuer
mehr als einen. Mit Profivorzuegen eines Zeltes. 

Was fuer eins wuerde ich dann am besten kaufen?

YTC

-----------------------------------------------------------------------------



Re: Zelt (Cassandra,  5. Aug 2005, 13:28:48):
~#! rn=Catweazle rt=1123241188 rg=suche-biete
~#! tid=1123241188
ich wuerd auf jeden fall eines mit Aussengestaenge emphehlen. Also wo das
Innenzelt eingehaengt wird. Da auch im Regen aufbaubar ohne das drinnen alles
Nass wird.

Ansonsten Achte auf die Liegeflaeche und verlass dich nicht auf die
Personenangaben. 100 * 215 soll  bei manchen fuer 2 reichen, keine ahnung wie
die das machen.

Cassy, mit ihrem Zelt sehr zufrieden

-----------------------------------------------------------------------------



Re: Zelt (Grimmborn,  5. Aug 2005, 13:40:52):
~#! rn=Catweazle rt=1123241188 rg=suche-biete
~#! tid=1123241188
Du stellst da echt Fragen... Preisvorstellung? Einsatzzweck? Was genau heisst
fuer Dich "Zelt fuer grosse Menschen"?
Fuer mich ist aktuell das Nonplusultrazelt das Saivo von Bo Hilleberg, das ist
der Geodaet von denen. Wenn ich die 1 kEUR uebrig gehabt haette wuerde ich es
mir gekauft haben. Dein beabsichtigter Einsatzzweck kann sich von meinem
natuerlich deutlich unterscheiden. 

GdA

-----------------------------------------------------------------------------



Re: Re: Zelt (Zook,  5. Aug 2005, 13:53:41):
~#! rn=Grimmborn rt=1123242052 rg=suche-biete
~#! tid=1123241188
Hilleberg-Zelte sind fuer viele Einsatzzwecke mit Sicherheit eine ganz grosse
Wahl. Gutes Gewicht, schoen dicht, sehr durchdacht, leicht aufzubauen. Zook.

-----------------------------------------------------------------------------



Re^3: Zelt (Catweazle,  5. Aug 2005, 13:55:51):
~#! rn=Zook rt=1123242821 rg=suche-biete
~#! tid=1123241188
Ich glaube das faellt dann preislich deutlich aus dem Rahmen. :/

Anwendungsgebiete hab ich extra weggelassen, weil ich mich da grad gar nicht
einschraenken will. Aktuell brauchen wir eins fuer nen Festival.

YTC

-----------------------------------------------------------------------------



Re^4: Zelt (Cassandra,  5. Aug 2005, 13:57:59):
~#! rn=Catweazle rt=1123242951 rg=suche-biete
~#! tid=1123241188
Ich denke das das schon ne Rolle spielt.
Grad fuer ein festval wuerd ich eher ein guenstiges Zelt nehmen, da das Risiko
das einer dir besoffen ueber die Leinen Feld doch deutlich hoeher ist als auf
einem normalem campingplatz.

Cassy

-----------------------------------------------------------------------------



Re^5: Zelt (Catweazle,  5. Aug 2005, 13:58:55):
~#! rn=Cassandra rt=1123243079 rg=suche-biete
~#! tid=1123241188
Ok, dann halt Karstadt, 100 Euro ... :)

YTC

-----------------------------------------------------------------------------



Re^5: Zelt (Grimmborn,  5. Aug 2005, 14:11:23):
~#! rn=Cassandra rt=1123243079 rg=suche-biete
~#! tid=1123241188
Schon fuer einen normalen Campingplatz bist Du mit Hilleberg & Co. falsch
bedient. Trekkingzelte brauchst Du wenn Du das Zelt den ganzen Tag
rumschleppst, es jeden Tag neu aufbauen musst und Du mit schlechtem Wetter
ohne Fluchtmoeglichkeit rechnen musst. 

GdA[ex-R] OHdMuBdE  

-----------------------------------------------------------------------------



Re^6: Zelt (Zook,  5. Aug 2005, 14:16:39):
~#! rn=Grimmborn rt=1123243883 rg=suche-biete
~#! tid=1123241188
Jo. Fuer mal eben aufn Zeltplatz und wenn man mit dem Wagen unterwegs ist und
eh Platz hat, tuts ein guenstiges Zelt ausm Kaufhaus. Es gibt da lustige 
Riesen-Zelte so mit zwei Innenzelten fuer bis zu vier Mann. Find ich ganz 
praktisch, da bekommt man viel Gepaeck unter. Zook.

-----------------------------------------------------------------------------



Re^6: Zelt (Miril,  5. Aug 2005, 14:17:25):
~#! rn=Catweazle rt=1123243135 rg=suche-biete
~#! tid=1123241188
Also das, was ich mir von meiner Tochter fuer die Party geliehen hatte, 
kriegst Du bei Ebay fuer 60 Euro (zumindest gabs das vor ner Woche noch).
Es war dicht, man kann drin stehen (ok, Du evtl. nicht), hat ein nettes 
Vorzelt, wo man gut drin sitzen kann und ist Noname.

Falls Du nicht weiss, wie es aussieht, guck auf die Partybilder.

Miril

-----------------------------------------------------------------------------



Re^7: Zelt (Gloinson,  5. Aug 2005, 14:17:59):
~#! rn=Zook rt=1123244199 rg=suche-biete
~#! tid=1123241188
Sehr viel teurer war unsere altbewaehrte Donnerkuppel auch nicht. Und zum eh
rumradeln im Sommer mit Option auf "bau auf, bau auf" bei Regen eignet sich
auch ein 20-Euro-Lidl-Zelt.


-----------------------------------------------------------------------------



Re^8: Zelt (Muadib,  5. Aug 2005, 15:27:13):
~#! rn=Gloinson rt=1123244279 rg=suche-biete
~#! tid=1123241188
immer wenn ich in deutschland zelten war (nur mg-parties) war ich vollkommen
zufrieden mit meinem 39-mark aldi zelt
so was gibt es wohl auch bald wieder

in australien hatte ich alexanderzelte von der dortigen armee.
die waren in der tat genial

-----------------------------------------------------------------------------



Verkaufe: Otherland (Zephyr, 16. Aug 2005, 13:51:12):
Verkaufe vollstaendige Taschenbuchausgabe (4 Baende)
von Tad Williams: Otherland
Bei Interesse bitte mail mit Gebot an mich :)

*knuddels*
C4

-----------------------------------------------------------------------------



Die siebte Saite (Mieze, 16. Aug 2005, 15:49:21):
Hallo,

ich suche den Film die siebte Saite (Originaltitel: "Tous les jours du monde")
als DVD. Hat den jemand?

Mieze - hat schon so viel ueber den Film gehoert und will ihn mal ansehen

-----------------------------------------------------------------------------



Grillstab ... (Gloinson, 29. Aug 2005, 13:32:56):
Wir haben hier eine MWG17-Grillmikrowelle. Einer der Quarzstaebe scheint
durchgebrannt/kaputt. Gibt es da irgendwo Ersatz fuer und wo/wie/was?


-----------------------------------------------------------------------------



Re: Grillstab ... (Catweazle, 29. Aug 2005, 13:36:32):
~#! rn=Gloinson rt=1125315176 rg=suche-biete
~#! tid=1125315176
Kauf dir ne neue. Kostet ab 30Euro.

YTC

-----------------------------------------------------------------------------



S: Zeichner (Amaryllis, 30. Aug 2005, 12:59:42):
Moin,

ich suche jemand, der ein bisschen zeichnen kann und bereit waere, mir ein
kleines Bildchen von einem Hamster zu malen, das ich als Logo fuer ein Projekt
benutzen moechte. Das Tierchen darf ruhig etwas comicmaessig/witzig angehaucht
sein, muss kein Fotorealismus sein :)

Wer sich berufen fuehlt, kann sich ja mal melden.

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Namensanregungen gesucht (Mesirii,  2. Sep 2005, 22:10:00):
Da Jungensnamen doof sind, brauch ich mal ein paar
Anregungen. Wie heisst ihr denn so?
Nein nicht alle Christian und Michael rufen.
Rasmus und Rochus weiss ich auch schon :)
Ihr wisst schon, nicht ganz so einen Sammelbegriff,
wohlklingend und zum Nachnamen Krischewski passend.

Ja ist nur fuer den Notfall, falls es doch wider
Erwarten ein Junge werden sollte.

Danke

Mesi, in Papastimmung

-----------------------------------------------------------------------------



Re: Namensanregungen gesucht (Marcus,  2. Sep 2005, 22:16:30):
~#! rn=Mesirii rt=1125691800 rg=suche-biete
~#! tid=1125691800
Karsten.

Ciao, Marcus

-----------------------------------------------------------------------------



Re: Re: Namensanregungen gesucht (Moppi,  2. Sep 2005, 23:56:04):
~#! rn=Marcus rt=1125692190 rg=suche-biete
~#! tid=1125691800
Frank natuerlich;-)

Mopperl

-----------------------------------------------------------------------------



Re^3: Namensanregungen gesucht (Chagall,  3. Sep 2005, 00:00:28):
~#! rn=Moppi rt=1125698164 rg=suche-biete
~#! tid=1125691800
Horst oder Richard waere doch was...oder ein Doppelname. :)

MC

-----------------------------------------------------------------------------



Re^4: Namensanregungen gesucht (Nicolai,  3. Sep 2005, 08:30:09):
~#! rn=Chagall rt=1125698428 rg=suche-biete
~#! tid=1125691800
Nicolai. Daniel. Andreas.

-----------------------------------------------------------------------------



Re: Namensanregungen gesucht (Kellybundy,  3. Sep 2005, 13:28:26):
~#! rn=Mesirii rt=1125691800 rg=suche-biete
~#! tid=1125691800
Nichts von der Stange? hmmm. Meine Vorschlaege willst Du nicht wirklich hoeren
;-)


-----------------------------------------------------------------------------



Re: Re: Namensanregungen gesucht (Muadib,  3. Sep 2005, 14:09:43):
~#! rn=Kellybundy rt=1125746906 rg=suche-biete
~#! tid=1125691800
mua chan 

-----------------------------------------------------------------------------



Re^3: Namensanregungen gesucht (Vanion,  3. Sep 2005, 14:12:01):
~#! rn=Muadib rt=1125749383 rg=suche-biete
~#! tid=1125691800
so so so so :)
V*

-----------------------------------------------------------------------------



Re^4: Namensanregungen gesucht (Muadib,  3. Sep 2005, 14:12:15):
~#! rn=Vanion rt=1125749521 rg=suche-biete
~#! tid=1125691800
das war aber nu deutsch

-----------------------------------------------------------------------------



Re^5: Namensanregungen gesucht (Vanion,  3. Sep 2005, 14:14:49):
~#! rn=Muadib rt=1125749535 rg=suche-biete
~#! tid=1125691800
Weil Du nie die Betonungen mitliest. :)

V*

-----------------------------------------------------------------------------



Re^6: Namensanregungen gesucht (Muadib,  3. Sep 2005, 14:15:09):
~#! rn=Vanion rt=1125749689 rg=suche-biete
~#! tid=1125691800
so so

-----------------------------------------------------------------------------



Re^7: Namensanregungen gesucht (Gloinson,  3. Sep 2005, 19:08:36):
~#! rn=Muadib rt=1125749709 rg=suche-biete
~#! tid=1125691800
"Peter" tut immer. Im Zweifelsfall etwas abwandeln nach "Peer" oder "Pjotr"
oder "Piter" ;)
NeeemalehrlicheinVornamenbuch waere sinnvoller.

Seid ihr euch schon so sicher bei der naechsten Fabrikation?


-----------------------------------------------------------------------------



Re^8: Namensanregungen gesucht (Nyx,  3. Sep 2005, 20:21:00):
~#! rn=Gloinson rt=1125767316 rg=suche-biete
~#! tid=1125691800
http://namen.info/

-----------------------------------------------------------------------------



Re^9: Namensanregungen gesucht (Orktoeter,  4. Sep 2005, 00:05:32):
~#! rn=Nyx rt=1125771660 rg=suche-biete
~#! tid=1125691800
Also wichtig ist auf jeden Fall mehr als ein Vorname und als zweites dann der
political Korrektheit wegen ein Frauenname wie Maria ist immer gut! ;)

OrkT.

-----------------------------------------------------------------------------



Re^10: Namensanregungen gesucht (Darklor,  4. Sep 2005, 05:48:28):
~#! rn=Orktoeter rt=1125785132 rg=suche-biete
~#! tid=1125691800
Stefan is auch ab und zu mal ein beliebter Name... ;)
ansonsten Karl Heinz ;)

Darklor

-----------------------------------------------------------------------------



Re^11: Namensanregungen gesucht (Kellybundy,  4. Sep 2005, 18:05:04):
~#! rn=Darklor rt=1125805708 rg=suche-biete
~#! tid=1125691800
hmmmmm?
Was hast Du gegen den Namen Stefan, dass Du damit Muddernachwuchs
verunglimpfst? *GG*

-----------------------------------------------------------------------------



Re^12: Namensanregungen gesucht (Gloinson,  4. Sep 2005, 21:12:49):
~#! rn=Kellybundy rt=1125849904 rg=suche-biete
~#! tid=1125691800
Wie waere es mit Gerhard Angela ... so im Sinne des Jahres? ;)


-----------------------------------------------------------------------------



Re^13: Namensanregungen gesucht (Taranis,  4. Sep 2005, 21:18:19):
~#! rn=Gloinson rt=1125861169 rg=suche-biete
~#! tid=1125691800
Baeh. Gloinson, Du zeigst einen grausamen Geschmack. ;-)

Taranis

-----------------------------------------------------------------------------



Re^14: Namensanregungen gesucht (Gloinson,  4. Sep 2005, 21:19:35):
~#! rn=Taranis rt=1125861499 rg=suche-biete
~#! tid=1125691800
Ich bin nur durch das TV-Programm angeregt. Oder meinst du, Guido Gregor ist
erfolgreicher?


-----------------------------------------------------------------------------



Re^15: Namensanregungen gesucht (Taranis,  4. Sep 2005, 21:20:55):
~#! rn=Gloinson rt=1125861575 rg=suche-biete
~#! tid=1125691800
Willst Du, dass das Kind seine Eltern in 20 Jahren verklagt? ;-)

Taranis

-----------------------------------------------------------------------------



Re^16: Namensanregungen gesucht (Gloinson,  4. Sep 2005, 21:21:53):
~#! rn=Taranis rt=1125861655 rg=suche-biete
~#! tid=1125691800
Dann koennen die Eltern dann dem Kind kuendigen.


-----------------------------------------------------------------------------



Re^16: Namensanregungen gesucht (Maharet,  4. Sep 2005, 21:21:59):
~#! rn=Taranis rt=1125861655 rg=suche-biete
~#! tid=1125691800
In 20 Jahren wird keiner mehr von denen reden.

-----------------------------------------------------------------------------



Re^17: Namensanregungen gesucht (Taranis,  4. Sep 2005, 21:22:53):
~#! rn=Maharet rt=1125861719 rg=suche-biete
~#! tid=1125691800
Stimmt, hast recht. Also, dann steht Gerhard Angela Guido ja nix mehr im Weg.

Taranis

-----------------------------------------------------------------------------



Re^18: Namensanregungen gesucht (Gloinson,  4. Sep 2005, 21:25:11):
~#! rn=Taranis rt=1125861773 rg=suche-biete
~#! tid=1125691800
Wuerd ich nicht drauf wetten. Gerhard hat sich mit Kosovo und Irak-Nein einen
Platz in der Geschichte fuer "Wieder mitmischen in der Weltpolitik." gesichert
wie einst Erhard fuer Wiedererstarken der Wirtschaft.


-----------------------------------------------------------------------------



Re^11: Namensanregungen gesucht (Gabylon,  4. Sep 2005, 22:42:11):
~#! rn=Darklor rt=1125805708 rg=suche-biete
~#! tid=1125691800
stefan, daniel, andreas...

moensch! ihr habt ja mal richtig ausgefallene namen parat. respekt.

gab

-----------------------------------------------------------------------------



Kleine Eiszeit und Klimawandel (Zook,  4. Sep 2005, 23:24:50):
Ich suche ernsthaft Quellen, die mir als Nicht-Naturwissenschaftler 
berichten, wie die Kleine Eiszeit in die Klimamodelle des ICDingens
reinspielen und wie sie den menschlichen Einfluss auf die Temperatur-
erhoehung beeinflusst. 

Wenn da jemand was findet oder fachkundig ist, bin ich an einer Nachricht
sehr intereissert.

Zook.

-----------------------------------------------------------------------------



Re: Kleine Eiszeit und Klimawandel (Gloinson,  4. Sep 2005, 23:26:58):
~#! rn=Zook rt=1125869090 rg=suche-biete
~#! tid=1125869090
Schon mal das hier versucht:
http://de.wikipedia.org/wiki/Kleine_Eiszeit

"Eine geringere Aktivitaet der Sonne sowie ein verstaerkter Vulkanismus werden
als Ursache der Kleinen Eiszeit angesehen."
.... mit Vulkanen die in Frage kommen.

Wobei:
"Als die ersten Hinweise auf die Kleine Eiszeit offensichtlich wurden, ging
man von einem weltweiten Klimaphaenomen aus. Heute wird dies teilweise anders
gesehen. Auch eine Rekonstruktion der Temperaturen auf der Nordhalbkugel ist
nicht schluessig, so dass man nur noch von einer moderaten Abkuehlung auf der
Nordhalbkugel von weniger als 1 C spricht. Nach aktuellem Kenntnisstand war
die Kleine Eiszeit ein auf den Nordatlantikraum und benachbarte Regionen
begrenztes Phaenomen."


-----------------------------------------------------------------------------



Re: Re: Kleine Eiszeit und Klimawandel (Zook,  4. Sep 2005, 23:27:58):
~#! rn=Gloinson rt=1125869218 rg=suche-biete
~#! tid=1125869090
Ja, das las ich. Als ich nach der englischen Uebersetzung fuer Kleine Eiszeit
gesucht habe.
Zook.

-----------------------------------------------------------------------------



Re^12: Namensanregungen gesucht (Grimmborn,  5. Sep 2005, 12:24:49):
~#! rn=Gabylon rt=1125866531 rg=suche-biete
~#! tid=1125691800
Ich finde schon man sollte auch an die Initialen denken. Insofern wuerde
fuerden sich natuerlich entweder alle Namen auf "P" empfehlen wenns nur ein
Name sein soll, oder warum nicht sowas wie "Ferdinand Ulrich Carl"?

GdA

-----------------------------------------------------------------------------



Re^13: Namensanregungen gesucht (Montanus,  7. Sep 2005, 14:34:25):
~#! rn=Grimmborn rt=1125915889 rg=suche-biete
~#! tid=1125691800
Oder, um bei den Uebersetzern von Enid Blyton zu klauen, "Dietrich Ingbert
Carl".
Und warum gebt ihr nicht 20 Euro aus und schenkt dem Kind zur Geburt einen
gescheiten nachnamen?
Wir haetten beim Hochzeitsgeschenk vielleicht doch nicht die kaffeemaschine,
sondern eine Namensaenderungsurkunde schenken sollen. ;-)

-----------------------------------------------------------------------------



2xLidl-Bahnfahrkarte gueltig bis 3. Okt (Mesirii, 17. Sep 2005, 01:54:52):
aus aktuellem Anlass abzugeben, die enthalten jeweils
Hin- und Rueckfahrt. Beliebige Strecken in Dtl. und kosteten neu 49,90.
kontrolle

Wer die gebrauchen kann, bitte schnell melden!
Danke Mesi

-----------------------------------------------------------------------------



WLAN-Router fuer ISDN gesucht ... (Gloinson, 20. Sep 2005, 17:08:48):
Siehe Topic. Der eigentlich Suchende hat halt nur ISDN, moechte aber auch von
WLAN profitieren. Gibt es sowas als Fertigloesung oder muss er sich ein Modem
mit einem router koppeln?


-----------------------------------------------------------------------------



Suche Zahnersatz-Versicherung (Bambulko, 20. Sep 2005, 17:30:11):
Wie der Titel schon sagt suche ich eine gute Zahnersatz-Versicherung. Hat da
jemand schon Erfahrungen gesammelt? Worauf muss man achten?

Bambulko

-----------------------------------------------------------------------------



Re: Suche Zahnersatz-Versicherung (Zook, 20. Sep 2005, 19:01:54):
~#! rn=Bambulko rt=1127230211 rg=suche-biete
~#! tid=1127230211
Wenn Du eine hast, sag mir mal, welche es ist. Zook.

-----------------------------------------------------------------------------



Re: Re: Suche Zahnersatz-Versicherung (Gloinson, 20. Sep 2005, 19:03:18):
~#! rn=Zook rt=1127235714 rg=suche-biete
~#! tid=1127230211
Meine Signal-Iduna fuer die Brille macht das nur nebenbei zu 10% :)


-----------------------------------------------------------------------------



Re: WLAN-Router fuer ISDN gesucht ... (Ogo, 21. Sep 2005, 03:09:05):
~#! rn=Gloinson rt=1127228928 rg=suche-biete
~#! tid=1127228928
Draytek Vigor 2200W

-----------------------------------------------------------------------------



Re: Re: WLAN-Router fuer ISDN gesucht ... (Gloinson, 21. Sep 2005, 09:22:52):
~#! rn=Ogo rt=1127264945 rg=suche-biete
~#! tid=1127228928
140 Euro. Hui. Geht es auch preiswerter? ;) Der Mann will doch nur mit dem
Laptop um sein ISDN-Modem rennen koennen ohne ein Kabel einzustecken.


-----------------------------------------------------------------------------



Trafik bei Skype (Cassandra, 30. Sep 2005, 11:34:41):
Hat jemand Erfahrung mit Skype und kann mir sagen wieviel Trafik man da beim
telefonieren hat?
Danke
Cassy

-----------------------------------------------------------------------------



Re: Trafik bei Skype (Muadib, 30. Sep 2005, 13:09:33):
~#! rn=Cassandra rt=1128072881 rg=suche-biete
~#! tid=1128072881
ich hab erfahrungen mit skype, kann dir aber nix zu,m traffic sagen

-----------------------------------------------------------------------------



Re: Re: Trafik bei Skype (Kwaks, 30. Sep 2005, 13:18:27):
~#! rn=Muadib rt=1128078573 rg=suche-biete
~#! tid=1128072881
In der c't gab's mal einen Hotline-Artikel, in dem bei 100 Stunden im Monat
von ca. 150 MB die Rede war. Laut einem weiteren Artikel braucht Skype ca. 28
kbit/s pro Richtung.

-----------------------------------------------------------------------------



Re^3: Trafik bei Skype (Catweazle, 30. Sep 2005, 14:35:21):
~#! rn=Kwaks rt=1128079107 rg=suche-biete
~#! tid=1128072881
Offiziell 3-16kb/s:
http://support.skype.com/?_a=knowledgebase&_j=questiondetails&_i=151

Achtung, da steht "on average".

YTC

-----------------------------------------------------------------------------



Re: Trafik bei Skype (Ogo, 30. Sep 2005, 18:30:43):
~#! rn=Cassandra rt=1128072881 rg=suche-biete
~#! tid=1128072881
Dies ist der obligatorische "Skype is evil, don't use it"-Artikel.

-----------------------------------------------------------------------------



Re: Re: Trafik bei Skype (Muadib, 30. Sep 2005, 19:15:04):
~#! rn=Ogo rt=1128097843 rg=suche-biete
~#! tid=1128072881
zum indertreiben war es ein gutes erfuellungsmittel des boesen

-----------------------------------------------------------------------------



Re^3: Trafik bei Skype (Karima, 30. Sep 2005, 19:17:34):
~#! rn=Muadib rt=1128100504 rg=suche-biete
~#! tid=1128072881
Der Traffic haengt auch noch von ein paar Schen ab:
Hast du ne statische IP, wielange laesst Du Skype am Stueck laufen, wieviel
Bandbreite hast Du?

Weil je nachdem, wie geeignet du dafuer bist, benutzt Skype Dich als
sogenannten Supernode. Und dann werden ueber Dich eine Menge Gespraeche
geroutet. Mehr als Dir lieb ist.
Da ich sowohl statische IP als auch 100 Mbit Anbindung habe und es mal einen
halben Tag laufen liess, machte es auf einmal erheblichen Traffic.
Also am besten ne Firewall oder Netlimiter benutzen, um Skype ein wenig
einzuschraenken, oder es nicht zu lang am Stueck laufen lassen bzw
ausschalten, wenn Du es nicht brauchst.

-----------------------------------------------------------------------------



Re^4: Trafik bei Skype (Muadib, 30. Sep 2005, 19:23:18):
~#! rn=Karima rt=1128100654 rg=suche-biete
~#! tid=1128072881
eine firewall ist eh immer ne gute idee, nicht?

ps: fuer die trolle sei ein wort fallengelassen: personal

-----------------------------------------------------------------------------



Re^5: Trafik bei Skype (Kellybundy, 30. Sep 2005, 20:48:03):
~#! rn=Muadib rt=1128100998 rg=suche-biete
~#! tid=1128072881
Nur dass Skype angeblich staendig zicken macht in Zusammenarbeit mit diversen
firewalls und virenschutz. wenn man skype benutzen will steht man also
vielleicht vor der alternative:skypen ohne firewall/virenscanner oder nach
produkten suchen, die sich nicht mit skype beissen...

Kelly

-----------------------------------------------------------------------------



Re^6: Trafik bei Skype (Muadib, 30. Sep 2005, 21:46:38):
~#! rn=Kellybundy rt=1128106083 rg=suche-biete
~#! tid=1128072881
hmm
dann lieber kein skype
wobei ich sagen muss, dass ich von den macken mit fws bisher nichts bemerkte
bei 3 verschiedenen fw-umgebungen

und nein. ich hab mir skype nicht selbst ausgesucht

-----------------------------------------------------------------------------



Re^7: Trafik bei Skype (Kellybundy, 30. Sep 2005, 21:56:11):
~#! rn=Muadib rt=1128109598 rg=suche-biete
~#! tid=1128072881
Kenne die Problematik auch nur vom Hoerensagen, benutze selber keines

-----------------------------------------------------------------------------



Re^5: Trafik bei Skype (Ogo,  1. Okt 2005, 13:46:46):
~#! rn=Muadib rt=1128100998 rg=suche-biete
~#! tid=1128072881
Na bei der Vorlage komme ich natuerlich nicht umhin, die Personal Firewall
Security FAQ von fefe.de zu posten:

Executive Summary
Do Personal Firewalls improve security?

No.
Why do so many people install them, then?

Because those people are all idiots.

-----------------------------------------------------------------------------



Re^6: Trafik bei Skype (Gloinson,  1. Okt 2005, 13:52:32):
~#! rn=Ogo rt=1128167206 rg=suche-biete
~#! tid=1128072881
Hmja. Tolle Argumentationen da: "If you seriously want to improve security on
your machine, you have to reduce the code size, not increase it!"

Back to "Hello world!".

Ich bin auch kein Fan von Personal Firewalls. Aber diverse Modelle scheinen
rein empirisch mit der Software Windows hinreichend gut fuer
Standardhaesslichbugs zusammenzuarbeiten. Black box testing ist dem Autor wohl
ein Fremdwort.


-----------------------------------------------------------------------------



Re^7: Trafik bei Skype (Ogo,  1. Okt 2005, 13:53:16):
~#! rn=Gloinson rt=1128167552 rg=suche-biete
~#! tid=1128072881
Muadib hat das Wort nur fuer Trolle fallen lassen. Verschwinde mit deinen
inhaltlichen Ueberlegungen! :P

-----------------------------------------------------------------------------



Re^8: Trafik bei Skype (Gloinson,  1. Okt 2005, 13:54:28):
~#! rn=Ogo rt=1128167596 rg=suche-biete
~#! tid=1128072881
Irgendwer muss auch fuettern :)


-----------------------------------------------------------------------------



Re^9: Trafik bei Skype (Vector,  1. Okt 2005, 14:35:45):
~#! rn=Gloinson rt=1128167668 rg=suche-biete
~#! tid=1128072881
dachte immer, die trolle sind im megaschmarrn zu finden?:)

-----------------------------------------------------------------------------



Re^7: Trafik bei Skype (Kellybundy,  1. Okt 2005, 14:40:35):
~#! rn=Gloinson rt=1128167552 rg=suche-biete
~#! tid=1128072881
Oeh. ich habe ja wohl als privatanwendender DAU sowas wie eine personal
firewall. Namentlich Agritum Outpost, Standardconf. Und es hat schon einiges
abgefangen. U.A. Sassers. Bin ich jetzt doof, dass ich ueberhaupt eine
installiert habe? *verwirrt sei*

-----------------------------------------------------------------------------



Re^8: Trafik bei Skype (Darklor,  1. Okt 2005, 14:57:01):
~#! rn=Kellybundy rt=1128170435 rg=suche-biete
~#! tid=1128072881
Vermutlich meinen sie, dass dir damit ne Menge Spass entgangen waer... 

Darklor

-----------------------------------------------------------------------------



Re^9: Trafik bei Skype (Muadib,  2. Okt 2005, 00:00:46):
~#! rn=Darklor rt=1128171421 rg=suche-biete
~#! tid=1128072881
ihr steigt aber auch echt auf alles ein

-----------------------------------------------------------------------------



S: HTML-Formular (Amaryllis, 19. Okt 2005, 13:36:07):
Hallo,

ich suche eine Art "Grundkonstrukt" einer Software, die folgendermassen
aussieht:
Eingabe von Daten in ein HTML-Formular (freie Felder, Dropboxen, Radiobuttons
o.ae.). Verarbeitung dieser Daten und Fuetterung z.B. in ein Perlskript, das
dann seinerseits Unix-Befehle mit diesen Daten ausfuehrt, den Output sammelt
und ueber eine HTML-Seite wieder ausgibt.

Da ich schon Jahre nichts mehr mit HTML etc. gemacht habe, wollte ich mal
vorsichtig anfragen, ob jemand schonmal sowas gebastelt hat, was man als
Vorlage verwenden kann :)

Danke,
Ama*

PS: Nein, PHP, Userauthentifizierung und der ganze Schnickschnack muss erstmal
nicht sein, denke ich.

-----------------------------------------------------------------------------



Re: S: HTML-Formular (Muadib, 19. Okt 2005, 13:39:27):
~#! rn=Amaryllis rt=1129721767 rg=suche-biete
~#! tid=1129721767
und wie sieht es mit einem cgi-skript aus? 
damit hast du die eingaben drekt in perl

-----------------------------------------------------------------------------



Re: Re: S: HTML-Formular (Amaryllis, 19. Okt 2005, 14:08:29):
~#! rn=Muadib rt=1129721967 rg=suche-biete
~#! tid=1129721767
Ginge auch...

Ama*

-----------------------------------------------------------------------------



S: Auto-Gutachter (Amaryllis, 24. Okt 2005, 20:50:26):
Hi,

ich suche einen preisguenstigen Gutachter, der einfach nur feststellt, was ein
Wagen noch wert ist (Details muessen gar nicht sein). Bei ATU war ich heute
schon, die haben zwar den TUEV (angemietet) in einer Halle, aber der macht
keine Gutachten.

Hat jemand nen Tip, welcher Service (in Koelle ;)) guenstige Gutachten
erstellen kann?

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Drachen gesucht (Maharet, 27. Okt 2005, 12:32:19):
Ihr kennt sicher das Lied "Gruen ja gruen sind alle meine Kleider".  Wenn
nicht - auch egal.
Wir wollen das fuer Rana mudbezogener singen - helft uns bitte bei der
Strophenfindung. Hier, was wir schon haben:
gruen - Walddrache
rot - Feuerdrache
blau - Wasserdrache
weiss - Eisdrache
grau - Stahldrache
braun - Schlammdrache
schwarz - Humni
gelb - Hoellendrache (Mesi meinte, wegen des Schwefels)

Habt Ihr noch Ideen?

Maha

-----------------------------------------------------------------------------



Re: Drachen gesucht (Grimmborn, 27. Okt 2005, 13:18:19):
~#! rn=Maharet rt=1130409139 rg=suche-biete
~#! tid=1130409139
"schwarz - Humni" ist falsch, war der Plueschdrache nicht rosa?

GdA

-----------------------------------------------------------------------------



Re: Drachen gesucht (Zook, 27. Okt 2005, 13:29:25):
~#! rn=Maharet rt=1130409139 rg=suche-biete
~#! tid=1130409139
gruen-blau - Water Luh

Zook.

-----------------------------------------------------------------------------



Re: Re: Drachen gesucht (Zook, 27. Okt 2005, 13:30:35):
~#! rn=Grimmborn rt=1130411899 rg=suche-biete
~#! tid=1130409139
schwarz - Bakhtarrh

Wuerd ich meinen. 

rosa - Humni

passt wie Grimmborn schon meinte, einfach besser.

Zook.

-----------------------------------------------------------------------------



Re: Re: Drachen gesucht (Bran, 27. Okt 2005, 13:40:20):
~#! rn=Grimmborn rt=1130411899 rg=suche-biete
~#! tid=1130409139
Pssssssst. Wir wissen das ja, aber er waere doch so gerne schwarz und
gefaehrlich...

Richtig schwarz ist der Daemonendrache. Extra nochmal nachgeguckt.

-----------------------------------------------------------------------------



Re^3: Drachen gesucht (Boing, 27. Okt 2005, 13:54:30):
~#! rn=Bran rt=1130413220 rg=suche-biete
~#! tid=1130409139
Bakhtarrh ist 'nur' schwarz/gold.
  Boing

-----------------------------------------------------------------------------



Re^4: Drachen gesucht (Maharet, 27. Okt 2005, 14:27:43):
~#! rn=Boing rt=1130414070 rg=suche-biete
~#! tid=1130409139
Zweisilbige Farben singen sich schlecht. Das Problem stellt sich auch beim
Purpurdrachen. Aber wir werden es testen :)

Maha

-----------------------------------------------------------------------------



Re^5: Drachen gesucht (Maharet, 27. Okt 2005, 14:28:47):
~#! rn=Maharet rt=1130416063 rg=suche-biete
~#! tid=1130409139
Ich merk gerade "schwarz und gold" bzw "blau und gruen" laesst sich machen.
Nur bei purpur klingt es doof.

-----------------------------------------------------------------------------



Re^6: Drachen gesucht (Maharet, 27. Okt 2005, 14:30:15):
~#! rn=Maharet rt=1130416127 rg=suche-biete
~#! tid=1130409139
Und ich werde auf gar keinen Fall singen "rosa, rosa sind alle meine Kleider".
Das kann Leibi ja dann machen ;)

-----------------------------------------------------------------------------



Re^4: Drachen gesucht (Zook, 27. Okt 2005, 14:31:13):
~#! rn=Boing rt=1130414070 rg=suche-biete
~#! tid=1130409139
Ah, stimmt. Nicht genau genug angeschaut. Zook.

-----------------------------------------------------------------------------



Re^5: Drachen gesucht (Grimmborn, 27. Okt 2005, 14:31:37):
~#! rn=Zook rt=1130416273 rg=suche-biete
~#! tid=1130409139
Zwei, drei Schlaege und er ist schwarz/rot/gold, oder?

GdA

-----------------------------------------------------------------------------



Re^5: Drachen gesucht (Gloinson, 27. Okt 2005, 14:32:15):
~#! rn=Zook rt=1130416273 rg=suche-biete
~#! tid=1130409139
Rot, orange, gelb und gruen, sind im Regenbogen drin, blau und indigo gehts
weiter, auf der Regenbogenleiter. Und zum Schluss das Violett, sieben Farben
sind komplett .... geht doch ;)


-----------------------------------------------------------------------------



Re: Drachen gesucht (Morgoth, 27. Okt 2005, 14:32:23):
~#! rn=Maharet rt=1130409139 rg=suche-biete
~#! tid=1130409139
Wer ist Rana?

-----------------------------------------------------------------------------



Re^6: Drachen gesucht (Maharet, 27. Okt 2005, 14:32:53):
~#! rn=Gloinson rt=1130416335 rg=suche-biete
~#! tid=1130409139
Sind aber keine Drachen. Das kriegt sie auch zu hoeren, keine Sorge ;) Sogar
mit der ersten Strophe dazu.

-----------------------------------------------------------------------------



Re^7: Drachen gesucht (Kiria, 27. Okt 2005, 17:55:54):
~#! rn=Maharet rt=1130416373 rg=suche-biete
~#! tid=1130409139
Der Koenigsdrache ist auch noch richtig schoen schwarz :)

-----------------------------------------------------------------------------



Re^8: Drachen gesucht (Zephyr, 27. Okt 2005, 20:06:33):
~#! rn=Kiria rt=1130428554 rg=suche-biete
~#! tid=1130409139
Und statt rosa geht doch eigentlich auch immer pink, oder? ;)

-----------------------------------------------------------------------------



Re^9: Drachen gesucht (Miril, 27. Okt 2005, 20:57:08):
~#! rn=Zephyr rt=1130436393 rg=suche-biete
~#! tid=1130409139
Ist nicht der im Goblinlager orange? Hab da so nen ZT in Erinnerung.

-----------------------------------------------------------------------------



Re^10: Drachen gesucht (Maharet, 27. Okt 2005, 21:02:17):
~#! rn=Miril rt=1130439428 rg=suche-biete
~#! tid=1130409139
stimmt :) danke

-----------------------------------------------------------------------------



Re^11: Drachen gesucht (Bran, 27. Okt 2005, 21:02:55):
~#! rn=Maharet rt=1130439737 rg=suche-biete
~#! tid=1130409139
'Orange, orange, orange' singt sich nur so unguenstig :)

-----------------------------------------------------------------------------



Re^12: Drachen gesucht (Maharet, 27. Okt 2005, 21:03:29):
~#! rn=Bran rt=1130439775 rg=suche-biete
~#! tid=1130409139
Ich kenn das als "gruen ja gruen" und lass bei "orange" das "ja" einfach weg
;)

-----------------------------------------------------------------------------



Re^13: Drachen gesucht (Bran, 27. Okt 2005, 21:04:07):
~#! rn=Maharet rt=1130439809 rg=suche-biete
~#! tid=1130409139
Ach, die Weicheiversion :-)

-----------------------------------------------------------------------------



Re^14: Drachen gesucht (Maharet, 27. Okt 2005, 21:04:45):
~#! rn=Bran rt=1130439847 rg=suche-biete
~#! tid=1130409139
Man muss flexibel sein, wenn man keinen Knoten in der Zunge haben will ;) 

-----------------------------------------------------------------------------



Re^15: Drachen gesucht (Bran, 27. Okt 2005, 21:05:45):
~#! rn=Maharet rt=1130439885 rg=suche-biete
~#! tid=1130409139
Ich suche gerade nach Herausforderungen. Gibt es hier denn keine
transparenten/schwarzweisskarierten/gruenlilagetuepfelten Drachen?

-----------------------------------------------------------------------------



Re^16: Drachen gesucht (Maharet, 27. Okt 2005, 21:06:15):
~#! rn=Bran rt=1130439945 rg=suche-biete
~#! tid=1130409139
transparent ist der Glasdrache, vermute ich :)

-----------------------------------------------------------------------------



Re^16: Drachen gesucht (Maharet, 27. Okt 2005, 21:06:43):
~#! rn=Bran rt=1130439945 rg=suche-biete
~#! tid=1130409139
Aber traegst du denn transparente Sachen? Bran!

-----------------------------------------------------------------------------



Re^17: Drachen gesucht (Bran, 27. Okt 2005, 21:06:53):
~#! rn=Maharet rt=1130439975 rg=suche-biete
~#! tid=1130409139
Sehr gut. Oder der Kristalldrache, wahrscheinlich transparent-funkelnd. Gleich
landen wir in schmarrn :)

-----------------------------------------------------------------------------



Re^18: Drachen gesucht (Bran, 27. Okt 2005, 21:07:49):
~#! rn=Bran rt=1130440013 rg=suche-biete
~#! tid=1130409139
Das kommt durchaus vor :) Aber tragen Drachen ueberhaupt was?

Bran, kein Drache

-----------------------------------------------------------------------------



Re^19: Drachen gesucht (Maharet, 27. Okt 2005, 21:09:15):
~#! rn=Bran rt=1130440069 rg=suche-biete
~#! tid=1130409139
Weiss nicht, frag Humni.
Ich singe ja nur, dass mein Schatz ein Drache sei ;)

Hm, wenn das man keinen Aerger gibt ...

:singt "Dreckig, dreckig sind alle meine Kleider, dreckig, dreckig ist alles
was ich hab. Darum lieb ich alles, was dreckig ist: weil mein Schatz ein
Stinkezwerg ist."

-----------------------------------------------------------------------------



Re^20: Drachen gesucht (Bran, 27. Okt 2005, 21:10:25):
~#! rn=Maharet rt=1130440155 rg=suche-biete
~#! tid=1130409139
Humni traegt keine Kleider, sondern Bekenntnisse.

-----------------------------------------------------------------------------



Re^21: Drachen gesucht (Ark, 27. Okt 2005, 21:23:35):
~#! rn=Bran rt=1130440225 rg=suche-biete
~#! tid=1130409139
Nebeldrache, Saphirdrache, Skelettdrache, Zombiedrache, Blutdrache und
Todesdrache, letztere vielleicht weniger gut fuers IndenSchlafsingen :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^22: Drachen gesucht (Ark, 27. Okt 2005, 22:21:06):
~#! rn=Ark rt=1130441015 rg=suche-biete
~#! tid=1130409139
Bramdo hat violette Schuppen ;-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^23: Drachen gesucht (Bran, 27. Okt 2005, 22:34:28):
~#! rn=Ark rt=1130444466 rg=suche-biete
~#! tid=1130409139
'Violette Schuppen, violette Schuppen, violette Schuppen haben alle meine
Kleider...'

:entknotet Maharets Zunge.

-----------------------------------------------------------------------------



S: Roemerglaeser (Orktoeter,  3. Nov 2005, 23:33:29):
Als Beispiel: http://homepage.univie.ac.at/bernd.jaeger/img_2623.jpg

Wer so etwas hat oder vielleicht irgendwo in einem Laden sieht (Wien), der
darf sich gerne bei mir melden.

Oktoeter.

-----------------------------------------------------------------------------



suche internationale Gehaltstabellen (Cassandra, 10. Nov 2005, 12:15:16):
Kann mir zufaellig einer sagen wo ich gehaltstabellen fr das europische
ausland herbekomme.

Cassy, findet nix

-----------------------------------------------------------------------------



Re: suche internationale Gehaltstabellen (Zook, 10. Nov 2005, 12:15:42):
~#! rn=Cassandra rt=1131621316 rg=suche-biete
~#! tid=1131621316
Was genau suchst Du denn? 

Sonst schau mal bei der OECD bzw. bei der ILO nach.

Zook.

-----------------------------------------------------------------------------



Re: Re: suche internationale Gehaltstabellen (Cassandra, 10. Nov 2005, 12:18:01):
~#! rn=Zook rt=1131621342 rg=suche-biete
~#! tid=1131621316
Ich sche Anhaltspunkte was man je nach ausbildung in anderen Laendern verdient
und somit wasman da fordern kann bzw sollte.

Danke auch fuer die links werd gleich mal schauen

cassy

-----------------------------------------------------------------------------



Re^3: suche internationale Gehaltstabellen (Zook, 10. Nov 2005, 12:21:12):
~#! rn=Cassandra rt=1131621481 rg=suche-biete
~#! tid=1131621316
Naja, also in dieser Allgemeinheit kann Dir keiner was Sinnvolles sagen. 
Was fuer Ausbildung? Ist die ueberhaupt mit der in anderen Laendern
vergleichbar? Welche Region? Welche Laender? Ballungszentren oder plattes
Land? Tarifvertraege oder gezahlte Loehne? Nominallohn oder in Kaufkraft
umgerechneter Lohn? Welche Arbeitsbedingungen sollen gelten hinsichtlich
Kuendigungsschutz, betriebliche Mitbestimmung etc.? 

Zook.

-----------------------------------------------------------------------------



Re^4: suche internationale Gehaltstabellen (Cassandra, 10. Nov 2005, 12:43:41):
~#! rn=Zook rt=1131621672 rg=suche-biete
~#! tid=1131621316
danke der oecd link hat das noetige ausgespukt.

Cassy

-----------------------------------------------------------------------------



Re^5: suche internationale Gehaltstabellen (Zook, 10. Nov 2005, 12:44:05):
~#! rn=Cassandra rt=1131623021 rg=suche-biete
~#! tid=1131621316
und was war nun noetig?
zook.

-----------------------------------------------------------------------------



Re^6: Drachen gesucht (Hobo, 14. Nov 2005, 10:54:35):
~#! rn=Maharet rt=1130416127 rg=suche-biete
~#! tid=1130409139
Wie waer's denn mit "purpurrot"?
   Hobo - kennt diese Probleme ;)

-----------------------------------------------------------------------------



Re^7: Drachen gesucht (Muadib, 14. Nov 2005, 10:55:54):
~#! rn=Hobo rt=1131962075 rg=suche-biete
~#! tid=1130409139
die farbe "undefinierbar" fehlt noch

-----------------------------------------------------------------------------



Re^8: Drachen gesucht (Maharet, 14. Nov 2005, 12:38:18):
~#! rn=Muadib rt=1131962154 rg=suche-biete
~#! tid=1130409139
Welcher Drache hat eine undefinierbare Farbe?  Ich brauch schon vollstaendige
Informationen, es wird nicht gern gesehen, wenn ich waehrend des Singens ins
Stocken komme ;)

Maha

PS Danke Hobo, das klappt besser :)

-----------------------------------------------------------------------------



Re^9: Drachen gesucht (Muadib, 14. Nov 2005, 12:57:15):
~#! rn=Maharet rt=1131968298 rg=suche-biete
~#! tid=1130409139
ein mit chaosfarbe angemalter humni zb

-----------------------------------------------------------------------------



Kennt wer zufaellig Centura/Gupta? (Ronda, 16. Nov 2005, 00:16:51):
Ist zufaellig jemandem von Euch schon mal Centura/SqlWindows untergekommen?
(Nette Sprache uebrigens - war "damals" ein echt spannendes Konzept...) Kann
das noch jemand von Euch programmieren? Ein Bekannter von mir sucht
haenderingend Programmierer dafuer...

Ronda *hat das mal programmiert - sucht aber grad noch keinen Job*

-----------------------------------------------------------------------------



Windoofs und Cygwin und Fenster ... (Gloinson, 16. Nov 2005, 04:30:08):
Hi,
die bash-shell oeffnet unter Windows ja in dem grauslichen Kommando-Fenster.
Aus dem scheint man nicht ohne groessere Umstaende kopieren zu koennen
(markieren, kopieren, argh)

Gibt es eine Moeglichkeit, dieses cmd-Fenster irgendwie durch was Nutzbareres
zu ersetzen? Und wenn nein, gibt es fuer Cygwin irgend eine Shell, die in
einem nutzerfreundlicheren Fenster aufgeht - XServer aussen vor?


-----------------------------------------------------------------------------



Re: Windoofs und Cygwin und Fenster ... (Muadib, 16. Nov 2005, 08:09:47):
~#! rn=Gloinson rt=1132111808 rg=suche-biete
~#! tid=1132111808
bei cygwin ist rxvt dabei
das kann man als ersatz gut nehmen, man muss sich bloss einmal die config
zusammenmeisseln

-----------------------------------------------------------------------------



Re: Re: Windoofs und Cygwin und Fenster ... (Jameson, 16. Nov 2005, 12:43:42):
~#! rn=Muadib rt=1132124987 rg=suche-biete
~#! tid=1132111808
1. RTFM... in den Fenstereigenschaften des cmd-Fensters laesst sich der
Quick-Edit-Modus einschalten, danach funktioniert copy/paste aehnlich wie
sonst. Man kann sich da auch aussuchen, ob das global oder nur fuer das
aktuelle Fenster gilt.
2. 4NT (Shareware) kann deutlich mehr als cmd, sofern es darauf ankommt. Ist
aber einer Korn-Shell aehnlicher. Da es auch auf der cmd-Shell aufbaut, gilt
das gleiche wie bei 1.
3. TakeCommand (Shareware) kommt aus dem gleichen Hause, ist aber deutlich
mehr in die Windows-Oberflaeche integriert, d.h. nicht cmd-basiert, und hier
geht z.B. copy/paste von Haus aus.
Ich gehe davon aus, das cygwin unter 2. und 3. gleichermassen laeuft.

-----------------------------------------------------------------------------



Re^3: Windoofs und Cygwin und Fenster ... (Kellybundy, 16. Nov 2005, 13:11:19):
~#! rn=Jameson rt=1132141422 rg=suche-biete
~#! tid=1132111808
Das Problem ist, dass auffe Windooofkiste die Einstellungen fuers Dos-Fenster
nicht ueberall greifen. Ich hab keine ahnung wo man da noch was machen muss.
Ausprobieren. auf dieser kiste gehts nicht, auf der naechsten gehts. Ich
empfehle trotzdem ein OS zu benutzen *duck und schnell wegrenn*

-----------------------------------------------------------------------------



Re^4: Windoofs und Cygwin und Fenster ... (Muadib, 16. Nov 2005, 19:03:39):
~#! rn=Kellybundy rt=1132143079 rg=suche-biete
~#! tid=1132111808
welches os soll es denn sein?
ich hab hier etwa 5 verschiedene oses in direktem zugriff
aber du hast schon recht, man sollte am besten eine linux-kiste nehmen, dort
win simulieren und da dann cygwin aufsetzen

-----------------------------------------------------------------------------



Re: Kennt wer zufaellig Centura/Gupta? (Masul, 19. Nov 2005, 23:18:44):
~#! rn=Ronda rt=1132096611 rg=suche-biete
~#! tid=1132096611
Ich habe mal in der Umgebung programmiert.
Um was dreht es sich denn...?

-----------------------------------------------------------------------------



Suche Schreibtechnik (Ronda, 20. Nov 2005, 22:33:34):
Hallo,

diesmal suche ich etwas anderes - naemlich Tipps, Ideen und Erfahrungen mit
Schreibtechniken. Ausgangspunkt: Ich schreibe seit Ewigkeiten an einer
wissenschaftlichen Arbeit. Jedes Mal, wenn ich mich jetzt an den Text setze
wird mit klar, dass der rote Faden lange verschollen ist, ich durch x neue
Ideen, Ueberarbeitungen, Korrekturen von Freunden einen Text vor mir habe, der
noch deutlich unstrukturierter ist als dieser Artikel... ;-)
Wie geht Ihr bei so etwas vor? Welche Erfahrungen habt Ihr gemacht? Soll ich
einfach nen tolles Buch ueber Schreibtechniken studieren? zMud zumachen, nen
Glas Rotwein trinken und vor mich hinschreiben?
Ideen gern auch per tm... denn ich quael mich schon recht lange damit rum...

Danke,

Ronda

-----------------------------------------------------------------------------



Re: Suche Schreibtechnik (Ark, 20. Nov 2005, 23:00:33):
~#! rn=Ronda rt=1132522414 rg=suche-biete
~#! tid=1132522414
Keine Ahnung, ob das besonders hilft, aber einfach zu verstehen und umzusetzen
... meine ich: Ziel ueberlegen, Weg ueberlegen, dann Kapitel entwickeln, die
dem roten Faden entsprechen. Stichpunkte fuer die Kapitel niederschreiben, mit
dem roten Faden auslegen. Kapitel schreiben. Mit dem roten Faden vergleichen,
naechstes Kapitel vergleichen, etc.
Zum Schluss alles einem Fachidioten geben zum Ueberpruefen auf Logik :-)

Naja, oder so aehnlich.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re: Re: Suche Schreibtechnik (Ronda, 20. Nov 2005, 23:04:49):
~#! rn=Ark rt=1132524033 rg=suche-biete
~#! tid=1132522414
Das (nee, eins ;-) ) der Probleme: Ich _hatte_ schon mal nen roten Faden. Der
ist nun nen toter Faden. Ich habe also teilweise recht fertige Kapitel,
moechte die nicht komplett wegwerfen. Und: ich hab das leider schon
"Fachidioten" gegeben (die ich nie so bezeichnen wuerde ;-) ), die froehlich
dran rumkorrigiert haben - ich leiste seitdem Abbitte bei allen meinen Studis,
denen ich ihre Studien- und Diplomarbeiten (zer-)korrigiert habe. Also hab ich
nun froehliches Patchwork aus altem roten Faden, Anmerkungen von Freunden,
Anmerkungen von mir - und stehe vor dem Raetsel, wie ich daraus etwas lesbares
mache...

Ronda *wird wohl nie Schriftstellerin und kaempft recht erfolglos mit ihrem
(sic!) Schweinehund*

-----------------------------------------------------------------------------



Re^3: Suche Schreibtechnik (Ark, 20. Nov 2005, 23:15:30):
~#! rn=Ronda rt=1132524289 rg=suche-biete
~#! tid=1132522414
OK, ich dachte, Du wolltest eine Schreibtechnik fuer Kreationen "from
scratch", und keine Anleitung fuer ein Patchworkdecke *schauder* :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^4: Suche Schreibtechnik (Kessa, 20. Nov 2005, 23:22:18):
~#! rn=Ark rt=1132524930 rg=suche-biete
~#! tid=1132522414
Also, ich wuerde es ja eher umgekehrt angehen als Ark... 1. Zuerst mal gucken,
was ich ueberhaupt zu sagen hab. 2. Was ablenkt, rauswerfen. Den Rest (das
Wesentliche) klaeren und unterfuettern. 3. Dann erst ueberlegen, welche Form
ich dem am besten gebe. Wobei 1. und 2. zur Endlosschleife werden koennen, ich
weiss das. 3. kommt jedenfalls bei mir immer ganz zuletzt. Methodiker wundern
sich da immer, aber bei mir funzt das so. Und Ronda, warst du nicht immer
schon ein bisschen wuselig? :)


-----------------------------------------------------------------------------



Re^5: Suche Schreibtechnik (Zook, 20. Nov 2005, 23:37:07):
~#! rn=Kessa rt=1132525338 rg=suche-biete
~#! tid=1132522414
Lies ein Buch ueber Schreibtechnik, am besten eines aus Deinem Fach. Nimm
Dir die Zeit und uebe. Schreiben ist zum grossen Teil Handwerk, das
kann man lernen, auch wenn es nervig ist. Wenn's beliebt, kann ich Dir
aus dem "Allgemeinen"-Bereich oder "Oekonomie"-Bereich eine Liste an
Buechern, URLs etc. zusammenstellen, bitte dann per E-Mail melden. Zook.

-----------------------------------------------------------------------------



Re^6: Suche Schreibtechnik (Hobo, 21. Nov 2005, 21:46:21):
~#! rn=Zook rt=1132526227 rg=suche-biete
~#! tid=1132522414
Ghostwriter kaufen?

  Hobo - macht sich's leicht

-----------------------------------------------------------------------------



Virenscanner fuer Windows XP (Ronda, 30. Nov 2005, 20:08:08):
Hi,
da mein Abo fuer den Norton Antivirus bald ablaeuft, suche ich mal wieder nach
einem Virenscanner fuer Windows XP. Da ich den Rechner teilweise professionell
nutze, scheidet AntiVir leider aus.
Mit welchen Virenscannern habt Ihr gute Erfahrungen gemacht?

Ronda

-----------------------------------------------------------------------------



Re: Virenscanner fuer Windows XP (Gloinson, 30. Nov 2005, 20:14:01):
~#! rn=Ronda rt=1133377688 rg=suche-biete
~#! tid=1133377688
Beim mir laeuft der Mc-Affe seit zwei Jahren. Keine Probleme. Aber irgendwie
benutze ich auch keinen IE oder Outlook.


-----------------------------------------------------------------------------



Re: Virenscanner fuer Windows XP (Zook, 30. Nov 2005, 20:15:25):
~#! rn=Ronda rt=1133377688 rg=suche-biete
~#! tid=1133377688
Nimm doch ein richtiges Betriebsystem.

Zook.

-----------------------------------------------------------------------------



Re: Re: Virenscanner fuer Windows XP (Grimmborn, 30. Nov 2005, 22:27:50):
~#! rn=Zook rt=1133378125 rg=suche-biete
~#! tid=1133377688
Und unter dem laeuft dann der Virenscanner?

GdA

-----------------------------------------------------------------------------



Re: Virenscanner fuer Windows XP (Morgoth,  1. Dez 2005, 08:29:42):
~#! rn=Ronda rt=1133377688 rg=suche-biete
~#! tid=1133377688
Ich hab bei mir die 5er Version von F-Secure drauf
(http://www.f-secure.com/products/anti-virus/fsavcs/), damit bin ich sehr
zufrieden. Ein Kollege schwoert auf Kaspersky.
Es kommt immer drauf an, was Du alles brauchst.
Email: POP3, IMAP, SMTP?
On-Access?
Gute Heuristik? Schnelle Updates? ...

M*

-----------------------------------------------------------------------------



Re: Virenscanner fuer Windows XP (Jadawin,  2. Dez 2005, 02:17:17):
~#! rn=Ronda rt=1133377688 rg=suche-biete
~#! tid=1133377688
Bei mir laeuft Internet Security von Tren Micro. Ich bin zufrieden.
Jad*

-----------------------------------------------------------------------------



Re: suche internationale Gehaltstabellen (Zook,  2. Dez 2005, 15:41:47):
~#! rn=Cassandra rt=1131621316 rg=suche-biete
~#! tid=1131621316
Fuer nationale Gehaltsvergleiche scheint es www.tarifspiegel.de zu 
geben. 

Zook.

-----------------------------------------------------------------------------



Re: Re: Virenscanner fuer Windows XP (Mupfel,  7. Dez 2005, 17:13:33):
~#! rn=Jadawin rt=1133486237 rg=suche-biete
~#! tid=1133377688
www.antivir.de
www.bitdefender.de
Bei beiden gibts eine "fuer Lau" Version, wobei der Bitdefender keine
Onlinescan Funktion hat, also nur zum "nachherscannen" geeignet ist.

-mupfel-

-----------------------------------------------------------------------------



Charaktere in zuverlaessige Haende abzugeben (Dhojakt,  8. Dez 2005, 16:48:39):
Hallo allerseits...

Da ich nicht mehr soviel Zeit zum Spielen habe moechte ich meine 3 Haupt-
charaktere abgeben.
Es handelt sich um Khidar, Dhojakt und Nok.
Bedingungen:
Der Bittsteller hat mindestens das halbe Level des Charakters.
Bei Dhojakt moechte ich ein Einlogrecht behalten.
Bei mehr als einem Bewerber entscheidet ein Los.

Endfrist fuer die Bewerbung ist der 13. Dez. 2005.

Bis dann,
Dhojakt.

-----------------------------------------------------------------------------



Fahrkarte Darmstadt-Halle am Montag (Cassandra,  8. Dez 2005, 21:18:35):
Hallo kann wer ne fahrkarte fr Montag von Darmstadt nach Halle gebrauchen?
Abfahrt ist 8:46 von darmstadt.
Fahre schon sontag mit dem Auto heim. 
Fahrkarte ist mit ner bahncard 25. Wer die gebrauchen kann kann sich die auf
der Party abholen, ansonsten verfaellt sie.
Achso ist Zuggebunden und geht ueber Frankfurt und Leipzig.

Cassy

-----------------------------------------------------------------------------



Suche Terrarium ... (Vanion,  9. Dez 2005, 14:47:15):
Hat jemand zufaellig ein altes Terrarium (min. 100*50*100) im Keller
verstauben und will den Platz frei bekommen? Ich koennt eins brauchen.
Verdammt, wenn sich jetzt jemand meldet, wie krieg ich das nach Friesland?

V*

-----------------------------------------------------------------------------



Re: Suche Terrarium ... (Anoris,  9. Dez 2005, 19:31:57):
~#! rn=Vanion rt=1134136035 rg=suche-biete
~#! tid=1134136035
Wir haetten diverse guenstig oder gratis abzugeben, faehrst in die
Schweiz?

- Anoris ;)

-----------------------------------------------------------------------------



Re: Re: Suche Terrarium ... (Vanion,  9. Dez 2005, 19:38:27):
~#! rn=Anoris rt=1134153117 rg=suche-biete
~#! tid=1134136035
Das is ja nun ganz am anderen Ende ... und darueber hinaus.

V* :)

-----------------------------------------------------------------------------



Re: Re: Suche Terrarium ... (Zook, 10. Dez 2005, 02:23:12):
~#! rn=Anoris rt=1134153117 rg=suche-biete
~#! tid=1134136035
wie kommt es?

-----------------------------------------------------------------------------



Re^3: Suche Terrarium ... (Vanion, 10. Dez 2005, 10:42:49):
~#! rn=Zook rt=1134177792 rg=suche-biete
~#! tid=1134136035
Was jetzt? Das Anoris so weit weg ist? Vermutlich weil er in der Schweiz wohnt
und ich an der Nordsee. Das in Kombination mit der Tatsache, dass die Schweiz
nichtmal einen einzigen Nordseehafen hat, entfernt uns ein wenig.

Oder meinst Du, warum ich ein Terrarium suche?

Die Antwort gibt's nach der naechsten Maus.

V*

-----------------------------------------------------------------------------



Re^4: Suche Terrarium ... (Gloinson, 10. Dez 2005, 13:10:56):
~#! rn=Vanion rt=1134207769 rg=suche-biete
~#! tid=1134136035
Das ist nicht megaschmarrn und er hat schon auf den richtigen Artikel
geantwortet?


-----------------------------------------------------------------------------



Re^4: Suche Terrarium ... (Zook, 10. Dez 2005, 14:36:21):
~#! rn=Vanion rt=1134207769 rg=suche-biete
~#! tid=1134136035
Nein, ich frage mich, warum die Terrarien nun leer sind.

Zook.

-----------------------------------------------------------------------------



Re^5: Suche Terrarium ... (Muadib, 11. Dez 2005, 20:40:03):
~#! rn=Zook rt=1134221781 rg=suche-biete
~#! tid=1134136035
ich nehme mal an, dass vanion schildkroeten in das terrarium setzen moechte
zur mittaeglichen konversation

-----------------------------------------------------------------------------



Re^6: Suche Terrarium ... (Gloinson, 12. Dez 2005, 12:19:04):
~#! rn=Muadib rt=1134330003 rg=suche-biete
~#! tid=1134136035
Lecker. Essen mit eigenem Topf.


-----------------------------------------------------------------------------



Re^6: Suche Terrarium ... (Vanion, 12. Dez 2005, 22:30:12):
~#! rn=Muadib rt=1134330003 rg=suche-biete
~#! tid=1134136035
Nein, eigentlich moechte ich Wasseragamen da rein setzen. Ich denke aber, dass
ich kein Vollglasterrarium nehmen werde, sondern eins aus Holz. Das is
leichter und hat auch isolationsmaessig Vorteile.

V*

-----------------------------------------------------------------------------



Re^7: Suche Terrarium ... (Muadib, 13. Dez 2005, 11:28:22):
~#! rn=Vanion rt=1134423012 rg=suche-biete
~#! tid=1134136035
und wasseragamen sind bessere konversationspartner als schildkroeten?

-----------------------------------------------------------------------------



Re^8: Suche Terrarium ... (Vanion, 13. Dez 2005, 13:19:17):
~#! rn=Muadib rt=1134469702 rg=suche-biete
~#! tid=1134136035
Ich weiss nicht.

V*

-----------------------------------------------------------------------------



Re: Charaktere in zuverlaessige Haende abzugeben (Dhojakt, 13. Dez 2005, 18:08:52):
~#! rn=Dhojakt rt=1134056919 rg=suche-biete
~#! tid=1134056919
Das Ergebnis lautet:
Khidar geht an Lev, Dhojakt geht an Samos, und Nok geht an Vector.
Vielen Dank fuer die Bewerbungen.

Bis dann,
Dhojakt.

-----------------------------------------------------------------------------



Re: Re: Charaktere in zuverlaessige Haende abzugeben (Gloinson, 13. Dez 2005, 19:03:47):
~#! rn=Dhojakt rt=1134493732 rg=suche-biete
~#! tid=1134056919
Argh. Argh. Nochmals Argh.

Schade, eine weitere Identitaet, die verschwindet. War witzig dich im MUD und
RL dabeigehabt zu haben. (Ich haette nicht gedacht, dass sich ernsthaft jemand
"bewirbt".)


-----------------------------------------------------------------------------



S:Roemerglaeser/Kristallglaeser (Orktoeter,  2. Jan 2006, 00:07:41):
Als Beispiel:
http://homepage.univie.ac.at/bernd.jaeger/img_2623.jpg

Wer also noch so etwas herumstehen hat und bereit ist, es abzugeben der
schicke mir bitte eine mail.
OrkT

-----------------------------------------------------------------------------



Re: S:Roemerglaeser/Kristallglaeser (Boing,  2. Jan 2006, 09:06:49):
~#! rn=Orktoeter rt=1136156861 rg=suche-biete
~#! tid=1136156861
Ich hab ein deja vu ...
  Boing

-----------------------------------------------------------------------------



S: Klangdateien (Amaryllis,  5. Jan 2006, 21:03:45):
Hi,

ich bin auf der Suche nach Klangdateien kurzer "Aussprueche", z.B. knapper
Saetze wie "Alles Mist" oder auch nur "Hallo". Gibt es Ressourcen, die sowas
zur Verfuegung stellen? Ich moechte damit fuer einen speziellen Zweck einen
kleinen Gag zusammenstellen...

Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: Klangdateien (Jimdigriz,  5. Jan 2006, 21:44:06):
~#! rn=Amaryllis rt=1136491425 rg=suche-biete
~#! tid=1136491425
das Dieter Bohlen Autobiographiehoerbuch?

JdG

-----------------------------------------------------------------------------



Re: Re: S: Klangdateien (Anoris,  5. Jan 2006, 23:02:36):
~#! rn=Jimdigriz rt=1136493846 rg=suche-biete
~#! tid=1136491425
Vom Perversobaby gibts n Flash, sind aber vermutlich nicht genau die
Aussprueche die Du Dir vorstellst dabei *G* ;)

- Anoris ;)

-----------------------------------------------------------------------------



Re^3: S: Klangdateien (Jimdigriz,  6. Jan 2006, 09:00:15):
~#! rn=Anoris rt=1136498556 rg=suche-biete
~#! tid=1136491425

Ich kollabier gleich :-)

-----------------------------------------------------------------------------



Shellskript (Amaryllis, 10. Jan 2006, 21:12:58):
Hi,

ich suche ein Shell-basiertes Skript, das mir aus zwei Textdateien

a) die Schnittmenge (d.h. alle Eintraege, die in beiden Dateien drin sind)
b) die gemeinsame Menge (d.h. alle Eintraege aus beiden Dateien ohne
Dubletten)

liefert. Hat jemand da schon was fertiges oder muss ich selbst basteln? ;)

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Re: Shellskript (Vector, 10. Jan 2006, 21:15:34):
~#! rn=Amaryllis rt=1136923978 rg=suche-biete
~#! tid=1136923978
Kompare?

-----------------------------------------------------------------------------



Re: Shellskript (Muadib, 10. Jan 2006, 21:22:26):
~#! rn=Amaryllis rt=1136923978 rg=suche-biete
~#! tid=1136923978
Hi,

vielleicht hilft das:
a) sort -u
b) comm -3

-----------------------------------------------------------------------------



Re: Re: Shellskript (Muadib, 10. Jan 2006, 21:23:38):
~#! rn=Muadib rt=1136924546 rg=suche-biete
~#! tid=1136923978
aeh 
b) comm -12 musste das heissen

-----------------------------------------------------------------------------



Re^3: Shellskript (Grimmborn, 11. Jan 2006, 11:08:17):
~#! rn=Muadib rt=1136924618 rg=suche-biete
~#! tid=1136923978
Viele Wege fuehren nach Rom, vor allem unter Unixen. Das Lehrbuchbeispiel fuer
b) ist "cat file1 file 2 | sort | uniq", fuer a) koennte man dann "uniq -d"
verwenden.

GdA

-----------------------------------------------------------------------------



Re^5: Shellskript (Ronda, 12. Jan 2006, 23:55:33):
~#! rn=Ronda rt=1137106381 rg=schmarrn
~#! tid=1136923978
Ok. Selbstreply. Auch richtige Rubrik. Die Frage mit Oracle war fast ernst
gemeint: Von wie vielen Zeilen reden wir? Wie haeufig muss das gemacht werden?
Wie viel Zeit darf das Bearbeiten kosten? Aendern sich die Dateien - wenn ja:
immer nur neue Zeilen?

Je nach Antwort koennte da echt nen Ansatz a la Oracle herauskommen...

Ronda *jaaaaa... in 99% kommt NICHT Oracle dabei raus...*

-----------------------------------------------------------------------------



Re^6: Shellskript (Mupfel, 13. Jan 2006, 01:04:07):
~#! rn=Ronda rt=1137106533 rg=suche-biete
~#! tid=1136923978
Wenn die Dateien nicht gerade multigigabytegroesse haben, sondern "nur" einige
10.000 Zeilen, behaupte ich mal, sind Grimmborns Einzeiler schneller.

-mupfel-

-----------------------------------------------------------------------------



Re^7: Shellskript (Ronda, 13. Jan 2006, 01:06:39):
~#! rn=Mupfel rt=1137110647 rg=suche-biete
~#! tid=1136923978
Naja, das haengt halt von der Anzahl ab. Ich hatte da mit ner Sache zu tun, wo
pro Tag mehrere 10.000.000 Zeilen reinkamen. Und fuer die zu lange beim
Berechnen zu brauchen, hat echtes Geld gekostet. Haengt von der Anwendung
ab... und ich glaub nicht, dass Ama* wegen 10 Zeilen fragt ;-)

Ronda *moechte doch so gern Oracle nutzen ;-)*

-----------------------------------------------------------------------------



Suche W6 (Daria, 16. Jan 2006, 16:17:20):
Huhu,
ich hab neulich in einem Fernsehfilm (Die Gebrueder Sass oder so), der in dern
20ern spielte, einen W6 in Form einer menschlichen Figur gesehen. Die 1 war
auf dem Kopf, auf dem Ruecken war die 6...
Weiss jemand wos so einen Wuerfel zu kaufen gibt oder wie der heisst?

Danke!
Daria

-----------------------------------------------------------------------------



Suche Tipps fuer wissenschaftliches Schreiben II (Ronda, 17. Jan 2006, 07:57:16):
Hallo,

auch dank Eurer Tipps bin ich mit dem Schreiben meines langen
"wissenschaftlichen" Texts deutlich weitergekommen. Besonders geholfen hat,
weite Teile der vorhandenen Textfragmente in ein Mind Map zu ueberfuehren
(Tipp: das Open Source Mind Map Tool "FreeMind",
http://freemind.sourceforge.net, Linux und Windows), um danach dann daraus
wieder durchgaengig lesbaren Text zu machen.

Nun gibts da eine weitere spannende Klippe: Ich habe fuer ein
Grundlagenkapitel wieder ein Textpuzzle, ueber Jahre gewachsen. 1001 Idee. Und
ich habe dazu eine recht ausfuehrliche Quellensammlung, viele mehr oder
weniger passende Zitate. Und auch daraus soll wieder ein schoener Text
entstehen, mit rotem Faden, ausreichend vielen Quellen etc.

Habt Ihr Ideen / Erfahrungen, wie man geschickt Text und Quellen verknuepft?
Erst Text schreiben, dann nach "Beweisen" in den Quellen suchen? Oder Quellen
komplett durchgehen (habe viele relevante Zitate in einer Quellensammlung
zusammengeschrieben) und die Ideen wieder in ein MindMap packen, da dann
scharf draufschauen und im MM sortieren?

Ich bin echt gespannt, welche "Methoden" Ihr bei Euren Arbeiten verwendet
habt!

Danke,

Ronda

-----------------------------------------------------------------------------



Re: Suche Tipps fuer wissenschaftliches Schreiben II (Zook, 17. Jan 2006, 11:07:24):
~#! rn=Ronda rt=1137481036 rg=suche-biete
~#! tid=1137481036
Hm. Das geht mal so mal so: Zeitweise muss man eben aus Quellen berichten
und diese zusammenstellen. Dann arbeitet man natuerlich damit und hat
auch entsprechend viele Belege. Dann analysiert man etwas oder bringt seine
mittelmaessig genialen Ideen zu Papier, da arbeite ich mehr von meinem
Text und streu dann nur noch hin und wieder Verweise ein. Und was ich mehr
als muehsam finde, sind Fussnotenwuesten mit tausenden von Belegen. Das ist
zumeist kein Ausdruck von Wissenschaftlichkeit, sondern eher von Daemlich-
keit. Siehe dazu auch Seite 4 der kleinen Stilfibel von Michael Stolleis 
(hab ich Dir mal zugeschickt).

Zook.

-----------------------------------------------------------------------------



Re: Re: Suche Tipps fuer wissenschaftliches Schreiben II (Ronda, 17. Jan 2006, 21:58:21):
~#! rn=Zook rt=1137492444 rg=suche-biete
~#! tid=1137481036
Tja, ich sehe das mit den Fussnotenwuesten ganz genau so wie Du. Und wer
_richtig gute wissenschaftliche_ Arbeiten schreibt, kann das auch so, dass das
(fast) jeder zumindest ansatzweise versteht.
Das muss sich aber leider nicht zwangslaeufig mit der Meinung der Menschen
decken, die einem dafuer eine Note, einen Titel oder was auch immer geben
sollen. Zielgruppe ist ehrlicherweise bei entsprechenden Texten weniger die
"Wissenschaftliche Gemeinschaft", sondern meist zwei Profs, die dann schon mal
unverstaendlich-"wissenschaftliche" Texte und Fussnotengraeber lieben. Leider.

Ronda *Texte zusammenpuzzelnd*

-----------------------------------------------------------------------------



Re^3: Suche Tipps fuer wissenschaftliches Schreiben II (Zook, 18. Jan 2006, 13:00:08):
~#! rn=Ronda rt=1137531501 rg=suche-biete
~#! tid=1137481036
> .. lieben.

Tun das Deine? 

Zook.

-----------------------------------------------------------------------------



Re^3: Suche Tipps fuer wissenschaftliches Schreiben II (Alkohol, 18. Jan 2006, 13:30:59):
~#! rn=Ronda rt=1137531501 rg=suche-biete
~#! tid=1137481036
also dass eine richtig gute wissenschaftliche Arbeit von (fast) jedem gelesen
und dann auch verstanden werden kann, zweifel ich jetzt mal an. Man kann
allerdings richtig gute wissenschaftliche Ergebnisse auch so aufschreiben,
dass sie (fast) keiner versteht, das gebe ich schon zu.

Alk

-----------------------------------------------------------------------------



Re^4: Suche Tipps fuer wissenschaftliches Schreiben II (Alkohol, 18. Jan 2006, 13:33:18):
~#! rn=Alkohol rt=1137587459 rg=suche-biete
~#! tid=1137481036
ok ich muss mich verbessern. Ich meinte, dass es vielleicht nicht immer geht,
das fuer (fast) jeden verstaendlich aufzuschreiben.

Alki

-----------------------------------------------------------------------------



Re^5: Suche Tipps fuer wissenschaftliches Schreiben II (Cassandra, 18. Jan 2006, 13:35:36):
~#! rn=Alkohol rt=1137587598 rg=suche-biete
~#! tid=1137481036
Ob das fuer jeden verstaendlich geschrieben werden kann haengt wohl auch vom
Fach ab. In Geisteswissenschaften ist das oftmals, denk ich, moeglich; in
Naturwissenschaften wohl eher nicht.

Cassy

-----------------------------------------------------------------------------



Re^6: Suche Tipps fuer wissenschaftliches Schreiben II (Grimmborn, 18. Jan 2006, 13:58:47):
~#! rn=Cassandra rt=1137587736 rg=suche-biete
~#! tid=1137481036
Du meinst das sei generell bei Geisteswissenschaften moeglich? Mal von vielen
anderen Beispielen z.B. in der Philosophie abgesehen wuerde es mich wundern,
wenn Du auch nur eine einzige wissenschaftliche mathematische Arbeit findest
die ich mit meiner erweiterten Mathe-LK Kenntnis verstehen wuerde.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: Suche Tipps fuer wissenschaftliches Schreiben II (Zook, 19. Jan 2006, 15:39:56):
~#! rn=Zook rt=1137585608 rg=suche-biete
~#! tid=1137481036
Hm. Wenn Dein Chef auf Fussnotenwuesten steht, gib ihm die. Ist halt 
laestig, viel Fleissarbeit und macht einen tendenziell nicht so gut 
lesbaren Text. ;)

ZOok.

-----------------------------------------------------------------------------



Athlon Thunderbird B (FSB100) (Gloinson,  2. Feb 2006, 14:27:13):
Wo koennte man so ein Teil noch herbekommen? Bei Epay habe ich es vor zwei
Jahren mal versucht und einen kleinen Schmorwuerfel erhalten. Wenn ich jetzt
bei Epay reinschaue, sehe ich auch jede Menge Bilder deutlich abgerauchter
Chips mit den ueblichen innovativen "kann nicht testen, funktioniert aber
beeeeeestimmt"-Textbeschreibungen.


-----------------------------------------------------------------------------



digitales Diktiergeraet (Chagall,  2. Feb 2006, 17:03:49):
Huhu,

ich bin auf der Suche nach einem digitalen Diktiergeraet. Preis ist erstmal
irrelevant, die einzigen Bedingungen sind, dass das Teil mp3 kann und es
moeglich ist, den aufgenommenen Text per USB auf den Rechner zu bugsieren.
Hat irgendwer Vorschlaege, welchen Hersteller man da am besten
nimmt?

MC


-----------------------------------------------------------------------------



Re: digitales Diktiergeraet (Zook,  2. Feb 2006, 17:16:08):
~#! rn=Chagall rt=1138896229 rg=suche-biete
~#! tid=1138896229
berichte mal vom ergebnis deiner auswahl. zook.

-----------------------------------------------------------------------------



Re: digitales Diktiergeraet (Gnome,  2. Feb 2006, 19:04:27):
~#! rn=Chagall rt=1138896229 rg=suche-biete
~#! tid=1138896229
maxfield gflash.

-----------------------------------------------------------------------------



Re: Re: digitales Diktiergeraet (Orktoeter,  2. Feb 2006, 21:24:54):
~#! rn=Gnome rt=1138903467 rg=suche-biete
~#! tid=1138896229
Versuch es mal mit einem Handy, sparst du dir ein zusaetzliches Geraet herum
zu schleppen

OrkT.

-----------------------------------------------------------------------------



Re^3: digitales Diktiergeraet (Chagall,  2. Feb 2006, 21:39:29):
~#! rn=Orktoeter rt=1138911894 rg=suche-biete
~#! tid=1138896229
Naja, mit nem Handy find ich das ein wenig unpraktisch, vor allem weil sich
meins nicht mit dem Rechner verbinden laesst. Aber die Idee, nen mp3-Player
mit Sprachausgabe zu missbrauchen hab ich jetzt von einigen bekommen, sollte
ich eventuell mal ins Auge fassen.

Mc

-----------------------------------------------------------------------------



Re^4: digitales Diktiergeraet (Grimmborn,  2. Feb 2006, 22:10:56):
~#! rn=Chagall rt=1138912769 rg=suche-biete
~#! tid=1138896229
Wieso sollte das unpraktisch sein? Du wolltest Dir ja eh ein neues Geraet
anschaffen, wieso also nicht ein Handy mit USB-Kabel? Da sparst du dir ein
zusaetzliches Geraet herum zu schleppen.

GdA

-----------------------------------------------------------------------------



Suche Zimmer in Hamburg (Melchor,  2. Feb 2006, 22:22:33):
Hallo,
fuer mein Praktikum (Airbus in Hamburg) suche ich von Mitte Februar bis Ende
August eine kleines Baumhaus (oder auch Zimmer) in Hamburg. Eventuell auch
fuer ein ganzes Jahr, falls sie mich da auch fuer die Diplomarbeit festhalten.
Zimmer sollte ab 12qm sein und nicht mehr als 300 Euro kosten.

Solltet Ihr etwas in der Richtung frei haben, bitte schreibt mir.

PS: Keine Zauberer ;) (just kidding)

Freundliche Gruesse
Melchor

-----------------------------------------------------------------------------



Re: Suche Zimmer in Hamburg (Muadib,  3. Feb 2006, 00:18:21):
~#! rn=Melchor rt=1138915353 rg=suche-biete
~#! tid=1138915353
wo biste denn?
direkt bei airbus? oder vielleicht kid?
oder wo?

-----------------------------------------------------------------------------



Re: Re: Suche Zimmer in Hamburg (Melchor,  3. Feb 2006, 19:00:23):
~#! rn=Muadib rt=1138922301 rg=suche-biete
~#! tid=1138915353
hallo,
das praktikum ist bei airbus direkt, in finkenwerder.

-----------------------------------------------------------------------------



2 Karten fuer die Wise Guys Totalnacht zu vergeben (Anatol, 20. Feb 2006, 18:16:36):

Die Wise Guys Totalnacht steigt am 22.2. von 19:00 bis 01:00 Uhr
in Koeln-Muehlheim (sofern da alle Saenger gesund sind). Ich
habe zwei der fuer bei Ebay fuer ganz viel $$$ gehandelten Karten
zuviel, fuer 107 EUR koennen beide, vorbehaltlich dass das Konzert
am 22.2. stattfindet, den Besitzer wechseln.

Raum Bonn/Koeln waere geschickt, ich weiss nicht, wann ich vor
Ort sein werde (Einlass 18:00 Uhr, freie Platzwahl).

Interessenten bitte Mail an mich.

Anatol


-----------------------------------------------------------------------------



S: Psychologiekundigen. (Zook,  5. Mar 2006, 14:54:23):
Ist hier jemand psychologiekundig und kann mir ggf. ein paar Fragen zum
Thema "Motivationstheorien" beantworten? Falls ja, vll. kurze E-Mail an 
mich.

Zook.

-----------------------------------------------------------------------------



Umfrageersuchen (Weiterleitung) (Gloinson, 10. Mar 2006, 10:27:39):
  Scientific Survey: Working Conditions in Open Source Projects
     von Dirk Jendroska (jendroska@psychologie.uni-wuerzburg.de)

  We like to invite you to a survey about the working conditions in
  Free/Open-Source Software development. This survey is conducted by
  the Open-Source Research Group of the University of Wuerzburg (Germany).

  We will compare work design in open source and proprietary software
  development. Our findings should be used to adjust the working
  conditions of software development to the needs of the developers.
  The results will be published under the Creative Commons License.

  To start the survey, please follow the link:
  http://www.unipark.de/uc/open-source-task/

  If you have any questions don't hesitate to contact us!

  Dirk Jendroska

  http://www.psychologie.uni-wuerzburg.de/ao/staff/jendroska.php?lang=en


-----------------------------------------------------------------------------



S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Zook, 28. Mar 2006, 12:29:56):
Hallo zusammen,

ich hab ja keine Ahnung, suche aber dennoch irgendwie ein "GUI-Programmier-
Werkzeugkasten", mit dem man einfach solche Windows-GUIs machen kann, denen
man entsprechende Haeute (Skins) ueberziehen kann, die dann auch weit-
gehend frei grafisch gestaltbar sind. Gibt es da irgendwas Brauchbares
am Markt? Moeglichst freie Software? 

Zook.

-----------------------------------------------------------------------------



Re: S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Knurps, 28. Mar 2006, 15:15:21):
~#! rn=Zook rt=1143541796 rg=suche-biete
~#! tid=1143541796
Eine Skin-Engine ist meines Wissens nicht Teil eines Toolkits. Wenn du zur
Laufzeit Skins brauchst, legst du halt auf die Oberflaeche "Bilder", in der
Konfiguration gibt es dann einen Pfad, der auf den aktuellen Skin zeigt und
von dort die Bilder laedt. Ggf noch eine xml-Config mit Farben, Schriftart,
Schriftgroesse usw und fertig ist ein Skin. Freie (i.S.d. FSF) gibt es GTK
(LGPL, diverse Bindings, Heimatsprache C), Qt (GPL,QPL, diverse
Sprachbindings, Heimatsprache C++), WxWidgets (quasi LGPL, Hauptsaechlich
C++), Fuer Java gibts AWT, Swing und SWT. Die genannten Toolkits sollten auf
OSX, Win32 und Linux laufen, zumindest nach einem weiteren 'make'. Es gibt
noch das MFC als Wrapper fuer die Windows API und von Borland Alternativen
dafuer. Das "neue" Ding sind wohl Windows Forms fuer .NET.  Aber halt nicht
frei.

Most sophisticated Toolkit duerfte Qt4 sein, sofern du mit der GPL leben
kannst, wuerde ich dir stark dazu raten. Duerfte auch beste Portabilitaet
bringen, falls du es doch mal auf OSX laufen lassen willst.

-----------------------------------------------------------------------------



Re: Re: S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Taranis, 28. Mar 2006, 16:19:13):
~#! rn=Knurps rt=1143551721 rg=suche-biete
~#! tid=1143541796
Ich habe ein paar Erfahrungen mit WxWidgets, wo Du das gerade ansprichst. Nach
einigem Einarbeiten kam ich damit einigermassen klar. Interessant in dem
Zusammenhang, die Oberflaeche zu aendern, duerfte die Moeglichkeit sein, die
GUI weitgehend aus XML-Dateien laden zu koennen. Das geht auch zur Laufzeit.
Es gibt einige Tools, die die Erstellung solcher GUIs und anschliessende
Speicherung als XML-Derivat vereinfachen, allerdings nimmt es dennoch einiges
an Zeit in Anspruch.

Taranis

-----------------------------------------------------------------------------



Re: Re: S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Zook, 29. Mar 2006, 18:04:56):
~#! rn=Knurps rt=1143551721 rg=suche-biete
~#! tid=1143541796
Hm. Klingt tendenziell nach groesseren Schmerzen...

ZOok.

-----------------------------------------------------------------------------



Re^3: S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Taranis, 30. Mar 2006, 10:28:46):
~#! rn=Zook rt=1143648296 rg=suche-biete
~#! tid=1143541796
Tja. es gibt schon Tools, mit denen man in gewissem Umfang fuer die Toolkits
die Oberflaeche zusammenklicken und sich viel Arbeit sparen kann. Die
Oberflaechenelemente mit Funktionalitaet belegen, muss man natuerlich trotzdem
noch. Aber je nach Umfang und Erfahrung, die man hat, macht es nicht nebenbei,
das ist richtig.
Taranis

-----------------------------------------------------------------------------



Re: Re: S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Kellybundy, 31. Mar 2006, 18:59:05):
~#! rn=Knurps rt=1143551721 rg=suche-biete
~#! tid=1143541796
Wobei die C/C++-Windoof-API grauenhaft ist.

-----------------------------------------------------------------------------



S: Filmmusik (Amaryllis, 17. Apr 2006, 14:35:23):
Hi,

gerade laeuft auf RTL II "4 Faeuste gegen Rio". Weiss jemand, wie die
Titelmelodie, die im Film oefters auftaucht (Bud Spencer als Saxophonist)
heisst?

Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: Filmmusik (Grumpf, 17. Apr 2006, 14:41:52):
~#! rn=Amaryllis rt=1145277323 rg=suche-biete
~#! tid=1145277323
Moinsen,
kuckstu hier:
http://www.terencehill.de/de_sound_doubletrouble.html
MfG
Grumpf

-----------------------------------------------------------------------------



Re^3: S: GUI-Programmierung mit Haeuten (Zielsystem: Windows) (Zook, 20. Apr 2006, 18:00:40):
~#! rn=Kellybundy rt=1143824345 rg=suche-biete
~#! tid=1143541796
Waere denn dieses Mozilla XUL irgendwie was, was sowas tun wuerde und
hat da schon jemand Erfahrungen? Schmerzen erlitten?

Zook.

-----------------------------------------------------------------------------



Buch gesucht (Daria, 21. Apr 2006, 13:20:28):
Huhu,
hat jemand von euch zufaellig das Buch "Doppelpass - Geschichten aus dem
geteilten Fussballdeutschland"? Ich suche eine bestimmte Geschichte daraus,
von der ich leider nur einen Ausschnitt habe. Es geht darum, wie eine
westdeutsche Familie das BRD-DDR-Spiel erlebt (das mit dem SparwasserTor, ihr
wisst schon ;-) ).

Meldet euch am besten direkt bei mir. Danke!
Daria Wetterwachs

-----------------------------------------------------------------------------



Illustratoren aufgepasst (Montanus,  2. Mai 2006, 16:45:41):
Wer ganz gut zeichnen kann: guckt mal auf meien Firmen-Homepage
www.lookout-games.de unter Drachenwettbewerb. Gibt nicht nur Rum und Ehre,
sondern auch Geld zu gewinnen.

-----------------------------------------------------------------------------



Film gesucht (Mieze, 11. Mai 2006, 09:20:56):
Hallo zusammen,

ich suche einen Film (moeglichst auf DVD) mit dem Titel "Die siebente Saite"
bzw. das franzoesische Original "Tous les matins du monde". Hat den jemand
bzw. weiss jemand, wie man da rankommt? Meistens bekommt man nur die
Filmmusik. Die hab ich aber schon und moechte gern den Film haben, am liebsten
auf deutsch.

Mieze

-----------------------------------------------------------------------------



Re: Film gesucht (Ogar, 11. Mai 2006, 21:25:00):
~#! rn=Mieze rt=1147332056 rg=suche-biete
~#! tid=1147332056
  http://www.dvdboxoffice.com/354-1263054-10263059/movies/products/90172564

Ogar

-----------------------------------------------------------------------------



WebCam fuer Notebook gesucht (Ronda, 13. Mai 2006, 18:01:38):
Hallo,

da ich bei der Suche im Web bisher nicht ausreichend gute neutrale Tests und
Infos gefunden habe, hoffe ich, dass Ihr mir weiterhelfen koennt: Ich suche
eine Webcam, Verwendung haeufig unterwegs mit Notebook (daher moeglichst klein
und einfach verpackbar), Windows XP. Einsatz hauptsaechlich fuer
Videotelefonie (welche Software setzt man da eigentlich sinnvollerweise - in
einem Unternehmensnetzwerk - ein?), man sollte also halbwegs erkennen koennen,
ob der Gegenueber 20.000 Kilometer entfernt grade vor Entsetzen die Haende vor
den Kopf legt oder einschlaeft - bessere Bildqualitaet nicht notwendig, aber
nur alle Minute ein Bild waere halt auch ungeschickt.

Gibts bei diesem Einsatz noch Dinge, auf die man dringend achten muss?
Besondere sinnvolle Eigenschaften?

Vielen Dank schon jetzt fuer jeden Hinweis,

Ronda

-----------------------------------------------------------------------------



Re: WebCam fuer Notebook gesucht (Muadib, 13. Mai 2006, 20:21:13):
~#! rn=Ronda rt=1147536098 rg=suche-biete
~#! tid=1147536098
von logitech gibt es da ne recht kleine webcam
ich habe das etwas groessere modell (volumen) und bin recht zufrieden
nutzbar ist das ganze unter skype, messanger, aim und soweiter
es ist auch ein eigener messenger dabei, aber dazu kann ich wenig sagen

-----------------------------------------------------------------------------



UMTS-Flatrate (Vanion, 14. Mai 2006, 15:20:45):
Hi,

ich bin die kommenden Monate viel unterwegs und ueberlege gerade darauf rum,
mir eine UMTS-Karte zuzulegen. Derzeit bietet Eplus eine Flatrate fuer 50 Euro
im Monat an (Karte inclusive). Hat zufaellig schon jemand Erfahrung mit UMTS
bei Eplus? Kennt jemand bessere Angebote?

Fuer Infos waer ich dankbar.

V*

-----------------------------------------------------------------------------



Re: WebCam fuer Notebook gesucht (Muaddib, 14. Mai 2006, 16:27:47):
~#! rn=Ronda rt=1147536098 rg=suche-biete
~#! tid=1147536098
Macbook Pro. Kommt mit Cam.

Cheers
Mua

-----------------------------------------------------------------------------



Re: Re: WebCam fuer Notebook gesucht (Muadib, 14. Mai 2006, 23:45:11):
~#! rn=Muaddib rt=1147616867 rg=suche-biete
~#! tid=1147536098
ah, und das kann ich dann ueber firewire unter xp als webcam benutzen ;) ?

-----------------------------------------------------------------------------



Re^3: WebCam fuer Notebook gesucht (Grimmborn, 14. Mai 2006, 23:46:33):
~#! rn=Muadib rt=1147643111 rg=suche-biete
~#! tid=1147536098
Windows XP kann firewire?

GdA

-----------------------------------------------------------------------------



Re^4: WebCam fuer Notebook gesucht (Karima, 14. Mai 2006, 23:47:41):
~#! rn=Grimmborn rt=1147643193 rg=suche-biete
~#! tid=1147536098
klar.
Entsprechende Hardware halt vorausgesetzt.

-----------------------------------------------------------------------------



Re^4: WebCam fuer Notebook gesucht (Muadib, 14. Mai 2006, 23:50:07):
~#! rn=Grimmborn rt=1147643193 rg=suche-biete
~#! tid=1147536098
klar, da musste einfach nur nen imini ueber usb anschliessen
mensch, zeig doch mal fantasie

-----------------------------------------------------------------------------



Re^5: WebCam fuer Notebook gesucht (Montanus, 15. Mai 2006, 21:56:00):
~#! rn=Muadib rt=1147643407 rg=suche-biete
~#! tid=1147536098
Ab OS 10.4.6 kann das Mac dann doch sogar Windoof spielen. Als Partition, aber
leider halt nur auf den Intel-Macs.

-----------------------------------------------------------------------------



Re^6: WebCam fuer Notebook gesucht (Muadib, 16. Mai 2006, 11:27:48):
~#! rn=Montanus rt=1147722960 rg=suche-biete
~#! tid=1147536098
aber nicht als eigenschaft des os, oder?
ich dachte der kann dann einfach windows booten

-----------------------------------------------------------------------------



Spam-Filter fuer Windows XP gesucht (Ronda, 21. Mai 2006, 16:04:10):
Hallo,

ich suche ein Programm zum Ausfiltern von Spam aus meinen Mailaccounts. Ich
nutze Windows XP, Thunderbird und mehrere POP3 Accounts. Mailwasher
(http://www.mailwasher.net) schaut schon mal gut aus, allerdings hat die freie
Version einige gravierende Einschraenkungen (zB will die automatisch bouncen);
die pro Version ist mir mit 37 Dollar doch recht teuer. Praktisch finde ich
das Ausfiltern/Taggen ueber Blacklists wie ORDB, VISI und SpamCop.
Gibt es das ganze - halt fuer XP - auch von anderen Anbietern? Was nutzt Ihr
zum Ausfiltern von Spam?

Vielen Dank fuer Eure Hinweise,

Ronda

-----------------------------------------------------------------------------



Re: Spam-Filter fuer Windows XP gesucht (Knurps, 21. Mai 2006, 16:47:23):
~#! rn=Ronda rt=1148220250 rg=suche-biete
~#! tid=1148220250
Ich benutze SpamAssassin, duerfte einer der besten Spamkiller sein. Habe nicht
grossartig geguckt, aber zumindest jspamassassin laeuft auch unter Windows als
pop3-Proxy. Vermutlich ist das ein bisschen fummeliger, dafuer sind die
Resultate nett, wenn es erstmal laeuft.

-----------------------------------------------------------------------------



Re: Re: Spam-Filter fuer Windows XP gesucht (Knurps, 21. Mai 2006, 16:59:34):
~#! rn=Knurps rt=1148222843 rg=suche-biete
~#! tid=1148220250
Fuers Protokoll: http://physics.ucsd.edu/~epivovar/anti-spam.htm

-----------------------------------------------------------------------------



Re: Spam-Filter fuer Windows XP gesucht (Amaryllis, 21. Mai 2006, 19:31:34):
~#! rn=Ronda rt=1148220250 rg=suche-biete
~#! tid=1148220250
Hm, Thunderbird hat doch schon einen wirklich guten Bayes-Filter - was will
man mehr?

Ama*

-----------------------------------------------------------------------------



Re: Re: Spam-Filter fuer Windows XP gesucht (Ronda, 21. Mai 2006, 21:52:15):
~#! rn=Amaryllis rt=1148232694 rg=suche-biete
~#! tid=1148220250
Also irgendwie laesst mein Thunderbird noch verdammt viel durch - und er kann
imho auch keine Blacklists verwenden (oder gibts dazu irgendwelche Plugins?).
SpamAssasin fuer Windows erscheint mir sehr frickelig. "Spamihilator" scheint
recht nett zu sein: http://www.spamihilator.com/ - der laeuft jetzt erst mal
hier bei mir im Probebetrieb.

Ronda

-----------------------------------------------------------------------------



Re^3: Spam-Filter fuer Windows XP gesucht (Muadib, 21. Mai 2006, 23:16:02):
~#! rn=Ronda rt=1148241135 rg=suche-biete
~#! tid=1148220250
gehostete blacklists kann er leider nicht
nur selbst gepflegte und das ist recht nervig

-----------------------------------------------------------------------------



Re^4: Spam-Filter fuer Windows XP gesucht (Requiem, 22. Mai 2006, 10:45:31):
~#! rn=Muadib rt=1148246162 rg=suche-biete
~#! tid=1148220250
Ich bin in der gluecklichen Lage, dass mein Provider serverseitig SpamAssassin
einsetzt. Da kommt kaum was durch.
Thunderbird lernt mit der Zeit sehr gut. Das bisschen, was SpamAssassin noch
durchlaesst wird recht gut durch TB rausgefiltert, so dass ich vielleicht noch
eine Spamnachricht pro Woche (von deutlich >1000) bei bisher einem falsch
positiven in 5 Jahren in meinem Posteingang habe.

-----------------------------------------------------------------------------



Linux-tf.... (Sharia, 27. Mai 2006, 00:54:55):
Hallo zusammen...


Ich habe mir letztens eine Linux-Distribution heruntergeladen, welche auf eine
bootbare CD passt und kannein Linux system direkt von dieser CD starten .. nun
wuerde ich aber gern zusaetzlich auch noch eine funktionierende tf-version auf
solch einer CD haben... Hat vielleicht jemand sowas mal gebastelt oder kann
mir sagen wie ich sowas mache ??


desweiteren suche ich jemanden der mir erklaeren kann, wie ich die tinymacros
unter windows zu laufen bringe ... 

wer Ideen hat kann mir ja einfach mal mailen :)

Vielen Dank !

Sharia

-----------------------------------------------------------------------------



Re: Linux-tf.... (Knurps, 27. Mai 2006, 23:13:54):
~#! rn=Sharia rt=1148684095 rg=suche-biete
~#! tid=1148684095
Kopier das .iso auf die Festplatte, mounte es mit mount -o loop -t auto cd.iso
/mnt/cdrom/, loesche irgendetwas, was du nicht brauchst, kopiere fertiges TF
rein, umount /mnt/cdrom, brenn das Image. Fuer Win32-TF schreibst du am besten
Ahab mal eine Mail.

-----------------------------------------------------------------------------



Re^5: Spam-Filter fuer Windows XP gesucht (Kellybundy,  1. Jun 2006, 21:10:25):
~#! rn=Requiem rt=1148287531 rg=suche-biete
~#! tid=1148220250
Ich bin mit dem Spam-Filter meines Yahoo-mailaccs (jaja ich weiss, Yahoo
*duck* ;-)) sehr zufrieden. Ist auch nen Bayes-basierter Filter.

-----------------------------------------------------------------------------



Einleitung in das Internet (Zook, 28. Jun 2006, 12:03:51):
Gibt es eine gute Einleitung fuer das "Bedienen des Internets"? Am besten
irgendwo im Netz und als PDF oder so herunterladbar? Gruss, Zook.

-----------------------------------------------------------------------------



Re: Einleitung in das Internet (Knurps, 28. Jun 2006, 14:47:20):
~#! rn=Zook rt=1151489031 rg=suche-biete
~#! tid=1151489031
http://www.rfc-editor.org/rfc-index2.html

-----------------------------------------------------------------------------



Re: Re: Einleitung in das Internet (Ronda, 28. Jun 2006, 22:18:01):
~#! rn=Knurps rt=1151498840 rg=suche-biete
~#! tid=1151489031
Hallo Zook,

das haengt auch nen bisschen davon ab, was Du unter "guter Einleitung"
verstehst - wer ist die Zielgruppe? Aeltere Personen auf Kreuzfahrtschiffen
brauchen anders aufbereitete Informationen als bisher Computer-verweigernde
Studierende. Eine wie ich finde sehr interessante Einfuehrung in
Internet-Adressen und Co gab es zum Beispiel mal bei der "Sendung mit der
Maus". Aber da gibt es Zielgruppen, die sich bei so was verschaukelt fuehlen
wuerden ;-)

Ronda

-----------------------------------------------------------------------------



Re^3: Einleitung in das Internet (Whitetiger, 28. Jun 2006, 22:21:03):
~#! rn=Ronda rt=1151525881 rg=suche-biete
~#! tid=1151489031
Wer bitteschoen wuerde sich denn dadurch verschaukelt fuehlen???

-----------------------------------------------------------------------------



Re^4: Einleitung in das Internet (Ronda, 28. Jun 2006, 22:23:49):
~#! rn=Whitetiger rt=1151526063 rg=suche-biete
~#! tid=1151489031
Folge einfach meinen Gedankengaengen: Raum mit 40 Maschinenbau-Studenten. Die
teilweise noch nie einen Rechner angemacht haben (echt wahr - ok, war ca
2000). Denen dann erst mal a la "Ich habe hier ein gutes Video, dass Ihr die
Basics versteht" die "Sendung mit der Maus goes Internet" zu zeigen, koennte
die folgenden Veranstaltungen relativ einsam gestalten. Waere im Nachhinen
eventuell fuer die persoenliche Weiterentwicklung besser gewesen...

Ronda

-----------------------------------------------------------------------------



Re^5: Einleitung in das Internet (Ronda, 28. Jun 2006, 22:26:14):
~#! rn=Ronda rt=1151526229 rg=suche-biete
~#! tid=1151489031
Selbst-Reply: Hier die Erklaerung der Maus, wie Daten durch das Internet
kommen:

http://www.die-maus.de/sachgeschichten/internet/

Aus meiner Sicht absolut klasse beschrieben - nur eben nicht fuer alle
Zielgruppen einsetzbar.

Ronda

-----------------------------------------------------------------------------



Re^6: Einleitung in das Internet (Whitetiger, 28. Jun 2006, 22:26:30):
~#! rn=Ronda rt=1151526374 rg=suche-biete
~#! tid=1151489031
Merke: Maschinenbau-Studenten sind seltsam? Oder was? ;)

-----------------------------------------------------------------------------



Re^7: Einleitung in das Internet (Alkohol, 29. Jun 2006, 00:33:14):
~#! rn=Whitetiger rt=1151526390 rg=suche-biete
~#! tid=1151489031
das kann ich nur bestaetigen
es gibt auch noch ne menge anderer seltsamer studenten
Alki

-----------------------------------------------------------------------------



Re^6: Einleitung in das Internet (Knurps, 29. Jun 2006, 14:46:34):
~#! rn=Ronda rt=1151526374 rg=suche-biete
~#! tid=1151489031
Ganz niedlich, aber bisserl seltsam ist das Erwaehnen von http die ganze Zeit.
Fuers Routing ist es vollkommen egal, welches Protokoll verwendet wird. Wenn
ich mir das genau ueberlege, wird dort nicht ein Provider sondern ein Proxy
beschrieben, denn die Namensaufloesung laeuft auch beim "Provider". 

Das ist eine Einleitung fuer WWW (mit Proxy) und nicht, wie in der
Ueberschrift "Der Datenweg durchs Internet". Wenn man als Transferaufgabe den
Mailversand waehlt, geht das schon furchtbar schief. So wie die Einleitung
abstrahiert, finde ich es albern ueberhaupt auf IP-Adressen einzugehen.

-----------------------------------------------------------------------------



Re^7: Einleitung in das Internet (Zook, 30. Jun 2006, 10:48:38):
~#! rn=Knurps rt=1151585194 rg=suche-biete
~#! tid=1151489031
Sagen wir so: Es geht um einen Emeritus, der nun zu Hause erstmals 
Internet einrichten moechte. Also: Welche Dienste gibt es? Wie bediene
ich einen Internet-Katalog? Wie lade ich Dokumente aus einem Dienst
herunter? Wie suche ich? Wie muss ich mich verhalten, dass mein Rechner
nicht gleich voellig vermuellt ist? Wie bediene ich E-Mail? Welche
Dateien darf ich oeffnen? Wie lege ich mir ein Adressbuch an? Irgendwie
sowas vermute ich als Fragen. ;) Zook.

-----------------------------------------------------------------------------



Re^8: Einleitung in das Internet (Anthea, 30. Jun 2006, 11:43:00):
~#! rn=Zook rt=1151657318 rg=suche-biete
~#! tid=1151489031
Hm... teilweise mit gesundem Menschenverstand erledigbar. Aber wir reden ja
von einem Emeritus :D

-----------------------------------------------------------------------------



Re^8: Einleitung in das Internet (Muadib, 30. Jun 2006, 16:05:34):
~#! rn=Zook rt=1151657318 rg=suche-biete
~#! tid=1151489031
also da waere eine persoenliche schulung angebracht
aber erst sollte man so eine art kundenprofil erstellen:
-was will er machen
-welche sexuelle orientierung
-welchen literaturgeschmack
-was isst er gerne
-hat er geld
-ist er sozial engagiert
-politische ausrichtung
-alter
-familienstand
-kinder

dann das ganze nochmal fuer eventuelle lebenspartner und ableger

das ganze veroeffentliche man dann im internet und dann kommt es auf ihn zu
wie er es braucht

-----------------------------------------------------------------------------



Re^9: Einleitung in das Internet (Kellybundy, 30. Jun 2006, 22:01:21):
~#! rn=Muadib rt=1151676334 rg=suche-biete
~#! tid=1151489031
Um zu schauen, welche Dateien Dein Emeritus oeffnen darf und welche lieber
nicht, muesstest Du Deinem Emeritus erstmal verklickern, dass er sein Windoof
vom Sekretaerinnenmodus befreien soll, sprich: Dateiendungen anzeigen. Da bin
ich bei einem Emeritus seit nem halben jahr dran. Aussichtslos. Ich koennts
ihm ja machen. Dazu muesste er mich ja nur mal an seine Tastatur lassen (die
Kiste ist uebrigens so virenverseucht mittlerweile, dass man die Festplatte 2
Tage lang in Sagrotanloesung auskochen muesste *GG*). Aber er hat 1000000000
Fenster auffem Desktop (wie er die 'Desktop speichern-Option' gefunden hat,
weiss er selber nicht.) Und wehe man macht _ein_ einziges zu. Dann gibts
wueste Mosereien von wegen ich haette seine Installation mutwillig torpediert
etc, wie aus den billigen Informatiker-UL-Foren, aber leider Tatsache. Der Mann
ist 82 und hochdekorierter Chemiker.

-----------------------------------------------------------------------------



Re^10: Einleitung in das Internet (Tangalur,  3. Jul 2006, 14:25:00):
~#! rn=Kellybundy rt=1151697681 rg=suche-biete
~#! tid=1151489031
Hi,
versuchts doch mal hier
http://www.warriorsofthe.net/

Tangalur

-----------------------------------------------------------------------------



Mobiltelefon-Relay Ausland? (Gloinson, 11. Jul 2006, 14:01:20):
Weil ich gerade das hier lese:
"So ist es schon heute moeglich, mit dem Handy internationale Gespraeche zu
einem Bruchteil der ueblichen Kosten zu fuehren, etwa indem eine
Festnetznetznummer als individuelle Relaisstation verwendet wird, von der aus
Telefonate mittels VoIP ins Zielland laufen."

(http://www.spiegel.de/netzwelt/telefonkultur/0,1518,426108,00.html)

... kennt jemand so einen Anbieter?


-----------------------------------------------------------------------------



Re: Mobiltelefon-Relay Ausland? (Knurps, 11. Jul 2006, 16:56:38):
~#! rn=Gloinson rt=1152619280 rg=suche-biete
~#! tid=1152619280
Anbieter? Du bist selbst der Anbieter; Stellst einen "Rechner" zuhause hin,
der auf einer beliebigen Festnetznummer lauscht (die bekommst du via VoIP auf
der ganzen Welt, meistens sogar kostenlos). Also z.B. eine VoIP-Nummer aus der
Ukraine. Wenn du nun aus der Ukraine auf der Nummer anrufst, geht dein
Asterisk zuhause dran, stellt ein Dial-Through (nach Pin-Eingabe) zur
Verfuegung und von da hast du einen beliebigen Prompt, entweder dein
Festnetz-ISDN oder ein beliebiger anderer VoIP-Anbieter. 

Ich benutze meinen Rechner taeglich von ueberall als Call-Thru-Gateway

-----------------------------------------------------------------------------



Re: Re: Mobiltelefon-Relay Ausland? (Gloinson, 11. Jul 2006, 17:07:21):
~#! rn=Knurps rt=1152629798 rg=suche-biete
~#! tid=1152619280
Es selber zu machen war aber nicht mein Wunsch, nicht zuletzt weil ich ungern
Geraete bei mir angeknipst lasse wenn ich in der Ukraine bin.


-----------------------------------------------------------------------------



Re^3: Mobiltelefon-Relay Ausland? (Knurps, 11. Jul 2006, 17:08:29):
~#! rn=Gloinson rt=1152630441 rg=suche-biete
~#! tid=1152619280
Ich habe "Rechner" in Anfuehrungsstrichen geschrieben, hol dir einen Linksys
NSLU2 und installier Asterisk darauf...

-----------------------------------------------------------------------------



Grosses Bild auf mehrere Blaetter drucken (Gloinson, 30. Aug 2006, 17:37:34):
Gesucht: Eine Software, die das fuer mich erledigt, denn per Hand die Grafik
zerschneiden und verteilen klappt einerseits nur halbs so gut und andererseits
ist das nicht sehr automagisch.


-----------------------------------------------------------------------------



Re: Grosses Bild auf mehrere Blaetter drucken (Segimer, 30. Aug 2006, 17:38:40):
~#! rn=Gloinson rt=1156952254 rg=suche-biete
~#! tid=1156952254
psnup.

-----------------------------------------------------------------------------



Re: Re: Grosses Bild auf mehrere Blaetter drucken (Montanus, 30. Aug 2006, 17:39:06):
~#! rn=Segimer rt=1156952320 rg=suche-biete
~#! tid=1156952254
Adobe Illustrator.

-----------------------------------------------------------------------------



Re: Grosses Bild auf mehrere Blaetter drucken (Zook, 30. Aug 2006, 17:43:38):
~#! rn=Gloinson rt=1156952254 rg=suche-biete
~#! tid=1156952254
Willst Du einen Bild-Starschnitt von mir machen?

Zook.

-----------------------------------------------------------------------------



Re: Re: Grosses Bild auf mehrere Blaetter drucken (Zook, 30. Aug 2006, 17:44:10):
~#! rn=Zook rt=1156952618 rg=suche-biete
~#! tid=1156952254
Bild? Ich mein natuerlich Bravo. 

Z.

-----------------------------------------------------------------------------



Re: Re: Grosses Bild auf mehrere Blaetter drucken (Gloinson, 30. Aug 2006, 17:57:05):
~#! rn=Segimer rt=1156952320 rg=suche-biete
~#! tid=1156952254
Deine spaetere Antwort: "poster" ... laeuft bestens, danke.


-----------------------------------------------------------------------------



Re: Grosses Bild auf mehrere Blaetter drucken (Vanion, 30. Aug 2006, 19:10:45):
~#! rn=Gloinson rt=1156952254 rg=suche-biete
~#! tid=1156952254
Excel. Kein Witz. Bild einfuegen und drucken. Klappt wunderbar.

V*

-----------------------------------------------------------------------------



Suche Erfahrungen zu Grafiktabletts (Ronda, 19. Sep 2006, 01:10:25):
Hi,

ich suche schon seit laengerem nach einem Grafiktablett. Anwendung unter
Windows XP, Anschluss per USB. Nutzen moechte ich es, um kleinere Zeichnungen
damit zu erstellen (zB mit InkScape oder Gimp), Grafiken zu bearbeiten oder
Fotos zu retuschieren.

Daher bin ich bei Wacom Grafiktabletts angekommen, idealerweise ca. A5.

Wie seht Ihr das? Hat jemand von Euch mit solchen Grafiktabletts Erfahrungen
gemacht? Was koennt Ihr empfehlen?

Vielen Dank fuer jeden Tipp,

Ronda

-----------------------------------------------------------------------------



Re: Suche Erfahrungen zu Grafiktabletts (Zook, 19. Sep 2006, 09:47:47):
~#! rn=Ronda rt=1158621025 rg=suche-biete
~#! tid=1158621025
Bekannte von mir haben solche Dinger recht intensiv im Design-Bereich genutzt.
Die waren damals (schlappe 6 oder 7 Jahre her) recht zufrieden damit. Zook.

-----------------------------------------------------------------------------



Re: Re: Suche Erfahrungen zu Grafiktabletts (Seleven, 19. Sep 2006, 14:56:14):
~#! rn=Zook rt=1158652067 rg=suche-biete
~#! tid=1158621025
Selber Text, andere Verfasserin. Seleven. :)

-----------------------------------------------------------------------------



Re^3: Suche Erfahrungen zu Grafiktabletts (Alboin, 19. Sep 2006, 20:05:29):
~#! rn=Seleven rt=1158670574 rg=suche-biete
~#! tid=1158621025
wenn Du mit Studenten befreundet bist dann gucke mal bei IBM, die kriegen
tollen rabatt drauf. Als ich an der Uni letztes Jahr gearbeitet habe haben wir
einen von HP gekauft und waren ganz zufrieden damit. Allerdings weiss ich
nicht wie der mit Linux laeuft das hatten wir nicht installiert.
al

-----------------------------------------------------------------------------



Re^4: Suche Erfahrungen zu Grafiktabletts (Ronda, 19. Sep 2006, 21:09:26):
~#! rn=Alboin rt=1158689129 rg=suche-biete
~#! tid=1158621025
Danke fuer die Info, Zook und Seleven. Leider hat sich aber wohl in dem
Bereich in den letzten Jahren sehr viel geaendert - und auch die Preise sind
deutlich gesunken. Spannend waere daher, wie viel man sinnvollerweise heute
fuer ein Grafiktablett ausgeben muss: Sehr einfache A5-Tabletts kosten
irgendwas um 40 Euro - schicke bis zu 350. Ich kann leider schwer abschaetzen,
ob sich der Mehrpreis echt lohnt.

Alboin: Kanns sein, dass Du einen Tablett-PC meinst? So lang mein eigenes
Notebook noch haelt, werd ich nicht in einen Tablett-PC investieren - und ich
auch nicht abschaetzen, ob die fuer Grafikbearbeitung etc. wirklich so gut
sind.

Tschuess,

Ronda

-----------------------------------------------------------------------------



Re^5: Suche Erfahrungen zu Grafiktabletts (Woody, 25. Sep 2006, 16:56:50):
~#! rn=Ronda rt=1158692966 rg=suche-biete
~#! tid=1158621025
Ein Wacom lohnt immer. Nutze jetzt schon jahrelang das Intuos 2 A5,
aber auch Graphire ist sicher keine schlechte Wahl fuer kleinere
Budgets. Von Moechtegern-Tabletts wuerde ich (nach Erfahrung) eher
abraten, es sei denn man nutzt es echt nur gelegentlich und hat
dabei auch keine hohen Ansprueche an die Korrelation zwischen
Bewegungen am Tablett und am Schirm.....
(u.U. reicht Dir auch A6 - die Groesse wird je nach Anwendung ueber-
schaetzt; da kann man bei Bedarf nochmal gut Geld sparen)


-----------------------------------------------------------------------------



Beamer (Gloinson, 20. Nov 2006, 12:34:27):
Zimmerbreite 4m, Raufaser weiss ist Projektorflaeche, Jalousien werden 
angeschafft, prinzipiell soll er Allesfresser sein, Praeferenz aber auf 
DVDs, DVD-Player hat HDMI/progressive Scan.

Momentan tendiere ich ja prinzipiell zu einem DLP-Beamer:
(a) weil bei LCDs bei einem Bildabstand < 2*Bildbreite die
    Rasterung wohl unschoen zu sehen sein soll (Fuellfaktor)
(b) weil ich bei Cakey oefters seinen DLP in Aktion gesehen
    habe (und nie Regenbogenprobleme hatte, ich glaube er
    hat einen teuren 1-Chip-DLP)
Sortierung momentan
 Mitsubishi 3100 > Optoma HD72i >  Panasonic PT-AE 900 E (LCD)

Frage:
- Tipps fuer Testberichte (minus Ciao, Evendi, Yahoo, testberichte.com)
- generelles Gefasel? :)


-----------------------------------------------------------------------------



Re: Beamer (Segimer, 20. Nov 2006, 12:40:04):
~#! rn=Gloinson rt=1164022467 rg=suche-biete
~#! tid=1164022467
An der Projektionsflaeche kannst du noch was machen :)
Ich denke, eine Leinwand verbessert das Bild mehr als ein teurerer Beamer.

-----------------------------------------------------------------------------



Re: Beamer (Ringor, 23. Nov 2006, 18:40:30):
~#! rn=Gloinson rt=1164022467 rg=suche-biete
~#! tid=1164022467
> - Tipps fuer Testberichte (minus Ciao, Evendi, Yahoo, testberichte.com)

Schau mal bei http://www.hifi-forum.de/ rein, die haben ein recht grosses
Projektor-Board. Viel Gefasel von Moechtegern-Profis, aber auch einiges an
Infos darunter.

> - generelles Gefasel? :)

Bei der Preisklasse, auf die Du da zielst, wird Dir die Rauhfasertapete nicht
lange Spass machen. Die Leinwand solltest Du Dir nicht unbedingt sparen; muss
ja keine super teure sein. Bastelanleitungen fuer gute Leinwaende zum selber
bauen gibt's auch in besagtem Forum.

Wenn Du den Regenbogeneffekt wirklich nicht siehst: Du Gluecklicher. ;-) Dann
sind DLP-Projektoren (noch) die qualitativ bessere Wahl. LCD-Projektoren haben
noch ein paar Kinderkrankheiten (zusammengefasst: die LCDs zeigen recht
schnell Alterserscheinungen). Ab der naechsten LCD-Generation soll sich das
angeblich(!) geben, aber die gibt es bisher nur in den suendhaft teuren
Full-HD-Geraeten. 

DLP-Projektoren haben aber meist die lauteren Luefter (falls Du
geraeuschempfindlich bist, unbedingt vorher Probe hoeren!) und sind weniger
flexibel, was die Aufstellung angeht (Projektionsabstand <-> Bildgroesse sowie
Lensshift). Tip: viele Hersteller haben Aufstellungs-Rechner auf ihren Seiten.

Da der einzige LCD-Projektor in Deiner engeren Wahl ausgerechnet das Geraet
ist, das die Pixelgrenzen "weichzeichnet", duerfte die Sichtbarkeit der Pixel
weniger das Kriterium bei dieser Auswahl fuer Dich sein. Aber wie so vieles
ist das eh Geschmackssache, daher kann ich eigentlich nur empfehlen, bei einem
Fachhaendler Deiner Wahl einen ausgiebigen Vergleich zu machen. 

Wenn Du allerdings oefter Gaeste zum DVD-schauen da hast, sollten die nach
Moeglichkeit auch nicht empfindlich sein, was den Regenbogeneffekt angeht.
Sonst sitzt Du in Deinem tollen neuen Heimkino doch wieder ganz alleine mit
Deinem DLP-Projektor. :o)


Ringor.

-----------------------------------------------------------------------------



Re: Re: Beamer (Gloinson, 23. Nov 2006, 22:10:25):
~#! rn=Ringor rt=1164303630 rg=suche-biete
~#! tid=1164022467
Thx fuer die ausfuehrlichen Tipps.

Das mit dem Fachhaendler der Wahl ist zu Zeiten von Mediamarkt und Internet
immer recht schwierig. Das Fernabsatzgesetz ist da ein kleines Trostpflaster
(wie ich beim Kauf des Filmscanners positiv erleben konnte).

Letztlich wird es der (Pixel weg- und weichzeichnende, deshalb stand er auch
drauf) Panasonic (AX100, Nachfolger des AE900) werden, aufgrund Tests eines
Vorgaengers durch Mesirii, aufgrund von Testberichten und auch wegen der oben
skizzierten Ueberlegungen zu Regenbogeneffekt fuer Gaeste, Projektonsabstand
(da ist der Panasonic sehr flexibel) und Laerm.
Ob es eine Leinwand braucht werden wir dann sehen, die Option ist offen.

Und jetzt mal einen Fachhaendler mit Boxen fuer Tests finden. Hrrrm :)


-----------------------------------------------------------------------------



Re^3: Beamer (Grimmborn, 24. Nov 2006, 10:20:16):
~#! rn=Gloinson rt=1164316225 rg=suche-biete
~#! tid=1164022467
Ja, das mit Fachhaendlern kann schwierig sein. Aber weniger in Zeiten von
Mediamarkt und Internet, sondern in Zeiten von einer erheblichen Anzahl an
Leuten die sich ausfuehrlich beim Fachhaendler beraten lassen um dann bei
Mediamarkt und Internet zu kaufen. Geiz ist geil, Das Bewusstsein dass (auch
Service-) Qualitaet ihren Preis hat ist out.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: Beamer (Gloinson, 24. Nov 2006, 12:40:36):
~#! rn=Grimmborn rt=1164360016 rg=suche-biete
~#! tid=1164022467
Gerade deshalb in Zeiten von Internet. Marktwirtschaft halt, muss man beim
Einkaufen dann mit leben koennen.


-----------------------------------------------------------------------------



Boxen ... (Gloinson, 24. Nov 2006, 23:06:57):
... huch, einer der empfohlenen Vertreiber hat nach genauerem Hinsehen ja gar
kein Studio zum Reinhoeren. Zumindest die Firma Teufel geht eher nach der
Devise "probieren sie bei sich, 8 Wochen Rueckgabe- und Umtauschrecht" (AGB).

Hmm. Ist natuerlich auch ein Ansatz, mein Wohnzimmer koennen die in einem
Proberaum eh nicht nachbauen. Macht die Sache trotzdem nicht einfacher.
Waaaaaaaaah! ;)


-----------------------------------------------------------------------------



Re: Boxen ... (Gnome, 24. Nov 2006, 23:15:45):
~#! rn=Gloinson rt=1164406017 rg=suche-biete
~#! tid=1164406017
in sachen surroundboxen bist du mit teufel an der genau richtigen adresse.
egal welche preisklasse. aber fuer deinen geldbeutel sind dort wohl
"teufel system 5" und "teufel theater 4 set 3" zu nennen, wobei erstere
wohl einen weniger hohen anspruch an die endstufe haben, was aber
*nicht* heisst, dass sie schlechter klingen oder sind.

gnOme

-----------------------------------------------------------------------------



Re: Boxen ... (Muadib, 26. Nov 2006, 10:15:35):
~#! rn=Gloinson rt=1164406017 rg=suche-biete
~#! tid=1164406017
die produkte der firma teufel sind angeblich sehr empfehlenswert
solltest du testen, lass mich mal wissen was deine erfahrungen waren bitte

-----------------------------------------------------------------------------



Re: Re: Boxen ... (Woody, 27. Nov 2006, 16:47:53):
~#! rn=Muadib rt=1164532535 rg=suche-biete
~#! tid=1164406017
Bin mit Nubert [www.nubert.de] sehr zufrieden.
Weiterer Link in Sachen Heimkino: www.beisammen.de
Brauchbare Fachzeitschrift: audiovision (auch wenn sie bunt erscheint),
da schreiben faehige Leute wie Loehneysen und Finzel mit...


-----------------------------------------------------------------------------



Re^3: Boxen ... (Muadib, 27. Nov 2006, 22:01:03):
~#! rn=Woody rt=1164642473 rg=suche-biete
~#! tid=1164406017
stereoplay, audio und phonoforum hab ich greifbar durch meinen vater. aber das
sind ziemlich grosse kanonen :)

-----------------------------------------------------------------------------



Re^5: Beamer (Woody, 28. Nov 2006, 09:50:54):
~#! rn=Gloinson rt=1164368436 rg=suche-biete
~#! tid=1164022467
Ein guter Fachhaendler ist auch in der Lage, konkurrenzfaehige Preise
zu machen (meiner zB.). Und ein Super-Service sowieso. Auch hier ist
beisammen.de eine gute Adresse, wo man fuendig wird.
Und ad DLP vs. LCD habe ich nach ausfuehrlichen Vergleichen mit ein
paar Vorurteilen bzgl. LCD aufraeumen muessen (bin vorlaeufig von LCD
zu DLP [Plus Piano -> Epson 700] gewechselt, hauptsaechlich wg. des
hohen Offsets der begehrten DLPs). Bei Detailfragen einfach tm'en :)

Woody.-


-----------------------------------------------------------------------------



Re^5: Beamer (Woody, 28. Nov 2006, 09:53:19):
~#! rn=Gloinson rt=1164368436 rg=suche-biete
~#! tid=1164022467
Ein guter Fachhaendler ist auch in der Lage, konkurrenzfaehige Preise
zu machen (meiner zB.). Und ein Super-Service sowieso. Auch hier ist
beisammen.de eine gute Adresse, wo man fuendig wird.
Und ad DLP vs. LCD habe ich nach ausfuehrlichen Vergleichen mit ein
paar Vorurteilen bzgl. LCD aufraeumen muessen (bin vorlaeufig von DLP
zu LCD [Plus Piano -> Epson 700] gewechselt, hauptsaechlich wg. des
hohen Offsets der begehrten DLPs). Bei Detailfragen einfach tm'en :)

Woody.-


-----------------------------------------------------------------------------



Honecker-Buckel (Zook, 11. Dez 2006, 18:54:55):
Hat jemand eine serioese Quelle zur Genese des Begriffs "Honecker-Buckel"?
Irgendwas aus der Bevoelkerungsstatistik oder so, was man zitieren kann?

Z

-----------------------------------------------------------------------------



S: "Sammelskript" fuer Linux/Unix (Amaryllis,  7. Feb 2007, 19:12:23):
Hi,

ich bin auf der Suche nach einem Tool, was ein System einfach abgrast und
alles relevante, was das System kennzeichnet, z.B. in ein Archiv packt.

Dazu gehoeren fuer mich z.B. /etc, Auslesen der Crontabs _plus_ Sichern der
dort aufgerufenen Skripte, evtl. sogar noch Analyse, wo ausgewertete Daten
liegen etc. pp...

Gibts sowas? Hintergrund ist, dass ich mir von einigen Systemen "Snapshots"
bzw. Referenz-Konfigurationen sichern will.

Gruss,
Ama*

-----------------------------------------------------------------------------



S: Film (Amaryllis, 31. Mar 2007, 12:14:10):
Hi,

ich habe in den 90ern mal so einen Film gesehen, in dem eine komplette Stadt
(z.B. ein Western-Dorf) mit menschlichen Robotern bestueckt und darein
Touristen gesteckt wurden. Natuerlich liefen die Roboter dann Amok und es war
einiges los ;)

Weiss noch jemand, wie der hiess?

Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: Film (Croft, 31. Mar 2007, 12:15:12):
~#! rn=Amaryllis rt=1175336050 rg=suche-biete
~#! tid=1175336050
Westworld. http://imdb.com/title/tt0070909/

Croft

-----------------------------------------------------------------------------



Re: Re: S: Film (Amaryllis, 31. Mar 2007, 12:16:21):
~#! rn=Croft rt=1175336112 rg=suche-biete
~#! tid=1175336050
Das isser... dankeschoen! ;)

Ama*

-----------------------------------------------------------------------------



Re^3: S: Film (Croft, 31. Mar 2007, 12:20:19):
~#! rn=Amaryllis rt=1175336181 rg=suche-biete
~#! tid=1175336050
Futureworld http://imdb.com/title/tt0074559/ war dann ein paar Jahre
spaeter die "Fortsetzung", wieder mit Yul Brynner als Gunner.

Croft

-----------------------------------------------------------------------------



Re^3: S: Film (Vanion,  1. Apr 2007, 15:19:26):
~#! rn=Amaryllis rt=1175336181 rg=suche-biete
~#! tid=1175336050
Hab den auch schon einpaar mal auf dem Grabbeltisch beim Mediendealer gesehen.

V*

-----------------------------------------------------------------------------



Tischgebetskanon gesucht (Anatol,  9. Apr 2007, 12:13:15):

Anfang lautet in etwa "Der Du den kleinen Vogel speisest", meine
geschaetzten Eltern sind auf der fieberhaften Suche nach dem
vollstaendigen Liedtext. Kann jemand weiterhelfen?

Danke!
Anatol


-----------------------------------------------------------------------------



Re: Tischgebetskanon gesucht (Marcus,  9. Apr 2007, 12:17:24):
~#! rn=Anatol rt=1176113595 rg=suche-biete
~#! tid=1176113595
http://www.psg-wuerzburg.de/pdf/tischgebete.pdf

seite 2.

Aber viel mehr als eine Zeile scheint das nicht zu sein.

Ciao, Google

-----------------------------------------------------------------------------



Re: Re: Tischgebetskanon gesucht (Anatol, 10. Apr 2007, 13:43:21):
~#! rn=Marcus rt=1176113844 rg=suche-biete
~#! tid=1176113595
Es sind mehr als eine Zeile - zwei. Die
Liste in dem PDF (das ich schon sah) ist
dahingehend leider gekuerzt.

Ich erinnere mich selbst noch an Bruchstuecke,
aber eben nur Bruchstuecke. :-\

Anatol

-----------------------------------------------------------------------------



Hochzeitsspiel (Bambulko, 13. Apr 2007, 13:34:11):
Ich suche noch ein paar lustige Fragen fuer ein Hochzeitsspiel. Antworten
sollen entweder Sie oder Er, bzw. Ja oder Nein sein.

Bambulko

-----------------------------------------------------------------------------



Re: Hochzeitsspiel (Boing, 13. Apr 2007, 13:37:08):
~#! rn=Bambulko rt=1176464051 rg=suche-biete
~#! tid=1176464051
Du meinst so Fragen wie 'Wer von euch hat seinen Partner schon betrogen'
oder 'Wer von euch laestert gerne ueber die Schwiegermutter'? :)
  Boing

-----------------------------------------------------------------------------



Re: Re: Hochzeitsspiel (Bambulko, 13. Apr 2007, 13:38:18):
~#! rn=Boing rt=1176464228 rg=suche-biete
~#! tid=1176464051
Ja in etwa, nicht zu gemein, aber auch nicht zu ueblich (Wer bringt den Muell
raus?).

Bambulko

-----------------------------------------------------------------------------



Re^3: Hochzeitsspiel (Anthea, 13. Apr 2007, 14:25:05):
~#! rn=Bambulko rt=1176464298 rg=suche-biete
~#! tid=1176464051
Wer braucht laenger im Bad
Wer kocht besser
Wer ist nachtragender
Wer faehrt besser Auto
Bist Du vor dem ersten Kaffee wirklich wach?
Wer ist sportlicher
Wer ist vergesslicher
Wer geht frueher ins Bett
Wer kann besser haushalten?
Wer ist ordentlicher?
Wer isst schneller?
Wer weint eher bei traurigen Filmszenen?
Wer ist wehleidiger?
Wer ist handwerklich geschickter?
Wer entscheidet bei Wohnungsdesignfragen?
Wer kann besser Fahrradreifen flicken?
Wer macht den verstopften Kuechenabfluss wieder frei?
Habt ihr euch schon mal aus der Wohnung ausgesperrt?

-----------------------------------------------------------------------------



Re^4: Hochzeitsspiel (Maharet, 13. Apr 2007, 14:26:23):
~#! rn=Anthea rt=1176467105 rg=suche-biete
~#! tid=1176464051
Wer kuemmert sich nachts ums schreiende Kind?

-----------------------------------------------------------------------------



Re^5: Hochzeitsspiel (Bambulko, 13. Apr 2007, 14:33:01):
~#! rn=Maharet rt=1176467183 rg=suche-biete
~#! tid=1176464051
Wer hat mehr Brusthaare? :-)

-----------------------------------------------------------------------------



Re^6: Hochzeitsspiel (Gloinson, 13. Apr 2007, 14:36:10):
~#! rn=Bambulko rt=1176467581 rg=suche-biete
~#! tid=1176464051
Ah, eine gleichgeschlechtliche Ehe?


-----------------------------------------------------------------------------



Re^7: Hochzeitsspiel (Bambulko, 13. Apr 2007, 14:37:54):
~#! rn=Gloinson rt=1176467770 rg=suche-biete
~#! tid=1176464051
Da waere es nicht lustig. Es sei denn bei zwei Frauen :-)

-----------------------------------------------------------------------------



webseiten (Mesirii, 14. Apr 2007, 13:22:21):
Wir suchen zur Verstaerkung unseres Mud-Webseiten Teams noch Leute mit
Lust, Zeit und etwas Ahnung (XTHML,CSS2)
Wer sich also dafuer begeistern koennte, bitte bei mir melden.

Gruss Mesi

-----------------------------------------------------------------------------



Ferienwohnung(en) gesucht (Vanir, 18. Apr 2007, 20:09:40):
Huhu,

mir ist etwas ziemlich Dummes passiert: Es haben mehr Leute zu einem geplanten
WG-Treffen zugesagt als erwartet (Totgesagte leben laenger).

Deshalb suche ich eine Ferienwohnung (oder auch zwei, dann aber nahe
beieinander) fuer 9-10 Personen in den noerdlichen Gefilden. Um es etwas zu
praezisieren: Im Raum Hamburg-Nordsee-Osnabrueck. Ich hatte mir schon was in
Lueneburg rausgesucht, das passt aber von der Personenzahl nicht.

Achja, der Termin koennte auch interessant sein fuer die Vorschlaege
Eurerseits: 08.-10.Juni.
Vielleicht weiss einer von Euch wo ich noch suchen koennte.

Vielen Dank, Vanir.

-----------------------------------------------------------------------------



Rucksack vermisst (Mesirii, 12. Mai 2007, 01:40:57):
Ich hab gestern vorm Einschlafen meinen Rucksack in Para-Drakonien beim
Purpurdrachen liegenlassen. falls den wer gefunden hat wuerd ich mich
sehr freuen den wiederzukriegen, da waren all meine Waffen drin.

Danke Mesi

-----------------------------------------------------------------------------



Was macht man mit einem 286er? (Ronda, 19. Mai 2007, 23:25:46):
Ich muss grade massiv aufraeumen und stehe vor der Herausforderung, was ich
mit meinem alten 286 anfange (den ZX81 und den C64 habe ich schon gerettet).
Dabei ist auch ein Star LC 24 Nadeldrucker mit Parallelport, der PC hat eine
40 MB (!) Platte und 640 K Hauptspeicher.

Habt Ihr irgendwelche Ideen, was man mit dem alten Schaetzchen machen kann,
ausser es wegzuwerfen? Mir ist heute sogar noch die Rechnung fuer die ganzen
Sachen in die Haende gefallen, fuer den Preis wuerde man heute auch nen ganz
schickes System kriegen...

Ronda *ausmistenderweise*

-----------------------------------------------------------------------------



Re: Was macht man mit einem 286er? (Darklor, 20. Mai 2007, 03:24:41):
~#! rn=Ronda rt=1179609946 rg=suche-biete
~#! tid=1179609946
An ein Museum verkau^aeh schenken?

Darklor

-----------------------------------------------------------------------------



Suche: Linux-Waschmittel (Gloinson, 22. Mai 2007, 22:19:51):
Mahlzeit,
hat noch jemand einen Karton von diesem guten Zeug (notfalls auch leer)
herumstehen?

http://de.wikipedia.org/wiki/Linux_(Waschmittel) 


-----------------------------------------------------------------------------



Re: Suche: Linux-Waschmittel (Grunt, 23. Mai 2007, 20:18:12):
~#! rn=Gloinson rt=1179865191 rg=suche-biete
~#! tid=1179865191
Ich habe neulich hier in Hamburg beim Imperialis^WWal-Mart um die Ecke
ein ganzes Regal voll davon gesehen. Ob Kartons dabei waren, weiss ich
nicht mehr genau, aber zumindest gibt es das Zeug im Beutel (und auch
in/fuer bunt). Wenn Bedarf besteht, kann ich nochmal gucken gehen...

Grunt

-----------------------------------------------------------------------------



Re: Re: Suche: Linux-Waschmittel (Gloinson, 23. Mai 2007, 20:31:48):
~#! rn=Grunt rt=1179944292 rg=suche-biete
~#! tid=1179865191
Das ist ein heisser Tipp, ich guck mal eim hiesigen und komme notfalls auf das
Angebot zurueck :)


-----------------------------------------------------------------------------



S: Organizer (Amaryllis, 22. Jul 2007, 13:23:04):
Hi,

da ich unfaehig bin, in meiner Zettelwirtschaft weiter durchzublicken, suche
ich einen Organizer.
Hatte vor langer Zeit mal einen Palm V, dann einen Tungsten, dann lange Zeit
nichts mehr.

Hat jemand Ahnung von dem Markt und kann mir ein Geraet empfehlen, was
einfachen Anspruechen genuegt? (Quatschfeatures ala MP3-Player, Navi, ...
muessen nicht sein).

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: Organizer (Bambulko, 23. Jul 2007, 09:42:30):
~#! rn=Amaryllis rt=1185103384 rg=suche-biete
~#! tid=1185103384
Ich habe einen Dell Axim x50v mit Windows Mobile und bin hochzufrieden.
Insbesondere die WLAN funktion moechte ich nicht missen, sonst muesste ich
aufhoeren Icewars zu spielen :-)

-----------------------------------------------------------------------------



Re: S: Organizer (Zook, 23. Jul 2007, 10:28:09):
~#! rn=Amaryllis rt=1185103384 rg=suche-biete
~#! tid=1185103384
Ich vertrete die These, dass wer in seiner Zettelwirtschaft nicht
zurecht kommt, hoechstwahrscheinlich auch elektronisch sich nicht
gut organisieren kann.

Ich wuerde daher erst mal ueberlegen, wie Du Dein Ordnungssystem 
generell aufbauen moechtest und dann nach passenden Hilfsmitteln
suchen.


Z

-----------------------------------------------------------------------------



Re: Re: S: Organizer (Grimmborn, 23. Jul 2007, 10:45:45):
~#! rn=Zook rt=1185179289 rg=suche-biete
~#! tid=1185103384
Generell gebe ich Dir uneingeschraenkt recht. Du laesst aber die
psychologische Komponente ausser acht: ein "ich konnte das in meinen Zetteln
nicht finden" resultiert in Verachtung. Ein "der Organizer ist so neu, ich
muss mich erst noch zurechtfinden" fuehrt zu Geduld, gefolgt von mitleidigem
Verstaendnis wenn man zu "ich hatte das hier, aber das Drecksding hat das beim
letzen Absturz verschluckt, Dreckswindowsmobile!" uebergeht. Insofern bewahrt
so ein elektronischer "Helfer" vor sozialer Vereinsamung.

GdA

-----------------------------------------------------------------------------



Re: Re: S: Organizer (Amaryllis, 23. Jul 2007, 21:42:08):
~#! rn=Zook rt=1185179289 rg=suche-biete
~#! tid=1185103384
Da ich bereits 2 PDAs hatte, _weiss_ ich, dass ich mit sowas rein
organisationstechnisch klar komme ;)

Ama*

-----------------------------------------------------------------------------



Re^3: S: Organizer (Zook, 24. Jul 2007, 08:24:22):
~#! rn=Amaryllis rt=1185219728 rg=suche-biete
~#! tid=1185103384
Offensichtlich nicht. ;) Z

-----------------------------------------------------------------------------



Re^4: S: Organizer (Bambulko, 24. Jul 2007, 09:10:35):
~#! rn=Zook rt=1185258262 rg=suche-biete
~#! tid=1185103384
Achja, nochmal zum Axim x50v. Ein Nachteil ist, dass es etwas schwierig ist
die Orientierung des Bildschirms zu aendern (Hoch- und Querformat). Wenn Du
Anwendungen hast, die das staendig brauchen, ist es etwas nervig.

-----------------------------------------------------------------------------



Notebook (Cassandra,  4. Aug 2007, 20:56:05):
Ich bin auf der suche nach einem neuen Notebook. 
Folgende Eckdaten sollte es haben,:
1GB Ram, mehr brauche ich nicht
Onboardgrafik
ca 15 zoll Monitor
mglichst leise, Stromsparend
Akkulaufzeit ist nicht so wichtig

Ich brauche den als schreibmaschine und zum Photos bearbeiten (drehen etc,
nichts aufwendiges)
wichtig ist ein matter Monitor da ich die schminkspiegel nicht marg.
XP  lieber als Vista, nur Linux wre noch besser.

Knnt Ihr mir da was empfehelen, sollte sicheher im unteren Preisbereich
bewegen.

Cassy

-----------------------------------------------------------------------------



Re: Notebook (Vanion,  4. Aug 2007, 21:26:37):
~#! rn=Cassandra rt=1186253765 rg=suche-biete
~#! tid=1186253765
Ich hab mir auch vor einigen Wochen mal Gedanken um ein neues Notebook gemacht
- allerdings letztlich doch keins gekauft.

Meine Ueberlegungen findest du unter http://vanion.de/Main/Notebookkauf 
Vielleicht bringen Die dich ja irgendwie weiter.

V*

-----------------------------------------------------------------------------



Re: Re: Notebook (Cassandra,  4. Aug 2007, 21:30:01):
~#! rn=Vanion rt=1186255597 rg=suche-biete
~#! tid=1186253765
mit onboard Grafik meine ich, das ich keine einzelne Grafikkarte will
Stromsparen kann man auch wollen aus anderen gruenden als dem akku

wer dmr gleich mal ansehen was ihr da vorschlagt.

Was die grafik betrift, ich will photos kucken, grafikspiele kommen da nicht
drauf, haupsache das mud und solitaer laufen.

cassy

-----------------------------------------------------------------------------



Re: Notebook (Gnome,  4. Aug 2007, 21:30:09):
~#! rn=Cassandra rt=1186253765 rg=suche-biete
~#! tid=1186253765
1. ram kann man nie genug haben

2. onboardgrafik? soso. zeig mir mal eins ohne :)

3. akkulaufzeit ist nicht wichtig? warum soll er dann stromsparend sein?

4. es gibt leider kaum noch matte LCDs. die hersteller haben seit
   geraumer zeit umgeschwenkt, weil die "kunden" dann besser filme
   gucken konnten. nun werden erste beschwerden laut, dass dieselben
   "kunden" in erhellter umgebung aufgrund von reflxionen nicht gut
   arbeiten koennten. ich lach mich schlapp.
   ob die hersteller nun nochmal umschwenken...? nunja, zumindest hoffen
   kann man ja.

5. [X] du moechtest ein ibm thinkpad r60. guckst du e-bay 250149427340.
       das hat auch noch ein mattes LCD.

gnOme

-----------------------------------------------------------------------------



Re: Re: Notebook (Vanion,  4. Aug 2007, 21:31:27):
~#! rn=Gnome rt=1186255809 rg=suche-biete
~#! tid=1186253765
5a.[x] Um mal einem hier nicht naeher genannten IBM-Mitarbeiter vorzugreifen:
       Die heissen nu Lenovo.

V*

-----------------------------------------------------------------------------



S: Hilfe bei Kameraproblem (Orktoeter, 31. Aug 2007, 15:21:00):
Habe eine Powershot A70, vor einiger Zeit machte sie ploetzlich nur nur
voellig verschwommene und unscharfe Bilder. Nach diversen anderen Versuchen
(ein-Ausschalten, modi veraendern etc.), habe ich sie dann 2 Tage spaeter
heftig geschuettelt und es ging wieder. Nun ist der gleich Fehler wieder
aufgetreten (nicht ganz so extrem, man kann das Objekt noch erahnen),
schuetteln, selbst Schlagen hilft nicht.

Hat wer Erfahrung mit so einem Problem und kennt eine Abhilfe?

OrkT.

-----------------------------------------------------------------------------



Re: S: Hilfe bei Kameraproblem (Gloinson, 31. Aug 2007, 15:32:56):
~#! rn=Orktoeter rt=1188566460 rg=suche-biete
~#! tid=1188566460
Es gab mal eine Rueckrufaktion/Ersetzaktion fuer die A70, weil sich der Chip
loeste (hitzeempfindlicher Kleber). Eventuell ist deine ja betroffen. Damals
(-2 Jahre) wurden die Dinger ohne Kosten ausgetauscht. Symptom war aber
eigentlich eher ein Violett-Schwarzbild.


-----------------------------------------------------------------------------



Re: Re: S: Hilfe bei Kameraproblem (Eljo,  1. Sep 2007, 01:56:09):
~#! rn=Gloinson rt=1188567176 rg=suche-biete
~#! tid=1188566460
Wenn Du magst, kann ich es gerne auch mal mit Schuetteln und Schlagen
versuchen - also wenn Dir sowas gefaellt ... jedem das Seine. ;-)

-----------------------------------------------------------------------------



Re: Re: S: Hilfe bei Kameraproblem (Ronda,  1. Sep 2007, 20:16:26):
~#! rn=Gloinson rt=1188567176 rg=suche-biete
~#! tid=1188566460
Ich glaube, die A70 hatte wie Gloinson sagt die gleichen Probleme wie meine
Minolta Dimage: Die CCD Chips hatten einen Serienfehler, der den Chip nach
einigen Jahren zerstoert. Das Bild war dann sehr schwammig oder nur noch grau.
Gegen die Kamera schlagen (oergs!) hilft dabei aber gar nichts.

Googel einfach mal nach Deinem Kameratyp und "CCD Probleme", dann solltest Du
dazu weiteres finden. Die betroffenen Kamerahersteller boten eigentlich alle
kostenlosen Austausch an. Mir hat Sony (Nachfolgefirma von Konika-Minolta) den
gesamten Kaufpreis der Kamera erstattet, Nachhaken hilft also hoffentlich.
Viel Erfolg!

Ronda

-----------------------------------------------------------------------------



suche frueher - biete besser (Eljo, 16. Sep 2007, 01:38:22):
Frueher war alles besser.

Punkt!

-----------------------------------------------------------------------------



Re: suche frueher - biete besser (Alboin, 16. Sep 2007, 22:13:09):
~#! rn=Eljo rt=1189899502 rg=suche-biete
~#! tid=1189899502
Das geht etwas anders:
Frueher war die zukunft auch besser. 
Karl Valentin

al

-----------------------------------------------------------------------------



Re^3: S: Hilfe bei Kameraproblem (Zook, 21. Sep 2007, 18:27:52):
~#! rn=Eljo rt=1188604569 rg=suche-biete
~#! tid=1188566460
Meine A70 hat nun auch ne Macke, ein Teil der Knoepfe fuer 
Menues und Einstellung auf der Rueckseite tut gar nix mehr.
Jmd. dazu ne Idee?

Zook.

-----------------------------------------------------------------------------



Re^4: S: Hilfe bei Kameraproblem (Gloinson, 22. Sep 2007, 11:53:07):
~#! rn=Zook rt=1190392072 rg=suche-biete
~#! tid=1188566460
Vielleicht einfach nur die Druckkontakte korrodiert oder verdreckt? Also mal
im Netz nach Anleitungen zur Kameraoeffnung suchen und vorsichtig mit Alkohol
die Kontakte reinigen?


-----------------------------------------------------------------------------



Externer Laptopkuehler (Darklor, 18. Okt 2007, 17:25:21):
In letzter Zeit wird mein Rechner immer so heiss. Hat hier vielleicht jemand
Erfahrung mit externen Laptopkuehlern und koennte da einen empfehlen?

Darklor

-----------------------------------------------------------------------------



Re: Externer Laptopkuehler (Gnome, 18. Okt 2007, 17:29:02):
~#! rn=Darklor rt=1192721121 rg=suche-biete
~#! tid=1192721121
externer laptopkuehler? kuehlschrank? ventilator? eisblock?
oder gibts sowas wirklich?

-----------------------------------------------------------------------------



Re: Re: Externer Laptopkuehler (Zesstra, 18. Okt 2007, 17:31:00):
~#! rn=Gnome rt=1192721342 rg=suche-biete
~#! tid=1192721121
Ja, sowas gibt es, sehen aus wien dickes Tablett mit meist 2 Luftquirlen drin,
wo man den Laptop draufstellt. Keine Ahnung, wieviel es fuer die Temperatur
bringt, aber das Ding, was ne Kollegin hier immer hatte, war einfach nur laut.
Nervtoetend laut.
Und im Batteriebetrieb empfiehlt sich so ein Ding vermutlich ohnehin nicht.

Zesstra

-----------------------------------------------------------------------------



Re^3: Externer Laptopkuehler (Darklor, 18. Okt 2007, 17:37:17):
~#! rn=Zesstra rt=1192721460 rg=suche-biete
~#! tid=1192721121
Jupp so etwas gibt es und davon halt auch diverse Varianten... 

Mich wuerd ja ein effektives, aber nicht zu lautes Geraet interessieren, nur
hab ich leider keine Ahnung, ob es das gibt 

Darklor

-----------------------------------------------------------------------------



Re^3: Externer Laptopkuehler (Gnome, 18. Okt 2007, 17:37:25):
~#! rn=Zesstra rt=1192721460 rg=suche-biete
~#! tid=1192721121
hmm, ok, anders: wenn ein laptop zu heiss wird, ist er entweder falsch
konstruiert oder die kuehlungsschlitze sind verdreckt oder der luefter
laeuft zu langsam. in allen faellen waere das letzte woran ich denken
wuerde, mir einen externen laptopkuehler zu kaufen, weil uebel nicht bei
der wurzel angepackt.

gnOme

-----------------------------------------------------------------------------



Re^4: Externer Laptopkuehler (Darklor, 18. Okt 2007, 17:40:04):
~#! rn=Gnome rt=1192721845 rg=suche-biete
~#! tid=1192721121
Nun ja, aber ich schaetze ein externe Laptopkuehler waer wesentlich billiger,
als n neuer Laptop...

Darklor

-----------------------------------------------------------------------------



Re^5: Externer Laptopkuehler (Gnome, 18. Okt 2007, 17:41:42):
~#! rn=Darklor rt=1192722004 rg=suche-biete
~#! tid=1192721121
noch billiger waere, den laptop von innen zu reinigen oder ihn
einzuschicken, so er noch gewaehrleistung/garantie hat.

gnOme

-----------------------------------------------------------------------------



Re^5: Externer Laptopkuehler (Gloinson, 18. Okt 2007, 17:42:00):
~#! rn=Darklor rt=1192722004 rg=suche-biete
~#! tid=1192721121
Aufmachen, durchsaugen, Luefter checken und ggf versuchen zu ersetzen,
Prozessorspannung mit sowas wie RMClock runtersetzen wenn moeglich,
Grafikkarte via Treiber in Stromsparmodus schalten.


-----------------------------------------------------------------------------



Re^6: Externer Laptopkuehler (Croft, 18. Okt 2007, 17:46:36):
~#! rn=Gloinson rt=1192722120 rg=suche-biete
~#! tid=1192721121
Oder weniger WoW spielen ;-)

Croft

-----------------------------------------------------------------------------



Re^6: Externer Laptopkuehler (Darklor, 18. Okt 2007, 17:46:56):
~#! rn=Gloinson rt=1192722120 rg=suche-biete
~#! tid=1192721121
Nun dafuer bin ich technisch nich versiert (mutig) genug, ausserdem soll er
seine jetztige Leistungsfaehigkeit ja auch (bei)behalten

Darklor

-----------------------------------------------------------------------------



Re: Re: Externer Laptopkuehler (Vardion,  2. Nov 2007, 18:28:52):
~#! rn=Gnome rt=1192721342 rg=suche-biete
~#! tid=1192721121
Ja, gibts:
http://www.heise.de/ct/schlagseite/07/23/gross.jpg

Links im Bild.

Vardion

-----------------------------------------------------------------------------



Re^3: Externer Laptopkuehler (Darklor,  3. Nov 2007, 01:06:43):
~#! rn=Vardion rt=1194024532 rg=suche-biete
~#! tid=1192721121
Danke hab meinen jetzt schon ne Weile, bin recht zufrieden damit - es gab
bisher keine weiteren Abstuerze

Ein Notepal W1 von CoolerMaster in silber (passend zu meinem Rechner ;))

Falls es wen interessieren sollte (wie er aussieht): http://www.coolermaster.c
om/products/product.php?act=detail&tbcate=152&id=2528

Darklor

-----------------------------------------------------------------------------



S: Guenstigen Webspace fuer ein PMWiki (Zook, 16. Nov 2007, 10:15:38):
Hallo, ich suche guenstigen Webspace fuer ein PMWiki, also 
sollte wohl irgendwie PHP verfuegbar sein. Traffic wird
wohl nicht deutlich mehr als nen GB/Monat sein. Eine .de-
Domain waere auch noch nett und ein, zwei, drei 
E-Mail-Postfaecher. Was muss man denn da bei welchem "guenstigen"
Anbieter kalkulieren? Jemand einen Preisueberblick?

Zook.

-----------------------------------------------------------------------------



Re: S: Guenstigen Webspace fuer ein PMWiki (Anthea, 16. Nov 2007, 10:21:11):
~#! rn=Zook rt=1195204538 rg=suche-biete
~#! tid=1195204538
Ich bin da bei all-inkl.com, bei denen ist das "kleine" Privat-Paket dann fuer
4,95/Monat zu haben. Fuer nen PMWiki brauchst Du ja nicht nur PHP sondern auch
eine Datenbank, oder?

-----------------------------------------------------------------------------



Re: Re: S: Guenstigen Webspace fuer ein PMWiki (Zook, 16. Nov 2007, 10:25:14):
~#! rn=Anthea rt=1195204871 rg=suche-biete
~#! tid=1195204538
ne, pmwiki arbeitet mit flat files. zook.

-----------------------------------------------------------------------------



Re^3: S: Guenstigen Webspace fuer ein PMWiki (Anthea, 16. Nov 2007, 10:30:43):
~#! rn=Zook rt=1195205114 rg=suche-biete
~#! tid=1195204538
Dann schau doch z.B. mal bei http://www.host4free.de/ vorbei.

-----------------------------------------------------------------------------



Re^4: S: Guenstigen Webspace fuer ein PMWiki (Mesirii, 16. Nov 2007, 13:57:59):
~#! rn=Anthea rt=1195205443 rg=suche-biete
~#! tid=1195204538
Du kannst den Kram auch auf meinen Server packen, hast ja da schon ein Home
Domains gibts bei Domainfactory fuer 6 EUR/Jahr.
Mesi

-----------------------------------------------------------------------------



Re^5: S: Guenstigen Webspace fuer ein PMWiki (Montanus, 21. Nov 2007, 13:40:44):
~#! rn=Mesirii rt=1195217879 rg=suche-biete
~#! tid=1195204538
Warum willst du ein PlayMobil-Wiki erstellen? Oder benuetzt du wieder
irgendwelche komishcen Abkuerzungen?

-----------------------------------------------------------------------------



USB-Disk (Bambulko, 21. Nov 2007, 13:53:20):
Kennt jemand eine gute externe USB-Festplatte? So um die 500 GB.

Bambulko

-----------------------------------------------------------------------------



Re: USB-Disk (Zesstra, 21. Nov 2007, 13:56:55):
~#! rn=Bambulko rt=1195649600 rg=suche-biete
~#! tid=1195649600
Mhmm... Welche Baugroesse (3.5'', 2.5'', 1.8'' ?). Stromversorgung ueber ext.
Netzteil oder USB-Bus?
Allgemein hab ich gute Erfahrungen mit den Icy-Box-Gehaeuse von Raidsonic +
eine separat gekaufte Platte gemacht.

Zesstra

-----------------------------------------------------------------------------



Re^6: S: Guenstigen Webspace fuer ein PMWiki (Zook, 21. Nov 2007, 14:42:13):
~#! rn=Montanus rt=1195648844 rg=suche-biete
~#! tid=1195204538
Warum spielt das Warum bei meiner Frage eine Rolle?
Zook.

-----------------------------------------------------------------------------



Re^7: S: Guenstigen Webspace fuer ein PMWiki (Montanus, 21. Nov 2007, 14:51:59):
~#! rn=Zook rt=1195652533 rg=suche-biete
~#! tid=1195204538
Weil ich dir das nicht zugetraut haette, deine wenige dir als Mudgott noch
verbleibende Zeit in ein so zeitintensives Hobby wie Playmobil zustecken.
Chapeau!

-----------------------------------------------------------------------------



Re^8: S: Guenstigen Webspace fuer ein PMWiki (Zook, 21. Nov 2007, 14:52:48):
~#! rn=Montanus rt=1195653119 rg=suche-biete
~#! tid=1195204538
Ueber meine Zeitvergeudung willst Du so im 
Detail glaube ich auch gar nichts wissen.
Zook.

-----------------------------------------------------------------------------



Re^9: S: Guenstigen Webspace fuer ein PMWiki (Montanus, 21. Nov 2007, 14:54:12):
~#! rn=Zook rt=1195653168 rg=suche-biete
~#! tid=1195204538
Ach ws. Du teilst sie uns doch in einer anderen Rubrik immer wieder mit, wenn
du dich als FAZ-Leser outest.
Und von Vergeudug hat hier eh niemand ausser dir geschrieben.

-----------------------------------------------------------------------------



Re^10: S: Guenstigen Webspace fuer ein PMWiki (Zook, 21. Nov 2007, 15:04:42):
~#! rn=Montanus rt=1195653252 rg=suche-biete
~#! tid=1195204538
Ich weiss sehr wohl welche Worte ich waehle. 
Zook.


-----------------------------------------------------------------------------



Re: USB-Disk (Ronda, 25. Nov 2007, 11:25:10):
~#! rn=Bambulko rt=1195649600 rg=suche-biete
~#! tid=1195649600
Haengt wirklich ein bisschen von Deiner Definition von "gut" ab... aber ich
hab grad gesehen, dass digitalo.de eine 500er Platte im "Porsche Design"
(LaCie) fuer 100 Euro im Angebot hat. Ich habe im gleichen Design eine 250er
und finde Design und Stabilitaet des Gehaeuses klasse (Metall, kein Plastik).
Ueber das Innenleben kann ich Dir leider nichts sagen, da hilft wohl nur
googeln und Testberichte lesen...

Ronda

-----------------------------------------------------------------------------



Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Shani, 30. Nov 2007, 23:44:42):
Hallo zusammen,

ich suche eine Moeglichkeit meine Prepaidkarte online aufzuladen. Bedingungen
sind aber erstens, dass Zahlung per Lastschrift moeglich sein sollte da ich
keine Kreditkarte besitze und dass ich ausserdem keine SMS mit einem Pin
bekomme der irgendwo eingegeben werden muss, weil ich mangels Sprachausgabe
auf dem Handy keine SMS lesen kann. 

Ich hab eben schon selbst im Netz nach sowas gesucht, aber es war jedes Mal
entweder die SMS oder die Kreditkarte das Problem.

Waere klasse, wenn hier jemand was wuesste!!!

Achja, falls es weiterhilft, mein Netz ist E-Plus.

Liebe Gruesse
Shani

-----------------------------------------------------------------------------



Re: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Zesstra, 30. Nov 2007, 23:46:22):
~#! rn=Shani rt=1196462682 rg=suche-biete
~#! tid=1196462682
Mhmm, so einen Dienst bietet die lokale Sparkasse hier an, soweit ich mich
erinnere, allerdings nur, wenn man bei denen ein Konto hat. :-(

Zesstra

-----------------------------------------------------------------------------



Re: Re: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Shani, 30. Nov 2007, 23:49:03):
~#! rn=Zesstra rt=1196462782 rg=suche-biete
~#! tid=1196462682
Das hab ich auch gefunden als ich gesucht hab. Scheidet aber leider aus weil
ich nicht bei der Sparkasse bin. :-(

-----------------------------------------------------------------------------



Re^3: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Gloinson,  1. Dez 2007, 00:05:58):
~#! rn=Shani rt=1196462943 rg=suche-biete
~#! tid=1196462682
Ich glaub bei sowas wie klarmobil etc. ist das nur Pseudo-Prepaid. Also
sprich, man hat dort die Option ein Konto anzugeben, von dem automagisch
aufgeladen wird. 
Wo ich gerade nachgucke, steht bei meinem Simyo auch "automatische Aufladen
ist deaktiviert". Gibt es also wohl auch. Vielleicht hilft das ja.


-----------------------------------------------------------------------------



Re^4: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Zesstra,  1. Dez 2007, 00:23:18):
~#! rn=Gloinson rt=1196463958 rg=suche-biete
~#! tid=1196462682
Ja, stimmt, da hast Du recht. Dort hat man im prinzip einen Vertrag ohne
Grundgebuehr, bei dem am Monatsende abgebucht wird.

Zesstra

-----------------------------------------------------------------------------



Re^4: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Shani,  1. Dez 2007, 00:53:33):
~#! rn=Gloinson rt=1196463958 rg=suche-biete
~#! tid=1196462682
Hmm. Also bei E-Plus gibts sowas nicht, oder jedenfalls hab ich nichts
dergleichen gefunden. Allerdings ist die Seite von denen auch reichlich
unuebersichtlich fuer Screenreader... Naja, und ich denk mal wenn man bei
Klarmobil keinen Vertrag hat kann man das da wohl nich machen, oder?

-----------------------------------------------------------------------------



Re^5: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Zesstra,  1. Dez 2007, 00:54:43):
~#! rn=Shani rt=1196466813 rg=suche-biete
~#! tid=1196462682
Nee, dazu muesstest Du zu Klarmobil (oder einem der Mitbewerber) wechseln, was
natuerlich auch etwas Aufwand ist.

Zesstra

-----------------------------------------------------------------------------



Re^6: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Shani,  1. Dez 2007, 00:56:41):
~#! rn=Zesstra rt=1196466883 rg=suche-biete
~#! tid=1196462682
Hmm. Also gleich den Anbieter wechseln wollte ich eigentlich nicht. *g* Aber
auf jeden Fall trotzdem Danke :-)

-----------------------------------------------------------------------------



Re^6: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Gloinson,  1. Dez 2007, 00:57:07):
~#! rn=Zesstra rt=1196466883 rg=suche-biete
~#! tid=1196462682
Ja, sicher, man muss halt allen Bekannten Bescheid geben: neue Nummer.

Oder Portierungskosten bezahlen.

Also suchst du effektiv eine Bank, bei der du so eine Online-Aufladung fuer
E-Plus hast. Die DKB bietet sowas auch an, will aber AFAIK ein festes
Einkommen (Angestellter) fuer ein Konto.


-----------------------------------------------------------------------------



Re^7: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Shani,  1. Dez 2007, 00:58:42):
~#! rn=Gloinson rt=1196467027 rg=suche-biete
~#! tid=1196462682
Das ist ja noch komplizierter als den Anbieter zu wechseln, ausserdem kann ich
kein festes Einkommen aufbieten. *g*

-----------------------------------------------------------------------------



Re^7: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Zook,  1. Dez 2007, 12:41:42):
~#! rn=Gloinson rt=1196467027 rg=suche-biete
~#! tid=1196462682
Bei meiner Volksbank (VR Bank Biedenkopf-GLadenbach) 
geht Eplus aufladen ueber das Onlinebanking; ich weiss
aber nicht, ob die dann eine SMS mit einem PIN zusenden. Muesste
man vorher mal fragen. Ich vermute, die Volksbank Mittelhessen
hat wohl auch sowas, weiss ich aber nicht sicher. Zook.

-----------------------------------------------------------------------------



Re^8: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Gloinson,  1. Dez 2007, 12:55:53):
~#! rn=Zook rt=1196509302 rg=suche-biete
~#! tid=1196462682
Machen halt inwzwischen viele Banken. Die zwei, bei denen ich das gemacht habe
(<Spasskasse>, DKB) schicken nichts mit PINs, weisen dich nur beim Aufbuchen
ueber ihr Portal darauf hin, dass du die Nummer bitte sorgfaeltig tippen
solltest, da sie danach nichts mehr rueckbuchen koennen.


-----------------------------------------------------------------------------



Re^9: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Mesirii,  1. Dez 2007, 13:53:06):
~#! rn=Gloinson rt=1196510153 rg=suche-biete
~#! tid=1196462682
man kann bei Eplus per Ueberweisung bezahlen. Ich hab das mal fuer Shani
gemacht und wir verrechnen das dann.
Mesi

-----------------------------------------------------------------------------



Re^10: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Gloinson,  1. Dez 2007, 14:01:01):
~#! rn=Mesirii rt=1196513586 rg=suche-biete
~#! tid=1196462682
Stimmt. Ganz vergessen. Soll mit dem Simyo-Kram angeblich auch gehen (weil
E-basiert):

--
Ganz einfach mit Ueberweisungstraegern: Aufladung ueber 15 ., 20 . oder 30 ..
Sie muessen nur noch den Betrag und Verwendungszweck (Ihre 11-stellige
Rufnummer) eingetragen, die Bankverbindung hinzufuegen und unterschreiben. Die
Aufladung Ihres Prepaid Guthabenkontos erfolgt innerhalb weniger Tage (ca. 3
bis 5, max. 10 Tage).
Bankverbindung:
Commerzbank Duesseldorf
BLZ 300 400 00
Kontonummer: 1 21 79 00 01
Empfaenger: E-Plus Mobilfunk GmbH & Co.KG
Verwendungszweck: E-Plus Rufnummer z. B. 01771234567
--

-----------------------------------------------------------------------------



Re^11: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Shani,  1. Dez 2007, 20:59:16):
~#! rn=Gloinson rt=1196514061 rg=suche-biete
~#! tid=1196462682
Hi,

also, das mit dem aufladen ueber Onlinebanking kann ich leider nicht machen da
TANs fuer blinde eher unpraktisch, sprich nicht einscanbar sind.

Aber das mit der Aufladung per Ueberweisung ist schonmal immerhin eine
Moeglichkeit.
Danke fuer die Daten, die werd ich mir auf jeden Fall mal aufheben.

Shani

-----------------------------------------------------------------------------



Re^12: Suche eine Moeglichkeit meine Prepaidkarte online aufzuladen (Gast1,  6. Dez 2007, 22:51:05):
~#! rn=Shani rt=1196539156 rg=suche-biete
~#! tid=1196462682
Die meisten Banken bieten HBCI an, da kannst du statt TANs eine Smartcard
benutzen. Und um Prepaidkarten aufzuladen, lohnt haeufig ein Blick bei Ebay.
Da spart man meistens noch 10-20% gegenueber den Normalpreisen. Also z.b. 60
Euro Aufladekarte fuer 50 Euro ersteigern. Dann mit Paypal zahlen, die ziehen
per Lastschrift ein und man umgeht auch TANs. Die Aufladecodes bekommt i.d.R.
per Email zugeschickt. Und die werden dann einfach mit so einem komischen Code
eingegeben *106*Code# oder so aehnlich...

-----------------------------------------------------------------------------



S: Transport Koeln-Wien (Orktoeter,  5. Jan 2008, 20:19:45):
Faehrt zufaellig wer in der naechsten Zeit von Koeln nach Wien und wuerde mir
5 Glaeser mitbringen? Wenn ja: mail an mich

LG, OrkT aka Bernd.

-----------------------------------------------------------------------------



Suche Tutorial fuer gutes Webdesign (Ronda,  6. Jan 2008, 14:47:54):
Hallo,

ich suche ein - moeglichst auch fuer Design-Laien - geeignetes Tutorial fuer
"gutes Webdesign". Nicht wie so oft ueber HTML/CSS-Tuefteleien, sondern
darueber, was "gut aussieht" und "gut benutzbar" ist. Logisch: Das ist
vielfach Geschmacksache - aber gewisse Grundregeln gibt es dafuer sicher
auch...?

Suchenderweise,

Ronda

-----------------------------------------------------------------------------



Re: Suche Tutorial fuer gutes Webdesign (Mesirii,  6. Jan 2008, 14:48:48):
~#! rn=Ronda rt=1199627274 rg=suche-biete
~#! tid=1199627274
Head First html+css
Mesi

-----------------------------------------------------------------------------



Re: Suche Tutorial fuer gutes Webdesign (Grimmborn,  6. Jan 2008, 15:01:28):
~#! rn=Ronda rt=1199627274 rg=suche-biete
~#! tid=1199627274
Hmm, da gibts ganze Studiengaenge ueber Design, und Du willst das mit einem
Tutorial erschlagen? Mutig, aber viel Glueck!

GdA

-----------------------------------------------------------------------------



Re: Re: Suche Tutorial fuer gutes Webdesign (Ronda,  6. Jan 2008, 15:01:32):
~#! rn=Mesirii rt=1199627328 rg=suche-biete
~#! tid=1199627274
Ich war die Tage in einer grossen Buchhandlung - da gibts ganz viele solche
Buecher wie Head first html+css (danke trotzdem fuer den Tipp! Ist notiert!) -
ich suche aber halt eher was fuer Programmierer, die ja bekanntlich grausam
schlechtes Design / Layout fuer Webseiten "programmieren"...
Die Alternative, einen "echten" Webdesigner zu beauftragen, ist mir fuer die
Webseite glaube ich zu teuer :-(

Ronda

-----------------------------------------------------------------------------



Tipps zu einem Thinkpad 600E (Gloinson, 19. Jan 2008, 17:12:03):
Bei mir liegt seit zwei Jahren eines semitot herum. Startet nicht mehr. Also,
startet, der Luefter laeuft an, Power-LED leuchtet, Platten-LED leuchtet,
Caps/Scroll/Lock leuchten kurz, dann ist Sense. Kein Mucks.
Klingt nach einem kaputten BIOS. So aus heiterem Himmel heraus. Hat jemand
sowas schon von 600Es gehoert? Sinnvoll die reparieren zu lassen? Google ist
da nicht besondere hilfreich, es gibt zu viele von den Teilen :)


-----------------------------------------------------------------------------



Ich mag mein Kabel nicht mehr :-( (Ronda, 22. Jan 2008, 21:58:15):
Mein Kabelanbieter hat "netterweise" die Preise erhoeht - nun mag ich echt
nimmer. Daher suche ich nach einer Alternative zu Kabelfernsehen: Welche
Alternativen nutzt Ihr? Da ich direkt in Sichtweite auf einen Fernsehturm
mitten in ner recht grossen Stadt wohne, sollte DVB-T perfekten Empfang
liefern. Ansonsten gaebs noch DVB-S... und was noch? Mir kommt es eher auf
ARTE und 3SAT als auf "Lasst mich hier raus, ich bin ein D-Promi!" an - aber
zwischendurch RTL und Co waeren schon nett.

Ronda *seit 1985 immer mit Kabelfernsehen*

-----------------------------------------------------------------------------



Re: Ich mag mein Kabel nicht mehr :-( (Gnome, 22. Jan 2008, 22:18:42):
~#! rn=Ronda rt=1201035495 rg=suche-biete
~#! tid=1201035495
dvb-t-karte in den pci-slot (zB hauppauge nova-t-500), aktive antenne
in fensternaehe positionieren und fertig. kriege hier etwa 50 tv- und
radiosender rein. ist natuerlich stark regionsabhaengig.
bei halbwegs modernen grafikkarten kannst du per tv-out dir das
signal noch auf den fernseher legen.
und filme anhalten und dann weitergucken wann DU das willst...
das hat einfach was ;)

gnOme

-----------------------------------------------------------------------------



Re: Re: Ich mag mein Kabel nicht mehr :-( (Ronda, 22. Jan 2008, 22:20:22):
~#! rn=Gnome rt=1201036722 rg=suche-biete
~#! tid=1201035495
Ich rate: Du wohnst in Berlin? ;-) In Frankfurt/Main sinds glaub ich viel
weniger Sender - zumindest stand das so auf der Webseite ueberallfernsehen.de
oder so. Und: ich werde wenn einen normalen Receiver fuer den Fernseher kaufen
- ich mudde zwar beim Fernsehen, mag aber nicht immer das zMud-Fenster vor dem
Fernsehbild haben ;-)

Ronda

-----------------------------------------------------------------------------



Re^3: Ich mag mein Kabel nicht mehr :-( (Gnome, 22. Jan 2008, 22:23:32):
~#! rn=Ronda rt=1201036822 rg=suche-biete
~#! tid=1201035495
das tv-fenster laesst sich auch vor dem mud-fenster halten. ;)

-----------------------------------------------------------------------------



Re^4: Ich mag mein Kabel nicht mehr :-( (Grimmborn, 22. Jan 2008, 22:32:34):
~#! rn=Gnome rt=1201037012 rg=suche-biete
~#! tid=1201035495
Dual head ist da auch ganz praktisch.

GdA

-----------------------------------------------------------------------------



Re^5: Ich mag mein Kabel nicht mehr :-( (Anthea, 23. Jan 2008, 13:01:24):
~#! rn=Grimmborn rt=1201037554 rg=suche-biete
~#! tid=1201035495
Bei DVB-T musst Du halt immer mit der Vorauswahl der Sender leben, die Dir
Dein Sendemast vorgibt.
Bei DVB-S hast Du halt eine weitaus groessere Programmvielfalt und auch eine
bessere Qualitaet der Sender.
Dafuer ist die DVB-T Antenne etwas dezenter aufzubauen als so eine
Satschuessel. Und etliche kleine Regionalsender werden auch nicht per Satellit
ausgestrahlt.
Ich selber will mein DVB-S mit PVR (Receiver mit Festplatte) nicht mehr
missen, da gewoehnt man sich ja so gewaltig dran.

-----------------------------------------------------------------------------



Blindenfreundlicher Spamschutz von Web-Formularen (Gwen, 31. Jan 2008, 16:31:28):
Hi,
ich suche Infos und moeglichst konkrete Tipps zum Thema Spam-Schutz von
Web-Formularen gerade im Hinblick auf Barrierefreiheit.
Man koennte natuerlich intelligente Fragen nehmen, wie "Welche Farbe hat der
ICE?".
Wenn man aber Bilder mit zu entziffernden Zahlen/Buchstaben verwendet, wuerde
man Sehbehinderte von der Benutzung des Formulars ausschliessen.
Eine Moeglichkeit waere wohl, parallel dazu Audio-Captchas anzubieten.
Nur: Wie leicht sind die wiederum zu knacken und zu misbrauchen?
Gibt's sonst bekannte technische Probleme dabei?
Andere aktuelle Loesungen?
Gwen.

-----------------------------------------------------------------------------



Re: Blindenfreundlicher Spamschutz von Web-Formularen (Xutelius, 31. Jan 2008, 16:33:56):
~#! rn=Gwen rt=1201793488 rg=suche-biete
~#! tid=1201793488
Wobei welche Farbe hat der ICE auch nich so wirklich blindenfreundlich is ;-)
ich bin zwar der Ansicht die waeren rot-weis aber sicher bin ich mir da auf
keinen Fall :P
Xut*

-----------------------------------------------------------------------------



Re: Re: Blindenfreundlicher Spamschutz von Web-Formularen (Gwen, 31. Jan 2008, 16:34:53):
~#! rn=Xutelius rt=1201793636 rg=suche-biete
~#! tid=1201793488
Laesst sich sicher auf der einen Website herausfinden die Antwort auf diese
Frage...
:)
Gwen.

-----------------------------------------------------------------------------



Re^3: Blindenfreundlicher Spamschutz von Web-Formularen (Gloinson, 31. Jan 2008, 16:46:13):
~#! rn=Gwen rt=1201793693 rg=suche-biete
~#! tid=1201793488
Wird Zeit fuer mehr tastbare Bildschirme ...


-----------------------------------------------------------------------------



Re^4: Blindenfreundlicher Spamschutz von Web-Formularen (Yas, 31. Jan 2008, 16:54:01):
~#! rn=Gloinson rt=1201794373 rg=suche-biete
~#! tid=1201793488
einige seiten nehmen da so sicherheitfragen wie:
"kopfbedeckung, reimt sich auf gruetze"
"das gegenteil von laut"
etc

-----------------------------------------------------------------------------



Re^5: Blindenfreundlicher Spamschutz von Web-Formularen (Gwen, 31. Jan 2008, 16:58:06):
~#! rn=Yas rt=1201794841 rg=suche-biete
~#! tid=1201793488
Die intelligenten Fragen kann man (wenn es nicht sehr viele sind) auch dem Bot
beibringen.
(bzw. Antworten).
Habt Ihr noch Infos zu Audio-Captchas oder auch einfach andere
Loesungsansaetze?
Gwen.

-----------------------------------------------------------------------------



Re^6: Blindenfreundlicher Spamschutz von Web-Formularen (Marcus, 31. Jan 2008, 17:35:52):
~#! rn=Gwen rt=1201795086 rg=suche-biete
~#! tid=1201793488
Ich glaube nach Web Profis zu suchen in diesder Runde ist falsch ;)

Ciao, Marcus

-----------------------------------------------------------------------------



Re^7: Blindenfreundlicher Spamschutz von Web-Formularen (Gwen, 31. Jan 2008, 17:38:48):
~#! rn=Marcus rt=1201797352 rg=suche-biete
~#! tid=1201793488
Es koennte ja Barrierrefreiheitsexperten geben in nem blindenfreundlichen MUD
:)
Gwen.

-----------------------------------------------------------------------------



Re^6: Blindenfreundlicher Spamschutz von Web-Formularen (Gloinson, 31. Jan 2008, 18:33:43):
~#! rn=Gwen rt=1201795086 rg=suche-biete
~#! tid=1201793488
Ist die Seite denn so Bot-gefaehrdet? Wenn ja, dann helfen menschenleserliche
Captchas mittlerweile auch kaum noch.


-----------------------------------------------------------------------------



Re^7: Blindenfreundlicher Spamschutz von Web-Formularen (Innuendo,  1. Feb 2008, 15:50:26):
~#! rn=Gloinson rt=1201800823 rg=suche-biete
~#! tid=1201793488

hmm
die einzigen benutzbaren sah ich bislang bei msn und yahoo glaub ich... da
werden einem die zahlen vorgelesen. leider sind mit abstand die meisten seiten
da sehr blindenunfreundlich... studivz z.b.

-----------------------------------------------------------------------------



Suche Buecher (Raschaua, 13. Mar 2008, 21:23:40):
~#! on=Raschaua ot=1205186475 og=allgemeines
Moin,

ich suche die beiden folgenden Buecher von Jeff Grubb:
The Eternal Ice
The Shattered Alliance
Hat die jemand und kann sie mir ausleihen (oder kennt jemanden, der das kann)?

Raschaua

-----------------------------------------------------------------------------



Uebernachtungsgelegenheit in Zuerich vom 24.-26.6.08 (Mesirii, 13. Jun 2008, 13:44:44):
Kann mir da wer ein Couch, oder 2qm Fussboden freimachen? Ansonsten waere ich
noch an Zuerileus E-Mail Adresse interessiert.
Dankeschoen
Mesi

-----------------------------------------------------------------------------



Skoda (Zook,  1. Jul 2008, 14:45:30):
Hat jemand Erfahrungen mit dem Skoda Ocvtavia gemacht und steht mir
fuer ein, zwei Fragen zur Verfuegung? Z

-----------------------------------------------------------------------------



Wohnung in Muenchen oder Umgebung gesucht? (Alboin, 21. Jul 2008, 20:23:01):
Wie es aussieht, kann ich ab August in Muenchen wieder arbeiten. Deswegen
suche ich erstmal fuer drei Monate eine provisorische Bleibe dort. Es kann
auch gerne in der Umgebung liegen, sofern die Anbindung an den oeffentlichen
Verkehr gewaehrleistet ist.
Bin fuer jede Anregung dankbar.
Achja als Orientierung: 1-2 Zi, Miete+NK<=650 Euro

Al

-----------------------------------------------------------------------------



S: Etymolgie zu einem Spielausdruck (Orktoeter,  4. Okt 2008, 19:31:24):
Beim Kartenspiel (speziell Skat), heisst es haeufig: "Eine Karte oder ein
Stueck Holz". Mich interessiert, woher der Ausspruch stammt.

OrkT.

18

-----------------------------------------------------------------------------



Re: Adventskalender: Suche Verstecke :-) (Zesstra,  6. Okt 2008, 21:42:56):
~#! rn=Zesstra rt=1223321863 rg=entwicklung
~#! tid=1223321863
Ausnahmsweise spamme ich mal die MPA voll und exportiere einen Thread in eine
andere Rubrik. Fuer die von euch, die entwicklung nicht lesen: Ich suche
Vorschlaege fuer Verstecke des diesjaehrigen Adventskalenders. Wem was
einfaellt: s. meinen Artikel mit dem gleichen Betreff in entwicklung.

Zesstra

-----------------------------------------------------------------------------



Schicke Teebeutel (Mesirii, 26. Dez 2008, 21:41:25):
Fuer die Gestaltung eines Kuehlschrankes suche ich schicke Tee-Beutel.
Da man im Geschaeft nicht alle Packungen aufreissen und nachgucken kann,
moechte Ich euch hiermit um Eure Hilfe und Vorschlaege bitten.

Danke Mesi

-----------------------------------------------------------------------------



Umzugshilfe (Vanhelsing, 26. Jan 2009, 22:46:06):
Hallo ihr,

ich beziehe am Freitag dem 6.2. meine Wohnung hier in Duesseldorf.
Falls einer, oder zwei, oder noch mehr, Zeit und Lust hat, ist jeder sehr
willkommen.
Tag: Freitag, 06.02.2009
Zeit: ab ca. 17 Uhr
Dauer: vllt 2-3h (maximal)
Ort: Schirmerstrasse (Naehe "Am Wehrhahn") -> genaueres auf Nachfrage

Fuer Verpflegung (Essen und Trinken) wird gesorg.

Kommet zuhauf

VanHelsing

-----------------------------------------------------------------------------



Re: Umzugshilfe (Vanhelsing, 26. Jan 2009, 22:53:14):
~#! rn=Vanhelsing rt=1233006366 rg=suche-biete
~#! tid=1233006366
Zur Vervollstaendigung: Ich feier am 21.2. Einweihungsparty, zu der die Helfer
selbstverstaendlich auch eingeladen sind.
Ob die andere auch, klaere ich noch. :P
VH

-----------------------------------------------------------------------------



Mobiles Internet in Deutschland (Anoris,  7. Mar 2009, 11:27:13):
Guten Tag

Mein Bruder und ich werden in den naechsten Tagen in Deutschland weilen
und waeren ueber einen Mobilen Internetanschluss erfreut. In der Schweiz
gibt es dies z.B. so:
http://www.sunrise.ch/privatkunden/angebote/mobile/mobiles-internet.htm

Da gibt es ein USB Stick mit einer SIM Karte. Entweder CHF 49 pro Monat
mit unlimitiertem Internetzugang oder CHF 10 pro Monat und dann pro
Tag CHF 3.50 sofern verwendet. d.H. bei <= 11 Tagen im Monat lohnt sich
das "kleinere" Abo.

Nun haette ich gerne so was in der Art fuer Deutschland, habe aber keine
Ahnung ueber die Providersituation in Deutschland. Empfehlungen und
Warnungen waeren gerne willkommen.

- Anoris

-----------------------------------------------------------------------------



Re: Mobiles Internet in Deutschland (Alboin,  7. Mar 2009, 15:19:10):
~#! rn=Anoris rt=1236421633 rg=suche-biete
~#! tid=1236421633
Ich empfehle den Tchibo-Stick den ich auch habe.
Kostet 50 Euro aber du hast einen Monat frei. Jeder weitere Monat 20 Euro und
du kannst jederzeit (monatlich) kuendigen, bzw. ueberweist einfach kein
Guthaben mehr. Einziges Manko: Die Flatrate ist auch 10GB beschraenkt. Sofern
du also nicht staendig das Beduerfnis hast mp3 Dateien oder Filme runter zu
laden, solltest du damit locker hinkommen.

http://tinyurl.com/d3uk4s

al

-----------------------------------------------------------------------------



Re: Mobiles Internet in Deutschland (Zook,  8. Mar 2009, 18:01:29):
~#! rn=Anoris rt=1236421633 rg=suche-biete
~#! tid=1236421633
Bei Simyo gibts die USBkarte fuer 8 Euro und dann irgendwie
entsprechende Datentarife (nach Volumen oder alss Flat); alles
ohne lange Laufzeit.

Von T-Mobile gibt es web'n'walk, da kann man fuer einen Tag
auch ne Flat kaufen. Geht auch im Ausland. 

Vodafone hat das wohl auch, weiss aber nicht, was das kost und
wie es heisst.

Simyo und web'n'walk sah ich schon im Einsatz.

Z

-----------------------------------------------------------------------------



Re: Re: Mobiles Internet in Deutschland (Gloinson,  9. Mar 2009, 14:50:06):
~#! rn=Zook rt=1236531689 rg=suche-biete
~#! tid=1236421633
O2 bietet einen GPRS 25,-/Monat Stick-Tarif mit 10 GiB frei, danach wird wegen
fair use auf 64 kBit gedrosselt. Der Stick kostet ebenfalls 25,-.

http://www.teltarif.de/a/o2/internet-pack-l-juli08-genion.html


-----------------------------------------------------------------------------



Re^3: Mobiles Internet in Deutschland (Gloinson,  9. Mar 2009, 14:57:30):
~#! rn=Gloinson rt=1236606606 rg=suche-biete
~#! tid=1236421633
http://www.teltarif.de/mobilfunk/datenrechner.html

Das gibt doch interessante Anregungen.


-----------------------------------------------------------------------------



Re^4: Mobiles Internet in Deutschland (Anoris, 13. Mar 2009, 16:52:18):
~#! rn=Gloinson rt=1236607050 rg=suche-biete
~#! tid=1236421633
Sooo .. Habe mir web'n'walk von t-mobile organisiert. Stick kostet
einmalig. Und pro Tag sind es 4.99, unbegrenztes Volumen. Eigentlich
genau das, was ich gesucht habe, besten Dank! Ahja, es funktioniert
bis jetzt wirklich gut und ordentlich schnell .. ;)

 - Anoris

-----------------------------------------------------------------------------



Re^5: Mobiles Internet in Deutschland (Bambulko, 13. Mar 2009, 17:16:59):
~#! rn=Anoris rt=1236959538 rg=suche-biete
~#! tid=1236421633
Was kostet denn der stick selber?

-----------------------------------------------------------------------------



Re^5: Mobiles Internet in Deutschland (Zook, 13. Mar 2009, 20:30:38):
~#! rn=Anoris rt=1236959538 rg=suche-biete
~#! tid=1236421633
Schoen!
Zook.

-----------------------------------------------------------------------------



Re^6: Mobiles Internet in Deutschland (Anoris, 14. Mar 2009, 01:37:12):
~#! rn=Bambulko rt=1236961019 rg=suche-biete
~#! tid=1236421633
Das waren etwas zwischen 69 und 69.99 Euro, weiss ich nicht mehr ;) So wies im
Katalog war. Wobei anscheinend die letzten Tage eine Aktion war fuer 49.xx
oder 59.xx was niemande so genau wusste und ja auch egal war weil anscheinend
nicht mehr gueltig. Hate vorher eine Skypeuebertragung mit 35 und 19 KB/s.
WoW laeuft fliessend und das MG auch ;)

Was mich heute viel mehr erstaunt hat: Habe noch ein Nokia 6330 inkl Vodafone
Prepaid gekauft. 149 Euro plus 50 Euro Guthaben zusaetzlich. Und der Kerl hat
mir das ja ganz nett eingepackt, was ich nicht gesehen habe, das war schon
offen. Und wie sich 2 Stunden spaeter herausgestellt hat, ein
Ausstellungsmodell mit zerkratztem Deckel und verklebten Display, i was not
amused.

Vodafone uebrigens desshalb, weil angelich fuer 0.29 pro Minute ins Festnetz
und ins Vodafone Netz telefoniert werden kann, aber nach der ersten Minute
keine Kosten mehr anfallen. Und dies auch nur, weil mein Bruder das Teil auch
braucht und seine Freundin in Deutschland ein Vodafone Handy hat.

Nochmals wegen Internet Mobile: Weder Vodafone noch O2 hatten ein aehnlich
vernuenftiges Tagesflatangebot wie T-Mobile...

Nochmals Danke! ;)

 - Anoris

-----------------------------------------------------------------------------



Suche: Die Herren der Runen (Hobo, 18. Mar 2009, 21:28:10):
Hallo ihr,

falls jemand von euch mal wieder viel zu wenig Platz im Buecherregal hat und
alte Sachen loswerden will: Ich suche "Die Herren der Runen" (alle ausser Band
1) von Farland.

LG
   Hobo

-----------------------------------------------------------------------------



fahrradanhaenger fuer kinder (Alboin, 20. Apr 2009, 23:49:21):
Hallo allerseits,
wie schon der titel sagt suche ich einen guten Fahrradanhaenger fuer Kinder um
damit einen Freund zu seiner Hochzeit zu beehren. (Natuerlich als
Sammelgeschenk, nicht das einer hier denkt ich waere steinreich ;-))
Nun koennte ich einfach rumgoogeln und so, aber da es hier unter uns immer
mehr Mamas und Papas gibt wuerde ich mich auch sehr auf Empfehlungen aus
erster Hand freuen.

Danke schon mal
Al

-----------------------------------------------------------------------------



Re: fahrradanhaenger fuer kinder (Croft, 20. Apr 2009, 23:58:41):
~#! rn=Alboin rt=1240264161 rg=suche-biete
~#! tid=1240264161
Hier in Karlsruhe sitzt Kindercar (www.kindercar.de).  Die sind wohl
recht brauchbar, was ich so von den Bekannten mitbekommen hab.

Croft

-----------------------------------------------------------------------------



Re: Re: fahrradanhaenger fuer kinder (Anthea, 21. Apr 2009, 09:24:52):
~#! rn=Croft rt=1240264721 rg=suche-biete
~#! tid=1240264161
Wir haben ein Modell von Chariot. Das sind nicht die billigsten welchen, aber
sehr stabil und flexibel, also wenn man sie auch mal nicht zum Fahrradfahren
nimmt, sondern als Ersatz-Kinderwagen. Und mit der Babyschale ist es im
Zweisitzer kein Problem, ein 3-Monate-Baby neben einem Fast-3-Jahre-Kind zu
transportieren.

Ausserdem sind da einige Modelle dabei, die den groessten Raum nach oben hin
bieten, bei manch anderen Modell, dass angeblich bis 6 Jahre zugelassen ist,
hatte unsere schon Probleme, weil sie oben angestossen ist.
Wir hatten uns fuer das Modell "Captain" entschieden, weil das unter den
Zweisitzern hier der das einzige mit fester Bodenschale war, die meisten haben
unten auch eine Stoffplane. Die ist zwar auch fest, aber... naja. 
http://www.chariot.de/
Die gibt es normal nicht per Internet zu bestellen, sondern Du solltest Dich
an den Fahrradhaendler Deines Vertrauens wenden, weil Chariot das so will
(dass der Anhaenger fachgerecht zusammengebaut ist... nun ja.)

-----------------------------------------------------------------------------



Re^3: fahrradanhaenger fuer kinder (Gloinson, 24. Apr 2009, 19:21:35):
~#! rn=Anthea rt=1240298692 rg=suche-biete
~#! tid=1240264161
Tipp: mal Raschaua direkt ansprechen.


-----------------------------------------------------------------------------



Re^4: fahrradanhaenger fuer kinder (Maharet, 27. Apr 2009, 12:32:37):
~#! rn=Gloinson rt=1240593695 rg=suche-biete
~#! tid=1240264161
Wir haben den Bluebird, der ist billiger als Kindercar, hat aber auch die
Metallschale (die uns auch wichtig war). Wir haben auch einen Zweisitzer, bis
vor kurzem hatten wir auf der einen Seite eine Babyschale. Die war aber
offenbar nicht fuer dieses Modell gedacht (obwohl sie dafuer angepriesen war),
und Mesi musste (unter vielem Fluchen und Dinge-durch-die-Gegend-werfen)
rumbasteln, bis das Ding endlich drin war. Hinter den Sitzen haben wir noch
einiges an Laderaum (man kann auch die Sitzbank weiter nach hinten ruecken
stattdessen, wenn die Kinderbeine laenger werden und sonst vorn raushaengen
wuerden).  Praktisch ist, dass man das Teil relativ schnell umbauen kann und
dann einen Bollerwagen (bzw "Kinderwagen" fuer zwei) hat, der sich auch sehr
gut schieben laesst.

-----------------------------------------------------------------------------



Erfahrungen mit Langboegen? (Vanion,  4. Aug 2009, 17:35:36):
Hi,

ich will mir einen Langbogen kaufen und hab auch schon einen im Blick.

Ein in laminatbauweise hergestellter 70" RH 42# Reflex-Deflex soll es sein.
Den Bogen hat der Bogenbauer auf Lager. Ich hab mich zu dem Thema zwar jetzt
etwas schlau gelesen, haette aber trotzdem gerne noch andere Meinungen
gehoert. Vielleicht ist ja einer von euch Experte und will mal einen Blick auf
das Teil werfen.

V*
PS: Ja, ich weiss, 42# is viel fuer jemanden, der noch wenig Erfahrung hat.

-----------------------------------------------------------------------------



Re: Erfahrungen mit Langboegen? (Jimdigriz,  4. Aug 2009, 19:52:51):
~#! rn=Vanion rt=1249400136 rg=suche-biete
~#! tid=1249400136
Kann Dir leider nicht helfen, aber ich erinner mich in der Tat
das 42# eher so ordentliches Wettkampfgewicht ist. Andererseits
haengts vielleicht auch davon ab was Du mit dem Bogen ueberhaupt
machen willst. Also schon auf Zielscheiben schiessen?
Bei Sportboegen kann man wenigstens die Wurfarme wechseln und
mit weniger Zugkraft anfangen.
Es gibt auch Bogenbauer, die einem Boegen vermieten. Das war IIRC nicht
sehr teuer. Vielleicht ist das auch ne Option um zu sehen wie man
mit der Zugkraft zurecht kommt.

-----------------------------------------------------------------------------



Re: Re: Erfahrungen mit Langboegen? (Vanion,  4. Aug 2009, 21:08:15):
~#! rn=Jimdigriz rt=1249408371 rg=suche-biete
~#! tid=1249400136
Naja, ich habe schon mit einem 30#-Bogen geschossen, der ging eigentlich ganz
Naja, ich habe schon mit einem 30#-Bogen geschossen, der ging eigentlich recht
gut. Was ich damit vorhabe ist leicht erklaert. Einmal die Woche gehe ich auf
nen Platz und verschiesse ein paar (sagen wir, um eine Zahl zu nennen, 50)
Pfeile, Auf Scheibe oder auf 3D-Figuren. Donnerstags ueblicherweise. Danach is
der Stress weg ...

Dass wir Langbogen schiessen, macht das mit den Wurfarme tauschen etwas
schwieriger. Der ist nach dem abmontieren der Arme ziemlich kaputtt. Einen
Recurve-Sportbogen moechte ich nicht haben. Der einzige Grund waere
tatsaechlich die hoehere Flexibilitaet beim Gewichts-Wechsel.

Achso, wir schiessen intuitiv. Also ohne Visir und sowas.

V*

-----------------------------------------------------------------------------



Re^3: Erfahrungen mit Langboegen? (Jimdigriz,  4. Aug 2009, 21:48:13):
~#! rn=Vanion rt=1249412895 rg=suche-biete
~#! tid=1249400136
Jo. Eben weils ja beim Langbogen dann nix mehr zu aendern
geht wuerde ich nicht so ohne weiteres die Zugkraft so drastisch
erhoehen. Also meine Sportbogenzeit ist schon sehr lange her und
hat auch nicht sehr lang gedauert, aber ich erinner mich dunkel mit
28-30 angefangen zu haben und bin dann nachdems einigermassen ging
auf 32 hochgegangen. Und damit hab ich mich dann gefuehlt wie beim
allerersten Training. 42# war das was die Trainerin (ex Olympiasiegerin)
auf Ihrem Bogen hatte. Es hiess damals so (IIRC) dass 46# dann auch
mehr oder weniger auch das Maximum ist, was man so handeln kann
 also auch die Profis (Compound-Boegen ausgenommen).
Das mag natuerlich heute anders sein.

Ich wuerde Dir aber trotzdem empfehlen vielleicht erstmal mit etwas
mehr Zugkraft, zB. 34# zu probieren, wie gut das im Unterschied zu den
30# geht, die Du gewohnt bist. Also einfach mal bissl mehr ausprobieren
vor dem Kauf, nur um das Frustrisiko zu begrenzen.
Wenn Du mit 42# auch beim 50. Pfeil noch Spass hast, spricht natuerlich
nix dagegen.
C
Ciao,
 JdG

-----------------------------------------------------------------------------



Re^4: Erfahrungen mit Langboegen? (Zephyr,  6. Aug 2009, 21:20:24):
~#! rn=Jimdigriz rt=1249415293 rg=suche-biete
~#! tid=1249400136
Fuer einen Recurve sind 42# eine Menge. Langboegen koennen imho etwas
mehr haben, ohne gleich stressig zu werden. Von 30# auf 42# umsteigen 
ohne das vorher mal mit 50 Pfeilen auszuprobieren, halte ich aber auch
fuer ein wenig gewagt ;)

*knuddels*
C4

PS: Langbogen mit Visier habe ich uebrigens noch nie gesehn ;))

-----------------------------------------------------------------------------



Re^5: Erfahrungen mit Langboegen? (Vanion,  7. Aug 2009, 16:34:39):
~#! rn=Zephyr rt=1249586424 rg=suche-biete
~#! tid=1249400136
Jo, ich werd deshalb am Mittwoch mal zum Haendler fahren und mehrer Boegen
anschauen und ausprobieren. Ich hab gestern mit einem 60lbs-Bogenn 10 Pfeile
verschossen und das ging an die Knochen. Vor allem der Handschock, obwohl der
Bogen selbst sich noch gut ziehen liess.

V*

-----------------------------------------------------------------------------



Re^6: Erfahrungen mit Langboegen? (Gloinson,  7. Aug 2009, 16:40:19):
~#! rn=Vanion rt=1249655679 rg=suche-biete
~#! tid=1249400136
Wann wird gejoustet, wann kommt das Breitschwert und ueberhaupt hast du schon
einen Termin mit einem verrueckten Mulimillionaer, der dich ins
Hochmittelalter eines anderen Unsiversum mit einer Laserdingsmaschine
zurueckschickt, damit du dort eine holde Maid begluecken kannst?

Aeh, zuviel Crichton.


-----------------------------------------------------------------------------



Re^7: Erfahrungen mit Langboegen? (Vanion,  7. Aug 2009, 16:45:13):
~#! rn=Gloinson rt=1249656019 rg=suche-biete
~#! tid=1249400136
Nu wollen wir aber megaschmarrn keinen Konkurrenz machen ...

V*

-----------------------------------------------------------------------------



mini lego steine (modulex) (Ennox, 23. Aug 2009, 09:37:55):
wurden in den 60er fuer architektur-modelle hergestellt, sind heute schwer
zu kriegen. hat zufaellig jemand sowas noch irgendwo auf dem Dachboden
liegen oder kennt jemanden (alte Architekten) die man nach sowas fragen 
koennte. 
Ich wuerde die brauchen um ein kleines Projekt fuer Blinden-Hilfsmittel
zu machen.
Danke Mesi

-----------------------------------------------------------------------------



Sportbrillen in gewuenschter Sehstaerke (Alboin, 25. Aug 2009, 23:31:21):
Der Titel sagt schon alles. Kann mir jemand einen Haendler oder Optiker oder
einen Versand empfehlen?
Gruss und Danke schon mal
al

-----------------------------------------------------------------------------



Re: Sportbrillen in gewuenschter Sehstaerke (Gloinson, 27. Aug 2009, 16:52:37):
~#! rn=Alboin rt=1251235881 rg=suche-biete
~#! tid=1251235881
Fielmann. Plastikglaeser. Titanflexgestell.

Das ist zumindest das, was bei mir waehrend Squash (inzwischen zu alt und
fett), Snowboarden und Beachen gut haelt.


-----------------------------------------------------------------------------



Re: Sportbrillen in gewuenschter Sehstaerke (Jonatan,  1. Sep 2009, 21:49:09):
~#! rn=Alboin rt=1251235881 rg=suche-biete
~#! tid=1251235881
Mahlzeit,
wer als Sportler und / oder vor allem als Biker nicht alltaegliche
Sonnenbrillen in seiner Sehstaerke sucht sollte mal unter www.bikereyes.de
vorbeischauen.
Jonatan

-----------------------------------------------------------------------------



text to speech & Webradio (Mesirii, 10. Sep 2009, 03:52:13):
Suche jemanden, der Erfahrung mit Speech Synthesizern, wie espeak / festival
unter
Linux hat
Ausserdem mit streaming encoing von wave-files nach mp3 und 
Distribution ueber icecast2.

Danke Mesi

-----------------------------------------------------------------------------



Re: text to speech & Webradio (Vardion, 11. Sep 2009, 21:28:15):
~#! rn=Mesirii rt=1252547533 rg=suche-biete
~#! tid=1252547533
ich hab zu Studienzeiten mal mit Mbrola
(http://tcts.fpms.ac.be/synthesis/mbrola.html) gespielt. Leider Closed Source,
die Qualitaet der Sprachausgabe fand ich damals ganz gut. Vor- und Nachteil
(je nachdem) ist, dass Mbrola selbst nur Lautschrift sprechen kann. Du
benoetigst also immer noch ein separates Programm, welches geschriebenen Text
in Lautschrift wandelt. Da sind aber mehrere verlinkt. Das ermoeglicht es aber
eben dann auch, beliebige Phantasieworte korrekt aussprechen zu lassen.
Mit dem Rest (Streamkonvertierung) hab ich mich noch nicht befasst.

-----------------------------------------------------------------------------



SNCF-Gutscheine (Gloinson, 27. Sep 2009, 15:12:20):
Moin,

ich hab hier fuer 70 Euro Gutschein der SNCF, gueltig bis Feb 2010. Kann die
zufaellig wer gebrauchen, so dass ich sie gegen Bargeld einrubeln kann? Wir
werden die SNCF bis dahin wohl nicht mehr benutzen ...


-----------------------------------------------------------------------------



S: Domainhoster (Amaryllis, 12. Mar 2010, 21:37:07):
Hi,

ich suche einen Domainhoster fuer eine Handvoll Domains.

Wichtig:
- jederzeit kuendbar
- DNS selbst pflegbar (fuer MX und WWW)
- Webmailsystem, so dass die Mails direkt vom neuen Provider verwaltet werden
- bezahlbar bis guenstig

Kennt jemand da empfehlenswerte Pakete?

Dank und Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: Domainhoster (Zook, 13. Mar 2010, 16:53:48):
~#! rn=Amaryllis rt=1268426227 rg=suche-biete
~#! tid=1268426227
ich hab was bei strato und bei domainfactory. z

-----------------------------------------------------------------------------



Re: S: Domainhoster (Gwen, 14. Mar 2010, 14:03:42):
~#! rn=Amaryllis rt=1268426227 rg=suche-biete
~#! tid=1268426227
http://www.united-domains.de/
Gwen.

-----------------------------------------------------------------------------



Re: Re: S: Domainhoster (Mesirii,  7. Apr 2010, 23:22:26):
~#! rn=Gwen rt=1268571822 rg=suche-biete
~#! tid=1268426227
domainfactory
Mesi

-----------------------------------------------------------------------------



Suche DSL/Telefonanbieter ohne VoIP/NGN (Vardion, 25. Apr 2010, 13:30:11):
Welche DSL/Telefonanbieter gibt es denn derzeit ausser der Telekom, die
bundesweit/in Sachsen noch eine richtige Telefonleitung anbieten - also wo ich
auch mit ausgeschaltetem DSL-Router noch angerufen werden kann?
Soweit ich das bisher ueberblicke, ist die Antwort: ausser Telekom niemand.

Vardion

-----------------------------------------------------------------------------



Re: Suche DSL/Telefonanbieter ohne VoIP/NGN (Zook, 25. Apr 2010, 13:34:23):
~#! rn=Vardion rt=1272195011 rg=suche-biete
~#! tid=1272195011
kA; ich habe seit je her eine ganz normale Telekom-Telefonleitung.
Arcor auch nicht?
Zook.

-----------------------------------------------------------------------------



Re: Re: Suche DSL/Telefonanbieter ohne VoIP/NGN (Anthea, 26. Apr 2010, 10:06:50):
~#! rn=Zook rt=1272195263 rg=suche-biete
~#! tid=1272195011
Also hier in Bayern haben wir unser M-Net, das macht das auch noch
"vernuenftig". Und meines Wissens macht Alice das auch noch, wenn Du das
entsprechende Paket waehlst.

-----------------------------------------------------------------------------



S: Infos TV-Tuner (Orktoeter, 14. Nov 2010, 22:21:42):
Ich suche eine externe Karte um moeglichst 2 Sender gleichzeitig anschauen
bzw. aufzeichnen zu koennen. DVB-S oder S2 sollte es sein. USB 2.0 .. und: Es
muss unter Linux laufen.

Infos bitte hier oder per email.

LG, OrkT.

-----------------------------------------------------------------------------



Provider fuer Verfassungsbeschwerde gesucht (Amynthor, 10. Feb 2011, 18:59:56):
http://ak-zensur.de/2011/02/provider-verfassungsbeschwerde.html


-----------------------------------------------------------------------------



Artikel Biete Wokpfanne (Amynthor,  4. Mar 2011, 00:36:22):
~#! on=Zesstra ot=1298922433 og=treffen.bekanntmachungen
~#! on=Gloinson ot=1298922127 og=hardsoftware
~#! on=Orktoeter ot=1298921619 og=party.bekanntmachungen
Hallo zusammen!

Ich biete eine Wokpfanne. Stahlblech, Rundboden. Abzuholen in der Naehe von
Wien.

Angebote bitte per mudmail oder tm.

OrkT.

-----------------------------------------------------------------------------



Mal was anderes: Suche ein Rad :-) (Zook, 15. Mai 2011, 19:15:06):
Hallo,

nach einigen Jahren der Fahrrad-Abstinenz suche ich ein Rad so bis
maximal 1 TEUR. Nach der Konsultation mit einem mir empfohlenen 
Radhaendler scheint wohl so ein "Cross Bike" fuer meine Anforderung
das passende sein: Als Sportgeraet meistens auf Asphalt, gelegentlich
mal Waldwege/Forstwege, aber immer recht guter Untergrund.

Fahrradbau scheint ja auch so aehnlich wie die EDV zu sein: Lauter 
lustige Fachbegriffe und uebelst viele unterschiedliche Komponenten, die
da irgendwie verbaut werden koennten... Bin daher ein bisschen unsicher,
ob und was ich nun genau anschaffen soll.

Der mir empfohlene Haendler hat wohl Merida und Centurion als Hauptmarken;
davon habe ich im Internet aber recht wenig gelesen und kann das auch
nich so gut einschaetzen.

Gibt es von Euch dazu Tips/Hinweise?

Zook.

-----------------------------------------------------------------------------



Re: Mal was anderes: Suche ein Rad :-) (Amaryllis, 15. Mai 2011, 20:26:26):
~#! rn=Zook rt=1305479706 rg=suche-biete
~#! tid=1305479706
Also ich habe mir ein Bulls Moutainbike auf Strassenzulassung umruesten lassen
(Kevlarreifen, Reflektoren, nur kein Licht ;)) und bin sehr zufrieden damit.

Ama*
oe

-----------------------------------------------------------------------------



Re: Mal was anderes: Suche ein Rad :-) (Gloinson, 16. Mai 2011, 00:27:55):
~#! rn=Zook rt=1305479706 rg=suche-biete
~#! tid=1305479706
> Fahrradbau scheint ja auch so aehnlich wie die EDV zu sein

Schlimmer. Du hast viele kleine Laeden, die nur ein paar tausend Rahmen pro
Jahr produzieren. Einer von denen koennte fuer dich super geeignet sein, ihn
zu finden ist eine Kunst. Folgend meine Erfahrungen:

Wenn du nicht ganz genau weisst was du willst, alles abklappern und erstmal
anfassen. Auch Raeder sind Saisonware, wenn ein bestimmter Rahmentyp in
einer bestimmten Groesse mal weg ist ... kann man nur noch bei einem anderen
Vertragshaendler Glueck haben. Ahja. Feststellung und Beruecksichtigung der
noetigen Rahmengroesse - ein wichtiger Faktor bei der Qualitaetseinstufung
des Haendlers ;)

Wenn du auf Waldwegen unterwegs bist willst du einen 40 Lux-LED-Scheinwerfer
wie B&M Cyo oder Fly (etwaige Mitfahrer koennen ihre Halogenfunzeln dann
auslassen). Wenn du Komfort magst, holst du dir eventuell Hydraulikbremsen
wie die von Magura (kaum Nerv beim Wechsel der Belaege, immer konstante
Leistung).

Finger weg von Stossdaempfern, wenn du nicht genug Geld da investieren willst
und weisst was du willst. Die billigen Dinger quietschen, knarzen und haken
oder wackeln schnell. 

Sattel ist eine mit dem Haendler diskutierenswerte Geschmackssache. Von ein-
zureitendem Ledersattel bis hartem Rennmodell.


Ein guter Haendler erfuellt dir uebrigens solche Wuensche und tauscht die am
existierenden Modell befindlichen Komponenten zum Ladenpreis aus.

Viel Spass beim Aussuchen :)

-----------------------------------------------------------------------------



Re: Re: Mal was anderes: Suche ein Rad :-) (Zook, 16. Mai 2011, 08:18:30):
~#! rn=Gloinson rt=1305498475 rg=suche-biete
~#! tid=1305479706
Ohweh... :( 
Zook.

-----------------------------------------------------------------------------



Re: Mal was anderes: Suche ein Rad :-) (Jimdigriz, 16. Mai 2011, 10:09:49):
~#! rn=Zook rt=1305479706 rg=suche-biete
~#! tid=1305479706
Hier ein ganz persoenlicher Pauschal-Tip fuer Raeder von der Stange
(also ohne alles custom zusammengebaut):

KTM

Fand ich gut, grade in Preis-/Leistungsverhaeltnis.

Caveat: mein KTM Fahrrad hab ich vor 10 Jahren gekauft.

JdG

-----------------------------------------------------------------------------



Re: Re: Mal was anderes: Suche ein Rad :-) (Highlander, 16. Mai 2011, 11:11:47):
~#! rn=Gloinson rt=1305498475 rg=suche-biete
~#! tid=1305479706
Ein bisserl Senf von mir dazu:
- der IQ Fly hat meiner Meinung nach etwas mehr Seitenlicht als der Cyo,
  was mich etwas verwundert, weil das an sich der gleiche Reflektor ist.
  (meine Vergleichstypen: IQ Fly und IQ Cyo RT)
  Ist in Kurven angenehm, wenn da etwas mehr ist.
- Federung? Lieber nicht. Ich habe mein Rad jetzt seit, na, 6 Wochen.
  Es hat keine Federung per se, aber als Reifen den Big Apple 60.
  Sieht nicht sooo toll aus *g*, aber faengt die meisten Stoesse ziemlich
  gut auf, finde ich.

Ich hab' meines von Patria, kannst mal unter konfigurator.patria.net
schauen, ob das was dabei ist, was noch in Deinem Preisrahmen waere.
Koennte allerdings schwierig werden, die werden erst guenstig, wenn's
generell schon unschoen teuer wird.

HrT
s/das/da/ sehe ich gerade noch im letzten Absatz. -HrT

-----------------------------------------------------------------------------



Re^3: Mal was anderes: Suche ein Rad :-) (Gloinson, 16. Mai 2011, 12:06:34):
~#! rn=Zook rt=1305526710 rg=suche-biete
~#! tid=1305479706
Ok, ich war Berliner, ich konnte es mir einfacher machen: Fahrradhaendler
kennen/genannt bekommen. Im Netz nachschauen, mit wem die Deals haben. Die
Listen dieser Hersteller durchgehen (Rabeneick, Gudereit, Fahrradmanufaktur,
Stevens, Giant, Diamant, ...) oder gleich ignorieren (Kalkhoff, ZEG). Fast
jeder dieser Haendler hat irgend ein Rad fuer dich. Bei mir war das Suchziel
"leicht, Nabe und Trekking", da bin ich dann automatisch beim Stevens Courier
Lite (inzwischen wohl umbenannt, hat auch Familie Cakey in Nutzung) oder beim
Gudereit SXM (meins) gelandet. Wenn du aergere Huegel als hier am Bodensee
hast oder sehr viel mehr steile Waldstrecken faehrst, willst du sicherlich
nicht die Faule-Leute-saubere-Hose-Schaltung Nabe :)


-----------------------------------------------------------------------------



Re^4: Mal was anderes: Suche ein Rad :-) (Gloinson, 16. Mai 2011, 12:15:24):
~#! rn=Gloinson rt=1305540394 rg=suche-biete
~#! tid=1305479706
Achso. Ein Vertragshaendler hat den schoenen Vorteil, dass er dir auch jedes
dieser Raeder in den offiziellen Listen (so nicht aus) in der richtigen
Groesse meist ohne Probleme besorgt und ohne Kosten zum Probefahren hinstellt.
Beim dritten Mal faengt er dann viellect an zu quieken, der will ja auch sein
Lager leer bekommen :)

(Patria war auch dabei. KTM hab ich zu der Zeit total ignoriert, die kannte
ich nur als Motorradhersteller. Der Vor-/Nachteil wenn man auf Nabe sucht: das
Feld engt sich enorm ein, weil da sehr viele nur Rentner-Ruecktritt-Raeder
sind.)


-----------------------------------------------------------------------------



Re^5: Mal was anderes: Suche ein Rad :-) (Zook, 16. Mai 2011, 12:20:53):
~#! rn=Gloinson rt=1305540924 rg=suche-biete
~#! tid=1305479706
Ich hab gestern mal so nen KTM Tourenrad probe gefahren, das fuehlte sich
ganz gut an; ist nur halt nicht der Radtyp, nach dem ich suche ;) *g* 

Aber der Typ mit dem Vertragshaendler und durchtesten ist vll. ganz
sinnreich.

Z

-----------------------------------------------------------------------------



Re: Mal was anderes: Suche ein Rad :-) (Vanion, 21. Mai 2011, 22:10:33):
~#! rn=Zook rt=1305479706 rg=suche-biete
~#! tid=1305479706
Ein Arbeitskollege hat sich kuerzlich eins nach seinen Beduerfnissen
zusammenbauen lassen. Er meinte, es waere erstaunlich guenstig. HIer um die
Ecke (Grafschaft heisst der Ort) gibt es einen Fahrradbauer, der wohl auch
fuer Profis baut.

V*

-----------------------------------------------------------------------------



Re: Re: Mal was anderes: Suche ein Rad :-) (Zook, 22. Mai 2011, 12:46:55):
~#! rn=Vanion rt=1306008633 rg=suche-biete
~#! tid=1305479706
Danke fuer die Tips. Habe mir gestern noch mal ein wenig beraten lassen
und lass mir mal so ein "Cross"-Dingens-Rad angedeihen. Mal schaun, wie 
das dann so tut. 

Z

-----------------------------------------------------------------------------



Mobiles Internet... WLAN-Router? (Zook, 22. Jul 2011, 09:35:05):
Hallo,

ich habe folgendes Problem: Ich moechte meinen Internetzugang auf
mobiles Internet umstellen (bzw. ich muss, Gruende sind egal). Nun
habe ich mit einem Telekom-Mobilstick festgestellt, dass ich in der
Wohnung nur EDGE habe, was voellig ungeeignet ist. Wenn ich den 
Notebook aber aussen auf die Fensterbank im Wohnzimmer lege, dann komme
ich via HSDPA so auf 4mbps. Das waere okay fuers erste. Nur, ich will ja 
nicht immer auf der Fensterbank haengen. Nun dachte ich mir: Ggf. gibt
es solche UMTS-WLAN-Mini-Router, die man dafuer einsetzen koennte. Ggf.
sollte dabei aber auch eine Antennenmoeglichkeit bestehen, so dass ich die
Antenne im Fall der Faelle raus aufs Fensterbrett legen kann.

Jemand ne Idee?

Zook.

-----------------------------------------------------------------------------



Re: Mobiles Internet... WLAN-Router? (Zesstra, 22. Jul 2011, 10:22:44):
~#! rn=Zook rt=1311320105 rg=suche-biete
~#! tid=1311320105
Ich hab keine konkrete Empfehlung, aber es gibt auf jeden Fall Router mit
UMTS-Konnektivitaet. Ggf. zusaetzlich zu DSL. Im Zweifelsfall mal einfach UMTS
und Router in Google werfen, muesste was an Produkten rauskommen. Was
Antennenanschlussmoeglichkeiten angeht, bin ich aber ueberfragt, evtl. muss
man da selber basteln.

Zesstra

-----------------------------------------------------------------------------



Re: Re: Mobiles Internet... WLAN-Router? (Zook, 22. Jul 2011, 10:24:13):
~#! rn=Zesstra rt=1311322964 rg=suche-biete
~#! tid=1311320105
Ich dachte irgendwie an sowas wie dieses Huawei E5 oder so; wobei ich 
das noch nicht so genau angeschaut habe.
Z

-----------------------------------------------------------------------------



Re^3: Mobiles Internet... WLAN-Router? (Zook, 22. Jul 2011, 10:28:57):
~#! rn=Zook rt=1311323053 rg=suche-biete
~#! tid=1311320105
wobei es von huawei wohl auch geraete mit externem antennenanschluss gibt.
z

-----------------------------------------------------------------------------



Re^4: Mobiles Internet... WLAN-Router? (Anthea, 22. Jul 2011, 11:28:19):
~#! rn=Zook rt=1311323337 rg=suche-biete
~#! tid=1311320105
Irgendwo ist mir neulich ein solcher Router mit 12V-Anschluss fuers Auto und
externer Antenne ueber den Bildschirm gestolpert, weil ja im Auto nicht
unbedingt dort, wo man das Geraet aufstellen will, auch guter Empfang moeglich
ist. War allerdings auf 4 ankoppelbare Geraete beschraenkt.

-----------------------------------------------------------------------------



Re^5: Mobiles Internet... WLAN-Router? (Darklor, 15. Aug 2011, 22:37:12):
~#! rn=Anthea rt=1311326899 rg=suche-biete
~#! tid=1311320105
Hm beim Aldistick war zumindest ne kurze Verlaengerung dabei, aber ob das fuer
deine Zwecke ausreichend waer - keine Ahnung.

rklor.

-----------------------------------------------------------------------------



S: Zwei Hoeheneinheiten Platz im RZ  (Zook,  7. Dez 2011, 11:16:35):
Huhu, ich suche am besten in Hessen zwei Hoeheneinheiten Platz
fuer zwei Pizza-Schachteln. Habt Ihr da Erfahrungen mit 
Anbietern? Gar gute Erfahrungen? Preis? 

Zook.

-----------------------------------------------------------------------------



Re: S: Zwei Hoeheneinheiten Platz im RZ  (Zook,  7. Dez 2011, 17:48:39):
~#! rn=Zook rt=1323252995 rg=suche-biete
~#! tid=1323252995
Aeh, ich suche jemanden, der den Platz vermietet. Die
Pizzaschachteln habe ich natuerlich schon. Zook

-----------------------------------------------------------------------------



S: Codes fuer "Die Siedler Online" (Orktoeter, 17. Mai 2012, 16:42:26):
Wenn du in einer Computerzeitung einen solchen Bonuscode finden solltest und
ihn nicht selber brauchst, wuerde ich mich freuen, wenn du ihn mir geben

Orktoeter

-----------------------------------------------------------------------------



S: 1GB SD-Karten (Amaryllis, 28. Mai 2012, 21:52:47):
Hi,

hat noch jemand 1GB SD-Karten herumliegen, die er nicht mehr braucht?
Wichtig: SD, nicht SDHC. 1GB. Zur Not auch 512MB.

Gruss,
Ama*

-----------------------------------------------------------------------------



Re: S: 1GB SD-Karten (Gloinson, 28. Mai 2012, 22:42:19):
~#! rn=Amaryllis rt=1338234767 rg=suche-biete
~#! tid=1338234767
Nee, die wandern inzwischen alle zu Schwiegermutters Digitalkamera. Weil, 300
Bilder auf einem Chip kann man auch beschriften und wie einen Film in eine
Schublade stecken, wenn man partout keinen Rechner haben will und auch nicht
den Kram auf CDs brennt (zB am Fotoautomaten).


-----------------------------------------------------------------------------



Re: Re: S: 1GB SD-Karten (Amaryllis, 28. Mai 2012, 22:46:53):
~#! rn=Gloinson rt=1338237739 rg=suche-biete
~#! tid=1338234767
Das ist vielleicht etwas zu kurz gedacht. Die Dinger sind nicht zu
Archivierungszwecken gedacht und entwickeln auch gerne mal Speicherfehle mit
der Zeit.

Ama*

-----------------------------------------------------------------------------



Re^3: S: 1GB SD-Karten (Gloinson, 28. Mai 2012, 23:37:44):
~#! rn=Amaryllis rt=1338238013 rg=suche-biete
~#! tid=1338234767
Ach, zumindest ich werd da schon mal dezent ein paar Backups ziehen bevor es
Trara gibt und habe ausdruecklich und mehrfach und ueberhaupt das Backup der
guten Fotos auf Papier empfohlen. Flash ist fuer den Ottonormalnutzer aber
eben noch das unproblematischste "Langzeit"-Speichermedium.


-----------------------------------------------------------------------------



Re^4: S: 1GB SD-Karten (Gloinson, 28. Mai 2012, 23:39:35):
~#! rn=Gloinson rt=1338241064 rg=suche-biete
~#! tid=1338234767
PS: Ich haette ja lieber einen dicken Sack der Toshiba WORM SD-Cards besorgt,
aber die sind verboten teuer, finde ich.


-----------------------------------------------------------------------------



Re^4: S: 1GB SD-Karten (Amaryllis, 28. Mai 2012, 23:40:53):
~#! rn=Gloinson rt=1338241064 rg=suche-biete
~#! tid=1338234767
sehe ich anders. Ich habe schon mehreren Bekannten USB-Disks empfohlen, und
die kommen alle damit klar. Ist ja wie SD-Card: Einstecken, draufkopieren,
fertig. Nur ziemlich viel sicherer und mit mehr Speicherkapazitaet.

Ama*

-----------------------------------------------------------------------------



Re^5: S: 1GB SD-Karten (Gloinson, 28. Mai 2012, 23:53:47):
~#! rn=Amaryllis rt=1338241253 rg=suche-biete
~#! tid=1338234767
Festplatten haben aber als Archivmedium AFAIR (Herstellerlotto) in etwa die
Reichweite wie Flash.

Das zentrale Backup funktioniert so lange prima, wenn man diese Festplatte, so
wie wir Techniknutzer es tun, regelmaessig auf neue Systeme dupliziert,
ansonsten ist es halt auch nur eine Datenfalle fuer alle Bilder. Aeltere
Herrschaften sind manchmal etwas technikfeindlich.

Bei Verteilung auf mehrere Datentraeger steigt zwar die Wahrscheinlichkeit,
dass etwas passiert, aber das Ausmass ist immer begrenzt auf einen Satz. Eine
von dir erwaehnte Backup-Disk kann das ergaenzen ... das muessen dann halt die
Kinder mal leisten (liegt ja auch in deren Interesse ;) ).


-----------------------------------------------------------------------------



Re^6: S: 1GB SD-Karten (Zook, 29. Mai 2012, 08:30:54):
~#! rn=Gloinson rt=1338242027 rg=suche-biete
~#! tid=1338234767
Pustet die Sachen doch in die Wolke! ;) 

SCNR,
Zook

-----------------------------------------------------------------------------



Re^7: S: 1GB SD-Karten (Zesstra, 29. Mai 2012, 22:28:50):
~#! rn=Zook rt=1338273054 rg=suche-biete
~#! tid=1338234767
ich fand frueher ja DVD-RAM cool. Dummerweise haben die Schweine das
Aequivalent bei Blueray nicht gebaut und inzwischen laufen DVDs natuerlich
unter fernerliefen... :-(

Zesstra

-----------------------------------------------------------------------------



Re^8: S: 1GB SD-Karten (Amaryllis, 29. Mai 2012, 22:32:25):
~#! rn=Zesstra rt=1338323330 rg=suche-biete
~#! tid=1338234767
DVD-RAM hat bei mir zu oft Datenverluste produziert, als dass ich das noch als
sicher ansehen wuerde.

Ama*

-----------------------------------------------------------------------------



Re^8: S: 1GB SD-Karten (Gnome, 30. Mai 2012, 22:08:07):
~#! rn=Zesstra rt=1338323330 rg=suche-biete
~#! tid=1338234767
Was spricht denn gegen BD-R?

-----------------------------------------------------------------------------



Re^9: S: 1GB SD-Karten (Zesstra, 30. Mai 2012, 23:00:23):
~#! rn=Gnome rt=1338408487 rg=suche-biete
~#! tid=1338234767
Oerks. Der kram ist nicht fuer Archivierungszwecke spezifiziert und
Erfahrungen hat man noch nicht so ewig lang. Die hoehere Datendichte koennte
evtl. zu mehr Problemem fuehren als bei DVDs. (Ja, da gibt es Hersteller, die
200 Jahre versprechen. IMHO ist das unserioes.)

Zesstra

-----------------------------------------------------------------------------



Re^10: S: 1GB SD-Karten (Gnome, 30. Mai 2012, 23:35:55):
~#! rn=Zesstra rt=1338411623 rg=suche-biete
~#! tid=1338234767
Wenn Du auf eine qualitativ hochwertig hergestellte BD-R ohne Farbschicht
zurueckgreifst, sie mit einer niedrigen Datenrate brennst und Waerme und UV
weitegehend vom Lagerort aussperren kannst, sollten die Scheiben fuer die
naechsten 20 Jahre erstmal sicher sein.
Und bis dahin wird es neue Speichermedien geben, die Deine bis dahin
erstellten Bluerays locker einverleiben (zum Vergleich: die Festplatten-
Kapazitaet der jeweils groessten verfuegbaren HD im Jahre 1992 und im Jahre
2012 hat sich innerhalb dieses Zeitraums verzehntausendfacht).

gnOme

-----------------------------------------------------------------------------



Re^11: S: 1GB SD-Karten (Ark, 31. Mai 2012, 00:20:44):
~#! rn=Gnome rt=1338413755 rg=suche-biete
~#! tid=1338234767
Die Medien moegen noch so lange haltbar sein, das ist irgendwann egal, denn Du
musst sie aktuell wieder _lesen_ koennen, sonst sind Daten wertlos. Insofern
wird man auch bei lange haltbaren Medien wie Baendern nicht um
Datenmigrationen alle x Jahre herumkommen. Mit dem LTO Standard ist das im
professionellen Umfeld einigermassen planbar, im privaten Umfeld eher der
ahnungslosen Gelassenheit oder der Technikhysterie der Leute ueberlassen. Fuer
die naechsten 20 Jahre moegen Deine Scheiben "sicher" sein, insbesondere, da
sie danach nur noch sonderbare Profis mit uraltem Geraet lesen koennen. Noch
gibt es halt keinen "ewigen" Standard fuer unbegrenzte Speicherkapazitaet und
unveraenderte Lese- und Schreibtechniken. Frueher hat man auch Buecher wieder
kopiert, aber selbst die Tinte hat laenger gehalten als Deine BD-R :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^12: S: 1GB SD-Karten (Ark, 31. Mai 2012, 00:23:34):
~#! rn=Ark rt=1338416444 rg=suche-biete
~#! tid=1338234767
Das Problem wird uebrigens nicht einfacher, weil die Daten heutzutage lustig
weiterkopiert, leicht veraendert, dupliziert, vervielfaeltigt, etc. werden.
Speicher ist halt zu billig zu haben, die Daten zu verwalten ... eine andere
Sache. Jaja, ich hab meine Fotos auf Platte und gesichert elsewhere ... meine
SD ist trotzdem noch nichtmal halbvoll, also hab ich da noch nicht viel
geloescht :D


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^11: S: 1GB SD-Karten (Gloinson, 31. Mai 2012, 00:34:34):
~#! rn=Gnome rt=1338413755 rg=suche-biete
~#! tid=1338234767
Mal ein pragmatischer Einwurf zu den optischen Rotationsmedien: die von mir
vor circa 6 Jahren fuer Archivierungszwecke (Dokumente) besorgten TDK Scratch
Proof DVD RW (also Metallschicht), zwei-, dreimal zwecks Initialisierung
formatiert, insgesamt zehnmal beschrieben sind inzwischen nicht mehr
fehlerfrei beschreibbar bzw lesbar.

Die billigeren Sony DVDRW, gleiches Alter, aehnliche Nutzung, funzen noch. Wie
ich weiter oben, als ich Ama*s Anfragethread kaperte schon erwaehnte:
Herstellerlotto.


-----------------------------------------------------------------------------



Re^12: S: 1GB SD-Karten (Zesstra, 31. Mai 2012, 00:39:26):
~#! rn=Gloinson rt=1338417274 rg=suche-biete
~#! tid=1338234767
Jo, da hab ich aehnliche Erfahrungen gemacht. Und die von Gnome erwaehnten
Tips gibts irgendwie seit der CD-R.
Angeblich soll uebrigens die Lebensdauer bei BD-RE hoeher als bei BD-R sein.
Nunja.

Zesstra

-----------------------------------------------------------------------------



Re^13: S: 1GB SD-Karten (Gnome, 31. Mai 2012, 00:54:03):
~#! rn=Ark rt=1338416614 rg=suche-biete
~#! tid=1338234767
Sofern Du die Bits nicht in Schiefer meisselst, musst Du eh alle paar
Jahre umkopieren: entweder droht das Medium an sich zu altern oder
das Lesegeraet schwenkt irgendwann das weisse Faehnchen, sei es durch
zu viel oder zu wenig Nutzung.
Und beim Umkopieren kann man dann auch gleich neue Backups auf ein ggf.
neues Medium durchfuehren. Was spricht also fuer die Dauer von max. 10
Jahren beim einmaligem Beschreiben gegen eine BD-R?

@Gloinson: Ja, Lotto spielen wir irgendwie alle. Selbst bei "Testsiegern"
gibts mal eine LKW-Ladung mit Montags-DVDs.

@Zesstra: natuerlich gibts die Tips seit der CD-R. Rate mal, warum! ;)


gnOme

-----------------------------------------------------------------------------



Re^14: S: 1GB SD-Karten (Gloinson, 31. Mai 2012, 01:20:06):
~#! rn=Gnome rt=1338418443 rg=suche-biete
~#! tid=1338234767
Ja, momentan ist es ein ewiges Umkopieren (oder ein einmaliges Ausdrucken,
denn Papier ist eben noch am Geduldigsten: ich plaediere da immer sehr
intensiv fuer, auch wenn es noch mehr Zeit kostet). Um dich allerdings dezent
zu enttaeusche, was die Einfachheit betrifft: YMMV in Sachen Datenmengen.
Schoene neue Blueray-Welt versus "was willst du behalten".

Da die Anzeigegeraete in Qualitaet steigen, behaelt man meist die Originale.
Originale heisst bei einer H264-Videokamera mit 1920x1080x50p bei ~30 MBit
halt 200 MByte fuer eine Minute. Ja, das macht ein Gig pro 5 Minuten, da
kommst du mit einer BD schnell ins Schwitzen. Bilder? Meine A70 hat noch
Bilder um 1 MB ausgespuckt, meine (durchaus nicht neueste) DSLR produziert
eben 10 MB NEF. Macht fuer einen netten Urlaub halt 3 Gig ... mal zwei, denn
wieso sollte ich den Rechner nochmal rattern lassen um irgendwelche
Zwischenresultate neu zu errechnen (Panoramen, Edits, JPG fuer
Schnellansicht).

Hat jetzt eigentlich irgendwer fuer Ama* eine paar SD-Karten, oder gebt ihr
mir die fuer die filmaehnliche Strategie meiner Schwiegereltern? ;)

PS: Zwischenfazit an der Backup-Front Medien ist bei mir nach Versuchen mit
DVD (einfach eine pro Urlaub/Urlaube) die Einsicht, dass fuer Grossdateinutzer
wie mich ein paar gespiegelte Platten am einfachsten zu handhaben sind.

Yay fuer USB3 uebrigens ;)


-----------------------------------------------------------------------------



Re^15: S: 1GB SD-Karten (Anatol, 31. Mai 2012, 08:34:42):
~#! rn=Gloinson rt=1338420006 rg=suche-biete
~#! tid=1338234767
Optische Medien in Archivsystemen sind nicht umsonst in Cartridges 
eingepackt. Lichtdicht, etwas staubgeschuetzter... 


-----------------------------------------------------------------------------



Re^16: S: 1GB SD-Karten (Zook, 31. Mai 2012, 14:49:58):
~#! rn=Anatol rt=1338446082 rg=suche-biete
~#! tid=1338234767
Irgendwie ist mein Datenbestand schon seit Jahren immer so bei knapp
100-120 GB. Davon ist 60 GB mein Notebook, Rest ausgelagerte Daten.
Immer schoen rollierend hin und her kopiert und alle paar Jahre
schmeiss ich nen alten Datentraeger raus und nehme nen neuen Dazu;
also USB-Platte derzeit. Funzt irgendwie zwar langsam, aber noch
halbwegs ordentlich.

Aber ich mach auch kaum Fotos und Videos schon gar nicht. Die meisten
Dateien, die ich selbst erstelle, sind ASCII-Dateien von vernachlaessig-
barer Groesse.

Zook.

-----------------------------------------------------------------------------



Re^17: S: 1GB SD-Karten (Amaryllis, 31. Mai 2012, 14:51:36):
~#! rn=Zook rt=1338468598 rg=suche-biete
~#! tid=1338234767
geht mir auch so. Mein Datenbestand sind ca. 300 GB. Regelmaessig gesichert
auf mehrere Truecrypt-USB-Platten.

Wenns mehr wird, muss ich regelmaessig altes rauswerfen, bis ich wieder nen
neuen Laptop habe ;)

Ama*

-----------------------------------------------------------------------------



Re^15: S: 1GB SD-Karten (Gnome, 31. Mai 2012, 19:49:18):
~#! rn=Gloinson rt=1338420006 rg=suche-biete
~#! tid=1338234767
*huestel*
Auf einer BD-R kann in Full HD max. 24p gespeichert werden. Und da Du
wahrscheinlich Deine Urlaubsvideos nicht verkaufen moechtest, kannst Du
auch noch ein wenig an der Kompressionsschraube drehen - vorher oder nachher.
Sonst muesste man sich fragen, wie "die" es schaffen, 3 Stunden Film auf eine
BD zu pressen. ;)

Aber Backups auf eine andere Platte sind wohl insgesamt schneller, sicherer
und kostenguenstiger, ja.

gnOme

-----------------------------------------------------------------------------



Re^16: S: 1GB SD-Karten (Gloinson, 31. Mai 2012, 20:37:32):
~#! rn=Gnome rt=1338486558 rg=suche-biete
~#! tid=1338234767
> Kompressionsschraube

Das will ich eben nicht. Ich hebe ja von meinen analogen Filmen auch nicht nur
die Abzuege auf.

Worauf ich hinauswollte (und was andere durch ihre Beispiele unterstuetzt
haben ist, dass die 25/50 Gig _einer_ BD zu knapp fuer die gesamten
Datenmengen sind, die man so herumschleift. Schon ist man wieder bei >1
Medien, die ueberprueft und gespiegelt werden muessen (wenn man Wert auf die
Daten legt, um manches ist es am Ende ja gar nicht schade) ... also bleiben
pragmatisch nur Festplatten.


-----------------------------------------------------------------------------



Re^17: S: 1GB SD-Karten (Gnome, 31. Mai 2012, 20:55:14):
~#! rn=Gloinson rt=1338489452 rg=suche-biete
~#! tid=1338234767
Natuerlich bleiben bei den heute ueblichen Datenmengen nur Festplatten.
Ich wuesste auch nicht, wie und wo ich meine aktuell 0,5T Daten sichern
sollte.
Schauen wir einfach mal, was die naechsten 20 Jahre in Sachen opt.
Speichermedien bringen... ich setze da auf holographischen Speicher.

gnOme

-----------------------------------------------------------------------------



S: Gitarre (Amaryllis,  3. Sep 2012, 23:47:37):
Hi,

als beginnender Hobby.-Klampfer suche ich eine einfache Gitarre, die nicht
"verzogen" ist, aber fuer Anfaenger geeignet ist.
Falls jemand Quellen hat oder sogar noch so ein Schaetzchen ungenutzt im
Keller, gerne Info an mich.

Ama*

-----------------------------------------------------------------------------



S: MIDI-Hardware (Amaryllis, 27. Nov 2012, 00:40:21):
Hi,

hat jemand von Euch noch alte MIDI-Hardware rumliegen, die er nicht mehr
braucht?

(Controller, Keyboards, ...)

Dann bitte mal Info an mich - nehme fast alles, soferns nix kostet ;)

Ama*

-----------------------------------------------------------------------------



iPhone 3Gs (Anatol, 21. Dez 2013, 12:33:55):

Suche iPhone 3Gs. Darf gebraucht sein.


-----------------------------------------------------------------------------



Re: iPhone 3Gs (Moonshine, 21. Dez 2013, 13:14:21):
~#! rn=Anatol rt=1387625635 rg=suche-biete
~#! tid=1387625635
Lass mich raten: Als Weihnachtsgeschenk? ;-)

-----------------------------------------------------------------------------



Re: Re: iPhone 3Gs (Anatol, 21. Dez 2013, 13:34:20):
~#! rn=Moonshine rt=1387628061 rg=suche-biete
~#! tid=1387625635
Nein, um die Kamera von einer zertifizierten Stelle blenden und
versiegeln zu lassen, damit ich bei meinem aktuellen Kunden ins 
Werk komme. Die 4er und 5er Produktreihe ist fuer das Procedere
beduaerlicherweise ungeeignet.


-----------------------------------------------------------------------------



Re^3: iPhone 3Gs (Zook, 23. Dez 2013, 10:00:08):
~#! rn=Anatol rt=1387629260 rg=suche-biete
~#! tid=1387625635
Brauchst Du ein Telefon, wenn Du bei Deinem Kunden bist?

Zook

-----------------------------------------------------------------------------



Re^4: iPhone 3Gs (Gloinson, 23. Dez 2013, 13:03:45):
~#! rn=Zook rt=1387789208 rg=suche-biete
~#! tid=1387625635
Noch genauer waere die Frage als 'brauchst du unbedingt ein iPhone, wenn du
beim Kunden bist' formulierbar :)


-----------------------------------------------------------------------------



Re^5: iPhone 3Gs (Anatol, 31. Dez 2013, 12:51:22):
~#! rn=Gloinson rt=1387800225 rg=suche-biete
~#! tid=1387625635
ad Zook: Ja. "Beim Kunden" heisst: Ich haeng' irgendwo bei meinen
Projektmitarbeitern herum, entweder in der "Technischen Entwicklung"
(die Mutter aller Sperrzonen), oder in der Softwareschmiede, oder irgendwo
dazwischen. Der Projektleiter sollte, egal wo er grade gurkt, erreichbar
sein - fuer seinen Chef, fuer den Kunden, fuer die Kollegen, oder?

ad Gloinson: Theoretisch - nein. Praktisch? Naja, das Hauptgeraet ist 
ein iPhone. Und ich moechte jetzt ungern auf der selben Nummer zweigleisig
fahren (ausserdem ist die Entscheidung, wem ich meine Daten in den Gier-
schlund werfe, ja schon gefallen, wa).


-----------------------------------------------------------------------------



Re^6: iPhone 3Gs (Zook,  1. Jan 2014, 11:59:59):
~#! rn=Anatol rt=1388490682 rg=suche-biete
~#! tid=1387625635
Ah, verstehe. Ja, dann ist Dein Plan sicherlich sinnvoll. Nachdem es
ja immer mal neue iPhones gibt, kommt bestimmt mal nen altes guenstig
auf den Markt, oder?

Andere Frage noch: Ist das dann dein Privatgeraet? 

Zook

-----------------------------------------------------------------------------



suche Compiler Entwickler / biete Job - Lymington (UK) (Amylaar, 10. Jan 2014, 20:51:58):
Embecosm sucht neue Mitarbeiter um zu expandieren.
Naehere details (in Englisch) hier:
http://www.embecosm.com/careers/

-----------------------------------------------------------------------------



Server-Admin gesucht (Moonshine,  4. Jan 2015, 09:25:02):

Wir (Buero < 10 Leute, Rheinland Naehe Koeln) suchen (moeglichst kurzfristig
versteht sich ;-) ) einen neuen, langfristigen Systemadministrator.

Kennt ihr einen / Ist zufaelligerweise jemand selber ein solcher?

Ein paar Eckdaten: 
Server wurde vor ca. 1 Jahr neu gekauft, Betriebssystem openSUSE.
Genutzt wird der Server ueberwiegend als file-server, 2* taeglich laeuft eine
Sicherung auf ein RDX-Laufwerk, welches einmal woechtlich gewechselt wird.
Das System laeuft stabil, die Arbeit sollte sich also im Rahmen halten und im
Regelfall auf Fernwartung beschraenken, wenn denn dann mal die Sicherung
spinnt, o.ae. Toll waere natuerlich, wenn eine evtl. doch mal erforderliche
Anfahrt nicht 300km bedeutet.

Falls ihr wen habt, oder noch Fragen (ich versuche diese im Rahmen meiner
Moeglichkeiten zu beantworten *g*), gerne per tm oder mail.

Danke
Mooni


-----------------------------------------------------------------------------



Re: Server-Admin gesucht (Amaryllis,  5. Jan 2015, 00:45:47):
~#! rn=Moonshine rt=1420359902 rg=suche-biete
~#! tid=1420359902
Was zahlt Ihr denn? ;-)

Ama*

-----------------------------------------------------------------------------



Re: Re: Server-Admin gesucht (Moonshine,  5. Jan 2015, 06:40:50):
~#! rn=Amaryllis rt=1420415147 rg=suche-biete
~#! tid=1420359902

Quadrillionen ;-)

Ob jetzt die Zeitung dafuer der richtige Ort ist - in _Deutschland_! :-)

-----------------------------------------------------------------------------



Hoster fuer "kleine", aber vollstaendige VMs... (Zook, 19. Jan 2015, 16:10:36):
Huhu, ich suche nen Hoster fuer einige private Spielereien, soll billig sein,
muss nicht viel koennen. Allerdings haette ich gerne eine "richtige" 
Virtualisierung, so dass ich auch am Linux-Kernel fummeln kann. Irgendwas
wie Container-"Virtualisierung" taugt fuer meine Tests nicht. 

Was nimmt man denn da so fuer Hoster fuer ne kleine Linux-VM?

Zook

-----------------------------------------------------------------------------



Re: Hoster fuer "kleine", aber vollstaendige VMs... (Vanion, 26. Jan 2015, 23:07:00):
~#! rn=Zook rt=1421680236 rg=suche-biete
~#! tid=1421680236
Haste dir mal die jiffy-server von domainfactory angeschaut? df gehoert
mittlerweile wohl hosteurope. Sonst hab ich keine Idee.

V*

-----------------------------------------------------------------------------



S: Simplen Editor fuer "Familien"Videos (Amaryllis, 18. Sep 2015, 06:40:19):
Hi,

im Zuge meiner Migration weg von meinem immer mehr-tastatur-gschaedigteen
Laptops hin zu einem neuen sichte ich gerade alte Backups und stosse auf einen
lustigen Film aus Studienzeiten, den ich verkuerzt dem ein oder anderen
Auditorium zur Verfuegung stellen moechte. Dazu brauche ich eine Software:

a) die schneiden kann
b) bei der ich idealerweise zwischendurch einfach auch mal Text einblenden
kann, wie man das von Praesentationen kennt
c) bei der man vielleicht auch peinliche Stellen pixln kann (muahaha)

Also sowas ala:
Pfeil auf x. Sprechblase/Schrift dazu: Das ist der Cheffe. Der kann nix, aber
das richtig.
Naechste Szene...
Szenenunterblendung: Am naechsten Tag...

Irgendwie sowas halt, ich glaub, Ihr wisst, was ich meine ;)
Idealerweise fuer Winbloed, aber Linux ist auch kein Problem.

Danke und VG,
Ama*

-----------------------------------------------------------------------------



Re: S: Simplen Editor fuer "Familien"Videos (Anthea, 18. Sep 2015, 08:45:38):
~#! rn=Amaryllis rt=1442551219 rg=suche-biete
~#! tid=1442551219
In der c't Heft 19 sind gerade Videoschnittprogramme fuer Linux besprochen
worden, Kdenlive, OpenShot, Pitivi, Cinelerra und Lightworks Free. Fazit war
fuer ganz simple Dinge ist OpenShot gut, Pitivi ist noch instabil, fuer etwas
mehr effekt ist Kdenlive gut, Cinlerra und Lightworks sind sehr maechtig, aber
brauchen viel Einarbeitungszeit.
Daheim arbeite ich unter Windows mit TMPGEnc und Sony Vegas, aber die sind
beide nicht umsonst zu kriegen. Obwohl... TMPGEnc gibt es normaler Weise als
30 Tage Testversion, wenn Du so schnell fertig wirst ;)

-----------------------------------------------------------------------------



Re^8: TF disconnect unter windows (Gloinson,  7. Dez 2015, 23:31:17):
~#! rn=Zesstra rt=1449525559 rg=mudclients
~#! tid=1449133763
Suche einen Spieler, der dauerhaft eine Herzdruckmassage an meinem unbelebten
Magierleib durchfuehrt, damit ich in den Genuss der Aenderungen komme, ohne
den Magiermodus verlassen zu muessen.


-----------------------------------------------------------------------------



WLAN-Router als Access Point mit SIM-Karte (Amaryllis, 21. Mai 2017, 21:55:21):
Hi,

ich habe hier eine SIM-Karte nur fuer Internet. Nun wuerde ich die gerne als
Acecesspoint z.b. fuer meinen Laptop benutzen, wenn ich unterwegs bin.
Amazon hat da einige Geraete, aber ich weiss nicht, was man da so so nimmt.
Hat jemand damit Erfahrung, z.B. TP-Link?

Danke,
Ama*

-----------------------------------------------------------------------------



Re: WLAN-Router als Access Point mit SIM-Karte (Joshua, 21. Mai 2017, 22:02:11):
~#! rn=Amaryllis rt=1495396521 rg=suche-biete
~#! tid=1495396521
Oeh, ich nehm mein Handy? Zweiter Sim-Slot ist dabei ganz hilfreich, aber
sonst vielleicht einfach ein altes dediziert dafuer abstellen?

Josh

-----------------------------------------------------------------------------



S: Wohnung in Koeln (Arath,  6. Nov 2017, 13:58:44):
Hi,

ich weiss, die Chancen sind gleich null, aber ich moechte nichts unversucht
lassen...

Ich suche eine kleine Wohnung fuer eine Person in Koeln. Stadtteil egal.
Mietbar ab sofort. Einzelhelten per Mail.

VG,
Arath

-----------------------------------------------------------------------------



S: Stores mit Schlaufengleitern (Amaryllis, 29. Jun 2022, 20:36:59):

Hi,

ich bin auf der Suche nach Gardinen-Stores, bei denen schon
Schlaufengleiter-Rollen angebracht sind. Google-Suche hat leider nichts
gebracht. Hat jemand eine Idee, wo man soetwas bekommen koennte?

Dank
Ama*

-----------------------------------------------------------------------------



Geocaching (Zaphob, 16. Jul 2023, 20:23:27):
Hi Leute!
Wer kennt sich mit GC aus?
Suche schicke Hotels in und um Dortmund. Habe da bisher wenig Erfolg gehabt.
Naja, Anfaenger eben. 
Gruesse,
Zap*

-----------------------------------------------------------------------------



