Your browser does not allow scripts
Please click here to view a static table of contents without scripts
Aliasing Using the Original Sub-Integer Divisors
Return to Introduction  Previous page  Next page
There are two sections of the file FTDIPORT.INF which can be changed - one for Windows 98 & Windows Millennium Edition and the other for Windows 2000 and XP. The entry for Windows XP is shown below with the relevant fields highlighted in bold. Note the entry for Windows 98/ME is very similar and can be changed by following the same steps. It is found under the header FtdiPort232.HW.AddReg.

[FtdiPort232.NT.HW.AddReg]
HKR,,ConfigData,1,01,00,3F,3F,
10,27,88,13,C4,09,E2,04,71,02,38,41,9c,80,4E,C0,34,00,1A,00,0D,00,06,40,03,80,00,00,d0,80

Each field consists of a pair of bytes, ordered as follows: Byte0,Byte1. Bits 13 through 0 denote the integer divisor while bits 16, 15 and 14 denote the sub-integer divisor, as follows

15,14 = 00 - sub-integer divisor = 0
15,14 = 01 - sub-integer divisor = 0.5
15,14 = 10 - sub-integer divisor = 0.25
15,14 = 11 - sub-integer divisor = 0.125

The divisor can be extracted for each entry in a few simple steps, as shown here for the entry 9c,80

Step 1 - re-order the bytes: 9c,80 => 809c Hex
Step 2 - extract the sub-integer divisor; 15 = 1, 14 = 0 => sub-integer = 0.25
Step 3 - extract the integer divisor: 13:0 = 009c Hex = 156 Dec
Step 4 - combine the integer and sub-integer divisors: 156.25 Dec
Step 5 - divide 3000000 by the divisor=> 3000000/156.25 = 19,200 baud

The following lists the standard values and their respective baud rates.

10,27 => divisor = 10000, rate = 300
88,13 => divisor = 5000, rate = 600
C4,09 => divisor = 2500, rate = 1200
E2,04 => divisor = 1250, rate = 2,400
71,02 => divisor = 625, rate = 4,800
38,41 => divisor = 312.5, rate = 9,600
9C,80 => divisor = 156, rate = 19,230
4E,C0 => divisor = 78, rate = 38,461
34,00 => divisor = 52, rate = 57,692
1A,00 => divisor = 26, rate = 115,384
0D,00 => divisor = 13, rate = 230,769
06,40 => divisor = 6.5, rate = 461,538
03,80 => divisor = 3.25, rate = 923,076
00,00 => RESERVED
D0,80 => divisor = 208.25, rate = 14406


To alias a baud rate of 920k baud to the standard 56k baud menu option under windows:

- change the 34,00 entry to 03,80 (simple as both of the values are available from the previous list)


To alias a rate of 197k baud to the standard 4,800 baud menu option under windows :

- find the best divisor, check that it is sufficiently accurate and then modify the appropriate INF file entry.

3,000,000/197,000 = 15.228. The best divisor is 15.25.
3,000,000/15.25 = 196,721. 196,721/197,000 = 99.8%. This is well within the required 3% tolerance.
Set bit 15:14 to 10 for a sub-integer divisor of 0.25, and the lower bits to 0F.

- replace the 71,02 entry with 0F,80.

Incorporating these two changes the FTDIPORT.INF entry becomes

[FtdiPort232.NT.HW.AddReg]
HKR,,ConfigData,1,01,00,3F,3F,10,27,88,13,C4,09,E2,04,
0F,80,38,41,9C,80,4E,C0,03,80,1A,00,0D,00,06,40,03,80,00,00,00,00

This is for Windows 2000 and XP, the changes should be repeated in the Windows 98/ME entry also.