Posts by Wurzelzwerg

    Jetzt müsste er sich nur noch drehen

    Dabei fällt mir ein: moderne Fernseher haben doch teilweise irgendwelche Modi, die aus einem beliebigen stinknormalen Bildsignal ein räumlich wirkendes Bild on-the-fly errechnen und darstellen. Wie würde so eine C64-Demo damit wohl aussehen?

    das Meiste ist leider flach wie Sozialpädagogin
    Konkret mein Fenseher braucht vorzugsweise deutlich umrandete Konturen damit das vernünftig klappt.
    Disneys Gargoyles macht da halbwegs Spass :)

    Mein Problem: Ich kann nicht zeichnen

    Sonst hätte ich schon längst etwas bei Youtube rausgehauen.

    Zuletzt (heute) hatte ich mir gedacht, ich könnte ja ein 3D Comic einscannen und das auf die nötige Auflösung runterscalieren.

    Leider waren danach nur noch Legosteine übrig.

    Ich werde also zu den Anfängen zurückgehen und einfache Objekte wie Tetraeder oder Würfel zeichen

    So wirklich aufregend wird das aber wohl nicht werden :(

    Ja wie, das funktioniert einfach so? Gläser tauschen und fertig?

    Also ist die Einstiegshürde (für 3D- Fernsehbesitzer) ja auch nicht viel höher als bei den anderen alten 3D- Brillen? Wie genial ist das denn?

    Wieso probiert da denn sonst noch niemand damit herum, der einen 3D- Fernseher hat? Da verstehe ich aber das mangelnde Interesse überhaupt nicht. Vor allem weil man es ja offensichtlich sogar schon mit vorhandener Software gut nutzen kann?


    Damit wäre ja z.B. auch ein komplett neuer Grafikmodus möglich oder Nuvies in 3D? Im Prinzip eigentlich alles, viel besser als bei Grünrot und den anderen Brillen.

    Es bringt auch erheblicher Einschränkungen mit sich.
    Das Side by Side 3D unterteilt bei der Übertragung den Bildschirm in zwei Hälften.
    Der Monitor streckt die beiden Hälften auf doppelte Größe und legt sie übereinander.

    So weit so schön.

    Jetzt hat der C64 aber um den nutzbaren Bildschirmbereich einen Rahmen.
    Dieser Rahmen im nicht nutzbaren Bereich wird beim Strecken in den nutzbaren zweiten Bereich gezogen.
    Somit bleiben von den 25 Zeilen nur 2x8 Zeilen anstatt 2x12,5 Zeilen übrig.

    Der Grund, weshalb ich das Side by Side mit einem Bild oben und einem Bild unten umgesetzt hatte, anstatt des üblichen zwei Bilder nebeneinander wie es aus Youtube kennt,

    ist der, dass sich der Untere (obere) Rahmen weit einfacher abschalten lässt als der seitliche.

    Wenn man also in den oberen und unteren Bereich eine Reihe Sprites abbildet kommt man auf zusätzliche 42 Punkte (ca 5 Zeilen)

    Auch hier ein kleiner Haken: Wir haben nur 8 Sprites die wir nebeneinander abbilden können. Diese sind jeweil 24 Punkte breit. Macht zusammen nur knap 200 Punkte, anstatt der 320, die der Bildschirm tatsächlich breit ist.

    Wenn Du natürlich voll der Crack bist und den Seitlichen Rahmen abschaltest solltest Du mit einem links/rechts Side by Side sogar ohne Einschränkungen 3D darstellen können.
    Du hast halt nur quasi keine Rechnenleistung mehr

    Ich hab's:
    Eine Motorbetriebene Schlitzscheibe vor dem Gesicht, die Abwechselnd die Augen verdeckt und so abwechselnd 2 Bilder auf 2 Augen verteilt, gebaut aus einer defekten 1541!
    Die macht ja 5 Umdrehungen die Sekunde, mit 5 Schlitzen und 5 Feldern in der Scheibe müsste man sich mit den 50 Hz der Röhre synchronisieren können.

    :sieroh

    Yo, das würde sogar funktionieren, aaaaaaaber:
    Dann hast Du nur noch 25Hz pro Auge.
    Und das solltest Du dir zweimal überlegen.

    Ich würde gern noch mal auf das ursprüngliche Thema echtes 3D zurückkommen.

    Wurzelzwerg Wie baut man denn eine 3D- Brille so um, das sie am C64 funktioniert?

    Wie schaut das denn etwa am C64 aus, wenn nur noch 8 Zeilen bleiben?

    Die Option, es für 2 unterschiedliche Bilder für 2 Spieler zu nutzen, finde ich dabei am sinnvollsten und vielversprechendsten.

    In vielen Threads geht es hier um den Anschluss des C64 an moderne Fernseher. Ich denke, das wird auch bei den LGs eher ungenügend aussehen?

    Man sollte weder die LG Fernseher unterschätzen, noch das was von der Auflösung übrig breibt, wenn die in der Vertikalten halbiert wird.
    Die Side by Side Spiele wie Pitstop II oder Spy versus Spy kommen ja offensichtlich recht gut damit klar.

    Wenn Du das umsetzen möchtest musst Du aus zwei 3D Brillen quasi über kreuz einen Filter tauschen, so dass Du eine Brille mit zwei rechten Gläsern und eine mit zwei linken Gläsern hast.
    Für alles Andere brauchst Du die Brillen natürlich nicht umbauen.
    Guckst Du hier:

    Ich hatte auf einer kleinen Con bei Euskirchen (http://www.classic-videogames.de/page/10/) mal ein einfaches Beispiel von einer 3D Animation gezeigt.

    Sollte es jemals wieder eine große Con geben werde ich etwas mehr vorbereiten.


    Beachte aber, dass die LG Fernseher nur dann einen 3D Modus aktivieren, wenn der Eingang über HDMI kommt. Du brauchst also zwingend einen entsprechenden Wandler

    Yo, wenn man aber nach EA81 springt passiert auch sonst nix mehr

    $EA31 59953 Interrupt-Routine, verarbeitet alle IRQs

    $EA81 60033 Holt Register A/X/Y aus dem Stapel zurück und beendet einen IRQ


    ea81:

    pla

    tay

    pla

    tax

    pla

    rti

    Man kann es auch mit dieser Aussage ausschliessen: ' ... %00 = Timer counts System cycle ... ' wenn er 1 mhz kann, dann kann er auch 200 khz

    Die Eingangsschaltung am fraglichen Pin auch?

    Die Frage ist nicht unberechtig, aber: Ich habe ja die Zähldauer ver256facht. Ganz egal ob der Eingang das kann, oder nicht. Es müssten auch entsprechend mehr Impulse gezählt werden. Das macht er aber nicht.

    Ich werde mal einen Taster anschliessen und schauen, was passiert wenn ich von Hand Impulse gebe.


    Wenn ich mich recht entsinne ist der Anschluss vom CIA direkt mit dem Userport verbunden

    a) Ist der Timer Eingang zu langsam?

    Das kann man einfach ausschliessen. Nimm ein oder mehrere Flipflop (74LS93 bietet sich dazu an) und teile damit das Signal durch 2 oder 4. Dann läuft der Zähler mit 100 kHz oder 50 kHz. Wenn er dann anders zählt waren 200 kHz zu schnell.

    Man kann es auch mit dieser Aussage ausschliessen: ' ... %00 = Timer counts System cycle ... ' wenn er 1 mhz kann, dann kann er auch 200 khz

    a) Ist der Timer Eingang zu langsam?

    Das kann man einfach ausschliessen. Nimm ein oder mehrere Flipflop (74LS93 bietet sich dazu an) und teile damit das Signal durch 2 oder 4. Dann läuft der Zähler mit 100 kHz oder 50 kHz. Wenn er dann anders zählt waren 200 kHz zu schnell.

    Danke für den Tipp!
    Ich habe es nun genau anders herum gemacht und den Timer länger laufen lassen:

    c034:

    LDA $d019

    STA $d019

    INC $D021 (Marker auf dem Bildschirm für mich,

    DEC $d021 damit ich sehe, dass der Interrupt fünktioniert)

    LDA #$77

    STA $d012

    LDA $dd06

    STA $0400

    LDA $dd07

    STA $0401


    inc $0402

    lda $0402

    clc

    cmp #$00

    bne $c064


    LDA #$31

    STA $dd0f

    inc $0403 (Anzeige für mich um zu sehen, dass nur alle fünf Sekunden nei initialisiert wird)


    c064 JMP$ ea31 bzw ea81


    Der Timer läuft also nun etwa 5 sekunden bis er mit #$31 neu initialisiert wird.

    Er müsste also 256 mal mehr Impulse zählen als vorher.

    Es sind aber etwa gleich viele ||


    Dass der Übertrag generell funktioniert hatte ich mit einem anderen Offset ja schon geprüft.

    Nun verstehe ich die Welt nicht mehr

    Here it is:

    SEI

    LDA #$7f

    STA $DC0D

    LDA #$ 01

    STA $d01a

    LDA #$1b

    STA $d011

    LDA #$34

    STA $0314

    LDA $c0

    STA $0315

    CLI

    RTS


    c034:

    LDA $d019

    STA $d019

    INC $D021 (Marker auf dem Bildschirm für mich,

    DEC $d021 damit ich sehe, dass der Interrupt fünktioniert)
    LDA #$77

    STA $d012

    LDA $dd06

    STA $0400

    LDA $dd07

    STA $0401

    LDA #$31

    STA $dd0f

    JMP$ ea31 bzw ea81


    mag ja auch sein, dass ich mich irgendwo beim Oskar verrechnet habe.
    Oder der CIA kann gar nicht so schnell zählen?
    Dafür ist das Ergebniss aber recht stabil

    ich begreife es nicht;(

    #$31, also 49 setze ich am Ende von jedem Interrupt


    Wenn man dem Wiki glauben darf

    wäre das: Start timer, Load latch, Timer counts positive slope on CNT

    Hatte ich auch zuerst gehofft, dass es so einfach wäre,

    aber wenn ich den Offset des Low Bytes auf 250 setze habe ich einen Übertrag in das High Byte.
    Somit sollte das ausgeschlossen sein

    Hallo zusammen!


    Ich komme mal wieder nicht weiter.

    Ich möchte über den CNT Eingang des CIA II (b) Impulse zählen.

    Und zwar konkret jeweils 50 ms lang. (Ich frage per Rasterinterrupt alle 50 ms den Wert ab und setze den Counter zurück)

    Am Eingang habe ich eine Frequenz von 200 khz angeschlossen.

    200 khz / 50 hz = 4000 hz

    Theoretisch sollte der Timer also jeweils 4000 counts zählen.

    Tut er aber nicht.
    Ich habe einen festen Wert von ca 16 counts.


    Das der Zähler den CNT Eingang zählt ist 100% sicher, denn wenn ich den Eingang abklemme bleibt der Timer stehen.


    a) Ist der Timer Eingang zu langsam?
    b) Ich möchte inzwischen auch nicht ausschliessen, dass ich zu dumm bin.

    Hat irgendwer zu Option a eine Idee?

    LG

    Christian

    Ideen ausser irgendwelchen Demos bei denen irgendetwas aus dem Monitor geflogen kommt:

    - 3D Tetris

    - 3D Pong

    - Flugrennen durch einen Tunnel

    Für ein 3D Pong wäre die Grafik ja quasi schon fertig.

    Ich hatte allerdings auf eine größere Resonanz gehofft.

    Wenn ich die Umfrage richtig auswerte gibt es nur 8 Personen die mehr oder weniger Interesse haben.

    Das reicht natürlich nicht aus, als dass ich mir die langen Winternächte vor der Rechner um die Ohren schlage.

    Fast vergessen: 3D Microhexagon aus der Ego Perspektive wäre natürlich der Oberhammer