1. What Is the Universal Software Layer?

The Universal Software Layer (USL} is a package of programs that redirect resources through USB.

What kind of resources? We redirect access to - I/O (input/output) ports, Memory area , IRQs (hardware interrupts) and DMAs (direct memory access).

You as a user have one or more ISA and/or PCMCIA cards. These cards have worked plugged into motherboard or in a PCMCIA reader of your desktop or laptop. Now, since most computers are made without ISA and PCMCIA slots.

ARS Technologies has created products to allow you to use your ISA and PCMCIA cards by using the USB ports on your computer.

We have a number of products like our USB2ISA and USB2PCMCIA that allow you to use standard ISA and PCMCIA cards outside of the main desktop or notebook system. The ISA and PCMCIA cards are powered through the USB CABLE.

These ISA and PCMCIA cards have software associated with them like application programs and / or device drivers. Until now this software had to be converted by editing the source code, recompiling and linking.

We offer a developers kit, SDKBUS, for developers who’d like to edit the source code of their ISA or PCMCIA card in order to use them with our products.

The above way provides the best performance and works for companies who are developing or manufacturing their ISA/PCMCIA cards . They have the source code of their cards.

If you are not a developer or like source code access, we have created the Universal Software Layer to allow you to use our products without the need for programming. The USL allows you to use the original software of your ISA/PCMCIA cards without modifications.

2. How Does the USL Work?

Every ISA and PCMCIA card has associated resources for itself.

For example one multifunction ISA card with one disk, one floppy, one parallel port and two serial ports has:

  • disk- 10 I/O ports - base port 1f0 or 170 , 8 ports + 3f6,7 or 376,7 , 2 ports , and 1 IRQ channel - IRQ14 or 15
  • serial ports- base port 3f8 or 3e8 or 2f8 or 2e8 , 8 ports , and IRQ channels - IRQ3 or 4
  • parallel port - ...
  • floppy - ...

    In the case of a PCMCIA card, it is configured automatically by the system based on the choices written inside of the card.

    One example of a PCMCIA card is a PCMCIA modem having - 8 I/O ports (located anywhere in the I/O space without conflicts) and one IRQ (selected from the free IRQs).

    Our enumerator program has autodetect process of resources of the peripheral cards. The process can not always detect all resources.

    The job of the user is to find out what are the resources of the particular card: base I/O port, the number of ports and the IRQ number and compare with what was auto-detected.

    If differences are found - enter what is missing using our enumeration utility. After this, the USL layer automatically redirects these resources through USB.

    How do you know what resources a particular hardware has? The way to find this is specific to the operating system. We can pick a PCMCIA modem for example:

    On Windows 98 / ME
  • Go to the Control Panel
  • Click on System
  • Select Device Manager
  • Click on View Device Type
  • Under Modem, enlarge the view to see the devices present. If the PCMCIA modem is inserted it is under this section
  • Select the appropriate name and push Properties button
  • Select the Resources tab and take a note of the particular Input/Output Range setting and Interrupt Request setting.

    On Windows 2000
  • go to Control Panel ,
  • go to Administrative Tools , double click Computer Management ,
  • select Device Manager ;
  • under Modem - enlarge the view to see the devices present ,
  • select the appropriate name , and
  • from the Action menu start Properties ;
  • select the Resources tab , and take a note of the particular Input/Output Range setting , and Interrupt Request setting.

    Another way is to read the owner’s manual of your ISA / PCMCIA card. Inside, it lists the possible selections of I/O ports and IRQs for the particular card. Many ISA cards have jumper settings for the selection of the resources. Please take and use the current setting on the card.

    One way specific for DOS drivers and applications is to look at the options for the drivers in the CONFIG.SYS and/or AUTOEXEC.BAT files.

    3. Initializing and Configuring of the USL

    The USL is a package of programs that is included in the installation disk for our products.

    To claim resources, you need to use our enumerator program. After you have a list of the resources of a particular ISA / PCMCIA board, you have to enter and claim those resources using our enumerator program.

    When using our USL layer, please keep in mind that there is redirection through USB, which introduces overhead.

    In other words the speed of the ISA/PCMCIA card is not going to be the same as if the card is on the motherboard, or in the PCMCIA card reader.

    We are continuously working on improving the performance, adding features and optimizing the work of our hardware and software.

    We are offering free software updates, when available, to all the companies and users who have our products.