From 703e412eb2cda791e82f1ff455a9a6f4a222d556 Mon Sep 17 00:00:00 2001 From: Rob McMullen Date: Mon, 23 Jul 2018 12:46:23 -0700 Subject: [PATCH] Added comments about writing to 2nd hi-res page --- transposed_font_description.svg | 141 +++++++++++++++++++------------- 1 file changed, 83 insertions(+), 58 deletions(-) diff --git a/transposed_font_description.svg b/transposed_font_description.svg index 16a12a8..16d7d53 100644 --- a/transposed_font_description.svg +++ b/transposed_font_description.svg @@ -161,8 +161,8 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="0.98994949" - inkscape:cx="50.926867" - inkscape:cy="321.12165" + inkscape:cx="49.916715" + inkscape:cy="273.60314" inkscape:document-units="mm" inkscape:current-layer="layer1" showgrid="false" @@ -229,7 +229,7 @@ style="font-size:5.64444447px;stroke-width:0.26458332">Normal font rendering: glyphs stored sequentially * can write to either hi-res page * indexed addressing to read glyph, initialaddress set through self-modifying code* indexed addressing to read glyph, font data address set throughself-modifying code (boilerplate code not shown here)* indirect indexed addressing to write to* indirect indexed addressing to write to screen; must increment by $400screen; must increment by $400 each lineeach line* works with any font in memory + id="tspan3943">* works with any font in memory* can write to either hi-res page * indexed addressing for each line of glyph* indexed addressing to store on screen* the big win: no pointer addition or index incrementing necessaryto write all rows in glyphto write entire glyph* requires tool to generate code and transpose font* requires tool to generate code and transpose font: e.g. 128 glyph font: 8 rows of 128 bytes each. First row of 128 bytes contains topmost\byte of each glyph, 2nd row contains row below that, etc. * each font requires new jump table and row definition* can write to only one hi-res page; must have separate block to writeto second hi-res page. comparison: