Hello all,

With A LOT of empirical testing,  I have gotten MILO to work from the
UDB/Multia flash (finally!).

There were a couple of snags along the way which I will summarize:

1.      The SROM requires a 64 byte flash image header and will accept the
same header as the NoName machine.

2.      The SROM requires that the flash ROM image be exactly a multiple of
256K and have a final byte which is the checksum of the all the preceding
bytes absent the header.   The algorithm is:

                        unsigned char checksum;

                        checksum = flash_image[0];
                        for( ii = 1; ii < flash_image_size; ii++ )
                        {
                                left_rotate_1_bit( checksum );
                                checksum += flash_image[ii];
                        } 
                return checksum;

3.      The SROM apparently expects the first 2 flash ROMs to be used as a
single entity ("device" srmflash).  When I was trying to blast a <256K MILO
which worked on the failsafe floppy, the LED in the back would flash an
undocumented (that I could find anyway) error code.  As soon as I used both
flash ROMs (even though the second was all zeros (except for the final
checksum byte)), it worked!

OK, I am now ready to follow the recipe as recommended by Eric:

>>Do you have a working milo bootloader?  If so all of the hard lifting
>>has been done and you only need to rearrange and test the code.
>>
>>The boot order for alpha should be:
>>SROM (which does memory setup) -> (linuxBIOS code in flash rom) -> Linux
kernel.
>>
>>The linuxBIOS code will need to do the following things:
>>load palcode. 
>>Setup some devices??
>>jump to linux.
>>
>>What you will end up with is pretty much milo on steroids. :)

So it's off to study the boot process to see where surgery is needed.

Regards,

Bill

Reply via email to