IBM LANDP J/XFS Device Wrappers README
*******************************************

Introduction
************

The LANDP J/XFS device wrappers allow J/XFS enabled applications
to access financial devices supported by IBM LANDP Version 5. Wrappers
are currently supplied for the following devices:

- Magnetic stripe readers/encoders (4777)
- Personal Identification Number Pads (4778 including MSD support)
- 4722 Financial Printer

These wrappers are supplied via the LANDP web site at:

http://www.software.ibm.com/ts/landp/

Pre-requisites
**************

In order to use these wrappers you must have the following 
software installed on your system:

A J/XFS kernel - Please refer to the J/XFS web site at
http://www.jxfs.com/ for more details.

LANDP Version 5 - This wrapper requires the Java support contained 
within LANDP Version 5. Please refer to the Installation and 
Customisation manual for further details on setting up the LANDP 
Version 5 Java support.

Device drivers - Suitable device drivers for the financial 
devices in use must be installed.

A Java Virtual Machine - The IBM JDK is recommended and available 
at http://www.ibm.com/java/jdk/ The J/XFS kernel currently supports
JDK 1.1.8 and this is reccomended.


INSTALLATION
************

The LANDP J/XFS wrappers are supplied in the following files:

- ldp47xx.jar (For the 47xx series of MSD devices)
- ldp4788.jar (For the 4788 MSD/PIN Pad device)
- ldp4722.jar (For the 4722 financial printer)

Copy the appropriate file for the device you wish to use to a directory 
on the workstation and then add the file to your system CLASSPATH variable. 
For instance, if you put the file in c:\landp then add c:\landp\ldp47xx.jar 
to your classpath.

The LANDP Java Manager must be running in order for the Device Services
to work. For instructions on installing the LANDP Java Manager refer to
the LANDP Installation and Customisation Guide.

Configuration
*************

To configure the device services within the LANDP kernel, use the 
BCT tool supplied with the J/XFS kernel. For more information on 
configuring the kernel and using the BCT tool refer to the J/XFS 
kernel documentation.

The following specific configuration information is required for each 
device service:

IBM 47xx Magnetic Stripe Device Service:

Key              Type   Value
------------------------------------------------------------
serviceName      String com.ibm.landp.device.LandpIBM47xxMSD
landpServer      String <name of the LANDP server e.g. MSRE4701>
operationTimeout String Value between 0-60 seconds. If no value is
                        specified a default of 30 seconds is used. 

IBM 4778 Pin Pad/MSD Device Service:

Key              Type   Value
------------------------------------------------------------
serviceName      String com.ibm.landp.device.LandpIBM4778PIN_MSD
landpServer      String <name of LANDP server e.g. PINP4701>
operationTimeout String Value between 0-60 seconds. If no value is
                        specified a default of 30 seconds is used.
                        Only used with the MSD part of the device. 

IBM 4722 Financial Printer Device Service:

Key              Type   Value
------------------------------------------------------------
serviceName	 String com.ibm.landp.device.LandpIBM4722PTR
landpServer	 String <name of LANDP server e.g. PR47x201>


The following is a sample extract from the [DEVICE_SPECIFC] section
of a BCT configuration file that shows how the configuration parameters
may be used. As the 4778 is a complex device containing both Magnetic
Stripe and PIN Pad capability, note that each part of the device has
its own configuration.

