msousa@267: #!/bin/sh msousa@267: msousa@267: #/* msousa@267: # * matiec - a compiler for the programming languages defined in IEC 61131-3 msousa@267: # * Copyright (C) 2003-2011 Mario de Sousa (msousa@fe.up.pt) msousa@267: # * msousa@267: # * This program is free software: you can redistribute it and/or modify msousa@267: # * it under the terms of the GNU General Public License as published by msousa@267: # * the Free Software Foundation, either version 3 of the License, or msousa@267: # * (at your option) any later version. msousa@267: # * msousa@267: # * This program is distributed in the hope that it will be useful, msousa@267: # * but WITHOUT ANY WARRANTY; without even the implied warranty of msousa@267: # * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the msousa@267: # * GNU General Public License for more details. msousa@267: # * msousa@267: # * You should have received a copy of the GNU General Public License msousa@267: # * along with this program. If not, see . msousa@267: # * msousa@267: # * msousa@267: # * This code is made available on the understanding that it will not be msousa@267: # * used in safety-critical situations without a full and competent review. msousa@267: # */ msousa@267: # msousa@267: #/* msousa@267: # * An IEC 61131-3 compiler. msousa@267: # * msousa@267: # * Based on the msousa@267: # * FINAL DRAFT - IEC 61131-3, 2nd Ed. (2001-12-10) msousa@267: # * msousa@267: # */ msousa@267: # msousa@267: # msousa@267: # A shell script to create the library header file containing the msousa@267: # standard functions defined in IEC 61131-3 msousa@267: # msousa@267: msousa@267: msousa@267: create() msousa@267: { msousa@267: echo msousa@267: echo msousa@267: echo FUNCTION $1 : $3 msousa@267: echo " "VAR_INPUT IN: $2";" END_VAR msousa@267: echo " "VAR_OUTPUT OUT: $3";" END_VAR msousa@267: echo " "LD TRUE msousa@267: echo END_FUNCTION msousa@267: } msousa@267: msousa@267: msousa@267: msousa@267: msousa@267: echo msousa@267: echo {disable code generation} msousa@267: echo msousa@267: echo msousa@267: msousa@267: create REAL_TO_SINT REAL SINT msousa@267: create REAL_TO_LINT REAL LINT msousa@267: create REAL_TO_DINT REAL DINT msousa@267: create REAL_TO_DATE REAL DATE msousa@267: create REAL_TO_DWORD REAL DWORD msousa@267: create REAL_TO_DT REAL DT msousa@267: create REAL_TO_TOD REAL TOD msousa@267: create REAL_TO_UDINT REAL UDINT msousa@267: create REAL_TO_WORD REAL WORD msousa@267: create REAL_TO_STRING REAL STRING msousa@267: create REAL_TO_LWORD REAL LWORD msousa@267: create REAL_TO_UINT REAL UINT msousa@267: create REAL_TO_LREAL REAL LREAL msousa@267: create REAL_TO_BYTE REAL BYTE msousa@267: create REAL_TO_USINT REAL USINT msousa@267: create REAL_TO_ULINT REAL ULINT msousa@267: create REAL_TO_BOOL REAL BOOL msousa@267: create REAL_TO_TIME REAL TIME msousa@267: create REAL_TO_INT REAL INT msousa@267: create SINT_TO_REAL SINT REAL msousa@267: create SINT_TO_LINT SINT LINT msousa@267: create SINT_TO_DINT SINT DINT msousa@267: create SINT_TO_DATE SINT DATE msousa@267: create SINT_TO_DWORD SINT DWORD msousa@267: create SINT_TO_DT SINT DT msousa@267: create SINT_TO_TOD SINT TOD msousa@267: create SINT_TO_UDINT SINT UDINT msousa@267: create SINT_TO_WORD SINT WORD msousa@267: create SINT_TO_STRING SINT STRING msousa@267: create SINT_TO_LWORD SINT LWORD msousa@267: create SINT_TO_UINT SINT UINT msousa@267: create SINT_TO_LREAL SINT LREAL msousa@267: create SINT_TO_BYTE SINT BYTE msousa@267: create SINT_TO_USINT SINT USINT msousa@267: create SINT_TO_ULINT SINT ULINT msousa@267: create SINT_TO_BOOL SINT BOOL msousa@267: create SINT_TO_TIME SINT TIME msousa@267: create SINT_TO_INT SINT INT msousa@267: create LINT_TO_REAL LINT REAL msousa@267: create LINT_TO_SINT LINT SINT msousa@267: create LINT_TO_DINT LINT DINT msousa@267: create LINT_TO_DATE LINT DATE msousa@267: create LINT_TO_DWORD LINT DWORD msousa@267: create LINT_TO_DT LINT DT msousa@267: create LINT_TO_TOD LINT TOD msousa@267: create LINT_TO_UDINT LINT UDINT msousa@267: create LINT_TO_WORD LINT WORD msousa@267: create LINT_TO_STRING LINT STRING msousa@267: create LINT_TO_LWORD LINT LWORD msousa@267: create LINT_TO_UINT LINT UINT msousa@267: create LINT_TO_LREAL LINT LREAL msousa@267: create LINT_TO_BYTE LINT BYTE msousa@267: create LINT_TO_USINT LINT USINT msousa@267: create LINT_TO_ULINT LINT ULINT msousa@267: create LINT_TO_BOOL LINT BOOL msousa@267: create LINT_TO_TIME LINT TIME msousa@267: create LINT_TO_INT LINT INT msousa@267: create DINT_TO_REAL DINT REAL msousa@267: create DINT_TO_SINT DINT SINT msousa@267: create DINT_TO_LINT DINT LINT msousa@267: create DINT_TO_DATE DINT DATE msousa@267: create DINT_TO_DWORD DINT DWORD msousa@267: create DINT_TO_DT DINT DT msousa@267: create DINT_TO_TOD DINT TOD msousa@267: create DINT_TO_UDINT DINT UDINT msousa@267: create DINT_TO_WORD DINT WORD msousa@267: create DINT_TO_STRING DINT STRING msousa@267: create DINT_TO_LWORD DINT LWORD msousa@267: create DINT_TO_UINT DINT UINT msousa@267: create DINT_TO_LREAL DINT LREAL msousa@267: create DINT_TO_BYTE DINT BYTE msousa@267: create DINT_TO_USINT DINT USINT msousa@267: create DINT_TO_ULINT DINT ULINT msousa@267: create DINT_TO_BOOL DINT BOOL msousa@267: create DINT_TO_TIME DINT TIME msousa@267: create DINT_TO_INT DINT INT msousa@267: create DATE_TO_REAL DATE REAL msousa@267: create DATE_TO_SINT DATE SINT msousa@267: create DATE_TO_LINT DATE LINT msousa@267: create DATE_TO_DINT DATE DINT msousa@267: create DATE_TO_DWORD DATE DWORD msousa@267: create DATE_TO_UDINT DATE UDINT msousa@267: create DATE_TO_WORD DATE WORD msousa@267: create DATE_TO_STRING DATE STRING msousa@267: create DATE_TO_LWORD DATE LWORD msousa@267: create DATE_TO_UINT DATE UINT msousa@267: create DATE_TO_LREAL DATE LREAL msousa@267: create DATE_TO_BYTE DATE BYTE msousa@267: create DATE_TO_USINT DATE USINT msousa@267: create DATE_TO_ULINT DATE ULINT msousa@267: create DATE_TO_INT DATE INT msousa@267: create DWORD_TO_REAL DWORD REAL msousa@267: create DWORD_TO_SINT DWORD SINT msousa@267: create DWORD_TO_LINT DWORD LINT msousa@267: create DWORD_TO_DINT DWORD DINT msousa@267: create DWORD_TO_DATE DWORD DATE msousa@267: create DWORD_TO_DT DWORD DT msousa@267: create DWORD_TO_TOD DWORD TOD msousa@267: create DWORD_TO_UDINT DWORD UDINT msousa@267: create DWORD_TO_WORD DWORD WORD msousa@267: create DWORD_TO_STRING DWORD STRING msousa@267: create DWORD_TO_LWORD DWORD LWORD msousa@267: create DWORD_TO_UINT DWORD UINT msousa@267: create DWORD_TO_LREAL DWORD LREAL msousa@267: create DWORD_TO_BYTE DWORD BYTE msousa@267: create DWORD_TO_USINT DWORD USINT msousa@267: create DWORD_TO_ULINT DWORD ULINT msousa@267: create DWORD_TO_BOOL DWORD BOOL msousa@267: create DWORD_TO_TIME DWORD TIME msousa@267: create DWORD_TO_INT DWORD INT msousa@267: create DT_TO_REAL DT REAL msousa@267: create DT_TO_SINT DT SINT msousa@267: create DT_TO_LINT DT LINT msousa@267: create DT_TO_DINT DT DINT msousa@267: create DT_TO_DWORD DT DWORD msousa@267: create DT_TO_UDINT DT UDINT msousa@267: create DT_TO_WORD DT WORD msousa@267: create DT_TO_STRING DT STRING msousa@267: create DT_TO_LWORD DT LWORD msousa@267: create DT_TO_UINT DT UINT msousa@267: create DT_TO_LREAL DT LREAL msousa@267: create DT_TO_BYTE DT BYTE msousa@267: create DT_TO_USINT DT USINT msousa@267: create DT_TO_ULINT DT ULINT msousa@267: create DT_TO_INT DT INT msousa@267: create TOD_TO_REAL TOD REAL msousa@267: create TOD_TO_SINT TOD SINT msousa@267: create TOD_TO_LINT TOD LINT msousa@267: create TOD_TO_DINT TOD DINT msousa@267: create TOD_TO_DWORD TOD DWORD msousa@267: create TOD_TO_UDINT TOD UDINT msousa@267: create TOD_TO_WORD TOD WORD msousa@267: create TOD_TO_STRING TOD STRING msousa@267: create TOD_TO_LWORD TOD LWORD msousa@267: create TOD_TO_UINT TOD UINT msousa@267: create TOD_TO_LREAL TOD LREAL msousa@267: create TOD_TO_BYTE TOD BYTE msousa@267: create TOD_TO_USINT TOD USINT msousa@267: create TOD_TO_ULINT TOD ULINT msousa@267: create TOD_TO_INT TOD INT msousa@267: create UDINT_TO_REAL UDINT REAL msousa@267: create UDINT_TO_SINT UDINT SINT msousa@267: create UDINT_TO_LINT UDINT LINT msousa@267: create UDINT_TO_DINT UDINT DINT msousa@267: create UDINT_TO_DATE UDINT DATE msousa@267: create UDINT_TO_DWORD UDINT DWORD msousa@267: create UDINT_TO_DT UDINT DT msousa@267: create UDINT_TO_TOD UDINT TOD msousa@267: create UDINT_TO_WORD UDINT WORD msousa@267: create UDINT_TO_STRING UDINT STRING msousa@267: create UDINT_TO_LWORD UDINT LWORD msousa@267: create UDINT_TO_UINT UDINT UINT msousa@267: create UDINT_TO_LREAL UDINT LREAL msousa@267: create UDINT_TO_BYTE UDINT BYTE msousa@267: create UDINT_TO_USINT UDINT USINT msousa@267: create UDINT_TO_ULINT UDINT ULINT msousa@267: create UDINT_TO_BOOL UDINT BOOL msousa@267: create UDINT_TO_TIME UDINT TIME msousa@267: create UDINT_TO_INT UDINT INT msousa@267: create WORD_TO_REAL WORD REAL msousa@267: create WORD_TO_SINT WORD SINT msousa@267: create WORD_TO_LINT WORD LINT msousa@267: create WORD_TO_DINT WORD DINT msousa@267: create WORD_TO_DATE WORD DATE msousa@267: create WORD_TO_DWORD WORD DWORD msousa@267: create WORD_TO_DT WORD DT msousa@267: create WORD_TO_TOD WORD TOD msousa@267: create WORD_TO_UDINT WORD UDINT msousa@267: create WORD_TO_STRING WORD STRING msousa@267: create WORD_TO_LWORD WORD LWORD msousa@267: create WORD_TO_UINT WORD UINT msousa@267: create WORD_TO_LREAL WORD LREAL msousa@267: create WORD_TO_BYTE WORD BYTE msousa@267: create WORD_TO_USINT WORD USINT msousa@267: create WORD_TO_ULINT WORD ULINT msousa@267: create WORD_TO_BOOL WORD BOOL msousa@267: create WORD_TO_TIME WORD TIME msousa@267: create WORD_TO_INT WORD INT msousa@267: create STRING_TO_REAL STRING REAL msousa@267: create STRING_TO_SINT STRING SINT msousa@267: create STRING_TO_LINT STRING LINT msousa@267: create STRING_TO_DINT STRING DINT msousa@267: create STRING_TO_DATE STRING DATE msousa@267: create STRING_TO_DWORD STRING DWORD msousa@267: create STRING_TO_DT STRING DT msousa@267: create STRING_TO_TOD STRING TOD msousa@267: create STRING_TO_UDINT STRING UDINT msousa@267: create STRING_TO_WORD STRING WORD msousa@267: create STRING_TO_LWORD STRING LWORD msousa@267: create STRING_TO_UINT STRING UINT msousa@267: create STRING_TO_LREAL STRING LREAL msousa@267: create STRING_TO_BYTE STRING BYTE msousa@267: create STRING_TO_USINT STRING USINT msousa@267: create STRING_TO_ULINT STRING ULINT msousa@267: create STRING_TO_BOOL STRING BOOL msousa@267: create STRING_TO_TIME STRING TIME msousa@267: create STRING_TO_INT STRING INT msousa@267: create LWORD_TO_REAL LWORD REAL msousa@267: create LWORD_TO_SINT LWORD SINT msousa@267: create LWORD_TO_LINT LWORD LINT msousa@267: create LWORD_TO_DINT LWORD DINT msousa@267: create LWORD_TO_DATE LWORD DATE msousa@267: create LWORD_TO_DWORD LWORD DWORD msousa@267: create LWORD_TO_DT LWORD DT msousa@267: create LWORD_TO_TOD LWORD TOD msousa@267: create LWORD_TO_UDINT LWORD UDINT msousa@267: create LWORD_TO_WORD LWORD WORD msousa@267: create LWORD_TO_STRING LWORD STRING msousa@267: create LWORD_TO_UINT LWORD UINT msousa@267: create LWORD_TO_LREAL LWORD LREAL msousa@267: create LWORD_TO_BYTE LWORD BYTE msousa@267: create LWORD_TO_USINT LWORD USINT msousa@267: create LWORD_TO_ULINT LWORD ULINT msousa@267: create LWORD_TO_BOOL LWORD BOOL msousa@267: create LWORD_TO_TIME LWORD TIME msousa@267: create LWORD_TO_INT LWORD INT msousa@267: create UINT_TO_REAL UINT REAL msousa@267: create UINT_TO_SINT UINT SINT msousa@267: create UINT_TO_LINT UINT LINT msousa@267: create UINT_TO_DINT UINT DINT msousa@267: create UINT_TO_DATE UINT DATE msousa@267: create UINT_TO_DWORD UINT DWORD msousa@267: create UINT_TO_DT UINT DT msousa@267: create UINT_TO_TOD UINT TOD msousa@267: create UINT_TO_UDINT UINT UDINT msousa@267: create UINT_TO_WORD UINT WORD msousa@267: create UINT_TO_STRING UINT STRING msousa@267: create UINT_TO_LWORD UINT LWORD msousa@267: create UINT_TO_LREAL UINT LREAL msousa@267: create UINT_TO_BYTE UINT BYTE msousa@267: create UINT_TO_USINT UINT USINT msousa@267: create UINT_TO_ULINT UINT ULINT msousa@267: create UINT_TO_BOOL UINT BOOL msousa@267: create UINT_TO_TIME UINT TIME msousa@267: create UINT_TO_INT UINT INT msousa@267: create LREAL_TO_REAL LREAL REAL msousa@267: create LREAL_TO_SINT LREAL SINT msousa@267: create LREAL_TO_LINT LREAL LINT msousa@267: create LREAL_TO_DINT LREAL DINT msousa@267: create LREAL_TO_DATE LREAL DATE msousa@267: create LREAL_TO_DWORD LREAL DWORD msousa@267: create LREAL_TO_DT LREAL DT msousa@267: create LREAL_TO_TOD LREAL TOD msousa@267: create LREAL_TO_UDINT LREAL UDINT msousa@267: create LREAL_TO_WORD LREAL WORD msousa@267: create LREAL_TO_STRING LREAL STRING msousa@267: create LREAL_TO_LWORD LREAL LWORD msousa@267: create LREAL_TO_UINT LREAL UINT msousa@267: create LREAL_TO_BYTE LREAL BYTE msousa@267: create LREAL_TO_USINT LREAL USINT msousa@267: create LREAL_TO_ULINT LREAL ULINT msousa@267: create LREAL_TO_BOOL LREAL BOOL msousa@267: create LREAL_TO_TIME LREAL TIME msousa@267: create LREAL_TO_INT LREAL INT msousa@267: create BYTE_TO_REAL BYTE REAL msousa@267: create BYTE_TO_SINT BYTE SINT msousa@267: create BYTE_TO_LINT BYTE LINT msousa@267: create BYTE_TO_DINT BYTE DINT msousa@267: create BYTE_TO_DATE BYTE DATE msousa@267: create BYTE_TO_DWORD BYTE DWORD msousa@267: create BYTE_TO_DT BYTE DT msousa@267: create BYTE_TO_TOD BYTE TOD msousa@267: create BYTE_TO_UDINT BYTE UDINT msousa@267: create BYTE_TO_WORD BYTE WORD msousa@267: create BYTE_TO_STRING BYTE STRING msousa@267: create BYTE_TO_LWORD BYTE LWORD msousa@267: create BYTE_TO_UINT BYTE UINT msousa@267: create BYTE_TO_LREAL BYTE LREAL msousa@267: create BYTE_TO_USINT BYTE USINT msousa@267: create BYTE_TO_ULINT BYTE ULINT msousa@267: create BYTE_TO_BOOL BYTE BOOL msousa@267: create BYTE_TO_TIME BYTE TIME msousa@267: create BYTE_TO_INT BYTE INT msousa@267: create USINT_TO_REAL USINT REAL msousa@267: create USINT_TO_SINT USINT SINT msousa@267: create USINT_TO_LINT USINT LINT msousa@267: create USINT_TO_DINT USINT DINT msousa@267: create USINT_TO_DATE USINT DATE msousa@267: create USINT_TO_DWORD USINT DWORD msousa@267: create USINT_TO_DT USINT DT msousa@267: create USINT_TO_TOD USINT TOD msousa@267: create USINT_TO_UDINT USINT UDINT msousa@267: create USINT_TO_WORD USINT WORD msousa@267: create USINT_TO_STRING USINT STRING msousa@267: create USINT_TO_LWORD USINT LWORD msousa@267: create USINT_TO_UINT USINT UINT msousa@267: create USINT_TO_LREAL USINT LREAL msousa@267: create USINT_TO_BYTE USINT BYTE msousa@267: create USINT_TO_ULINT USINT ULINT msousa@267: create USINT_TO_BOOL USINT BOOL msousa@267: create USINT_TO_TIME USINT TIME msousa@267: create USINT_TO_INT USINT INT msousa@267: create ULINT_TO_REAL ULINT REAL msousa@267: create ULINT_TO_SINT ULINT SINT msousa@267: create ULINT_TO_LINT ULINT LINT msousa@267: create ULINT_TO_DINT ULINT DINT msousa@267: create ULINT_TO_DATE ULINT DATE msousa@267: create ULINT_TO_DWORD ULINT DWORD msousa@267: create ULINT_TO_DT ULINT DT msousa@267: create ULINT_TO_TOD ULINT TOD msousa@267: create ULINT_TO_UDINT ULINT UDINT msousa@267: create ULINT_TO_WORD ULINT WORD msousa@267: create ULINT_TO_STRING ULINT STRING msousa@267: create ULINT_TO_LWORD ULINT LWORD msousa@267: create ULINT_TO_UINT ULINT UINT msousa@267: create ULINT_TO_LREAL ULINT LREAL msousa@267: create ULINT_TO_BYTE ULINT BYTE msousa@267: create ULINT_TO_USINT ULINT USINT msousa@267: create ULINT_TO_BOOL ULINT BOOL msousa@267: create ULINT_TO_TIME ULINT TIME msousa@267: create ULINT_TO_INT ULINT INT msousa@267: create BOOL_TO_REAL BOOL REAL msousa@267: create BOOL_TO_SINT BOOL SINT msousa@267: create BOOL_TO_LINT BOOL LINT msousa@267: create BOOL_TO_DINT BOOL DINT msousa@267: create BOOL_TO_DATE BOOL DATE msousa@267: create BOOL_TO_DWORD BOOL DWORD msousa@267: create BOOL_TO_DT BOOL DT msousa@267: create BOOL_TO_TOD BOOL TOD msousa@267: create BOOL_TO_UDINT BOOL UDINT msousa@267: create BOOL_TO_WORD BOOL WORD msousa@267: create BOOL_TO_STRING BOOL STRING msousa@267: create BOOL_TO_LWORD BOOL LWORD msousa@267: create BOOL_TO_UINT BOOL UINT msousa@267: create BOOL_TO_LREAL BOOL LREAL msousa@267: create BOOL_TO_BYTE BOOL BYTE msousa@267: create BOOL_TO_USINT BOOL USINT msousa@267: create BOOL_TO_ULINT BOOL ULINT msousa@267: create BOOL_TO_TIME BOOL TIME msousa@267: create BOOL_TO_INT BOOL INT msousa@267: create TIME_TO_REAL TIME REAL msousa@267: create TIME_TO_SINT TIME SINT msousa@267: create TIME_TO_LINT TIME LINT msousa@267: create TIME_TO_DINT TIME DINT msousa@267: create TIME_TO_DWORD TIME DWORD msousa@267: create TIME_TO_UDINT TIME UDINT msousa@267: create TIME_TO_WORD TIME WORD msousa@267: create TIME_TO_STRING TIME STRING msousa@267: create TIME_TO_LWORD TIME LWORD msousa@267: create TIME_TO_UINT TIME UINT msousa@267: create TIME_TO_LREAL TIME LREAL msousa@267: create TIME_TO_BYTE TIME BYTE msousa@267: create TIME_TO_USINT TIME USINT msousa@267: create TIME_TO_ULINT TIME ULINT msousa@267: create TIME_TO_INT TIME INT msousa@267: create INT_TO_REAL INT REAL msousa@267: create INT_TO_SINT INT SINT msousa@267: create INT_TO_LINT INT LINT msousa@267: create INT_TO_DINT INT DINT msousa@267: create INT_TO_DATE INT DATE msousa@267: create INT_TO_DWORD INT DWORD msousa@267: create INT_TO_DT INT DT msousa@267: create INT_TO_TOD INT TOD msousa@267: create INT_TO_UDINT INT UDINT msousa@267: create INT_TO_WORD INT WORD msousa@267: create INT_TO_STRING INT STRING msousa@267: create INT_TO_LWORD INT LWORD msousa@267: create INT_TO_UINT INT UINT msousa@267: create INT_TO_LREAL INT LREAL msousa@267: create INT_TO_BYTE INT BYTE msousa@267: create INT_TO_USINT INT USINT msousa@267: create INT_TO_ULINT INT ULINT msousa@267: create INT_TO_BOOL INT BOOL msousa@267: create INT_TO_TIME INT TIME msousa@267: msousa@267: create DATE_AND_TIME_TO_TIME_OF_DAY DATE_AND_TIME TIME_OF_DAY msousa@267: create DATE_AND_TIME_TO_DATE DATE_AND_TIME DATE msousa@267: msousa@267: echo msousa@267: echo msousa@267: echo "(* *BCD_TO_** and **_TO_BCD* are not yet supported *)" msousa@267: echo "(* We comment them out for now... *)" msousa@267: echo "(*" msousa@267: create UDINT_TO_BCD_BYTE UDINT BYTE msousa@267: create UDINT_TO_BCD_WORD UDINT WORD msousa@267: create UDINT_TO_BCD_DWORD UDINT DWORD msousa@267: create UDINT_TO_BCD_LWORD UDINT LWORD msousa@267: create UINT_TO_BCD_BYTE UINT BYTE msousa@267: create UINT_TO_BCD_WORD UINT WORD msousa@267: create UINT_TO_BCD_DWORD UINT DWORD msousa@267: create UINT_TO_BCD_LWORD UINT LWORD msousa@267: create USINT_TO_BCD_BYTE USINT BYTE msousa@267: create USINT_TO_BCD_WORD USINT WORD msousa@267: create USINT_TO_BCD_DWORD USINT DWORD msousa@267: create USINT_TO_BCD_LWORD USINT LWORD msousa@267: create ULINT_TO_BCD_BYTE ULINT BYTE msousa@267: create ULINT_TO_BCD_WORD ULINT WORD msousa@267: create ULINT_TO_BCD_DWORD ULINT DWORD msousa@267: create ULINT_TO_BCD_LWORD ULINT LWORD msousa@267: msousa@267: create BYTE_BCD_TO_UDINT BYTE UDINT msousa@267: create WORD_BCD_TO_UDINT WORD UDINT msousa@267: create DWORD_BCD_TO_UDINT DWORD UDINT msousa@267: create LWORD_BCD_TO_UDINT LWORD UDINT msousa@267: create BYTE_BCD_TO_UINT BYTE UINT msousa@267: create WORD_BCD_TO_UINT WORD UINT msousa@267: create DWORD_BCD_TO_UINT DWORD UINT msousa@267: create LWORD_BCD_TO_UINT LWORD UINT msousa@267: create BYTE_BCD_TO_USINT BYTE USINT msousa@267: create WORD_BCD_TO_USINT WORD USINT msousa@267: create DWORD_BCD_TO_USINT DWORD USINT msousa@267: create LWORD_BCD_TO_USINT LWORD USINT msousa@267: create BYTE_BCD_TO_ULINT BYTE ULINT msousa@267: create WORD_BCD_TO_ULINT WORD ULINT msousa@267: create DWORD_BCD_TO_ULINT DWORD ULINT msousa@267: create LWORD_BCD_TO_ULINT LWORD ULINT msousa@267: echo "*)" msousa@267: msousa@267: msousa@267: echo msousa@269: echo {enable code generation} msousa@267: msousa@267: exit 0 msousa@267: msousa@267: ABS msousa@267: SQRT msousa@267: LN msousa@267: LOG msousa@267: EXP msousa@267: SIN msousa@267: COS msousa@267: TAN msousa@267: ASIN msousa@267: ACOS msousa@267: ATAN msousa@267: ADD msousa@267: MUL msousa@267: SUB msousa@267: DIV msousa@267: MOD msousa@267: EXPT msousa@267: MOVE msousa@267: SHL msousa@267: SHR msousa@267: ROR msousa@267: ROL msousa@267: AND msousa@267: OR msousa@267: XOR msousa@267: NOT msousa@267: SEL msousa@267: MAX msousa@267: MIN msousa@267: LIMIT msousa@267: MUX msousa@267: GT msousa@267: GE msousa@267: EQ msousa@267: LT msousa@267: LE msousa@267: NE msousa@267: LEN msousa@267: LEFT msousa@267: RIGHT msousa@267: MID msousa@267: CONCAT msousa@267: INSERT msousa@267: DELETE msousa@267: REPLACE msousa@267: FIND msousa@267: msousa@267: TRUNC msousa@267: msousa@267: msousa@267: msousa@267: msousa@267: msousa@267: msousa@267: msousa@267: