Copy Link
Add to Bookmark
Report

AtariST developers: Question and Answer Bulletin - June 1986

eZine's profile picture
Published in 
AtariST developers
 · 20 Mar 2021

  
-----------------------------------------------------------------
| |
| 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 June 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.

1. Discussion

We would like to clear up a bit of the confusion on the use of
the Alcyon version 4.14 C compiler. The programs which are
actually new in the system are cp, c0, and c1, the as68, and
ar68. The Motorola FFP (libf) and the double precision math pack
(libm) are upgraded and a new addition respectively. All the
other tools and programs on the disks are the standard issue in
the regular developer's kit. GEMLIB was modified slightly by
Alcyon to include procedures needed by the new math libraries.
In the future, everyone will be updated with a new linker.

The files on the disks have been organized in a two disk system
for C- development. There is some redundancy on the linker and
compiler disks with regard to batch.ttp, wait, and rm. The
header files for the AES and VDI are not included since you
already have them on the standard kit. You may configure the
.bat files any way you wish, but be especially vigilant to cf.bat
and linkf.bat which are intended to work as a pair. cf.bat has
the -f option which is telling the new c-compiler to use the
Motorola fast floating point. If you mix cf.bat with link.bat,
the first symptom you will see is "printf.o multiply defined." I
have done this accidently with my keyboard that has a sticking
"k" key. If you want to be safe, just make a batch file that
compiles and links your file in one operation. Remember also
that you must add stdio.h and ctype.h as before if you use those
functions.
-----------------------------------------------------------------

2. BIOS

Q: How can you initiate a screen dump from the keyboard?

A: Hold down the <Alternate> key and press <Help>. Be sure you
have done the correct printer installation if you are using a
non-Atari printer capable of doing raster dumps. Repeat the key
sequence to halt the print at any time. The best part of this
feature is that you can activate it from any program even if it
does not use GEM.

Q: How do you turn off the cursor in a TOS application?

A: Send the VT-52 escape to turn off the cursor. Look in the
Hitchhiker's Guide to the BIOS for a complete description of all
the escape codes.

-----------------------------------------------------------------

3. DOS

Q: How do I install partitions I have created with the hard disk
format program?

A: Select one of the drive icons on the desktop. Move the mouse
to the Options menu and select Install drive. Change the drive
identifier to your choice and select OK. Be sure to do a Save
desktop so that the installed drive will appear each time you
boot.

Q: How can I recover some files I accidentally trashed?

A: There is hope -- but not much. If you have not created a new
file since your accident, you may be able to use a disk utility
to view sectors and piece it back together. However, those
sectors may be scattered all over your disk. The best medicine
is prevention. Leave the confirm deletes option connected.
-----------------------------------------------------------------

4. VDI

Q: Looking into the VDIBIND library, I saw that there were many
functions which couldn't be found in VDIBIND.H. e.g. vro_cpyfm,
vs_clip. What is the reason for not including these in VDIBIND.
Can we include them or don't they work well?

A: VDIBIND.H is not necessary because all functions return an
integer value--if ever. All these functions are in the VDIBIND
object library.

Q: I was using vg_text to output a string. When I switched to
line-a to output the characters of the string one character at a
time it was slower -- why?

A: When you pass a string to the VDI you are performing only one
Trap or software interrupt. If you use line-a, you do a software
interrupt--and all of the overhead--on each character you output.
In the end, the same code outputs the pixels to the video RAM.
In some cases, like this, VDI can exceed line-a.

Q: What is the standard address of screen memory?

A: Unlike older systems, the ST can have video display memory
located anywhere as long as it is on 1k boundaries. Various
device drivers may be loaded in at boot time so it is impossible
to say that video memory has a fixed address. The only thing
that can be said for sure about the location is that it is
usually the high end of RAM.

-----------------------------------------------------------------

5. AES

Q: Is it possible to track the mouse through the process of menu
item selection? I need to change the appearance of items on the
fly.

A: No, this is not an option of the AES. The usual scenario is
to stay in the evnt_multi until a menu_event message is
returned.

Q: How many parameters does the objc_edit command have?

A: The correct number is five. The AES manual incorrectly states
six.

-----------------------------------------------------------------

6. Desktop

Q: I would like to know if information from the desktop.inf is
available to normal applications. I have noticed that the
control panel and VT 52 emulator accessories have access to this
information.

A: It is the responsibility of every application in the system
to save and restore changes to system variables. We do not
recommend an application going in to directly change the
desktop.inf. There is a constant danger of user modifications
causing damage to the system that cannot be supported. The best
way to change colors is through the vdi. Modifying the hardware
registers directly is also discouraged since you are locking your
application to one version of ST hardware. There are also xbios
entries for changing and inquiring printer and rs-232 data.
-----------------------------------------------------------------

7. BASIC

Q: How can I access the RS-232 from BASIC?

A: Where X is a character: For output use OUT 1,X and for input
use X = INP(1).

-----------------------------------------------------------------

8. Development Tools

Q: The function itoa is not in the C-runtime libraries. What
can I use for this function?

A: If you have a special case where you need a small number of
digits in a hurry, you can write a quick C function to convert an
integer to ASCII characters. Another way is if you have included
stdio, you can use sprintf to output an integer to a string.

Q: We are having serious troubles with C. The functions getchar
and stream reading does not work properly. In fact a German
version has modified "stdio.h" definitions, (sic) though it works
better has still problems.

A: There is another version of stdio.h floating around Europe
which uses a #define of getchar to be a BIOS Bconin(CON). This
does not help the scanf function however. There is also a danger
in using this version because when you mix Gem DOS calls (which
the C run-time uses), and direct BIOS calls to get characters
from the keyboard. A symptom of this has been noted as "10
characters disappearing" as the DOS buffers them up whenever a
printf is called. The safest replacements for getchar and scanf
are using Cconin and Cconrs+sscanf respectively.

-----------------------------------------------------------------

9. New On Compuserve

In data library 7 (for registered Atari Developers only) in the
Atari Developers SIG on Compuserve, the following files are new
this month:

gemlib Works with both Alcyon versions.
test.c Example using stdio to lst: and con:.
qa4.doc May Q/A newsletter.

← previous
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT