mirror of
https://github.com/cc65/cc65.git
synced 2024-12-27 15:29:46 +00:00
487 lines
34 KiB
Plaintext
487 lines
34 KiB
Plaintext
Source: The Hitchhiker's Guide To GEOS
|
|
https://archive.org/details/The_Hitchhikers_Guide_to_GEOS
|
|
|
|
|
|
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.
|