Category:FOCAL: Difference between revisions

From Rosetta Code
Content added Content deleted
(how to run FOCAL in an emulator)
Line 7: Line 7:
There is a 256-line PDP-8 emulator in C which can run the included FOCAL binary tape image. Note that programs will run much faster than on a real PDP-8.
There is a 256-line PDP-8 emulator in C which can run the included FOCAL binary tape image. Note that programs will run much faster than on a real PDP-8.


Exit the emulator by pressing Ctrl-Backspace. The emulator will quit and dump the zero page of memory in octal.
Exit the emulator by pressing Ctrl-Backslash. The emulator will quit and dump the zero page of memory in octal.


<pre>
<pre>

Revision as of 19:07, 22 January 2021

This page is a stub. It needs more information! You can help Rosetta Code by filling it in!
Language
FOCAL
This programming language may be used to instruct a computer to perform a task.
See Also:


Listed below are all of the tasks on Rosetta Code which have been solved using FOCAL.

FOCAL, which is allegedly short for "Formulating On-line Calculations in Algebraic Language", is an imperative, interpreted programming language similar to JOSS. It was first introduced in 1968, and FOCAL-69 was widely used on the PDP-8 minicomputer from Digital Equipment Corporation. Like JOSS and BASIC, FOCAL was not intended to be used for developing large applications; the manual said it was "designed to help scientists, engineers, and students solve numerical problems." The design goals thus emphasize simplicity and accessibility. It could also be used satisfactorily on quite small computers: the FOCAL interpreter would run on a PDP-8 with only 4k words (6k bytes) of storage and still leave some space for user programs.

Running FOCAL in a PDP emulator

There is a 256-line PDP-8 emulator in C which can run the included FOCAL binary tape image. Note that programs will run much faster than on a real PDP-8.

Exit the emulator by pressing Ctrl-Backslash. The emulator will quit and dump the zero page of memory in octal.

$ git clone https://git.jeelabs.org/jcw/embello
$ cd embello/explore/1638-pdp8
$ make
$ ./p8 focal.bin 
LOAD 0000-7577 CHECK 1153

CONGRATULATIONS!!
YOU HAVE SUCCESSFULLY LOADED 'FOCAL,1969' ON A PDP-8 COMPUTER.


SHALL I RETAIN LOG, EXP, ATN ?:NO

SHALL I RETAIN SINE, COSINE ?:NO

PROCEED.

*W
C-FOCAL,1969
*
QUIT PC 2627
0000: 2667 5403 5403 2603 0004 0013 0100 6400
0010: 3140 3207 1006 3220 0046 2032 0000 3216
0020: 0000 7715 2407 3206 0000 3206 0000 3140
0030: 3770 3217 7776 0000 0000 5377 0000 0000
0040: 2030 0000 0000 0000 0000 0000 0000 0000
0050: 0000 6603 2004 6724 7735 0000 0000 0000
0060: 3217 1500 0000 2676 2666 0001 0215 0000
0070: 0005 0273 0214 0207 0203 0337 0212 0215
0100: 0001 7700 0256 7701 7600 7760 0177 0017
0110: 0277 7776 7477 0260 7540 7522 7563 7775
0120: 7773 7767 0077 0200 4000 2030 2155 5715
0130: 6000 6200 3140 3206 3140 3217 2017 2407
0140: 0521 1565 0477 0534 0554 2274 2502 1314
0150: 0721 2465 2155 2425 0302 2242 2360 0413
0160: 1517 1533 2035 0744 0700 2062 2726 0000
0170: 0000 0000 0000 0000 0000 0000 2741 7610

Pages in category "FOCAL"

The following 63 pages are in this category, out of 63 total.