#
# LANDP 4777 Mag Stripe device
#
S DEVVAL <id> MSD serviceName com.ibm.landp.device.LandpIBM47xxMSD
S DEVVAL <id> MSD controlName com.jxfs.control.msd.JxfsMagStripe
S DEVVAL <id> MSD deviceName MagStripe
S DEVVAL <id> MSD description "Landp IBM 4777 Mag Stripe"
S DEVVAL <id> MSD remoteAccess (boolean)false
S DEVVAL <id> MSD landpServer (String)MSRE4701
S DEVVAL <id> MSD operationTimeout (String)15
#
# Complex 4778 Mag Stripe / PIN Pad device
#
S DEVVAL <id> ComplexMSD serviceName com.ibm.landp.device.LandpIBM4778PIN_MSD
S DEVVAL <id> ComplexMSD controlName com.jxfs.control.msd.JxfsMagStripe
S DEVVAL <id> ComplexMSD deviceName ComplexMagStripe
S DEVVAL <id> ComplexMSD description "LANDP IBM 4778 Complex Mag Stripe"
S DEVVAL <id> ComplexMSD remoteAccess (boolean)false
S DEVVAL <id> ComplexMSD landpServer (String)PINP4701
S DEVVAL <id> ComplexMSD operationTimeout (String)15
S DEVVAL <id> ComplexPIN serviceName com.ibm.landp.device.LandpIBM4778PIN_MSD
S DEVVAL <id> ComplexPIN controlName com.jxfs.control.pin.JxfsPINKeypad
S DEVVAL <id> ComplexPIN deviceName ComplexPINPad
S DEVVAL <id> ComplexPIN description "LANDP IBM 4778 complex PIN Pad"
S DEVVAL <id> ComplexPIN remoteAccess (boolean)false
S DEVVAL <id> ComplexPIN landpServer (String)PINP4701
#
# LANDP 4722 Financial Printer device
#
S DEVVAL <id> PTR serviceName com.ibm.landp.device.LandpIBM4722PTR
S DEVVAL <id> PTR controlName com.jxfs.control.ptr.JxfsDocumentPrinter
S DEVVAL <id> PTR deviceName DocuPrinter
S DEVVAL <id> PTR description "LANDP IBM 4722 financial printer"
S DEVVAL <id> PTR remoteAccess (boolean)false
S DEVVAL <id> PTR landpServer (String)PR47x201


47xx Magnetic Stripe Device Service notes
*****************************************

The LANDP MSRE47## server provides the DV function which allows dynamic
redefinition of various track parameters such as bits per character and 
SOM/EOM characters. The J/XFS MSD API does not provide support for setting
these parameters and therefore the LANDP 47xx and 4778 J/XFS device services 
can only read/write using the default device parameters (see LANDP 
Programming Reference page 195 for more information on these defaults.)

4778 PIN Pad Device Service notes
*********************************

The J/XFS PIN Pad device service API contains support for various read
modes. The 4778 PIN Pad device only supports 'cooked' mode. Entered
data is only returned to the application once the Enter key has been
pressed.

4722 Financial Printer Device Service notes
*******************************************

The 4722 device service is designed to be used with the LANDP Financial
Printer Server in unformatted mode. There is currently no support for 
using the printer in formatted mode and therefore the byte array passed
in the printRawData method must contain all of the control and escape
codes to control the printing. In addition, each print must include
a Form Feed (hexadecimal 0C) character to eject the paper at the end 
of the print.

The Jxfs Printer specification states that if no media is present in the
printer then the print job waits until either media is inserted, or 
the print job is cancelled. The 4722 currently cannot determine the current 
paper state of the printer and the operator must ensure that a sheet is 
loaded into the printer before issuing a command to print, or the print 
will fail. It is also not currently possible to cancel a print once the
job has started to execute.

Known Limitations
*****************

The LANDP 4778 Pin Pad device service does not currently support encrypted
PIN Pad operations.

There is currently no capability for displaying text on the 4778 display
panel. This will be added in the next release.

The 4722 device service does not support the ejection of paper through the 
IJxfsEject interface of the J/XFS API.

The REMS capability of the 4722 Model 3 printer is currently not supported.

SUMMARY OF CHANGES
******************

26/06/2000 - Beta version of 47xx and 4778 device services released.
31/07/2000 - Beta version of 4722 device service released.
17/11/2000 - Final versions of 47xx, 4778 and 4722 device services released.
