Commit eccabc6ee0da82a3cb6037537c145fae08c23041
1 parent
bb058620
vga 9 pixel wide text char fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@713 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
2 changed files
with
10 additions
and
10 deletions
hw/vga.c
... | ... | @@ -1138,7 +1138,7 @@ static void vga_draw_text(VGAState *s, int full_update) |
1138 | 1138 | /* total width & height */ |
1139 | 1139 | cheight = (s->cr[9] & 0x1f) + 1; |
1140 | 1140 | cw = 8; |
1141 | - if (s->sr[1] & 0x01) | |
1141 | + if (!(s->sr[1] & 0x01)) | |
1142 | 1142 | cw = 9; |
1143 | 1143 | if (s->sr[1] & 0x08) |
1144 | 1144 | cw = 16; /* NOTE: no 18 pixel wide */ |
... | ... | @@ -1154,7 +1154,7 @@ static void vga_draw_text(VGAState *s, int full_update) |
1154 | 1154 | height = (height + 1) / cheight; |
1155 | 1155 | } |
1156 | 1156 | if (width != s->last_width || height != s->last_height || |
1157 | - cw != s->last_cw || cw != s->last_cw) { | |
1157 | + cw != s->last_cw || cheight != s->last_ch) { | |
1158 | 1158 | dpy_resize(s->ds, width * cw, height * cheight); |
1159 | 1159 | s->last_width = width; |
1160 | 1160 | s->last_height = height; | ... | ... |
hw/vga_template.h
... | ... | @@ -127,14 +127,14 @@ static void glue(vga_draw_glyph9_, DEPTH)(uint8_t *d, int linesize, |
127 | 127 | else |
128 | 128 | ((uint16_t *)d)[8] = bgcol; |
129 | 129 | #else |
130 | - ((uint32_t *)d)[0] = ((-(font_data >> 7)) & xorcol) ^ bgcol; | |
131 | - ((uint32_t *)d)[1] = ((-(font_data >> 6) & 1) & xorcol) ^ bgcol; | |
132 | - ((uint32_t *)d)[2] = ((-(font_data >> 5) & 1) & xorcol) ^ bgcol; | |
133 | - ((uint32_t *)d)[3] = ((-(font_data >> 4) & 1) & xorcol) ^ bgcol; | |
134 | - ((uint32_t *)d)[4] = ((-(font_data >> 3) & 1) & xorcol) ^ bgcol; | |
135 | - ((uint32_t *)d)[5] = ((-(font_data >> 2) & 1) & xorcol) ^ bgcol; | |
136 | - ((uint32_t *)d)[6] = ((-(font_data >> 1) & 1) & xorcol) ^ bgcol; | |
137 | - v = ((-(font_data >> 0) & 1) & xorcol) ^ bgcol; | |
130 | + ((uint32_t *)d)[0] = (-((font_data >> 7)) & xorcol) ^ bgcol; | |
131 | + ((uint32_t *)d)[1] = (-((font_data >> 6) & 1) & xorcol) ^ bgcol; | |
132 | + ((uint32_t *)d)[2] = (-((font_data >> 5) & 1) & xorcol) ^ bgcol; | |
133 | + ((uint32_t *)d)[3] = (-((font_data >> 4) & 1) & xorcol) ^ bgcol; | |
134 | + ((uint32_t *)d)[4] = (-((font_data >> 3) & 1) & xorcol) ^ bgcol; | |
135 | + ((uint32_t *)d)[5] = (-((font_data >> 2) & 1) & xorcol) ^ bgcol; | |
136 | + ((uint32_t *)d)[6] = (-((font_data >> 1) & 1) & xorcol) ^ bgcol; | |
137 | + v = (-((font_data >> 0) & 1) & xorcol) ^ bgcol; | |
138 | 138 | ((uint32_t *)d)[7] = v; |
139 | 139 | if (dup9) |
140 | 140 | ((uint32_t *)d)[8] = v; | ... | ... |