Page 2 of 3

Re: TUI

Posted: Sat Jan 03, 2009 12:56 am
by 01000101
I'm not 100% about 80x60, but I know for a fact (as I use it) that 80x50 exists. That's just standard 80x25 mode (3?) with 8x8 font.

Re: TUI

Posted: Sat Jan 03, 2009 3:21 am
by Stevo14
Troy Martin wrote:Is there an 80x60? Cause having a 640x480 text mode for TBOS would be real nice!
I imagine 80x60 is possible (as are many other resolutions) if you are prepared to directly program the VGA registers. I use 80x50 in my OS which, because I use an 8 pixel dot clock, works out to 640x400 VGA resolution. With a 9 pixel dot clock it would be 720x400 but in that mode the letters are too far apart (and too square) IMO so I use the smaller dot clock and a custom font to increase the readability a little bit.

Re: TUI

Posted: Sat Jan 03, 2009 11:56 am
by Troy Martin
I use 80x50 as a default mode, using the BIOS interrupt 10h ah=1112h. It's real nice, but I think having 640x480 text mode could be kind of nifty.

Should I just go into graphics mode and start working on finishing my own 8x8 font?

Re: TUI

Posted: Sun Jan 04, 2009 2:25 pm
by jal
Troy Martin wrote:Is there an 80x60? Cause having a 640x480 text mode for TBOS would be real nice!
You could have an 80-wide mode in both 640 and 720, the latter with 9-pixel wide characters, the former with 8-pixel wide characters. You could have an 81, 82 ... 89 character width as well of course, it's all about tweaking stuff.


JAL

Re: TUI

Posted: Sun Jan 04, 2009 5:38 pm
by VolTeK
what do you use to tweak or make your own characters?

Re: TUI

Posted: Mon Jan 05, 2009 6:55 am
by jal
GhostXoPCorp wrote:what do you use to tweak or make your own characters?
For text mode you mean? I usually draw them by hand, and then convert them into a bitmap with a quick tool or something. Or directly hack them into code, as was possible with Pascal in the early days (never understood why C doesn't have a binary number format, it's so usuable...).


JAL

Re: TUI

Posted: Mon Jan 05, 2009 8:32 am
by os64dev
If you want a large text screen you could do it by manipulating the VGA registers, the trick is to keep the horizontal freqeuncy and vertical frequency in de default monitor ranges and adjusting the font height. I need to check my sources but it is possible to get a 80x80 resolution with standard VGA.

Re: TUI

Posted: Mon Jan 05, 2009 8:45 am
by jal
os64dev wrote:If you want a large text screen you could do it by manipulating the VGA registers, the trick is to keep the horizontal freqeuncy and vertical frequency in de default monitor ranges and adjusting the font height. I need to check my sources but it is possible to get a 80x80 resolution with standard VGA.
80 high for standard VGA would be a 640 pixel vertical resolution, which afaik is not possible. However, I do not know by heart what the limit for the VGA registers is, so perhaps it is theoretically possible (although I have never heard claims of tweaking over a 800x600 resolution).

EDIT: Not to mention the very vertically compressed image of the characters.


JAL

Re: TUI

Posted: Mon Jan 05, 2009 9:12 am
by Combuster
how about an 4-pixel tall character set?

Or one-pixel tall characters :twisted:

Re: TUI

Posted: Mon Jan 05, 2009 9:41 am
by Troy Martin
Combuster wrote:Or one-pixel tall characters :twisted:
Combuster: Two words: graphics mode!

Re: TUI

Posted: Mon Jan 05, 2009 10:02 am
by Combuster
You don't even need graphics mode for 1x8 characters :wink:

Re: TUI

Posted: Mon Jan 05, 2009 11:15 am
by Owen
I can actually see a purpose for a 640x480 text mode: My HDTV has a damn irritating lack of support for 640x400!

Re: TUI

Posted: Tue Jan 06, 2009 2:31 am
by os64dev
jal wrote:
os64dev wrote:If you want a large text screen you could do it by manipulating the VGA registers, the trick is to keep the horizontal freqeuncy and vertical frequency in de default monitor ranges and adjusting the font height. I need to check my sources but it is possible to get a 80x80 resolution with standard VGA.
80 high for standard VGA would be a 640 pixel vertical resolution, which afaik is not possible. However, I do not know by heart what the limit for the VGA registers is, so perhaps it is theoretically possible (although I have never heard claims of tweaking over a 800x600 resolution).

EDIT: Not to mention the very vertically compressed image of the characters.


JAL
640x480 with an 6 pixels height font yields 80x80. I think i managed a 7 pixel high font by putting the VGA registers in 720x480 en still using 8 pixel wide chars. But not sure if i managed a 80x80 with that but it came close. Give me a day ar so to retrieve the sources.

Re: TUI

Posted: Tue Jan 06, 2009 3:06 am
by jal
os64dev wrote:640x480 with an 6 pixels height font yields 80x80. I think i managed a 7 pixel high font by putting the VGA registers in 720x480 en still using 8 pixel wide chars. But not sure if i managed a 80x80 with that but it came close. Give me a day ar so to retrieve the sources.
Ah, of course, I didn't think of shrinking the vertical character resolution itself. Although having less than 8 pixels makes reading more difficult, and 8 pixels wide is still all you get. So it's not that useful, as you're getting really odd characters (squeezed vertically).


JAL

Re: TUI

Posted: Sat Jan 17, 2009 5:39 pm
by paxcoder
JackScott wrote:
Troy Martin wrote:Better for users used to GUI's
About half the time a cursor appears and does what I want, half the time it doesn't. A CLI doesn't have that problem. It's pretty much completely different to a GUI.
Back in the days of proprietary, I remember MS Qbasic doing exactly what a GUI would, it was great. So it depends on the implementation. ASCII UI is tons much easier for a Windows user. And perhaps universally faster to get around. If you decide you'll make that, just make sure you make sort of textual widgets and inheritable objects - basically a framework - that can be used in an easy way when writing code, so that you don't waste your time making TUI's for your progs instead of progs yourself.
I know this might sound awful, but learn from Microsoft. It's the king in the field (Txt UI's), and it practically defined the standards (how things should look, what chars are used for what objects etc).