[ GOUPIL 3 ] debut émulation ROM

Couvre tous les domaines de l'émulation ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Papy.G, fneck, Carl

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

[ GOUPIL 3 ] debut émulation ROM

Message par 6502man » 29 mars 2018 23:26

J'ai commencé à émuler le moniteur du GOUPIL 3 (carte 6809) :D

J'ai mis en place le système de "pagination" de la RAM (translateur), l’émulation de l'ACIA clavier, le décodage de la VRAM, le décodage alambiqué de la ROM.

Le moniteur tourne mais je n'ai pas encore d'affichage.

Leduigou m'aide à comprendre le fonctionnement de ce G3, mais il y a encore du boulot ...

Je suis parti des sources de Dctavernier, Merci Daniel :D

C'est du C utilisant les API Windows standard.
Modifié en dernier par 6502man le 03 avr. 2018 11:28, modifié 4 fois.
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
yo_fr
Messages : 1319
Enregistré le : 13 août 2009 18:24
Localisation : 78...
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par yo_fr » 29 mars 2018 23:52

Super !
tu développes sur quel langage ?

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 30 mars 2018 11:41

En C, je viens de compléter le premier message du post :wink:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 30 mars 2018 11:52

La partie affichage s'initialise correctement maintenant, les registres du MC6845 sont bien renseigné et la ram vidéo rempli d'espace et d'attributs :D

Maintenant il me reste à étudier la partie qui correspond au boot :

Code : Tout sélectionner

                     ;*
                     ; * POINT D'ENTREE A FROID
                      ;* 
                      ;* INITIALISATION VARIABLES M.A.P. ET EDITION MESSAGE
						  
42A1 0F1A       CLR    /$1A                6
42A3 1CAF       ANDCC  #$AF                3
42A5 BD4C0C     JSR    $4C0C               8
42A8 CCF001     LDD    #$F001              3
42AB BD4D6E     JSR    $4D6E               8
42AE F61000     LDB    $1000               5
42B1 C1A5       CMPB   #$A5                2
42B3 260B       BNE    $42C0               3
42B5 C6F1       LDB    #$F1                2
42B7 FDECEA     STD    $ECEA               6
42BA 8EA001     LDX    #$A001              3
42BD 7E434A     JMP    $434A               4
42C0 CCF401     LDD    #$F401              3
42C3 BD4D6E     JSR    $4D6E               8
42C6 F61000     LDB    $1000               5
42C9 C1A5       CMPB   #$A5                2
42CB 2610       BNE    $42DD               3	==> saut vers affichage message boot
42CD C6F5       LDB    #$F5                2
42CF FDECE0     STD    $ECE0               6
42D2 C30202     ADDD   #$0202              4
42D5 FDECE2     STD    $ECE2               6
42D8 8E0001     LDX    #$0001              3
42DB 206D       BRA    $434A               3
42DD 8E4C18     LDX    #$4C18              3	==>  adresse du message de boot
42E0 3F40       SWI    #$40               19	==> swi avec fonction code $40
Le but c'est d'arriver à ce que le programme arrive en $42DD pour afficher le message du boot, car pour l'instant il n'y arrive jamais, il arrive bien en $42A1 ....

Je vais investiguer pour voir exactement ce qui ce passe dans cette partie ...
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 31 mars 2018 16:10

Bon il y a un truc qui coince car une fois arrivé en $42A5 il ne revient jamais en $42A8 et le processeur ce perd dans des instructions incohérentes puisque pointant la ou il n'y a aucun programme à exécuter :(

Il y a peut être un cas que je n'ai pas prévu ou la pagination ne ce fait pas correctement mais je ne voit pas pour l'instant ou :roll:

Ce que j'ai compris des docs :

Code : Tout sélectionner

E-0000  à  E-FFFF =  RAM 64Ko
F-4000  à  F-7FFF =  ROM 2
F-A000  à  F-DFFF =  ROM 1 ==> copie en F-F800-F-FFFF  (2ko haut de l'eeprom)
F-F000  à  F-F7FF =  zone des entrées sorties
F-FFF0  à  F-FFFF =  translateur d'adresse RAM
x-FF00  à  x-FFEF =  zone permanente de la ROM
Si quelqu'un vois ou j'ai mal interprété la doc, votre aide seras la bienvenue :)

Edit:

