INDEX BY SUBJECT
This is an index by subject. The references are to decimal memory
locations, not to page numbers. For an index to the location and
routine labels, see the previous index.
Subject Location
ANTIC
direct memory access
(DMA) 559, 54272
interrupts 512, 513
mode numbers 87
P/M graphics 559, 54272
ROM 54272 -
54783
Attract mode 77 - 79
BASIC
array table 140, 141
blackboard mode 58481
cartridge 40960 -
49151
error code, line 186, 187,
195
Floating Point routines 48549 -
49145
GOTO, GOSUB 142, 143
graphics modes 87
jump to DOS 10, 11
line numbers 136, 137
memory pointers 128, 129,
144, 145,
740 - 744
OPERATOR list 42509
page zero 128 - 209
program 14, 15, 136 -
139
program end 14, 15, 144,
145
runtime stack 142, 143
stack 256 - 511
statement pointer, table 136 - 139
stopped line 186, 187
string table 140, 141
TOKEN list 42159
variable name, value
tables 130 - 135
Blackboard mode
entry point 58481
start vector 10, 11
BOOT
cassette 9, 12, 75
disk boot initialization 12, 13
disk boot routine 4, 5, 62159,
62189
DOS vector 9
success flag 9
system lockup 9
BREAK key
disable 16, 53774
enable 16, 53774
flag 17, 53774
forced 53775
interrupt 16, 53774
restored 16, 53774
shadow register 16, 53774
status 17, 48
vector 566, 567
Buffers
cassette 1021 - 1151
command frame 570 - 573
data 50 - 53, 56
device (SIO data) 772, 773
line 30, 583 - 622
printer 29, 960 - 999
ZIOCB 36, 37, 40,
41
Cartridges
A (left) cartridge 40960
49151
B (right) cartridge 32768 -
40959
BASIC; see A cartridge
test for presence 6, 7, 61845
Cassette
baud rate 750, 751
beep count 64, 65
boot 2, 3, 9, 74,
75
buffer 61, 1021 -
1151
buffer size 650
buzzer 61530
end of file 63
handler routines 61249 -
61666
handler vector 58432
initialization vector 2, 3
inter-record gap 62
load 2, 3
mode 649, 783
motor control 54018
OPEN for input 58493
read block entry 58490
record size 1021
run address 10, 11, 12,
13
status register 648
voice track 53775
Characters
ATASCII 763, 57344
auto repeat 764
bit mapping 57344
blinking text 548, 549,
755
character sets 756, 57344 -
58367
character set address 756, 54281
colors 756
control codes 766
control key 702, 764
control register 755
cursor inhibit 752
hardware code 764
internal code 762, 764
inverse 694
invisible inverse 755
last character read,
written 763
logic processing 124
mode 755, 54273
move set to RAM 756
printer output 31
prior character code 754
ROM routines 63038 - 63196, 63202
screen location 87
shadow 756
shift key 702
tests 65470
translation of code 57344
under cursor 93
upside down 512, 513, 755, 54273
Checksum 49, 59, 60
CIO
command 23
IOCBs 832 - 959
utility initialization 58478
variables 43
vector 58454
Clock
attract mode 77 - 79
realtime 18, 19, 20
serial clock lines 53775
sound use 53768
Coldstart
cassette boot 9, 74
disk boot 9
entry point 58487
flag 580
powerup 61733
Color
attract mode 77 - 79
default values 712
GTIA registers 53266 - 53274
player/missile shadows 704 - 707
playfield shadows 708 - 712
rotate 77, 703
screen mode 87
Command frame buffer
(CFB) 570 - 573
Console keys
cassette boot 74
Controller jacks 54016,
54017
CTIA
see GTIA
Cursor
advance 85
character under 93, 125
column 85, 86
current position 84 - 86, 94,
95
end of line 125
graphics 90 - 92
inhibit (disable) 752
LOCATE 85, 86
logical line 99
opaque, transparent 755, 54273
out of range error 87
previous position 90 - 92
row 84
tab width 201
text window 85, 86, 123
Device
buffer 772, 773
byte transfer 776, 777
command 770
Device Control Block
(DCB) 768 - 779
drivers (adding) 806
error status 746
handler address table 794 - 831
handler routines 58534 -
handler vectors 768 - 831
retries 55
status registers 746 - 749
771
timeout value 747
vector tables 58368 -
58447
ZIOCB number 33
Direct Memory Access
(DMA)
graphics control 53277
ROM 54272
shadow 559
Disk (see also DOS)
beep during I/O 65
boot 9 - 13, 74,
75
boot address 578, 579
boot continuation 4, 5
boot routine 62159,
62189
buffer 21, 22, 1802
flags 576, 577
FMS page zero 67 - 73
FMS pointer 24, 25
handler commands 778
handler routines 60906 -
61047
handler vector 58448,
58451
initialization address 12, 13, 738,
739
records open 1801
retries 54
run address 736 - 739
start vector 10, 11
timeout 582
utilities 26, 27
vector 10, 11
verify routine 1913
Display handler (see
also Characters, Screen)
logical line map 690 - 693
memory 14, 15
pixel mask 672
RAM 656 - 703
registers 76, 80, 81, 99 - 105, 107 - 127
routines 62454
Text window 656 - 667
vector 58384
Display List
address 560, 561
54274,
54275
enable 559
entries 81
instructions 559 - 561
interrupts 512, 513,
560, 561,
54286,
54287
location 560, 561,
54274
lowest address 14, 15
reserving memory 106
ROM tables 65093
screen mode 87
scrolling 54276,
54277
size 88, 89
vertical line count 54283
DOS (see also Disk)
boot address 578, 579
boot record 1792
buffers 6780 - 7547, 5121 - 5440, 7588 - 7923
burst I/O 2952 - 2773
drives in system 1802
DUP.SYS RAM 5440 - 13062
filename change 3818, 3822
files reserved 1801
FMS RAM 1792 - 5377
initialization 12, 13, 738,
739
run address 736 - 737
start vector 9 - 11
wildcard character 3783
DRAW command
color of line 763
cursor 90 - 92
endpoint of line 84 - 86, 96 -
98
flag 695
GR.0 87
ROM routines 64764
screen mode 87
DUP.SYS
load 10,11
Errors
BASIC 186, 187,
195
device 746
disk I/O 73
SIO 575
ESC (Escape) key
control codes without 766
flag 674
FILL command (see also
DRAW)
color of fill area 765
color of line 763
endpoint of line 84 - 86, 96 -
98
flag 695
Floating Point
BASIC ROM 48549 -
49145
degree or radians flag 251
page zero 210 - 255
pointers 252 - 255
RAM page five 1406 - 1535
registers 212 - 217,
224 - 229
ROM (OS) 55296 -
57343
trig functions 251
FMS
page zero buffer 67 - 73
pointer 24, 25
RAM 1792 - 5377
Graphics (see also
player/missiles)
display mode 87
DRAW, DRAWTO, FILL 85, 86, 96 -
98
IOCB 928 - 943
line plotting 112 - 122
memory use 88, 89, 106
player, missile shapes 53261 -
53265
row and column plotting 112 - 122
screen memory 14, 15, 123,
126, 127
scroll 54276,
54277
tab width 201
XIO commands 96 - 98
GTIA
collisions 53252
examples 623
mode selection 87, 623
ROM 53248 -
53503
stick triggers 53264 -
53267
test 623
text window 87, 623
Handlers
interrupt handlers 59093 -
59715
RESET 794
ROM routines 58534 -
59092
Interrupts
BREAK key disabled 16
BREAK key vector 566, 567
Display List 512, 513
enabled 16, 53774
handler routines 59093 -
59715
IRQ 16, 514-
535, 53774,
59123,
59126
NMI 512, 513,
54286,
59316
PIA (peripheral) 54018,
54019
POKEY 16, 53774
RAM 512 - 535,
566, 567
serial 16
status request 53774
timer 16
VBLANK 546 - 549,
54286,
58460 -
58468,
59345 -
59715
Inverse characters
flag 694
IOCB
graphics screen 928 - 943
LIST, LOAD, LPRINT 944 - 959
move 58577
page zero 32 - 47
RAM 832 - 959
screen editor 832 - 847
IRQ
Break key vector 566, 567
service routines 59123 -
59315
vectors 514 - 535
Jiffies, jiffy 18 - 20
Joystick
see Stick
Keyboard
code 764, 53769
console keys 53279
control key flag 702, 53769
controller 54016
delay flag 753
display flag 766
enable debounce,
scanning 562, 53775
escape key flag 674
handler routines 63197 -
65535
handler vector 58400
interrupts 16, 53774
inverse toggle 694
option, select, start keys 53279
shift key flag 702, 53769
start, stop flag 767
status 76
synchronization 54282
timer delay 555
Light pen
horizontal value 564, 54284
vertical value 565, 54285
Line
bit map 690 - 693
buffer 583 - 622
cursor 99
logical line 83
margins 83
plotting 112 - 122,
126
screen editor 107
tabs 201, 675 -
689
Luminance
attract mode 77 - 79
Machine language
page six 1536 - 1791
techniques 88
Margins
editing 83
initialization 82, 83
left 82
right 83
scrolling 83
Memory
see RAM
Monitor
handler routines 61667 -
62435
Non-Maskable Inter-
rupts (NMI)
DLI 560, 561,
54286
reset register 54287
service routines 59316 -
59715
status 54287
VBLANK 546 - 549,
54286
vectors 512, 513
Operating system
character set 57344 -
58367
Floating Point 55296 -
57343
handlers 58534 -
65535
ROM 55296 -
65535
vectors 58368 -
58533
Paddles
see Pots
Page zero
BASIC use 128 - 209
buffer 21, 22
Floating Point use 210 - 255
FMS registers 67 - 73
IOCB 32 - 47
RAM 0 - 255
Peripherals
controllers 54018,
54019
interrupts 53744
ports 54016,
54017
PIA
ROM 54016 -
54271
stick 54016,
54017
paddle (pot) triggers 54016,
54017
ports 54016 -
54019
Player/Missile Graphics
(PMG)
character base 54279
collision clear 53278
collision detection 53248 -
53263
color registers 703 - 707
disable, enable 559, 53277
DMA 54272
fifth player 623, 53275
graphic shape 53261 -
53265
horizontal movement 53248
horizontal position 53248 -
53255
location 54279
memory reservation 54279
movement 53248
multicolor 623, 53275
overlap 623, 53275
priority 623, 53275
resolution (line) 559, 54272
screen boundaries 53248
size, width 53256 -
53260,
54279
vertical delay 53276
vertical motion 53248
Playfield
enable 559
priority 623, 53275
size 559
PLOT
screen mode 87
POKEY
interrupts 16, 514 - 535
pots 53760 -
53767
ROM 53760 -
54015
Polynomials
random numbers 53770
sound dividers 53761,
53768
Pots (paddles)
fast scan enable 562, 53775
POKEY registers 53760 -
53767
port state read 53768
shadows 624 - 631
start read sequence 53771
trigger latch 53277
triggers 636 - 643,
54016
values 624
Powerup
RAM size 6, 740
warmstart 8
PRINT
screen mode 87
Printer
buffer 29, 30, 960 -
999
character output 31
handler routines 61048 -
61248
handler vector 58416
IOCB use 944
sideways printing 30
status 28, 30
timeout 28
Priority
ROM 53275
shadow 623
RAM
clear memory 88, 89, 106
free memory, bottom 743, 744,
1792
free memory, top 741 742
monitor 0, 1
pointers 4, 5, 15,
128, 129
protected area (page six) 1536 - 1791
reserving 106, 743,
744
RAM top 106, 740 -
742
screen 88, 89
scrolling 699
size 106, 740
test 4 - 7
vector table 58496
Random numbers
poly counters 53768
register 53770
RESET
coldstart 580
DOS 10, 11
handler routine 61723
handler tables 794
interrupt 54286
lockup 9
margins 83
warmstart 8, 58484
Retry
command frame 54
device 55
Screen (See also Cursor)
bit mapping 110
boundaries 53248
buffer 107
clear memory 88, 89
clear screen 88
color clocks 672
control codes 766
GRAPHICS modes 87 - 89, 106
handler vector 58368
IOCB use 832, 928
line buffer 583 - 622
logical line map 690 - 693
lowest address 14, 15, 88,
89
memory restrictions 741, 742
memory use 88
mode 87
page zero RAM 80 - 120
PAL compatible 53268
pixel justification 111
pixel mask 672
rows 703
save routines 88, 89
screen modes 560, 561
scrolling 84, 89, 106,
699, 767,
54276,
54277,
64428
size 76, 88, 89,
672
split screen 123
TAB map 675 - 689
text rows 703
vectors 800, 803,
58368,
58384
vertical line counter 54283
wait synchronization 54282
Serial port
control 562, 53775
data port 790
input/output 16, 53773
interrupts 16, 53774
reset status 53770
shadow 562
status 53775
SIO
checksum 49
command frame buffer 570 - 573
data buffer 50 - 53, 56
Device Ccntrol Block
(DCB) 768 - 779
disk flags 576, 577
error flag 575
flags 56 - 60
interrupt handler 58475
interrupts 514 - 527
routines 59716 -
60905
send enable 58472
stack pointer 792
status 48
timeouts 28
transmission flags 55 - 60
utility initialization 58469
vector 58457
Software timers 536 - 545
Sound
audio control 53761 -
53768
audio frequency 53760 -
53768
beeps 64, 65
buzz 61530
cassette buzzer 61530
clock frequency 53768
console register 53279
CTRL-2 buzzer 66
distortion 53761
filters 53768
I/O beeps 65
keyboard speaker 53279
margins 83
octave range 53768
poly counters 53761
Stack
page one 256 - 511
runtime 142, 143
Status
device 747
display 76
printer timeout 28
SIO 48
ZIOCB 35
Stick (joystick)
attract mode 77
PIA registers 54016,
54017
read routines 632
shadows 632 - 635
trigger latch 53277
triggers 644 - 647
values 632
Tabs
comma spaces 201
stop map 675 - 689
Text window
address 660, 661
cursor 123, 656 - 658
GTIA 87
margins 82, 83
plot 87
rows available 703
screen mode 87, 659
scrolling 699
tab width 201
Timeouts
baud rate correction 791
device 748
disk 582
printer 28
storage 48
value 28
Timers
attract mode 77
baud rate 780 - 782, 784 - 787
critical code 66
interrupt enable 16, 53774
jump vectors 550 - 553
POKEY (hardware) 16, 528 - 533, 53768
realtime clock 18 - 20
repeat 555
start hardware 53769
suspended 66
system (software) 536 - 558
VBLANK 66
vectors 550 - 558
Transmission flags 56 - 60
Triggers (see Pots,
Sticks)
C/GTIA registers 53264 - 53267
latches 53277
paddle (pot) 636 - 643
PIA registers 54016, 54017
stick (joystick) 644 - 647
Variables
assign values 134
list 132
name table 130 - 133
statement table 136, 137
string and array table 140, 141
value table 134, 135
attract mode 77 - 79
clock 18 - 20
critical section 66
entry point 58463
exit 58466
interrupts 546 - 549, 54286
key delay 753
set timers 18, 58460
timer value 0, 1
Vectors
cassette handler 58432
CIO 58454
command 23
device handlers 794 - 831, 58368 - 58477
disk 10, 11
disk handler 58448,
58451
display handler 58384
Display List interrupt 512, 513
keyboard handler 58400
printer handler 58416
screen editor 58368
warm start 8, 54287
Warmstart
entry point 58484
flag 8
NMI check 8, 54287
vector 8, 58484
Return to Table of Contents
| Previous Chapter
| Next Chapter