Page 1 of 3
write to LCD displayer
Posted: Mon Jan 12, 2004 9:11 pm
by asmboozer
int 10h seems work only for VGA, EGA not for LCD? right?
any1 know how to display bootstart info on the LCD?
i tried int 10h, but failed, thanks u for any hints in advance
Re:write to LCD displayer
Posted: Tue Jan 13, 2004 2:03 am
by df
it makes no difference. it all just works. its the vga card that talks to the monitor, not the program. your vga functions will work just fine on lcd, tv, monitor or projector.
Re:write to LCD displayer
Posted: Tue Jan 13, 2004 4:20 am
by Pype.Clicker
note however that the LCD may like only certain resolution and refuse to work with other ones ... make sure you know the supported resolutions of your display device and set up an appropriate one.
btw, you're not talkin' about a two-rows 16-chars-per-row lcd device like the one used in embedded systems, are you ?
Re:write to LCD displayer
Posted: Tue Jan 13, 2004 12:19 pm
by ASHLEY4
btw, you're not talkin' about a two-rows 16-chars-per-row lcd device like the one used in embedded systems, are you ?
If you are uses your LPT1 port to write to it you can get some example code here.
http://www.bnro.de/~zeller/[email][/email]
Re:write to LCD displayer
Posted: Mon Feb 09, 2004 12:37 am
by asmboozer
i use the "acer" 502a LCD displayer, it doesnt work when i use it to bootload, but if i use the bochs to simulate the bootload, the text is showed by the boch simulator.
Re:write to LCD displayer
Posted: Mon Feb 09, 2004 3:49 am
by Pype.Clicker
it's common for laptops not to start in text mode ... they look like having much faster and simplified bootsequences too ...
if you're having similar problem with other OSes (e.g. Ms-DOS or Clicker ;D) it's probably your hardware that has something weird. Otherwise, maybe you're missing a proper INT 0x10 call to setup text mode ...
Re:write to LCD displayer
Posted: Mon Feb 09, 2004 8:31 pm
by asmboozer
Otherwise, maybe you're missing a proper INT 0x10 call to setup text mode ...
but why boch can display it? and what 's the proper INT 0x10 call to setup text mode regarding to LCD?
Re:write to LCD displayer
Posted: Tue Feb 10, 2004 3:42 am
by Pype.Clicker
Bochs -- as most traditionnal PCs -- turns into 80x25 text mode before calling the bootsector. One of the reason for BOCHS to do so is that its BIOS has to be simple. one reason for real PC to do so is that you might wish to see the hardware detection resume and error messages like 'no OS found, please insert bootdisk', so it turns to textmode ...
Laptops prefer to show you a 'nice' splashscreen of the brand and assume you're not interrested in BIOS reports as you cannot modify the hardware, anyway
should do the trick. I suggest you refer to the Ralf Brown Interrupt List to know more about that BIOS service, but roughly it's 'ah=00 : change video mode' and 'al=03 : text mode, 80x25'
There are also very cheap books about assembly programming under MS-DOS that are available and cover that kind of things. They are must-read when someone starts OS dev'ing and come at a very low expense (somewhere around 4 b??rs
Re:write to LCD displayer
Posted: Tue Feb 10, 2004 5:44 am
by asmboozer
Pype.Clicker:
i have got helppc.com
Re:write to LCD displayer
Posted: Tue Feb 10, 2004 8:27 am
by Pype.Clicker
that's a good reference, though i consider nothing beats a good small pocket book with pencil notes in the margins and post-it for indexes
btw, did the "setup text mode" interrupt help ? i just saw you were already using INT 10, but i guess that was the 'print character' or the 'print string' service ...
Re:write to LCD displayer
Posted: Tue Feb 10, 2004 7:09 pm
by asmboozer
Pype.Clicker wrote:
that's a good reference, though i consider nothing beats a good small pocket book with pencil notes in the margins and post-it for indexes
btw, did the "setup text mode" interrupt help ? i just saw you were already using INT 10, but i guess that was the 'print character' or the 'print string' service ...
not work yet. dunt know why, the orginal code use int 10h,0dh service, after changed to 03 h service , it's the same result.
Re:write to LCD displayer
Posted: Wed Feb 11, 2004 2:10 am
by Pype.Clicker
No matter what service you use to write the strings, or if you even just put the chars in text memory (0xB8000) ... But you must first switch video mode to 80x25 with the small code i provided (which is service 0, not service 3
Can you tell me if other small OS have displayed something correct (there are some available in the "OS test" forum ...)
Re:write to LCD displayer
Posted: Wed Feb 11, 2004 2:37 am
by asmboozer
i used the win98 bootdisk, it display the correct info as well as the win2k. redhat9, have not try other oses. i will try !
Re:write to LCD displayer
Posted: Wed Feb 11, 2004 3:09 am
by asmboozer
Pype.Clicker wrote:
No matter what service you use to write the strings, or if you even just put the chars in text memory (0xB8000) ... But you must first switch video mode to 80x25 with the small code i provided (which is service 0, not service 3
Can you tell me if other small OS have displayed something correct (there are some available in the "OS test" forum ...)
i used the ah=0h, al = 0dh, which is 320*200 16 color graphics, it works under boch simulation. on real pc, should it be 80*25 video mode?
Re:write to LCD displayer
Posted: Wed Feb 11, 2004 4:18 am
by Pype.Clicker
okaaay. now i understand better ...
I suppose you have good reasons to whish to be in 320x200x256 (!) by that time, and i guess you already know that this mode has no hardware support for characters. Just pixels (hence 'graphic').
I fear your BIOS provider assumed that nobody uses BIOS to display text in graphic mode nowadays and thus they just skipped that part in their implementation to gain place for PNP, large IDE disks, USB, PCI etc. support... If this is so, you'll have to write your own character display routines ...
Or maybe you see single-coloured bars when displaying text, which would mean both foreground and background colors are identical. If so, you should try to reprogram the palette to get nice colors...