Frente

X64 Wireless Terminals




Restaurants Connection




Control configuration

In the Menu...

6.14 Version

Press: 96195
1 6 7 1 4 5 It changes the Control number
2 2 6 4 2 6 4 It changes the Licensing number

3
+1 Light (bit 0)
+2 Receiver (bit 1)
+4 It asks for place (bit 2)
+8 It does not make Reset (It does not update the reserved blocks)
+16 It asks for Money Visa
+32 Print (Y/N)
+64 It asks for wastes (Y/N)
+128 0-Partial annulment; 1-Complete annulment
4 Number of Retransmitters, 0 by default
+8 It does not protect the keyboard
+16 It does not allow to edit directly the plus
+32 Quantity, 0 by default
+64 It sends a message whenever it starts

5 Receive the PLUS


6.24 Version

Press: 96195
1 6 7 1 4 5 It changes the Control number
2 2 6 4 2 6 4 It changes the licensing number

3
+1 Light (bit 0)
+2 Receiver (bit 1)
+4 It asks for people (bit 2)
+8 It does not make Reset (It does not update the reserved blocks)
+16 It asks for Money Visa
+32 Print (Y/N)
+64 It asks for wastes (Y/N)
+128 0-Partial annulment; 1-Complete annulment
4 Number of Retransmitters, 0 by default
+8 It does not protect the keyboard
+16 It does not allow to edit directly the plus
+32 Quantity, 0 by default
+64 It sends a message whenever it starts

+128 It asks for place

5 Receive PLUs

Versão x.9123

Press: 96195
1 6 7 1 4 5 Changes the Control Number
2 2 6 4 2 6 4 Changes the Licensing Number

3 Change the Configuration A (Enter to visualize options)
+1- LCD light connected?
+2- Does it receive any message from the PC?
+4- Number of people at the table?
+8- It does not reestablish the menus (put it to 0 to reestablish the original menus)
+16- Type of payment?
  Example: 1-Money 2-Visa
+32- Does it ask for type of bill?  Example: 1-Print 2-Do not print
+64- Does it ask for type of cancellation?
  Example: 1-with wastes 2-without wastes
+128- The cancellation is total or how many articles are to be cancelled?


4
Change Configuration B (Enter to visualize options)
+n- Number of receiver antennas
+8- Do not blockade the keyboard
+16- The ordering list comes always from the PC instead of starting being empty
+32- The quantity when it is not filled in is 0 and not 1
+64- The PC receives a notice whenever a terminal gets connected
+128- It asks for the place of the person at he table

5  Change the C Configuration (Enter to visualize options)
+1- When asking a bill, ask for the place?
+2- Character font of a bigger size
+4- 8 digits at the table with barcode reading
+8- 8 digits at the place with barcode reading
+16- It allows, for antennas withh recent software (september 2002), not to have a limit in the number of articles of an order.
+32- It verifies automatically if the written value in payment type corresponds to the values of th descriptive text. Ex: 1-money 2-visa --> It onlly accepts 0, 1 or 2





Direct connection without DLL with Vers. 6 Antennas
In the version 6 antenna, the communication between the PC and the antenna is bidirectional. The protocol in use is the same but by packages.

So the communication between the PC and the antenna becomes a communication by packages instead of a communication by bytes.

After reinitiating, the Antenna is always at a reception status. To form the antenna in order to work by packages, the following information must be sent:

Being the antenna at 'Menu'

chr('-') + chr('<') +chr('P')+chr(2)
To deactivate, this information must be sent:
chr('-') + chr('<') +chr('P')+chr(0)
It must be noted that this string must be sent as a package.
From this moment the antenna does not return to 'Menu'.

The packages are constituted the following way:

chr('-')+chr('>')+chr(size)(byte)+DATA(byte)+chr(Number of message)(byte) +chr(checksum)(byte)

size: Size of the DATA
checksum : It includes the size, the data and the number of message.

The answer to each package is always'->OK'+chr(Number of the message)

The packages are numbered, the antenna waits for an answer from the PC and it does not receive any new message until the PC answers. This effect is wanted in case the serial cable got disconnected and the controls stopped working.

The data are the same as the used in older versions.

Example: In order to send a message to the control, I must send:

