Group |
Address |
Name |
AltName |
DP
(Entry/Exit) |
Details |
Example |
Init |
$F18B |
INITALL |
INTALL |
$D0 |
Full Vectrex
initialization |
|
Init |
$F164 |
INITMSC |
INTMSC |
$C8 |
Initialize
misc. parameters |
|
Init |
$F14C |
INITPIA |
INTPIA |
$D0 |
Initialize
PIA |
|
Init |
$F272 |
INITPSG |
INTPSG |
$D0 |
Initialize
the ‘REQx’ area (sound mirror). |
|
Init |
$F533 |
IREQ |
INTREQ |
- |
Initialize
the 'REQZ' area |
|
Init |
$F000 |
POWER |
PWRUP |
- |
Power-up
handler |
|
Drawing |
$F2E6 |
DEFLOK |
---C1:C1048576B1:B1048576 |
$D0 |
Overcome scan
collapse circuitry |
|
Drawing |
$F192 |
FRAM20 |
FRWAIT |
$D0 |
Wait for
frame boundary (Pause for next frame) |
|
Drawing |
$F29D |
INT1Q |
- |
$D0 |
Set beam
intensity 1/4 ($1F) |
|
Drawing |
$F2A5 |
INT3Q |
- |
$D0 |
Set beam
intensity 3/4 ($5F) |
|
Drawing |
$F2AB |
INTENS |
- |
$D0 |
Set beam
intensity A (0-127) |
|
Drawing |
$F2A9 |
INTMAX |
- |
$D0 |
Set beam
intensity 4/4 (7F) |
|
Drawing |
$F2A1 |
INTMID |
INT2Q |
$D0 |
Set beam
intensity 2/4 ($3F) |
|
Drawing |
$F30C |
POSIT1 |
- |
$D0 |
Position
relative vector List X (1x scale) |
db Y,X |
Drawing |
$F308 |
POSIT2 |
- |
$D0 |
Position
relative vector (2x scale) |
|
Drawing |
$F30E |
POSITB |
- |
$D0 |
Position
relative vector list X Scale B |
|
Drawing |
$F2FC |
POSITD |
- |
$D0 |
Position
relative vector (X,Y)=(B,A) scale 1x |
|
Drawing |
$F312 |
POSITN |
- |
$D0 |
Position
relative vector (X,Y)=(B,A) scale T1LOLC |
|
Drawing |
$F310 |
POSITX |
- |
$D0 |
Release
integrators and position beam, lfrom X |
db Y,X |
Drawing |
$F2F2 |
POSWID |
- |
$D0 |
Release
integrators and position beam using 16-bit (Y,X) values from
address X |
dw Y,X |
Drawing |
$F34F |
CZERO |
ZEGO |
$D0 |
Depending
ZSKIP, zero integrators and set the sample / hold for active
ground. |
|
Drawing |
$F35B |
ZEREF |
ZEREF |
$D0 |
Set active
ground sample / hold to zero volts. |
|
Drawing |
$F34A |
ZERO.DP |
ZERO.DP |
$D0 |
DP=$D0...
Zero integrators and set active ground |
|
Drawing |
$F36B |
ZERO. |
ZERO |
$D0 |
Zero the
integrators only |
|
Drawing |
$F354 |
ZEROIT |
ZEROIT |
$D0 |
Zero
integrators and set active ground |
|
Diffy |
$F610 |
DANROT |
DROT |
- |
Rotate
‘Diffy’ style list A=Angle B=no of Vectors X=Source list U=Dest |
|
Diffy |
$F433 |
DASHE |
DSHDF1 |
$D0 |
Draw dashed
lines from 'DIFFY' list |
|
Diffy |
$F434 |
DASHEL |
DSHDF |
$D0 |
Draw dashed
lines from 'DIFFY' list A=Vectors-1 X=List |
|
Diffy |
$F437 |
DASHY |
DASHDF |
$D0 |
Draw dashed
lines from 'DIFFY' list X |
|
Diffy |
$F3DF |
DIFFAB |
- |
$D0 |
Draw from
'DIFFY' style list (B,A)=(X,Y) |
|
Diffy |
$F3CE |
DIFFAX |
- |
$D0 |
Draw from
'DIFFY' style list X=List |
|
Diffy |
$F3D8 |
DIFFX |
TDIFFY |
$D0 |
Draw from
'DIFFY' style list A=Vectors-1 B=Scale X=List |
|
Diffy |
$F3DD |
DIFFY |
- |
$D0 |
Draw from
'DIFFY' style list X=List |
|
Diffy |
$F3D6 |
DIFLST |
- |
$D0 |
Draw from
'DIFFY' style list |
|
Diffy |
$F616 |
DIFROT |
ADROT |
- |
Rotate
‘DIFFY’ style list X=Source U=Dest ANGLE |
|
Diffy |
$F3D2 |
DIFTIM |
- |
$D0 |
Draw from
'DIFFY' style list B=scale X=List |
|
Diffy |
$F3DA |
DIFTLS |
LDIFFY |
$D0 |
Draw from
'DIFFY' style list A=Vectors-1, X=List |
|
Diffy |
$F613 |
DISROT |
BDROT |
- |
'DIFFY' style
rotate B=vector count X=source list U=Dest |
|
Duffy |
$F3BE |
DUFFAB |
- |
$D0 |
Move a single
vector from the current beam position using the relative vector
values
given in ‘D’ (X,Y)=(B,A) |
|
Duffy |
$F3AD |
DUFFAX |
- |
$D0 |
Draw from
'DUFFY' style list X=list |
|
Duffy |
$F3BC |
DUFFY |
- |
$D0 |
Draw from
'DUFFY' style list X=list |
|
Duffy |
$F3BC |
DUFLTLS |
TDUFFY |
$D0 |
Draw from
'DUFFY' style list B=length X=List |
|
Duffy |
$F3B5 |
DUFLST |
- |
$D0 |
Draw from
'DUFFY' style list X=list |
|
Duffy |
$F3B1 |
DUFTIM |
- |
$D0 |
Draw from
'DUFFY' style list B=length X=List |
|
Diffy |
$F3B9 |
DUFLST |
|
$D0 |
A=Vectors-1
X=List |
|
Dot |
$F2D5 |
DIFDOT |
- |
$D0 |
Draw dots
according to 'DIFFY' format X=List pointer |
|
Dot |
$F2C5 |
DOT |
- |
$D0 |
Turn on beam
for dot |
|
Dot |
$F2C3 |
DOTAB |
- |
$D0 |
Draw Dot at
relative (X,Y) pos (B,A) |
|
Dot |
$F2DE |
DOTPAK |
DOTPCK |
$D0 |
Draw dots
according to 'PACKET' format X=list |
|
Dot |
$F2BE |
DOTTIM |
- |
$D0 |
Draw one dot
from 'DIFFY' style list B=on time X=List |
|
Dot |
$F2C1 |
DOTX |
- |
$D0 |
Draw one dot
from 'DIFFY' style list X |
|
Packet |
$F46E |
DASHY3 |
DASHPK |
$D0 |
Draw dashed
lines from 'PACKET' list X |
|
Packet |
$F408 |
PAC1X |
PACK1X |
$D0 |
Draw
according to ‘Packet’ style list X scale 1x |
|
Packet |
$F404 |
PAC2X |
PACK2X |
$D0 |
Draw
according to ‘Packet’ style list X scale 2x |
|
Packet |
$F40E |
PACB |
TPACK |
$D0 |
Draw from
'PACKET' list X B=Scale |
|
Packet |
$F410 |
PACKET |
- |
$D0 |
Draw
according to ‘Packet’ style list X |
|
Packet |
$F40C |
PACXX |
LPACK |
$D0 |
Draw from
'PACKET' style list X=list |
|
Packet |
$F61F |
POTATA |
PROT |
- |
'PACKET'
style rotate A=Angle X=Source List U=Dest List |
|
Packet |
$F622 |
POTATE |
APROT |
- |
'PACKET'
style rotate |
|
Raster |
$F37A |
POSDRAS |
MSSPOS |
$D0 |
Print $80
terminated String U at (X,Y) relative pos (B,A) |
|
Raster |
$F378 |
POSNRAS |
RSTPOS |
$D0 |
Display
raster message from U |
|
Raster |
$F498 |
RASTER |
MRASTR |
$D0 |
Display
raster string from MESSAGE |
|
Raster |
$F495 |
RASTUR |
RASTER |
$D0 |
Display
raster string from U |
|
Raster |
$F87C |
SADD |
SCRADD |
- |
Add contents
of score D to BCD at address X |
|
Raster |
$F880 |
SADD2 |
STKADD |
- |
Add stack to
indicated score |
|
Raster |
$F85E |
SHADD |
BYTADD |
- |
Add contents
of 'A' to indicated score |
A = 2-digit
BCD number
X = Score field pointer |
Raster |
$F391 |
SHIPSAT |
SHIPX |
$D0 |
Display
markers (count remaining) |
|
Raster |
$F393 |
SHIPSHO |
DSHIP |
$C8 |
Display
markers (count remaining) A=ascii B=remaining X=Pos |
|
Raster |
$F373 |
SIZPRAS |
RSTSIZ |
$D0 |
Display
raster message from U |
|
Raster |
$F38C |
TEXPOS |
TXTPOS |
$D0 |
Draw Strings
from U (0 terminated) |
dc.b
Y,X,"TXT",$80
dc.b Y,X,"TXT",$80
dc.b 0 |
Raster |
$F385 |
TEXSIZ |
TXTSIZ |
$D0 |
Display
raster message from U |
|
Controller |
$F1B4 |
ENPUT |
DBNCE |
$D0 |
Read
controller switches and debounce switch status. (A=Response mask) |
|
Controller |
$F8D8 |
HIGHSCR |
HISCR |
- |
Calculate
high score and save for logo C=Score Field U=Highscore |
|
Controller |
$F1BA |
INPUT |
- |
$D0 |
Read
controller buttons |
|
Controller |
$F7A9 |
OPTION |
SELOPT |
- |
Fetch number
of players and options from player A + B = No of players (0-9) |
|
Controller |
$F1F8 |
PANG |
JOYBIT |
$D0 |
Read joystick
UDLR |
|
Controller |
$F1F5 |
PBANG4 |
JOYSTK |
$D0 |
Read the
absolute position of the controller joysticks. |
|
Controller |
$F84F |
SCLR |
- |
- |
Clear
indicated score X |
|
Controller |
$F8C7 |
WINNER |
- |
- |
Determine
highest score X or U |
|
Rotate |
$F610 |
DANROT |
DROT |
- |
'DIFFY' style
rotate |
|
Rotate |
$F616 |
DIFROT |
ADROT |
- |
'DIFFY' style
rotate |
|
Rotate |
$F613 |
DISROT |
BDROT |
- |
'DIFFY' style
rotate |
|
Rotate |
$F61F |
POTATA |
PROT |
- |
'PACKET'
style rotate |
|
Rotate |
$F622 |
POTATE |
APROT |
- |
'PACKET'
style rotate X=Soource U=Dest (ANGLE) |
|
Rotate |
$F5FF |
RATOT |
LROT90 |
$C8 |
Rotate a
single line A=Initial Y B=Angle |
|
Rotate |
$F603 |
ROTAR |
ALNROT |
$C8 |
Rotate a
single line A=Initial Y (ANGLE) |
|
Rotate |
$F601 |
ROTOR |
LNROT |
$C8 |
Rotate a
single line A=Initial Y B=Angle |
|
Maths |
$F584 |
ABSVAL |
ABSAB |
- |
Form absolute
value for 'A' & 'B' registers |
|
Maths |
$F58B |
AOK |
ABSB |
- |
Form absolute
value for 'B' register |
|
Maths |
$F57E |
BITE |
DECBIT |
- |
Decode bit
position A=Bit number (0-7) |
|
Maths |
$F593 |
COMPAS |
CMPASS |
$C8 |
Return angle
for given delta 'Y:X' |
|
Maths |
$F5D9 |
COSGET |
COSINE |
- |
Calculate the
cosine of 'A' |
|
Maths |
$F511 |
RAND3 |
- |
- |
Calculate new
random number from SEED |
|
Maths |
$F517 |
RANDOM |
- |
- |
Calculate new
random number from SEED |
|
Maths |
$F663 |
RCOS |
LCSINE |
$C8 |
Multiply
'LEG' by previous cosine value |
|
Maths |
$F661 |
RCOSA |
MCSINE |
$C8 |
Multiply 'A'
by previous cosine value |
|
Maths |
$F65D |
RSIN |
LSINE |
$C8 |
Multiply
'LEG' by previous sine value |
|
Maths |
$F65B |
RSINA |
MSINE |
$C8 |
Multiply 'A'
by previous sine value WSINE |
|
Maths |
$F5EF |
SINCOS |
- |
$C8 |
Calculate the
sine and cosine of 'ANGLE' |
|
Maths |
$F5DB |
SINGET |
SINE |
$C8 |
Calculate the
sine of 'A' |
|
Misc |
$F67F |
BAGAUX |
BLKMV1 |
- |
Transfer A+1
bytes (127 max) from source U destination X |
|
Misc |
$F545 |
CLR256 |
|
- |
Clear 256
bytes at address X |
|
Misc |
$F542 |
CLRMEM |
CLREX |
- |
Clear
executive area of memory ($C800 - $C8FF) |
|
Misc |
$F53F |
CLRSON |
BCLR |
- |
Clear 'B'
bytes from X |
|
Misc |
$F55E |
DEKR |
DECTMR |
- |
Decrement
interval timers (XTMR0 – XTMR5) |
|
Misc |
$F55A |
DEKR3 |
D3TMR |
- |
Decrement 3
interval timers (XTMR0 – XTMR2) |
|
Misc |
$F57A |
DEL |
- |
- |
Delay
execution for a minimum of 20 cycles (B=Delay) |
|
Misc |
$F57D |
DEL13 |
- |
- |
Delay
execution for 13 cycles |
|
Misc |
$F579 |
DEL20 |
- |
- |
Delay
execution for 20 cycles |
|
Misc |
$F575 |
DEL28 |
- |
- |
Delay
execution for 28 cycles |
|
Misc |
$F571 |
DEL33 |
- |
- |
Delay
execution for 33 cycles |
|
Misc |
$F56D |
DEL38 |
- |
- |
Delay
execution for 38 cycles |
|
Misc |
$F1AA |
DPIO |
- |
- |
Set 6809 ‘DP’
register for I/O accesses ($D0) |
|
Misc |
$F1AF |
DPRAM |
- |
- |
Set 6809 ‘DP’
register for RAM accesses ($C8) |
|
Misc |
$F552 |
FILL |
BLKFIL |
- |
Set a block
of memory A=data B=bytes X=dest |
|
Misc |
$F8FF |
FINDBOX |
BXTEST |
- |
Symmetric
collison test |
A = Box ‘Y’
dimension (delta ‘Y’)
B = Box ‘X’ dimension (delta ‘X’)
X = Y:X coordinates of point to be tested
Y = Y:X coordinates of box center |
Misc |
$F548 |
GILL |
CLRBLK |
- |
Clear D bytes
of memory from X |
|
Misc |
$F550 |
NEGSOM |
CLR80 |
- |
Set B bytes
at memory X to $80 |
|
Misc |
$F8E5 |
OFF1BOX |
OFF1BX |
- |
Off-center
symmetric collision test |
|
Misc |
$F8F3 |
OFF2BOX |
OFF2BX |
- |
Off-center
symmetric collision text |
|
Misc |
$F683 |
STFAUX |
BLKMOV |
- |
Transfer ‘A’
bytes (0-127) from source ‘U’ to destination ‘X’ |
|
Sound |
$F92E |
AXE |
EXPLOD |
$C8 |
Complex
explosion sound effect U=table |
|
Sound |
$F9CA |
LOUDIN |
SETAMP |
$C8 |
Set amplitude
in ‘REQx’ B=Volume |
|
Sound |
$F259 |
PSG |
WRPSG |
$D0 |
Write to PSG
A=PSG Addr B=PSG data X=mirror |
|
Sound |
$F284 |
PSGLPU |
PSGMIR |
$D0 |
Send sound
string to PSG from U and mirror X |
|
Sound |
$F27D |
PSGLUP |
PSGLST |
$D0 |
Send sound
string to PSG from U |
|
Sound |
$F256 |
PSGX |
WRREG |
$D0 |
Write to PSG
and Morror A=Psg Addr B=PSG Data |
|
Sound |
$F687 |
REPLAY |
- |
$C8 |
Set tune
Sequence to list U |
|
Sound |
$F289 |
REQOUT |
- |
$D0 |
Send 'REQX'
to PSG and mirror |
|
Sound |
$F690 |
SOPLAY |
ASPLAY |
$C8 |
Set tune
sequence with alternate note set X=user not table U=Tune List |
|
Sound |
$F68D |
SPLAY |
- |
$C8 |
Set tune
Sequence to list U |
|
Sound |
$F742 |
XPLAY |
- |
$C8 |
Terminate
current tune |
|
Sound |
$F692 |
YOPLAY |
TPLAY |
$C8 |
Set tune
Sequence to list U |
|