Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Topic Options
#158166 - 30/04/2003 11:20 Can empeg boot another OS ?
amold
journeyman

Registered: 31/12/2000
Posts: 78
I want to try my hand at some ARM programming. Since the empeg is the only ARM device I have, I thought about playing with it.
So, the question is: Is there any technical reason that I would not be boot a different OS image in the empeg ?
I don't know much about embedded systems, so pardon me if the answer is obvious

Top
#158167 - 30/04/2003 11:24 Re: Can empeg boot another OS ? [Re: amold]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
I can't imagine any reason, but there may be specific hardware on the empeg that's unsupported in other OSes. It might even be unspported enough to not boot. But there's no reason I can see you couldn't put it there.
_________________________
Bitt Faulk

Top
#158168 - 30/04/2003 11:28 Re: Can empeg boot another OS ? [Re: amold]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31572
Loc: Seattle, WA
I don't know much about embedded systems, so pardon me if the answer is obvious
The answer is "you'd have to know a lot about embedded systems to do it".

You can't just copy winCE onto the thing and expect it to work. You can't just copy Linux or even Arm-Debian onto the thing and expect it to work. The operating system that's currently on there is a heavily customized version of Arm-Debian which has been deliberately altered to match the empeg's specific hardware configuration. No existing version of any operating system will run on it, it has to be heavily modified before you can even get it working at all.

Maybe you could hack CE to work on it somehow, but like I said, you'd have to know a lot about embedded systems and about the player hardware before even attempting it.
_________________________
Tony Fabris

Top
#158169 - 30/04/2003 11:37 Re: Can empeg boot another OS ? [Re: amold]
Chimaera
enthusiast

Registered: 10/09/2002
Posts: 285
Loc: DFW Area, Texas, US
HI,

the first thing to remember is that the Empeg is a piece of custom hardware, which has a custom version of linux that runs on it and includes custom written drivers for may of its components (DSP, screen etc).

While it is possible that "some other ARM OS" may boot on the Empeg, it is hard to see what advantage that would be as the chances are none of the features of the Empeg would work without significant hacking to the "other OS" and unless this other OS was able to read EXT2 disks then you wouldn't even be able to do anything sensible with the hard disk.

I would think that unless you are pretty familiar with both the Linux kernal and this other OS then this is probably something that you probably don't want to "just try to see what happens" as you would not be sure if any physical damage could occur that may make your Empeg unusable.
_________________________
Mark. [blue]MKI, MKII & MKIIa, all Blue, and all Mine![/blue]

Top
#158170 - 30/04/2003 11:47 Re: Can empeg boot another OS ? [Re: Chimaera]
amold
journeyman

Registered: 31/12/2000
Posts: 78
I guess what I was getting at was whether there was anything in the hardware (boot ROM ?) that checks the kernel (signature, os type or whatever) before allowing it to boot.

I know most of the hardware won't work.

As for why, I like pain


Top
#158171 - 30/04/2003 11:53 Re: Can empeg boot another OS ? [Re: amold]
Chimaera
enthusiast

Registered: 10/09/2002
Posts: 285
Loc: DFW Area, Texas, US
As far as I know there is nothing in the boot rom that checks signatures, it just jumps to the correct location in flash (10000 I think) and starts executing from there. I guess the big things to make sure of are that you don't write to areas of flash or memory mapped hardware accidentally, as it would be a shame if you overwrote the boot area of the flash (assuming it isn't potected) as then you couldn't even put an Empeg image back on.
_________________________
Mark. [blue]MKI, MKII & MKIIa, all Blue, and all Mine![/blue]

Top
#158172 - 30/04/2003 11:57 Re: Can empeg boot another OS ? [Re: Chimaera]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
It is supposed to be protected. You're supposed to have to short a pin or something in order to write to it. But I'm not brave enough to test it.
_________________________
Bitt Faulk

Top
#158173 - 30/04/2003 12:00 Re: Can empeg boot another OS ? [Re: wfaulk]
Chimaera
enthusiast

Registered: 10/09/2002
Posts: 285
Loc: DFW Area, Texas, US
I would assume it was protected too, and I am sure knowing how well Cambridge test things that they have made sure it works.