chr('-')
chr('>')
chr(36) Message size
chr (Number of the Control to which the message must be sent Low Byte)
chr (Number of the Control to which the message must be sent High Byte)
chr (Licensing Number Low byte)
chr (Licensing Number High byte)
32 Bytes (Message text)
chr(Number of message), for example 1
chr( checksum ) 1 Byte with the sum of all the bytes of the message, size and number of message included.
The Antenna is going to answer with:
chr('-')
chr('>')
chr('O')
chr('K')
chr(Number of message)

Next, it is going to send the message by radio.
In the inverse sense it happens the same.
The only situation that has to be considered is that if the antenna sends an order to the PC and the PC is waiting for an answer, the order must be understood as an order

The example in VB shows well this situation.


Receive by RS232:
Chr('-')+Chr('>')+Chr(Size)+
·Chr(®)+Chr(®)

·Chr ( Function)
P It asks for number of people
A Annul
S subtotal Type Payment
C amount Type Payment+ Bill (Y/N)
T transf Table2
G pay_part
D discount % Discount
R Confirmation Message Answer.
·Chr (Number of Control Low Byte)
·Chr (Number of Control High Byte)
·Chr (Licensing Number Low Byte)
·Chr (Licensing Number High Byte)
·Chr (Message Number Low Byte)
·Chr (Mesage Number High Byte)
·Chr (Number of Dishes Low Byte)
·Chr (Number of Dishes High Byte)
·Chr (Number of Table Low Byte)
·Chr (Number of Table High Byte)
·Chr (Auxiliary Low Byte)
·Chr (Auxiliary High Byte)
.Chr (Place 1 Low Byte) ONLY IN PROTOCOL_DATA 2
.Chr (Place 1
High Byte
) ONLY IN PROTOCOL_DATA 2
.Chr (Place 2 Low Byte) ONLY IN PROTOCOL_DATA 2
.Chr (Place 2
High Byte)
ONLY IN PROTOCOL_DATA 2

For n=1 to Number of Dishes
·Chr (Dish Low Byte)
·Chr (Dish High Byte)
·Chr (Quantity Low Byte)
·Chr (Quantity High Byte)
next
+Chr(Number of message)
+Chr(Checksum)

THE PC MUST ANSWER WITH '->OK'+chr(Number of the message)


Controls Version 6 Antenna
"-<S"+chr(1) Protocol_data 1
"-<S"+chr(2) Protocol_data 2

"-<P"+chr(0) Without data Packages, Without Header

"-<P"+chr(1) Without data Packages, with Header "-->"

"-<P"+chr(2) Data Packages, active


"-<?" It asks for the Antenna's Version. The answer is a byte. In the older versions, the anwer is "Menu".

Send plu to the control
chr(1)
chr ( Num. Block to be programmed Low byte)
chr ( Num. Block to be programmed High byte)
chr ( Num. Licensing Low byte)
chr ( Num. Licensing High byte)
16 Bytes (text) (If the last 4 bytes are digits, they represent a family, for example "MEAT 0100")
In the case of data packages, if a second plu is going to be sent the process must be repeated.
Send a message
chr (3)
chr (Number of Control to which the message will be sent Low Byte )
chr (Number of Control to which the message will be sent High Byte )
chr (Licensing Number Low byte)
chr (Licensing Number High byte)
32 Bytes (Message text)

Send a special message to put in upload plus mode
(Within the message)
chr(1)
chr(6)

Send a special message to put in upload plus mode and clear all the PLUS

(version > 6.918)
(Within the mensaje)

chr(1)
chr(8)

Send a special message to form A harware byte
(Within the message)
chr(1)
chr(3)
chr(hardware byte)
Description of the bits of the hardware byte
+1 Light (bit 0)
+2 Receiver (bit 1)
+4 It asks for place (bit 2)
+8 It does not make Reset (It does not update the reserved blocks)
+16 It asks for Money Visa
+32 Print (Y/N)
+64 It asks for wastes (Y/N)
+128 0-Partial annulment; 1-Complete annulment
Send a special message to form the hadware B byte
(Within the message)
chr(1)
chr(7)
chr(hardware byte)

Description of the bits of the hardware byte
Number of Retransmitters, 0 by default
+8 It does not protect the keyboard
+16 It does not allow to edit directly the plus
+32 Quantity, 0 by default
+64 It sends a message whenever it starts
+128 It asks for place


