Changeset 233 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Strings.asm

Feb 4, 2012, 6:21:22 PM (10 years ago)

Serial Port: split single byte port and baud into two bytes, taking advantage of the two bytes in DPT_SERIAL, which supports more serial baud rates and in particular fixed a bug where a 4x client machine couldn't talk to a 115.2K server machine. This is a wide change, touching lots of files, but most are shallow changes. DetectPrint.asm took the most significant changes, now it calculates the baud rate to display instead of using characters provided by the Configurator. The Configurator now has a new menu flag, FLG_MENUITEM_CHOICESTRINGS, for specifying that values are not linear and they should be lookedup rather than indexed. Finally, another important bug fixed here is that in some error cases, the serial port code could get into an infinite loop waiting ont the hardware; now it has a timeout.

1 edited


  • trunk/XTIDE_Universal_BIOS/Src/Strings.asm

    r197 r233  
    1212g_szRomAt:      db  "%s @ %x",LF,CR,NULL
    14 g_szMaster:             db  "IDE Master at ",NULL
    15 g_szSlave:              db  "IDE Slave  at ",NULL
    16 g_szDetect:             db  "%s%x: ",NULL                      ; IDE Master at 1F0h:
    17 g_szDetectCOM:          db  "%sCOM%c/%u%c: ",NULL              ; IDE Master at COM1/115K:       
    18 g_szDetectCOMAuto:      db  "%sCOM Detect: ",NULL              ; IDE Master at COM Detect:
     14; The following strings are used by DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP
     15; To support an optimization in that code, these strings must start on the same 256 byte page,
     16; which is checked at assembly time below.
     19g_szDetectMaster:       db  "Master",NULL
     20g_szDetectSlave:        db  "Slave ",NULL
     21g_szDetectOuter:        db  "IDE %s at %s: ",NULL
     22g_szDetectPort:         db  "%x",NULL                       ; IDE Master at 1F0h:
     23g_szDetectCOM:          db  "COM%c%s",NULL           
     24g_szDetectCOMAuto:      db  " Auto",NULL
     25g_szDetectCOMSmall:     db  "/%u%u00",NULL                  ; IDE Master at COM1/9600:
     27g_szDetectCOMLarge:     db  "/%u.%uK",NULL                  ; IDE Master at COM1/19.2K:
     29%ifndef CHECK_FOR_UNUSED_ENTRYPOINTS               
     30%if ((g_szDetectEnd-$$) & 0xff00) <> ((g_szDetectStart-$$) & 0xff00)
     31%error "g_szDetect* strings must be on the same 256 byte page, required by DetectPrint_StartDetectWithMasterOrSlaveStringInAXandIdeVarsInCSBP.  Please move this block up or down within strings.asm"
    2035; Boot loader strings
    137152;$translate{200}      = 18;    # DOUBLE_BOTTOM_LEFT_CORNER
    138153;$translate{181}      = 19;    # DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL
     154;$translate{ord('0')} = 20;    # DOUBLE_LEFT_HORIZONTAL_TO_SINGLE_VERTICAL     
    140156; Formats begin immediately after the last Translated character (they are in the same table)
    142 ;$format_begin = 20;
     158;$format_begin = 21;
    144 ;$format{"s"}   = 20;        # n/a
    145160;$format{"c"}   = 21;        # n/a
    146161;$format{"2-I"} = 22;        # must be even
    152167;$format{"2-u"} = 28;        # must be even
    153168;$format{"A"}   = 29;        # n/a
     169;$format{"s"}   = 30;        # n/a     
    155171; NOTE: The last $format cannot exceed 31 (stored in a 5-bit quantity).
Note: See TracChangeset for help on using the changeset viewer.