Subject: Re: [E3-hacking] e3 won't boot

From: Matt Callow <[email-masked]>
Date: Sun, 19 Feb 2006 14:48:29 +0000

> 
> From: "J. Snell" <[email-masked]>
> Date: 2006/02/19 Sun PM 01:57:43 GMT
> To: "Discussion of the Amstrad E3 emailer hardware/software"
> 	<[email-masked]>
> Subject: Re: [E3-hacking] e3 won't boot
> 
> eraseflash erases 16K pages, so it looks like you've erased more than you read.

I guess it must be something like that. I'm just not sure what.
There's a typo in my  earlier post I did read 16k before I erased the block:

./pbltool readflash 0x4000 0x4000 block2

I've started reading more of the flash using pbltool and I have found so far:

0x00400000 - empty
0x00404000 - contains MEM, PARAMS, LDR
0x00408000 - empty 
0x0040C000 - empty
0x00410000 - empty
0x00414000 - empty
0x00418000 - empty
0x0041C000 - empty
0x00420000 - empty
0x00424000 - start of linux

this matches with the original boot message I save (before I broke it)

PBL 32MB NAND
0MB.-->MEMv01.00.002,CopyLim=00220000h,CodeEnd=01400000h-->PBL......1MB.......2MB*

System module loader - LDR V1.5 Build:0008 Assert
Mod scan 10010100 to 10230100
MEM - 10024000 (flash 00404000)
PARMS - 10024400 (flash 00404400)
LDR - 10024800 (flash 00404800)
LINUX - 10044000 (flash 00424000)
num modules: 4
...

So, the only thing I can think of is either I've erased 0x00408000 to 0x0042FFFF or I need to tag the page 0x00408000 in some way.
Can anyone confirm the contents of 0x00408000 to 0x0042FFFF on a working e3?

> 
> On 2/19/06, Matt Callow <[email-masked]> wrote:
> > Hi all,
> >
> > I've been reading this list with interest for few months. Finally decided to buy an e3 this week, and I've broken it already! I've got it hooked up to my PC serial port and got pbltool working. Then i tried to get a shell prompt by modifying the init params in the 2nd block of the flash as follows:
> >
> > ./pbltool readflash 0x4000 0x400 block2
> > cp block2 block2.mod
> > <modify params in block2.mod>
> > ./pbltool eraseflash 0x4000 1
> > ./pbltool writeflash 0x4000 block2.mod
> >
> > The e3 now fails to boot, so I tried copying back the original block2:
> > ./pbltool eraseflash 0x4000 1
> > ./pbltool writeflash 0x4000 block2
> >
> > The e3 still does not boot! When I hook up a terminal to see the boot messages I get:
> >
> > Amstrad Delta - PBL V4.9 Build:1311 Assert Debug ICE
> > PBL 32MB NAND
> > 0MB.-->MEMv01.00.002,CopyLim=00220000h,CodeEnd=01400000h-->PBL......1MB.......2MB*
> >
> > and then it hangs.
> >
> > Any idea what I've done wrong?
> >
> > Matt
> >
> >
> >
> >
> > _______________________________________________
> > e3-hacking mailing list
> > [email-masked]
> > http://www.earth.li/cgi-bin/mailman/listinfo/e3-hacking
> >
> 
> _______________________________________________
> e3-hacking mailing list
> [email-masked]
> http://www.earth.li/cgi-bin/mailman/listinfo/e3-hacking
>

---

From: Cliff Lawson <[email-masked]>
Date: Mon, 20 Feb 2006 09:24:38 -0000

Umm, silly question but did your "<modify params in block2.mod>" involve
fixing up the CRC? If it didn't the PBL won't recognise it as valid and it
looks like you erased the other MEM/PARMS/LDR from the flash so it has
nothing to fallback to.

Cliff

> -----Original Message-----
> From: Matt Callow [mailto:[email-masked]]

This e-mail and any attachments are confidential and intended exclusively for the addressee. If you are not the intended recipient please delete it from your system and notify the sender immediately. This message is attributed to the sender and may not necessarily reflect the views of Amstrad Plc or its subsidiaries.

For further information on Amstrad Plc please visit our website: www.amstrad.com

Amstrad Plc.
Brentwood House
169 Kings Road
Brentwood
Essex CM14 4EF
Registered in England : No. 955321

---

From: Matt Callow <[email-masked]>
Date: Mon, 20 Feb 2006 11:45:06 +0000

> 
> From: Cliff Lawson <[email-masked]>
> Date: 2006/02/20 Mon AM 09:24:38 GMT
> To: 'Discussion of the Amstrad E3 emailer hardware/software'
> 	<[email-masked]>
> Subject: RE: [E3-hacking] e3 won't boot
> 
There is a chance that I got the checksum wrong, but I thought that replacing the original block would get me back to a booting machine.

But, on further investigation, it seems like I've erased the next flash block as well!

Scanning from  0x00404000 I find 3 PBL blocks:
MEM (length 0x100)
PARAMS (length 0x184)
LDR (length 0x6648)

So that means the LDR goes into the next flash block, but on my machine 0x00408000 to 0x0040BFFF has been erased.

Any chance that someone could send me an image of the 16k that I seem to have erased?

Matt