Help (neues Motherboard Error 1)

  • Hallo Leute
    ich habe nun nach Hubertus Anleitung die Werte für mein MB (Abit BP6) ermittelt.
    Laut Anleitung sollte ich die Ausgabe von guess in nvram-wakeup-mb.h rein schreiben. In der datei steht aber, dass die MB Werte nun in in nvram-wakeup-mb.c sind. (Version 0.90)
    Gut, habe ich getan,
    Ausgabe von guess:
    ------------
    void vhttpwwwabitcomtw_i449(struct biosinfo *b)
    {
    b->addr_stat = 0x46;
    b->addr_date = 0x47;
    b->addr_hour = 0x48;
    b->addr_min = 0x49;
    b->addr_sec = 0x4A;
    b->addr_chk_h = 0x6C /* guessed */
    b->addr_chk_l = 0x6D
    }


    /* Detection information:
    { vhttpwwwabitcomtw_i449, "vhttpwwwabitcomtw_i449", "<http://www.abit.com.tw>", "i440BX-W83977 (BP6)", "", "Award Software International, Inc.", "4.51 PG", "04/20/00" },
    */
    -------------------
    das habe ich nach dem letzten MB das mit
    void.... anfing reingeschrieben (ist das egal wo?...).
    Nun kommt aber beim kompilieren error 1:
    -------------------
    vdr:/usr/local/src/nvram-wakeup-0.90 # make ACTUALLY_WRITE=OFF
    gcc -O2 -Wall -Wstrict-prototypes -g -march=i486 -mcpu=i486 -pedantic -D_GNU_SOURCE -c -o nvram-wakeup-mb.o nvram-wakeup-mb.c
    nvram-wakeup-mb.c: In function `vhttpwwwabitcomtw_i449':
    nvram-wakeup-mb.c:660: parse error before `b'
    nvram-wakeup-mb.c:832: `__s' undeclared (first use in this function)
    nvram-wakeup-mb.c:832: (Each undeclared identifier is reported only once
    nvram-wakeup-mb.c:832: for each function it appears in.)
    nvram-wakeup-mb.c: At top level:
    nvram-wakeup-mb.c:832: parse error before `)'
    nvram-wakeup-mb.c:832: `__s' undeclared here (not in a function)
    nvram-wakeup-mb.c:832: parse error before `switch'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: conflicting types for `__u'
    nvram-wakeup-mb.c:832: previous declaration of `__u'
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `->'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__u'
    nvram-wakeup-mb.c:832: redefinition of `__u'
    nvram-wakeup-mb.c:832: `__u' previously defined here
    nvram-wakeup-mb.c:832: warning: initialization makes integer from pointer without a cast
    nvram-wakeup-mb.c:832: initializer element is not constant
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `case'
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__s'
    nvram-wakeup-mb.c:832: `__s' used prior to declaration
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `}'
    nvram-wakeup-mb.c:832: parse error before character constant
    nvram-wakeup-mb.c:832: warning: type defaults to `int' in declaration of `__s'
    nvram-wakeup-mb.c:832: ANSI C forbids data definition with no type or storage class
    nvram-wakeup-mb.c:832: parse error before `}'
    nvram-wakeup-mb.c: In function `get_bios_info_by_dmi':
    nvram-wakeup-mb.c:852: `boards' undeclared (first use in this function)
    nvram-wakeup-mb.c: In function `get_bios_info_by_iw':
    nvram-wakeup-mb.c:884: `boards' undeclared (first use in this function)
    make: *** [nvram-wakeup-mb.o] Error 1
    -----------------------
    wo ist da mein Denkfehler? (laut (alter)Anleitung ist auch #define MY_BOARD NUMMER
    nur hier gibt es diese Nummern nicht...)
    TIA

    primär: LinVDR 0.7 + 1.4.4 VDR + bigpatch + diverse Plugins
    sekundär: Baustelle: ctvdr_x.y, Kano*, SuSe
    HW: Abit BP6, 2x Celeron 500 (nur 1 aktiv), 2xDVBs TT 1.3, 512 MB


  • Hallo,
    Falls Du dies genauso geschrieben hast, dann fehlt zumindest in den letzten beiden Zeilen der Struktur der ; am Ende. Besser waere das so:

    Code
    void vhttpwwwabitcomtw_i449(struct biosinfo *b)
    {
    	b->addr_stat        = 0x46;
    	b->addr_date        = 0x47;
    	b->addr_hour        = 0x48;
    	b->addr_min         = 0x49;
    	b->addr_sec         = 0x4A;
    	b->addr_chk_h       = 0x6C; /* guessed */
    	b->addr_chk_l       = 0x6D;
    }


    Gruss
    HelAu

  • da fehlen ein paar Semikolone am Ende der Zeilen



    Du kannst auch die folgenden Zeilen in eine Textdatei schreiben:

    Code
    addr_stat = 0x46
    addr_date = 0x47
    addr_hour = 0x48
    addr_min = 0x49
    addr_sec = 0x4A
    addr_chk_h = 0x6C
    addr_chk_l = 0x6D


    und deren Namen an --configfile uebergeben. Dann brauchst du nichts neuzukompillieren.

  • Danke, das war es, nun lies es sich kompilieren:
    -------
    vdr:/usr/local/src/nvram-wakeup-0.90 # make ACTUALLY_WRITE=OFF
    size nvram-wakeup rtc time biosinfo guess
    text data bss dec hex filename
    36723 3796 536 41055 a05f nvram-wakeup
    1597 292 28 1917 77d rtc
    1425 276 28 1729 6c1 time
    4859 376 36 5271 1497 biosinfo
    10453 384 576 11413 2c95 guess
    -------
    nur beim Test schreibt er noch immer, dass das MB nicht unterstützt wird:
    -------
    vdr:/usr/local/src/nvram-wakeup-0.90 # ./nvram-wakeup -s $((`date +%s` + 10 * 60))
    nvram-wakeup: Your mainboard is currently not supported.
    nvram-wakeup: Please try determining the addresses and sending the following
    nvram-wakeup: information back to the maintainers:
    nvram-wakeup: - The addresses you found out (read README.mb)
    nvram-wakeup: - Mainboard vendor: <http://www.abit.com.tw>
    nvram-wakeup: - Mainboard type: i440BX-W83977 (BP6)
    nvram-wakeup: - Mainboard revision:
    nvram-wakeup: - BIOS vendor: Award Software International, Inc.
    nvram-wakeup: - BIOS version: 4.51 PG
    nvram-wakeup: - BIOS release: 04/20/00
    -----------
    ????
    TIA

    primär: LinVDR 0.7 + 1.4.4 VDR + bigpatch + diverse Plugins
    sekundär: Baustelle: ctvdr_x.y, Kano*, SuSe
    HW: Abit BP6, 2x Celeron 500 (nur 1 aktiv), 2xDVBs TT 1.3, 512 MB

  • Hurra
    es funktioniert...
    (nachdem mein ersten Versuche mit CVS wohl ins Leere liefen, hab ich einfach die nvram-wakeup-mb.c händisch vom cvs geholt und drüberkopiert und das reichte...allerdings erst nachdem ich draufkam, dass ein make clean fehlte....)
    Danke

    primär: LinVDR 0.7 + 1.4.4 VDR + bigpatch + diverse Plugins
    sekundär: Baustelle: ctvdr_x.y, Kano*, SuSe
    HW: Abit BP6, 2x Celeron 500 (nur 1 aktiv), 2xDVBs TT 1.3, 512 MB

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!