Index du forum




Un petit coup de main... Vous pouvez nous aider à mettre ce site à jour: n'hésitez pas à me contacter !!!

* Connexion   * Inscription

* FAQ
Nous sommes actuellement le 30 Nov 2025, 11:34

Index du forum » News - Actualités

Le fuseau horaire est UTC+1 heure


TOPIC DUMPS/JEUX PRESERVES AMSTRAD CPC DISK ET CASSETTE

Modérateur: poulette73



Publier un nouveau sujet Répondre au sujet  Page 63 sur 138
 [ 2068 message(s) ]  Aller vers la page Précédent  1 ... 60, 61, 62, 63, 64, 65, 66 ... 138  Suivant
  Aperçu avant impression Sujet précédent | Sujet suivant 
Auteur Message
Giants
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 20:11 
Hors-ligne
Rulezzz
Rulezzz

Inscription : 21 Août 2008, 16:03
Message(s) : 342
Tout a fait.
Mais ma remarque etait generique, pas en rapport avec le probleme en court.
Je pense qu'ils faut des personnes competentes sur cpc, et au vue des derniers posts ici, c'est le cas.
Je n'ai pas de doute aue vous allez trouver la raison et peu etre une solution.
Je suis ca en arriere plans :)


Haut
 Profil  
 
Lone
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 20:34 
Hors-ligne
Rulezzzz
Rulezzzz

Inscription : 25 Fév 2013, 13:56
Message(s) : 648
Localisation : Ardèche
Je ne vais pas discuter de ton outil, il parait très bien. Le dump parait aussi très bien.
Les émulateurs aussi (vu qu'ils émulent ce que fait un vrai 464, c'est à dire rien).

De deux choses l'une :
- Soit l'original marche sur un 464 a 128ko, et là, on a un problème de dump (vu qu'après dump, ça ne marche plus) avant même de parler émulation
- Soit l'original ne marche pas non plus, et donc tout est conforme (mon petit doigt me dit que l'on est dans ce cas là). Du coup, c'est sans doute un bug du jeu (à moins que ça ne soit voulu... ?)

L'autre point qui change, c'est tout de même ce fameux basic 1.1... Peut être un appel spécifique est-il fait dans le cas des 128ko détecté (je n'ai pas débuggé le jeu, ce sont des hypothèses) ?
Difficile à tester sur mon propre émulateur, vu que je n'émule pas le 464+, et que le basic 1.1+l'OS 464 donne un résultat... Inhabituel...


Haut
 Profil  
 
Longshot
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 20:35 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 28 Août 2008, 23:41
Message(s) : 270
Citer :
Sur 464 avec extension mémoire (XMEM) : KO, ecran noir

Quelle différence entre le 464-128k "Gerald" et le 464+-128k "dlfrsilver" vu que vous avez tous les deux une x-mem?
L'information importante, c'est que le chargement complémentaire a lieu après le loader.
Le message affiché pendant ce chargement est bien dans le code chargé. (2BA9 pour "LOADING LEVEL DATA")

Citer :
Pour la protection speedlock utilisée, bien entendu, je suis au courant qu'il y a une routine anti-multiface impossible à esquiver, un brouilleur de FDC pour empêcher le transfert des données sur disquette, quand au code modifié en plein chargement ça m'étonne pas non plus c'est typique :)

Il y a aussi le faux "RET Z" en mettant ED devant C8, et pour lequel l'émulateur Z80A ne se laisse pas "berner".


Haut
 Profil  
 
dlfrsilver
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 20:37 
Hors-ligne
Rulezzzzz
Rulezzzzz

Inscription : 29 Août 2007, 12:04
Message(s) : 2009
Localisation : seine et marne 77
Giants a écrit :
Tout a fait.
Mais ma remarque etait generique, pas en rapport avec le probleme en court.
Je pense qu'ils faut des personnes competentes sur cpc, et au vue des derniers posts ici, c'est le cas.
Je n'ai pas de doute aue vous allez trouver la raison et peu etre une solution.
Je suis ca en arriere plans :)


