Mir kommt das Bild mit den Kugeln so bekannt vor? Kann es sein, dass es aus einem C't Artikel über Raytracer ist?
Gibt es diesen Raytracer auch in C, um ihn mal als Vergleich mit dem cc65 zu übersetzen und zu testen?
Du bist in Begriff, Forum64 zu verlassen, um auf die folgende Adresse weitergeleitet zu werden:
Bitte beachte, dass wir für den Inhalt der Zielseite nicht verantwortlich sind und unsere Datenschutzbestimmungen dort keine Anwendung finden.
letzter Beitrag von BIF am
Mir kommt das Bild mit den Kugeln so bekannt vor? Kann es sein, dass es aus einem C't Artikel über Raytracer ist?
Gibt es diesen Raytracer auch in C, um ihn mal als Vergleich mit dem cc65 zu übersetzen und zu testen?
BladeRunner:
Das gesammte Basic basiert auf Maschinensprache Programmen, die durch die Basic-Syntax aufgerufen werden, das ist offenbar noch nicht bei dir angekommen.
Das C64-Betriebssystem und das Basic sind Maschinensprache.
Du baust hier Mauern auf, die es in der Basic-Syntax nicht gibt, da ich mit Peek, poke, sys und usr auch Maschinensprache ähnlich programmieren kann.
Schönen Gruß.
Was dann aber mit Basic nichts zu tun hat.
Basic ist eine eigene Sprache, das ist wohl noch nicht bei dir angekommen
Wenn ich in C++ programmiere nutze ich da auch die dortige Syntax und bilde nicht mit der Syntax die einer anderen Sprache nach.
Poke, Peek und Sys sind sinnvolle Befehle, aber es führt die BASIC-Programmierung ad absurdum wenn ich meinen Interpreter nur noch nutze um damit Maschinenroutinen abzuklappern. Dann kann ich gleich in Assembler programmieren, das ist dann auch leichter lesbar und stimmiger.
Deine Codes sind in der Regel nicht mehr nachvollziehbar, zumindest nicht ohne größere Einarbeitung, und das führt denn Beginners all symbolic inctructuon code wie gesagt total ad absurdum.
<SCARCASM mode="on">
Das ist falsch! Im BIF Jargon heisst das:
Aber ganz im Ernst, Bladerunner, fütter ihm keinen Fisch mehr, die Diskussion wurde schon bis zum Erbrechen hier geführt. Er schnallts einfach nicht!
BladeRunner:
Selbstverständlich kannst du auch in Maschinensprache programmieren, wenn du damit das ganze besser verstehst.
Basic ist aber einfacher als Maschinensprache, da es viele Maschinencodes zusammenfaßt.
Etliche lda,ldx,ldy-Befehle werden in Basic zu einer einzigen peek-Funktion zusammengefasst.
Gleiches gilt für den Poke-Befehl, der mehre sta,stx,sty´s zusammenfasst.
Man kann Basic auch als vereinfachtes Assembler verstehen.
Schönen Gruß.
Was ich veröffentliche sind Lösungsbeispiele, die aber, wie ich finde durchaus gut funktionieren.
Und genauso verstehe ich das auch. Was BIF sich hier zusammenbastelt muß nicht immer sinnvoll oder logisch für andere sein.
Aber er probiert scheinbar gerne was in BASIC aus und stellt es alle zur Verfügung. Laßt ihm doch seinen Spaß daran.
Deine Intention ist sehr löblich, aber lies einfach mal ein paar ältere BIF-Threads.
So ziemlich jeder, der ihn jetzt nur noch mit verbalen Ohrfeigen eindeckt, hat es früher wieder und wieder "im Guten" versucht, aber irgendwann entnervt aufgegeben. Das geht jetzt seit Jahren so.
Das soll keine Entschuldigung sein, nur eine Erklärung.
Du hast ja Recht. Ich mach mir jetzt ein Bismarckbrötchen. Ich hab halt irgendwie immer noch die irrige Vorstellung dass er mal den Unterschied kapiert, aber eigentlich sollte ich es besser wissen.
Basic, die vereinfachte Maschinensprache. Made my day, again...
Basic ist die einfachste Art Maschinencode auszuführen, zu erstellen und aufzurufen.
Wer das nicht verstanden hat, hat den Sinn und den Zweck des Basic auch nicht verstanden.
Ich empfehle hier einmal die Lektüre des ROM-Listing z.B. aus dem Buch "C64-intern".
Schönen Gruß
EDIT: hinfällig, kann gelöscht werden
.
Also, Basic besteht zu 100% aus Maschinensprache.
Daher ist ein langsames Basic auch immer auf langsamen Maschinencode zurückzuführen, weshalb die Assembler-Leute auch immer gern von optimiertem Assembler-Code reden. Stimmst´s ?
Schönen Gruß.
Daher ist ein langsames Basic auch immer auf langsamen Maschinencode zurückzuführen, weshalb die Assembler-Leute auch immer gern von optimiertem Assembler-Code reden. Stimmst´s ?
BASIC ist langsam weil es immer wieder den Code interpretieren und übersetzen muss, was bei Maschinencode gänzlich wegfällt.
Stimmst´s ?
Die Geschwindigkeit einer Programmiersprache ist natürlich von mehreren Faktoren abhängig.
Das hängt aber auch von den Befehlsmöglichkeiten ab.
Im Idealfall muß ich nur ein paar Variablen an das Maschinenprogramm übergeben, wie z.B. beim LOAD-Befehl und dann lädt der Computer das Programm allein, ohne daß ich alle Zwischenschritte selbst erledigen muß.
Wenn ich aber z.B. eine Bitmap mit poke lösche, dann muß ich 8000 mal den poke-Befehl aufrufen, was natürlich Zeit kostet.
Da wäre dann natürlich ein String-poke :pokeadr,a$: besser, da ich damit mit einem Befehl bis zu 255 Pokes ausführen könnte.
Also, je mehr Einzelaktionen ich machen muß, je langsamer ist das Basic.
Und daher blieb meine Lösung zum Bitmap-Löschen mit Strings unter einer Sekunde.
Schönen Gruß.
Also man kann auch in Basic hohe Geschwindigkeiten erreichen, wenn man mehrere Aktionen geschickt zusammenlegt.
Wie z.B. in dem Programm ROM-RAM bei dem ich das gesammte ROM mit nur einem Kopieraufruf ins RAM kopiere und dann den Bildschirm ins obere RAM verlege.
Das spart enorm Zeit und eröffnet dem Programmierer völlig neue Möglichkeiten zur Zeichensatz-, Sprite-, Bildschirm- und Grafik-Programmierung oder für Betriebssystem-Änderungen.
Schönen Gruß.
Du promotest zum gefühlt zehnten Mal die Lappalie "ins RAM kopiertes ROM" mit einer Extraportion Selbstbeweihräucherung und hast immer noch nicht gelernt, einen Forums-internen Link zu erzeugen?
Alter, was stimmt eigentlich nicht bei Dir? Hat das medizinische Gründe oder bist Du schlicht und einfach nur dümmer als zwei Scheiben Toastbrot?
EDIT: Und wenn ich ne Sperre kassiere - das musste raus.
Warum lasst ihr Euch denn auch so von BIF provozieren?
Ich halte ihn nicht für dumm wie Toastbrot, höchstens für stur und unbelehrbar.
Ich schaue mir immer an, was er schreibt und versuche als Anfänger daraus zu lernen. Irgendwann bin ich auch ein Fortgeschrittener, dann bemerke ich vielleicht auch, wenn er sich wiederholt oder sich unnötig kompliziert ausdrückt.
Wenn das passiert kann ich mir doch meinen Teil denken und muss mich nicht aufregen.
Stellt Euch doch mal vor er postet hier gar nicht mehr. Da würde doch echt was fehlen. Der tägliche Wutausbruch wäre bei einigen nicht mehr da, der ja eine seelisch reinigende Wirkung hat, da man ja Dampf ablässt.
Von daher erfüllt BIF doch eine tragende Funktion hier im Forum. Mal anzicken ist ok, aber direkt beleidigen finde ich nicht so gut, auch wenn man genervt ist. Solange keine Forenregeln verletzt werden, macht er sich nicht strafbar und man kann doch auch irgendwann weghören oder das Thema wechseln.
Ich sehe das auch ein wenig problematisch.
Vieles ist ja auch einfach falsch. Grade fuer Anfaenger ist das dann in mehrfacher Hinsicht ungeeignet.
Mich wuerde es schon auch stoeren wenn in einem C64 Forum 90% aller Posts inhaltlich falsch oder zumindest fragwuerdig sind und nicht darauf verwiesen wird.
So wie es in quasi jedem Netzteilthread erwaehnt werden muss, dass vieles einfach keine gute Idee ist.
Mir wurde BIF hier eher als Koryphäe vorgestellt und nicht als jemand, der Falschaussagen trifft.
Ich kann andererseits die Richtigkeit seiner Aussagen nicht beurteilen.