[RÉSOLU] Script : injection de texte dans un fichier

14 sujets de 1 à 14 (sur un total de 14)

  • Admin

    BatteMan

    • Messages : 5852
    #273842

    Bonjour à tous,

    Actuellement en train d’essayer de compléter l’article sur UAE disponible sur Obligement, je me confronte à un souci pour ce qui est de l’automatisation du lancement des jeux CD32 en ISO.

    En effet, j’ai besoin de spécifier dans le fichier de config d’UAE le nom de volume de l’ISO… Je voulais passer par un script mais je vous avoue que je bloque.

    J’ai trouvé une commande sur Aminet, GetVolumeName, qui me donne le nom de volume de mon device et que je balance dans un fichier ram:T/nomvolume.txt mais après, je cherche comment récupérer ce nom et le balancer dans le fichier .conf (en remplacement d’un autre nom ou alors en l’insérant dans le fichier au milieu d’une phrase).

    Si quelqu’un a une idée, je suis preneur. Et on peut aussi utiliser autre chose que GetVolumeName, évidemment.

    Merki !


    /me a réussi à bien avancer mais reste bloqué avec ce souci… Sinon, faudra « modifier » à la mano, ce qui le fait moins.

    Only Amiga makes it possible !

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

    JiDeWe

    • Messages : 5673
    #273859

    hello battounet 😉

    UAE sur PC/MAC ou Amiga NG?

    /me répond, c’est juste pour faire avancer le schmilblick

     

    1 A500 1 mo, 1 A500 512ko, 1 Atari 520Ste 4mo + UltraSatan dual, un MSX2 8235, 1 PoBO 1,67 avec Morphos.
    maxime perpétuelle : si je cours en zigzag ce n'est pas pour éviter le balles, mais les c..s,
    maxime conne de la semaine : Si tu veux connaitre ton taux d'alcoolémie, pisse sur un briquet, si il s'éteint c'est bon, si ça s'enflamme, pisse dans le réservoir cela pourra toujours t'aider au cas où.....

    Admin

    BatteMan

    • Messages : 5852
    #273901

    JiDeWe : C’est bien, pour le moment, pour MorphOS (mais ce sera valable pour tout ce qui utilise E-UAE en sachant que les scripts ne fonctionneront que sous AmigaOS/MorphOS et éventuellement AROS, en sachant que sous OS4, RunInUAE fait déjà le job et inscrit bien le nom de volume des ISO dans le fichier de conf…).

    Bref, j’espère pouvoir réussir à faire ça…

    Pour le moment, ça fonctionne nickel avec des jeux CD (pour les ISO, faut se palucher le fichier de conf’ à la mano…).


    /me y a déjà passé quelques soirs…

    Only Amiga makes it possible !

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

    Admin

    bigdan

    • Messages : 4716
    #273906

    Batteman : on peut regarder ton script si tu veux… Cela me rappelera ma période scripts ARexx & Rebol

    mikedafunk

    • Messages : 4303
    #273908

    Oui et pense à vacciner le disque dur (ou le SSD) pendant que tu y es 😉

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

    Admin

    BatteMan

    • Messages : 5852
    #273989

    Bigdan : Why not !

    mikedafunk : L’injection se fera directement en intra, pas de souci ! ^^


    /me espère pouvoir vous en redire plus bientôt !

    Only Amiga makes it possible !

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

    elwood

    • Messages : 1579
    #274094

    Avec la commande « info HD0: » et en retravaillant la sortie avec quelques lignes d’Arexx.

    Sinon, des programmeurs peuvent te faire un programme ad-hoc en quelques minutes.

    Admin

    bigdan

    • Messages : 4716
    #274140

    Batteman : envoie un exemple de fichier .conf pour voir !
    J’aime bien ce genre de script 😉

    Admin

    BatteMan

    • Messages : 5852
    #274252

    Voici la tronche du fichier cd32.conf :

    filesystem2=ro,CD0:NOMDEVOLUMEDELISO:ISO0:,1
    kickstart_rom_file=work:utils/UAE/Roms/cd32.rom
    kickstart_ext_rom_file=work:utils/UAE/Roms/cd32.ext
    flash_file=work:utils/UAE/Roms/nvram.nvr
    chipmem_size=4
    chipset=aga
    fastmem_size=8
    show_leds=true
    immediate_blits=no
    cpu_speed=max
    cpu_type=68020
    cpu_compatible=false
    cpu_cycle_exact=false
    blitter_cycle_exact=false
    cachesize=8192
    comp_optimize=yes
    comp_constjump=yes
    comp_trustbyte=indirect
    comp_trustword=indirect
    comp_trustlong=indirect
    floppy0type=-1
    floppy1type=-1
    gfx_framerate=1

    Il faut pouvoir remplacer le « NOMDEVOLUMEDELISO » par le nom de volume de l’ISO justement ^^

    J’avoue que je sèche mais suis preneur de toute astuce ou possibilité de le faire via script (dos ou rexx).


    /me a cherché des exemples et autres mais n’a pas trouvé…

    Only Amiga makes it possible !

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

    Ball000

    • Messages : 104
    #274314

    Si sed est installé :

    [code]sed -e « s/NOMDEVOLUMEDELISO/$nomvolume/g » ram:cd32.conf >ram:cd32.conf.modifié[/code]

    EDIT : J’ai modifié un peu la ligne de commande, parce qu’apparemment pour que cela fonctionne il est plus facile d’utiliser une variable plutôt que [code]ram:T/nomvolume.txt[/code]

    Donc avant la ligne sed ci-dessus, ton script doit par exemple comporter la commande :

    [code]GetVolumeName_et_ses_arguments >ENV:nomvolume[/code]

    Admin

    BatteMan

    • Messages : 5852
    #274383

    Ball000 : Merci, ça ressemble bien à ce que je souhaite faire !

    Reste à voir pour Sed qui est dispo sur la Minette en version 68k et OS4 mais pas MorphOS. En espérant que la version 68k fonctionne sous MorphOS !


    /me va tester ça ce week-end ! 😛

    Only Amiga makes it possible !

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

    BeWorld

    • Messages : 115
    #274389

    bonjour !

    Purée cela m’intéresse ca…. je cherchais justement quelque chose pour ajouter une ligne dans un fichier.

    En gros, je cherche à faire un installer de NETFS et il y a pas mal de chose à ajouter dans les fichiers de MorphOS.

    En tout cas je vais chercher aussi de mon coté sur ce sujet.

    Mes confs : IMac G5 2.1, PowerBook G4 17 1.5 et PowerMac G5 2.7
    Mes ports sur MOS

    Ball000

    • Messages : 104
    #274397

    BatteMan : Je serais très surpris que le SDK de MorphOS ne fournisse pas sed ?

    Admin

    BatteMan

    • Messages : 5852
    #274426

    Victoire !

    En combinant GetVolumeName, sed (que ce soit celui du SDK MorphOS ou le sed en version 68k disponible sur Aminet, cela fonctionne avec les deux) et IsInserted (un autre petit programme sur Aminet), j’ai réussi à faire ce que je voulais ! Enfin ! ^^

    IsInserted vérifie qu’il y a bien quelque chose dans IS0O: (sans lui, si je mettais un « IF EXISTS ISO0: » et qu’il n’y avait rien, j’avais un message d’erreur, ce qui est un peu couillon).
    Du coup, si IsInserted détecte bien quelque chose dans ISO0:, alors le script va lancer getvolumename puis sed (merci Ball000 !) et enfin UAE avec le fichier de conf’ qui va bien.
    Si rien n’est trouvé dans ISO0: par IsInserted, alors on zappe le début et on ne lance que UAE CD32 avec le fichier de conf’ normal, ce qui permet de booter alors sur le vrai CD inséré dans le lecteur CD (ou s’il n’y en a pas, on a l’animation de boot de la CD32) !

    J’ai mis le script dans les mimetypes d’Ambient, dans ceux de la globaldevice (je ne vois pas où le mettre d’autre…) et rulez !

    Merci à tous !

    Voici la tronche dudit script !

    C:IsInserted ISO0:
    IF NOT WARN
    	c:GetVolumeName ISO0: short >env:nomvolume
    	c:sed -e "s/NOMDEVOLUME/$nomvolume/g" work:Utils/UAE/Conf/CD32.conf >ram:cd32.conf
    	run >nil: Work:Utils/UAE/e-uae -f ram:cd32.conf -0
    ELSE
    	run >nil: Work:Utils/UAE/e-uae -f Work:Utils/UAE/conf/cd32.conf -0
    ENDIF


    /me n’est pas mécontent d’avoir réussi à le faire ! ^^

    Only Amiga makes it possible !

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

14 sujets de 1 à 14 (sur un total de 14)

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

Forums AmigaOS, MorphOS et AROS Général [RÉSOLU] Script : injection de texte dans un fichier

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