Re: A83: What is the Best shell to run asm programs with.


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

Re: A83: What is the Best shell to run asm programs with.



On Mon, 04 Oct 1999 13:44:05 EDT, John McDougald wrote:

>   Great, thanks for helping me with the exit problem.
>
>  Ok, Next question.  Is there any site that has the documentation for 
>using
>the AShell, like how to get other programs into it so you can start from 
>the
>shell.  When I got the program there were no Docs with it.
>
>Thanks Again,
>  Johnny
>
>P.S.
>  If you can't tell, I'm one of the many people who HAD to get one for 1
>single math class nad now am using it as basically a "Game Boy"

  The readme for AShell83 is attached.

James Vernon
jimbob_v@hotmail.com

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
Name:        AShell83
Author:      Bill Nagel
Version:     1.0
Machine:     TI-83 Assembly
Released:    December 20, 1997

With this shell, asm programs can be up to 26K, and highscores are
   easily saved without using lists!

***SEE INSTRUCTIONS FOR IMPORTANT INFORMATION BELOW***

Features:
   You can now run any assembly program with only 1K free ram!
      Assembly progs can be up to 26K
   CoolShell+ style GUI
   Automatic detection of ASM progs (with header)
   Automatic detection of BASIC progs
   Lists programs in two columns, 16 progs can fit on one screen
   Free memory and program size displayed
   Program Descriptions
   Program Write-Back!
   Contrast Changing
   Automatic Power-Down (APD)

Version 1.0:
   First Public Release
   Added:
      Contrast changing
      Now exit AShell with the GRAPH key
      Saves highlighter position after game runs
      APD
Version 0.82:
   First beta version

Installation:

1) Copy ashell.83g to your calc
2) Run ASHELL

Instructions:

           *********************************
           *********  IMPORTANT  ***********
           *********************************
IN ORDER TO EXECUTE ANY PROGRAM WITH ONLY 1K OF FREE MEMORY,
ASHELL REORGANIZES PART OF THE TI-83'S MEMORY.  THIS CAN CAUSE
PROBLEMS WITH GAMES THAT USE EXTERNAL LEVELS.  TO SOLVE THIS
PROBLEM, ANY GAME THAT USES EXTERNAL LEVELS MUST BE UPLOADED
BEFORE THE LEVELS.  IF ZPWLDPNG IS UPLOADED BEFORE PENGUINS
THE GAME WILL NOT PLAY RIGHT.  THIS IS SOLVED WHEN ZPWLDPNG OR
ANY OTHER PENGUINS WORLD IS UPLOADED AFTER PENGUINS.
**************************************************************

Keys:
   UP/DOWN/LEFT/RIGHT - Select a program
   2ND/ENTER - Run highlighted program
   +/- - Change contrast
   GRAPH - Exit shell


Assembly Program Detection:
   Since there is no way to tell the difference between a squished asm
   program and basic program, a table is placed at the beginning of
   AShell-compatable asm programs:

    nop                     ;these 2 lines identify the program
    jr      prog_start      ;as AShell-compatable
    .dw     $0000         ;Version of table
    .dw     Description   ;Points to the program description
    .dw     Icon          ;Points to an 8x8 icon
    .dw     $0000         ;For future use ( *Libraries*? :)
prog_start:

   The following are placed anywhere in the program:

Description:
 .db "Super Game 1.0 by Me",0
Icon:
 .db %11111111    ;this example icon is a box
 .db %10000001    ;icons are not displayed by AShell
 .db %10000001    ;but the next version of Aurora will support
 .db %10000001    ;this format for icons
 .db %10000001
 .db %10000001
 .db %10000001
 .db %11111111

ATTENTION PROGRAMMERS!
   BE SURE NOT TO USE THIS AREA OF MEMORY IN YOUR ASM PROGRAMS:
 CMDSHADOW   EQU                 9157h
   IT COULD EASILY CAUSE THE CALCULATOR TO CRASH!

   NOTE **ASHELL COMPATABLE PROGS MUST BE SQUISHED**
   THIS IS TAKEN CARE OF BY THE INCLUDED LINKER DEVPAC83
   BUT IF 83LNK IS USED, THE PROGRAM "SQUISH" WILL BE NEEDED.

Devpac83:
   A new linker by Hannes Edfeldt that prepares .83p from .bin meaning
   that the assembly program is already "squished" before its sent to 
   the 83!   No more need for squish.83p!  To use Devpac83:

 zasm progname

   So if you wanted to assemble alien.z80:

 zasm alien

Program Write-Back:
   As you may have noticed, many programs save their high scores into
   lists.  This is very inconvenient for programmers and gamers.
   AShell offers the programmer a very easy way to save high scores.
   The program currently loaded in $9327 is written back into its
   variable when the program is exited.  Any highscore/level data
   that is part of the program is saved.  For example, if you
   had this in your program:

Highscore:
 .dw 0           ;2 byte high score
Name:
 .db "JOE",0     ;NULL terminated string

   And you changed the highscore using something like this:

 ld hl,500
 ld (Highscore),hl

   The data at &Highscore would be saved along with the program and
   easy recalled the next time the program runs with:

 ld hl,(Highscore)

   and then displayed:

 call _dispHL

BASIC Program Detection:
   AShell detects any BASIC program that begins with a ":"
   For example, this prog would be detected:

________________
|PROGRAM:TEST  |
|::            |
|:Disp "HELLO" |
|              |
|              |
|              |
|              |
|              |
----------------

   This program would not be detected:
________________
|PROGRAM:TEST  |
|:Disp "HELLO" |
|              |
|              |
|              |
|              |
|              |
|              |
----------------

   BASIC Programs do not have descriptions, because it is simply
   not practical.  Instead, "BASIC Program" is displayed at the
   bottom of the screen.


My Homepage:
 http://www.tou.com/host/tiasm/

My Email:
 Currently it is: <b.nagel@usa.net>
 However, this might change in the future, and my fowarding address is:
    <penguin@your-house.com>

Special Thanks to Martin Hock, Hannes Edfelt, Mike Baker, Andy_S,
  Chad Palmer, Ahmed, and everyone who encouraged (nagged) me
  to make this.

Do not separate this document for AShell!

Copyright (C) 1997 Bill Nagel

Follow-Ups: