• STRANGE COMPILER ERROR PROSPERO FORTRAN CP/M-80

    From plore90@gmail.com@21:1/5 to All on Mon Mar 6 16:15:39 2023
    Hi all, I installed the Vdos emulator on my pc (Windows 10 pro 64b) and the Z80EMU emulator inside Vdos to have a CP/M-80 environment. It all works fine. I then created a directory C:\PROSPERO in Z80EMU and copied all the Prospero PRO Fortran v. compiler
    files. zz 1.2 (cp/m-80 version). I tried compiling various .FOR sources and everything worked fine. I then created a simple COMPLEX.FOR program where I defined 3 variables A, B, Z of type complex and then I made the simple sum Z=A+B and then printed the
    result. When I launch the PROFOR compiler COMPLEX.FOR appears after Pass 1 without errors, Pass2 which gives me "Error C at address 1D5F" Continue Y/N?. This happens only if in the program there are arithmetic operations (+,-,*,/) between complex
    variables, if in the program operations of addition, subtraction, multiplication or division are not performed between complex variables, but all the other mathematical operations and trigronometric functions on complex variables everything compiles fine.
    The error appears only if there are basic arithmetic operations. Any help and suggestion is welcome from all.
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    Z = (0.0, 0.0)
    A = (3.5, 3.5)
    B = (4.0, 5.0)
    Z = B + A
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Nils M Holm@21:1/5 to plo...@gmail.com on Tue Mar 7 10:26:08 2023
    plo...@gmail.com <plore90@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)

    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From plore90@gmail.com@21:1/5 to All on Wed Mar 8 01:23:20 2023
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact... It is
    very strange.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?0JDQvdC00YDQtdC5INCd0LjQu@21:1/5 to All on Sat Mar 11 11:39:12 2023
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact... It is
    very strange.


    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From plore90@gmail.com@21:1/5 to All on Tue Mar 14 17:23:51 2023
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact... It
    is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From plore90@gmail.com@21:1/5 to All on Tue Mar 14 17:22:04 2023
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact... It
    is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?0JDQvdC00YDQtdC5INCd0LjQu@21:1/5 to All on Wed Mar 15 06:12:54 2023
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact... It
    is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing

    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem in some
    other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 16 04:22:39 2023
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact...
    It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem in
    some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 16 07:32:43 2023
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact...
    It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem in
    some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.FOR source
    generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints , it doesn't
    calculate the sum... very strange...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to All on Thu Mar 16 10:06:50 2023
    On Wednesday, March 15, 2023 at 9:12:57 AM UTC-4, Андрей Никитин wrote:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact...
    It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem in
    some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Andrey

    Played with this: (on CP/M emulator -- haven't tried on "real" CP/M 2.2 yet):

    : fred@llana prospero $; cpm profor

    Pro Fortran Compiler - Version zz 1.2
    Copyright (C) 1983 Prospero Software
    Serial No: 63

    Source filename - maze.for

    Source listing ? (Y/N/.) Y
    Map ? (Y/N/.) Y
    Compact object code ? (Y/N/.) N
    Restricted-width integer arithmetic ? (Y/N/.) N
    Maintain source line numbers at run time ? (Y/N/.) Y
    Range checks on subscripts ? (Y/N/.) N
    Range checks on assignments ? (Y/N/.) N
    Hold before .REL output ? (Y/N/.) Y
    Accept only ANSI Standard Fortran ? (Y/N/.) N
    Console output to .LOG file ? (Y/N/.) Y

    NOTE: looks like just running the profor.com without command line arguments prompts for arguments.

    Pass 1

    Unit MAZE
    17726 bytes free at end

    Pass 2

    Holding for REL - press any key to continue


    Unit: Code: Data:

    MAZE 3372 1385

    Total source lines: 226

    23378 bytes free at end

    NOTE: Two compile passes! Yeah us!

    : fred@llana prospero $; dir
    copytx.for forlib.rel maze.for maze.prn profor2.com prolib.com fcheck.com g1lib.mac maze.log maze.rel profor.com prolink.com fconfig.com g2lib.mac maze.map prime.for profor.err read.me

    NOTE: and we see maze.log, maze.map maze.prn and maze.rel have been generated. If we display maze.log:

    : fred@llana prospero $; cat maze.log

    Options: LMNHG

    Pass 1

    Unit MAZE
    17726 bytes free at end

    Pass 2

    Holding for REL - press any key to continue

    Unit: Code: Data:

    MAZE 3372 1385

    Total source lines: 226

    23378 bytes free at end
    �: fred@llana prospero $;

    NOTE: We see that the compiler likely supports LMNHG switches.
    Most likely one letter for each question... by running 10 times we could find out which switch is for each question!

    NOTE: Now, we link. The compiler supports MAC files, so Microsoft M80, and comes with FORLIB.REL (not the same as Microsoft FORLIB.REL). So, I decided to try to link with L80:
    : fred@llana prospero $; l80

    Link-80 3.44 09-Dec-81 Copyright (c) 1981 Microsoft

    *maze
    Data 0103 1398 < 4757>

    -$BMUL 095B -$DENT 06AC -$DEXI 06D5
    -$DIN 06DE -$DSLIN 1394 -$EFMT 1383
    -$EIRF 08BE -$EIWF 1386 -$ERFI1 08C5
    -$ETRF 08C8 -$ETWF 1389 -$EUNIT 137C
    -$EWFR 1339 -$GCGT 0E61 -$GINIT 06DB
    -$HBNG 0BF7 -$HBPS 069A -$HBZR 12A9
    -$HINVS 136D -$HST4T 12F1 -$LDEC 0B8E
    -$LINC 1027 -$RFLT 06C6 -$RMUL 06C9
    -$TRUNC 06CE -$WWMUL 1295 -RANDOM 06BA
    27 Undefined Global(s)
    48837 Bytes Free

    *forlib/s

    *maze/n/e

    Data 0103 3248 <12613>

    39888 Bytes Free
    [06D7 3248 50]

    NOTE: And we end up with MAZE.COM!!! Yeah us!

    NOTE: And, the COM file is runnable:

    : fred@llana prospero $; cpm maze


    THIS PROGRAM WILL PRINT OUT A DIFFERENT MAZE EVERY TIME IT
    IS RUN AND GUARANTEES ONLY ONE PATH THROUGH. YOU CAN
    CHOOSE THE DIMENSIONS OF THE MAZE, I.E. THE NUMBER OF
    SQUARES LONG AND THE NUMBER OF SQUARES WIDE.
    A 25 BY 25 MAZE IS THE MAXIMUM, AND ANY DIMENSIONS UP TO
    THESE LIMITS ARE O.K.

    LENGTH: 10
    ...SNIP...

    Notes: The PRN (listing) file correlates line number with object code address -- useful if
    we want the code productions. The MAP file produces a variable map - name/kind/type/offset
    These could be very useful if debugging.

    Questions:

    1 - Can Prospero be linked with Microsoft FORLIB.REL? If this is done, what is the result?
    2 - Related to (1), Microsoft never supported COMPLEX, could this be the root of the problem?
    3 - I do not see names for compiler aid functions that make sense (from a Microsoft perspective.
    This leads me to think that Microsoft FORLIB.REL and Prospero FORLIB.REL are not compatible.
    4 - From file PROFOR.ERR, we see:

    223Illegal type mixture with COMPLEX
    224COMPLEX expression in arithmetic IF
    225COMPLEX operand in relational expression
    234DATA: illegal occurrence of COMPLEX type
    236Assignment: illegal use of COMPLEX type
    320Error in COMPLEX constant

    So,COMPLEX support appears somewhat special (error 223). *When/If* I get time, I will scratch further
    (Note that I am not bothering with PROLINK or PROLIB)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?0JDQvdC00YDQtdC5INCd0LjQu@21:1/5 to All on Thu Mar 16 11:09:23 2023
    четверг, 16 марта 2023 г. в 20:06:52 UTC+3, fridtjof.ma...@gmail.com:
    On Wednesday, March 15, 2023 at 9:12:57 AM UTC-4, Андрей Никитин wrote:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact...
    It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem in
    some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Andrey

    Played with this: (on CP/M emulator -- haven't tried on "real" CP/M 2.2 yet):

    : fred@llana prospero $; cpm profor

    Pro Fortran Compiler - Version zz 1.2
    Copyright (C) 1983 Prospero Software
    Serial No: 63

    Source filename - maze.for

    Source listing ? (Y/N/.) Y
    Map ? (Y/N/.) Y
    Compact object code ? (Y/N/.) N
    Restricted-width integer arithmetic ? (Y/N/.) N
    Maintain source line numbers at run time ? (Y/N/.) Y
    Range checks on subscripts ? (Y/N/.) N
    Range checks on assignments ? (Y/N/.) N
    Hold before .REL output ? (Y/N/.) Y
    Accept only ANSI Standard Fortran ? (Y/N/.) N
    Console output to .LOG file ? (Y/N/.) Y

    NOTE: looks like just running the profor.com without command line arguments prompts for arguments.

    Pass 1

    Unit MAZE
    17726 bytes free at end

    Pass 2

    Holding for REL - press any key to continue


    Unit: Code: Data:

    MAZE 3372 1385

    Total source lines: 226

    23378 bytes free at end

    NOTE: Two compile passes! Yeah us!

    : fred@llana prospero $; dir
    copytx.for forlib.rel maze.for maze.prn profor2.com prolib.com
    fcheck.com g1lib.mac maze.log maze.rel profor.com prolink.com
    fconfig.com g2lib.mac maze.map prime.for profor.err read.me

    NOTE: and we see maze.log, maze.map maze.prn and maze.rel have been generated. If we display maze.log:

    : fred@llana prospero $; cat maze.log

    Options: LMNHG

    Pass 1

    Unit MAZE
    17726 bytes free at end

    Pass 2

    Holding for REL - press any key to continue

    Unit: Code: Data:

    MAZE 3372 1385

    Total source lines: 226

    23378 bytes free at end
    �: fred@llana prospero $;

    NOTE: We see that the compiler likely supports LMNHG switches.
    Most likely one letter for each question... by running 10 times we could find out which switch is for each question!

    NOTE: Now, we link. The compiler supports MAC files, so Microsoft M80, and comes with FORLIB.REL (not the same as Microsoft FORLIB.REL). So, I decided to try to link with L80:
    : fred@llana prospero $; l80

    Link-80 3.44 09-Dec-81 Copyright (c) 1981 Microsoft

    *maze
    Data 0103 1398 < 4757>

    -$BMUL 095B -$DENT 06AC -$DEXI 06D5
    -$DIN 06DE -$DSLIN 1394 -$EFMT 1383
    -$EIRF 08BE -$EIWF 1386 -$ERFI1 08C5
    -$ETRF 08C8 -$ETWF 1389 -$EUNIT 137C
    -$EWFR 1339 -$GCGT 0E61 -$GINIT 06DB
    -$HBNG 0BF7 -$HBPS 069A -$HBZR 12A9
    -$HINVS 136D -$HST4T 12F1 -$LDEC 0B8E
    -$LINC 1027 -$RFLT 06C6 -$RMUL 06C9
    -$TRUNC 06CE -$WWMUL 1295 -RANDOM 06BA
    27 Undefined Global(s)
    48837 Bytes Free

    *forlib/s

    *maze/n/e

    Data 0103 3248 <12613>

    39888 Bytes Free
    [06D7 3248 50]

    NOTE: And we end up with MAZE.COM!!! Yeah us!

    NOTE: And, the COM file is runnable:

    : fred@llana prospero $; cpm maze


    THIS PROGRAM WILL PRINT OUT A DIFFERENT MAZE EVERY TIME IT
    IS RUN AND GUARANTEES ONLY ONE PATH THROUGH. YOU CAN
    CHOOSE THE DIMENSIONS OF THE MAZE, I.E. THE NUMBER OF
    SQUARES LONG AND THE NUMBER OF SQUARES WIDE.
    A 25 BY 25 MAZE IS THE MAXIMUM, AND ANY DIMENSIONS UP TO
    THESE LIMITS ARE O.K.

    LENGTH: 10
    ...SNIP...

    Notes: The PRN (listing) file correlates line number with object code address -- useful if
    we want the code productions. The MAP file produces a variable map - name/kind/type/offset
    These could be very useful if debugging.

    Questions:

    1 - Can Prospero be linked with Microsoft FORLIB.REL? If this is done, what is the result?
    2 - Related to (1), Microsoft never supported COMPLEX, could this be the root of the problem?
    3 - I do not see names for compiler aid functions that make sense (from a Microsoft perspective.
    This leads me to think that Microsoft FORLIB.REL and Prospero FORLIB.REL are not compatible.
    4 - From file PROFOR.ERR, we see:

    223Illegal type mixture with COMPLEX
    224COMPLEX expression in arithmetic IF
    225COMPLEX operand in relational expression
    234DATA: illegal occurrence of COMPLEX type
    236Assignment: illegal use of COMPLEX type
    320Error in COMPLEX constant

    So,COMPLEX support appears somewhat special (error 223). *When/If* I get time, I will scratch further
    (Note that I am not bothering with PROLINK or PROLIB)

    I tried to run Pro Fortran Compiler - Version zz 1.2 under several CP/M emulators:
    1.cpm
    2.iz-cpm
    3.zxcc
    4. tnylpo
    5. RunCPM

    Initially, I decided to check the correctness of the distribution files from the point of view of the FCHECK.COM program.
    Only two emulators (iz-cpm and zxcc) were able to execute the program and both reported that all files were checked successfully.

    Previously, I have successfully used these emulators to run programs for CP / M and did not encounter obvious errors in their work. From the results, I concluded that Pro Fortran Compiler programs are more picky about the runtime environment and, if they
    work, then only under the control of some of the emulators.

    I tested further with iz-cpm. It emulated the CP/M environment better than others, and there were fewer errors when running programs to compile source codes.

    In the absence of a user manual, it is difficult to find the necessary command line options expected by the compiler. Compilation takes place in several passes. The PROFOR.COM program reads the source file and starts processing it, creating intermediate
    files as output. This is the first pass. After completion of this stage, the program of the second pass PROFOR2.COM is automatically called, which reads the intermediate files created on the first pass and tries to create an object file from them with
    the code of the program to be compiled. The extension of the object file is .REL, and the file name corresponds to the name of the file with the source code of the program being compiled. At this point in my research, I've only tried to compile one
    Fortran file. Moreover, a very simple file that the compiler has to deal with. I used the source code of the COMPLEX.FOR program in which I changed the type of variables A, B and Z from COMPLEX to REAL, assigned values to variables A and B, and adjusted
    the FORMAT statement with label 10 to display variables of type REAL.
    After that, I started compiling the modified file using the following command:

    bash-3.2$ iz-cpm profor.com

    Pro Fortran Compiler - Version zz 1.2
    Copyright (C) 1983 Prospero Software
    Serial No: 63

    Source filename - complex1.for

    Source listing ? (Y/N/.) y
    Map ? (Y/N/.) y
    Compact object code ? (Y/N/.) n
    Restricted-width integer arithmetic ? (Y/N/.) n
    Maintain source line numbers at run time ? (Y/N/.) n
    Range checks on subscripts ? (Y/N/.) n
    Range checks on assignments ? (Y/N/.) n
    Hold before .REL output ? (Y/N/.) n
    Accept only ANSI Standard Fortran ? (Y/N/.) n
    Console output to .LOG file ? (Y/N/.) y


    Pass 1

    Unit COMPLE
    16675 bytes free at end

    Pass 2

    Unit: Code: Data:

    COMPLE 146 12

    Total source lines: 17

    22050 bytes free at end

    Link ? (Y/N) y

    Pro Pascal Linker - Version zz 1.6
    Copyright (C) 1982 Prospero Software
    Serial No: 63

    Linking:
    complex1.REL
    FORLIB.REL

    Data: 0103 18D1
    Program: 0103 18D1
    Start address: 010F

    Executable file: complex1.COM
    bash-3.2$

    The PROFOR.COM program asked me for the name of the program to be compiled, performed the first and second passes, and asked me if I should link the executable program. After an affirmative answer, the linker program was called and created an executable
    file from the object file and the FORLIB.REL library. As a result, an executable file of the program was created, which added the values of variables A and B, assigned the result to variable Z, and successfully printed this data.

    With a very simple program, the compiler coped quite successfully.

    The next program to be tested was the MAZE.FOR file from the compiler distribution kit. Although the source file was successfully checked by the FCHECK.COM program, running the PROFOR.COM program only resulted in two compilation passes and only the
    creation of the MAZE.REL object file. For some unknown reason, the link request for the executable was not received.

    I decided to test the compiler with the other two Fortran programs from the distribution.

    Compiling the COPYTX.FOR program completed all the necessary steps and created an executable file that, when run, asked for an input file name, then an output file name, and successfully copied the input file into a new file.

    When the PRIME.FOR program was compiled, again only the object file was created. To create MAZE.COM and PRIME.COM executables, will most likely need to invoke the linker program separately.
    However, at this stage, luck turned away from me. Calling the PROLINK.COM program and specifying the object and library files as input resulted in an error message:

    bash-3.2$ iz-cpm prolink.com

    Pro Pascal Linker - Version zz 1.6
    Copyright (C) 1982 Prospero Software
    Serial No: 63

    Separate program and data areas ? (Y/N) n
    Map ? (Y/N) n
    Filename(s) - prime.rel
    Linking:
    prime.rel
    Filename(s) - forlib.rel
    Linking:
    forlib.rel
    $GIRST : Multiply-defined entry
    bash-3.2$

    First intermediate conclusions and results obtained

    1. For some reason, the compiler on my computer works more or less normally only with the iz-cpm emulator.
    2, When generating the executable code, the instructions of the z80 processor are used.
    3. Not every program automatically calls the executable linker.
    4. To create an executable program, it may be necessary to specify the library name forlib.rel in some other form.
    5. The forlib.rel library is not compatible with the one from the MicroSoft compiler.
    6. Object files with the .rel extension use a structure and format similar to that of MicroSoft.
    7. Perhaps instead of the prolink.com and prolib.com programs, you can use similar programs from the MicroSoft compiler.
    8. The Pro Fortran compiler does not support the BYTE data type, but it is partially able to use variables with the COMPLEX type.
    9. Compared to the compiler, MicroSoft has more advanced options for checking the program operation at the execution stage.

    Andrey Nikitin

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Plo on Thu Mar 16 11:22:39 2023
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is, intact.
    .. It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem
    in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.FOR
    source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints , it
    doesn't calculate the sum... very strange...

    I confirm your error:

    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2

    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 16 12:23:42 2023
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is,
    intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this
    problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.FOR
    source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints , it
    doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 16 12:19:40 2023
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is,
    intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this problem
    in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.FOR
    source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints , it
    doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Why??????????????????????

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Plo on Thu Mar 16 13:13:35 2023
    On Thursday, March 16, 2023 at 3:23:43 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is,
    intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this
    problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.FOR
    source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints , it
    doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)
    And, just for fun - the error is in both COMPLEX + COMPLEX *and* COMPLEX + REAL. Now, I am "nerd-sniped"

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 16 16:32:47 2023
    Il giorno giovedì 16 marzo 2023 alle 17:13:37 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 3:23:43 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that is,
    intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this
    problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.
    FOR source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints ,
    it doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)
    And, just for fun - the error is in both COMPLEX + COMPLEX *and* COMPLEX + REAL. Now, I am "nerd-sniped"
    Strangely, the compile error "pass 2" DOES NOT APPEAR only when there is only one intrinsic function of a only complex variable i.e. Csin(z), Ccos(z), z**constant, etc. etc, when there are two or more complex operands, then the error appears!!!!

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 16 16:38:59 2023
    Il giorno giovedì 16 marzo 2023 alle 20:32:48 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 17:13:37 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 3:23:43 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK! that
    is, intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved this
    problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The COMPLEX.
    FOR source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and prints ,
    it doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)
    And, just for fun - the error is in both COMPLEX + COMPLEX *and* COMPLEX + REAL. Now, I am "nerd-sniped"
    Strangely, the compile error "pass 2" DOES NOT APPEAR only when there is only one intrinsic function of a only complex variable i.e. Csin(z), Ccos(z), z**constant, etc. etc, when there are two or more complex operands, then the error appears!!!!
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From ladislau szilagyi@21:1/5 to All on Fri Mar 17 00:10:25 2023
    Pe vineri, 17 martie 2023, la 01:39:01 UTC+2, Plo a scris:
    Il giorno giovedì 16 marzo 2023 alle 20:32:48 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 17:13:37 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 3:23:43 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK!
    that is, intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved
    this problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The
    COMPLEX.FOR source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and
    prints , it doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)
    And, just for fun - the error is in both COMPLEX + COMPLEX *and* COMPLEX + REAL. Now, I am "nerd-sniped"
    Strangely, the compile error "pass 2" DOES NOT APPEAR only when there is only one intrinsic function of a only complex variable i.e. Csin(z), Ccos(z), z**constant, etc. etc, when there are two or more complex operands, then the error appears!!!!
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type

    Perhaps this would help: I found a link for the PROSPERO PROFORTRAN manual : http://www.dilwyn.me.uk/language/ProsperoQlFortran77UM3.pdf

    Ladislau

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Fri Mar 17 02:44:36 2023
    Il giorno venerdì 17 marzo 2023 alle 04:10:27 UTC-3 ladislau szilagyi ha scritto:
    Pe vineri, 17 martie 2023, la 01:39:01 UTC+2, Plo a scris:
    Il giorno giovedì 16 marzo 2023 alle 20:32:48 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 17:13:37 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 3:23:43 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK!
    that is, intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved
    this problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The
    COMPLEX.FOR source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and
    prints , it doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)
    And, just for fun - the error is in both COMPLEX + COMPLEX *and* COMPLEX + REAL. Now, I am "nerd-sniped"
    Strangely, the compile error "pass 2" DOES NOT APPEAR only when there is only one intrinsic function of a only complex variable i.e. Csin(z), Ccos(z), z**constant, etc. etc, when there are two or more complex operands, then the error appears!!!!
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    Perhaps this would help: I found a link for the PROSPERO PROFORTRAN manual : http://www.dilwyn.me.uk/language/ProsperoQlFortran77UM3.pdf

    Ladislau
    Thank-You!!!

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Plo on Fri Mar 17 08:49:15 2023
    On Thursday, March 16, 2023 at 7:39:01 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 20:32:48 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 17:13:37 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 3:23:43 PM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 16:19:41 UTC-3 Plo ha scritto:
    Il giorno giovedì 16 marzo 2023 alle 15:22:40 UTC-3 fridtjof.ma...@gmail.com ha scritto:
    On Thursday, March 16, 2023 at 10:32:44 AM UTC-4, Plo wrote:
    Il giorno giovedì 16 marzo 2023 alle 08:22:41 UTC-3 Plo ha scritto:
    Il giorno mercoledì 15 marzo 2023 alle 10:12:57 UTC-3 Андрей Никитин ha scritto:
    среда, 15 марта 2023 г. в 03:23:54 UTC+3, plo...@gmail.com:
    Il giorno sabato 11 marzo 2023 alle 16:39:13 UTC-3 Андрей Никитин ha scritto:
    среда, 8 марта 2023 г. в 12:23:21 UTC+3, plo...@gmail.com:
    Il giorno martedì 7 marzo 2023 alle 07:26:10 UTC-3 Nils M Holm ha scritto:
    plo...@gmail.com <plo...@gmail.com> wrote:
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    It is probably unrelated, but I see two 2H with only one
    subsequent blank here.

    --
    Nils M Holm < n m h @ t 3 x . o r g > http://t3x.org
    Thanks Nils,
    But that's just my transcription error of the source. The strange thing is that in the package there is an executable file FCHECK.com which is used to check all the files in the package and when I run it, all the files are OK!
    that is, intact... It is very strange.
    Is it possible to download this compiler from the Internet. If possible please send me a link to where I can do it.

    Best regards
    Andrey Nikitin
    https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=sharing
    Thanks for the link to the compiler.
    This compiler is less common among CP/M users and almost unavailable. It is a pity that there is no user manual for it.
    I was able to compile the test programs and get object files, but I could not get executable files out of them. When I run the linker and specify an object file name and then a library name, the program crashes. Maybe you have solved
    this problem in some other way, and generate an executable file. I will be happy to get any information on this matter.

    regards,
    Andrey
    Hi Andrey,
    I want to verify that the files I uploaded in the folder are correct...then I'll let you know...
    I have inserted the ProsFor.rar file which contains the complete compiler and linker files. To compile:>PROFOR and follow compiler prompts. For the LINKER :>Prolink and follow the linker requests (xxx1.rel,xxx2.rel....,FORLIB.rel) The
    COMPLEX.FOR source generates an incomprehensible error during the PASS 2 of the compiler and if you always confirm to go to the end of the compilation and then do the LINK you will notice that when you run the complex.com executable which sums A+B=C and
    prints , it doesn't calculate the sum... very strange...
    I confirm your error:
    Error C at address 1D5F
    Continue ? (Y/N) y

    FCHECK seems to like the compiler parts
    : fred@llana prospero $; cpm fcheck

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    Is it possible that COMPLEX support is simply "not there"?

    : fred@llana prospero $; cat complex.map
    Pro Fortran Compiler - Version zz 1.2
    Map of: complex.FOR



    ****************
    * Unit COMPLE *
    ****************

    Name Kind Type Area Offset

    A Variable Comp Data 0008 (8)
    B Variable Comp Data 0010 (16)
    Z Variable Comp Data 0000 (0)


    Sizes:-

    Data 0018 (24)


    So, the MAP file indicates that complex is there... 8 bytes is correct. I thought that maybe the IMPLICIT was interfering, and that's not it. Nor is it the variable >layout - commenting out Z = makes A 0, B 8 and Z 16 (offset). Same error.
    Why doesn't the compiler (PROFOR2) give an error with exponential complex function? In the algebraic sum Z=A+B it gives the error!! I can't understand this...
    PROGRAM COMPLE
    IMPLICIT REAL (A-H,O-Z)
    COMPLEX A,B,Z
    C Z = CMPLX(0.0, 0.0)
    A = CMPLX(3.5, 3.5)
    B = CMPLX(4.0, 5.0)
    Z = B**2
    WRITE(1,10) A, B, Z
    10 FORMAT(1H ,2F11.3,2H ,2F11.3,2H ,2F11.3)
    PAUSE
    STOP
    END
    No compiler error!!!
    ++++++++++++++++++++++++++++++
    Pass 2
    Unit: Code: Data:
    COMPLE 153 24
    Total source lines 12
    Prolink.........
    Linking:
    COMPLEX.REL
    FORLIB.REL
    Data:.......
    ...............
    ..............
    Executable File: COMPLEX.COM

    COMPLEX
    3.500 3.500 4.000 5.000 -9.000 40.000
    A complex B complex Z=B**2 EXACT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Why??????????????????????
    C Z = CMPLX(0.0, 0.0) Comment in column 1 ==>>...... C Z=CMPLX(0.0, 0.0)
    And, just for fun - the error is in both COMPLEX + COMPLEX *and* COMPLEX + REAL. Now, I am "nerd-sniped"
    Strangely, the compile error "pass 2" DOES NOT APPEAR only when there is only one intrinsic function of a only complex variable i.e. Csin(z), Ccos(z), z**constant, etc. etc, when there are two or more complex operands, then the error appears!!!!
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mark Lougheed@21:1/5 to All on Sat Mar 18 10:59:16 2023
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"

    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Sun Mar 19 15:42:58 2023
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/m emulator
    it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and loading the
    PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From ladislau szilagyi@21:1/5 to All on Mon Mar 20 00:34:29 2023
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/m
    emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link

    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version"

    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr
    8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$.....

    Ladislau

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?Josef_M=c3=b6llers?=@21:1/5 to Plo on Mon Mar 20 11:15:07 2023
    On 20.03.23 11:04, Plo wrote:
    Il giorno lunedì 20 marzo 2023 alle 04:34:31 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/m
    emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link
    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version"

    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr
    8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$.....

    Ladislau
    Wonderful analysis!!!
    Is it possible to disassemble Amstrad's PROFOR.COM and remove the version check? It would be a resounding success to be able to use it also on other platforms and versions of CP/M-80!!!

    You can always replace at least the "jr c,l8ac8h" with two NOPs to
    neverever jump to the error message. BTDT(*)

    Josef

    (*) When I got my SB180FX, I wanted to add a hard disk (10MB!!!!!
    Yeah!") which I bought second-hand from my employer. Unfortunately the formatting program refused to format the disk, so I assumed it was
    defective and gave it back in exchange for another one, which ... also
    did not work. An analysis of the formatting program revealed that it
    first checked the existing format and refused to format the disk it it
    didn't have 512 byte sectors ;-) I then just over-wrote the check with
    NOPs and ... voila ... the disk was successfully formatted to 512
    bytes/sector.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Mon Mar 20 03:04:18 2023
    Il giorno lunedì 20 marzo 2023 alle 04:34:31 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/m
    emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link
    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version"

    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr 8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$.....

    Ladislau
    Wonderful analysis!!!
    Is it possible to disassemble Amstrad's PROFOR.COM and remove the version check? It would be a resounding success to be able to use it also on other platforms and versions of CP/M-80!!!

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From ladislau szilagyi@21:1/5 to All on Mon Mar 20 04:08:49 2023
    Pe luni, 20 martie 2023, la 12:15:10 UTC+2, Josef Möllers a scris:
    On 20.03.23 11:04, Plo wrote:
    Il giorno lunedì 20 marzo 2023 alle 04:34:31 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/m
    emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link
    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version" >>
    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr >> 8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$..... >>
    Ladislau
    Wonderful analysis!!!
    Is it possible to disassemble Amstrad's PROFOR.COM and remove the version check? It would be a resounding success to be able to use it also on other platforms and versions of CP/M-80!!!
    You can always replace at least the "jr c,l8ac8h" with two NOPs to
    neverever jump to the error message. BTDT(*)

    Josef

    (*) When I got my SB180FX, I wanted to add a hard disk (10MB!!!!!
    Yeah!") which I bought second-hand from my employer. Unfortunately the formatting program refused to format the disk, so I assumed it was
    defective and gave it back in exchange for another one, which ... also
    did not work. An analysis of the formatting program revealed that it
    first checked the existing format and refused to format the disk it it didn't have 512 byte sectors ;-) I then just over-wrote the check with
    NOPs and ... voila ... the disk was successfully formatted to 512 bytes/sector.
    Hi,

    I tried to patch the PROFOR.COM, the message "This is Amstrad version" is not more displayed...

    ... but another message is displayed instead: "Bad copy of program".

    It seems that the authors of the code used some sort of checksum control...

    The only correct way to fix this is to disassemble all and remove the unwanted code... but this is not so simple as it looks.

    Ladislau

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Mon Mar 20 12:34:20 2023
    Il giorno lunedì 20 marzo 2023 alle 16:28:09 UTC-3 Plo ha scritto:
    Il giorno lunedì 20 marzo 2023 alle 08:08:50 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 12:15:10 UTC+2, Josef Möllers a scris:
    On 20.03.23 11:04, Plo wrote:
    Il giorno lunedì 20 marzo 2023 alle 04:34:31 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/
    m emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link
    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version"

    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr
    8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$.....

    Ladislau
    Wonderful analysis!!!
    Is it possible to disassemble Amstrad's PROFOR.COM and remove the version check? It would be a resounding success to be able to use it also on other platforms and versions of CP/M-80!!!
    You can always replace at least the "jr c,l8ac8h" with two NOPs to neverever jump to the error message. BTDT(*)

    Josef

    (*) When I got my SB180FX, I wanted to add a hard disk (10MB!!!!! Yeah!") which I bought second-hand from my employer. Unfortunately the formatting program refused to format the disk, so I assumed it was defective and gave it back in exchange for another one, which ... also did not work. An analysis of the formatting program revealed that it first checked the existing format and refused to format the disk it it didn't have 512 byte sectors ;-) I then just over-wrote the check with NOPs and ... voila ... the disk was successfully formatted to 512 bytes/sector.
    Hi,

    I tried to patch the PROFOR.COM, the message "This is Amstrad version" is not more displayed...

    ... but another message is displayed instead: "Bad copy of program".

    It seems that the authors of the code used some sort of checksum control...

    The only correct way to fix this is to disassemble all and remove the unwanted code... but this is not so simple as it looks.

    Ladislau
    Since it is the PROFOR2.com file that generates the error on algebraic operations with the COMPLEX data type i.e. Pass 2, and the error is always at the same address: Pass 2 error C at address 1D5F perhaps comparing the two versions of PROFOR2.com at
    that address you could correct the error... Since I'm ignorant of assembly language... and maybe therefore I'm talking nonsense... but I think that the 1D5F address could be the key to the solution to the problem
    Or is this address referred to the MAP file of the relocatable obj file?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Mon Mar 20 12:28:07 2023
    Il giorno lunedì 20 marzo 2023 alle 08:08:50 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 12:15:10 UTC+2, Josef Möllers a scris:
    On 20.03.23 11:04, Plo wrote:
    Il giorno lunedì 20 marzo 2023 alle 04:34:31 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80 CP/m
    emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link
    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version"

    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr
    8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$.....

    Ladislau
    Wonderful analysis!!!
    Is it possible to disassemble Amstrad's PROFOR.COM and remove the version check? It would be a resounding success to be able to use it also on other platforms and versions of CP/M-80!!!
    You can always replace at least the "jr c,l8ac8h" with two NOPs to neverever jump to the error message. BTDT(*)

    Josef

    (*) When I got my SB180FX, I wanted to add a hard disk (10MB!!!!!
    Yeah!") which I bought second-hand from my employer. Unfortunately the formatting program refused to format the disk, so I assumed it was defective and gave it back in exchange for another one, which ... also
    did not work. An analysis of the formatting program revealed that it
    first checked the existing format and refused to format the disk it it didn't have 512 byte sectors ;-) I then just over-wrote the check with NOPs and ... voila ... the disk was successfully formatted to 512 bytes/sector.
    Hi,

    I tried to patch the PROFOR.COM, the message "This is Amstrad version" is not more displayed...

    ... but another message is displayed instead: "Bad copy of program".

    It seems that the authors of the code used some sort of checksum control...

    The only correct way to fix this is to disassemble all and remove the unwanted code... but this is not so simple as it looks.

    Ladislau
    Since it is the PROFOR2.com file that generates the error on algebraic operations with the COMPLEX data type i.e. Pass 2, and the error is always at the same address: Pass 2 error C at address 1D5F perhaps comparing the two versions of PROFOR2.com at
    that address you could correct the error... Since I'm ignorant of assembly language... and maybe therefore I'm talking nonsense... but I think that the 1D5F address could be the key to the solution to the problem

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Mon Mar 27 11:44:41 2023
    Il giorno lunedì 20 marzo 2023 alle 16:34:21 UTC-3 Plo ha scritto:
    Il giorno lunedì 20 marzo 2023 alle 16:28:09 UTC-3 Plo ha scritto:
    Il giorno lunedì 20 marzo 2023 alle 08:08:50 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 12:15:10 UTC+2, Josef Möllers a scris:
    On 20.03.23 11:04, Plo wrote:
    Il giorno lunedì 20 marzo 2023 alle 04:34:31 UTC-3 ladislau szilagyi ha scritto:
    Pe luni, 20 martie 2023, la 00:43:00 UTC+2, Plo a scris:
    Il giorno sabato 18 marzo 2023 alle 14:59:18 UTC-3 Mark Lougheed ha scritto:
    I'm going crazy!!!!! And I'm sorry because it's the only Fortran Compiler under CP/M-80 with COMPLEX data Type
    The SuperSoft FORTRAN (version 3.2) supports COMPLEX as well. But I would love to see the Prospero FORTRAN "brought back to life"
    +1 with regard to SuperSoft FORTRAN - For Z-80. I don't recall an 8080 targeted CP/M-80 FORTRAN compiler that had COMPLEX data types - certainly not Microsoft F-80 or Nevada FORTRAN.
    http://www.z80.eu/for-compiler.html
    There is also a version of Prospero PRO Fortran CP/m-80 specific for Amstrad CPC9512 which is distributed with the same files and which works perfectly without any compilation errors under CP/M-80. But if I try to use the compiler in my Z80
    CP/m emulator it tells me that the pc is not Amstrad PC!!!! and exits compilation. The files are the same as the generic CP/M-80 distribution. If you want to have fun, install the Amstrad Jocelyne emulator and after booting with the CP/M image disks and
    loading the PRO FORTRAN fortran compiler on disk B: and run the compilation of the same source COMPLEX.FOR everything works!!! But only for Amstrad !!!!
    You can find everything in my previous link..... https://drive.google.com/drive/folders/1ms1yidXdQswVCvs0yU63sCnLTX6HhzKr?usp=share_link
    (@Plo)

    Hi,

    it seems that the Amstrad Fortran runs only on CPM 3...

    A quick check of the code ( PROFOR.COM ) shows that there is code that checks this:

    sub_8aadh:
    ld c,00ch ;8aad GET CP/M VERSION
    call 00005h ;8aaf
    cp 030h ;8ab2 COMPARE WITH 3
    jr c,l8ac8h ;8ab4 IF LESS, ISSUE ERROR MESSAGE: "This is Amstrad version"

    l8ac8h:
    ld c,009h ;8ac8
    ld de,l8ad3h ;8aca SEE BELOW THE ERROR MESSAGE
    call 00005h ;8acd
    jp 00000h ;8ad0

    8AD0 : C3 00 00 54 68 69 73 20 69 73 20 41 6D 73 74 72 : ...This is Amstr
    8AE0 : 61 64 20 76 65 72 73 69 6F 6E 24 00 00 00 00 00 : ad version$.....

    Ladislau
    Wonderful analysis!!!
    Is it possible to disassemble Amstrad's PROFOR.COM and remove the version check? It would be a resounding success to be able to use it also on other platforms and versions of CP/M-80!!!
    You can always replace at least the "jr c,l8ac8h" with two NOPs to neverever jump to the error message. BTDT(*)

    Josef

    (*) When I got my SB180FX, I wanted to add a hard disk (10MB!!!!! Yeah!") which I bought second-hand from my employer. Unfortunately the formatting program refused to format the disk, so I assumed it was defective and gave it back in exchange for another one, which ... also did not work. An analysis of the formatting program revealed that it first checked the existing format and refused to format the disk it it didn't have 512 byte sectors ;-) I then just over-wrote the check with NOPs and ... voila ... the disk was successfully formatted to 512 bytes/sector.
    Hi,

    I tried to patch the PROFOR.COM, the message "This is Amstrad version" is not more displayed...

    ... but another message is displayed instead: "Bad copy of program".

    It seems that the authors of the code used some sort of checksum control...

    The only correct way to fix this is to disassemble all and remove the unwanted code... but this is not so simple as it looks.

    Ladislau
    Since it is the PROFOR2.com file that generates the error on algebraic operations with the COMPLEX data type i.e. Pass 2, and the error is always at the same address: Pass 2 error C at address 1D5F perhaps comparing the two versions of PROFOR2.com at
    that address you could correct the error... Since I'm ignorant of assembly language... and maybe therefore I'm talking nonsense... but I think that the 1D5F address could be the key to the solution to the problem
    Or is this address referred to the MAP file of the relocatable obj file?
    Hi all, finally the problem is solved...The member of these two forums, Martin Hepperle, found a brilliant and perfectly working solution, here are the two links to the solution...
    https://forum.vcfed.org/index.php?threads/strange-compiler-error-prospero-fortran-cp-m-80.1241152/
    https://forum.classic-computing.de/forum/index.php?thread/28785-strange-compiler-error-prospero-fortran-cp-m-80/&postID=406897#post407059
    Greetings to all...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mark Lougheed@21:1/5 to All on Mon Mar 27 12:32:05 2023
    Hi all, finally the problem is solved...The member of these two forums, Martin Hepperle, found a brilliant and perfectly working solution, here are the two links to the solution...
    https://forum.vcfed.org/index.php?threads/strange-compiler-error-prospero-fortran-cp-m-80.1241152/
    https://forum.classic-computing.de/forum/index.php?thread/28785-strange-compiler-error-prospero-fortran-cp-m-80/&postID=406897#post407059
    Greetings to all...


    Pardon me for the brief diversion...

    Martin Hepperle? THE Martin Hepperle of JavaFoil and JavaProp fame, legend and song?

    My hat is off!

    MDL

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Mon Mar 27 13:24:36 2023
    Il giorno lunedì 27 marzo 2023 alle 15:32:06 UTC-4 Mark Lougheed ha scritto:
    Hi all, finally the problem is solved...The member of these two forums, Martin Hepperle, found a brilliant and perfectly working solution, here are the two links to the solution...
    https://forum.vcfed.org/index.php?threads/strange-compiler-error-prospero-fortran-cp-m-80.1241152/
    https://forum.classic-computing.de/forum/index.php?thread/28785-strange-compiler-error-prospero-fortran-cp-m-80/&postID=406897#post407059
    Greetings to all...
    Pardon me for the brief diversion...

    Martin Hepperle? THE Martin Hepperle of JavaFoil and JavaProp fame, legend and song?

    My hat is off!

    MDL
    I don't know him personally, but I can tell you that he is a very knowledgeable and professional person in machine language programming and high level languages...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Plo on Wed Mar 29 14:05:59 2023
    On Monday, March 27, 2023 at 4:24:39 PM UTC-4, Plo wrote:
    Il giorno lunedì 27 marzo 2023 alle 15:32:06 UTC-4 Mark Lougheed ha scritto:
    Hi all, finally the problem is solved...The member of these two forums, Martin Hepperle, found a brilliant and perfectly working solution, here are the two links to the solution...
    https://forum.vcfed.org/index.php?threads/strange-compiler-error-prospero-fortran-cp-m-80.1241152/
    https://forum.classic-computing.de/forum/index.php?thread/28785-strange-compiler-error-prospero-fortran-cp-m-80/&postID=406897#post407059
    Greetings to all...
    Pardon me for the brief diversion...

    Martin Hepperle? THE Martin Hepperle of JavaFoil and JavaProp fame, legend and song?

    My hat is off!

    MDL
    I don't know him personally, but I can tell you that he is a very knowledgeable and professional person in machine language programming and high level languages...
    And I failed to attach: here it is - save as fcheck.hex then "load fcheck" to make new fcheck.com

    :10010000C36D06D4191C1A2C1B641A084D415A459C :100110002E464F524F524D0000DA0E001A7723132D :1001200049DE260228000000000000000000000058 :1001300000000000000000000000000B50524F467D :100140004F52322E434F4D0000001C01269C4C1F85 :100150000A50524F464F522E455252000000002C7A :1001600000F490AA030A464F524C49422E52454C85 :10017000000000004C011BEC5A1D0B46434F4E463D :1001800049472E434F4D0000003800A3AF990509A1 :1001900047314C49422E4D414300000000001600FB :1001A000BF915B010947324C49422E4D414300004B :1001B00000000026000DB73D02095052494D452E62 :1001C000464F520000000000080029F47D000A4359 :1001D0004F505954582E464F520000000008001B43 :1001E000447B00084D415A452E464F520000000006 :1001F0000000280049DE2602000000000000000088 :1002000000000000000000000000000000000000EE :1002100000000000000000000000000000000000DE :1002200000000000000000000000000000000000CE :1002300000000000000000000000000000000000BE :1002400000000000000000000000000000000000AE :10025000000000000000000000000000000000009E :10026000000000000000000000000000000000008E :10027000000000000000000000000000000000007E :10028000000000000000000000000000000000006E :10029000000000000000000000000000000000005E :1002A000000000000000000000000000000000004E :1002B000000000000000000000000000000000003E :1002C000000000000000000000000000000000002E :1002D000000000000000000000000000000000001E :1002E0000900CDD914FE08010000210000CD23151E :1002F0002001210000222401210701E5218000E5E1 :10030000210B01CD7F07CD3B09210701E5218000AD :10031000E5CDDA082A0701E5CD470BEE011F305283 :100320003E000640DD7082DD7783ED4B20012A22FE :1003300001E5C52A0701E5CDA20BE5DD7E836F1738 :100340009F6729D1195E2356EB444D26006CCD2EB4 :1003500011ED432001222201DD7E833CDD3582C286 :1003600027032A2401232224012A0701E5CD9B0A21 :1003700018A2C30815CDD914FD09CDBD07CDF307CB :10038000DD3684012A0901E5CD470BEE011FD2D8E5 :1003900004CDB6072A0901E5CDE907210B01E53EA9 :1003A00014F5CD3D08CDF3073A0B01F53E00C1B879 :1003B0003E0017F53A0C01FE20CDC014C1A01F303D :1003C0000F210B01E53E01F53E01F5CDA01218D835 :1003D000CDB007210B01CD7F073E0EF5CD8908CDAD :1003E000F307210B01CD7F07CD0F091FD2AC04CD40 :1003F000E202DD7E846F179F67011500CD30121178 :10040000260119DD7582DD7483E5210B01CD7F079F :10041000CD4C14E13E0ECD3814DD6E82DD668311C5 :100420000F0019E52A2401EBE1732372DD6E82DDF2 :10043000668311110019E5CD12152001CD2C15CDC3 :10044000BD072A2401444DCB14ED62E5C53E05F5F8 :10045000CD2307CD12152001E5C53E0CF5CD2307B0 :10046000CDF307DD7E8432E002DD7E84FE14ECB83D :1004700014F27D04DD7E843CDD7784182DCDBD072C :10048000CD9B04546F6F206D616E79206E616D6538 :100490007320666F72206172726179CD7A07183E9F :1004A00000F5CD8908CDF307182E1823CDBD07CD53 :1004B000C20420202D20206E6F7420707265736539 :1004C0006E74CD7A07103E00F5CD8908CDF307CDC7 :1004D000BD07CDF307C38403C30815CDD914FE0AA5 :1004E000DD7E856F179F67011500CD301211260143 :1004F00019DD7582DD7483CD7F07210B013E14CD9C :100500003814CDB007210B01CD7F073E0EF5CD8904 :1005100008CDF307210B01CD7F07CD0F091FD24175 :1005200006CDE202DD6E82DD6683110F00194E23D7 :10053000462A2401B7ED42CDC014F5CD1215200195 :10054000E5C5DD6E82DD668311110019CD1915CD6B :10055000B711CDC014C1A01F3024CDBD07CD6E058D :1005600020202D2020636865636B73204F4BCD7A6C :10057000070E3E00F5CD8908CDF307C33F06CDBD7C :1005800007CD990520202D2020646F6573206E6FA4 :100590007420636F6D70757465CD7A07153E00F534 :1005A000CD8908CDF307CDBD07CDBC0553746F725F :1005B00065642076616C7565733A2020CD7A0710EA :1005C0003E00F5CD8908DD6E82DD6683110F0019CE :1005D0005E2356EB444DCB14ED62E5C53E05F5CDEB :1005E0002307DD6E82DD668311110019CD1915E533 :1005F000C53E0CF5CD2307CDF307CDBD07CD1406C1 :1006000043616C63756C617465642076616C7565BB :10061000733A2020CD7A07143E00F5CD89082A24AC :1006200001444DCB14ED62E5C53E05F5CD2307CD64 :1006300012152001E5C53E0CF5CD2307CDF30718B3 :1006400023CDBD07CD570620202D20206E6F7420AE :1006500070726573656E74CD7A07103E00F5CD89B2 :1006600008CDF307CDBD07CDF307C30815217306E9 :10067000C3AC153AE002B72074210B01E53E15F535 :10068000CD8D073A0B01F53E00C1B83E0017F53A93 :100690000C01FE20CDC014C1A01F300F210B01E5BD :1006A0003E01F53E01F5CDA01218D8210901E52142 :1006B0000000E5210B01CD7F07CD3B09210901E5B4 :1006C000210000E5CDDA08CD7503CDBD07CDDE06EE :1006D000526561647920666F722053415645CD7A28 :1006E000070E3E00F5CD8908CDF3071827CDBD07CD :1006F000CDF3073AE002473E01CD8212381621E1E0 :10070000027032DF02F5CDDB043ADF023C21E10268 :1007100035C20207C3471808333631303137303518 :10072000370000E1F1B7281EC1E3F5E5C511170751 :10073000D53E0BF5CD2F13F121170746B8300178C0 :10074000E5F5CDAC08C93E01F5E53E570E02CDB248 :100750001718D0FDE10600FD4E00FD23180AE10642 :10076000004E23E5FDE1FD09EB26FF792F6F39F9F6 :100770007123EBEDB0FDE5C3FB14FDE1E118D6FDFF :10078000E17E2306004FB720DFF533FDE9E1C1E349 :10079000EB218000480600EDB0C9001C1A020000E1 :1007A000000000000000000000002A0301AF181242 :1007B0002A0501AF180C2A03013E0118052A05017C :1007C0003E02E5F53A9A07B72812FE042846010CC6 :1007D00000219D0709EB21FDFF19EDB83C329A0776 :1007E000F1E1229B07329D07C9CDF10BDD229B076A :1007F000DDE1C93A9D07FE01CCB10B3A9D07FE022F :10080000CCCF0B219A0735C8219E07119B07010CFD :1008100000EDB0C9D1D13E46061B0E00112208CD15 :10082000B217526561642F7772697465206E6573C3 :1008300074696E6720746F6F2064656570E1C1E351 :10084000E53600E5C5CD930AC1E1FD2A9B07FDCB46 :1008500005A6FDCB054E200EFD7E172377E334E37E :10086000FDCB05E610DDE1C9E1F1B72806C10E01B7 :10087000C5181E3E01F5E53E570E02CDB21718E829 :10088000E1C10E01C53E011808E1F1C1C5B7200163 :100890007947CDCE08E5210200397EB72809237EAD :1008A000CDBF080D10F80923D1F9EBE9E1F1E34ED2 :1008B000477EB7C8CDCE08237ECDBF0810F9C9E565 :1008C000C5FD2A9B07FD7717CD210BC1E1C979B87A :1008D000D03E20CDBF080518F5163E1618023E0B77 :1008E00032D908E1225517CD6216E5DDE31FDC0E93 :1008F0000D3E01CD7E183AD908DD7705DD6E0ADDA3 :10090000660BCD0A09DDE12A5517E901AF18023E51 :1009100001320B09E12255173E01CD790CFE013E53 :100920000020133A0B09B7280B0E0F115C00CD5BAA :10093000173C28023E012A5517E901E12255173ECE :1009400002CD790C323A09CD6216E5DDE3AFCD7EFA :1009500018DDCB04AE3A3A09FE02281DCD0E0DDD9E :10096000E5E111240019EB215C00010C00EDB0DD84 :10097000CB04E6DDE12A5517E9DDCB049E3A5D00A4 :1009800021F0091109000606BE281E1910FA3E4E74 :10099000060F0E05119A09CDB217426164206465F5 :1009A00076696365206E616D653A5E0023BE20DE68 :1009B0003A5F0023BE20D723EBDDE5E10106000905 :1009C000EB010600EDB0EB114D0A732372DDCB0491 :1009D000462017DD7E18D601DDB6192049DDE5E198 :1009E00011170019DD7510DD7411DDE12A5517E9C5 :1009F000434F4E01173A173E0A4B4244640A260AF7 :100A00004D0A4C5354260A7F0A4D0A4E554C260A6D :100A10004D0A4D0A50554E260A780A4D0A52445244 :100A20006F0A260A4D0A3E4411320A060C0E05CD05 :100A3000B217446576696365206572726F72DDCBAB :100A40000446C0214E0ADD7506DD7407C9C90E01D2 :100A5000CD5B17DD7717FE03CA0000FE0DC01E0A2E :100A60000E0218200E061EFFCD5B17DD7717C90E8C :100A700003CD5B17DD7717C90E04DD5E1718050E71 :100A800005DD5E17CD5B17C91600DDE5E1195E23B4 :100A900056EBE92A9B07E5DDE31803CDF10BCDBA50 :100AA0000ACD060CDDCB05E6DDE1C9DD7E05E60CF1 :100AB000CA240CDDCB0566C8180BDD7E05CB57CAF2 :100AC000200CCB67C8DDCB0576204DDD6E06DD66DC :100AD00007CD920ADDCB05A6DDCB0446C8DD7E1727 :100AE000FE1A282AFE0A280CDDCB058EFE0DC0DD7D :100AF000771A1811DDCB054E280BDD7E1AFE0D2866 :100B0000C4DD361A0ADD361720DDCB05CEC9DDCBB4 :100B100005F6DDCB054E28EDDDCB05B6DDCB05C6F4 :100B2000C92A9B07E5DDE31803CDF10BCD2B0CDDC6 :100B30006E08DD6609CD920ADDCB058EDDE1C92A9E :100B40000301E5DDE31803CDF10BCDAB0ADD7E0536 :100B5000E601DDE1C92A0301E5DDE31803CDF10B70 :100B6000CDAB0ADDCB0546C2140CDD7E051FE601C8 :100B7000DDE1C92A0501E5DDE31803CDF10BCD2B3D :100B80000CDD36170D1E08CD880ADD36170C1E0841 :100B9000CD880ADDCB05CEDDE1C92A9B07E5DDE383 :100BA0001803CDF10BCDAB0ADD6E10DD6611DDE172 :100BB000C92A9B07E5DDE3CDBA0ACD060CDDCB05DE :100BC0004E2005CDC50A18F2DDCB05E6DDE1C92AC8 :100BD0009B07E5DDE3CD2B0CDD36170D1E08CD8818 :100BE0000ADD36170A1E08CD880ADDCB05CEDDE109 :100BF000C9FDE1E1E3E5DDE37CB72828BE2025233C :100C00007DBE2020FDE9DDCB0546C83E4511420CE6 :100C1000060B1823DDE13E450E02CDB2173E01C999 :100C2000060818020610114D0C180ADDCB055EC02F :100C3000115D0C060A3E460E01DDCB05FEDDE1C36B :100C4000B217456E642D6F662D66696C654E6F2018 :100C500072657365742F726577726974654E6F2063 :100C6000726577726974650200084D415A452E46D7 :100C70004F524F524D00000000FDE132670CE17C05 :100C8000FE2020097DB728053DF53318F1E5210048 :100C9000003906004E11690C3E0EBEDAE40CC503A5 :100CA000EDB0C1F9FDE5116A0CD5C5215C00E5CDBB :100CB0007510216800360021670C461001C9B7285D :100CC0000CFE0328331001C9FE01202CC911D40CDD :100CD000061018323F2028656D7074792073747285 :100CE000696E6729360FE509E30E10EDB0E1F9FDF5 :100CF000E53A670C3D3E00C821680CE5363F237E8F :100D00003620C60247D13E4E0E05CDB21714CDB7E0 :100D10000D214C0D010900EDB021A0157E3C274F9F :100D200077237ECE002777E60FF6301213791F1F48 :100D30001F1FE60FF6301279E60FF630131221CAA4 :100D40000DDD750ADD740BDDCB04DEC90050524F9A :100D50002454454D24DD6E18DD66197DE6C0B428A7 :100D600009017F000929DD7414C9EB217E00973C3D :100D7000B7ED52F26F0D3DDD7715DD361401DDCB99 :100D800004F6C921D50E11270FDDCB044620122110 :100D9000F30E11450FDDCB04762006211D0F1165E2 :100DA0000FDD7506DD7407DD7308DD7209218E0E17 :100DB000DD750CDD740DC9DDE5E311240019EBE1EF :100DC000C91180000E1ACD5B17C9DDCB0446CC5586 :100DD0000DDD7E12DDB61320152A4F17DD7512DDED :100DE0007413DD46140E00CB38CB19CD6717CDB781 :100DF0000DD5210C0019061836002310FBDDCB2B76 :100E0000BEDDCB055E200B3AA215FE012804DDCB2A :100E10002BFEDDCB055628110E0FCD5B173C20199C :100E2000DDCB055E2008C319100E13CD5B17D1D59D :100E30000E16CD5B173CCAF40FE1DD361601DDCB93 :100E4000055EC44E0ECD830DDD361700AFC9DD360D :100E50001600DD6E12DD6613DDCB04462008DD755D :100E600010DD74111806DD7518DD7419DD7E1406A9 :100E70008036002310FB3D20F6C9DD6E12DD6613BF :100E8000017F0009DD7E16772BDD7E1877C9F5DD41 :100E9000CB055E2823DDCB0476200DDDCB04462870 :100EA00017DD36171ACD2E0FDD7E16B7280ADDCBDB :100EB0000476C47A0ECD700FCDB70D0E10CD5B1732 :100EC0003CC1CADA0F781FD8CDB70D0E13DDCB04A5 :100ED00066CC5B17C9DD6E18DD661923DD3516207B :100EE00007CD6C0FDD361680DD7518DD74197EDDDB :100EF0007717C9DD6E10DD6611DD4E18060009DDBD :100F00003516201CCD6C0FE5FDE1FD7E7EE63FDD54 :100F1000BE18C2BC0FFD7E7FDD77161803CD6C0FA7 :100F2000DD7510DD7411C9DDCB056EC43A17DD6EB9 :100F300018DD6619DD7E177723DD7518DD7419DD80 :100F40003416F01820DD6E10DD6611DD4E18060037 :100F500009DD7510DD7411DD7E163CDD7716DDBE12 :100F600015C0CD7A0ECD700FCD4E0EC93E141802AD :100F70003E15320D0DCDB70DDD6E12DD6613E5DDCC :100F80007E14F5D5E5D1D50E1ACD5B17E1D1D5E5A7 :100F90003A0D0D4FCD5B17B7200FE1D1F101800065 :100FA000093D20DECDC10DE1C9E1E1E1CDC10DE199 :100FB0003A0D0DFE15283CDDCB05C6C9DDCB054637 :100FC000C2150FE111CB0F060F183057726F6E6705 :100FD0002066696C652074797065E111E20F061175 :100FE000181943616E6E6F7420636C6F73652066B1 :100FF000696C65E1E1E11106100613DDCB05FE3EEB :10100000440E01CDB217446973632F64697265633E :10101000746F72792066756C6CD13AAB15B73E016E :10102000C8C1D5D5210B00191AB72807C6402377A8 :1010300023363A0608CD571023362E0603CD571017 :1010400020012BD1E5216910010C00EDB0E1D1B7F1 :10105000ED524504E118A44813231AE67F7710F8EF :101060003E20BEC02B0D20FAC94E6F7420666F75EE :101070006E643A2020E1FDE1C1E3EBFDE5E13600DD :10108000060B23362010FB79B7C81AFE2020061362 :101090000D20F797C90CFDE5E12306090DCA2011C3 :1010A0001A13FE20287AFE3A284CFE2E2831FE2AFA :1010B0002879FE2C2875FE3B3804FE40386DFE6012 :1010C0003802E65FFE5B2863FE5D285F772310CC65 :1010D000FDCB0076204AFD7E09FE202843184CFDFA :1010E000CB00762046FDCB00F6FDE5E1C501090009 :1010F00009C1060318A6FDCB007E202F78FE082824 :1011000007FE0620263E02C9FD7E01D640381CFEA1 :10111000113018CBFFFD7700FD3601200DC395106F :10112000FD7E00E61FFD77003E01C93E03C9FDE1DB :10113000E309444DD1E1ED5AEA9511FDE9FDE1E302 :10114000B7ED42444DD1E1ED52EA9511FDE94F175B :101150009F476F67C9444DCB14ED62C9FDE1EBE1D8 :10116000E5CB14ED62E3E5EBFDE9FDE1110000EBF9 :10117000E3E5EBFDE9CB7CC8EB210000B7ED424491 :101180004D210000ED52E0E3C5E53E4F0E02CDB229 :1011900017E1C1E3C9FDE518EE0CC004C02CC02462 :1011A000E018E479D6014F78DE0047110000ED52D7 :1011B000EA8711B1B5B4C9FDE1E3B7ED42D1E1F57C :1011C000ED52D1EACE112004CBBBD5F1FDE93E4072 :1011D000FAD41117B7FDE9FDE1EB6069C1B7ED4243 :1011E000C1F5EBED42D1EACE1128DDFDE9E5C5D12F :1011F000EBB7ED521804E5B7ED42444DEC1A12037B :101200007C17E1C9EB6069B7ED521805545DB7ED85 :1012100042444D03EBC97CF67FF0EB210000B7EDB3 :1012200052C9FDE1D15A1600CB7B280115D5FDE945 :10123000EB210000794BCB3F300119CB23CB12B708 :1012400020F478B7C8511E00CB3F300119CB22B72C :1012500020F6C921000078B728130610B7CB412823 :101260000119CB1CCB1D1FCB1910F147C90608B7BC :10127000CB41280119CB1CCB1DCB1910F2456C2694 :1012800000C94F789118024F9047E28F12ED4479D0 :1012900037F804B7C94F789118024F90470479C9BD :1012A000FDE1F1D15FE17AB7280A7E9238063C93DE :1012B000300C72353E540E02FDE5CDB217C928122E :1012C000F57E9377F106004A09EB2600194FEDB041 :1012D000FDE97235FDE9FDE1F1D1E15FC1C5B72856 :1012E0003A7E3CBB383579863831477AB8382C7924 :1012F000B738397E3C932813E5D5C55906004E0909 :10130000EB260019EB4FEDB8C1D1E17006001600D5 :1013100019EB21010039EDB0F9FDE9FDE53E540E70 :1013200002CDB217FDE1E1E5260039F933FDE9FD13 :10133000E1F1D1C1E1FDE5D5DDE3D5DD360000CB3E :101340007C281EDD3400DD23DD36002D3DCA2D1442 :10135000EB210000B7ED42444D210000ED52FA1C94 :1013600014F5B7CB7820047CB52840C50100CA111C :101370009A3BCDD613C50100E111F505CDD613C5B5 :10138000018096119800CDD613C5014042110F007F :10139000CDD613C501A086110100CDD613C501100D :1013A00027110000CDD61360691808606911102755 :1013B000CDF31311E803CDF313116400CDF3131132 :1013C0000A00CDF313D13E3085DD23DD7700DDE16A :1013D000DD3400DDE1C9FDE13E3017E3B7ED42E366 :1013E000ED52FAEB131F373C1718F0E309E3ED5AFF :1013F000C11812FDE13E3017B7ED52FA04141F3741 :101400003C1718F419B71F3011D1DD23DD7700DD4B :10141000E3DD3400DDE3152814D5FDE9DD36002ACF :10142000DD36012ADDE1DD34003E4F1803D13E54A4 :10143000DDE10E02CDB217C9FDE1EB21000039BE9E :10144000DC841406004E03EDB0F9FDE9FDE1210056 :1014500000394E060003095E2356D5EB626B2B2B39 :101460000303EDB8E1FDE9FDE121000039BEDC84B4 :101470001496280E545D06004FB7ED42F9EB4E036B :10148000EDB0FDE9D5F5E5FDE53E540E02CDB21710 :10149000FDE1E1F14E77E5060009EBE14F0903EDCF :1014A000B8EBD1C123F9C5C9FDE1C1C52600693931 :1014B00023F906006068FDE93E40FABE1417B7C97B :1014C0003E01C83DC93E01C03DC93E01F83DC93E8F :1014D00001F03DC9B7F0ED44C9E1C15E2316FF7BC1 :1014E000B7200157EB39F9FDE5DDE5C5DD218400C5 :1014F000DD39EB5E231600EB39E5D52A511739D8D3 :101500003E53D50E00CDB217EBE1FDE1DDE1F9EB85 :10151000FDE9E15E235623E5EB4E2346235E235689 :1015200023EBC9E35E235623E3EB1803EBE1E371FE :1015300023702373237223EBC9FDE1D1E3C5424B32 :10154000FDE9500000000000000000000000000065 :10155000000000000000000000000000000000008B :10156000000000000000000000000000000000007B :10157000000000000000000000000000000000006B :10158000000000000000000000000000000000005B :1015900000000000D41800008000941598157EDD2E :1015A000100002000000391600D41801ED7B06007F :1015B00006063B10FDE5DD218000DD39DD229E15AC :1015C0002AA915229415224F17010001CD67172172 :1015D00000002296152A94150180007123702301C2 :1015E0000001712370218000229815219415229A00 :1015F00015219815229C15210000220301220501C6 :1016000022531722A01522A415CD3C1621391622EB :10161000591722571722A615AF32A81521500022BC :1016200042150E0CCD5B172E01FE2038012C22A294 :10163000150E1A118000CD5B17C9000021000011A2 :101640000501D5E5110301D5E5CD6216E5FDE1FD06 :10165000360516CD6216E5FDE1FD36050BAF329A73 :1016600007C9E1C1E35E23562BE57AB7281A2A534E :1016700017E5FDE17CB52810ED522808FD6E02FD4E :10168000660318EDEBD1AFC9ED5B4F17E173237221 :101690002BC5E5D5014800CD6717E1E57423752317 :1016A000064636002310FBD1D5FDE12A5317FD7500 :1016B00002FD7403ED535317C1FD710EFD700FFD54 :1016C000361401FD361580C178B12808FD7118FD6A :1016D0007019181FFDCB04C621170019FD7510FDE8 :1016E0007411FD36172021060019EB21F9160108A7 :1016F00000EDB0FDE5E13E01C901173A1743174E71 :10170000172143157EB7280D352A3A167EDD771747 :1017100023223A16C91142150E0ACD5B1721421534 :1017200046237EB828DB3423223A1616005F19368A :101730000DDD36170ACD3A1718C7DD5E170E02CD3C :101740005B17C9DDCB0556C82143153600C9C9F45E :101750001B0BE32C1B140339163916DDE5FDE5CD13 :101760000500FDE1DDE1C92A4F1709224F170100ED :1017700001097C2F677D2F6F22511739D8D13E4840 :101780000E00CDB217C5E50E02CD5B17E1C1C94F02 :1017900006021F1F1F1FE60FC630FE3AFAA117C62A :1017A000075FCD85177910EEC9E1F10E02E5CDB2E4 :1017B00017C9B72A5917CD51183008CB19CB19D8EA :1017C000C34718F5CB193008EB5E23CD851710F908 :1017D000C50E09115218CD5B17C1F1C55FCD851734 :1017E0000E09115B18CD5B17C1D1E1E5D5C579E6CE :1017F0000228032A55177CCD8F177DCD8F171E0D1C :10180000CD85171E0ACD85172A5717CD5118C1CB84 :1018100019D247181168180E09CD5B170E01CD5B60 :1018200017FE592817FE792813FE4ECA4718FE6E78 :10183000CA4718117A18FE2030DD18E01E0DCD853C :10184000171E0ACD8517C92A5317E5CDC018C30046 :1018500000E90D0A4572726F7220242061742061C4 :101860006464726573732024436F6E74696E75656A :10187000203F2028592F4E2920240820082447DD06 :101880007E05CB7FC0E60CC8CB5F2824DDCB0446A9 :10189000281EDDCB054E2018C5DD6E08DD6609E586 :1018A000DD36170DCDBF18E1DD36170ACDBF18C1E3 :1018B000DD6E0CDD660D78CDBF18DD360510C9E98B :1018C000E1E37CB7C8E5DDE1AFCD7E18DD6E02DD7A :1018D000660318EE80000001000000000000000018 :1018E00000000000000000000000000000000000F8 :1018F00000000000000000000000000000000000E8
    :00000001FF

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Plo on Wed Mar 29 14:03:02 2023
    On Monday, March 27, 2023 at 4:24:39 PM UTC-4, Plo wrote:
    Il giorno lunedì 27 marzo 2023 alle 15:32:06 UTC-4 Mark Lougheed ha scritto:
    Hi all, finally the problem is solved...The member of these two forums, Martin Hepperle, found a brilliant and perfectly working solution, here are the two links to the solution...
    https://forum.vcfed.org/index.php?threads/strange-compiler-error-prospero-fortran-cp-m-80.1241152/
    https://forum.classic-computing.de/forum/index.php?thread/28785-strange-compiler-error-prospero-fortran-cp-m-80/&postID=406897#post407059
    Greetings to all...
    Pardon me for the brief diversion...

    Martin Hepperle? THE Martin Hepperle of JavaFoil and JavaProp fame, legend and song?

    My hat is off!

    MDL
    I don't know him personally, but I can tell you that he is a very knowledgeable and professional person in machine language programming and high level languages...
    With new new profor2.com, fcheck.com fails. Find attached a new fcheck.com that takes the new profor2.com

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to All on Wed Mar 29 15:44:51 2023
    And as another note - the prospero fortran for cp/m is NOT fortran 77 -- it is fortran 66... pretty much the same as the microsoft, but with complex. Things like SAVE, PARAMETER, CHARACTER and BLOCK IF do not exist. Also, assigned goto requires a
    statement list (contents not important, needs the list). I am going to play with this compiler.
    It uses z80 instructions... JR for one.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?0JDQvdC00YDQtdC5INCd0LjQu@21:1/5 to All on Wed Mar 29 15:52:05 2023
    четверг, 30 марта 2023 г. в 01:44:53 UTC+3, fridtjof.ma...@gmail.com:
    And as another note - the prospero fortran for cp/m is NOT fortran 77 -- it is fortran 66... pretty much the same as the microsoft, but with complex. Things like SAVE, PARAMETER, CHARACTER and BLOCK IF do not exist. Also, assigned goto requires a
    statement list (contents not important, needs the list). I am going to play with this compiler.
    It uses z80 instructions... JR for one.

    Several files are missing for AMSTRAD. If you add the following files from the distribution for CP/M:

    GLIB.MAC,
    G2LIB.MAC,
    PRIME.FOR,
    COPYTX.FOR,
    MAZE.FOR

    then the original file FCHECK.COM checks all files and reports that they are normal. This suggests that these files are no different and can be used.

    New file fcheck.com it is smaller in size than the original one and gives the following information at startup:

    PROFOR2.COM - checks OK

    PROFOR.ERR - does not compute
    Stored values: 44 61509876
    Calculated values: 45 62205943

    FORLIB.REL - does not compute
    Stored values: 332 492497947
    Calculated values: 340 507591874

    FCONFIG.COM - does not compute
    Stored values: 56 93958051
    Calculated values: 56 94334026

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to All on Wed Mar 29 18:11:57 2023
    On Wednesday, March 29, 2023 at 6:52:06 PM UTC-4, Андрей Никитин wrote:
    четверг, 30 марта 2023 г. в 01:44:53 UTC+3, fridtjof.ma...@gmail.com:
    And as another note - the prospero fortran for cp/m is NOT fortran 77 -- it is fortran 66... pretty much the same as the microsoft, but with complex. Things like SAVE, PARAMETER, CHARACTER and BLOCK IF do not exist. Also, assigned goto requires a
    statement list (contents not important, needs the list). I am going to play with this compiler.
    It uses z80 instructions... JR for one.
    Several files are missing for AMSTRAD. If you add the following files from the distribution for CP/M:

    GLIB.MAC,
    G2LIB.MAC,
    PRIME.FOR,
    COPYTX.FOR,
    MAZE.FOR

    then the original file FCHECK.COM checks all files and reports that they are normal. This suggests that these files are no different and can be used.

    New file fcheck.com it is smaller in size than the original one and gives the following information at startup:

    PROFOR2.COM - checks OK

    PROFOR.ERR - does not compute
    Stored values: 44 61509876
    Calculated values: 45 62205943

    FORLIB.REL - does not compute
    Stored values: 332 492497947
    Calculated values: 340 507591874

    FCONFIG.COM - does not compute
    Stored values: 56 93958051
    Calculated values: 56 94334026
    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK

    Interesting... here is what I get: I'll bundle up all the files I have... (into an lu library). Note that fcheck has size and checksum of each file within it. The issue then would be the actual compiler files...

    : fred@llana p $; cpm fcheck.com

    PROFOR2.COM - checks OK

    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK

    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK


    and, for compiler version:

    : fred@llana p $; cpm profor

    Pro Fortran Compiler - Version zz 1.2
    Copyright (C) 1983 Prospero Software
    Serial No: 63

    Source filename -

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Thu Mar 30 18:56:36 2023
    Il giorno mercoledì 29 marzo 2023 alle 21:11:59 UTC-4 fridtjof.ma...@gmail.com ha scritto:
    On Wednesday, March 29, 2023 at 6:52:06 PM UTC-4, Андрей Никитин wrote:
    четверг, 30 марта 2023 г. в 01:44:53 UTC+3, fridtjof.ma...@gmail.com:
    And as another note - the prospero fortran for cp/m is NOT fortran 77 -- it is fortran 66... pretty much the same as the microsoft, but with complex. Things like SAVE, PARAMETER, CHARACTER and BLOCK IF do not exist. Also, assigned goto requires a
    statement list (contents not important, needs the list). I am going to play with this compiler.
    It uses z80 instructions... JR for one.
    Several files are missing for AMSTRAD. If you add the following files from the distribution for CP/M:

    GLIB.MAC,
    G2LIB.MAC,
    PRIME.FOR,
    COPYTX.FOR,
    MAZE.FOR

    then the original file FCHECK.COM checks all files and reports that they are normal. This suggests that these files are no different and can be used.

    New file fcheck.com it is smaller in size than the original one and gives the following information at startup:

    PROFOR2.COM - checks OK

    PROFOR.ERR - does not compute
    Stored values: 44 61509876
    Calculated values: 45 62205943

    FORLIB.REL - does not compute
    Stored values: 332 492497947
    Calculated values: 340 507591874

    FCONFIG.COM - does not compute
    Stored values: 56 93958051
    Calculated values: 56 94334026
    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK
    Interesting... here is what I get: I'll bundle up all the files I have... (into an lu library). Note that fcheck has size and checksum of each file within it. The issue then would be the actual compiler files...

    : fred@llana p $; cpm fcheck.com

    PROFOR2.COM - checks OK
    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK
    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK
    and, for compiler version:

    : fred@llana p $; cpm profor
    Pro Fortran Compiler - Version zz 1.2
    Copyright (C) 1983 Prospero Software
    Serial No: 63

    Source filename -
    Perfect!
    Thank's

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to All on Fri Mar 31 06:53:54 2023
    Updated versions of STRING library and APU library (if I do that) will be put into the profor github repository.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Plo on Fri Mar 31 06:52:14 2023
    On Thursday, March 30, 2023 at 9:56:38 PM UTC-4, Plo wrote:
    Il giorno mercoledì 29 marzo 2023 alle 21:11:59 UTC-4 fridtjof.ma...@gmail.com ha scritto:
    On Wednesday, March 29, 2023 at 6:52:06 PM UTC-4, Андрей Никитин wrote:
    четверг, 30 марта 2023 г. в 01:44:53 UTC+3, fridtjof.ma...@gmail.com:
    And as another note - the prospero fortran for cp/m is NOT fortran 77 -- it is fortran 66... pretty much the same as the microsoft, but with complex. Things like SAVE, PARAMETER, CHARACTER and BLOCK IF do not exist. Also, assigned goto requires a
    statement list (contents not important, needs the list). I am going to play with this compiler.
    It uses z80 instructions... JR for one.
    Several files are missing for AMSTRAD. If you add the following files from the distribution for CP/M:

    GLIB.MAC,
    G2LIB.MAC,
    PRIME.FOR,
    COPYTX.FOR,
    MAZE.FOR

    then the original file FCHECK.COM checks all files and reports that they are normal. This suggests that these files are no different and can be used.

    New file fcheck.com it is smaller in size than the original one and gives the following information at startup:

    PROFOR2.COM - checks OK

    PROFOR.ERR - does not compute
    Stored values: 44 61509876
    Calculated values: 45 62205943

    FORLIB.REL - does not compute
    Stored values: 332 492497947
    Calculated values: 340 507591874

    FCONFIG.COM - does not compute
    Stored values: 56 93958051
    Calculated values: 56 94334026
    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK
    Interesting... here is what I get: I'll bundle up all the files I have... (into an lu library). Note that fcheck has size and checksum of each file within it. The issue then would be the actual compiler files...

    : fred@llana p $; cpm fcheck.com

    PROFOR2.COM - checks OK
    PROFOR.ERR - checks OK

    FORLIB.REL - checks OK

    FCONFIG.COM - checks OK
    G1LIB.MAC - checks OK

    G2LIB.MAC - checks OK

    PRIME.FOR - checks OK

    COPYTX.FOR - checks OK

    MAZE.FOR - checks OK
    and, for compiler version:

    : fred@llana p $; cpm profor
    Pro Fortran Compiler - Version zz 1.2
    Copyright (C) 1983 Prospero Software
    Serial No: 63

    Source filename -
    Perfect!
    Thank's
    My corrected Prospero Fortran is at

    https://github.com/ratboy666/profor

    That includes the fixed FCHECK.COM.

    Note that the command line for the compiler appears to be:

    profor name.for /options

    where options are the collection letters in the LOG file (G option). For example:/LMG makes a PRN file, a MAP file and a LOG file. Note that INTEGER is INTEGER*4 -- vs Microsoft F80 where INTEGER is INTEGER*2. BYTE is not supported, but INTEGER*1 is (
    and is supported in F80 as well). F80 supports I = 2HAB or I = 'AB', Prospero does not. I haven't had time to look at code generation much.... Note that option C (eg /C) is compact code. This changes code generation is use more compact code, even if it
    is slower. Not going to have time to play further for a bit. I will "port" my string library. Note that APU.REL does not work with Prospero... Is there any interest in that?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to fridtjof.ma...@gmail.com on Fri Mar 31 08:45:52 2023
    On Friday, March 31, 2023 at 9:53:55 AM UTC-4, fridtjof.ma...@gmail.com wrote:
    Updated versions of STRING library and APU library (if I do that) will be put into the profor github repository.
    PROFOR FILE.FOR /OPTIONS

    Note space before the /
    OPTIONS can be:
    L List (PRN file)
    M Map (MAP file)
    C Compact (less space)
    R Restrict (not validated. I think this does INTEGER*1, *2, *4 to just the specified width)
    N Source line numbers (for debugging, takes extra code space)
    I Subscript range checking
    A Assignment range checking
    H Hold before REL (why? maybe to allow disk switch)
    S ANSI only. Eg. 'ABCD' instead of 4HABCD generates warning.
    G Console to log (LOG file)

    Note that ASSIGNed GOTO needs the statement list... Even a dummy list works. Eg

    ASSIGN 10 TO I
    GO TO I,(1)
    1 PAUSE 4321
    STOP
    10 PAUSE 1234
    STOP

    does work. The list does not appear to be checked... It just needs to be there. ANSI FORTRAN 66 code will go easier with Prospero than with Microsoft F80. The biggest issue is that
    Microsoft uses INTEGER*2 as default and REAL*4 as default, so INTEGER and REAL do not
    EQUIVALENCE according to the standard. Prospero uses INTEGER*4 as INTEGER and REAL*4
    as REAL, so things "work out properly". And... Prospero supports COMPLEX (as COMPLEX*8, note
    that DOUBLE PRECISION COMPLEX - COMPLEX*16 isn't there).

    I want to get my virtc working with Prospero, to allow micro-timing benchmarks to compare PROFOR
    and F80.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Fri Mar 31 19:59:54 2023
    Il giorno venerdì 31 marzo 2023 alle 11:45:54 UTC-4 fridtjof.ma...@gmail.com ha scritto:
    On Friday, March 31, 2023 at 9:53:55 AM UTC-4, fridtjof.ma...@gmail.com wrote:
    Updated versions of STRING library and APU library (if I do that) will be put into the profor github repository.
    PROFOR FILE.FOR /OPTIONS

    Note space before the /
    OPTIONS can be:
    L List (PRN file)
    M Map (MAP file)
    C Compact (less space)
    R Restrict (not validated. I think this does INTEGER*1, *2, *4 to just the specified width)
    N Source line numbers (for debugging, takes extra code space)
    I Subscript range checking
    A Assignment range checking
    H Hold before REL (why? maybe to allow disk switch)
    S ANSI only. Eg. 'ABCD' instead of 4HABCD generates warning.
    G Console to log (LOG file)

    Note that ASSIGNed GOTO needs the statement list... Even a dummy list works. Eg

    ASSIGN 10 TO I
    GO TO I,(1)
    1 PAUSE 4321
    STOP
    10 PAUSE 1234
    STOP

    does work. The list does not appear to be checked... It just needs to be there.
    ANSI FORTRAN 66 code will go easier with Prospero than with Microsoft F80. The biggest issue is that
    Microsoft uses INTEGER*2 as default and REAL*4 as default, so INTEGER and REAL do not
    EQUIVALENCE according to the standard. Prospero uses INTEGER*4 as INTEGER and REAL*4
    as REAL, so things "work out properly". And... Prospero supports COMPLEX (as COMPLEX*8, note
    that DOUBLE PRECISION COMPLEX - COMPLEX*16 isn't there).

    I want to get my virtc working with Prospero, to allow micro-timing benchmarks to compare PROFOR
    and F80.
    Perfect "autopsy" of the Prospero Fortran CP/M-80 version!... For CP/M-80 O.S. I believe it is the most complete among the various Fortran compilers, I played with all the other versions that I could find on the internet and the only two that support the
    TYPE COMPLEX (obviously the COMPLEX*8 only, due to the 8-bit 8080 Processor ..) are the Prospero Pro Fortran and the Super Soft SSS FORTRAN, but the latter I discovered has some bugs, especially in the LINKAGE phase...

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kurt Pieper@21:1/5 to All on Mon Apr 3 04:43:17 2023
    Hi,
    unfortunately I can't report any success.
    My knowledge of Fortran is so-so.

    The program is processed with profor prime.for.
    But Prolink needs to be called and I get this
    Messages:

    prolink prime

    Pro Pascal Linker - Version zz 1.6
    Copyright (C) 1982 Prospero Software
    Serial No: 63

    Linking:
    PRIME.REL

    Unsatisfied external(s):
    $EFMT $EIRF $EIWF $ERFI4 $ETRF $ETWF
    $EUNIT $EWFI2 $EWFI4 $GINIT $GIRST $HINVS
    $LCMPR $LMODF $RADD $RFLT $TRUNC SQRT

    Terminate ? (Y/N)

    Hardware is SC114 von S.Cousins.

    Kurt

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From fridtjof.martin.weigel@gmail.com@21:1/5 to Kurt Pieper on Mon Apr 3 05:41:41 2023
    On Monday, April 3, 2023 at 7:43:19 AM UTC-4, Kurt Pieper wrote:
    Hi,
    unfortunately I can't report any success.
    My knowledge of Fortran is so-so.

    The program is processed with profor prime.for.
    But Prolink needs to be called and I get this
    Messages:

    prolink prime

    Pro Pascal Linker - Version zz 1.6
    Copyright (C) 1982 Prospero Software
    Serial No: 63

    Linking:
    PRIME.REL

    Unsatisfied external(s):
    $EFMT $EIRF $EIWF $ERFI4 $ETRF $ETWF
    $EUNIT $EWFI2 $EWFI4 $GINIT $GIRST $HINVS
    $LCMPR $LMODF $RADD $RFLT $TRUNC SQRT

    Terminate ? (Y/N)

    Hardware is SC114 von S.Cousins.

    Kurt
    Kurt
    : fred@llana p $; cpm prolink

    Pro Pascal Linker - Version zz 1.6
    Copyright (C) 1982 Prospero Software
    Serial No: 63

    Separate program and data areas ? (Y/N) n
    Map ? (Y/N) y
    Map $names too ? (Y/N) n
    Filename(s) - prime
    Linking:
    prime.REL
    Filename(s) - forlib/s
    Linking:
    forlib.REL
    Filename(s) -

    External/Entry:
    SQRT 02C1

    Data: 0103 17F5
    Program: 0103 17F5
    Start address: 010F

    Executable file: prime.COM

    : fred@llana p $;

    Or, you can use Microsoft L80:
    : fred@llana p $; l80

    Link-80 3.44 09-Dec-81 Copyright (c) 1981 Microsoft

    *prime
    Data 0103 02C1 < 446>

    -$EFMT 02A8 -$EIRF 0178 -$EIWF 02AB
    -$ERFI4 017F -$ETRF 0182 -$ETWF 02B5
    -$EUNIT 02A1 -$EWFI2 02B2 -$EWFI4 01B4
    -$GINIT 0113 -$HINVS 0259 -$LCMPR 0295
    -$LMODF 023A -$RADD 0215 -$RFLT 01FC
    -$TRUNC 021A -SQRT 020A
    17 Undefined Global(s)
    53228 Bytes Free

    *forlib/s

    *prime/n/y/e

    Data 0103 17F5 < 5874>

    46979 Bytes Free
    [010F 17F5 23]



    Note that you MUST use FORLIB.REL from Prospero FORTRAN, Microsoft FORLIB.REL will not work.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Kurt Pieper@21:1/5 to All on Mon Apr 3 07:57:53 2023
    Hi,
    thanks to the specialist Fred.

    I created a
    makfor.sub.
    type makfor.sub
    profor p:$1
    l80 P:$1,forlib/s,p:$1/n/e
    dir p:$1.*



    It works.

    Before that I had worked with F80.
    An attempt failed on KSAM80.
    The KSAM80.REL etc for BASCOM don't work.
    Prg crashes after CALL MKSAM .....
    There is an F80 Fortran version. Not to be found.

    Kurt

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Plo@21:1/5 to All on Tue Apr 4 06:21:23 2023
    Il giorno lunedì 3 aprile 2023 alle 10:57:54 UTC-4 Kurt Pieper ha scritto:
    Hi,
    thanks to the specialist Fred.

    I created a
    makfor.sub.
    type makfor.sub
    profor p:$1
    l80 P:$1,forlib/s,p:$1/n/e
    dir p:$1.*



    It works.

    Before that I had worked with F80.
    An attempt failed on KSAM80.
    The KSAM80.REL etc for BASCOM don't work.
    Prg crashes after CALL MKSAM .....
    There is an F80 Fortran version. Not to be found.

    Kurt
    HI,
    Fred was faster than me in answering you...hehehe!!

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)