Hallo! Ein Bekannter und ich wollen ein Telespiel programmieren. Gedacht sind eine Auflösung von 64x64 Pixeln, schwarz/weiß, an einem TV, Eingabe über 2 Joypads (oder ähnliches), Sound über die 4 PWMs. Allerdings wollen wir 2 MCUs verwenden. Eine als CPU, die andere als Grafikeinheit. Die CPU übermittelt immer die 512 Byte für das Bild an die GPU die dieses aufbaut. Wir dachten dafür einen ganzen Port zu nehmen, damit das auch schnell von statten geht. Zur Zeit würde uns nur das Synchronisieren von GPU und CPU schwierigkeiten bereiten. Wäre es sinnvoll dies über Interrupts zu lösen? Auch die Eingabe ist uns noch nicht ganz klar. Wir dachten an sowas wie die NES-Pads. Dort sitzt ein Schieberegister drin, was die Bits der Tasten encodiert. Allerdings wäre das Dekodieren in der CPU dann wieder recht umständlich, zusätzlich zur Synchronisation, oder? Ansonsten bleibt nur der Selbstbau eines Kontrollers, mit 4 Tastern, für 4 Richtungen. Bei 2 Pads geht dann wieder ein Port drauf, aber wir würden uns gern so viel wie möglich I/Os frei halten, für eventuelle spätere Änderungen. Welche Art Spiel es werden soll steht zwar noch nich 100%ig Fest, aber ein PONG-Derivat wird wohl der beste Anfang sein. Vllt. auch ein Tetris. Mal sehen...
Hallo Genau daran arbeite ich seit 2 Monaten. Verfolge einen sehr ähnlichen Ansatz wie ihr, auch mit 2 MCUs (Mega32). Man sollte aber den Aufwand und die Komplexität eines solchen Projektes nicht unterschätzen, insbesondere, was Debug-Möglichkeiten, Timing, Datenübertragung und Grafikroutinen angeht. Werde vermutlich in den nächsten Tagen auf www.thinkcool.ch mein Projekt veröffentlichen, da es fast fertig ist. Gruss Michael
Auf welche Probleme bist du bislang gestoßen? Timing scheint bislang das größte Problem zu sein. Grafikroutinen beherrsche ich mittlerweile recht gut. Über nen PIC hatte ich schonmal ein BAS-Signal erzeugt. Allerdings war das nur ein dunkler werdendes Vollbild. Also recht einfach.
Guckt mal hier: Beitrag "einfache Grafikkarte mit 256x252 und 256 Farben für AVR" Beitrag "AVR ASCII Video Terminal - 40 x 25 - BAS Signal" Beitrag "TV VIDEO BILD BAS Frequenzzähler DVM Atmega8 Assembler" Gruß, Magnetus
Das Hauptproblem war meiner Meinung nach die Möglichkeiten zum Debuggen, denn es gibt kaum welche. Es werden zwar grosse Mengen an Daten herumgschaufelt und manipuliert, aber man kann da einfach nicht reingucken, da alles im Takt laufen muss. Simulieren geht ebenfalls kaum, da es einfach zu lange Simulationsschritte sind bis ein zu untersuchender Zustand eintrifft, zudem müsste man noch den jeweils anderen Controller einbeziehen. Zudem sind die Fehler normalerweise relativ high-level, da das Programm doch relativ komplex wird.
Mir fällt auf, dass ein 8-bit Port zur übertragung eines Bildes von einem Chip zum anderen, eine relativ lange Zeit benötigt. Ist das ein Problem gewesen, bei deinen Versuchen? Wie hast du die Übermittlung der Bilddaten gelöst?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.