Fast Basic

User avatar
karlm
Atari Super Hero
Atari Super Hero
Posts: 717
Joined: Thu Nov 13, 2003 4:09 am
Location: Top of the World - Australia

Fast Basic

Post by karlm »

I remember messing about with this aeons ago, and for a basic it was quite neat, especially with the integrated inline.

Now: does anyone have a full copy of the program (disk version) and even more rare, the roms from a cartridge version!?

cheers

karlm.
User avatar
PaulB
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2168
Joined: Tue Jun 11, 2002 10:56 pm
Location: You Kay

Post by PaulB »

I have the disk and rom cartridge versions. The reason it attracted me was the ability for inline assembly within the basic program. I haven't really played about with them though since i bought them a while back.
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

See the topic "Looking for Fast ST BASIC" You can download it in that thread.

I played around with it for a few days, pretty cool the assembler part built in. However no compiler to build standalone applications. Probably why it didn't really catch on.
User avatar
ggn
Atari God
Atari God
Posts: 1316
Joined: Sat Dec 28, 2002 4:49 pm

Post by ggn »

Really? I thought there was a compiler. IIRC programs like phraqtal (which I got from ST User aeons ago and still think it's awesome :) ) were written in fast basic. At least the hidden message (shown below) from that very program verifies that:
I'm writing this with the low quality Fast Basic built-in assembler... There are so many bugs that you must avoid, eg if you want to write something like "MOVEM.W addr(PC),D0-D4" then you must write "MOVEM.W addr-2(PC),D0-D4" to compensate for. the bug (I found that out the hard way!). Plus you can't do EXG R1,R2 if R1 or R2 is an address reg, you can't use absolute short address mode at all (annoying for those often-occurring raster interrupts), there is no optimising of BSR/BRA to BSR.S/BRA.S, and the Fast Basic program itself takes up about 300-400K! (I've just had to reboot after some of these lines were erased because of memory shortage, AND my ST has 1MB AND I don't use any desk accessories! Mind you, this prog needs 480K running space reserved). The crappy GEM windows and boxes style environment doesn't help, its so slow with the lame ROM screen redraws. All these faults even in my version which was one of the last ever made (the software house quit the ST scene). Despite this, I wouldn't buy DEVPAC 2, because it's so useful to have BASIC and assembly languages available at the same time. For example, if I want to make a sine table, I just write 3 lines of BASIC to put one wherever I want in my program, no messing about with loading other languages and saving files etc... also DEVPAC is too dear! Hi to everyone (anyone?) reading this message which has turned out to be quite long. I got a bit carried away! Why are you looking at this program anyway? Maybe you are wanting to know how to use the bottom border? I did the same! Or maybe you just like looking for hidden messages like this! If so, then if you hadn't thought of this already, try using the search feature on whatever you're using to look at this, and searching for the string "he" and "HE" in programs. That way, you'll find messages like this because "HE" is a common thing ("tHE", "tHEre", etc.) Well, I really better not strain my 1MB of memory any more - I've still to put the save feature in... Bye - C.E. No, that's not the end! I'm now writing this bit about 4 weeks later. What a disaster happened a couple of weeks back - see where it says that I had still to put the save in, well the disaster had something to do with that. The story goes like this... I had just written the save routine and so I decided to test it. What an idiot - I tested the save on the disk that I was working with... and because to routine was bugged, the disk died!!! To make matters ten times worse, I didn't know that there was a bug, because it seemed to save correctly at the time, and I went and ruined another disk (that my other programs are stored on) So that's 2 disks ruined, including the one that stored this very program. What's more, the last backup copy I had made was about 2 weeks old, and I had added a great deal since then. So I decided that I would have to salvage what I could from the trashed disk. I'll spare you the details, but it took a solid week's work to recover the program (I got about 99% of it back), and another few days to sort it out and make it runnable, cos it was a bit messed up. There's two valuable lessons there - make frequent backups and always test a save routine on a blank disk. Anyway, dry your tears because that's all in the past, and the program is practically finished now. It's the first really big program I've written, and I hope you like it. I also hope that you got this program off an ST Format or ST User cover disk, because that means that they decided to include it, and therefore paid me some money! If not, then you must have got this program from PD, because that's where I'll have to send it if none of the magazines want it. JESUS!!!!!! - I've just realised how much garbage I've written here. Congratulations if you actually read it all. I must go now, definitely.
is 73 Falcon patched atari games enough ? ^^
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

I'm not convinced it ever had a compiler. Every review I ever read fails to mention that if that is the case.

Basically it was interpreted assembler. There was a runtime thingy released later on floppy. Are you sure it's not some clever trick where the runtime is appended to the src file? I've seen this trick before with GFA files actually.

I found the file and it certainly looks like handed coded assembler to me. My guess is he may of wrote it and debugged it in fast basic, then compiled it with some assm package in the end. Typically higher level languages don't have data segments in the middle of text segments, and there is nothing in there that looks like lib calls or standard startup sequences.
User avatar
karlm
Atari Super Hero
Atari Super Hero
Posts: 717
Joined: Thu Nov 13, 2003 4:09 am
Location: Top of the World - Australia

Post by karlm »

I'm pretty sure like ggn that there is a stand-alone compiler, either that or there was a freely distributable runtime.
Almost positive that the compiler was there...

cheers

karlm
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

I have a copy of the runtime.
Well if there is a compiler I'd really like to see it sometime.
User avatar
ggn
Atari God
Atari God
Posts: 1316
Joined: Sat Dec 28, 2002 4:49 pm

Post by ggn »

lp wrote:I found the file and it certainly looks like handed coded assembler to me. My guess is he may of wrote it and debugged it in fast basic, then compiled it with some assm package in the end. Typically higher level languages don't have data segments in the middle of text segments, and there is nothing in there that looks like lib calls or standard startup sequences.
Well, if you read the text carefully the author didn't even consider buying devpac :). And since software back then wasn't very easy to acquire like these days (with the internet and all), I *suspect* that there must've been a compiler of sorts.

Regarding data segments: Haven't you even included data in the TEXT segment? Have not ever included hidden text in an executable (in between subtroutines, or at the start of the program and jumping over it)? One might not even use the data or BSS segment at all (I know for sure that turo assembler can't export to gfa .inl files if there is a bss segment).

