HAL: coming THURSDAY


[Prev][Next][Index][Thread]

HAL: coming THURSDAY



The release date and time is set in stone. HAL is coming on Thursday, July
31,
1997. Please join the writers, beta testers, and other interested programmers
for the HAL Release Party, scheduled from 7:00pm to 10:00pm EDT on the above
date on EFnet. Please see the bottom of this letter for more information.


For those who would like to know what HAL is:

The name, HAL, is an acronym, standing for Higher Assembly Language. It
makes assembly programming easier and more convenient for any programmer.
IF YOU ARE ALREADY ARE AN ADVANCED PROGRAMMER, DON'T THROW
THIS LETTER AWAY! Instead, skip to the section entitled "HAL for the advanced
programmer". It shows how HAL can suit your needs without using the basic
commands you don't even want. For those of you who are new to the assembly
world, HAL can allow you to create programs just as well as if you knew
assembly yourself. It's also a great learning tool for those of you looking
to learn
assembly.


How it works:

You run the editor. You type out a program using a basic language much like
the
one on your calculator or computer already. You press compile. You send the
file
via whatever form of link you use to your calculator. You run your new
assembly
program. It's THAT easy.


What you need (system requirements):

A DOS (or windows) based PC
A hard drive with 5MB available disk space
A keyboard
A COM or LPT port and/or a modem
Microsoft Windows vers. 3.1 or higher (editor only)
*A 17 foot monitor
*200 gig hard drive
*28.8 trillion bps modem
*A forty terahertz processor (Pentium based)
*8 megs of RAM (on the calculator I mean)

*Recommended


The best of HAL:

HAL creates an easy interface between the user and the Z80 chip. You are
given
the ultimate power over the calculator even if you have no idea how to use
it.

One of the most incredible results of HAL is the ability to create programs
for a
calculator type you don't even own. Even better than that, you can use the
SAME
SOURCE CODE (making adaptations for obvious factors like screen size). Even
better than that, You write one game that uses the link, press one button,
and,
boom you are able to play your game on your 85 against your friend and his
82!
WITH THE SAME SOURCE CODE!

Many of the people who decide to join the assembly world give up shortly
after
trying to use sprites. With HAL, you can use easysprt to draw your sprite on
a
calculator looking screen, attach it to your program (just by saving it), and
then
call it like this: sprite 12 42 MySprite. It's that easy.
Check this excerpt from an existing HAL program out:
    if (d == Up)
      dec y
    endif
    x_loc[cur_plr] = x
    y_loc[cur_plr] = y
    sprite x y tank[d]
    goto MainLoop
If d does equal "Up", the sprite, tankUp, will be drawn at x y. Notice all of
the
variables used in that segment. The largest one, d, uses only two bytes of
memory. No VAT. Just a pointer in the assembled code and the data. Another
way HAL saves every bit (literally) of memory.

What about math? Can you only do one function at a time? Can you work with
only one variable type at a time? Of course not. As many math functions as
you
want with as many different variable types as you want can be on a line.


A list of a few features:

 Several HUNDRED basic commands
 Easy syntax takes no getting used to
 Many types of variables including:
 + Strings
 + Arrays from 1 to 3 dimentions
 + Pointers
 + Direct access to TI-OS variables
 + Permanent variables (for high scores etc.)
 + And more!
 Get input with the same input command TI uses (close anyway)
 Easy interaction with basic and assembly:
 + Advanced prgrammers can use HAL
 + HAL can be used as a learning aid
 + The HAL editor can be used for one-step compiling of asm programs
 Immediate one-step compiling for all four Z80 based calculators
 Advanced routines including:
 + Link routines for multi-calculator games
 + Sound commands
 + Single line sprites eliminating the sprite hassle
 + Graphics commands
 + Two random number generators
 + And several more!
 Math routines remove the math hassle:
 + Addition
 + Subraction
 + Multiplication
 + Division
 + Exponents
 + Comparisons:
 ++ Equality
 ++ Greater than
 ++ Less than
 ++ Not equal to
 ++ Etc.
 + Boolean expressions:
 ++ And
 ++ Or
 ++ Xor
 ++ Not
 Optimizer cuts out unnecessary code
 Easy to use variable declaration
 Program debugging
 Forget listing it all...just try it!


HAL for the advanced programmer:

So you think you're smart, eh? Think you're too good for HAL? You're wrong.
Start by taking your best assembly program and open it up in HAL. Remove
the unnecessary .db's and include's from the top, and hit compile. Now,
compare
the resulting files. Wow, THEY'RE ABSOLUTELY IDENTICAL! Not a byte more
or less. Hmm... which do you like better, a DOS editor that is ugly, hard to
use,
requires many keystrokes to compile, and doesn't have a single feature to
it's
name? Or maybe the pretty Windows one with the nice interface, one-step com-
piling, and basic commands at your fingertips if you get lazy? Don't forget
the
multi-platforming. A few adaptations to direct assembly and you have a
program
for a calculator you've never seen since that Wal-Mart display. And there's
alt+tab. You don't have to worry about the include's and .db's any more. Hmm.
I know what I'd choose. Heck, I already did (so what if I'm biased).


Alright, the bad side:

Using certain HAL basic commands does make your programs a little larger
(25-30% for a good programmer, a 25% decrease for a bad one). Using just the
basic does limit what you can do. My reccomendation: mix, duh. Why use all
HAL? Then again, why use all assembly when you can purge once in a while?
Can you take your TI-Basic program and compile it into assembly? No. That is
a
BIG job. Almost an IMPOSSIBLE job. Learn HAL. Once you have it down pat,
you can convert TI-Basic to HAL at about 100 source bytes a minute.

HAL may not support several features by Thursday. The TI-86 compiler may not
be released yet. For those of you who have been hearing rumors about the 82
not
being supported, don't worry, it already is. The TI-82/83/85 compiler options
will be
available on Thursday. The 86 may or may not. It takes three weeks to port
these
compilers to other platforms, given the necessary support. The easysprt
sprite
editor has not been started yet. Wait a few weeks for that. Due to the
unusual
way TI decided to use to execute assembly programs, the TI-83 and 86 may
never
support the permanent variable types. The problem is being worked on.


How to contact us and where to find HAL:
E-mail:
 <EggplFarms@aol.com>
 <TGaArdvark@aol.com>
 <Retupmoc7@aol.com> (not currnetly in use)
The HAL Homepage:
 <http://members.aol.com/EggplFarms/HAL>
 (Will not be posted for at least another 24 hours)


HAL Release Party on EFnet:
Visit #HAL from 7:00pm to 10:00pm EDT on Thursday, July 31, 1997
If you are not familiar with EFnet, download mIRC from:
 <http://www.netjonez.com/mirc.html>
 (this address was picked randomly: it was the first 100% hit on a search for
 "mIRC". It looks helpful, though.)


This is just a tase of what HAL really is. To lern more, just respond to this
message with your questions in the body of the new letter (duh). PLEASE do
respond.
Responses to the mailing lists are also encouraged.


Sincerely,
Retupmoc7, creator of HAL
The Great aArdvark
All the little unimportant people
The staff of Eggplant Farms (which was just about covered by the above)