Jump to content

reboot12

Member
  • Posts

    481
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    Poland

Posts posted by reboot12

  1. @Dietmar

    A CSMWrap version has been released, which allows you to use the BIOS video from the disk from EFI\Boot\vgabios.bin
    https://github.com/FlyGoat/CSMWrap/issues/37#issuecomment-3030297746

    Compiled bins: https://github.com/FlyGoat/CSMWrap/actions/runs/16040013218

    Thanks to this, WinXP boot OK on iGPU using ntldr as on a normal Legacy machine :cheerleader: - I tested CoffeeLake, Haswell, SandyBridge: CSM Disabled, iGPU VBIOS extracted from motherboard bios.

    Now - I don't have to use SeaVGABIOS and Longhorn bootmgr 5472 loader.

  2.  

    53 minutes ago, Dave-H said:

    So, do you think the two patches I've tried are actually doing exactly the same thing, so there's no advantage of one over the other?

    I don't know, but if you compare patched kernel files 5.1.2600.6368 in a hex editor and are changed exactly the same bytes in the same offsets, it means that they work the same. You must first patch using a patcher v3.5 kernel file 5.1.2600.6368

    ntkrnlpa.exe 5.1.2600.6368 > https://catalog.update.microsoft.com/Search.aspx?q=2813170

    WinXPPAE.bat script default patch all RAM:

    WinXPPAE.exe /M:ALL /NOBACKUP

    so, put ntkrnlpa.exe (GDR version) and WinXPPAE.exe in same folder then patch as above:

    winxppae /M:ALL
    Windows XP PAE Patcher 3.0 by daniel_k | HAL patches by <Mov AX, 0xDEAD>
    PAE will be enabled using all available RAM.
    Patching ntkrnlpa.exe (Uniprocessor PAE Kernel)... OK!
    File ntkrpamp.exe (Multiprocessor PAE Kernel) was not found.
    File hal.dll (Standard PC/Standard PC w/ C-Step i486 HAL) was not found.
    File halaacpi.dll (ACPI Uniprocessor PC HAL) was not found.
    File halacpi.dll (ACPI PC HAL) was not found.
    File halapic.dll (MPS Uniprocessor PC HAL) was not found.
    File halmacpi.dll (ACPI Multiprocessor PC HAL) was not found.
    File halmps.dll (MPS Multiprocessor PC HAL) was not found.

    No, this is not simple to compare - too big differences :-( Probably ntkl64g.exe is compiled from source code.

    org vs v35 differ only in 11 bytes:

    Search for differences
    1. org_ntkrnlpa.exe: 2 070 016 bytes
    2. 35_ntkrnlpa.exe: 2 070 016 bytes
    Offsets: hexadec.
    
       138:    C2    04
       139:    FF    03
       13A:    1F    20
    16B632:    07    00
    16B637:    01    02
    1703C2:    74    EB
    1BE554:    10    00
    1BE555:    00    02
    1BE56A:    1B    00
    1BE572:    FC    F8
    1BE576:    01    02
    
    11 difference(s) found.
    	
  3. 21 minutes ago, Dave-H said:

    How the other patch does it without having that specified is impressive!

    This is not impressive - simply this is patched ntkrpamp.exe for multi CPU/multi core use:
    kernel.png

    Modern computers have multi-core processors and the use of RAM patch on old PC does not make sense because old computers with a single-core processor do not support a large amount of RAM and a patch is not needed.

    Therefore, the 64G patch does not contain other kernal and hal files.

  4. @Ascii2

    I make big tests:

    • using Macrium Reflect clone OS to other HDD - still problem
    • replace RAM modules - still problem
    • use only 2GB RAM 1+1 - still problem
    • using Macrium Reflect make disk image, then restore on other PC - Haswell 8GB RAM (4+4 Dual Channel), OS boot, find new devices, I install drivers. I test and it looks like there is no problem and WinXPPAE 3.5 works well :-)
      I use exactly same patched files and settings: ntkrnl2.exe SP2 5.1.2600.2180 + hal2.dll SP3 5.1.2600.5512, noexecute=optin
      I have to use the system for some time to make sure 100% that there is no problem.

    It seems that the problem is only on SandyBridge machines.

  5. 1 hour ago, Ascii2 said:

    reboot12 has not indicated which kernel and HAL file versions

    Yea, I use SP2:

    • ntkrnl2.exe SP2 5.1.2600.2180 (patched by WinXPPAE 3.5 on SP2 OS) + hal2.dll SP3 5.1.2600.5512 (patched by WinXPPAE 3.5 on SP3 OS because the patcher cannot patches the hal.dll SP2 version)
    • ntkrnl3.exe SP3 5.1.2600.5512 + hal3.dll SP3 5.1.2600.5512 - both patched by WinXPPAE 3.5 on SP3 OS
    • ntkl64g.exe SP3 5.1.2600.6368 + hal64g.dll SP3 5.1.2600.5512 - files from @Dave-H 64 GB of RAM patch.zip

    I test (for a short time) my XP SP2 on other machines and probably no lag issue but this is fresh installed OS - no any drivers, apps.

    • maybe lag issue is only on my SandyBridge machine
    • recently I changed 2x4GB RAM - maybe they cause the problem?
    • my OS has all drivers and many applications installed - maybe some application or driver works badly with a RAM patcher?

    I have to test the patch for a long time on other computers + all drivers installed.

    boot.ini

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="RAM v3.5" /noexecute=optin /fastdetect /kernel=ntkrnl2.exe /hal=hal2.dll
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="WinXP" /noexecute=optin /fastdetect

    This is my table when DEP/PAE works on WinXP SP2 depending on the setting of the noexecute option in boot.ini
    noexecute-boot-ini.png

    So, I do not have to use boot.ini switch /PAE because noexecute=optin is enough.

  6. 22 hours ago, Dave-H said:

    I wasn't very confident, expecting a BSOD at worst, and other issues even if that didn't happen.
    To my amazement, at least on my system, it seems to have worked perfectly!

    @Dietmar @Mov AX, 0xDEAD

    I use the WinXPPAE 3.5 patch for a week and I noticed a problem with disk operations - the same is for the 64G version:
    Video when ram patch is used - lags: https://files.catbox.moe/ericzb.zip
    Video when no ram patch: https://www.sendspace.com/file/17e170

    Testing config:

    • Asus P8H61-M LE R2.0
    • RAM 2x4GB DDR3-1600 Dual-Channel
    • CPU Intel Core i3-2120
    • WinXP SP2 Pro
    • HDD: SATA in AHCI mode

     

  7. @Dietmar

    I spent a bigger half day today testing XP32 with iGPU and I have good news. XP runs best with iGPU (Haswell) on vbemp.sys (PNP) 2015 driver in co-op with my UefiSeven (u7nwbm.efi + UefiSeven.ini with set native resolution of monitor) and Longhorn 5472 bootmgr+BCD+winload.exe loader - iGPU need be set as Primary Display in bios

    • XP can be run in the native resolution of the monitor - it depends on the monitor connected and the cable used (probably also on the EDID), the aurora boot screen is badly displayed when the resolution is native but the XP desktop works fine :P
    • you can change the available resolutions - if the resolution is lower than the native one, the desktop is displayed from the top right corner without cleaning the screen - the previous content remains on the screen
    • original XP vga.sys driver works badly with UefiSeven, there are some resolutions to choose from display settings but trying to change it restarts XP

    I boot XP in this way: in bios CSM Disabled (pure UEFI) > PC boot UEFI Shell from FAT32 100MB from EFI\Boot\bootx64.efi > startup.nsh starts UefiSeven and CSMWrap 1.2.1 (in UefiSeven.ini file native resolution monitor is set)

    NOTE: During installation of the vbemp driver, the system reboots but after the reboot it already starts on the vbemp driver at 640x480 and you can change the resolution to another e.g. native (if UefiSeven was previously running at this resolution)

    My monitor native resolution is 1360x768 but I test also other monitors native 1920x1080 and native 2560x1440 - see screenshots at bottom.

    UefiSeven.ini

    ; UefiSeven configuration file
    ; 0 = false, 1 = true
    
    [config]
    skiperrors=0      ; skip warnings and prompts
    force_fakevesa=0  ; overwrite Int10h handler with fakevesa even when the native handler is present
    verbose=1         ; enable verbose mode
    logfile=0         ; log to UefiSeven.log file
    resheight=1360    ; preferred height
    reswidth=768    ; preferred width
    

    EFI\Boot\startup.nsh

    @echo -off
    
    if exist fs0:\121.efi then
    set base "fs0:"
    endif
    if exist fs1:\121.efi then
    set base "fs1:"
    endif
    if exist fs2:\121.efi then
    set base "fs2:"
    endif
    if exist fs3:\121.efi then
    set base "fs3:"
    endif
    if exist fs4:\121.efi then
    set base "fs4:"
    endif
    if exist fs5:\121.efi then
    set base "fs5:"
    endif
    if exist fs6:\121.efi then
    set base "fs6:"
    endif
    if exist fs7:\121.efi then
    set base "fs7:"
    endif
    if exist fs8:\121.efi then
    set base "fs8:"
    endif
    if exist fs9:\121.efi then
    set base "fs9:"
    endif
    if exist fsa:\121.efi then
    set base "fsa:"
    endif
    if exist fsb:\121.efi then
    set base "fsb:"
    endif
    
    %base%
    u7nwbm.efi
    121.efi

    u7-csmwrap121-vbemp-monitor-1360x768.png u7-csmwrap121-vbemp-monitor-1920x1080.pn u7-csmwrap121-vbemp-monitor-2560x1440.pn

    If we run the XP without UefiSeven then OS boot in 1024x768 and there are only 3 resolutions available (no native):
    no-Uefi-Seven.png

  8. I compile CSMWrap replacing SeaVGABIOS to ValleyView Legacy video BIOS extracted from Jetway HPC070SC industrial computer:
    https://github.com/FlyGoat/CSMWrap/issues/37#issuecomment-2921265627
    Risky to use on other Laptops but this is Mobile/Desktop version so should work on desktop computers:
    Bay-Trail-Mobile-Desktop.png
    https://files.catbox.moe/6xj4hm.zip

    User win98se on github test this version, "But the graphics are glitched, and after spinning for a while" but not damaged:
    https://github.com/FlyGoat/CSMWrap/issues/39#issuecomment-2977152878

    bt.png

  9. 4 minutes ago, Dietmar said:

    I still do not understand,

    why now you get the latest Source files from csmwrap.efi .

    Is it, because you connect now to another server via

    No, they probably already corrected the repository and now git clones the latest version :-)

  10. OK, git corrected and now downloads the current version :D

    This is full tutorial how compile CSMWrap:

    Download and install Ubuntu: https://releases.ubuntu.com/noble/ubuntu-24.04.2-live-server-amd64.iso
    During installation, select Install OpenSSH server - this makes it easy to copy files from Ubuntu to Windows using WinSCP and use Ubuntu over SSH e.g. in Putty
    SSH-server.png

    sudo passwd root (enter password for user)
    sudo passwd root (make new password for root)
    sudo login root or reboot and login using root
    nano /etc/ssh/sshd_config

        PermitRootLogin yes
        PasswordAuthentication yes

    Ctrl+o to save and Ctrl+x to exit
    service ssh restart

    ssh.png

    apt update
    apt install -y build-essential nasm curl xxd net-tools

    git clone https://github.com/FlyGoat/CSMWrap.git --recursive
    cd CSMWrap
    make seabios
    make

    ifconfig - to check IP
    using WinSCP make connection and connect to Ubuntu:

    New Site, File protocol: SCP, Host name: IP, root User name and Password, Save
    ssh-win.png WinSCP.png works-121.png

  11. @Dietmar

    No, I tried like this but errors:

    wget https://github.com/FlyGoat/CSMWrap/archive/refs/tags/1.2.1.tar.gz
    tar -xvf 1.2.1.tar.gz
    mv CSMWrap-1.2.1 csmwrap
    cd csmwrap
    root@ubuntu:~/csmwrap# make seabios
    make -C seabios distclean
    make[1]: Entering directory '/root/csmwrap/seabios'
    make[1]: *** No rule to make target 'distclean'.  Stop.
    make[1]: Leaving directory '/root/csmwrap/seabios'
    make: *** [GNUmakefile:271: seabios] Error 2
    root@ubuntu:~/csmwrap# make
    make: *** No rule to make target 'nyu-efi/src/elf_x86_64_efi.lds', needed by 'bin-x86_64/csmwrap'.  Stop.

    F..k, but a mess :crazy:

  12. OK, finally works :P

    I was running all the time with CSMWrap and it turned out that with this it doesn't work on Haswell:
    https://forums.mydigitallife.net/threads/winxppae-v3-5-winxp-sp2-issue.89363/#post-1881947

    Also, the ntkl64g.exe file has a bad checksum and doesn't work when trying to run using winload.exe - error 221:
    ntkl64g-221.png

    setcsum ntkl64g.exe
    
     SetCSUM v1.01, (c)2000 Jeremy Collake
     http://www.collakesoftware.com
     mailto:collake@charter.net
     ----------------------------------------------------------------------
     .\ntkl64g.exe =
        Header Checksum:  001FACDE
        Correct Checksum: 001FF99B
        Checksums do not match!
         Set correct checksum in file? [Y/N/Q] Y
         Recompute
         Header Checksum: 001FF99B
         Correct Checksum: 001FF99B
         Checksum set!
    
     Done!
  13. Which patch for WinXP SP2 ? I tried WinXPPAE_v35.7z but patch only ntkrnl*.exe

    Search for differences
    
    1. C:\WINDOWS\system32\ntkrnlpa.exe: 2 015 232 bytes
    2. C:\WINDOWS\system32\ntkrnl2.exe: 2 015 232 bytes
    Offsets: hexadec.
    
       138:	D9	23
       139:	22	1E
    15BF1B:	07	00
    15BF20:	01	02
    160F0E:	74	EB
    1B07CC:	10	00
    1B07CD:	00	02
    1B07E2:	1B	00
    1B07EA:	FC	F8
    1B07EE:	01	02
    
    10 difference(s) found. 

    I try use patched files from Dibya128GB -> ntkrnlpa.exe + hal.dll but OS not boot and only black screen.

  14.  

    14 hours ago, NewcomerAl said:

    For uefiseven I suggest to rename "csmwrap.efi" to "u7.original.efi" for chainload.
    Or write a shell script.

    No, chainload not work:

      UefiMain Found Windows Boot Manager at '\u7.original.efi'
        Launch Loaded 'PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x4,0xFFFF,0x0)/HD(1,MBR,0xD5AED5AE,0x800,0x32000)/\u7.original.efi'
        Launch Addresss behind FileImageHandle=C1B43718
        Launch File does not match an EFI loader signature

    but I fix and compile special version U7 no load Windows Boot Manager :cool: - use verbose=1 in UefiSeven.ini to display this info on screen:
    u7nwbm.png u7nwbm1.png

    u7nwbm2.png

    but CSMWrap replace C0000 memory using VBIOS PCIe or SeaVGABIOS. I wonder if you compile a special version of CSMWrap that doesn't change anything in memory under C0000 and if Windows would boot into the vga.sys driver ?

    https://www.mediafire.com/file/o1mp9mbx11iyudm/u7nwbm.efi/file

  15. 3 hours ago, Dietmar said:

    Do you have an idea, how to come back to the UEFI shell,

    after using u7.efi

    Simply not use u7.original.efi file - after u7 start set resolution and put fake int10 in C0000 memory but display error than not found u7.original.efi and after press Enter go back to shell:

    FileExists Unable to open file '\u7.original.efi' for reading (error: Not Found)
    UefiMain Could not find Windows Boot Manager at '\u7.original.efi'
    UefiMain Press Enter to continue.

    https://github.com/FlyGoat/CSMWrap/issues/37#issuecomment-2961137267

  16. @Dietmar

    For new iGPU no drivers for xp then this is best way to use xp on modern desktop compi (for Haswell I have xp drivers so that's why I use the Multi-Monitor option)

    The iGPU cannot be set as the Primary Display in the bios because then CSMWrap will load SeaVGABIOS and you can't install a graphics driver on it

  17. To display the image on the monitor WinXP does not care what is in memory under C0000 if the graphics card manufacturer's driver is installed.

    • Asus B85 with two graphics cards: iGPU Haswell (has legacy & GOP but this is not important), PCIe AMD6450 (has both legacy & GOP and this is very important)
    • in bios settings CSM Disabled. Primary Display PCIE because CSMWrap can use VBIOS this card for xp32 on vga.sys if use ntldr loader. Multi-monitor Enabled for xp32 see both in Device Manager

    What I did:

    • boot PC in pure UEFI 64-bit to UEFI Shell > run CSMWrap 64-bit 1.2.1 > SeaBIOS boot xp from HDD using ntldr
    • install AMD graphics driver
    • reboot
    • install Haswell graphics driver
    • reboot
    • now possible use any loader ntldr or bootmgr to boot xp - in xp display settings I set Primary display iGPU to make this pictures:

    ntldr.png bootmgr.png

    I make boot.bmp 640x480 4-bit logo and put in WINDOWS folder, then add to boot.ini switch /bootlogo /noguiboot - thank to this on screen stay this logo after xp boot if you use ntldr loader.

    If the bootmgr loader is used, the aurora logo from winload.exe is left on the screen.

    On both card I have 3D acceleration :-) and possible change primary monitor or enable extend desktop. In C0000 memory is always VBIOS from PCIe card

×
×
  • Create New...