Re: Jiri, where are you?
- Posted by Rolf Schroeder <rolf.schroeder at DESY.DE> Feb 06, 2001
- 389 views
--------------B535FF017E31B894242FA5D1 jiri babor wrote: > ... > Permanent vacation? What do you mean ... dead?! Wishful thinking... > No, I thought only that you may have decided in some kind of wisdom to leave the world north of the -35th latitude alone. But I'm glad to hear you were just exploring the world south of the -41st latitude and are still with us. Now to 'business', although this point might be a more academic one. You wrote: > But back to business, Rolf. rfont treats just two characters out of > 256 differently from rest. One is zero, which is used conventionally > to reset font attributes, and the other is char 10, the newline > character. When that is encountered, linefeed and carriage return > combination is performed. Its details depend on the current line > justification. I am afraid there is currently no way to print this > character directly. But if you are desperate to do so, let me know > and I'll try to modify the include for you. > If I'm using graphics mode 3, then I'm able to poke directly 10 into video memory, and all characters (0 to 255) will be displayed. It means, somewhere in the ROM there is this character No. 10 (I append a little program 'ASCII.EX' which displays all chars in mode 3). I'm not enough hardware expert to see why this char could not be used to display it in 'real' graphics mode like 'rfont' works with. As far as I understood, 'rfont' reads the graphics (pixel-) pattern directly from the video ROM, so why this doesn't work with 10? I will not complain to much about MTS, but if he is as smart as he claims, he (MTS) should be able to write a little AI program to exclude/translate his posts into normal informative language before sending them. Jiri, thanks so far for your reply, and have a nice day, Rolf --------------B535FF017E31B894242FA5D1 name="Ascii.ex" Content-Disposition: inline; filename="Ascii.ex" -- Rolf Schr”der 2001-01-14 --> ASCII.EX All IBM-437 characters from VGA font M””rkenweg 37 -- ßßßßßßßß by writing directly into video memory 21029 Hamburg, Germany -- starting from address #B8000 -- -- Language: EUPHORIA ver. 2.2 r.schr at t-online.de procedure all_backcolor(integer color) -- Set all chars to back color -- ßßßßßßßßßßßßß for i = 1 to 80*50 do poke(BASE + 2*i-1, color) end for end procedure procedure set_char(integer line, integer column, integer char) -- ßßßßßßßß Write char at position (line,column), starting at (1,1). integer N N = (line-1)*80 + column -1 poke(BASE + 2*N , char) end procedure procedure main() -- ßßßß integer k if graphics_mode(3) then -- VGA, 25x80x16 text mode puts(1, "need VGA graphics!\n") abort(1) end if k = text_rows(50) -- switch to 50 lines if k != 50 then puts(1,"coudn't set 50 rows!\n") abort(1) end if position(1,25) puts(1,"Extendet ASCII (IBM 437)") position(3,29) puts(1,"(8x8 pixel font)") position(6,4) puts(1,"DEC ") for i = 0 to 15 do printf(1,"%2d ",i) -- horizontal dec. numbers end for position(8,8) puts(1,"HEX ") for i = 0 to 15 do printf(1,"%2x ",i) -- horizontal hex. numbers end for for i = 0 to 15 do position(12+2*i,4) printf(1,"%3d %02x",{16,16}*i) -- vertical dec. and hex. numbers end for all_backcolor(ICOLOR) -- Set back color for all positions! for i = 4 to 60 do set_char(10,i,'Ä') -- write horizontal line end for for i = 6 to 42 do set_char(i,12,'³') -- write vertical line end for set_char(10,12,'Å') -- set 'cross' for i = 0 to 15 do -- write all 256 characters k = i*16 for j = 0 to 15 do set_char(12 + 2*i, 15 + 3*j, k+j) end for end for k = wait_key() k = graphics_mode(-1) -- restore former graphics mode end procedure main() -- ßßßß --------------B535FF017E31B894242FA5D1--