Monday, 8 December 2008

I'm going to use my blog as a source of news on the UK DEC Meeting I'm trying to get sorted out.

Well, I've been banding this idea around to a few fellow DECheads in the UK, and thought it was about time I moved on to stage 2.

I am thinking about organising a meeting for people interested in the lines of computers created by Digital Equipment Corporation. It is likely that the meeting will be autumn next year, and would be run over a Saturday and Sunday in Windermere, Cumbria, UK.

This is in the very early stages of planning, and I'm initially looking to get an idea of numbers who might be interested. This is to ensure that I can organise the event without loss. In terms of numbers I would be looking for between 10 and 20 people to exhibit computers, and then another up to maybe 50 people as non-exhibitors. I'm sure we could get some interesting speakers involved.

Cost is likely to be in the order of GBP 10 for the two days, although we can discuss the option of providing catering if there is interest. I would be looking for firm commitment to buy a ticket say 3 months in advance.

So in the first instance, could anyone interested email me at: mark at wickensonline dot co dot uk. By emailing you agree for me to keep your email address on file so that I can inform you of any progress.

Please feel free to make suggestions either on this blog or direct by email.

Monday, 1 December 2008

Summary: by using DCPS and a custom ANSI setup you can print 132 column in portait mode to a postscript LPD printer. My Kyocera FS1020D has a network card installed and is setup as an LPD printer server. 132 column portrait is useful for printing compiler or assembler list files.

Install DCPS. For hobbyists the license is included: DCPS-OPEN

Configure DCPS by copying the template: SYS$STARTUP:DCPS$STARTUP.TEMPLATE to SYS$STARTUP:DCPS$STARTUP.COM

I made the following alterations:

Define the DCPS_LIB logical to point to the standard control library located in SYS$LIBRARY:DCPS$DEVCTL.TLB, and a user defined library (to be created in a minute) called SYS$LIBRARY:DCPS$SITE.TLB. The directory and file extensions are not specified in the logical, but we must specify that our custom library contains ANSI control sequences:

P1 - if you specify this as SYS$PRINT you'll not need to specify a queue name when printingP2 - protocol of IP_LPD specifies we are printing to an LPD printer - followed by the IP address and the name of the print queue (the default remote queue name is normally lp)P3 - this is the logical name defining the form library(s) the queue users (the one we defined earlier in this file)P4 - SIDES-2 my FS1020D is a duplex printer - this specifies duplex printing

You need to define a setup module and add it to a text library. The setup module is a string of ANSI control sequences that are interpreted by the DCPS print engine. The setup module can either be defined directly in the PRINT command using the /SETUP parameter or via a FORM definition.

The following text file sets up the printer for 132 character portrait printing:

$ type sys$library:wide132.txtESC[15mESC[11wESC[1;132s

where ESC is the escape code Ctrl-[. You can create escape characters within EVE by typing Ctrl-V Ctrl-[

To create the custom control library (initially empty):$ library/create/text sys$library:dcps$site.tlb

To replace the module in the custom control library (note that the library extension .TLB and text file containing the ANSI control sequence .TXT are not specified):$ set def sys$library$ library/replace/text dcps$site wide132

(If previously created) delete the form to use:$ delete/form wide132

Create a form using the /setup parameter to define the module to use. The /stock-default is required unless you are using a specific stock:$ define/form/width=132/setup=wide132/stock=default wide132 2

You should now be able to print using the following:$ print/form=wide132 myfile.lst

The DCPS$STARTUP.COM and form definition commands needs to be added to the SYS$STARTUP:SYSTARTUP_VMS.COM file to get run automatically at startup.

Note: the only reference I could find to setting the horizontal pitch in relation to DCPS used the command ESC[4w which sets a pitch of 16.5 characters/inch. This apparently works on dot matrix printers but not on my Kyocera FS1020D because of the minimum margins imposed by the printable area (probably true of a number of laser printers). You get 131 character lines - very frustrating! The setting of ESC[11w uses a slighter tighter pitch of 17.1 characters/inch (which seems designed for this purpose in my opinion).

This is an excerpt from the the Digital ANSI-Compliant Printing Protocol Level 2 Programming Reference describing the horizontal pitch command: