Freeware Assembler und Videoram
-
Wieso kann man bei vielen Freeware Assemblern, die man im Netz herunterladen kann, nicht auf das Videoram zugreifen? (B800:0000)
Ich habe es mit dem Wolfware Assembler versucht und auch mit dem A86 und dem Asm 2.11. Aber keiner kann Bytes direkt in den Videobereich ab B8000 scheiben. :p
Woran liegt das?
Gibt es Schutzvorrichtungen, die das Schreiben in das Videoram verhindern?
-
Die Details drum herum wären evtl. wichtig. Wie versuchst du auf den VRAM zuzugreifen? Was passiert (Assemblerwarnung/-fehler, Absturz oder einfach nichts?)? Welche Umgebung (DOS, Windows, Linux, Bootsector)?
-
Moderne Betriebssysteme laufen im Protected-Mode. Da kannst du egal mit welchem Assembler, selbst wenn du dir die Byte-Codes per Hand zusammen bastelst nichts ins VRAM schreiben. Den VRAM direkt zu manipulieren ist Geschichte aus DOS-Zeiten.
-
@ bluecode
Ich bekomme keine Fehlermeldung; nur einen schwarzen Bildschirm ohne Inhalt.
Und ich schreibe mit mov [BX:DI],al direkt ins Videoram.
-
Ahja...?
Von dem Assembler, der sowas durchgehen laesst, wuerde ich aber die Finger lassen.
Kleiner Tipp: BX ist kein Segmentregister.
-
Oh, es war BX+SI
Und ES:SI akzeptiert er nicht.
-
Sach mal NobuoT, wann hast du denn das letzte mal mit 16bit asm gespielt? [BX+SI] ist eine legitime Adressierung (siehe Intel Manual #2 Tabelle 2-1 Mod R/M Byte).
@Eric Falbe: Zeig mal den genauen Code und sag auch mal wie du es testest. Am besten wäre da nämlich unter DOS oder gleich als bootsector, da dich da kein OS behindern kann...
-
@bluecode: *seufz* Liest/verstehst du in einem thread fuer gewoehnlich auch mal mehr als die letzten <=2 Beitraege in der richtigen zeitlichen Reihenfolge?
-
sorz, ich hab ein + anstatt des : gelesen
Ich werd nie mehr an deiner Kompetenz zweifeln :pedit2: mach ich das so oft?
-
Ich werd nie mehr an deiner Kompetenz zweifeln :p
Sehr gut. Noch jemanden von meiner Allkompetenz ueberzeugt.
edit2: mach ich das so oft?
Keine Ahnung, habs nicht gezaehlt. Bist nur gerade willkommenes Opfer meines Unmutes geworden, Sry.