Ändern Sie die Hintergrundfarbe der dosbox-Konsole beim ausführen einer tasm-Programm

Ich versuche, display x in die Mitte des Bildschirms, und ändern Sie dann die Hintergrundfarbe der Konsole zu blau. Ich habe den folgenden code, führt alles außer zum ändern der Hintergrundfarbe:

    TITLE screen1.ASM
.MODEL SMALL

.STACK 0100h
.DATA

.CODE
start:
MOV AX,@DATA
MOV DS,AX


MOV AX,0600h
MOV BH,07h
MOV CX,0000h
MOV DX,184Fh
INT 10h

MOV AH,02h
MOV BH,00h
MOV DH,0Ch
MOV DL,28h
INT 10h

MOV AH,02h
MOV DL,'x'
INT 21h

MOV AX,4C00h
INT 21h
END start

Den code löscht den Bildschirm, zeigt x im Zentrum der dosbox-Fenster und gibt die Kontrolle zurück zu DOS. Ich bin versucht, herauszufinden, was ich ändern würde müssen, aktualisieren Sie einfach die Hintergrundfarbe des Fensters (nicht der text) auf blau.

  • Vielleicht meintest du MOV BH,17h statt MOV BH,07h. Oberen 4 bits die Hintergrundfarbe (1=blau), die unteren 4 bits Vordergrund(die Figur) Farbe. (7=weiß)
  • video mode ist nicht ausgewählt.Egal, was Farbe ist in bh wäre es nicht angezeigt, bis ein video-Modus ausgewählt ist.
  • Ich mache die Annahme, dass DOSBOX ist bereits im text-Modus. Es sei denn, es wurde absichtlich platziert, in den Grafik-Modus, dann gibt es ein problem. Aber der OP hat nicht gesagt, er ist im Grafik-Modus. Sie müssen nur ändern, um text-Modus, wenn Sie nicht schon im text-Modus. Mein Kommentar steht immer noch. in Bezug auf die zu nibbles für Vordergrund-und hintergrund-Farbe
  • Ich habe nicht gesagt, dass der Kommentar falsch ist.
  • Aber warum verwendet der int 10h wenn es text-Modus.
  • Da int 10h ist vollkommen gültig im text-Modus. Obgleich es langsam mit dem BIOS (im Vergleich mit der Aktualisierung der video-display direkt), es ist immer noch vollkommen akzeptabel.
  • Danke .;p
  • Ich war betrachten Sie den code in eine ganz andere Weise. Vielen Dank, dass Sie mich korrigieren.

InformationsquelleAutor SoulRider | 2016-03-25
Schreibe einen Kommentar