Suchergebnisse

Suchergebnisse 1-20 von insgesamt 605.

  • Zitat von Hoogo: „War da nicht mal was, dass man die Sichtbarkeit einer Fläche auch an der Richtung der Kanten erkennen kann, Uhrzeigersinn oder entgegen? “ Back-face Culling Zitat von Hoogo: „Woran wird denn erkannt, welcher Normalenvektor welche Linien steuert? “ In der Linienliste gibt der erste Wert an, bis zu welcher Entfernung (Z) die Linie sichtbar ist. Der Maximalwert ist $1f. Der zweite Wert besteht aus 2 Nibbles, die den Index ergeben auf 2 Normalenvektoren. Ist einer der beiden sichtb…

  • Zitat von ogd: „Und wenn man den Text per Spriteoverlay darstellt? “ Dazu müßte man dann auch eine neue Ausgaberoutine zum Malen der Zeichen in die Sprites erstellen. Zitat von ogd: „Apropos Sprites: Wozu werden die benutzt? “ Laserfadenkreuz, Explosionen und Trumble IIRC. Zitat von Acorn: „Und in der Bitmap ab Adresse $EF90 gibt es einen Pixelfehler bei $F071, kann durch $14 leicht behoben werden. “ Oha, das sieht so aus, als wäre dieser Fehler bereits im Original vorhanden. Ich habe es gerade …

  • Zitat von ogd: „ber in der jetzigen, ausgefüllten Form ist es natürlich stimmungsvoller, wenn man in die gleißende Sonne hineinfliegt. “ Das ist es sicherlich, zumal der linke und rechte Rand der Sonne schön zufällig ausgefranst werden. Für O.O.B. hatte ich zwar eine schnelle, allgemeine Routine zum Kreisefüllen erstellt, aber die ist leider recht lang. Zitat von ogd: „Bringt es denn was, die Modelldaten vorgepackt im Speicher vorzuhalten? “ Interessante Frage. Da ich nicht weiß, nach welchem Ve…

  • Zitat von ogd: „Ha(tte)st du schon eine Memorymap vom originalen C 64-Elite erstellt? “ Eine kleine Ergänzung: Die Objektdaten (Typ, Status, Koordinate, Matrix usw.) werden ab $f900 abgelegt. Im Anschluß daran folgen bis $ffc0 die Linienpuffer, in denen fürs spätere Löschen die Koordinaten der gemalten Linien gespeichert werden. Bei einem Doublebuffering würden sie nicht mehr benötigt, so daß der Bereich von $fa97 bis $ffc0 frei wird, immerhin $529 Bytes. Ich muß an dieser Stelle aber nochmal da…

  • Balancing eines Spieles auslesen

    M. J. - - Gästeboard

    Beitrag

    Zitat von 1570: „Najaaa, einfach das Originalspiel im Emulator starten, in den Monitor gehen, $DD00 und $D018 ansehen, dann den Zeichensatz aus dem entsprechenden Speicherbereich aus dem Monitor heraus abspeichern. “ Ich weiß nicht, ob das was hilft, aber ich hab mal im Emulator den vollständigen Zeichensatz (256 Zeichen von 8x8 Pixel Größe) auf dem Bildschirm anzeigen lassen und davon einen Screenshot erstellt. Von den angezeigten Zeichen dürften nur die ersten zwei Zeilen relevant sein. Bei de…

  • [cc65] Programm erneut starten

    M. J. - - Cross Development

    Beitrag

    Hab mir das Programm kurz angesehen. Dabei entsteht folgender Eindruck: $0819: Ziemlich direkt nach Start des Programms wird eine Unterroutine bei $1291 zur Initialisierung aufgerufen. $081f: Im Anschluß wird eine weitere Initialisierungsroutine aufgerufen, die den Variablenspeicher löscht. Wohl aus Speicherplatzgründen wird hierbei die nun nicht mehr gebrauchte Routine von $1291 dem Variablenspeicher zugerechnet und ebenfalls mit dem Wert 0 überschrieben. Wenn man nun das Programm ein zweites M…

  • @'LogicDeLuxe: Es ging mir nie um das TC64. Das Einzige, was ich sagen wollte, war, daß das Modul, von dem ich sprach, nichts mit dem TC64 gemein hat. @Retrofan: Da geht es Dir genauso wie mir. Meine Idee von einem externen CPU-Modul ist auch nur eine kleine Anekdote, denn ich kann es weder bauen noch programmieren (in Verilog) oder anderweitig bei einer Realisierung helfen. Hier geht es auch nicht danach, was ich haben möchte, denn dann hätten wir solch ein Modul schon längst. Es sind bislang h…

  • Zitat von Retrofan: „hat aber eigentlich mit 3D recht wenig zu tun, sondern das wäre ein 2D-Skalierer. “ Naja, viele klassische 8-Bit-Spiele wie Rennspiele mit (Pseudo)3d-Darstellung basieren auf Spriteverkleinerung bzw. Vergrößerung. Zitat von Retrofan: „Das Chameleon ist schon recht aufwändig – und eigentlich braucht man nicht noch einen weiteren Clone davon. “ Nein, ein neues TC64 will ich auch gar nicht. Davon war nie die Rede. TC64 würde ja bedeuten, daß alle C64-Chips (CIA, SID, VICII) und…

  • Zitat von daybyter: „Beim 8088 z.B. gibt es ja so 'illegale' Befehle, die dann halt der 8087 z.B. ausführt, bzw. einen Interrupt auslösen, der dann die FPU Emulation auslöst. “ Sowas kenne ich auch vom 68000, der bei Befehlen, die mit $Fxxx beginnen (bzw. $Axxx), eine Exception auslöst. Bei meinem im AppleII-Emulator ausgetesteten Modell handelt es sich aber tatsächlich um einen vollständigen 6502-kompatiblen Core. Genauer gesagt sind sowohl die Befehle des 6502 als auch die Register eine Unterm…

  • Zitat von Hoogo: „Das wiederum klingt für mich, als ob man viele Register retten und wiederherstellen müsste. “ Ja, sicherlich, aber das muß man während des Malens sowieso und fällt von daher nicht weiter ins Gewicht. Wichtiger ist, daß eine Tabelle für den linken und rechten Rand mittels "abs, x/y" adressiert werden müßte, wohingegen man beim on-the-fly-Ansatz mit einer Variablen auf der Zeropage auskommt. Beim AppleII konnte ich den Teil zur Linienberechnung sogar so umbauen, daß nicht allein …

  • Zitat von Retrofan: „das Bild zuerst (horizontal) auf die doppelte Auflösung (Hires, 320 x 200) gerendert und dann erst das Bild auf 160 x 200 Pixel reduziert. “ Witzigerweise habe ich bei O.O.B. bereits einen HiRes-Renderer (max 320x200) eingebaut. Erst beim Malen werden die Pixel mittels Masken auf 160x200 reduziert. Es gibt in dem Spiel sogar die (bei der Demo nicht freigeschaltete) Option, die 3d-Ausgabe in Monochrome-HiRes anzeigen zu lassen anstelle von Multicolour. Als einziges Problem se…

  • Super! Vielen Dank, Retrofan!

  • Zitat von Hoogo: „Zum Thema hier könnte die GEORam praktisch für Multiplikationen, Adressumrechnungen, Raumschiffdaten, Tabellen zum Linienziehen sein. Die REU könnte schnell den Bildschirm löschen. Und aus der Fähigkeit, internen und externen Speicher zu vergleichen kann man bestimmt auch noch was machen. “ Für Multiplikationen benutzt man heutzutage am besten die Quadrattabellen, da das Verfahren am schnellsten ist. Diese benötigen aber 2Kb. Unter Adreßumrechnungen kann ich mir nichts vorstell…

  • Zitat von ogd: „Zeichensatzmodus “ Ja, daran habe ich auch schon gedacht. Das Spiel "Fighter Bomber" arbeitet nach diesem Prinzip. (Daher die eingeschränkte Breite und auch die erkennbaren Graphikfehler bei Verwendung einer SCPU, da der Rasterinterrupt, der in der Mitte der 3d-Darstellung auf den nächsten Zeichensatz umschaltet, im Timing gestört wird.) Zitat von ogd: „Ein weiterer Nachteil ist die eingeschränktere Farbauswahl als im echten Bitmapmodus. “ Das wäre durchaus zu verkraften, da nur …

  • Zitat von ogd: „Schreib ihn doch mal per Email an. “ Danke. Werde ich vielleicht mal machen, aber nicht vor Ende April (dem Ende der diesjährigen Competition). Zitat von Hoogo: „Ich frag mich, ob es dazu einen einfachen Algorithmus gibt? “ Das Prinzip des "Maleralgorithmus" wird hier kurz beschrieben. Die dort erwähnte "Tiefensuche" wird meistens so durchgeführt, daß bei einem Polygon der Mittelwert aller Z-Werte berechnet wird. Bei einem Rechteck heißt dies, daß man von allen 4 Punkten den Z-We…

  • Zitat von peiselulli: „Genau das macht den Reiz, irgendwas auf dem C64 zu programmieren, kaputt ! Alle neueren, coolen Effekte beruhen genau darauf, dass man genau auf solche Erweiterungen keine Rücksicht nimmt. “ Nun, Du hast sicherlich die Posts vorher gründlich gelesen und mitbekommen, daß hier von der Entwicklung eines 3d-Spiels die Rede ist, nicht wahr? Nun denn, dann sag mal, wieso ein neues 3d-Spiel den Reiz kaputt macht, irgendwas auf dem C64 zu programmieren. Vielleicht ist mir da was e…

  • Zitat von ZeHa: „Was ist eigentlich der wesentliche Unterschied zwischen Metal Dust und Enforcer 2? “ Verwendet Metal Dust für die Hintergrundgraphik eigentlich Zeichensatz oder Bitmap? Zitat von Retrofan: „Schon an anderer Stelle habe ich mal behauptet (mehr kann ich als heutiger Programmier-Laie nicht tun), dass man die potentiellen Möglichkeiten moderner C64-Software nicht an dem bemessen darf, was z.B. 1986 gemacht wurde. Selbst bei identischer Hardware kann man teils erheblich höhere Perfor…

  • Wikipedia sagt hierzu: "The Electron's limitations meant several game features were cut including Thargoids and suns. Neither the BBC nor the Electron tape versions featured missions." Hinzukommt, daß man beim Electron auf das sehr umfangreiche Rom zurückgreifen konnte inklusive dort eingebauter Graphikroutinen, die dann im 2Mhz-Modus ausgeführt wurden. Eine Sache ist mir noch eingefallen, wo man Platz sparen könnte: Die spätere C64-Version enthielt ja auch eine Titelmusik, die sich ebenfalls zu…

  • Zitat von JMP$FCE2: „Du bist theoretisch vorzüglich aber praktisch nichts. “ Mit der Aussage hast Du Dich selber diskreditiert. Und Tschüß...

  • Zitat von ogd: „wie oft nachgeladen werden müsste beim Verwenden von Double-Buffering? “ Das ist eine gute Frage, ogd, und nicht leicht zu beantworten. Zunächst mal etwas Grundsätzliches, wie Elite seine Graphik organisiert: Zu jedem Objekt in der Objektliste existiert ein eigener Pufferbereich, in dem festgehalten wird, welche Linien für dieses Objekt auf dem Bildschirm gemalt worden sind. Um das Objekt vom Bildschirm zu löschen, werden alle in diesem Puffer gespeicherten Linien erneut gezeichn…