Dec 182017
Outstanding protected mode graphics library with full source based upon Micheal Ambrashs XLIB. A must have BP library.
File XLIBPAS2.ZIP from The Programmer’s Corner in
Category Pascal Source Code
Outstanding protected mode graphics library with full source based upon Micheal Ambrashs XLIB. A must have BP library.
File Name File Size Zip Size Zip Type
BLITDEMO.EXE 37759 19530 deflated
BLITDEMO.PAS 5566 1409 deflated
FONTDEMO.EXE 32747 16644 deflated
FONTDEMO.PAS 3009 1409 deflated
FONTS 0 0 stored
2_HEBREW.FNT 1348 609 deflated
30.FNT 1252 496 deflated
33Q.FNT 1156 458 deflated
36.FNT 1060 475 deflated
44.FNT 868 411 deflated
8X10.FNT 964 478 deflated
8X11SNSF.FNT 1060 446 deflated
8X14.FNT 1348 540 deflated
ALPS.FNT 1348 589 deflated
ALPS10.FNT 964 455 deflated
ALPS11.FNT 1060 569 deflated
ALPS6.FNT 580 366 deflated
ALPS7.FNT 676 395 deflated
ALPS8.FNT 772 424 deflated
ANTIQUE.FNT 1348 670 deflated
APLS9.FNT 868 448 deflated
B814.FNT 1348 504 deflated
BIGSERIF.FNT 1348 558 deflated
BLCKSNSF.FNT 964 442 deflated
BLOCK.FNT 1348 526 deflated
BOLD.FNT 1348 573 deflated
BROADWAY.FNT 1348 616 deflated
CNTDOWN.FNT 1348 507 deflated
COMPUTER.FNT 1348 532 deflated
COURIER.FNT 964 403 deflated
CRISP6X9.FNT 964 403 deflated
CYRILLIC.FNT 1348 527 deflated
DEFAULT.FNT 580 333 deflated
FIXED6X8.FNT 788 379 deflated
FRANKFRT.FNT 1348 761 deflated
FRESNO.FNT 1348 557 deflated
FUTURE.FNT 1348 480 deflated
GAELIC.FNT 1348 625 deflated
GEORGIAN.FNT 1348 589 deflated
GREEK.FNT 1348 558 deflated
HOLLOW.FNT 1348 751 deflated
HUGE.FNT 1540 575 deflated
HYLAS.FNT 1348 507 deflated
ITALIC.FNT 1348 618 deflated
ITALICS.FNT 1348 599 deflated
ITT.FNT 1348 532 deflated
LCD.FNT 1348 450 deflated
MEDIEVAL.FNT 1348 652 deflated
MODERNB.FNT 1060 521 deflated
MODERNFO.FNT 1540 504 deflated
OCR.FNT 1348 544 deflated
OLDENG.FNT 1348 778 deflated
ROMAN.FNT 1348 641 deflated
SANSERIF.FNT 1348 508 deflated
SCRIBBLE.FNT 1540 800 deflated
SCRIPT.FNT 1348 623 deflated
SCRIPT2.FNT 1348 769 deflated
SENAPL.FNT 1348 874 deflated
SIDE.FNT 964 595 deflated
SIMILITE.FNT 1348 526 deflated
SMALCAPS.FNT 1348 521 deflated
SMALTHIN.FNT 676 328 deflated
STRETCH.FNT 1348 504 deflated
SUPER.FNT 772 421 deflated
THAI.FNT 1348 554 deflated
THIN.FNT 1348 578 deflated
THIN8X8.FNT 772 401 deflated
TIMPANI.FNT 1156 522 deflated
TINY4.FNT 484 279 deflated
VAR6X8.FNT 877 408 deflated
VARSWISB.FNT 964 473 deflated
VARSWISL.FNT 964 489 deflated
_OCR.FNT 1348 540 deflated
MAKEFILE 2794 679 deflated
README.DOC 8647 2752 deflated
SHOWPAL.EXE 50507 28037 deflated
XBM2.ASM 91338 9372 deflated
XBM2.DOC 20059 5857 deflated
XBM2.INC 1727 452 deflated
XBM2.OBJ 6521 2691 deflated
XBM2.OBP 6521 2691 deflated
XBM2.PAS 12645 2213 deflated
XBM2.TPP 10240 3668 deflated
XBM2.TPU 10240 3671 deflated
XBMP2.PAS 4258 1331 deflated
XBMP2.TPP 2496 1100 deflated
XBMP2.TPU 2496 1097 deflated
XCONVERT.EXE 31057 14480 deflated
XCONVERT.PAS 8557 2132 deflated
XGIF2.PAS 17790 4228 deflated
XGIF2.TPP 8912 3549 deflated
XGIF2.TPU 8912 3547 deflated
XLA2.DOC 9982 2705 deflated
XLA2.PAS 28331 5222 deflated
XLA2.TPP 12560 4867 deflated
XLA2.TPU 12560 4865 deflated
XLARC.EXE 21087 11772 deflated
XLARC.PAS 3529 1202 deflated
XLIB2.ASM 74987 13130 deflated
XLIB2.DOC 40737 10673 deflated
XLIB2.INC 12924 2996 deflated
XLIB2.OBJ 13885 7706 deflated
XLIB2.OBP 14005 7763 deflated
XLIB2.PAS 17219 4181 deflated
XLIB2.TPP 24592 10885 deflated
XLIB2.TPU 24464 10843 deflated
XLIBDEMO.EXE 40442 20032 deflated
XLIBDEMO.PAS 18302 4643 deflated
XLIBPAS2.TXT 3737 876 deflated
XMISC2.PAS 1265 514 deflated
XMISC2.TPP 1120 586 deflated
XMISC2.TPU 1120 585 deflated
XVIEW.EXE 24336 14681 deflated