Ok, I don't have any concrete evidence that there is a compiler, but what I found so far tends to point me to that direction. Again, I'm not certain.

Maybe if we tracked down the programmer of phraqtal and asked him?

George
is 73 Falcon patched atari games enough ? ^^
User avatar
PaulB
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2168
Joined: Tue Jun 11, 2002 10:56 pm
Location: You Kay

Post by PaulB »

I've got the manual somewhere. I have to dig it out and have a read.
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

ggn wrote:
"Regarding data segments: Haven't you even included data in the TEXT segment? Have not ever included hidden text in an executable (in between subtroutines, or at the start of the program and jumping over it)? One might not even use the data or BSS segment at all (I know for sure that turo assembler can't export to gfa .inl files if there is a bss segment)."

Yes, I am very familiar with GFA. As a matter of fact GFA's Compiler groups all the Inlines and every single line of text neatly at the end of the binary. Which is exactly my point about compiled basic. You generally have very little control over the resulting binary at all. Also basic compilers tend to leave distinctive marks like vdi or aes init sections, or some very basic starup code of some kind that is rather generic that you cannot stop it from inserting.

If phraqtal was compiled fast basic, it is the most advanced/flexible basic compiler I have ever seen. Having looked at a disassembly of phraqtal, that is my conclusion anyway.

I have found several reviews of all available basic's, they even go as far as saying that Fast Basic has the disavantage of not having a compiler.
When was phraqtal released? Because the reviews I read are dated around 1991, Fast Basic is reviewed right alone side of GFA which in the same review has the gfa v3 compiler and is thus rated as "alot faster".
User avatar
ggn
Atari God
Atari God
Posts: 1316
Joined: Sat Dec 28, 2002 4:49 pm

Post by ggn »

lp wrote:Yes, I am very familiar with GFA. As a matter of fact GFA's Compiler groups all the Inlines and every single line of text neatly at the end of the binary. Which is exactly my point about compiled basic. You generally have very little control over the resulting binary at all. Also basic compilers tend to leave distinctive marks like vdi or aes init sections, or some very basic starup code of some kind that is rather generic that you cannot stop it from inserting.

