CODINGAMSLIVE ★ AMSLIVE n°03 - CPC+ ★

AMSLIVE n°03 - CPC Plus - SsnCoding Amslive

Ce qui est bien avec un CPC+, c'est qu'on peut regarder sans complexe une démo Amiga et se dire, en gonflant le torse, et ce de manière aussi assurée que virile : "tu vois, mon fils, ça, je peux le faire". Alors mettons-nous au boulot. Amen.

Dans cette initiation, nous allons d'abord revoir les registres de l'ASIC (le gros machin avec plein de pattes propre à la gamme "Arnold V" plus communément appelée CPC+)

OR DONC, L'ASIC

L'ASIC est cadencé à 40 MHz, ce qui est légèrement supérieur au CPC "traditionnel", qui se traine à ? MHz. Comme vous devez le savoir, l'ASIC émule certaines des puces de notre vieux CPC, comme le CRTC ou le PPI. Bien. Mais au delà de ce désir propre à Alan Michaël de réduire le nombre de puces de sa bécane, il existe une bonne tonne de fonctionnalités dont on vous a déjà parlé un peu partout, loquées qu'elles sont par Amstrad PLC pour que le programmeur X ne puisse les utiliser.

Nous ne reviendrons pas sur le fait que cette décision est à l'origine de l'échec de la gamme Arnold V. Passons donc...

BREF

La séquence, pour que vous n'ayez pas à chercher de par les milliers d'exemplaires de Quasar ou l'Amstrad 100% que vous possédez, c'est :

FF, 11, B3, 51, A8, D4, 62, 39, 9C, 46, 2B, 15, 8A, CD, EE

Ces valeurs doivent être envoyées par quelques OUTs en &BCxx, précédées auparavant avant et pas pendant ni après par un signal de synchro qui doit être un non-zéro (&FF ou autre) puis zéro (&0).

LE MYTHE DU RELOQUAGE

Vous avez vu déjà des milliers de fois comment déloquer l'ASIC. Mais savez-vous le relocker ? Selon Amstrad PLC, il suffit d'envoyer la même chaîne, sans le &EE final. Ca pourrait toujours servir si vous ne souhaitez pas éteindre votre CPC+ chéri avant de lancer certains programmes comme DISCO (certaines versions supportent mal le délockage de RMR2). Seulement voilà, j'ai beau essayer, réessayer, ça ne marche pas avec mon CPC+. Alors je m'interroge... Si vous avez un quelconque renseignement sur la question, n'hésitez pas à me contacter, ok ?

LES REGISTRES DU ERE MERDEUX

Vous les avez sûrement déjà vus quelque part, mais rarement en entier. En effet, et n'ayons pas peur de casser un mythe, les Logon System ne vous ont pas tout dit sur le RMR2. Autant sur les possibilités du circuit que sur les registres, nous allons tenter au cours des mois à venir, d'explorer plus avant ce monde englouti, (tiens, ça me rappelle certains MP2 d'OffseT qu'on s'est écoutés pour le 31 décembre...)

Quelques petits commentaires. D'abord, je regrette sérieusement l'attitude des Logon System. Ze Masters. C'est eux qui se sont procurés en (presque) premier le document de référence publié par Amstrad PLC. Ok. Mais de là à ré-inventer le nom des registres, il y a un fossé. Vous savez ce que c'est, refaire le monde. Alors, joyeusement, les compères, ayant sous les yeux les noms officiels, se sont permis de donner des noms aux registres de couleurs (tel le merveilleux "COLBORD" qui n'a pas de nom officiel, ou tous les "COLBx". Pareil pour les zones de définition des sprites hard. "SPRDEFO", "SPRDEF1 " etc..

ADR TAILLE RST TYPE MNEM FONCTION
-------------------------------------------------------------
4000h 100h N R/W ;Sprite 0 image data
4100h 100h N R/W ;Sprite 1 image data
4F00h 100h N R/W ;Sprite 15 image data
5000h ;(unused)
6000h 2 N R/W X0 Sprite 0 X position
6002h 2 N R/W Y0 Sprite 0 Y position
6004h 1 Y W M0 Sprite 0 magnification
6005h 3 ; (unused)
6008h 2 N R/W X1 Sprite 1 X position
600Ah 2 N R/W Y1 Sprite 1 Y position
600Ch 1 Y W M1 Sprite 1 magnification
600Dh 3 ; (unused)
6078h 2 N R/W X15 Sprite 15 X position
607Ah 2 N R/W Y15 Sprite 15 Y position
607Ch 1 Y W M15 Sprite 15 magnification
6080h ;(unused)
6400h 2 N R/W Color palette, pen 0
6402h 2 N R/W Color palette, pen 1
641Eh 2 N R/W Color palette, pen 15
6420h 2 N R/W Color palette, border
6422h 2 N R/W Color palette, sprite colour 1
6424h 2 N R/W Color palette, sprite colour 2
643Eh 2 N R/W Color palette, sprite colour 15
6440h ;(unused)
6800h 1 Y W PRI Program. raster interrupt scan line
6801h 1 Y W SPLT Screen split scan line
6802h 2 N W SSA Screen split secondary start address
6804h 1 Y W SSCR Soft scroll control register
6805h 1 N W IVR Interrupt Vector
6806h ;(unused)
6808h 1 ; R ADC0 Analogue input channel 0
6809h 1 ; R ADC1 Analogue input channel 1
680Ah 1 ; R ADC2 Analogue input channel 2
680Bh 1 ; R ADC3 Analogue input channel 3
680Ch 1 ; R ADC4 Analogue input channel 4
680Dh 1 ; R ADC5 Analogue input channel 5
680Eh 1 ; R ADC6 Analogue input channel 6
680Fh 1 ; R ADC7 Analogue input channel 7
6810h ;(unused)
6C00h 2 N W SAR0 "DMA" channel 0 address pointer
6C02h 1 N W PPR0 "DMA" channel 0 pause prescaler
6C03h 1 ; (unused)
6C04h 2 N W SAR1 "DMA" channel 1 address pointer
6C06h 1 N W PPR1 "DMA" channel 1 pause prescaler
6C07h 1 ; (unused)
6C08h 2 N W SAR2 "DMA" channel 2 address pointer
6C0Ah 1 N W PPR2 "DMA" channel 2 pause prescaler
6C0Bh 4 ; (unused)
6C0Fh 1 Y R/W DCSR "DMA" control/status register


Mais bon, ce serait pardonnable s'ils n'avaient pas, en plus, modifié des noms de registres EXISTANTS ! Ainsi, il semble que X0, Y0 et M0 ne leur aient pas paru convenables. C'est donc "SPRX0", "SPRY0" et "SPRM0" qui sont publiés. Bon.

Donc, désormais, je décrète que les scrollings s'appelleront "scrommings", que la rupture n'aura plus cours que sous l'appellation "cassure" et que le DMA se nommera dorénavent "DMACPCPLUS".

Non mais...

SNN , AMSLIVE n°3

★ ANNÉE: ???
★ AUTEUR: SNN

Page précédente : AMSLIVE n°02 - Rasters

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » AMSLIVE n°18 - BIDULES ET MACHINS VRAIMENT CHOUETTES
» Coding » AMSLIVE n°10 - Memoire du CPC 2
» Coding » AMSLIVE n°14 - 3D est-ce l'amour ?
» Coding » AMSLIVE n°02 - Choisir Son Assembleur
» Coding » AMSLIVE n°04 - Initiation Au Soundtracker
» Coding » AMSLIVE n°02 - Rasters
Je participe au site:

» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 304 millisecondes et consultée 2398 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.