Registres Hardware

 

Détail des adresses mémoires:

Label Dec. Hex. Explications
  49808 C290 Routine de redémarrage à chaud
  49834 C2AA Routine RESET
  49864 C2C8 Routine de redémarrage à froid
       
       

M0PF

HPOSP0

 

53248 D000

En lecture:Collision missile 0 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

En écriture:Position horizontale player 0

M1PF

HPOSP1

 

53249 D001

En lecture:Collision missile 1 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

En écriture:Position horizontale player 1

M2PF

HPOSP2

 

53250 D002

En lecture:Collision missile 2 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

En écriture:Position horizontale player 2

M3PF

HPOSP3

 

53251 D003

En lecture:Collision missile 3 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

En écriture:Position horizontale player 3

P0PF

HPOSM0

53252 D004

Lecture:Collision player 0 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8
Ecriture:Position horizontale missile 0

P1PF

HPOSM1

53253 D005

Lecture:Collision player 1 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

Ecriture:Position horizontale missile 1

P2PF

HPOSM2

53254 D006

Lecture:Collision player 2 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

Ecriture:Position horizontale missile 2

P3PF

HPOSM3

53255 D007

Lecture:Collision player 3 sur playfield

  • playfield 0=1
  • playfield 1=2
  • playfield 2=4
  • playfield 3=8

Ecriture:Position horizontale missile 3

SIZEP0

P0PL

53256 D008

En lecture:Collision missile 0 sur player:

  • player 0=1
  • player 1=2
  • player 2=4
  • player 3=8

En écriture:Taille du player 0: 0=normal,1=double, 3=quadruple

SIZEP1

P1PL

53257 D009

En lecture:Collision missile 1 sur player:

  • player 0=1
  • player 1=2
  • player 2=4
  • player 3=8

En écriture:Taille du player 1: 0=normal,1=double, 3=quadruple

SIZEP2

P2PL

53258 D00A

En lecture:Collision missile 2 sur player:

  • player 0=1
  • player 1=2
  • player 2=4
  • player 3=8

En écriture:Taille du player 2: 0=normal,1=double, 3=quadruple

SIZEP3

P3PL

53259 D00B

En lecture:Collision missile 3 sur player:

  • player 0=1
  • player 1=2
  • player 2=4
  • player 3=8

En écriture:Taille du player 3: 0=normal,1=double, 3=quadruple

P0PL

SIZEM0

53260 D00C

En lecture:Collision player avec player 0

  • player 1=2
  • player 2=4
  • player 3=8

En écriture:Taille du missile 0: 0=normal,1=double, 3=quadruple (Taille des 4 missiles si PLAYER 5 activé cf adresse 623)

P1PL

SIZEM1

53261 D00D

En lecture:Collision player avec player 1

  • player 0=1
  • player 2=4
  • player 3=8
En écriture:Taille du missile 1: 0=normal,1=double, 3=quadruple

P2PL

SIZEM2

53262 D00E

En lecture:Collision player avec player 2

  • player 0=1
  • player 1=2
  • player 3=8

En écriture:Taille du missile 2: 0=normal,1=double, 3=quadruple

P3PL

SIZEM3

53263 D00F

En lecture:Collision player avec player 3

  • player 0=1
  • player 1=2
  • player 2=4

En écriture:Taille du missile 3: 0=normal,1=double, 3=quadruple

PCOLM0 53266 D012 PM0 - Associé à l'adresse 704, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 704 (à moins que l'interruption VBI ne soit stoppée par exemple).
PCOLM1 53267 D013 PM1 - Associé à l'adresse 705, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 705 (à moins que l'interruption VBI ne soit stoppée par exemple).
PCOLM2 53268 D014 PM2 - Associé à l'adresse 706, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 706 (à moins que l'interruption VBI ne soit stoppée par exemple).
PCOLM3 53269 D015 PM3 - Associé à l'adresse 707, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 707 (à moins que l'interruption VBI ne soit stoppée par exemple).
COLPF0 53270 D016 Associé à l'adresse 708, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 708 (à moins que l'interruption VBI ne soit stoppée par exemple).
COLPF1 53271 D017 Associé à l'adresse 709, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 709 (à moins que l'interruption VBI ne soit stoppée par exemple).
COLPF2 53272 D018 Associé à l'adresse 710, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 710 (à moins que l'interruption VBI ne soit stoppée par exemple).
COLPF3 53273 D019 Associé à l'adresse 711, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 711 (à moins que l'interruption VBI ne soit stoppée par exemple).
COLBK 53274 D01A Associé à l'adresse 712, à la différence que la couleur est prise en compte immédiatement, quelque soit la position du faisceau. Cette valeur sera écrasée au prochain retour du faisceau pour être remplacée par celle contenue à l'adresse 712 (à moins que l'interruption VBI ne soit stoppée par exemple).
PRIOR 53275 D01B Priorité P/M et mode GTIA
GRACTL 53277 D01D Gérer (1 = missiles, 2 = players, 3 Players et missiles) ou non (0) les players missiles
HITCLR 53278 D01E Réinitialisation des collisions Player-missile à 0
CONSOL 53279 D01F Indique l'état des touches OPTION, SELECT et START
AUDF1 53760 D200 Fréquence audio voix 1 - Audio Channel Frequency
AUDC1 53761 D201 Distorsion et volume voix 1 - Audio Channel Control
AUDF2 53762 D202 Fréquence audio voix 2 - Audio Channel Frequency
AUDC2 53763 D203 Distorsion et volume voix 2 - Audio Channel Control
AUDF3 53764 D204 Fréquence audio voix 3 - Audio Channel Frequency
AUDC2 53765 D205 Distorsion et volume voix 3 - Audio Channel Control
AUDF4 53766 D206 Fréquence audio voix 4 - Audio Channel Frequency
AUDC4 53767 D207 Distorsion et volume voix 4 - Audio Channel Control
AUDCTL 53768 D208 Audio Control Register: Permet de switcher entre l'horloge 64KHz et 15KHz
RANDOM 53770 D20A Pour avoir un nombre aléatoire entre 0 et 255.
IRQEN 53774 D20E Autoriser les requètes d'interruptions voir aussi POKMSK($10)
PACTL 54018 D302

Port A controller:Avec la valeur 60 pour stopper le moteur du lecteur de cassette, 52 pour le démarrer. De nos jours, on peut écouter des CD audios sur un PC. On pouvait faire de même à l'époque avec les cassettes audios, il suffisait alors de mettre la cassette et d'appuyer sur PLAY...

DMACTL 54272 D400 Direct Memory access control (DMA) (voir aussi SDMCTL $022F ou 559)
DLISTL 54274 D402 Partie basse de la display list SDLSTL $0230 560
DLISTH 54275 D403 Partie haute de la display list SDLSTL $0231 561
PMBASE 54279 D407 Adresse player/missile / 256
       
       
       
WSYNC 54282 D40A Adresse magique: WAIT FOR HORIZONTAL SYNC. En adressant n'importe quoi dans cette adresse, on se retrouve à attendre la prochaine synchronisation horizontale.
NMIEN 54286 D40E
  • Bit 7 : Activer DLI
  • Bit 6 : Activer VBI