CPC Rulez https://cpcrulez.fr/forum/ |
|
Sequence de boot du CPC ? https://cpcrulez.fr/forum/viewtopic.php?f=5&t=6008 |
Page 1 sur 1 |
Auteur : | gotcha [ 21 Oct 2017, 14:05 ] |
Sujet du message : | Sequence de boot du CPC ? |
Hello, Est-ce que quelqu'un a la séquence de boot du CPC désassemblée ? Au moins jusqu'à l'initialisation du CRTC incluse (ce qui doit arriver assez vite) ? Je suis toujours en train de debugger mon 6128 CRTC1 defecteux. Pas de HSYNC, VSYNC en sortie du CRTC, alors que les clocks et alim sont bonnes. Ça veut dire pour moi 2 choses: - Soit le CRTC est mort - Soit le CRTC a été mal programmé Du coup, je délaisse un peu l'oscilloscope pour l'analyseur logique et je regarde les signaux de lecture/écriture des registres du CRTC: E, RS, CS, RW, et bus de données. J'aimerais comprendre si ce que j'observe sur les fils correspond bien à ce que le boot est sensé faire. Merci ! |
Auteur : | Gerald [ 21 Oct 2017, 14:55 ] |
Sujet du message : | Re: Sequence de boot du CPC ? |
gotcha a écrit : Hello, Est-ce que quelqu'un a la séquence de boot du CPC désassemblée ? Au moins jusqu'à l'initialisation du CRTC incluse (ce qui doit arriver assez vite) ? Je suis toujours en train de debugger mon 6128 CRTC1 defecteux. Pas de HSYNC, VSYNC en sortie du CRTC, alors que les clocks et alim sont bonnes. Ça veut dire pour moi 2 choses: - Soit le CRTC est mort - Soit le CRTC a été mal programmé Du coup, je délaisse un peu l'oscilloscope pour l'analyseur logique et je regarde les signaux de lecture/écriture des registres du CRTC: E, RS, CS, RW, et bus de données. J'aimerais comprendre si ce que j'observe sur les fils correspond bien à ce que le boot est sensé faire. Merci ! Une version ici : http://cpctech.cpc-live.com/docs/os.asm De facon generale, le CRTC est programmé des le démarrage, bien avant d'utiliser la RAM. Si tu n'as pas un signal en sortie du CPC (le minimum est un border noir avec un fond d’écran gris) les coupables sont soit : - le Z80 - la ROM systeme - le CRTC - le gate array (+ oscillateur ) Si tu veux vérifier la séquence de boot, regardes donc addr / data / rdn / wrn / mreqn / iorqn du Z80 |
Auteur : | hERMOL [ 21 Oct 2017, 16:38 ] |
Sujet du message : | Re: Sequence de boot du CPC ? |
La même chose en provenance de grimware ... |
Auteur : | gotcha [ 21 Oct 2017, 20:00 ] |
Sujet du message : | Re: Sequence de boot du CPC ? |
Merci !! J'ai pu trouver le code d'initialisation du CRTC par le Z80. J'ai aussi réussi à trouver cette séquence au niveau des entrées du CRTC avec l'analyseur logique. Comme l'analyseur n'a que 8 canaux, je n'ai regardé pour l'instant que les 4 bits de poids faible sur l'entrée data du CRTC et ça me semble cohérent avec le code du Z80. Je vais maintenant regarder plus en détail et aussi regarder les bits de poids fort, mais le CRTC semble bien recevoir les commandes d'initialisation. J'ai donc de plus en plus l'impression que c'est le CRTC qui pose problème. S'il est bien programmé, mais qu'il ne sort pas les signaux de synchro, c'est lui qui doit être le fautif. Code : ;; initialise display ;; starting with register 15, then down to 0 05b4 010fbc ld bc,$bc0f 05b7 ed49 out (c),c ; select CRTC register 05b9 2b dec hl 05ba 7e ld a,(hl) ; get data from table 05bb 04 inc b 05bc ed79 out (c),a ; write data to selected CRTC register 05be 05 dec b 05bf 0d dec c 05c0 f2b705 jp p,$05b7 ;; continue with setup... 05c3 1820 jr $05e5 ; (+$20) ;; CRTC data for 50Hz display 05c5 defb &3f, &28, &2e, &8e, &26, &00, &19, &1e, &00, &07, &00,&00,&30,&00,&c0,&00 Pièce jointe : DSC05817_DxO.jpg Pièce jointe : 6128_CRT_prog_full.png Pièce jointe : 6128_CRT_prog_end.png
|
Auteur : | gotcha [ 22 Oct 2017, 10:02 ] |
Sujet du message : | Re: Sequence de boot du CPC ? |
OK, j'ai vérifié et j'ai bien les bonnes data données au CRTC sur ses entrées. Code : ;; CRTC data for 50Hz display 05c5 defb &3f, &28, &2e, &8e, &26, &00, &19, &1e, &00, &07, &00,&00,&30,&00,&c0,&00 Prochaine étape donc: changement du CRTC sur la carte |
Auteur : | Fredouille [ 22 Oct 2017, 10:08 ] |
Sujet du message : | Re: Sequence de boot du CPC ? |
Est-ce normal que le CS/ soit toujours actif ? |
Auteur : | Gerald [ 22 Oct 2017, 11:09 ] |
Sujet du message : | Re: Sequence de boot du CPC ? |
Fredouille a écrit : Est-ce normal que le CS/ soit toujours actif ? CS/ = A14. Donc normal, le code est en ROM avec une adresse > 0x4000. Ce qui est important c'est la combinaison CS/ low et E high |
Page 1 sur 1 | Le fuseau horaire est UTC+1 heure |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |