Chess Example (Source Code)
Chess Example / Fortran
      program chess
      character (len=1), dimension (8), parameter :: cit1 = (/'A','B','C','D','E','F','G','H'/)
      character (len=12),parameter::cit='CHESS BOARD'
      integer:: i,j,nl
      real::v
      call metafl ('pdf')
      call setpag ('da4p')
      call disini()
      call pagorg('bottom')
      call pagera()
      call setvlt('small')
      call origin(200,900)
      call rectan(0,0,1600,1600)
        do i = 200,1600,200
        call line(i,0,i,1600)
        end do
        do j = 200,1600,200
        call line(0,j,1600,j)
        end do
        do j=0,3,1
          do i=100,1300,400
          call point(i,100+j*400,200,200,1)
          end do
        end do
        do j=0,3,1
          do i=300,1500,400
          call point(i,300+j*400,200,200,1)
          end do
        end do
      call psfont('helvetica')
      call height (100)
        do i=1,8,1
        nl = nlmess(cit1(i))
        call messag (cit1(i),(i-1)*200+(200-nl)/2, -50)
        end do
        do i=1,8,1
        v=i
        call number (v,-1,1650,(i-1)*200+150 )
        end do
      call origin(0,0)
      nl = nlmess (cit)
      call messag (cit,(2100-nl)/2, 2700)
      call filbox(250,650,1500,550)
      call incfil('chess_txt.png')
      call disfin()
      end program chess
Chess Example / C
#include <stdio.h>
#include <string.h>
#include <math.h>
#include "dislin.h"
int i,j,nl ;
float v ;
char cit1[8][2]={"A","B","C","D","E","F","G","H"};
char cit[13]="CHESS BOARD";
main()
{
  metafl ("pdf");
  setpag ("da4p");
  disini();
  pagorg("bottom");
  pagera();
  setvlt("small");
  origin(200,900);
  rectan(0,0,1600,1600);
  for (i=200; i<1601; i=i+1)
  { if ((i % 200) == 0)
    { line(i,0,i,1600);
    } 
  }
  for (j=200; j<1601; j=j+1)
  { if ((j % 200) == 0)
    { line(0,j,1600,j);
    }
  }
  for (j=0; j<4 ;j=j+1)
  { for (i=0; i<4 ;i=i+1)
    { point(100+i*400,100+j*400,200,200,1);
    }
  }
  for (j=0; j<4; j=j+1)
  { for (i=0; i<4; i=i+1) 
    { point(300+i*400,300+j*400,200,200,1);
    }
  }
  psfont("helvetica");
  height (100);
  for (i=0; i<8; i=i+1)
  { nl= nlmess(cit1[i]);
    messag (cit1[i],(i*200+(200-nl)/2),-50);
  }
  for (i=1; i<9; i=i+1)
  { v=i;
    number (v,-1,1650,(i-1)*200+150 );
  }
  origin(0,0);
  nl=nlmess (cit) ;
  messag (cit,(2100-nl)/2,2700);
  filbox(250,650,1500,550);
  incfil("chess_txt.png");
  disfin();
}
Chess Example / Free Pascal
program chess;
uses
crt,dislin;
var
cit1:array [1..8] of string[1]=('A','B','C','D','E','F','G','H');
cit:string[12]='CHESS BOARD';
i,j:integer;
nl:integer;
v:real;
begin {main}
clrscr;
metafl ('pdf');
setpag ('da4p');
disini();
pagorg('bottom');
pagera();
setvlt('small');
origin(200,900);
rectan(0,0,1600,1600);
  for i:= 200 to 1600 do
    begin
    if (i mod 200)=0 then line(i,0,i,1600);
    end;
  for j:= 200 to 1600
    begin
    if (j mod 200)=0 then line(0,j,1600,j);
    end;
  for j:=0 to 3 do
    begin
    for i:=0 to 3 do
    point(100+i*400,100+j*400,200,200,1);
    end;
  for j:=0 to 3 do
    begin
    for i:=0 to 3 do
    point(300+i*400,300+j*400,200,200,1);
    end;
