wwww
Revision | e3ac78ae7ba30101e388236f6312a04c79a94c35 (tree) |
---|---|
Time | 2016-04-21 23:02:09 |
Author | Jonathan Campbell <jonathan@cast...> |
Commiter | Jonathan Campbell |
modex draw char use rom font height, do not assume 8.
@@ -443,6 +443,7 @@ void modexDrawChar(page_t *page, int x/*for planar selection only*/, word t, wor | ||
443 | 443 | * so, we enumerate over columns (not rows!) to draw every 4th pixel. bit masks are used because of the font bitmap. |
444 | 444 | * |
445 | 445 | * NTS: addr defines what VGA memory address we use, "x" is redundant except to specify which of the 4 pixels we select in the map mask register. */ |
446 | + word rows = romFonts[t].charSize; | |
446 | 447 | word drawaddr; |
447 | 448 | word colm, row; |
448 | 449 | byte fontbyte; |
@@ -455,7 +456,7 @@ void modexDrawChar(page_t *page, int x/*for planar selection only*/, word t, wor | ||
455 | 456 | for (colm=0;colm < 4;colm++) { |
456 | 457 | drawaddr = addr; |
457 | 458 | modexSelectPlane(PLANE(plane)); |
458 | - for (row=0;row < 8;row++) { | |
459 | + for (row=0;row < rows;row++) { | |
459 | 460 | fontbyte = romFontsData.l[row]; |
460 | 461 | vga_state.vga_graphics_ram[drawaddr ] = (fontbyte & m1) ? col : bgcol; |
461 | 462 | vga_state.vga_graphics_ram[drawaddr+1] = (fontbyte & m2) ? col : bgcol; |