The following is a list of POKEs, PEEKs and CALLs for the Apple ][ series:
POKES
Poke 32, L Where L is 0 through 39. Sets left margin of display.
Width must first be set.
Poke 33, W Where W is 0 through 39. Sets width of display.
Poke 34, T Where T is 0 through 23. Sets top margin of display.
Poke 35, B Where B is 0 through 24. Sets bottom margin.
Poke 36, H Where H is 0 through 39. Moves cursor to horizontal position H+1.
Poke 37, V Where V is 0 through 23. Moves cursor to vertical position V.
Poke 50,255 Sets cursor to normal.
Poke 50,127 Sets cursor to flash.
Poke 50,63 Sets cursor to reverse
Poke 50,128 Catalog, listing and printed messages are invisible.
Poke 51,128: Will defeat the NOT DIRECT COMMAND error when
GOTO (line) trying to resume a program from command mode.
Poke 214,128 Make all commands act as RUN.
Poke 216,0 Clears error flag for normal error to occur.
Poke 230,32 Draw on page 1.
Poke 230,64 Draw on page 2.
Poke 232,X Low order bit of shape table address.
Poke 233,Y High order bit of shape table address. These must be poked in
order to use shape table in memory.
Poke 1012,0 If RESET is hit a cold start is activated.
Poke 1794,98 Changes paddle button 0 to button 1.
Poke 2049,1 Endless listing of first line of program.
Poke -16303,0 Display text page.
Poke -16304,0 Display graphics, high- or low-resolution.
Poke -16300,0 Switch to page 1 of text or high-resolution.
Poke -16299,0 Switch to page 2 of text of high-resolution.
Poke -16298,0 Switch to page 1 or 2 of text in graphics mode.
Poke -16297,0 Switch to page 1 or 2 of high-resolution graphics.
Poke -16302,0 Full screen high- or low-resolution graphics.
Poke -16301,0 Mixed high- or low-resolution graphics or text.
Poke -16368,0 Resets keyboard strobe to read keyboard again.
Poke -16336,0 Toggle speaker.
Poke -16296,1 Clear game I/O AN0 output (OFF-3.5V HIGH)
Poke -16295,0 Set game I/O AN0 output (ON-.3V LOW)
Poke -16294,1 Clear game I/O AN1 output (OFF-3.5V HIGH)
Poke -16293,0 Set game I/O AN1 output (ON-.3V LOW)
Poke -16292,1 Clear game I/O AN2 output (OFF-3.5V HIGH)
Poke -16291,0 Set game I/O AN2 output (ON-.3V LOW)
Poke -16290,1 Clear game I/O AN3 output (OFF-3.5V HIGH)
Poke -16289,0 Set game I/O AN3 output (ON-.3V LOW)
Poke 44513,67 Catalogs only locked files
Poke -21503,16 Prevents anyone from cataloging disk. 17 makes it catalog again
Poke -16151,0 Turns on drive 1 without reading or writing.
Poke -16135,0 Turns on drive 2.
Poke -16152,0 Turns off drive 1.
Poke -16316,0 Turns off drive 2.
Poke -16128,0 Activates slot #1.
Poke -15872,0 Activates slot #2.
Poke -15616,0 Activates slot #3. Peeking at the 7 addresses is like reading
Poke -15360,0 Activates slot #4. slot. If peek=162 then disk controller
Poke -15104,0 Activates slot #5. card is installed in that slot.
Poke -14848,0 Activates slot #6.
Poke -14592,0 Activates slot #7.
Poke -21912,X To select disk drive without executing a command.
Poke 40514,52 Allows binary greeting program (Hello program).
Poke 40514,20 Allows text greeting program.
Poke 43624,X To select disk drive without executing a command.
Poke 43626,X To select a slot number without executing a command.
Poke 46017,X To select a volume number without executing a command.
Poke 36,X Use to tab over with printers. X=one less than number to tab.
Poke 1912+SLOT,1 On apple parallel card (with P1-02 PROM) will enable line
feeds.
Poke 228,X Where X is 0 through 256. This offers 256 different variations
of colors. Use instead of Hcolor.
HCOLOR X=
0 0
1 42
2 85
3 127
4 128
5 170
6 213
7 255
any other numbers for X will produce blends of colors.
Poke 49107,234
Poke 49108,234 Prevents language card from loading during re-boot.
Poke 49109,234
Poke -24543,24
Poke -24542,234 Allows entering of DOS commands in direct mode.
Poke -24541,234
Poke 44505,234
Poke 44506,234 Reveals deleted file names in catalog.
Poke 58,a This gives 20 lines of machine code disassembled starting
Poke 59,b at the address poked in. ( a is low order bit of address
Call -418 and b is high order bit )
Poke 42768,234
Poke 42769,234 Cancels all DOS Error Messages.
Poke 42770,234
Poke 1010,102
Poke 1011,213 RESET causes a RUN
Poke 1012,112
Poke 1010,191
Poke 1011,157 RESET is set back to normal
Poke 1012,56
Poke 1010,105
Poke 1011,213 RESET and Ctrl-C cause a jump to line 10000.
Call -1169
Onerr goto 10000
Poke 1010,10
Poke 1011,0 RESET causes a reboot.
Poke 1012,0
Poke 1010,152
Poke 1011,216 RESET causes a continuing of the program.
Poke 1012,125
Poke 1010,242
Poke 1011,3 RESET causes a freeze of the program.
Poke 1012,166
Poke 44096,234
Poke 44097,234 allows RENAME of files that are locked.
Poke 44596,234
Poke 44597,234 Cancels catalog stop when screen is full.
Poke 44598,234
Poke 44599,234
Poke 44600,234 Stops catalog after each file name and waits for keypress.
Poke 1014,165
Poke 1015,214 Makes '&' list program in memory.
PEEKS
Peek (32) Left edge of text window (0-39)
Peek (33) Width of text window (1-40)
Peek (34) Top edge of text window (0-22)
Peek (35) Bottom of text window (1-24)
Peek (36) Current horizontal position of cursor.
Peek (37) Current vertical position of cursor.
Peek (43) Boot slot x 16 (after boot)
Peek (44) End point of last HLIN, VLIN or PLOT
Peek (48) Lo-Res COLOR value x 17
Peek (50) Text output format (63=INVERSE 127=FLASH 255=NORMAL)
Peek (51) Prompt character
Peek (222) Error code number if onerr has been activated.
Peek (216) If 127 then error detected.
Peek (224)+Peek (225) * 256 X-coordinate of last HPLOT
Peek (226) Y-coordinate of last HPLOT
Peek (249) Current rotation setting for draw and xdraw.
Peek (231) Current scale setting for draw and xdraw.
Peek (214) All commands act as RUN if greater than 127.
Peek (234) Collision Counter (the value is the number of bits from the
shape that hit an object on the screen, or a change in the
collision counter means that a collision has occurred)
Peek (228) HCOLOR value (0=0 42=1 85=2 127=3 128=4 170=5 213=6 255=7)
Peek (230) Hi-res plotting page (32=page1 64=page2 96=page3)
Peek (241) 256 minus SPEED value
Peek (243) FLASH mask (64=FLASH with peek(50) set 127)
Peek (-16384) Reads keyboard. If >127 then key has been pressed and value
is ASCII value of key pressed.
Peek (-16336) Toggles speaker once.
Peek (-16287) Reads pushbutton switch on game control #0. If >127 then
button is being pressed.
Peek (-16286) Reads pushbutton switch on game control #1.
Peek (42350) Start of catalog routine.
Peek (43607) MAXFILES values.
Peek (43697) MAXFILES default value.
Peek (43624) Drive number.
Peek (43626) Slot number.
Peek (44033) Catalog track number.
Peek (46017) Disk volume number.
Peek (46064) Number of sectors (13=DOS 3.2 16=DOS 3.3)
Peek (43698) DOS command character
Peek (43702) BASIC flag (0=INT 64=FP ROM 128=FP RAM)
Peek (44567) Number of characters-1 in catalog file names
Peek (44611) Number of digits-1 in sector & volume numbers
Peek (43140) thru Peek (43271) DOS command table
Peek (43378) thru Peek (43582) DOS error message table
Peek (45991) thru Peek (45998) File-type code table
Peek (45999) thru Peek (46010) Disk volume heading
Peek (78) and Peek (79) Random Number Field
Peek (103)+Peek (104) * 256 Starting address of applesoft program.
Peek (175)+Peek (176) * 256 Ending address of applesoft program.
Peek (105)+Peek (106) * 256 Starting address of variable space.
Peek (107)+Peek (108) * 256 Starting address of array space.
Peek (109)+Peek (110) * 256 End address of numeric storage space.
Peek (111)+Peek (112) * 256 Starting address of string storage space.
Peek (115)+Peek (116) * 256 HIMEM address
Peek (76)+Peek (77) * 256 HIMEM address (INT)
Peek (74)+Peek (75) * 256 LOMEM address (INT)
Peek (117)+Peek (118) * 256 Line number being executed in program.
Peek (119)+Peek (120) * 256 Line number where program stopped.
Peek (121)+Peek (122) * 256 address in memory being executed in program
Peek (123)+Peek (124) * 256 Line number where DATA statement is read.
Peek (125)+Peek (126) * 256 DATA location address in memory.
Peek (127)+Peek (128) * 256 INPUT or DATA address in memory.
Peek (129) and Peek (130) ASCII value of last used variable name in program.
Peek (131)+Peek (132) * 256 Last used variable address in program.
Peek (218)+Peek (219) * 256 Line number of error.
Peek (232)+Peek (233) * 256 Address of shape table in memory.
Peek (43634)+Peek (43635) * 256 Address of last BLOADed file.
Peek (43616)+Peek (43617) * 256 Length of last BLOADed file.
(Peek (978)+35)/4 Memory size of computer.
RND (Peek (78)+Peek(79)*256) Provides 'TRUE' random number generation.
Peek (1010) thru Peek (1012) RESET vector - first two addresses are where
RESET looks to jump to. Third is power up byte
Peek (1013) thru Peek (1015) & vector - poke in address where you want the
ampersand to jump to when pressed.
CALLS
Call -936 Same as HOME.
Call -958 Clears screen from current cursor postition to bottom.
Call -875 Clear entire text line
Call -868 Clear current line from cursor to right margin.
Call -922 Issues a line feed.
Call -912 Scrolls text up one line.
Call -1994 Clears upper 20 lines of text to reversed @ signs or upper 20
lines of lo-res graphics to black.
Call -1998 Clears all of text page to reversed @ signs or full lo-res
screen to black.
Call -3086 Clears current high-resolution screen to black.
Call -3082 Clears current hi-res screen to HCOLOR most recently HPLOTed.
Call -384 Turns text to inverse
Call -380 Turns text back to normal.
Call -1988 Sounds bell.
Call -1233 Resets text.
Call -1036 Advances cursor.
Call -1008 Backspace
Call -756 Wait for keypress (is like a get statement without the variable
Call -678 Wait for carriage return
Call -676 Ring bell and wait for carriage return
Call -144 Scan input buffer (address $200-)
Call -1184 Clears screen and prints APPLE II on top of screen
Call -9582 Catalog
Call 64116 Cold start
Call 54915 Clears stack so no FOR-NEXT and RETURN errors will accumulate.
Call 1002 Re-enables DOS commands (if you are unable to enter DOS
commands, this will let you)
Call 976 Reactivates DOS (if DOS is still in memory)
Call -155 Enter Monitor and sound bell.
Call -1250 Read Paddle controls (X-reg contains PDL #0 to 3)
Call -6090 RUN
Call -8192 Kills Integer basic.
Call -926 Carriage Return
Call -670 Cancels line
Call -336 Jump to Basic
Call -998 Move cursor up one line
Call -922 Move cursor down one line
Call -856 Time Delay. Poke 69,xx to set amount of delay.
Call -657 Get a line of input with no prompt, no line feed, and wait
Call -662 Get a line of input with prompt, no line feed, and wait
Call -665 Get a line of input with prompt, line feed, and wait
Call -3106 HGR
Call -3116 HGR2
Call -1216 GR
Call -211 Print "ERR" and ring bell
Call -468 Memory move after poking:
60-61 old start address 62-63 old end address
64-65 new end address 66-67 new start address
Call -1205 Set normal text window
Call -1728 Print hex of X & Y-registers
Call -1321 Display all registers
Call -1052 Ring bell
Call -2613 Hi-res cursor coordinates to 224-226
Call -1953 Add 3 to COLOR
Call -550 Prints contents of accumulator as 2 hex digits
Call -198 Ring bell
Call -167 Return to monitor in text mode
Call -151 Enter monitor, no bell
Call -458 Verify (compare and list differences)
Call -310 Write to tape
Call -259 Read to tape
Call -2458 Enter mini-assembler
Call -3973 Load integer
Call -3776 Save integer
Call -6090 Run integer
Call -8117 List integer
Call -321 Display the A,X,Y,P, and S registers.
Call -1370 Re-boots disk system
Call -182 Save registers
Call -882 Header routine-10 sec. of 770 HZ tone and sync. bit to signal
end of header and begin data.
Call -1716 Print X blanks (X register contains # to print)
Call -6739 NEW
Call -1906 Disassembler entry
Call -1402 IRQ handler
Call -1390 Break handler
Call -1223 Set screen to text mode (Destroys accumulator)
Call -1181 Multiply routine
Call -1148 Divide routine
Call -1087 Calculate text base address.
Call -1027 Print A-register as ASCII on text screen 1
Call -990 Perform a vertical tab to row in accumulator
Call -980 Perform escape function
Call -741 Keyin routine
Call -715 Read key and perform escape function if needed.
Call -626 Print carriage return (destroys acc. & Y-reg)
Call -541 Print a hex digit
Call -531 Output character in accumulator (destroys acc. & Y-REG COUT)
Call -528 Get monitor character output
Call -378 Set I flag
Call -375 Set keyboard
Call -333 Continue Basic
Call -330 Memory location 'GO'
Call -318 Perform monitor trace
Call -1059 Universal Bell