| CPC Rulez https://cpcrulez.fr/forum/ |
|
| switch banks cartouche cpc+ https://cpcrulez.fr/forum/viewtopic.php?f=4&t=4251 |
Page 1 sur 1 |
| Auteur : | neocps1 [ 01 Juil 2010, 08:39 ] |
| Sujet du message : | switch banks cartouche cpc+ |
Je me suis remis au code z80 et j'avoue que ca change bien du développement classique... L'absence de vraies instructions travaillant sur des registres ou des mots 16 bits, le nombre limité de registres, la mémoire limitée (d'autant plus avec la bank 0x4000-0x7fff que se réserve l'asic sur cpc+)... C'est plutôt fun |
|
| Auteur : | fano [ 01 Juil 2010, 08:51 ] |
| Sujet du message : | Re: assembleur avec winape |
Oui , tout le plaisir est de faire le mieux possible avec ces limitations |
|
| Auteur : | neocps1 [ 01 Juil 2010, 09:27 ] |
| Sujet du message : | Re: assembleur avec winape |
D'ailleurs, est-ce qu'il y a des solutions pour palier le fait que la bank 0x4000-0x7fff est utilisée par l'asic ? Ca fait quand même 16Ko de moins |
|
| Auteur : | hERMOL [ 01 Juil 2010, 10:01 ] |
| Sujet du message : | Re: assembleur avec winape |
Hem... pas de confusion... l'ASIC possède ces propre 16ko. |
|
| Auteur : | neocps1 [ 01 Juil 2010, 10:07 ] |
| Sujet du message : | Re: assembleur avec winape |
Oui je sais bien que les 16Ko de ram sont masqués pendant que l'asic est mappé en mémoire et que les 16Ko sont indépendants de l'asic. Mais si je ne me trompe pas, ca oblige à faire du bank switching pour pouvoir utiliser ces 16 Ko et utiliser une mémoire tampon pour pouvoir par exemple recopier des données graphiques depuis ces 16Ko vers les registres de l'asic. |
|
| Auteur : | hERMOL [ 01 Juil 2010, 10:16 ] |
| Sujet du message : | Re: assembleur avec winape |
oui exact, mais a l'origine l'ASIC s'utilise en duo avec une cartouche (bank adressable entre &0C000 et &0FFFF ) pour palier au problème de place utilise la compression des sprites hard... cf: viewtopic.php?f=4&t=3931 |
|
| Auteur : | hERMOL [ 01 Juil 2010, 10:40 ] |
| Sujet du message : | Re: assembleur avec winape |
bank0) 16ko de la ROM Firmware bank1) 16ko de la ROM BASIC bank2) 16ko de ??? bank3) 16ko de la ROM disque bank4) le reste peu etre utiliser par ton code en &C000-&FFFF avant de switcher avec les banks de ta cartouche fais un "ld bc,&7f8c:out (c),c" un "ld bc,&df80+numero_de_la_bank:out (c),c" switch ta bank en &C000 |
|
| Auteur : | Longshot [ 01 Juil 2010, 10:45 ] |
| Sujet du message : | Re: assembleur avec winape |
Citer : Mais si je ne me trompe pas, ca oblige à faire du bank switching pour pouvoir utiliser ces 16 Ko et utiliser une mémoire tampon pour pouvoir par exemple recopier des données graphiques depuis ces 16Ko vers les registres de l'asic. Tu n'es pas obligé d'avoir une mémoire tampon, sauf pour les blocs 1 et 5 (en considérant qu'un cpc 128k a des blocs numérotés de 0 à 7) Il existe toujours une combinaison pour les autres blocs qui te permet de faire un transfert direct d'un bloc vers 4000-7FFF Pour les connexions ROM/RAM ASIC : https://cpcrulez.fr/coding_cpcplus41.htm |
|
| Auteur : | neocps1 [ 01 Juil 2010, 10:47 ] |
| Sujet du message : | Re: assembleur avec winape |
tu es un chef
|
|
| Auteur : | hERMOL [ 01 Juil 2010, 11:00 ] |
| Sujet du message : | Re: switch banks cartouche cpc+ |
hophop, j'ai divisé le sujet pour plus de clarté ! |
|
| Page 1 sur 1 | Le fuseau horaire est UTC+1 heure |
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |
|