Z80 Assembly IDE
-----------------------------
A Revolution Software project
www.revsoft.org


This is my attempt at an Assembly Studio-like IDE for Linux.  It uses Spencer's
Assembler and Wabbitsign for the backend, and supports features like syntax coloring,
searching by label, a tabbed interface, and more.  There shouldn't be many bugs,
but if you find one please e-mail me at burntfuse@gmail.com or report it in the
Bugs thread in the section of our forums for this project.  See the INSTALL file
for instructions on installing, and NEWS for changes since the last version.
Any suggestions or comments are welcome!  If you have a feature request, though,
please see http://www.revsoft.org/phpBB2/viewtopic.php?t=665 first to make sure
I'm not already planning on implementing it.


Notes on include files:

Since SPASM uses slightly different syntax than TASM in places, instead of using
the standard ti83plus.inc for 83+ programs, you should download the SPASM-compatible
one at http://group.revsoft.org/ti83plus.inc, which uses the correct B_CALL definitions.
If you're programming for another calculator model, any normal include file will be
fine, but you'll need to put "#define equ .equ" at the top of your program or the
include file.


Known bugs:

If you replace selected text by typing or pasting, it'll register as two
separate actions and you'll have to press Undo twice to undo it.

If there are missing labels or bad instructions in your program, it will still
show "assembly successful", so make sure to check the output for errors.

Large files (>15000 lines?) may crash the assembler.

Lines that are not macro calls with a parenthesis at the end might not work right:
 you can replace "#define equ .equ / label equ 1+(2*3)" with "label = 1+(2*3)" to work around this.

Parentheses and operators can't be used inside single quotes as literal chars:
 for example, "ld a,')'", "ld a,'%'", or "ld a,'+'" may crash the assembler.


Some notes on the code:

First, don't send any flames about my code or coding style - I know a lot of it
is crap, and I'm already working on a complete rewrite.  Also, since I've
modified SPASM to have some extra features that the IDE needs, any changes from
the original are set apart by the advanced version-control method of putting
//START and //END comments around them (except for a few parts of the original
code which I've just commented out).


Thanks:

Spencer Putt for SPASM, the assembler
James Montelongo and Spencer for Wabbitsign, the binary-to-program converter
Kevin Kofler for putting together the RPMs and giving a lot of packaging and coding suggestions
TDLinux, threefingeredguy, and NanoWar for testing and giving feedback
Everyone else at revsoft.org for their support
the GNU guys for sed, which let me convert all 1140 opcodes with just a few regexps
Tarot Osuji, for the source of his text editor Leafpad, which I used for ideas when I was stuck
Slackware, FC5, and Ubuntu, the distros I used to write this
Parallel Realities for Metal Blob Solid, which kept me sane during development
Various underground metal and hardcore bands for some good music, which also kept me sane
(OK, now this section is just getting out of hand...)

Donald Straney
burntfuse
