Changeset 392 in xtideuniversalbios
- Timestamp:
- Apr 17, 2012, 2:42:54 PM (13 years ago)
- google:author:
- aitotat@gmail.com
- Location:
- trunk/XTIDE_Universal_BIOS
- Files:
-
- 16 added
- 2 deleted
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Inc/BootMenu.inc
r376 r392 30 30 BOOT_MENU_HEIGHT_WITHOUT_ITEMS EQU (BOOT_MENU_TITLE_LINES + BOOT_MENU_INFO_LINES + BOOT_MENU_SEPARATOR_LINES_PLUS_SHADOW) 31 31 MENU_SCREEN_BOTTOM_LINES EQU 1 32 33 ; Hotkeys34 ROM_BOOT_HOTKEY_SCANCODE EQU 42h ; F835 32 36 33 -
trunk/XTIDE_Universal_BIOS/Inc/BootVars.inc
r376 r392 30 30 ; Segment is always 0000h, same as BDA segment 31 31 struc BOOTVARS 32 resb 7C00h33 .rgbAtaInfo: ; 7C00h, ATA Information for drive detection34 .rgbBootSect resb 512 ; 7C00h, Boot sector35 resb 256 ; Boot Menu stack32 resb 7C00h 33 .rgbAtaInfo: ; 7C00h, ATA Information for drive detection 34 .rgbBootSect resb 512 ; 7C00h, Boot sector 35 resb 256 ; Boot Menu stack 36 36 .rgbMnuStack: 37 .dwPostStack resb 4 ; POST stack pointer when entering INT 19h 38 .rgBootNfo: ; Array containing BOOTNFO structs 37 .dwPostStack resb 4 ; POST stack pointer when entering INT 19h 38 .hotkeyVars resb HOTKEYVARS_size 39 .rgBootNfo: ; Array containing BOOTNFO structs 39 40 endstruc 41 42 struc HOTKEYVARS 43 .bScancode resb 1 ; Function hotkey scancode 44 .bFlags resb 1 ; Must be just before .bHddLetter! 45 .wHddAndFddLetters: 46 .bHddLetter resb 1 ; Hard Drive letter hotkey (upper case) 47 .bFddLetter resb 1 ; Floppy Drive letter hotkey (upper case) 48 endstruc 49 50 ; Bit defines for HOTKEYVARS.bFlags 51 FLG_HOTKEY_HD_FIRST EQU (1<<0) ; First try to boot from HDD, then FDD 52 40 53 41 54 -
trunk/XTIDE_Universal_BIOS/Inc/RomVars.inc
r380 r392 37 37 .wBootTimeout resb 2 ; Boot Menu selection timeout in system timer ticks 38 38 .bIdeCnt resb 1 ; Number of available IDE controllers 39 .bBootDrv resb 1 ; Boot Menu default drive39 .bBootDrv resb 1 ; Default drive to boot from 40 40 .bMinFddCnt resb 1 ; Minimum number of Floppy Drives 41 41 .bStealSize resb 1 ; Number of 1kB blocks stolen from 640kB base RAM -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH15h_HSize.asm
r376 r392 81 81 ; CX 82 82 ;-------------------------------------------------------------------- 83 %ifdef MODULE_BOOT_MENU 83 84 AH15h_GetSectorCountFromForeignDriveToDXAX: 84 85 mov ah, GET_DRIVE_PARAMETERS 85 86 call Int13h_CallPreviousInt13hHandler 86 87 jmp SHORT ConvertAH08hReturnValuesToSectorCount 88 %endif 87 89 88 90 AH15h_GetSectorCountToBXDXAX: -
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h.asm
r386 r392 22 22 23 23 ;-------------------------------------------------------------------- 24 ; INT 19h handler that properly reboots the computer when25 ; INT 19h is called.26 ;27 ; Int19h_ResetHandler28 ; Parameters:29 ; Nothing30 ; Returns:31 ; Never returns (reboots computer)32 ;--------------------------------------------------------------------33 Int19h_ResetHandler:34 mov ax, BOOT_FLAG_WARM ; Skip memory tests35 jmp Reboot_ComputerWithBootFlagInAX36 37 38 ;--------------------------------------------------------------------39 24 ; Int19h_BootLoaderHandler 40 25 ; Parameters: … … 44 29 ;-------------------------------------------------------------------- 45 30 Int19h_BootLoaderHandler: 46 sti 47 ; Install INT 19h handler for proper reboot 48 LOAD_BDA_SEGMENT_TO es, ax 49 mov al, BIOS_BOOT_LOADER_INTERRUPT_19h ; INT 19h interrupt vector offset 50 mov si, Int19h_ResetHandler ; INT 19h handler to reboot the system 51 call Interrupts_InstallHandlerToVectorInALFromCSSI 52 call Initialize_AndDetectDrives ; Installs new boot menu loader 53 ; Fall to .PrepareStackAndSelectDriveFromBootMenu 31 sti ; Allow timer interrupts 32 LOAD_BDA_SEGMENT_TO es, ax ; Load BDA segment (zero) to ES 33 ; Fall to .PrepareBootLoaderStack 34 54 35 55 36 ;-------------------------------------------------------------------- 56 ; .PrepareStackAndSelectDriveFromBootMenu 37 ; Drive detection and boot menu use lots of stack so it is 38 ; wise to relocate stack. Otherwise something important from 39 ; interrupt vectors are likely corrupted, likely our own DPTs if 40 ; they are located to 30:0h. 41 ; 42 ; .PrepareBootLoaderStack 57 43 ; Parameters: 58 44 ; ES: BDA and interrupt vector segment (zero) … … 60 46 ; Never returns (loads operating system) 61 47 ;-------------------------------------------------------------------- 62 .Prepare StackAndSelectDriveFromBootMenu:48 .PrepareBootLoaderStack: 63 49 STORE_POST_STACK_POINTER 64 50 SWITCH_TO_BOOT_MENU_STACK 65 51 ; Fall to .InitializeDisplay 66 52 53 67 54 ;-------------------------------------------------------------------- 68 55 ; .InitializeDisplay 69 56 ; Parameters: 70 ; Nothing57 ; ES: BDA and interrupt vector segment (zero) 71 58 ; Returns: 72 59 ; Never returns (loads operating system) … … 79 66 int BIOS_VIDEO_INTERRUPT_10h 80 67 .InitializeDisplayLibrary: 81 call BootMenuPrint_InitializeDisplayContext 82 ; Fall to .SelectDriveToBootFrom 68 call DetectPrint_InitializeDisplayContext 69 ; Fall to .InitializeBiosAndDetectDrives 70 83 71 84 72 ;-------------------------------------------------------------------- 85 ; . SelectDriveToBootFrom73 ; .InitializeBiosAndDetectDrives 86 74 ; Parameters: 87 ; Nothing 75 ; ES: BDA and interrupt vector segment (zero) 76 ; Returns: 77 ; DS: RAMVARS segment 78 ;-------------------------------------------------------------------- 79 call Initialize_AndDetectDrives 80 ; Fall to SelectDriveToBootFrom 81 82 83 ;-------------------------------------------------------------------- 84 ; SelectDriveToBootFrom 85 ; Parameters: 86 ; DS: RAMVARS segment 87 ; ES: BDA and interrupt vector segment (zero) 88 88 ; Returns: 89 89 ; Never returns (loads operating system) 90 90 ;-------------------------------------------------------------------- 91 .SelectDriveToBootFrom: 92 call RamVars_GetSegmentToDS 91 SelectDriveToBootFrom: 92 call HotkeyBar_UpdateDuringDriveDetection 93 93 94 %ifdef MODULE_BOOT_MENU 94 cmp WORD [cs:ROMVARS.wfDisplayBootMenu], BYTE 0 95 jne SHORT ProcessBootMenuSelectionsUntilBootableDriveSelected ; Display boot menu 95 mov di, BOOTVARS.hotkeyVars+HOTKEYVARS.bScancode 96 cmp BYTE [es:di], BOOT_MENU_HOTKEY_SCANCODE 97 jne SHORT .DoNotDisplayBootMenu 98 99 ; Stop blinking the Boot Menu hotkey and display menu 100 mov BYTE [es:di], 0 101 call HotkeyBar_DrawToTopOfScreen 102 call BootMenu_DisplayAndStoreSelectionAsHotkey 103 .DoNotDisplayBootMenu: 96 104 %endif 97 ; Fall to BootFromDriveAthenTryDriveC 105 106 ; Check if ROM boot (INT 18h) wanted 107 cmp BYTE [es:BOOTVARS.hotkeyVars+HOTKEYVARS.bScancode], ROM_BOOT_HOTKEY_SCANCODE 108 je SHORT JumpToBootSector_or_RomBoot ; CF clear so ROM boot 109 110 ; Try to boot from Primary boot drive (00h by default) 111 call HotkeyBar_GetPrimaryBootDriveNumberToDL 112 call TryToBootFromPrimaryOrSecondaryBootDevice 113 jc SHORT JumpToBootSector_or_RomBoot 114 115 ; Try to boot from Secondary boot device (80h by default) 116 call HotkeyBar_GetSecondaryBootDriveNumberToDL 117 call TryToBootFromPrimaryOrSecondaryBootDevice 118 119 %ifdef MODULE_BOOT_MENU 120 ; Force Boot Menu hotkey to display boot menu 121 mov BYTE [es:BOOTVARS.hotkeyVars+HOTKEYVARS.bScancode], BOOT_MENU_HOTKEY_SCANCODE 122 jnc SHORT SelectDriveToBootFrom 123 %endif 124 ; Fall to JumpToBootSector_or_RomBoot 125 98 126 99 127 ;-------------------------------------------------------------------- 100 ; BootFromDriveAthenTryDriveC 101 ; Parameters: 102 ; DS: RAMVARS segment 103 ; Returns: 104 ; Never returns (loads operating system) 105 ;-------------------------------------------------------------------- 106 BootFromDriveAthenTryDriveC: 107 xor dx, dx ; DL = 00h = Floppy Drive A 108 call BootSector_TryToLoadFromDriveDL 109 jc SHORT Int19hMenu_JumpToBootSector_or_RomBoot 110 mov dl, 80h ; DL = 80h = First Hard Drive (usually C) 111 call BootSector_TryToLoadFromDriveDL 112 jmp SHORT Int19hMenu_JumpToBootSector_or_RomBoot ; ROM Boot if error 113 114 115 %ifdef MODULE_BOOT_MENU 116 ;-------------------------------------------------------------------- 117 ; ProcessBootMenuSelectionsUntilBootableDriveSelected 118 ; Parameters: 119 ; DS: RAMVARS segment 120 ; Returns: 121 ; Never returns 122 ;-------------------------------------------------------------------- 123 ProcessBootMenuSelectionsUntilBootableDriveSelected: 124 call BootMenu_DisplayAndReturnSelectionInDX 125 call DriveXlate_ToOrBack ; Translate drive number 126 call BootSector_TryToLoadFromDriveDL 127 jnc SHORT ProcessBootMenuSelectionsUntilBootableDriveSelected ; Boot failure, show menu again 128 ; Fall to Int19hMenu_JumpToBootSector_or_RomBoot 129 ; (CF is set or we wouldn't be here, see "jnc" immediately above) 130 %endif 131 132 ;-------------------------------------------------------------------- 133 ; Int19hMenu_JumpToBootSector_or_RomBoot 128 ; JumpToBootSector_or_RomBoot 134 129 ; 135 130 ; Switches back to the POST stack, clears the DS and ES registers, … … 140 135 ; DL: Drive to boot from (translated, 00h or 80h) 141 136 ; CF: Set for Boot Sector Boot 142 ; Clear for R omBoot137 ; Clear for ROM Boot 143 138 ; ES:BX: (if CF set) Ptr to boot sector 144 139 ; … … 146 141 ; Never returns 147 142 ;-------------------------------------------------------------------- 148 Int19hMenu_JumpToBootSector_or_RomBoot:143 JumpToBootSector_or_RomBoot: 149 144 mov cx, es ; Preserve MBR segment (can't push because of stack change) 150 145 mov ax, 0 ; NOTE: can't use XOR (LOAD_BDA_SEGMENT_TO) as it impacts CF … … 167 162 ; Boot by calling INT 18h (ROM Basic of ROM DOS) 168 163 .romboot: 169 int BIOS_BOOT_FAILURE_INTERRUPT_18h ; Never returns 164 int BIOS_BOOT_FAILURE_INTERRUPT_18h ; Never returns 165 166 167 ;-------------------------------------------------------------------- 168 ; TryToBootFromPrimaryOrSecondaryBootDevice 169 ; Parameters 170 ; DL: Drive selected as boot device 171 ; DS: RAMVARS segment 172 ; ES: BDA and interrupt vector segment (zero) 173 ; Returns: 174 ; DL: Drive to boot from (translated, 00h or 80h) 175 ; CF: Set for Boot Sector Boot 176 ; Clear for ROM Boot 177 ; ES:BX: (if CF set) Ptr to boot sector 178 ; Corrupts registers: 179 ; AX, CX, DH, SI, DI, (DL if failed to read boot sector) 180 ;-------------------------------------------------------------------- 181 TryToBootFromPrimaryOrSecondaryBootDevice: 182 call DriveXlate_SetDriveToSwap 183 call DriveXlate_ToOrBack 184 jmp BootSector_TryToLoadFromDriveDL -
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm
r386 r392 55 55 jcxz .AddHardDisks ; Set to zero on .ideVarsSerialAuto iteration (if any) 56 56 %endif 57 58 57 loop .DriveDetectLoop 59 58 … … 155 154 StartDetectionWithDriveSelectByteInBHandStringInCX: 156 155 call DetectPrint_StartDetectWithMasterOrSlaveStringInCXandIdeVarsInCSBP 156 call HotkeyBar_UpdateDuringDriveDetection 157 157 ; Fall to .ReadAtaInfoFromHardDisk 158 158 -
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectPrint.asm
r386 r392 22 22 23 23 ;-------------------------------------------------------------------- 24 ; BootMenuPrint_InitializeDisplayContext 25 ; Parameters: 26 ; Nothing 27 ; Returns: 28 ; Nothing 29 ; Corrupts registers: 30 ; AX, DI 31 ;-------------------------------------------------------------------- 32 BootMenuPrint_InitializeDisplayContext: 33 CALL_DISPLAY_LIBRARY InitializeDisplayContext 24 ; DetectPrint_InitializeDisplayContext 25 ; Parameters: 26 ; Nothing 27 ; Returns: 28 ; Nothing 29 ; Corrupts registers: 30 ; AX, DI 31 ;-------------------------------------------------------------------- 32 DetectPrint_InitializeDisplayContext: 33 CALL_DISPLAY_LIBRARY InitializeDisplayContext 34 ret 35 36 37 ;-------------------------------------------------------------------- 38 ; DetectPrint_GetSoftwareCoordinatesToAX 39 ; Parameters: 40 ; Nothing 41 ; Returns: 42 ; Nothing 43 ; Corrupts registers: 44 ; AX, DI 45 ;-------------------------------------------------------------------- 46 DetectPrint_GetSoftwareCoordinatesToAX: 47 CALL_DISPLAY_LIBRARY GetSoftwareCoordinatesToAX 34 48 ret 35 49 … … 186 200 ; Nothing 187 201 ; Corrupts registers: 188 ; AX, SI, DI202 ; AX, DH, SI, DI 189 203 ;-------------------------------------------------------------------- 190 204 DetectPrint_TryToBootFromDL: … … 192 206 mov bp, sp 193 207 194 mov ax, g_szHDD 195 test dl, dl 196 js SHORT .NotFDD 197 mov ax, g_szFDD 198 .NotFDD: 199 push ax 200 201 call DriveXlate_ToOrBack 202 push dx ; Push untranslated drive number 203 call DriveXlate_ToOrBack 204 push dx ; Push translated drive number 208 call DriveXlate_ToOrBack ; DL = Untranslated Drive number 209 mov dh, dl 210 call DriveXlate_ToOrBack ; DL = Translated Drive number 211 212 call HotkeyBar_ConvertDriveNumberFromDLtoDriveLetter ; DL = Translated letter 213 xchg dl, dh 214 call HotkeyBar_ConvertDriveNumberFromDLtoDriveLetter ; DL = Untranslated letter 215 push dx 216 xchg dl, dh 217 push dx 218 219 call ConvertDriveLetterInDLtoDriveNumber ; Restore DL 205 220 206 221 mov si, g_szTryToBoot … … 226 241 push bp 227 242 mov bp,sp 228 ; Fall to BootMenuPrint_FormatCSSIfromParamsInSSBP243 ; Fall to DetectPrint_FormatCSSIfromParamsInSSBP 229 244 230 245 ;-------------------------------------------------------------------- -
trunk/XTIDE_Universal_BIOS/Src/Initialization/FloppyDrive.asm
r376 r392 125 125 ; AX, CX, DX, DI, ES 126 126 ;-------------------------------------------------------------------- 127 %ifdef MODULE_BOOT_MENU 127 128 FloppyDrive_GetType: 128 129 mov ah, 08h ; Get Drive Parameters … … 130 131 int BIOS_DISKETTE_INTERRUPT_40h 131 132 ret 133 %endif 132 134 133 135 -
trunk/XTIDE_Universal_BIOS/Src/Initialization/Initialize.asm
r376 r392 69 69 ;-------------------------------------------------------------------- 70 70 Initialize_AndDetectDrives: 71 call BootMenuPrint_InitializeDisplayContext71 call DetectPrint_InitializeDisplayContext 72 72 call DetectPrint_RomFoundAtSegment 73 73 call RamVars_Initialize 74 call BootVars_Initialize 74 75 call Interrupts_InitializeInterruptVectors 75 76 call DetectDrives_FromAllIDEControllers -
trunk/XTIDE_Universal_BIOS/Src/Initialization/Interrupts.asm
r376 r392 63 63 mov si, Int13h_DiskFunctionsHandler ; Interrupt handler offset 64 64 call Interrupts_InstallHandlerToVectorInALFromCSSI 65 66 ; Install INT 19h handler to properly reset the system 67 mov al, BIOS_BOOT_LOADER_INTERRUPT_19h ; INT 19h interrupt vector offset 68 mov si, Int19hReset_Handler ; INT 19h handler to reboot the system 69 call Interrupts_InstallHandlerToVectorInALFromCSSI 65 70 ; Fall to .InitializeHardwareIrqHandlers 66 71 -
trunk/XTIDE_Universal_BIOS/Src/Main.asm
r386 r392 34 34 %define EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS ; Exclude unused library functions 35 35 %ifdef MODULE_BOOT_MENU 36 %define MENUEVENT_INLINE_OFFSETS ; Only one menu required, save space and inline offsets36 %define MENUEVENT_INLINE_OFFSETS ; Only one menu required, save space and inline offsets 37 37 %define INCLUDE_MENU_LIBRARY 38 38 39 39 %else ; If no boot menu included 40 40 %define INCLUDE_DISPLAY_LIBRARY 41 %define INCLUDE_KEYBOARD_LIBRARY 41 42 %define INCLUDE_TIME_LIBRARY 42 43 %endif … … 57 58 %include "RamVars.inc" ; For RAMVARS struct 58 59 %include "BootVars.inc" ; For BOOTVARS struct 60 %include "HotkeyBar.inc" ; For Hotkeys 59 61 %include "BootMenu.inc" ; For Boot Menu 60 62 %include "IDE_8bit.inc" ; For IDE 8-bit data port macros … … 212 214 %include "Interrupts.asm" ; For Interrupt initialization 213 215 %include "RamVars.asm" ; For RAMVARS initialization and access 216 %include "BootVars.asm" ; For initializing variabled used during init and boot 217 %include "FloppyDrive.asm" ; Floppy Drive related functions 214 218 %include "CreateDPT.asm" ; For creating DPTs 215 219 %include "FindDPT.asm" ; For finding DPTs … … 220 224 %include "DetectDrives.asm" ; For detecting IDE drives 221 225 %include "DetectPrint.asm" ; For printing drive detection strings 226 %include "HotkeyBar.asm" ; For hotkeys during drive detection and boot menu 222 227 223 228 ; Boot menu … … 232 237 ; Boot loader 233 238 %include "Int19h.asm" ; For Int 19h, Boot Loader 234 %include " FloppyDrive.asm" ; Floppy Drive related functions239 %include "Int19hReset.asm" ; INT 19h handler for proper system reset 235 240 %include "BootSector.asm" ; For loading boot sector 236 241 -
trunk/XTIDE_Universal_BIOS/Src/Strings.asm
r376 r392 73 73 74 74 ; Boot loader strings 75 g_szTryToBoot: db "Booting from %s %x",ANGLE_QUOTE_RIGHT,"%x",LF,CR,NULL75 g_szTryToBoot: db "Booting %c",ANGLE_QUOTE_RIGHT,"%c",LF,CR,NULL 76 76 g_szBootSectorNotFound: db "Boot sector " 77 77 g_szNotFound: db "not found",LF,CR,NULL 78 78 g_szReadError: db "Error %x!",LF,CR,NULL 79 79 80 80 81 g_szAddressingModes: … … 143 144 144 145 ; Boot menu bottom of screen strings 145 g_szFDD: db "FDD ",NULL 146 g_szHDD: db "HDD ",NULL 147 g_szRomBoot: db "ROM Boot",NULL 148 g_szHotkey: db "%A%c%c%A%s%A ",NULL 146 g_szFDD: db "FDD [%c]",NULL ; "FDD [A]" 147 g_szHDD: db "HDD [%c]",NULL ; "HDD [C]" 148 g_szBootMenu: db "%sMnu",NULL ; "BootMnu" 149 g_szRomBoot: db "Rom%s",NULL ; "RomBoot" 150 g_szBoot: db "Boot",NULL 151 g_szHotkey: db "%A%c%c%A%s%A ",NULL ; "C»HDD [A] ", "F2BootMnu " or "F8RomBoot " 149 152 150 153 ; Boot Menu information strings … … 227 230 ; 228 231 ;------------------------------------------------------------------------------------------ 229 230 -
trunk/XTIDE_Universal_BIOS/Src/StringsCompressed.asm
r376 r392 26 26 ; GNU General Public License for more details. 27 27 ; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 28 ; 28 ; 29 29 30 30 %ifdef MODULE_STRINGS_COMPRESSED_PRECOMPRESS … … 128 128 129 129 ; Boot loader strings 130 g_szTryToBoot: ; db "Booting from %s %x",ANGLE_QUOTE_RIGHT,"%x",LF,CR,NULL131 ; db 42h, 6fh, 6fh, 74h, 69h, 6eh, 67h, 20h, 66h, 72h, 6fh, 6dh, 20h, 25h, 73h, 20h, 25h, 78h, 0afh, 25h, 78h, 0ah, 0dh, 00h ; uncompressed132 db 48h, 75h, 75h, 7ah, 6fh, 74h, 0edh, 6ch, 78h, 75h, 0f3h, 3eh, 20h, 39h, 24h, 39h, 1bh; compressed130 g_szTryToBoot: ; db "Booting %c",ANGLE_QUOTE_RIGHT,"%c",LF,CR,NULL 131 ; db 42h, 6fh, 6fh, 74h, 69h, 6eh, 67h, 20h, 25h, 63h, 0afh, 25h, 63h, 0ah, 0dh, 00h ; uncompressed 132 db 48h, 75h, 75h, 7ah, 6fh, 74h, 0edh, 35h, 24h, 35h, 1bh ; compressed 133 133 134 134 g_szBootSectorNotFound: ; db "Boot sector " … … 143 143 ; db 45h, 72h, 72h, 6fh, 72h, 20h, 25h, 78h, 21h, 0ah, 0dh, 00h ; uncompressed 144 144 db 4bh, 78h, 78h, 75h, 0f8h, 39h, 25h, 1bh ; compressed 145 145 146 146 147 … … 249 250 250 251 ; Boot menu bottom of screen strings 251 g_szFDD: ; db "FDD ",NULL 252 ; db 46h, 44h, 44h, 20h, 20h, 20h, 20h, 20h, 00h ; uncompressed 253 db 4ch, 4ah, 0cah, 20h, 20h, 20h, 00h ; compressed 254 255 g_szHDD: ; db "HDD ",NULL 256 ; db 48h, 44h, 44h, 20h, 20h, 20h, 20h, 20h, 00h ; uncompressed 257 db 4eh, 4ah, 0cah, 20h, 20h, 20h, 00h ; compressed 258 259 g_szRomBoot: ; db "ROM Boot",NULL 260 ; db 52h, 4fh, 4dh, 20h, 42h, 6fh, 6fh, 74h, 00h ; uncompressed 261 db 58h, 55h, 0d3h, 48h, 75h, 75h, 0bah ; compressed 262 263 g_szHotkey: ; db "%A%c%c%A%s%A ",NULL 252 g_szFDD: ; db "FDD [%c]",NULL ; "FDD [A]" 253 ; db 46h, 44h, 44h, 20h, 5bh, 25h, 63h, 5dh, 00h ; uncompressed 254 db 4ch, 4ah, 0cah, 61h, 35h, 0a3h ; compressed 255 256 g_szHDD: ; db "HDD [%c]",NULL ; "HDD [C]" 257 ; db 48h, 44h, 44h, 20h, 5bh, 25h, 63h, 5dh, 00h ; uncompressed 258 db 4eh, 4ah, 0cah, 61h, 35h, 0a3h ; compressed 259 260 g_szBootMenu: ; db "%sMnu",NULL ; "BootMnu" 261 ; db 25h, 73h, 4dh, 6eh, 75h, 00h ; uncompressed 262 db 3eh, 53h, 74h, 0bbh ; compressed 263 264 g_szRomBoot: ; db "Rom%s",NULL ; "RomBoot" 265 ; db 52h, 6fh, 6dh, 25h, 73h, 00h ; uncompressed 266 db 58h, 75h, 73h, 1eh ; compressed 267 268 g_szBoot: ; db "Boot",NULL 269 ; db 42h, 6fh, 6fh, 74h, 00h ; uncompressed 270 db 48h, 75h, 75h, 0bah ; compressed 271 272 g_szHotkey: ; db "%A%c%c%A%s%A ",NULL ; "C»HDD [A] ", "F2BootMnu " or "F8RomBoot " 264 273 ; db 25h, 41h, 25h, 63h, 25h, 63h, 25h, 41h, 25h, 73h, 25h, 41h, 20h, 00h ; uncompressed 265 274 db 3dh, 35h, 35h, 3dh, 3eh, 3dh, 00h ; compressed … … 371 380 ; End of StringsCompress.pl information 372 381 ; 373 ;------------------------------------------------------------------------------------------374 375 382 ;;; end of input stream 376 383 … … 455 462 ;; translated usage stats 456 463 ;; 33:1 457 ;; 32: 31464 ;; 32:22 458 465 ;; 181:1 459 466 ;; 53:2 … … 481 488 ;; 2-u:1 482 489 ;; 5-u:2 483 ;; x: 7484 ;; s:1 2490 ;; x:5 491 ;; s:13 485 492 ;; 5-x:1 486 493 ;; nl:8 487 494 ;; 2-I:1 488 ;; c: 5495 ;; c:9 489 496 ;; u:6 490 497 ;; z:1 … … 513 520 ;; 77,M:4 514 521 ;; 78,N:1 515 ;; 79,O: 2522 ;; 79,O:1 516 523 ;; 80,P:2 517 524 ;; 81,Q:1 … … 525 532 ;; 89,Y: 526 533 ;; 90,Z: 527 ;; 91,[: 534 ;; 91,[:2 528 535 ;; 92,\: 529 ;; 93,]: 536 ;; 93,]:2 530 537 ;; 94,^: 531 538 ;; 95,_: … … 536 543 ;; 100,d:6 537 544 ;; 101,e:15 538 ;; 102,f: 2545 ;; 102,f:1 539 546 ;; 103,g:2 540 547 ;; 104,h: … … 544 551 ;; 108,l:5 545 552 ;; 109,m:1 546 ;; 110,n:1 0553 ;; 110,n:11 547 554 ;; 111,o:17 548 555 ;; 112,p:3 549 556 ;; 113,q: 550 ;; 114,r:1 2557 ;; 114,r:11 551 558 ;; 115,s:7 552 559 ;; 116,t:12 553 ;; 117,u: 3560 ;; 117,u:4 554 561 ;; 118,v:3 555 562 ;; 119,w:1 556 563 ;; 120,x: 557 564 ;; 121,y:2 558 ;; alphabet used count: 4 2565 ;; alphabet used count: 44 559 566 %endif ; STRINGSCOMPRESSED_TABLES 560 567 -
trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/RamVars.asm
r376 r392 146 146 ; CX 147 147 ;-------------------------------------------------------------------- 148 ALIGN JUMP_ALIGN 148 %ifdef MODULE_BOOT_MENU 149 149 RamVars_GetHardDiskCountFromBDAtoAX: 150 150 call RamVars_GetCountOfKnownDrivesToAX … … 155 155 pop ds 156 156 ret 157 %endif 158 157 159 158 160 ;-------------------------------------------------------------------- -
trunk/XTIDE_Universal_BIOS/makefile
r389 r392 54 54 HEADERS += Inc/Controllers/ 55 55 HEADERS += Src/ 56 HEADERS += Src/Boot/57 56 HEADERS += Src/Handlers/ 58 57 HEADERS += Src/Handlers/Int13h/ 59 58 HEADERS += Src/Handlers/Int13h/EBIOS/ 60 59 HEADERS += Src/Handlers/Int13h/Tools/ 60 HEADERS += Src/Handlers/Int19h/ 61 61 HEADERS += Src/Device/ 62 62 HEADERS += Src/Device/IDE/ … … 64 64 HEADERS += Src/Device/Serial/ 65 65 HEADERS += Src/Initialization/ 66 HEADERS += Src/Initialization/AdvancedAta/ 67 HEADERS += Src/Menus/ 68 HEADERS += Src/Menus/BootMenu/ 66 69 HEADERS += Src/Libraries/ 67 70 HEADERS += Src/VariablesAndDPTs/ … … 86 89 # Assembler preprocessor defines. # 87 90 ################################################################# 88 DEFINES_COMMON = MODULE_ BOOT_MENU MODULE_EBIOS MODULE_STRINGS_COMPRESSED91 DEFINES_COMMON = MODULE_STRINGS_COMPRESSED MODULE_EBIOS 89 92 90 93 DEFINES_XT = ELIMINATE_CGA_SNOW MODULE_SERIAL MODULE_SERIAL_FLOPPY 91 DEFINES_XTPLUS = ELIMINATE_CGA_SNOW USE_186MODULE_SERIAL MODULE_SERIAL_FLOPPY92 DEFINES_AT = USE_ 286 USE_AT MODULE_SERIAL MODULE_SERIAL_FLOPPY93 94 DEFINES_XT_LARGE = $(DEFINES_XT) MODULE_ JRIDE MODULE_ADVANCED_ATA95 DEFINES_XTPLUS_LARGE = $(DEFINES_XTPLUS) MODULE_ JRIDE MODULE_ADVANCED_ATA96 DEFINES_AT_LARGE = $(DEFINES_AT) MODULE_ JRIDE MODULE_ADVANCED_ATA94 DEFINES_XTPLUS = USE_186 ELIMINATE_CGA_SNOW MODULE_SERIAL MODULE_SERIAL_FLOPPY 95 DEFINES_AT = USE_AT USE_286 MODULE_SERIAL MODULE_SERIAL_FLOPPY MODULE_ADVANCED_ATA 96 97 DEFINES_XT_LARGE = $(DEFINES_XT) MODULE_BOOT_MENU MODULE_JRIDE MODULE_ADVANCED_ATA 98 DEFINES_XTPLUS_LARGE = $(DEFINES_XTPLUS) MODULE_BOOT_MENU MODULE_JRIDE MODULE_ADVANCED_ATA 99 DEFINES_AT_LARGE = $(DEFINES_AT) MODULE_BOOT_MENU MODULE_JRIDE MODULE_ADVANCED_ATA 97 100 98 101 DEFINES_JRIDE_8K = ELIMINATE_CGA_SNOW MODULE_JRIDE 99 DEFINES_386_8K = USE_ 386 USE_ATMODULE_ADVANCED_ATA102 DEFINES_386_8K = USE_AT USE_386 MODULE_ADVANCED_ATA 100 103 101 104
Note:
See TracChangeset
for help on using the changeset viewer.