--- a/core/isolinux.asm +++ b/core/isolinux.asm @@ -724,7 +761,34 @@ mov [DiskError],ah ; Save error code popad mov [DiskSys],ax ; Save system call number - dec byte [RetryCount] + +%if 0 + ; eject currently not supported - doesn't work anyway with + ; most BIOSes + + test byte [gfx_user_note],1 + jz .noeject + cmp byte [RetryCount],4 + ja .noeject + cmp byte [DiskError],0aah ; drive not ready + jnz .noeject + ; might have been cdrom eject, wait a bit + cmp byte [gfx_ok],0 + jz .noeject + push si + push di + push ax + mov si,err_not_ready + xor di,di + mov al,0 + call gfx_infobox + pop ax + pop di + pop si +%endif +.noeject: + + dec byte [RetryCount] jz .real_error push ax mov al,[RetryCount] @@ -825,6 +936,8 @@ crlf_msg db CR, LF null_msg db 0 +err_not_ready db 'CDROM drive not ready.', 0 + bios_cdrom_str db 'ETCD', 0 %ifndef DEBUG_MESSAGES bios_cbios_str db 'CHDD', 0