[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: srm upgrade 6.7 -> 7.0
- From: janina afb net
- To: "'axp-list'" <axp-list redhat com>
- Subject: Re: srm upgrade 6.7 -> 7.0
- Date: Fri, 31 Dec 1999 10:29:17 -0500 (EST)
Maybe I'm too new to the world of Alpha's, but I'm missing something here.
What's the difference in your method over simply creating a bootable
DOS/Win floppy? If the point is to get thie update to boot, the latter
method worked on my AS200 just fine.
Janina Sajka, Director
Information Systems Research & Development
American Foundation for the Blind (AFB)
janina@afb.net
On Fri, 31 Dec 1999, Waibel Niki wrote:
> i just a want to inform the i upgraded the srm console on my good old
> alphastation255 (ev45/233).
>
> i thought that it could help me boot from the adaptec scsi controller
> - but it did not.
>
> anyway - because it was such a pain to get info about the upgrade process
> under srm / linux, i will explain it in this mail.
>
> if someone has a better solution - pls mail!
>
>
>
> (the info below is without warrenty - it worked on my machine)
>
>
>
> 1) get the latest firmware from
> ftp://ftp.digital.com/pub/DEC/Alpha/firmware/index.html
> (choose your machine on the left)
>
> 2) download the firware file (in my case it was `as255_v8_1.exe')
>
> 3) boot a linux
>
> 4) format a floppy (`fdformat /dev/fd0H1440')
> *dont* put a filesystem onto it - you dont need it!
>
> 5) put the firmware file onto the disk - starting with an offset of 512
> byte:
> `dd if=as255_v8_1.exe of=/dev/fd0 bs=512 seek=1'
>
> the next step is somehow a hack.
> maybe there is a better way to do it - pls inform me!
> you need to boot from the disk (directly in the srm console)
> - but currently there is no boot stuff on it.
>
> 6) create an empty (hex) bootblock:
> `dd if=/dev/zero bs=512 count=1 | xxd boot_block_empty'
>
> 7) determine the size of the firmware file
> `ls -la as255_v8_1.exe'
> divide that size by 512 (decimal) and calculate the hex value of it.
>
> 8) edit the file `boot_block_empty' you created in step 6.
> you have to jump to offset 1e0 (the line before the last line).
> the next is a bit complicated.
> you have to reverse the byte order of the hex value calculated in
> step 7 in a long int (8 byte - 64 bit) order.
> example:
> your value from step 7 was: a09 (= 0000 0000 0000 0a09)
> the value you have to enter is: 090a 0000 0000 0000
> hope everyone undersood...
>
> 9) edit the next long int
> enter: 0100 0000 0000 0000
> this is the offset the file starts.
>
> 10) make sure that the next long int (at offset 1f0) is:
> 0000 0000 0000 0000
> this is a flag - dont know what it is used for.
>
> 11) edit the last long int. this is a checksum.
> it is the addition of all long ints (8 bytes) before.
> pay attention on the REVERSE ORDER!!!
> in my example it is:
> 0a0a 0000 0000 0000
>
> 12) exit editor and write the bootblock back to disk:
> `xxd -r boot_block_empty | dd of=/dev/fd0H1440'
>
> 13) halt linux -> go to the srm console and boot from the created disk:
> `boot dva0'
>
> 14) the machine/srm seems to reboot - the the update menu should appear.
>
>
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[]