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