Send the base limits, the Licensing number and the Control
chr(8)
chr(Low Byte (Inferior limit Licensing))
chr(High Byte (Inferior limit Licensing))
chr(Low Byte (Superior limit Licensing))
chr(High Byte (Superior limit Licensing))
chr(Low Byte (Inferior limit N. Control))
chr(High Byte (Inferior limit N. Control))
chr(Low Byte (Superior limit N. Control))
chr(High Byte (Superior limit N. Control ))

Send data from a table to a control
chr(10)
chr ( Number of Order to form Low Byte )
chr ( Number of Order to form High Byte )
chr ( Number of Licensing Low byte)
chr ( Number of Licensing High byte)

chr( Number of Dishes)
chr( Table Low byte)
chr( Table High Byte)

If it is PROTOCOL_DATA 1

chr( AuxData LowByte)
END IF


If it is PROTOCOL_DATA 2

chr(AuxData LowByte)
chr(AuxData HighByte)
chr(Place1 LowByte)
chr(Place1 HighByte)
chr(Place2 LowByte)
chr(Place2 HighByte)

END IF

chr(MsgCt)
for N = 1 to Num. Dishes
chr(Dish Low Byte)
chr(Dish High Byte)
chr(Quantity Low Byte)
chr(Quantity High Byte)
next



Direct connection without a DLL, Antenna's Vers. <6

Installation:

Connect the base to the PC using the serial port.

Communicate with the base with “19200,N,8,2


Base:

After connecting it, the base starts on the reception mode.
To quit the reception mode, send a character by the RS232.

This way, the base will enter in the "Menu" mode
Whenever the base goes in the Menu mode, it sends "Menu" to the PC.

Configuration of the base:

Send by RS232:

Chr(‘-‘)+Chr(‘-‘)+Chr(‘>’) (Bytes of synchronism)


·Chr (1)
It goes into the Upload mode
LOOP1
chr (Number of the Block to program Low byte)
chr ( Number of the Block to program High byte)
chr (Licensing Number Low byte)
chr (Licensing Number High byte)
16 Bytes (text) (Only the 13 first bytes are visible)
PAUSE
To get out of the Upload mode, Chr(2) must be sent
in any position of the text.
GOTO LOOP1

·Chr (2)
Start in the reception mode
·Chr (3)
Send a Message
chr (Number of Control to which the message will be sent Low Byte )
chr ( Number of Control to which the message will be sent High Byte )
chr (Licensing Number Low byte)
chr (Licensing Number High byte)
32 Bytes (Message text)

The base starts automatically in the reception mode, receiving the message confirmation.

·Chr ( 1 ) SPECIAL MESSAGE (1st character of the message text)

·Chr ( 3 )
Conf. Hardware a Chr (

+1 Light (bit 0)
+2 Receiver (bit 1)
+4 It asks for place (bit 2)
+8 It does not make Reset (It does not update the reserved blocks)
+16 It asks for Money Visa
+32 Print (Y/N)
+64 It asks for wastes (Y/N)
+128 0-Partial annulment; 1-Complete annulment

)
·Chr ( 6 )It goes into Download
+ Remainder to complete the 32 bytes
---
the Base goes automatically into a Reception mode, receiving the confirmation of the configuration.
·Chr (4)
Send the data of a table
chr (Number Control to which the message will be sent Low Byte )
chr ( Number Control to which the message will be sent High Byte )
chr (Licensing Number Low byte)
chr (Licensing Number High byte)

chr( Number of Dishes)
chr(Table Low byte)
chr(Table High Byte)
chr(Number of People)

for N = 1 to Number of Dishes
chr(Dish Low Byte)
chr(Dish High Byte)
chr(Quantity Low Byte)
chr(Quantity High Byte)
next

·Chr (8)
Send Limits
8 bytes Format:

Low Byte (Inferior limit Licensing)
High Byte (Inferior limit Licensing)
Low Byte (Superior limit Licensing)
High Byte (Superior limit Licensing)

Low Byte (Inferior limit N. Control)
High Byte (Inferior limit N. Control)
Low Byte (Superior limit N. Control)
High Byte (Superior limit N. Control)


The base enters automatically in Reception.

Receive by RS232:

·Chr(®)+Chr(®)