It is just that one rare case when someone puts on a new OS without knowing how it works, and he has the only board in existance with a solder bridge between those pins
_________________________
Mark. [blue]MKI, MKII & MKIIa, all Blue, and all Mine![/blue]

Top
#158174 - 30/04/2003 12:01 Re: Can empeg boot another OS ? [Re: wfaulk]
tonyc
carpal tunnel

Registered: 27/06/1999
Posts: 7058
Loc: Pittsburgh, PA
But I'm not brave enough to test it.
That makes about 2,640 of us.
_________________________
- Tony C
my empeg stuff

Top
#158175 - 30/04/2003 12:08 Re: Can empeg boot another OS ? [Re: Chimaera]
Roger
carpal tunnel

Registered: 18/01/2000
Posts: 5682
Loc: London, UK
There is nothing in the boot ROM that checks the signature of the kernel image. So, there is no particular reason why you couldn't program any other OS into the flash.

However, as others have said, this "other OS" would need specific support for the hardware found in the empeg. Some of this hardware (serial UARTs, IIRC) is common to all StrongARM SA-1100 chips, so should be supported by any OS that supports the StrongARM. Some of it isn't (the DSP and DACs, in particular), and will need specific driver support.

If you say that you "don't know much about embedded development", then I think that this might be out of your league currently, and you might want to set your sights a little lower. You might find that hacking on the existing kernel (as other people have done, witness Hijack) will satisfy your urges.

As for the boot ROM; yes, the first chunk of the boot ROM is write-protected, and cannot be overwritten without putting a jumper across the prot-link.

Edit: I'll clarify that. I believe that the kernel image might be checksummed to verify that it's valid. It isn't, however, digitally signed in any way.



Edited by Roger (30/04/2003 12:10)
_________________________
-- roger

Top
#158176 - 30/04/2003 12:14 Re: Can empeg boot another OS ? [Re: Roger]
Chimaera
enthusiast

Registered: 10/09/2002
Posts: 285
Loc: DFW Area, Texas, US
I assume most of that was directed towards Amold, with only

As for the boot ROM; yes, the first chunk of the boot ROM is write-protected, and cannot be overwritten without putting a jumper across the prot-link
being directed to me?
_________________________
Mark. [blue]MKI, MKII & MKIIa, all Blue, and all Mine![/blue]

Top
#158177 - 01/05/2003 03:20 Re: Can empeg boot another OS ? [Re: Chimaera]
Roger
carpal tunnel

Registered: 18/01/2000
Posts: 5682
Loc: London, UK
Yeah, I was just going to reply with the prot-link thing, but thought I'd better add some other comments about feasibility, which are directed at anybody who fancies giving it a go -- it's not gonna be easy.
_________________________
-- roger

Top
#158178 - 01/05/2003 07:54 Re: Can empeg boot another OS ? [Re: Roger]
altman
carpal tunnel

Registered: 19/05/1999
Posts: 3457
Loc: Palo Alto, CA
It's not checksummed by us - however, as it's a zImage, the linux decompressor has code in there which will moan if the image is corrupt.

Hugo

Top
#158179 - 02/05/2003 00:09 Re: Can empeg boot another OS ? [Re: Roger]
jane
enthusiast

Registered: 10/10/2000
Posts: 350
Loc: Copenhagen SW, Denmark
I think people are being very negative here...
I'm prettu sure it's not very difficult to run another OS from the Empeg Hardware.

What you will need:
- A system that supports the Strongarm SA-1100, mem etc
- A driver for the IDE disks
- A driver for the serial port

- Knowledge on how to install your kernel

That should be enough. You could from there work your way through developing drivers for all the other hardware...

(Actually, you probably don't need the IDE driver either, if you develop your own OS that can reside in the flash space designed to hold the kernel)

There exists coding examples on how to use the screen without any (linux) kernel changes, (I think) I do not know how difficult it is to use the front-panel buttons, but the code is open.

But... Two points I agree on:
1) This should probably not be your first attempt at embedded programming.
2) I can see no reason whatsoever to use another OS than linux. It is much more "hacker friendly" and much more "installer friendly" than anything you could come up with yourself.

PS. Also remember that the empeg (I assume) does not have a BIOS the same way as a normal x86 PC, so writing a "stand alone kernel" is more work.

Marius (Escort Cab + 2CV)

Top