I/O Bereich ausschalten

Es gibt 65 Antworten in diesem Thema, welches 9.739 mal aufgerufen wurde. Der letzte Beitrag (6. Februar 2013 um 22:48) ist von TheRyk.

  • Argh, viel wichtiger: Für was in Gottes(egal welcher) Namen sollte ienem diese Info was nutzen.
    Verbaut sind 64.5 Kilobyte RAM, adressieren kannst Du theoretisch 64 davon. Es sind 20 KB ROM verbaut, die in verschiedener Knofiguration ein oder ausgeblendet werden können.
    Alles andere ist schnulli-Bulli, zumindest wenn man nicht grade Code fabrifzieren will der Esoterische Ansprüche erfüllt.
    Lern doch erst mal mit dem regulären RAM und ROM vernünftig umgehen bevor Du dir Gedanken über irgendwelche frei les- und beschreibbare Speicherzellen im IO machst.
    Ich glaube nicht dass Du einen konkreten Nutzen aus der Frage hier ziehst und im Endeffekt ist sie wie üblich nur verwirrend.

    GREETINGS PROFESSOR FALKEN
    A STRANGE GAME.
    THE ONLY WINNING MOVE IS NOT TO PLAY.
    HOW ABOUT A NICE GAME OF CHESS?

  • Zitat

    Argh, viel wichtiger: Für was in Gottes(egal welcher) Namen sollte ienem diese Info was nutzen.

    Ja, die Frage nach dem RAM ist wirklich eine sehr akademische Frage.

    Zitat

    Wie kommt man bei 108 VIC/SID/CIA Register auf 3 kB "Speicher"?

    Verstehe wieder nun Bahnhof. Sind es wirklich nur 108 Bytes, die man überhaupt neben dem Farbram im IO-Bereich ansprechen kann?


  • Verstehe wieder nun Bahnhof. Sind es wirklich nur 108 Bytes, die man überhaupt neben dem Farbram im IO-Bereich ansprechen kann?


    "Ansprechen" kann man mehr, nur ist da entweder kein Register dahinter oder es sind gespiegelte Register. Z.B. erreicht man das Register bei Adresse $D018 auch unter den Spiegeladressen $D058, $D098, $D0D8, $D118, $D158... usw. Und von "Bytes" hab ich auch nicht geredet, sondern nur von Registern. $D018 ist da ein gutes Beispiel, denn dort gibt es nur 7 Bits und nicht 8.

  • Ja, ich habe nie behauptet, daß die Antwort auf meine Frage einfach ist.

    Zitat

    Bit 0 ist immer 1

    Ok, aber sieben achtel Byte liefert diese Speicherstelle dann doch noch.

    Zitat

    Adresse $D018 auch unter den Spiegeladressen $D058, $D098, $D0D8, $D118, $D158... usw.

    Ja, genauso sowas wollte ich wissen.

  • ROM: Von Fabrik aus etwas mehr als 20kB. 20kB kann man in den Blick der CPU direkt einblenden. Im IO-Bereich zwischen $d000 und $dfff sind einige Adressen faktisch ROM. Bei $d018 z.B. ist Bit Null immer Eins. Dieses Bit tritt mehrfach gespiegelt im Bereich auf. Klar, daß ROM nicht unbedingt nützlich sein muß.

    RAM: Der C64er hat etwas mehr als 64,5kB Speicher. 64,5kB + 108 Register. Davon gehen aber Speicher ab je nach angeschlossenem Gerät / je nach angeschlossenen und gesteuerten Geräten. Der VIC2 kommt mit Farbram (1000 Bytes aus 0,5kB Farbram), Spritedaten, Bildschirminhalten und mehr noch am teuersten. Benutzt man den VIC2 komplett, dann bleibt sogar für Code und anderen Daten weniger als 63kB.

    Jetzt alles richtig?

  • Zitat

    Mach dein spiel fertig und/oder lese Dokus, das ist sinnvoller ...


    Word up!

    ABER das hier

    Code
    poke53248,96:sys53248


    finde ich trotzdem einen Heidenspaß :freude, naja Coder-Humor [c:/run/dos/run-mode off]

  • Jetzt alles richtig?


    Nicht ganz, denn nicht jedes Register eignet sich als Speicher. Einige sind halt nicht auslesbar, andere nicht beschreibbar.

  • ABER das hier

    Code
    poke53248,96:sys53248


    finde ich trotzdem einen Heidenspaß :freude, naja Coder-Humor [c:/run/dos/run-mode off]

    Das ist in der Tat mit Abstand das Beste, was ich bisher auf einem Vernunfti-Thread gezogen habe (was nicht viel heißen mag)

  • Code
    poke53248,96:sys53248

    Und da soll noch jemand behaupten, ausführbarer Code könne im VIC nicht stehen und dort nicht angesprochen werden. Ist es auch nur ein RTS.

    Zitat


    Nicht ganz, denn nicht jedes Register eignet sich als Speicher. Einige sind halt nicht auslesbar, andere nicht beschreibbar.

    Ui, das wußte ich auch nicht. Dann schreibe ich es nochmal um....

  • ROM: Von Fabrik aus etwas mehr als 20kB. 20kB kann man in den Blick der CPU direkt einblenden. Im IO-Bereich zwischen $d000 und $dfff sind einige Adressen faktisch ROM. Bei $d018 z.B. ist Bit Null immer Eins. Dieses Bit tritt mehrfach gespiegelt im Bereich auf. Klar, daß ROM nicht unbedingt nützlich sein muß.

    RAM: Der C64er hat etwas mehr als 64,5kB Speicher. 64,5kB + einige Registerbytes in und außerhalb des Prozessors. Davon gehen aber Speicher ab je nach angeschlossenem Gerät / je nach angeschlossenen und gesteuerten Geräten. Der VIC2 kommt mit Farbram (1000 Halbbytes aus 0,5kB Farbram), Spritedaten, Bildschirminhalten und mehr noch am teuersten. Benutzt man den VIC2 komplett, dann bleibt sogar für Code und anderen Daten weniger als 63kB.

    So, bekomme ich dafür eine 1+ oder was?

    Edit: Im Prozessor ist auch noch RAM. Danke, Kai.

  • Den An-/Ausschalter kannst du auch noch als Bit gebrauchen für 0 und 1.

  • Manche Systeme können den Powerknopf tatsächlich abfragen:
    The BeOS programmer's guide covers two functions IsComputerOn (returns 1.0 if computer is on, unspecified otherwise) and IsComputerOnFire
    (returns temperature if mainboard has flames coming from it,
    unspecified otherwise). It's right there in the printed version (though I
    quote from memory).


    (Bitte melde dich an, um diesen Link zu sehen. )

    :biggrin:

  • Hehe, das ist aber auch gut:

    Zitat

    Infinite Loop........see Loop, Infinite

    and then a few pages later:

    Loop, Infinite.......see Infinite Loop