Download File XLIBPAS2.ZIP Here

Contents of the README.DOC file

XLIB v2.0 - Graphics Library for Borland/Turbo Pascal 7.0

Tristan Tarrant - [email protected]


Themie Gouthas

Matthew MacKenzie

Tore Bastiansen

Andy Tam

Douglas Webb

John Schlagel

I informally reserve all rights to the code in XLIB
Rights to contributed code is also assumed to be reserved by
the original authors.


This library is distributed AS IS. The author/s specifically disclaim any
responsibility for any loss of profit or any incidental, consequential or
other damages.


Hi Xlib users, this is v2.0 of my port of XLib to Turbo/Borland Pascal.
I would like to state a few things before you start using this package :

XLIB 2.0 is NOT complete. I would have liked to add more things before
releasing this, but the end of my 2nd year here at Sussex University is
coming to an end, and I'm in the middle of my exams. Then I will go home
to Italy, and won't have Internet access until I come back in October.

I wanted to get this finished, including rotation and the such, but, alas,
I haven't found the time. In line with these considerations I want you to
think this as a BETA.

I have ported all the useful stuff from Xlib for C v6.0, and added a few
things of my own, apart from cleaning up the code and making it more

If there is any code you have written that you think is worth including in
the next release, don't hesitate to send it to me and you will receive due

Sorry if this isn't up to your expectations but, hey, don't forget : XLIB
is a user supported library, so send me your code and let's write the
ultimate XMode game !!!

Share and enjoy.


The SplitScreen routines weren't handled by the Virtual VSync Handler,
sometime resulting in the program waiting twice for a vsync, and causing
a choppy effect when scrolling the split screen.
Now the mouse handler uses the VVSH to redraw the pointer when necessary.
Unfortunately it takes a bit too long and, if you are updating the whole
palette AND using the mouse at the same time, you'll notice that the tip
of the pointer disappears for an instant when it's at the top of the screen.
The palette-updating part of the VVSH has been sped up a bit.

I have implemented 32-bit compiled bitmaps, even though they are bigger and
(on my machine) slightly slower than normal CBMs. Maybe on VLB/PCI machines
this isn't the case.

Protected mode is still at an experimental stage, but it can do quite a few
things already.
Things that don't work in protected mode are :

- The Virtual VSync Handler (self-modification works, but the rest doesn't)
- CBMs (attempting to execute data...)
- VBM's on my machine are faster in pmode (??!?!?!)
- I assume that the ROM font is at segment 0C000h because that's where the
Video BIOS usually is. I have tested it on a Paradise (WD90c30), a
Cirrus Logic (CL-54xx) and a Trident (9000i) with no problems. If you
find some board that doesn't work please report it (though I don't know
why you'd want to use ROM BIOS fonts anyway 🙂
- The palette scrolling in XLIBDEMO is tooooooo slow...

If you find a way of fixing these, or if you find more routines that don't
like protected mode, email me please.


A good idea for debugging programs that use XLib is to use Colin Buckley's
UNCHAIN v2.1 program. The code for saving the screen information is built
in the xsetmode function, but if you don't use UNCHAIN it should not make
any difference.
I noticed that UNCHAIN doesn't work when debugging a DPMI program in TDX.


I have decided to start a list of applications that have been written using
a version of XLibPas, and where they can be found. Please mail me any

Chromatiks - The world's first multi-group music disk. Coordinated by
Trixter (Jim Leonard).

Site :
Directory : /pub/msdos/demos/music/disks

Filename : chromat*.zip

WadManager v1.11b - A GUI WAD manager for DOOM. Written by Tristan Tarrant.

Site :
Directory : /pub/doom/misc
Filename :


Michael Abrash - The guy who started it all in the first place

Themie Gouthas - The original maintainer of the XLIB for C library

Matthew McKenzie - Compiled blits, circles and clipping. What more could
I say

Tore Bastiansen - For the Virtual VSync handler : a masterpiece of coding

Andy Tam - For the LZS encoding/decoding routines

Douglas Webb - For collecting loads of compression algorithms

John Schlagel - For the bitmap scaling code

iD Software - For giving me inspiration for XLAs

Jim Leonard - For beta-testing XLIB

Colin Buckley - For his UNCHAIN program which made debugging hours so much
easier to cope with

Kai Rohrbacher - Author of ANIVGA for including so many fonts in his most
excellent library

Paul Silver and Aarron Shaughnessy - For letting me test this code on
their machines

Borland - For their excellent compiler suite

Anybody on USENET who sent me suggestions

 December 18, 2017  Add comments

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>