
Don't forget to bring your potluck goodies and one item for yourself at the annual SPACE Birthday Party.
With Summer on the only Atari Activity that I'm aware of is the Atari Show in Indianapolis, Indiana this August. I think it is the weekend of 12 and 13 August 1995.
Some members have started the inventory of the clubs assets at the Falcon Heights Community Center. One member is going to start up the ST DOMs. Good Show!
This month's meeting should be for fellowship and fun. Club planning and most other activities should be a priority item for the August and September 95 meetings.
Some items to think about for the August and September meetings are:
Stability and enhancement of club resources.
Permanent Officers.
Club activities for enjoyment and education.
BBS news this month isn't very bright. As you all know the BBS was off-line for a week. This time all users will have to logon again as a new user.
What happened was this:
The hard drive stopped (froze) totally and was scrapped. The MIO is difficult to start and scrambled data on the backup hard drive and one of the floppy backup copies. The 800XL is also acting strange. I've asked Rich to look at the MIO and the 800XL.
The ST format BBS is waiting for a high speed modem. Once on-line I'm sure that some of the features offered, that in my opinion are better, will be worth the wait.
Sorry about the BBS failure but that can't be helped. Evidently the thunderstorm activity that caused the bbs problem in May did more damage than what was originally thought. Thanks for your continued patience.
Mike Fitzpatrick, acting Space Club President, opened meeting at 7:35 PM. Mike asked everyone if they received their newsletters. Mike asked Greg leinter for a Treasurers' report. Greg gave a report. Mike also asked Mike Weist for a minutes report, which he gave. Mike announced after the meeting, there will be a ice cream social.
OLD BUSINESS-- Larry Serflaten asked Mike Fitzpatrick if club flyers are done. Mike said they are being worked on.
NEW BUSINESS---Willie Rora talked to the membership about a discount long distance service that is available through him. Mike Fitzpatrick asked the membership to think about it. The beneficiary of the saving could be the Space Club. Mike Fitzpatrick asked the membership if a motion was in order to sign up for this program. And make Space Club the beneficiary of the savings by using International Tele Data Company as a discount long distance telephone service. It was approved. Willie Rora handed out flyers.
BBS REPORT---Mike Fitzpatrick, also Club BBS. SYSOP, reported during a lightning storm damage was done to BBS software, doesn't seem to be any damage to hardware. System may by up by Sunday Nite.
Mike asked the membership if they would be interested in networking between BBS.'s down the road.
The upcoming Electronics show at Aldrich Arena was brought up. Since Mike Schmidt will have a flea market table outside the arena. Club advertising will be giving to Mike to hand out to people at the show about the Space Club. Mike Weist will help out Mike Schmidt at the show.
The Space club's 13th birthday will be held at next meeting, which will be July 14th. Members are urged to come and have a good time. A sign up sheet for bringing potluck items will be circulated after meeting.
Mike Fitzpatrick asked membership to submit Space Newsletter articles timely, which is two weeks before next meeting. The meeting was adjourned at 8:10 PM., so officers can do a inventory of Space Club property and let members have a Ice Cream Sundae.
Mike Weist Acting Club Secretary
+----------------------------------------+
| Larry's |
| ACTION! TUTORIAL |
+----------------------------------------+
#9 A WEALTH OF KNOWLEDGE
------------------------------------------
If you felt a little challenged these past
few issues, don't be alarmed. I want you
to have useful examples, which can be used
in your own programs, even if you lack the
skills to develop sophisticated software.
Time spent doing things you know how to do
will increase your skills, as well as your
library of reusable code! I will supply
a few useful routines you can use in your
programs, which you can study and learn
from. Not to say I am the worlds best
programmer, but I do offer help!
We have covered the Editor, Monitor, and
Compiler. Open your manual to the Library
table of contents. If you have tried to
use the BASIC language, you may recognize
many of the supplied procedures and
functions. In fact, the library is simply
a collection of PROC's and FUNC's that may
help the BASIC programmer shift to using
ACTION! It is the programmers option, to
use any of these routines, or none at all.
All of them are included in the cartridge.
Turn to the page containing the EOF(8)
routine. Lets design a test to see it
operate. With your Editor cleared, make
a list of 2-3 words and save it with the
filename of "D:TEOF". Clear your Editor
and type in this test routine:
PROC Main()
BYTE c
CLOSE(4)
OPEN(4,"D:TEOF",4,0)
DO
c=GetD(4) Put(c)
UNTIL EOF(4)
OD
CLOSE(4)
RETURN
Compile and run this program. Is the list
exactly as you typed it in? Mine has a
funny little character at the end. If
yours does too, you will benefit from this
next routine. Now above the MAIN routine,
type in:
BYTE FUNC SOF(BYTE a)
BYTE POINTER bp
bp=((a&7) LSH 4) + 835
IF bp^=3 THEN RETURN(1) FI
RETURN(0)
(Main should be here!)
Now change the EOF in the Main procedure,
to SOF and compile and run it. Isn't that
better? Since you now may have a better
routine, rename SOF to EOF and change the
Main procedure back to EOF. Try it again.
Did you notice the funny extra character?
Naming the new routine 'EOF' will in
effect replace the EOF array as used in
the library. You can do this for any of
the routines. The names of the procedures
and functions in the library ARE NOT
RESERVED names. In fact, this is why a
runtime library allows you to make
programs that do not need the cartridge.
The supplied routines are called instead
of the library routines of the same name.
Take the time to look over the library,
studying how to call each routine. Write
tests for the harder ones to be sure you
understand their usage.
For those of you wanting to dig a little
deeper into programming, type this in:
PROC See()
BYTE i=$E0,j=$E1
i=0
j=i+1
RETURN
After compiling this short procedure, use
"* See" in the Monitor to see the compiled
machine language code.
You can use the '*' (Dump) option in the
Monitor to check out how the ACTION!
system changes your text into machine
language. By typing in short programs,
you can manually disassemble the code to
help you learn machine language. It will
come in useful when you have larger
programs that you want to optimize. You
can expect to cut out about half of the
machine code that ACTION! uses, if you
want to do some optimization.
------------------------------------------
Thats the ACTION! system, next month we
take a brief look at the ATARI computer
system. After a few key points about the
ATARI computer, we can then, finally, get
to creating our own library.
+----------------------------------------+
| Larry's |
| ACTION! TUTORIAL |
+----------------------------------------+
#10 THE EFFECT OF CHANGE
------------------------------------------
To program your Atari, you really must
understand how the memory is organized,
how it is used, and which memory locations
cause what effects.
A real good book on this subject is;
MAPPING THE ATARI from Compute! Books.
Basically, your computer has RANDOM ACCESS
(RAM) and READ ONLY (ROM) memory. RAM is
used by the applications to hold program,
and user data. ROM is used by the
manufacturer to hold the OPERATING SYSTEM
(OS), and special purpose chips. The
chips may allow user access, but generally
you can not write to memory locations
above 40960 ($A000-$FFFF).
The special chips perform several of the
functions necessary to talk with the
outside world. Pokey handles serial port
Input and Output (I/O) and interrupt
requests, PIA handles the controller
jacks, and ANTIC handles the video screen.
The OS contains the code and data needed
to operate these chips. The PIA and ANTIC
are actually microprocessors, the ANTIC
chip is even run by a little program!
The OS uses some RAM to hold the variables
it needs to use; margins, colors, cursor
position and many other attributes change
as the computer operates. Knowing where
the OS keeps its variables allows the
programmer to alter them to produce subtle
and major changes in the way the computer
operates.
Using these variables is very easy in
Action! Simply by assigning an Action!
variable to the address of a hardware
register, or OS variable, your program
can manipulate them as needed. The OS
sometimes uses shadow registers which are
memory locations used to hold values used
in another register. Locations 704-712
are such registers. You can change these
color registers at any time, but the
change will not be seen until after a
vertical blank interrupt. If you instead
change the hardware register, the change
will take place immediately:
PROC registers()
BYTE ch=764, random=53770,
wsync=54282, toggle
CARD ARRAY regs=[710 53272]
BYTE POINTER bp
PrintE("Hardware/Shadow Esc=Exit")
PrintE("Press any key to alternate")
toggle=0
bp=regs(toggle)
PrintE("Shadow")
do
if ch<255 then
toggle==!1
bp=regs(toggle) ;Change registers
if toggle=0 then
PrintE("Shadow")
else ;Toggle=1 (!)
PrintE("Hardware")
fi
if ch=28 then EXIT ;Esc pressed
else ch=255 ;Reset ch
fi
fi
wsync=1 ;Wait for sync
bp^=random & $E6 ;Dark colors only
wsync=1
od
bp=regs(0) ;Restore original
bp^=148 ;color
RETURN
Location 710 is a shadow register of the
hardware register at location 53272.
The variable wsync is used to synchronize
the processor with the display screen.
Any time wsync is written to, the CPU is
halted until the scanning beam is at the
start of a new scan line. This program
demonstrates the difference between the
shadow and hardware register used to
give color to the background. Changing
the shadow register will change the
background color, only after the vertical
blank period (the time when the scanning
beam is turned off, going back to the top
of the screen). Changing the hardware
register will cause a color change in the
middle of displaying the screen. The new
value will take effect as soon as it is
stored (which happens every couple of
lines due to wsync). Remove the wsync
statements to see a new effect.
As this was written, SPACE BBS was in the
process of being moved to a new location.
Perhaps the best way to receive your
questions is by mail, otherwise, don't
hesitate to ask me about Action!
------------------------------------------
Next month, practical examples!
At the June meeting we finally started the long process of taking a complete inventory of SPACE hardware, software, magazines and literature. You would not believe all the assets the Club has accumulated over the years.
We are still missing some issues of magazines that were checked out long ago, but because we have not had a Paper Librarian for some months now, we are not sure what, when or who is involved with the missing items. When we have completed our inventory we will have a better idea of what is missing and who had them last. In the meantime please check at home to see if you may have an item that belongs to SPACE. We know it is easy to set something aside and forget about them if there is no one to remind you. Then these things end up on a shelf or in a closet until someone jars our memory. That is why we really need a volunteer to be our Paper Librarian in the future.
Now for some really good news about the treasury for June 1995. We took in a total of $109.00 which included two memberships, Dom sales and also $22.00 from the Ice Cream Social thanks to the Fitzpatrick's. Our only expenses for the month were the June BBS phone bill and the expense for April (no May> and June Newsletter. Our expenses only totaled $52.49 so we increased our bank balance by $57.51 which gives us a balance of $505.49 for the month ending June 30, 1995.
At the July meeting we will be celebrating our Club's birthday and we will be having a Pot Luck. Please bring something for everyone to enjoy and let's all have a good time. See you all then.
Just think about it, Space Club will be 13 years old, July 14, 1995. Happy Birthday SPACE!!!!!!!!. While other Atari Clubs are disappearing. Space Club is hanging in there. When you think about Space Birthday parties, what comes to mind. Could it be Ray Wafer's famous potato salad? Bill Cotter's special meatballs? Al Nobles famous Special K Bars? Nathan Block's famous Mcdonald's orange drink? etc. Or could it be just having a fun time?
Be sure to mark your calendars!!! July 14th!!!!!!! Be sure to invite a friend or call old Space members and invite them to come. Be sure to bring a potluck item or items to party. Be sure to be prepared to have a fun time! Here is a list of what some members will be bring to party.
---------------------------------------------------
Don Langford cookies & Vienna sausages Mike Fritzpatrick Plates and forks & spoons Greg Leinter Cold Pop Willie Rora Food Party Tray Ray Wafer Potato Salad Larry Serflaten ? Surprise Mike Schmidt ? Surprise Al Nobles Special K Bars Bill Cotter Delicious Meatballs RED Potato Chips Lance Ringquist ? Surprise Mike Weist Meat items
Published by the Saint Paul Atari Computer Enthusiasts (SPACE), an independent organization with no business affiliation with ATARI Corporation. Permission is granted to any similar organization with which SPACE exchanges newsletters to reprint material from this newsletter. We do however ask that credit be given to the authors and to SPACE. Opinions expressed are those of the authors and do not necessarily reflect the views of SPACE, the club officers, club members or ATARI Corporation.