@Chesler....you could initialise F by saying F=1 or F=N, but unless the machine defaults to initialising variables to 1 your initial program would not work. But I don't know how that machine behaved....
> "What am I doing debugging/reverse engineering this?"
Well you can see how far you have come since those early days,,,,and a bit of nostalgia is always a good thing I find.
I loved playing with GWBASIC again but I was forever trying to position the cursor with the mouse, or cut and paste....NOT! But as I remarked above, the power of that little program in 60K is awesome compared to todays's bloated code. But then would I want to go back to Wordstar or MS-Word DOS versions without WYSIWYG? I don't think so..... Then again GWBASIC appears on the screen ready to work about 0.4 second after clicking it. You never gain anything without also gaining a disadvantage.....
What am I doing debugging/reverse engineering this? Since N is set to N-1 before the loop, I'm thinking F was initialized to N, not to 1.
I remember being amazed at how quickly the answer came back (relative to 110 baud -- but a state-of-the-art TI-30 of the same vintage has noticable lag coming back with a trig value) so maybe I was trying to be clever and save a multiplication.
@Chesler....no problem, I had lots of fun with it. (If MS had not updated everything I'd still be quite happy with DOS and BASIC and Wordstar :-)
In your original program, if Nwas input as 1, it would have got 1 subtracted from it first, and you would have got an endless loop. Mine can cope with 1 but not 0 or negative Ns.
I remember being taught that unconditional jumps like GOTO 60 were a no-no, and to use DO WHILE or FOR N = x TO y instead. Good point.
I did a FORTRAN course once and put and endless loop in a program, I got presented with a 2 inch high stack of paper and a very stern talking-to from the computer centre manager when I went to collect my printout. We all have to start somewhere.....
Thanks David Ashton. I think Y-512 may have been my account on the timeshare. No idea what was supposed to be at lines 40 and 50 (presumably one of them initialized F), or why they didn't save to the tape. Line 85 :-) I guess the day before I'd written my first endless loop!
A single LED (point light source) will cast an image through the holes that expands the farther you go from the tape. Just move the photodiodes back an inch or so from the tape, to where the projected dot spacing matches the photodiode spacing.