× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I'm not sure that the ILE RPG and ILE COBOL manuals really talk about
how to access MI either (at least a scan for 'machine' and 'mi' didn't
bring up anything that looked pertinent at a glance), but if you look
at the various QSYSINC/MIH files you may notice that many unblocked
instructions are #defined from xxxx to _xxxx (that is, MATTOD is
actually known as _MATTOD).  It is these _xxxx which are the MI builtins.

In order to access these from CL then, you would:

             PGM
             DCL        VAR(&TOD) TYPE(*CHAR) LEN(8)
             CALLPRC    PRC('_MATTOD') PARM(&TOD)
             ENDPGM

similiar to how ILE RPG might:

DMatTOD           PR                  EXTPROC('_MATTOD')
D                                8
DReceiver         s              8
C                   callp     MatTOD(Receiver)

Now CL is not what I would consider the most flexible language for MI
access.  The lack of pointer support definitely makes access to alot
of the various instructions difficult (if not impossible without
introducing some other language to construct the pointers) but then CL
has lots of considerations (file update, etc.) that have been pointed
out over the years.  But the basic support for MI access is there.

Bruce

>
>> IBM does not provide a method by which you can create MI modules.
>>
>> As MI can be directly imbedded in ILE C, ILE RPG, ILE COBOL, and even
>> ILE CL I don't believe there is any compelling reason for creating an
>> ILE compiler just in order to generate MI modules
>
>This may be so, but the means to do this are surely well hidden. I just went
>through the CL-manual. No mention of embedded MI anywhere.
>


+---
| This is the MI Programmers Mailing List!
| To submit a new message, send your mail to MI400@midrange.com.
| To subscribe to this list send email to MI400-SUB@midrange.com.
| To unsubscribe from this list send email to MI400-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: dr2@cssas400.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.