aboutsummaryrefslogtreecommitdiffstats
path: root/tools/firmware/rombios
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-07-08 09:52:01 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-07-08 09:52:01 +0100
commitf3e5b69ec8d1ae2a3621b4940d460f4c46bac1a3 (patch)
tree25df64c81281b54ceee120595fee543502331833 /tools/firmware/rombios
parent6456803dabb092076c6adb9e0fcb7b2161e7bfec (diff)
downloadxen-f3e5b69ec8d1ae2a3621b4940d460f4c46bac1a3.tar.gz
xen-f3e5b69ec8d1ae2a3621b4940d460f4c46bac1a3.tar.bz2
xen-f3e5b69ec8d1ae2a3621b4940d460f4c46bac1a3.zip
rombios: use explicit SS prefix for calculated on-stack array accesses.
The bcc compiler gets constant array offsets right but does all calculated array offsets via DS. Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Diffstat (limited to 'tools/firmware/rombios')
-rw-r--r--tools/firmware/rombios/rombios.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/firmware/rombios/rombios.c b/tools/firmware/rombios/rombios.c
index 4e0157c80f..f3363e9f94 100644
--- a/tools/firmware/rombios/rombios.c
+++ b/tools/firmware/rombios/rombios.c
@@ -3735,10 +3735,10 @@ cdrom_boot()
// Validity checks
if(buffer[0]!=0)return 4;
for(i=0;i<5;i++){
- if(buffer[1+i]!=read_byte(0xf000,&isotag[i]))return 5;
+ if(read_byte(get_SS(),&buffer[1+i])!=read_byte(0xf000,&isotag[i]))return 5;
}
for(i=0;i<23;i++)
- if(buffer[7+i]!=read_byte(0xf000,&eltorito[i]))return 6;
+ if(read_byte(get_SS(),&buffer[7+i])!=read_byte(0xf000,&eltorito[i]))return 6;
// ok, now we calculate the Boot catalog address
lba=buffer[0x4A]*0x1000000+buffer[0x49]*0x10000+buffer[0x48]*0x100+buffer[0x47];