source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Src/Boot/BootPrint.asm@ 200

Last change on this file since 200 was 192, checked in by gregli@…, 13 years ago

Optimized away some long jumps, by rearranging routines within files, and file order within main.asm. Also added some 'relay' entry points for popular destinations, so that a short jump can go to an existing short jump and then on to the final destination, instead of using a long jump - clearly space over speed optimization. All 'relay's are limited to the UI code, and will not have an impact on IDE operational performance.

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
5SECTION .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;--------------------------------------------------------------------
16ALIGN JUMP_ALIGN
17BootPrint_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
24BootPrint_BootMenuPrint_FormatCSSIfromParamsInSSBP_Relay:
25 jmp short BootMenuPrint_FormatCSSIfromParamsInSSBP_Relay
26
27
28;--------------------------------------------------------------------
29; BootPrint_TryToBootFromDL
30; Parameters:
31; DL: Drive to boot from (translated, 00h or 80h)
32; DS: RAMVARS segment
33; Returns:
34; Nothing
35; Corrupts registers:
36; AX, SI, DI
37;--------------------------------------------------------------------
38ALIGN JUMP_ALIGN
39BootPrint_TryToBootFromDL:
40 push bp
41 mov bp, sp
42
43 mov ax, g_szHDD
44 test dl, dl
45 js SHORT .NotFDD
46 mov ax, g_szFDD
47.NotFDD:
48 push ax
49
50 call DriveXlate_ToOrBack
51 push dx ; Push untranslated drive number
52 call DriveXlate_ToOrBack
53 push dx ; Push translated drive number
54
55 mov si, g_szTryToBoot
56 jmp short BootPrint_BootMenuPrint_FormatCSSIfromParamsInSSBP_Relay
57
58
59
Note: See TracBrowser for help on using the repository browser.