Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In with Facebook Sign In with Google Sign In with OpenID


We have migrated to a new platform! Please note that you will need to reset your password to log in (your credentials are still in-tact though). Please contact if you have questions.
Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.


herikherik Posts: 3Member
can someone help me?
I need a header Bios.h of C.


  • AsmGuru62AsmGuru62 Posts: 6,519Member
    /* bios.h

    Access to bios services.

    Copyright (c) 1987, 1991 by Borland International
    All Rights Reserved.

    #if !defined(__BIOS_H)
    #define __BIOS_H

    #if !defined(__DEFS_H)
    #include <_defs.h>

    /* diskinfo_t structure for _bios_disk() */

    struct diskinfo_t {
    unsigned drive, head, track, sector, nsectors;
    void far *buffer;

    /* cmd values for _bios_disk() */

    #define _DISK_RESET 0 /* controller hard reset */
    #define _DISK_STATUS 1 /* status of last operation */
    #define _DISK_READ 2 /* read sectors */
    #define _DISK_WRITE 3 /* write sectors */
    #define _DISK_VERIFY 4 /* verify sectors */
    #define _DISK_FORMAT 5 /* format track */

    /* cmd values for _bios_keybrd() */

    #define _KEYBRD_READ 0 /* read key */
    #define _NKEYBRD_READ 0x10 /* read key - enhanced */
    #define _KEYBRD_READY 1 /* check key ready */
    #define _NKEYBRD_READY 0x11 /* check key ready - enhanced */
    #define _KEYBRD_SHIFTSTATUS 2 /* get shift status */
    #define _NKEYBRD_SHIFTSTATUS 0x12 /* get shift status - enhanced */

    /* cmd values for _bios_printer() */

    #define _PRINTER_WRITE 0 /* send a byte to printer */
    #define _PRINTER_INIT 1 /* initialize printer */
    #define _PRINTER_STATUS 2 /* read printer status */

    /* cmd values for _bios_serialcom() */

    #define _COM_INIT 0 /* set communication parms to a byte */
    #define _COM_SEND 1 /* send a byte to port */
    #define _COM_RECEIVE 2 /* read character from port */
    #define _COM_STATUS 3 /* get status of port */

    /* byte values for _COM_INIT cmd of _bios_serialcom() */

    #define _COM_CHR7 0x02 /* 7 data bits */
    #define _COM_CHR8 0x03 /* 8 data bits */
    #define _COM_STOP1 0x00 /* 1 stop bit */
    #define _COM_STOP2 0x04 /* 2 stop bits */
    #define _COM_NOPARITY 0x00 /* no parity */
    #define _COM_EVENPARITY 0x18 /* even parity */
    #define _COM_ODDPARITY 0x08 /* odd parity */
    #define _COM_110 0x00 /* 110 baud */
    #define _COM_150 0x20 /* 150 baud */
    #define _COM_300 0x40 /* 300 baud */
    #define _COM_600 0x60 /* 600 baud */
    #define _COM_1200 0x80 /* 1200 baud */
    #define _COM_2400 0xa0 /* 2400 baud */
    #define _COM_4800 0xc0 /* 4800 baud */
    #define _COM_9600 0xe0 /* 9600 baud */

    /* cmd values for _bios_timeofday() */

    #define _TIME_GETCLOCK 0 /* get clock count */
    #define _TIME_SETCLOCK 1 /* set clock count */

    /* register structure definitions for int86(), int86x() */

    #ifndef _REG_DEFS
    #define _REG_DEFS

    struct WORDREGS {
    unsigned int ax, bx, cx, dx, si, di, cflag, flags;

    struct BYTEREGS {
    unsigned char al, ah, bl, bh, cl, ch, dl, dh;

    union REGS {
    struct WORDREGS x;
    struct BYTEREGS h;

    struct SREGS {
    unsigned int es;
    unsigned int cs;
    unsigned int ss;
    unsigned int ds;

    struct REGPACK {
    unsigned r_ax, r_bx, r_cx, r_dx;
    unsigned r_bp, r_si, r_di, r_ds, r_es, r_flags;

    #endif /* _REG_DEFS */

    #ifdef __cplusplus
    extern "C" {

    /* New MSC-compatible BIOS functions.
    unsigned _Cdecl _bios_equiplist(void);
    unsigned _Cdecl _bios_disk(unsigned __cmd, struct diskinfo_t *__dinfo);
    unsigned _Cdecl _bios_keybrd(unsigned __cmd);
    unsigned _Cdecl _bios_memsize(void);
    unsigned _Cdecl _bios_printer(unsigned __cmd, unsigned __port, unsigned __abyte);
    unsigned _Cdecl _bios_serialcom(unsigned __cmd, unsigned __port, unsigned __abyte);
    unsigned _Cdecl _bios_timeofday(unsigned __cmd, long *__timeval);

    /* Old-style BIOS functions.
    int _Cdecl bioscom(int __cmd, char __abyte, int __port);
    int _Cdecl biosdisk(int __cmd, int __drive, int __head, int __track,
    int __sector, int __nsects, void *__buffer);
    int _Cdecl biosequip(void);
    int _Cdecl bioskey(int __cmd);
    int _Cdecl biosmemory(void);
    int _Cdecl biosprint(int __cmd, int __abyte, int __port);
    long _Cdecl biostime(int __cmd, long __newtime);

    /* Miscellaneous prototypes for MSC compatibility
    int _Cdecl int86(int __intno, union REGS *__inregs, union REGS *__outregs);
    int _Cdecl int86x(int __intno, union REGS *__inregs,
    union REGS *__outregs, struct SREGS *__segregs);
    #ifdef __cplusplus

    #endif /* __BIOS_H */
  • herikherik Posts: 3Member
    thank you!!!
  • herikherik Posts: 3Member
    thank you!!!
Sign In or Register to comment.