Oui je suis ravi que Longshot ainsi que Gerald aient participé, j'espère bien qu'ils pourront nous aider :)

_________________
SPS Community Expert (SPS CE) / SPS France


Haut
 Profil  
 
dlfrsilver
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 20:55 
Hors-ligne
Rulezzzzz
Rulezzzzz

Inscription : 29 Août 2007, 12:04
Message(s) : 2009
Localisation : seine et marne 77
Longshot a écrit :
Citer :
Sur 464 avec extension mémoire (XMEM) : KO, ecran noir

Quelle différence entre le 464-128k "Gerald" et le 464+-128k "dlfrsilver" vu que vous avez tous les deux une x-mem?
L'information importante, c'est que le chargement complémentaire a lieu après le loader.
Le message affiché pendant ce chargement est bien dans le code chargé. (2BA9 pour "LOADING LEVEL DATA")

Citer :
Pour la protection speedlock utilisée, bien entendu, je suis au courant qu'il y a une routine anti-multiface impossible à esquiver, un brouilleur de FDC pour empêcher le transfert des données sur disquette, quand au code modifié en plein chargement ça m'étonne pas non plus c'est typique :)

Il y a aussi le faux "RET Z" en mettant ED devant C8, et pour lequel l'émulateur Z80A ne se laisse pas "berner".


Tu peux nous en dire plus au sujet du RET Z ?

_________________
SPS Community Expert (SPS CE) / SPS France


Haut
 Profil  
 
Longshot
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 21:20 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 28 Août 2008, 23:41
Message(s) : 270
Citer :
Tu peux nous en dire plus au sujet du RET Z ?

Exemple d'un des décodeurs speedlock:

...
9A1C : LD A,R
9A1E : XOR E
9A1F : SUB(HL)
9A20 : DEC DE >>> Compteur de boucle
9A21 : LD (HL),A
9A22 : LD A,E >>> Début test DE
9A23 : INC HL
9A24 : OR D >>> Z=1 si DE=0
9A25 : RET Z ... mais codé comme ED CA
9A27 : NOP
9A28 : NOP
9A29 : JP NZ, boucle

Lorsqu'on arrive en 9A25 avec Z=1, le RET Z ne fonctionne pas à cause du préfixe ED.
Je pense que le désassembleur devrait éviter de le montrer comme un RET Z dans ce cas! :?


Haut
 Profil  
 
dlfrsilver
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 31 Jan 2016, 23:11 
Hors-ligne
Rulezzzzz
Rulezzzzz

Inscription : 29 Août 2007, 12:04
Message(s) : 2009
Localisation : seine et marne 77
Longshot a écrit :
Citer :
Tu peux nous en dire plus au sujet du RET Z ?

Exemple d'un des décodeurs speedlock:

...
9A1C : LD A,R
9A1E : XOR E
9A1F : SUB(HL)
9A20 : DEC DE >>> Compteur de boucle
9A21 : LD (HL),A
9A22 : LD A,E >>> Début test DE
9A23 : INC HL
9A24 : OR D >>> Z=1 si DE=0
9A25 : RET Z ... mais codé comme ED CA
9A27 : NOP
9A28 : NOP
9A29 : JP NZ, boucle

Lorsqu'on arrive en 9A25 avec Z=1, le RET Z ne fonctionne pas à cause du préfixe ED.
Je pense que le désassembleur devrait éviter de le montrer comme un RET Z dans ce cas! :?


en fait c'est voulu :) y a la même chose sur certaines protections de l'amiga héhéhé :)

_________________
SPS Community Expert (SPS CE) / SPS France


Haut
 Profil  
 
AsT
 Sujet du message : Re: Annonce et bonne nouvelle
Message Publié : 31 Jan 2016, 23:57 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 29 Août 2007, 08:04
Message(s) : 751
Localisation : Impact Hq
@Longshot : quelle difference exacte entre Ret z (ed ca) et Ret z (c8) ?
Je pensais que c'etait la meme instruction du z80... D'après ce que je lis, il y aurait une certaine différence.

