---------------------------------------------------
                      VFP 9.0 FIX - THE COMMAND WINDOW IS SMALL
                                  July 2019
                 ---------------------------------------------------
                                     CCB



1. BUG:

     In vfp9 (and vfp6, vfp7, vfp8), if there is no the resource file (foxuser.dbf),
     the Command window is small (5 rows, 50 cols) at the startup of Visual FoxPro, now the Command window is bigger (10 rows, 80 cols).


2. CAUSE:

     There are some BUGs in the following code.


3. RESOLUTION:

     We can write some code to fix the BUG.

     Fun5446c1 :: ; proc near
             push ebx                                                        ;0x005446c1 :        53
             push esi                                                        ;0x005446c2 :        56
             push edi                                                        ;0x005446c3 :        57
             mov esi , eax                                                   ;0x005446c4 :        8bf0
             call Fun42f5d1                                                  ;0x005446c6 :        e806afeeff
             mov  eax , dword ptr [eax]                                      ;0x005446cb :        8b00
             movzx edi ,word ptr [ eax + 0160h ]                             ;0x005446cd :        0fb7b860010000
             mov  ebx , dword ptr [esi]                                      ;0x005446d4 :        8b1e


     ;
     ;                 ---------------------------------------------------
     ;                      VFP 9.0 FIX - THE COMMAND WINDOW IS SMALL
     ;                                  July 2019
     ;                 ---------------------------------------------------
     ;                                     CCB
     ;
     ; If there is no the resource file (foxuser.dbf),
     ; the Command window is small (5 rows, 50 cols) at the startup of Visual FoxPro, now the Command window is bigger (10 rows, 80 cols).
     ;
     ; 2019/7/21, by ccb
     ;

             mov eax , dword ptr [ Data93e6d0 ]
             test eax , eax
             je Label5446d6
             mov eax , dword ptr [eax]
             mov eax , dword ptr [eax]
             cmp dword ptr [ebx] , eax
             jne Label5446d6
             imul edi , edi , 050h
             jmp Label5446d9


     Label5446d6 ::
             imul edi , edi , 032h                                           ;0x005446d6 :        6bff32

     Label5446d9 ::
             sub  edi , dword ptr [ ebx + 0B0h ]                             ;0x005446d9 :        2bbbb0000000
             mov eax , esi                                                   ;0x005446df :        8bc6
             add  edi , dword ptr [ ebx + 0A0h ]                             ;0x005446e1 :        03bba0000000
             call Fun42f5d1                                                  ;0x005446e7 :        e8e5aeeeff
             mov  eax , dword ptr [eax]                                      ;0x005446ec :        8b00
             movzx eax ,word ptr [ eax + 0162h ]                             ;0x005446ee :        0fb78062010000
             lea edx ,  dword ptr [ eax + 4 * eax ]                          ;0x005446f5 :        8d1480


     ;
     ;                 ---------------------------------------------------
     ;                      VFP 9.0 FIX - THE COMMAND WINDOW IS SMALL
     ;                                  July 2019
     ;                 ---------------------------------------------------
     ;                                     CCB
     ;
     ; If there is no the resource file (foxuser.dbf),
     ; the Command window is small (5 rows, 50 cols) at the startup of Visual FoxPro, now the Command window is bigger (10 rows, 80 cols).
     ;
     ; 2019/7/21, by ccb
     ;

             mov eax , dword ptr [ Data93e6d0 ]
             test eax , eax
             je Label5446f8
             mov eax , dword ptr [eax]
             mov eax , dword ptr [eax]
             cmp dword ptr [ebx] , eax
             jne Label5446f8
             shl edx,01h


     Label5446f8 ::
             sub  edx , dword ptr [ ebx + 0B4h ]                             ;0x005446f8 :        2b93b4000000
             mov eax , edi                                                   ;0x005446fe :        8bc7
             add  edx , dword ptr [ ebx + 0A4h ]                             ;0x00544700 :        0393a4000000
             mov ecx , esi                                                   ;0x00544706 :        8bce
             call Fun43799f                                                  ;0x00544708 :        e89232efff
             mov eax , esi                                                   ;0x0054470d :        8bc6
             call Fun42f5d1                                                  ;0x0054470f :        e8bdaeeeff
             mov ebx , eax                                                   ;0x00544714 :        8bd8
             mov eax , esi                                                   ;0x00544716 :        8bc6
             call Fun42f5d1                                                  ;0x00544718 :        e8b4aeeeff
             mov  ecx , dword ptr [ebx]                                      ;0x0054471d :        8b0b
             movzx edx ,word ptr [ ecx + 0160h ]                             ;0x0054471f :        0fb79160010000
             mov  ecx , dword ptr [ Data9377a4 ]                             ;0x00544726 :        8b0da4779300
             mov  eax , dword ptr [eax]                                      ;0x0054472c :        8b00
             sub ecx , edx                                                   ;0x0054472e :        2bca
             movzx edx ,word ptr [ eax + 0162h ]                             ;0x00544730 :        0fb79062010000
             sub ecx , edi                                                   ;0x00544737 :        2bcf
             call Fun439d7e                                                  ;0x00544739 :        e84056efff
             pop edi                                                         ;0x0054473e :        5f
             pop esi                                                         ;0x0054473f :        5e
             pop ebx                                                         ;0x00544740 :        5b
             ret                                                             ;0x00544741 :        c3


4. APPLIES TO:

     VFP 6.0.8167.0
     VFP 6.0.8961.0 (SP5)

     VFP 7.0.0.9262
     VFP 7.0.0.9465 (SP1)

     VFP 8.0.0.2521
     VFP 8.0.0.3117 (SP1)

     VFP 9.0.0.2412
     VFP 9.0.0.3504 (SP1)
     VFP 9.0.0.4611 (SP2)
     VFP 9.0.0.5015 (SP2)
     VFP 9.0.0.5411 (SP2)
     VFP 9.0.0.5721 (SP2)
     VFP 9.0.0.5815 (SP2)
     VFP 9.0.0.6303 (SP2)
     VFP 9.0.0.6602 (SP2)
     VFP 9.0.0.7423 (SP2)

     The bug has been fixed in VFP Advanced.


5. REFERENCE WEBSITES:

     1, baiyujia.com:
     http://www.baiyujia.com


6. OTHER:

     For reference only, there is no guarantees.

     Any questions or suggestions, please send me an email at ccb2000@163.com.