BASIC Doesn't Have to Be That Basic
|
Posted on 24 January 1999
The following text was written by Patrick
Wilson: Hello everyone. I've been thinking a lot after submitting my
article, The TI Programming Alliance, and I realized
a few important things. People complain that good assembly programs are few and far between.
This is unfortunately true, however don't leave BASIC out. Unless it's for the TI-83 or
less. Let's face it, BASIC pretty much just sucks. With the exception of rapid development
and almost no risk of crashing, it's slow, cumbersome, inefficient, and resource lacking.
Assembly makes up for this, fixing all of these (most of the time). Now, I may have strayed
a bit, but... I bring these facts up for a reason and I'll get to the point in just a bit.
There is this group of highly talented BASIC programmers that go under the name of "BKSoft".
They make VERY good games for the TI-86. All in BASIC though. Second, an assembly program
under the name of ASAP X Command extends BASIC in a unique way. It adds simple, fast, and
very effective extensions to BASIC such as the ability to display inverted text, draw
sprites, test the existence of variables and much more. Now, I will explain why I've said so
many different things. What if BASIC was extended by so much, that you couldn't tell where
the BASIC ended and the ASM begins? That's right folks! Add assembly power functions to
the built-in BASIC. Just think, it wouldn't be that awfully hard. - Find
out what BASIC programmers want.
Personally, I want the ability to draw sprites, find
out whether or not the Axes or Coordinates or the Grid's are on, and have fast encryption
and decryption. Just think, a math program that didn't mess up your graph screen, a BASIC
RPG with fast moving sprites (Yes, BASSPro for the 86 does do this), and a way to encrypt
saved games with a password so no one can screw up your saved game when you almost beat it!
- Create an API.
OK, big idea coming! OK, you got one program that runs
tiny little applets in the form of a prgm file. The applets would add all the functionality,
while the big one would be run through the BASIC program wishing to use the applets. The
program would search for all applets with a certain header and load them. Finally, the
program could use the commands that were added by the applets. Phew!!! - Keep some
control.
We want functionality, not oversized crap. If this idea is put to use,
please use good judgment.
|
|
Reply to this item
|
Re: Article: "BASIC Doesn''t Have to be That Basic"
|
Max
|
I can't really get your point... Are you saying that we ought to mix ASM and Basic?... Why?Basic is really cool for making math and science progs, i think ASM is just for games. I don't need sprites in math programs. I think that such a mixed program (ASM/Basic) would be incredibly annoying to run, when running ASM parts it will be very fast and very slow when running Basic parts.
|
Reply to this comment
|
24 January 1999, 10:37 GMT
|
|
|
|
|
|
|
|
|
|
|
Re: Re: Re: Re: Article: "BASIC Doesn''t Have to be That Basic"
|
Josh Cunningham
|
I agree that there are many things that 'can't' be done, reasonably, with basic. Jimmy, you named a few. But all those are speed dependent. With the addition of small assembly programs that the basic program calls, all those are feasible, i.e.; sidescrollers, many moving objects, sound, and even grayscale. The main problem is speed. This is why assembly is mainstream for games. But the software industry is moving away from this. Yes by programming in assembly they could get their game to work on a 166 instead of a 266, but coding in assembly is a much more tedious task then in a higher level language. Plus with the addition of advanced libraries, and special assembly algorithms, it is much easier, and faster (to produce). Don't discourage basic programmers, and assembly programmers from basic. No it isn't perfect, but it what anyone can program in, and by helping basic programmers, all you do is help get better, more, and faster games out for you.
|
Reply to this comment
|
25 January 1999, 16:17 GMT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: Re: Article: "BASIC Doesn''t Have to be That Basic"
|
Josh Cunningham
|
No, an interpreted language won't be able to compete with the raw speed of assembly. But with the advent of a basic compiler, a whole new world comes into perspective. Now, I agree that assembly is the 'best' way to make truly fast games. But their is a huge lack of 'good' assembly programmers. On the other hand, their is an untapped fortune of good basic programmers. Now I am not saying that compiled basic programs will be able to threaten, lets say your SQRZ. But what compiled basic games, with special assembly algorithms, and libraries, will be able to do is allow _anyone_ to make good games. That are
fast, fun, and be produced, much faster than any assembly game every could. Not only will this enable Basic programmers to make much better games. But also allow a whole new wealth of math programs.
Even with these advancements, can basic truly rival assembly? Hmm that’s a question is beginning to be not so far fetched.
|
Reply to this comment
|
28 January 1999, 20:12 GMT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: Re: Re: Re: Re: Article: "BASIC Doesn''t Have to be That Basic"
|
David Phillips
(Web Page)
|
You couldn't do a side scroller in basic! It's not possible! You can't check for multiple keypresses, store tilemaps, scroll the screen, etc! Sure, I suppose that you could write assembly functions for all of that, but what would you be writting in basic? The game logic? No, that couldn't be done fast enough. Hmm, I can't think of a single part of a side scroller that can be done slow enough that it could be done in basic. The entire engine would have to be done in asm!
Basic is good for math, because that's what it was designed to do. Basic is a math scripting language, that's all it is! Usually you can't get much speed improvements doing pure FP (floating point) math in asm, because the FP calls still take the same amount of time, but anything else can be done thousands of times faster in asm than in basic!
|
Reply to this comment
|
25 January 1999, 22:46 GMT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It can sorta be done...
|
Piloter
|
I wrote a "spacewar" ish game for the -85 in BASIC once, a long long time ago... graphics consisting of cleverly - arranged outpt() lines. (!)
Then again, how about -85 DooM? I rewrote that to have variable weapon damage, health kits, keys, and an exit, not to mention a graphical realtime (Well, sort of.) editor (move cursor to a point on the map generated from the matrix, select what you wanted there) ..entire thing, pics, program, matrix, editor, left under 1000 bytes free. Unfortunately, this was lost when I axed my link85 directory by mistake. (DOH!) It can be done, decently, in basic.
|
Reply to this comment
|
29 January 1999, 18:43 GMT
|
|
|
|
|
Re: Re: Article: "BASIC Doesn't Have to be That Basic"
|
EJA
|
I think it would be great if they made a Basic with the power of ASM. People would be able to have better (Basic programs are USUALLY good) programs with less complex code (and if they wanted, user end modification). I myself program Basic and want to learn ASM (maybe I can next week), but I have too little time, so I stick to Basic (on the calc) and BASIC (on the Apple //C [YES, I USE AN APPLE // still], Commodore 64 [DITTO], Tandy 1000 [You get the point.], PCs, and occasionaly, the TRS-80).
|
Reply to this comment
|
28 January 2000, 22:09 GMT
|
|
Re: Article: "BASIC Doesn''t Have to be That Basic"
|
Ken Ritzert
|
Basic and ASM in one program not a good idea!
(lets leave it at that)
also ti-83 basic is almost as powerful as 86 basic so dont put it down unless youve tried it
|
Reply to this comment
|
24 January 1999, 15:31 GMT
|
|
Re: Article: "BASIC Doesn''t Have to be That Basic"
|
Mike
|
What are you all talking about? For people like me, who can't understand the difference between word.l and word.b execept the l and b would love a BASIC/asm program. I would like to be able to program with a highlevel language and also have the extra features of asm.
-Mike
|
Reply to this comment
|
24 January 1999, 17:09 GMT
|
|
Re: Article: "Ti-89 slower than Ti 92"
|
Michaïe Joffey
|
I think that your calculator has a little problem, bacause my Ti-86 does that in less than 4 seconds.So i think you should change your calculator by a 86 or exchange that with mine.
(Sorry for bad English)
|
Reply to this comment
|
24 January 1999, 17:43 GMT
|
|
Re: Article: "BASIC Doesn''t Have to be That Basic"
|
Chris F.
(Web Page)
|
I think the integration of ASM and BASIC is a good idea. Small applets that allow more functionality in BASIC programs are great.
The more functionality BASIC has, the more people program in BASIC (duh!). People are trying to get out of the BASIC language and step up to ASM, which is great. Will people really support this motion? I mean, other than BASIC programmers. You need ASM programmers to support this so that you can get the applets, etc. in the first place.
I myself would enjoy this but I'm trying to learn ASM because I can't see devoting much more time into integrating ASM into BASIC. Why don't I just learn ASM?
Don't get me wrong, I support this idea; but will ASM programmers? We've got to look at the solid facts here.
|
Reply to this comment
|
24 January 1999, 18:51 GMT
|
|
1 2 3 4 5 6 7 8 9 10 11
You can change the number of comments per page in Account Preferences.
|