Apple III Fortran

9 posts / 0 new
Last post
Offline
Last seen: 2 days 22 hours ago
Joined: Dec 21 2013 - 20:49
Posts: 121
Apple III Fortran

Was Apple III Fortran a real product? I read references to it from Apple from a couple of brochures/magazine articles, but do not see it listed on any price list. I recently viewed a YouTube video on the Apple III and the author showed a program selector screen with Apple III Fortran as a option to select. Is Apple III Fortran available to download somewhere? 

MacFly's picture
Offline
Last seen: 3 weeks 6 days ago
Joined: Nov 7 2019 - 13:49
Posts: 484
Yes, it was a real thing. It

Yes, it was a real thing. It came as a separate compiler for Apple III Pascal. So, you use the standard Pascal environment to edit your files. But then you execute the separate Fortran compiler, instead of launching the Pascal compiler. You could also build mixed applications (link libraries/code from Pascal + Fortran).

 

Manual and disks can be found on asimov:

Apple III Fortran Reference Manual

And here is a disk which contains the Fortran compiler files, which the manual mentions:

APPLE-3-WAP-pcl-19a.dsk

Online
Last seen: 17 min 7 sec ago
Joined: Jul 5 2018 - 09:44
Posts: 2643
There were a few faculty in

There were a few faculty in the Engineering school at the University I attended back in the day that used Apple /// Fortran.  The University bought a very large number of Apple /// units betweed 1980-1982.  Pretty much every departmental secretary had one on their desk as did a lot of Professors.  Of course Fortran was a requirement for Engineering in those days.  Most of the instructional work was done on an IBM plug compatible mainframe (National Semiconductor) using IBM's Fortran 77 or some on the VAX/VMS cluster using VMS Fortran.  All this was before the IBM PC even existed, so the main alternative to the Apple /// for Fortran would have been CP/M, but there was no clear cut choice for that available through the University purchasing system.  A few years later they had a relationship with Zenith but not really until the MS-DOS era.  At that time they also started getting other minis with Fortran available or early workstations.  68k based Sun and HP and Apollo.

 

Anyway...  thankfully I myself, not being a CS student rather than Engineering, I never had to take Fortran...  Or COBOL (requirement of the MIS department).  If I rememebr right there was an Apple /// COBOL that worked similarly to the Fortran using Apple's UCSD Pascal system.

 

Offline
Last seen: 2 days 22 hours ago
Joined: Dec 21 2013 - 20:49
Posts: 121
How to update Apple III Pascal disks for Apple III Fortran

I am trying to use Apple III Fortran. I have created a disk from  the Apple III Fortran disk image. I read the Apple III Fortran manual and it does not say how to update/modify the Apple III Pascal disks to use Apple III Fortran. Does anyone know how to update/modify the Apple III Pascal disks to make a set of disks for Apple III Fortran? I am using Apple III Pascal version 1.1. Also, the Apple III Fortran manual mentions a second manual that should be referenced for Apple III Fortran -- "The complete Apple Fortran documentation includes one other manual: Apple Language System Installation and Operation Manual".  When I search the web for this document all that I could find is a manual for the Apple II computer. Does anyone have this manual for the Apple III?

retro-tinker's picture
Offline
Last seen: 1 day 2 hours ago
Joined: Jun 7 2023 - 15:41
Posts: 89
Another A III Fortran thread

There was another discussion about Apple III Fortran in the "other computers" forum not long ago - https://www.applefritter.com/content/fortran-apple

The OP (Linfeld) may have some insight regarding the software installation info you are looking for. Don't know how active he is, but may respond to a DM.  (I'm watching with interest because I last used Fortran in the mid 70's in college, about a decade before I got an Apple III and had already moved on to Pascal.)

Online
Last seen: 19 min 45 sec ago
Joined: Feb 27 2021 - 18:59
Posts: 676
The "Language System

The "Language System Installation and Operation Manual" is for what Apple called the "Language System": a Language Card, plus appropriate floppy disks. It was required to bring the Apple II to 64KB of RAM, and also had the benefit of being able to run Integer BASIC, AppleSoft, or Pascal programs. The Apple III has this functionality built-in, so there is no "Language System". But when you develop and run Pascal programs under the Pascal environment, as opposed to directly on SOS, you are working with a different kind of language system: the Pascal editor, compiler, and executive system.

I think the Apple III Pascal manual should have the information you seek.

Offline
Last seen: 2 days 22 hours ago
Joined: Dec 21 2013 - 20:49
Posts: 121
Attempt to create an Apple III Fortran system

I am starting out with Apple III Pascal disks with the following files:

I modeled it after this section from Apple III Program Preparation Tools Manual (see attached picture)

Here are my Pascal disks contents.

 

NEWPASCAL1:

*SOS.KERNAL

SOS.DRIVER

SOS.INTERP

LIBRARY.CODE

LIBMAP.CODE

SETUP.CODE

AIIFORMAT.CODE

 

NEWPASCAL2:

SYSTEM.EDITOR

SYSTEM.PASCAL

SYSTEM.MISCINFO

SYSTEM.LIBRARY

SYSTEM.FILER

EXAMP.TEXT

 

NEWPASCAL3:

SYSTEM.ASSMBLER

OPCODES.6502

ERRORS.6502

SYSTEM.COMPILER

SYSTEM.SYNTAX

SYSTEM.LINKER

 

The Apple III Fortran Disk has the following files:

 

FORT1:

FORTRAN.CODE

FORTRAN.ERRORS

SOSERRORS

SYSTEM.LIBRARY

READ.ME.FIRST

 

Here’s what the Apple III Fortran manual says about the files on the Apple III Fortran disk:

 

2.1   GETTING ORIENTED

As we mentioned previously, this manual should be used with whichever

Pascal manual you have to get the complete picture of how to use Apple

FORTRAN.  The two purposes of this chapter are to give you a list of

things to read in those manuals, and to help you interpret those

manuals in terms of FORTRAN.

 

The Pascal documentation gives a complete description of the Editor,

Filer, Linker, and numerous other aspects of the operating system.  The

documentation necessarily gives program examples and disk names

for operating with Pascal.  For FORTRAN, the only interpretation

required in most cases will be the substitution of disk names, and

the word FORTRAN for Pascal.  There are some instances when this will

not suffice.  All those cases are discussed in this chapter.

 

Here are some observations about the relationship between the Pascal

and FORTRAN languages on the Pascal Operating System:

 

* Apple /// FORTRAN is an applications program which is executed from

  within the Apple /// Pascal environment.  It is not a stand-alone

  bootable system and to use it, the Pascal system must first be loaded.

  All the Pascal files are untouched except that the FORTRAN run-time

  units (FORTIO and FORTFUNC) must be in the SYSTEM.LIBRARY file along

  with REALMODES AND TRANSCEND.  FORTRAN has three associated files all

  of which must be located in the same subdirectory:

 

     FORTRAN.LIB               is the Compiler Library

 

     SOS.ERRORS                is the File Selection error file

 

     FORTRAN.ERRORS            contains all the Compiler and Run-Time

                               errors

* The Pascal documentation makes references to Pascal Pseudo-code

  P-code.  Both the FORTRAN and Pascal compilers generate P-code, they

  don't generate the native 6502 machine code of the Apple.  The P-code

  produced by the compilers is executed by a P-code interpreter, which

  translates P-code instructions into the native machine code of the

  Apple.  This allows both FORTRAN and Pascal to run on the Pascal

  Operating System.

 

Given all this information, I am not 100% sure how to modify a copy of the NEWPASCALx disks with the contents of the Apple III Fortran disk (FORT1:).

 

Currently, to use Apple III Pascal system, I boot NEWPASCAL1: disk and a screen prompt will say to put Pascal System disk (NEWPASCAL2:)into the built-in drive and press Return. I create a Pascal source file with the Editor and save as the SYSTEM.WRK.TEXT file on NEWPASCAL2: Next, I place NEWPASCAL3: (contains compiler files) into the external drive. I select Run and the source file is compiled to a SYSTEM.WRK.CODE file and then the .CODE file is executed to produce the result of the source code.

 

I’m thinking that the SYSTEM.LIBRARY file on FORT1: should replace the SYSTEM.LIBRARY file on the copy of NEWPASCAL2: disk. Next, I should just use leave the FORTRAN.CODE, FORTRAN.LIB, SOS.ERRORS and FORTRAN.ERRORS files on the FORT1: disk and use FORT1: disk in the same way I use the NEWPASCAL3: to compile a Fortran source file that is named SYSTEM.WRK.TEXT (that will reside on NEWPASCAL2: disk.

 

 

retro-tinker's picture
Offline
Last seen: 1 day 2 hours ago
Joined: Jun 7 2023 - 15:41
Posts: 89
Ha! Hello World in Fortran

Just as an academic exercise, I copied the Fortran III files referenced above to a volume on my DanII drive. I dug out my old A-III pascal manuals and figured out how to use the "Library" program to copy the FORTIO and FORTFUNC units from the fortran disk system.library file to the (Pascal) system.library on my boot drive. Reading through the Fortran documentation at https://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Software/Languages/Apple%20III%20Fortran/Manuals/Apple%20III%20Fortran%20Reference%20Manual.html#11.4.4 I came up with this little program:

C2345 7 --- this is a comment line to show columns because fortran is picky

      program hello

        write(*,900)'Hello World of FORTRAN'

900     format(A)

      end

 

I created this in the pascal text editor, then ran the fortran compiler (X from the pascal system command line) then just "X(ecute" the resulting "hello.code" file.

And it worked!

Pretty sure this is all I'll ever need to use Fortran for ever again.

 

 

Offline
Last seen: 2 days 22 hours ago
Joined: Dec 21 2013 - 20:49
Posts: 121
Yes! Finally got the compiler working!

I got the compiler working last night, but did not have a successful source code program run that you did. I found how the Fortran compiler was supposed to be called from, of all places, GitHub. GitHub has a MAME Apple III simulator project that had Apple III Fortran as one of the applications that could be run. GitHub had specific directions on how to compile and run an Apple III Fortran program (use eXecute command to invoke the compiler). I did not think about the ability to use eXecute command to run the compiler. I had been trying to use Compile from Command screen.  I had made a copy of the NEWPASCAL2: disk and replaced the SYSTEM.LIBRARY file with the one from the FORT1: disk that has the FORTIO and FORTFUNC units already installed. I named this disk FORTRAN2:.

 

My process for Fortran development is to boot NEWPASCAL1:, when prompted for disk with Pascal System I place the FORTRAN2: disk into the built-in drive. This gets me to the Pascal system Command screen. I place the FORT1: disk (that has the FORTRAN.CODE compiler) into the external drive. I use the editor to create the source file save it as the SYSTEM.WRK.TEXT file. Next, I select eXecute from the Command screen options and enter FORT1:FORTRAN to start the compiler. At the What Code File? I press Return. At List to What Name? I enter .CONSOLE. If compiler was successful, then I select eXecute from the Command options and enter FORTRAN2:SYSTEM.WRK.CODE to see the program run.

The last issue I had, which your example Hello Word program helped me identify, was my use of " (quote) instead of ' (apostrophe) in the WRITE statement for the Hello sentence. One I corrected this, the source code compiled and ran successfully. Thank's for your help.

Log in or register to post comments