Blog Home

Getting started with BASE24. Compiling your first TAL program

Posted on 7th Jun 2017 1134 views

To compile execute:

TAL /IN NAME_OF_THE_SOURCE/ PROGRAM_NAME 


TAL
this calls the TAL compiler on your machine giving the parameters
/IN
followed by the name of the input file to compile
NAME_OF_THE_SOURCE/
the source file
PROGRAM_NAME
the name of the object to compile to

 


[break]

$NEAPAY TRAINING 30> tal /in prog101/ prog101o
 TAL - T9250H01 - (01MAY200
 Copyright Tandem Computers Incorporated 1976, 1978, 1981-83, 1985, 1987-97

     1.    000000 0  0   ?NOCODE, inspect, symbols
     2.    000000 0  0   
     3.    000000 0  0   ?NOLIST, source $system.system.extdecs0(
    11.    000000 0  0   
    12.    000000 0  0   literal maxlen = 256;
    13.    000000 0  0   
    14.    000000 0  0   proc startup_proc(rucb, passthru, message, msglen, matc
h) variable;
    15.    000000 1  0   int .rucb, .passthru, .message, msglen, match;
    16.    000000 1  0       begin
    17.    000000 1  1       end;

MATCH                            Variable       INT            
                                 Direct         L-004
MESSAGE                          Variable       INT            
                                 Indirect       L-006
MSGLEN                           Variable       INT            
                                 Direct         L-005
PASSTHRU                         Variable       INT            
                                 Indirect       L-007
RUCB                             Variable       INT            
                                 Indirect       L-010

    18.    000000 0  0   
    19.    000000 0  0   proc param_proc(rucb, passthru, message, msglen, match)
 variable;
    20.    000000 1  0   int .rucb, .passthru, .message, msglen, match;
    21.    000000 1  0       begin
    22.    000000 1  1       end;

MATCH                            Variable       INT            
                                 Direct         L-004
MESSAGE                          Variable       INT            
                                 Indirect       L-006
MSGLEN                           Variable       INT            
                                 Direct         L-005
PASSTHRU                         Variable       INT            
                                 Indirect       L-007
RUCB                             Variable       INT            
                                 Indirect       L-010

    23.    000000 0  0   
    24.    000000 0  0   proc assign_proc(rucb, passthru, message, msglen, match
) variable;
    25.    000000 1  0   int .rucb, .passthru, .message, msglen, match;
    26.    000000 1  0       begin
    27.    000000 1  1       end;

MATCH                            Variable       INT            
                                 Direct         L-004
MESSAGE                          Variable       INT            
                                 Indirect       L-006
MSGLEN                           Variable       INT            
                                 Direct         L-005
PASSTHRU                         Variable       INT            
                                 Indirect       L-007
RUCB                             Variable       INT            
                                 Indirect       L-010

    28.    000000 0  0   
    29.    000000 0  0   proc hello_w main;
    30.    000000 1  0       begin
    31.    000000 1  1       int term_length, termnum, count;
    32.    000000 1  1       string .terminal_name[0:maxlen - 1], .sbuffer[0:max
len - 1];
    33.    000000 1  1   
    34.    000000 1  1       call initializer(,, startup_proc, param_proc, assig
n_proc,,);
    35.    000040 1  1       call process_getinfo_(,,,,, terminal_name:maxlen, t
erm_length);
    36.    000057 1  1       call file_open_(terminal_name:term_length, termnum)
;
    37.    000074 1  1       sbuffer ':=' "Hello world!";
    38.    000104 1  1       count := 12;
    39.    000106 1  1       call writex(termnum, sbuffer, count);
    40.    000120 1  1       call file_close_(termnum);
    41.    000127 1  1       end;

COUNT                            Variable       INT            
                                 Direct         L+003
SBUFFER                          Variable       STRING         
                                 Indirect       L+005
TERMINAL_NAME                    Variable       STRING         
                                 Indirect       L+004
TERMNUM                          Variable       INT            
                                 Direct         L+002
TERM_LENGTH                      Variable       INT            
                                 Direct         L+001

ASSIGN_PROC                      Proc                          
                                 %000000    
FILE_CLOSE_                      Proc           INT            
                                 External
FILE_OPEN_                       Proc           INT            
                                 External
HELLO_W                          Proc                          
                                 %000000    
INITIALIZER                      Proc           INT            
                                 External
MAXLEN                           Literal        INT            
                                 %000400    
PARAM_PROC                       Proc                          
                                 %000000    
PROCESS_GETINFO_                 Proc           INT            
                                 External
STARTUP_PROC                     Proc                          
                                 %000000    
WRITEX                           Proc                          
                                 External

ENTRY POINT MAP BY NAME FOR FILE: TANDEM.$NEAPAY.TRAINING.PROG101O
 
SP  PEP BASE   LIMIT  ENTRY  ATTRS   NAME                               
                 DATE      TIME  LANGUAGE SOURCE FILE
 
00  004 000010 000010 000010 V       ASSIGN_PROC                        
                2017-06-07 14:08 TAL      TANDEM.$NEAPAY.TRAINING.PROG101
00  005 000011 000150 000011 M       HELLO_W                            
                2017-06-07 14:08 TAL      TANDEM.$NEAPAY.TRAINING.PROG101
00  003 000007 000007 000007 V       PARAM_PROC                         
                2017-06-07 14:08 TAL      TANDEM.$NEAPAY.TRAINING.PROG101
00  002 000006 000006 000006 V       STARTUP_PROC                       
                2017-06-07 14:08 TAL      TANDEM.$NEAPAY.TRAINING.PROG101
DATA BLOCK MAP BY NAME FOR FILE: TANDEM.$NEAPAY.TRAINING.PROG101O
 
 BASE   LIMIT  TYPE    MODE    NAME                               
                 DATE      TIME  LANGUAGE  SOURCE FILE
 
 000000        COMMON  WORD    #GLOBAL                            
                2017-06-07 14:08 TAL       TANDEM.$NEAPAY.TRAINING.PROG101
BINDER - OBJECT FILE BINDER - T9621H01   SYSTEM TANDEM
Copyright Compaq Computers Corporation, 1988-2002 
 
Object file TANDEM.$NEAPAY.TRAINING.PROG101O
TIMESTAMP  2017-06-07 14:08:23 
 
         1  Code page
 
         1  Data page
         0  Resident code pages
         0  Extended data pages
 
         0  Top of stack location in words
         1  Code segment
 
         0  Binder Warnings
         0  Binder Errors
 

TAL - Transaction Application Language - T9250H01 - (01MAY200
Number of compiler errors =  0  
Number of unsuppressed compiler warnings =  0  
Number of warnings suppressed by NOWARN =  0  
Maximum symbol table space used was = 21466 bytes
Number of source lines = 11130
Compile cpu time = 00:00:00 
Total Elapsed time = 00:00:00 

$NEAPAY TRAINING 29>


LinkedIn

Top Read Articles


Read smart card chip data with APDU commands ISO 7816 13284 views

Deploy, run and generate with neaPay Card Data Generator 7755 views

Run the neaPay ISO8583 simulator 6814 views

ISO8583 payments message format, programmers guide 6375 views

ISO8583 Message Converter JSON and XML interface specification mapping 4765 views

ISO8583 message: The list of ISO 4217 currency codes for data elements 49 and 52 4258 views

Deploy the neaPay ISO8583 simulator - video guide 4155 views

MCC Codes - Merchant Category Codes to use in ISO8583 Field 18 3350 views

Create a new test case in the neaPay ISO8583 simulator Video guide 3191 views

Asking for defects support for the neaPay products: converter, switch, issuer, simulator 2556 views

Log Files in BASE24 classic 2449 views

Performance testing at 500, 1000 and 1500 TPS 2420 views

Connect the neaPay ISO8583 Acquirer simulator to your own host or Issuer 2292 views

BIN List & Range for MasterCard, Visa, Amex, Diners, Discover, JCB, CUP 2244 views

Sample Recommended design for an Acquirer test cases suite, Scenarios and Regression 2133 views

BASE24 documentation to read 2101 views

BASE24 classic vs BASE24-eps 2082 views

Card readers supported by neaPay payments simulator, CHIP and NFC 2068 views

Regression Testing in 1 click with instant Analytics and CSV report 2053 views

BASE24 classic interview questions 1955 views

Load Test enabling and performance testing at 1TPS and 100TPS 1907 views

Run the neaPay ISO8583 converter to JSON, XML, SQL, in a test environment 1850 views

Adding your own card to the Payments simulator to test your system 1740 views

BASE24 classic screens examples explained 1738 views

Changing fields definitions in the ISO8583 simulator and message converter 1703 views

How the fingerprint reader works in the ISO8583 payments simulator 1692 views

Deploy the neaPay ISO8583 Payments converter in a test environment 1660 views

Enabling traces in the payments simulator 1621 views

Altering test cases in Excel for the ISO8583 simulator 1565 views

Run One, Run Scenario, Run All, Run Load in the neaPay ISO8583 Simulator - Use guide 1563 views

BASE24 classic ATM configuration Tutorial in ATD and XPNET with examples 1469 views

Cards and Banks Training 1360 views

EMV explained for programmers 1332 views

BASE24 classic cards configuration tutorial with Examples 1282 views

BASE24-eps interview questions 1267 views

Deploy the neaPay HSM simulator in a test environment 1266 views

Getting started with BASE24. Compiling your first TAL program 1135 views

BASE24-EPS ACI DESKTOP tutorial - Getting started 1112 views

BASE24 classic prefix configuration tutorial CPF with examples 1055 views

BASE24 classic tracing of transactions. Audits, configuration, enabling and opening 1032 views

BASE24 classic Institution configuration Tutorial with example 938 views

BASE24 classic balance file configuration PBF with example 865 views

ACI BASE24 classic automatic extract configuration 864 views

ISO8583 converter to JSON XML SQL to HTTP host - start& run - video guide - Part.1 857 views

ISO8583 converter to JSON XML SQL to HTTP host - message flow - video guide - Part.2 857 views

ISO8583 converter to JSON XML SQL to HTTP Host - host unavailable - video guide- Part.3 856 views

BASE24 classic interchange configuration with examples 849 views

Base24-eps how to create journals with esbldjnl 831 views

Deploy the Payments Switch Router in a test environment 724 views

Getting started with Base24 development. TAL tutorial 700 views

BASE24 classic routing in IDF 695 views

BASE24 classic External Message File configuration EMF with examples 655 views

Working with Base24-eps vs BASE24 Classic 637 views

BASE24 classic host configuration tutorial HCF with examples 576 views

What to expect when installing Base24-eps 568 views

Managing BASE24-eps implementation projects 565 views

First steps with BASE24 Classic 563 views

Getting started with using Prognosis for BASE24 and BASE24-eps 557 views

ISO8583 Response Codes for Transaction processing 214 views

Add extra custom fields to the ISO8583 simulator 168 views

ISO8583 Processing Codes for Transaction Processing 147 views

ISO8583 Message Types for Transaction Processing 134 views

Ask a question, get advice and help

   

Read related articles - Iso8583


Are you ready to start or need help?


Ready to start your next project with us? Give us a call or send us an email and we will get back to you as soon as possible!

Get a free quote, Ask for details, Get guidance


Contact us

Download and Use the software yourself


Download software

Follow a getting started guide to deploy and use the software


Get started