Last change
on this file since 282 was 241, checked in by gregli@…, 13 years ago |
Space optimizations in the Boot Menu and BootInfo routines, taking advantage of nested %s. Optimization in the init of RamVars to avoid writing the signature twice. Preparing for addition of serial floppy support, starting to break the assumption that our drives are always 80h or higher.
|
File size:
1.4 KB
|
Line | |
---|
1 | ; Project name : XTIDE Universal BIOS
|
---|
2 | ; Description : Functions for printing boot related strings.
|
---|
3 |
|
---|
4 | ; Section containing code
|
---|
5 | SECTION .text
|
---|
6 |
|
---|
7 | ;--------------------------------------------------------------------
|
---|
8 | ; BootPrint_FailedToLoadFirstSector
|
---|
9 | ; Parameters:
|
---|
10 | ; AH: INT 13h error code
|
---|
11 | ; Returns:
|
---|
12 | ; Nothing
|
---|
13 | ; Corrupts registers:
|
---|
14 | ; AX, CX, SI, DI
|
---|
15 | ;--------------------------------------------------------------------
|
---|
16 | ALIGN JUMP_ALIGN
|
---|
17 | BootPrint_FailedToLoadFirstSector:
|
---|
18 | push bp
|
---|
19 | mov bp, sp
|
---|
20 | eMOVZX cx, ah
|
---|
21 | push cx ; Push INT 13h error code
|
---|
22 | mov si, g_szReadError
|
---|
23 |
|
---|
24 | jmp short BootMenuPrint_FormatCSSIfromParamsInSSBP_Relay
|
---|
25 |
|
---|
26 |
|
---|
27 | ;--------------------------------------------------------------------
|
---|
28 | ; BootPrint_TryToBootFromDL
|
---|
29 | ; Parameters:
|
---|
30 | ; DL: Drive to boot from (translated, 00h or 80h)
|
---|
31 | ; DS: RAMVARS segment
|
---|
32 | ; Returns:
|
---|
33 | ; Nothing
|
---|
34 | ; Corrupts registers:
|
---|
35 | ; AX, SI, DI
|
---|
36 | ;--------------------------------------------------------------------
|
---|
37 | ALIGN JUMP_ALIGN
|
---|
38 | BootPrint_TryToBootFromDL:
|
---|
39 | push bp
|
---|
40 | mov bp, sp
|
---|
41 |
|
---|
42 | mov ax, g_szHDD
|
---|
43 | test dl, dl
|
---|
44 | js SHORT .NotFDD
|
---|
45 | mov ax, g_szFDD
|
---|
46 | .NotFDD:
|
---|
47 | push ax
|
---|
48 |
|
---|
49 | call DriveXlate_ToOrBack
|
---|
50 | push dx ; Push untranslated drive number
|
---|
51 | call DriveXlate_ToOrBack
|
---|
52 | push dx ; Push translated drive number
|
---|
53 |
|
---|
54 | mov si, g_szTryToBoot
|
---|
55 | jmp short BootMenuPrint_FormatCSSIfromParamsInSSBP_Relay
|
---|
56 |
|
---|
57 |
|
---|
58 |
|
---|
Note:
See
TracBrowser
for help on using the repository browser.