Suivez-nous sur X

|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Programmation : Assembleur - un accélérateur logiciel (interruption du canal plan de bits DMA à la mémoire Chip)
(Article écrit par Michael M. et extrait d'A-News (Amiga News) - mars 1990)
|
|
Gagner du temps c'est gagner de l'argent, mais acheter une carte accélératrice n'est pas à la portée de
chaque porte-monnaie. C'est pourquoi je vous propose un accélérateur modeste mais pas très banal
et notamment moins cher.
La mémoire Chip ou la mémoire de $000000 à $7FFFFF est de la mémoire dite "lente" étant donné que les
circuits spécialisés y ont constamment accès. Notamment le plan de bits DMA est particulièrement gourmand
selon la résolution et le nombre de couleurs choisies. En cycles cela représente :
Basse résolution 5 plans de bits : 5% des cycles.
Basse résolution 6 plans de bits : 20% des cycles.
Haute résolution 3 plans de bits : 15% des cycles.
Haute résolution 4 plans de bits : 40% des cycles.
Avec le petit programme en assembleur ci-dessous, nous interrompons le canal plan de bits DMA en permettant
ainsi au 68000 d'accéder plus souvent à cette mémoire.
Après avoir démarré le programme, il attend discrètement, pendant que vous travaillerez avec un autre programme.
Au moment où votre Amiga doit effectuer beaucoup de calculs (lancer de rayons par exemple) pressez une touche,
dans notre exemple F10, et il interrompra le canal DMA. Au moment où l'écran s'éteint vous saurez qu'il
a enclenché le turbo.
Lorsque vous réappuyez sur F10, hop, l'écran se rallume et vous pouvez admirer votre chef-d'oeuvre. Si vous
n'avez plus besoin de ce programme, pressez F9 et il disparaîtra pour ne reparaître que lorsque vous
l'aurez recharger.
Vous remarquerez qu'il faut presser la touche F9 ou F10 pendant une seconde. Ceci est voulu. L'accélérateur
ne lit la touche que vous avez pressée que toutes les secondes afin de laisser un maximum de cycles aux
autres tâches.
Pour éviter des problèmes lorsque que le programme avec lequel vous travaillez, utilisez les mêmes touches
de fonction, je vous propose quelques touches de rechange :
Alt gauche : $37.
Amiga gauche : $33.
Alt droite : $35.
Amiga droite : $31.
Control : $39.
Shift gauche : $3f.
Shift droite : $3d.
Help : $41.
Del : $73.
F1, F2, F3... : $5F, $5D, $5B...
|