The ticalc.org Newsletter
http://www.ticalc.org/
March 1999 - Volume 2, Issue 3
IN THIS ISSUE
Letter from the Editor
Letter to the Editor
Calculator News
Programming in Assembly, Part I
Interview with Ahmed El-Helw
Miscellany
LETTER FROM THE EDITOR
Thank you for reading the ticalc.org newsletter! The Program of the Month voting continues this month. To see the programs which have been nominated and/or cast your vote for the best program in each category, go to http://www.ticalc.org/survey/potm/2.html. In order to vote you must be registered in our voting system. If you are not yet a registered voter on ticalc.org, please go to http://www.ticalc.org/survey/request.html before voting for the Program of the Month. The polls will remain open for one week, after which time the winners will be announced in an addendum to this newsletter.
Kirk Meyer
LETTER TO THE EDITOR
If you have anything that you would like to have published in this newsletter, please send it to newsletter@ticalc.org. Each month I will print one letter that I choose in the "Letter to the Editor" section. You can send letters regarding just about anything as long as they are constructive. Send your letters to the editor to newsletter@ticalc.org.
CALCULATOR NEWS
In calculator news this month, Icarus Productions has been active. Andreas Ess has released M.C. Mik v1.1u for Usgard and has also released the source code for an RPG he was working on. Additionally, Kirk Meyer has released Emulator86 v0.36, a TI-86 emulator, for Windows 3.1 and Windows 9x. It features *.85? and *.86? file loading, grayscale support, screenshot support, a disassembler, a debugger, a memory viewer, and support for the TI-Graph Link cable.
PROGRAMMING IN ASSEMBLY, PART I
This is the first of many installments on how to program in assembly language. I will start with the basics and then become more specific. When I deal with the specifics I will use the Z80 as my example for the sake of consistency. The concept of 68000 programming is the same, only the instructions and registers are different. In this installment, I thought I would begin by clearing up some common problems that beginners have with assembly language programming. The first of these is registers. In assembly language, the only things that you can do commands on, like add and subtract, are generally registers. There are very few registers in a microprocessor and they could never hold all of the data that you want them to. This aspect is usually confusing to people who have previously programmed in BASIC, where you have variables that can be easily accessed. In assembly language, you must store your variables somewhere, but that place and how much of it varies from calculator to calculator. Secondly, I want to give an introduction to the stack. The stack is one way to deal with the relatively small amount of registers by saving some of them for later. Think of the stack as a stack of plates. When you want to save a register for later, write the contents of the register on a plate and put it on top of the stack. Then, when you pick the plate up off the stack, you transfer what is written on the plate into ANY register of your choosing (because the original register is not written on the plate). As we will see at a later time, the stack also helps with calling subroutines. My tentative plan for future installments is to first talk about the registers in-depth, followed by a discussion of commands that can be performed using the registers. After that I plan to discuss memory and pointers. After that, the direction of this series depends mostly on what people tell me would be most helpful to them, so be sure to send your feedback to kirk@ticalc.org.
INTERVIEW WITH AHMED EL-HELW
Email: ahmed@ticalc.org
Web URL: http://hail.icestorm.com/asm
ICQ UIN: 3350394
Interview Log
|
Kirk
|
How old are you and what level of education do you have?
|
Ahmed
|
I am 15 years old. I am currently a junior in high school.
|
Kirk
|
What do you plan to do after you graduate?
|
Ahmed
|
First, I'll go to college. Then, I'll probably start my own computer company... I am not sure whether I'll stick with hardware or software, but most likely software.
|
Kirk
|
What calculators do you own?
|
Ahmed
|
82, 83, 86, and 89.
|
Kirk
|
Do you plan to buy any other calculators soon?
|
Ahmed
|
Not really anytime soon... Well, maybe once in college, I'll get a TI-92 or an HP...
|
Kirk
|
What do you use your calculator for most?
|
Ahmed
|
Well, I use it mainly for math - it comes in handy for AP Chemistry and my math classes, and I am sure it will be helpful on the AP Calculus exam... Besides that, I mainly program games or programs in assembly.
|
Kirk
|
When and how did you find out about the "TI Community" and when did you first visit ticalc.org?
|
Ahmed
|
Hmm... about 5 years ago, I found Bill Nagel's page while searching in Yahoo... I typed in all of Tetris and TurboBreakout by hand... it took a while, but it was well worth it... after that, I bought a GraphLink and so it began.
|
Kirk
|
When did you first visit ticalc.org?
|
Ahmed
|
My friend told me about it a few years ago... he gave me a link to there.
|
Kirk
|
What was the first program you ever wrote?
|
Ahmed
|
The first program I wrote was probably my "Periodic Table 83" program... it was a simple text based periodic table... now it is totally different.
|
Kirk
|
How did you learn to program in assembly language?
|
Ahmed
|
Well, I looked at Jimmy Mardell's ZShell toutorials and looked at a bunch of source codes -- on the top of my head I remember Andrew Von Dollen's "Contrast" program and David Erikson's Delete and ProgPTR programs.
|
Kirk
|
Do you have an idol TI programmer?
|
Ahmed
|
Well, I had several favorite programmers, each of which left the community or stopped programming. Probably now the only really active Z80 programmer that is doing some good ASM work is CLEM. You make some good math programs I have to say :) As for 68k, I really like the Gervaise brothers, they made some good programs...
|
Kirk
|
What projects are you working on now?
|
Ahmed
|
Right now, I am primarily working on learning 68k. I am working on a grayscale version of "Poke", which is a GameBoy game made by Andres G. - besides that, just a few small projects here and there.
|
Kirk
|
What advice would you give to people wanting to learn to program in assembly?
|
Ahmed
|
I suggest that they: 1. read toutorials; 2. look at source codes, look at source codes, and look at source codes; 3. EXPERIMENT! and 4. Question if in doubt.
|
|
MISCELLANY
There are two versions of the ticalc.org Newsletter, a plain text version and an HTML version. To subscribe, send an email to majordomo@lists.ticalc.org with either "subscribe newsletter" (for plain text) or "subscribe newsletter-html" (for HTML) in the body of the message. To unsubscribe, simply do the same thing except replace "subscribe" with "unsubscribe". You can find all issues of the ticalc.org Newsletter in our Features section under Newsletter. The exact URL is http://www.ticalc.org/features/newsletter/index.html. Any opinions expressed in this newsletter are the opinions of the newsletter editor and/or published authors. By no means are the opinions heretofore expressed to be considered representative of ticalc.org as a whole. Texas Instruments in no way endorses or is affiliated with ticalc.org. Any trademarks are hereby acknowledged as the property of their respective owners.
|