Soucis programmation de ROMs KickStart.

Forum Amiga Hardware Soucis programmation de ROMs KickStart.

  • Créateur
    Sujet
  • #194386
    SylVin42
      • Level 1
      • Messages : 11

      Bonjour à tous.

      Je reviens avec une question au sujet des ROMs (KickStart) pour Amiga 500 plus rev 8A.1 (1Mo) :

      Première chose : j’ai la ROM v1.2 (ref. : 315093-01 / 8750ED) sur mon Amiga 500 plus rev 8A.1
      Deuxième chose : j’ai un programmateur T58 avec adaptateur pour ROM à 40 (DIP40) et 42 (DIP42) pattes.
      Troisième chose : j’ai des circuits intégrés UVEPROMs ‘AM27C400-120’ (d’AMD) et UVEPROMs ‘M27C800-120’ (de ST).
      Quatrième chose : j’ai récupéré les ROMs v1.3 et v2.04 sur différents sites (https://archive.org/, http://www.oldgamesfinder.com/, https://amigamuseum.emu-france.info/ et https://github.com/BlitterStudio) et la ‘DiagROM’ en v1.3 sur ‘https://www.diagrom.com/’.

       

      J’ai (à priori) pu lire la ROM original 1.2 grace à mon prog. T48 en choisissant ‘MX23C4100’ dans la liste des ROMs disponible sous le logiciel de programmation Xgpro pour le T48. J’ai obtenu un fichier de 524 288 octets, ce qui est, je pense, correct.

      J’ai réussi à programmer une UVEPROM ‘AM27C400-120’ (d’AMD) et aussi une UVEPROM ‘M27C800-120′ (de ST) avec le fichier ’16bit.bin’ pour obtenir une ROM DiagROM en v1.3 qui fonctionne sans aucun souci, que ce soit la ‘AM27C400-120’ ou la ‘M27C800-120’. J’ai d’ailleurs pu tester la mémoire, le son, l’affichage, etc … C’est cool d’avoir ce type d’outil.

      Par contre, j’ai des soucis pour (re)programmer les v1.2, v1.3 et v2.04 des ROMs KickStart, que ce soit avec la ‘AM27C400-120’ ou la ‘M27C800-120’.

      À partir de ma copie de ma ROM v1.2 (ref. : 315093-01 / 8750ED), j’obtient bien le logo de la disquette bleue avec le v1.2, mais dès que je démarre le Workbench v1.2 (fichier ADF rev 33.56 – disquette 1 sur 2) j’ai une erreur « Software error – task held / Finish ALL disk activity / Select CANCEL to reset/debug », sous le Workbench.

      Concernant les ROMs v1.3 et v2.04, je n’ai même pas le logo du KickStart qui s’affiche lors de l’allumage de l’AMIGA.

      Sur les sites mentionné ci-dessus, il y a plusieurs versions de fichiers BIN(aire) des ROMs KickStart :

      Première question :
      Pourquoi y’a t’il plusieurs fichiers différents des mêmes ROMs, pour les mêmes AMIGA, par exemple pour la v2.04 de l’A500+ :
      – Kickstart v2.04 rev 37.175 (1991)(Commodore)(A500+).rom
      – Kickstart v2.04 rev 37.175 (1991)(Commodore)(A500+)[!].rom
      – Kickstart v2.04 rev 37.175 (1991)(Commodore)(A500+).rom
      – Kickstart v2.04 r37.175 (1991)(Commodore)(A500+)[o].rom
      ou encore pour la v1.3 :
      – Kickstart – 315093-02 (USA, Europe) (v1.3 Rev 34.005) (A500, A2000).rom
      – Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV).rom
      – Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV)[o].rom
      – Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV).rom
      etc …
      j’aimerais comprendre la signification (ROMs originale-s ? ROMs modifiée-s ? ROM PAL ? ROM NTSC ?).

      Pour info. : mon fichier binaire de ma ROM v1.2 est différent de tous les (différents) fichiers v1.2 (rev. 33.180) que j’ai récupérés sur internet. :scratch:
      bizarre … bizarre … tout ça. :wacko:

      Deuxième question :
      Avez-vous une idée de ce que j’ai pu mal faire pour qu’aucune copie de ROM KickStart ne fonctionne correctement avec mon A500+ rev8A.1 ?

       

      Merci d’avance pour vos réponses.

      SylVin42

    Affichage de 4 réponses de 1 à 4 (sur un total de 4)

    Partager sur vos réseaux sociaux préférés :
    Facebooktwitterredditpinterestlinkedintumblrmail

    • Auteur
      Réponses
    • #194402
      Amiguy
        • Level 3
        • Messages : 70

        Salut SylVin42,

        j’aimerais comprendre la signification (ROMs originale-s ? ROMs modifiée-s ? ROM PAL ? ROM NTSC ?).

        Tu peux découvrir les conventions de nommage des fichiers sur cette page :

        https://www.tosecdev.org/tosec-naming-convention

        Amiga 1200 2Mo Chip - PiStorm32 lite avec WiFi interne fonctionnel - SD 256 Go - Scandoubleur Indivision MK3 - Lecteur GOEX - Roms 3.2.2 et WB 3.2.2.1 - Imprimante Star LC10
        AmigaOne X5000 2GHz / 8Go Ram - SSD 2x4To - Radeon RX 580 4Go - Sound Blaster Audigy FX 5.1 SBX - AmigaOS4.1 FE



        #194404
        SylVin42
          • Level 1
          • Messages : 11

          Bonjour Amiguy,

          Merci infiniment pour l’information sur les ‘flags’ (information pertinente sur le dump).
          Je m’aperçois que, ce que je croyais être la mention ‘original’ ([o]) n’est absolument pas ça !!! :negative:
          Il me faut donc, maintenant, plutôt tester avec le fichier portant le flag : [!] (copie/dump vérifié).

           

          Merci.

          SylVin42

          #194416
          flaco
            • Level 5
            • Messages : 221

            Bonjour,

            Avant de les passer sur l’amiga, je te suggère de vérifier les ROMs après programmation au moyen de ton programmeur. Si la vérification ne passe pas, cela ne sert à rien de perdre du temps sur l’amiga (et risquer de l’abimer) !

            Quand je dis vérifier c’est vérifier le contenu après lecture et pas seulement la taile du fichier : si tu lis un chip de 512ko alors la taille du fichier sera de 512ko, mais dedans tu auras peut être du vide, des erreurs si la puce était mal connectée (manque d’un bit de données, manque d’une plage d’adresses, problème d’effacement ou chip défectueux).

            Si tu connais l’image source alors le plus facile est d’utiliser la fonction verify du programmeur. Sinon tu dump et tu compares (diff sous linux) avec des roms à ta disposition et si rien ne matches tu consultes le contenu hexa (hexdump, ghex…) pour te faire une idée .

            Notamment avec l’adaptateur DIP40->DIP42 il faut que tu t’assures de sélectionner la bonne puce dans le logiciel du programmeur et que tu programmes successivement toutes les régions accessibles via le bit d’adresse A18 absent du socket DIP40.

            Déjà tu sembles avoir évité un autre piège vu que l’amiga commence à booter : il faut écrire la ROM en veillant à échanger les 2 octets de chaque mot de 16 bit par rapport à une ROM utilisable en émulation (sur linux la fonction swab de dd est efficace pour cela).

             

            #194421
            SylVin42
              • Level 1
              • Messages : 11

              Bonjour,

              Concernant la vérification :
              Je me suis rendu compte hier, lorsque j’ai fait un ‘diff’ (Linux) entre le fichier que j’ai lu de ma ROM originale (v1.2 présente dans mon A500+) avec mon prog T48 et un des fichiers binaires (Kickstart v1.2) récupé sur internet.
              J’avais un résutat : fichier différent.
              J’ai ouvert, avec GHex, le fichier binaire issu de la lecture de ma ROM (v1.2) et le fichier Kickstart (v1.2) récupéré sur internet. En mode (visualisation) HEXA, j’avais des choses bizarres dès le début de mon fichier (quand dans les premiers octets, on ne voit pas ‘correctement’, coté HEXAdécimal, la bonne date, les mots AMIGA et autre mention de Copyright, c’est qu’il y a un souci).
              En fait, mon fichier binaire lu de ma ROM était en ‘little endian’ (j’avais oublié un peu tout cela depuis plus de 40 ans) !!!
              Et oui, en inversant (swap bytes) les octets 2 à 2 (sous Linux un : dd conv=swab <fichier-dump_little-endian.bin >fichier-dump_big-endian_bytes-SWAP.bin), pour obtenir un contenu en ‘big endian’, le contenu de mon fichier binaire était identique au fichier récupéré sur internet.

              Je vais maintenant vérifier le contenu après programmation des ROMs 27C400 et 27C800.

              Merci.

              SylVin42

            Partager sur vos réseaux sociaux préférés :
            Facebooktwitterredditpinterestlinkedintumblrmail
            Affichage de 4 réponses de 1 à 4 (sur un total de 4)
            • Vous devez être connecté pour répondre à ce sujet.