Changeset 189 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS
- Timestamp:
- Nov 16, 2011, 6:29:32 AM (13 years ago)
- google:author:
- gregli@hotmail.com
- Location:
- trunk/XTIDE_Universal_BIOS/Src
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuEvent.asm
r183 r189 4 4 ; Section containing code 5 5 SECTION .text 6 7 struc ITEM_TYPE_REFRESH8 .HardDisk resb 29 .FloppyDrive resb 210 endstruc11 12 6 13 7 ;-------------------------------------------------------------------- … … 29 23 add bx, BootMenuEvent_Handler 30 24 jmp bx 25 26 MENUEVENT_InitializeMenuinitFromDSSI equ (BootMenuEvent_Handler.InitializeMenuinitFromDSSI - BootMenuEvent_Handler) 27 MENUEVENT_ExitMenu equ (BootMenuEvent_Handler.EventCompleted - BootMenuEvent_Handler) 28 MENUEVENT_ItemHighlightedFromCX equ (BootMenuEvent_Handler.ItemHighlightedFromCX - BootMenuEvent_Handler) 29 MENUEVENT_ItemSelectedFromCX equ (BootMenuEvent_Handler.ItemSelectedFromCX - BootMenuEvent_Handler) 30 MENUEVENT_KeyStrokeInAX equ (BootMenuEvent_Handler.KeyStrokeInAX - BootMenuEvent_Handler) 31 MENUEVENT_RefreshTitle equ (BootMenuPrint_TitleStrings - BootMenuEvent_Handler) 32 MENUEVENT_RefreshInformation equ (BootMenuEvent_Handler.RefreshInformation - BootMenuEvent_Handler) 33 MENUEVENT_RefreshItemFromCX equ (BootMenuEvent_Handler.RefreshItemFromCX - BootMenuEvent_Handler) 34 ; 35 ; Note that there is no entry for MENUEVENT_IdleProcessing. If MENUEVENT_IDLEPROCESSING_ENABLE is not %defined, 36 ; then the entry point will not be called (saving memory on this end and at the CALL point). 37 ; 31 38 32 39 %else … … 35 42 ja SHORT .EventNotHandled 36 43 jmp [cs:bx+.rgfnEventSpecificHandlers] 37 38 %endif 39 44 40 45 .EventNotHandled: 41 46 clc 42 47 ret 43 44 %ifdef MENUEVENT_INLINE_OFFSETS45 46 MENUEVENT_InitializeMenuinitFromDSSI equ (BootMenuEvent_Handler.InitializeMenuinitFromDSSI - BootMenuEvent_Handler)47 MENUEVENT_ExitMenu equ (BootMenuEvent_Handler.EventCompleted - BootMenuEvent_Handler)48 MENUEVENT_IdleProcessing equ (BootMenuEvent_Handler.EventNotHandled - BootMenuEvent_Handler)49 MENUEVENT_ItemHighlightedFromCX equ (BootMenuEvent_Handler.ItemHighlightedFromCX - BootMenuEvent_Handler)50 MENUEVENT_ItemSelectedFromCX equ (BootMenuEvent_Handler.ItemSelectedFromCX - BootMenuEvent_Handler)51 MENUEVENT_KeyStrokeInAX equ (BootMenuEvent_Handler.KeyStrokeInAX - BootMenuEvent_Handler)52 MENUEVENT_RefreshTitle equ (BootMenuPrint_TitleStrings - BootMenuEvent_Handler)53 MENUEVENT_RefreshInformation equ (BootMenuEvent_Handler.RefreshInformation - BootMenuEvent_Handler)54 MENUEVENT_RefreshItemFromCX equ (BootMenuEvent_Handler.RefreshItemFromCX - BootMenuEvent_Handler)55 56 %else57 48 58 49 ALIGN WORD_ALIGN … … 162 153 ALIGN JUMP_ALIGN 163 154 .RefreshItemFromCX: 164 mov b x, .rgwItemTypeRefresh165 jmp SHORT .RefreshItemOrInformationWithJumpTableInCSBX166 167 155 mov bl,00h 156 SKIP2B dx ; dx corrupted below by BootMenu_GetDriveToDXforMenuitemInCX 157 ; Fall to .RefreshInformation 158 168 159 ; Parameters: 169 160 ; CX: Index of highlighted item 170 161 ; Cursor has been positioned to the beginning of first line 171 ALIGN JUMP_ALIGN172 162 .RefreshInformation: 173 mov b x, .rgwInformationItemTypeRefresh163 mov bl,040h 174 164 ; Fall to .RefreshItemOrInformationWithJumpTableInCSBX 175 165 … … 188 178 call RamVars_GetSegmentToDS 189 179 call BootMenu_GetDriveToDXforMenuitemInCX 190 test dl, dl ; Floppy drive? 191 jns SHORT .DrawFloppyDrive 192 jmp [cs:bx+ITEM_TYPE_REFRESH.HardDisk] 180 or bl,dl 181 shl bl,1 182 jc SHORT BootMenuPrint_HardDiskMenuitem 183 184 ;;; 185 ;;; Fall-through (to BootMenuPrint_FloppyMenuitem) 186 ;;; (checked at assembler time with the code after BootMenuPrint_FloppyMenuitem) 187 ;;; 193 188 ALIGN JUMP_ALIGN 194 .DrawFloppyDrive: 195 jmp [cs:bx+ITEM_TYPE_REFRESH.FloppyDrive] 189 BootMenuEvent_FallThroughToFloppyMenuitem: 196 190 197 ; Jump tables for .RefreshItemOrInformationWithJumpTableInCSBX198 ALIGN WORD_ALIGN199 .rgwItemTypeRefresh:200 istruc ITEM_TYPE_REFRESH201 at ITEM_TYPE_REFRESH.HardDisk, dw BootMenuPrint_HardDiskMenuitem202 at ITEM_TYPE_REFRESH.FloppyDrive, dw BootMenuPrint_FloppyMenuitem203 iend204 .rgwInformationItemTypeRefresh:205 istruc ITEM_TYPE_REFRESH206 at ITEM_TYPE_REFRESH.HardDisk, dw BootMenuPrint_HardDiskMenuitemInformation207 at ITEM_TYPE_REFRESH.FloppyDrive, dw BootMenuPrint_FloppyMenuitemInformation208 iend -
trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuPrint.asm
r186 r189 5 5 SECTION .text 6 6 7 ;;; 8 ;;; Fall-through from BootMenuEvent.asm! 9 ;;; BootMenuPrint_FloppyMenuitem must be the first routine in this file 10 ;;; (checked at assembler time with the code after BootMenuPrint_FloppyMenuitem) 11 ;;; 12 ;-------------------------------------------------------------------- 13 ; BootMenuPrint_FloppyMenuitem 14 ; Parameters: 15 ; DL: Untranslated Floppy Drive number 16 ; Returns: 17 ; Nothing 18 ; Corrupts registers: 19 ; AX, DX, SI, DI 20 ;-------------------------------------------------------------------- 21 ALIGN JUMP_ALIGN 22 BootMenuPrint_FloppyMenuitem: 23 js BootMenuPrint_FloppyMenuitemInformation 24 call PrintDriveNumberAfterTranslationFromDL 25 push bp 26 mov bp, sp 27 mov si, g_szFDLetter 28 ePUSH_T ax, g_szFloppyDrv 29 add dl, 'A' 30 push dx ; Drive letter 31 jmp BootMenuPrint_FormatCSSIfromParamsInSSBP 32 33 %if BootMenuPrint_FloppyMenuitem <> BootMenuEvent_FallThroughToFloppyMenuitem 34 %error "BootMenuPrint.asm must follow BootMenuEvent.asm, and BootMenuPrint_FloppyMenuitem must be the first routine in BootMenuPrint.asm" 35 %endif 36 7 37 ;-------------------------------------------------------------------- 8 38 ; BootMenuPrint_ClearScreen … … 81 111 82 112 ;-------------------------------------------------------------------- 83 ; BootMenuPrint_FloppyMenuitem84 ; Parameters:85 ; DL: Untranslated Floppy Drive number86 ; Returns:87 ; Nothing88 ; Corrupts registers:89 ; AX, DX, SI, DI90 ;--------------------------------------------------------------------91 ALIGN JUMP_ALIGN92 BootMenuPrint_FloppyMenuitem:93 call PrintDriveNumberAfterTranslationFromDL94 push bp95 mov bp, sp96 mov si, g_szFDLetter97 ePUSH_T ax, g_szFloppyDrv98 add dl, 'A'99 push dx ; Drive letter100 jmp BootMenuPrint_FormatCSSIfromParamsInSSBP101 102 103 ;--------------------------------------------------------------------104 113 ; BootMenuPrint_HardDiskMenuitem 105 114 ; Parameters: … … 113 122 ALIGN JUMP_ALIGN 114 123 BootMenuPrint_HardDiskMenuitem: 124 js BootMenuPrint_HardDiskMenuitemInformation 115 125 call PrintDriveNumberAfterTranslationFromDL 116 126 call RamVars_IsDriveHandledByThisBIOS -
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm
r179 r189 21 21 mov bp, ROMVARS.ideVars0 ; CS:BP now points to first IDEVARS 22 22 .DriveDetectLoop: 23 mov si,g_szDetect 23 24 call .DetectDrives_WithIDEVARS ; Detect Master and Slave 24 25 add bp, BYTE IDEVARS_size ; Point to next IDEVARS … … 29 30 jz .done 30 31 mov bp, ROMVARS.ideVarsSerialAuto 32 mov si,g_szSerial 31 33 ;;; fall-through 32 34 %else … … 42 44 ; DS: RAMVARS segment 43 45 ; ES: Zero (BDA segment) 46 ; SI: Ptr to template string 44 47 ; Returns: 45 48 ; Nothing … … 49 52 .DetectDrives_WithIDEVARS: 50 53 push cx 54 55 push si 51 56 mov ax, g_szMaster 52 57 mov bh, MASK_DRVNHEAD_SET ; Select Master drive 53 58 call StartDetectionWithDriveSelectByteInBHandStringInAX ; Detect and create DPT + BOOTNFO 54 59 pop si 60 55 61 mov ax, g_szSlave 56 62 mov bh, MASK_DRVNHEAD_SET | FLG_DRVNHEAD_DRV -
trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectPrint.asm
r120 r189 30 30 ; CS:AX: Ptr to "Master" or "Slave" string 31 31 ; CS:BP: Ptr to IDEVARS 32 ; SI: Ptr to template string 32 33 ; Returns: 33 34 ; Nothing … … 37 38 DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP: 38 39 push bp 39 mov si, [cs:bp+IDEVARS.wPort]40 mov di, [cs:bp+IDEVARS.wPort] 40 41 mov bp, sp 41 42 push ax ; Push "Master" or "Slave" 42 push si ; Push port number 43 mov si, g_szDetect 43 push di ; Push port number 44 44 jmp BootMenuPrint_FormatCSSIfromParamsInSSBP 45 45 -
trunk/XTIDE_Universal_BIOS/Src/Strings.asm
r186 r189 14 14 g_szSlave: db "Slave ",NULL 15 15 g_szDetect: db "IDE %s at %x: ",NULL ; IDE Master at 1F0h: 16 16 g_szSerial: db "Serial Port %s: ",NULL 17 17 18 18 ; Boot loader strings -
trunk/XTIDE_Universal_BIOS/Src/StringsCompressed.asm
r186 r189 18 18 19 19 ; POST drive detection strings 20 g_szRomAt: 21 db 034h, 020h, 0c6h, 039h, 01bh 22 ; source: 25h, 73h, 20h, 40h, 20h, 25h, 78h, 0Ah, 0Dh, 00h 23 24 g_szMaster: 25 db 053h, 067h, 079h, 07ah, 06bh, 0b8h 26 ; source: 4Dh, 61h, 73h, 74h, 65h, 72h, 00h 27 28 g_szSlave: 29 db 059h, 072h, 067h, 07ch, 06bh, 000h 30 ; source: 53h, 6Ch, 61h, 76h, 65h, 20h, 00h 31 32 g_szDetect: 33 db 04fh, 04ah, 0cbh, 034h, 020h, 067h, 0fah, 039h, 040h, 000h 34 ; source: 49h, 44h, 45h, 20h, 25h, 73h, 20h, 61h, 74h, 20h, 25h, 78h, 3Ah, 20h, 00h 35 20 g_szRomAt: ; db "%s @ %x",LF,CR,NULL 21 ; db 25h, 73h, 20h, 40h, 20h, 25h, 78h, 0ah, 0dh, 00h ; uncompressed 22 db 34h, 20h, 0c6h, 39h, 1bh ; compressed 23 24 g_szMaster: ; db "Master",NULL 25 ; db 4dh, 61h, 73h, 74h, 65h, 72h, 00h ; uncompressed 26 db 53h, 67h, 79h, 7ah, 6bh, 0b8h ; compressed 27 28 g_szSlave: ; db "Slave ",NULL 29 ; db 53h, 6ch, 61h, 76h, 65h, 20h, 00h ; uncompressed 30 db 59h, 72h, 67h, 7ch, 6bh, 00h ; compressed 31 32 g_szDetect: ; db "IDE %s at %x: ",NULL ; IDE Master at 1F0h: 33 ; db 49h, 44h, 45h, 20h, 25h, 73h, 20h, 61h, 74h, 20h, 25h, 78h, 3ah, 20h, 00h ; uncompressed 34 db 4fh, 4ah, 0cbh, 34h, 20h, 67h, 0fah, 39h, 40h, 00h ; compressed 35 36 g_szSerial: ; db "Serial Port %s: ",NULL 37 ; db 53h, 65h, 72h, 69h, 61h, 6ch, 20h, 50h, 6fh, 72h, 74h, 20h, 25h, 73h, 3ah, 20h, 00h ; uncompressed 38 db 59h, 6bh, 78h, 6fh, 67h, 0f2h, 56h, 75h, 78h, 0fah, 34h, 40h, 00h ; compressed 36 39 37 40 38 41 ; Boot loader strings 39 g_szTryToBoot: 40 db 048h, 075h, 075h, 07ah, 06fh, 074h, 0edh, 06ch, 078h, 075h, 0f3h, 034h, 020h, 039h, 024h, 039h, 01bh41 ; source: 42h, 6Fh, 6Fh, 74h, 69h, 6Eh, 67h, 20h, 66h, 72h, 6Fh, 6Dh, 20h, 25h, 73h, 20h, 25h, 78h, AFh, 25h, 78h, 0Ah, 0Dh, 00h 42 43 g_szBootSectorNotFound: 44 db 048h, 075h, 075h, 0fah, 079h, 06bh, 069h, 07ah, 075h, 078h, 020h45 ; source: 42h, 6Fh, 6Fh, 74h, 20h, 73h, 65h, 63h, 74h, 6Fh, 72h, 20h 46 47 g_szNotFound: 48 db 074h, 075h, 0fah, 06ch, 075h, 07bh, 074h, 06ah, 01bh49 ; source: 6Eh, 6Fh, 74h, 20h, 66h, 6Fh, 75h, 6Eh, 64h, 0Ah, 0Dh, 00h 50 51 g_szReadError: 52 db 04bh, 078h, 078h, 075h, 0f8h, 039h, 025h, 01bh53 ; source: 45h, 72h, 72h, 6Fh, 72h, 20h, 25h, 78h, 21h, 0Ah, 0Dh, 00h 42 g_szTryToBoot: ; db "Booting from %s %x",ANGLE_QUOTE_RIGHT,"%x",LF,CR,NULL 43 ; 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 ; uncompressed 44 db 48h, 75h, 75h, 7ah, 6fh, 74h, 0edh, 6ch, 78h, 75h, 0f3h, 34h, 20h, 39h, 24h, 39h, 1bh ; compressed 45 46 g_szBootSectorNotFound: ; db "Boot sector " 47 ; db 42h, 6fh, 6fh, 74h, 20h, 73h, 65h, 63h, 74h, 6fh, 72h, 20h ; uncompressed 48 db 48h, 75h, 75h, 0fah, 79h, 6bh, 69h, 7ah, 75h, 0f8h ; compressed 49 50 g_szNotFound: ; db "not found",LF,CR,NULL 51 ; db 6eh, 6fh, 74h, 20h, 66h, 6fh, 75h, 6eh, 64h, 0ah, 0dh, 00h ; uncompressed 52 db 74h, 75h, 0fah, 6ch, 75h, 7bh, 74h, 6ah, 1bh ; compressed 53 54 g_szReadError: ; db "Error %x!",LF,CR,NULL 55 ; db 45h, 72h, 72h, 6fh, 72h, 20h, 25h, 78h, 21h, 0ah, 0dh, 00h ; uncompressed 56 db 4bh, 78h, 78h, 75h, 0f8h, 39h, 25h, 1bh ; compressed 54 57 55 58 56 59 ; Boot menu bottom of screen strings 57 g_szFDD: 58 db 04ch, 04ah, 0cah, 020h, 020h, 020h, 000h59 ; source: 46h, 44h, 44h, 20h, 20h, 20h, 20h, 20h, 00h 60 61 g_szHDD: 62 db 04eh, 04ah, 0cah, 020h, 020h, 020h, 000h63 ; source: 48h, 44h, 44h, 20h, 20h, 20h, 20h, 20h, 00h 64 65 g_szRomBoot: 66 db 058h, 055h, 0d3h, 048h, 075h, 075h, 0bah67 ; source: 52h, 4Fh, 4Dh, 20h, 42h, 6Fh, 6Fh, 74h, 00h 68 69 g_szHotkey: 70 db 03dh, 035h, 035h, 03dh, 034h, 03dh, 000h71 ; source: 25h, 41h, 25h, 63h, 25h, 63h, 25h, 41h, 25h, 73h, 25h, 41h, 20h, 00h 60 g_szFDD: ; db "FDD ",NULL 61 ; db 46h, 44h, 44h, 20h, 20h, 20h, 20h, 20h, 00h ; uncompressed 62 db 4ch, 4ah, 0cah, 20h, 20h, 20h, 00h ; compressed 63 64 g_szHDD: ; db "HDD ",NULL 65 ; db 48h, 44h, 44h, 20h, 20h, 20h, 20h, 20h, 00h ; uncompressed 66 db 4eh, 4ah, 0cah, 20h, 20h, 20h, 00h ; compressed 67 68 g_szRomBoot: ; db "ROM Boot",NULL 69 ; db 52h, 4fh, 4dh, 20h, 42h, 6fh, 6fh, 74h, 00h ; uncompressed 70 db 58h, 55h, 0d3h, 48h, 75h, 75h, 0bah ; compressed 71 72 g_szHotkey: ; db "%A%c%c%A%s%A ",NULL 73 ; db 25h, 41h, 25h, 63h, 25h, 63h, 25h, 41h, 25h, 73h, 25h, 41h, 20h, 00h ; uncompressed 74 db 3dh, 35h, 35h, 3dh, 34h, 3dh, 00h ; compressed 72 75 73 76 74 77 75 78 ; Boot Menu menuitem strings 76 g_szDriveNum: 77 db 039h, 000h78 ; source: 25h, 78h, 20h, 00h 79 80 g_szFDLetter: 81 db 034h, 020h, 015h82 ; source: 25h, 73h, 20h, 25h, 63h, 00h 83 84 g_szFloppyDrv: 85 db 04ch, 072h, 075h, 076h, 076h, 0ffh, 04ah, 078h, 06fh, 07ch, 0abh86 ; source: 46h, 6Ch, 6Fh, 70h, 70h, 79h, 20h, 44h, 72h, 69h, 76h, 65h, 00h 87 88 g_szforeignHD: 89 db 04ch, 075h, 078h, 06bh, 06fh, 06dh, 0f4h, 04eh, 067h, 078h, 0eah, 04ah, 06fh, 079h, 0b1h90 ; source: 46h, 6Fh, 72h, 65h, 69h, 67h, 6Eh, 20h, 48h, 61h, 72h, 64h, 20h, 44h, 69h, 73h, 6Bh, 00h 79 g_szDriveNum: ; db "%x ",NULL 80 ; db 25h, 78h, 20h, 00h ; uncompressed 81 db 39h, 00h ; compressed 82 83 g_szFDLetter: ; db "%s %c",NULL 84 ; db 25h, 73h, 20h, 25h, 63h, 00h ; uncompressed 85 db 34h, 20h, 15h ; compressed 86 87 g_szFloppyDrv: ; db "Floppy Drive",NULL 88 ; db 46h, 6ch, 6fh, 70h, 70h, 79h, 20h, 44h, 72h, 69h, 76h, 65h, 00h ; uncompressed 89 db 4ch, 72h, 75h, 76h, 76h, 0ffh, 4ah, 78h, 6fh, 7ch, 0abh ; compressed 90 91 g_szforeignHD: ; db "Foreign Hard Disk",NULL 92 ; db 46h, 6fh, 72h, 65h, 69h, 67h, 6eh, 20h, 48h, 61h, 72h, 64h, 20h, 44h, 69h, 73h, 6bh, 00h ; uncompressed 93 db 4ch, 75h, 78h, 6bh, 6fh, 6dh, 0f4h, 4eh, 67h, 78h, 0eah, 4ah, 6fh, 79h, 0b1h ; compressed 91 94 92 95 93 96 ; Boot Menu information strings 94 g_szCapacity: 95 db 049h, 067h, 076h, 067h, 069h, 06fh, 07ah, 0ffh, 040h, 000h96 ; source: 43h, 61h, 70h, 61h, 63h, 69h, 74h, 79h, 20h, 3Ah, 20h, 00h 97 98 g_szSizeSingle: 99 db 034h, 037h, 029h, 037h, 020h, 035h, 06fh, 088h100 ; source: 25h, 73h, 25h, 75h, 2Eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 00h 101 102 g_szSizeDual: 103 db 034h, 038h, 029h, 037h, 020h, 035h, 06fh, 0c8h, 02ah, 038h, 029h, 037h, 020h, 035h, 06fh, 048h, 01bh104 ; source: 25h, 73h, 25h, 35h, 2Dh, 75h, 2Eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 20h, 2Fh, 25h, 35h, 2Dh, 75h, 2Eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 0Ah, 0Dh, 00h 105 106 g_szCfgHeader: 107 db 047h, 06ah, 06ah, 078h, 029h, 023h, 048h, 072h, 075h, 069h, 071h, 023h, 048h, 07bh, 079h, 023h, 04fh, 058h, 057h, 023h, 058h, 06bh, 079h, 06bh, 07ah, 01bh108 ; source: 41h, 64h, 64h, 72h, 2Eh, B3h, 42h, 6Ch, 6Fh, 63h, 6Bh, B3h, 42h, 75h, 73h, B3h, 49h, 52h, 51h, B3h, 52h, 65h, 73h, 65h, 74h, 0Ah, 0Dh, 00h 109 110 g_szCfgFormat: 111 db 034h, 023h, 038h, 023h, 034h, 023h, 020h, 036h, 023h, 01ah112 ; source: 25h, 73h, B3h, 25h, 35h, 2Dh, 75h, B3h, 25h, 73h, B3h, 20h, 25h, 32h, 2Dh, 49h, B3h, 25h, 35h, 2Dh, 78h, 00h 97 g_szCapacity: ; db "Capacity : ",NULL 98 ; db 43h, 61h, 70h, 61h, 63h, 69h, 74h, 79h, 20h, 3ah, 20h, 00h ; uncompressed 99 db 49h, 67h, 76h, 67h, 69h, 6fh, 7ah, 0ffh, 40h, 00h ; compressed 100 101 g_szSizeSingle: ; db "%s%u.%u %ciB",NULL 102 ; db 25h, 73h, 25h, 75h, 2eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 00h ; uncompressed 103 db 34h, 37h, 29h, 37h, 20h, 35h, 6fh, 88h ; compressed 104 105 g_szSizeDual: ; db "%s%5-u.%u %ciB /%5-u.%u %ciB",LF,CR,NULL 106 ; db 25h, 73h, 25h, 35h, 2dh, 75h, 2eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 20h, 2fh, 25h, 35h, 2dh, 75h, 2eh, 25h, 75h, 20h, 25h, 63h, 69h, 42h, 0ah, 0dh, 00h ; uncompressed 107 db 34h, 38h, 29h, 37h, 20h, 35h, 6fh, 0c8h, 2ah, 38h, 29h, 37h, 20h, 35h, 6fh, 48h, 1bh ; compressed 108 109 g_szCfgHeader: ; db "Addr.",SINGLE_VERTICAL,"Block",SINGLE_VERTICAL,"Bus", SINGLE_VERTICAL,"IRQ", SINGLE_VERTICAL,"Reset",LF,CR,NULL 110 ; db 41h, 64h, 64h, 72h, 2eh, 0b3h, 42h, 6ch, 6fh, 63h, 6bh, 0b3h, 42h, 75h, 73h, 0b3h, 49h, 52h, 51h, 0b3h, 52h, 65h, 73h, 65h, 74h, 0ah, 0dh, 00h ; uncompressed 111 db 47h, 6ah, 6ah, 78h, 29h, 23h, 48h, 72h, 75h, 69h, 71h, 23h, 48h, 7bh, 79h, 23h, 4fh, 58h, 57h, 23h, 58h, 6bh, 79h, 6bh, 7ah, 1bh ; compressed 112 113 g_szCfgFormat: ; db "%s" ,SINGLE_VERTICAL,"%5-u", SINGLE_VERTICAL,"%s",SINGLE_VERTICAL," %2-I",SINGLE_VERTICAL,"%5-x", NULL 114 ; db 25h, 73h, 0b3h, 25h, 35h, 2dh, 75h, 0b3h, 25h, 73h, 0b3h, 20h, 25h, 32h, 2dh, 49h, 0b3h, 25h, 35h, 2dh, 78h, 00h ; uncompressed 115 db 34h, 23h, 38h, 23h, 34h, 23h, 20h, 36h, 23h, 1ah ; compressed 113 116 114 117 115 118 g_szAddressingModes: 116 g_szLCHS: 117 db 052h, 028h, 049h, 04eh, 099h118 ; source: 4Ch, 2Dh, 43h, 48h, 53h, 00h 119 120 g_szPCHS: 121 db 056h, 028h, 049h, 04eh, 099h122 ; source: 50h, 2Dh, 43h, 48h, 53h, 00h 123 124 g_szLBA28: 125 db 052h, 048h, 047h, 02ch, 011h126 ; source: 4Ch, 42h, 41h, 32h, 38h, 00h 127 128 g_szLBA48: 129 db 052h, 048h, 047h, 02eh, 011h130 ; source: 4Ch, 42h, 41h, 34h, 38h, 00h 119 g_szLCHS: ; db "L-CHS",NULL 120 ; db 4ch, 2dh, 43h, 48h, 53h, 00h ; uncompressed 121 db 52h, 28h, 49h, 4eh, 99h ; compressed 122 123 g_szPCHS: ; db "P-CHS",NULL 124 ; db 50h, 2dh, 43h, 48h, 53h, 00h ; uncompressed 125 db 56h, 28h, 49h, 4eh, 99h ; compressed 126 127 g_szLBA28: ; db "LBA28",NULL 128 ; db 4ch, 42h, 41h, 32h, 38h, 00h ; uncompressed 129 db 52h, 48h, 47h, 2ch, 11h ; compressed 130 131 g_szLBA48: ; db "LBA48",NULL 132 ; db 4ch, 42h, 41h, 34h, 38h, 00h ; uncompressed 133 db 52h, 48h, 47h, 2eh, 11h ; compressed 131 134 132 135 g_szAddressingModes_Displacement equ (g_szPCHS - g_szAddressingModes) … … 147 150 %endif 148 151 149 g_szFddUnknown: 150 db 034h, 05bh, 074h, 071h, 074h, 075h, 07dh, 0b4h151 ; source: 25h, 73h, 55h, 6Eh, 6Bh, 6Eh, 6Fh, 77h, 6Eh, 00h 152 153 g_szFddSizeOr: 154 db 034h, 02fh, 021h, 026h, 020h, 075h, 0f8h, 02dh, 022h, 026h, 020h, 04ah, 08ah155 ; source: 25h, 73h, 35h, ACh, 22h, 20h, 6Fh, 72h, 20h, 33h, ABh, 22h, 20h, 44h, 44h, 00h 156 157 g_szFddSize: 158 db 034h, 034h, 026h, 027h, 020h, 037h, 020h, 071h, 06fh, 088h159 ; source: 25h, 73h, 25h, 73h, 22h, 2Ch, 20h, 25h, 75h, 20h, 6Bh, 69h, 42h, 00h 160 161 162 g_szFddThreeHalf: 163 db 02dh, 002h164 ; source: 33h, ABh, 00h 165 166 g_szFddFiveQuarter: 167 db 02fh, 001h168 ; source: 35h, ACh, 00h 152 g_szFddUnknown: ; db "%sUnknown",NULL 153 ; db 25h, 73h, 55h, 6eh, 6bh, 6eh, 6fh, 77h, 6eh, 00h ; uncompressed 154 db 34h, 5bh, 74h, 71h, 74h, 75h, 7dh, 0b4h ; compressed 155 156 g_szFddSizeOr: ; db "%s5",ONE_QUARTER,QUOTATION_MARK," or 3",ONE_HALF,QUOTATION_MARK," DD",NULL 157 ; db 25h, 73h, 35h, 0ach, 22h, 20h, 6fh, 72h, 20h, 33h, 0abh, 22h, 20h, 44h, 44h, 00h ; uncompressed 158 db 34h, 2fh, 21h, 26h, 20h, 75h, 0f8h, 2dh, 22h, 26h, 20h, 4ah, 8ah ; compressed 159 160 g_szFddSize: ; db "%s%s",QUOTATION_MARK,", %u kiB",NULL ; 3½", 1440 kiB 161 ; db 25h, 73h, 25h, 73h, 22h, 2ch, 20h, 25h, 75h, 20h, 6bh, 69h, 42h, 00h ; uncompressed 162 db 34h, 34h, 26h, 27h, 20h, 37h, 20h, 71h, 6fh, 88h ; compressed 163 164 165 g_szFddThreeHalf: ; db "3",ONE_HALF,NULL 166 ; db 33h, 0abh, 00h ; uncompressed 167 db 2dh, 02h ; compressed 168 169 g_szFddFiveQuarter: ; db "5",ONE_QUARTER,NULL 170 ; db 35h, 0ach, 00h ; uncompressed 171 db 2fh, 01h ; compressed 169 172 170 173 g_szFddThreeFive_Displacement equ (g_szFddFiveQuarter - g_szFddThreeHalf) 171 174 172 175 g_szBusTypeValues: 173 g_szBusTypeValues_8Dual: 174 db 04ah, 031h, 000h175 ; source: 44h, 38h, 20h, 00h 176 177 g_szBusTypeValues_8Reversed: 178 db 05eh, 031h, 000h179 ; source: 58h, 38h, 20h, 00h 180 181 g_szBusTypeValues_8Single: 182 db 059h, 031h, 000h183 ; source: 53h, 38h, 20h, 00h 184 185 g_szBusTypeValues_16: 186 db 020h, 02bh, 010h187 ; source: 20h, 31h, 36h, 00h 188 189 g_szBusTypeValues_32: 190 db 020h, 02dh, 00ch191 ; source: 20h, 33h, 32h, 00h 192 193 g_szBusTypeValues_Serial: 194 db 059h, 04bh, 098h195 ; source: 53h, 45h, 52h, 00h 176 g_szBusTypeValues_8Dual: ; db "D8 ",NULL 177 ; db 44h, 38h, 20h, 00h ; uncompressed 178 db 4ah, 31h, 00h ; compressed 179 180 g_szBusTypeValues_8Reversed: ; db "X8 ",NULL 181 ; db 58h, 38h, 20h, 00h ; uncompressed 182 db 5eh, 31h, 00h ; compressed 183 184 g_szBusTypeValues_8Single: ; db "S8 ",NULL 185 ; db 53h, 38h, 20h, 00h ; uncompressed 186 db 59h, 31h, 00h ; compressed 187 188 g_szBusTypeValues_16: ; db " 16",NULL 189 ; db 20h, 31h, 36h, 00h ; uncompressed 190 db 20h, 2bh, 10h ; compressed 191 192 g_szBusTypeValues_32: ; db " 32",NULL 193 ; db 20h, 33h, 32h, 00h ; uncompressed 194 db 20h, 2dh, 0ch ; compressed 195 196 g_szBusTypeValues_Serial: ; db "SER",NULL 197 ; db 53h, 45h, 52h, 00h ; uncompressed 198 db 59h, 4bh, 98h ; compressed 196 199 197 200 g_szBusTypeValues_Displacement equ (g_szBusTypeValues_8Reversed - g_szBusTypeValues) … … 218 221 %endif 219 222 220 g_szSelectionTimeout: 221 db 032h, 033h, 03dh, 059h, 06bh, 072h, 06bh, 069h, 07ah, 06fh, 075h, 0f4h, 06fh, 0f4h, 03ch, 020h, 0b9h 222 ; source: C8h, B5h, 25h, 41h, 53h, 65h, 6Ch, 65h, 63h, 74h, 69h, 6Fh, 6Eh, 20h, 69h, 6Eh, 20h, 25h, 32h, 2Dh, 75h, 20h, 73h, 00h 223 224 225 g_szDashForZero: 226 db 028h, 000h 227 ; source: 2Dh, 20h, 00h 228 229 StringsCompressed_NormalBase equ 58 230 231 ;; translated usage stats 232 ;; 179:8 233 ;; 50:2 234 ;; 32:33 235 ;; 51:3 236 ;; 33:1 237 ;; 52:1 238 ;; 34:3 239 ;; 53:2 240 ;; 44:1 241 ;; 54:1 242 ;; 45:3 243 ;; 46:4 244 ;; 56:5 245 ;; 47:1 246 ;; 49:1 247 ;; 200:1 248 ;; 171:2 249 ;; 181:1 250 ;; 172:2 251 ;; 175:1 252 ;; total special: 20 223 g_szSelectionTimeout: ; db DOUBLE_BOTTOM_LEFT_CORNER,DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL,"%ASelection in %2-u s",NULL 224 ; db 0c8h, 0b5h, 25h, 41h, 53h, 65h, 6ch, 65h, 63h, 74h, 69h, 6fh, 6eh, 20h, 69h, 6eh, 20h, 25h, 32h, 2dh, 75h, 20h, 73h, 00h ; uncompressed 225 db 32h, 33h, 3dh, 59h, 6bh, 72h, 6bh, 69h, 7ah, 6fh, 75h, 0f4h, 6fh, 0f4h, 3ch, 20h, 0b9h ; compressed 226 227 228 g_szDashForZero: ; db "- ",NULL 229 ; db 2dh, 20h, 00h ; uncompressed 230 db 28h, 00h ; compressed 231 232 ;;; end of strings.asm 233 234 StringsCompressed_NormalBase equ 58 235 236 StringsCompressed_FormatsBegin equ 20 237 253 238 StringsCompressed_TranslatesAndFormats: 254 239 db 32 ; 0 … … 272 257 db 200 ; 18 273 258 db 181 ; 19 259 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_s) ; 20 260 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_c) ; 21 261 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_I) ; 22 262 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_u) ; 23 263 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_u) ; 24 264 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_x) ; 25 265 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_x) ; 26 266 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_nl) ; 27 267 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_u) ; 28 268 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_A) ; 29 269 270 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_s || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_s > 255 271 %error "DisplayFormatCompressed_Format_s is out of range of DisplayFormatCompressed_BaseFormatOffset" 272 %endif 273 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_c || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_c > 255 274 %error "DisplayFormatCompressed_Format_c is out of range of DisplayFormatCompressed_BaseFormatOffset" 275 %endif 276 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_2_I || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_I > 255 277 %error "DisplayFormatCompressed_Format_2_I is out of range of DisplayFormatCompressed_BaseFormatOffset" 278 %endif 279 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_u || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_u > 255 280 %error "DisplayFormatCompressed_Format_u is out of range of DisplayFormatCompressed_BaseFormatOffset" 281 %endif 282 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_5_u || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_u > 255 283 %error "DisplayFormatCompressed_Format_5_u is out of range of DisplayFormatCompressed_BaseFormatOffset" 284 %endif 285 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_x || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_x > 255 286 %error "DisplayFormatCompressed_Format_x is out of range of DisplayFormatCompressed_BaseFormatOffset" 287 %endif 288 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_5_x || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_x > 255 289 %error "DisplayFormatCompressed_Format_5_x is out of range of DisplayFormatCompressed_BaseFormatOffset" 290 %endif 291 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_nl || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_nl > 255 292 %error "DisplayFormatCompressed_Format_nl is out of range of DisplayFormatCompressed_BaseFormatOffset" 293 %endif 294 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_2_u || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_u > 255 295 %error "DisplayFormatCompressed_Format_2_u is out of range of DisplayFormatCompressed_BaseFormatOffset" 296 %endif 297 %if DisplayFormatCompressed_BaseFormatOffset < DisplayFormatCompressed_Format_A || DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_A > 255 298 %error "DisplayFormatCompressed_Format_A is out of range of DisplayFormatCompressed_BaseFormatOffset" 299 %endif 300 301 ;; translated usage stats 302 ;; total translated: 274 303 275 304 ;; format usage stats 276 305 ;; A:4 277 306 ;; c:6 278 ;; s:1 3307 ;; s:14 279 308 ;; 2-u:1 280 309 ;; u:5 … … 285 314 ;; nl:6 286 315 ;; total format: 10 287 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_s) ; 20288 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_c) ; 21289 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_I) ; 22290 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_u) ; 23291 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_u) ; 24292 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_x) ; 25293 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_5_x) ; 26294 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_nl) ; 27295 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_2_u) ; 28296 db (DisplayFormatCompressed_BaseFormatOffset - DisplayFormatCompressed_Format_A) ; 29297 298 StringsCompressed_FormatsBegin equ 20299 300 316 301 317 ;; alphabet usage stats 302 ;; 58,:: 2318 ;; 58,::3 303 319 ;; 59,;: 304 320 ;; 60,<: … … 322 338 ;; 78,N: 323 339 ;; 79,O:1 324 ;; 80,P: 1340 ;; 80,P:2 325 341 ;; 81,Q:1 326 342 ;; 82,R:4 327 ;; 83,S: 6343 ;; 83,S:7 328 344 ;; 84,T: 329 345 ;; 85,U:1 … … 339 355 ;; 95,_: 340 356 ;; 96,`: 341 ;; 97,a: 6357 ;; 97,a:7 342 358 ;; 98,b: 343 359 ;; 99,c:4 344 360 ;; 100,d:4 345 ;; 101,e: 9361 ;; 101,e:10 346 362 ;; 102,f:2 347 363 ;; 103,g:2 348 364 ;; 104,h: 349 ;; 105,i:1 1365 ;; 105,i:12 350 366 ;; 106,j: 351 367 ;; 107,k:4 352 ;; 108,l: 4368 ;; 108,l:5 353 369 ;; 109,m:1 354 370 ;; 110,n:9 355 ;; 111,o:1 7371 ;; 111,o:18 356 372 ;; 112,p:3 357 373 ;; 113,q: 358 ;; 114,r:1 1374 ;; 114,r:13 359 375 ;; 115,s:6 360 ;; 116,t:1 0376 ;; 116,t:11 361 377 ;; 117,u:2 362 378 ;; 118,v:2 … … 364 380 ;; 120,x: 365 381 ;; 121,y:2 366 ;; alphabet used _count: 39382 ;; alphabet used count: 39
Note:
See TracChangeset
for help on using the changeset viewer.