·Chr (Function)
P ask for Number People
A cancel
S subtotal Type Payment
C amount Type Payment + Bill (Y/N)
T transf Table2
G pag_parc
D discount % Discount
R Message Confirmation Answer
·Chr (Number of Control Low Byte)
·Chr (Number of Control High Byte)
·Chr (Licensing Number Low Byte)
·Chr (Licensing Number High Byte)
·Chr (Number of Message Low Byte)
·Chr (Number of Mesage High Byte)
·Chr (Number of Dishes Low Byte)
·Chr (Number of Dishes High Byte)
·Chr (Number of Table Low Byte)
·Chr (Number of Table High Byte)
·Chr (Auxiliary Low Byte)
·Chr (Auxiliary High Byte )

For n=1 to Num. Dishes
·Chr ( Dish Low Byte)
·Chr ( Dish High Byte )
·Chr (Quantity Low Byte )
·Chr (Quantity High Byte )
next


Important

When a control sends a message to a base, if the contol does not receive a confirmation from the base, the control automatically sends the order again.

Concerning the opposite way, it is a little more complicated.

1. The control only accepts messages a few seconds after having sent the order.
2. If the control receives a message, it sends to the base a confirmation ('R' function)
3. If the control does not receive any message, nothing happens. This involves that, if the PC program does not receive any message of confirmation for each of the sent messages, it must repeat the sending in reasonable time intervals.
4. It must be noted that the atmosphere must not be saturated by pressing always 'send'.

Connection with DLL - RIOCOM.DLL



The DLL was programmed using a 32 bits language. Inmediately, all the argumets of int type must be considered a point of 32 bits. The languages that use points of 16 bits must make a functions' prototype using long int instead of int.

All the described functions always return a entire error code.

0 --> OK, succeeded operation
1 --> NO_MESSAGE, there are no messages to read from the buffer
2 --> INVALID_COM_PORT, nonexistent serial port or port already used by another program
3 --> GENERIC_ERROR, generic error
4 --> NO_RESPONSE, the DLL does not obtain any answer from the antenna

int __stdcall radio_set_entry( int entry_no, char *name)

Description :

This function updates the image which the DLL has got about the memory of the radio terminal hardly for a position. This update must be made for all the positions to send using the radio_upload_entries function. (see bellow)


Function



int radio_set_entry(
int entry_no,
char far *name);

Parameters:



entry_no: Position to update
name: Text to save in this position. This can be composed by a maximum of 16 characters.
Positon map:



0

OK


succeeded operation


1

NO_MESSAGE

there are no messages to read from the buffer


2

INVALID_COM_PORT

nonexistent port or port already in use by another program


3

GENERIC_ERROR

generic error


4

NO_RESPONSE

the DLL did not obtain an answer from the antenna









int __stdcall radio_set_entry( int entry_no, char *name)

Description:

This function updates the image that the DLL has about the memory of the radio terminal hardly for a position. This update must be made for all the positions to send by using the function radio_upload_entries. (see bellow)

Function:



int radio_set_entry(
int entry_no,
char far *name);

Parameters:



entry_no: Position to update
name: Text to save in this position. This can be composed by a maximum of 16 characters.
Position map:


0->9

Reserved


10->13

NOT USED


14

"Table"


15

"Dish Quantity"


16

"Sending"


17

NOT USED


18

NOT USED


19

"Number of People" or "PLACE"


20

"Other"


21->27

Name of the "Other" Functions


28->29

"Reserved"


30

Payment Methods


31

"Print Y/N"


32

Warning "?" ( By default )


33->3071

Articles from 1 -> (3071-32)


3072

1 - Order


3073

2 - Cancellation


3074

3 - Subtotal


3075

4 - Amount


3076

5 - Transfer


3077

6 - Partial Payment


3078

7 - Other


3079

8 - Discount


3080

1 - Control


3081

2 - Licensing


3082

3 - Hardware


3083

4 - Configuration


3084

5 – Receive PLU


3085



3086



3087







int __stdcall radio_upload_entry(int first_entry,int last_entry)


Description :



This function sends all the entries (previously entered with radio_set_entry) to the radio terminals. In order to make the terminals receive them, it is necessary to press before 96195 6 when the terminal is on the main menu, in order to set the terminal on the download mode. As an alternative, the terminal can be set on the transference mode sending a message.

This function has not got an error correction. It can hapen that the terminal does not receive all the entries. To avoid this, it can be sent twice.



Function



int radio_upload_entries(
int first_entry,
int last_entry);

