Changeset 292 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS


Ignore:
Timestamp:
Mar 3, 2012, 6:53:28 AM (12 years ago)
Author:
gregli@…
google:author:
gregli@hotmail.com
Message:

Small optimization, moved around some serial code to avoid a few jumps and unnecessary number of sectors check.

Location:
trunk/XTIDE_Universal_BIOS/Src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Device/Serial/SerialCommand.asm

    r277 r292  
    44; Section containing code
    55SECTION .text
     6
     7%define SERIALSERVER_AH_ALREADY_HAS_COMMAND_BYTE
     8%define SERIALSERVER_NO_ZERO_SECTOR_COUNTS     
    69
    710;--------------------------------------------------------------------
     
    4346.readOrWrite:
    4447        mov     [bp+IDEPACK.bFeatures],ah       ; store protocol command
    45 
     48               
    4649        mov     dx, [di+DPT_SERIAL.wSerialPortAndBaud]
    4750
    48         jmp     SerialServer_SendReceive
     51ALIGN JUMP_ALIGN
     52SerialCommand_FallThroughToSerialServer_SendReceive:
    4953
     54%include "SerialServer.asm"
     55
     56%if SerialCommand_FallThroughToSerialServer_SendReceive <> SerialServer_SendReceive
     57%error "SerialServer_SendReceive must be the first routine at the top of SerialServer.asm in the Assembly_Library"
     58%endif
     59
     60ALIGN JUMP_ALIGN       
     61SerialCommand_ReturnError:     
     62        stc
     63        ret     
    5064
    5165;--------------------------------------------------------------------
     
    133147
    134148        test    ax,ax           ; Take care of the case that is different between master and slave.
    135         jz      .error         
     149        jz      SerialCommand_ReturnError
    136150
    137151; fall-through
     
    142156        xchg    dx, ax          ;  move ax to dx (move previously found serial drive to dx, could be zero)
    143157
    144 .identifyDeviceInDX:   
    145         jmp     SerialServerScan_ScanForServer
     158.identifyDeviceInDX:
    146159
    147 .error:
    148         stc
    149         ret
     160ALIGN JUMP_ALIGN
     161SerialCommand_FallThroughToSerialServerScan_ScanForServer:     
     162       
     163%include "SerialServerScan.asm"
     164
     165%if SerialCommand_FallThroughToSerialServerScan_ScanForServer <> SerialServerScan_ScanForServer
     166%error "SerialServerScan_ScanForServer must be the first routine at the top of SerialServerScan.asm in the Assembly_Library"
     167%endif             
     168
     169
  • trunk/XTIDE_Universal_BIOS/Src/Main.asm

    r291 r292  
    1717%define MENUEVENT_INLINE_OFFSETS    ; Only one menu required, save space and inline offsets
    1818
    19 %ifdef MODULE_SERIAL
    20 %define INCLUDE_SERIALSERVER_LIBRARY
    21 %endif
    22        
    2319    ; Included .inc files
    2420    %include "AssemblyLibrary.inc"  ; Assembly Library. Must be included first!
  • trunk/XTIDE_Universal_BIOS/Src/Strings.asm

    r285 r292  
    88; Section containing code
    99SECTION .text
    10 
    11 ; POST drive detection strings
    12 g_szRomAt:      db  "%s @ %x",LF,CR,NULL
    13 
    14 ; Boot loader strings
    15 g_szTryToBoot:          db  "Booting from %s %x",ANGLE_QUOTE_RIGHT,"%x",LF,CR,NULL
    16 g_szBootSectorNotFound: db  "Boot sector "
    17 g_szNotFound:           db  "not found",LF,CR,NULL
    18 g_szReadError:          db  "Error %x!",LF,CR,NULL
    19 
    20 g_szAddressingModes:
    21 g_szLCHS:       db  "L-CHS",NULL
    22 g_szPCHS:       db  "P-CHS",NULL
    23 g_szLBA28:      db  "LBA28",NULL
    24 g_szLBA48:      db  "LBA48",NULL
    25 g_szAddressingModes_Displacement equ (g_szPCHS - g_szAddressingModes)
    26 ;
    27 ; Ensure that addressing modes are correctly spaced in memory
    28 ;
    29 %ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
    30     %if g_szLCHS <> g_szAddressingModes
    31         %error "g_szAddressingModes Displacement Incorrect 1"
    32     %endif
    33     %if g_szPCHS <> g_szLCHS + g_szAddressingModes_Displacement
    34         %error "g_szAddressingModes Displacement Incorrect 2"
    35     %endif
    36     %if g_szLBA28 <> g_szPCHS + g_szAddressingModes_Displacement
    37         %error "g_szAddressingModes Displacement Incorrect 3"
    38     %endif
    39     %if g_szLBA48 <> g_szLBA28 + g_szAddressingModes_Displacement
    40         %error "g_szAddressingModes Displacement Incorrect 4"
    41     %endif
    42 %endif
    43 
    44 g_szBusTypeValues:
    45 g_szBusTypeValues_8Dual:        db      "D8 ",NULL
    46 g_szBusTypeValues_8Reversed:    db      "X8 ",NULL
    47 g_szBusTypeValues_8Single:      db      "S8 ",NULL
    48 g_szBusTypeValues_16:           db      " 16",NULL
    49 g_szBusTypeValues_32:           db      " 32",NULL
    50 g_szBusTypeValues_Serial:       db      "SER",NULL
    51 g_szBusTypeValues_8MemMapped:   db      "M8 ",NULL
    52 g_szBusTypeValues_Displacement equ (g_szBusTypeValues_8Reversed - g_szBusTypeValues)
    53 ;
    54 ; Ensure that bus type strings are correctly spaced in memory
    55 ;
    56 %ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
    57     %if g_szBusTypeValues_8Dual <> g_szBusTypeValues
    58         %error "g_szBusTypeValues Displacement Incorrect 1"
    59     %endif
    60     %if g_szBusTypeValues_8Reversed <> g_szBusTypeValues + g_szBusTypeValues_Displacement
    61         %error "g_szBusTypeValues Displacement Incorrect 2"
    62     %endif
    63     %if g_szBusTypeValues_8Single <> g_szBusTypeValues_8Reversed + g_szBusTypeValues_Displacement
    64         %error "g_szBusTypeValues Displacement Incorrect 3"
    65     %endif
    66     %if g_szBusTypeValues_16 <> g_szBusTypeValues_8Single + g_szBusTypeValues_Displacement
    67         %error "g_szBusTypeValues Displacement Incorrect 4"
    68     %endif
    69     %if g_szBusTypeValues_32 <> g_szBusTypeValues_16 + g_szBusTypeValues_Displacement
    70         %error "g_szBusTypeValues Displacement Incorrect 5"
    71     %endif
    72     %if g_szBusTypeValues_Serial <> g_szBusTypeValues_32 + g_szBusTypeValues_Displacement
    73         %error "g_szBusTypeValues Displacement Incorrect 6"
    74     %endif
    75     %if g_szBusTypeValues_8MemMapped <> g_szBusTypeValues_Serial + g_szBusTypeValues_Displacement
    76         %error "g_szBusTypeValues Displacement Incorrect 7"
    77     %endif
    78 %endif
    79 
    80 g_szSelectionTimeout:   db      DOUBLE_BOTTOM_LEFT_CORNER,DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL,"%ASelection in %2-u s",NULL
    81 
    82 g_szDashForZero:        db      "- ",NULL
    8310
    8411; Boot Menu Floppy Disk strings
     
    14471    %endif
    14572%endif
     73
     74; POST drive detection strings
     75g_szRomAt:      db  "%s @ %x",LF,CR,NULL
     76
     77; Boot loader strings
     78g_szTryToBoot:          db  "Booting from %s %x",ANGLE_QUOTE_RIGHT,"%x",LF,CR,NULL
     79g_szBootSectorNotFound: db  "Boot sector "
     80g_szNotFound:           db  "not found",LF,CR,NULL
     81g_szReadError:          db  "Error %x!",LF,CR,NULL
     82
     83g_szAddressingModes:
     84g_szLCHS:       db  "L-CHS",NULL
     85g_szPCHS:       db  "P-CHS",NULL
     86g_szLBA28:      db  "LBA28",NULL
     87g_szLBA48:      db  "LBA48",NULL
     88g_szAddressingModes_Displacement equ (g_szPCHS - g_szAddressingModes)
     89;
     90; Ensure that addressing modes are correctly spaced in memory
     91;
     92%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
     93    %if g_szLCHS <> g_szAddressingModes
     94        %error "g_szAddressingModes Displacement Incorrect 1"
     95    %endif
     96    %if g_szPCHS <> g_szLCHS + g_szAddressingModes_Displacement
     97        %error "g_szAddressingModes Displacement Incorrect 2"
     98    %endif
     99    %if g_szLBA28 <> g_szPCHS + g_szAddressingModes_Displacement
     100        %error "g_szAddressingModes Displacement Incorrect 3"
     101    %endif
     102    %if g_szLBA48 <> g_szLBA28 + g_szAddressingModes_Displacement
     103        %error "g_szAddressingModes Displacement Incorrect 4"
     104    %endif
     105%endif
     106
     107g_szBusTypeValues:
     108g_szBusTypeValues_8Dual:        db      "D8 ",NULL
     109g_szBusTypeValues_8Reversed:    db      "X8 ",NULL
     110g_szBusTypeValues_8Single:      db      "S8 ",NULL
     111g_szBusTypeValues_16:           db      " 16",NULL
     112g_szBusTypeValues_32:           db      " 32",NULL
     113g_szBusTypeValues_Serial:       db      "SER",NULL
     114g_szBusTypeValues_8MemMapped:   db      "M8 ",NULL
     115g_szBusTypeValues_Displacement equ (g_szBusTypeValues_8Reversed - g_szBusTypeValues)
     116;
     117; Ensure that bus type strings are correctly spaced in memory
     118;
     119%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
     120    %if g_szBusTypeValues_8Dual <> g_szBusTypeValues
     121        %error "g_szBusTypeValues Displacement Incorrect 1"
     122    %endif
     123    %if g_szBusTypeValues_8Reversed <> g_szBusTypeValues + g_szBusTypeValues_Displacement
     124        %error "g_szBusTypeValues Displacement Incorrect 2"
     125    %endif
     126    %if g_szBusTypeValues_8Single <> g_szBusTypeValues_8Reversed + g_szBusTypeValues_Displacement
     127        %error "g_szBusTypeValues Displacement Incorrect 3"
     128    %endif
     129    %if g_szBusTypeValues_16 <> g_szBusTypeValues_8Single + g_szBusTypeValues_Displacement
     130        %error "g_szBusTypeValues Displacement Incorrect 4"
     131    %endif
     132    %if g_szBusTypeValues_32 <> g_szBusTypeValues_16 + g_szBusTypeValues_Displacement
     133        %error "g_szBusTypeValues Displacement Incorrect 5"
     134    %endif
     135    %if g_szBusTypeValues_Serial <> g_szBusTypeValues_32 + g_szBusTypeValues_Displacement
     136        %error "g_szBusTypeValues Displacement Incorrect 6"
     137    %endif
     138    %if g_szBusTypeValues_8MemMapped <> g_szBusTypeValues_Serial + g_szBusTypeValues_Displacement
     139        %error "g_szBusTypeValues Displacement Incorrect 7"
     140    %endif
     141%endif
     142
     143g_szSelectionTimeout:   db      DOUBLE_BOTTOM_LEFT_CORNER,DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL,"%ASelection in %2-u s",NULL
     144
     145g_szDashForZero:        db      "- ",NULL
    146146
    147147; Boot menu bottom of screen strings
  • trunk/XTIDE_Universal_BIOS/Src/StringsCompressed.asm

    r285 r292  
    1717SECTION .text
    1818
     19; Boot Menu Floppy Disk strings
     20;
     21; The following strings are used by BootMenuPrint_RefreshInformation
     22; To support optimizations in that code, these strings must start on the same 256 byte page,
     23; which is checked at assembly time below.
     24;
     25g_szFddStart:
     26g_szFddUnknown: ; db    "Unknown",NULL
     27                ; db     55h,  6eh,  6bh,  6eh,  6fh,  77h,  6eh,  00h    ; uncompressed
     28                  db     5bh,  74h,  71h,  74h,  75h,  7dh, 0b4h          ; compressed
     29
     30g_szFddSizeOr:  ; db    "5",ONE_QUARTER,QUOTATION_MARK," or 3",ONE_HALF,QUOTATION_MARK," DD",NULL
     31                ; db     35h, 0ach,  22h,  20h,  6fh,  72h,  20h,  33h, 0abh,  22h,  20h,  44h,  44h,  00h    ; uncompressed
     32                  db     2fh,  21h,  26h,  20h,  75h, 0f8h,  2dh,  22h,  26h,  20h,  4ah,  8ah                ; compressed
     33
     34g_szFddSize:    ; db    "%s",QUOTATION_MARK,", %u kiB",NULL ; 3½", 1440 kiB
     35                ; db     25h,  73h,  22h,  2ch,  20h,  25h,  75h,  20h,  6bh,  69h,  42h,  00h    ; uncompressed
     36                  db     3eh,  26h,  27h,  20h,  37h,  20h,  71h,  6fh,  88h                      ; compressed
     37
     38g_szFddThreeHalf:       ; db  "3",ONE_HALF,NULL
     39                        ; db   33h, 0abh,  00h    ; uncompressed
     40                          db   2dh,  02h          ; compressed
     41
     42g_szFddEnd:
     43g_szFddFiveQuarter:     ; db  "5",ONE_QUARTER,NULL
     44                        ; db   35h, 0ach,  00h    ; uncompressed
     45                          db   2fh,  01h          ; compressed
     46
     47
     48%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
     49%if ((g_szFddStart-$$) & 0xff00) <> ((g_szFddEnd-$$) & 0xff00)
     50%error "g_szFdd* strings must start on the same 256 byte page, required by the BootMenuPrint_RefreshInformation routines for floppy drives.  Please move this block up or down within strings.asm"
     51%endif
     52%endif
     53
     54; The following strings are used by DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP
     55; To support an optimization in that code, these strings must start on the same 256 byte page,
     56; which is checked at assembly time below.
     57;
     58g_szDetectStart:
     59g_szDetectMaster:       ; db    "Master",NULL
     60                        ; db     4dh,  61h,  73h,  74h,  65h,  72h,  00h    ; uncompressed
     61                          db     53h,  67h,  79h,  7ah,  6bh, 0b8h          ; compressed
     62
     63g_szDetectSlave:        ; db    "Slave ",NULL
     64                        ; db     53h,  6ch,  61h,  76h,  65h,  20h,  00h    ; uncompressed
     65                          db     59h,  72h,  67h,  7ch,  6bh,  00h          ; compressed
     66
     67g_szDetectOuter:        ; db    "IDE %s at %s: ",NULL
     68                        ; db     49h,  44h,  45h,  20h,  25h,  73h,  20h,  61h,  74h,  20h,  25h,  73h,  3ah,  20h,  00h    ; uncompressed
     69                          db     4fh,  4ah, 0cbh,  3eh,  20h,  67h, 0fah,  3eh,  40h,  00h                                  ; compressed
     70
     71%ifdef MODULE_SERIAL        ;%%; is stripped off after string compression, %ifdef won't compress properly
     72g_szDetectOuterSerial:  ; db    "Serial %s on %s: ",NULL
     73                        ; db     53h,  65h,  72h,  69h,  61h,  6ch,  20h,  25h,  73h,  20h,  6fh,  6eh,  20h,  25h,  73h,  3ah,  20h,  00h    ; uncompressed
     74                          db     59h,  6bh,  78h,  6fh,  67h, 0f2h,  3eh,  20h,  75h, 0f4h,  3eh,  40h,  00h                                  ; compressed
     75
     76g_szDetectCOM:          ; db  "COM%c%s",NULL
     77                        ; db   43h,  4fh,  4dh,  25h,  63h,  25h,  73h,  00h    ; uncompressed
     78                          db   49h,  55h,  53h,  35h,  1eh                      ; compressed
     79
     80g_szDetectCOMAuto:      ; db    " Detect",NULL
     81                        ; db     20h,  44h,  65h,  74h,  65h,  63h,  74h,  00h    ; uncompressed
     82                          db     20h,  4ah,  6bh,  7ah,  6bh,  69h, 0bah          ; compressed
     83
     84g_szDetectCOMSmall:     ; db    "/%u%u00",NULL                  ; IDE Master at COM1/9600:
     85                        ; db     2fh,  25h,  75h,  25h,  75h,  30h,  30h,  00h    ; uncompressed
     86                          db     2ah,  37h,  37h,  34h,  14h                      ; compressed
     87
     88g_szDetectCOMLarge:     ; db    "/%u.%uK",NULL                  ; IDE Master at COM1/19.2K:
     89                        ; db     2fh,  25h,  75h,  2eh,  25h,  75h,  4bh,  00h    ; uncompressed
     90                          db     2ah,  37h,  29h,  37h,  91h                      ; compressed
     91
     92%endif                      ;%%; is stripped off after string compression, %ifdef won't compress properly
     93g_szDetectEnd:
     94g_szDetectPort:         ; db    "%x",NULL                       ; IDE Master at 1F0h:
     95                        ; db     25h,  78h,  00h    ; uncompressed
     96                          db     19h                ; compressed
     97
     98
     99%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
     100%if ((g_szDetectEnd-$$) & 0xff00) <> ((g_szDetectStart-$$) & 0xff00)
     101%error "g_szDetect* strings must start on the same 256 byte page, required by DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP.  Please move this block up or down within strings.asm"
     102%endif
     103%endif
     104
     105; Boot Menu menuitem strings
     106;
     107; The following strings are used by BootMenuPrint_* routines.
     108; To support optimizations in that code, these strings must start on the same 256 byte page,
     109; which is checked at assembly time below.
     110;
     111g_szBootMenuPrintStart:
     112g_szDriveNum:           ; db    "%x %s",NULL
     113                        ; db     25h,  78h,  20h,  25h,  73h,  00h    ; uncompressed
     114                          db     39h,  20h,  1eh                      ; compressed
     115
     116g_szDriveNumBOOTNFO:    ; db    "%x %z",NULL
     117                        ; db     25h,  78h,  20h,  25h,  7ah,  00h    ; uncompressed
     118                          db     39h,  20h,  1fh                      ; compressed
     119
     120g_szFloppyDrv:          ; db    "Floppy Drive %c",NULL
     121                        ; db     46h,  6ch,  6fh,  70h,  70h,  79h,  20h,  44h,  72h,  69h,  76h,  65h,  20h,  25h,  63h,  00h    ; uncompressed
     122                          db     4ch,  72h,  75h,  76h,  76h, 0ffh,  4ah,  78h,  6fh,  7ch, 0ebh,  15h                            ; compressed
     123
     124g_szBootMenuPrintEnd:
     125g_szForeignHD:          ; db    "Foreign Hard Disk",NULL
     126                        ; db     46h,  6fh,  72h,  65h,  69h,  67h,  6eh,  20h,  48h,  61h,  72h,  64h,  20h,  44h,  69h,  73h,  6bh,  00h    ; uncompressed
     127                          db     4ch,  75h,  78h,  6bh,  6fh,  6dh, 0f4h,  4eh,  67h,  78h, 0eah,  4ah,  6fh,  79h, 0b1h                      ; compressed
     128
     129
     130%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
     131%if ((g_szBootMenuPrintStart-$$) & 0xff00) <> ((g_szBootMenuPrintEnd-$$) & 0xff00)
     132%error "g_szBootMenuPrint* strings must start on the same 256 byte page, required by the BootMenuPrint_* routines.  Please move this block up or down within strings.asm"
     133%endif
     134%endif
     135
    19136; POST drive detection strings
    20137g_szRomAt:      ; db    "%s @ %x",LF,CR,NULL
     
    143260                          db         28h,  00h          ; compressed
    144261
    145 
    146 ; Boot Menu Floppy Disk strings
    147 ;
    148 ; The following strings are used by BootMenuPrint_RefreshInformation
    149 ; To support optimizations in that code, these strings must start on the same 256 byte page,
    150 ; which is checked at assembly time below.
    151 ;
    152 g_szFddStart:
    153 g_szFddUnknown: ; db    "Unknown",NULL
    154                 ; db     55h,  6eh,  6bh,  6eh,  6fh,  77h,  6eh,  00h    ; uncompressed
    155                   db     5bh,  74h,  71h,  74h,  75h,  7dh, 0b4h          ; compressed
    156 
    157 g_szFddSizeOr:  ; db    "5",ONE_QUARTER,QUOTATION_MARK," or 3",ONE_HALF,QUOTATION_MARK," DD",NULL
    158                 ; db     35h, 0ach,  22h,  20h,  6fh,  72h,  20h,  33h, 0abh,  22h,  20h,  44h,  44h,  00h    ; uncompressed
    159                   db     2fh,  21h,  26h,  20h,  75h, 0f8h,  2dh,  22h,  26h,  20h,  4ah,  8ah                ; compressed
    160 
    161 g_szFddSize:    ; db    "%s",QUOTATION_MARK,", %u kiB",NULL ; 3½", 1440 kiB
    162                 ; db     25h,  73h,  22h,  2ch,  20h,  25h,  75h,  20h,  6bh,  69h,  42h,  00h    ; uncompressed
    163                   db     3eh,  26h,  27h,  20h,  37h,  20h,  71h,  6fh,  88h                      ; compressed
    164 
    165 g_szFddThreeHalf:       ; db  "3",ONE_HALF,NULL
    166                         ; db   33h, 0abh,  00h    ; uncompressed
    167                           db   2dh,  02h          ; compressed
    168 
    169 g_szFddEnd:
    170 g_szFddFiveQuarter:     ; db  "5",ONE_QUARTER,NULL
    171                         ; db   35h, 0ach,  00h    ; uncompressed
    172                           db   2fh,  01h          ; compressed
    173 
    174 
    175 %ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
    176 %if ((g_szFddStart-$$) & 0xff00) <> ((g_szFddEnd-$$) & 0xff00)
    177 %error "g_szFdd* strings must start on the same 256 byte page, required by the BootMenuPrint_RefreshInformation routines for floppy drives.  Please move this block up or down within strings.asm"
    178 %endif
    179 %endif
    180 
    181 ; The following strings are used by DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP
    182 ; To support an optimization in that code, these strings must start on the same 256 byte page,
    183 ; which is checked at assembly time below.
    184 ;
    185 g_szDetectStart:
    186 g_szDetectMaster:       ; db    "Master",NULL
    187                         ; db     4dh,  61h,  73h,  74h,  65h,  72h,  00h    ; uncompressed
    188                           db     53h,  67h,  79h,  7ah,  6bh, 0b8h          ; compressed
    189 
    190 g_szDetectSlave:        ; db    "Slave ",NULL
    191                         ; db     53h,  6ch,  61h,  76h,  65h,  20h,  00h    ; uncompressed
    192                           db     59h,  72h,  67h,  7ch,  6bh,  00h          ; compressed
    193 
    194 g_szDetectOuter:        ; db    "IDE %s at %s: ",NULL
    195                         ; db     49h,  44h,  45h,  20h,  25h,  73h,  20h,  61h,  74h,  20h,  25h,  73h,  3ah,  20h,  00h    ; uncompressed
    196                           db     4fh,  4ah, 0cbh,  3eh,  20h,  67h, 0fah,  3eh,  40h,  00h                                  ; compressed
    197 
    198 ;%%; %ifdef MODULE_SERIAL       ;%%; is stripped off after string compression, %ifdef won't compress properly
    199 g_szDetectOuterSerial:  ; db    "Serial %s on %s: ",NULL
    200                         ; db     53h,  65h,  72h,  69h,  61h,  6ch,  20h,  25h,  73h,  20h,  6fh,  6eh,  20h,  25h,  73h,  3ah,  20h,  00h    ; uncompressed
    201                           db     59h,  6bh,  78h,  6fh,  67h, 0f2h,  3eh,  20h,  75h, 0f4h,  3eh,  40h,  00h                                  ; compressed
    202 
    203 g_szDetectCOM:          ; db  "COM%c%s",NULL
    204                         ; db   43h,  4fh,  4dh,  25h,  63h,  25h,  73h,  00h    ; uncompressed
    205                           db   49h,  55h,  53h,  35h,  1eh                      ; compressed
    206 
    207 g_szDetectCOMAuto:      ; db    " Detect",NULL
    208                         ; db     20h,  44h,  65h,  74h,  65h,  63h,  74h,  00h    ; uncompressed
    209                           db     20h,  4ah,  6bh,  7ah,  6bh,  69h, 0bah          ; compressed
    210 
    211 g_szDetectCOMSmall:     ; db    "/%u%u00",NULL                  ; IDE Master at COM1/9600:
    212                         ; db     2fh,  25h,  75h,  25h,  75h,  30h,  30h,  00h    ; uncompressed
    213                           db     2ah,  37h,  37h,  34h,  14h                      ; compressed
    214 
    215 g_szDetectCOMLarge:     ; db    "/%u.%uK",NULL                  ; IDE Master at COM1/19.2K:
    216                         ; db     2fh,  25h,  75h,  2eh,  25h,  75h,  4bh,  00h    ; uncompressed
    217                           db     2ah,  37h,  29h,  37h,  91h                      ; compressed
    218 
    219 ;%%; %endif                     ;%%; is stripped off after string compression, %ifdef won't compress properly
    220 g_szDetectEnd:
    221 g_szDetectPort:         ; db    "%x",NULL                       ; IDE Master at 1F0h:
    222                         ; db     25h,  78h,  00h    ; uncompressed
    223                           db     19h                ; compressed
    224 
    225 
    226 %ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
    227 %if ((g_szDetectEnd-$$) & 0xff00) <> ((g_szDetectStart-$$) & 0xff00)
    228 %error "g_szDetect* strings must start on the same 256 byte page, required by DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP.  Please move this block up or down within strings.asm"
    229 %endif
    230 %endif
    231 
    232 ; Boot Menu menuitem strings
    233 ;
    234 ; The following strings are used by BootMenuPrint_* routines.
    235 ; To support optimizations in that code, these strings must start on the same 256 byte page,
    236 ; which is checked at assembly time below.
    237 ;
    238 g_szBootMenuPrintStart:
    239 g_szDriveNum:           ; db    "%x %s",NULL
    240                         ; db     25h,  78h,  20h,  25h,  73h,  00h    ; uncompressed
    241                           db     39h,  20h,  1eh                      ; compressed
    242 
    243 g_szDriveNumBOOTNFO:    ; db    "%x %z",NULL
    244                         ; db     25h,  78h,  20h,  25h,  7ah,  00h    ; uncompressed
    245                           db     39h,  20h,  1fh                      ; compressed
    246 
    247 g_szFloppyDrv:          ; db    "Floppy Drive %c",NULL
    248                         ; db     46h,  6ch,  6fh,  70h,  70h,  79h,  20h,  44h,  72h,  69h,  76h,  65h,  20h,  25h,  63h,  00h    ; uncompressed
    249                           db     4ch,  72h,  75h,  76h,  76h, 0ffh,  4ah,  78h,  6fh,  7ch, 0ebh,  15h                            ; compressed
    250 
    251 g_szBootMenuPrintEnd:
    252 g_szForeignHD:          ; db    "Foreign Hard Disk",NULL
    253                         ; db     46h,  6fh,  72h,  65h,  69h,  67h,  6eh,  20h,  48h,  61h,  72h,  64h,  20h,  44h,  69h,  73h,  6bh,  00h    ; uncompressed
    254                           db     4ch,  75h,  78h,  6bh,  6fh,  6dh, 0f4h,  4eh,  67h,  78h, 0eah,  4ah,  6fh,  79h, 0b1h                      ; compressed
    255 
    256 
    257 %ifndef CHECK_FOR_UNUSED_ENTRYPOINTS
    258 %if ((g_szBootMenuPrintStart-$$) & 0xff00) <> ((g_szBootMenuPrintEnd-$$) & 0xff00)
    259 %error "g_szBootMenuPrint* strings must start on the same 256 byte page, required by the BootMenuPrint_* routines.  Please move this block up or down within strings.asm"
    260 %endif
    261 %endif
    262262
    263263; Boot menu bottom of screen strings
Note: See TracChangeset for help on using the changeset viewer.