source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19hLate.asm@ 224

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

Changes to XTIDE Universal BIOS:

  • XTIDE mod should now be supported (untested).
  • Interrupt Service Routine no longer requires variable from RAMVARS.
  • Some small improvements.
File size: 1.2 KB
RevLine 
[90]1; Project name : XTIDE Universal BIOS
2; Description : Late initialization for XT builds.
3
4; Section containing code
5SECTION .text
6
7;--------------------------------------------------------------------
8; Int19hLate_InitializeInt19h
9; Parameters:
10; ES: BDA segment
11; Returns:
12; Nothing
13; Corrupts registers:
14; BX, SI
15;--------------------------------------------------------------------
16ALIGN JUMP_ALIGN
17Int19hLate_InitializeInt19h:
[152]18 mov bx, BIOS_BOOT_LOADER_INTERRUPT_19h
[90]19 mov si, HandlerForLateInitialization
20 jmp Interrupts_InstallHandlerToVectorInBXFromCSSI
21
22
23;--------------------------------------------------------------------
24; HandlerForLateInitialization
25; Parameters:
26; Nothing
27; Returns:
28; Never returns
29;--------------------------------------------------------------------
30ALIGN JUMP_ALIGN
31HandlerForLateInitialization:
32 LOAD_BDA_SEGMENT_TO es, ax
[152]33 call Initialize_ShouldSkip ; Skip initialization?
[90]34 jnz SHORT .SkipInitialization
[152]35 call Initialize_AndDetectDrives ; Installs boot menu loader
36 int BIOS_BOOT_LOADER_INTERRUPT_19h
[90]37.SkipInitialization:
[152]38 call RamVars_Initialize ; RAMVARS must be initialized even for simple boot loader
39 int BIOS_BOOT_LOADER_INTERRUPT_19h ; Call default system boot loader
Note: See TracBrowser for help on using the repository browser.