ASM-Vollbild "Emulator"

  • Hallo,
    angesichts dessen, dass bei neueren Betriebesystemen als Windows XP nichteinmal mehr der 320x200 8 bit Grafikmodus geht, hab ich jetzt mit Autoit einen Vollbild-Original-Ausflösung 32 bit Grafikmodus für Assembelr erstellt. Mein Skript erzeugt eine Hintergrund-GUI und das Assembler-Programm malt drauf, wenn das Fenster im Vordergrund ist. Trotz Sleep(50) in der Schleife des Assemblerprogramms, verbraucht es ziemlich viel Prozessorleistung (bei mir ca. 5%).
    Wenn ihr selber Assembler könnt werdet ihr sehen, die letzten 3 Zeilen des vorgegebenen Assemblerprogramms (im Edit) auch durch rep stosd ersetzbar sind, aber man kann es so direkt abändern.
    Wenn ihr ein '#' vor eine Zeile macht, wird diese vor die Endlosschleife gesetzt. Alle Register außer eax bleiben in der Schleife unberührt. Das im Edit eingegebene "Programm" ist die "innerloop" der Endlosschleifen und sollte deswegen auch keine Endlosschleife selber sein!
    Der fertige Assembkercode ist während und nach dem Ausführen (F5) in der .asm-Datei sichtbar. Der Assemblercode wurde mit FASM assembliert.

    Das vorgegebene Beispiel zeigt ein Blau, welches langsam zu einer Grün(-ähnlichen) Farbe wird.

    An alle die sich freuen endlich mit Assembler auf den Vollbirdschirm direkt im Arbeitesspeicher zugreifen zu können: Viel Spaß! (und den anderen natürlich auch viel Spaß!)

    Ich hoffe es gefällt euch. Ich bitte auch um Rückmeldungen, danke! :)


    EDIT:
    Mein alt bekanntes Muster :D

    Spoiler anzeigen

    und hier noch das gleiche, mit dem Ändern des Floats, also dieses "rauszoomende Bild". ist wegen dem Sleep(50) in der Endlosschleife sehr langsam aktualisiert, aber das könnt ihr ja ändern (in $second ist ein "invoke Sleep,50").

    Spoiler anzeigen
  • Alamiert mein Antivirusprogramm, setzt meinen Mauszeiger daerhaft auf Sanduhr.

    Aber sonst echt nützlich!

    MfG, campweb

  • Antivirensystem kommt bei mir nichts , aber der Mauszeiger ist auch so, mit GUIGetMsg wird das auch nicht besser, ich weiß nicht woran das liegt.
    Aber ich hab oben noch das Assemblerprogramm für das Edit für mein Altbekanntes Muster hinzugefügt :D