Borland Graphics Interface

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Created page with "{{FormatInfo |formattype=electronic |subcat=Executables |extensions={{ext|bgi}} }} The '''Borland Graphics Interface''' is a graphics library used by DOS programs, which inclu...")
 
(Category:Graphic)
 
(4 intermediate revisions by one user not shown)
Line 3: Line 3:
 
|subcat=Executables
 
|subcat=Executables
 
|extensions={{ext|bgi}}
 
|extensions={{ext|bgi}}
 +
|released=1987
 
}}
 
}}
 
The '''Borland Graphics Interface''' is a graphics library used by DOS programs, which includes the ability to use loadable drivers. These drivers have the file extension .BGI.
 
The '''Borland Graphics Interface''' is a graphics library used by DOS programs, which includes the ability to use loadable drivers. These drivers have the file extension .BGI.
  
 
== Identification ==
 
== Identification ==
Files begin with <code>'P' 'K' 0x08 0x08 </code> -- this is shared with the [[CHR_(Borland_font)|CHR]] font files used by BGI. The four-byte signature is followed by either <code>'BGI Device Driver'</code> or <code>'SVGA 256 Colour BGI Device Driver'</code>.
+
Most BGI files begin with a 4-byte signature: <code>"pk" 0x08 0x08</code>. Note the similarity to [[CHR (Borland font)|CHR]] font files used by BGI.
 +
 
 +
Newer versions have an 8-byte signature: <code>"FBGD" 0x08 0x08 0x08 0x08</code>.
 +
 
 +
Following the signature is some text that names the driver, and gives copyright information. It usually begins with "<code>BGI Device Driver</code>" or "<code>SVGA 256 Colour BGI Device Driver</code>".
 +
 
 +
The header format was no doubt deliberately designed to be friendly to file viewers similar to the MS-DOS <code>type</code> command. The <code>0x08</code> bytes could be interpreted as backspace characters, which will hide the signature.
  
 
== Main Entry ==
 
== Main Entry ==
 
The first 160 bytes of the driver file are a header. This is followed by the driver code segment. Far calls will be made to this address with SI containing the function number to execute.
 
The first 160 bytes of the driver file are a header. This is followed by the driver code segment. Far calls will be made to this address with SI containing the function number to execute.
  
== Bitmap images ==
+
== Related formats ==
BGI contains <code>getimage()</code> and <code>putimage()</code> functions to save and load images. The images thus saved have a 4-byte header (two little-endian words giving the image's width and height) followed by the image data, in a form specific to the driver used. A 16-colour VGA image will contain four monochrome bitmaps for the four planes. These images, with a .ICN extension, are used as icons by [[RIPscrip_Icon|RIPscrip 1.x]] and Counterpoint.
+
* [[BGI image]]
 +
* [[CHR (Borland font)]]
  
 
== Specifications ==
 
== Specifications ==
 
* ftp://ftp.musoftware.de/pub/uz/bgi/ contains documentation and source code for creating BGI drivers, along with several complete drivers.
 
* ftp://ftp.musoftware.de/pub/uz/bgi/ contains documentation and source code for creating BGI drivers, along with several complete drivers.
 +
* [http://www.verycomputer.com/275_61cd8929559cb5f2_1.htm A message about the driver format]
 +
 +
== Sample files ==
 +
The standard BGI drivers supplied by Borland were distributed with many software packages. There are at least a few different versions of the drivers. The following filenames are known: ATT.BGI, CGA.BGI, EGAVGA.BGI, HERC.BGI, IBM8514.BGI, PC3270.BGI, VGA256.BGI.
 +
 +
* Examples of software containing the Borland drivers: [http://cd.textfiles.com/hamradio/tech/switchin/], [http://cd.textfiles.com/instantdoom/EDITORS/RMB/], [http://cd.textfiles.com/hamradio/tech/pll/], [http://cd.textfiles.com/polishprograms/EDUKACJA/DYFUZJA/]
 +
* Examples of third-party drivers: [http://cd.textfiles.com/doomap2/EDITORS/DEU521/VESA.BGI VESA.BGI], [http://cd.textfiles.com/thegreatunsorted/programming/misc_programming/svga16.bgi svga16.bgi], [http://cd.textfiles.com/thegreatunsorted/programming/misc_programming/svga256.bgi svga256.bgi]
 +
* [http://cd.textfiles.com/thegreatunsorted/programming/misc_programming/egavga.bgi egavga.bgi] - A v3 driver with the "FBGD" signature
  
 
== Links ==
 
== Links ==
 
* [[Wikipedia:Borland Graphics Interface]]
 
* [[Wikipedia:Borland Graphics Interface]]
  
 +
[[Category:Graphics]]
 
[[Category:Borland]]
 
[[Category:Borland]]

Latest revision as of 16:06, 10 May 2024

File Format
Name Borland Graphics Interface
Ontology
Extension(s) .bgi
Released 1987

The Borland Graphics Interface is a graphics library used by DOS programs, which includes the ability to use loadable drivers. These drivers have the file extension .BGI.

Contents

[edit] Identification

Most BGI files begin with a 4-byte signature: "pk" 0x08 0x08. Note the similarity to CHR font files used by BGI.

Newer versions have an 8-byte signature: "FBGD" 0x08 0x08 0x08 0x08.

Following the signature is some text that names the driver, and gives copyright information. It usually begins with "BGI Device Driver" or "SVGA 256 Colour BGI Device Driver".

The header format was no doubt deliberately designed to be friendly to file viewers similar to the MS-DOS type command. The 0x08 bytes could be interpreted as backspace characters, which will hide the signature.

[edit] Main Entry

The first 160 bytes of the driver file are a header. This is followed by the driver code segment. Far calls will be made to this address with SI containing the function number to execute.

[edit] Related formats

[edit] Specifications

[edit] Sample files

The standard BGI drivers supplied by Borland were distributed with many software packages. There are at least a few different versions of the drivers. The following filenames are known: ATT.BGI, CGA.BGI, EGAVGA.BGI, HERC.BGI, IBM8514.BGI, PC3270.BGI, VGA256.BGI.

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox