Hallo Besucher, der Thread wurde 792 mal aufgerufen und enthält 1 Antwort

letzter Beitrag von Unseen am

LOAD stürzt ab wenn Sprites in Win VICE 3.1 eingeschaltet sind

  • Ich hab folgendes gemacht:
    1. VICE eingeschaltet (C64C PAL, keine Cartridges, True Drive emulation (1541-II, nur Drive 8), Drive sounds enabled)
    2. Alt+8 -> neues d64-Image "testdisk.d64", attach


    Dann folgendes Programm eingeben:

    Code
    1. 10 poke53248,2:poke53249,120
    2. 20 poke53252,92:poke53253,120
    3. 30 poke53269,5

    dann save "crash",8 und nochmal save"crash2",8


    jetzt das Programm mit RUN starten, aufgrund meiner Speicherinitialisierung sehe ich ein weißes Viereck fast ganz im Rand und ein türkises auf derselben Höhe mehr in der Mitte.


    Das war noch alles zu erwarten.


    Aber wenn ich jetzt LOAD"$",8 eingebe, hängt sich der Rechner beim Laden auf.


    Habe es mehrmals probiert, Ergebnis ist dasselbe solange ich die Schritte wie oben ausführe. Hat jemand eine Erklärung dafür? Ist das ein Emulatorartefakt oder könnte das auch auf einem richtigen C64+1541-System passieren?

  • Hat jemand eine Erklärung dafür?

    Wenn Sprites eingeschaltet sind muss der VIC die Daten dafür aus dem Speicher laden, dazu hält er die CPU in jeder Bildschirmzeile kurz an. Das stört das Timing auf dem IEC-Bus je nach Anzahl der in einer Zeile aktiven Sprites mehr oder weniger stark, so dass in manchen Konstellationen das Laden mit Kernalroutinen nicht mehr funktioniert.


    Wenn ich mich recht entsinne hast du auch eine besonders ungünstige Spritekombination gewählt, jedes zweite Sprite zu verwenden kostet genauso viel CPU-Zeit als ob man die Sprites dazwischen ebenfalls eingeschaltet hätte.


    Zitat

    Ist das ein Emulatorartefakt oder könnte das auch auf einem richtigen C64+1541-System passieren?

    Natürlich kann das auch auf einem richtigen System passieren. Es ist eher umgekehrt: In einer schlechten Emulation tritt das Problem nie auf.