j'ai identifié l'endroit ou sa "déraille" :
Le saut en $5011 arrive sur de la RAM et plante

Code : Tout sélectionner

;500F 8602       LDA    #$02
;5011 AD9FEC80   JSR    [$EC80]
;5015 2011       BRA    $5028

mémoire en $EC40-$EC8F 
;EC40 5e ee 4f 8d 5e ee 00 00 00 00 51 a1 51 a6 52 57  ................
;EC50 52 5d 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
;EC60 51 b3 51 b3 52 0f 52 62 52 67 00 00 00 00 00 00  ................
;EC70 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
;EC80 65 a4 65 a4 65 9a 00 00 52 22 52 6c 52 71 00 00  ................

le translateur: FE 00 00 00 F4 F5 FA Fb 00 00 00 00 F8 F9 EF FF
Et je pense que le problème est que le translateur pointe vers le mauvais endroit $65A4 soit une fois translaté => FA5A4 donc il y a bien un truc que je n'ai pas compris ou mal émulé :?
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 01 avr. 2018 09:33

Ca y est j'ai l'affichage du boot du G3 :D :D

J'ai volontairement émulé le fond d'écran de la zone utile "bleuté" :wink:

Maintenant je vais m'attaqué à la gestion du clavier qui n'est pas encore totalement opérationnelle ...

A suivre.

DCPG3.jpg
DCPG3.jpg (39.37 Kio) Vu 338 fois
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
leduigou
Messages : 339
Enregistré le : 08 mai 2011 21:00
Localisation : Paris, 6ème

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par leduigou » 01 avr. 2018 10:24

Bravo, beau travail !
Félicitations :)
Cordialement
Frédéric

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 01 avr. 2018 11:27

L’émulation clavier fonctionne, on peut utiliser le moniteur du G3 :D

Il me reste à régler le défilement de l'affichage ...

DCPG3_2.jpg
DCPG3_2.jpg (84.63 Kio) Vu 324 fois
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
Totor le Butor
Messages : 1342
Enregistré le : 07 sept. 2011 16:14
Localisation : Paris

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par Totor le Butor » 01 avr. 2018 11:58

Wouahhhhhhhhhh !!!

Ca me laisse rêveur, trop fort :shock: .
Born to bricole
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 01 avr. 2018 12:03

Merci :oops:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 02 avr. 2018 10:33

Le défilement de l'affichage fonctionne ainsi que le mode page :D

Il me reste à régler les dimensions de la fenêtre d'affichage en 25 lignes de 80 colonnes ...
CDPG3.jpg
CDPG3.jpg (161.6 Kio) Vu 291 fois
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] émulation 6809 moniteur

Message par 6502man » 02 avr. 2018 20:47

L’émulateur fonctionne je suis entrain de peaufiner les fonctionnalités générales et je vous proposerais une version beta, si vous êtes sages :lol:
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
leduigou
Messages : 339
Enregistré le : 08 mai 2011 21:00
Localisation : Paris, 6ème

Re: [ GOUPIL 3 ] émulation mode 6809

Message par leduigou » 02 avr. 2018 23:36

Très beau travail, maintenant une disquette à booter :wink:
Cordialement
Frédéric

Avatar du membre
6502man
Messages : 8856
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [ GOUPIL 3 ] debut émulation ROM

Message par 6502man » 03 avr. 2018 17:01

L'émulation des disquettes c'est encore un nouveau domaine pour moi, mais pour ça il faut que j'ai des dumps (RAW) des disquettes et surtout que je connaisse leurs structures :roll:

Je ne garantie pas d'y arriver mais je peux essayer ...

Il existe quoi comme OS sur Goupil 3 hormis le Flex 3 ???
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
leduigou
Messages : 339
Enregistré le : 08 mai 2011 21:00
Localisation : Paris, 6ème

Re: [ GOUPIL 3 ] debut émulation ROM

Message par leduigou » 03 avr. 2018 21:55

Pour le 6809, je ne connaît que le FLEX.
Les disquettes sont standard et l’emulation du Tavernier sera réutilisable.
Une difficulté sera de mettre l’émulation du passage du trou d’index. Le G3 vérifie la rotation de la disquette comme cela.
J’ai aussi des images des disquettes du même format que pour le Tavernier. Je ne les ai pas testées mais leurs modifications est simple en cas de problème :wink:

Tu es en bonne voie ...
Cordialement
Frédéric

Répondre