_________________
AsT / iMP4CT

Retrouvez nous sur le forum Amstrad Plus
"Call &bb06"


Haut
 Profil  
 
Longshot
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 00:32 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 28 Août 2008, 23:41
Message(s) : 270
Ce que je disais pour ED C8, c'est que le désassembleur devrait indiquer que l'instruction est non conventionnelle.

Je confirme que c'est le programme principal qui charge le reste du jeu.
En &FE4E, on a un EI suivi d'un JP &240. L'interruption en attente ne peut pas intervenir avant l'exécution du JP.
Elle se produit donc en &240. Au retour le code en &240 teste la ram disponible (&2DF=1 si ram)
La fonction qui permet d'appeler une routine en ram supplémentaire est en &416 (HL=adresse d'exécution en ram)
La fonction qui permet de charger tous les levels en ram si la ram supplémentaire est détectée est en &237A
On a :
&0283 : LD HL,&6000 ; adresse en ram ext
&0286 : CALL &416 ; appel si ram présente
&0289 : CALL &237A ; charge tout si ram présente

Si on met un RET en &7FFF de la banque C4, tout fonctionne correctement.
Le CALL &416 revient sans bobo, et tout est chargé.
Reste à trouver ou l'octet maudit manque réellement et pourquoi.


Haut
 Profil  
 
dlfrsilver
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 00:44 
Hors-ligne
Rulezzzzz
Rulezzzzz

Inscription : 29 Août 2007, 12:04
Message(s) : 2009
Localisation : seine et marne 77
Longshot a écrit :
Ce que je disais pour ED C8, c'est que le désassembleur devrait indiquer que l'instruction est non conventionnelle.

Je confirme que c'est le programme principal qui charge le reste du jeu.
En &FE4E, on a un EI suivi d'un JP &240. L'interruption en attente ne peut pas intervenir avant l'exécution du JP.
Elle se produit donc en &240. Au retour le code en &240 teste la ram disponible (&2DF=1 si ram)
La fonction qui permet d'appeler une routine en ram supplémentaire est en &416 (HL=adresse d'exécution en ram)
La fonction qui permet de charger tous les levels en ram si la ram supplémentaire est détectée est en &237A
On a :
&0283 : LD HL,&6000 ; adresse en ram ext
&0286 : CALL &416 ; appel si ram présente
&0289 : CALL &237A ; charge tout si ram présente

Si on met un RET en &7FFF de la banque C4, tout fonctionne correctement.
Le CALL &416 revient sans bobo, et tout est chargé.
Reste à trouver ou l'octet maudit manque réellement et pourquoi.


Longshot, une question simple, toi qui connais très très bien le code z80, et l'amstrad.

Question à 200 euros pour toi : D'après toi, la Ram de l'amstrad au démarrage, c'est une étendue de zéro dans toutes les banks, ou bien il y a des patterns pré-déterminées présentes avec des octets particuliers qui ne sont présentes que dans les RAMs des vrais CPC, mais pas implémenté dans les émulateurs ? :)

J'ai cru voir que pour chacun des émulateurs, quand on initilialise le cpc émulé, c'est plus des zéros dans l'ensemble que les patterns présents d'origine.......

Si beach volley fait usage de ça, si c'est pas implémenté, dans le huh lulu !

_________________
SPS Community Expert (SPS CE) / SPS France


Haut
 Profil  
 
Longshot
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 00:50 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 28 Août 2008, 23:41
Message(s) : 270
Citer :
@Longshot : quelle difference exacte entre Ret z (ed ca) et Ret z (c8) ?
Je pensais que c'etait la meme instruction du z80... D'après ce que je lis, il y aurait une certaine différence.

ED CA se comporte comme un "NOP", puisque lorsque Z vaut 1, l'instruction ne fait pas un RET.
ED CA prend autant de temps qu'un C8 (lorsque Z vaut 0)


Haut
 Profil  
 
