Die Cursor-Funktion erfodert schon ziemlich viel Aufwand. Erst die richtigen Grafiken im RAM finden, dann den Cursor über die ziemlich zeitaufwändige VWF-Routine hinzufügen, dann die alten Grafiken (ohne Cursor) wiederherstellen. Da die Grafiken - glaube ich zumindest - ganz am Ende auch noch in den VRAM hochgeladen werden müssen, könnte durchaus mal die Blank-Zeit überschritten werden. Ob gerade dieser Fehler genau damit zusammenhängt, kann ich nicht sagen. Es erscheint aber wirklich logisch.
Etwas daran ändern kann ich wahrscheinlich nicht. Schließlich hatte ich damals meine erste VWF-Patch-Version schon über den Haufen geworfen, um eine effizientere zu programmieren. Das heißt die aktuelle Version ist schon so effizient wie für mich nur möglich programmiert. Kann sein, dass man mit entsprechendem, mathematischem Fachwissen noch sehr viel rausholen kann. Dieses Fachwissen habe ich aber nicht.
Probiere einfach mal FastROM. Ich denke das alleine könnte das Probelm schon beheben. Wenn nicht, könntest du vielleicht Code aus dem Patch löschen, den du nicht mehr brauchst, um ihn etwas zu verschnellern. Allerdings glaube ich, dass es da nicht all zu viel gibt, was während der Cursor-Funktion überhaupt läuft.
Mit das quadratische Rad neu erfinden (englisch Reinventing the square wheel) bezeichnet man die Bereitstellung einer schlechten Lösung, wenn eine gute Lösung bereits existiert.
-Slowsort-
Slowsort (von engl. slow: langsam) ist ein langsamer, rekursiver Sortieralgorithmus, der nach dem Prinzip Vervielfache und kapituliere (engl. Multiply and surrender, eine Parodie auf Teile und herrsche) arbeitet.

