Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Question: "wrong plugin?" appears when running firmware_flash.rock
From: joe_at_gergis.net
Date: 2003-12-06


Greetings, fellow Archos users!

First let me give the specs on my JB so that I can attempt to ask this
intelligently.

My Archos Jukebox is originally an Archos Jukebox Recorder, 6GB, modified by
funmp3players.com with a Hitachi 20GB drive. I have previously upgraded the
firmware many times, and am currently running version 2.1 after an unsuccessful
attempt to flash (not a bad burn, it never even GOT to the flash part.)

The HW Info:

ROM: 1.18
MASK: 0X0002
USB: Negative
ATA: 0x300, Master
PR: Negative
Flash: M=BF, D=D6
ROM CRC: 0x222F V1

Okay. The procedure was to copy the .rockbox directory, which contains all the
rocks, and the new ajbrec.ajz to the root drive. I did this. I then verified
it's flashable by reviewing the HW info above. It seems to be since the Flash
ROM is returning BF and D6 as results.

I backed up the existing firmware, offloaded them to the computer, and loaded
the necessary .bin files to the root. The fact that I was able to do so
indicates that Rockbox 2.1 was active and running. Played a few files, even
loaded 2.0 and ROLO'ed to it to verify ROLO works. Yup.

Reboot into 2.1. Goto the .rockbox/rocks directory. Run the
firmware_flash.rock .... and it goes nowhere. What pops up is a small window
that reports: Wrong plugin.

Now, I am SURE I pulled the correct version for my recorder; I verified this
three times.

Being a software developer I played some hookey from doing real work this
morning and downloaded the latest tarball so I could investigate what was going
on. Seems as though the firmware_flash.c contains a method CheckPlatform,
which verifies a version ID. I see the version for recorders is between 123
and 128. I am unsure if this is checking against ROM version. If that's so,
is there anything I can do SAFELY since I don't really want to tinker with
building a new firmware_flash.rock without knowing what I am doing? Is this,
in fact, the code that could be causing the problem?

/* test if the version number is consistent with the platform */
bool CheckPlatform(int platform_id, UINT16 version)
{
    if (version == 123)
    { /* it can be a FM or V2 recorder */
        return (platform_id == ID_FM || platform_id == ID_REC_V2);
    }
    else if ((version >= 124 && version <= 128) || version == 200)
    { /* for my very first firmware, I foolishly changed it to 200 */
        return (platform_id == ID_RECORDER);
    }
    else if (version == 0 || (version >= 300 && version <= 506))
    { /* for very old players, I've seen zero */
        return (platform_id == ID_PLAYER);
.
.
.

Thank you VERY much for your help.

Regards,

Joe



Page was last modified "Jan 10 2012" The Rockbox Crew
aaa