Design Con 2015
Breaking News
Comments
Newest First | Oldest First | Threaded View
<<   <   Page 6 / 8   >   >>
Chesler
User Rank
Rookie
Re: PROGRAM
Chesler   1/8/2014 3:50:08 PM
NO RATINGS
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.

 

David Ashton
User Rank
Blogger
Re: Working!
David Ashton   1/8/2014 2:40:41 PM
NO RATINGS
@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.....

Chesler
User Rank
Rookie
Re: Working!
Chesler   1/8/2014 10:32:25 AM
NO RATINGS
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!

betajet
User Rank
CEO
Re: Working!
betajet   1/8/2014 9:39:11 AM
NO RATINGS
Now you just need to punch the updated program onto paper tape and you're done!

David Ashton
User Rank
Blogger
Working!
David Ashton   1/7/2014 11:22:33 PM
How about that!  You can still get good old GWbasic from here

http://gwbasic.webs.com/download.htm

or here, which has manuals as well

http://www.gw-basic.com/downloads.html

Pretty good value for 60K (yes K not M) of program!!

I got the program working -  as I thought, I had to initialise F and get the line numbers right for the jumps, but then it does work:

10  REM INPUT N, OUTPUT N!

20  PRINT "INPUT THE NUMBER THAT YOU WANT THE FACTORIAL OF"

30  INPUT N

35  F=1

70  IF N=1 THEN 100

80  F=F*N

85  N=N-1

90  GOTO 70

100  PRINT F

110  END

It only works up to N=30-something then it overflows.

Thanks guys, have not had this much fun in years!

 

David Ashton
User Rank
Blogger
PROGRAM
David Ashton   1/7/2014 10:36:42 PM
I decoded the whole thing (no, not too much time on my hands, just a boring job) and got

10  REM INPUT N ; OUUTPUT N! BY Y-512

20  PRINT "INPUT THE NUMBER THAT YOU WANT THE FACTORIAL OF"

30  INPUT N

40  N=N-1

70  IF N=1 THEN 100

80  F=F*N

90  GOTO 60

100  PRINT F

110  END

I can see how it is supposed to work but a couple of things here
  • in line 80 variable F is not initialised, maybe that machine initialised unknown variables to 1?
  • line 90 jumps back to line 60 which does not exist, probably should be line 40

If the above is true then it should work, multiply N by itself N times.

I don't have a BASIC machine to run it on, does anyone?

betajet
User Rank
CEO
Re: scanner?
betajet   1/7/2014 1:38:36 PM
Oooh!  Even parity!  (More to come)

First line looks like:

10  REM INPUT N ; OUUTPUT N! BY Y-512

A good reference for an ASCII table and paper tape format is the DEC PDP-11 Peripherals Handbook, which is actually available at bitsavers.trailing-edge.com.  It's 28 MB, but all gold :-)

Page B-4 has an ASCII table in octal, which is the easiest way to decode paper tape.

Page B-5 shows how the bits are punched onto paper tape.  Bit 7 (MSb) is even parity on your tape, so ignore it.

Edit: You can also find a good example of paper tape and an ASCII table at Wikipedia.  However, Wikipedia's table is better suited for decoding hexadecimal.

 

rfindley
User Rank
Rookie
Re: scanner?
rfindley   1/7/2014 12:40:03 PM
NO RATINGS
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.

Chesler
User Rank
Rookie
Re: scanner?
Chesler   1/7/2014 12:04:36 PM
NO RATINGS
h__p: //www.flicker.com/photos/chesler/11812689353



Max The Magnificent
User Rank
Blogger
Re: scanner?
Max The Magnificent   1/7/2014 11:49:33 AM
NO RATINGS
@Chester: For what it's worth, here is what the paper tape looks like:

Hi David -- I think you were trying to include a link to the image of your short paper tape program on Flickr, but for some reason it's not appearing -- if you email me the image I will make it available to folks.

<<   <   Page 6 / 8   >   >>


Top Comments of the Week
Flash Poll
Like Us on Facebook

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
EE Life
Frankenstein's Fix, Teardowns, Sideshows, Design Contests, Reader Content & More
Max Maxfield

Max's BADASS Display: A Comedy of Errors
Max Maxfield
2 comments
Good grief -- where does the time go? I first determined to build my Bodacious Acoustic Diagnostic Astoundingly Superior Spectromatic (BADASS) display way back in the mists of time we used ...

<b><a href=Betajet">

The Circle – The Future's Imperfect in the Present Tense
Betajet
5 comments
The Circle, a satirical, dystopian novel published in 2013 by San Francisco-based writer Dave Eggers, is about a large, very powerful technology company that combines aspects of Google, ...

Martin Rowe

Make This Engineering Museum a Reality
Martin Rowe
Post a comment
Vincent Valentine is a man on a mission. He wants to make the first house to ever have a telephone into a telephone museum. Without help, it may not happen.

Rich Quinnell

Making the Grade in Industrial Design
Rich Quinnell
16 comments
As every developer knows, there are the paper specifications for a product design, and then there are the real requirements. The paper specs are dry, bland, and rigidly numeric, making ...

Special Video Section
The LT8640 is a 42V, 5A synchronous step-down regulator ...
The LTC2000 high-speed DAC has low noise and excellent ...
How do you protect the load and ensure output continues to ...
General-purpose DACs have applications in instrumentation, ...
Linear Technology demonstrates its latest measurement ...
10:29
Demos from Maxim Integrated at Electronica 2014 show ...
Bosch CEO Stefan Finkbeiner shows off latest combo and ...
STMicroelectronics demoed this simple gesture control ...
Keysight shows you what signals lurk in real-time at 510MHz ...
TE Connectivity's clear-plastic, full-size model car shows ...
Why culture makes Linear Tech a winner.
Recently formed Architects of Modern Power consortium ...
Specially modified Corvette C7 Stingray responds to ex Indy ...
Avago’s ACPL-K30T is the first solid-state driver qualified ...
NXP launches its line of multi-gate, multifunction, ...
Doug Bailey, VP of marketing at Power Integrations, gives a ...
See how to ease software bring-up with DesignWare IP ...
DesignWare IP Prototyping Kits enable fast software ...
This video explores the LT3086, a new member of our LDO+ ...
In today’s modern electronic systems, the need for power ...