If phraqtal was compiled fast basic, it is the most advanced/flexible basic compiler I have ever seen. Having looked at a disassembly of phraqtal, that is my conclusion anyway.
Just to claryfy things: of course I know you know a lot of stuff about gfa, having read over the years (from c.s.a.s., your website etc.) what you have done with it :)

I just didn't consider the second paragraph of yours about the init code. I haven't studied the prg into such an extent :). Anyway, I think that if a basic compiler has assembler built in, it is quite difficult to arrange the data in such a way that it will be compilable with the mixture of basic code and direct asm.

Consider this though: say that you have some data which is pc relative, and you keep it on the right boundarys. What would happen if the compiler would throw the data at a bigger offset? What code would that generate? So I think it would be possible that the compiler, just to be safe, keeps the segments and the data etc. as they were structured by the programmer (and again I say that that text might have been included in the text segment of the asm source).

Now, about the init code: Maybe if gem isn't used the compiler simply doesn't include the init code for that??? (tep, it's nice to speculate :) )
lp wrote:I have found several reviews of all available basic's, they even go as far as saying that Fast Basic has the disavantage of not having a compiler.
When was phraqtal released? Because the reviews I read are dated around 1991, Fast Basic is reviewed right alone side of GFA which in the same review has the gfa v3 compiler and is thus rated as "alot faster".
Phraqtal was released in '91, I remember I got the coverdisk back then (can't remember the exact issue). The auhtor of this also published a small shoot'em'up by the name of 'zap'. perhaps that would hold some more hidden messages and clues. I'll try to track it down and see.

George
is 73 Falcon patched atari games enough ? ^^
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

gnn wrote:
"I just didn't consider the second paragraph of yours about the init code. I haven't studied the prg into such an extent Smile. Anyway, I think that if a basic compiler has assembler built in, it is quite difficult to arrange the data in such a way that it will be compilable with the mixture of basic code and direct asm.

Consider this though: say that you have some data which is pc relative, and you keep it on the right boundarys. What would happen if the compiler would throw the data at a bigger offset? What code would that generate? So I think it would be possible that the compiler, just to be safe, keeps the segments and the data etc. as they were structured by the programmer (and again I say that that text might have been included in the text segment of the asm source).

Now, about the init code: Maybe if gem isn't used the compiler simply doesn't include the init code for that??? (yep, it's nice to speculate Smile )"

These are valid points actually. Although in the other thread Mark copied the actual floppy and there is no compiler on the disk, nor did the other archive contain a compiler. Still not sure what to make of it entirely. Unless it was sold seperately, which is possible. If someone unearths such a compiler it would actually make it a useable package.
Last edited by lp on Wed Mar 14, 2012 8:12 pm, edited 1 time in total.
User avatar
ggn
Atari God
Atari God
Posts: 1316
Joined: Sat Dec 28, 2002 4:49 pm

Post by ggn »

It's weird though because I thought that Fast Basic was popular back in the day, and now it seems pretty hard getting info for it.
is 73 Falcon patched atari games enough ? ^^
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

There is another package called Fast/Basic-M from "Philon" which did have a compiler. However I have not been able to find a copy of that one anywhere, but you can read about it in some old magazine reviews.
User avatar
christos
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2549
Joined: Tue Apr 13, 2004 8:24 pm
Location: Greece

Post by christos »

I have found a yahoo group dedicated on philon
http://groups.yahoo.com/group/Philon/
User avatar
karlm
Atari Super Hero
Atari Super Hero
Posts: 717
Joined: Thu Nov 13, 2003 4:09 am
Location: Top of the World - Australia

Post by karlm »

Ok.

the main manual is ... -wait for it- ... 392 pages long.
According to the manual the original release was on Cartridge, which only had the main program. The disk version had the example programs with it.
Now:

"One answer would be to produce a compiler. ... compilers have other disadvantages: use of keywords EVAL and EXEC could not be permitted in compiled programs."

Instead they produced the runtime disk. This had the TAGGER program which would tag a runtime to the basic code and add 70K to the filesize. The RUNNER program was a standalone module that allowed the loading of basic files, it too was/is 70K long but has the advantage of not adding 70K to every program.

So lp was right. lp - any chance of an image of the runtime disk? I assume it has both the runner and tagger programs?

cheers

karlm
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

I do not have the original runtime disk or the tool that does the appending. Just happened to find the runtime itself in some disk collection mentioned in another thread. If you really want that I can upload it. You run it, and it prompts for a BASIC file.
User avatar
PaulB
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2168
Joined: Tue Jun 11, 2002 10:56 pm
Location: You Kay

Post by PaulB »

I dug out my Fasic Basic boxes. There's definitely no compiler on either disks. There is a makeauto.prg and makeacc.prg which appends the basic prg to itself as was already mentioned in this thread.

I zipped up both disks and attached them for your browsing. I couldn't copy the rom cartridge program to disk. It just gave an illegal operation dialogue but the fastbasic.prg from the disk version is there.

There are two folders in the zip file. The first, 'romdisk' is the contents of the disk that came with the rom version which is version 1.04. The second folder, 'diskvers' is version 1.05c but that one didn't have the makeauto.prg etc on it.
You do not have the required permissions to view the files attached to this post.
User avatar
karlm
Atari Super Hero
Atari Super Hero
Posts: 717
Joined: Thu Nov 13, 2003 4:09 am
Location: Top of the World - Australia

Post by karlm »

PaulB is a legend :)

