MEMORY MAP

ADDRESS RANGE MMU BLOCK NUMBERS USES
00000 - 5FFFF 00-2F 128K CoCo3: 3 Mirrors of MMU Blocks 30-37
512K+ CoCo 3: Additional 384K
60000 - 61FFF 30 CoCo 3 Super Extended BASIC High Resolution Graphics Page 1
62000 - 63FFF 31 CoCo 3 Super Extended BASIC High Resolution Graphics Page 2
64000 - 65FFF 32 CoCo 3 Super Extended BASIC High Resolution Graphics Page 3
66000 - 67FFF 33 CoCo 3 Super Extended BASIC High Resolution Graphics Page 4
68000 - 69FFF 34 CoCo 3 Super Extended BASIC HGET/HPUT buffers
6A000 - 6BFFF 35 CoCo 3 Second Stack area
6C000 - 6DFFF 36 CoCo 3 High Resolution Text Screen
6E000 - 6FFFF 37 CoCo 3 Unused area
70000 - 71FFF 38 First 8K of MPU workspace / BASIC RAM :: PCLEAR 0
_0000 - _03FF BASIC direct page variables
_0019 - 001A TXTTAB Beginning of BASIC program
_001B - 001C VARTAB Start of Variables
_001D - 001E ARYTAB Start of Arrays
_001F - 0020 ARYEND End of Arrays +1
_0021 - 0022 FRETOP Start of String storage (top of free RAM)
_0023 - 0024 STRTAB Start of String Variables
_0025 - 0026 FRESPC Utility String Pointer
_0027 - 0028 MEMSIZ Top of String Space
_0400 - _05FF VDG default text screen buffer
_0600 - _0DFF Disk Extended Color BASIC buffers
_0E00 - _1FFF BASIC program space or Semigraphics / PMODE graphics buffers
72000 - 73FFF 39 BASIC program space or Semigraphics / PMODE graphics buffers
74000 - 75FFF 3A BASIC program space
76000 - 77FFF 3B BASIC program space
78000 - 79FFF 3C Extended Color BASIC ROM or mappable RAM
_8378 COS Return cosine of an angle given in radians
_8381 TAN Returns tangent of angle given in radians
_83B0 ATN Returns arctangent in radians
_8446 LOG Returns natural logarithm
_8480 SQR Returns the square root of a number
_84F2 EXP Returns natural exponential of number
_8524 FIX Returns truncated (whole number) value
_8533 EDIT Allows editing of program line
_86A7 TRON Turns on program tracer
_86A8 TROFF Turns off program tracer
_86AC POS Returns current print position
_86BE VARPTR Returns address of pointer to the specified variable
_874E STRING Returns a string of characters of specified length
_877E INSTR Searches for the first occurrence of target string
_8871 DEF Defines numeric function
_8968 TIMER Returns contents or allows setting of timer
_8970 DEL Deletes program lines
_8A09 RENUM Allows program line renumbering
_8BDD HEX$ Computes hexadecimal value
_8C18 DLOAD Loads BASIC program at specified baud
_9339 PPOINT Tests whether specified graphics cell is on or off
_9361 PSET Sets a specified point (x,y) to specified color c
_9365 PRESET Reset a point to background color
_93BB LINE Draw a line from (x1,y1) to (x2,y2)
_9532 PCLS Clears screen with specified color c
_9546 COLOR Sets foreground and background color
_9621 PMODE Selections resolution and first memory page
_9670 SCREEN Selects either graphics (1) or text (0) screen and color-set (0 or 1)
_968B PCLEAR Reserves b number of 1.5K graphics memory pages
_9723 PCOPY Copy graphics from source page to destination page
_9755 GET Reads the graphic contents of a rectangle into an array for future use by PUT
_9758 PUT Stores graphics from source into start/end rectangle on the screen
_98EC PAINT Paints graphic screen starting at a point (x,y) withh specified color c stopping at border b
_9A22 PLAY Plays music of specific note, octave, note-length, tempo, pause
_9CB6 DRAW Draws a line beginning at specified starting point of specified length and color
_9E9D CIRCLE Draws a circle with center at point (x,y) radius r, specified color c and height/width ratio
7A000 - 7BFFF 3D Color BASIC ROM or mappable RAM
_A027 RESVEC Reset vector - system starts here
_A074 BACDST BASIC Cold Start
_A0E8 BAWMST BASIC Warm Start
_A0F6 BFRQSV Fast Interrupt (FIRQ) service handler - “fast” interrupts jump here
_A153 Color BASIC version $31, $2E, then $30 = 1.0, $31 = 1.1, $32 = 1.2, $33 = 1.3
_A176 Console In
_A1B1 Blink Cursor
_A1CB KEYIN Get a keystroke
_A182 PUTCHR Console Out
_A416 CLOSE Close files
_A44C CSAVE Cassette save
_A498 CLOAD Cassette load
_A53E EXEC EXECute code at address
_A564 INKEY$ Get a key
_A5CE EOF End of file
_A5EC SKIPF Skip tape file
_A5F6 OPEN Open a file
_A7BD MOTOR Tape drive motor control
_A880 SET Draw a semigraphics pixel
_A8B1 RESET Clear a semigraphics pixel
_A8F5 POINT Check color of a semigraphics pixel
_A910 CLS Clear screen
_A94B SOUND Beep the speaker
_A990 AUDIO Control the audio source
_A9B3 BIRQSV Interrupt service handler
_A9C6 JOYSTK Read and report joysticks
_AD17 NEW Initialize the BASIC memory map
_AD47 FOR Start a loop
_ADE4 RESTORE Start back at the first DATA item
_AE02 END The end of the program
_AE09 STOP Stop the program at the current line
_AE30 CONT Continue the program from a stop
_AE41 CLEAR Clear RAM for string space
_AE75 RUN Start the program running
_AE86 GO Jump to line number
_AEC0 RETURN Return from a subroutine
_AEE0 DATA Store data within a program
_AEE3 REM ' Comments or remarks - FIXME Else uses this too?
_AF14 IF Start a conditional check
_AF42 ON Start of multi-way branch
_AF89 LET Assign a variable
_AFF5 INPUT Read a line of text at a time
_B046 READ Read a piece of data
_B0F8 NEXT End of a loop
_B141 EVAL Evaluate a numeric expression
_B227 EXP Generates ?SN in Color BASIC, implemented in Extended Color BASIC
_B2D4 OR Boolean / Logical OR operator
_B2D5 AND Boolean / Logical AND operator
_B34E DIM Set aside memory for arrays
_B44A USR User defined function
_B4EE MEM Free memory
_B4FD STR$ Convert a number to a string
_B681 LEN Length of a string
_B68C CHR$ Convert number to Control, ASCII, or graphics code string
_B6A0 ASC ASCII code of first letter of string
_B6AB LEFT$ Left part of a string
_B6C8 RIGHT$ Right part of a string
_B6CF MID$ Middle of a string
_B716 VAL Convert a string to a number
_B750 PEEK Read a value from a memory address
_B757 POKE Write a value to a memory address
_B75E LLIST List program to printer
_B764 LIST List program to screen
_B8F7 PRINT Write to the screen
_BC7A SGN Get the sign of a number positive or negative
_BC93 ABS Get absolute value of a signed number
_BCEC INT Convert a number to an integer
_BF1F RND Pseudo-random number generator
_BF78 SIN Sine of an angle
_BFF0 Vector copy Search for cassette file A681
_BFF2 Vector copy 0100 SW3VEC -
_BFF4 Vector copy 0103 SW2VEC -
_BFF6 Vector copy 010F FRQVEC A0F6
_BFF8 Vector copy 010C IRQVEC A9B3
_BFFA Vector copy 0106 SWIVEC -
_BFFC Vector copy 0109 NMIVEC -
_BFFE Vector copy A027 RESVEC -
7C000 - 7DFFF 3E Disk Extended Color BASIC ROM or 8K Cartridge ROM or 16K Cartridge lower 8K bank or Mappable RAM
_C6EF KILL Deletes the filename you specify from the disk directory
_C9E0 SAVE Saves filename on disk
_CA39 MERGE Loads the specified program file from disk and merges it with the program that exists in memory
_CA48 LOAD Loads the specified program file into memory from disk
_CCA9 DIR Displays a directory of the disk in the drive you specify
_CDF4 CVN Convert a 5-byte coded string created by MKN$ back to the number it represents
_CE02 MKN$ Convert a specified number into a 5-byte coded string for storage in a formatted disk file
_CE10 LOC Returns the current record number of the buffer you specify
_CE37 LOF Returns the highest-numbered record of the buffer you specify
_CE9C FREE Returns to the number of free granules on the disk in the drive you specify
_CEC5 DRIVE Changes the default drive to the drive you specify
_D01B RENAME Renames a disk file
_D066 WRITE Writes the data to the buffer you specify
_D0BC FIELD Organizes the space within a direct access buffer into fields
_D101 RSET Right-justifies the data within the field you specify
_D102 LSET Left-justifies the data within the field you specify
_D15C FILES Tell the computer the number of buffers to reserve in memory
_D233 UNLOAD Close any open files on the disk in the drive you specify
_D262 BACKUP Duplicates the contents of the disk in the source drive on the disk in the destination drive
_D3B9 COPY Copies the contents of filename1 to filename2
_D4ED DSKI$ Inputs data from a particular sector with in a particular track on the disk in the drive you specify
_D562 DSKO$ Writes string data on sector, track, and drive number you specify
_D599 DSKINI Formats a disk in the drive you specify
_D6EC DOS With the OS-9 system diskette in drive 0, the DOS command boots the OS-9 operating system
_D74E VERIFY Turns the verify function on or off
7E000 - 7FDFF 3F Super Extended BASIC ROM or 16K Cartridge upper 8K bank or Mappable RAM
_E3D4 ERR Jumps to line number when an error occurs
_E3E6 BRK Jumps to line number when the [BREAK] key is pressed
_E4E9 ERNO Return the BASIC error number for the error that has occurred
_E4FD ERLIN Returns the BASIC line number where an error has occurred
_E545 LPOKE Stores a value (0-255) in a virtual memory location (0-524287 decimal or 0-$7FFFF hexadecimal)
_E573 LPEEK Returns a value (0-255) in a virtual memory location (0-524287 decimal or 0-$7FFFF hexadecimal)
_E5B1 BUTTON Returns 1 if Joystick Button n is being pressed
_E5F0 PALETTE Resets the palette registers to the standard colors for a composite monitor or a television set or for an RGB monitor
_E674 RGB Resets the palette registers to the standard colors for an RGB monitor
_E676 CMP Resets the palette registers to the standard colors for a composite monitor or a television set
_E688 HSCREEN Selects a high-resolution graphics screen mode
_E6CF HCLS Clears the high-resolution graphics screen to a specified color
_E6F4 HCOLOR Sets foreground and background color on the high-resolution graphics screen
_E761 HSET Sets point x,y on the high-resolution graphics screen to color c.
_E765 HRESET Resets a point on the high-resolution graphics screen to the background color
_E85C HPOINT Returns information on point x,y from the high-resolution graphics screen
_E882 HLINE Draws a line on the high-resolution graphics screen
_EA49 HCIRCLE Draws a circle on the high-resolution graphics screen
_EBF5 HPAINT Paints an area on the high-resolution graphics screen
_ED58 HBUFF Reserves an area in memory for high-resolution graphics
_EDE5 HGET Stores a rectangle that is on the high-resolution graphics screen into a buffer previously set up by the HBUFF command for future use by the HPUT command
_EDED HPUT Copies graphics from a buffer to a rectangle on the high-resolution graphics screen
_EF3F HPRINT Prints message on high-resolution graphics screen
_F39D HDRAW Draws a line on the high-resolution graphics screen as specified by string
_F636 WIDTH Sets the text screen to resolution n
_F8D2 LOCATE Moves the hhigh-resolution text screen cursor to position x, y
_F925 HSTAT Returns information regarding the high-resolution text screen cursor to variables v1, v2, v2, and v4
_F9B9 ATTR Sets display attributes of a high-resolution text screen
_FD00 - _FD81 Boomerang RAM controls
7FE00 - 7FEFF 3F CoCo 3 Additional Vectors
7FF00 - 7FFFF 3F Memory Mapped Hardware I/O Range
_FF00 - _FF03 Peripheral Interface Adapter 0 (PIA0) MC6821 / MC6822 / LSC81001P
Keyboard :: Scan keyboard and Joystick Buttons keyscn keyscn2
Joystick Comparator
HSYNC Interrupt control and flag
VSYNC Interrupt control and flag
Audio Multiplexer Control / Joystick Select
_FF04 - _FF1F Addressing mirrors of FF00 - FF03
_FF20 - _FF23 Peripheral Interface Adapter 1 (PIA1) MC6821 / MC68B21P / MB8874HM-G / HD68B21P
Cassette Data Input
Cassette Motor Control
RS232 Data Input / Output :: Serial Printers :: Modems :: DLOAD :: Digitizer :: Drivewire :: BBS :: Rainboard
RS232C CD FIRQ Interrupt control and flag
DAC :: Six Bit Sound
One Bit Sound Output
RAM Size Input
MC6847 MC6847T1 VDG Color Set Select (CSS)
VDG Graphics Mode 0-2 (GM0-GM2)
VDG Alpha/Graphics (A/G)
Cartridge FIRQ Interrupt control and flag
Sound Enable control
_FF24 - _FF3F Addressing mirrors of FF20 - FF23
_FF40 - _FF4B Floppy Disk Controller (FDC) :: WD1793 :: DSKREG
_FF40 - _FF4B CoCoSDC
_FF40 - _FF4F CoCoNIC CS8900A Network Adapter
_FF40 - _FF41 Game Master Cartridge (GMC) by John Linville with TI DCSG (SN76489AN)
_FF42 - _FF42 Becker Port :: Gary Becker's I/O port for emulators and FPGA designs
_FF50 - _FF54 MEGA Mini Multi-Pak Interface (MMMPI) YMF-262 control
_FF5A - _FF5F CoCoPSG by Ed “Zippster” Snider's with Yamaha SSG (YM2149)
_FF60 - _FF62 X-Pad
_FF60 - _FF63 Philharmonic-12 by Jim Brain with MC6821 PIA interface to 4 x GI PSG (AY-3-8910)
_FF60 - _FF6B CoCoIO Serial SC16550 and WizNet 9100s Ethernet Interface
_FF68 - _FF6B Deluxe RS-232 Pak (26-2226)
_FF6C - _FF6F Direct Connect Modem Pak (26-2228)
_FF6E - _FF6F MIDI Maestro by Jim Brain with MC6850 ACIA interface
_FF70 - _FF72 Stereo Composer
_FF7A - _FF7B Orchestra 90/CC Cartridge (26-3143)
_FF7D - _FF7E Speech Sound Cartridge (SSC) (26-3144A)
_FF7F Multi-Pak Interface (MPI) (26-3024, 26-3124, 26-3124A) Slot Select
_FF90 - _FF9F ACVC / GIME Control
_FFA0 - _FFAF ACVC / GIME MMU
_FFB0 - _FFBF ACVC / GIME Palette
_FFC0 - _FFDF ACVC / GIME / SAM
_FFE0 - _FFEF Reserved
_FFF0 - _FFFF 6809 MPU Vectors
_FFF0 - _FFF1 Vector - 6809: Reserved 6309: Error Trap
_FFF2 - _FFF3 Vector - Software Interrupt 3 (SWI3)
_FFF4 - _FFF5 Vector - Software Interrupt 2 (SWI2)
_FFF6 - _FFF7 Vector - Fast Interrupt Request (/FIRQ)
_FFF8 - _FFF9 Vector - Interrupt Request (/IRQ)
_FFFA - _FFFB Vector - Software Interrupt (SWI)
_FFFC - _FFFD Vector - Non-Maskable Interrupt (/NMI)
_FFFE - _FFFF Vector - /RESET

RTS

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies