désassemblage de jeux

Cette catégorie traite de développements récents pour nos vieilles machines, applications, jeux ou démos... Amis programmeurs, c'est ici que vous pourrez enfin devenir célèbres!

Modérateurs : Papy.G, fneck, Carl

Répondre
nouvelhermes
Messages : 46
Enregistré le : 22 juil. 2020 20:56

désassemblage de jeux

Message par nouvelhermes » 22 juil. 2020 21:01

Bonjour à tous,

J'aimerais parler de désassemblage de jeux sur MO5 écrits partiellement ou totalement en assembleur, et faire part de mes recherches.

Pour l'instant j'aimerais m'adresser aux modérateurs, est-ce qu'un tel sujet pose problème ?

En attendant la réponse, je voudrais préciser :

j'utilise principalement deux outils :
- l'émulateur DCMO5 version 6.7 (DOS32) de Daniel Coulom avec la cartouche assembleur (et son fabuleux moniteur)
- le désassembleur IDA (version 6.8)

Si c'est OK, je commencerai par décrire une routine d'affichage d'image que l'on retrouve dans tous les jeux Infogrames que j'ai pu tester jusqu'ici.

En fait, j'ai déjà posté ce message sur le forum logicielsmoto.com, il y a quelques jours, et je n'ai toujours pas reçu de réponse, il est probable que cela soit hors-sujet sur un forum Thomson. Toutes mes excuses par avance.

__sam__
Messages : 5403
Enregistré le : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: désassemblage de jeux

Message par __sam__ » 22 juil. 2020 21:15

Petit aparté: logicielsmoto est juste un peu "endormi". Les gens y passent tous les 36 du mois, ce qui fait qu'il n'y a pas souvent de réponse aux messages.
Samuel.
A500 Vampire V2+ ^8^, A1200(030@50mhz/fpu/64mb/cf 8go),
GVP530 (MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.

Markerror
Messages : 1623
Enregistré le : 31 oct. 2011 19:21
Localisation : Orléans
Contact :

Re: désassemblage de jeux

Message par Markerror » 23 juil. 2020 08:29

Bonjour,

Le sujet est intéressant, mais à mon avis, ce n'est pas sur un forum qu'il doit être traité, mais sur un site perso, ne serait-ce que pour une meilleure visibilité. Après, je ne vois pas trop en quoi décortiquer le code de vieux programmes pour mettre en lumière les astuces des auteurs (ou les bugs :-) ) poserait problème.

Avatar du membre
Gege34
Messages : 222
Enregistré le : 25 avr. 2015 22:35
Localisation : Toulouse

Re: désassemblage de jeux

Message par Gege34 » 23 juil. 2020 08:34

Très bonne idée, et effectivement plus sur un site perso ou blog pour que ça ne se perde pas.

jasz
Messages : 933
Enregistré le : 05 oct. 2016 20:05
Localisation : Quelque part dans le 31

Re: désassemblage de jeux

Message par jasz » 23 juil. 2020 09:02

nouvelhermes a écrit :
22 juil. 2020 21:01
Pour l'instant j'aimerais m'adresser aux modérateurs, est-ce qu'un tel sujet pose problème ?
Pas que je sache ;)

L'idée est intéressante si elle peut apporter un plus aux nombreux bidouilleurs qui débutent avec le LM du Thomson :)

Avatar du membre
fneck
Site Admin
Messages : 13804
Enregistré le : 01 avr. 2007 12:03
Localisation : Drôme Provençale (26)
Contact :

Re: désassemblage de jeux

Message par fneck » 23 juil. 2020 19:17

nouvelhermes a écrit :
22 juil. 2020 21:01
Pour l'instant j'aimerais m'adresser aux modérateurs, est-ce qu'un tel sujet pose problème ?
Pour ma part je ne vois pas de problème, pourquoi ?

Nota: j'ai juste déplacé le topic dans la catégorie adaptée.