AsT
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 01:04 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 29 Août 2007, 08:04
Message(s) : 751
Localisation : Impact Hq
dlfrsilver a écrit :
Longshot a écrit :
Ce que je disais pour ED C8, c'est que le désassembleur devrait indiquer que l'instruction est non conventionnelle.

Je confirme que c'est le programme principal qui charge le reste du jeu.
En &FE4E, on a un EI suivi d'un JP &240. L'interruption en attente ne peut pas intervenir avant l'exécution du JP.
Elle se produit donc en &240. Au retour le code en &240 teste la ram disponible (&2DF=1 si ram)
La fonction qui permet d'appeler une routine en ram supplémentaire est en &416 (HL=adresse d'exécution en ram)
La fonction qui permet de charger tous les levels en ram si la ram supplémentaire est détectée est en &237A
On a :
&0283 : LD HL,&6000 ; adresse en ram ext
&0286 : CALL &416 ; appel si ram présente
&0289 : CALL &237A ; charge tout si ram présente

Si on met un RET en &7FFF de la banque C4, tout fonctionne correctement.
Le CALL &416 revient sans bobo, et tout est chargé.
Reste à trouver ou l'octet maudit manque réellement et pourquoi.


Longshot, une question simple, toi qui connais très très bien le code z80, et l'amstrad.

Question à 200 euros pour toi : D'après toi, la Ram de l'amstrad au démarrage, c'est une étendue de zéro dans toutes les banks, ou bien il y a des patterns pré-déterminées présentes avec des octets particuliers qui ne sont présentes que dans les RAMs des vrais CPC, mais pas implémenté dans les émulateurs ? :)

J'ai cru voir que pour chacun des émulateurs, quand on initilialise le cpc émulé, c'est plus des zéros dans l'ensemble que les patterns présents d'origine.......

Si beach volley fait usage de ça, si c'est pas implémenté, dans le huh lulu !


Je peux te dire que sur les emulateurs (winape par exemple), la ram etendue est effacée ce qui n'est pas le cas sur un Cpc Classique où il peut rester un peu d'octets differents de 0 dans la ram étendue.

Edit : c'est pour cela que Madram teste plusieurs adresses différentes (donc plusieurs octets) pour effectuer ses tests mémoires sur OrgAms.

_________________
AsT / iMP4CT

Retrouvez nous sur le forum Amstrad Plus
"Call &bb06"


Haut
 Profil  
 
dlfrsilver
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 01:17 
Hors-ligne
Rulezzzzz
Rulezzzzz

Inscription : 29 Août 2007, 12:04
Message(s) : 2009
Localisation : seine et marne 77
AsT a écrit :
dlfrsilver a écrit :
Longshot a écrit :
Ce que je disais pour ED C8, c'est que le désassembleur devrait indiquer que l'instruction est non conventionnelle.

Je confirme que c'est le programme principal qui charge le reste du jeu.
En &FE4E, on a un EI suivi d'un JP &240. L'interruption en attente ne peut pas intervenir avant l'exécution du JP.
Elle se produit donc en &240. Au retour le code en &240 teste la ram disponible (&2DF=1 si ram)
La fonction qui permet d'appeler une routine en ram supplémentaire est en &416 (HL=adresse d'exécution en ram)
La fonction qui permet de charger tous les levels en ram si la ram supplémentaire est détectée est en &237A
On a :
&0283 : LD HL,&6000 ; adresse en ram ext
&0286 : CALL &416 ; appel si ram présente
&0289 : CALL &237A ; charge tout si ram présente

Si on met un RET en &7FFF de la banque C4, tout fonctionne correctement.
Le CALL &416 revient sans bobo, et tout est chargé.
Reste à trouver ou l'octet maudit manque réellement et pourquoi.


Longshot, une question simple, toi qui connais très très bien le code z80, et l'amstrad.

Question à 200 euros pour toi : D'après toi, la Ram de l'amstrad au démarrage, c'est une étendue de zéro dans toutes les banks, ou bien il y a des patterns pré-déterminées présentes avec des octets particuliers qui ne sont présentes que dans les RAMs des vrais CPC, mais pas implémenté dans les émulateurs ? :)

