RE: LZ-Adv: Clearing up some TI-82 confusion.


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

RE: LZ-Adv: Clearing up some TI-82 confusion.



At 07:07 AM 10/29/96 -0500, Sam Davies wrote:
>I'd just like to clear up some of the clearing up ti-82 confusion :)


And I'd like to clear up some of the clearing up of the clearing up... ah,
never mind.


>The program variables on the 82 are actually handled in a simpler way than
the 85 does.  Since you must get everything from menus, you're right that
the program is already tokenized.  The program never changes.  This makes
programs a perfect variable to store the assembly language programs.  Also,
TI-82 programs have a built-in feature to be edit locked, so that there's no
way to look at the actual code on the 82.  This would be perfect for
Assembly programs, which would be ugly to look at in a program.


Hmm, yeah, except that the edit-lock feature modifies the program file, and
therefore the binary image.  D'oh!  But then again, the 82-Shell could skip
the first part anyway.  Dang.  All right, I suppose the 82's PROGRAM thingy
might be good... except for one thing!  Aha!  I betcha that some byte
combinations are INVALID!  Yep!  You can put whatever crap you want in a
string, and as long as the checksum checks out OK, the 85 doesn't give a
turd.  But the 82 probably DOES give a turd about the tokens you use, and if
it finds some tokens it doesn't like because they are impossible, it
probably balks quite a bit.  For example, if the tokens are two bytes each,
I'm sure there aren't EXACTLY 65,536 different commands/buttons on the 82.
Furthermore, some idiot executing a binary program would be in for a nasty
suprise.  Of course, the "End" token could be put at the beginning.  All
right, all right, this is beginning to sound almost feasable, except for the
potential problem of invalid tokens.


>	The rest of your mesasage is basically irrelevant ti-82 bashing.  The
ti-82 has a wide number of users in many schools, and I'm sure making a
zshell for it would be *very* popular, and worth our discussion time.


Hey, wait a second, you were DOGGING my ass there.  That's not very nice.
Can't we all just get along, dillhole?  Oh, and by the way, it's spelled
MESIGE, not MESASAGE.  Cretin.


Oh, come on, it really isn't all that irrelevant.  Think about it.  The 82
is basically a "dummy" calculator with weenie users.  The 85, on the other
hand, is a power calculator that actually has the ability to tokenize things
all by itself.  Wouldn't it be cool if all you got to type on your computer
was upper-case characters and you had to use a retarded kluge in order to
get lower-case characters?  Wait a second, that would SUCK.


The 82 has a low display resolution as well.  While that may not seem tragic
at first, if you think about it, you may notice something awry.  It's kind
of a weird resolution at 96 x 64 pixels.  That means that you can't index it
easily.  For example, here is a subroutine I'm using for portions of my
upcoming game Insane Game (DOWNLOAD IT SOON!  For those of you who care,
I've finished approximately 50% of the game, probably more.):


GetScreenAddr:
 ld bc,0
 ld hl,0
 ld a,(YCoord)
 ld l,a
 add hl,hl
 add hl,hl
 add hl,hl
 add hl,hl
 add hl,hl
 add hl,hl
 add hl,hl
 ld a,(XCoord)
 ld c,a
 add hl,bc
 ld bc,VIDEO_MEM
 add hl,bc
 ret


Oh boy, actual CODE!  Basically, it converts an X and a Y coordinate
pointing to part of a pseudo-16x8 array into their screen equivalent.  See
all those "add hl,hl" things?  (Keep in mind that this is pre-beta and I may
turn this into a repeating loop.)  Basically, it takes the Y coordinate (a
value from 0 to 7) and multiplies it by 128, then adds the X coordinate (a
value from 0 to 15).  128 is equal to 16*8; in other words, 16 bytes per row
* 8 rows per picture (my pictures are 1 byte by one byte).  Numbers like 128
are very nice, you see, because they can be represented by a power of 2 and
therefore a number of SLAs (or in this case, add hl,hl because you can't SLA
a 16-bit double register).  With 12 bytes per row rather than a nice smooth
16, however, the TI-82 would not be able to chug my lovely code (12*8 = 96 =
a number between 2^6 and 2^7).  I might end up having to HARDCODE the
information!  Horrors!  Hardcoding is NOT my friend.  Tight little
algorithms are my friends.  Those and the talking ponies.


However, if Mattias wants to continue forging the TI-82 frontier, by all
means he should continue.  I'm just a little skeptical about something ever
working.  I would love to be proven wrong, however, as any TI hack is a good
TI hack.  And of COURSE I think this whole thing is worth our discussion
time or I wouldn't have contributed to the thread in the first place.
 _______________________________________________________________________
|Martin Hock   -  oxymoron@aimnet.com   -  Oxymoron at #irchelp on EFnet|
|"I'm influenced by television?  That's a load of rich creamery butter!"|