Fool-DupleX
Messages : 1137
Enregistré le : 06 avr. 2009 12:07

Re: désassemblage de jeux

Message par Fool-DupleX » 24 août 2020 10:15

Il y a des années en arrière, prehisto et moi-même avons entièrement désassemblé Mandragore. J'espérais y trouver un easter egg mais il n'y en a pas. Par contre, il y a beaucoup de marge pour optimiser le code et la vitesse. On y trouve même des zones de variables non initialisées avec des résidus de code mort, autrement dit du temps de chargement inutile, alors même que le chargement sur cassette est interminable :D

Jacobert
Messages : 120
Enregistré le : 18 janv. 2018 23:30
Localisation : Paris

Re: désassemblage de jeux

Message par Jacobert » 25 août 2020 15:56

Gege34 a écrit :
23 juil. 2020 08:34
Très bonne idée, et effectivement plus sur un site perso ou blog pour que ça ne se perde pas.
Un site perso a plus de chance de disparaître rapidement qu'un forum.

Jacobert
Messages : 120
Enregistré le : 18 janv. 2018 23:30
Localisation : Paris

Re: désassemblage de jeux

Message par Jacobert » 25 août 2020 15:58

Fool-DupleX a écrit :
24 août 2020 10:15
...On y trouve même des zones de variables non initialisées avec des résidus de code mort, autrement dit du temps de chargement inutile, alors même que le chargement sur cassette est interminable :D
Ce code mort, ne proviendrait-il pas de conversion de code d'une machine à une autre?

Serait-il possible d'optimiser ce jeu et donc d'accroître sa vitesse?

Daniel
Messages : 12959
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: désassemblage de jeux

Message par Daniel » 25 août 2020 17:27

Réponse : non à la première question, oui à la deuxième.
Daniel
L'obstacle augmente mon ardeur.

Jacobert
Messages : 120
Enregistré le : 18 janv. 2018 23:30
Localisation : Paris

Re: désassemblage de jeux

Message par Jacobert » 25 août 2020 18:05

Qui se charge de l'optimiser? :)

nouvelhermes
Messages : 46
Enregistré le : 22 juil. 2020 20:56

Re: désassemblage de jeux

Message par nouvelhermes » 31 août 2020 06:16

En ce qui concerne Mandragore, il ne faut oublier qu'il s'agit à la base d'une conversion d'un jeu ayant été produit originellement sur C64 et que les conversions n'ont pas été pensées lorsque le jeu a été écrit, donc il y a pas mal de code émulant par exemple les "sprites" du C64, avec une efficacité relative.

Si le jeu a été désassemblé, serait-il possible de le publier quelque part ? Pour ne pas refaire un travail déjà fait.

Oméga Planète Invisible est une reprise du moteur de Mandragore corrigé de la plupart de ses bugs (et peut-être optimisé?)

Pour revenir à Mandragore, une partie du chargement de CREAT.BIN, avec un morceau de code source dedans.

Une autre façon d'optimiser serait de faire sauter toutes les protections contre la copie qui font perdre inutilement du temps.

Quelqu'un a-t-il déjà désassemblé "l'aigle d'or", parce que là c'est un foutoir sans nom, on comprend aisément pourquoi le jeu est si lent.

Daniel
Messages : 12959
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: désassemblage de jeux

Message par Daniel » 31 août 2020 08:31

Il ne faut pas confondre les programmes en assembleur et les programmes Basic. L'Aigle d'Or est écrit en Basic, il ne faut pas le désassembler, il faut lister le programme Basic. On voit qu'il appelle quelques rares routines en langage machine, celles-ci on peut les désassembler.
Daniel
L'obstacle augmente mon ardeur.

jasz
Messages : 933
Enregistré le : 05 oct. 2016 20:05
Localisation : Quelque part dans le 31

Re: désassemblage de jeux

Message par jasz » 31 août 2020 11:39

Le Temple de Quauhtli qui en est un clone mais en assembleur cette fois, est un poil plus rapide

Répondre