La Place des Développeurs Les ROM Mapper les mieux supportés
aoineko
Membre non connecté
Conseiller Municipal
Reprise du message précédent
C'est bon, ça marche !
J'ai fait une ROM avec un Mapper ASCII-8 de 128K avec :
- Les 4 premiers segments qui fonctionnent comme une cartouche 32K.
- Et les 12 autres segments (une cartouche de 128K = 16 segments de 8K) ou on peut ajouter des données en C en nommant juste son fichier source comme il faut.
Dans l'exemple, j'ai créer 2 fichiers, un pour le segment #5 et un pour le #10.
Le programme de sample switch chacun des segments dans la bank #3 (A000h~BFFFh) et lis les premiers octets.
J'ai mis une chaine de caractère dans chaque segment pour que ce soit plus facile de visualiser que le switch a fonctionné.
J'ai pas de machines sous la main mais j'ai testé sur tous les émulateurs (OpenMSX, BlueMSX, fMSX, Meisei, Emulicious et même ruMSX) et tout fonctionne bien.
Voici le fichier s_ascii8.rom si quelqu'un peut tester sur une MegaFlashROM à l'occaz.
Bon réveillons !
On est toujours ignorant avant de savoir.
aoineko
Membre non connecté
Conseiller Municipal
ericb59 :
Pile mail avant le réveillon
C'était mon cadeau de Noël.
Aujourd'hui j'ai trouvé un peu de temps pour pour ajouter le support des Mapper Konami et Konami SCC.
Il suffit de changer un paramètre dans un fichier de config pour passer d'un Mapper à l'autre.
Il me reste à ajouter le Mapper ASCII-16 et à gérer les différentes tailles de ROM.
Pour le moment, elles font toutes 128K.
Par contre, quel dommage qu'aucun Mapper ne s'étende jusqu'à la page 0 !
Sans ça, je ne peux plus substituer le code d'interruption du BIOS par mon propre code.
Mais bon, ça donne accès à tellement plus de place sur la ROM qu'on va pas se plaindre.
Pour rester dans le sujet de ce fil de discussion, est-ce que vous savez si d'autres mappers sont utilisables sur les émulateurs, les MegaFlashROM et/ou les cartouches fabriquées par la communauté MSX ?
Je me pose notamment la question sur les cartouches qui inclues de la SRAM.
On est toujours ignorant avant de savoir.
ericb59
Membre non connecté
Conseiller Municipal
Citation :
es cartouches fabriquées par la communauté MSX
Les cartouches megarom Homebrew sont toutes en ASCII 8/16 ou Konami. Parfois avec une SRAM.
Il n'y a pas de mappers exotiques utilisés (à ma connaissance)
pour ceux qui ne connaissent pas voici la data base des cartouches MEGAROM MSX avec leur mapper et si il y a une SRAM
https://gigamix.hatenablog.com/entry/rom/
il y a un fichier excel a télécharger
la SRAM est mappée avec une puce 74LS138 qui décode une page et est sauvegardée par une pile
les megaroms homebrew ont parfois des romflash a l'intérieur
voir ici : http://msxvillage.fr/forum/topic.php?id=950#m17323
https://gigamix.hatenablog.com/entry/rom/
il y a un fichier excel a télécharger
la SRAM est mappée avec une puce 74LS138 qui décode une page et est sauvegardée par une pile
les megaroms homebrew ont parfois des romflash a l'intérieur
voir ici : http://msxvillage.fr/forum/topic.php?id=950#m17323
aoineko
Membre non connecté
Conseiller Municipal
Les deux types de Mapper existant qui m'intéressent (en plus de ceux de base) :
- ASCII 8KB avec SRAM (format Xanadu ou Wizardry ?)
- Mapper 16KB pour ROM 64KB (format Cross Blaim, Harry Fox ou Super Altered Beast)
Et un Mapper qui ne semble pas exister mais qui rendrait la programmation C vraiment facile, ça serait une ROM 48KB avec un Mapper 8K (6 segments).
Ca permettrait de build notre programme C en 1 fois tout en pouvant profiter facilement des 2x8KB supplémentaires.
Oui, j'avais vu, mais au-delà des mappers ayant existés, je me demandais ceux qui étaient compatibles avec les émulateurs, ceux qu'on peut utiliser avec les MegaFlashROM et ceux qu'on peut utiliser pour créer des jeux sur un support physique.
- ASCII 8KB avec SRAM (format Xanadu ou Wizardry ?)
- Mapper 16KB pour ROM 64KB (format Cross Blaim, Harry Fox ou Super Altered Beast)
Et un Mapper qui ne semble pas exister mais qui rendrait la programmation C vraiment facile, ça serait une ROM 48KB avec un Mapper 8K (6 segments).
Ca permettrait de build notre programme C en 1 fois tout en pouvant profiter facilement des 2x8KB supplémentaires.
JIPEMSX :
pour ceux qui ne connaissent pas voici la data base des cartouches MEGAROM MSX avec leur mapper et si il y a une SRAM
Oui, j'avais vu, mais au-delà des mappers ayant existés, je me demandais ceux qui étaient compatibles avec les émulateurs, ceux qu'on peut utiliser avec les MegaFlashROM et ceux qu'on peut utiliser pour créer des jeux sur un support physique.
On est toujours ignorant avant de savoir.
aoineko
Membre non connecté
Conseiller Municipal
Voici les infos que j'ai trouvé sur les mappers supportés par les différentes cartes FlashROM :
Si vous avez plus d'infos, je suis preneur.
Carte | Mappers | Size |
---|---|---|
MegaFlashROM 512 | ASCII8, ASCII16 | 512KB FlashROM |
MegaFlashROM SRAM | ASCII8, ASCII16 | 512KB FlashROM, 2 or 8KB SRAM |
MegaFlashROM SCC | Konami SCC | 512KB FlashROM |
MegaFlashROM 1024 (experimental) | ASCII8, ASCII16 | 1MB FlashROM |
MegaFlashROM 1024 (gen 2) | ASCII8 | 1MB FlashROM |
MegaFlashROM SCC+ | 1MB FlashROM | |
MegaFlashROM SCC+ SD | ASCII8, ASCII16, Konami, Konami SCC, plain 48K/64K | 8MB FlashROM, 512KB RAM |
Carnivore2 | ASCII8, ASCII16, Konami, Konami SCC, plain <=64K, custom-configurable mapper | 8MB FlashROM, 1MB RAM |
Gr8net | ASCII8, ASCII16, Konami, Konami SCC, plain 32K | 2/16MB FlashROM, 1MB RAM |
Si vous avez plus d'infos, je suis preneur.
On est toujours ignorant avant de savoir.
ericb59
Membre non connecté
Conseiller Municipal
Citation :
Voici les infos que j'ai trouvé sur les mappers supportés par les différentes cartes FlashROM
Pour info j'ai des cartes pour faire de l'ASCII8 jusque 1024 Ko et ASCII16 jusque 4096 Ko
ericb59
Membre non connecté
Conseiller Municipal
aoineko :
C'est le format des cartouches que tu peux fabriquer ?
Oui, aussi du mapper Konami jusque 512Ko, et les ROMS "classiques" jusque 64K
aoineko
Membre non connecté
Conseiller Municipal
J'ai vu qu'il existe des cartouches 8K sorties dans les années 80.
Vu qu'elles prennent toute une page de 16K, elles n'ont aucun intérêt pour les programmeurs.
Du coup, j'imagine que c'était une question de coût ?
Vous confirmez ?
Y a une raison particulière pour laquelle tu ne supportes par tous les mappers à la même taille ?
Les ROMs peuvent être placé dans n'importe quelle page ? (0000h, 4000h, 8000h et C000h)
Vu qu'elles prennent toute une page de 16K, elles n'ont aucun intérêt pour les programmeurs.
Du coup, j'imagine que c'était une question de coût ?
Vous confirmez ?
ericb59 :
Oui, aussi du mapper Konami jusque 512Ko...
Y a une raison particulière pour laquelle tu ne supportes par tous les mappers à la même taille ?
ericb59 :
..., et les ROMS "classiques" jusque 64K
Les ROMs peuvent être placé dans n'importe quelle page ? (0000h, 4000h, 8000h et C000h)
On est toujours ignorant avant de savoir.
ericb59
Membre non connecté
Conseiller Municipal
Citation :
Y a une raison particulière pour laquelle tu ne supportes par tous les mappers à la même taille ?
Mes cartouches supportent jusqu'à la taille maximal du mapper en question. Donc c'est la limite matériel on va dire.
Code TEXT :
Les ROMs peuvent être placé dans n'importe quelle page ?
Je ne vois pas bien ce que tu veux dire. Une ROM utilisera la page pour laquelle elle est programmée pour.
Démarrage en 0x4000 ou éventuellement en 0x8000.
Je n'ai qu'une seule ROM de 64K plain. C'est URIDIUM, ne me demande surtout pas comment ca marche... J'en ai strictement aucune idée !
tous les cartouches en mapper 8K peuvent être en théorie étendues à 2048K
celles en 16K à 4096K
c'est le nombre maximum de pages physiques commutées par les 2 registres 74LS670
dans les cartouches d'origine la seule limitation vient du CHIP employé pour le mapper
mapper ASCII 8k chip LZ93A13 1024k ou chip M60002 2048k
mapper ASCII 16k chip LZ93A13 2048k ou chip M60002 4096k
les mapper Konami et SCC sont prévus pour 512K
le démarrage des roms dont parle eric dépend du signal employé pour le chip select
/CS1 16k en 4000h page 1
/CS2 16k en 8000h page 2
/CS12 32k en 4000h page 1 et 2
si on utilise juste le signal slot select on peut adresser une rom en 0000h
la rom interne du bios utilise le slot select et un signal /CS01 qui combine le décodage page 0 et page 1
celles en 16K à 4096K
c'est le nombre maximum de pages physiques commutées par les 2 registres 74LS670
dans les cartouches d'origine la seule limitation vient du CHIP employé pour le mapper
mapper ASCII 8k chip LZ93A13 1024k ou chip M60002 2048k
mapper ASCII 16k chip LZ93A13 2048k ou chip M60002 4096k
les mapper Konami et SCC sont prévus pour 512K
le démarrage des roms dont parle eric dépend du signal employé pour le chip select
/CS1 16k en 4000h page 1
/CS2 16k en 8000h page 2
/CS12 32k en 4000h page 1 et 2
si on utilise juste le signal slot select on peut adresser une rom en 0000h
la rom interne du bios utilise le slot select et un signal /CS01 qui combine le décodage page 0 et page 1
aoineko
Membre non connecté
Conseiller Municipal
ericb59 :
Mes cartouches supportent jusqu'à la taille maximal du mapper en question. Donc c'est la limite matériel on va dire.
OK. Comme tu m'avais dit ASCII8 jusque 1024K et Konami jusqu'à 512K -- alors que la limite est censé être 2048K (si j'ai bien compris) -- tu m'avais mis le doute.
ericb59 :
Démarrage en 0x4000 ou éventuellement en 0x8000.
C'est ce que je voulais savoir.
JIPEMSX :
si on utilise juste le signal slot select on peut adresser une rom en 0000h
Ce n'est pas applicable par une cartouche de jeu, non ?
On m'a toujours dis qu'une cartouche ne pouvait être lancé que depuis les pages 1 ou 2.
Hum... à moins que tu parles juste de lire une ROM dans la page 0 (comme dans le cas des cartouches 48 et 64K) ?
On est toujours ignorant avant de savoir.
aoineko
Membre non connecté
Conseiller Municipal
J'ai commencé à lister les formats de mapper supporté par les émulateurs et par les fabricants : https://docs.google.com/spreadsheets/d/1UY1lyyDXUTAGm5h7V_jh1VQb4UJXEKhmLC0lqI0ds1s/edit?usp=sharing
J'aimerai bien aussi connaitre la compatibilité des différentes cartes Flash en circulation dans la communauté MSX.
J'aimerai bien aussi connaitre la compatibilité des différentes cartes Flash en circulation dans la communauté MSX.
On est toujours ignorant avant de savoir.
pour la cartouche qui démarre en 0000h il faut que je teste en vrai car il y a plusieurs ROMS Konami de 8k qui l'utilisent
CRAZY TRAIN 41 42 60 01 00 00 00 00 00 00 00 00 00 00 00 00
JUNO FIRST 41 42 0D 03 00 00 00 00 00 00 00 00 00 00 00 00
SPARKIE 41 42 CF 00 00 00 00 00 00 00 00 00 00 00 00 00
CRAZY TRAIN 41 42 60 01 00 00 00 00 00 00 00 00 00 00 00 00
JUNO FIRST 41 42 0D 03 00 00 00 00 00 00 00 00 00 00 00 00
SPARKIE 41 42 CF 00 00 00 00 00 00 00 00 00 00 00 00 00
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie