1
0
Fork 0
mirror of https://gitlab.com/bztsrc/bootboot.git synced 2023-02-13 20:54:32 -05:00

Added failsafes for segments due to buggy BIOSes

This commit is contained in:
bzt 2022-07-11 20:30:20 +02:00
parent 87d3316b67
commit da7f75804e
4 changed files with 12 additions and 2 deletions

BIN
dist/bootboot.bin vendored

Binary file not shown.

File diff suppressed because one or more lines are too long

View file

@ -3,7 +3,7 @@
#define sizeof_boot_bin 512 #define sizeof_boot_bin 512
extern unsigned char binary_boot_bin[512]; extern unsigned char binary_boot_bin[512];
#define sizeof_bootboot_bin 13312 #define sizeof_bootboot_bin 13312
extern unsigned char binary_bootboot_bin[9291]; extern unsigned char binary_bootboot_bin[9299];
#define sizeof_bootboot_efi 103614 #define sizeof_bootboot_efi 103614
extern unsigned char binary_bootboot_efi[46348]; extern unsigned char binary_bootboot_efi[46348];
#define sizeof_bootboot_img 35344 #define sizeof_bootboot_img 35344

View file

@ -873,6 +873,8 @@ prot_diefunc:
prot_realmode prot_realmode
USE16 USE16
real_diefunc: real_diefunc:
xor ax, ax
mov ds, ax
push si push si
real_print loader.name real_print loader.name
real_print panic real_print panic
@ -2149,7 +2151,11 @@ end if
mov di, 0A000h mov di, 0A000h
mov dword [di], 'VBE2' mov dword [di], 'VBE2'
;this call requires a big stack ;this call requires a big stack
push ds
push es
int 10h int 10h
pop es
pop ds
cmp ax, 004fh cmp ax, 004fh
je @f je @f
.viderr: mov si, novbe .viderr: mov si, novbe
@ -2189,7 +2195,11 @@ end if
push cx push cx
push si push si
push di push di
push ds
push es
int 10h int 10h
pop es
pop ds
pop di pop di
pop si pop si
pop cx pop cx