Développer des émulateurs pour passer le temps

14 sujets de 91 à 104 (sur un total de 104)

  • __sam__

    • Messages : 2601
    #349650

    J’ai du mal à réaliser que l’émul d’un amiga soit si légère. Il y a quoi qu’il ne fait pas mais que les autres font qui coûte aussi cher en resource CPU ?

    Allez dis nous: en fait Alice c’est juste un stream d’un gros PC qui tourne par derrière sur le réseau comme Shadow-PC. C’est ca ?

    Samuel.

    Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
    A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
    A500 Vampire V2+ ^8^ 🙂
    (mais aussi TO8, TO8D, TO9. Groupe PULS.)

    mikedafunk

    • Messages : 4304
    #349693

    Non Alice est juste un lecteur vidéo pas super optimisé 😉
    Test Alice2

    A1220/28 - A1230/50 - A1240/40 - A1260/64 - A500 - A500+Gotek - CD32 - A600 - MOS / Mac mini - Lubuntu / eeepc - http://mikedafunk.over-blog.org

    Bwah Bwah

    • Messages : 136
    #349694

    J’ai du mal à réaliser que l’émul d’un amiga soit si légère. Il y a quoi qu’il ne fait pas mais que les autres font qui coûte aussi cher en resource CPU ?

    Allez dis nous: en fait Alice c’est juste un stream d’un gros PC qui tourne par derrière sur le réseau comme Shadow-PC. C’est ca ?

    La précision par exemple. Est ce au cycle ? Il faut comparer le comparable. C’est  » from scratch  » ou bien basé sur les sources d’UAE ?

    Parce que si l’on s’aventure sur cette voie, fellow sous dos sera encore plus rapide mais beaucoup moins compatible en général.

    mikedafunk

    • Messages : 4304
    #349695

    La précision par exemple. Est ce au cycle ? Il faut comparer le comparable. C’est » from scratch » ou bien basé sur les sources d’UAE ?

    Parce que si l’on s’aventure sur cette voie, fellow sous dos sera encore plus rapide mais beaucoup moins compatible en général.

    Non ce n’est pas au cycle, et oui c’est from scratch (sauf pour le moment les codes des processeurs 68000 et 68020 qui ont été récupérés)

    Niveau compatibilité Amiga, presque toutes les demos OCS / ECS / AGA que j’ai essayées fonctionnent à peu près (quelques bugs graphiques parfois, mais rien de méchant). Donc c’est déjà vraiment très très bien!
    Config maxi : 68020 (boost variable) / AGA / 8Mo de fast / Disque dur (en provenance d’UAE)

    Edit : vidéo comparative Alice Vs Fs-UAE

    A1220/28 - A1230/50 - A1240/40 - A1260/64 - A500 - A500+Gotek - CD32 - A600 - MOS / Mac mini - Lubuntu / eeepc - http://mikedafunk.over-blog.org

    Giants

    • Messages : 3276
    #349700

    Parce que si l’on s’aventure sur cette voie, fellow sous dos sera encore plus rapide mais beaucoup moins compatible en général.

    Heuuu, linux est un operating system toujours en fonctionnement et même d’actu.
    MSdos…. comment dire…ça n’existe plus.

    Et puis comparé quelque chose d’un OS à un autre OS différent n’aurait aucun sens.
    En plus pour trouver les sources de Xfellow (qui est la ‘branche’ linux etteinte depuis…. oula…longggggtemps) , bonne chance.

    Faut laisser le temps trankikou à Alice de monter en puissance et on verra ce que donne.
    Pour l’instant, visiblement, il/elle en a sous le capot.

    Région : Yvelines
    Site : http://sasfepu78.fr
    H/W : Bartop, borne d'arcade, Amiga500 x 3, Atari STF, Amstrad, etc, etc
    http://www.retrotaku.com/parution-retro-gaming/interview-de-giants-fondateur-du-site-abandonpub-com/

    __sam__

    • Messages : 2601
    #349701

    A propos de linux, je trouve que sur la dernière vidéo de Mike, ubuntu est super lent à démarrer. N’importe quel W10 me semble booter infiniment plus vite. C’est quoi le hic ici, le disk est trop lent ou linux qui n’a plus sa légèreté des débuts ?

    Samuel.

    Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
    A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
    A500 Vampire V2+ ^8^ 🙂
    (mais aussi TO8, TO8D, TO9. Groupe PULS.)

    mikedafunk

    • Messages : 4304
    #349702

    D’abord il faut savoir que Windows 10 triche à fond pour le temps de boot car il utilise l’hibernation (qui peut être source de problèmes) : https://lecrabeinfo.net/desactiver-demarrage-rapide-fast-startup-windows-10.html

    Ensuite Lubuntu n’est pas réputé pour être rapide à démarrer, ce n’est pas son but. Par contre Ubuntu à une époque faisait tout pour gratter un peu de temps de boot. Mais je ne crois pas que ce soit encore d’actualité.

    La légèreté, ce n’est pas trop le temps de boot, c’est plutôt la consommation pendant l’utilisation. Et là il faut avouer que Windows 10 est un hippopotame en comparaison au colibri Lubuntu ^ ^

    Edit : Les machines du boulot non équipées de SSD démarrent « lentement » sous Windows 10, mais ce n’est pas un scoop, le SSD apporte beaucoup.

    A1220/28 - A1230/50 - A1240/40 - A1260/64 - A500 - A500+Gotek - CD32 - A600 - MOS / Mac mini - Lubuntu / eeepc - http://mikedafunk.over-blog.org

    __sam__

    • Messages : 2601
    #349703

    Tricher / Optimiser.. la différence se situe suivant de quel coté on regarde. L’optimisation fiscale est elle une fraude fiscale ? Bon, je suis HS total là. Allez je m’en vais tricher du code…

    Samuel.

    Amiga A500 + GVP530 (8Mo/fpu/mmu/scsi) - en panne 🙁
    A500 (+ 1Mo PPS), A1200 (Blizzard-IV/fpu/64Mo)
    A500 Vampire V2+ ^8^ 🙂
    (mais aussi TO8, TO8D, TO9. Groupe PULS.)

    Giants

    • Messages : 3276
    #349704

    De ce que je sais.
    Le Systeme Installé dans les vidéo est sur un DD sata, PAS SSD

    De plus, il s’agit de la version 386 est non 64B.
    C’est la version de linux 18.04 alternate (la dernière dispo en 386 ensuite c’est du 64B)
    Pourquoi une release en 386 tout simplement car le code est compilé sur cette plateforme.
    Pourquoi ne pas installer une version 64B est installer les binaires qui vont bien ?
    Parce que c’est chiant et lourd (dépends de comment le binaire est compilé, de quel lib 386 il a besoin etc. Toutes les libs 386 ne sont pas installable ‘facilement’ sur un OS 64bits et rends le système plus ou moins ‘stable’ pour les autres compilations qui sont eux 64B)

    En clair, il est plus facile de jouer un binaire fait pour une plateforme 386 sur une release d’os 386
    Ceci pour expliquer cela 🙂

    J’ajouterais que les ‘perfs’ que ce soit pour alice ou autre dépendent de beaucoup de chose comme.
    – L’ordinateur bien sûr. (proc/mémoire)
    – Comment c’est codé et ce qui est émulé.
    – et ne l’oublions pas, ‘l’environnement de bureau’.

    Un FS-UAE tournera largement moins vite (j’ai testé) sur un Gnome que sur un Lxe.

    Sinon globalement, pour avoir testé aussi, même sur une grosse bécane, windows 10 boot plus vite sur un SSD que son homologue dernière mouture.

    Du moins, ce que j’ai constaté sur debian, ubuntu, mint.. avec divers ‘bureau’ (gnome, lxe, …)
    Pourquoi W10 boot plus rapidement ? ça… c’est une bonne question, aucune idée.

    Région : Yvelines
    Site : http://sasfepu78.fr
    H/W : Bartop, borne d'arcade, Amiga500 x 3, Atari STF, Amstrad, etc, etc
    http://www.retrotaku.com/parution-retro-gaming/interview-de-giants-fondateur-du-site-abandonpub-com/

    mikedafunk

    • Messages : 4304
    #351848

    Interview du concepteur d’Alice, notes réalisées le 16 août
    Désolé pour les notes en vrac, je mettrai à jour ce texte si besoin
    Sorry pour le retard, j’ai rarement un accès à internet, en mode « cure de desintox informatique forcée » LOL

    Pourquoi avoir voulu programmer Alice ?
    Comprendre comment fonctionnent les émulateurs, essayer d’en faire un, est-ce que c’est faisable ? Un simple défi personnel

    Quand as tu commencé ton projet ?
    En 1999 avec un émulateur master system sous Windows / directX
    Ensuite GB (cpu presque pareil), son très basique
    Ensuite pc engine car l’émulateur qui fonctionnait bien à l’époque était limité à 5mn

    =>3 exe différents (win-gb, win-mastersystem et win-pcengine) qui fonctionnaient à 90-95 %., Interruption par ligne bien faite par rapport à d’autres émulateurs
    Il y avait même une gui à l’époque ! Pour changer le zoom, de rom etc.
    Détection de certaines boucles infinies pour gagner en usage cpu…

    Les 3 exe n’ont jamais été diffusés
    Pause du développement pendant 4-5 ans

    Passage sous linux en 2006 2007 pourquoi ?
    Code commun aux 3 émulateurs, l’idée était de tout rassembler dans un seul exécutable
    En fonction de l’extension du nom de la rom : lance le bon émulateur
    Sdl que pour le son et la manette
    Debug, manette, affichage, clavier, son = commun avec 3 coeurs

    Ensuite snes : intéressant car j’y avais pas mal joué à l’époque
    Un cran au dessus au niveau complexité
    Cpu qui ressemble à celui de la pcengine, donc réutilisation d’une partie des trucs
    2 cpu : 1 pour le son, synchro des 2 cpu (pas protégé)
    Gestion des transparences, mode 7…

    PcengineCD : pour gérer les cédéroms 🙂

    Ensuite psx : ajout de la 3D, intéressant aussi à programmer

    Même à ce stade de développement, l’idée n’a jamais été de diffuser Alice

    Le plus chiant à programmer : les cpu
    Je cherchais le ratio intéressant compatibilité / perfs pas trop pourri

    Neogeo : jeux sympas / plein de couleurs et super docs techniques de disponibles.
    Tout est sprites sur cette console, même les décors! + layer score/niveau
    soucis : 68000 trop complexe donc repris tout fait, (source pas mal)
    2 cartouches en une, mémoire vidéo+ code cpu 68000 et z80 audio (samples)
    gérer le cryptage (protection des jeux récents), chiant, algo récupéré dans mame

    En parallèle, développement de puces de sons, celle de la neogeo (fm) est plus évoluée
    => Gestion des formats vgm (audio) pour la neo geo, mastersystem, gameboy, pcengine

    Taux de compatibilité très bon avec la neogeo car pas besoin de bidouilles logicielles comme sur les autres supports
    => réutilisation du cpu Z80 de la master sytem

    Mise à jour du debugger pour aider à avoir des infos dans l’état du systèm + dessassembleur + gestion des symboles pour s’y retrouver (seules parties intéressantes), typiquement pour les machines avec bios

    Megadrive : 68K c’est bon, z80 c’est bon, puce son similaire à la neo geo
    l’idée était de jouer à sonic, donc fait un peu vite, compatibilité moyenne, pas fini, partie graphique vite fait, soucis avec DMA

    Ajout de la puce fm qui était utilisée dans la mastersytem japonaise. Outrun, rtype, double dragon… ont un son bien meilleur

    Ajout dans le format vgm les pucefm des cartes son pc, monkey island, yamaha opl
    => ça ressemble, donc pourquoi pas essayer?

    Ajout du capcom system 1 arcade 68000 Z80 puce audio ressemblant à neogeo
    juste la partie graphique était à faire
    street fighter2, prime, etc. gouls n ghoust, 1941, pang3, final fight
    tout fonctionne bien
    => ce qui change d’un jeu à l’autre, c’est juste comment sont gérés les mémoires

    Ajout konami crime fighter
    cpu de merde, desassembleur
    z80 puce son connue, juste la partie graphique était à faire

    hardware différent d’un jeu à l’autre
    konami asterix 68000

    trucs communs dans la partie graphique
    konami vendetta

    Premier ordi : le CPC ! encore le Z80
    Juste quelques craintes au début pour gérer la D7 mais finalement le format .dsk se gère facilement
    taux de compatibilité pas terrible, toujours à cause du graphique, un peu comme l’émulateur megadrive. graphique en mode pixel près à faire

    Nouveau défi, tenter d’émuler l’Amiga
    objectif A500 de base 7mhz 512ko pour booter la rom, avoir la main
    Puis ensuite lancer pinball dreams
    super doc officielle commodore (quelques conneries mais ça va)

    blitter en mode instantané et copper (mini cpu 3 instructions) au départ en mode ligne
    gestion des bitplans, son bien documenté, pcm facile
    fm super pourri (hyper limité 4 opérateurs) pas fait mais pas ou peu utilisé à priori

    68000 ok, lecteur de D7 casse couille, 880ko doublé pour les bits de correction d’erreurs
    le 68k lit nativement tous les bits, d’où plusieurs formats possibles, y compris pc
    mais format adf bien documenté

    objectif initial : crack intro du pinball dreams, un peu la souris, clavier
    début gestion de sprites pour le jeu, la boule
    Pinball dreams était en 64 couleurs ehb en trichant, pour allumer les lampes
    tout marchait sauf f1 au début (guru)

    gestion de collision sprites / plan non géré (jeu à la pong) mais pas ou peu utilisé à priori, usine à gaz

    2° objectif Amiga : lancer pinball fantasies
    améliorer le copper pour l’affichage en haut copperlist
    2mo pour agnus

    Essai de lancement demos, de plus en plus tournaient et de mieux en mieux
    roots voulait un 68020, cela motivera à rajouter le cpu 32 bits un peu plus tard

    Rajout du disque dur natif, c’est l’Amiga qui gère la table des partitions
    Quelques jeux et applications dans le wb : monkey island, dpaint, dune2, flashback
    bug gros fichiers résolu plus tard (un jeu de flipper ne fonctionnait pas à cause de ce bug)

    => Ajout du fichier de conf alice.conf pour plusieurs modèles d’Amiga
    Au début aga super light avec 68000 rom 3 palettes 256 couleurs

    pinball illusions : le support de l’aga a été amélioré
    les flips sont des sprites, la boule n’est plus un sprite (elle est plus jolie)

    slamtilt à l’inverse, retour à la boule gérée en sprite comme dreams et fantasy
    sprite hi res 16 couleurs quand mode entrelacé

    Ce qui reste à faire sur 500 :
    Écriture sur la d7
    Gestion du filtre pour le son
    Améliorer le mode entrelacé, pb synchro
    Blitter en mode ligne à finaliser
    Copper en mode pixel, copper compliqué, changement plusieurs fois pendant la ligne
    Que l’émulateur soit bien synchro, le plus proche du cycle près
    Ports parallels, série, que 2 lecteurs de d7 sont gérés pour l’instant
    Reset au clavier (pas utile en émulation)
    Codes d’erreur de clavier (pas utile en émulation)
    Gestion des erreurs d7 et ide (pas utile en émulation)
    D’autres trucs inutilisés
    Correction de bugs…

    Ce qui reste à faire pour le 1200 :
    Sprites hi res sur fonds low res
    Mode super hires
    50 ou 60hz
    Gérer réellement la fast, écriture en chip (lent – pas lent, galère à programmer)
    Bug décalage scroll horizontal
    Gestion du pcmcia
    futur : gestion de la cd32

    Général à Alice : ajout d’une gui

    68K à reprogrammer de zéro « pour le fun »

    => Toujours pas de diffusion prévue pour le moment, car :
    Pas assez finalisé, ne dispose pas de GUI
    Demandant un linux (32bits ou bidouilles dans les dépendances)

    Ouverture du code envisageable après qu’Alice soit enfin diffusé

    A1220/28 - A1230/50 - A1240/40 - A1260/64 - A500 - A500+Gotek - CD32 - A600 - MOS / Mac mini - Lubuntu / eeepc - http://mikedafunk.over-blog.org

    Amitoo

    • Messages : 957
    #351849

    On sent que c’est du vécu.

    A500+ / A1200 / CD32 et... Jaguar

    Vincent-21

    • Messages : 126
    #351850

    Super interview @mikedafunk . Merci de faire le relais!
    On sent un réel plaisir d’apprendre et de passer les difficultés.
    C’est son loisir.
    Bon courage à lui pour la finalisation de son projet.

    Région : Yvelines

    Admin

    BatteMan

    • Messages : 5886
    #351865

    Merci à vous deux, très intéressant à lire.


    /me est abonné à ses vidéos Youtube et c’est toujours un plaisir d’avoir des nouvelles d’Alice 😉

    Only Amiga makes it possible !

    Pensez à vous inscrire sur www.annuaire-amiga.org, l'Annuaire des Amigaïstes toutes saveurs confondues ! ^^

    Jedi

    • Messages : 1156
    #351872

    Épatant, impressionnant 🙂

    Merci Mike pour cette entrevue 😉


    /me adore ceux qui se lancent ce genre de défis 😎

14 sujets de 91 à 104 (sur un total de 104)

  • Vous devez être connecté pour répondre à ce sujet.

Forums AmigaOS, MorphOS et AROS Émulation et autres OS Développer des émulateurs pour passer le temps

Do NOT follow this link or you will be banned from the site!