Skip to content

Commit 860f49b

Browse files
committed
Merge branch 'master' into fastbasic-fp
2 parents e4cd5e8 + 4290481 commit 860f49b

15 files changed

+781
-595
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ disk/%: %
111111
tr '\n' '\233' < $< > $@
112112

113113
disk/%.txt: %.md
114-
sed -e 's/`\(.*\)`/\1/g' < $< | tr '\n' '\233' > $@
114+
LC_ALL=C awk 'BEGIN{for(n=0;n<127;n++)chg[sprintf("%c",n)]=128+n} {l=length($$0);for(i=1;i<=l;i++){c=substr($$0,i,1);if(c=="`"){x=1-x;if(x)c="\002";else c="\026";}else if(x)c=chg[c];printf "%c",c;}printf "\233";}' < $< > $@
115115

116116
# Copy ".XEX" as ".COM"
117117
disk/fb.com: $(PROG)

README.md

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ This is a fast interpreter for the BASIC language on the Atari 8-bit computers.
55

66
The current features are:
77
- Support for 16bit integer variables;
8-
- Small size (currently less than 6k);
8+
- Small size (currently the IDE is less than 10k, and the runtime is less than 3k);
99
- Fast execution (currently, about 15% faster than compiled TurboBasicXL in the "sieve.bas" benchmark, 3.5 times faster than OSS Integer Basic);
1010
- Modern syntax (no line numbers, many control structures);
11-
- Feels "alike" TurboBasicXL.
11+
- Feels "alike" TurboBasicXL, with many of the extended statements.
12+
- Integrated editor and compiler.
1213

1314
For more support, see the AtariAge thread at:
14-
http://atariage.com/forums/topic/267197-preview-new-integer-basic-interpreter/
15+
http://atariage.com/forums/topic/267929-fastbasic-beta-version-available/
1516

1617
Manual
1718
------
@@ -24,6 +25,25 @@ Sample files
2425
In the "tests" folder there are some samples of the language.
2526

2627

28+
License
29+
-------
30+
31+
FastBasic is free software under the terms of the GNU General Public License,
32+
either version 2 or lather, see the file [LICENSE](LICENSE) for the full text.
33+
34+
The runtime is also under the following linking exception:
35+
36+
> In addition to the permissions in the GNU General Public License, the authors
37+
> give you unlimited permission to link the compiled version of this file into
38+
> combinations with other programs, and to distribute those combinations without
39+
> any restriction coming from the use of this file. (The General Public License
40+
> restrictions do apply in other respects; for example, they cover modification
41+
> of the file, and distribution when not linked into a combine executable.)
42+
43+
This means that you can distribute the compiled result of any program written
44+
by you under any license of your choosing, either proprietary or copyleft.
45+
46+
2747
Compiling the sources
2848
---------------------
2949

help.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
'
2-
' FastBasic - (c) 2017 dmsc
2+
' FastBasic FP - (c) 2017 dmsc
33
'
44
' Editor Help
55
' -----------
@@ -13,6 +13,7 @@
1313
' Ctrl-L : Load file
1414
' Ctrl-N : New file
1515
' Ctrl-R : Parse and run program
16+
' Ctrl-W : Compile to binary file
1617
'
1718
'�������������̭Π����à������
1819

manual.md

Lines changed: 48 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ Currently, FastBasic support:
3535
- Minimal string support.
3636
- Arrays with "word" and "byte" types.
3737
- User defined procedures.
38+
- Compilation to binary loadable files.
3839

3940

4041
First Steps
@@ -46,20 +47,21 @@ prompt. This will load the IDE and
4647
present you with a little help text:
4748

4849
--D:HELP.TXT-------------------0--
49-
' FastBasic - (c) 2017 dmsc
50+
' FastBasic FP - (c) 2017 dmsc
5051
'
5152
' Editor Help
5253
' -----------
53-
' Ctrl-A : Move to beg of line
54-
' Ctrl-E : Move to end of line
55-
' Ctrl-U : Page up
56-
' Ctrl-V : Page down
57-
' Ctrl-Z : Undo (only curr line)
58-
' Ctrl-Q : Exit to DOS
59-
' Ctrl-S : Save file
60-
' Ctrl-L : Load file
61-
' Ctrl-N : New file
62-
' Ctrl-R : Parse and run program
54+
' Ctrl-A : Move to beg of line
55+
' Ctrl-E : Move to end of line
56+
' Ctrl-U : Page up
57+
' Ctrl-V : Page down
58+
' Ctrl-Z : Undo (only curr line)
59+
' Ctrl-Q : Exit to DOS
60+
' Ctrl-S : Save file
61+
' Ctrl-L : Load file
62+
' Ctrl-N : New file
63+
' Ctrl-R : Parse and run program
64+
' Ctrl-W : Compile to binary file
6365
'
6466
'- Press CONTROL-N + ESC to begin -
6567

@@ -77,11 +79,12 @@ first column of the first line of the
7779
file being edited.
7880

7981
As the help text says, just press the
80-
`CONTROL` key and the letter N (at the
81-
same time) to begin editing a new file.
82-
The editor asks if you want to save the
83-
current file (the help text) to disk,
84-
to skip saving simply type `ESC`.
82+
`CONTROL` key and the letter `N` (at
83+
the same time) to begin editing a new
84+
file. The editor asks if you want to
85+
save the current file (the help text)
86+
to disk, to skip saving simply type
87+
`ESC`.
8588

8689
Now, you can start writing your BASIC
8790
program. Try the following example,
@@ -117,6 +120,35 @@ instead of running the cursor will be
117120
moved to the line and column of the
118121
error so you can correct it and retry.
119122

123+
Remember to save often, pressing the
124+
`CONTROL` and `S` keys, you need to
125+
supply a filename. Delete the old file
126+
with `BACKSPACE` and type the name of
127+
your new program, and `ENTER` to save.
128+
As with any prompt, you can press `ESC`
129+
to cancel the save operation.
130+
131+
132+
Compiling the program to disk
133+
=============================
134+
135+
One of the After you are satisfied with
136+
your program, you can compile to a disk
137+
file, producing a program that can be
138+
run directly from DOS.
139+
140+
Press the `CONTROL` and `W` key, and
141+
type a name for your compiled program.
142+
It is common practice to name your
143+
compiled programs with an extension of
144+
".COM" or ".XEX", also with ".COM"
145+
files you don't need to type the
146+
extension in some DOS.
147+
148+
Compiled programs include the full
149+
runtime, so you can distribute them
150+
alone without the IDE.
151+
120152

121153
About the syntax
122154
================

0 commit comments

Comments
 (0)