Logicielsmoto.com http://www.logicielsmoto.com/phpBB/ |
|
Switch de bank "portable" http://www.logicielsmoto.com/phpBB/viewtopic.php?f=3&t=473 |
Page 1 sur 1 |
Auteur: | Samuel Devulder [ 09 Mai 2013, 22:52 ] |
Sujet du message: | Switch de bank "portable" |
A ma connaissance il existe deux façon de switcher les banks mémoire sur TO. L'une hérité des TO7/70 qui passe par le PIA 6821 (page 44 du manuel technique TO8/TO9/TO9+) et une autre propre aux TO8 et TO9+ qui passe par le gate-array "mode page" (B3..B0 de $E7DC). Je crois que la première ne marche pas directement sur les TO8 car il faut activer l'émulation "TO7" (je ne sais d'ailleurs pas trop comment l'on fait. B4=1 en $E7DC suffit?). Ceci fait qu'avoir un code compatible tout TO utilisant la commutation mémoire n'est pas simple à gérer. Y aurait il un point d'entrée standard dans la ROM faisant ce switch de la bonne façon pour le type de machine auquel il appartient? Certes, tous les basic 2 ont l'instruction "BANK", donc je suppose que le code que je recherche est présent quelque part dans leur ROM, mais reste à déterminer le point d'entrée (Quel valeur de U pour COMS en $EC03?), ainsi que l'état de $6000-$6300 à avoir pour que ca fonctionne tout seul. Cependant dans l'idéal je recherche plutôt un truc simple planqué dans le moniteur et connu de très peu de gens qui existerait aussi sur TO7. Un peu comme le "minidos". |
Auteur: | Prehisto [ 12 Mai 2013, 07:08 ] |
Sujet du message: | Re: Switch de bank "portable" |
Samuel Devulder a écrit: Je crois que la première ne marche pas directement sur les TO8 car il faut activer l'émulation "TO7" (je ne sais d'ailleurs pas trop comment l'on fait. B4=1 en $E7DC suffit?).
Il faut faire: Code: LDB $6081 Lit image de $E7E7
PSHS B Protège en pile ANDB #$EF Bit d'accès RAM direct à 0 STB $6081 Met à jour l'image de $E7E7 STB $E7E7 Met à jour $E7E7 ... <Utilisation du switch de banque TO7> PULS B Dépile valeur originelle STB $6081 Restaure image de $E7E7 STB $E7E7 Restaure $E7E7 SWI |
Page 1 sur 1 | Heures au format UTC + 1 heure |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |