Nº350 (6/2019)







  Download :
C’est l’été, les vacances approchent ou ont commencé pour certains. Les différents articles du mois devraient permettre à chacun de passer de bonnes vacances ( Nous sommes à la moitié de la saga proposée par Yann ; et nul doute que les programmeurs en herbe pourront déjà utiliser toutes les techniques détaillées autour de la pile du 6502. Pour la sieste, les 12 disquettes d’écran hires compiliées par André permettront de somnoler devant les plus beaux écrins Oric. Enfin (et je ne l’avais pas dans mes tap en stock), vous pourrez pour le dessert analyser les 3 pages de listings de Meccano scannées par Steve. A noter que le jeu (en tout cas le tap) n’est pas 100% compatible avec l’Atmos ; du fait de la fonction PLOT. A privilégier sur une config Oric1. Bonnes vacances. Didier

La visu de l’été
Revue des belles lettres
Collection Hires
Fonctionnement de la pile matérielle du 6502 (4)
Meccano - Man

sommaire

La visu de l’été   Page 2
Revue des belles lettres   Page 4
Collection Hires   Page 6
Publicité   Page 7
Fonctionnement de la pile matérielle du 6502 (4)   Page 8
Quelques Blagues   Page 13
Meccano - Man   Page 14


Fonctionnement de la pile matérielle du 6502 (4)
Par Yann L.

PARAMÈTRES ET SOUS-ROUTINES

L’entrée et la sortie de données nécessaires au fonctionnement d’une sous-routine, peut se dérouler de quatre façons :

1. En passant par les registres (A, X et / ou Y). C’est la meilleure méthode et la plus performante lorsqu’il s’agit de données constituées d’un ou deux octets.

2. En passant par des variables en RAM. Cette méthode est parfaite pour des données qui doivent rester en RAM et qui doivent servir à d’autres routines. Elle est souvent utilisée de manière conjointe à la première méthode.

3. Les besoins en entrées de la sous-routine peuvent être intégrés au programme lui-même, juste après l’instruction JSR (comme par exemple une chaîne alphanumérique à afficher). Dans ce cas, la sous-routine utilise l’adresse de retour stockée sur la pile en guise d’adresse de début des données. Elle peut aussi utiliser un octet qui détermine le nombre de données ou un délimiteur afin de savoir de combien d’octets avancer l’adresse de retour avant d’exécuter l’instruction RTS (et d’éviter que le processeur ne traite les données comme une instruction).

4. En passant par la pile matériel.
a. Pile en page 1 : le programme appelant empile la (ou les) données grâce à PHA, puis récupère le (ou les) résultats grâce à PLA, au retour de la sous-routine.
b. Pile virtuelle en page 0 : Idem précédemment, avec une pile de données différentes de la pile matérielle, ce qui peut faciliter certaines opérations sur la pile et l’adressage indirect. Par exemple, la pile de données peut être utilisée dans un processus en plusieurs étapes pour calculer une adresse, adresse qui à son tour peut être utilisée pour un accès indirect à un octet dans un tableau pour faire un calcul ou une opération logique.
c. Pile en RAM : Idem pile virtuelle en page 0, mais pouvant typiquement servir pour des nombres en virgule flottante autres que des adresses nécessitant les modes d’adressage disponibles en page 0.

Examinons un exemple dans lequel il s’agit d’utiliser la pile matériel pour une donnée d’entrée. Dans cet exemple, notre sous-routine transforme un demi-octet hexadécimal en octet ASCII, avec un octet en entrée et un octet en sortie, le tout stocké sur la pile matériel.
...


BROWSE

NUMEROS
 [351-352] - [350] [349] - [348] - [347] - [346] - [345] 

YEAR
2019 - 2018 - 2017 - 2016 - 2015 - 2014 - 2013 - 2012 - 2011 - 2010 - 2009 - 2008 - 2007 - 2006 - 2005 - 2004 - 2003 - 2002 - 2001 - 2000 - 1999 - 1998 - 1997 - 1996 - 1995 - 1994 - 1993 - 1992 - 1991 - 1990 - 0



Hosted By oric.org server www.oric.org V 2.6 CNIL ID : 872370 Write to Webmaster © 2000-2019 Built in 0.02 Seconds