1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-23 04:30:10 +00:00
cc65/libsrc/geos-common/symbols.txt
Oliver Schmidt 414a59ce65 Fixed typos.
2013-04-02 17:29:13 +03:00

487 lines
34 KiB
Plaintext

Source: The Hitchhiker's Guide To GEOS
http://lyonlabs.org/commodore/onrequest/geos-manuals/The_Hitchhikers_Guide_to_GEOS.pdf
GEOS Variables
==============
Name C64 C128 Apple Size Description
-------------------------------------------------------------------
alarmSetFlag $851c $851c n/a Byte TRUE if the alarm is set for GEOS to monitor, else FALSE.
alarmTmtVector $84ad $84ad $0212 Word Address of a service routine for the alarm clock time-out ...
alphaFlag $84b4 $84b4 $0225 Byte Flag for alphanumeric string input ...
appMain $849b $849b $0200 Word Vector that allows applications to include their own main loop ...
backBufPtr n/a $131b $9d7c 16 Bytes Screen pointer where the back buffer came from.
backXBufNum n/a $132b $d98c 8 Bytes For each sprite, there is one byte here for how many bytes ...
backYBufNum n/a $1333 $d994 8 Bytes For each sprite, there is one byte here for how many scanlines ...
bakclr0 $d021 $d021 n/a Byte Background color 0.
bakclr1 $d022 $d022 n/a Byte Background color 1.
bakclr2 $d023 $d023 n/a Byte Background color 2.
bakclr3 $d024 $d024 n/a Byte Background color 3.
baselineOffset $26 $26 $0218 Byte Offset from top line to baseline in character set.
bkvec $0316 $0316 n/a Word BRK instruction vector for when ROMs are switched in.
bootName $c006 $c006 $e003 9 Bytes This is the start of the "GEOS BOOT" string.
BRKVector $84af $84af $0214 Word Vector to the routine that is called when a BRK instruction is ...
cardDataPntr $2c $2c $60 Word This is a pointer to the actual card graphics data for the ...
CPU_DATA $01 n/a n/a Word Address of 6510 data register that controls the hardware memory ...
CPU_DDR $00 n/a n/a Byte Address of 6510 data direction register.
curDevice $ba $ba n/a Byte This holds the current serial device number.
curDirHead $8200 $8200 $fa80 256 | 39 Bytes For CBM, it is the buffer containing header infomation ...
curDrive $8489 $8489 $f60d Byte Holds the device number of the currently active disk drive.
curEnable n/a $1300 $0951 Byte This is an image of the C64 mobenble register.
curHeight $29 $29 $021b Byte Used to hold the card height in pixels of the current font in ...
curIndexTable $2a $2a $005e Word curIndexTable points to the table of sizes, in bytes, of each ...
curmobx2 n/a $1302 $d953 Byte Image of the C64 mobx2 register.
curnoby2 n/a $1301 $d952 Byte Image of the C64 moby2 register.
curPattern $22 $22 $022c Word curPattern points to the first byte of the graphics data for the ...
curRecord $8496 $8496 $f618 Byte Holds the current record number for an open VLIR file.
currentMode $2e $2e $021c Byte Holds the current text drawing node.
curSetWidth $27 $27 $0219 Word Holds the card width in pixels for the current font.
curType $88c6 $88c6 n/a Byte Holds the current disk type.
curXpos0 n/a $1303 $d954 16 Bytes The current X positions of the C128 and Apple soft sprites.
curYpos0 n/a $1313 $d964 8 Bytes The current Y positions for the C128 and Apple soft sprites.
dataDiskName $8453 $8453 $02b4 18 | 16 Bytes Holds the disk name that an application's data file is on.
dataFileName $8442 $8442 $02a4 17 | 16 Bytes This is the name of a data file to open.
dateCopy $c018 $c018 n/a 3 Bytes This is a copy of the system variables for year, month, and day.
day $8518 $8518 $f202 Byte Holds the value for current day.
dblClickCount $8515 $8515 $0258 Byte Used to determine when an icon is double clicked on.
devTabHi n/a n/a $fae7 4 Bytes For the Apple, these are the high and low bytes of the four ...
devTabLo n/a n/a $faeb 4 Bytes For the Apple, these are the high and low bytes of the four ...
devUnitTab n/a n/a $faef 4 Bytes The ProDos unit numbers of the four possible devices are kept ...
dir2Head $8900 $8900 n/a 256 Bytes This is the 2nd directory header block used for larger cpacity ...
dirBlkno n/a n/a $f620 Word Block number of the key block of the directory containing ...
dirEntryBuf $8400 $8400 $fa59 256 | 39 Bytes Buffer used to build a file's directory entry.
dirPtr n/a n/a $f622 Word Pointer into diskBlkBuf for this file's entry.
diskBlkBuf $8000 $8000 $f659 256 | 512 Bytes General disk block buffer. Initialized to all zeros.
diskOpenFlg $848a $848a $f617 Byte Set to TRUE or FALSE to indicate whether a disk is currently ...
dispBufferOn $2f $2f $021d Byte Routes graphic and text operations to either the foreground ...
dlgBoxRamBuf $851f $B51f $f381 417 | 649 Bytes This is the buffer for variables that are saved when desk ...
doRestFlag n/a $1b54 $db1d Byte Flag needed because of ouerlapping soft sprite problems on C128 ...
DrACurDkNm $841e $841e $faa7 18 | 16 Bytes This is the disk name of the current disk in drive A.
DrBCurDkNm $8430 $8430 $fab7 18 | 16 Bytes This is the disk name of the current disk in drive B.
DrCCurDkNm $88dc $88dc $fac7 18 | 16 Bytes This is the disk name of the current disk in drive C.
DrDCurDkNm $88ee $88ee $fad7 18 | 16 Bytes This is the disk name of the current disk in drive D.
driveData $88bf $88bf n/a 4 Bytes One byte is reserved for each disk drive, to be used by the ...
driveType $848e $848e $faf3 4 Bytes There are 4 bytes at location driveType, one for each of four ...
drSizeHi n/a n/a $fafb 4 Bytes The high bytes of the sizes of the four possible ...
drSizeLo n/a n/a $faf7 4 Bytes The low bytes of the sizes of the four possible ...
extclr $20 $20 n/a Byte Holds value for exterior (border) color.
faultData $84b6 $84b6 $0227 Byte Holds information about mouse faults.
fileHeader $8100 $8100 $f859 256 | 512 Bytes Buffer used to hold the header block for a GEOS file.
fileSize $8499 $8499 $f61b Word This is the current size (in blocks) of a file.
fileTrScTab $8300 $8300 n/a 256 Bytes For Commodore, it is the buffer used to hold the track and ...
fileWritten $8498 $8498 $f61a Byte Flag indicating if a if the currently open file has been written ...
firstBoot $88c5 $88c5 $0281 Byte This flag is changed from 0 to $FF when the deskTop comes up ...
fontData $850c $850c n/a(?) 9 Bytes Buffer for saving the user active font table when going into ...
fontTable $26 $26 n/a(?) 8 Bytes fontTable is a label for the beginning of variables for the ...
grcntr12 $d016 $d016 n/a Byte Graphics control reqister #2.
grcntrl1 $d011 $d011 n/a Byte Graphics control register #1.
grirq $d019 $d019 n/a Byte Graphics chip interrupt register.
grirqen $d01a $d01a n/a Byte Graphics chip interrupt enable register.
grmemptr $d018 $d018 n/a Byte Graphics memory pointer VM3-VttlO|CB13-CBll.
hour $8519 $8519 $f203 Byte Variable for hour.
iconSelFlag $84b5 $84b5 $0226 Byte This RAM variable contains flag bits in b7 and b6 to specify ...
indexBlkno n/a n/a $f624 Word Block number of the VLIR index table.
inputData $8506 $8506 $0247 4 Bytes This is where input drivers pass device specific information to ...
inputDevName $88cb $88cb $08cc 17 | 16 Bytes String that holds the name of the current input device.
inputVector $84a5 $84a5 $020a Word Pointer to routine to call on input device change.
intBotVector $849f $849f $0204 Word Vector to routine to call after the operating system interrupt ...
interleave $848c $848c n/a Byte Variable used by BlkAlloc routine as the desired interleave when ...
intSource n/a n/a $02c6 Byte Byte to indicate where interrupts are coming from on the Apple.
intTopVector $849d $849d $0202 Word Vector to routine to call before the operating system interrupt ...
invertBuffer n/a $1ced n/a 80 Bytes Buffer area used to speed up the 80 colunn InvertLine routine.
irqvec $0314 $0314 n/a Word IRQ vector.
isGEOS $848b $848b n/a Byte Flag to indicate whether the current disk is a GEOS disk.
keyData $8504 $8504 $0245 Byte Holds the ASCII value of the current last key that was pressed.
keyVector $84a3 $84a3 $0208 Word Vector to routine to call on keypress.
leftMargin $35 $35 $0220 Word Leftmost point for writing characters.
MachineType n/a n/a $02c4 Byte Type of Apple machine.
maxMouseSpeed $8501 $8501 $027d Byte Maximum speed for mouse cursor.
mcmclr0 $d025 $d025 n/a Byte This is the variable for multi-color mode colors 0.
mcmclr1 $d026 $d026 n/a Byte This is the variable for multi-color mode colors 1.
MenuNumber $84b7 $84b7 $0228 Byte Number of currently working menu.
minMouseSpeed $8502 $8502 $027e Byte Minimum speed for mouse cursor.
minutes $851a $851a $f204 Byte Variable for minutes for time of day clock.
mob0clr $d027 $d027 n/a Byte This is the color of the 1. object (sprite) on Commodore.
mob0xpos $d000 $d000 n/a(!) Byte This is the x position of sprite #0
mob0ypos $d001 $d001 n/a(!) Byte This is the y position of sprite #0
mob1clr $d028 $d028 n/a Byte This is the color of the 2. object (sprite) on Commodore.
mob1xpos $d002 $d002 n/a(!) Byte This is the x position of sprite #1
mob1ypos $d003 $d003 n/a(!) Byte This is the y position of sprite #1
mob2clr $d029 $d029 n/a Byte This is the color of the 3. object (sprite) on Commodore.
mob2xpos $d004 $d004 n/a(!) Byte This is the x position of sprite #2
mob2ypos $d005 $d005 n/a(!) Byte This is the y position of sprite #2
mob3clr $d02a $d02a n/a Byte This is the color of the 4. object (sprite) on Commodore.
mob3xpos $d006 $d006 n/a(!) Byte This is the x position of sprite #3
mob3ypos $d007 $d007 n/a(!) Byte This is the y position of sprite #3
mob4clr $d02b $d02b n/a Byte This is the color of the 5. object (sprite) on Commodore.
mob4xpos $d008 $d008 n/a(!) Byte This is the x position of sprite #4
mob4ypos $d009 $d009 n/a(!) Byte This is the y position of sprite #4
mob5clr $d02c $d02c n/a Byte This is the color of the 6. object (sprite) on Commodore.
mob5xpos $d00a $d00a n/a(!) Byte This is the x position of sprite #5
mob5ypos $d00b $d00b n/a(!) Byte This is the y position of sprite #5
mob6clr $d02d $d02d n/a Byte This is the color of the 7. object (sprite) on Commodore.
mob6xpos $d00c $d00c n/a(!) Byte This is the x position of sprite #6
mob6ypos $d00d $d00d n/a(!) Byte This is the y position of sprite #6
mob7clr $d02e $d02e n/a Byte This is the color of the 8. object (sprite) on Commodore.
mob7xpos $d00e $d00e n/a(!) Byte This is the x position of sprite #7
mob7ypos $d00f $d00f n/a(!) Byte This is the y position of sprite #7
mobbakcol $d01f $d01f n/a Byte Sprite to background collision register for Commodore.
mobenble $d015 $d015 $0818 Byte Sprite enable bits.
mobmcm $d01c $d01c n/a Byte Sprite multi-color mode select.
mobmobcol $d01e $d01e n/a Byte Object to object collision register.
mobprior $d01b $d01b n/a Byte Object to background priority.
mobx2 $d01d $d01d $0819 Byte Double object size in x.
moby2 $d017 $d017 $081a Byte Double object size in y.
month $8517 $8517 $f201 Byte Holds month for time of day clock.
mouseAccel $8503 $8503 $027f Byte Acceleration of mouse cursor.
mouseBottom $84b9 $84b9 $58 Byte Bottom most position for mouse cursor.
mouseFaultVec $84a7 $84a7 $020c Word Vector to routine to call when mouse goes outside region ...
mouseLeft $84ba $84ba $59 Word Left most position for mouse.
mouseOn $30 $30 $5d Byte Flag indicating that the mouse is mode is on.
mousePicData $84c1 $84c1 n/a 64 Bytes 64 byte array for the mouse sprite picture on Commodore.
mouseRight $84bc $84bc $5b Word Right most position for mouse.
mouseSave n/a $1b55 $ee53 24 Bytes Screen data for what is beneath mouse soft sprite.
mouseTop $84b8 $84b8 $57 Byte Top most position for mouse.
mouseVector $84a1 $84a1 $0206 Word Routine to call on a mouse key press.
mouseXOffset n/a n/a $0229 Word Offset from mouseXPos to draw the mouse sprite.
mouseXPos $3a $3a $0241 Word Mouse X position.
mouseYOffset n/a n/a $022b Byte Offset from mouseYPos to draw the mouse sprite.
mouseYPos $3c $3c $0243 Byte Mouse Y position.
msbxpos $d010 $d010 n/a Byte Most significant bits for x positions of sprites.
msePicPtr $31 $31 n/a Word Pointer to the mouse graphics data.
nationality $c010 $c010 $e00d Byte Byte to hold nationality of Kernal.
nmivec $0318 $0318 n/a Word NMI vector.
noEraseSprites n/a n/a $0240 Byte Flag to stop routine TempHideMouse fron erasing sprites #2 ...
numDrives $848d $848d $f60e Byte Set to number of drives on the system.
obj0Pointer $8ff8 $8ff8 n/a Byte Pointer to the picture data for sprite 0.
obj1Pointer $8ff9 $8ff9 n/a Byte Pointer to the picture data for sprite 1.
obj2Pointer $8ffa $8ffa n/a Byte Pointer to the picture data for sprite 2.
obj3Pointer $8ffb $8ffb n/a Byte Pointer to the picture data for sprite 3.
obj4Pointer $8ffc $8ffc n/a Byte Pointer to the picture data for sprite 4.
obj5Pointer $8ffd $8ffd n/a Byte Pointer to the picture data for sprite 5.
obj6Pointer $8ffe $8ffe n/a Byte Pointer to the picture data for sprite 6.
obj7Pointer $8fff $8fff n/a Byte Pointer to the picture data for sprite 7.
offFlag n/a n/a $027c Byte Flag telling whether the mouse needs to be redrawn.
otherPressVec $84a9 $84a9 $020e Word Vector to routine that is called when the mouse button is ...
pressFlag $39 $39 $08fe Byte Flag to indicate that a new key has been pressed.
PrntDiskName $8476 $8476 n/a 18 Bytes Disk name that current printer driver is on.
PrntFileName $8465 $8465 $08ac 17 | 16 Bytes Name of the current printer driver.
ramBase $88c7 $88c7 n/a 4 Bytes RAM bank for each disk drive to use if the drive type is either ...
ramExpSize $88c3 $88c3 n/a Byte Byte for number or RAM banks available in RAM expansion unit.
random $850a $850a $024c Word Variable incremented each interrupt to generate a randon nunber.
rasreg $d012 $d012 n/a Byte Raster register.
RecoverVector $84b1 $84b1 $0216 Word Pointer to routine that is called to recover the background ...
reqXpos0 n/a n/a $0800 Word This variable corresponds to the Commodore VIC chip register ...
reqXpos1 n/a n/a $0802 Word This variable corresponds to the Commodore VIC chip register ...
reqXpos2 n/a n/a $0804 Word This variable corresponds to the Commodore VIC chip register ...
reqXpos3 n/a n/a $0806 Word This variable corresponds to the Commodore VIC chip register ...
reqXpos4 n/a n/a $0808 Word This variable corresponds to the Commodore VIC chip register ...
reqXpos5 n/a n/a $080a Word This variable corresponds to the Commodore VIC chip register ...
reqXpos6 n/a n/a $080c Word This variable corresponds to the Commodore VIC chip register ...
reqXpos7 n/a n/a $080e Word This variable corresponds to the Commodore VIC chip register ...
returnAddress $3d $3d $64 Word Address to return to from in-line call.
rightMargin $37 $37 $0222 Word The rightmost point for writing characters.
savedmoby2 $88bb $88bb n/a Byte Saved value of moby2 for context saving done when dialogue boxes ...
saveFontTab $850c $850c $024e 9 | 10 Bytes When a menu is selected, the users active font table is saved ...
scr80colors n/a $88bd n/a Byte Screen colors for 80 column node on the C128.
scr80polar n/a $88bc n/a Byte Copy of reg 24 in the VDC for the C128.
screencolors $851e $851e n/a Byte Default screen colors.
seconds $851b $851b $f205 Byte Seconds variable for the time of day clock.
selectionFlash $84b3 $84b3 $0224 Byte Variable for the speed at which menu items and icons are ...
shiftBuf n/a $1b45 $70 7 Bytes Buffer for shifting/doubling sprites. Located in back RAM.
shiftOutBuf n/a $1b4c $78 7 Bytes Buffer for shifting/doubling/oring sprites. Located in back ...
sizeFlags n/a $1b53 $db1c Byte Height of sprite.
softOnes n/a $1c2d $d000 192 Bytes Buffer used for putting sprite bitmaps up on screen without ...
softZeros n/a $1b6d $d0e0 192 Bytes Buffer used for putting sprite bitnaps up on screen without ...
spr0pic $8a00 $8a00 n/a 64 Bytes This is where the graphics data for sprite 0 is kept on ...
spr1pic $8a40 $8a40 n/a 64 Bytes This is where the graphics data for sprite 1 is kept on ...
spr2pic $8a80 $8a80 n/a 64 Bytes This is where the graphics data for sprite 2 is kept on ...
spr3pic $8ac0 $8ac0 n/a 64 Bytes This is where the graphics data for sprite 3 is kept on ...
spr4pic $8b00 $8b00 n/a 64 Bytes This is where the graphics data for sprite 4 is kept on ...
spr5pic $8b40 $8b40 n/a 64 Bytes This is where the graphics data for sprite 5 is kept on ...
spr6pic $8b80 $8b80 n/a 64 Bytes This is where the graphics data for sprite 6 is kept on ...
spr7pic $8bc0 $8bc0 n/a 64 Bytes This is where the graphics data for sprite 7 is kept on ...
sspr1back n/a $133b $56d0 294 | 336 Bytes For the soft sprites #1, there is a buffer in the ...
sspr2back n/a $1461 $5820 294 | 336 Bytes For the soft sprites #2, there is a buffer in the ...
sspr3back n/a $1587 $5970 294 | 336 Bytes For the soft sprites #3, there is a buffer in the ...
sspr4back n/a $16ad $5ac0 294 | 336 Bytes For the soft sprites #4, there is a buffer in the ...
sspr5back n/a $17d3 $5c10 294 | 336 Bytes For the soft sprites #5, there is a buffer in the ...
sspr6back n/a $18f9 $5d60 294 | 336 Bytes For the soft sprites #6, there is a buffer in the ...
sspr7back n/a $1a1f $5eb0 294 | 336 Bytes For the soft sprites #7, there is a buffer in the ...
string $24 $24 $53 Word Used by GEOS as a pointer to string destinations for routines ...
StringFaultVec $84ab $84ab $0210 Word Vector called when an attempt is made to write a character ...
stringX $84be $84be $022e Word The X position for string input.
stringY $84c0 $84c0 $0230 Byte The Y position for string input.
sysDBData $851d $851d $0259 Byte Variable that is used internally to indicate which icon caused ...
sysFlgCopy $c012 $c012 n/a Byte This is a copy of the sysRAMFlg that is saved here when going ...
sysRAMFlg $88c4 $88c4 n/a Byte If RAM expansion in, Bank 0 is reserved for the Kernal's use.
totNumBlks n/a n/a $f60b Word Total number of blocks in current volume.
turboFlags $8492 $8492 n/a 4 Bytes The turbo state flags for drives 8 through 11 on Commodore.
usedRecords $8497 $8497 $f619 Byte Holds the number of records in an open VLIR file.
vdcClrMode n/a $88be n/a Byte Holds the current color mode for C128 color routines.
version $c00f $c00f $e00c Byte Holds byte indicating what version of GEOS is running.
windowTop $33 $33 $021e Byte Top line of window for text clipping.
year $8516 $8516 $f200 Byte Holds the year for the time of day clock.
GEOS Routines
=============
Name C64 C128 Apple Description
-----------------------------------------------------------
AllocateBlock $9048 $9048 $0300 Mark a disk block as in-use.
AppendRecord $c289 $c289 $0330 Insert a new VLIR record after the current record.
AuxDExit n/a n/a $efa9 Aux-driver deinstall and exit routine.
AuxDInt n/a n/a $efa3 Aux-driver interrupt level routine.
AuxDKeyFilter n/a n/a $efa6 Aux-driver keypress filter.
AuxDMain n/a n/a $efa0 Aux-driver MainLoop level routine.
BBMult $c160 $c160 $fecc Byte by byte (single-precision) unsigned multiply.
Bell n/a n/a $ff86 1000 Hz Bell sound.
BitmapClip $c2aa $c2aa $fe5a Display a compacted bitmap, clipping to a sub-window.
BitmapUp $c142 $c142 $fe54 Display a compacted bitmap without clipping.
BitOtherClip $c2c5 $c2c5 $fe5d BitmapClip with data coming from elsewhere (e.g., disk).
BldGDirEntry $c1f3 $c1f3 $036f Build a GEOS directory entry in memory.
BlkAlloc $c1fc $c1fc $0351 Allocate space on disk.
BlockProcess $c10c $c10c $feb4 Block process from running. Does not freeze timer.
BMult $c163 $c163 $fecf Byte by word unsigned multiply.
BootGEOS $c000 $c000 n/a Reboot GEOS. Requires only 128 bytes at $c000.
CalcBlksFree $c1db $c1db $0324 Calculate total number of free disk blocks.
CallRoutine $c1d8 $c1d8 $ff08 Pseudo-subroutine call. $0000 aborts call.
CancelPrint n/a n/a $6018 Cancel printing, clearing printer and I/O card buffers.
ChangeDiskDevice $c2bc $c2bc n/a Instruct CBM drive to change its serial device address.
ChkDkGEOS $c1de $c1de n/a Check CBM disk for GEOS format.
ClearCard n/a n/a $6715 Clear any buffered I/O operations.
ClearMouseMode $c19c $c19c $fe9f Stop input device monitoring.
ClearRam $c178 $c178 $fefc Clear memory to $00.
ClockInt n/a n/a $0803 Clock driver interrupt level routine.
CloseCard n/a n/a $670c Close access to I/O card.
CloseRecordFile $c277 $c277 $0333 Close currently open VLIR file.
CmpFString $c26e $c26e $fef0 Compare two fixed-length strings.
CmpString $c26b $c26b $feed Compare two null-terminated strings.
CopyFString $c268 $c268 $feea Copy a fixed-length string.
CopyFullScreen n/a n/a $ff92 Fast vertical screen copy.
CopyLine n/a n/a $ff5f Bit-boundary horizontal line copy.
CopyScreenBlock n/a n/a $ff5c Bit-boundary rectangle copy.
CopyString $c256 $c256 $fee7 Copy a null-terminated string.
CRC $c20e $c20e $ff14 Cyclic Reduncancy Check calculation.
Dabs $c16f $c16f $fedb Double-precision signed absolute value.
Ddec $c175 $c175 $fee1 Double-precison unsigned decrement.
Ddiv $c169 $c169 $fed5 Double-precision unsigned division.
DeleteDir n/a n/a $037e Delete directory.
DeleteFile $c238 $c238 $0357 Delete file.
DeleteRecord $c283 $c283 $0336 Delete current VLIR record.
DisablSprite $c1d5 $c1d5 $feab Disable sprite.
DivideBySeven n/a n/a $ff68 Quick division by seven for direct screen access.
DMult $c166 $c166 $fed2 Double-precision unsigned multiply.
Dnegate $c172 $c172 $fede Double-precision signed negation.
DoBOp n/a $c2ec n/a C128-backram memory primitive.
DoDlgBox $c256 $c256 $ff17 Display and begin interaction with dialog box.
DoIcons $c15a $c15a $fe0c Display and begin interaction with icons.
DoInlineReturn $c2a4 $c2a4 $fe09 Return from inline subroutine.
DoMenu $c151 $c151 $fe0f Display and begin interaction with menus.
DoneWithIO $c25f $c25f n/a Restore system after I/O across CBM serial bus.
DoPreviousMenu $c190 $c190 $fe15 Retract sub-menu and reactivate menus up one level.
DoRAMOp $c2d4 $c2d4 n/a CBM RAM-expansion unit access primitive.
DownDirectory n/a n/a $0381 Open subdirectory.
DrawLine $c130 $c130 $fe33 Draw, clear, or recover line between two endpoints.
DrawPoint $c133 $c133 $fe21 Draw, clear, or recover a single screen point.
DrawSprite $c1c6 $c1c6 $fea2 Define sprite image.
DSdiv $c16c $c16c $fed8 Double-precision signed division.
DShiftLeft $c15d $c15d $fec6 Double-precision left shift (zeros shifted in).
DShiftRight $c262 $c262 $fec9 Double-precision right shift (zeros shifted in).
EnableProcess $c109 $c109 $fec3 Make a process runable immediately.
EnablSprite $c1d2 $c1d2 $fea8 Enable sprite.
EnterDeskTop $c22c $c22c $ff59 Leave application and return to GEOS deskTop.
EnterTurbo $c214 $c214 n/a Activate CBM disk turbo on current drive.
EraseCharacter n/a n/a $ff3e Erase text character from screen.
ExitTurbo $c232 $c232 n/a Deactivate CBM disk turbo on current drive.
FastDelFile $c244 $c244 n/a Quick file delete (requires full track/sector list).
FdFTypesInDir n/a n/a $0363 Find files in directory other than current directory.
FetchRAM $c2cb $c2cb n/a Transfer data from CBM RAM-expansion unit.
FillRam $c17b $c17b $feff Fill memory with a particular byte.
FindBAMBit $c2ad $c2ad n/a Get allocation status of particular CBM disk block.
FindFile $c20b $c20b $0369 Search for a particular file.
FindFTypes $c23b $c23b $0366 Find all files of a particular GEOS type.
FindVBMBit n/a n/a $036c Get allocation status of particular ProDOS disk block.
FirstInit $c271 $c271 $ff11 GEOS startup entry point.
FndFilinDir n/a n/a $036c Find a file in a directory other than current directory.
FollowChain $c205 $c205 n/a Follow chain of CBM sectors, building track/sector table.
FrameRectangle $c127 $c127 $fe3f Draw a rectangular frame (outline).
FreeBlock $c2b9 $c2b9 $032a Mark a disk block as not-in-use.
FreeDir n/a n/a $03ba Free all blocks associated with a subdirectory.
FreeFile $c226 $c226 $035a Free all blocks assocatiated with a file.
FreezeProcess $c112 $c112 $feba Pause a process countdown timer.
Get1stDirEntry $9030 $9030 $039c Get first directory entry.
GetBlock $c1e4 $c1e4 $0300 Read single disk block into memory.
GetCharWidth $c1c9 $c1c9 $fe87 Calculate width of character without style attributes.
GetDimensions $790c $790c n/a Get CBM printer page dimensions.
GetDirHead $c247 $c247 $0372 Read directory header into memory.
GetFHdrInfo $c229 $c229 $0390 Read a GEOS file header into memory.
GetFile $c208 $c208 $030f Load GEOS file.
GetFreeDirBlk $c1f6 $c1f6 $0375 Find an empty directory slot.
GetLdVars n/a n/a $ff44 Transfer internal Ld variables to GEOS pseudoregisters.
GetMode n/a n/a $6012 Return current printer resolution and setable attributes.
GetNextChar $c2a7 $c2a7 $fe75 Get next character from character queue.
GetNxtDirEntry $9033 $9033 $039c Get directory entry other than first.
GetPathname n/a n/a $0384 Return current path string.
GetPattern n/a n/a $ff7d Get eight-byte GEOS pattern definition.
GetPtrCurDkNm $c298 $c298 $ff56 Return pointer to current disk name.
GetRandom $c187 $c187 $fee4 Calculate new random number.
GetRealSize $c1b1 $c1b1 $fe84 Calculate actual character size with attributes.
GetScanLine $c13c $c13c $fe66 Calculate scanline address.
GetScreenLine n/a n/a $ff62 Copy Apple screen data to buffer.
GetSerialNumber $c196 $c196 $4b38 Return GEOS serial number or pointer to name string.
GetSpriteData n/a n/a $ff6e Get sprite image data.
GetString $c1ba $c1ba $fe72 Get string input from user.
GetVBM n/a n/a $031e Read first VBM block into VBM cache.
GoDirectory n/a n/a $039f Go directory to a specific subdirectory.
GotoFirstMenu $c1bd $c1bd $fe18 Retract all sub-menus and reactivate at main level.
GraphicsString $c136 $c136 $fe60 Execute a string of graphics commands.
HideOnlyMouse n/a $c2f2 $ff7a Temporarily remove soft-sprite mouse pointer.
HorizontalLine $c118 $c118 $fe27 Draw a patterned horizontal line.
i_BitmapUp $c1ab $c1ab $fe57 Inline BitmapUp.
i_FillRam $c1b4 $c1b4 $ff02 Inline FillRam.
i_FrameRectangle $c1a2 $c1a2 $fe42 Inline FrameRectangle.
i_GraphicsString $c1a8 $c1a8 $fe63 Inline GraphicsString.
i_ImprintRectangle $c253 $c253 $fe51 Inline ImprintRectangle.
i_MoveData $c1b7 $c1b7 $fef9 Inline MoveData.
i_NewBitUp n/a n/a $ff9e Inline NewBitUp.
i_PutString $c1ae $c1ae $fe6c Inline PutString.
i_RecoverRectangle $c1a5 $c1a5 $fe4b Inline RecoverRectangle.
i_Rectangle $c19f $c19f $fe3c Inline Rectangle.
ImprintLine n/a n/a $ff8f Imprint horizontal line to background buffer.
ImprintRectangle $c250 $c250 $fe4e Imprint rectangular area to background buffer.
InfoCard n/a n/a $670f Get I/O card attributes.
InitCard n/a n/a $6700 Intialize I/O card.
InitForDialog n/a n/a $ff4a Internal pre-dialog box intialization.
InitForIO $c25c $c25c n/a Prepare CBM system for I/O across serial bus.
InitForPrint $7900 $7900 $6000 Initialize printer (once per document).
InitMouse $fe80 $fe80 $f000 Initialize input device.
InitProcesses $c103 $c103 $feae Initialize processes.
InitRam $c181 $c181 $ff05 Initialize memory areas from table.
InitSprite n/a n/a $ff32 Initialize software sprites.
InitTextPrompt $c1c0 $c1c0 $fe78 Initialize text prompt.
InputByte n/a n/a $6709 Read byte from I/O card.
InsertRecord $c286 $c286 $0339 Insert new VLIR record in front of current record.
InterruptMain $c100 $c100 $fe03 Main interrupt level processing.
InvertLine $c11b $c11b $fe2d Invert the pixels on a horizontal screen line.
InvertRectangle $c12a $c12a $fe45 Invert the pixels in a rectangular screen area.
IrqMiddle n/a n/a $ff20 Software interrupts entry point.
IsMseInRegion $c2b3 $c2b3 $fe9c Check if mouse is within a screen region.
JsrToAux n/a n/a $03b4 Call aux-memory subroutine.
KeyFilter n/a n/a $f009 Input driver keypress filter.
LdApplic $c21d $c21d $038d Load GEOS application.
LdDeskAcc $c217 $c217 $035d Load GEOS desk accessory.
LdFile $c211 $c211 $0312 Load GEOS data file.
LoadAuxSet n/a n/a $ff77 Use aux-memory character set.
LoadCharSet $c1cc $c1cc $fe8a Use main-memory character set.
MainLoop $c1c3 $c1c3 $fe00 GEOS MainLoop processing.
MakeSubDir n/a n/a $0387 Create ProDOS subdirectory.
MouseOff $c18d $c18d $fe96 Disable mouse pointer and GEOS mouse tracking.
MouseUp $c18a $c18a $fe99 Enable mouse pointer and GEOS mouse tracking.
MoveAuxData n/a n/a $ff6b Apple aux-memory memory move routine.
MoveBData n/a $c2e3 n/a C128 backram memory move routine.
MoveData $c17c $c17e $fef6 Memory move routine.
NewBitClip n/a n/a $ff95 Bit-boundary BitmapClip.
NewBitOtherClip n/a n/a $ff0e Bit-boundary BitOtherClip.
NewBitUp n/a n/a $ff1d Bit-boundary BitmapUp.
NewDisk $c1e1 $c1e1 n/a Tell CBM disk turbo software that a new disk is in drive.
NextRecord $c27a $c27a $0336 Make next VLIR the current record.
NormalizeX n/a $c2e0 n/a Normalize C128 X-coordinates for 40/80 modes.
NxtBlkAlloc $c24d $c24d $0354 Version of BlkAlloc that starts at a specific block.
OpenCard n/a n/a $6703 Open I/O card for access.
OpenDisk $c2a1 $c2a1 $0399 Open disk in current drive.
OpenRecordFile $c274 $c274 $033f Open VLIR file on current disk.
OutputByte n/a n/a $6706 Write byte to I/O card.
Panic $c2c2 $c2c2 $fef3 System-error dialog box.
PointRecord $c280 $c280 $0342 Make specific VLIR record the current record.
PosSprite $c1cf $c1cf $fea5 Position sprite.
PreviousRecord $c27d $c27d $0345 Make previous VLIR record the current record.
PrintASCII $790f $790f $600c Send ASCII data to printer.
PrintBuffer $7906 $7906 $6009 Send graphics data to printer.
PromptOff $c29e $c29e $fe7e Turn off text prompt.
PromptOn $c29b $c29b $fe7b Turn on text prompt.
PurgeTurbo $c235 $c235 n/a Remove CBM disk turbo software from drive.
PutBlock $c1e7 $c1e7 $0303 Write single disk block from memory.
PutChar $c145 $c145 $fe81 Display a single character to screen.
PutDecimal $c184 $c184 $fe6f Format and display an unsigned double-precison number.
PutDirHead $c24a $c24a $037b Write directory header to disk.
PutScreenLine n/a n/a $ff65 Copy buffer data to Apple screen memory.
PutString $c148 $c148 $fe69 Print string of characters to screen.
PutVBM n/a n/a $0321 Flush VBM cache; write currently cached block to disk.
ReadBackLine n/a n/a $ff74 Get data from background screen in linear bitmap format.
ReadBlock $c21a $c21a n/a CBM get disk block primitive.
ReadByte $c2b6 $c2b6 $ff41 Read disk file a byte at a time.
ReadClock n/a n/a $0800 Update GEOS time/date variables from clock hardware.
ReadFile $c1ff $c1ff $0315 Read chained list of blocks into memory.
ReadLink $904b $904b n/a Read CBM track/sector link.
ReadRecord $c28c $c28c $0348 Read current VLIR record into memory.
ReadScanLine n/a n/a $ff98 Get data from foreground screen in linear bitmap format.
RecoverAllMenus $c157 $c157 $fe1e Recover all menus from background buffer.
RecoverFG n/a n/a $03ae Restores foreground screen from data created with SaveFG.
RecoverLine $c11e $c11e $fe30 Recover horizontal screen line from background buffer.
RecoverMenu $c154 $c154 $fe1b Recover single menu from background buffer.
RecoverRectangle $c12d $c12d $fe48 Recover rectangular screen area from background buffer.
RecoverSysRam n/a n/a $ff53 Restore system after dialog box or desk accessory.
Rectangle $c124 $c124 $fe39 Draw a filled rectangle.
ReDoMenu $c193 $c193 $fe12 Reactivate menus at the current level.
RenameFile $c259 $c259 $0393 Rename GEOS disk file.
ReOpenDisk n/a n/a $03a2 Reopen disk to previous directory.
ResetAlarm n/a n/a $080c Disable clock driver alarm.
ResetHandle $c003 $c003 n/a Internal bootstrap entry point.
RestartProcess $c106 $c106 $feb1 Unblock, unfreeze, and restart process.
RestoreFontData n/a n/a $ff38 Restore font variables from saveFontTab.
RstrAppl $c23e $c23e $0360 Leave desk accessory and return to calling application.
RstrFrmDialog $c2bf $c2bf $ff1a Exit dialog box.
SaveFG n/a n/a $03ab Save foreground screen data for RestoreFG.
SaveFile $c1ed $c1ed $0318 Save/create a GEOS file.
SaveFontData n/a n/a $ff35 Copy font variables to saveFontTab.
SetAlarm n/a n/a $0809 Set clock driver alarm.
SetDevice $c2b0 $c2b0 n/a Establish communication with a new serial device.
SetGDirEntry $c1f0 $c1f0 $037b Create and save a new GEOS directory entry.
SetGEOSDisk $c1ea $c1ea n/a Convert normal CBM disk into GEOS format disk.
SetLdVars n/a n/a $ff47 Set internal Ld variables from GEOS pseudoregisters.
SetMode n/a n/a $6015 Set print mode.
SetMouse n/a $fe89 n/a Reset input device scanning circutry.
SetMsePic n/a $c2da $ff2f Set and preshift new soft-sprite mouse picture.
SetNewMode n/a $c2dd n/a Change GEOS 128 graphics mode (40/80 switch).
SetNextFree $c292 $c292 $032d Search for nearby free disk block and allocate it.
SetNLQ $7915 $7915 n/a Begin near-letter quality printing.
SetPattern $c139 $c139 $fe36 Set current fill pattern.
SetTimeDate n/a n/a $0806 Set clock driver time and date.
SetUserPattern n/a n/a $ff80 Define new GEOS pattern image.
Sleep $c199 $c199 $fec0 Put current subroutine to sleep for a specified time.
SlowMouse $fe83 $fe83 $f003 Reset mouse velocity variables.
SmallPutChar $c202 $c202 $fe90 Fast character print routine.
SoftSprHandler n/a n/a $ff2c Apple soft-sprite drawing routine.
SortAlpha n/a n/a $03a5 Insertion sort.
StartAppl $c22f $c22f $fe06 Warmstart GEOS and start application in memory.
StartASCII $7912 $7912 $6006 Begin ASCII mode printing.
StartMouseMode $c14e $c14e $fe93 Start monitoring input device.
StartPrint $7903 $7903 $6003 Begin graphics mode printing.
StashRAM $c2c8 $c2c8 n/a Transfer memory to CBM RAM-expansion unit.
StatusCard n/a n/a $6712 Get current status of I/O card.
StopPrint $7909 $7909 $600f End page of printer output.
SwapBData n/a $c2e6 n/a C128 memory swap between front/back ram.
SwapMainAndAux n/a n/a $ff71 Apple memory swap between main and aux.
SwapRAM $c2ce $c2ce n/a CBM RAM-expansion unit memory swap.
TempHideMouse n/a $c2d7 $ff29 Hide soft-sprites before direct screen access.
TestPoint $c13f $c13f $fe24 Test status of single screen point (on or off?).
ToBasic $c241 $c241 n/a Call Commodore BASIC.
UnblockProcess $c10f $c10f $feb7 Unblock a blocked process, allowing it to run again.
UnfreezeProcess $c115 $c115 $febd Unpause a frozen process timer.
UpdateMouse $fe86 $fe86 $f006 Update mouse variables from input device.
UpdateParent n/a n/a $03b7 Update parent directory to reflect any changes.
UpdateRecordFile $c295 $c295 $034b Update currently open VLIR file without closing it.
UpDirectory n/a n/a $038a Close current directory and move up one level.
UseSystemFont $c14b $c14b $fe8d Use default system font (BSW 9).
VerifyBData n/a $c2e9 n/a C128 backram verify.
VerifyRAM $c2d1 $c2d1 n/a CBM RAM-expansion unit verify.
VerticalLine $c121 $c121 $fe2a Draw a patterned vertical line.
VerWriteBlock $c223 $c223 n/a CBM disk block verify primitive.
WarmStart n/a n/a $ff4d Bring GEOS to a warmstart state.
WriteBlock $c220 $c220 n/a CBM write disk block primitive.
WriteFile $c1f9 $c1f9 $031b Write chained list of blocks to disk.
WriteRecord $c28f $c28f $034e Write current VLIR record to disk.