The Atari Compendium
Table of Contents
About
Author & Publisher
Foreword
Limits of Liability and Disclaimer of Warranty
Trademark Affiliation
News
HYPertext Authors
?? Copyright ??
Used Tools and Programs
Introduction to Atari Programming
Atari Computer Hardware
260/520/1040 ST
Mega ST 2/4
STacy
1040 STe
Mega STe
TT030
ST Book
Falcon030
Atari 'Clone' Computers
Atari Computer Software
Atari GEM
Third-Party System Software
Geneva
MagiC
Programming Languages
Conventions
GEMDOS
The TOS File System
Memory Management
GEMDOS Processes
GEMDOS Vectors
MiNT
Processes
Threads
File System Extensions
Pseudo Drives
The U:\PROC Directory
Loadable Devices
Loadable File Systems
MiNT Interprocess Communication
Signal Table
MiNT Debugging
The MINT.CNF File
GEMDOS Character Functions
GEMDOS Time & Date Functions
GEMDOS Function Calling Procedure
GEMDOS Function Reference
File I/O (handles)
Drives and Directories
Device I/O (Console, Printer and RS232)
Other
TT030 Extensions
MiNT GEMDOS Extensions
Process Control
Signals' Handling
Interprocess Communication
Security
File System
Other
Cauxin()
Cauxis()
Cauxos()
Cauxout()
Cconin()
Cconis()
Cconos()
Cconout()
Cconrs()
Cconws()
Cnecin()
Cprnos()
Cprnout()
Crawcin()
Crawio()
Dclosedir()
Dcntl()
Dcreate()
Ddelete()
Dfree()
Dgetcwd()
Dgetdrv()
Dgetpath()
Dlock()
Dopendir()
Dpathconf()
Dreaddir()
Dreadlabel()
Drewinddir()
Dwritelabel()
Dxreaddir()
Dsetdrv()
Dsetpath()
Fattrib()
Fchmod()
Fchown()
Fclose()
Fcntl()
Fcreate()
Fdatime()
Fdelete()
Fdup()
Fforce()
Fgetchar()
Fgetdta()
Finstat()
Flink()
Flock()
Fmidipipe()
Fopen()
Foutstat()
Fpipe()
Fputchar()
Fread()
Freadlink()
Frename()
Fseek()
Fselect()
Fsetdta()
Fsfirst()
Fsnext()
Fsymlink()
Fwrite()
Fxattr()
Sync()
Maddalt()
Malloc()
Mfree()
Mshrink()
Mxalloc()
Pause()
Pdomain()
Pexec()
Pfork()
Pgetauid()
Pgetegid()
Pgeteuid()
Pgetgid()
Pgetgroups()
Pgetpgrp()
Pgetpid()
Pgetppid()
Pgetpriority()
Pgetuid()
Pkill()
Pmsg()
Pnice()
Prenice()
Prusage()
Psemaphore()
Psetauid()
Psetegid()
Pseteuid()
Psetgid()
Psetgroups()
Psetlimit()
Psetpgrp()
Psetpriority()
Psetregid()
Psetreuid()
Psetuid()
Psigaction()
Psigblock()
Psigintr()
Psignal()
Psigpause()
Psigpending()
Psigreturn()
Psigsetmask()
Pterm()
Pterm0()
Ptermres()
Pumask()
Pusrval()
Pvfork()
Pwait()
Pwait3()
Pwaitpid()
Salert()
Shutdown()
Ssystem()
Super()
Suptime()
Sversion()
Syield()
Sysconf()
Talarm()
Tgetdate()
Tgettime()
Tgettimeofday()
Tmalarm()
Tsetdate()
Tsetitimer()
Tsettime()
Tsettimeofday()
BIOS
System Startup
OS Header
The Cookie Jar
BIOS Devices
VT-52 Escape Codes
Media Change
BIOS Vectors
The XBRA Protocol
BIOS Function Calling Procedure
BIOS Function Reference
Bconin()
Bconout()
Bconstat()
Bcostat()
Drvmap()
Getbpb()
Getmpb()
Kbshift()
Mediach()
Rwabs()
Setexc()
Tickcal()
XBIOS
Video Control
The Falcon030 Sound System
The DSP
User/Supervisor Mode
MetaDOS
Keyboard and Mouse Control
Disk Functions
The Serial Port
Printer Control
Other XBIOS Functions
XBIOS Function Calling Procedure
XBIOS Function Reference
Screen XBIOS Functions
TT030 XBIOS Extensions
Falcon XBIOS Extensions
PSG XBIOS Functions
DMA Record/Playback XBIOS Functions
Connection Matrix
DSP XBIOS Functions
Keyboard XBIOS Functions
Screen Dump
Floppy XBIOS Functions
Devices XBIOS Functions
ST MFP Functions
Miscelaneous
Bconmap()
Bioskeys()
Blitmode()
Buffoper()
Buffptr()
Cursconf()
Dbmsg()
Devconnect()
DMAread()
DMAwrite()
Dosound()
Dsp_Available()
Dsp_BlkBytes()
Dsp_BlkHandShake()
Dsp_BlkUnpacked()
Dsp_BlkWords()
Dsp_DoBlock()
Dsp_ExecBoot()
Dsp_ExecProg()
Dsp_FlushSubroutines()
Dsp_GetProgAbility()
Dsp_GetWordSize()
Dsp_Hf0()
Dsp_Hf1()
Dsp_Hf2()
Dsp_Hf3()
Dsp_HStat()
Dsp_InqSubrAbility()
Dsp_InStream()
Dsp_IOStream()
Dsp_LoadProg()
Dsp_LoadSubroutine()
Dsp_Lock()
Dsp_LodToBinary()
Dsp_MultBlocks()
Dsp_OutStream()
Dsp_RemoveInterrupts()
Dsp_RequestUniqueAbility()
Dsp_Reserve()
Dsp_RunSubroutine()
Dsp_SetVectors()
Dsp_TriggerHC()
Dsp_Unlock()
Dsptristate()
EgetPalette()
EgetShift()
EsetBank()
EsetColor()
EsetGray()
EsetPalette()
EsetShift()
EsetSmear()
Flopfmt()
Floprate()
Floprd()
Flopver()
Flopwr()
Getrez()
Gettime()
Giaccess()
Gpio()
Ikbdws()
Initmous()
Iorec()
Jdisint()
Jenabint()
Kbdvbase()
Kbrate()
Keytbl()
Locksnd()
Logbase()
Metainit()
Mfpint()
Midiws()
NVMaccess()
Offgibit()
Ongibit()
Physbase()
Protobt()
Prtblk()
Puntaes()
Random()
Rsconf()
Scrdmp()
Setbuffer()
Setcolor()
Setinterrupt()
Setmode()
Setmontracks()
Setpalette()
Setprt()
Setscreen()
Settime()
Settracks()
Sndstatus()
Soundcmd()
Ssbrk()
Supexec()
Unlocksnd()
VgetMonitor()
VgetRGB()
VgetSize()
VsetMask()
VsetMode()
VsetRGB()
VsetScreen()
VsetSync()
Vsync()
WakeTime()
WavePlay()
Xbtimer()
Hardware
The 680x0 Processor
The 68881/882 Floating Point Coprocessor
Cartridges
Game Controllers
The IKBD Controller
IKBD command codes
STe/TT DMA Sound
The MICROWIRE Interface
Video Hardware
AES
Process Handling
Applications
AES_app_code
Desk Accessories
desk_acc_code
The Environment String
The Event Dispatcher
message loop
Resources
Objects
ob_next
ob_type
ob_flags
ob_state
ob_spec
obspec
Object Colors
Standard Object Color WORD
tedinfo
bitblk
iconblk
ciconblk
userblk
Dialogs
Menus
Windows
The Graphics Library
The File Selector Library
The Scrap Library
The Shell Library
The GEM.CNF File
AES Function Calling Procedure
AES Function Reference
Application Services Library
appl_exit()
appl_find()
appl_getinfo()
appl_init()
appl_read()
appl_search()
appl_tplay()
appl_trecord()
appl_write()
Event Library
evnt_button()
evnt_dclick()
evnt_keybd()
evnt_mesag()
evnt_mouse()
evnt_multi()
evnt_timer()
Form Library
form_alert()
form_button()
form_center()
form_dial()
form_do()
form_error()
form_keybd()
File Selector Library
fsel_exinput()
fsel_input()
Graphics Library
graf_dragbox()
graf_growbox()
graf_handle()
graf_mkstate()
graf_mouse()
graf_movebox()
graf_rubberbox()
graf_shrinkbox()
graf_slidebox()
graf_watchbox()
Menu Library
menu_attach()
menu_bar()
menu_icheck()
menu_ienable()
menu_istart()
menu_popup()
menu_register()
menu_settings()
menu_text()
menu_tnormal()
Object Library
objc_add()
objc_change()
objc_delete()
objc_draw()
objc_edit()
objc_find()
objc_offset()
objc_order()
objc_sysvar()
Resource Library
rsrc_free()
rsrc_gaddr()
rsrc_load()
rsrc_obfix()
rsrc_rcfix()
rsrc_saddr()
Scrap Library
scrp_read()
scrp_write()
Shell Library
shel_envrn()
shel_find()
shel_get()
shel_put()
shel_read()
shel_write()
Window Library
wind_calc()
wind_close()
wind_create()
wind_delete()
wind_find()
wind_get()
wind_new()
wind_open()
wind_set()
wind_update()
VDI
VDI Workstations
Workstation Specifics
Using Color
VDI Raster Forms
Vector Handling
GDOS
GDOS 1.x
FONTGDOS
FSMGDOS
SpeedoGDOS
Device Drivers
VDI Function Calling Procedure
VDI/GDOS Function Reference
VDI Workstation
v_clrwk()
v_clsvwk()
v_clswk()
v_opnvwk()
V_Opnvwk()
v_opnwk()
V_Opnwk()
v_updwk()
vs_clip()
vst_load_fonts()
vst_unload_fonts()
VDI Output
v_arc()
v_bar()
v_cellarray()
v_circle()
v_contourfill()
v_curdown()
v_ellarc()
v_ellipse()
v_ellpie()
v_fillarea()
v_gtext()
v_justified()
v_pieslice()
v_pline()
v_pmarker()
v_rbox()
v_rfbox()
vr_recfl()
VDI Attributes
vs_color()
vsf_color()
vsf_interior()
vsf_perimeter()
vsf_style()
vsf_udpat()
vsl_color()
vsl_ends()
vsl_type()
vsl_udsty()
vsl_width()
vsm_color()
vsm_height()
vsm_type()
vst_alignment()
vst_color()
vst_effects()
vst_font()
vst_height()
vst_point()
vst_rotation()
vswr_mode()
VDI Inquire
vq_cellarray()
vq_color()
vq_extnd()
vqf_attributes()
vqin_mode()
vql_attributes()
vqm_attributes()
vqt_attributes()
vqt_extent()
vqt_fontinfo()
vqt_name()
vqt_width()
VDI Raster
v_get_pixel()
vr_trnfm()
vro_cpyfm()
vrt_cpyfm()
VDI Input
v_hide_c()
v_show_c()
vex_butv()
vex_curv()
vex_motv()
vex_timv()
vq_key_s()
vq_mouse()
vrq_choice()
vrq_locator()
vrq_string()
vrq_valuator()
vsc_form()
vsin_mode()
vsm_choice()
vsm_locator()
vsm_string()
vsm_valuator()
VDI Escapes
VDI Alpha Escapes
v_alpha_text()
v_curhome()
v_curleft()
v_curright()
v_curtext()
v_curup()
v_eeol()
v_eeos()
v_enter_cur()
v_exit_cur()
v_offset()
v_rvoff()
v_rvon()
vq_chcells()
vq_curaddress()
vs_curaddress()
VDI Printer Escapes
v_bit_image()
v_clear_disp_list()
v_dspcur()
v_form_adv()
v_hardcopy()
v_output_window()
v_pgcount()
v_rmcur()
vq_scan()
vs_palette()
VDI Metafile Escapes
v_meta_extents()
v_write_meta()
vm_coords()
vm_filename()
vm_pagesize()
VDI Polaroid Escapes
vqp_error()
vqp_films()
vqp_state()
vsc_expose()
vsp_film()
vsp_message()
vsp_save()
vsp_state()
VDI Tablet Escapes
vq_tabstatus()
vq_tdimensions()
vt_alignment()
vt_axis()
vt_origin()
vt_resolution()
VDI Other Escapes
v_fontinit()
v_sound()
vs_mute()
VDI GDOS
VDI FONTGDOS
v_bez()
v_bez_fill()
v_bez_off()
v_bez_on()
v_bez_qual()
v_set_app_buff()
VDI FSMGDOS
v_flushcache()
v_ftext()
v_getoutline()
v_killoutline()
v_loadcache()
v_savecache()
vqt_advance()
vqt_cachesize()
vqt_devinfo()
vqt_f_extent()
vqt_get_table()
vst_arbpt()
vst_error()
vst_scratch()
vst_setsize()
vst_skew()
VDI SpeedoGDOS
v_ftext16()
v_ftext_offset()
v_ftext_offset16()
v_getbitmap_info()
vqt_advance32()
vqt_f_extent16()
vqt_fontheader()
vqt_pairkern()
vqt_trackkern()
vst_arbpt32()
vst_charmap()
vst_kern()
vst_setsize32()
vq_gdos()
Line-A
The Line-A Variable Table
Line-A Font Headers
Line-A Function Calling Procedure
Line-A Function Reference
Line-A Initialize
Line-A Plot Pixel
Line-A Get Pixel
Line-A Arbitrary Line
Line-A Horizontal Line
Line-A Filled Rectangle
Line-A Filled Polygon
Line-A BitBlt
Line-A TextBlt
Line-A Show Mouse
Line-A Hide Mouse
Line-A Transform Mouse
Line-A Undraw Sprite
Line-A Draw Sprite
Line-A Copy Raster
Line-A Seed Fill
The Desktop
MultiTOS Considerations
Desktop Files
XCONTROL The Extensible Control Panel
XCONTROL Structures
CPX Executable Format
CPX Flavors
Example Form CPX Skeleton
Example Event CPX Skeleton
CPX File Formats
XCONTROL Function Calling Procedure
XCONTROL Function Reference
XCONTROL Callback Functions
cpx_button()
cpx_call()
cpx_close()
cpx_draw()
cpx_hook()
cpx_init()
cpx_key()
cpx_m1()
cpx_m2()
cpx_timer()
cpx_wmove()
XCONTROL Utility Functions
CPX_Save()
Get_Buffer()
getcookie()
GetFirstRect()
GetNextRect()
MFsave()
Popup()
rsh_fix()
rsh_obfix()
Set_Evnt_Mask()
Sl_arrow()
Sl_dragx()
Sl_dragy()
Sl_size()
Sl_x()
Sl_y()
Xform_do()
XGen_Alert()
GEM User Interface Guidelines
The Basics
GEM Windows
Dialog Boxes
Alerts
The File Selector
Progress Indicators
Toolboxes
Toolbars
GEM Menus
Keyboard Equivalents
Device Independence
Globalization
Colors
Sound
Application Software
Installation Software
Entertainment Software
Function References
GEMDOS Functions by Opcode
BIOS Functions by Opcode
XBIOS Functions by Opcode
AES Functions by Opcode
VDI Functions by Opcode
Memory Map
MM: Usage
MM: System Boot Variables
MM: 680x0 Exception Vectors
MM: Auto-Vector Interrupts
MM: TRAP Exception Vectors
MM: 68881 Co-processor Exception Vectors
MM: 68851 MMU Exception Vectors
MM: Multi-Function Peripheral Port Vectors
MM: Multi-Function Peripheral Port Vectors (TT)
MM: Zilog 85C30 (SCC) Interrupt Vectors
MM: Processor State Save Area
MM: System Vectors
MM: System Variables
MM: System RAM / Expansion
MM: IDE Controller
MM: ROM / Reserved Hardware Space
MM: Memory Management Unit / Falcon Processor Control
MM: Video Registers
MM: ACSI DMA and Floppy Disk Controller
MM: SCSI DMA Control
MM: SCSI Controller Registers
MM: Programmable Sound Generator (YM 2149)
MM: DMA Sound System
MM: MICROWIRE
MM: Falcon030 DSP / DMA Controller
MM: Real Time Clock (146818A)
MM: BLiTTER Bit-Block Transfer Processor
MM: SCC DMA Registers
MM: SCC Ports (85C30)
MM: System Control Unit
MM: Mega STe Cache / Processor Control
MM: Extended Joystick / Paddle / Light Gun Ports
MM: Falcon030 VIDEL Palette Registers
MM: DSP Host Interface
MM: ST Multi-function Peripheral Port (68901)
MM: Math Co-processor in Peripheral Mode
MM: TT030 Multi-function Peripheral Port (68901)
MM: Keyboard ACIA (6850)
MM: MIDI ACIA (6850)
MM: Mega ST Real Time Clock (RP5C15)
MM: Expansion Area
MM: Shadow Image
Native File Formats
The .GEM File Format
The .IMG File Format
The .FNT File Format
The .RSC File Format
Error Codes
BIOS Errors
GEMDOS Errors
TOS Error Messages
TOS Error #35
Exception Errors
ASCII Tables
Original ATARI Character Table
ASCII Character Table With Code Numbers
IKBD Scan Codes
Speedo Fonts
The Speedo Font Header
The Bitstream International Character Set
The Bitstream International Character Set (part 1)
The Bitstream International Character Set (part 2)
The Bitstream International Character Set (part 3)
The Drag & Drop Protocol
The Originator
The Recipient
The Programmable Sound Generator
PSG Frequencies
Structures
SHELW
MN_SET
MENU
MFORM
EVNTREC
MD
MPB
BPB
context
FILESYS
DIR
LOCK
kerinfo
fcookie
FILEPTR
DEVDRV
DTA
XBRA
GDOS_INFO
netinfo
COOKIE
MUPB
OSHEADER
KBDVECS
aespb
PARMBLK
APPLBLK
USERBLK
CICON
CICONBLK
ICONBLK
BITBLK
TEDINFO
timeval
timezone
OBJC_COLORWORD
OBJECT
XCPB
CPXINFO
CPXHEAD
SIGACTION
PMSG
XATTR
DATETIME
xkey
winsize
ltchars
tchars
sgttyb
ploadinfo
FLOCK
DISKINFO
dev_descr
fs_descr
MFDB
VDI_Workstation
RGB
BIOS_TIME
PRTBLK
KEYTAB
IOREC
DSPBLOCK
SBUFPTR
MAPTAB
BCONMAP
MOBLK
MRETS
bfobspec
StdAOColWORD
OBSPEC
RSHDR
IMG_HEADER
FONT_HDR
APPLRECORD
PD
CD_DISC_INFO
CD_TOC_ENTRY
DOSTIME
META_DRVINFO
META_INFO_1
META_INFO_2
META_HEADER
MOUSE
PBDEF
PH
PUN_INFO
RGB_LIST
SCANX
SCREEN
SHELTAIL
SWINFO
XDO_INF
XFNT_INFO
Versions of System Components
Bibliography
Extended Table of Contents
Index