[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: debian boot floppies and keyboards.



> when configuring the keyboard, i choose amiga-fr, since i am using a french
> amiga keyboard. i got then a message saying it could not find
> amiga/amiga/amiga-fr.bmap in /etc/keymaps.tgz.
> 

The keymaps.sh file looks good for this:

 powerpc)
# FIXME: Removed German Mac keymap due to loadkey failures
#       export keymaps="mac/mac-de-latin1-nodeadkeys.kmap.gz
        export keymaps="amiga/amiga-de.kmap.gz
        amiga/amiga-es.kmap.gz
        amiga/amiga-fr.kmap.gz
        amiga/amiga-it.kmap.gz
        amiga/amiga-se.kmap.gz
        amiga/amiga-sg.kmap.gz
        amiga/amiga-us.kmap.gz
        i386/azerty/be-latin1.kmap.gz
        i386/azerty/fr-latin1.kmap.gz
        i386/dvorak/dvorak.kmap.gz
        ...


The other place  utilities/dbootstrap/kbdconfig.c:


#elif #cpu (powerpc)
    if (strcmp(Arch2, "Amiga") == 0) {
        prefix="amiga";
        choices = keymaps_ami;
        nchoices = nchoices_ami;
    }
    else {
        prefix="";
        choices= keymaps;
        nchoices=sizeof(keymaps)/sizeof(struct d_choices);
    }


The problem is the  prefix="amiga";  with

struct d_choices keymaps_ami[]={
    { "amiga/amiga-de",        "Germany (Amiga)"           , KBD_de_DE},
    { "amiga/amiga-es",        "Spain (Amiga)"             , KBD_es_ES},
    { "amiga/amiga-fr",        "France (Amiga)"            , KBD_fr_FR},
    { "amiga/amiga-it",        "Italy (Amiga)"             , KBD_it_IT},
    { "amiga/amiga-us",        "U.S. English (Amiga)"      , KBD_C},
    { "amiga/amiga-se",        "Sweden (Amiga)"            , KBD_sv_SE},
    { "amiga/amiga-sg",        "Swiss German (Amiga)"      , KBD_sg_SG}
  };
  int nchoices_ami=sizeof(keymaps_ami)/sizeof(struct d_choices);

So we get  prefix="amiga" / "amiga/amiga-fr"

I personally don't like any prefixes. Better use always absolute paths. 

I'ld change it to:

#elif #cpu (powerpc)
    if (strcmp(Arch2, "Amiga") == 0) {
        prefix="";
        choices = keymaps_ami;
        nchoices = nchoices_ami;
    }
    else {
        prefix="";
        choices= keymaps;
        nchoices=sizeof(keymaps)/sizeof(struct d_choices);
    }


This is also then a problem for m68k; m68k uses also a prefix + the subarch path.


Thanks for the test. 


MfG,


    Hartmut


Reply to: