Sur le second sujet en parallèle : after burner IPF généré par sugarbox est réécrit et fonctionnel via l'outil ad-hoc. Ce qui, pour un truc soit disant impossible à faire, me rempli de joie et d'allégresse
Et en passant, c'est un moyen commode de reconstituer des jeux en weak sur Sector à partir d'un bête dump ( qu'il soit dsk ou autre d'ailleurs)
Donc ta génération d'ipf fonctionne bien Lone ? C'est bien cela ? Félicitation
Oui, elle fonctionne (aux bugs près comme toujours). Ce qui est mieux, c'est surtout que la description des weak sectors de l'iPf peut être réécrit ( le point qui me faisait soucis).
Il ne manque plus qu'un tel support sur le hxc et on serait pas mal au niveau du support des originaux
ça, c'est une idée à étudier de près... Il faudrait surtout que d'autres auteurs d'émulateurs s'y mettent et proposent autre chose que du dsk. OffseT avait souligné les différents problèmes du dsk, il y a quelques temps déjà...
Inscription : 12 Juin 2008, 20:29 Message(s) : 1726
Lone a écrit :
Peut-être qu'un peu de sang-froid ne serait pas mal... Il y a beaucoup de caractériels sur ce forum ! Bref, sinon, Denis, tu peux nous donner la config exacte de ton 464 (quel type d'extension de ram, les roms que tu as pu y mettre, etc, etc... ?)
@dlfrsilver : en fait, ce que tu nous expliques, c'est que ça marche bien avec ton extension mémoire sur un 464.
-> j'avais bien compris ça ouf !
moi, je te disais que sur mon émulateur ça marchait bien sur un cpc464 avec 64ko seulement (avec la cdt fonctionnelle qui marche aussi ) ! c'est bien la config par défaut d'un 464 !
- en mode 464 avec 128ko de mémoire (sans fdc/AMSDOS) : KO, l'écran reste noir -> en fait, ce que je n'ai pas précisé... c'est que cela n'existe pas ! En fait, je n'émule pas d'extension mémoire, mais j'ai juste simulé qu'on rajoute (comme si on avait soudé sur la carte mère) 64ko comme sur un cpc6128.
j'ai donc testé sur l'émulation une config cpc 6128 avec 128ko -> et j'ai bien constaté pareil !
ce qui confirme que si on a 64ko supplémentaire comme un cpc6128 cela ne marche pas ! -> si quelqu'un charge la CDT/WAVE sur un cpc6128, il pourra le confirmer surement !
-> Reste maintenant a bien émuler une 'vrai' extension mémoire 64ko d'un cpc 464 via le connecteur d'expansion !!! et cela nous fait un beau cas de test !
cf mon deuxième post ! Il y a surtout le PAL HL16L8 qui ne doit pas être soudé sur la carte mère du 464 ! le soucis d'émulation vient surement de ça -> il ne doit pas être activé en mode 464!
Dernière édition par Megachur le 30 Jan 2016, 17:24, édité 1 fois.
Inscription : 12 Juin 2008, 20:29 Message(s) : 1726
Lone a écrit :
Oui, elle fonctionne (aux bugs près comme toujours). Ce qui est mieux, c'est surtout que la description des weak sectors de l'iPf peut être réécrit ( le point qui me faisait soucis).
Il ne manque plus qu'un tel support sur le hxc et on serait pas mal au niveau du support des originaux
Je te remercie par avance si tu peux soit expliquer le principe sur le forum (je sais pas si c'est vraiment l'endroit ?!), soit par mail ce point, je suis preneur ! Cela m'évitera également de stocker les 3 révolutions/secteurs pour les weak sectors !
Inscription : 20 Août 2013, 18:03 Message(s) : 258
Megachur a écrit :
en effet, il faut que le PPI envoie un signal au port EXP (PPI Port B - // 5 /EXP Expansion Port /EXP pin) pour activer l'extension mémoire, ce qui ne doit pas être le cas par le programme qui doit juste essayer de taper dans les 64ko supplémentaire du 6128 et comme il n'existe pas sur un cpc 464, il ne se passe rien comme quand on a pas brancher l'extension mémoire !
La seule utilisation connue du signal EXP sur le port d'extension est le boot direct sur la ROM AMSDOS. Quand exp est mis a la masse (par un jumper sur le DDI ou dans le CPC), la ROM amsdos prend la place de la ROM basic. Ensuite, le signal EXT est une entree du PPI, pas une sortie
Inscription : 12 Juin 2008, 20:29 Message(s) : 1726
Gerald a écrit :
Megachur a écrit :
en effet, il faut que le PPI envoie un signal au port EXP (PPI Port B - // 5 /EXP Expansion Port /EXP pin) pour activer l'extension mémoire, ce qui ne doit pas être le cas par le programme qui doit juste essayer de taper dans les 64ko supplémentaire du 6128 et comme il n'existe pas sur un cpc 464, il ne se passe rien comme quand on a pas brancher l'extension mémoire !
La seule utilisation connue du signal EXP sur le port d'extension est le boot direct sur la ROM AMSDOS. Quand exp est mis a la masse (par un jumper sur le DDI ou dans le CPC), la ROM amsdos prend la place de la ROM basic. Ensuite, le signal EXT est une entree du PPI, pas une sortie
Merci Gerald pour le retour, j'étais justement en train de corriger mon post après avoir regarder les schémas des cartes mères !!!
-> Il y a surtout le PAL HL16L8 qui ne doit pas être soudé sur la carte mère du 464 ! le soucis d'émulation vient surement de ça -> il ne doit pas être activé en mode 464!
Inscription : 29 Août 2007, 12:04 Message(s) : 2009 Localisation : seine et marne 77
AsT a écrit :
Après analyse, le code est bien chargé mais pour une raison que j'ignore n'est pas exécuté. Sur Winape, aucun message d'erreur n'apparaît.
@dlfrsilver : évitons de polémiquer alors...
Il n'y a pas de polémique. Je demande juste à être lu et que la réponse, bonne ou mauvaise, correcte ou incorrecte, soit en rapport avec le sujet
Oui winape ni aucun autre ému ne rapporte d'erreur, parce que le problème n'est pas côté z80
Citer :
Peut-être qu'un peu de sang-froid ne serait pas mal... Il y a beaucoup de caractériels sur ce forum !
Bref, sinon, Denis, tu peux nous donner la config exacte de ton 464 (quel type d'extension de ram, les roms que tu as pu y mettre, etc, etc... ?)
Je peux mais tu ne trouveras pas la source du problème avec ces informations.
J'utilise un 464+ (basic 1.1 de base donc), avec la X-mem de Toto, ce qui est strictement pareil que d'utiliser une extension DKtronics de 64k. J'ai 128k de ram à minima de dispo, et le jeu se charge intégralement dans ce mode là.
En fait Thomas, le problème est côté électronique, comme tu ne possèdes pas de CPC, tu ne pourras pas corriger en l'état le problème.
Citer :
@dlfrsilver : en fait, ce que tu nous expliques, c'est que ça marche bien avec ton extension mémoire sur un 464.
-> j'avais bien compris ça ouf !
Je t'arrête, si tu essaies de dire que ça marche que chez moi sur ma configuration, non. ça marche sur toute machine quelle qu'elle soit pourvue de 128k de ram, 464 ou 6128.
Oui puisque le jeu a été prévu pour ça. Les 464 avec extension de 64k ont le droit au même jeu que les 6128 en version disquette.
Citer :
moi, je te disais que sur mon émulateur ça marchait bien sur un cpc464 avec 64ko seulement (avec la cdt fonctionnelle qui marche aussi ) ! c'est bien la config par défaut d'un 464 !
encore heureux, j'ose pas imaginer quand le jeu est sorti s'il avait fallu que le jeu marche qu'avec 64k de ram alors que la boite et la cassette indique 464/664/6128 et support des 128k de ram, les plaintes des utilisateurs de 6128 et de 464 avec 64k de plus chez Ocean !
Citer :
- en mode 464 avec 128ko de mémoire (sans fdc/AMSDOS) : KO, l'écran reste noir -> en fait, ce que je n'ai pas précisé... c'est que cela n'existe pas ! En fait, je n'émule pas d'extension mémoire, mais j'ai juste simulé qu'on rajoute (comme si on avait soudé sur la carte mère) 64ko comme sur un cpc6128.
Mais c'est très bien, puisque c'est exactement ce que fait une extension de 64k collée au cul d'un 464.
Ce que tu as mis en place est correct.
Citer :
j'ai donc testé sur l'émulation une config cpc 6128 avec 128ko -> et j'ai bien constaté pareil !
Oui ça fait pareil sous CPCE, Caprice et sugarbox.
Citer :
ce qui confirme que si on a 64ko supplémentaire comme un cpc6128 cela ne marche pas ! -> si quelqu'un charge la CDT/WAVE sur un cpc6128, il pourra le confirmer surement !
FAUX tu n'as pas lu ce que j'ai écris plus haut, j'ai indiqué noir sur blanc que sur un vrai CPC 464 avec extension de RAM, c'est bien le jeu en mode 128k qui se charge, avec de la musique et tout les niveaux en mémoire avec le WAV que j'ai posté!
Mon 464 + a de base un basic v1.1 (ben oui, y a pas de basic v1.0 sur les plus), et il a les 128k demandés. J'ai testé le WAV que j'ai mis à disposition sur ma machine, et le jeu marche.
Citer :
-> Reste maintenant a bien émuler une 'vrai' extension mémoire 64ko d'un cpc 464 via le connecteur d'expansion !!! et cela nous fait un beau cas de test !
Mais non justement ! Ce que tu émules déjà est correct ! Et il est suffisant
Citer :
en effet, il faut que le PPI envoie un signal au port EXP (PPI Port B - // 5 /EXP Expansion Port /EXP pin) pour activer l'extension mémoire, ce qui ne doit pas être le cas par le programme qui doit juste essayer de taper dans les 64ko supplémentaire du 6128 et comme il n'existe pas sur un cpc 464, il ne se passe rien comme quand on a pas brancher l'extension mémoire ! cf mon deuxième post !
Je sais pas comment tu vas le prendre, mais j'arrive pas à comprendre comment tu as pu coder un émulateur sans savoir exactement comment la machine fonctionne d'un point de vue non pas programmation, mais d'un point de vue électronique.
Ton explication concernant le PPI est incorrecte, et malheureusement, ce n'est pas la source du problème.
Ensuite en terme de présentation matérielle, je ne suis pas d'accord avec toi. OUI les 64k supplémentaires du 6128 existent parfaitement bien sur un 464 si tu rajoutes une extension de ram au cul du CPC.
Le 464 est doté du même Gate Array que le 6128. C'est lui qui gère les banques mémoires. Ocean beach volley utilise une routine de mise en place de la musique, qui provoque le bug de l'écran sur les émulateurs, ceci parce qu'une caractéristique de la RAM du CPC non émulée, mais surtout jamais pensée par les auteurs d'émulateurs à été omise, et ceci depuis la création du tout premier émulateur.
Je vous laisse le plaisir de chercher, c'est la découverte de 2016 concernant le hardware de la machine
_________________ SPS Community Expert (SPS CE) / SPS France
Inscription : 20 Août 2013, 18:03 Message(s) : 258
Megachur a écrit :
-> Il y a surtout le PAL HL16L8 qui ne doit pas être soudé sur la carte mère du 464 ! le soucis d'émulation vient surement de ça -> il ne doit pas être activé en mode 464!
L’émulation d'un 464 sans extension mémoire doit complétement ignorer les out vers le pal, c'est a dire vers 7Fbb ou bb est %11xxxxxx, mais je pense que les émulateurs le font très bien.
Question, est-ce que le CDT fonctionne sur un 6128 (un vrai) ?
Il y a une différence entre le 464 avec extension mémoire et le 6128 lors de l’utilisation du mode C3. En mode C3, le bloc 7 est visible entre 0x4000 et 0x7ffff. Sur un 464, si la ROM haute est active, c'est la ROM qui est visible, pas la RAM d'extension. Par contre les écritures se font dans la RAM.
Inscription : 20 Août 2013, 18:03 Message(s) : 258
dlfrsilver a écrit :
Le 464 est doté du même Gate Array que le 6128. C'est lui qui gère les banques mémoires.
Le gate array ne gere pas la RAM d'extension : il ne sait meme pas ce que c'est. C'est le PAL du 6128 qui s'en charge, ou le HW présent dans les extension 464/664.
Inscription : 29 Août 2007, 12:04 Message(s) : 2009 Localisation : seine et marne 77
Gerald a écrit :
Megachur a écrit :
-> Il y a surtout le PAL HL16L8 qui ne doit pas être soudé sur la carte mère du 464 ! le soucis d'émulation vient surement de ça -> il ne doit pas être activé en mode 464!
L’émulation d'un 464 sans extension mémoire doit complétement ignorer les out vers le pal, c'est a dire vers 7Fbb ou bb est %11xxxxxx, mais je pense que les émulateurs le font très bien.
Question, est-ce que le CDT fonctionne sur un 6128 (un vrai) ?
J'ai déjà répondu plus haut. C'est un nouveau genre de CDT, crée par un nouvel outil (en cours d'affinage), et qui sont exactement représentatif de ce qui se trouve sur les cassettes. Les stries des speedlocks ont exactement la même tronche et la même vitesse que si on utilisait une vraie cassette !
Et oui il fonctionne et vachement bien même ! Samp2cdt va bientôt bouffer les pissenlits par la racine !
Mais comme je l'ai dit, il faut que tu lises plus haut ce que j'ai écris, j'ai tout expliqué.
Citer :
Il y a une différence entre le 464 avec extension mémoire et le 6128 lors de l’utilisation du mode C3. En mode C3, le bloc 7 est visible entre 0x4000 et 0x7ffff. Sur un 464, si la ROM haute est active, c'est la ROM qui est visible, pas la RAM d'extension. Par contre les écritures se font dans la RAM.
WinApe n’émule pas cette différence.
Ce n'est pas ça non plus, c'est vraiment un élément jamais pris en compte par les auteurs d'émulateurs. Et qui est lié à la RAM en elle-même. Beach Volley s'appuie très précisement sur cette particularité
_________________ SPS Community Expert (SPS CE) / SPS France
Petite question sur le PAL : N'y a-t-il pas un équivalent sur les extensions mémoires (pour pouvoir switcher de banks, justement ?)
@Megachur : Pour les weaks sectors, en fait, je stocke désormais trois informations : La valeur du bit (0/1), le fait qu'il soit optionnel ou non, et le fait qu'il soit weak ou non.
Ensuite, quand mon lecteur détecte un nouveau bit, je fais un rapide calcul : - s'il est optionnel, je tire au sort pour savoir si je le retourne ou le zappe - s'il est weak, je tire sa valeur au sort également.
Les bits optionnels sont provoqués par des valeurs inexactes de transitions (pas de transitions pendant trop longtemps - 4 '0' de mémoire suffit à avoir des résultats aléatoires).
La difficulté de tout ça, c'est de déterminer si un bit est là ou pas.... Surtout avec ces fameux bits optionnels ! Du coup j'ai mis au point un algo un peu empirique (comme tous mes algos) qui va chercher entre deux zones de synchro, les zones différentes, puis dans ces zones, les patterns identiques pour trouver bits optionnels et weaks bits.
Derrière, tout est simplifié (pas de changement de résolution, pas de soucis d'écriture, etc, etc..) De plus, la génération des weaks bits pour le format IPF est quasi immédiate ( 10 lignes de code de mémoire !)
Inscription : 20 Août 2013, 18:03 Message(s) : 258
dlfrsilver a écrit :
J'ai déjà répondu plus haut
Ok, noyé dans ta reponse au hors sujet d'Ast
dlfrsilver a écrit :
C'est un nouveau genre de CDT, crée par un nouvel outil (en cours d'affinage), et qui sont exactement représentatif de ce qui se trouve sur les cassettes. Les stries des speedlocks ont exactement la même tronche et la même vitesse que si on utilisait une vraie cassette !
Et oui il fonctionne et vachement bien même ! Samp2cdt va bientôt bouffer les pissenlits par la racine !
Mais comme je l'ai dit, il faut que tu lises plus haut ce que j'ai écris, j'ai tout expliqué.
Ca, ca n'a aucun rapport avec ma question, et c'est exactement ce qui fait que les informations sont noyés
Citer :
Ce n'est pas ça non plus, c'est vraiment un élément jamais pris en compte par les auteurs d'émulateurs. Et qui est lié à la RAM en elle-même. Beach Volley s'appuie très précisement sur cette particularité
Contenu de la RAM d'extension a la mise sous tension (non initialisé par le FW) ? Arnold devrais prendre ça en charge, mais il ne supporte pas les cdt pour le moment
Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 44 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