Thanks heaps for that Paul!

cheers

karlm
User avatar
ggn
Atari God
Atari God
Posts: 1316
Joined: Sat Dec 28, 2002 4:49 pm

Post by ggn »

Well, tbh I haven't ruled out that they released a compiler afterwards. Anyway....
is 73 Falcon patched atari games enough ? ^^
User avatar
lp
Fuji Shaped Bastard
Fuji Shaped Bastard
Posts: 2821
Joined: Wed Nov 12, 2003 11:09 pm
Location: GFA Headquarters
Contact:

Post by lp »

There is however a full blow assembler by the same company. Fast ASM, seen it on ebay not too long ago. I had no idea that existed.
Last edited by lp on Mon Jun 12, 2006 10:07 am, edited 1 time in total.
User avatar
ggn
Atari God
Atari God
Posts: 1316
Joined: Sat Dec 28, 2002 4:49 pm

Post by ggn »

That explains some things :)

However I still can't get past the "I'm writing this with the low quality Fast Basic built-in assembler" bit from the hidden message on Phraqtal :D

George
is 73 Falcon patched atari games enough ? ^^
oioisaveloy
Atarian
Atarian
Posts: 2
Joined: Sun Oct 29, 2006 6:40 pm

Post by oioisaveloy »

Hi guys, I chanced across this discussion whilst searching for "Phraqtal" just for fun. I am the author of that program. It was quite entertaining for me to see that my program from so long ago is being discussed today (or at least within the last few months).

(What foresight I had to name the program with such an unusual spelling for easy googling. ) :lol:

My memory is very hazy, as the application was written around 1989 or 1990 I believe. However, I do recall that the only development software that I owned was Fast Basic. I did not own any stand alone assembler by the same company. Although it might seem masochistic, I did write the entire application using the inline assembler. So I guess there must have been a built-in compiler.

I hope this helps you guys,

Cheers,

Christian
User avatar
karlm
Atari Super Hero
Atari Super Hero
Posts: 717
Joined: Thu Nov 13, 2003 4:09 am
Location: Top of the World - Australia

Post by karlm »

holy crap batman :)

any chance any of your sources are still about?

cheers

karlm
jd
Atari Super Hero
Atari Super Hero
Posts: 542
Joined: Thu Nov 09, 2006 12:38 pm
Location: Ruislip, UK

Post by jd »

Fast basic - takes me back, did all my maths coursework using Fast Basic, got an A for it as well.

I loved Fast Basic, I used a friends disk copy when i was at school (naughty i know) but when i actually started earning money for myself i actually bought the cartridge version from a car boot sale, only cost me a fiver (very cheap at the time!), i also got the runtime disk and if i recall Computer Concepts advertised a compiler/runtime seperately. I'm sure it had some quirk whereby you couldn't have a dedicated standalone program but distributed your newly created masterpiece with a runner program that then ran you creation.

Getting all nostalgic now but just had to say my bit as it is what started me off with all this 'programming lark'................
Post Reply

Return to “Other BASIC”