Here is my Procomm Plus script for M3904 sets.
; 20th Jan 2004
; ATA.was Script to program in ANALOGUE TERMINAL ADAPTOR'S on Digital sets
; For use on Digital sets (With counter)
; NOTE!
; This program will only work with a WINDOWS version of Procomm Plus.
; Capture the data in a "*.TXT" Format such as e.g. "SETS.TXT"
; It's best to save this file in "C:\TEMP" ; ##(Change the path if reqd!)
; Access LD 11.
; Make sure that the first line in the source file contains the start of the
; extn sets data!.
; This program file should remain unaltered & only copies made from it for whatever
; use is required. P.S. I suggest that you make it a "READ ONLY" file. & store it on
; your P.C's "C:\" HARD DRIVE.
; The " ; " denotes that the data on the program file line is ignored,
; when the script is run.
; There will be a % counter running on the bottom left hand side showing the
; progress of the script with number of changes left to do
STRING S_TIME
INTEGER LEN=0
INTEGER CUT_OFF=0
INTEGER EVENT
LONG COUNT=0
LONG TOTAL=0
LONG PERCENT=0
LONG BIT
STRING OPDATA
STRING OPDATA_A
STRING OPDATA_B
STRING OPDATA_C
STRING OPDATA_D
STRING readfile
STRING DIRECTORY
PROC MAIN
dialogbox 0 236 63 205 200 2 "ANALOGUE TERMINAL ADAPTOR"
dirpath 1 2 14 198 11 Directory
dirlistbox 2 2 29 201 140 "C:\PROGRAM FILES\PROCOMM PLUS\CAPTURE\*.*" SINGLE readfile 1 SORT
pushbutton 3 110 173 40 13 "OK" OK DEFAULT
pushbutton 4 55 173 40 13 "Cancel"
text 5 2 1 61 11 "Select READ file" left
enddialog
while 1
dlgevent 0 event
switch event
case 0
endcase
case 1
endcase
case 3
exitwhile
endcase
case 4
exit
endcase
endswitch
endwhile
FOPEN 1 readfile read TEXT ; *****************CHANGE IF NECESSARY
WHILE NOT FEOF 1
FGETS 1 OPDATA
STRLEN OPDATA LEN
IF LEN<3
EXITWHILE
ENDIF
TOTAL=TOTAL+1
ENDWHILE
call counter
REWIND 1
WHILE NOT fEOF 1
FGETS 1 OPDATA
STRLEN OPDATA LEN
IF LEN<3
EXITWHILE
ENDIF
WHEN TARGET 1 "ERR3056" CALL CUTOFF
WHEN TARGET 2 "CTYP" CALL CTYP
WHEN TARGET 3 "KBA" CALL CTYP
WHEN TARGET 4 "DBA" CALL CTYP
WHEN TARGET 5 "MLNG" CALL CTYP
SUBSTR OPDATA_A OPDATA 5 11 ; TN
SUBSTR OPDATA_B OPDATA 34 4 ; DN
SUBSTR OPDATA_C OPDATA 22 3 ; ***** CHANGE (START - STOP CHAR)?
SUBSTR OPDATA_D OPDATA 50 LEN ; ***** CHANGE (START - STOP CHAR)?
TRANSMIT "NEW^M"
WAITFOR "TYPE"
TRANSMIT "3904"
TRANSMIT "^M"
WAITFOR "TN"
TRANSMIT OPDATA_A
TRANSMIT "^M"
WAITFOR "DES"
IF SUCCESS
TRANSMIT "ATA"
TRANSMIT "^M"
; WAITFOR "CTYP"

ONLY FOR FIRST PORT ON CARD
; TRANSMIT "^M"
; WAITFOR "KBA"

; TRANSMIT "^M"

REQUIRED FOR 3904
; WAITFOR "DBA"
; transmit "^M"
WAITFOR "FDN"
transmit "^M"
WAITFOR "TGAR"
transmit "^M"
WAITFOR "LDN"
transmit "^M"
WAITFOR "NCOS"
transmit "^M"
WAITFOR "RNPG"
transmit "^M"
WAITFOR "SSU"
transmit "^M"
WAITFOR "SCPW"
transmit "^M"
WAITFOR "SGRP"
transmit "^M"
WAITFOR "SFLT"
transmit "^M"
WAITFOR "CAC_MFC"
transmit "^M"
WAITFOR "CLS"
transmit "FLXA VCE^M"
WAITFOR "HUNT"
transmit "^M"
WAITFOR "SCI"
transmit "^M"
WAITFOR "PLEV"
transmit "0^M"
WAITFOR "AST"
transmit "^M"
WAITFOR "IAPG"
transmit "^M"
WAITFOR "MLWU_LANG"
transmit "^M"
; WAITFOR "MLNG" ; USED FOR RELEASE 25.40 +
; transmit "^M"
WAITFOR "DNDR"
transmit "^M"
WAITFOR "DTMK"
transmit "^M"
; WAITFOR "CAC_MFC"
; transmit "^M"
WAITFOR "KEY"
transmit "00 SCR "
TRANSMIT OPDATA_B
TRANSMIT "^M"
WAITFOR "CPND"
transmit "^M"
WAITFOR "VMB"
transmit "^M"
WAITFOR "KEY"
TRANSMIT "^M"
waitfor "REQ"
ELSE
call error
USERMSG "Script failed, due to a bad source file or connection!"
exit
endif
count=count+1
CALL COUNTER
ENDWHILE
FCLOSE 1
USERMSG "Provision of Analogue Terminal Adaptors completed"
ENDPROC
PROC COUNTER
BIT=COUNT*100
PERCENT=BIT/TOTAL
STATMSG "%i of %i - %i %% Done - Start Time: %s" COUNT TOTAL PERCENT S_Time
ENDPROC
PROC CUTOFF
CUT_OFF=CUT_OFF+1
ENDPROC
PROC CTYP
TRANSMIT "^M"
ENDPROC
PROC ERROR
USERMSG "Script failed, due to a bad source file or connection!"
exit
ENDPROC
All the best
Firebird Scrambler
Meridian Programmer in the UK
Useful Nortel forum at
If it's working, then leave it alone!.