Article View: net.micro.atari16
Article #439Atari ST Q/A #3
From: Landon Dyer
Date: Tue, 15 Apr 1986 22:23
Date: Tue, 15 Apr 1986 22:23
262 lines
15302 bytes
15302 bytes
-----------------------------------------------------------------
| |
| AAA TTTTT AAA RRRR III **** SSS TTTTT |
| A A T A A R R I **** S S T |
| A A T A A R R I **** S T |
| AAAAA T AAAAA RRRR I ****** SSS T |
| A A T A A R R I ** ** ** S T |
| A A T A A R R I ** ** ** S S T |
| A A T A A R R III ** ** ** SSS T |
| |
| DDDD EEEEE V V EEEEE L OOO PPPP EEEEE RRRR SSS |
| D D E V V E L O O P P E R R S S |
| D D E V V E L O O P P E R R S |
| D D EEEE V V EEEE L O O PPPP EEEE RRRR SSS |
| D D E V V E L O O P E R R S |
| D D E V V E L O O P E R R S S |
| DDDD EEEEE V EEEEE LLLLL OOO P EEEEE R R SSS |
| |
-----------------------------------------------------------------
Question and Answer Bulletin April 1986
Copyright (C) 1986 by Atari Corp. "all rights reserved"
1196 Borregas Ave., Sunnyvale, Ca. 94086
-----------------------------------------------------------------
Here are the latest questions from the Atari developers mailbag
as answered by John Feagans, Director of Software Technology.
Leave questions on Compuserve for PIN 70007,1072 or GO PCS57 for
Atari developer SIG information.
-----------------------------------------------------------------
This months contents numeric pad that it has and
the VT-220 style that the ST
1 Corrections...............1 has is that the cursor keys
2 BIOS......................1 are located in the positions
3 DOS.......................2 of the *, -, +, and Enter key
4 VDI.......................2 on the numeric pad. The enter
5 AES.......................2 key itself is split into two
6 Desktop...................3 smaller keys.
7 Accessories...............3
8 BASIC.....................3 ------------------------------
9 LOGO......................3
10 Development tools.........4
11 New On Compuserve.........4 2. BIOS
------------------------------ *
Q: How do I make the buffer
1. Corrections larger for communication over
the MIDI port?
In the March 1986 issue I
mis-stated a description of A: Use the xbios call
the real VT-52 keyboard. This Iorec(MIDI) to get the address
device actually does have a of a structure which contains
numeric pad and cursor keys. a pointer to the existing
The difference between the buffer. Change it to point to
_________________________________________________________________
ATARI ST DEVELOPERS -1- April 1986
Question and Answer Bulletin
_________________________________________________________________
your new and bigger buffer.
Be sure to restore things when A: You need to construct a
you exit your program for the mono-plane mask with zeros
benefit of the application where the image in memory will
that follows yours. be transparent and ones where
the image in memory will
------------------------------ occupy space. Use the copy
raster transparent (vrt_cpyfm)
with transparent mode to cut a
3. DOS hole into the screen. Second
use vro_cpyfm with "or" mode 7
* to move the color image to the
Q: How do I get the address of screen. See section 6 of the
the DTA buffer for use with VDI manual for further
the Fsfirst() command? details.
A: There are two ways that you ------------------------------
can do this: 1) Allocate a
buffer yourself and use the
Fsetdta(ptr) to tell the 5. AES
system about it, or 2)
ptr=Fgetdta to use the one *
already defined. Q: How do I hide and show the
mouse?
*
Q: I am running out of stack A: Use the graf_mouse call. A
space when I link with useful thing to include in a
apstart.o. Where do I edit to header file are the following
increase the size? definitions:
#define HIDE_MOUSE
A: Look for the label ustk in graf_mouse(256,0x0L)
apstart.s. Directly preceding
it you will find a statement #define SHOW_MOUSE
".ds.l 256". This statement graf_mouse(257,0x0L)
allocates 256 * 4 words, or
about 1k of stack. To
increase the stack to 8k, make *
it ".ds.l 2048". Remember Q: In the mentst.c example
that declaring local arrays in program, why are so many
C will eat more stack space-- parameters in the evnt_multi
allocate accordingly. To make call zeroed out?
the apstart.o you must
assemble your new source by A: The reason for this is that
as68 -l -u apstart.s. in this example program we are
only interested in returning
------------------------------ if there was mouse event. We
are not interested in
keyboard, timer, or button
4. VDI events, hence we have a dummy
pointer as place holders in
* those parameter positions of
Q: How do I transfer a color the evnt_multi.
image from memory to the
screen without copying the ------------------------------
background around the image?
_________________________________________________________________
ATARI ST DEVELOPERS -2- April 1986
Question and Answer Bulletin
_________________________________________________________________
7. Accessories
6. Desktop
------------------------------
*
Q: How does the AUTO folder
work? 8. BASIC
A: If you create a folder *
named AUTO, the system looks Q: The accountants in my 50
for it on power-up boot and million dollar company do not
will execute any programs it like my basic programs as
finds inside. If there is large numbers will end up with
more than one program, the a few pennies added to the
programs will be executed in end. What can I do?
the order that they were
created in the folder. These A: You are seeing the effect
programs are named *.prg but of a single precision
it is not possible to have an scientific math package. The
auto-starting GEM application. maximum number of significant
However, the programs may use digits that can be stored is 6
the VDI, DOS, and BIOS. A to 7. Decimal fractions
good example to try is to cannot be accurately
place STWriter inside an AUTO represented by a binary
folder and it will start floating point structure. To
running on power-up. When you overcome the latter
exit STWriter, initialization limitation, you can store all
resumes and execution brings numbers as pennies, only
up the desktop. AUTO folders inserting the decimal point
are generally used for drivers when inputting or outputting
such as those for the them. To gain extra
hard-disk and printers. significant digits you can
save each number as an integer
Q: How can you get the name of whole and fractional part. To
the data file that initiated a really gain significant digits
program with an installed you might consider writing
document type? some math routines which
operate and store numbers in
A: For programs that have strings.
undergone the install
application option at the ------------------------------
desktop, it is easy to get the
name of the document. The
desktop program places the 9. LOGO
file name string in the
command tail. The command *
tail starts 80 hex into the Q: I keep getting an edit
base page. You can get this buffer full error. I have
information by accessing the tried turning off buffered
base page directly, or by graphics and not loading desk
main(argv,argc) from a C accessories to get more space.
program that uses gemstart.o. Will getting ROMs help me?
------------------------------ A: The edit buffer is a fixed
size. You need to break up
your program into smaller
_________________________________________________________________
ATARI ST DEVELOPERS -3- April 1986
Question and Answer Bulletin
_________________________________________________________________
segments and load them in. option specifies the drive on
Getting the ROMs would only which temporary files are
give you more program storage created. The variable d: is
and would not increase the the drive designation. For
size of the edit buffer. LINK68 TEM[d:].
------------------------------ ------------------------------
10. Development Tools 11. New On Compuserve
* In data library 7 (for
Q: How do I get the C-Compiler registered Atari Developers
to make a listing of my only) in the Atari Developers
program with line numbers SIG on Compuserve, the
following files are new this
A: The Alcyon C currently month:
supplied in the developers kit
does not have an option for WRITE.O C RTL fix
generating a listing. Errors LSTOUT.O " "
that are reported can be found CC.BAT " "
by using the editor to step to
that line in your source. I GEMDOS.DOC New improved.
hope that someone out there
will write a print/header and BCD.DOC Math package.
line number generating program GETDOB.C " "
to share with us in the data MATH.OBJ " "
libraries in the developers PRINTD.C " "
SIG.
RELMOD.C New improved.
*
Q: I am including stdio.h and SLDSET.PRG Image service.
linking with gemlib and libf, SLIDE.DOC " "
but I still have undefined SNPSHT.TOS " "
symbols etoa and ftoa in the SNPSVE.PRG " "
link step when I use printf.
TEMPLA.C GEM skeleton.
A: The order of the library
files in the link are FED.PRG font editor.
important. Make sure that FEDFIX.TTP " "
libf is listed after gemlib. FEDFIX.C " "
If you have any doubts you can FED.DOC " "
also list it as libf gemlib FRDME.DOC " "
libf. FONTUSE.DOC " "
FONTUSE.S " "
*
Q: I have a RAM disk program. STHDW.DOC New document.
I would like to speed up my
links by putting all the LARGE.S Porting aids.
linker created temporary files
on the RAM disk. How do I QA2.DOC Previous Q/A.
command the linker to do
this?
A: For LO68, -F d: The -F
_________________________________________________________________
ATARI ST DEVELOPERS -4- April 1986
Technical Details
Message-ID:
<187@atari.UUcp>Path:
arc1-ca.pugleaf.net!utzoo!watmath!clyde!burl!ulysses!allegra!princeton!orsvax1!pyrnj!caip!lll-crg!lll-lcc!vecpyr!atari!dyerShow Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!burl!ulysses!allegra!princeton!orsvax1!pyrnj!caip!lll-crg!lll-lcc!vecpyr!atari!dyer From: dyer@atari.UUcp (Landon Dyer) Newsgroups: net.micro.atari16 Subject: Atari ST Q/A #3 Message-ID: <187@atari.UUcp> Date: Tue, 15-Apr-86 17:23:17 EST Article-I.D.: atari.187 Posted: Tue Apr 15 17:23:17 1986 Date-Received: Sun, 20-Apr-86 05:42:33 EST Organization: Atari Corp., Sunnyvale CA Lines: 262 Keywords: Atari ST, Developers