Parameters:



first_entry: Fist entry to send.


last_entry: Last entry to send. To send all the entries altered select first_entry = 10 and last_entry = 3079.





int __stdcall radio_init(int com_no,int first_terminal,int last_terminal,int license_no,int data_protocol)

Description:



This function initializes the antenna, making an automatic halting of the version and setting it on the reception of orders mode. This initialization takes a second approximately.


Function:



int radio_init(
int com_no,
int first_terminal,
int last_terminal,
int license_no,
int data_protocol);



Parameters:



com_no: Number of the COM port to wich the antenna is connected.

(Ejemplo: 1 for COM1)



first_terminal:1st radio terminal that this antenna should accept as valid. The terminals only stop sending a message when they receive a confirmation from the antenna. The antenna only confirms messages with the same licensing number of the hardware (see license_no bellow), and with a terminal name between first_terminal and last_terminal, both included.



last_terminal: Last radio terminal that this antenna should accept as valid (see first_terminal)



license_no: Licensing number of the hardware (programmed on the terminals) that the antenna must accept as valid. This value is useful in order to make that the neighbouring establishments which use the same system of radio terminals can use different licensing numbers, avoiding this way conflicts between the messages.


data_protocol: The antennas from version 1 to 5 must use the value 1, the antennas of version 6 and superior can use 2 at this parameter. It allows to receive some more fields.
Antennas version 7 (they whistle 4 times when initiating) can use the protocol 3. With this protocol, the number of the table and the place comes to 32 bits.




int __stdcall radio_close()


Description:



This function releases the serial port and returns the antenna to the mode by default, so it will not receive any more transmission from the radio terminals.

Function



int radio_close( void );



DATA_PROTOCOL 1

int __stdcall radio_send_list(int terminal,int dishes, int table,int No of People,char *list)

This function sends a message to a radio terminal. The terminal, after receiving the message, enters to the edit mode. After editing, a message is sent from the PC with Type='E'.

The List is a string of 4 bytes * No of dishes. It is equivalent to the list that is received when an order is receive.

DATA_PROTOCOL 2
int __stdcall radio_send_list2(int terminal,int dishes, int table,int AuxData,int Place1,int Place2,char *list)
This function sends a message to a radio terminal. The terminal, after receiving the message, enters in the edition mode. After editing, a message is sent from the terminal to the PC with Type='E'.

The list is a string of 4 bytes * Number of dishes. It is equivalent to the list that is received when an order is received.
DATA_PROTOCOL 3
int __stdcall radio_send_list2(int terminal,int dishes, int table,int AuxData,int Place1,int Place2,int *plus,int *qtds)
This function sends a message to the radio terminal. The terminal, after receiving the messsage, enters in the edit mode. After editing, a message is sent from the terminal to the PC with Type='E'.

Plus and Qtds aim at an array of points of 32 bits.






int __stdcall radio_send_message(int terminal,char *msg)


This function sends a text message to a radio terminal. The message can not be longer than 32 characters and it must be entirely composed by international characters. It must be noted that the radio terminal will only receive the message if it is on the main menu, so the sending of the messages must be only done as an answer to an action of the terminal's user.

The DLL is charged to transmit the messages not confirmed by the terminal. This retransmision is made approximately every five seconds. If the terminal does not receive a message in 30 seconds, the DLL will ignore this message. The messages are treated by the arrival order (FIFO). It can be verified if a message was sent by using the radio_send_message_get_status function.



Function:



int radio_send_message(
int terminal,
char far *msg);



Parameters:



terminal: Number of terminal to which the message must be sent.


msg: Indicator for the adress where the message to send is. (Many languages make the automatic conversion of string for this indicator)




int __stdcall radio_message_clear_upload_plus(int terminal)

This function sends a message to the terminal and the terminal waits to receive the PLUS.

int __stdcall radio_message_clear_upload_plus(int terminal)

Equivalent to the previous function but it clears as well all the PLUS.

int __stdcall radio_message_hardware_A(int terminal,int value)

This function sends a message and forms the A option of the terminal with the value.

+1 Light (bit 0)
+2 Receiver (bit 1)
+4 It asks for people (bit 2)
+8 It does not make reset (It does not update the reserved blocks)
+16 It asks for Money Visa
+32 Print (Y/N)
+64 It asks for wastes (Y/N)
+128 0-Partial annulment; 1-Complete annulment