psfont('helvetica');
height (100);
  for i:=1 to 8 do
    begin
    nl:= nlmess(cit1[i]);
    messag (cit1[i],trunc((i-1)*200+(200-nl)/2),-50);
    end;
  for i:=1 to 8 do
    begin
    v:=i;
    number (v,-1,1650,(i-1)*200+150 );
    end;
origin(0,0);
nl:=nlmess (cit) ;
messag (cit,trunc((2100-nl)/2),2700);
filbox(250,650,1500,550);
incfil('chess_txt.png');
disfin();
end.
Chess Example / FreeBasic
#include "dislin.bi"
dim as integer i,j,nl
dim v as single
dim as string cit = "CHESS BOARD"
dim cit1(1 to 8) as string= {"A","B","C","D","E","F","G","H"}
dislin.metafl ("pdf")
dislin.setpag ("da4p")
dislin.disini()
dislin.pagorg("bottom")
dislin.pagera()
dislin.setvlt("small")
dislin.origin(200,900)
dislin.rectan(0,0,1600,1600)
for i=200 to 1600 step 200
dislin.line(i,0,i,1600)
next i
for j=200 to 1600 step 200
dislin.line(0,j,1600,j)
next j
for j=0 to 3 step 1
  for i=100 to 1300 step 400
  dislin.point(i,100+j*400,200,200,1)
  next i
next j
for j=0 to 3 step 1
  for i=300 to 1500 step 400
  dislin.point(i,300+j*400,200,200,1)
  next i
next j
dislin.psfont("helvetica")
dislin.height (100)
for i=1 to 8 step 1
nl = dislin.nlmess(cit1(i))
dislin.messag (cit1(i),(i-1)*200+(200-nl)/2, -50)
next i
for i=1 to 8 step 1
v=i
dislin.number (v,-1,1650,(i-1)*200+150 )
next i
dislin.origin(0,0)
nl = dislin.nlmess(cit)
dislin.messag (cit,(2100-nl)/2, 2700)
dislin.filbox(250,650,1500,550)
dislin.incfil ("chess_txt.png")
dislin.disfin()
end
Chess Example / GCL
%gcl
cit='CHEES BOARD'
metafl ('pdf')
setpag ('da4p')
disini()
pagorg('bottom')
pagera()
setvlt('small')
origin(200,900)
rectan(0,0,1600,1600)
do i = 200,1600,200
line(i,0,i,1600)
end do
do j = 200,1600,200
line(0,j,1600,j)
end do
do j=0,3,1
  do i=100,1300,400
  point(i,100+j*400,200,200,1)
  end do
end do
do j=0,3,1
  do i=300,1500,400
  point(i,300+j*400,200,200,1)
  end do
end do
psfont('helvetica')
height (100)
do i=1,8,1
nl = nlmess(string(i+64))
messag (string(i+64),(i-1)*200+(200-nl)/2,-50)
end do
do i=1,8,1
v=float(i)
number (v,-1,1650,(i-1)*200+150 )
end do
origin(0,0)
nl = nlmess (cit)
messag (cit,(2100-nl)/2, 2700)
filbox(250,650,1500,550)
incfil('chess_txt.png')
disfin()
Chess Example / Python
#! /usr/bin/env python
import math
import dislin
cit = "CHESS  BOARD"
cit1 = ["A","B","C","D","E","F","G","H"]
 
dislin.metafl ('pdf')
dislin.setpag ("da4p")
dislin.disini()
dislin.pagorg("bottom")
dislin.pagera()
dislin.setvlt("small")
dislin.origin(200,900)
 
dislin.rectan(0,0,1600,1600)
for i in range (200,1600,200): 
    dislin.line(i,0,i,1600) 
for j in range(200,1600,200):
    dislin.line(0,j,1600,j) 
for j in range (0,4):
  for i in range (100,1700,400):
    dislin.point(i,100+j*400,200,200,1)
 
for j in range (0,4): 
  for i in range (300,1900,400):
   dislin.point(i,300+j*400,200,200,1) 
          
