ticalc.org
Basics Archives Community Services Programming
Hardware Help About Search Your Account
   Home :: Community :: Articles :: BASIC Doesn't Have to Be That Basic
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.

  1. 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!

  2. 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!!!

  3. 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: BASIC Doesn't Have to Be That Basic
George Wellman  Account Info

Hello, everyone... I don't know if this has been mentioned yet, but a very useful asm library for use with Basic is Zapi, for 83 and 83+. It does unlimited sprites, all contained in one neat little program, that you draw yourself on the computer. Unlike Omnicalc, you don't have to use up a picture variable. It also does instant graph or text inverse, scrolls the screen horizontally and vertically, stores one picture without taking up a pic file, or any memory at all, does unlimited pics in one asm program, does maps (again in one program), and does patterns. This program just plain owns! Also, sound routine for 83 and 83+ allows sound, and Rigview allows greysclae pics that can be run from basic. So, with these programs, Basic can (almost) be as fast and graphical as Asm! Check out my website, www.geocities.com/mightyg16, to see screenshots and inf about my upcoming game, Ender's Game.

Reply to this comment    1 August 2003, 20:26 GMT

Re: Article: "BASIC Doesn''t Have to be That Basic"
Jon Mullen
(Web Page)

OK, well. I'm a VB programmer, and I love the way VB lets you make GDI32 calls. Otherwise, I'd have to make all this bloated sprite stuff and junk...nasty. I think that there should be some ways to make calls to some ASM that would let us add MORE flexibility. BASIC isn't very flexible, but ASM is so...low level. I'm not saying it's difficult, no, but it's...cryptic. Atleast in BASIC one can always figure out what's going on. And I've been able to apply ALL of my knowledge from programming in QBasic on computer to TI-BASIC. Tell me you can apply EVERYTHING from Intel ASM to Z80 ASM...

Reply to this comment    24 March 1999, 03:50 GMT


Re: Re: Article: "BASIC Doesn''t Have to be That Basic"
Olathe  Account Info
(Web Page)

That's why they make ASM libraries.

Reply to this comment    19 August 1999, 09:25 GMT

Re: Article: "BASIC Doesn''t Have to be That Basic"
jgabby

My main complaint about TI-86 BASIC is that large programs take around 5 minutes to compile themselves on the calculator every time you make the smallest change. And on programs that are newly written and being debugged, this is a time-consuming hassle. The only way to get around the problem is to divide up into many small programs. Then you have problems with transferring to other calcs, having to make sure all parts are sent. I use ASM for text-based programs simply because it can't be beat for a simple, large scale database type program. It actually takes less time to type in, runs faster and takes up less space (about half) on the calc.

Reply to this comment    25 March 1999, 03:54 GMT


Re: Re: Article: "BASIC Doesn''t Have to be That Basic"
ShadowLord13

I use multiple sub-programs in all my BASIC programs, and it's not hard to transfer them to other calcs, because i give every program a 3-letter name that I prefix to the sub-programs, example:
War
warHIT
warDIE
warNXT
warNEW
warCONT
warINST

or

Graph3D
gtdPOLY
gtdSTAT
gtdSETUP

And when I go to send them, the prgms are all right together.
And when you run them, only the main program's first letter is capitalized, so u see those first on the PRGM menu! The sub-programs don't get in the way of the main prgms when you're trying to run a prgm, and they're easy to find, and send when you're giving them to someone else!
(All my prgms data uses the same scheme, warDATA for instance.)

It works, and cuts down on size too (using multiple subroutines instead of having a dozen copies of the same code scattered throughout one big prgm)

Also, i've noticed that whenever i try to edit a BASIC prgm that's larger than 15K, my calc crashes. I've got a ti-86, rom 1.2 (i think, maybe 1.3) Does this happen to anyone else? NOTE: It still does that when I've got NO asm programs on it, and did a full reset, because it kept doing that before i'd gotten any asm prgms or a graphlink, and it's taken me a year to figure out why it kept crashing! That it crashed is really why I started using subs, and I've noticed it slows down just a little with sub-prgms instead of one big prgm, and not from tokenizing.

Plus, with small prgms, tokenizing time is cut down, you modify one sub-prgm, you don't have to wait 5 minutes for the whole thing to retokenize.

Reply to this comment    21 June 1999, 16:54 GMT


BASIC vs. ASM
Stratotank Account Info

I do believe that a ASM translator needs to be written. That or creat a little notefolio description of ASM.

Reply to this comment    22 November 2003, 02:46 GMT


Re: BASIC vs. ASM
tsukasa x  Account Info

I would just like to say thatBasic is great (though ASM is much better).it's easy and faster to program and because of that i was able quickly able to make a program to findthe answers on on exam within very little time (yes i know i cheated)

Reply to this comment    15 December 2004, 19:39 GMT
1  2  3  4  5  6  7  8  9  10  11  

You can change the number of comments per page in Account Preferences.

  Copyright © 1996-2012, the ticalc.org project. All rights reserved. | Contact Us | Disclaimer