APPLICATIONSDIVERS ★ SIDEWAYS PRINTING ★

Sideways Printing (The Amstrad User)Applications Divers
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Introduction

Genealogy is a hobby of mine, and as any genealogist will tell you, it is a hobby which creates large quantities of data and correspondence. Apart from using my 6128 for word processing, I have written a series of programs to operate my data base consisting of ancestors names, dates for birth, marriages and deaths, etc.

One of the most widely used and easily understood methods of displaying basic genealogical relationships is the family tree diagram (Fig-1). I make regular use of these diagrams, which I print from my database, when corresponding with other genealogists. However, the standard A-4 page limits the diagram to five generations, and there is no room for the inclusion of brothers, sisters, etc. There arc several ingenious methods for overcoming this problem using continuous paper on an 80 column printer, but for what they gain in data content they lose in clarity of presentation, especially to the uninitiated.


figure-1: 3-Generatlon Family Tree Diagram Format


I decided that there had to be a better way of preparing comprehensive, easily understood family tree diagrams with my computer. My solution is to print the diagrams sideways using continuous paper. I now use this program, "Sideways", to print all or part of my family tree. The complete diagram is 8 metres long, uses 30 files, and takes 3 hours to print. (I go to bed and set a time clock to turn the computer off).

Apart from family trees. Sideways will print form any previously prepared ASCII file. The limitations are a maximum of 96 lines and 255 characters per line. I f you need special characters, these can easily be incorporated in the program.

I redefine the back-slash key to give thin horizontal and vertical lines on my family tree diagrams.

Sideways sequentially loads previously prepared ASCII files into the array TXTS, then determines the ASCII value of the characters corresponding to the last character on the longest line. This ASCII value is used to access the array ALPHA% which contains the bit image data for printing sideways. After printing, the characters corresponding with the last character in the longest line the program then decrements to read all characters corresponding with the second last character in the longest line, and repeats the decrementing and printing process until the first character in the line is printed. The next ASCII file is then automatically loaded, and the whole process is repeated.

Equipment

I wrote "Sideways" using a Super-5 ENP-1091 dot matrix printer. The Super-5 is an Epson compatible printer, but it would be prudent to check your printer's control codes with the ones used in "Sideways". Also note that the LPRINT command used in some printer manuals corresponds with the CPC's PRINT #8

(a) CHR$(27)+"<"; - home print head
(b) CHR$(24) ; -clears buffer
(c) CHRS(27)+"L"+CHRS(10)+CHR$(0); -2*density graphics
(d) CHR$(ALPHA%(C/0))+CHR$(ALPHA%(C,1))+etc ; -bit image print
(e) CHR$(13) -carriage return (g) CHR$(27)+"3"+CHRS(24); -9 lines/inch
(g) CHR$(27)+"3"+CHRS(36); -6 lines/inch

In (c) the CHR$(10)+CHR$(0) part of the command establishes the character height. Each character is 10 dots in height when printed, including additional spaces. (960/10 = 96 lines across the printed page.)

As listed, "Sideways" is suitable for running on a single disc drive system. To operate it with a two drive system with the file disc in the B-drive, and the program disc in the A-drive, change the following lines to read:

1450 DEFINT A-M:WIDTH 255: |B
1610 WIDTH 80: |A:CLS

The Font

The font used in "Sideways" is the normal CPC6128 screen font downloaded through one of the character generating programs that are available in public domain software. The characters have to be rotated so that they are correctly aligned when printed. There is some compression due to the use of double density graphics (960 dots/line instead of the standard 460 dots/line). The rotated character is contained in bit-image form in the DATA lines of the program. The first number in each DATA line is the ASCII value for the character in that line, this is useful in identifying the character each line represents. If you have any intention of designing your own special characters or fonts, it is worth the effort to obtain one of these character generating programs. To obtain the thin dotted lines that I use, change the following lines to read:

2240 DATA 92,0,0,0,170,0,0,0,0
2280 DATA 96,16,0,0,16,0,0,16,0

Program Functions

  • Lines 1000 -1060: Describe the program specification, and direct the operation of the principal routines.
  • Lines 1070-1230: Inserts a space to make up the difference between the end of a line shorter than the current printing position and the current position-being printed (1140). Determines the ASCII value of the character at the point currently being read on the line of text and converts it to a space if it is outside the range, ASCII 32-126 [1150-1160). Selects the bit image data from ALPHA%, and sends it to the printer [1180-1190].
  • Lines 1240 -1400: Loads previously prepared ASCI files bum DATA [1270], into the array TXT$ [1310]. Determine!, maximum line length [1340], and other statistics for screen display.
  • Lines 1410 - 1580: Prints titles and general screen displays. Loads bit image data from DATA lines into the array ALPHA% [1490]. Allows the names of previously prepared ASCII files to be entered into a DATA statement [1550]. Line [1540] centres screen text automatically.
  • Lines 1590 -1630: Resets computer and printer.

Program Operation

The first step is to prepare ASCII files of the information that is to be printed sideways. The maximum number of lines is 96, and the maximum line length is 255 charactcrs. I have used Tasworri, and Protext in its non-document mode Protext will accept lines longer than 255 characters on the screen, but it stores the excess in a new array which provided some interesting cffecte when you try to recall it for sideways printing.

Once the ASCII files have been prepared, run "Sideways-, the program will request you to enter the names of ASCII files into a DATA line. If more than one ASCI I file is to be entered, enter the List file first, then the second last and so on. If all of the ASCII files will not fir on line 2590, then press RETURN (large ENTER key), and type in 2591 DATA "filename.ext".......etc. This may be repeated until line 2599 is used, do not remove line 2600 as "LASTFILE" is needed to signal the end of the operation. If more than 50 files are to be entered then change line 1270 so that the upper limit of the loop is greater than the number of ASCII files. When all of the text files have been entered into DATA lines then press ENTER (small ENTER key). The ENTER key (Key No. 6) has been redefined to restart the program after the Aklll files have been entered.

Some experimentation may be needed to establish a standard layout if multiple ASCII files are to be used, but as I mentioned at the beginning, I use 30 text files for my complete family tree. Figure-2 is printed from two files. The thin dotted lines link with people on other files.

The program listing is on the following few pages. But be warned - whilst the program works well it does take an age to print. Then again, it has taken centuries to compile!

TAU

★ PUBLISHER: The Amstrad User (Australia)
★ YEAR: 1987
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ AUTHOR: ALAN WALKER
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Aucun fichier de disponible:
» Vous avez des fichiers que nous ne possédons pas concernent cette page ?
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
Je participe au site:
» Pour ce titre nous ne disposons de fichier executable sur CPC (Dump, Saisie du listing) , alors si vous avez ça dans vos cartons ou vous désirez usé vos petit doigts boudinés sur votre clavier faites le nous savoir.
» Vous avez des infos personnel ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 615 millisecondes et consultée 1764 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.