dislin.psfont("helvetica")
dislin.height (100)
for i in range (0,8 ):
  nl = dislin.nlmess(cit1[i])
  dislin.messag (cit1[i],(i*200+int((200-nl)/2)),-50)
for i in range (1,9,1): 
  v=i
  dislin.number (float(v),-1,1650,(i-1)*200+150 )	
dislin.origin(0,0)
nl = dislin.nlmess (cit)
dislin.messag (cit,int((2100-nl)/2), 2700)
dislin.filbox(250,650,1500,550)
dislin.incfil ("chess_txt.png")
dislin.disfin()    
Chess Example / Java
	import de.dislin.Dislin;
	public class CHESS {
	public static void main(String[] args) {
	
	int i,j,nl ;
	
	float v ;
	
	String cit1[]={"A","B","C","D","E","F","G","H"};
	
	String cit = "CHESS BOARD";
	Dislin.metafl ("pdf");
	Dislin.setpag ("da4p"); 
	Dislin.disini(); 
	Dislin.pagorg("bottom");
	Dislin.pagera();
	Dislin.setvlt("small"); 
	Dislin.origin(200,900);
	Dislin.rectan(0,0,1600,1600);
	for (i=200; i<1601; i=i+1)
	{
	if ((i % 200) == 0)
	{
	Dislin.line(i,0,i,1600);
	}
	}
	for (j=200; j<1601; j=j+1)
	{
	if ((j % 200) == 0)
	{
	Dislin.line(0,j,1600,j);
	}
	}
	
	for (j=0; j<4 ;j=j+1)
	{
	for (i=0; i<4 ;i=i+1)
	{
	Dislin.point(100+i*400,100+j*400,200,200,1);
	}
	}
	for (j=0;	j<4; j=j+1)
	{
	for (i=0;	i<4; i=i+1)
	{
	Dislin.point(300+i*400,300+j*400,200,200,1);
	}
	}
	Dislin.psfont("helvetica");
	Dislin.height (100);
	for (i=0; i<8; i=i+1)
	{
	nl= Dislin.nlmess(cit1[i]);
	Dislin.messag (cit1[i],(i*200+(200-nl)/2),-50);
	}
	for (i=1; i<9; i=i+1)
	{
	v=i;
	Dislin.number (v,-1,1650,(i-1)*200+150 );
	}
	Dislin.origin(0,0);
	nl=Dislin.nlmess (cit) ;
	Dislin.messag (cit,(2100-nl)/2,2700);
	Dislin.filbox(250,650,1500,550);
	Dislin.incfil("chess_txt.png");
	Dislin.disfin();
	}
}
News
    
       DISLIN manual as eBook from Amazon
     
5. April 2025
     
Support for OpenBSD 64-bit
17. January 2025
     
Support for Python 3.13 and Windows
17. January 2025
     
Updated PDF manual of the DISLIN book
8. January 2025
     
Upgrade 11.5.2
8. April 2024
     
Support for Python 3.11 and Windows
28. July 2023
     
Bug fix for the X11 distributions
22. July 2023
     
Upgrade 11.5.1
25. April 2023
     
Support for Linux 64-bit on IBM z series
30. October 2022
     
Support for MingW 64-bit UCRT runtime environment
28. September 2022
     
Release 11.5
15. March 2022
     
DISLIN Book Version 11 is available
8. March 2017
  
5. April 2025
Support for OpenBSD 64-bit
17. January 2025
Support for Python 3.13 and Windows
17. January 2025
Updated PDF manual of the DISLIN book
8. January 2025
Upgrade 11.5.2
8. April 2024
Support for Python 3.11 and Windows
28. July 2023
Bug fix for the X11 distributions
22. July 2023
Upgrade 11.5.1
25. April 2023
Support for Linux 64-bit on IBM z series
30. October 2022
Support for MingW 64-bit UCRT runtime environment
28. September 2022
Release 11.5
15. March 2022
DISLIN Book Version 11 is available
8. March 2017