Hello,

  I just have to correct myself, my problem with
 printing chars > 128 was absolutely not related
 to fonts - I had a "mov sign extended" instead of
 a "mov zero extended", or more precisely a line like:
 asm ("int $0x10" : : "a" (0x0900 | thechar));
 when "thechar" is a signed char, it is promoted to
 an int before the OR and everything happenning after
 is my fault.

  Thanks for pointing me that the BIOS was working,
 and sorry for the last message.

  Etienne.

P.S.:
 Just a little on-topic thing: to detect the number of
 hard drives on a PC, I am using the BIOS data
 at 0x0040:0x0075

MEM 0040h:0075h - FIXED DISK - NUMBER OF FIXED DISK DRIVES
Size:   BYTE
SeeAlso: MEM 0040h:0076h"FIXED DISK",MEM 0040h:0077h"FIXED DISK"

  Because:
INT 13 - DISK - GET DISK TYPE (XT 1/10/86 or later,XT286,AT,PS)
BUGS:   several different Compaq BIOSes incorrectly report high-numbered
  drives (such as 90h, B0h, D0h, and F0h) as present, giving them the
  same geometry as drive 80h; as a workaround, scan through disk
  numbers, stopping as soon as the number of valid drives encountered
  equals the value in 0040h:0075h

  It would be nice to have this value filled in for DOSEMU - just
 to remove warnings to stderr when running DOSEMU, because I have
 then to ask for "get disk type" on maybe abscent drives, to see
 if someone is there.
INT 13 - DISK - GET DRIVE PARAMETERS (PC,XT286,CONV,PS,ESDI,SCSI)
 returns "DL = number of drives" but this seems to be not
 reliable.

___________________________________________________________
Do You Yahoo!?
Achetez, vendez! � votre prix! Sur http://encheres.yahoo.fr

Reply via email to