From 17f30b83e9b9c689e72469567cf0e563e3afddd2 Mon Sep 17 00:00:00 2001 From: Cat's Eye Technologies Date: Mon, 20 Feb 2012 10:35:04 -0600 Subject: [PATCH] Abandon APPLE BEFUNGE RUNNER. --- README.markdown | 34 +++++++++++------ runner-apple befunge.txt | 82 ---------------------------------------- 2 files changed, 23 insertions(+), 93 deletions(-) delete mode 100644 runner-apple befunge.txt diff --git a/README.markdown b/README.markdown index 0152fe6..704ce56 100644 --- a/README.markdown +++ b/README.markdown @@ -1,6 +1,8 @@ Apple Befunge ============= +_Version 1.1, February 2012, Chris Pressey, Cat's Eye Technologies_ + Apple Befunge is a "retrolanguage" for the Apple ][+. Being written in Applesoft BASIC, it should also work on an Apple //e or similar model of 8-bit Apple computer (or, of course, an emulator thereof.) @@ -34,11 +36,12 @@ Letters `A` through `F` represent values 10 through 15, respectively. The `;` (semicolon) symbol begins and ends "ignoremode". -If the _x_ argument to `G` is negative, the result is `PEEK(_y_)`. +If the _x_ argument to `G` is negative, the result is `PEEK(`_y_`)`. -If the _x_ argument to `P` is negative, the result is `POKE _y_, _d_`. +If the _x_ argument to `P` is negative, the result is `POKE `_y_`, `_d_. -The `]` instruction pops an argument _a_ off the stack; the result is `CALL _a_`. +The `]` instruction pops an argument _a_ off the stack; the result is +`CALL `_a_. These three instructions allow a direct interface to the architecture of the 8-bit Apple system on which Apple Befunge is running. @@ -50,20 +53,28 @@ The distribution contains an Apple disk image, formatted with _ESDOS ][_. It contains: * a full visual debugger/editor for Apple Befunge called - `APPLE BEFUNGE EDITOR`; -* a less obtrustive but unfinished interpreter called - `APPLE BEFUNGE RUNNER`; and + `APPLE BEFUNGE EDITOR`; and * a handful of Befunge programs which have been converted to Apple Befunge format. The distribution also contains the source code, in ASCII text, for -`APPLE BEFUNGE EDITOR` and `APPLE BEFUNGE RUNNER`. +`APPLE BEFUNGE EDITOR`. It is intended to be copied-and-pasted into an +Apple ][+ emulator. This process, and the program itself, have been +tested on a recent version of [AppleWin](http://applewin.berlios.de/). + +In version 1.0 of the distribution there was also a program called +`APPLE BEFUNGE RUNNER`; its source code was intended to be pasted into +the emulator after that of `APPLE BEFUNGE EDITOR`, acting as a sort of +"diff", adding and deleting lines. This proved to be a nuisance for +maintaining `APPLE BEFUNGE EDITOR`. And I think `APPLE BEFUNGE EDITOR` +alone sort of gets the point across. So in version 1.1, `APPLE BEFUNGE +RUNNER` was abandoned. License ------- -The source code for `APPLE BEFUNGE EDITOR` and `APPLE BEFUNGE RUNNER` are -hereby placed, by me, the author, in the public domain. +The source code for `APPLE BEFUNGE EDITOR` is hereby placed, by me, the +author, in the public domain. Known Bugs and Shortcomings --------------------------- @@ -76,6 +87,7 @@ longer know how, but I could probably look it up. Subtle bug in either `%` (modulo) or `'` (greater than) or `hex.bf` -- not entirely sure which. -A good reorganization of `APPLE BEFUNGE EDITOR` source is in order. The +A good reorganization of `APPLE BEFUNGE EDITOR`'s source is in order. The push and pop subroutines should probably be as near the beginning of the -program as possible. Should hold more constant values in variables. +program as possible. More constant values should be held in variables, as +well. diff --git a/runner-apple befunge.txt b/runner-apple befunge.txt deleted file mode 100644 index e2ddda2..0000000 --- a/runner-apple befunge.txt +++ /dev/null @@ -1,82 +0,0 @@ -REM THIS SOURCE SHOULD FOLLOW UPLOAD OF 'APPLE BEFUNGE EDITOR' -REM AS IT USES IT AS THE BASIS FOR 'APPLE BEFUNGE RUNNER' -REM PROGRAMMING IN APPLESOFT IS MORE INTERESTING LIKE THIS :-) - -REM *** -REM BEWARE! -REM THIS SOURCE HAS NOT BEEN UPDATED YET -REM TO MATCH APPLE BEFUNGE EDITOR 1.1 -REM *** - -1 REM APPLE BEFUNGE RUNNER V1.0 -2 REM ----- ------- ------ ---- - -99 REM HOME -190 RM%=1:REM GOTO 710:REM EDIT -210 REM VTAB Y%+1:HTAB X%+1 - -310 RETURN: REM J%=0: REM ???DELETE 300-399 - -710 RETURN: REM GOSUB 8010:REM DISPLAY PAGE: REM ???DELETE 700-899 - -1500 REM & INPUT INTEGER:REM ???DELETE 1500-1599 -1510 REM -1520 REM -1530 INPUT "";WT$:D%=VAL(WT$):GOSUB 500:RETURN -1535 REM -1537 REM -1538 REM -1540 REM -1550 REM -1590 RETURN - -1800 REM , OUTPUT CHARACTER:REM ???DELETE 1800-1899 -1810 GOSUB 600 -1820 IF D%<>10 THEN GOTO 1880 -1825 PRINT:RETURN -1830 REM -1840 REM -1850 REM -1858 REM -1860 RETURN -1880 PRINT CHR$(D%);:RETURN -1882 REM -1890 RETURN - -2000 REM . OUTPUT INTEGER:REM ???DELETE 2000-2099 -2010 GOSUB 600 -2020 PRINT STR$(D%);" ";:RETURN -2030 REM -2090 RETURN - -2600 REM ~ INPUT CHARACTER -2601 REM USES = ON APPLE ][+ -2610 GET WT$:D%=ASC(WT$):GOSUB 500:RETURN -2615 REM -2620 REM -2626 REM -2628 REM -2630 REM -2640 REM -2690 RETURN - -2900 REM @ END PROGRAM -2910 END:REM -2920 REM -2930 REM -2935 REM -2940 REM -2990 REM - -3700 REM P PUT INTO SPACE -3710 GOSUB 600 -3715 E%=D% -3720 GOSUB 600 -3725 F%=D% -3730 GOSUB 600 -3732 IF F%<0 THEN POKE E%,D%:GOTO 3790 -3740 PG%(F%,E%)=D% -3742 RETURN:REM HTAB F%+1:VTAB E%+1:INVERSE:PRINT CHR$(D%);:NORMAL -3790 RETURN - -REM DELETE 6000-7129