int __stdcall radio_message_hardware_B(int terminal,int value)

This function sends a message and forms the B option of the terminal with the value.

+ Number of retrasnmitters, 0 by default
+8 It does not protect the keyboard
+16 It does not allow to edit directly the plus
+32 Quantity, 0 by default
+64 It sends a message whenever it starts
+128 It asks for place

int __stdcall radio_message_hardware_C(int terminal,int valor)

This function sends a message and forms the C option of the terminal with the value.

+1- When sending the bill ask for the place?
+2- Character font of a bigger size
+4- 8 digits at the table with barcode reading
+8- 8 digits at the place with barcode reading
+16- It allows, in the case of recent software antennas (september 2002) not to have a limit in the number of articles of an order
+32- It veruifies automatically if the value that was written on the payment type and bill type corresponds to the values of tha descriptive text Ex: 1-money 2-visa --> it only accepts 0, 1 or 2
 

int __stdcall radio_message_hardware_ABC(int terminal,int valorA,int valorB,int ValorC)

This function sends a message and forms the option A, B and C of the terminal with the value.



int __stdcall radio_send_get_status(int msg_number)


Parameters:



msg_number: Returned value by the function radio_send_message or radio_send_list




int __stdcall radio_recv3(int *Function,int *Terminal, int *Licensing,int *MsgNumber,int *Dishes,int *Table1,int *Table2, int *AuxData,int *place1,int *place2,int *plus,int *qtds)


Description:

This function verifies if there is any message sent by a terminal in the entry buffer to be read by the program. If there is one, the function copies it to the past variables as parameters.

This function is equivalent to radio_recv , but it is easier to use.
int *plus is an indicator for an array of points of 32 bits.
int *qtds is an indicator for an array of poins of 32 bits.




int __stdcall radio_recv(char *msg)


Description:



This function verifies if there is any message sent by a terminal in the entry buffer to be read by the program. If there is one, the function copies it for msgand returns to OK.



Function:



int radio_recv(
char *msg);



Parameters:



msg: Indicator for thee adress to place the received message.








DATA_PROTOCOL 1

0

1

2

3

4

5

6

7

8

9

10

...



Type

Terminal

Licensing

Order Number

Dishes

Table

Aux

1st Article

1st Quantity

2nd Article

2nd Quantity




1B

2B

2B

2B

2B

2B

2B

2B

2B

2B

2B

















DATA_PROTOCOL 2

0

1

2

3

4

5

6

7

8

9

10




Type

Terminal

Licensing

Order Number

Dishes

Table

Aux

Place 1

Place 2

1st Article

1st Quantity




1B

2B

2B

2B

2B

2B

2B

2B

2B

2B

2B

















DATA_PROTOCOL 3

0

1

2

3

4

5

6

7

8

9

10

11



Type

Terminal

Licensing

Order Number

Dishes

Table

Aux

Place 1

Place 2

Table 1

Table 2

1st
Article



1B

2B

2B

2B

2B

2B

2B

4B

4B

4B

4B

2B



Type: It indicates which is the operation executed on the control. The possible types are:

‘P’ Order
‘A’ Annument
‘S’ Sub-Total
‘C’ Bill
‘T’ Transfer
‘G’ Partial Payment
‘O’ Other
‘D’ Discount
'E' Edited


Terminal: Number of the terminal which sent this transmission.

Licensing number: Licensing number of the terminal which sent the transmission. Besides the antenna, the DLL is charged to drive back messages with the wrong licensing number, so this value can be despised by the program.

Order number: String number of the received message, normally used to drive back repeated messages.

Dishes: It indicates how many detail lines are completed.

Table: It indicates which is the table for what the order was carried out.

Aux: The function of this value depends on the type of message.

DATA_PROTOCOL 2

Place1: Used to indicate the place of a person on the table
Place2: Equivalent, but used in the tables' transference.





Order

Number of People

Bill

Payment Type or ( It prints shl 3 )

Transfer

2nd Table

Discount

% Discount



nºArt: Code of the entered article.


nºQt: Entered quantity

The Emulator with DLL

In order to test the restaurant's program with the emulator, it is necessary to make the base emulator and the terminal emulator work. A test program of the DLL with the emulator is available in Download.



Homepage


Contacts


Download


Connection Manual










Restaurants