[TO8] CPU et Fréquence

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
hlide
Messages : 3507
Inscription : 29 nov. 2017 10:23

Re: [TO8] CPU et Fréquence

Message par hlide »

__sam__ a écrit : 15 oct. 2023 20:55 En particulier la gestion des registres d'E/S: https://sourceforge.net/p/teoemulator/c ... hardware.c
On verra si le "juste" était un peu juste.

Ceci dit, dans l'ensemble ça me semble logique - à part ce truc qui me laisse perplexe :

Code : Tout sélectionner

        case 0xE7C9:
            mc6821_WriteData(&pia_int.portb, val);

            /* écriture sur le port donnée de l'imprimante */
            printer_WriteData(0x01, mc6821_ReadPort(&pia_int.portb));

            /* écriture sur le STROBE de l'imprimante */
            printer_SetStrobe(mc6821_ReadPort(&pia_int.portb)&0x02);

            switch (mc6821_ReadPort(&pia_int.portb)&0xF8)
            {
                case 0xF0:  /* DDRB 0x0F */
                    mempager.data.pia_page=2;
                    break;

                case 0xE8:  /* DDRB 0x17 */
                    mempager.data.pia_page=3;
                    break;

                case 0x18:  /* DDRB 0xE7 */
                    mempager.data.pia_page=4;
                    break;

                case 0x58:  /* DDRB 0xA7 */
                    mempager.data.pia_page=5;
                    break;

                case 0x98:  /* DDRB 0x67 */
                    mempager.data.pia_page=6;
                    break;

                case 0xD8:  /* DDRB 0x27 */
                    mempager.data.pia_page=7;
                    break;

Je trouve ça perturbant de modifier la page de PIA après l'envoi d'un octet sur un port parallèle. Je suppose qu'il faut je regarde l'explication dans le manuel.
__sam__
Messages : 7989
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: [TO8] CPU et Fréquence

Message par __sam__ »

Je crois que c'est le mode de changement de page compatible TO7/TO9. Cela se passe par la direction du port B, pas la valeur du port B lui-même:
Capture.PNG
Capture.PNG (152.89 Kio) Consulté 259 fois
Capture.PNG
Capture.PNG (67.63 Kio) Consulté 259 fois
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Répondre