Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : f77on Pi Pico
Author | Message | ||||
zeitfest Guru Joined: 31/07/2019 Location: AustraliaPosts: 482 |
Sad I know but ... f77 interpreter running on Pi Pico... First Light !!! Electride Pi © S. Oliver 2023 Electride Pi 0 (G) Get (L) List (S) Save (A) Analyse (R) Run (C) Comp (res) >G Waiting OK >R Running PROGRAM helloworld PRINT *, "Hello, world" END \ Hello, world OK > I'll bet Bill, Larry, Elon are really worried now |
||||
OA47 Guru Joined: 11/04/2012 Location: AustraliaPosts: 926 |
OA47 |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4238 |
Is it a cross-compiler to mmbasic? Or interpreter ? Volhout PicomiteVGA PETSCII ROBOTS |
||||
Plasmamac Guru Joined: 31/01/2019 Location: GermanyPosts: 554 |
What is F77? Plasma |
||||
Volhout Guru Joined: 05/03/2018 Location: NetherlandsPosts: 4238 |
Fortran 77, an ancient programming language. PicomiteVGA PETSCII ROBOTS |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3802 |
Brings back memories! (Anyone for COMMON?) John |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
I don't remember which FORTRAN I was using on IBM mainframes before F77 became available. It may have introduced byte-addressability, which made some kinds of text manipulation more possible, if clunky. It was a long time ago. PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
JohnS Guru Joined: 18/11/2011 Location: United KingdomPosts: 3802 |
Probably some version (i.e. with extensions) of FORTRAN IV. John |
||||
thwill Guru Joined: 16/09/2019 Location: United KingdomPosts: 4040 |
I still occasionally get called upon to maintain some FORTRAN 77, there are still a number of mathematical codes that use it - hateful language. I believe FORTRAN officially became Fortran with the move from the FORTRAN 77 standard to the Fortran 90 standard. These days I'm not sure it gets much of a look in except on super-computers, though historically its compilers produced the most optimal machine code. Best wishes, Tom Edited 2023-02-12 02:12 by thwill Game*Mite, CMM2 Welcome Tape, Creaky old text adventures |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
Ah, right. FORTRAN IV. Thanks for the memories. Writing a crosstab program to replace the canned SPSS program (Statistical Package for the Social Sciences), saving so much runtime that my pitiful wage was paid for many times over. PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
zeitfest Guru Joined: 31/07/2019 Location: AustraliaPosts: 482 |
Yes it is an interpreter, it does do a pre-pass set up though. It has limitations on complexity and so on. I originally wrote it for pic170 and so on, and ran out of program space and left it at that. Now I have replaced the bits in assembler with vanilla C and it runs on PCs/Windows OK, so now it is an experiment to run it on the Pi Pico. The language is certainly ancient and a bit awkward, I suspect it was only the various vendor additions that made it practical. Efficient though. COMMON, well, errh, ... |
||||
ville56 Regular Member Joined: 08/06/2022 Location: AustriaPosts: 95 |
Ahh Fortran, what a flashback! Fortran IV was my first language i had to learn back in 1973-1975 in the technical highscool. Running that on an UNIVAC mainframe and later on IBM/360. All punched cards. On the UNIVAC machine we had to do our own operating as the whole machine was let to us for some hours each week. Strange experiance back then, being barely able to write programs and then to run the whole machine from booting to shutdown, loading printer paper, clearing card jams, scheduling jobs, clearing errors. At least it made clear to me, computer centers are nothing for me ... just to run one from 1982 to 1997 Never used Fortran after school again. Gerald 73 de OE1HGA, Gerald |
||||
zeitfest Guru Joined: 31/07/2019 Location: AustraliaPosts: 482 |
Ahhh yes... the glory of graphics in 1.3k on a lineprinter... Complete with errors... zombie code from last millenium, four decades BC (Before Covid) .. Interpreted on a Pi Pico !! Electride Pi © S. Oliver 2023 Electride Pi 0 (G) Get (L) List (S) Save (A) Analyse (R) Run (C) Comp (res) >G Waiting OK > >R Running PROGRAM CURVY C INTEGER*4 i, j CHARACTER*1 m(64,21) ... (snipped to prevent more embarrassment) ... CALL plott ( m ) PRINT "finish" END C SUBROUTINE plott ( page ) INTEGER*4 x, y FORMAT (64A1,/) DO 10 x = 1, 64 page(x,1) = '-' page(x,11) = '-' 10 page(x,21) = '-' DO 30 y = 1, 21 page(1,y) = '!' 30 page(64,y) = '!' DO 40 y = 1, 21 WRITE (6,0) ( page(x,y), x = 1, 64 ) 40 CONTINUE RETURN END \ start !--------------------------------------------------------------! ! **** ! ! *** *** ! ! ** ** ! ! ** ** ! ! * * ! ! * ** ! ! ** * ! ! * * ! !* * ! !--------------------------------------------------------------! ! ** *! ! * ** ! ! * * ! ! * * ! ! ** ** ! ! * * ! ! ** ** ! ! **** *** ! ! **** ! !--------------------------------------------------------------! finish OK (sigh...) Edited 2023-04-05 18:14 by zeitfest |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
Nice. In 1974-5 I used a line printer (driven with fortran code) to print out the digitized street map of Austin, Texas as part of a project for automating the routing of school buses. I don't remember how many sheets wide or deep it was, but it would have taken a good-sized room to lay out the whole thing (which was never done). If one line crossed another without the character indicating an intersection, you would know that a node (intersection) had been mis-digitized. PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
okwatts Regular Member Joined: 27/09/2022 Location: CanadaPosts: 59 |
Hi Very interesting, as has been said already (and dating myself), this was the first language that i used in university. There are many codes still used for scientific purposes. I have used this for EGS4 (Electron,Gamma Shower) coding in the past and did my MSc work on a DG Nova and Eclipse mini back in the day. Would be interesting to compare the speed on the pico to those old minicomputers of the 70's. I for one would be interested in further development and any links to your work. Thanks again. PS Still have a (electronic) copy of Numerical Recipes in Fortran77. Edited 2023-04-06 04:14 by okwatts |
||||
zeitfest Guru Joined: 31/07/2019 Location: AustraliaPosts: 482 |
I do remember looking at Numerical Recipes ! Quite a heavyweight set of programs. Micro's were a bit under-resourced to run them at the time. A venerable VAX 11/750 - which was a smallish mini at the time - ran at a blistering 0.35 MIPS I think. |
||||
zeitfest Guru Joined: 31/07/2019 Location: AustraliaPosts: 482 |
It's alive !!! As an accessory I put in an EVAL capability. I don't think EVAL is a standard part of f77 but... project 43a required it... I am really quite surprised it works. The contents of a character array are treated as a line of code and processed. Maybe EXEC would be a better keyword. Hmm a DIY calculator...no-one's ever done that of course.. >R Running PROGRAM readstr CHARACTER*20 eqn INTEGER*4 b b = 4 PRINT "Enter equation.. " READ eqn EVAL eqn PRINT *, "b is now ", b END \ Enter equation.. b = b + 3 * 5 b is now 19 OK > |
||||
Print this page |