Conversion cassettes MO5 en disquettes et fichiers .sd
Modérateurs : Papy.G, fneck, Carl
Conversion cassettes MO5 en disquettes et fichiers .sd
La plupart des jeux MO5 sur cassette n'existent pas en version disquette.
Il est intéressant de les convertir, pour deux raisons :
- La cassette est peu fiable et très longue à charger
- La version disquette peut aussi être utilisée sur carte SD avec SDDRIVE.
Pour la plupart des jeux la conversion est relativement facile. Pour d'autres ce n'est pas le cas, en particulier quand le jeu occupe toute la mémoire et ne laisse pas assez de place pour le DOS. Par exemple l'Aigle d'Or, jeu mythique pour les thomsonistes.
J'ai donc commencé par ce jeu. Mes tentatives précédentes étaient restées infructueuses, mais cette fois j'ai pris le temps nécessaire pour reconstituer les sources, les recompiler, les translater et créer un chargeur spécial pour mettre le jeu en mémoire en écrasant le DOS. C'est un peu compliqué, mais le résultat en vaut la peine.
Les versions l-aigle-d-or_mo5.fd et l-aigle-d-or_mo5.sd sont disponibles sur le site http://dcmoto.free.fr
Il est intéressant de les convertir, pour deux raisons :
- La cassette est peu fiable et très longue à charger
- La version disquette peut aussi être utilisée sur carte SD avec SDDRIVE.
Pour la plupart des jeux la conversion est relativement facile. Pour d'autres ce n'est pas le cas, en particulier quand le jeu occupe toute la mémoire et ne laisse pas assez de place pour le DOS. Par exemple l'Aigle d'Or, jeu mythique pour les thomsonistes.
J'ai donc commencé par ce jeu. Mes tentatives précédentes étaient restées infructueuses, mais cette fois j'ai pris le temps nécessaire pour reconstituer les sources, les recompiler, les translater et créer un chargeur spécial pour mettre le jeu en mémoire en écrasant le DOS. C'est un peu compliqué, mais le résultat en vaut la peine.
Les versions l-aigle-d-or_mo5.fd et l-aigle-d-or_mo5.sd sont disponibles sur le site http://dcmoto.free.fr
Dernière modification par Daniel le 01 févr. 2023 14:17, modifié 1 fois.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Bravo Daniel !!!
MO5 - MO5 Platini - TO7 - TO7/70 - TO8 - TO9+
-
- Messages : 7989
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Tu utilises le minidos de la rom du contrôleur disk, ou est-ce que tu charges le jeu directement depuis les secteurs disk en mémoire sans passer par un système de fichiers ?
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
J'ai préféré lire séquentiellement les secteurs physiques de la disquette, c'est plus facile à programmer et plus rapide à l'exécution. Ce n'est pas forcément la méthode la plus transparente, mais en étudiant les jeux commerciaux sur disquette j'ai vu que beaucoup utilisent cette technique. Les démos de PULS le font aussi, je crois.
Pour le débutant c'est surprenant, car quand il fait un DIR il ne voit pas le programme.
Pour le débutant c'est surprenant, car quand il fait un DIR il ne voit pas le programme.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
-
- Messages : 7989
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Lire les secteurs est effectivement le truc le plus simple par rapport au système de fichiers.
Tant que les secteurs correspondants sont marquées comme occupés dans la FAT, alors c'est bon il n'y aura aucun risque d'écrasement si on ajoute un fichier sur la diskette.
Tant que les secteurs correspondants sont marquées comme occupés dans la FAT, alors c'est bon il n'y aura aucun risque d'écrasement si on ajoute un fichier sur la diskette.
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Conversion en disquette et carte SD de la cassette Crystann pour MO5.
Même difficulté que pour l'Aigle d'Or, et même solution : chargement du jeu avec écrasement du DOS à partir de secteurs physiques de la disquette, puis restauration des registres.
http://dcmoto.free.fr/programmes/crystann/index.html
Même difficulté que pour l'Aigle d'Or, et même solution : chargement du jeu avec écrasement du DOS à partir de secteurs physiques de la disquette, puis restauration des registres.
http://dcmoto.free.fr/programmes/crystann/index.html
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
- Carl
- Modérateur
- Messages : 13301
- Inscription : 08 avr. 2007 13:21
- Localisation : http://www.doledujura.fr
- Contact :
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Beau boulot Daniel !
Carl
Carl
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Conversion en disquette et carte SD de la cassette Flipper pour MO5.
Conversion différente des précédentes : le programme ECHO.BIN de la cassette contient un "MINIDOS" permettant de charger des programmes sur disquette. C'est assez incroyable, car le catalogue officiel Thomson ne mentionne pas de version disquette, mais uniquement cassette MO5, TO7/70 et MO6.
J'ai seulement écrit un secteur de boot pour charger ECHO.BIN à partir de secteurs physiques, et ensuite ECHO.BIN charge lui-même les autres fichiers. Sauf qu'il est prévu pour des disquettes simple densité (secteurs de 128 octets), il a été nécessaire de modifier quelques instructions pour fonctionner en double densité. Vous pouvez juger vous-même du résultat. Sur MO5 (disquette ou carte SD) ou sur émulateur, le programme se lance par la commande "DOS".
http://dcmoto.free.fr/programmes/flipper/index.html
Conversion différente des précédentes : le programme ECHO.BIN de la cassette contient un "MINIDOS" permettant de charger des programmes sur disquette. C'est assez incroyable, car le catalogue officiel Thomson ne mentionne pas de version disquette, mais uniquement cassette MO5, TO7/70 et MO6.
J'ai seulement écrit un secteur de boot pour charger ECHO.BIN à partir de secteurs physiques, et ensuite ECHO.BIN charge lui-même les autres fichiers. Sauf qu'il est prévu pour des disquettes simple densité (secteurs de 128 octets), il a été nécessaire de modifier quelques instructions pour fonctionner en double densité. Vous pouvez juger vous-même du résultat. Sur MO5 (disquette ou carte SD) ou sur émulateur, le programme se lance par la commande "DOS".
http://dcmoto.free.fr/programmes/flipper/index.html
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Conversion en disquette et carte SD de la cassette Sorcery pour MO5.
La partie présentation est classique : programme de chargement et d'affichage d'une image compressée. J'utilise le même fichier binaire que la version cassette, lancé par l'AUTO.BAT, avec juste une petite modification pour permettre le retour au Basic.
Le jeu lui-même est en $2140-$5A8C avec des données en $6E30-$9FFF. Ces données sont chargées par l'AUTO.BAT. Pour le jeu j'ai utilisé la même technique que pour les précédents : fichier binaire dans les secteurs physiques de la disquette, avec un programme de chargement qui écrase les vecteurs du Basic et le DOS, puis lance l'exécution.
http://dcmoto.free.fr/programmes/sorcery/index.html
La partie présentation est classique : programme de chargement et d'affichage d'une image compressée. J'utilise le même fichier binaire que la version cassette, lancé par l'AUTO.BAT, avec juste une petite modification pour permettre le retour au Basic.
Le jeu lui-même est en $2140-$5A8C avec des données en $6E30-$9FFF. Ces données sont chargées par l'AUTO.BAT. Pour le jeu j'ai utilisé la même technique que pour les précédents : fichier binaire dans les secteurs physiques de la disquette, avec un programme de chargement qui écrase les vecteurs du Basic et le DOS, puis lance l'exécution.
http://dcmoto.free.fr/programmes/sorcery/index.html
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Conversion en disquette et carte SD de la cassette Androïdes pour MO5.
Encore un jeu qui écrase le Basic (pas seulement le DOS). Il utilise des zones de travail dans les vecteurs de travail du Basic en $2100. C'est classique chez Infogrames. Comme il n'occupe pas toute la mémoire du MO5, j'ai pu le charger par simple LOADM à une adresse plus haute. Ensuite un programme en langage machine le copie à sa place en $2D79 et le lance en $49A9.
http://dcmoto.free.fr/programmes/androides/index.html
Encore un jeu qui écrase le Basic (pas seulement le DOS). Il utilise des zones de travail dans les vecteurs de travail du Basic en $2100. C'est classique chez Infogrames. Comme il n'occupe pas toute la mémoire du MO5, j'ai pu le charger par simple LOADM à une adresse plus haute. Ensuite un programme en langage machine le copie à sa place en $2D79 et le lance en $49A9.
http://dcmoto.free.fr/programmes/androides/index.html
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
-
- Messages : 7989
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Pour TO, j'avais fait pareil avec ANDROID dont on peut trouver ici une version compressées par EXOMIZER2. Résultat: un fichier K7 de 6ko au lieu de 20-30ko Pour la zone mémoire libre, je ne m'étais pas compliqué la vie. Ces 6ko sont chargés directement dans la mémoire écran et décompressés dans la zone $6000-$DFFF en écrasant tout.
Bien évidemment, avec la carte SD la compression n'est plus nécessaire pour diminuer les temps de chargement, mais l'usage de la RAM écran pour le code et pour les buffers est un truc facilement exploitable si on ne tient pas à conserver l'image de chargement.
Bien évidemment, avec la carte SD la compression n'est plus nécessaire pour diminuer les temps de chargement, mais l'usage de la RAM écran pour le code et pour les buffers est un truc facilement exploitable si on ne tient pas à conserver l'image de chargement.
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Je crois que nous avons les mêmes méthodes, j'utilise aussi ce procédé "bestial" : chargement de toute la ram avec une sauvegarde de dcmoto. Le loader et la pile système sont en mémoire vidéo :
http://dcmoto.free.fr/programmes/sdloadm5/index.html
Dans mes conversions de cassettes MO5 sur disquette, j'essaye de faire mieux, pour respecter au maximum le programme original. En particulier je garde les écrans de présentation et les étapes du chargement. Par exemple, dans Androïdes, il y a l'écran de présentation avec l'ancien logo "Infogrames" et la mention "patience, le programme se charge", puis le chargement des décors annoncé pour durer 3 minutes (en réalité il dure 1/2 seconde), et enfin l'écran d'accueil. Même souci du respect de l'enchaînement pour Flipper, Sorcery, Crystann et l'Aigle d'Or. Le but est de retrouver les jeux à l'identique sur carte SD, sauf que le chargement dure 8 secondes contre 15 minutes avec la cassette.
http://dcmoto.free.fr/programmes/sdloadm5/index.html
Dans mes conversions de cassettes MO5 sur disquette, j'essaye de faire mieux, pour respecter au maximum le programme original. En particulier je garde les écrans de présentation et les étapes du chargement. Par exemple, dans Androïdes, il y a l'écran de présentation avec l'ancien logo "Infogrames" et la mention "patience, le programme se charge", puis le chargement des décors annoncé pour durer 3 minutes (en réalité il dure 1/2 seconde), et enfin l'écran d'accueil. Même souci du respect de l'enchaînement pour Flipper, Sorcery, Crystann et l'Aigle d'Or. Le but est de retrouver les jeux à l'identique sur carte SD, sauf que le chargement dure 8 secondes contre 15 minutes avec la cassette.
Code : Tout sélectionner
********************************
* CHARGEUR JEU ANDROIDES *
* Daniel Coulom - 04/03/2015 *
********************************
*
* Le chargeur affiche l'ecran
* d'accueil, copie la RAM de
* $5D79-$9F8C a $2D79-$6F8C
* et lance le jeu en $44A9.
********************************
* Affichage ecran attente
********************************
ORG $9E20
LDX #ECRAN
ECRAN1
LDB ,X+
SWI
FCB $02 initialisation ecran
CMPB #$04
BNE ECRAN1
LDY ,X++ $0292
LDD ,X++ $1604
LDB $A7C0
ANDB #$FE
STB $A7C0 selection video couleur
ECRAN2
LDB LOGO+3 compteur de colonnes $04
PSHS Y
ECRAN3
INC $A7C0 selection video forme
LDA ,X+
STA ,Y octet forme
DEC $A7C0 selection video couleur
LDA ,X+
STA ,Y+ octet couleur
DECB
BNE ECRAN3
PULS Y
LEAY $28,Y
DEC LOGO+2 compteur de lignes $16
BNE ECRAN2
RTS
********************************
DONNEES
********************************
ECRAN
FDB $1f20,$201f,$1214,$1b60
FDB $1b50,$1b47,$0c1f,$464f
FDB $1b47,$2049,$4e46,$4f47
FDB $5241,$4d45,$531f,$4950
FDB $1b47,$2070,$7265,$7365
FDB $6e74,$651f,$4f4f,$1b43
FDB $2020,$414e,$4452,$4f49
FDB $4445,$5320,$201f,$5644
FDB $1b43,$2070,$6174,$6965
FDB $6e63,$652c,$6a65,$2063
FDB $6861,$7267,$6520,$6c65
FDB $2070,$726f,$6772,$616d
FDB $6d65,$2021
FCB $04
LOGO
FDB $0292,$1604
FDB $0000,$3f50,$fc50,$0000
FDB $0750,$c057,$0357,$e050
FDB $f854,$0007,$0007,$1f51
FDB $8154,$8057,$0007,$0151
FDB $8254,$4057,$0007,$0151
FDB $8454,$4057,$0007,$0151
FDB $8454,$4657,$0007,$0151
FDB $8354,$8957,$0007,$0151
FDB $8054,$0457,$8e57,$0151
FDB $8754,$f457,$9257,$0151
FDB $8454,$1757,$2257,$0151
FDB $8454,$1057,$2457,$0151
FDB $8454,$7f57,$9c57,$0151
FDB $8454,$5057,$8057,$0151
FDB $8454,$5357,$fe57,$0151
FDB $8454,$5257,$8257,$0151
FDB $8454,$5257,$8257,$0151
FDB $8454,$5257,$8257,$0151
FDB $8454,$5257,$8257,$0151
FDB $fc54,$5257,$8257,$1f51
FDB $0340,$5257,$8357,$e050
FDB $0000,$7357,$8357,$0000
********************************
* Transfert de $5C00 a $2D79
********************************
ORG $9F80
LDX #$5C00
LDY #$2D79
MOVE
LDD ,X++
STD ,Y++
CMPX #$9E14
BNE MOVE
JMP $44A9
END
===========================
AUTO.BAT
===========================
10 CLEAR,&H5BFF
20 LOCATE0,0,0
30 LOADM"LOADER",,R
40 LOADM"ANDROIDE"
50 LOADM"DECORS"
60 EXEC&H9F80
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
-
- Messages : 7989
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Oui 8secs, et sans "?IO Error" au bout de 14mins de bruits incessants.
Chapeau pour l'esprit du respect de l'œuvre originale. Il faut beaucoup de temps et de patience.
Chapeau pour l'esprit du respect de l'œuvre originale. Il faut beaucoup de temps et de patience.
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
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
Sacrée boulot de conversion, et chapeau pour le respect de l’œuvre originale
C'est une bonne lesson d'humilité
Pour les jeux qui chargent des données au court du jeu ca risque de poser problème pour la conversion ?
C'est une bonne lesson d'humilité
Pour les jeux qui chargent des données au court du jeu ca risque de poser problème pour la conversion ?
Re: Conversion cassettes MO5 en disquettes et fichiers .sd
C'est ce qui fait la difficulté (et l'intérêt) de la conversion6502man a écrit :Pour les jeux qui chargent des données au court du jeu ca risque de poser problème pour la conversion ?
Conversion en disquette et carte SD de la cassette Super Tennis pour MO5.
Le programme de présentation en Basic est exécuté normalement avec le DOS. Il lance ensuite un chargeur spécial en mémoire vidéo, qui lit le jeu dans des secteurs physiques de la disquette et le charge en RAM en écrasant le DOS.
http://dcmoto.free.fr/programmes/super- ... index.html
Code : Tout sélectionner
********************************
* CHARGEUR JEU SUPER-TENNIS *
* Daniel Coulom - 06/03/2015 *
********************************
*
* Le chargeur initialise la
* RAM du MO5 de $4150 a $9FFF
* et lance le jeu en $5500.
* Le dump memoire est dans
* les secteurs physiques de
* la disquette a partir du
* secteur 1 de la piste 3.
*****************************
* Lecture memoire
* $4150-$9FFF
*****************************
ORG $1F40
PSHS CC empile registre CC
LDS #$1FFF pile systeme en memoire video
ORCC #$50 desactive interrruptions
LDA #$20 valeur pour DP
TFR A,DP initialise DP
LDA #$02 lecture secteur
STA <$48 code commande
LDX #$4150 adresse du buffer
LDD #$0300 piste et secteur
LECT
INCB secteur suivant
BSR LSECT lecture secteur
LEAX 256,X buffer suivant
CMPX #$A050 test de fin
BEQ REST chargement termine
CMPB #$10 test secteur 16
BNE LECT secteur suivant
INCA piste suivante
CLRB raz secteur
BRA LECT secteur suivant
*****************************
* Restauration registre CC
*****************************
REST
PULS CC
JMP $5500
*****************************
* Lecture secteur B piste A
* Adresse du buffer dans X
*****************************
LSECT
STX <$4F adresse du buffer
STD <$4B piste et secteur
JSR $A004 lecture secteur
RTS
END
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.