source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectPrint.asm@ 128

Last change on this file since 128 was 120, checked in by Tomi Tilli, 14 years ago

Changes to XTIDE Universal BIOS:

  • Display library now gets initialized.
  • Small optimizations.
  • Something is still broken.
File size: 2.2 KB
RevLine 
[88]1; Project name : XTIDE Universal BIOS
[3]2; Description : Functions for printing drive detection strings.
3
4; Section containing code
5SECTION .text
6
7;--------------------------------------------------------------------
8; Prints BIOS name and segment address where it is found.
9;
10; DetectPrint_RomFoundAtSegment
11; Parameters:
12; Nothing
13; Returns:
14; Nothing
15; Corrupts registers:
[120]16; AX, SI, DI
[3]17;--------------------------------------------------------------------
18DetectPrint_RomFoundAtSegment:
[88]19 push bp
[97]20 mov bp, sp
[3]21 mov si, g_szRomAt
[88]22 ePUSH_T ax, ROMVARS.szTitle ; Bios title string
23 push cs ; BIOS segment
24 jmp BootMenuPrint_FormatCSSIfromParamsInSSBP
[3]25
26
27;--------------------------------------------------------------------
[97]28; DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP
[3]29; Parameters:
[88]30; CS:AX: Ptr to "Master" or "Slave" string
[3]31; CS:BP: Ptr to IDEVARS
32; Returns:
33; Nothing
34; Corrupts registers:
[120]35; AX, SI, DI
[3]36;--------------------------------------------------------------------
[97]37DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP:
[88]38 push bp
39 mov si, [cs:bp+IDEVARS.wPort]
40 mov bp, sp
41 push ax ; Push "Master" or "Slave"
42 push si ; Push port number
[3]43 mov si, g_szDetect
[88]44 jmp BootMenuPrint_FormatCSSIfromParamsInSSBP
[3]45
46
47;--------------------------------------------------------------------
[98]48; DetectPrint_DriveNameFromBootnfoInESBX
[3]49; Parameters:
50; ES:BX: Ptr to BOOTNFO (if drive found)
51; Returns:
52; Nothing
53; Corrupts registers:
[88]54; AX, SI
[3]55;--------------------------------------------------------------------
[98]56DetectPrint_DriveNameFromBootnfoInESBX:
[88]57 push di
58 push bx
59
[3]60 lea si, [bx+BOOTNFO.szDrvName]
[88]61 mov bx, es
62 CALL_DISPLAY_LIBRARY PrintNullTerminatedStringFromBXSI
63 CALL_DISPLAY_LIBRARY PrintNewlineCharacters
64
65 pop bx
66 pop di
67 ret
68
[98]69
70;--------------------------------------------------------------------
71; DetectPrint_DriveNotFound
72; Parameters:
73; Nothing
74; Returns:
75; Nothing
76; Corrupts registers:
77; AX, SI
78;--------------------------------------------------------------------
79DetectPrint_DriveNotFound:
[3]80 mov si, g_szNotFound
[98]81 jmp BootMenuPrint_NullTerminatedStringFromCSSIandSetCF
Note: See TracBrowser for help on using the repository browser.