J'ai cru voir que pour chacun des émulateurs, quand on initilialise le cpc émulé, c'est plus des zéros dans l'ensemble que les patterns présents d'origine.......

Si beach volley fait usage de ça, si c'est pas implémenté, dans le huh lulu !


Je peux te dire que sur les emulateurs (winape par exemple), la ram etendue est effacée ce qui n'est pas le cas sur un Cpc Classique où il peut rester un peu d'octets differents de 0 dans la ram étendue.

Edit : c'est pour cela que Madram teste plusieurs adresses différentes (donc plusieurs octets) pour effectuer ses tests mémoires sur OrgAms.


ahhhhh..... oh mais je viens de penser à truc là..... la X-mem, c'est pas de la RAM classique, c'est de la flashrom !!!! Elle viendrait pas de la la différence ?

Parce que dans les extensions des 464 genre DKtronics, c'est bien de la 4164-15 (DRAM), donc volatile, qui s'efface quand on coupe.

Doit y avoir une explication..... bon sang quelle différence il y a vraiment entre une DKtronics et une X-mem......

_________________
SPS Community Expert (SPS CE) / SPS France


Haut
 Profil  
 
Longshot
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 01:29 
Hors-ligne
VIP
VIP
Avatar de l’utilisateur

Inscription : 28 Août 2008, 23:41
Message(s) : 270
Je crois que la plupart des intervenants ici connaissent très très très bien le cpc :D
Citer :
ou bien il y a des patterns pré-déterminées présentes avec des octets particuliers qui ne sont présentes que dans les RAMs des vrais CPC, mais pas implémenté dans les émulateurs ?

Sur un 6128, les rams ne sont pas initialisées par les roms en démarrage à froid. Le contenu m'a toujours paru instable et on ne peut donc pas se fier aux valeurs qui peuvent changer entre 2 démarrages. Peut-être que c'est différent sur une extension mais j'ai un doute.
C'est assez simple à vérifier en basic. D'ailleurs avant que tu charges le jeu sur le 464 avec la xmem, peux tu regarder quel est le premier octet que tu trouves différent de 0 à partir de &6000 ?


Haut
 Profil  
 
dlfrsilver
 Sujet du message : Re: Annonce et bonne nouvelle :)
Message Publié : 01 Fév 2016, 03:32 
Hors-ligne
Rulezzzzz
Rulezzzzz

Inscription : 29 Août 2007, 12:04
Message(s) : 2009
Localisation : seine et marne 77
Longshot a écrit :
Je crois que la plupart des intervenants ici connaissent très très très bien le cpc :D
Citer :
ou bien il y a des patterns pré-déterminées présentes avec des octets particuliers qui ne sont présentes que dans les RAMs des vrais CPC, mais pas implémenté dans les émulateurs ?

Sur un 6128, les rams ne sont pas initialisées par les roms en démarrage à froid. Le contenu m'a toujours paru instable et on ne peut donc pas se fier aux valeurs qui peuvent changer entre 2 démarrages. Peut-être que c'est différent sur une extension mais j'ai un doute.
C'est assez simple à vérifier en basic. D'ailleurs avant que tu charges le jeu sur le 464 avec la xmem, peux tu regarder quel est le premier octet que tu trouves différent de 0 à partir de &6000 ?


J'ai déjà fait le test en fait :) la ram est remplie de pattern du style 'FFFFFFFF00000000' à la chaine.

_________________
SPS Community Expert (SPS CE) / SPS France


Haut
 Profil  
 
Afficher les messages publiés depuis :  Trier par  
Publier un nouveau sujet Répondre au sujet  Page 63 sur 138
 [ 2068 message(s) ]  Aller vers la page Précédent  1 ... 60, 61, 62, 63, 64, 65, 66 ... 138  Suivant

Index du forum » News - Actualités

Le fuseau horaire est UTC+1 heure


Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 36 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Aller vers :  
Powered by phpBB® Forum Software © phpBB Group
Traduit en français par Maël Soucaze.