MSX Village forum

La Place des Développeurs Emulation d'une ROM

aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2907

Le 08/07/2021 à 09h50
Est-ce que vous savez comment les émulateurs décident le placement "physique" d'une ROM à partir d'un fichier binaire ?
Quand on créé une ROM pour un programme, on se retrouve avec un fichier binaire sans information sur l'endroit où elle est censé se trouver physiquement, ni sur l'endroit ou se trouve l'entête (on peut très bien faire une ROM de 32K censé commencer en 4000h et avec un entête en 8000h).
La seule solution que j'envisage serait que les émulateurs cherchent dans le fichier ROM l'entête à toutes les adresses multiples de 4000h ; et une fois trouvé, utilisent l'adresse de début de programme pour placer physiquement la ROM dans l'espace d'adressage du Z80.
Est-ce comme cela que ça fonctionne ?
Si c'est le cas, cela voudrait dire qu'une ROM avec un entête censé être en 4000h mais avec un début de programme au delà de 8000h ne fonctionnerait pas sur émulateur alors qu'elle pourrait fonctionner sur un support physique. :hum


On est toujours ignorant avant de savoir.
Github    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10731

Le 08/07/2021 à 11h14
as tu un exemple de rom avec un entête en 4000h qui démare en plus de 8000h ?

graphic master par exemple fait 32k de 4000h a BFFFh mais le header (entête) est 41 42 10 80 et se trouve en 8000h


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2907

Le 08/07/2021 à 18h04
J'ai pas d'exemple sous la main mais ça doit pas être trop compliquer à générer.


On est toujours ignorant avant de savoir.
Github    
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie