La Place des Développeurs Cross developpement : Tests rapides + debug
Reprise du message précédent
GDX :
C'est juste parce que le MSX sélectionne les slots un a un pour chercher l'entête des ROM.
Et .... ?
il en trouve une dans le slot cartouche en $4000, alors il bascule la page 1 sur ce slot,
il n'en trouve pas en $8000 et il bascule sur un slot contenant de la RAM pour la page 2 ???
GDX :
Au fait, le registre C contient le numéro de Slot (au format FxxxSSPP) de la ROM lors de son exécution à l'adresse de l'entête. C'est bon à savoir.
Au fait, le registre C contient le numéro de Slot (au format FxxxSSPP) de la ROM lors de son exécution à l'adresse de l'entête. C'est bon à savoir.
Au Start du programme cartouche c contient le numéro de slot ? cool!
Rétro coder fou : Z80 : MSX / Amstrad CPC / ZX Spectrum -- 6502 : C64 / VIC20 -- 68000 : Amiga
Mon site dédié à ma passion pour la programmation : http://majikeyric.free.fr
majikeyric :
Et .... ?
il en trouve une dans le slot cartouche en $4000, alors il bascule la page 1 sur ce slot,
il n'en trouve pas en $8000 et il bascule sur un slot contenant de la RAM pour la page 2 ???
il en trouve une dans le slot cartouche en $4000, alors il bascule la page 1 sur ce slot,
il n'en trouve pas en $8000 et il bascule sur un slot contenant de la RAM pour la page 2 ???
J'avais simplifié l'explication mais plus exactement ça se passe comme ça:
- Si l'adresse d'execution dans l'entête est entre 0000h~3FFFh, cette plage aura la ROM, la plage C000h~FFFFh aura de la RAM à coup sûr. La plage 8000h~BFFFh aura de la RAM si le MSX a plus de 16Ko. La plage 4000h~7FFFh sera indéterminée.
- Si l'adresse d'execution dans l'entête est entre 4000h~7FFFh, cette plage aura la ROM, la plage C000h~FFFFh aura de la RAM à coup sûr. La plage 8000h~BFFFh aura de la RAM si le MSX a plus de 16Ko. La plage 0000h~3FFFh aura la Main-ROM (le BIOS).
- Si l'adresse d'execution dans l'entête est entre 8000h~BFFFh, cette plage aura la ROM, la plage C000h~FFFFh aura de la RAM à coup sûr. La plage 4000h~7FFFh sera indéterminée. La plage 0000h~3FFFh aura la Main-ROM (le BIOS).
- Si l'adresse d'execution dans l'entête est entre C000h~FFFFh, cette plage aura la ROM, la plage 8000h~BFFFh aura de la RAM je pense. La plage 4000h~7FFFh sera indéterminée. La plage 0000h~3FFFh aura la Main-ROM (le BIOS).
On peut mettre 2 entêtes dans une ROM mais ça ne change pas. Edité par GDX Le 26/10/2015 à 23h41
Tu as bien déjà assez donné d'informations

Rétro coder fou : Z80 : MSX / Amstrad CPC / ZX Spectrum -- 6502 : C64 / VIC20 -- 68000 : Amiga
Mon site dédié à ma passion pour la programmation : http://majikeyric.free.fr
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie